C VERSION: 5-MAR-85 C C SUBROUTINE D K G E T (LUNGD, BUFGD, BUFGDL, BLKGD, 1 WAITGD, IER) C C LOGICAL WAITGD INCLUDE 'DKGET.CMN' DATA IORVB /"10400/ ! Read Virtual Block CALL GETADR (PARGD(1), BUFGD) ! User buffer address PARGD(2)= BUFGDL ! User buffer length PARGD(5)= BLKGD ! Disk block pointer IER = 1 CALL QIO (IORVB, LUNGD, LUNGD,, IOSGD, PARGD, IDS) IF (.NOT.WAITGD) THEN GOTO 90 ! Return without waiting ELSE CALL WAITFR (LUNGD) END IF IF (IOSGD(1) .GT. 0) THEN GOTO 90 ! Normal return ELSE IF (IOSGD(1) .EQ. -10) THEN IER = 0 GOTO 90 ! Return with EOF found ELSE WRITE (6,6) IOSGD(1), IOSGD2(2), BLKGD 6 FORMAT (/' * FATAL * -- Disk read error', 1 /' IOS', T19, '= ', I5, 2 /' Byte count', T19, '= ', I5, 3 /' Block', T19, '= ', I5) IER = -1 END IF 90 RETURN END