cdc:nos2.source:opl871:1ri
Table of Contents
1RI
Table Of Contents
- [00009] 1RI - ROLLIN JOB.
- [00011] ROLLIN JOB.
- [00122] MACROS.
- [00126] RESTOR - SET CONTROL POINT AREAS TO RESTORE.
- [00180] MAIN PROGRAM.
- [00182] RIJ - MAIN PROGRAM.
- [00314] ROLLOUT FILE READ ROUTINES.
- [00316] CPA - READ CONTROL POINT AREA.
- [00345] HNG - HANG PP.
- [00352] JFL - READ JOB CM FIELD LENGTH.
- [00407] JEC - READ JOB EXTENDED MEMORY FIELD LENGTH.
- [00523] SUBROUTINES.
- [00525] AFL - ADJUST RA AND FL.
- [00598] CHG - CONDITIONAL HANG.
- [00614] CJS - CHANGE JOB STATUS.
- [00713] CSM - CLEAR SECURE MEMORY.
- [00762] DRF - DROP ROLLOUT FILE.
- [00790] ERS - ENTER RECALL STACK ENTRIES.
- [00941] MSR - PROCESS ROLLOUT FILE ERROR.
- [00978] PCS - PROCESS CPU SELECTION.
- [00993] PEF - PROCESS ERROR FLAG.
- [01036] PLI - PROCESS LIMIT INCREASE.
- [01056] RCP - RESTORE CONTROL POINT AREA.
- [01222] RIM - ROLLIN MEMORY.
- [01260] RPC - RELEASE PSEUDO-CONTROL POINT.
- [01276] SNS - SEND NOTIFICATION OF ROLLIN TO SCP.
- [01354] SYS - READ SYSTEM SECTOR.
- [01386] TCP - TRANSFER PCPA TO CPA.
- [01400] UEP - UPDATE EXCHANGE PACKAGE.
- [01499] PRESET.
- [01501] PRS - PRESET.
- [01718] RID - ROLLIN USING DIRECT TRANSFER TO CM.
- [01793] PGA - PROCESS DELAYED *ALTER* FUNCTIONS.
- [01944] TGAP - TABLE OF DELAYED *ALTER* FUNCTION PROCESSORS.
- [01975] PSC - PROCESS SERVICE CLASS CHANGE.
- [02021] MAIN ROUTINES.
- [02027] 3RH - PROCESS ON-LINE INTERACTIVE JOBS.
- [02033] EDA - ENTER JOB COMMAND.
- [02128] TOP - SKIP TERMINAL OUTPUT.
- [02145] SUBROUTINES.
- [02147] EJP - ENTER JOB PARAMETERS.
- [02272] TCL - TRANSFER COMMAND LINE.
- [02357] INITIALIZATION.
- [02359] PRS - PRESET.
- [02507] TPPI - TABLE OF PREPROCESSOR INDICES.
- [02520] TPPS - TABLE OF PREPROCESSOR COMMANDS.
- [02556] 3RG - PROCESS DMP= JOBS.
- [02563] RCP - RESTORE CONTROL POINT AREA.
- [02743] UCA - UPDATE CONTROL POINT AREA.
- [02842] TRCU - TABLE OF RESTART CPA UPDATES.
- [02880] TDCU - TABLE OF DMP= CPA UPDATES.
- [02925] 1RI/3RF - PROCESS ERROR.
- [02934] PRE - PROCESS ERROR.
Source Code
- 1RI.txt
- IDENT 1RI,RIJ
- PERIPH
- BASE MIXED
- LIST F
- SST
- SYSCOM
- *COMMENT 1RI - ROLLIN JOB.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TITLE 1RI - ROLLIN JOB.
- SPACE 4,10
- *** 1RI - ROLLIN JOB.
- * G. R. MANSFIELD. 70/09/03.
- * R. E. TATE. 70/09/28.
- * L. C. HAAS. 75/03/25. RESEQUENCE.
- SPACE 4,10
- *** 1RI PERFORMS JOB ROLLIN. IT IS CALLED BY *1SJ*.
- SPACE 4,10
- *** CALL.
- *
- *
- *T 18/ *1RI*,1/ ,5/CP,12/FN,12/ 12/FA
- * CP CONTROL POINT NUMBER.
- * FN = 0, ROLLIN JOB.
- * = 1, SELECTIVE ROLLIN ACCORDING TO SPECIAL ENTRY POINTS.
- * FA DM* FILE FNT ADDRESS/OFFSET (DMP= CALL).
- SPACE 4,10
- *** DAYFILE MESSAGES.
- *
- *
- * NONE.
- SPACE 4,10
- *** ACCOUNT DAYFILE MESSAGES.
- *
- *
- * *ACSC, SC, NEWJSN, SRUUNITS.* = SERVICE CLASS HAS BEEN
- * CHANGED TO SC. NEWJSN IS PRESENT IF THE CHANGE WAS FROM
- * SUBSYSTEM SERVICE CLASS. SRUUNITS IS THE SRU ACCUMULATOR
- * AT THE TIME OF THE SERVICE CLASS CHANGE.
- SPACE 4,10
- ** ROUTINES USED.
- *
- *
- * *0DF* - DROP FILE.
- SPACE 4,10
- ** PROGRAMS CALLED.
- *
- *
- * *1AJ* - CONTINUE DMP= PROCESSING / PROCESS ERROR FLAG.
- SPACE 4,10
- ** COMMON DECKS.
- *CALL COMPMAC
- QUAL CPS
- *CALL COMSCPS
- QUAL *
- SSPS EQU /CPS/SSPS
- *CALL COMSEJT
- *CALL COMSEVT
- *CALL COMSJIO
- *CALL COMSJRO
- *CALL COMSLFD
- *CALL COMSMSC
- *CALL,COMSMSP
- *CALL COMSPIM
- *CALL COMSPRD
- QUAL REM
- *CALL COMSREM
- QUAL *
- *CALL COMSSCD
- *CALL COMSSSD
- *CALL COMSSSE
- *CALL COMSSSJ
- *CALL COMSSCP
- *CALL COMSZOL
- 1RI SPACE 4
- **** ASSEMBLY CONSTANTS.
- IFLS EQU /CPS/IFLS *PIOM* REPLY STATUS
- RDDS EQU /CPS/RDDS *PIOM* DIRECT READ
- WDDS EQU /CPS/WDDS *PIOM* DIRECT WRITE
- SPACE 4,10
- ** DIRECT LOCATION ASSIGNMENTS.
- T8 EQU 16 SCRATCH
- T9 EQU 17 SCRATCH
- FS EQU 20 - 24 SCRATCH (5 CELLS)
- EP EQU 25 SPECIAL ENTRY POINT FLAGS FROM *SEPW*
- PR EQU 26 0 IF PSEUDO-ROLLIN
- DS EQU 27 DRIVER STATUS
- CN EQU 30 - 34 SCRATCH (5 CELLS)
- CI EQU 35 ROLLOUT FILE INDEX
- TW EQU 36 CONSTANT 2
- EO EQU 37 EJT ORDINAL
- TN EQU 40 TERMINAL NUMBER
- TT EQU 41 - 42 TERMINAL TABLE ADDRESS (2 CELLS)
- PP EQU 43 POT POINTER
- PA EQU 44 - 45 POT ADDRESS (2 CELLS)
- TA EQU 46 *IAF* RA
- FA EQU 57 DM* FILE FNT ADDRESS
- ZR EQU 60 - 64 CM ZERO WORD (5 CELLS)
- EF EQU 65 ERROR FLAG
- DI EQU 66 *UJNI*+2 (USED TO DISABLE PROCESSING)
- LW EQU 67 ADDRESS OF LAST CM WORD ROLLED IN
- ****
- SPACE 4,10
- ** SYSTEM SECTOR LOCATIONS RELATIVE TO START OF SECTOR.
- TYSS EQU FNSS-BFMS-2 FILE TYPE
- DMFA EQU FASS-BFMS-2 DM* FILE LOCAL FNT ADDRESS
- SSSS EQU SJSS-BFMS-2 SSJ= JOB FLAG
- DPFL EQU DPSS-BFMS-2 *DMP=* FL CONTROL
- SCCS EQU CSSS-BFMS-2 SERVICE CLASS CHANGE
- RRSS EQU R1SS-BFMS-2 RECOVER TABLE
- QBSS EQU QASS-BFMS-2 DELAYED *ALTER* FLAGS
- EJRO EQU EJSS-BFMS-2 EJT ENTRY AT ROLLOUT
- SCPC EQU COSS-BFMS-2 SCP CONNECTIONS FROM CPA WORD *SSCW*
- TITLE MACROS.
- SPACE 4,10
- ** MACRO DEFINITIONS.
- RESTOR SPACE 4,25
- ** RESTOR - SET CONTROL POINT AREAS TO RESTORE.
- *
- * RESTOR WORD,BYTE,MASK
- *
- * ENTRY *WORD* = CONTROL POINT AREA WORD OFFSET.
- * = BLANK, IF TABLE TERMINATOR.
- * *BYTE* = BYTE OFFSET WITHIN WORD.
- * = *, IF ENTIRE CM WORD TO BE RESET.
- * *MASK* = BYTE MASK OF AREAS TO BE RESET.
- * = *, IF ENTIRE BYTE TO BE RESET.
- *
- * EXIT TABLE ENTRY SET UP.
- *T 1/W,11/OFFSET (IF W=1, ENTIRE CM WORD TO MOVE)
- *T, 1/W,11/OFFSET,12/MASK (IF W=0, ONE BYTE TO MOVE)
- *
- * DEFINE .1 = CPA SEGMENT FLAG.
- * = 0, IF FIRST HALF OF CPA.
- * = 1, IF SECOND HALF OF CPA.
- * .2 = WORD OFFSET IN CPA SEGMENT.
- * = *WORD*, IF *WORD* .LT. 100.
- * = *WORD*-100, IF *WORD* .GE. 100.
- PURGMAC RESTOR
- MACRO RESTOR,LABEL,WORD,BYTE,MASK
- IFC NE,$LABEL$$,2
- .1 SET 0
- LABEL BSS 0
- .A IFC EQ,$WORD$$
- CON 0
- .A ELSE
- .2 SET WORD
- .B IFGE WORD,100
- .2 SET .2-100
- .C IFNE .1,1
- CON 0
- .1 SET 1
- .C ENDIF
- .B ELSE
- .D IFEQ .1,1
- ERR - TABLE SEQUENCE ERROR.
- .D ENDIF
- .B ENDIF
- .E IFC EQ,$BYTE$*$
- CON 4000+.2*5
- .E ELSE
- CON .2*5+BYTE
- .F IFC EQ,$MASK$*$
- CON 7777
- .F ELSE
- CON MASK
- ENDIF
- RESTOR ENDM
- TITLE MAIN PROGRAM.
- RIJ SPACE 4,10
- ** RIJ - MAIN PROGRAM.
- ORG PPFW
- RIJ BSS 0
- RJM PRS PRESET
- RIJG EQU *
- SETMS READSTR,NS REQUEST STREAMED DATA ON BUFFERED DEVICE
- * UJN RIJ1 (PSEUDO-ROLLIN)
- * READ ROLLOUT FILE.
- RJM SYS READ SYSTEM SECTOR
- SEQ EQU *-2
- RIJ1 SEQUENCE CPAI,CPA READ CONTROL POINT AREA
- * UJN *+2 (NO CONTROL POINT)
- * RJM TCP (PSEUDO-ROLLIN)
- SEQUENCE TOPI,/3RH/TOP SKIP TERMINAL OUTPUT
- * UJN *+2 (NON-INTERACTIVE/DETACHED INTERACTIVE JOB)
- * UJN RIJ2.1 (PSEUDO-ROLLIN)
- SEQUENCE JFLI,JFL READ JOB CM FIELD LENGTH
- * UJN *+2 (NO CM FL)
- SEQUENCE JECI,JEC READ JOB EXTENDED MEMORY FIELD LENGTH
- * UJN *+2 (NO EXTENDED MEMORY FL)
- ENDMS
- * CLEAR ADDITIONAL NFL IF INCREASE WAS REQUESTED. ADJUST RA AND
- * FL BY NFL SIZE.
- RIJ2 BSS 0 REENTRY AFTER PROCESSING ERROR
- RJM AFL CLEAR INCREASED NFL, ADJUST RA AND FL
- * UJN *+2 (DMP= CALL)
- RIJA EQU *-2
- PAUSE ST RESET *RA* AND *FL*
- * INITIATE JOB STEP FOR ON-LINE INTERACTIVE JOBS.
- RJM /3RH/PRS PRESET FOR ON-LINE INTERACTIVE JOB
- * UJN *+2 (NOT ON-LINE INTERACTIVE ROLLIN)
- RIJB EQU *-2
- RJM /3RH/EDA INITIATE JOB STEP
- * UJN *+2 (NOT ON-LINE INTERACTIVE ROLLIN)
- RIJC EQU *-2
- * UPDATE EXCHANGE PACKAGE, RESTORE FIRST SECTOR OF CONTROL
- * POINT AREA, CLEAR SECURE MEMORY.
- RIJ2.1 RJM RCP RESTORE CPA
- * RJM /3RG/RCP (DMP= CALL)
- RIJD EQU *-1
- * PROCESS POSSIBLE ERROR FLAG FROM EJT ENTRY. CHECK FOR CPU
- * TIME LIMIT OR SRU LIMIT.
- RJM PEF PROCESS ERROR FLAG
- * UJN RIJ3 (PSEUDO-ROLLIN)
- RIJJ EQU *-2
- MJN RIJ3 IF AN ERROR FLAG IS SET
- RJM PLI PROCESS LIMIT INCREASE
- * UJN *+2 (NOT ROLLIN OF ON-LINE INTERACTIVE JOB)
- RIJE EQU *-2
- RIJ3 RJM CJS CHANGE JOB STATUS
- * MOVE ERROR FLAG TO CONTROL POINT AREA.
- LDD EF
- ZJN RIJ4 IF NO ERROR FLAG
- STD CM+1
- SHN 21-13
- MJN RIJ4 IF INTERNAL ERROR FLAG
- MONITOR CEFM
- RIJ4 LDM CBUF+5*STSW+2
- NJP RIJ8 IF ROLLOUT STATUS PRESENT
- LDM ERSF
- ZJN RIJ5 IF PP RECALL QUEUE EMPTY
- LDM RIJF
- ZJN RIJ5 IF NO CPU ACTIVITY
- LDC UJNI+ERS9-ERSE
- ERRPL ERS9-ERSE-40 RANGE ERROR
- STM ERSE
- RIJ5 RJM ERS PROCESS PP RECALL QUEUE
- LDC **
- RIJF EQU *-1 (CPU ACTIVITY FLAG)
- ZJP RIJ12 IF NO CPU ACTIVITY
- LDD EF
- NJP RIJ12 IF ERROR FLAG SET
- LDM ERSJ
- NJN RIJ7 IF AUTO-RECALL ENTRY FOUND
- LDN /CPS/CRCS SET TO START CPU
- RAM RIJH
- RIJ7 LDC /CPS/DPPS
- * LDC /CPS/DPPS+/CPS/CRCS (ALSO RESTART CPU)
- RIJH EQU *-1
- STD CM+1
- MONITOR JACM
- UJN RIJ11 EXIT TO PP RESIDENT
- * CALL *1AJ*.
- RIJ8 LDM ERSF RESET PP RECALL COUNT
- SHN 4
- ADM ERSF SET CURRENT QUEUE POINTER
- ADN 1
- STM CBUF+5*STSW+4
- LDD CP
- ADN STSW
- CWM CBUF+5*STSW,ON
- LDN 0
- RIJ9 STD IR+2
- * UJN RIJ7 (DMP= ROLLIN)
- RIJI EQU *-1
- STD IR+4
- EXECUTE 1AJ,= CALL *1AJ* INTO THIS PP
- LCN 1RR-1RA
- RAD IR
- LDD HN
- RAD IR+1
- RIJ10 LDD IA WRITE *1AJ* CALL TO PP INPUT REGISTER
- CWD IR
- RIJ11 LJM PPR CALL *1AJ*
- RIJ12 LDM ERSF
- ZJN RIJ9 IF NO PP ACTIVITY
- SBN 1
- NJN RIJ13 IF MORE THAN *1AJ* IN RECALL QUEUE
- LDD CI
- NJN RIJ10 IF ONLY *1AJ* IN RECALL QUEUE
- RIJ13 LJM RIJ7 CLEAR JOB ADVANCE AND DROP PP
- TITLE ROLLOUT FILE READ ROUTINES.
- CPA SPACE 4,10
- ** CPA - READ CONTROL POINT AREA.
- *
- * CALLS MSR, RNS.
- CPA SUBR ENTRY/EXIT
- LDC CBUF-2 READ FIRST SECTOR OF CPA
- RJM RNS READ NEXT SECTOR
- SHN -6
- ZJN CPA1 IF SHORT SECTOR
- LDC BFMS
- * LDC /3RG/RBFF (DMP= CALL)
- CPAA EQU *-1
- RJM RNS READ NEXT SECTOR
- SHN -6
- NJN CPA2 IF NOT SHORT SECTOR
- CPA1 RJM MSR PROCESS ERROR - NO RETURN
- RJM HNG HANG PP
- CPA2 LDD IR+2
- STM CPAB SET CPA ROLLED IN FLAG IF DMP= CALL
- NJN CPAX IF DMP= CALL
- LDD CP WRITE SECOND SECTOR IN CPA
- ADD HN
- CWM BFMS+2,HN
- UJN CPAX RETURN
- CPAB CON 0 NON-ZERO IF CPA ROLLED IN AND DMP= CALL
- HNG SPACE 4,10
- ** HNG - HANG PP.
- HNG CON 0 ENTRY
- HNG1 MONITOR HNGM
- UJN HNG1 DO NOT ALLOW OPERATOR TO CLEAR THE HANG
- JFL SPACE 4,15
- ** JFL - READ JOB CM FIELD LENGTH.
- *
- * ENTRY (JFLB) = 1 IF NON-RESTART *DMP=* CALL.
- * (DI) = *UJNI*+2.
- *
- * EXIT (LW) = LWA+1 OF CM FL ROLLED IN (USED AS ECS ROLLIN
- * BUFFER ADDRESS).
- *
- * USES T8, CI, LW.
- *
- * CALLS RIM.
- *
- * MACROS ENDMS.
- JFL4 LDD DI DISABLE EXTENDED MEMORY ROLLIN
- STM JECI*2+SEQ
- LDN 0 SET NFL ONLY ROLLIN
- STM AFLB
- LDM CBUF+5*FLSW ROLLIN NFL ONLY
- RJM RIM ROLLIN MEMORY
- JFL SUBR ENTRY/EXIT
- UJN *+2
- * ENDMS (ROLLOUT DEVICE IS EXTENDED MEMORY)
- JFLA EQU *-1
- CON .EMS
- LDM CBUF+FLIW*5+2 INITIALIZE ROLLIN INDEX
- STD CI
- LDM EJBF+SCLE*5+4
- ZJN JFL4 IF ONLY NFL SHOULD BE ASSIGNED
- LDM CBUF+5*FLSW+4
- ZJN JFL4 IF NO CM FL TO ROLLIN
- SBN MCMX/100/2 PRESET AMOUNT OF CM TO ROLLIN
- STD T8
- LDN 0
- * LDN 1 (NON-RESTART DMP= CALL)
- JFLB EQU *-1
- ZJN JFL1 IF NOT RESTART DMP= CALL
- LDM SBUF+DPFL
- NJN JFL2 IF NOT FULL DUMP
- JFL1 LDM CBUF+5*ECSW+4
- NJN JFL3 IF EXTENDED MEMORY ASSIGNED
- LDM CBUF+5*FLSW+4
- JFL2 STD T8 SET AMOUNT OF CM TO ROLLIN
- LDD DI DISABLE EXTENDED MEMORY ROLLIN
- STM JECI*2+SEQ
- JFL3 LDD T8 SET ROLLIN LWA
- ADD CI ADD NFL INCREASE AMOUNT
- * PSN (DMP= CALL)
- JFLC EQU *-1
- STD LW SET EXTENDED MEMORY BUFFER ADDRESS
- RJM RIM ROLLIN MEMORY
- LJM JFLX RETURN
- JEC SPACE 4,10
- ** JEC - READ JOB EXTENDED MEMORY FIELD LENGTH.
- *
- * ENTRY (LW) = LWA+1 OF CM FL ROLLED IN.
- *
- * USES CM - CM+4, T8, CN - CN+2, CI.
- *
- * CALLS MSR, RIM.
- *
- * ERROR TO *MSR* IF ECS/ESM ERROR OCCURS.
- * TO *HNG* IF TO HANG PP ON ERROR.
- JEC SUBR ENTRY/EXIT
- LDN MCMX/100/4 SET EXTENDED MEMORY BUFFER SIZE
- STD T8
- LDM CBUF+ECSW*5+4
- JECC SHN 0
- * SHN UESC (CONVERT TO 1000B-WORD BLOCKS)
- STD CN+2
- SHN -14
- STD CN+1
- NJN JEC1 IF FULL BUFFER PRESENT
- LDD CN+2
- SHN 3
- SBD T8
- PJN JEC1 IF FULL BUFFER PRESENT
- RAD T8 ADJUST BUFFER SIZE
- JEC1 LDD CP
- CWD ZR
- * ROLLIN EXTENDED MEMORY.
- LDD LW SET BUFFER ADDRESS
- STD CN
- ADN MCMX/100/4
- LMD CN SET TOGGLE CONSTANT
- STM JECA
- LDD CN READ BUFFER FULL
- STD CI
- ADD T8
- JEC2 RJM RIM
- LDD CN
- STM JECB+1*5+2
- LMC *
- JECA EQU *-1
- * LMC N (TOGGLE CONSTANT)
- STD CI
- STD CN
- JEC3 LDD OA WAIT *OR* CLEAR
- CRD CM
- LDD CM
- NJN JEC3 IF *RCXM*/*ECXM* INCOMPLETE
- JEC4 LDD CP READ STATUS WORD
- CRD CM
- LDD CM
- NJN JEC4 IF TRANSFER NOT COMPLETE
- LDD T8 SET *RCXM*/*ECXM* WORD COUNT
- SHN 6
- STM JECB+5
- LDD CM+1
- NJP JEC8 IF ERROR
- LDD CP SET INTERLOCK BUSY
- CWD ON
- LDD OA WRITE *MTR* REQUEST
- CWM JECB,TW
- LDN MCMX/4/1000 ADVANCE EXTENDED MEMORY ADDRESS
- RAM JECB+1*5+4
- SHN -14
- RAM JECB+1*5+3
- SBD CN+1
- MJN JEC5 IF NOT DONE
- LDM JECB+1*5+4
- SBD CN+2
- PJN JEC6 IF DONE
- SHN 3
- ADD T8
- MJN JEC5 IF FULL BUFFER REMAINS
- STD T8
- LDN MCMX/100/4
- SBD T8
- STD T8
- JEC5 LDD T8
- ADD CI
- UJP JEC2 CONTINUE ROLLIN
- JEC6 LDD OA WAIT OR CLEAR
- CRD CM
- LDD CM
- NJN JEC6 IF *RCXM/ECXM* INCOMPLETE
- JEC7 LDD CP
- CRD CM
- LDD CM
- NJN JEC7 IF TRANSFER NOT COMPLETE
- LDD CM+1
- JEC8 ZJN JEC9 IF NO ERROR
- RJM MSR PROCESS ERROR - NO RETURN
- RJM HNG HANG PP
- * ROLLIN LAST PART OF CM.
- JEC9 LDD LW SET FWA TO ROLL IN
- STD CI
- ADN MCMX/100/2 SET AMOUNT TO ROLLIN
- RJM RIM
- LJM JECX RETURN
- JECB VFD 12/RCXM EM TRANSFER FUNCTION PROCESSED BY *MTR*
- VFD 29/0
- VFD 1/1 FUNCTION TYPE = WRITE
- VFD 18/0 ALTERNATE RESPONSE ADDRESS
- VFD 12/MCMX/4 WORD COUNT
- VFD 12/0
- VFD 12/0 CM ADDRESS/100B (RELATIVE)
- VFD 24/0 EXTENDED MEMORY ADDRESS/1000B (RELATIVE)
- TITLE SUBROUTINES.
- AFL SPACE 4,10
- ** AFL - ADJUST RA AND FL.
- *
- * USES T0, CM - CM+4.
- *
- * MACROS MONITOR.
- AFL SUBR ENTRY/EXIT
- * CLEAR ADDITIONAL NFL, IF ANY.
- LDN ZERL
- CRD CM
- LDN 1
- * LDN 0 (MEMORY CLEARING ENABLED)
- AFLA EQU *-1
- ZJN AFL1 IF MEMORY CLEARING ENABLED
- LDM CBUF+5*FLIW+2
- ZJN AFL1 IF NO NFL INCREASE
- SHN 6 SET WORD COUNT
- STD CM+2
- LDD HN SET RELATIVE FLAG
- STD CM+1
- MONITOR CSTM
- * ADJUST RA AND FL BY NFL SIZE.
- AFL1 LDM CBUF+5*FLSW+4 SAVE PREVIOUS CM FL SIZE
- SBM CBUF+5*FLSW
- STM RCPA
- STM CSMA
- LDM CBUF+5*FLSW SAVE NEW NFL SIZE
- RAM CBUF+5*FLIW+2
- LDM CBUF+5*ECSW+4 SAVE PREVIOUS ECS FL SIZE
- STM CSMB
- LDD CP GET *FLSW*, *FLSW+1* AND *ECSW* FROM CPA
- ADN FLSW
- CRM CBUF+5*FLSW,TW
- ADK ECSW-FLSW-2
- CRM CBUF+5*ECSW,ON
- LDM CBUF+5*FLIW+2 SET NFL
- STM CBUF+5*FLSW
- STD T0
- LDM CBUF+5*FLSW+2 SET RA - NFL IN *FLSW+1*
- STM CBUF+5*FLSW+5*1+1
- LDM CBUF+5*FLSW+3
- STM CBUF+5*FLSW+5*1+2
- LDD T0
- RAM CBUF+5*FLSW+3 SET ADJUSTED RA (RA + NFL)
- SHN -14
- RAM CBUF+5*FLSW+2
- LCN 0 ADJUST FL (FL - NFL)
- LMD T0
- RAM CBUF+5*FLSW+4
- STM CBUF+5*FLSW+5*1+4
- LDD T0 STORE NFL + 4000 IN *FLSW+1*
- LMC 4000
- STM CBUF+5*FLSW+5*1+3
- LDD CP UPDATE *FLSW* AND *FLSW+1* IN CM
- ADN FLSW
- CWM CBUF+5*FLSW,TW
- LDD EF
- ZJN AFL2 IF NO ERROR FLAG PRESENT
- LDC *
- * LDC 0 (NFL ONLY ROLLIN)
- AFLB EQU *-1
- NJN AFL2 IF NOT A NFL ONLY ROLLIN
- STD CM+1 RELEASE EXTRA FL
- LDN 0
- STD CM+2
- MONITOR RSTM
- AFL2 LJM AFLX RETURN
- CHG SPACE 4,10
- ** CHG - CONDITIONAL HANG.
- *
- * ENTRY (A) = ERROR FLAG TO SET.
- *
- * USES CM - CM+4.
- *
- * MACROS MONITOR.
- CHG SUBR ENTRY/EXIT
- STD CM+2 SET ERROR FLAG
- LDM CHG P-ADDRESS
- STD CM+1
- MONITOR CHGM CONDITIONAL HANG
- UJN CHGX RETURN
- CJS SPACE 4,10
- ** CJS - CHANGE JOB STATUS.
- *
- * ENTRY (EO) = EJT ORDINAL (NON-DMP= CALL).
- * (PR) = 0 IF PSEUDO-ROLLIN.
- *
- * USES CM - CM+4, CN - CN+4, FS - FS+4, T1 - T5.
- *
- * CALLS DRF, RPC, SNS, 3RI, 3RJ.
- *
- * MACROS EXECUTE, SFA.
- CJS SUBR ENTRY/EXIT
- LDN 0
- * LDN 1 (*DMP=* CALL)
- CJSA EQU *-1
- ZJN CJS1 IF NOT DMP= CALL
- LJM CJS5 DROP DM* FILE
- * CHECK FOR SERVICE CLASS CHANGE.
- CJS1 LDD PR
- ZJN CJS4 IF PSEUDO-ROLLIN
- LDM SBUF+SCCS
- ZJN CJS2 IF NO SERVICE CLASS CHANGE
- STD CN SAVE SERVICE CLASS FOR *3RI*
- EXECUTE 3RI PERFORM SERVICE CLASS CHANGE
- * CHECK FOR DELAYED *ALTER* FUNCTIONS.
- CJS2 LDM SBUF+QBSS
- ZJN CJS3 IF NO DELAYED *ALTER* FUNCTIONS
- EXECUTE 3RJ PROCESS DELAYED *ALTER* FUNCTIONS
- * CHECK FOR SCP NOTIFICATION REQUIRED.
- CJS3 LDM EJBF+5*JSNE+4
- LPN 76
- LMN SIJS*2
- NJN CJS4 IF NOT *SIJS* JOB STATE
- RJM SNS SEND NOTIFICATION OF ROLLIN TO SCP
- * UPDATE THE EJT ENTRY AS FOLLOWS -
- * UPDATE CONNECTION STATUS.
- * CHANGE JOB STATUS TO *EXJS*.
- * CLEAR ROLLOUT FILE ADDRESS.
- * CLEAR ERROR FLAG.
- * CLEAR FORCED ROLLOUT FLAG.
- CJS4 SFA EJT,EO
- ADK JSNE
- CRD T1
- ADK SCHE-JSNE
- CRD CM
- ADK PRFE-SCHE
- CRD CN
- ADK SCLE-PRFE
- CRD FS
- LDD T1+4 UPDATE JOB STATUS AND CONNECTION STATUS
- LPC 4000 PRESERVE SCP/UCP CONNECTION STATUS
- LMM CJSD
- STD T1+4
- LDN 0 CLEAR ROLLOUT FILE ADDRESS
- STD CM
- STD CM+1
- STD CN+1 CLEAR ERROR FLAG
- LDD FS CLEAR FORCED ROLLOUT FLAG
- SCN 40
- STD FS
- SFA EJT,EO
- ADK JSNE
- CWD T1
- ADK SCHE-JSNE
- CWD CM
- ADK PRFE-SCHE
- CWD CN
- ADK SCLE-PRFE
- CWD FS
- * RELEASE ROLLOUT FILE / DM* FILE (DMP= CALL) MASS STORAGE
- * SPACE. IF DMP= CALL, DROP DM* FILE FNT/FST ENTRY. IF
- * PSEUDO-ROLLIN, RELEASE PSEUDO-CONTROL POINT.
- CJS5 RJM DRF DROP ROLLOUT FILE
- * RJM RPC (PSEUDO-ROLLIN)
- CJSB EQU *-1
- LJM CJSX RETURN
- CJSC BSS 5 PARAMETERS PASSED BY *1SJ* VIA CPA WORD 0
- * EJT DATA BLOCK.
- CJSD VFD 1/0 UCP/SCP CONNECTION STATUS
- VFD 4/0 INTERACTIVE CONNECTION STATUS
- VFD 1/1 JOB ADVANCE FLAG
- VFD 5/EXJS JOB STATUS
- VFD 1/1 JOB INTERLOCK FLAG
- CSM SPACE 4,10
- ** CSM - CLEAR SECURE MEMORY.
- *
- * ENTRY (EP) = ENTRY POINT FLAGS FROM *SEPW*.
- *
- * USES CM - CM+4.
- *
- * MACROS MONITOR.
- CSM SUBR ENTRY/EXIT
- LDN 1
- * LDN 0 (MEMORY CLEARING ENABLED)
- CSMC EQU *-1
- ZJN CSMX IF MEMORY CLEARING ENABLED
- LDD EP
- LPN 1
- NJN CSM1 IF *SSM=* ENTRY POINT PRESENT
- LDC **
- CSMA EQU *-1 (OLD CM FL SIZE)
- ZJN CSM1 IF NO CM FL TO BE CLEARED
- SHN 6 SET FWA TO CLEAR
- STD CM+4
- SHN -14
- STD CM+3
- LDD FL COMPARE NEW CM FL WITH OLD
- SBM CSMA
- ZJN CSM1 IF NO CHANGE
- MJN CSM1 IF DECREASE
- SHN 6 SET WORD COUNT
- STD CM+2
- SHN -14
- LMD HN SET CM RELATIVE ADDRESSING FLAGS
- STD CM+1
- MONITOR CSTM CLEAR MEMORY
- CSM1 LDC **
- CSMB EQU *-1 (OLD EXTENDED MEMORY FL SIZE)
- STD CM+4 SET FWA TO CLEAR
- LDM CBUF+5*ECSW+4 COMPARE NEW EXTENDED MEMORY FL WITH OLD
- SBM CSMB
- ZJN CSM2 IF NO CHANGE
- MJN CSM2 IF DECREASE
- STD CM+2 SET WORD COUNT
- LDN 0
- STD CM+3
- LDC 300 SET ECS RELATIVE ADDRESSING FLAGS
- STD CM+1
- MONITOR CSTM CLEAR MEMORY
- CSM2 LJM CSMX RETURN
- DRF SPACE 4,10
- ** DRF - DROP ROLLOUT FILE.
- *
- * ENTRY (FA) = DM* FILE FNT ADDRESS/OFFSET (DMP= CALL).
- * (EJBF+5*SCHE) = ROLLOUT/DM* FILE EQUIPMENT.
- * (EJBF+5*SCHE+1) = ROLLOUT/DM* FILE FIRST TRACK.
- *
- * USES CM+1, CM+2, CM+4.
- *
- * MACROS MONITOR.
- DRF2 LDD FA CLEAR DM* FILE FNT/FST ENTRY
- STD CM+4
- LDN /CPS/DLFS
- STD CM+1
- MONITOR PLFM
- DRF SUBR ENTRY/EXIT
- LDM EJBF+5*SCHE RELEASE MASS STORAGE SPACE
- LMD TH SET RETURN-ON-INACCESSIBLE BIT
- STD CM+1 SET EQUIPMENT
- LDM EJBF+5*SCHE+1 SET FIRST TRACK
- STD CM+2
- MONITOR DTKM
- UJN DRFX RETURN
- * UJN DRF2 (DMP= CALL)
- DRFB EQU *-1
- ERS SPACE 4,15
- ** ERS - ENTER RECALL STACK ENTRIES.
- *
- * EXIT (A) = 0, IF *1AJ* NOT FOUND.
- * (IR - IR+4) = *1AJ* CALL IF PRESENT.
- * RECALL STACK REACTIVATED.
- * (ERSJ) = COUNT OF AUTO-RECALL ENTRIES FOUND.
- *
- * USES CI, EF, T1, T2, CM - CM+4, CN - CN+4, FS - FS+4,
- * IR - IR+4.
- *
- * CALLS CHG.
- *
- * MACROS MONITOR.
- ERS SUBR ENTRY/EXIT
- LDN ZERL CLEAR RECALL LINKS
- CRD CM
- AOD CM+4
- ERS1 AOD CM+4
- ADC RCCW-2
- ADD CP
- CWD CM
- LDD CM+4
- LMN LREC
- NJN ERS1 IF NOT END OF LINKS
- STD CM+4
- LDD CP
- ADC RCCW+LREC-1
- CWD CM
- ADN RECW-RCCW-LREC+1
- STD T1
- ADN LREC
- STM ERSD
- LDM ERSF
- ZJN ERSX IF RECALL QUEUE EMPTY AND NO TAPE ACTIVITY
- LDN 0 CLEAR ENTRY COUNT
- STD T2
- STD CI
- ERS2 LDD T1 CHECK ENTRY
- CRD FS
- CWD ZR CLEAR ENTRY
- ADN REPW-RECW
- CRD CN
- CWD ZR
- LDD MA MOVE REQUEST TO MESSAGE BUFFER
- CWD FS
- ADN 1
- CWD CN
- LDD FS+1
- SCN 77
- SHN 6
- LMD FS
- ZJN ERS6 IF EMPTY RECALL ENTRY
- LMC 3RJ1A
- ZJN ERS7 IF *1AJ* RECALL ENTRY
- AOD T2 INCREMENT PP RECALL ENTRY COUNT
- UJN ERS4 CONTINUE
- * LDD FS (RESTART)
- ERSC EQU *-1
- SHN -6
- SBN 1R0
- PJN ERS6 IF INCORRECT PP NAME
- ERS4 LDD FS+1 CHECK FOR AUTO-RECALL
- LPN 40
- ZJN ERS5 IF NOT AUTO-RECALL REQUEST
- LDD MA SAVE AUTO-RECALL REQUEST
- CRM BFMS,TW
- AOM ERSJ SET AUTO-RECALL FLAG
- UJN ERS6 ADVANCE QUEUE POINTER
- ERS5 LDN ZERL CLEAR *RPPM* PARAMETERS
- CRD CM
- MONITOR RPPM
- ERS6 AOD T1 ADVANCE STACK POINTER
- LMC **
- ERSD EQU *-1
- ZJN ERS10 IF END OF RECALL QUEUE
- LJM ERS2 LOOP ON RECALL PROCESSING
- ERS7 LDD MA MOVE *1AJ* CALL TO INPUT REGISTER
- CRD IR
- AOD T2 INCREMENT PP RECALL ENTRY COUNT
- AOD CI SET *1AJ* FLAG
- SBN 1
- NJN ERS8 IF MULTIPLE *1AJ* ENTRIES
- LDD CP STORE CP NUMBER IN *1AJ* CALL
- SHN -7
- LMD IR+1
- LPN 37
- LMD IR+1
- STD IR+1
- UJN ERS6 LOOP FOR NEXT ENTRY
- * UJN ERS9 (CPU STATUS AT TIME OF *1AJ* CALL)
- ERSE EQU *-1
- ERS8 LDN 0
- RJM CHG CONDITIONAL HANG
- UJN ERS6 PROCESS NEXT ENTRY
- ERS9 LDK SWET
- STD EF
- RJM CHG CONDITIONAL HANG
- LJM ERSX RETURN
- ERS10 LDC ** CHECK TAPE ACTIVITY
- ERSF EQU *-1
- SBD T2
- STM ERSG+4
- ZJN ERS13 IF NO TAPE ACTIVITY
- PJN ERS12 IF VALID RECALL COUNT
- ERS11 MONITOR HNGM
- UJN ERS13 CONTINUE
- ERS12 LDN 1
- STD CM+1
- STD CM+2
- LDD MA
- CWM ERSG,ON
- MONITOR UADM UPDATE TAPE ACTIVITY
- * IF AUTO-RECALL PP WAS FOUND IN QUEUE AND NO ERROR FLAG IS
- * SET, SET *I* STATUS. REACTIVATE THE AUTO-RECALL PP.
- ERS13 LDC 0
- * LDC 1 (AUTO-RECALL ENTRY FOUND)
- ERSJ EQU *-1
- ZJN ERS15 IF NO AUTO-RECALL PP WAS FOUND
- SBN 1
- NJN ERS11 IF MULTIPLE AUTO-RECALL PP-S
- LDD EF
- NJN ERS14 IF ERROR FLAG SET
- STD CM+3
- LDD CP SET CP ADDRESS
- STD CM+4
- LDN 2 SET REQUEST COUNT
- STD CM+1
- LDD MA SET *UTEM* REQUESTS
- CWM ERSH,CM+1
- MONITOR UTEM SET *I* STATUS
- ERS14 LDD MA REACTIVATE PP
- CWM BFMS,TW
- LDN ZERL
- CRD CM
- MONITOR RPPM
- ERS15 LJM ERSX RETURN
- ERSG VFD 12//CPS/CICS,12/STSW,6/4,6/4,24/0
- ERSH VFD 1/1,5/STSW,6/12D,6/36D,42/0 VERIFY NO ERROR FLAG
- VFD 1/0,5/STSW,6/3,6/57D,42//CPS/ICPS SET *I* STATUS
- MSR SPACE 4,15
- ** MSR - PROCESS ROLLOUT FILE ERROR.
- *
- * THIS ROUTINE IS CALLED WHEN ANY OF THE FOLLOWING CONDITIONS
- * OCCUR -
- * 1. SUBROUTINE *RNS* OR *RID* DETECTS A MASS STORAGE ERROR.
- * 2. AN ERROR IS DETECTED IN THE ROLLOUT FILE SYSTEM SECTOR.
- * 3. AN ERROR IS DETECTED IN THE CONTROL POINT AREA SECTOR
- * LINKAGE BYTES.
- * 4. AN ECS/ESM ERROR OCCURS WHILE ROLLING IN EXTENDED
- * MEMORY.
- *
- * OVERLAY *3RF* IS CALLED TO PROCESS THE ERROR. *3RF* WILL
- * RETURN CONTROL TO *MSR* ONLY IF THE ROLLIN PROCESS SHOULD
- * CONTINUE.
- *
- * EXIT TO CALLER IF I/O MAY CONTINUE.
- * TO *RIJ2* IF THE REST OF THE ROLLOUT FILE WILL
- * BE SKIPPED.
- *
- * USES DS, CN - CN+4.
- *
- * CALLS 3RF.
- *
- * MACROS ENDMS, EXECUTE.
- MSR SUBR ENTRY
- ENDMS
- LDM RDCT SAVE DRIVER STATUS
- STD DS
- LDD MA SAVE MASS STORAGE PARAMETERS
- CWD T3
- CRD CN
- EXECUTE 3RF PROCESS ERROR
- ZJN MSRX IF I/O SHOULD CONTINUE
- UJP RIJ2 CONTINUE WITHOUT READING ROLLOUT FILE
- PCS SPACE 4,10
- ** PCS - PROCESS CPU SELECTION.
- *
- * EXIT CPU SELECTION CLEARED IF TWO CPU-S NOT AVAILABLE.
- PCS SUBR ENTRY/EXIT
- PCSA LDM CBUF+5*CWQW+2 CLEAR CPU SELECTION
- * UJN PCSX (TWO CPU-S AVAILABLE)
- SCN 3
- STM CBUF+5*CWQW+2
- LDM CBUF+5*JCIW+1
- SCN 3
- STM CBUF+5*JCIW+1
- UJN PCSX RETURN
- PEF SPACE 4,15
- ** PEF - PROCESS ERROR FLAG.
- *
- * ENTRY (EF) = ERROR FLAG FROM EJT ENTRY.
- *
- * EXIT (A) .GE. 0 IF NO ERROR.
- * .LT. 0 IF ERROR FLAG SET.
- *
- * USES EF, CM - CM+4.
- PEF SUBR ENTRY/EXIT
- LDD EF
- SHN 21-13
- MJN PEFX IF DUMMY ERROR FLAG IS SET
- NJN PEF2.1 IF ERROR FLAG IS SET
- * CHECK FOR CPU TIME LIMIT/SRU LIMIT.
- LDM CBUF+5*SRUW
- SHN 21-12
- MJN PEF1 IF CPU TIME LIMIT
- SHN 2
- PJN PEFX IF NOT SRU LIMIT
- LDN SRET
- UJN PEF2 SET *SRET* ERROR FLAG
- PEF1 LDN TLET SET *TLET* ERROR FLAG
- PEF2 STD EF SAVE ERROR FLAG
- PEF2.1 LDM EJBF+JSNE*5+4
- LPN 76
- LMN SUJS*2
- NJN PEF3 IF NOT A SUSPENDED JOB
- * CHANGE CONNECTION STATUS TO *NICS* TO PREVENT SUSPENDING THIS
- * JOB AGAIN.
- LDM CJSD
- LPC 4177
- LMK NICS*200
- STM CJSD
- PEF3 LCN 0 INDICATE ERROR FLAG SET
- LJM PEFX RETURN
- PLI SPACE 4,10
- ** PLI - PROCESS LIMIT INCREASE.
- *
- * USES CM+1, CM+3, CM+4.
- *
- * MACROS MONITOR.
- PLI SUBR ENTRY/EXIT
- LDM SBUF-2+SRSS-BFMS+3
- SHN -6
- ZJN PLIX IF NOT LIMIT INCREASE NEEDED
- STD CM+1 SAVE FUNCTION CODE (*RLIT* OR *RLIS*)
- LDM SBUF-2+SRSS-BFMS+4
- STD CM+4
- LDM SBUF-2+SRSS-BFMS+3
- LPN 77
- STD CM+3
- MONITOR RLMM INCREMENT LIMIT
- UJN PLIX RETURN
- RCP SPACE 4,10
- ** RCP - RESTORE CONTROL POINT AREA.
- *
- * USES CM - CM+4, CN - CN+4, FS - FS+4.
- *
- * CALLS CSM, PCS, UEP.
- *
- * MACROS DELAY, MONITOR, NFA.
- RCP SUBR ENTRY/EXIT
- * WARNING - MODIFICATION OF THE FIELD LENGTH CONTROL WORDS IN
- * CM MUST BE INHIBITED FROM BEFORE THE TIME *UEP* READS THEM
- * UNTIL AFTER THE FIRST HALF OF THE CONTROL POINT AREA IS
- * WRITTEN TO CM. THEREFORE, NO MONITOR FUNCTIONS WHICH COULD
- * RESULT IN A STORAGE MOVE SHOULD BE ISSUED DURING THAT TIME.
- RJM UEP UPDATE EXCHANGE PACKAGE
- RJM PCS PROCESS CPU SELECTION
- LDK RTCL
- CRD FS
- LDD CP
- ADK TSCW
- CRD CN
- LDD PR
- ZJP RCP4 IF PSEUDO-ROLLIN
- * UPDATE RECOVERY TABLE AND SCP CONNECTIONS FROM SYSTEM SECTOR.
- NFA RC1N
- CWM SBUF+RRSS,TW
- ERRNZ RC1N-RC2N-1 *RC1N*/*RC2N* MUST BE CONTIGUOUS
- ERRNZ R2SS-R1SS-5 *R1SS*/*R2SS* MUST BE CONTIGUOUS
- LDD CP UPDATE SCP CONNECTIONS
- ADK SSCW
- CWM SBUF+SCPC,ON
- ADK DBAW-SSCW-1
- CRD CM
- LDD CM+1
- ADD CM+2
- ADD CM+3
- ADD CM+4
- NJN RCP2 IF K-DISPLAY ACTIVE
- LDN ZERL CLEAR *MS2W*
- CRM CBUF+5*MS2W,ON
- RCP2 LDD CN+2
- LPC 7777 DO NOT CLEAR SLICE FLAG
- * LPC 7677 (CLEAR SLICE FLAG FOR ON-LINE INTERACTIVE)
- RCPG EQU *-1
- STD CN+2
- LDN 0
- STM CBUF+5*FLIW+2 CLEAR NFL INCREASE FIELD
- STM CBUF+5*FLIW+3 CLEAR EXTENDED MEMORY INCREASE FIELD
- STM CBUF+5*FLIW+4 CLEAR CM INCREASE FIELD
- LDM CBUF+5*FLIW+1 CLEAR SCHEDULER REJECT FLAGS
- SCN 3
- STM CBUF+5*FLIW+1
- LDM SBUF+EJRO+JSNE*5+4
- LPN 76
- LMN TOJS*2
- ZJN RCP3 IF ROLLIN AFTER TIMED/EVENT ROLLOUT
- LDM CBUF+5*STSW+2
- LPK 10*/CPS/ROTE
- RAM RCPD SET UNPROCESSED TIMED/EVENT ROLLOUT STATUS
- RCP3 LDC **
- RCPA EQU *-1 (OLD CM FL SIZE)
- NJN RCP4 IF CM FL WAS PREVIOUSLY ASSIGNED
- * LDN 0 (ON-LINE INTERACTIVE JOB STEP INITIATION)
- RCPB EQU *-1
- STM CBUF+5*EECW+1 CLEAR REPRIEVE OPTIONS
- STM CBUF+5*EECW+4 CLEAR ERROR EXIT ADDRESS
- LDM CBUF+5*EECW+3
- SCN 77
- STM CBUF+5*EECW+3
- LDM CBUF+5*CSPW CLEAR SUPPRESS ERROR MESSAGE FLAG
- SCN 40
- STM CBUF+5*CSPW
- RCP4 LDM RCPF+1 COMPUTE CM SLICE TIME
- ADD FS+1
- STD CN+1
- SHN -14
- ADD FS
- STD CN
- LDD FS+1 COMPUTE CP SLICE TIME
- ADM RCPF+4
- STD CN+4
- SHN -14
- ADD FS
- STD CN+3
- LDD CP
- ADK TSCW
- CWD CN
- LDM CBUF+5*STSW+2 SAVE CPU STATUS FLAG
- LPN 2
- RAM RIJF
- LDM CBUF+5*STSW+4 SAVE PP RECALL COUNT
- SHN -4
- LPN 17
- STM ERSF
- * UPDATE STATUS WORD.
- LDN 0
- STM CBUF+5*STSW+1
- STM CBUF+5*STSW+3
- LDN 1 SET PP ACTIVITY
- STM CBUF+5*STSW
- STM CBUF+5*STSW+4 SET RECALL COUNT
- LDC 0
- RCPD EQU *-1 (ROLLOUT CONTROL FLAGS TO BE SET)
- ZJN RCP4.1 IF NO ROLLOUT FLAGS TO SET
- LDM CBUF+5*STSW+2
- LPN 2 PRESERVE ROLLOUT CPU STATUS
- LMN 1 SET ROLLOUT REQUESTED
- LMM RCPD MERGE ROLLOUT FLAGS
- RCP4.1 STM CBUF+5*STSW+2
- * WRITE FIRST HALF OF CONTROL POINT AREA.
- RCP5 LDD CP ENSURE *1SJ* *CCAM* IS COMPLETE
- ADK STSW
- CRD CM
- SOD CM
- ZJN RCP6 IF NO OTHER PP-S ASSIGNED
- DELAY
- UJN RCP5 CHECK FOR COMPLETION OF *1SJ* *CCAM*
- RCP6 LDD CP
- CWM CBUF,HN
- LDD PR
- ZJN RCP8 IF PSEUDO-ROLLIN
- * UPDATE MASS STORAGE PRU LIMIT.
- LDM RCPE+3
- ADM RCPE+4
- ZJN RCP7 IF NO PRU-S RELEASED
- LDD MA STORE REQUEST IN MESSAGE BUFFER
- CWM RCPE,ON
- LDN 1 SET NUMBER OF REQUESTS AND NO DROP FLAG
- STD CM+1
- STD CM+2
- MONITOR UADM
- * CLEAR SECURE MEMORY IF NECESSARY.
- RCP7 RJM CSM CLEAR SECURE MEMORY
- * FORCE SRU MULTIPLIER CALCULATION.
- LDN /CPS/ABSF
- STD CM+1
- MONITOR ACTM
- RCP8 LJM RCPX RETURN
- * *UADM* PARAMETER BLOCK.
- RCPE CON /CPS/CICS
- CON ACLW
- CON 0*100+18D
- CON 0,0
- RCPF BSS 5 *TSCW* BUFFER
- RIM SPACE 4,15
- ** RIM - ROLLIN MEMORY.
- *
- * ENTRY (A) = LWA TO ROLLIN.
- * (CI) = FWA TO ROLLIN.
- * (T5) = EQUIPMENT.
- * (T6) = CURRENT TRACK.
- * (T7) = CURRENT SECTOR.
- *
- * USES CI.
- *
- * CALLS RNS.
- *
- * NOTE ROUTINE *RIM* IS OVERWRITTEN WITH ROUTINE *RID*
- * IF THE ROLLOUT DEVICE SUPPORTS DIRECT DISK TRANSFERS.
- RIM SUBR ENTRY/EXIT
- STM RIMA
- SBD FL
- MJN RIM1 IF LWA .LT. FL
- LDD FL OVERRIDE ROLLIN FL
- STM RIMA
- RIM1 LDC BFMS READ A SECTOR
- RS1. RJM RNS
- ZJN RIM2 IF EOF
- LDD RA SET CM ADDRESS
- ADD CI
- SHN 6
- CWM BFMS+2,HN
- AOD CI
- LMC *
- RIMA EQU *-1
- NJN RIM1 IF LWA NOT REACHED
- RIM2 STM RNS CLEAR *RNS* SO *3RF* WILL NOT BE CONFUSED
- UJN RIMX RETURN
- RIML EQU *-RIMX LENGTH OF *RIM*
- RPC SPACE 4,10
- ** RPC - RELEASE PSEUDO-CONTROL POINT.
- *
- * USES CM - CM+4.
- RPC SUBR ENTRY/EXIT
- TLDC TFSW,PCAD
- CRD CM
- LDN 0 CLEAR PCP ASSIGNMENT
- STD CM
- TLDC STSW,PCAD
- CWD ZR CLEAR PP/PCP ASSIGNMENT
- ADK TFSW-STSW
- CWD CM
- UJP RPCX RETURN
- SNS SPACE 4,20
- ** SNS - SEND NOTIFICATION OF ROLLIN TO SCP.
- *
- * *SNS* NOTIFIES A PARTICULAR SCP TYPE SUBSYSTEM THAT A USER
- * JOB (UCP) HAS ROLLED IN. THIS RESPONSE OCCURS AS A RESULT
- * OF A PREVIOUS *SF.SWPI* FUNCTION ISSUED FROM A SYSTEM
- * CONTROL POINT (SCP).
- *
- * ENTRY (A) = REPLY CODE.
- * (CJSC - CJSC+4) = SUBSYSTEM PARAMETERS.
- * *SCHE* FORMAT IS 30/,18/ ADDR,12/ SSID
- * ADDR = ADDRESS OF COMPLETION BIT WORD
- * SSID = SUBSYSTEM IDENTIFICATION NUMBER.
- * (EO) = EJT ORDINAL.
- *
- * USES T1, EF, CM - CM+4.
- *
- * MACROS DELAY, MONITOR PAUSE, SFA.
- SNS SUBR ENTRY/EXIT
- SHN 6 SAVE REPLY CODE
- STM SNSA
- NJN SNS1 IF ERROR RESPONSE
- LDD CP READ SCP CONTROL WORD
- ADK SSCW
- CRD CM
- LDN 5 INITIALIZE BYTE INDEX
- STD T1
- SNS0.1 SOD T1
- MJN SNSX IF SUBSYSTEM NOT FOUND
- LDM CM,T1 CHECK NEXT BYTE
- SHN -6
- ADC LSSI CALCULATE SUBSYSTEM ID
- LMM CJSC+4
- NJN SNS0.1 IF NOT THIS SUBSYSTEM
- LDM CM,T1 CLEAR ROLLOUT ALLOWABLE FLAG
- SCN 20
- STM CM,T1
- LDD CP
- ADC SSCW
- CWD CM
- * ISSUE *TDAM* FUNCTION TO SET COMPLETION BIT.
- SNS1 LDM CJSC+4 SET SUBSYSTEM ID FOR *TDAM*
- STD CM+2
- LDM CJSC+3 SET COMPLETION BIT ADDRESS FOR *TDAM*
- STD CM+4
- LDM CJSC+2
- LPN 77
- LMC **
- SNSA EQU *-1
- STD CM+3
- LDN 2 SET *TDAM* SUBFUNCTION
- STD CM+1
- MONITOR TDAM
- LDD CM+1
- ZJN SNS3 IF NO REJECT
- SBN 4
- ZJN SNS3 IF SCP INACTIVE
- PJN SNS2 IF INCORRECT COMPLETION ADDRESS
- PAUSE ST
- DELAY
- SFA EJT,EO READ ERROR FLAG WORD OF EJT ENTRY
- ADN PRFE
- CRD CM
- LDD CM+1
- LMN ORET
- ZJN SNS3 IF OPERATOR INTERVENTION
- LJM SNS1 REISSUE REQUEST
- SNS2 LDN ITET SET INCORRECT TRANSFER ADDRESS ERROR FLAG
- SBD EF
- MJN SNS3 IF LARGER ERROR FLAG ALREADY SET
- LDN ITET SET INCORRECT TRANSFER ADDRESS ERROR FLAG
- STD EF
- SNS3 LJM SNSX RETURN
- SYS SPACE 4,10
- ** SYS - READ SYSTEM SECTOR.
- *
- * ENTRY I/O SEQUENCE INITIATED.
- *
- * USES T7.
- *
- * CALLS MSR, RNS.
- *
- * ERROR TO *MSR* IF INVALID SYSTEM SECTOR.
- SYS SUBR ENTRY
- LDC SBUF-2 READ SYSTEM SECTOR
- RJM RNS
- LDN FSMS SET FIRST SECTOR
- STD T7
- LDD T1 CHECK WORD COUNT
- LMN 77
- NJN SYS1 IF NOT SYSTEM SECTOR
- LDI T3
- LMC 3777
- NJN SYS1 IF NOT VALID SYSTEM SECTOR
- LDM SBUF+TYSS*5+4
- SHN -6
- LMN ROFT
- NJN SYS1 IF NOT ROLLOUT FILE
- LDM SBUF+DMFA
- SYSA ZJN SYSX IF NOT DM* ROLLOUT FILE (NORMAL ROLLIN)
- * NJN SYSX IF DM* ROLLOUT FILE (*DMP=* ROLLIN)
- SYS1 RJM MSR PROCESS ERROR - NO RETURN
- RJM HNG HANG PP
- TCP SPACE 4,10
- ** TCP - TRANSFER PCPA TO CPA.
- *
- * EXIT CONTROL POINT AREA SET FROM PCP.
- TCP SUBR ENTRY/EXIT
- TLDC 0,PCAD COMPUTE PCPA ADDRESS
- CRM CBUF,HN READ FIRST HALF OF PCPA
- CRM BFMS+2,HN READ SECOND HALF OF PCPA
- LDD CP WRITE SECOND HALF OF PCPA TO CPA
- ADD HN
- CWM BFMS+2,HN
- UJN TCPX RETURN
- UEP SPACE 4,10
- ** UEP - UPDATE EXCHANGE PACKAGE.
- *
- * ENTRY (RA) = ADJUSTED RA.
- * (FL) = ADJUSTED CM FL.
- UEP SUBR ENTRY/EXIT
- LDD CP READ FIELD LENGTH CONTROL WORDS
- ADK FLSW
- CRM CBUF+5*FLSW,TR
- ERRNZ ECSW-FLSW-2 CODE DEPENDS ON VALUE
- LDM CBUF+5*FLSW+3 SET RA IN EXCHANGE PACKAGE
- SHN 6
- STM CBUF+5*1+1
- LMM CBUF+5*FLSW+2
- SHN 6
- STM CBUF+5*1
- LDD FL STORE FL IN EXCHANGE PACKAGE
- SHN 6
- STM CBUF+5*2+1
- SHN -14
- STM CBUF+5*2
- LDM CBUF+5*3 ENSURE MONITOR MODE NOT SET (CYBER 176)
- LPC 7627
- STM CBUF+5*3
- LDM CBUF+5*ECSW+4
- ZJP UEP3 IF NO EXTENDED MEMORY ASSIGNED
- LDK UEML READ UEM BASE ADDRESS/1000B
- CRD CM
- LDD CM+4
- LPN 2
- ZJN UEP1 IF NO UEM
- LDD CM
- UEP1 STD T0
- LDM CBUF+5*ECSW+2 SET RAE
- SHN 14
- ADM CBUF+5*ECSW+3
- UEPA SHN 0
- * SHN UESC (CONVERT TO 1000B-WORD BLOCKS)
- ADD T0
- SHN 17
- STM CBUF+5*4
- SHN -6
- SCN 77
- STM CBUF+5*4+1
- LDM CBUF+5*ECSW+4 SET FLE
- UEPB SHN 17
- * SHN 17+UESC (ALLOW FOR USER EM SHIFT)
- STM CBUF+5*5
- SHN -6
- SCN 77
- STM CBUF+5*5+1
- UEPC UJN UEP3 CONTINUE (STANDARD ADDRESSING)
- * PSN (IF EXPANDED ADDRESSING MODE)
- LDM CBUF+5*4 RESET RAE
- SHN 14
- STM CBUF+5*4
- SCN 77
- ADM CBUF+5*4+1
- SHN -6
- STM CBUF+5*4+1
- LDM CBUF+5*5 RESET FLE
- SHN 14
- STM CBUF+5*5
- SCN 77
- ADM CBUF+5*5+1
- SHN -6
- STM CBUF+5*5+1
- UEP3 LDD CP STORE MA IN EXCHANGE PACKAGE
- STM CBUF+5*6+1
- STM CBUF+5*7+1 STORE EA IN EXCHANGE PACKAGE
- SHN -14
- STM CBUF+5*6
- STM CBUF+5*7
- LJM UEPX RETURN
- SPACE 4,10
- * COMMON DECKS.
- EOR$ EQU 0 SET TO POSITION AFTER EOR,S ON READ
- MSR$ EQU 0 SET FOR PROCESSSING MASS STORAGE ERRORS
- LIST X
- *CALL COMPDDT
- LIST *
- EJT$ EQU 1 ASSEMBLE EJT ADDRESSING (COMPGFP)
- IFP$ EQU 1 ASSEMBLE REMOTE INITIALIZATION (COMPGFP)
- *CALL COMPGFP
- *CALL COMPRNS
- USE OVERLAY
- SPACE 4,10
- ** BUFFER ASIGNMENTS.
- SBUF EQU *+2 SYSTEM SECTOR
- CBUF EQU SBUF+502 FIRST PART OF CONTROL POINT AREA
- EJBF EQU CBUF+502 EJT ENTRY
- EBUF EQU EJBF+5*EJTE
- E1RI EQU EBUF+5 OVERLAYS ORIGIN
- TITLE PRESET.
- PRS SPACE 4,25
- ** PRS - PRESET.
- *
- * EXIT (T5) = ROLLOUT/DM* FILE EQUIPMENT.
- * (T6) = ROLLOUT/DM* FILE FIRST TRACK.
- * (T7) = 0.
- * (DI) = *UJNI*+2.
- * (PR) = 0 IF PSEUDO-ROLLIN.
- * (TW) = 2.
- * (ZR - ZR+4) = 0.
- * (EO) = EJT ORDINAL (NON-DMP= CALL).
- * (EJBF - EJBF+5*EJTE-1) = EJT ENTRY (NON-DMP= CALL).
- * (EF) = ERROR FLAG FROM EJT (NON-DMP= CALL) / CPA
- * (DMP= CALL).
- * (EP) = SPECIAL ENTRY POINT FLAGS.
- * (FA) = DM* FILE FNT ADDRESS/OFFSET (DMP= CALL).
- *
- * USES T1, T5 - T7, CM - CM+4, CN - CN+4, FS - FS+4, EO, DI,
- * EF, EP, FA, ZR - ZR+4.
- *
- * CALLS IFP, SIC, 3RG, 3RH.
- *
- * MACROS CFI, DELAY, EXECUTE, ISTORE, NFA, SFA, SIC.
- PRS SUBR ENTRY/EXIT
- RJM IFP INITIALIZE ROUTINE *CEA* OF *COMPGFP*
- LDC UJNI+2
- STD DI
- LDN 2 SET CONSTANT 2
- STD TW
- LDN ZERL CLEAR CM ZERO WORD
- CRD ZR
- LDD CP
- ADK TFSW GET EJT ORDINAL
- CRD CM
- ADK SEPW-TFSW
- CRD CN
- ADK TSCW-SEPW SAVE *TSCW*
- CRM RCPF,ON
- LDN EJTE
- STD T1
- LDD CM SAVE EJT ORDINAL
- STD EO
- SFA EJT,EO READ EJT ENTRY
- CRM EJBF,T1
- LDM EJBF+5*JSNE+4 SET PSEUDO-ROLLIN FLAG
- LPN 76
- LMK PCJS*2
- STD PR
- NJN PRS0.1 IF NOT PSEUDO-ROLLIN
- LDK NCPL GET NUMBER OF CONTROL POINTS
- CRD T1
- ADK PCPP-NCPL GET PCP AREA POINTER
- CRD CM
- LDM EJBF+5*SCHE+1 PCP NUMBER
- SBD T1+1
- SBN 2
- SHN 7 PCP AREA OFFSET
- RAD CM+4 SET PCP ADDRESS
- SHN -14
- RAD CM+3
- LDC TSIC SET INSTRUCTION RELOCATION TABLE ADDRESS
- RJM SIC RELOCATE INSTRUCTIONS
- PRS0.1 LDM EJBF+5*PRFE+1 SAVE ERROR FLAG
- STD EF
- LDK MEFL
- CRD CM
- LDD CM+2 GET USER EM SHIFT COUNT (UESC)
- SHN -11
- RAM JECC
- STM UEPA
- ADN 17
- STM UEPB
- LDD CM+2
- SHN 21-7
- PJN PRS1 IF STANDARD ADDRESSING MODE
- LDN PSNI
- STM UEPC ENABLE EXPANDED ADDRESSING MODE
- PRS1 LDD CN SAVE SPECIAL ENTRY POINT FLAGS
- STD EP
- LDN ACPL CHECK DUAL CPU AVAILABILITY
- CRD CM
- ADN 1
- CRD FS
- LDD CM
- LMD FS
- SHN 6
- MJN PRS1.1 IF ONLY ONE CPU AVAILABLE
- ISTORE PCSA,(UJN PCSX) SET TO PRESERVE CPU SELECTION
- PRS1.1 LDD IR+2
- ZJN PRS2 IF NOT *DMP=* CALL
- AOM CJSA SET *DMP=* FLAG
- LDD IR+4 SAVE DM* FILE FNT ADDRESS/OFFSET
- STD FA
- NFA FA,R READ DM* FILE FST ENTRY
- ADN FSTL
- CRM EJBF+5*SCHE,ON
- ISTORE SYSA,(NJN SYSX) SET DM* FILE TEST
- LJM PRS4 CONTINUE
- PRS2 LDD CP
- CRM CJSC,ON READ *SIJS* PARAMETERS
- LDM EJBF+5*JSNE+4 SAVE CONNECTION STATUS
- LPC 3600
- RAM CJSD
- LDD PR
- NJP PRS3 IF NOT PSEUDO-ROLLIN
- ISTORE RIJG,(UJN RIJ1)
- LDC TCP
- STM CPAI*2+SEQ+1
- ISTORE TOPI*2+SEQ,(UJN RIJ2.1)
- LDC RPC
- STM CJSB
- ISTORE RIJJ,(UJN RIJ3)
- LJM PRSX EXIT
- PRS3 LDM EJBF+5*SCLE
- LPN 17
- LMN TXOT
- NJN PRS4 IF NON-INTERACTIVE JOB
- EXECUTE 3RH LOAD INTERACTIVE JOB PROCESSING OVERLAY
- LDM EJBF+5*JSNE+4 CHECK CONNECTION STATUS
- SHN 0-7
- LPN 17
- LMN OLCS
- ZJN PRS6 IF ON-LINE INTERACTIVE JOB
- LDD DI
- UJN PRS5 DISABLE ON-LINE INTERACTIVE ROUTINES
- PRS4 LDD DI DISABLE ON-LINE INTERACTIVE ROUTINES
- STM TOPI*2+SEQ
- PRS5 STM RIJC
- STM RIJB
- STM RIJE
- LDD IR+2
- NJN PRS7 IF *DMP=* CALL
- PRS6 LJM PRS8 SET MASS STORAGE ADDRESS
- PRS7 EXECUTE 3RG
- LDC /3RG/RBFF CHANGE BUFFER ADDRESS
- STM CPAA
- LDC **
- ORG *-1
- LOC DRFB
- UJN DRF2
- LOC *O
- STM DRFB
- LDC /3RG/RCP
- STM RIJD
- LDD DI DISABLE RA/FL ADJUSTMENT
- STM RIJA
- LDN PSNI AVOID INCLUDING NFL INCREASE ON ROLLIN
- STM JFLC
- LDD CP
- ADN STSW
- CRD CM
- LDD CM+1 SAVE ERROR FLAG
- STD EF
- LDD CN+2
- SHN 21-13
- MJN PRS8 IF RESTART CALL
- AOM JFLB SET DMP= FLAG
- * SET ROLLOUT/DM* FILE MASS STORAGE ADDRESS.
- PRS8 LDN 0 CLEAR ROLLOUT FILE SECTOR
- STD T7
- LDM EJBF+5*SCHE+1 SET ROLLOUT FILE FIRST TRACK
- STD T6
- LDM EJBF+5*SCHE SET ROLLOUT FILE EQUIPMENT
- STD T5
- SFA EST READ EST ENTRY
- ADK EQDE
- CRD CM
- LDD CM+4 READ WORD *DILL* OF MST ENTRY
- SHN 3
- ADN DILL
- CRD CM
- LDD CM+3
- SHN 21-13
- PJN PRS12 IF NOT A BUFFERED DEVICE
- SHN 13-21-6 CHECK FOR UEM
- LPN 7
- LMN 4
- ZJN PRS9 IF UEM
- LDD CM+3
- LPN 7
- ZJN PRS10 IF NO DDP PATH
- PRS9 LDK SSTL
- CRD CN
- LDD CN+3
- SHN 21-11
- PJN PRS12 IF DDP PATH ENABLED
- PRS10 LDN RIDL-1 MOVE *RID* TO *RIM*
- STD T1 INITIALIZE INDEX
- PRS11 LDM RIDA,T1
- STM RIMX,T1
- SOD T1 DECREMENT INDEX
- PJN PRS11 IF MOVE INCOMPLETE
- LDD CM+3
- SHN 21-12
- MJN PRS12 IF BUFFERED DEVICE
- LDC RJMI ENABLE *ENDMS* IN *JFL*
- STM JFLA
- PRS12 LDD CP PRESET ALTERNATE RESPONSE ADDRESS
- STM JECB+4
- LDN SSTL SET MEMORY CLEARING STATUS
- CRD CM
- LDD CM
- SHN 0-12
- LPN 1
- ADC LDNI
- STM AFLA
- STM CSMC
- LJM PRSX RETURN
- RID SPACE 4,15
- ** RID - ROLLIN USING DIRECT TRANSFER TO CM.
- *
- * ENTRY (A) = LWA TO ROLLIN.
- * (CI) = FWA TO ROLLIN.
- * (T4) = CHANNEL.
- * (T5) = EQUIPMENT.
- * (T6) = CURRENT TRACK.
- * (T7) = CURRENT SECTOR.
- *
- * EXIT TO *MSR* IF MASS STORAGE ERROR
- *
- * USES CM - CM+4.
- *
- * CALLS DDT.
- RIDA EQU *
- LOC RIMX
- RID SUBR ENTRY/EXIT
- STD CM
- SBD FL
- MJN RID1 IF LWA .LT. FL
- LDD FL SET LWA .EQ. FL
- STD CM
- RID1 LDD CI SET RELATIVE CM ADDRESS
- SHN 6
- STD CM+4
- SHN -14
- STD CM+3
- LDD CM SET SECTOR COUNT
- SBD CI
- LMC /CPS/RDDS*10000 SET READ FUNCTION
- RJM DDT READ DIRECT TO CM
- PJN RIDX IF NO READ ERRORS
- RJM MSR PROCESS ERROR - NO RETURN
- RJM HNG HANG PP
- LOC *O
- RIDL EQU *-RIDA LENGTH OF *RID*
- ERRNG RIML-RIDL ROUTINE *RID* OVERFLOWS *RIM*
- SPACE 4,10
- ** PRESET COMMON DECKS.
- *CALL COMPSIC
- SPACE 4,10
- IFP HERE
- TSIC SPACE 4,10
- ** INSTRUCTION RELOCATION TABLE AND ASSOCIATED DATA.
- PCAD EQU CM+3 PCP ADDRESS
- TSIC BSS 0 INSTRUCTION RELOCATION TABLE
- LIST D
- SIC HERE
- LIST *
- CON 0 TERMINATE ENTRIES
- SPACE 4,10
- * CHECK FOR OVERFLOW.
- OVERFLOW PPFW,EPFW
- TTL 1RI/3RJ - PROCESS DELAYED *ALTER* FUNCTIONS.
- TITLE
- QUAL 3RJ
- IDENT 3RJ,E1RI PROCESS DELAYED *ALTER* FUNCTIONS.
- BASE M
- SST
- *COMMENT 1RI - PROCESS DELAYED *ALTER* FUNCTIONS.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- ORG E1RI
- 3RJ SPACE 4,15
- ** PGA - PROCESS DELAYED *ALTER* FUNCTIONS.
- *
- * ENTRY (ZR - ZR+4) = 0.
- *
- * USES T4 - T7, CM - CM+4, CN - CN+4.
- *
- * CALLS CHG, DFM.
- *
- * MACROS MONITOR.
- PGA SUBR ENTRY/EXIT
- LDM SBUF+QBSS
- STD T7
- LDN 5
- STD T4
- LCN 0 INITIALIZE FUNCTION INDEX
- STD T5
- PGA1 AOD T5 INCREMENT FUNCTION INDEX
- LDD T7
- ZJN PGAX IF ALL FUNCTIONS WERE PROCESSED
- SHN 21-0
- STD T7
- PJN PGA1 IF FUNCTION NOT SELECTED
- LDM TGAP,T5 SET PROCESSOR ADDRESS
- NJN PGA2 IF PROCESSOR EXISTS FOR FUNCTION
- RJM CHG CONDITIONAL HANG
- UJN PGA1 PROCESS NEXT FUNCTION
- PGA2 STD T6
- LJM 0,T6 ENTER FUNCTION PROCESSOR
- * DAYFILE MESSAGE PROCESSOR.
- PGA3 LDC SBUF+QBSS+1*5 ISSUE MESSAGE
- RJM DFM
- PGA4 UJN PGA1 CONTINUE
- * *JSN,CFO* PROCESSOR.
- PGA5 LDD FL
- ZJN PGA4 IF NO CM FL ASSIGNED
- LDD RA
- SHN 6
- CRD CN
- LDD CN+3
- LPN 4
- ZJN PGA4 IF JOB IS NOT READY FOR DATA
- LDC SBUF+QBSS+1*5 ISSUE MESSAGE
- RJM DFM
- LDD MA REMOVE PREFIX
- CWM SBUF+QBSS+1*5+3,T4
- SBD T4
- CRM SBUF+QBSS+1*5,T4
- LDN 0
- STM SBUF+QBSS+5*5+2
- STM SBUF+QBSS+5*5+3
- STM SBUF+QBSS+5*5+4
- LDD RA MOVE DATA TO JOB CM FL
- SHN 6
- ADN 70
- CWM SBUF+QBSS+1*5,T4
- LDD CN+3 CLEAR CFO AND PAUSE FLAGS IN RA+0
- SCN 5
- STD CN+3
- LDD RA
- SHN 6
- CWD CN
- PGA6 UJP PGA4 CONTINUE
- * *JSN,GO* PROCESSOR.
- PGA7 LDC =C* GO.* SET DAYFILE MESSAGE ADDRESS
- STM PGAA
- LDN 0
- UJN PGA9 CAUSE PAUSE FLAG NOT TO BE SET
- * *JSN,PAUSE* PROCESSOR.
- PGA8 LDN 1 CAUSE PAUSE FLAG TO BE SET
- PGA9 STD T6
- LDC =C* PAUSE.* ISSUE DAYFILE MESSAGE
- * LDC =C* GO.* (PROCESSING *JSN,GO*)
- PGAA EQU *-1
- RJM DFM
- LDD CP CLEAR NOGO AND/OR PAUSE FLAG
- ADN SNSW
- CRD CM
- LDD CM+3
- SCN 3
- LMD T6
- STD CM+3
- LDD CP
- ADN SNSW
- CWD CM
- ADN MS2W-SNSW CLEAR MESSAGE AT *MS2W*
- CWD ZR
- LDD FL
- ZJN PGA10 IF NO CM FL ASSIGNED
- LDD RA SET/CLEAR *PAUSE* FLAG IN RA+0
- SHN 6
- CRD CM
- LDD CM+3
- SCN 3
- LMD T6
- STD CM+3
- LDD RA
- SHN 6
- CWD CM
- PGA10 LJM PGA1 CONTINUE
- * *JSN,ONSW* PROCESSOR.
- PGA11 LDM SBUF+QBSS+2
- SHN 6
- UJN PGA13 CONTINUE
- * *JSN,OFFSW* PROCESSOR.
- PGA12 LDN 0 BUILD SETTING MASK
- PGA13 STD T6
- LCN 0 BUILD CLEARING MASK
- LMM SBUF+QBSS+2
- SHN 6
- STM PGAC
- LDD CP READ SENSE SWITCH WORD
- ADK SNSW
- CRD CN
- LDD CN+4 SET/CLEAR SENSE SWITCHES
- LPC **
- PGAC EQU *-1
- LMD T6
- STD CN+4
- LDD CP
- ADN SNSW
- CWD CN
- LDD FL
- ZJN PGA14 IF NO CM FL ASSIGNED
- LDD RA SET/CLEAR SWITCH IN RA+0
- SHN 6
- CRD CM
- LDD CM+4
- LMD CN+4
- LPN 77
- LMD CN+4
- STD CM+4
- LDD RA
- SHN 6
- CWD CM
- PGA14 LJM PGA1 CONTINUE
- TGAP SPACE 4,10
- ** TGAP - TABLE OF DELAYED *ALTER* FUNCTION PROCESSORS.
- *
- * EACH ENTRY CONTAINS THE ADDRESS OF THE PROCESSOR ASSOCIATED
- * WITH THE FUNCTION.
- TGAP INDEX
- INDEX SSSF,PGA11 SET SENSE SWITCHES
- INDEX CSSF,PGA12 CLEAR SENSE SWITCHES
- INDEX GOSF,PGA7 PROCESS *GO* COMMAND
- INDEX DYSF,PGA3 PROCESS *COMMENT* COMMAND
- INDEX CFSF,PGA5 PROCESS *CFO* COMMAND
- INDEX EMSF,PGA3 ISSUE ERROR MESSAGE
- INDEX PASF,PGA8 PROCESS *PAUSE* COMMAND
- INDEX 14
- SPACE 4,10
- * CHECK FOR OVERFLOW.
- OVERFLOW E1RI,EPFW
- TTL 1RI/3RI - PROCESS SERVICE CLASS CHANGE.
- TITLE
- QUAL 3RI
- IDENT 3RI,E1RI PROCESS SERVICE CLASS CHANGE.
- BASE M
- SST
- *COMMENT 1RI - PROCESS SERVICE CLASS CHANGE.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- ORG E1RI
- QUAL$ SET 1
- 3RI SPACE 4,10
- ** PSC - PROCESS SERVICE CLASS CHANGE.
- *
- * ENTRY (CN) = NEW SERVICE CLASS.
- *
- * CALLS CSC.
- PSC SUBR ENTRY/EXIT
- LDD CN
- RJM CSC CHANGE SERVICE CLASS
- UJN PSCX RETURN
- SPACE 4,10
- * COMMON DECKS.
- VCPT EQU /REM/VCPT
- VCHT EQU /REM/VCHT
- CPRS EQU /CPS/CPRS
- ABSR EQU /CPS/ABSR
- ABCP EQU /CPS/ABCP
- ABMS EQU /CPS/ABMS
- ABMT EQU /CPS/ABMT
- ABPF EQU /CPS/ABPF
- ABAD EQU /CPS/ABAD
- ABNA EQU /CPS/ABNA
- ABCS EQU /CPS/ABCS
- ABCF EQU /CPS/ABCF
- ABVF EQU /CPS/ABVF
- ABNB EQU /CPS/ABNB
- ABMP EQU /CPS/ABMP
- ABAC EQU /CPS/ABAC
- ABOF EQU /CPS/ABOF
- SSIS EQU /CPS/SSIS SET SUBSYSTEM IDENTIFICATION FIELD
- AST$ SET 1 ASSEMBLE SSCT/SSAT UPDATE FUNCTIONS
- *CALL COMPAST
- *CALL COMPCSC
- *CALL COMPRJC
- *CALL COMPSTA
- SPACE 4,10
- * CHECK FOR OVERFLOW.
- OVERFLOW E1RI,EPFW
- SPACE 4,10
- QUAL
- TTL 1RI/3RH - PROCESS ON-LINE INTERACTIVE JOBS.
- TITLE MAIN ROUTINES.
- QUAL 3RH
- IDENT 3RH,PRHX
- *COMMENT 1RI - PROCESS INTERACTIVE JOBS.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- SPACE 4,10
- ** 3RH - PROCESS ON-LINE INTERACTIVE JOBS.
- SPACE 4,10
- ORG E1RI
- PRH SUBR ENTRY/EXIT
- UJN PRHX RETURN
- EDA SPACE 4,10
- ** EDA - ENTER JOB COMMAND.
- *
- * EXIT JOB INITIATION COMMAND MOVED TO THE COMMAND BUFFER.
- * *1MI* TERMINAL I/O DRIVER IS INHIBITED FROM
- * RECIEVING INPUT AHEAD ON COMPLETION OF ROLLIN
- * IF USER BREAK AND EXTENDED REPRIEVE PROCESSING
- * ARE CURRENT. *1AJ* WILL REISSUE THE INPUT REQUEST
- * SUBSEQUENT TO ERROR FLAG PROCESSING.
- *
- * USES PP, T1, CM - CM+4, CN - CN+4.
- *
- * CALLS EJP, RRR, SRR.
- *
- * MACROS DELAY, MONITOR, PAUSE.
- EDA SUBR ENTRY/EXIT
- RJM SRR SET R-REGISTER TO IAF RA
- LDD TT
- SHN 14
- LMD TT+1
- ADN /REM/VROT
- CRD CN
- RJM RRR RESTORE R-REGISTER
- LDD CN+1 SET COMMAND POT MEMORY POINTER
- STD PP
- LDD CN+4 CLEAR JOB CONTINUATION
- SCN 4
- STD CN+4
- * ENTER COMMAND AND PARAMETERS.
- LDC **
- EDAA EQU *-1 (ZERO IF JOB STEP INITIATION)
- ZJN EDA2 IF JOB STEP INITIATION
- * INHIBIT *1MI* TERMINAL I/O DRIVER INPUT AHEAD PROCESSING
- * ON USER BREAK AND EXTENDED REPRIEVE PROCESSING.
- LDD EF OUTSTANDING ERROR FLAG
- LMN TIET
- ZJN EDA1 IF USER BREAK ONE
- LMN TIET&TAET
- NJP EDA4 IF NOT USER BREAK TWO
- EDA1 LDM CBUF+EECW*5
- SHN 21-12
- MJN EDA3 IF EXTENDED REPRIEVE PROCESSING
- LJM EDA4 COMPLETE *EDA* PROCESS
- * SET COMMAND BUFFER.
- EDA2 RJM EJP ENTER JOB PARAMETERS
- * RELEASE COMMAND POT MEMORY AND COMPLETE.
- EDA3 LDN 0 CLEAR POT MEMORY POINTER
- STD CN+1
- LDD PP COMMAND POT POINTER
- ZJP EDA4 IF NO COMMAND
- LDN ZERL DROP POT MEMORY
- CRD CM
- LDC /REM/VDPO DROP POT MEMORY REQUEST
- STD CM
- LDD PP
- STD CM+3 SET TO DROP ENTIRE POT CHAIN
- LDD TN TERMINAL CONNECTION NUMBER TO REQUEST
- STD CM+4
- LDD MA
- CWD CM
- EDA3.1 LDK ZERL
- CRD CM
- MONITOR TSEM
- LDD CM+1
- ZJN EDA4 IF *IAF* INACCESSIBLE OR ERROR
- LMC 7777
- NJN EDA4 IF REQUEST COMPLETE
- PAUSE ST
- LDC 3600 *TSEM* QUEUE FULL - DELAY AND RETRY
- STD T1
- EDA3.2 DELAY
- SOD T1
- ZJN EDA3.1 IF TIME TO REISSUE REQUEST
- UJN EDA3.2 CONTINUE TO DELAY
- * COMPLETE *EDA* PROCESS.
- EDA4 RJM SRR SET R-REGISTER TO IAF RA
- LDD TT TERMINAL TABLE ADDRESS
- SHN 14
- LMD TT+1
- ADN /REM/VROT
- CWD CN REWRITE *VROT*
- RJM RRR RESTORE R-REGISTER
- UJP EDAX RETURN
- TOP SPACE 4,10
- ** TOP - SKIP TERMINAL OUTPUT.
- *
- * CALLS RNS.
- TOP SUBR
- LDM SBUF+EJRO+JSNE*5+4
- SHN -7
- LPN 17
- LMK NICS
- ZJN TOPX IF NOT INTERACTIVE STATUS AT ROLLOUT
- TOP1 LDC BFMS+DTSF
- RS2. RJM RNS
- SHN -6
- NJN TOP1 IF NOT EOR
- STM RNS CLEAR *RNS* SO *3RF* WILL NOT BE CONFUSED
- UJN TOPX RETURN
- TITLE SUBROUTINES.
- EJP SPACE 4,10
- ** EJP - ENTER JOB PARAMETERS.
- *
- * ENTRY (PP) = POT POINTER OF TERMINAL COMMAND.
- *
- * USES T1, T2, T7, T8, CM - CM+4, PP.
- *
- * CALLS RRR, SPA, SRR, TCL, UPP.
- *
- * MACROS MONITOR, NFA.
- EJP SUBR
- LDN 0
- STM CBUF+CSPW*5+2 CLEAR COMMAND COUNT
- LDM CBUF+SRUW*5 CLEAR TIME AND SRU LIMITS
- LPC 301
- STM CBUF+SRUW*5
- LDC 4000 SET EOR ON INPUT
- STM CBUF+CSPW*5+1
- LDD CP READ *CCL* DATA
- ADC JCDW
- CRD CM
- STD T8 SAVE ADDRESS OF *JCDW*
- LDD CM+2 CLEAR PROCEDURE NESTING LEVEL
- LPC 6000
- STD CM+2
- LDD T8
- CWD CM
- LDM CBUF+TXSW*5 SET SUBSYSTEM
- LPN 77
- SHN 14
- EJPA LMN 0
- * LMN XX (SUBSYSTEM CODE)
- SHN 6
- STM CBUF+TXSW*5
- LDC ** CHECK FOR PREPROCESSOR
- EJPB EQU *-1 (PREPROCESSOR COMMAND WORD COUNT)
- STD T1
- ZJN EJP1 IF NO COMMAND TO TRANSFER
- NFA CSBN
- CWM EJPC,T1 TRANSFER PREPROCESSOR COMMAND
- EJP1 LDD PP
- NJN EJP2 IF DATA TO TRANSFER
- STD T1
- LJM EJP5 NO DATA TO TRANSFER, CONTINUE
- EJP2 LDN /REM/VCPC READ COMMAND BUFFER
- STD T1
- RJM SRR SET R-REGISTER TO IAF RA
- RJM SPA
- CRM CLBF,T1
- RJM RRR RESTORE R-REGISTER
- NFA CSBN
- ADM EJPB
- CWM CLBF,T1
- LDC CLBF+/REM/VCPC*5-5 FIND COMMAND LENGTH
- STD T2
- EJP3 LDI T2
- NJN EJP4 IF LAST WORD FOUND
- LCN 5
- RAD T2
- SOD T1
- NJN EJP3 IF NOT AT MAXIMUM
- EJP4 LDM 4,T2
- ZJN EJP5 IF TERMINATOR WORD
- AOD T1
- EJP5 LDC CSBN SET FWA OF COMMAND BUFFER
- STM CBUF+CSPW*5+3
- SBD T1 SET LWA+1
- SBM EJPB
- STM CBUF+CSPW*5+4
- * IF A PROCEDURE FILE EXISTS, DROP TRACKS.
- LDM CBUF+CSSW*5
- SHN 21-13
- MJN EJP6 IF NO PROCEDURE FILE
- LDM CBUF+CSSW*5+1
- ZJN EJP6 IF NO TRACK
- STD CM+2
- LDM CBUF+CSSW*5
- LPC 777
- LMD TH SET RETURN-ON-INACCESSIBLE BIT
- STD CM+1 SET EQUIPMENT
- MONITOR DTKM
- LDD CM+1
- ZJN EJP5.1 IF DEVICE ACCESSIBLE
- LDK ZERL IGNORE PRU COUNT
- CRD CM
- UJN EJP6 CONTINUE
- EJP5.1 LDD CM+3 SAVE PRU COUNT
- STM RCPE+3
- LDD CM+4
- STM RCPE+4
- EJP6 LDN ZERL
- CRD CM
- CRM CBUF+CSSW*5,ON
- LDD FL
- ZJN EJP8 IF NO FL
- ADD RA PRESET WORD COUNT = 0 FOR *CLB=*
- SBN 1
- SHN 6
- CWD CM
- * CHECK FOR CHAINED POT WHICH IMPLIES *IEDIT* COMMAND LINE.
- * TO BE TRANSFERRED TO FL-100B.
- LDD PP
- ZJN EJP8 IF NO COMMAND POT POINTER
- STD T7
- RJM SRR SET R-REGISTER TO IAF RA
- RJM UPP CHECK FOR CHAIN
- RJM RRR RESTORE R-REGISTER
- LDD PP
- ZJN EJP7 IF NO MORE POTS
- RJM TCL TRANSFER COMMAND LINE
- EJP7 LDD T7
- STD PP
- EJP8 LJM EJPX RETURN
- EJPC VFD 60/0
- VFD 60/0
- TCL SPACE 4,10
- ** TCL - TRANSFER COMMAND LINE.
- *
- * ENTRY (PP) = POT POINTER OF COMMAND LINE.
- *
- * USES T1 - T5, CM - CM+4.
- *
- * CALLS RRR, SPA, SRR, UPP.
- TCL SUBR ENTRY/EXIT
- LDD FL
- ADD RA SET ADDRESS OF FL-100
- SBN 1
- SHN 6
- ADN 1
- STD T5
- SHN -14
- STD T4
- LDN 0
- STD T3 INITIALIZE WORD COUNT
- LDN /REM/VCPC
- STD T2
- TCL1 RJM SRR SET R-REGISTER TO IAF RA
- RJM SPA SET POT ADDRESS
- CRM CLBF,T2 READ ONE POT
- RJM UPP
- RJM RRR RESTORE R-REGISTER
- LDD PP
- ZJN TCL2 IF NO MORE POTS
- LDN /REM/VCPC INCREMENT WORD COUNT
- RAD T3
- SBN 76
- PJN TCL2 IF OVERFLOW, TRUNCATE
- LDD T4
- SHN 14
- ADD T5
- CWM CLBF,T2
- STD T5
- SHN -14
- STD T4
- UJN TCL1 CONTINUE PROCESSING
- TCL2 LDN 1 SET LAST POT WORD COUNT
- STD T2
- LDC CLBF+4 SET BUFFER POINTER
- STD T1
- TCL3 LDI T1
- ZJN TCL4 IF EOL IN BUFFER
- LDD T2 CHECK WORD COUNT
- SBN /REM/VCPC
- ZJN TCL4 IF END OF BUFFER
- AOD T2
- LDN 5
- RAD T1
- UJN TCL3 CHECK NEXT WORD
- TCL4 LDN ZERL CLEAR CM - CM+4
- CRD CM
- LDD T2 SET COMPOSITE WORD COUNT
- ADD T3
- STD CM+4
- LDD T4 WRITE LAST POT
- SHN 14
- ADD T5
- CWM CLBF,T2
- SBD CM+4 WRITE WORD COUNT
- SBN 1
- CWD CM
- LJM TCLX EXIT
- SPACE 4,10
- * COMMON DECKS.
- QUAL
- PIR$ EQU 1 SELECT ASSEMBLY OF *PIR* FOR IAF R-REG
- QUAL *
- *CALL COMPSRR
- *CALL COMPSPA
- *CALL COMPUPP
- SPACE 4,10
- CLBF EQU * COMMAND LINE BUFFER
- ERRNG BFMS-*
- TITLE INITIALIZATION.
- PRS SPACE 4,15
- ** PRS - PRESET.
- *
- * ENTRY (DI) = *UJNI*+2.
- * (EF) = ERROR FLAG FROM EJT ENTRY.
- *
- * EXIT (TT - TT+1) = TERMINAL TABLE ADDRESS.
- * (EF) = 7777 IF *IAF* INACCESSIBLE.
- *
- * USES EF, EP, TN, CM - CM+4, CN - CN+4, FS - FS+4, T1 - T7.
- *
- * CALLS AST, CHG, PIR, RRR, SRR, STA.
- *
- * MACROS MONITOR.
- PRS SUBR ENTRY/EXIT
- * CHECK ACCESSIBILITY OF *IAF*.
- LDC IFSI+FECF*10000
- RJM AST GET SSCT ENTRY
- SHN 21-13
- MJN PRS1 IF *IAF* ACCESSIBLE
- PRS0 LDD DI DISABLE ON-LINE INTERACTIVE PROCESSING
- STM RIJC
- STM RIJE
- LDD EF
- NJN PRSX IF ERROR FLAG IS SET
- LDK 10*/CPS/ROSU SET ROLLOUT FLAG TO SUSPEND JOB
- RAM RCPD
- LCN 0 DISABLE PP AND CPU RESTART
- STD EF
- UJN PRSX RETURN
- * SET TERMINAL TABLE ADDRESS.
- PRS1 RJM PIR PRESET WITH IAF R-REGISTER
- LDM CBUF+5*TTNW+1 SET CONNECTION NUMBER
- STD TN
- RJM SRR SET R-REGISTER TO IAF RA
- RJM STA SET TERMINAL TABLE ADDRESS
- ADN /REM/VFNT
- CRD T3
- ADN /REM/VROT-/REM/VFNT
- CRD CN
- ADN /REM/VSTT-/REM/VROT
- CRD FS
- RJM RRR RESTORE R-REGISTER
- LDD CN+4 MAKE SURE *VROT* BIT ZERO IS NOT SET
- LPN 1
- ZJN PRS1.1 IF INTERLOCK IS CLEAR
- LDK SWET SET ERROR FLAG
- STD EF
- RJM CHG CONDITIONAL HANG
- LJM PRS0 DISABLE INTERACTIVE PROCESSING
- PRS1.1 LDD T3+3 TERMINATE PRIMARY FILE NAME
- SCN 77
- STD T3+3
- LDD CN+4
- LPN 4
- STM EDAA
- ZJN PRS3 IF NOT CONTINUATION
- PRS2 LJM PRSX RETURN
- PRS3 LDD EP SIMULATE *SSM=* ON NEW STEP
- SCN 1
- LMN 1
- STD EP
- LDD CP SET JOB STEP INITIATION
- ADC DBAW
- CRD CM
- LDD CM
- LPC 2777
- LMC 1000
- STD CM
- LDD CP
- ADC DBAW
- CWD CM
- LDC LDNI+0
- STM RCPB
- LDC 7677 MASK TO CLEAR SLICE FLAG
- STM RCPG
- LDD FS+3 SET SUBSYSTEM CODE
- LPN 77
- RAM EJPA
- LDD CN CHECK FOR PREPROCESSOR INDEX
- LPN 77
- ZJP PRS2 IF NO PREPROCESSOR INDEX PRESENT
- STD T1
- LDD CN CLEAR PREPROCESSOR INDEX
- SCN 77
- STD CN
- RJM SRR SET R-REGISTER TO IAF RA
- LDD TT
- SHN 14
- LMD TT+1
- ADN /REM/VROT
- CWD CN
- RJM RRR RESTORE R-REGISTER
- LDD T1
- SBN TPPIL+1
- MJN PRS4 IF VALID PREPROCESSOR INDEX
- LDN 0 SET NO ERROR FLAG
- RJM CHG CONDITIONAL HANG
- LJM PRSX RETURN
- PRS4 LDM TPPI-1,T1
- SHN 6
- STD CM SAVE FILE FLAG
- SHN -14
- STD T2
- LDN 0 PRESET TRANSFERRED BYTE COUNT
- STD T1
- PRS5 AOD T2
- AOD T1
- LDM TPPS-1,T2 TRANSFER PREPROCESSOR COMMAND
- STM EJPC-1,T1
- NJN PRS5 IF TRANSFER NOT COMPLETE
- LDD CM
- ZJN PRS9 IF NO FILE NAME REQUIRED
- * MOVE FILE NAME.
- LDN T3 SET FILE NAME ADDRESS
- STD T2
- PRS6 LDI T2 MOVE BYTE
- STM EJPC-1,T1
- ZJN PRS7 IF NO CHARACTERS IN BYTE
- LPN 77
- ZJN PRS8 IF ONE CHARACTER IN BYTE
- AOD T1
- AOD T2
- UJN PRS6 CONTINUE TRANSFER
- PRS7 LDC 2R..
- PRS8 LMN 1R.
- RAM EJPC-1,T1 STORE TERMINATOR
- * CALCULATE CM WORD COUNT.
- PRS9 AOM EJPB INCREMENT CM WORD COUNT
- LCN 5 DIVIDE BY 5
- RAD T1
- PJN PRS9 IF DIVISION NOT COMPLETE
- LJM PRSX RETURN
- TPPI SPACE 4,10
- ** TPPI - TABLE OF PREPROCESSOR INDICES.
- *
- * 6/ INDEX,6/ FLAG
- * INDEX OFFSET INTO *TPPS* TABLE OF FIRST BYTE OF
- * PREPROCESSOR COMMAND.
- * FLAG 1 IF PRIMARY FILE NAME IS REQUIRED.
- * 0 OTHERWISE.
- TPPI VFD 6/PP1-TPPS,6/1
- VFD 6/PP2-TPPS,6/1
- TPPIL EQU *-TPPI
- TPPS SPACE 4,10
- ** TPPS - TABLE OF PREPROCESSOR COMMANDS.
- *
- * THESE ENTRIES MUST BE BLANK PADDED TO GUARANTEE AN EVEN
- * NUMBER OF CHARACTERS IN EACH COMMAND. IF NO PRIMARY FILE
- * IS REQUIRED, THE COMMAND TERMINATOR MUST APPEAR IN THE
- * ENTRY. THE TOTAL LENGTH OF A PREPROCESSOR COMMAND MUST
- * NOT EXCEED SPACE RESERVED AT *EJPC*.
- TPPS BSS 0
- PP1 DATA C*$SORT,*
- CON 0
- PP2 DATA C*$PACK,*
- CON 0
- SPACE 4,10
- * COMMON DECKS.
- *CALL COMPAST
- *CALL COMPSTA
- SPACE 4,10
- * CHECK FOR OVERFLOW.
- USE OVERFLOW
- E3RH EQU * LWA+1 OF *3RH* OVERLAY
- SPACE 4,10
- OVERFLOW E1RI,EPFW
- TTL 1RI/3RG - PROCESS DMP= JOBS.
- TITLE
- QUAL 3RG
- IDENT 3RG,PRGX
- *COMMENT 1RI - PROCESS SPECIAL ENTRY POINT JOBS.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- SPACE 4,10
- ** 3RG - PROCESS DMP= JOBS.
- ORG E1RI
- PRG SUBR ENTRY/EXIT
- UJN PRGX RETURN
- RCP SPACE 4,10
- ** RCP - RESTORE CONTROL POINT AREA.
- *
- * USES T1, T3, CM - CM+4, CN - CN+4.
- *
- * CALLS PCS, UCA, UEP.
- *
- * MACROS MONITOR, NFA, SFA.
- RCP SUBR ENTRY/EXIT
- RJM UEP UPDATE EXCHANGE PACKAGE
- RJM PCS PROCESS CPU SELECTION
- LDN DMPL-1 STORE EXCHANGE PACKAGE
- ERRNZ DMPL-21 ADJUST CODE IF VALUE CHANGES
- STD T1
- LDD CP
- CWM CBUF,T1
- * UPDATE CONTROL AREAS.
- LDM CBUF+STSW*5+4 SAVE ACTIVITY COUNT
- SHN -4
- LPN 17
- STM ERSF
- LDM CBUF+STSW*5+2 SAVE CPU STATUS
- STM RCPA
- LDD CP
- ADN STSW
- CRM CBUF+STSW*5,ON
- ADN SEPW-STSW-1
- CRD CM READ SPECIAL FLAG WORD
- LDN 1 RESET PP QUEUE POINTER
- STM CBUF+STSW*5+4
- LDD CM+2
- STD T3
- LDD CP
- ADN STSW RESTORE *STSW*
- CWM CBUF+STSW*5,ON
- ADN SPCW-STSW-1
- CRD CM
- LDD CM+1 SAVE CALL TYPE
- STM RCPB
- SHN 21-3
- MJN RCP1 IF NO BLOCK TO MOVE
- LDD CM+3
- LPN 37
- ADD CM+4
- ZJN RCP1 IF NO BLOCK TO MOVE
- LDD FL
- ZJN RCP1 IF NO FL
- * LDN DMPL-1 (T1) PREVIOUSLY SET UP CORRECTLY
- * STD T1
- NFA DMPN+1 MOVE *DMP=* BLOCK
- CRM BFMS,T1
- LDD CM+3
- LPN 37
- SHN 6
- ADD RA
- SHN 6
- ADD CM+4
- CWM BFMS,T1
- RCP1 LDD CP
- ADK RFCW
- CRD CM
- LDN 0 CLEAR DM* FILE POINTERS
- STD CM
- STD CM+1
- LDD CP UPDATE *RFCW*
- ADK RFCW
- CWD CM
- ADK SSCW-RFCW RESTORE SCP CONNECTIONS
- CWM SBUF+SCPC,ON
- SFA EJT,EO
- ADK SCHE
- CRD CM
- LDD CM+2
- LPC 7377 CLEAR *DMP=* ROLLOUT COMPLETE FLAG
- STD CM+2
- SFA EJT,EO
- ADK SCHE
- CWD CM
- LDD T3 CHECK FOR RESTART
- SHN 21-13
- MJN RCP2 IF RESTART
- NFA DMPN UPDATE *SPCW*
- CRD CN
- LDD CN+1 CLEAR *1RO* CALLED FLAG AND SSJ= FLAG
- SCN 3
- STD CN+1
- LDN 0 CLEAR REQUEST
- STD CN
- LDD CP
- ADC SPCW
- CWD CN
- LJM RCP8 PROCESS DMP= ROLLIN
- * PROCESS RESTART ROLLIN.
- RCP2 LDD CP CLEAR *SPCW*
- ADC SPCW
- CWD ZR
- LDC LDDI+FS
- STM ERSC
- LDM CBUF+TIAW*5 VALIDATE SUBSYSTEM
- SHN -6
- SBN /REM/MSYS
- MJN RCP3 IF VALID SUBSYSTEM
- LDM CBUF+TIAW*5 CLEAR INCORRECT SUBSYSTEM
- LPN 77
- STM CBUF+TIAW*5
- RCP3 LDD CP VALIDATE FIELD LENGTH PARAMETERS
- ADN FLCW
- CRD CM
- ADN ELCW-FLCW
- CRD CN
- ADN SEPW-ELCW CLEAR SPECIAL ENTRY POINT WORD
- CWD ZR
- LDN 0 CLEAR LAST FILE EXECUTED
- STM RBUF+EOCW*5+0
- LDD CM+2
- SBM CBUF+FLCW*5
- MJN RCP4 IF LAST MFL VALID
- LDD CM+2
- SBM CBUF+FLCW*5+1
- PJN RCP5 IF LAST CM RFL VALID
- RCP4 LDD CP RESET CURRENT CM FL PARAMETERS
- ADN FLCW
- CRM CBUF+FLCW*5,ON
- RCP5 LDD CN+2
- SBM CBUF+ELCW*5
- MJN RCP6 IF EXTENDED MEMORY MFL INCORRECT
- LDD CN+2
- SBM CBUF+ELCW*5+1
- PJN RCP7 IF LAST EXTENDED MEMORY RFL VALID
- RCP6 LDD CP RESET CURRENT ECS FL PARAMETERS
- ADN ELCW
- CRM CBUF+ELCW*5,ON
- RCP7 LDC TRCU UPDATE CONTROL POINT AREA
- RJM UCA
- UJN RCP9 CONTINUE
- * PROCESS DMP= ROLLIN.
- RCP8 LDC TDCU UPDATE CONTROL POINT AREA
- RJM UCA
- * RESTORE CPU PRIORITY IF JOB IS NOT A SUBSYSTEM.
- LDM EJBF+SCLE*5
- SHN -6
- LMN SSSC
- ZJN RCP9 IF JOB IS A SUBSYSTEM
- LDM CBUF+CWQW*5+1
- SHN -11
- LPN 1
- ZJN RCP8.1 IF SET CPU PRIORITY TO SERVICE CLASS VALUE
- LDM CBUF+CWQW*5 GET PRE-ROLLOUT CPU PRIORITY
- LPC 1770
- SHN -3
- RCP8.1 STD CM+4 SET CPU PRIORITY
- LDN /CPS/CPRS SET CPU PRIORITY SUBFUNCTION
- STD CM+1
- MONITOR SJCM
- RCP9 LDC **
- RCPA EQU *-1 (CPU STATUS BYTE OF *STSW*)
- LPN 2
- NJN RCP10 IF CPU ACTIVE
- LDC **
- RCPB EQU *-1 (*SPCW* BYTE 1)
- LPN 4
- LMN 4
- RCP10 STM RIJF
- LDC * DISABLE *1AJ* CALL
- ORG *-1
- LOC RIJI
- UJN RIJ7
- LOC *O
- STM RIJI
- LJM RCPX RETURN
- UCA SPACE 4,10
- ** UCA - UPDATE CONTROL POINT AREA.
- *
- * ENTRY (A) = *RESTOR* TABLE ADDRESS.
- * (CBUF - CBUF+500) = FIRST HALF OF CPA.
- * (RBUF - RBUF+500) = SECOND HALF OF CPA.
- *
- * EXIT CPA RESTORED.
- *
- * USES T1, T2, T3, BFMS - BFMS+500.
- UCA SUBR ENTRY/EXIT
- STM UCAA SET TABLE ADDRESS
- ADN 1
- STM UCAB
- LDD CP PRESET CONTROL POINT AREA
- CRM BFMS,HN
- LDN 0 INITIALIZE TABLE OFFSET
- STD T1
- UCA1 LDM *,T1 SET CPA WORD OFFSET
- * LDM (TABLE),T1
- UCAA EQU *-1
- NJN UCA2 IF NOT TERMINATOR
- LJM UCA6 PROCESS TABLE TERMINATOR
- UCA2 STD T2
- SHN 21-13
- MJN UCA4 IF ENTIRE CM WORD TO MOVE
- LDM *,T1 SET BYTE MASK
- * LDM (TABLE)+1,T1
- UCAB EQU *-1
- STM UCAE
- LMC 7777
- STM UCAC
- LDM BFMS,T2 MASK OLD CPA BYTE
- LPC *
- * LPC -(MASK)
- UCAC EQU *-1
- STD T3
- LDM CBUF,T2
- * LDM RBUF,T2
- UCAD EQU *-1
- LPC *
- * LPC (MASK)
- UCAE EQU *-1
- LMD T3
- STM BFMS,T2
- LDN 2 INCREMENT TABLE OFFSET
- RAD T1
- UCA3 UJN UCA1 LOOP
- UCA4 LDC -4000 MOVE ENTIRE CM WORD
- RAD T2 SET WORD OFFSET
- ADC CBUF
- * ADC RBUF (SECOND HALF OF CPA)
- UCAF EQU *-1
- STM UCAH
- ADC BFMS-CBUF
- * ADC BFMS-RBUF (SECOND HALF OF CPA)
- UCAG EQU *-1
- STM UCAI
- LDD MA
- CWM *,ON
- * CWM (CBUF+(T2)),ON (FIRST HALF OF CPA)
- * CWM (RBUF+(T2)),ON (SECOND HALF OF CPA)
- UCAH EQU *-1
- SBN 1
- CRM *,ON
- * CRM (BFMS+(T2)),ON
- UCAI EQU *-1
- AOD T1 INCREMENT TABLE OFFSET
- UCA5 UJN UCA3 LOOP
- UCA6 LDN 0 CHECK CPA SEGMENT
- * LDN 1 (SECOND HALF OF CPA)
- UCAJ EQU *-1
- NJN UCA7 IF SECOND HALF OF CPA PROCESSED
- AOM UCAJ SET SECOND HALF PROCESSED
- LDD CP REWRITE FIRST HALF OF CPA
- CWM BFMS,HN
- CRM BFMS,HN READ SECOND HALF OF CPA
- LDC RBUF
- STM UCAD
- STM UCAF
- LDC BFMS-RBUF
- STM UCAG
- AOD T1 INCREMENT TABLE OFFSET
- UJN UCA5 LOOP
- UCA7 LDD CP UPDATE SECOND HALF OF CPA
- ADD HN
- CWM BFMS,HN
- LDN LREC*2 RESTORE PP RECALL STACK
- STD T1
- LDD CP
- ADC RECW
- CWM RBUF+RECW*5-100*5,T1
- LJM UCAX EXIT
- TRCU SPACE 4,10
- ** TRCU - TABLE OF RESTART CPA UPDATES.
- TRCU RESTOR ECSW,0,0007
- RESTOR SNSW,0,2000
- RESTOR SNSW,4,7700
- RESTOR MS1W,*
- RESTOR MS1W+1,*
- RESTOR MS1W+2,*
- RESTOR MS1W+3,*
- RESTOR MS1W+4,*
- RESTOR MS2W,*
- RESTOR MS2W+1,*
- RESTOR MS2W+2,*
- RESTOR FLCW,0,*
- RESTOR FLCW,1,*
- RESTOR ELCW,0,*
- RESTOR ELCW,1,*
- RESTOR TIAW,0,7700
- RESTOR TIAW,2,*
- RESTOR TIAW,3,*
- RESTOR TIAW,4,*
- RESTOR EECW,2,*
- RESTOR EECW,3,7737
- RESTOR EECW,*
- RESTOR SEPW,0,0050
- RESTOR JCDW,*
- RESTOR JCRW,*
- RESTOR DBAW,*
- RESTOR LB1W,*
- RESTOR LB2W,*
- RESTOR LB3W,*
- RESTOR EOCW,*
- RESTOR LOFW,0,*
- RESTOR LOFW,1,*
- RESTOR LOFW,2,*
- RESTOR
- TDCU SPACE 4,10
- ** TDCU - TABLE OF DMP= CPA UPDATES.
- TDCU RESTOR SNSW,0,1000
- RESTOR FLCW,*
- RESTOR ELCW,*
- RESTOR TIAW,2,*
- RESTOR TIAW,3,*
- RESTOR TIAW,4,*
- RESTOR PFCW,*
- RESTOR UIDW,*
- RESTOR EECW,*
- RESTOR ALMW,*
- RESTOR ACLW,*
- RESTOR AACW,*
- RESTOR SEPW,*
- RESTOR JCDW,*
- RESTOR JCRW,*
- RESTOR DBAW,*
- RESTOR LOFW,0,*
- RESTOR LOFW,1,*
- RESTOR LOFW,2,*
- RESTOR LB1W,*
- RESTOR
- SPACE 4,10
- * BUFFERS.
- USE BUFFERS
- RBFF EQU *
- RBUF EQU RBFF+2 CONTROL POINT AREA BUFFER (2ND PART)
- BUFL EQU RBUF+500 BUFFER LENGTH
- SPACE 4,10
- * CHECK FOR OVERFLOW.
- ERRNG BFMS-BUFL OVERFLOW INTO *BFMS*
- OVERFLOW E1RI,EPFW
- SPACE 4,10
- QUAL *
- SPACE 4,10
- TTL 1RI/3RF - PROCESS TERMINATION ERRORS.
- TITLE 1RI/3RF - PROCESS ERROR.
- QUAL 3RF
- IDENT 3RF,PREX
- *COMMENT 1RI - PROCESS ERROR.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- SPACE 4,10
- O3RF MAX /3RG/BUFL,/3RH/E3RH
- ORG O3RF+5
- PRE SPACE 4,30
- ** PRE - PROCESS ERROR.
- *
- * THIS ROUTINE IS CALLED WHENEVER AN ERROR OCCURS THAT MAY
- * PREVENT NORMAL COMPLETION OF THE ROLLIN. REFER TO ROUTINE
- * *MSR* IN THE RESIDENT OVERLAY FOR A DESCRIPTION OF THE
- * CIRCUMSTANCES LEADING TO A CALL OF *3RF*.
- *
- * ENTRY (CI) = SECTOR COUNT.
- * (DS) = DRIVER STATUS FROM CELL *RDCT*.
- * (EF) = ERROR FLAG FROM EJT.
- * (EO) = EJT ORDINAL.
- * (CN - CN+4) = MASS STORAGE PARAMETERS.
- *
- * EXIT THIS ROUTINE WILL RETURN TO *MSR* ONLY IF THE ROLLIN
- * CAN BE CONTINUED. EXIT CONDITIONS UPON RETURN TO
- * *MSR* ARE AS FOLLOWS -
- * (A) = 0 IF I/O ON THE ROLLOUT FILE SHOULD CONTINUE.
- * = NON-ZERO IF THE ROLLIN SHOULD CONTINUE
- * WITHOUT READING THE ROLLOUT FILE.
- * (EF) = NEW ERROR FLAG.
- *
- * USES EF, T1, CM - CM+4, IR - IR+4, T4 - T7.
- *
- * CALLS SNS, 1RJ.
- *
- * MACROS EXECUTE, MONITOR, NFA, SETMS, SFA.
- PRE SUBR ENTRY
- LDD MA RESTORE MASS STORAGE PARAMETERS
- CWD CN
- CRD T3
- SETMS IO,NS LOAD DRIVER IN CASE I/O TO CONTINUE
- LDD IR+2
- NJP PRE6 IF DMP= CALL
- STD CM+2
- LDM RNS
- SBN 2
- LMC RS1.
- NJN PRE0 IF NFL NOT ROLLED IN
- LDD CI
- SBM CBUF+FLIW*5+2
- SBM CBUF+FLSW*5
- MJN PRE1 IF NFL NOT ROLLED IN
- LJM PRE3 CHECK ERROR FLAG
- PRE0 LMC /3RH/RS2.&RS1.
- NJN PRE1 IF NOT POSITIONED AT TERMINAL OUTPUT
- LDD DS
- SHN 0-13
- ZJP PREX IF SECTOR LINKAGE IS CORRECT
- PRE1 SFA EJT,EO SET EJT ENTRY ADDRESS IN *UTEM* CALL
- STD CM+4
- SHN -14
- STD CM+3
- LDN PREAL SET *UTEM* PARAMETER COUNT
- STD CM+1
- LDD T5 STORE EST ORDINAL IN *UTEM* CALL
- RAM PREA+1*5+3
- LDD MA
- CWM PREA,CM+1
- MONITOR UTEM
- LDN /CPS/CCPS&/CPS/DPPS CLEAR CONTROL POINT AND DROP PP
- PRE2 STM PREB SAVE *JACM* FUNCTION
- LDD CP
- ADN FLSW
- CRD CM
- LDD CM
- ZJN PRE2.1 IF NO NFL ASSIGNED
- LDN 0 RELEASE NFL
- RJM NFL
- PRE2.1 RJM RLS RELEASE MEMORY
- LDM EJBF+5*JSNE+4
- LPN 76
- LMN SIJS*2
- NJN PRE2.2 IF NOT SUBSYSTEM SWAP IN REQUEST
- LDN RC46 INDICATE SWAP IN NOT POSSIBLE
- RJM SNS
- PRE2.2 LDC **
- PREB EQU *-1
- STD CM+1
- MONITOR JACM
- LJM PPR EXIT TO PP RESIDENT
- PRE3 LDD EF
- ZJP PRE1 IF NO ERROR FLAG IS SET
- PRE4 LDK JSET SET JOB STEP ABORT ERROR FLAG
- SBD EF
- MJN PRE5 IF EXISTING ERROR FLAG .GT. *JSET*
- RAD EF SET *JSET* ERROR FLAG
- PRE5 LJM PREX RETURN, CONTINUE ROLLIN
- PRE6 LDM CPAB
- ZJP PRE7 IF CONTROL POINT AREA NOT ROLLED IN
- LDD DS
- SHN 21-12
- MJN PRE4 IF NOT RECOVERABLE FAILURE
- LDD EF
- NJN PRE4 IF ERROR FLAG IS SET
- STD CM+1 CLEAR JOB ADVANCE
- LDN DMPL RESTORE DMP= BLOCK TO ORIGINAL STATE
- STD T1
- LDD RA
- SHN 6
- ADN SPPR
- CRM BFMS,T1
- NFA DMPN
- CWM BFMS,T1
- MONITOR JACM
- LDK ZERL PLACE *1AJ* CALL IN INPUT REGISTER
- CRD IR
- LDC 3RJ1A
- STD IR
- SHN -6
- SCN 77
- STD IR+1
- LDD IA
- CWD IR
- EXECUTE 1AJ,=
- LDD T5 SET EST ORDINAL FOR *1RJ*
- STD IR+4
- EXECUTE 1RJ ROLLOUT JOB
- PRE7 LDD CP CLEAN UP CONTROL POINT AREA
- ADN UIDW
- CWD ZR
- ADN CSSW-UIDW CLEAR INPUT FILE POINTERS
- CWD ZR
- LDN FPFW-SRUW CLEAR ACCOUNTING WORDS
- STD CM
- PRE8 LDD CP
- ADN SRUW
- ADD CM
- CWD ZR
- SOD CM
- PJN PRE8 IF NOT END OF ACCOUNTING WORDS
- LDD CP CLEAR SECOND BLOCK OF ACCOUNTING WORDS
- ADK MPAW
- CWD ZR
- ADN AUCW-MPAW
- CWD ZR
- AOD ZR+4 SET FST OF DM* FILE NOT BUSY
- NFA FA,R
- ADN FSTL
- CWD ZR
- LDN SYET SET *SYET* ERROR FLAG
- STD CM+1
- MONITOR CEFM
- LDN /CPS/DPPS
- LJM PRE2 CLEAR JOB ADVANCE AND DROP PP
- * *UTEM* PARAMETER BLOCK.
- PREA VFD 1/0,5/JSNE,6/5 *ERJS* JOB STATUS
- VFD 6/1,6/0
- CON 0,0,ERJS
- VFD 1/0,5/SCHE,6/30D *WISE* EVENT
- VFD 6/0,6/0
- VFD 6/0,6/77
- VFD 3/7,9/0
- CON WISE
- VFD 1/0,5/SCLE,6/1 CLEAR FORCED ROLLIN
- VFD 6/52D,6/0
- CON 0,0,0
- PREAL EQU */5-PREA/5 *UTEM* PARAMETER COUNT
- SPACE 4,10
- ** COMMON DECKS.
- *CALL COMPNFL
- *CALL COMPRLS
- SPACE 4,10
- * CHECK FOR OVERFLOW.
- USE OVERFLOW
- ERRNG BFMS-* OVERFLOW INTO BUFFER
- SPACE 4,10
- OVERFLOW PREX,EPFW
- SPACE 4,10
- QUAL *
- TTL 1RI - ROLLIN JOB.
- SPACE 4,10
- END
cdc/nos2.source/opl871/1ri.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator