         PCC      0
*
*M*      FILLDCB  MODULE DEFINING THE DCBS USED BY THE FILL PROCESSOR
*
*
*P*      NAME:    FILLDCB
*P*
*P*      PURPOSE: MOST OF THE DCBS USED BY FILL REQUIRE MORE SPACE
*P*               THAN IS AVAILABLE IN LOADER SUPPLIED OR STAN-
*P*               DARD SYSTEM DCBS.  THE FILLDCB MODULE GENERATES
*P*               THE NON-STANDARD DCBS FOR USE BY FILL.
*P*      DESCRIPTION:  THE M:DCB PROC FROM SYSTEM BPM IS USED TO
*P*               DEFINE THE BASIC DCB; METASYMBOL DIRECTIVES GEN-
*P*               ERATE THOSE  PARAMETERS WHICH ARE UNKNOWN TO SYSTEM
*P*               BPM.  THESE INCLUDE THE ACCESS DATE, BACKUP DATE,
*P*               CREATION DATE, AND DESCRIPTOR VLPS.
*P*      REFERENCES:  CPV BATCH PROCESSING MANUAL
*P*                   METASYMBOL LANGUAGE AND OPERATIONS REFERENCE MANUAL
*P*
         PAGE
         SYSTEM   BPM
*
*        ALL DEFS IN FILLDCB FOLLOW
*
         DEF      EI:DESC           LOCATION OF DESCRIPTOR VLP (X'11')
*,*                                 IN THE F:EI DCB
*X*      DEF      F:BACKUP          DCB USED TO READ F:BACKUP FILE
*X*      DEF      F:BREC            DCB USED TO READ F:BREC FILE
*X*      DEF      F:EI              DCB USED TO READ USER'S FILE FOR
*,*                                 BACKUP TO TAPE
*X*      DEF      F:EO              DCB USED TO WRITE USER'S FILE TO TAPE
*X*      DEF      F:SEL             DCB USED TO READ SEL:FIL FILE
*X*      DEF      F:TI              DCB USED TO READ USER'S FILE ON TAPE
*X*      DEF      F:USR             DCB USED TO WRITE USER'S FILE TO
*,*                                 DISC ON RESTORE FROM TAPE
         DEF      FUSR:DESC         LOCATION OF DESCRIPTOR VLP (X'11')
*,*                                 IN THE F:USR DCB
         PAGE
*
*        ALL REFS IN FILLDCB FOLLOW
*
         REF      BCK:ABN           DEFAULT ABN RETURN FOR F:BACKUP DCB
         REF      BCK:ERR           DEFAULT ERR RETURN FOR F:BACKUP DCB
         REF      BLABL             BUFFER CONTAINING TAPE LABEL GOING
*,*                                 OUT FOR F:EO DCB OR TO RECEIVE TAPE
*,*                                 LABEL COMING IN FOR F:TI DCB
         REF      BREC:ABN          DEFAULT ABN RETURN FOR F:BREC DCB
         REF      BREC:ERR          DEFAULT ERR RETURN FOR F:BREC DCB
         REF      BSR1              DEFAULT ERR/ABN RETURN FOR F:SEL DCB
         REF      FPAR              RECEIVING BUFFER OF FPARAM INFOR-
*,*                                 MATION OF F:EI DCB
         REF      SEL:COM:BUF       DEFAULT BUFFER FOR F:SEL DCB
         REF      TAP:ABN           DEFAULT ABN RETURN FOR F:TI OR
*,*                                 F:EO DCB (TAPE RELATED)
         REF      TAP:ERR           DEFAULT ERR RETURN FOR F:TI OR
*,*                                 F:EO DCB (TAPE RELATED)
         REF      USR:ABN           DEFAULT ABN RETURN FOR F:EI DCB
         REF      USR:ERR           DEFAULT ERR RETURN FOR F:EI DCB
         REF      USRABN            DEFAULT ABN RETURN FOR F:USR DCB
         REF      USRERR            DEFAULT ERR RETURN FOR F:USR DCB
         PAGE
*
*F*      NAME:    F:BACKUP
*F*
*F*      PURPOSE: READ RECORDS FROM THE F:BACKUP FILE IN THE :SYS
*F*               ACCOUNT; THESE RECORDS CONTAIN FILE NAMES AND ACCOUNTS
*F*               OF USER REQUESTED BACKUPS.  THE TEL PROCESSOR PUTS THEM
*F*               INTO THE FILE, WHICH FILL READS PERIODICALLY.
*F*
F:BACKUP DSECT    1
F:BACKUP M:DCB    (FILE,'F:BACKUP'),(KEYED),(DIRECT),(INOUT),;
                  (SAVE),(READ,'NONE'),(WRITE,'NONE'),;
                  (KEYM,8),(ERR,BCK:ERR),(ABN,BCK:ABN)
         ORG      F:BACKUP+32       ADD DESC VLP
         DATA     X'06000202',C'NONE',C'    '
         DATA     X'0F000002',0,0   ACCESS-NO UPDATE
         DATA     X'11010101',X'F00'  DESC-NO BU,PURGE,ACCESS UP
KBUF     SET      %
DSIZ     SET      %-F:BACKUP+8
         RES      8
         ORG      F:BACKUP
         DATA,1   DSIZ
         ORG      F:BACKUP+10
         DATA     KBUF
         PAGE
