         SYSTEM   OPTIONS                                                       
         SYSTEM   SIG5P                                                         
         DEF      BKL1                                                          
         DEF      BKLASSN                                                       
         DEF      BKLEXIT                                                       
         DEF      BKLASSNX                                                      
OLAYFLAG EQU      'BKL1'                                                        
         SYSTEM   CPRMON                                                        
*                                                                               
         TITLE    '**** BACKGROUND LOADER - BKL1 ****'                          
*                                                                               
*        BKL1 IS ENTERED TO INIT TASKS IN BACKGROUND AND TO                     
*        CHECK THE INITS TO REPORT PROBLEMS.  WHEN IT IS                        
*        ENTERED, THE JCBNXLM ENTRY IN THE BKG JCB MUST                         
*        POINT TO A LOAD MODULE ID BLOCK, AND FLAGS IN K:CTST                   
*        MUST INDICATE WHETHER JCP IS BEING LOADED OR NOT.                      
*        (THESE REQUIREMENTS ARE MET BY PROCESSING IN THE ABEX                  
*        OVERLAY, AT THE TERMINATION OF THE PRIOR BACKGROUND TASK.)             
*        IF A BACKGROUND INIT FPT HAS NOT BEEN DEFINED, IT IS                   
*        BUILT AND THE INIT SERVICE IS REQUESTED.  IF THE INIT FPT IS           
*        ALREADY DEFINED, IT IS CHECKED, ANY ERRORS ARE REPORTED,               
*        AND THE FPT IS RELEASED.                                               
*                                                                               
*                                                                               
*        THE ROUTINE WHICH PERFORMS ASSIGN MERGES IS ALSO IN                    
*        BKL1.  IN A MAPPED SYSTEM, IT IS EXECUTED BY BACKGROUND                
*        AS PART OF ITS TASK INITIATION SEQUENCE.  IN AN UNMAPPED               
*                                                                               
         PAGE                                                                   
         SPACE    3                                                             
*                                                                               
BKL1     RES      0                 BACKGROUND LOADER                           
         LI,R12   0                                                             
         LW,R13   KL00E                                                         
         DISABLE                                                                
         LH,R14   K:CTST                                                        
         STS,R12  K:CTST            RESET BKG LOAD FLAGS                        
         LW,R7    BINITFPT                                                      
         BNEZ     CKINIT            CHECK PRIOR BKG INIT                        
         LW,R7    JCBBKG+JCBNXLM    SEE IF LM ID SPACE IS DEFINED               
         BEZ      NOLOAD            B IF NO LOAD MODULE ID SPACE                
         CI,R14   X'40'             LOAD JCP BIT                                
         BANZ     LDJCP             BRANCH TO LOAD JCP                          
         CI,R14   X'20'             LOAD BCKG BIT                               
         BANZ     LDNJCP            BRANCH TO LOAD BCKG (NOT JCP)               
         B        BKLENBL                                                       
NOLOAD   RES      0                                                             
         LW,R13   YC                                                            
         STS,R12  K:JCP1            RESET BKG ACTVE                             
BKLENBL  RES      0                                                             
         ENABLE                                                                 
*                                                                               
BKLEXIT  B        CT1               EXIT POINT FOR BKL OLAY                     
*                                                                               
*                                                                               
LDJCP    RES      0                 LOAD JCP INTO BACKGROUND                    
         ENABLE                                                                 
         LW,R12   Y8                                                            
         LW,R13   R12               SET JCP ACTIVE FLAG                         
         AI,R13   DEBUGBIT          RESET DEBUG FLAG                            
         STS,R12  K:JCP1            ADJUST FLAGS AS NOTED                       
*                                                                               
LDNJCP   RES      0                 LOAD A BCKG TASK (NOT JCP)                  
         ENABLE                                                                 
         BAL,R15  BKLINIT           INIT BCKG TASK                              
         LI,R11   X'200'            SYSTEM PROCESSOR FLAG                       
         LI,R1    1                                                             
         LH,R0    *JCBBKG+JCBNXLM,R1  GET AREA NAME (SIGN-EXTENDED)             
         LI,R1    S:SPAI                                                        
         CH,R0    MDNAME,R1                                                     
         BE       %+3               B IF FROM SYS PROC ALT AREA                 
         CH,R0    MDNAME                                                        
         BNE      %+2               B IF NOT FROM SP AREA                       
         STS,R11  K:JCP1            SET SYSTEM PROCESSOR BIT                    
         B        BKLEXIT                                                       
