C VERSION: 16-JAN-85 C C SUBROUTINE M T G E T (LUNGT, BUFGT, BUFGTL, BLKGT, 1 WAITGT, IER) C C LOGICAL WAITGT INCLUDE 'MTGET.CMN' DATA IORLB /"1000/ ! Read Logical Block CALL GETADR (PARGT(1), BUFGT) ! User buffer address PARGT(2)= BUFGTL ! User buffer length IER = 1 CALL QIO (IORLB, LUNGT, LUNGT,, IOSGT, PARGT, IDS) IF (.NOT.WAITGT) THEN GOTO 90 ! Return without waiting ELSE CALL WAITFR (LUNGT) END IF IF (IOSGT(1) .GT. 1) THEN GOTO 90 ! Normal return ELSE IF (IOSGT(1) .EQ. -10) THEN IER = 0 GOTO 90 ! Return with EOF found ELSE WRITE (6,6) IOSGT(1), IOSGT2(2), BLKGT 6 FORMAT (/' * FATAL * -- Tape read error', 1 /' IOS', T19, '= ', I5, 2 /' Byte count', T19, '= ', I5, 3 /' Block', T19, '= ', I5) IER = -1 END IF 90 RETURN END