*
*F*      NAME:    F:BREC
*F*
*F*      PURPOSE: THIS DCB IS USED TO READ RECORDS FROM THE F:BREC FILE
*F*               IN THE :SYS ACCOUNT.  THIS FILE CONTAINS INFORMATION
*F*               NECESSARY FOR FILL TO CONTINUE FOLLOWING A GENERAL
*F*               SYSTEM RECOVERY, AS WELL AS THE DEFAULT SETTINGS FOR
*F*               THE OPTIONAL FILL PARAMETERS.
*F*
F:BREC   DSECT   1
F:BREC   M:DCB    (FILE,'F:BREC'),(KEYED),(DIRECT),;
                  (INOUT),;
                  (READ,'ALL'),(WRITE,'NONE'),;
                  (ERR,BREC:ERR),(ABN,BREC:ABN)
         ORG      F:BREC+31         ADD DESC VLP
         DATA     X'06000202',C'NONE',C'    '
         DATA     X'11010101',X'F00'  DESC-NO BU,PURGE,ACCESS UP
KBUF     SET      %
DSIZ     SET      %-F:BREC+8
         RES      8
         ORG      F:BREC
         DATA,1   DSIZ
         ORG      F:BREC+10
         DATA     KBUF
         PAGE
*
*F*      NAME:    F:EI
*F*
*F*      PURPOSE: THIS DCB IS USED TO READ THE DISC FILE DURING A BACKUP
*F*               OR PURGE OPERATION.
*F*
F:EI     DSECT    1
F:EI     M:DCB    (FILE),(ERR,USR:ERR),(ABN,USR:ABN),;
                  (KEYM,63),(SEQUEN),(IN),(PASS),;
                  (FPARAM,FPAR)
         ORG      F:EI+34
         DATA     X'03000002',0,0   PASS VLP
         DATA     X'0F000002',0,0   ACCESS
         DATA     X'10000002',0,0   BACKUP
         DATA     X'14000010'       ACCESS ACCOUNTS
         DO1      2
         DATA     0,0,0,0,0,0,0,0
         DATA     X'15000003'       ACCESS VEHICLE
         DATA     0,0,0
EI:DESC  DATA     X'11010001',0     DESC VLP  (LAST ONE)
KBUF     SET      %
DSIZ     SET      %-F:EI+8
         RES      8
         ORG      F:EI
         DATA,1   DSIZ
         ORG      F:EI+10
         DATA     KBUF
         PAGE
*
*F*      NAME:    F:EO
*F*
*F*      PURPOSE: THIS DCB IS USED TO WRITE THE LABEL TAPE FILE DURING
*F*               A BACKUP OR PURGE OPERATION.
*F*
F:EO     DSECT    1
F:EO     M:DCB    (LABEL),(ERR,TAP:ERR),(ABN,TAP:ABN),;
                  (READ),(WRITE),;
                  (PASS),(SN,36),;
                  (OUT),(SEQUEN),(TRIES,10),;
                  (KEYM,63),(SAVE),(TLABEL,BLABL)
         PAGE
*
*F*      NAME:    F:TI
*F*
*F*      PURPOSE: THIS DCB IS USED TO READ THE TAPE FILE DURING A FILL
*F*               OR SELECTIVE FILL OPERATION.
*F*
F:TI     DSECT    1
F:TI     M:DCB    (LABEL),(ERR,TAP:ERR),(ABN,TAP:ABN),;
                  (READ),(WRITE),;
                  (PASS),(SN,36),;
                  (INOUT),(SEQUEN),;
                  (TRIES,10),(SAVE),(TLABEL,BLABL)
         PAGE
*
*F*      NAME:    F:SEL
*F*
*F*      PURPOSE: THIS DCB IS USED TO READ THE SEL:FIL FILE IN THE :SYS
*F*               ACCOUNT; THIS FILE CONTAINS REQUESTS FOR SELECTIVE
*F*               FILL OF A USER'S FILE(S) OR ACCOUNT(S).
*F*
F:SEL    DSECT    1
F:SEL    M:DCB    (FILE,'SEL:FIL'),(INOUT),;
                  (RECL,80),(BUF,SEL:COM:BUF),;
                  (ABN,BSR1),(ERR,BSR1)
         PAGE
*
*F*      NAME:    F:USR
*F*
*F*      PURPOSE: THIS DCB IS USED TO READ/WRITE THE USER DISC FILE
*F*               DURING A FILL OPERATION.  THE READ IS FIRST PERFORMED
*F*               TO SEE IF THE TAPE FILE ALREADY EXISTS ON DISC AND
*F*               TO CHECK THAT THE TAPE FILE IS NEWER THAN THE CURRENT
*F*               DISC FILE.  IF THIS IS TRUE, OR THE DISC FILE DOES NOT
*F*               EXIST, THE DCB IS USED TO CREATE THE DISC VERSION OF
*F*               THE TAPE FILE.
*F*
F:USR    DSECT    1
F:USR    M:DCB    (FILE),(TRIES,10),(SAVE),(KEYM,20),(OUT),;
                  (READ),(WRITE),(SEQUEN),;
                  (SYNON),(PASS),;
                  (ABN,USRABN),(ERR,USRERR)
         ORG      F:USR+71
         DATA     X'0B000008'       OVERLAY LAST VLP TO ADD VLP
         DO1      8
         DATA     0
         DATA     X'04000002',0,0   EXPIR
         DATA     X'0A000003',0,0,0  MOD
         DATA     X'0E000002',0,0   CREATION
         DATA     X'0F000002',0,0   ACCESS
         DATA     X'10000002',0,0   BACKUP
         DATA     X'14000010'       ACCESS ACCOUNTS
         DO1      2
         DATA     0,0,0,0,0,0,0,0
         DATA     X'15000003'       ACCESS VEHICLE
         DATA     0,0,0
FUSR:DESC DATA    X'11010101',0     DESCRIPTOR VLP (LAST ONE)
KBUF     SET      %
DSIZ     SET      %-F:USR+8
         RES      8
         ORG      F:USR
         DATA,1   DSIZ
         ORG      F:USR+10
         DATA     KBUF
         END
