PROGRAM RT11 C C C C C AUTHOR: C PAUL D. CLAYTON C REPUBLIC MANAGEMENT SYSTEMS INC. C ONE NESHAMINY INTERPLEX, SUITE 306 C TREVOSE, PA. 19044 C C ******************************************************* C * * C * * C * * C * DIRECT INQUIRIES TO: * C * * C * PAUL D. CLAYTON * C * REPUBLIC MANAGEMENT SYSTEMS * C * ONE NESHAMINY INTERPLEX, SUITE 306 * C * TREVOSE, PA. 19044 C * * C * NO WARRANTY OR REPRESENTATION, EXPRESS OR * C * IMPLIED, IS MADE WITH RESPECT TO THE * C * CORRECTNESS, COMPLETENESS, OR USEFULNESS * C * OF THIS SOFTWARE, NOR THAT USE OF THIS * C * SOFTWARE MIGHT NOT INFRINGE PRIVATELY * C * OWNED RIGHTS. * C * * C * NO LIABILITY IS ASSUMED WITH RESPECT TO * C * THE USE OF, OR FOR DAMAGES RESULTING FROM * C * THE USE OF THIS SOFTWARE * C * * C ******************************************************* C * * C * THIS SOFTWARE WAS DESIGNED FOR USE ON A * C * PDP-11/70 OPERATING UNDER IAS V3.0. * C * * C ******************************************************* C C THIS IS THE MAIN ROUTINE FOR CALLING THE RT11 TAPE READER/GENERATOR C DEPENDING UPON THE SWITCHES SET IN THE COMMAND LINE C C INCLUDE 'RT11.COM' !INCLUDE COMMON VARIABLES DIMENSION ICHK (8) !ARRAY FOR COMMAND CHECKS DATA ICHK/"3,"2,"5,"4,"11,"10,"51,"50/ C 10 CONTINUE C CALL RTCMD (IER) !GO GET THE COMMAND LINE D WRITE (5,15) IER,ISWIT D15 FORMAT (1X,'IER = ',I4,' ISWIT = ',O6) C IF ( IER.GE.0) GOTO 100 !SKIP OVER COMMAND LINE ERROR WRITE (5,20) 20 FORMAT (/' GET COMMAND LINE ERROR') GOTO 10 C 100 CONTINUE DO 105 I=1,8 !SET UP LOOP TO CHECK FOR VALID IF (ISWIT.EQ.ICHK(I)) GOTO 109 !COMMAND OPTIONS. 105 CONTINUE WRITE (5,108) 108 FORMAT(/,' INVALID OPTION SELECTION. PLEASE TRY AGAIN.') GOTO 10 !LOOP BACK C 109 CONTINUE IER = IER + 1 !BUMP CODE TO RANGE OF 1 TO 6 C GOTO (200,300,400,500,600,700),IER !GOTO CORRECT AREA WRITE (5,110) IER 110 FORMAT (/' BAD VALUE OF ''IER''. VALUE = ',I3) GOTO 10 C******************** C C GET HERE IF SUCCESS FROM 'RTCMD' WITH COMMAND LINE. WE MUST NOW C LOOK AT THE COMMAND DESIRED AND VALIDATE IT THEN EXECUTE C THE REQUEST. C C******************** C FIRST CHECK FOR WRITING OUT A RT11 MAG TAPE C 200 CONTINUE CALL INIT(OK) ! GO INITIALIZE THE SYSTEM IF (OK .NE. 0 ) GOTO 10 ! LOOP BACK IF ANY PROBLEMS IF ( (ISWIT.AND.IOUSW) .NE. 0 ) CALL WRITE IF ( (ISWIT.AND.IINSW) .NE. 0 ) CALL READ IF ( (ISWIT.AND.IDISW) .NE. 0 ) CALL DIRECT !GET DIRECTORY GOTO 10 C******************** C C GET HERE IF THERE IS AN ERROR DURING CSI$1 C C******************** 300 CONTINUE WRITE (5,310) 310 FORMAT (/' ERROR DURING COMMAND STRING INITIALIZATION',/) GOTO 10 C******************** C C GET HERE IF THERE IS AN ERROR DURING THE FIRST CALL TO CSI$2 C C******************** 400 CONTINUE WRITE (5,410) 410 FORMAT (/' ERROR DURING COMMAND STRING CHECKING.') GOTO 10 C******************** C C GET HERE IF THERE WAS AN ERROR DURING THE SECOND CALL TO CSI$2 C C******************** 500 CONTINUE WRITE (5,510) 510 FORMAT (/' ERROR DURING SECOND CALL TO CSI$2') GOTO 10 C******************** C C GET HERE IF THERE WAS AN ERROR IN THE SYNTAX OF THE COMMAND C C******************** 600 CONTINUE WRITE (5,610) 610 FORMAT (/' SYNTAX ERROR IN COMMAND LINE') GOTO 10 C******************** C C GET HERE IF THERE WAS AN END-OF-FILE IN THE INPUT STREAM C C******************** 700 CONTINUE CALL EXIT END