*                                                                               
CKINIT   RES      0                 CHECK THE INIT CAL                          
         LCI      CK%-CK                                                        
         LM,R0    CK                LOAD CZECH FPT                              
         CAL1,1   R0                CHECK CAL FPT IN REGISTERS                  
*                                   BUSY RETURN EXITS FOR LATER RETRY           
*                                   ERROR RETURN SAME AS FOR INIT CAL           
         LI,R7    0                                                             
         XW,R7    BINITFPT          GET INIT FPT SPACE PTR AND CLR IT           
         BAL,R8   RELTEMP           RELEASE TEMP SPACE                          
         B        BKLEXIT                                                       
*                                                                               
CK       GEN,1,7,24 1,X'29',BINITFPT CHECK FPT, INDIRECT THRU POINTER           
         DATA     P1+P3+P10         ERROR ADDR, BUSY ADDR, FPT                  
         DATA     INITERR           ERROR ADDRESS                               
         DATA     BKLEXIT           BUSY ADDRESS (EXIT, AND TRY LATER)          
CK%      RES      0                                                             
         TITLE    '***** BKLASSN *****'                                         
*                                                                               
*        SUBROUTINE BKLASSN                                                     
*        PURPOSE: DO ASSIGN MERGE FOR BKG TASK INITIATION                       
*        INPUT:   NONE                                                          
*        CALL:    BAL,R15  BKLASSN                                              
*                 IF MAPPED RBM, FROM SECONDARY TASK INITIATION                 
*                 IF UNMAPPED RBM, FROM BKL1 AFTER INIT CHECK                   
*        RETURN:  R12 SAVED                                                     
*                                                                               
BKLASSN  RES      0                                                             
         LB,R1    K:JCP1                                                        
         CI,R1    X'80'                                                         
         BANZ     BKLASSNX          BRANCH IF JCP: NO ASSIGNS                   
         PUSH     R15               SAVE LINK REGISTER                          
         DO       #MAP=0                                                        
         BAL,R12  BKLBTID           GET BKG TASK ID NR                          
         LW,R5    LMIPCB,R5         PCB ADDRESS                                 
         ELSE     #MAP                                                          
         LW,R5    PCBPOINT          PCB ADDRESS                                 
         FIN      #MAP                                                          
         LW,R5    10,R5             DCBTAB ADDRESS                              
*                                   DO ASSIGNS                                  
         PUSH     R5                SAVE DCBTAB POINTER                         
         LW,R9    *K:ASSIGN          NR OF ENTRIES IN ASN TBL                   
         BEZ      BKLASN99          B IF NONE                                   
         MI,R9    10                NR OF WORDS                                 
         LW,R8    R9                                                            
         AI,R8    1                 PLUS ONE FOR COUNT WORD                     
         AW,R8    K:ASSIGN          POINT AT END+1 OF ASN TBL                   
*                                                                               
         CI,R5    0                                                             
         BE       BKLASNE1          B IF NO DCBTAB                              
         LW,R0    0,R5                                                          
         BEZ      BKLASNE1          B IF NO ENTRIES IN DCBTAB                   
*                                                                               
*        DO NEXT ASSIGNMENT                                                     
BKLASN10 RES      0                                                             
         AI,R8    -10               POINT TO NEXT ASN TBL ENTRY                 
         CW,R8    K:ASSIGN                                                      
         BLE      BKLASN99          B IF DONE                                   
*                                                                               
         PULL     R5                RESTORE R5                                  
         PUSH     R5                SAVE IT AGAIN                               
         LW,R4    0,R5              NR OF DCBTAB ENTRIES                        
         AI,R5    1                 POINTER TO FIRST DCBTAB ENTRY               
         LI,R3    0                 POINTER TO UNUSED ENTRY (NONE, YET)         
         LCI      2                                                             
         LM,R12   *R8               GET NAME OF DCB TO ASSIGN                   
*                                                                               
*        FIND DCB TO ASSIGN                                                     
BKLASN20 RES      0                                                             
         LCI      2                                                             
         LM,R10   0,R5              GET NAME OF DCB FROM DCBTAB                 
         CD,R10   R12                                                           
         BE       BKLASN30          B IF IT IS THE ONE WE WANT                  
         CD,R10   BLANKS                                                        
         BNE      %+2               B IF NOT UNUSED                             
         LW,R3    R5                SAVE UNUSED DCB ENTRY                       
         AI,R5    3                 POINT TO NEXT DCBTAB ENTRY                  
         BDR,R4   BKLASN20          SEARCH MORE DCBTAB                          
