         SYSTEM   SIG7FDP
         SYSTEM   BPM
*
*        SKIP     SKIP N RECORDS IN A FILE
*
*                 USES THE MONITOR PRECORD ROUTINE TO SKIP FORWARD
*                 OVER THE SPECIFIED NUMBER OF RECORDS
*                 IF THE FILE IS MONITOR FORMATTED, N LOGICAL RECORDS
*                 WILL BE BYPASSED
*                 IF USER FORMATTED, N PHYSICAL RECORDS WILL BE SKIPPED
*                 THIS ROUTINE DOES NOT ALLOW SKIPPING FROM THE MEDDLE
*                 OF A PHYSICAL RECORD.
*
*        ENTER    SKIP  FILE-NAME, DATA-NAME-1, |PROCEDURE-NAME|
*
*                 SKIP: THE ENTRY POINT IN THE RUN-TIME ROUTINE
*            FILE-NAME: THE APPROPRIATE FD NAME
*          DATA-NAME-1: CONTAINS THE NUMBER OF RECORDS TO SKIP
*                       (COMPUTATIONAL)
*                       THE NUMBER OF RECORDS YET TO BE SKIPPED IS
*                       PLACED BACK TO DATA-NAME-1 AFTER EXECUTING
*                       THIS ROUTINE
*       PROCEDURE-NAME: TO BE EXECUTED IF ANY OF THE FOLLOWING ABNORMAL
*                       CONDITIONS OCCUR-- END-OF-FILE, END-OF-TAPE
*                       (USER FORMATTED FILE)
*                       THIS PARAMETER IS OPTIONAL
*
*        AUTHER   YOW-YUAN ROBERT LIN            MAY, 1970
*
         REF      C:ABA                                                 SKIP
         DEF      SKIP
         OPEN     SAVE,RETURN,BYE,ABNADDR
         OPEN     FPT,FPTS,ABNADDR2,FPTT,NGTV
SKIP     LCI      0
         STM,0    SAVE
         STW,15   RETURN
         AWM,14   RETURN
         CI,14    2                                                     SKIP
         BGE      %+4                                                   SKIP
         LI,2     X'9A'                                                 SKIP
         STB,2    10                                                    SKIP
         B        C:ABA                                                 SKIP
         LI,4     0
         LI,5     X'1FFFF'
         LS,4     *15               R4 = ADDR OF DCB
         STS,4    FPT
         STS,4    FPTS              REV FPT
         STS,4    FPTT
         LI,6     X'1FFFF'
         AND,6    4,4               R6 = ORG ABNADDR
         AI,15    1
         LI,1     X'1FFFF'
         AND,1    *15               R1 = ADDR OF N RECORDS
         LW,2     *1                R2 = NUMBER OF RECORDS TO SKIP
         BLZ      NGTV
,FPT     M:PRECORD  0,(N,*2),(ABN,ABNADDR),(FWD)
         LI,3     0                 FINISH SKIPPING
BYE      STW,3    *1
,FPTT    M:SETDCB  0,(ABN,*6)       RESTORE ABNADDR
         LCI      0
         LM,0     SAVE
         B        *RETURN
ABNADDR  LW,3     4,4               GET ARS
         SLS,3    -17
         AI,14    -2                UPDATE PARAM LEFT
         BLEZ     BYE
         AI,15    1
         AND,5    *15               R5 = PROC NAME ADDR
         STW,5    RETURN
         B        BYE
NGTV     LCW,2    2                 COMPLEMENT NUMBER  RECORDS
,FPTS    M:PRECORD 0,(N,*2),(ABN,ABNADDR2),(REV)
         B        BYE-1
ABNADDR2 LW,3     4,4               ARS
         SLS,3    -17
         LCW,3    3
         B        ABNADDR+2
SAVE     RES      16
RETURN   RES      1
         CLOSE    SAVE,RETURN,BYE,ABNADDR
         CLOSE    FPT,FPTS,ABNADDR2,FPTT,NGTV
         END
