* * $Id: rzcget.F,v 1.1.1.1 1996/03/06 10:47:04 mclareni Exp $ * * $Log: rzcget.F,v $ * Revision 1.1.1.1 1996/03/06 10:47:04 mclareni * Zebra * * #if defined(CERNLIB_INTER) #include "test_include/pilot.h" SUBROUTINE RZCGET(CHP,NWKEY,CHFORM,CHTAG,KEY) * ******************************************************************************** * * * Routine called by interactive test program to prompt for a key * * according to the format CHFORM and key name CHTAG * * CHP is the beginning of the prompt * * NWKEY the number of keys * * Output is returned in array KEY. * * Called by RZT * * * * Author : R.Brun * * Written : 25.05.86 * * Last mod: 25.05.86 * * * ******************************************************************************** * CHARACTER*(*) CHP,CHFORM CHARACTER*8 CHTAG(NWKEY) CHARACTER*64 CHPROM CHARACTER*64 CHCOPY DIMENSION IHPROM(16),KEY(*) * * --------------------------------------------------------------------- * I=0 NCHP=LEN(CHP) NCHPL=NCHP DO 5 J=NCHPL,1,-1 IF(CHP(J:J).NE.' ')GO TO 10 NCHP=J 5 CONTINUE 10 I=I+1 IF(I.GT.NWKEY)GO TO 99 CHPROM=CHP(1:NCHP)//' '//CHTAG(I)//' $ ' CALL UCTOH(CHPROM,IHPROM,4,64) IF(CHFORM(I:I).EQ.'I')THEN CALL ZCGETI(IHPROM,KEY(I)) ELSEIF(CHFORM(I:I).EQ.'B')THEN CALL ZCGETI(IHPROM,KEY(I)) ELSEIF(CHFORM(I:I).EQ.'H')THEN NCH=-4 CALL ZCGETA(IHPROM,KEY(I),NCH) ELSE K=1 L=NCHP+9 CHPROM=CHP(1:NCHP)//' '//CHTAG(I)//' $ ' DO 20 J=I+1,NWKEY IF(CHFORM(J:J).NE.'A')GO TO 30 K=K+1 CHCOPY=CHPROM(1:L)//CHTAG(J)//' $ ' CHPROM=CHCOPY L=L+8 20 CONTINUE 30 NCH=-4*K CALL UCTOH(CHPROM,IHPROM,4,64) CALL VBLANK(KEY(I),K) CALL ZCGETA(IHPROM,KEY(I),NCH) I=I+K-1 ENDIF GO TO 10 * 99 RETURN END #endif