PROGRAM TSTCLP C CLP DECLARATIONS FOR COMMAND LINE PROCESSING COMMON/CLP/ 1 TYPNUL,TYPEOL,TYPEL,TYPINT,TYPFLT,TYPNAM,TYPSPC, 2 TLU,CLPEFN,CNTLZ,TRACE, 3 LINE,NXTCHR,TOKLEN,TOKTYP,INTVAL,FLTVAL,STRVAL,CHRVAL,USICHR INTEGER*2 TYPNUL,TYPEOL,TYPEL,TYPINT,TYPFLT,TYPNAM,TYPSPC INTEGER*2 TLU,CLPEFN,NXTCHR,TOKLEN,TOKTYP,INTVAL LOGICAL*1 LINE(82),STRVAL(82),CHRVAL,USICHR LOGICAL CNTLZ,TRACE REAL FLTVAL C LOCAL DECLARATIONS EXTERNAL CMDPRC INTEGER*2 CMDNUM LOGICAL DUMP DATA DUMP/.FALSE./ C BEGIN 900 CALL GNCL('TEST DUMP USI GNP',CMDPRC,CMDNUM) IF(CMDNUM.EQ.-1)STOP 'EXIT' IF(CMDNUM.EQ.0)GO TO 900 GOTO(1000,2000,3000,4000)CMDNUM 1000 CONTINUE IF(DUMP)CALL DMPCLP 1100 CALL TOKEN IF(DUMP)CALL DMPCLP IF(TOKTYP.EQ.TYPEOL.OR.TOKTYP.EQ.TYPEL)GO TO 900 GO TO 1100 2000 DUMP=.NOT.DUMP GO TO 900 3000 CALL USIBEG 3010 WRITE(TLU,10)USICHR,USICHR 10 FORMAT(' USICHR=',A1,I4) IF(USICHR.NE.'E')GOTO 3010 CALL USIEND GO TO 900 4000 CALL GNP('INTEGER VALUE',TYPINT) CALL GNP('FLOAT VALUE',TYPFLT) CALL GNP('NAME VALUE',TYPNAM) CALL GNP('SPECIAL CHARACTER',TYPSPC) GO TO 900 END SUBROUTINE CMDPRC(FOUND) LOGICAL FOUND C CLP DECLARATIONS FOR COMMAND LINE PROCESSING COMMON/CLP/ 1 TYPNUL,TYPEOL,TYPEL,TYPINT,TYPFLT,TYPNAM,TYPSPC, 2 TLU,CLPEFN,CNTLZ,TRACE, 3 LINE,NXTCHR,TOKLEN,TOKTYP,INTVAL,FLTVAL,STRVAL,CHRVAL,USICHR INTEGER*2 TYPNUL,TYPEOL,TYPEL,TYPINT,TYPFLT,TYPNAM,TYPSPC INTEGER*2 TLU,CLPEFN,NXTCHR,TOKLEN,TOKTYP,INTVAL LOGICAL*1 LINE(82),STRVAL(82),CHRVAL,USICHR LOGICAL CNTLZ,TRACE REAL FLTVAL C BEGIN CALL CMPSTR(STRVAL,'EXTRA',IRES) IF(IRES.NE.0)RETURN CALL PLINE('FOUND COMMAND EXTRA') FOUND=.TRUE. END SUBROUTINE DMPCLP C CLP DECLARATIONS FOR COMMAND LINE PROCESSING COMMON/CLP/ 1 TYPNUL,TYPEOL,TYPEL,TYPINT,TYPFLT,TYPNAM,TYPSPC, 2 TLU,CLPEFN,CNTLZ,TRACE, 3 LINE,NXTCHR,TOKLEN,TOKTYP,INTVAL,FLTVAL,STRVAL,CHRVAL,USICHR INTEGER*2 TYPNUL,TYPEOL,TYPEL,TYPINT,TYPFLT,TYPNAM,TYPSPC INTEGER*2 TLU,CLPEFN,NXTCHR,TOKLEN,TOKTYP,INTVAL LOGICAL*1 LINE(82),STRVAL(82),CHRVAL,USICHR LOGICAL CNTLZ,TRACE REAL FLTVAL C LOCAL DECLARATIONS INTEGER*2 EFN C BEGIN CALL PLINE(LINE) EFN=CLPEFN WRITE(TLU,10)TLU,EFN,CNTLZ,TRACE 10 FORMAT(1H ,'TLU=',I2,' CLPEFN=',I2,' CNTLZ=',L1, 1 ' TRACE=',L1) WRITE(TLU,30)NXTCHR,TOKLEN,TOKTYP,INTVAL,FLTVAL,CHRVAL,USICHR 30 FORMAT(1H ,'NXTCHR=',I2,' TOKLEN=',I2,' TOKTYP=',I1/ 1 ' INTVAL=',I6,' FLTVAL=',E13.5,' CHRVAL=',A1,' USICHR=',A1) CALL LENSTR(STRVAL,LEN) WRITE(TLU,40)LEN,(STRVAL(I),I=1,LEN) 40 FORMAT(1H ,'LEN=',I2,' STRVAL=',80A1) IF(TOKTYP.NE.TYPFLT)RETURN CALL CRTS(STRVAL,FLTVAL) CALL ISTR(STRVAL,1,'RVAL=') CALL PLINE(STRVAL) END