'HEAD' PEEK PROCESSING C EDIT DATE 14JAN79 09:06 C SOURCE FILE PEEKFTM.FS C AUTHOR A. J. HOWARD C CLUSTER 15 'OUTFILE' PEEKFTM.FR C SUBROUTINE PEEK C C COMPACTS THE SOURCE BUFFER, THEN PEEKS AHEAD IN C THE INPUT STREAM AT THE NEXT CHARACTER C SUBROUTINE PEEK CALL SSBUF CALL PEEKA RETURN END 'OUTFILE' SSBUFFTM.FR SUBROUTINE SSBUF 'INCLUDE' LOGOSAJH.IN, 'INCLUDE' SRCDFSFTM.IN, SRCEND = SRCEND - J + 2 CALL MOVE (SOURCE (J-1), SOURCE, SRCEND + 1) J = 2 I = 2 RETURN END 'OUTFILE' PEEKAFTM.FR SUBROUTINE PEEKA 'INCLUDE' LOGOSAJH.IN, 'INCLUDE' SRCDFSFTM.IN, 'INCLUDE' SRCXDFFTM.IN, 'INCLUDE' SYMBOLFTM.IN, 'INCLUDE' OPERSAJH.IN, 'INCLUDE' NLNAMEFTM.IN, INTEGER TS, XGIZZY INTEGER SOPLST DATA XGIZZY /39/ 'DO' 'IF' (I .GE. SRCEND) CALL PUSH (LOCSUP, I, J) LOCSUP = LOCSUP + 1 J = I C PUT NEXT LINE INTO SOURCE CALL PSRENT CALL POP (LOCSUP, I, J) 'IF' (CONTF .EQ. CONTRL) PEEKS = CONTRL SOURCE (I) = CONTRL 'BREAK' 'ENDIF' 'ENDIF' TS = SOURCE (I) I = I + 1 'IF' (TS .EQ. BLANK .AND. NOTINQ) 'NEXT' 'ENDIF' 'IF' (TS .EQ. CONTRL) PEEKS = CONTRL 'ELSE' TS = TS - BLANK + 1 PEEKS = SYMTBL (TS) 'ENDIF' 'IF' (PEEKS .EQ. GIZZY .AND. NOTINQ ) CALL PUSH (PSYMB, J, J) J = I + 1 SYMBOL = SOURCE (I) NAME (1) = 0 IF (SYMBOL .NE. XGIZZY) CALL RDNAME (-1) PEEKS = SOPLST (DUMMY) I = J CALL POP (PSYMB, J, J) 'WHILE' (PEEKS .EQ. 0) 'END' 'ELSE' CALL CHEKCO (PEEKS, I) 'ENDIF' RETURN END 'OUTFILE' PEEKFOFTM.FR SUBROUTINE PEEKFO 'INCLUDE' LOGOSAJH.IN, 'INCLUDE' OPERSAJH.IN, 'DO' CALL PEEKA 'WHILE' (PEEKS .LT. COMMA) 'END' RETURN END 'OUTFILE' STUFFAJH.FR SUBROUTINE STUFF 'INCLUDE' STUFFAJH.IN, 'INCLUDE' LOGOSAJH.IN, 'INCLUDE' STKDFA.IN, STUFFO = NEXTOP STUFFN = NAMEX (OPX) RETURN END