'HEAD' LINKER, ASK QUESTIONS C EDIT DATE 16JAN79 07:31 C SOURCE FILE ASKQESGAK.FS C AUTHOR GARY A. KUDIS C CLUSTER 3 'OUTFILE' ASKQESGAK.FR SUBROUTINE ASKQES 'INCLUDE' QUESTSGAK.IN, 'INCLUDE' LDATAXGAK.IN, 'INCLUDE' IODEFNGAK.IN, 'INCLUDE' IOFILEGAK.IN, 'INCLUDE' CHARACGAK.IN, INTEGER GCHAR INTEGER OBEND, MPEND DATA OBEND /'OB'/, MPEND /'MP'/ C ASKQES :: X WRITE (DBCHAN, 1) X1 FORMAT (' ENTER ASKQES') CALL ASK (CMQUES) CALL MOVE (ANSWER, CMFILE, 14) P CALL DEVICE (CMFILE) CALL OPENF (CMCHAN, CMFILE, ECODE) IF (ECODE. NE. 1) CALL ERROR (3) CALL ASK (OBQUES) CHAR = GCHAR (ANSWER, 1) 'IF' ((CHAR.EQ.0).OR.(CHAR.EQ.BLANK).OR.(CHAR.EQ.CR)) CALL DFAULT (OBEND) 'ENDIF' CALL MOVE (ANSWER, OBFILE, 14) P CALL DEVICE (OBFILE) CALL OPENN (OBCHAN, OBFILE, ECODE) IF (ECODE .NE. 1) CALL ERROR (3) CALL ASK (MPQUES) CHAR = GCHAR (ANSWER, 1) 'IF' ((CHAR.EQ.0).OR.(CHAR.EQ.BLANK).OR.(CHAR.EQ.CR)) CALL DFAULT (MPEND) 'ENDIF' CALL MOVE (ANSWER, MPFILE, 14) P CALL DEVICE (MPFILE) CALL OPENN (MPCHAN, MPFILE, ECODE) IF (ECODE .NE. 1) CALL ERROR (3) IF (ECODE.EQ.1) MPFLAG = .TRUE. X WRITE (DBCHAN, 2) X2 FORMAT (' EXIT ASKQES') RETURN END 'OUTFILE' ASKGAK.FR SUBROUTINE ASK (QUEST) 'INCLUDE' QUESTSGAK.IN, 'INCLUDE' IODEFNGAK.IN, INTEGER QUEST (10) C ASK : CALL WRLIN (TTYOUT, QUEST, 20) CALL RDLIN (TTYIN, ANSWER, 30, ECODE) X WRITE (TTYOUT, 3) ANSWER X3 FORMAT (' ANSWER IS = ', 10A2) RETURN END 'OUTFILE' DFAULTGAK.FR SUBROUTINE DFAULT (APPEND) INTEGER APPEND 'INCLUDE' CHARACGAK.IN, 'INCLUDE' IOFILEGAK.IN, 'INCLUDE' QUESTSGAK.IN, INTEGER GCHAR INTEGER I C DFAULT : (APPEND) I = 1 'DO' CHAR = GCHAR (CMFILE, I) 'WHILE' ((CHAR.NE.0).AND.(CHAR.NE.BLANK).AND. ^ (CHAR.NE.PERIOD).AND.(CHAR.NE.CR)) CALL PCHAR (ANSWER, I, CHAR) I = I + 1 'IF' (I.GE.24) 'BREAK' 'ENDIF' 'END' CALL PCHAR (ANSWER, I, PERIOD) CHAR = GCHAR (APPEND, 1) CALL PCHAR (ANSWER, I+1, CHAR) CHAR = GCHAR (APPEND, 2) CALL PCHAR (ANSWER, I+2, CHAR) RETURN END