C VERSION: 5-MAR-85 C C SUBROUTINE M T P O S (LUNPT, MODE, NBOF, IER) C C INTEGER*4 NOF INCLUDE 'MTPUT.CMN' DATA IORWD /"2400/, ! Rewind tape 1 IOSPB /"2420/, ! Space blocks 2 IOSPF /"2440/ ! Space files IER = 1 PARPT(1)= NBOF GOTO (100, 200, 300, 900) IABS (MODE) + 1 C----------------------------------------------------------------------------- C C Rewinding tape to BOT and than to just after VOL1 label block. C C----------------------------------------------------------------------------- 100 CALL WTQIO (IORWD, LUNPT, LUNPT,, IOSPT) IF (IOSPT(1) .LT. 0) GOTO 910 GOTO 400 C----------------------------------------------------------------------------- C C Space backward or forward number of BLOCKS specified by NBOF. C C----------------------------------------------------------------------------- 200 CALL GETADR (BUFPT(1), NBOF) IF (NBOF .EQ. 0) GOTO 990 ! Return 210 DO 220 N= 1, NBOF CALL WTQIO (IOSPB, LUNPT, LUNPT,, IOSPT, PARPT) WRITE (6,51) NBOF, IOSPT(1) IF (IOSPT(1) .GT. 0) GOTO 220 ! Next file IF (IOSPT(1) .EQ. -11) GOTO 400 ! EOV GOTO 920 ! Take care of error 220 CONTINUE GOTO 990 ! Normal return C----------------------------------------------------------------------------- C C Space backward or forward number of FILES specified by NBOF. C C----------------------------------------------------------------------------- 300 CALL GETADR (BUFPT(1), NBOF) IF (NBOF .NE. 0) NOF = NBOF IF (NBOF .EQ. 0) NOF = 100000 310 DO 320 N= 1, NOF CALL WTQIO (IOSPF, LUNPT, LUNPT,, IOSPT, PARPT) WRITE (6,51) NBOF, IOSPT(1) IF (IOSPT(1) .GT. 0) GOTO 310 ! Next file IF (IOSPT(1) .EQ. -10) GOTO 320 ! ,, ,, IF (IOSPT(1) .EQ. -11) GOTO 400 ! EOV GOTO 930 ! Take care of error 320 CONTINUE GOTO 990 ! Normal return C----------------------------------------------------------------------------- C C Space back one BLOCK. C C----------------------------------------------------------------------------- 400 PARPT(1)= 1 CALL WTQIO (IOSPB, LUNPT, LUNPT,, IOSPT, PARPT) IF (IOSPT(1) .LT. 0) GOTO 920 GOTO 990 ! Normal return 51 FORMAT (/' NBOF', T19, '= ', I5, 1 /' IOS', T19, '= ', I5) 900 WRITE (6,901) MODE 901 FORMAT (/' * FATAL * -- Illegal mode', 1 /' Mode', T19, '= ', I5) GOTO 999 ! Exit 910 WRITE (6,911) IOSPT(1) 911 FORMAT (/' * FATAL * -- Tape rewind error', 1 /' IOS', T19, '= ', I5) GOTO 999 ! Exit 920 WRITE (6,921) IOSPT(1) 921 FORMAT (/' * FATAL * -- Space blocks error', 1 /' IOS', T19, '= ', I5) GOTO 999 ! Exit 930 WRITE (6,931) IOSPT(1) 931 FORMAT (/' * FATAL * -- Space files error', 1 /' IOS', T19, '= ', I5) GOTO 999 ! Exit 990 RETURN 999 CALL EXIT END