*        FALL THRU WHEN THERE AINT NO MORE DCBTAB                               
         LW,R5    R3                SEE IF THERE IS AN UNUSED DCB               
         BEZ      BKLASNE2          B IF NO UNUSED DCB FOUND                    
         LCI      2                                                             
         STM,R12  0,R5              USE UNUSED DCB                              
*                                                                               
*        PERFORM ASSIGNMENT                                                     
BKLASN30 RES      0                                                             
         LW,R10   2,R5              GET DCB ADDRESS                             
         LCI      ASNCALSZ                                                      
         LM,R0    ASNCAL            LOAD ASSIGN CAL INTO REGS                   
         LI,R7    2                                                             
         OR,R0+ASNCAL1  *R8,R7      MERGE IO ID P-BITS                          
         AW,R0+ASNCAL2  R8          IO NAME POINTER INTO ASN TBL                
         AW,R0+ASNCAL3  R8          ACNT NAME POINTER INTO ASN TBL              
         CW,R0+ASNCAL1  GIOOBIT                                                 
         BAZ      %+2               B IF NOT OPLABEL ASSIGNMENT                 
         OR,R0+ASNCAL2  XBIT0       OPLABEL NAME IS INDIRECT                    
         CAL1,1   R0                DO ASSIGN OF IO ID                          
*                                                                               
*        SET FIELDS AND FLAGS                                                   
         LI,R9    0                 CURRENTLY DONT HAVE A FLAG WORD             
         LW,R3    ASNCTL            GET CONTROL TABLE SIZE                      
BKLASN50 RES      0                                                             
         LW,R1    ASNCTL,R3         GET NEXT FIELD CONTROL WORD                 
         LI,R2    3                 UNPACK IT                                   
         LB,R0    R1,R2                                                         
         STW,R0   R4,R2                                                         
         BDR,R2   %-2                                                           
         LB,R4    R1                                                            
*        R4 IS LEFT-SHIFT TO ALIGN WITH DCB                                     
*        R5 IS FIELD LENGTH IN BITS                                             
*        R6 IS DCB WORD TO AFFECT                                               
*        R7 IS ASN TBL WORD BEING ANALYZED                                      
         CW,R7    R9                                                            
         BE       %+3               ALREADY HAVE ASN TBL WORD                   
         LW,R15   *R8,R7            GET NEW ASN TBL WORD                        
         LW,R9    R7                SAVE INDEX OF CURRENT WORD                  
         LI,R14   0                                                             
         SLD,R14  0,R5              SHIFT NEXT FIELD INTO R14                   
         SLS,R15  1                 SHIFT OFF FLAG BIT                          
         BEV      BKLASN60          B IF FIELD IS NOT ASSIGNED                  
         LW,R0    R14               GET FIELD VALUE                             
         LI,R1    1                                                             
         SLS,R1   0,R5                                                          
         AI,R1    -1                MASK TO STORE VALUE                         
         SLD,R0   0,R4              SHIFT TO NATURAL DCB ALIGNMENT              
         STS,R0   *R10,R6           STORE INTO DCB                              
BKLASN60 RES      0                                                             
         BDR,R3   BKLASN50          B TO ASSIGN NEXT FIELD                      
         B        BKLASN10          GET NEXT ASSIGNMENT                         
*                                                                               
BKLASNE2 RES      0                 CANT ASSIGN PARTICULAR DCB                  
         LI,R11   K:MSG7            'UNABLE TO DO ASSIGN'                       
         BAL,R12  BKGMSG            MESSAGE TO LO                               
         B        BKLASN10          TRY NEXT ASSIGN                             
*                                                                               
BKLASNE1 RES      0                 CANT DO ANY ASSIGNS                         
         LI,R11   K:MSG7            'UNABLE TO DO ASSIGN'                       
         BAL,R12  BKGMSG            MESSAGE TO LO                               
*                                                                               
BKLASN99 RES      0                                                             
         PULL     R5                                                            
         PULL     R15               RESTORE LINK                                
         DO       #MAP=0                                                        
         LW,R12   K:CCBUF                                                       
         AI,R12   -2                START OF CCBUF -2                           
         ELSE                                                                   
         LI,R12   X'1FF'                                                        
         OR,R12   K:ASSIGN          END OF PAGE                                 
         FIN      #MAP                                                          
         STW,R12  K:ASSIGN          SET ASSIGN TABLE TO EMPTY                   
         LI,R12   0                                                             
         STW,R12  *K:ASSIGN         ZERO THE ASSIGN CMND COUNTER                
BKLASSNX B        *R15                                                          
*                                                                               
*                                                                               
*        THE FOLLOWING TABLE CONTROLS THE REPRESENTATION                        
*        IN THE ASSIGN TABLE OF FIELDS TO BE ALTERED OTHER                      
*        THAN THOSE IDENTIFYING THE I/O MEDIUM.                                 
*                                                                               
*        WORD ZERO CONTAINS THE NUMBER OF ENTRIES.                              
*        EACH FOLLOWING WORD IS AN ENTRY WHICH DESCRIBES                        
*        THE LOCATION OF A DCB FIELD AND THE UNPACKING OF                       
*        ITS ASSIGNED VALUE IN THE ASSIGN TABLE.                                
*                                                                               
*        BYTE 0 OF AN ENTRY CONTAINS THE LEFT-SHIFT COUNT                       
*        TO SHIFT A VALUE FROM RIGHT-ALIGNED (NORMAL)                           
*        TO DCB-ALIGNED (NATURAL) POSITION IN A WORD.                           
*        BYTE 1 IS THE BIT LENGTH OF THE FIELD CONCERNED.                       
*        BYTE 2 IS THE DCB WORD IN WHICH THE FIELD RESIDES.                     
*        BYTE 3 IS THE ASSIGN TABLE WORD IN WHICH THE VALUE IS PACKED.          
*                                                                               
*        THE ENTRIES FOR FIELD VALUES PACKED IN A SINGLE ASSIGN                 
*        TABLE WORD ARE GROUPED IN THE CONTROL TABLE ORDERED                    
*        INVERSE TO THE ORDER IN WHICH THE VALUES WILL BE LEFT-SHIFTED          
*        OUT OF THE ASSIGN TABLE WORD.                                          
*                                                                               
*        THIS TABLE MUST BE THE DUPLICATE OF THE ONE IN JCP                     
*        WHICH IS USED TO PACK THE ASSIGN TABLE.                                
*                                                                               
ASNCTL   CNAME                                                                  
         PROC                                                                   
LF       EQU      %-ASNCTL                                                      
         DATA,1   AF(1),AF(2),AF(3),AF(4)                                       
         PEND                                                                   
*                                                                               
ASNCTL   DATA     ASNCTLE-ASNCTL-1                                              
*        ENTRIES FOR ASSIGN TABLE WORD 8                                        
ASNNRT   ASNCTL   24,8,1,8          NRT                                         
ASNBTD   ASNCTL   4,2,0,8           BTD                                         
ASNVFC   ASNCTL   8,1,0,8           VFC                                         
ASNDP    ASNCTL   9,1,0,8           D/P                                         
ASNDRC   ASNCTL   10,1,0,8          DRC                                         
ASNASC   ASNCTL   11,1,0,8          ASC                                         
ASNMOD   ASNCTL   17,1,0,8          MOD                                         
*        ENTRIES FOR ASSIGN TABLE WORD 9                                        
ASNRSZ   ASNCTL   17,15,3,9         RSZ                                         
ASNCTLE  RES      0                                                             
*                                                                               
*                                                                               
ASNCAL   GEN,1,7,1,23  1,X'08',1,R10                                            
ASNCAL1  EQU      %-ASNCAL                                                      
         DATA     P1                                                            
         PZE      BKLASNE2                                                      
ASNCAL2  EQU      %-ASNCAL                                                      
         DATA     3                 INDEX TO I/O ID IN ASN TBL                  
ASNCAL3  EQU      %-ASNCAL                                                      
         DATA     6                 INDEX TO ACNT NAME IN ASN TBL               
ASNCALSZ EQU      %-ASNCAL                                                      
*                                                                               
GIOOBIT  EQU      BITABLE+1         FLAG THAT AN OPLABEL IS NAMED               
*                                                                               
         TITLE    '**** BKLINIT ****'                                           
*                                                                               
*        SUBROUTINE BKLINIT                                                     
*        PURPOSE: SET THE LOAD MODULE NAME FOR THE BACKGROUND TASK              
*                 INITIATE THE BACKGROUND TASK                                  
*                                                                               
BKLINIT  RES      0                                                             
*        GET SPACE FOR FPT IN SYSTEM TEMP SPACE                                 
         LI,R7    TSIZE             LARGEST FPT SIZE                            
         BAL,R8   GETTEMP           GET FPT SPACE FROM TEMP SPACE               
         B        IULB              NO SPACE, UNABLE TO LOAD BKG                
         ENABLE                     GETTEMP NORMALLY EXITS DISABLED             
         STW,R7   BINITFPT          SAVE TEMP SPACE POINTER                     
         STW,R7   R6                                                            
         AND,R6   XFFFFFF           ADDRESS ONLY                                
*        GET FILE NAME IN R12,R13 AND AREA NAME IN R11                          
         LCI      3                                                             
         LM,R11   *JCBBKG+JCBNXLM                                               
*        COPY THE SETNAME FPT PROTOTYPE INTO THE SPACE                          
         LI,R7    FPTSETN%-FPTSETN  SIZE OF FPT                                 
         AI,R6    -1                                                            
         LW,R10   FPTSETN-1,R7                                                  
         STW,R10  *R6,R7                                                        
         BDR,R7   %-2                                                           
         AI,R6    1                                                             
*        INSERT THE LOAD MODULE NAME                                            
         STW,R12  LMNAME-FPTSETN,R6                                             
         STW,R13  LMNAME+1-FPTSETN,R6                                           
*        SET THE LM NAME/TASK NAME CORRESPONDENCE                               
         CAL1,7   *R6                                                           
*                                                                               
*        COPY THE INIT FPT PROTOTYPE INTO THE SPACE                             
         LI,R7    FPTINIT%-FPTINIT  FPT SIZE                                    
         AI,R6    -1                                                            
         LW,R10   FPTINIT-1,R7                                                  
         STW,R10  *R6,R7                                                        
         BDR,R7   %-2                                                           
         AI,R6    1                                                             
*        INSERT THE FILE AREA NAME                                              
         LI,R7    1                                                             
         STH,R11  *R6,R7                                                        
*        IF FILE ACCOUNTS ARE USED, SET THE LM FILE ACCOUNT                     
         DO       #DFACNT                                                       
         LW,R10   JCBBKG+JCBNXLM    LOAD MODULE FILE ID BLOCK                   
         AI,R10   3                 ACCOUNT NAME AREA                           
         STW,R10  LMACNT-FPTINIT,R6  PUT ACCOUNT NAME POINTER IN FPT            
         FIN                        #DFACNT                                     
* INIT WITH DEBUG IF NEEDED                                                     
         LI,R0    DEBUGBIT                                                      
         AND,R0   K:JCP1                                                        
         BEZ      INIT10            B IF NOT DEBUG                              
         EOR,R0   K:JCP1                                                        
         STW,R0   K:JCP1            RESET DEBUG BIT                             
         LI,R9    F4                                                            
         STS,R9   *R6,R7            SET DEBUG FLAG IN INIT FPT                  
INIT10   RES      0                                                             
*        INITIATE THE BACKGROUND TASK                                           
         CAL1,7   *R6                                                           
         DO       #MAP=0                                                        
         CAL1,7   BKGSTOP           BKG MUST BE STOPPED WHILE                   
*                                   CT IS RUNNING                               
         FIN                        #MAP=0                                      
         B        *R15              RETURN                                      
*                                                                               
INITERR  RES      0                 ERROR RETURN FROM INIT CAL                  
         LB,R15   R10               MOVE TYC INTO R15                           
         LW,R7    BINITFPT                                                      
         BAL,R8   RELTEMP           RELEASE BKG INIT FPT                        
         LI,R7    0                                                             
         STW,R7   BINITFPT          CLEAR FPT POINTER                           
IULB     RES      0                 INIT UNABLE TO LOAD BCKG                    
         LW,R2    R15               GET ERROR CODE                              
         SCS,R2   -4                                                            
         LB,R3    CVTTBL,R2                                                     
         SLS,R2   -28                                                           
         LB,R4    CVTTBL,R2                                                     
         STH,R4   K:MSG15+7         STORE 2ND CHAR OF ERR CODE                  
         STB,R3   K:MSG15+7         STORE 1ST CHAR OF ERR CODE                  
         LI,R11   K:MSG15           'UNABLE TO LOAD BCKG'                       
         B        BKLERRM                                                       
*                                                                               
FPTSETN  DATA     X'51800000'       SETNAME CAL CODE + P0 BIT                   
         DATA     X'A6200000'       P1,P3,P6,P7,P11                             
         DATA     INITERR           ERROR RETURN ADDRESS                        
         DATA     'BKG '            TASK NAME                                   
LMNAME   DATA,8   '        '        SPACE FOR LOAD MODULE NAME                  
         DATA     'BKG '            JOB NAME                                    
FPTSETN% RES      0                 END OF SETNAME FPT                          
*                                                                               
FPTINIT  DATA     X'48800000'       INIT CAL CODE + P0                          
         DATA     P1+P3+P8+P10+P11+#DFACNT*P14+F2+F5                            
         DATA     INITERR           ERROR EXIT                                  
BKGNAME  DATA     'BKG '            TASK NAME                                   
         DATA     X'FFFF'           PRIORITY: BACKGROUND                        
INITTYC  DATA     0                 TYC WORD                                    
         DATA     'BKG '            JOB NAME                                    
         DO1      #DFACNT                                                       
LMACNT   DATA     0                 ACCOUNT NAME POINTER                        
FPTINIT% RES      0                 END OF INIT FPT                             
TSIZE    SET      FPTSETN%-FPTSETN                                              
         DO1      TSIZE<(FPTINIT%-FPTINIT)                                      
TSIZE    SET      FPTINIT%-FPTINIT                                              
         TITLE    '**** BKLMSG ****'                                            
*                                                                               
*        SUBROUTINE BKLMSG                                                      
*        PURPOSE: OUTPUT A MESSAGE TO LL AND OC                                 
*        INPUT:   R11= MESSAGE ADDRESS (MESSAGE IN TEXTC FORMAT)                
*        CALL:    BAL,R12  BKLMSG                                               
*        RETURN:  R0-8,11-15 UNCHANGED                                          
*                                                                               
BKLMSG   RES      0                                                             
         LW,R9    CCTYPE            CAL CODE TO TYPE MSG                        
         B        BKLMSG1                                                       
*                                                                               
BKGMSG   RES      0                                                             
         LW,R9    CCPRINT           CAL CODE TO PRINT MSG                       
BKLMSG1  RES      0                                                             
         LW,R10   Y8                PRESENCE BIT FOR 3RD FPT WORD               
         CAL1,2   R9                PRINT MESSAGE                               
         B        *R12              RETURN                                      
*                                                                               
*        SUBROUTINE BKLBTID                                                     
*        PURPOSE: FIND THE BACKGROUND TASK ID NR                                
*        INPUT:   NONE                                                          
*        CALL:    BAL,R12   BKLBTID                                             
*        RETURN:  AS FROM TMFINDT, (R4)=TASK ID NR                              
*                 (R6)=LOAD MODULE ID NR                                        
*                 R12 NOT CHANGED                                               
*                                                                               
BKLBTID  LI,R6    BKGJID            JOB ID NR                                   
         LW,R10   BKGNAME           TASK NAME TEXT WORD 1                       
         LW,R11   BLANKS            TASK NAME TEXT WORD 2                       
         BAL,R8   TMFINDT                                                       
         B        BKLFIN            CANT FIND TASK NAME                         
         B        *R12              RETURN                                      
*                                                                               
BKLERRM  BAL,R12  BKLMSG            OUTPUT ERROR MESSAGE                        
         LB,R0    K:JCP1                                                        
         CI,R0    X'80'                                                         
         BAZ      BKLABORT          ABORT JOB IF USER PGM LOAD                  
BKLFIN   LI,R0    0                 TERMINATE BKG STREAM (PSEUDO-FIN)           
         LI,R1    1                                                             
         STS,R0   K:JCP1            RESET 'JOB DEFINED' BIT                     
BKLABORT RES      0                                                             
         LW,R1    Y08               ABEX FLAG                                   
         STS,R1   K:CTST            SET FLAG TO RUN ABEX                        
         B        BKLEXIT                                                       
*                                                                               
CCPRINT  DATA     X'01'**24         PRINT CAL CODE                              
CCTYPE   DATA     X'02'**24         TYPE CAL CODE                               
*                                                                               
A90      TEXT     'JCP '                                                        
A92      DATA     X'C0000200'                                                   
CVTTBL   TEXT     '0123456789ABCDEF'   TABLE: CONVERT FOR HEX OUTPUT            
DEBUGBIT EQU      X'100'            BKG DEBUG FLAG IN K:JCP1                    
SIZCCBF  EQU      30                SIZE OF CONTROL CMND BUFFER                 
RBMLOCK  DATA     X'FFFFFFFF',X'55555555',X'AAAAAAAA'                           
KL00E    DATA     X'00E00000'                                                   
KM:SL    TEXT     'M:SL'                                                        
*                                                                               
         OLAYEND                                                                
         END                                                                    
