         SYSTEM   SIG7FDP
R0       EQU      0
*
*
*M*      RBBATR   RBBAT GHOST BATCH QUEUE RECOVERY ROUTINES
*
*
*P*      NAME:    RBBATR
*P*
*P*      PURPOSE: PERFORMS TASKS NECESSARY TO RECOVERY THE BATCH QUEUE
*P*               AND REMOTE PROCESSING TABLES FOLLOWING A SYSTEM RECOVERY
*P*
*P*      DESCRIPTION:
*P*               RBBATR IS CALLED BY RBBATM TO PERFORM RECOVERY TASKS
*P*               WHEN RBBATM GETS A COMBUF WITH A GFC THAT SAYS TO
*P*               RECOVER.  IT PERFORMS THE FOLLOWING TASKS:
*P*
*P*               1)  IT READS THE RBBAT RECOVERY FILE CONSISTING OF
*P*               THE FOLLOWING RECORDS (O) => OPTIONAL
*P*
*P*                                 A)  THE RBBAT COMMUNICATION BUFFERS
*P*                                 AT THE TIME OF THE CRASH, PLUS A UFFER
*P*                                 THAT MARKS THE POINT OF THE RECOVERY
*P*                                 PLUS BUFFERS THAT RECOVERY HAS ADDED
*P*                                 TO CLOSE OUT THE COOPS AND SYMBIONTS
*P*                                 KEY=RBBATCM
*P*
*P*                                 B)  (O) THE ENVIRONMENT PUSHED INTO
*P*                                 RBBATS JIT AT THE TIME OF THE CRASH
*P*                                 (MAY NOT EXIST IF RBBAT WAS RUNNING)
*P*                                 KEY=RBBATIV
*P*
*P*                                 C)  RBBAT'S STATIC DATA PAGES CONTAINING
*P*                                 THE BATCH AND REMOTE PROCESSING TABLES
*P*                                 KEY=RBBATSD
*P*
*P*                                 D) (O) RBBAT'S DYNAMIC DATA IF HE
*P*                                 HAD ANY AT THE TIME OF THE CRASH.
*P*                                 THIS DYN. DATA CONTAINS 256 WORD BUFFERS
*P*                                 USED TO READ AND WRITE SYMBIONT BLOCKS
*P*                                 KEY=RBBATDD
*P*
*P*               2)  IF RBBAT WAS RUNNING (AS OPPOSED TO SLEEPING) DURING
*P*               THE CRASH RBBATR FINISHES THE TASK THAT WAS IN PROGRESS
*P*               USING EITHER THE ENVIRONMENT FROM THE RBBAT RECOVERY FILE
*P*               (:RBBRVR.:SYS) OR RBBATS OWN SPECIAL SAVED ENVIRONMENT
*P*
*P*               3)  IT EXECUTES THE COMBUFS FROM :RBBRVR WITH THE EXCEPTION
*P*               OF THOSE WHOSE PURPOSE HAS BEEN VOIDED BY THE CRASH.
*P*               (EG THOSE WHICH RETURN INFO TO NOW NON-EXISTANT USERS)
*P*               WHEN THE COMBUF THAT MARKS THE POINT OF RECOVERY IS
*P*               PROCESSED, REMOTE PROCESSING IS CLEANED UP AND A FLAG
*P*               IS SET SO THAT RBBATM CAN TAKE SPECIAL ACTION FOR CALLS
*P*               THAT OCCURED AFTER THE RECOVERY (IE WERE MADE BY RECOVERY
*P*               HIMSELF).
*P*
*P*               4)  ANY JOBS STILL IN THE GETI TABLES ARE RETURNED TO
*P*               THE BATCH QUEUE TO BE RUN AFTER RECOVERY IS COMPLETE
*P*
*P*               5)  ANY JOBS WHICH WERE RUNNING AND SPECIFIED RERUN ARE
*P*               PUT BACK IN THE BATCH QUEUE TO BE RERUN AFTER RECOVERY
*P*               UNLESS THEY WERE THE CURRENT USER OR HAVE BEEN RERUN
*P*               BEFORE.
*P*
*P*               6)  THE RUNNING PRIORITY CHAIN IS CLEARED
*P*
*P*               7)  S:BFIS,S:USID,BL:OFS AND BL:IFS ARE RESET TO
*P*               APPROPRIATE VALUES BASED ON THE BATCH QUEUE
*P*
*P*               8)  MBS IS CALLED TO BEGIN SCHEDULING BATCH JOBS AGAIN
*P*
*P*               9)  ALL OUTPUT SYMBIONTS ARE STARTED TO RESTART PRINTING
*P*               PUNCHING, ETC.
*P*
*P*               RBBATR'S PROCESSING OF THE RECOVERY COMBUF IS NOW COMPLETE
*P*               AND IT RETURNS TO RBBAT TO PROCESS THE POST RECOVERY
*P*               COMBUFS IN CORE
*P*
*P*               RBBATR WILL ABORT AND THE BATCH QUEUE WILL BE LOST UNDER
*P*               THE FOLLOWING CIRCUMSTANCES:
*P*
*P*               1)  AN UNEXPECTED ERROR OR ABNORMAL IS RECIEVED OPENING
*P*               OR READING THE RBBAT RECOVERY FILE. (CODE = ERR/ABN CODE)
*P*
*P*               2)  THERE IS NEITHER AN ENVIRONMENT RECORD IN :RBBRVR
*P*               NOR A RBBAT SPECIAL SAVED ENVIRONMENT AND IT WAS NOT
*P*               AN OPERATOR RECOVERY  (CODE = *1)
*P*
*P*               3)  RECOVERY AND RBBATS OWN RECORDS DO NOT AGREE ON THE
*P*               SIZE OF RBBAT'S DYNAMIC DATA.  (CODE = *2)
*P*
*P*               4)  RBBATR WAS RUNNING WHEN THE CRASH OCCURED - A
*P*               NESTED RECOVERY.  (CODE = *3)
*P*
*P*               5)  THE SIZE OF THE STATIC DATA RECORD IS NOT THE SAME
*P*               AS THE KNOWN SIZE OF RBBAT'S STATIC DATA.  (CODE = *4)
*P*
*P*               6)  RECOVERY HAS SET A FLAG INDICATING IT FOUND AN
*P*               INCONSISTANCY IN THE COMBUF CHAIN.  (CODE = *5)
*P*
*P*               7)  RECOVERY HAS SET A FLAG INDICATING THAT IT COULD NOT
*P*               RECOVER RBBAT'S STATIC DATA.  (CODE = *6)
*P*
*P*               WHEN THE BATCH QUEUE HAS BEEN LOST, RBBATR SETS ALL OF
*P*               THE IN-CORE SYMBIONT AND REMOTE PROCESSING TABLES BACK
*P*               TO THEIR SYSGEN STATE,  CALLS ALLOCAT TO RETURN ALL
*P*               SYMBIONT GRANULES BACK TO THE SYSTEM, AND EXITS.  THE
*P*               NEXT CALL TO SGCQ WILL START UP ANOTHER COPY OF RBBAT.
*P*
*P*      REFERENCE:
*P*               RBBATR IS PART OF THE RBBAT LOAD MODULE.  ITS OPERATION
*P*               IS DEEPLY INTWINED WITH THAT OF RBBATM
*P*
*
*
R1       EQU      1
R2       EQU      2
R3       EQU      3
R4       EQU      4
R5       EQU      5
R6       EQU      6
R7       EQU      7
R8       EQU      8
R9       EQU      9
R10      EQU      10
R11      EQU      11
R12      EQU      12
R13      EQU      13
R14      EQU      14
R15      EQU      15
*
*
*
         DEF      RCVRY             ENTRY POINT FOR RCVRGFC
         DEF      RCVRY1            ENTRY POINT FOR RCVRGFC1
         DEF      LRRCVR            ENTRY POINT TO RECOVER 7670'S LOGGONG ON
         DEF      RCVRABRT          ENTRY POINT TO DELETE JOBS BEING
*,*                                 SUBMITTED WHEN THE RECOVERY OCCURRED
         DEF      DDKEY             DYN DATA KEY FOR :RBBRVR
         DEF      SDKEY             STAT DATA KEY FOR :RBBRVR
*
*
         REF      NOPGFC            RBBAT GHOST FUNCTION CODE
*,*                                 RELEASE BUFFER ONLY
         REF      GOF               RBBAT GHOST FUNCTION CODE
*,*                                 GET OUTPUT FILE
         REF      GIFNC             RBBAT GHOST FUNCTION CODE
*,*                                 GET NON-CONTROL INPUT FILE
         REF      MBSGFC            RBBAT GHOST FUNCTION CODE
*,*                                 PERFORM MULTI-BATCH SCHEDULE
         REF      JESTAT            RBBAT GHOST FUNCTION CODE
*,*                                 JOBENT STATUS REQUEST
         REF      JEDEL             RBBAT GHOST FUNCTION CODE
*,*                                 JOBENT CANCEL REQUEST
         REF      KCOMGFC           RBBAT GHOST FUNCTION CODE
*,*                                 !RBCOM KEYIN
         REF      SNDGFC            RBBAT GHOST FUNCTION CODE
*,*                                 !RBSEND KEYIN
         REF      BCSTGFC           RBBAT GHOST FUNCTION CODE
*,*                                 !RBBDCST KEYIN
         REF      OCMGFC            RBBAT GHOST FUNCTION CODE
*,*                                 REMOTE OC INPUT MESSAGE
         REF      RCVRGFC           RBBAT GHOST FUNCTION CODE FOR
*,*                                 RECOVER OR FAKE RECOVER
         REF      RBBSPCL           RBBAT GHOST FUNCTION CODE FOR
*,*                                 RBBAT SPECIAL FUNCTIONS.
*
         REF      M7                MASK
         REF      M16               MASK
         REF      M17               MASK
         REF      M24               MASK
         REF      YFF               MASK
         REF      X100              CTRBIT TO OR INTO RB:FLAG'S
         REF      Y002              OPEN BIT IN DCB WORD 0
         REF      Y08               FPT CODE FOR GET PAGE CAL IN REGS.
*
         REF      BB:COPY           I/O: RBBAT BATCH QUEUE TABLE
*,*                                 NUMBER OF COPIES FOR OUTPUT FILES
         REF      BB:DEV            I/O: RBBAT BATCH QUEUE TABLE
*,*                                 DEVICE TYPE FOR OUTPUT FILES
         REF      BB:PI             I/O: RBBAT BATCH QUEUE TABLE
*,*                                 PRIORITY INCREMENT FOR INPUT FILES
*,*                                 UED TO HOLD USER NUMBER FOR RUNNING JOBS
         REF      BB:RID            I/O: RBBAT BATCH QUEUE TABLE
*,*                                 RBID FOR ALL FILES
         REF      BD:ACCT           I/O: RBBAT BATCH QUEUE TABLE
*,*                                 ACCOUNT FOR INPUT FILES
         REF      BH:GRAN           I/O: RBBAT BATCH QUEUE TABLE
*,*                                 NUMBER OF GRANULES FOR OUTPUT FILES
         REF      BH:HPRI           I/O: RBBAT BATCH QUEUE TABLE
*,*                                 HEADS OF PRIORTY CHAINS INDEXED BY PRIO
         REF      BH:TPRI           I/O: RBBAT BATCH QUEUE TABLE
*,*                                 TAILS OF PRIORITY CHAINS INDEXED BY PRIO
         REF      BH:LINK           I/O: RBBAT BATCH QUEUE TABLE
*,*                                 PRIORITY LINK FOR ALL FILES
         REF      BH:SID            I/O: RBBAT BATCH QUEUE TABLE
*,*                                 SYSID FOR ALL FILES
         REF      BW:FORM           I/O: RBBAT BATCH QUEUE TABLE
*,*                                 FORM NAME TABLE FOR OUTPUT FILES
         REF      BW:SDA            I/O: RBBAT BATCH QUEUE TABLE
*,*                                 STARTING DISC ADDRESS AND FLAG TABLE
*,*                                 FOR ALL FILES
         SREF     BB:JDE            I/O: RBBAT BATCH QUEUE TABLE
*,*                                 XEROX 1200 JOB DESCRIPTOR LIBRARY ENTRY
*,*                                 FOR OUTPUT FILES
         SREF     BW:FOVL           I/O: RBBAT BATCH QUEUE TABLE
*,*                                 XEROX 1200 FORMS OVERLAY ENTRY FOR
*,*                                 OUTPUT FILES
*
         REF      BL:IFS            I/O: IN CORE COUNTER OF NUMBER OF INPUT
*,*                                 BATCH QUEUE SLOTS REMAINING
         REF      BL:OFS            I/O: IN CORE COUNTER OF NUMBER OF OUTPUT
*,*                                 BATCH QUEUE SLOTS REMAINING
*
         REF      DCT3              INPUT: DEVICE FLAGS - X'20' SET SAYS DOWN
         REF      DCT24             INPUT: PARTITIONING FLAGS - X'40' SET SAYS
*,*                                 DEVICE PARTITIONED
*
         REF      GI:FRE            I/O: GETI TABLE HEAD OF
*,*                                 FREE SLOTS
         REF      GI:SDA            I/O: GETI TABLE STARTING
*,*                                 DISC ADDRESS
         REF      GIB:UN            I/O: GETI TABLE USER NUMBER
*
         REF      PL:LK             I/O: SET NON ZERO TO PREVENT PARTITION
*,*                                 ATTRIBUTE CHANGE
*
         REF      RB:FLAG           I/O: REMOTE PROCESSING FLAGS WHICH CONTROL
*,*                                 FLOW OF REMOTE PROCESSING
         REF      RBB:HFE           I/O: HEAD OF INACTIVE SYMBIONTS FOR IRBT
*,*                                 LINE - HEAD OF ALL SYMBIONTS FOR 7670
*,*                                 OR 2780 LINE
         REF      RBB:HOU           I/O: HEAD OF ACTIVE OUTPUT SYMBIONTS FOR
*,*                                 IRBT LINE - ACTIVE OUTPUT SYMBIONT
*,*                                 FOR 7670 OR 2780 LINE
         REF      RBB:HIN           I/O: HEAD OF ACTIVE INPUT SYMBIONTS
*,*                                 FOR IRBT LINE - ACTIVE INPUT SYMBIONT
*,*                                 FOR 7670 OR 2780 LINE
         REF      RBLIMS            INPUT: DOUBLEWORD - CLM ON DCTS TELLS IF RB
*
         REF      S:BFIS            I/O: COUNT OF BATCH INPUT FILES WAITING
*,*                                 TO RUN
         REF      S:USID            I/O: NEXT SYSID TO BE USED(ADD 1 TO CELL
*,*                                 AND TAKE YOURS)
         REF      S:RBBRN           I/O: RBBATR HAS RUN FLAG - SET TO 1 TO
*,*                                 ALLOW ALLOCATION OF SYMBIONT GRANULES
         REF      SMUIS             INPUT: NUMBER OF USERS POSSIBLE IN SYSTEM
*
         REF      SNDDX             INPUT: SYMBIONT TABLE OF DCT INDICES
         REF      SSIG              I/O:  SYMBIONT SIGNAL USED TO START
*,*                                 SYMBIONTS
         REF      SSTAT             INPUT: SYMBIONT STATUS 0 => IDLE
         REF      STB:TYP           I/O: SYMBIONT DEVICE TYPE CLEARED WHEN
*,*                                 REMOTE PROCESSING SYMBS ARE RELEASED
         SREF     STB:LNK           I/O: SYMBIONT REMOTE PROCESSING LINK
*,*                                 USED TO RELEASE RP SYMBIONTS EITHER
*,*                                 TO THE FREE CHAIN OR TO RBB:HFE
         REF      SYMX              INPUT: SYMBIONT FLAGS - X'2' SET MEANS OUTPU
         SREF     MXSTRM            INPUT: SYMB. INDEX OF LAST POSSIBLE RB SYMB
*
         SREF     ACTBIT            RB:FLAG BIT - TERMINAL LOGGED ON
         SREF     HASPBIT           RB:FLAG BIT - IRBT LINE
         SREF     OFFBIT            RB:FLAG BIT - 5 SEC CLOCK ROUTINE
*,*                                 DISABLED
         SREF     2780BIT           RB:FLAG BIT - 2780 LINE
         SREF     OADBIT            RB:FLAG BIT - SET OFFBIT AT DISCONNECT
         REF      BSCBTS            RB:FLAG BIT - HASPBIT+2780BIT
*
         REF      RCVRBUF           I/O: RBBAT STATIC DATA AREA
*,*                                 ADDRESS OF COMBUFS READ FROM :RBBRVR
         REF      RCVRFLG           I/O: RBBAT STATIC DATA AREA
*,*                                 WORD NOT ZERO => RBBATR RUNING, TOP
*,*                                 BYTE NOT ZERO => POINT OF RECOVERY IN
*,*                                 COMBUFS HAS BEEN PASSED
         REF      SDAA              INPUT: RBBAT STATIC DATA AREA
*,*                                 BASE OF RBBAT STATIC DATA (ADDRESS NOT
*,*                                 NOT CONTENTS)
         REF      SYMND             INPUT: RBBAT STATIC DATA AREA
*,*                                 END OF RBBAT STATIC DATA (GENERATED
*,*                                 BY SYSGEN)
         REF      INVRN             INPUT: RBBAT STATIC DATA AREA
*,*                                 BUFFER IN RBBAT USED TO READ IN EN-
*,*                                 VIRONMENT RECORD FROM :RBBRVR
         REF      INVRNSZ           INPUT: SIZE OF INVRN
         REF      SVCBF             I/O: RBBAT STATIC DATA AREA
*,*                                 ADDRESS OF CURRENT COMBUF
         REF      RCVRSV            I/O: RBBAT STATIC DATA AREA
*,*                                 RBBATR SAVES RECOVERY FLAGS AND THE
*,*                                 RCVR COMBUF ADDR
         REF      FINFLG            I/O: RBBAT STATIC DATA AREA
*,*                                 IF NOT ZERO THIS INPUT STREAM ENDED
*,*                                 IN !FIN (NOT ANOTHER JOB)
         REF      RSID              INPUT: RBBAT STATIC DATA AREA
*,*                                 LAST USED SYSID SAVED TO RESTORE S:USID
         REF      FLAGS             I/O: RBBAT STATIC DATA AREA
*,*                                 RB:FLAG IS SAVED HERE DURING RBBAT
*,*                                 PROCESSING ON AN RB DEVICE
         REF      RCVRPTR           I/O: RBBAT STATIC DATA AREA
*,*                                 IF NOT ZERO PLACE TO GO FOR NEXT COMBUF
*,*                                 THIS POINTS INTO RBBATR DURING RCVRY
         REF      PGCNT             INPUT: RBBAT STATIC DATA AREA
*,*                                 (32-CONTENTSI/O: 1)**-1 = CURRENT NUMBER
*,*                                 OF DNAMIC DATA PAGES
         REF      SVREGS            INPUT: RBBAT STATIC DATA AREA
*,*                                 16 WORD AREA WHERE SPECIAL RBBAT EN-
*,*                                 VIRONMENTS ARE SAVED
         REF      SVZ               I/O: RBBAT STATIC DATA AREA
*,*                                 IF ZERO VALID SPECIAL RBBAT ENVIR-
*,*                                 ONMENT IS PRESENT IN SVREGS
         REF      RCVUN             I/O: RBBAT STATIC DATA AREA
*,*                                 CELL USED TO SAVE CURRENT USER AT THE
*,*                                 TIME OF THE CRASH
         REF      TMPSTK            I/O: RBBAT STATIC DATA AREA
*,*                                 RBBATS TEMP STACK
*
         REF      FIPRI             INPUT: PRIORITY INDEX INTO BH:HPRI
*,*                                 X'F' PRIORITY INPUT
         REF      RUNPRI            INPUT: PRIORITY INDEX INTO BH:HPRI
*,*                                 RUNNING JOBS
         REF      0OPRI             INPUT: PRIORITY INDEX INTO BH:HPRI
*,*                                 X'0' PRIORITY OUTPUT
         REF      NCIPRI            INPUT: PRIORITY INDEX INTO BH:HPRI
*,*                                 NON-CONTROL INPUT
         REF      DELPRI            INPUT: PRIORITY INDEX INTO BH:HPRI
*,*                                 FILES TO BE DELETED
         REF      FREO              INPUT: PRIORITY INDEX INTO BH:HPRI
*,*                                 FREE OUTPUT FILE SLOTS
         REF      FREI              INPUT: PRIORITY INDEX INTO BH:HPRI
*,*                                 FREE INPUT FILE SLOTS
*
         REF      M:XX              JIT DCB RBBAT USES TO DO FILE I/O
         REF      SGCHD             INPUT: HEADS AND TAILS OF RBBAT COMBUFS
         REF      SGCBUF            INPUT:  BASE OF COMBUFS
         REF      LCLX              LOCAL INDEX INTO SOME RB TABLES
*
         REF      RRBIT             INPUT:  RERUN BIT IN BW:SDA
         REF      RRRBIT            I/O: ALREADY RERUN BIT IN BW:SDA
*
         REF      INFIL             TOTAL NUMBER OF INPUT FILE SLOTS
         REF      OUTFIL            TOTAL NUMBER OF OUTPUT FILE SLOTS
         REF      MFS               NUMBER OF MESSAGE FILE SLOTS (PART
*,*                                 OF OUTFIL
*
         REF      ZAPM              BATCH QUEUE LOST MESSAGE
         REF      ZAPM1             PLACE TO STORE CODE INTO ZAPM
         REF      SYSD              INDEX INTO MESSAGES TO STORE SYSID
         REF      RRM               JOB TO BE RERUN MESSAGE
         REF      NRRM              JOB NOT TO BE RERUN MESSAGE
         REF      NRRM1             PLACE TO STORE ACCOUNT INTO NRRM
*
         REF      CTR1              CALLED: TO GET NEXT COMBUF AND CALL
*,*                                 RBBAT PROCESSING ROUTINE
         REF      CTR2              RBBAT'S WAKEUP PIONT USED TO TEST
*,*                                 WHETHER RBBAT WAS SLEEPING WHEN CRASH
*,*                                 OCCURED
         REF      CTR4              CALLED:  TO GET NEXT COMBUF AND CALL RBBAT
*,*                                 PROCESSING ROUTINE (SKIPS RB:FLAG CODE)
         REF      CTR5              CALLED: TO CALL APPROPRIATE RBBAT PRO-
*,*                                 CESSING ROUTINE FROM A COMBUF NOT
*,*                                 ON THE CORE SGCHD CHAINS
         REF      GET256            CALLED: TO GET A 256 WORD RBBAT DYN. BUFF.
         REF      FRE256            CALLED: TO FREE A 256 WORD RBBAT DYN.BUF.
         REF      ALLOQ             CALLED: TO DO A FILPER (FREE ALL SYMB-
*,*                                 IONT GRANULES
         REF      DEC               CALLED: TO CONVERT NUMBER TO EBCDIC DECIMAL
         REF      HEXC              CALLED: TO CONVERT NUMBER TO EBCDIC HEX
         REF      MBS               CALLED: TO DO A MULTI-BATCH SCHEDULE
         REF      MOVEMES           CALLED: TO PUT MESSAGES IN A MESSAGE
*,*                                 FILE (USUALLY FOR A REMOTE TERMINAL)
         REF      SETHDR            CALLED: TO START A REMOTE MESSAGE FILE AND
*,*                                 INSERT THE REMOTE HEADER
         REF      FIND              CALLED: TO BEGIN RUNNING SOME BATCH QUEUE
*,*                                 PRIORITY CHAINS
         REF      FIND1             CALLED: TO CONTINUE RUNNING SOME BATCH
*,*                                 QUEUE PRIORITY CHAINS
         REF      RB%HU             CALLED: TO DISCONNECT AND CLEAR THE TABLES
*,*                                 FOR A REMOTE PROCESSING TERMINAL
         REF      FO1               CALLED: TO CLOSE OUT ANY CURRENT MESSAGE
*,*                                 FILE FOR A RP TERMINAL
         REF      ADDFRE            CALLED: TO ADD A QUEUE SLOT FROM THE FREE
*,*                                 CHAIN TO A PRIORITY CHAIN
         REF      SVIV1             CALLED: TO SAVE A RBBAT SPECIAL ENVIRONMENT
         REF      SAQNSERT          CALLED: TO START OUTPUT SYMBIONTS
         REF      RBG               BASE ADDRESS OF RBBAT USED TO TEST
*,*                                 WHETHER RBBAT IS ACTUALLY PROCESSING
*,*                                 COMBUFS
         REF      BADRID1           CALLED: TO ABORT LOGON PROCESS OF RP TERM.
*,*                                 INTERRUPTED BY RECOVERY
         REF      DELJOB            CALLED: TO DELETE A JOB AND CLEAR AIF
*,*                                 FLAGS WHEN THE JOB WAS BEING INPUT
*,*                                 AT THE TIME OF THE RECOVERY
         REF      LSTSECT           CALLED: TO DELETE A REMOTE PROCESSING
*,*                                 JOB WHOSE INPUT WAS INTERRUPTED BY
*,*                                 THE RECOVERY
         REF      TEL%OP1           CALLED: TO WRITE MESSAGES TO THE OPERATOR
         REF      S:SGCSAV          INPUT : SAVED HDS OF SGCHD CHAINS
         REF      S:QUIET           OUT : RESET TO DISCONTINUE SYMB
*,*                                        QUIESCENCE
         REF      YFFXFF            INPUT : MASK FOR RESTORING SGCHD
         REF      SVIV              CALLED : TO SAVE AN ENVIRONMENT IN
*,*                                 CASE OF A CRASH
*
*
         CSECT    1                 ---------------------------------------
RCVRY    EQU      %                 GET FLAGS FROM COMBUF LEFT BY RECOVERY.
         LI,R5    0                 FLAG X'2' MEANS DATA CLOBBERED,X'4' MEANS
         LW,R15   2,R7              COMBUFS CLOBBERED, X'1' MEANS OPERATOR
         LB,R1    R15
         STW,R1   RCVUN
         SLS,R15  28                RECOVERY , X'8' MEANS GHOST WASNT RUNNING
         AW,R15   R7                BUT HAS SOMETHING TO RECOVER.  GET COMBUF
         STW,R15  RCVRSV            ADDR. AND STORE IT AND FLAGS IN RCVRSV.
         LC       R15
         BCS,2    ZAP
         BCS,4    ZAP1              -------------------------------------------
         CAL1,1   OPNR              OPEN THE RECOVERY FILE.  IF RBBAT WASN'T
         LC       R15               RUNNING READ COMBUFS ONLY.
         BCS,8    RDCM              -------------------------------------------
         LI,R1    SDKEY             READ IN STATIC DATA RECORD - IF RCVRFLG IS
         LI,R5    SDSIZE            SET IN NEW DATA THIS IS A NESTED RECOVERY.
         AI,R5    X'7FF'
         SLS,R5   -11
         SLS,R5   11
         LI,R9    SDAA
         LW,R8    R5
         CAL1,1   READR
         STW,R15  RCVRSV
         CW,R5    M:XX+13
         BNE      ZAP2
         LI,R1    1
         XW,R1    RCVRFLG
         BNEZ     ZAP3              -------------------------------------------
         LI,R3    32                AGAINST INTERNAL COUNTERS.  IF SOME EXISTS
         SW,R3    PGCNT             READ IT IN.
         SLS,R3   -1
         LW,R1    1,R7
         BLZ      RDDD
         CW,R3    R1
         BNE      ZAP4
RDDD     EQU      %
         AI,R3    0
         BEZ      RDFK
         OR,R3    Y08
         CAL1,8   R3
         SLS,R8   11
         LI,R1    DDKEY
         CAL1,1   READR             -------------------------------------------
RDFK     EQU      %                 CHECK FOR FAKE RCVRY - IF SO
         LW,R9    3,R7              RESET RCVRFLG AND RETURN COMBUFS
         BEZ      RDIV              TO AVAIL CHAIN AND CONTINUE NORMAL
         LI,R9    0
         STW,R9   RCVRFLG           PROCESSING.
         BAL,R8   SVIV1
         LW,R6    S:SGCSAV
         LW,R7    YFFXFF
         BAL,R11  SVIV              IF WE CRASH HERE, WE WANT TO COMPLETE
         STW,R9   S:SGCSAV          THIS OPERATION.
         STW,R9   S:QUIET
         STS,R6   SGCHD
         MTW,0    RCVRFLG           ARE WE RECOVERING ?
         BNEZ     *RCVRPTR          YES, SO RETURN TO CONTINUE RCVR.
         CAL1,1   CLSXXR            CLOSE :RBBRVR FILE.
         B        RCVRDN            ----------------------------------
RDIV     EQU      %                 READ IN INVIRONMENT AND COMBUF RECORDS.
         LI,R9    INVRN             THE COMBUFS GO INTO A DYNAMIC DATA BUFFER.
         LI,R8    INVRNSZ           WHOSE ADDR. IS SAVED IN RCVRBUF.
         LI,R1    IVKEY
         CAL1,1   READR
RDCM     EQU      %
         BAL,R6   GET256
         LW,R9    R7
         STW,R7   RCVRBUF
         LI,R8    1024
         LI,R1    CMKEY
         CAL1,1   READR             ------------------------------------------
         CAL1,1   CLSXXR
         BAL,R11  INPROG            THERE IS AN ENVIRONMENT TO BE EXECUTED.
INPROGX  EQU      %                 -------------------------------------------
         LI,R7    RCVRCTR1          GET THE COMBUFS FROM THE RECOVERY FILE AND
         STW,R7   RCVRPTR           PERFORM THE REQUESTED TASKS IF NECESSARY
         LI,R7    X'FF'             AND POSSIBLE.WHEN DONE FREE THE COMBUF RECOR
         LS,R7    *RCVRBUF          AREA.
RCVRCTR  EQU      %
         AW,R7    RCVRBUF
         STW,R7   SVCBF
         LI,R2    3
         LB,R2    *R7,R2
         MTB,0    RCVRFLG
         BNEZ     CTR5
         LI,R1    #ABORTS
         CB,R2    ABORTS,R1
         BE       %+3
         BDR,R1   %-2
         B        CTR5
RCVRCTR1 EQU      %
         LB,R7    *SVCBF
         BNEZ     RCVRCTR
         LW,R6    RCVRBUF
         BAL,R4   FRE256            --------------------------------------------
GETIRCVR EQU      %                 PICK UP ANY JOBS IN THE GETI TABLES WHICH
         LI,R1    RUNPRI            HAVE NOT YET BEEN ACCESSED BY THE COOP.
         LH,R2    BH:HPRI,R1        AT THE SAME TIME CLEAR OUT THE RUNNING CHAIN
GIR1     EQU      %
         BEZ      GIR4
         LI,R4    FREI
         LB,R15   BB:PI,R2
         LI,R3    3
         CB,R15   GIB:UN,R3
         BE       GIR15
         BDR,R3   %-2
         LW,R10   BW:SDA,R2
         CW,R10   RRBIT
         BAZ      GIR2
         LH,R15   BH:SID,R2
         CW,R10   RRRBIT
         BANZ     NORR
         LB,R10   BB:PI,R2
         CW,R10   RCVUN
         BE       NORR
         LW,R13   RRRBIT
         STS,R13  BW:SDA,R2
         STB,R13  BB:PI,R2
         LI,R4    RRM
         LI,R10   GIR2-1
*
*
*O*      MESSAGE: *SYSID=XXXX WILL BE RERUN
*O*
*O*      MEANING: THE SPECIFIED JOB REQUESTED RERUN ON ITS !LIMIT CARD AND
*O*               IS BEING RERUN.
*O*
*O*      ACTION:  NONE - INFORMATION ONLY
*O*
*
*
TEL%RR   EQU      %
         BAL,R11  HEXC
         STW,R13  SYSD,R4
         LCI      2
         PSM,R1   TMPSTK
         BAL,R8   TEL%OP1
         LCI      2
         PLM,R1   TMPSTK
         B        *R10
NORR     EQU      %
         LI,R4    NRRM
         LD,R10   BD:ACCT,R2
         STW,R10  NRRM1
         STW,R11  NRRM1+1
         BAL,R10  TEL%RR
*
*
*O*      MESSAGE: *SYSID=XXXX ACCT = AAAAAAAA CANNOT BE RERUN
*O*
*O*      MEANING: THE SPECIFIED JOB REQUESTED RERUN ON ITS !LIMIT CARD
*O*               BUT WILL NOT BE RERUN BECAUSE IT WAS CURRENT USER AT THE
*O*               TIME OF THE CRASH OR HAS ALREADY BEEN RERUN
*O*
*O*      ACTION:  INFORM THE OWNER OF THE JOB AND THE SYSTEMS ANALYST
*O*
*
*
         LI,R4    DELPRI
         B        GIR2
GIR15    EQU      %
         MTW,1    S:BFIS
         LI,R15   0
         STB,R15  GIB:UN,R3
         STB,R15  BB:PI,R2
         XW,R15   GI:SDA,R3
         STS,R15  BW:SDA,R2
         LI,R4    FIPRI-1
GIR2     EQU      %
         LH,R1    BH:LINK,R2
         LH,R15   BH:HPRI,R4
         STH,R15  BH:LINK,R2
         STH,R2   BH:HPRI,R4
         BNEZ     %+2
         STH,R2   BH:TPRI,R4
         LW,R2    R1
         B        GIR1
GIR4     EQU      %                 --------------------------------------------
         LI,R1    RUNPRI            CLEAR VARIOUS FLAGS AND POINTERS .  AT THIS
         STH,R2   BH:HPRI,R1        TIME THE RECOVERY IS ESSENTIALLY COMPLETE.
         STH,R2   BH:TPRI,R1        THEN DO AN MBS AND START ALL THE SYMBIONTS
         STW,R2   RCVRFLG           TO GET THE SYMBIONT SYSTEM GOING AGAIN.
         BAL,R8   SVIV1             FINALLY EXIT TO RELEASE THE COMBUF AND
         STW,R2   SVCBF             CONTINUE NORMAL OPERATION.
         STW,R2   PL:LK
         MTW,1    S:RBBRN
         LI,R11   INFIL-1
         LI,R14   OUTFIL-MFS-1
         LI,R1    DELPRI
         BAL,R0   FIND
         B        SETCL
         CI,R1    DELPRI
         BNE      COUNT2
         CI,R2    INFIL
         BG       COUNT1
COUNT    AI,R11   -1
         B        FIND1
COUNT1   AI,R14   -1
         B        FIND1
COUNT2   EQU      %
         CI,R1    RUNPRI
         BG       COUNT1
         B        COUNT
SETCL    EQU      %
         STW,R14  BL:OFS
         STW,R11  BL:IFS
         AI,R11   1-INFIL
         LCW,11   11
         STW,R11  S:BFIS
         LH,R11   RSID
         AI,R11   2                 PADDING
         STW,R11  S:USID
         BAL,R11  MBS
         LB,R3    SNDDX
         B        STRT2
STRT     EQU      %
         LB,R1    SNDDX,R3
         AND,R1   M7
         BEZ      STRT1
         CLM,R1   RBLIMS
         BCR,9    STRT1+1
         LB,R1    SYMX,R3
         CI,R1    2
         BAZ      STRT1
STRT2    EQU      %
         LB,R1    SSIG,R3
         BNEZ     STRT1
         LB,R1    SSTAT,R3
         BNEZ     STRT1
         LC       SYMX,R3
         BCS,8    STRT1             TERMINATE ON EOF
         LI,R1    'I'
         STB,R1   SSIG,R3
         BAL,R11  SAQNSERT
STRT1    BDR,R3   STRT
RCVRDN   EQU      %
         LI,R5    LCLX
         LW,R1    RCVRSV
         STW,R11  SVZ
         B        CTR1+3
*********************************************
RCVRY1   EQU      %                 PROCESS RECOVERY OCCURED HERE COMBUF.
         MTW,1    FINFLG            :
         LI,R1    RC2               SET THE TOP BYTE OF RCVRFLG AND THEN SEND
         STW,R1   RCVRPTR           RECOVERY OCCURED TO ALL RBTS IN THE MESSAGE
         MTB,1    RCVRFLG           FILES.  THEN EXIT BACK TO RCVRCTR.
         LW,R5    RBLIMS+1
         B        %+2
RC2      EQU      %
         AI,R5    -1
         CW,R5    RBLIMS
         BL       RC3
         LI,R15   OADBIT
         BAL,R1   TSTDOWN
         STS,R15  RB:FLAG,R5
         LW,R9    RB:FLAG,R5
         STW,R9   FLAGS
         CI,R9    ACTBIT
         BAZ      RB%HU
         CW,R9    HASPBIT
         BANZ     FSTRM
         CW,R9    2780BIT
         BANZ     RB%HU
         BAL,R1   TSTDOWN
         B        RB%HU
         BAL,R4   SETHDR
         LI,R4    CTR4
         LI,R1    RCVRMES
         BAL,R11  MOVEMES
         CI,R4    CTR4
         BNE      RC2
         LW,R9    RB:FLAG,R5
         OR,R9    X100
         B        FO1
RC3      EQU      %
         LI,R1    0
         STW,R1   FINFLG
         LI,R1    RCVRCTR1
         STW,R1   RCVRPTR
         B        RCVRCTR1
FSTRM    EQU      %
         LI,R10   0
         LB,R4    RBB:HIN,R5
         BAL,R11  STRMST
         LB,R4    RBB:HOU,R5
         BAL,R11  STRMST
         STB,R10  RBB:HOU,R5
         STB,R10  RBB:HIN,R5
         B        RB%HU
STRMST   EQU      %
         BEZ      *R11
         LB,R3    RBB:HFE,R5
         STB,R4   RBB:HFE,R5
         LB,R10   STB:LNK,R4
         BEZ      %+3
         LW,R4    R10
         B        %-3
         STB,R3   STB:LNK,R4
         B        *R11
TSTDOWN  EQU      %
         LC       DCT3,R5
         BCS,2    0,R1
         LC       DCT24,R5
         BCS,4    0,R1
         B        1,R1
**********************************************
INPROG   EQU      %                 CHECK FOR AN ENVIRONMENT AND EXECUTE IT.
         STW,R11  RCVRPTR           :
         LW,R9    FLAGS             THE GHOST SAVES ITS OWN ENVIRONMENT WHEN
         AND,R9   RCVRMSK           IF GOES DOWN INTO THE MONITOR AND IF SVZ IS
         AI,R9    X'20'             ZERO THIS IS VALID.  OTHERWISE THE JIT
         STW,R9   FLAGS             ENVIRONMENT FROM RECOVERY IS CHECKED TO
         XW,R9    SVZ               SEE IF IT SHOWS THE GHOST RUNNING.  IF
         BNEZ     JITIV             NOT INPROG EXITS.  IF SO THIS ENVIRONMENT IS
         LW,R7    SVCBF
         AI,R7    -SGCHD
         AW,R7    RCVRBUF
         STW,R7   SVCBF
         LCI      0                 EXCUTED.  IF AN OPERATOR RECOVERY OCCURED
         LM,R0    SVREGS            THERE MAY NOT BE AN ENVIRONMENT EVEN IF RBBA
         B        *R11              WAS RUNNING  IN THIS CASE THE OPERATOR IS TO
JITIV    EQU      %                 AND THE RECOVERY CONTINUES.  IF THE GHOST HA
         LW,R1    INVRN             NEVER BEEN STARTED THERE IS NO ENVIRONMENT
         AND,R1   M17               AND THIS IS OK.  GOF IS SPECIAL CASED.
         BNEZ     JITIV1
         LC       RCVRSV
         BCS,8    INPROGX
         BCR,1    ZAP5
         LI,R4    OPRM
         LI,R8    INPROGX
         B        TEL%OP1
*
*
*O*      MESSAGE:  *TASK LOST BY RBBAT DUE TO OPERATOR RECOVERY
*O*
*O*      MEANING:  AN OPERATOR RECOVERY WAS DONE WHILE RBBAT WAS PROCESSING
*O*                A RBBAT COMMUNICATION BUFFER, AND THAT PROCESSING CANNOT
*O*                BE COMPLETED.
*O*
*O*      ACTION:   NONE - INFORMATION ONLY.  THE STATUS OF THE BATCH QUEUE
*O*                IS IN DOUBT, BUT IT CANNOT BE REPARED IF DAMAGED.  IF
*O*                SYMBIONT PROCESSING DOES NOT FUNCTION PROPERLY - BOOT
*O*                FROM RAD
*O*
*
*
JITIV1   EQU      %
         CI,R1    CTR2
         BE       INPROGX
         CLM,R1   CTRLIMS
         BCR,9    INPROGX
         LW,R7    SVCBF
         AI,R7    -SGCHD
         AW,R7    RCVRBUF
         LI,R3    X'FF'
         LS,R3    *R7
         CI,R3    GOF
         BE       TRGOF
         CI,R3    GIFNC
         BE       TRGIF
INPROGO  EQU      %
         LW,R3    INVRN+10
         CW,R3    SVCBF
         BNE      %+2
         STW,R7   INVRN+10
         STW,R7   SVCBF
         LCI      0
         LM,R0    INVRN+2
         LPSD,0   INVRN
************************************************
TRGOF    EQU      %                 IF THE CURRENT OPERATION WAS GOF AT THE
         LW,R1    1,R7              TIME OF THE CRASH A FILE MAY HAVE BEEN
         CI,R1    -1
         BNE      INPROGX
         LI,R1    TRGOF1            BE EXECUTED BUT THERE IS NO ONE TO GIVE
TRG      EQU      %
         STW,R1   RCVRPTR           THE FILE TO.  THIS ROUTINE ALLOWS THE GOF TO
         B        INPROGO           COMPLETE BUT THEN RETURNS THE INFORMATION TO
TRGOF1   EQU      %                 THE ENTRY.
         LW,R14   2,R7
         LB,R14   R14
         AI,R14   0OPRI
TRG1     EQU      %
         LW,R10   1,R7
         BEZ      INPROGX
         LI,R1    FREO
         LH,R2    BH:HPRI,R1
         AND,R10  M24
         STW,R10  BW:SDA,R2
         LI,R8    INPROGX
         CI,R14   DELPRI
         BE       ADDFRE
         LH,R3    BH:TPRI,R1
         LW,R10   BW:SDA,R3
         AND,R10  YFF
         STS,R10  BW:SDA,R2
         LH,R10   BH:SID,R3
         STH,R10  BH:SID,R2
         LB,R10   BB:RID,R3
         STB,R10  BB:RID,R2
         LB,R10   BB:DEV,R3
         STB,R10  BB:DEV,R2
         LW,R10   BW:FORM,R3
         STW,R10  BW:FORM,R2
         LB,R10   BB:COPY,R3
         STB,R10  BB:COPY,R2
         LH,R10   BH:GRAN,R3
         STH,R10  BH:GRAN,R2
         LI,R10   BW:FOVL
         BEZ      ADDFRE
         LW,R10   BW:FOVL,R3
         STW,R10  BW:FOVL,R2
         LB,R10   BB:JDE,R3
         STB,R10  BB:JDE,R2
         B        ADDFRE
TRGIF    EQU      %
         LI,R1    4
         LB,R1    *R7,R1
         BEZ      INPROGX
         LI,R1    TRGIF1
         B        TRG
TRGIF1   EQU      %
         LI,R14   NCIPRI
         B        TRG1
*************************************
RCVRABRT EQU      %                 IF AN AIF IS RECIEVED AFTER THE RECOVERY
         CLM,R5   RBLIMS            OCCURED POINT THE JOB IS DELETED  AND
         BCS,9    RCAL              THE SUBMITTER (OPERATOR) IS TOLD VIA THIS
         CW,R9    BSCBTS
         BANZ     LSTSECT
         CI,R9    ACTBIT
         BAZ      LSTSECT
         BAL,R4   SETHDR            ROUTINE.
         NOP
         LI,R1    RABTM
         LI,R11   LSTSECT
         B        MOVEMES
RCAL     EQU      %
         LI,R4    RABTM
         LI,R8    DELJOB
         B        TEL%OP1
*
*
*O*      MESSAGE: *PARTIAL INPUT FILE DELETED BY RECOVERY
*O*
*O*      MEANING: THE FILE CURRENTLY BEING READ INTO THE CARD READER AT
*O*               THE TIME OF THE CRASH WAS NOT COMPLETELY READ IN, AND THE
*O*               PARTIAL INPUT HAS BEEN DELETED
*O*
*O*      ACTION:  RESUBMIT THE FILE
*O*
*
*
******************************************
LRRCVR   EQU      %                 IF A MONITOR BUFFER CARRYING A LOGON RECORD
         LI,R10   RCVRELOG
         B        BADRID1           TELLS THE RBT TO TRY AGAIN.
*******************************************
ZAP      MTB,1    R5                IF THE GHOST CANNOT RECOVER THIS ROUTINE
ZAP1     MTB,1    R5                TELLS THE LOCAL OPERATOR AND EXITS TO
         CAL1,1   OPNR
ZAP2     MTB,1    R5                ANOTHER COPY OF THE GHOST WITH CLEAN DATA
ZAP3     MTB,1    R5                AFTER CLEARING UP ALL SORTS OF CORE TABLES.
ZAP4     MTB,1    R5                :
ZAP5     MTB,1    R5                THE ERROR CODE GIVEN IS AN I/O ERR/ABN
         LB,R15   R5                IF NO '*' IS PRESENT.  IF THE '*' IS THERE
         BAL,R11  DEC               IT IS ONE OF THESE:
         LI,R15   '*'               :
         STB,R15  R13                 *  1  =  UNEXPLAINED MISSING ENVIRONMENT
ZAPX     EQU      %                   *  2  =  DYNAMIC DATA WRONG SIZE
         LW,R1    Y002
         CW,R1    M:XX
         BAZ      %+2
         CAL1,1   CLSXXR
         STW,R13  ZAPM1               *  3  =  NESTED RECOVERY
         LI,R4    ZAPM                *  4  =  STATIC DATA WRONG SIZE
         BAL,R8   TEL%OP1             *  5  =  RCVRY SAID COMBUFS BAD
*
*
*O*      MESSAGE: *BATCH QUEUE LOST! - CODE= XXXX
*O*
*O*      MEANING: ALL FILES (JOBS) IN THE BATCH QUEUE HAVE BEEN LOST -
*O*               ALL REMOTE PROCESSING TERMINALS MUST RE-CONNECT AND LOG ON
*O*
*O*      ACTION:  NOTE THE CODE AND REPORT IT TO THE SYSTEMS ANALYST WITH
*O*               THE ANLZ DUMP ACCOMPANYING THE CRASH
*O*
*
*
         LW,R1    RCVRSV              *  6  =  RCVRY SAID DATA BAD
         WD,0     X'37'             :
         LB,R2    SGCHD             THESE ARE ALL SYSTEM ERRORS AND SHOULD
         STB,R2   *R1               BE DEBUGED WHENEVER THEY OCCUR.
         AI,R1    -SGCBUF
         STB,R1   SGCHD
         LI,R1    X'10203'
         STW,R1   GI:FRE
         LW,R1    S:USID
         CLM,R1   SYSDLMS
         BCR,9    %+3
         LI,R1    SMUIS+1
         STW,R1   S:USID
         LI,R1    0
         STW,R1   S:BFIS
         STW,R1   PL:LK
         LI,R1    MXSTRM
         BEZ      ZAPX3
         LI,R14   0
ZAPX1    EQU      %
         STB,R14  SSIG,R1
         STB,R14  STB:TYP,R1
         STB,R1   STB:LNK,R1
         MTB,1    STB:LNK,R1
         BDR,R1   ZAPX1
         LI,R1    MXSTRM
         STB,R14  STB:LNK,R1
         LI,R14   1
         STB,R14  STB:LNK
         LW,R1    RBLIMS+1
ZAPX2    CW,R1    RBLIMS
         BL       ZAPX3
         LW,R14   RB:FLAG,R1
         AND,R14  ZAPRBIT
         AI,R14   OFFBIT
         STW,R14  RB:FLAG,R1
         AI,R1    -1
         B        ZAPX2
ZAPX3    EQU      %
         LI,R1    INFIL-1
         STW,R1   BL:IFS
         LI,R1    OUTFIL-MFS-1
         STW,R1   BL:OFS
         WD,0     X'27'
         LW,R14   Y0006
         LI,R15   0
         BAL,R4   ALLOQ
         MTW,1    S:RBBRN
*HERE IT SAYS GJOB RBBAT :SYS ERR ON THE OC
         CAL1,9   1
***********************************************
IOZAP1   BAL,R11  HEXC
         B        ZAPX
***********************************************
RDER     EQU      %
         AND,R8   M17
         CI,R8    ZAP2
         BE       ZAP2              WE OPENED JUST TO REL
         LH,R15   R10
         AND,R15  M16
         CI,R15   X'4300'
         BNE      IOZAP1
         CI,R1    IVKEY
         BNE      IOZAP1
         LI,R1    0
         STW,R1   INVRN
         B        RDCM
******************************************
OPNR     EQU      %
         GEN,8,24 X'14',M:XX
         DATA     X'C7400009'
         DATA     RDER
         DATA     RDER
         DATA     2
         DATA     2
         DATA     1
         DATA     2
         DATA     X'01000202'
         TEXTC    ':RBBRVR'
         DATA     X'02010202'
         TEXT     ':SYS '
READR    EQU      %
         GEN,8,24 X'10',M:XX
         DATA     X'F8000010'
         DATA     RDER
         DATA     RDER
         PZE      *R9
         PZE      *R8
         PZE      *R1
CLSXXR   EQU      %
         GEN,8,24 X'15',M:XX
         PZE      *0
         DATA     1
****************************************************
RABTM    TEXTC    '*PARTIAL INPUT FILE DELETED BY RECOVERY'
OPRM     TEXTC    '*TASK LOST BY RBBAT DUE TO OPERATOR RECOVERY'
RCVRELOG DATA     X'25F10C5C'
         TEXT     '** RECOVERY OCCURED -- RETRY LOGON'
RCVRMES  TEXTC    '%%%%%%% RECOVERY OCCURED %%%%%%%'
***********************************************
SDKEY    TEXTC    'RBBATSD'
DDKEY    TEXTC    'RBBATDD'
IVKEY    TEXTC    'RBBATIV'
CMKEY    TEXTC    'RBBATCM'
*
*
ABORTS   EQU      %
         DATA,1   0,NOPGFC,GOF,GIFNC,MBSGFC
         DATA,1   JESTAT,JEDEL,KCOMGFC,SNDGFC
         DATA,1   BCSTGFC,OCMGFC
         DATA,1   RBBSPCL
         DATA,1   RCVRGFC
#ABORTS  EQU      BA(%)-BA(ABORTS)-1
         BOUND    4
RCVRMSK  DATA     X'DFFFFFCA'
Y0006    DATA     X'00060000'
ZAPRBIT  DATA     X'06208000'
         BOUND    8
SYSDLMS  DATA     SMUIS+1
         DATA     X'5A5B'
CTRLIMS  DATA     RBG
         DATA     CTR5-2
SDSIZE   EQU      BA(SYMND)-BA(SDAA)+4
         DEF      SDSIZE            * RBBAT STATIC DATA SIZE(FOR ANLZ)
*************************************************:
         END

