cdc:nos2.source:opl871:1mb
Table of Contents
1MB
Table Of Contents
- [00007] 1MB - HARDWARE ERROR PROCESSOR.
- [00009] HARDWARE ERROR PROCESSOR.
- [00098] COMMON SUBROUTINES.
- [00100] COMMON - COMMON CODE FOR *1MB* AND *1SC*.
- [00108] CKC - CHECK FOR *1CK* COMPLETE.
- [00128] CKP - CHECKPOINT SYSTEM.
- [00174] CSH - CHECKPOINT SYSTEM, SET STEP, AND HANG.
- [00202] DPP - DROP PP.
- [00255] RSM - REQUEST STEP MODE.
- [00295] TBLM - CREATE TABLE ENTRY MACRO.
- [00318] EMBE - ERROR MESSAGE TABLE ENTRY.
- [00334] RPTR - CONVERT ADDRESS FROM R-REGISTER FORMAT.
- [00393] MAINTENANCE REGISTER PROCESSING.
- [00498] TDFA - TABLE OF *DFT* ANALYSIS CODES.
- [00527] CNR - CHECK FOR NOS REQUEST.
- [00572] CRQ - CHECK *DFT* REQUEST FOR SPECIAL PROCESSING.
- [00713] OS ACTION CODE PROCESSING ROUTINES.
- [00724] ENW - ENVIRONMENT WARNING.
- [00759] LPW - LONG POWER WARNING.
- [00767] SPW - SHORT POWER WARNING.
- [00780] WCL - WARNING CLEAR.
- [00826] FIE - FATAL IOU ERROR.
- [00851] NIE - NOS/VE IOU ERROR.
- [00862] MOB - MULTIPLE ODD BIT ERROR.
- [00870] OS ACTION CODE SUBROUTINES.
- [00872] CCI - CLEAR M/R CONTROL WORD INTERLOCK.
- [00892] CCM - CREATE CONSOLE MESSAGE.
- [00995] CHC - CONVERT HEXADECIMAL CHARACTER TO DISPLAY CODE.
- [01011] CTC - CONVERT TWO CHARACTERS.
- [01038] CTD - CONVERT TWO DIGITS.
- [01062] RER - READ *EID* REGISTER.
- [01125] RERA - TABLE OF MESSAGE CHARACTERS.
- [01141] SCM - SET ANALYSIS CODE IN MESSAGE.
- [01166] WWC - WAIT FOR WARNING CLEAR.
- [01200] MAINTENANCE REGISTER PROCESSING SUBROUTINES.
- [01202] CBM - COMPLETE *BML* MESSAGES.
- [01242] CPM - CLEAR PP MEMORY.
- [01266] CTH - CHECK THRESHOLD EXCEEDED.
- [01310] CTP - CHECK FOR TIME AND CHECKPOINT PROCESSING.
- [01366] C9E - CHECK SPECIAL MODEL 990 ERRORS.
- [01420] DOA - DETERMINE OS ACTION.
- [01469] DOB - GET DFT/OS BUFFER ADDRESS.
- [01477] DPR - DUMP PP REGISTERS.
- [01544] DSP - GET *EICB* ADDRESS.
- [01555] FNR - FIND NON-REGISTER DATA.
- [01591] FOM - FIND OLDEST M/R BUFFER ENTRY.
- [01687] FSS - FIND SUPPORTIVE STATUS DATA.
- [01722] GPB - GET POINTER TO *BML* BUFFER.
- [01757] IMD - ISSUE MODEL DEPENDENT DATA *BML* MESSAGE.
- [01776] LDT - LOG DATA STRUCTURE.
- [01815] LED - LOAD AND EXECUTE *DFT*.
- [01978] LMD - LOG MODEL DEPENDENT BUFFER.
- [02055] LMR - LOG MAINTENANCE REGISTERS.
- [02157] LNR - LOG NON-REGISTER DATA.
- [02189] LSS - LOG SUPPORTIVE STATUS DATA.
- [02226] LTE - LOG TABLE ENTRIES.
- [02276] MDB - LOG MODEL DEPENDENT BUFFER DATA.
- [02360] MRB - GET M/R BUFFERS ADDRESS.
- [02369] MRER - MAINTENANCE REGISTER ERROR HANDLER.
- [02405] PMB - PACK MAINTENANCE REGISTER TO *BML*.
- [02443] PMR - UNPACK M/R INTO *BCMR*.
- [02470] PWB - PACK WORD TO BUFFER.
- [02506] RMR - READ MAINTENANCE REGISTER.
- [02538] SCA - SET M/R BUFFER CONTROL WORDS ADDRESS.
- [02563] SDA - SET NOS REQUEST HEADER ADDRESS.
- [02572] SID - SET SECDED ID TABLE INFORMATION.
- [02628] UCC - UPDATE CTI CLOCK.
- [02656] WLB - WRITE LAST *BML* MESSAGE.
- [02707] OVERLAYABLE SUBROUTINES.
- [02711] SBA - SET BUFFER ADDRESSES.
- [02828] COMMON PRESET.
- [02830] PRESET - COMMON PRESET CODE FOR *1MB* AND *1SC*.
- [02924] PRESET.
- [02952] STA - SET TABLE ADDRESSES.
- [03158] BIS - BUILD ID SUMMARY TABLE ADDRESS.
- [03181] CFE - CHECK FOR FATAL ERRORS.
- [03255] IBM - ISSUE BML MESSAGE.
- [03389] ODW - OUTPUT DESCRIPTOR WORD TO SCR.
- [03408] OLB - OUTPUT LOG TO *BML*.
- [03475] PTP - PERFORM TIME PROCESSING.
- [03535] RSC - READ S/C REGISTER(S).
- [03598] PEF - CHECK FOR POWER OR ENVIRONMENTAL FAILURE.
- [03644] PSB - PROCESS SINGLE BIT SECDED ERRORS.
- [03683] TEB - CLEAR TEST/ERROR BITS IN S/C.
- [03732] CHN - CHANGE S/C REGISTER CHANNEL.
- [03751] TPE - TEST POWER FAILURE AND ENVIRONMENTAL BITS.
- [03823] TRB - TEST S/C REGISTER BIT.
- [03850] UBS - UPDATE BIT STATUS.
- [03957] TSCR - TABLE FOR THE CONTENTS OF THE S/C REGISTERS.
- [03967] PCS - PRESET FOR 1SC.
- [04077] CFP - CHECK FOR *FLPP* ERROR.
- [04175] MAIN PROGRAM.
- [04199] SUBROUTINES.
- [04201] CMC - CHECK MASS STORAGE CHANNEL.
- [04268] PRESET PROGRAM.
- [04270] PRS - PRESET PROGRAM.
- [04342] IHD - ISSUE HOUR AND DATE TO DAYFILES.
- [04368] CCO - CLEAR COUNTS IN EST/MST ENTRIES.
- [04443] CRC - CLEAR RELOAD COUNTS IN CONTROLWARE TABLE.
- [04505] PES - PROCESS ESM SECDED ERROR LOG.
- [04643] OLB - OUTPUT LOG TO *BML*.
- [04706] WCF - WAIT FOR CHANNEL FULL.
- [04723] PCI - PRESET CHANNEL INSTRUCTIONS.
Source Code
- 1MB.txt
- IDENT 1MB,/1MB/MEP
- PERIPH
- BASE MIXED
- SST SSCP
- *COMMENT 1MB - HARDWARE ERROR PROCESSOR.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TITLE 1MB - HARDWARE ERROR PROCESSOR.
- SPACE 4,10
- *** 1MB - HARDWARE ERROR PROCESSOR.
- * J. D. LANGE. 74/05/10.
- * C. R. LUND. 80/01/07.
- * P. J. ENGLE. 84/09/10.
- * M. S. PESCHMAN 85/07/24.
- SPACE 4,30
- *** EITHER *1MB* OR *1SC* IS CALLED BY THE SYSTEM MONITOR
- * TO PERFORM FUNCTIONS WHICH CAN NOT BE PROCESSED BY THE
- * MONITOR.
- * FOR MAINFRAMES WITH MAINTENANCE REGISTERS, ERRORS ARE
- * PROCESSED BY *1MB* IN ROUTINE *MEP*. CORRECTED MEMORY
- * ERRORS ARE HANDLED COMPLETELY BY *1MB* WHO BUILDS THE TABLE
- * OF UNIQUE ID-S AS IS DONE FOR SECDED ERRORS.
- * *1SC* PERFORMS SCR PROCESSING ON FATAL SCR ERRORS
- * AND ON UNIQUE SECDED ERRORS ONLY. *1SC* FIRST CHECKS FOR
- * FATAL ERRORS, AND (IF NONE HAVE OCCURRED) THEN INCREMENTS
- * THE APPROPRIATE COUNTER IN CM WORD *SCRL* FOR UNIQUE
- * SECDED ERRORS, CLEARS THE ERROR BIT IN THE SCR, AND DROPS
- * THE PP. IF MONITOR HAS DETERMINED THAT A SECDED ERROR
- * WAS NOT UNIQUE (I.E. - THE ERROR WAS CAUSED BY THE SAME
- * MEMORY LOCATION PREVIOUSLY THAT HOUR), MONITOR WILL
- * INCREMENT THE APPROPRIATE COUNTERS IF THOSE COUNTERS HAVE
- * NOT EXCEEDED THEIR THRESHOLDS. WHEN MONITOR HAS
- * FINISHED PROCESSING NON-UNIQUE ERRORS, IT WILL CLEAR
- * THE SECDED ERROR BIT AND CONTINUE IN ITS PROCESSING LOOP.
- * IN A SYSTEM EXPERIENCING FREQUENT SINGLE BIT SECDED
- * ERRORS, THIS PROCESS OF CHECKING FOR ERROR UNIQUENESS IN
- * MONITOR WILL REDUCE THE NUMBER OF CALLS TO *1SC* TO A
- * MAXIMUM OF *UIDL* PER HOUR (SEE *COMSSCR*).
- * FOR CYBER 176 MACHINES, LCME SINGLE BIT SECDED
- * ERRORS ARE PROCESSED IN A SIMILAR MANNER.
- * FOR MAINFRAMES WITH AN ESM MAINTENANCE PORT
- * DEFINED, *2TH* WILL LOG THE CONTENTS OF THE ESM
- * SECDED LOG TO THE BML AT THE END OF EVERY HOUR.
- * SCR PROCESSING AND TERMINOLOGY IS ALSO USED TO
- * REFER TO CYBER 170 - 865/875 MAINTENANCE REGISTERS.
- SPACE 4,10
- **** DIRECT LOCATION ASSIGNMENTS.
- T8 EQU 16 TEMPORARY
- T9 EQU 17 TEMPORARY
- CN EQU 20 - 24 CM BUFFER (5 LOCATIONS)
- WB EQU CN - CN+4 FOR *COMPIMB* COMPATIBILITY
- MF EQU 25 MACHINE FLAG
- NB EQU 26 NUMBER OF PP BYTES IN *BML* MESSAGE
- PN EQU 27 PP NUMBER * 100B
- SC EQU 30 - 34 S/C PARAMETER WORD *SCRL* (5 LOCATIONS)
- MI EQU 60 - 64 MAINFRAME IDENTIFICATION
- EM EQU 65 LAST MASS STORAGE EST ORDINAL + 1
- ** DIRECT CELLS FOR STATUS AND CONTROL REGISTER PROCESSING.
- QUAL 1SC
- CH EQU 40 - 41 S/C REGISTER CHANNELS
- ER EQU 42 NUMBER OF S/C REGISTER ERRORS
- NP EQU 43 NUMBER OF PP-S IN SYSTEM
- NW EQU 44 NUMBER OF CM WORDS IN *BML* MESSAGE
- QUAL *
- ** DIRECT CELLS FOR MAINTENANCE REGISTER PROCESSING.
- QUAL 1MB
- BP EQU 40 NEXT WORD IN *BML* MESSAGE TO USE
- EC EQU 41 ELEMENT ACCESS CODE
- MB EQU 42 - 43 M/R BUFFER CONTROL WORD ADDRESS
- MS EQU 44 - 45 M/R BUFFER ADDRESS
- RN EQU 46 REGISTER NUMBER
- DC EQU 60 - 64 *DFT* CONTROL WORD
- QUAL *
- ****
- SPACE 4,10
- * ASSEMBLY CONSTANTS.
- QUAL$ EQU 0 DO NOT QUALIFY COMMON DECKS
- MF70 EQU 0 CYBER 70
- ERRNZ MF70 CODE DEPENDS ON ZERO VALUE
- MF170 EQU 1 CYBER 170
- MF700 EQU 2 CYBER 170 - 700 SERIES
- MF865 EQU 3 CYBER 170 - 865
- MF875 EQU 4 CYBER 170 - 875
- MF180 EQU 5 CYBER 180 CLASS MACHINE
- MF176A EQU 6 CYBER 176 LEVEL A
- MF176B EQU 7 CYBER 176 LEVEL B
- MFMAX EQU 10B MAXIMUM MAINFRAME TYPE + 1
- TITLE COMMON SUBROUTINES.
- COMMON SPACE 4,10
- ** COMMON - COMMON CODE FOR *1MB* AND *1SC*.
- *
- * THIS MACRO PROVIDES SIMILAR CODE FOR *1MB* AND *1SC*.
- COMMON MACRO
- COMMON RMT
- CKC SPACE 4,10
- ** CKC - CHECK FOR *1CK* COMPLETE.
- *
- * ENTRY (SC+2) = *1CK* IR ADDRESS.
- *
- * EXIT *1CK* COMPLETE.
- *
- * USES CM - CM+4.
- CKC SUBR ENTRY/EXIT
- CKC1 LDD SC+2 READ *1CK* IR
- CRD CM
- LDD CM+1
- SCN 77
- SHN 6
- LMD CM
- LMC 3RK1C
- NJN CKCX IF *1CK* COMPLETE
- UJN CKC1 LOOP
- CKP SPACE 4,15
- ** CKP - CHECKPOINT SYSTEM.
- *
- * ENTRY (SC+2) = *1CK* IR ADDRESS.
- *
- * EXIT EXITS TO *1CK* ON INITIAL CALL.
- * CHECKPOINT IN PROGRESS BIT SET IN *EICB*.
- *
- * USES CM - CM+4, SC+2.
- *
- * CALLS /1MB/DSP, *1CK*.
- *
- * MACROS EXECUTE.
- CKP SUBR ENTRY/EXIT
- LDD SC+2 CHECK FOR *1CK* ALREADY CALLED
- NJN CKPX IF *1CK* ALREADY CALLED
- .A IFC EQ,/"QUAL"/1MB/
- RJM /1MB/DSP GET *EICB* POINTER
- ZJN CKP1 IF NO *EICB*
- ADN D7ST
- CRD CM READ STATUS WORD
- LDD CM
- SCN 4
- LMN 4 SET CHECKPOINT IN PROGRESS
- STD CM
- RJM /1MB/DSP
- ADN D7ST
- CWD CM
- .A ENDIF
- CKP1 EXECUTE 1CK,=
- LDD IA CALL *1CK*
- CWM CKPA,ON
- SCN 7
- STD SC+2
- LDM CKPA+2
- LMN 10
- CKP2 ZJP DPP3 IF TO RECALL *1MB*
- LMN 11&10
- ZJN CKP2 IF TO RECALL *1MB*
- LMN 13&11
- ZJN CKP2 IF TO RECALL *1MB*
- LJM DPP2 EXIT TO *1CK* AND ENABLE *1MB* CALL
- CKPA VFD 18/0L1CK,6/0,12/1,24/0 SYSTEM CHECKPOINT CALL
- CSH SPACE 4,10
- ** CSH - CHECKPOINT SYSTEM, SET STEP, AND HANG.
- *
- * ENTRY AT *CSH1* FOR CYBER 176 DOUBLE BIT *SECDED* ERROR.
- *
- * CALLS CKC, CKP, RSM.
- CSH SUBR ENTRY (DOES NOT RETURN)
- .A IFC EQ,/"QUAL"/1MB/
- RJM /1MB/DPR DUMP PP REGISTERS
- .A ENDIF
- RJM CKP ATTEMPT SYSTEM CHECKPOINT
- LDD CP
- ADN MS2W DISPLAY * FATAL ERROR.* MESSAGE
- CWM CSHM,TR
- CSHA EQU *-1 (MESSAGE ADDRESS)
- RJM CKC WAIT FOR *1CK* TO FINISH
- .A IFC EQ,/"QUAL"/1MB/
- RJM /1MB/DPR DUMP PP REGISTERS
- .A ENDIF
- CSH1 RJM RSM STEP SYSTEM
- CSH2 LDD CP DISPLAY *FATAL ERROR* MESSAGE AGAIN
- ADN MS2W
- CWM CSHM,TR
- CSHB EQU *-1 (MESSAGE ADDRESS)
- DELAY 5*8D DELAY 5 SECONDS (FOR OTHER MESSAGES)
- UJN CSH2 DISPLAY MESSAGE AGAIN
- DPP SPACE 4,20
- ** DPP - DROP PP.
- *
- * ENTRY (SC - SC+4) = *SCRL* WORD WITH MONITOR LOCK-OUT BIT
- * SET.
- *
- * EXIT (SC - SC+4) = *SCRL* WORD WITH MONITOR LOCK-OUT BIT
- * CLEARED.
- * = WRITTEN TO CENTRAL MEMORY.
- * PP DROPPED.
- * 16-BIT INSTRUCTIONS CLEARED, IF PRESENT.
- * EXIT TO *PPR*.
- *
- * NOTE THE *DPPM* FUNCTION IN THIS ROUTINE IS
- * EXECUTED OUT OF NORMAL ORDER TO PREVENT
- * PP SATURATION WHEN *1MB* IS STEPPED
- * ON A *DPPM*.
- .A IFC EQ,/"QUAL"/1MB/
- DPP5 LJM LED RELOAD DFT FOR SECOND TOP OF HOUR
- .A ENDIF
- DPP MONITOR DPPM DROP PP
- DPPA EQU DPP
- * UJN DPP5 (SECOND PASS TOP OF HOUR)
- DPP1 LDN 0 CLEAR *1CK* IR ADDRESS
- STD SC+2
- DPP2 LDD SC CLEAR MONITOR LOCK-OUT BIT
- LPC 3777
- STD SC
- DPP3 LDC SCRL UPDATE *SCRL*
- CWD SC
- .A IFC EQ,/"QUAL"/1MB/
- DPPB LDN 0
- * LDN 1 (16-BIT INSTRUCTIONS PRESENT)
- ZJN DPP4 IF NO 16-BIT INSTRUCTIONS
- RJM CPM CLEAR PP MEMORY
- LDC 400000B+LINS ADDRESS OF INSTRUCTION TABLE
- RJM DLI CLEAR 16-BIT INSTRUCTIONS
- .A ENDIF
- DPP4 LJM PPR EXIT TO PP RESIDENT
- IBM SPACE 4,10
- ** *BML* MESSAGE BUFFER.
- IBMF VFD 12/0,12/0,6/0,6/0,24/0 MESSAGE ID/SYMPTOM CODE
- IBMG VFD 12/0,9/0,1/0,2/0,36/0 MESSAGE CONTINUATION BIT
- IBMH VFD 60/0 BML MESSAGE BUFFER (4 CM WORDS)
- VFD 60/0
- VFD 60/0
- VFD 60/0
- IBMHL EQU * END OF BML BUFFER
- RSM SPACE 4,10
- ** RSM - REQUEST STEP MODE.
- *
- * ENTRY (SC - SC+4) = (SCRL).
- *
- * EXIT STEP MODE SET.
- *
- * USES CM - CM+4, SC - SC+4.
- *
- * MACROS MONITOR.
- RSM SUBR ENTRY/EXIT
- LDD SC
- SHN 21-11
- MJN RSMX IF STEP ALREADY REQUESTED
- LDD TH SET REQUEST BIT AND WRITE SCRL
- RAD SC
- LDC SCRL
- CWD SC
- LDD SC
- SHN 21-10
- MJN RSMX IF STEP SET
- LDN 0 CLEAR EJT ORDINAL
- STD CM+2
- LDN DPPM STEP ON DROP PP
- STD CM+3
- LMD TH
- STD CM+4
- LDN ESPS SET EMERGENCY STEP SUBFUNCTION
- STD CM+1
- MONITOR DSRM SET STEP MODE
- LDC SCRL READ *SCRL*
- CRD SC
- UJN RSMX RETURN
- COMMON RMT
- COMMON ENDM
- SPACE 4,10
- * MACROS.
- TBLM SPACE 4,10
- ** TBLM - CREATE TABLE ENTRY MACRO.
- *
- *NAM TBLM
- *
- * ENTRY NAM = TABLE NAME.
- *
- * EXIT NAM_E MACRO DEFINED.
- PURGMAC TBLM
- MACRO TBLM,NAM
- PURGMAC NAM_E
- NAM_E MACRO ADDR
- LOCAL A
- MACREF NAM_E
- NOREF A
- A EQU ADDR
- T_NAM RMT
- CON A
- RMT
- TBLM ENDM
- EMBE SPACE 4,10
- ** EMBE - ERROR MESSAGE TABLE ENTRY.
- *
- * THIS MACRO GENERATES AN ENTRY IN REMOTE LIST *TEMB*
- * THAT CONTAINS THE ADDRESS OF AN INSTRUCTION WHICH
- * REQUIRES THE FWA OF THE ERROR MESSAGE TABLE.
- *
- * EMBE ADDR
- *
- * ENTRY (ADDR) = ADDRESS OF INSTRUCTION.
- *
- * EXIT ADDRESS IS ADDED TO THE REMOTE BLOCK *TEMB*.
- EMB TBLM
- SPACE 4,10
- RPTR SPACE 4,15
- ** RPTR - CONVERT ADDRESS FROM R-REGISTER FORMAT.
- *
- * RPTR DC,ADDR
- *
- * ENTRY *DC* = DIRECT CELL LOCATION OF R-REGISTER FORMAT
- * ADDRESS (R-UPPER IN *DC*+1 IS ASSUMED = 0).
- * *ADDR* = LOCATION TO STORE CONVERTED ADDRESS.
- *
- * EXIT (ADDR - ADDR+1) = CONVERTED ADDRESS.
- * (A) = CONVERTED ADDRESS, IF *ADDR* NOT SPECIFIED.
- PURGMAC RPTR
- RPTR MACRO D,A
- LDD D+2 R-LOWER
- SHN 6
- LMD D OFFSET
- .A IFC NE,$A$$
- STM A+1
- SHN -14
- RAM A
- .A ENDIF
- RPTR ENDM
- ** COMMON DECKS.
- *CALL COMPMAC
- RICHI$ BSS 0
- *CALL COMPCHI
- *CALL COMPIOU
- *CALL COMPMRM
- *CALL COMSCPS
- *CALL COMSDFS
- LIST X
- *CALL COMSDFT
- LIST *
- QUAL DSL
- *CALL COMSDSL
- QUAL *
- *CALL COMSDST
- *CALL COMSEVT
- *CALL COMSIOU
- *CALL COMSMSC
- QUAL MSP
- *CALL COMSMSP
- QUAL *
- *CALL COMSMST
- *CALL COMSPIM
- *CALL COMSREM
- QUAL SSD
- *CALL COMSSSD
- QUAL *
- LIST X
- *CALL COMSSCR
- LIST *
- QUAL 1DS
- *CALL COMS1DS
- QUAL *
- TITLE MAINTENANCE REGISTER PROCESSING.
- *** MEP - MAINTENANCE CHANNEL ERROR PROCESSOR.
- *
- * *MEP* IS THE MAIN DRIVER THAT PROCESSES THE LOGGING OF ERRORS
- * THAT WERE DETECTED BY *DFT*. *1MB* IS CALLED BY *MTR* TO
- * LOAD *DFT* IN THE NON-DEDICATED CASE. *1MB* WILL REACT TO
- * THE OS ACTION CODES SUPPLIED BY *DFT* AND LOG THE MAINTENANCE
- * REGISTERS TO THE *BML*.
- SPACE 4,10
- *** DAYFILE MESSAGES.
- *
- *
- * * 1MB - CALL ERROR.* = *1MB* WAS CALLED WITH AN ILLEGAL
- * FUNCTION BIT CODE.
- SPACE 4,20
- *** SYSTEM CONTROL POINT MESSAGES.
- *
- *
- * HH.MM.SS ERR=DEMMXXXXXXXX
- *
- * HH.MM.SS = TIME THE ERROR WAS DETECTED, IF VERSION 4 OR ABOVE
- * *DFT* AND THE TIME WAS AVAILABLE FROM THE WALL
- * CLOCK CHIP.
- * = TIME THE ERROR WAS LOGGED BY *1MB*, IF *DFT*
- * VERSION 3, OR THE TIME WAS NOT AVAILABLE TO *DFT*.
- *
- * E = ELEMENT SPECIFIER.
- * = C, FOR PROCESSOR 0.
- * = D, FOR PROCESSOR 1.
- * = I, FOR IOU 0.
- * = J, FOR IOU 1.
- * = M, FOR MEMORY.
- * = A, FOR *DFT* INTERNAL ERROR.
- *
- * MM = MODEL NUMBER OF THE SPECIFIED ELEMENT.
- * THIS FIELD IS NOT PRESENT IF THE ELEMENT SPECIFIER IS
- * *A*.
- *
- * XXXXXXXX = MODEL DEPENDENT DATA FURTHER DESCRIBING THE ERROR.
- * THIS NORMALLY CONSISTS OF THE THREE CHARACTER
- * *DFT* ANALYSIS CODE.
- *
- *
- * IN THE FOLLOWING MESSAGES, THE HEXADECIMAL NUMBER IN THE
- * MESSAGE IS THE *DFT* ANALYSIS CODE WHICH CAUSED THE MESSAGE.
- *
- * *(204) FATAL CPU ERROR*
- * *(215) FATAL MCH ERROR*
- *
- * THE FOLLOWING MESSAGE IS POSTED WHEN A POWER OR ENVIRONMENT
- * WARNING HAS CLEARED.
- *
- * *POWER/ENVIRONMENT NORMAL*
- SPACE 4,10
- ORG PPFW
- QUAL 1MB
- MEP BSS 0 ENTRY
- LJM MEP1 PRESET
- * GLOBAL STORAGE.
- DFTV CON 0 *DFT* VERSION (0 = VERSION 3)
- SSCW CON 0,0 SUPPORTIVE STATUS CONTROL WORD ADDRESS
- SPACE 4,10
- ** COMMON SUBROUTINES.
- COMMON
- LIST D
- COMMON HERE
- LIST *
- SPACE 4,10
- * COMMON DECKS WITH NO 16-BIT INSTRUCTIONS.
- *CALL COMPMRA
- *CALL COMPACS
- *CALL COMT8AD
- SPACE 4,10
- * SYSTEM CONTROL POINT MESSAGES.
- MSFS DATA 28C HH.MM.SS.ERR=XXXXXXXXXXXX
- CSHM EQU MSFS DEFAULT *CSHM* MESSAGE
- MSCP DATA C*(204) FATAL CPU ERROR*
- MSME DATA C*(215) FATAL MCH ERROR*
- MSPN DATA C*POWER/ENVIRONMENT NORMAL*
- TOSC SPACE 4,10
- ** TABLE OF OS ACTION CODES.
- TOSC INDEX
- INDEX EWAC,ENW ENVIRONMENT WARNING
- INDEX LPAC,LPW LONG POWER WARNING
- INDEX SPAC,SPW SHORT POWER WARNING
- INDEX WCAC,WCL WARNING CLEAR
- INDEX FIAC,FIE FATAL IOU ERROR
- INDEX NVAC,NIE NOS/VE IOU ERROR
- INDEX UMAC,MEP6 FATAL CM ERROR
- INDEX MBAC,MOB MULTIPLE ODD BIT ERROR
- INDEX UPAC,MEP6 FATAL CPU ERROR
- INDEX UIAC,FIE UNCORRECTED IOU ERROR
- INDEX MXAC
- TDFA SPACE 4,10
- ** TDFA - TABLE OF *DFT* ANALYSIS CODES.
- *
- *T 12/ *DFT* CODE, 12/ ACTION, 12/ ROUTINE
- *
- * FOR *DFT* VERSION 4, OR ABOVE THE PROCESSING ROUTINE IS
- * SELECTED BY FINDING A TABLE ENTRY WITH A *DFT* ANALYSIS CODE
- * AND OS ACTION CODE MATCHING THOSE PASSED BY *DFT*. IF NO
- * MATCH IS FOUND, ROUTINE *MSC* WILL BE SELECTED. THE TABLE
- * MUST BE IN ASCENDING ORDER BY ANALYSIS CODE.
- TDFA BSS 0
- CON 4,S7AC,FIE C170 UNCORRECTED IOU ERROR (NIO PP)
- CON 4,S8AC,NIE C180 UNCORRECTED IOU ERROR (NIO PP)
- CON 6,SSAC,FIE FATAL IOU ERROR (NIO PP)
- CON 0#8,SSAC,FIE FATAL IOU ERROR (CIO PP)
- CON 0#9,S7AC,FIE C170 UNCORRECTED IOU ERROR (CIO PP)
- CON 0#9,S8AC,NIE C180 UNCORRECTED IOU ERROR (CIO PP)
- CON 0#105,SSAC,MOB MULTIPLE ODD BIT MEMORY ERROR
- CON 0#106,SSAC,MOB PARTIAL WRITE PARITY ERROR
- CON 0#21E,SSAC,MOB PARTIAL WRITE PARITY ERROR (990)
- CON 0#701,ISAC,ENW ENVIRONMENT WARNING
- CON 0#702,ISAC,LPW LONG POWER WARNING
- CON 0#703,SSAC,SPW SHORT POWER WARNING
- CON 0#704,RSAC,WCL ENVIRONMENT WARNING CLEAR
- CON 0#705,RSAC,WCL LONG POWER WARNING CLEAR
- CON 0#706,USAC,WCL SHORT POWER WARNING CLEAR
- CON 0#FFF END OF TABLE
- CNR SPACE 4,15
- ** CNR - CHECK FOR NOS REQUEST.
- *
- * THIS ROUTINE IS CALLED IF *DFT* IS IN DEDICATED MODE AND
- * THERE IS A NOS REQUEST PRESENT. IT RESERVES THE CIP
- * CHANNEL, SETS THE REQUEST STATUS = *ACTIVE*, WAITS FOR THE
- * REQUEST TO BE PROCESSED, AND RELEASES THE CIP CHANNEL.
- *
- * USES CM - CM+4, T1 - T1+4.
- *
- * CALLS CRQ, SDA.
- *
- * MACROS DCHAN, DELAY, RCHAN.
- CNR SUBR ENTRY/EXIT
- RJM SDA READ NOS REQUEST HEADER
- CRD T1
- LDD T1+4 CHECK REQUEST STATUS
- LMN STRY
- NJN CNRX IF NOT STATUS = *READY*
- LDN DSAL LOCATE CIP CHANNEL
- CRD CM
- LDD CM+4 RESERVE CIP CHANNEL
- LPN 77
- STM CNRA
- RCHAN
- RJM CRQ CHECK REQUEST FOR SPECIAL PROCESSING
- LDN STAC SET STATUS = *ACTIVE*
- STD T1+4
- RJM SDA REWRITE NOS REQUEST HEADER
- CWD T1
- * WAIT FOR REQUEST TO BE PROCESSED BY *DFT*.
- CNR1 DELAY
- RJM SDA READ NOS REQUEST HEADER
- CRD T1
- LDD T1+4
- LMN STAC
- ZJN CNR1 IF STATUS = *ACTIVE* STILL PRESENT
- LDC ** RELEASE CIP CHANNEL
- CNRA EQU *-1
- DCHAN
- LJM CNRX RETURN
- CRQ SPACE 4,10
- ** CRQ - CHECK *DFT* REQUEST FOR SPECIAL PROCESSING.
- *
- * EXIT *UADM/FRAS* ISSUED IF NECESSARY.
- *
- * CALLS SDA.
- *
- * USES CM - CM+4.
- *
- * MACROS MONITOR.
- CRQ SUBR ENTRY/EXIT
- * THE FOLLOWING CODE ASSUMES THERE IS ONLY ONE REQUEST BUFFER
- * WHICH IMMEDIATELY FOLLOWS THE REQUEST HEADER.
- RJM SDA READ REQUEST
- ADN 1
- CRM CRQA,ON
- LDM CRQA CHECK REQUEST
- LMN RQSF
- NJN CRQX IF NO *UADM* NEEDED
- LDC FRAS SET *UADM* SUBFUNCTION
- STM CRQA
- LDD MA WRITE REQUEST TO MESSAGE BUFFER
- CWM CRQA,ON
- LDN ZERL SET *UADM* PARAMETERS
- CRD CM
- LDN 1 SET REQUEST COUNT
- STD CM+1
- * STD CM+2 (NO DROP FLAG IGNORED)
- MONITOR UADM ALERT *CPUMTR* OF PENDING *FRC* UPDATE
- UJN CRQX RETURN
- CRQA BSS 5
- MEP SPACE 4,20
- * MAIN PROGRAM.
- ** PROGRAMMING NOTE.
- *
- * WHENEVER A CALL TO *DFM* IS MADE, IT MAY BE NECESSARY FOR
- * *1DD* TO BE INVOKED TO FLUSH THE DAYFILE BUFFER. *1DD*
- * OVERLAYS A PART OF THE PP, WHICH IT RESTORES WHEN COMPLETE.
- * HOWEVER, SINCE ONLY 12-BIT DATA CAN BE RESTORED BY THIS
- * PROCESS, *1MB* MUST NEVER DEPEND ON 16-BIT DATA BEING
- * PRESERVED ACROSS A *DFM* CALL IN THE PART OF THE PP USED BY
- * *1DD*. FIRST, ANY *1MB* CODE CONTAINING LONG INSTRUCTIONS
- * MUST NOT START BEFORE LOCATION *DDLW*, DEFINED IN *COMSMSC*
- * AS THE LAST WORD USED BY *1DD*. SECOND, SINCE ANY DIRECT
- * CELLS CONTAINING 16-BIT DATA WILL NOT BE INTACT AFTER *1DD*
- * IS COMPLETE, CARE SHOULD BE TAKEN EITHER TO STORE 16-BIT DATA
- * IN THE PROTECTED AREA OF *1MB*, OR TO RE-READ THE DATA FROM
- * CM AFTER THE *DFM* CALL.
- .MEP MAX *,DDLW
- ORG .MEP
- MEP1 RJM PRS PRESET FOR *1MB*
- LDK EIBP READ *EICB* POINTER
- CRD CN
- ADN INWL-EIBP CHECK *MCH* ERROR BIT
- CRD CM
- LDD CN+3 SAVE *EICB* ADDRESS
- RAM DSPA
- LDD CN+4
- RAM DSPA+1
- LDD CM+4
- SHN 21-5
- MJP MRER IF MCH ERROR IN PROGRESS
- LDC LINS DEFINE LONG INSTRUCTIONS
- RJM DLI
- AOM DPPB
- RJM SBA SET BUFFER ADDRESSES
- RJM CTP CHECK FOR TIME PROCESSING
- LDDL DC+3
- SHN 21-DCE7
- MJN MEP2 IF ERRORS LOGGED IN M/R BUFFER
- LJM LED LOAD AND EXECUTE *DFT*
- MEP2 LCN 0 CLEAR C170 ERROR PRESENT FLAG
- STDL CN
- STDL CN+1
- STDL CN+2
- SCBN DCE7
- STDL CN+3
- RJM DOB
- ADK DFCW
- RDCL CN
- MEP3 LDN 1 SET INTERVAL BETWEEN CONTROL WORDS
- STD T2
- RJM SCA SET ADDRESS OF CONTROL WORDS
- LDD DC+2 SET NUMBER OF M/R BUFFER CONTROL WORDS
- LPC 377
- RJM FOM FIND OLDEST M/R BUFFER CONTROL WORD
- STM FSSB SAVE M/R CONTROL WORD OFFSET
- STM LMRD SET NON-REGISTER FLAG
- ZJN MEP4 IF NO ENTRIES PRESENT
- RJM FSS FIND SUPPORTIVE STATUS DATA
- UJN MEP5 DETERMINE OS ACTION
- MEP4 RJM FNR FIND NON-REGISTER DATA
- NJN MEP5 IF DATA PRESENT
- LDC **
- MEPA EQU *-1 AUTORESTART PENDING FLAG
- ZJP DPP IF AUTORESTART NOT PENDING
- LDD IA LOAD *1DS* TO ISSUE *AUTO*
- CWM MEPD,ON
- LJM DPP1 CALL *1DS* AND ENABLE *1MB* CALL
- MEP5 LDD CN+1 SET SYMPTOM CODE IN *BML*
- STM IBMF+1
- LDDL CN+2 SET SEQUENCE NUMBER IN *BML*
- SHN -10
- STM IBMG+4
- RJM DOA DETERMINE OS ACTION
- * OS ACTION ROUTINES WILL RETURN HERE.
- MEP6 RJM CTH CHECK THRESHOLD EXCEEDED
- RJM LMR LOG MAINTENANCE REGISTERS
- * CLEAR C170 VALID DATA FLAG, LOGGING ACTION FLAG, INTERLOCK
- * FLAG AND THRESHOLD EXCEEDED FLAG IN M/R BUFFER CONTROL WORD.
- LDD MB READ CONTROL WORD
- SHN 14
- LMD MB+1
- CRDL CN
- LDDL CN+2 CLEAR FLAGS
- MEPC SCBN (MRV7,MRIL,MRLG,MRTH)
- * SCBN (MRV7,MRIL) (180 LOGGING)
- STDL CN+2
- LDD MB REWRITE M/R BUFFER CONTROL WORD
- SHN 14
- LMD MB+1
- CWDL CN
- LJM MEP3 PROCESS NEXT M/R ENTRY
- MEPD VFD 18/0L1DS,6/0,2/0,1/0,3/0,6//1DS/IASF,12/0,12/0
- TITLE OS ACTION CODE PROCESSING ROUTINES.
- SPACE 4,10
- *** OS ACTION CODE PROCESSING ROUTINES.
- *
- * ENTRY (MB - MB+1) = ADDRESS OF M/R CONTROL WORD.
- * (DC - DC+3) = *DFT* CONTROL WORD.
- * (CN - CN+3) = M/R BUFFER CONTROL WORD.
- *
- * EXIT TO *MEP6* TO LOG MAINTENANCE REGISTERS.
- * TO *CSH* TO CHECKPOINT AND HANG.
- ENW SPACE 4,10
- ** ENW - ENVIRONMENT WARNING.
- *
- * EXIT TO *WWC* TO WAIT FOR WARNING CLEAR.
- *
- * USES CM - CM+3.
- *
- * CALLS CCI, CCM, CKC, CKP, DOB, LMR, RSM.
- ENW BSS 0 ENTRY
- RJM CCM CREATE CONSOLE MESSAGE
- LDD SC+2
- NJN ENW1 IF *1CK* ALREADY CALLED
- RJM LMR LOG MAINTENANCE REGISTERS
- ENW1 LDN ZERL SET C170 ERROR FLAG
- CRDL CM
- AOD CM+3
- ERRNZ DCE7 CODE DEPENDS ON VALUE
- RJM DOB
- ADK DFCW
- RDSL CM
- RJM CCI CLEAR M/R CONTROL WORD INTERLOCK
- ENWC LDN 10 SET *1CK* TO RECALL *1MB*
- * LDN 13 (LONG POWER WARNING)
- STM CKPA+2
- LDN SPLG SET *1MB* FUNCTION CODE
- STM CKPA+3
- RJM CKP LOAD AND EXECUTE *1CK*
- RJM CKC WAIT FOR *1CK* TO COMPLETE
- RJM RSM REQUEST STEP MODE
- LDD CP DISPLAY OPERATOR MESSAGE
- ADN MS2W
- CWM MSFS,TR
- LJM WWC WAIT FOR WARNING CLEAR
- LPW SPACE 4,10
- ** LPW - LONG POWER WARNING.
- LPW BSS 0 ENTRY
- LDN 13-10 CHANGE *1CK* CALL TO LONG POWER WARNING
- RAM ENWC
- LJM ENW PROCESS AS ENVIRONMENT WARNING
- SPW SPACE 4,10
- ** SPW - SHORT POWER WARNING.
- *
- * EXIT TO *WWC* TO WAIT FOR WARNING CLEAR.
- *
- * CALLS CCM, LMR, RSM.
- SPW BSS 0 ENTRY
- RJM CCM CREATE CONSOLE MESSAGE
- RJM LMR LOG MAINTENANCE REGISTERS
- RJM RSM REQUEST STEP MODE
- LJM WWC WAIT FOR WARNING TO CLEAR
- WCL SPACE 4,10
- ** WCL - WARNING CLEAR.
- *
- * EXIT TO *MEP6* TO LOG MAINTENANCE REGISTERS.
- * (SCRL) UPDATED.
- *
- * USES CM - CM+4, SC - SC+4.
- *
- * MACROS DELAY, MONITOR.
- WCL LDD CP DISPLAY *POWER/ENVIRONMENT NORMAL*
- ADN MS2W
- CWM MSPN,TR
- LDN SSTL CHECK AUTORESTART
- CRD CM
- LDD CM
- SHN 21-13
- MJN WCL2 IF AUTORESTART DISABLED
- LDD SC
- SHN 21-11
- MJN WCL1 IF *1MB* REQUEST BIT SET
- LDD TH
- RAD SC
- LDC SCRL STORE *SCRL* WITH REQUESTED FLAG SET
- CWD SC
- WCL1 LDN ZERL
- CRD CM
- LDN 4 SET *DSRM* SUBFUNCTION TO CLEAR STEP
- STD CM+1
- STM MEPA SET AUTORESTART PENDING
- MONITOR DSRM
- WCL2 LDC SCRL ENABLE *UNSTEP* COMMAND
- CRD SC
- LDD SC
- LPC 6777
- STD SC
- LDC SCRL
- CWD SC
- WCL3 DELAY
- LDC SCRL CHECK STEP MODE
- CRD SC
- LDD SC
- SHN 21-10
- MJN WCL3 IF STEP STILL SET
- LJM MEP6 LOG MAINTENANCE REGISTERS
- FIE SPACE 4,10
- ** FIE - FATAL IOU ERROR.
- *
- * EXIT TO *CSH* TO CHECK POINT DEVICES AND THEN HANG.
- *
- * USES CM - CM+3.
- *
- * CALLS CCI, CCM, CSH, DOB.
- FIE BSS 0 ENTRY
- RJM CCM CREATE CONSOLE MESSAGE
- LDN 11 CHECK POINT DEVICES AND RECALL *1MB*
- STM CKPA+2
- LDN SPLG SET *1MB* FUNCTION CODE
- STM CKPA+3
- LDN ZERL SET C170 ERROR FLAG
- CRDL CM
- AOD CM+3
- ERRNZ DCE7 CODE DEPENDS ON VALUE
- RJM DOB
- ADK DFCW
- RDSL CM
- RJM CCI CLEAR M/R CONTROL WORD INTERLOCK
- RJM CSH CHECKPOINT AND HANG
- NIE SPACE 4,10
- ** NIE - NOS/VE IOU ERROR.
- *
- * EXIT TO *MEP6* TO LOG MAINTENANCE REGISTERS.
- *
- * CALLS CCM.
- NIE BSS 0 ENTRY
- RJM CCM CREATE CONSOLE MESSAGE
- LJM MEP6 LOG MAINTENANCE REGISTERS
- MOB SPACE 4,10
- ** MOB - MULTIPLE ODD BIT ERROR.
- *
- * CALLS CCI, CCM, RSM.
- MOB RJM CCI CLEAR M/R INTERLOCK
- RJM CCM CREATE CONSOLE MESSAGE
- RJM RSM REQUEST STEP MODE
- UJN * HANG
- TITLE OS ACTION CODE SUBROUTINES.
- CCI SPACE 4,10
- ** CCI - CLEAR M/R CONTROL WORD INTERLOCK.
- *
- * ENTRY (MB - MB+1) = ADDRESS OF OLDEST M/R CONTROL WORD.
- *
- * USES CM - CM+3.
- CCI SUBR ENTRY/EXIT
- LCN 0 CLEAR M/R CONTROL WORD INTERLOCK
- STDL CM
- STDL CM+1
- STDL CM+3
- SCBN MRIL
- STDL CM+2
- LDD MB
- SHN 14
- LMD MB+1
- RDCL CM
- UJN CCIX RETURN
- CCM SPACE 4,15
- ** CCM - CREATE CONSOLE MESSAGE.
- *
- * ENTRY (SSCW - SSCW+1) = ADDRESS OF SUPPORTIVE STATUS DATA.
- * (DFTV) = *DFT* VERSION.
- * (CN - CN+3) = M/R BUFFER CONTROL WORD.
- *
- * EXIT TIME AND FAULT SYMPTOM CODE BUILT INTO MESSAGE.
- * MESSAGE ISSUED TO SYSTEM CONTROL POINT.
- *
- * CALLS ACS, CTC, CTD, RER, SCM.
- *
- * USES T1, T3, T5, CM - CM+3.
- CCM SUBR ENTRY/EXIT
- LDM DFTV
- ZJN CCM1 IF NOT *DFT* VERSION 4 OR ABOVE
- LDN 2
- STD T1
- LDM SSCW
- SHN 14
- LMM SSCW+1
- ADN 1
- CRDL CM READ DATE/TIME
- ADN 1
- CRML CCMB,T1 READ FAULT SYMPTOM CODE
- LDD CM
- SHN 21-10
- MJN CCM1 IF NO VALID DATA
- NJN CCM2 IF NOT MODEL 20 IOU
- CCM1 LDK TIML GET TIME
- CRM MSFS,ON
- LDC MSFS+5 SET ADDRESS FOR ASSEMBLY
- STD T1
- LDN 0 SET END OF ASSEMBLY FOR *ACS*
- STM MSFS+5
- UJN CCM3 CONVERT FAULT SYMPTOM CODE
- * CONVERT TIME FROM SUPPORTIVE STATUS DATA.
- CCM2 LDC 2L . SET END OF STRING FOR *ACS*
- STD T5
- LDC 2L SET END OF ASSEMBLY FOR *ACS*
- STM MSFS
- LDC MSFS SET ADDRESS FOR ASSEMBLY
- STD T1
- LDDL CM+2 CONVERT HOURS
- SHN -10
- RJM CTD
- RJM ACS
- LDD CM+2 CONVERT MINUTES
- LPC 377
- RJM CTD
- RJM ACS
- LDDL CM+3 CONVERT SECONDS
- SHN -10
- RJM CTD
- RJM ACS
- CCM3 LDC CCMA ADD *ERR=* TO MESSAGE
- RJM ACS
- LDM MSFS+4
- SCN 77
- ADN 1R
- STM MSFS+4
- LDD CN+1
- LPC 3777
- SBK 0#707
- PJN CCM4 IF NOT WARNING
- ADK 0#707-0#701
- PJN CCM5 IF WARNING
- CCM4 LDM DFTV
- NJN CCM6 IF *DFT* VERSION 4 OR ABOVE
- * BUILD MESSAGE FOR ALL *DFT* VERSION 3 ERRORS, AND WARNING
- * ERRORS FOR *DFT* VERSION 4 AND ABOVE.
- CCM5 RJM RER READ *EID* REGISTER
- RJM SCM SET ANALYSIS CODE IN MESSAGE
- LDN 0 ADD TERMINATOR
- STM MSFS+13
- UJN CCM8 DISPLAY OPERATOR MESSAGE
- * CONVERT FAULT SYMPTOM CODE DATA FOR *DFT* VERSION 4 AND
- * ABOVE (EXCEPT FOR WARNING ERRORS).
- CCM6 LDN 0 SET END OF STRING FOR *ACS*
- STD T5
- LDC CCMB+2 SET START OF FAULT SYMPTOM CODE
- STD T3
- CCM7 RJM CTC CONVERT TWO CHARACTERS
- RJM ACS
- AOD T3
- LMC CCMB+10
- NJN CCM7 IF MORE TO CONVERT
- CCM8 LDD CP DISPLAY OPERATOR MESSAGE
- ADN MS2W
- CWM MSFS,TR * HH.MM.SS ERR=XXXXXXXXXXXX*
- LJM CCMX RETURN
- CCMA DATA C*ERR=*
- CCMB BSS 2*4 FAULT SYMPTOM CODE
- CHC SPACE 4,10
- ** CHC - CONVERT HEXADECIMAL CHARACTER TO DISPLAY CODE.
- *
- * ENTRY (A) = VALUE TO CONVERT.
- *
- * EXIT (A) = DISPLAY CODE.
- CHC1 ADN 10D+1R0 CONVERT TO DISPLAY CODE
- CHC SUBR ENTRY/EXIT
- LPN 17 MASK ONE CHARACTER
- SBN 10D
- MJN CHC1 IF DECIMAL CHARACTER
- ADN 1RA SET HEX CHARACTER
- UJN CHCX RETURN
- CTC SPACE 4,10
- ** CTC - CONVERT TWO CHARACTERS.
- *
- * ENTRY (T3) = ADDRESS OF TWO 8-BIT ASCII CHARACTERS.
- *
- * EXIT (A) = ADDRESS OF TWO DISPLAY CODE CHARACTERS.
- * (T4 - T5) = TWO CHARACTERS PLUS ZERO TERMINATOR.
- *
- * USES T4, T6.
- CTC SUBR ENTRY/EXIT
- LDIL T3 CONVERT FIRST CHARACTER
- SHN -10
- SBN 40
- STD T6
- LDM T8AD,T6
- SHN 6
- STD T4
- LDI T3 CONVERT SECOND CHARACTER
- LPC 377
- SBN 40
- STD T6
- LDM T8AD,T6
- RAD T4
- LDN T4 SET ADDRESS OF STRING
- UJN CTCX RETURN
- CTD SPACE 4,10
- ** CTD - CONVERT TWO DIGITS.
- *
- * ENTRY (A) = TWO 4-BIT DIGITS.
- *
- * EXIT (A) = ADDRESS OF STRING TO ADD TO MESSAGE.
- * (T4) = STRING TO ADD TO MESSAGE.
- * (CALLER MUST SUPPLY TERMINATOR IF NECESSARY).
- *
- * USES T3, T4.
- CTD SUBR ENTRY/EXIT
- STD T3
- SHN -4 CONVERT FIRST CHARACTER
- ADN 1R0
- SHN 6
- STD T4
- LDD T3 CONVERT SECOND CHARACTER
- LPN 17
- ADN 1R0
- RAD T4
- LDN T4 SET ADDRESS OF STRING
- UJN CTDX RETURN
- RER SPACE 4,15
- ** RER - READ *EID* REGISTER.
- *
- * ENTRY (CN - CN+3) = M/R BUFFER CONTROL WORD.
- * *DFT* INDICATES CPU 1 OR IOU 1 BY LOGGING ELEMENT CODE
- * 10(16) OR 12(16) IN THE *EID* REGISTER (INSTEAD OF 0
- * OR 2).
- * (MB - MB+1) = THE ADDRESS OF THE CURRENT NON REGISTER
- * STATUS BUFFER (*NRSB*) ENTRY.
- *
- * EXIT ELEMENT CODE AND MODEL NUMBER SET IN MESSAGE.
- *
- * USES T1, CM - CM+3.
- *
- * CALLS CTD, MRB.
- RER SUBR ENTRY/EXIT
- LDM IBMG CHECK FOR *DFT* VERSION 5 OR ABOVE
- SBN 5
- MJN RER0 IF LESS THAN VERSION 5
- * FOR *DFT* VERSION 5 OR ABOVE, GET THE ELEMENT ID (*EID*)
- * FROM THE *NRSB* ENTRY.
- LDD MB GET ADDRESS OF *NRSB* ENTRY
- SHN 14
- ADD MB+1
- ADN 5 OFFSET TO *EID* REGISTER ENTRY
- CRDL CM READ IN *EID* REGISTER
- UJN RER1.1 PROCESS THE *EID*
- RER0 LDN 0 INITIALIZE OFFSET
- STD T1
- RER1 AOD T1
- SBN 5
- ZJN RER1 IF SECOND HEADER WORD
- SBN 10-5
- ZJN RER2 IF END OF BUFFER (USE ZERO DATA)
- RJM MRB GET ADDRESS OF M/R BUFFERS
- ADD CN+3 ADD OFFSET
- ADD T1 SKIP TO NEXT WORD
- CRDL CM READ *EID* REGISTER
- LDDL CM
- ADDL CM+1
- ADDL CM+2
- ADDL CM+3
- ZJN RER1 IF *EID* NOT FOUND YET
- RER1.1 LDDL CM+2 GET ELEMENT CODE
- SHN -10
- ADN 1
- RER2 STD T1
- SHN -2 INCLUDE CPU 1/IOU 1 FLAG
- RAD T1
- LDM RERA,T1 GET MESSAGE CHARACTERS
- STM MSFS+7
- LDD CM+2 GET MODEL NUMBER
- LPC 377
- RJM CTD CONVERT DIGITS
- LDD T4 ADD MODEL NUMBER TO MESSAGE
- STM MSFS+10
- UJP RERX RETURN
- ** RERA - TABLE OF MESSAGE CHARACTERS.
- *
- * INDEXED BY ELEMENT CODE.
- RERA BSS 0
- DATA 2R00 UNKNOWN ELEMENT
- DATA 2RDC PROCESSOR 0
- DATA 2RDM MEMORY
- DATA 2RDI IOU 0
- DATA 2R UNUSED
- DATA 2RDD PROCESSOR 1
- DATA 2R UNUSED
- DATA 2RDJ IOU 1
- SCM SPACE 4,15
- ** SCM - SET ANALYSIS CODE IN MESSAGE.
- *
- * THE *DFT* ANALYSIS CODE FROM THE CONTROL WORD IS CONVERTED
- * TO HEXADECIMAL DISPLAY CODE AND PLACED IN THE CONSOLE
- * MESSAGE.
- *
- * ENTRY (CN - CN+3) = CONTROL WORD.
- SCM SUBR ENTRY/EXIT
- LDD CN+1 GET *DFT* ANALYSIS CODE
- RJM CHC CONVERT THIRD CHARACTER
- SHN 6
- STM MSFS+12
- LDD CN+1 CONVERT SECOND CHARACTER
- SHN -4
- RJM CHC
- STM MSFS+11
- LDD CN+1 CONVERT FIRST CHARACTER
- SHN -10
- RJM CHC
- SHN 6
- RAM MSFS+11
- UJP SCMX RETURN
- WWC SPACE 4,10
- ** WWC - WAIT FOR WARNING CLEAR.
- *
- * EXIT TO *LED* TO LOAD *DFT* IF *DFT* NOT DEDICATED.
- * TO *WCL* TO PROCESS WARNING CLEAR IF *DFT* DEDICATED.
- *
- * USES CN - CN+3.
- *
- * CALLS CCI.
- *
- * MACROS DELAY.
- WWC RJM CCI CLEAR M/R CONTROL WORD INTERLOCK
- LDDL DC+3 CHECK IF DEDICATED *DFT*
- SHN 21-DCDM
- PJN WWC1 IF *DFT* DEDICATED
- LJM LED LOAD *DFT*
- WWC1 DELAY
- LDD MB READ M/R CONTROL WORD
- SHN 14
- LMD MB+1
- CRDL CN
- LDD CN CHECK FOR WARNING CLEAR
- LPC 377
- LMK WCAC
- ZJN WWC2 IF WARNING CLEAR
- LMK RSAC&WCAC
- ZJN WWC2 IF SYSTEM RESUME
- LMK USAC&RSAC
- NJN WWC1 IF NOT SYSTEM UNSTEP
- WWC2 LDD CN+1 PUT SYMPTOM CODE IN *BML*
- STM IBMF+1
- LJM WCL PROCESS WARNING CLEAR
- TITLE MAINTENANCE REGISTER PROCESSING SUBROUTINES.
- CBM SPACE 4,10
- ** CBM - COMPLETE *BML* MESSAGES.
- *
- * ENTRY ALL DATA PRESENT IN *BML* BUFFER AND TRAILER WORD.
- *
- * EXIT *BML* BUFFER PADDED WITH SUFFICIENT ZERO WORDS.
- * THE BUFFER IS FLUSHED IF NECESSARY.
- * FINAL *BML* MESSAGE ISSUED.
- *
- * USES BP.
- *
- * CALLS PMB, WLB.
- CBM SUBR ENTRY/EXIT
- LDN ZERL
- CRML BDMR,ON USE ZERO AS REGISTER NUMBERS
- LDN ZERL
- CRM BCMR,ON CLEAR M/R BUFFER
- LDN ZERL
- CRM BCMR+7-4,ON
- CBM1 LDD T5
- ZJN CBM2 IF WRITE COMPLETE
- RJM PMB PACK AND WRITE FAKE M/R
- UJN CBM1 CONTINUE PROCESSING
- CBM2 LDN 5 UPDATE POINTER TO *BML* BUFFER
- RAD BP
- STM CBMA
- ADC -IBMHL
- PJN CBM3 IF READ COMPLETE
- LDN ZERL CLEAR BUFFER
- CRM **,ON
- CBMA EQU *-1
- UJN CBM2 CHECK AGAIN
- CBM3 LDN 6 SET MESSAGE LENGTH
- STD T4
- RJM WLB WRITE LAST *BML* MESSAGE
- UJP CBMX RETURN
- CPM SPACE 4,10
- ** CPM - CLEAR PP MEMORY.
- *
- * ENTRY (DC - DC+3) = *DFT* CONTROL WORD.
- *
- * USES T0.
- *
- * CLEARS ALL PP MEMORY FROM LWA OF *1MB* CODE TO THE END OF
- * THE PP. THIS INSURES THAT ALL 16-BIT INSTRUCTIONS USED BY
- * *DFT* ARE CLEARED BEFORE THE PP IS RETURNED TO NOS.
- CPM SUBR ENTRY/EXIT
- LDDL DC+3
- SHN 21-DCDM
- PJN CPMX IF DEDICATED *DFT*
- LDC L1MB FIRST WORD TO CLEAR
- STD T0
- LDN 0
- CPM1 STI T0
- AOD T0
- SHN -14
- ZJN CPM1 IF MORE MEMORY TO CLEAR
- UJN CPMX RETURN
- CTH SPACE 4,10
- ** CTH - CHECK THRESHOLD EXCEEDED.
- *
- * ENTRY (CN - CN+3) = M/R BUFFER CONTROL WORD.
- *
- * USES CM - CM+4, T1, T2.
- *
- * CALLS DFM.
- *
- * MACROS MONITOR.
- CTH SUBR ENTRY/EXIT
- LDDL CN+2
- SHN 21-MRTH
- PJN CTHX IF NOT THRESHOLD EXCEEDED
- LDDL CN+1 GET *DFT* ANALYSIS CODE
- SHN 0-14
- LMN 3
- STD T1 (1 = CORRECTED, 0 = UNCORRECTED)
- LDD CN+1 GET TYPE OF ERROR
- SHN 0-10
- LPN 3
- SHN 1
- STD T2 (0 = IOU, 2 = CM, 4 = CPU)
- LDM CTHA,T2 BUILD APPROPRIATE MESSAGE TEXT
- STM CTHB,T1
- LDM CTHA+1,T2
- STM CTHB+1,T1
- LDC CTHB+ERLN ISSUE ERROR LOG MESSAGE
- ADD T1
- RJM DFM
- LDN ZERL ISSUE OPERATOR EVENT
- CRD CM
- LDK ELAE
- STM CM+4
- MONITOR EATM
- UJP CTHX RETURN
- CTHA DATA 4HIOU
- DATA 4HCM
- DATA 4HCPU
- CTHB DATA 6H UN
- DATA C*CORRECTED ERROR THRESHOLD EXCEEDED.*
- CTP SPACE 4,10
- ** CTP - CHECK FOR TIME AND CHECKPOINT PROCESSING.
- *
- * ENTRY (IR+2) = FUNCTION CALL.
- *
- * EXIT TO *CSH* IF CHECKPOINT REQUEST.
- * TO *LED* IF TIME REQUEST AND *DFT* NOT DEDICATED.
- * TO *DPP* IF TIME REQUEST AND *DFT* DEDICATED.
- *
- * USES CM - CM+3, DC - DC+3, IR+2.
- *
- * CALLS CCO, CRC, CSH, DOB, PES, UCC, *2TH*.
- *
- * MACROS EXECUTE.
- CTP SUBR ENTRY/EXIT
- LDD IR+2 CHECK FOR TIME PROCESSING
- LPN SPCP
- NJP CTP2 IF CHECKPOINT REQUEST
- LMD IR+2
- LPN SPTP
- ZJN CTPX IF NOT TIME PROCESSING
- RJM UCC UPDATE CTI CLOCK
- EXECUTE 2TH LOAD TOP-OF-HOUR ROUTINES
- RJM /IHD/CRC CLEAR RELOAD COUNT IN CONTROLWARE TABLE
- RJM /IHD/CCO CLEAR COUNTS IN EST/MST ENTRIES
- RJM /IHD/PES PROCESS ESM SECDED LOGGING
- CTPA LDC ZERL SET LOG COUNTERS AND SECDED TABLE FLAG
- * LJM CTPX (IF NOS/VE LOGGING)
- CRDL CM
- LDBC DCZC
- STDL CM+3
- RJM DOB
- ADK DFCW
- RDSL CM
- CRDL DC
- LDDL DC+3 CHECK DEDICATED FLAG
- SHN 21-DCDM
- PJP DPP IF DEDICATED *DFT*
- CTP1 LDN SPLG SET LOGGING FUNCTION CODE
- CTPB EQU *-1
- * LDN SPTH (IF TOP OF HOUR PART TWO)
- STD IR+2
- LDD IA
- CWD IR
- LJM LED LOAD *DFT*
- CTP2 LDN 10 SET *1CK* TO RECALL *1MB*
- STM CKPA+2
- LDN SPCP SET *1MB* FUNCTION CODE
- STM CKPA+3
- LDC MSCP *(204) FATAL CPU ERROR*
- STM CSHA
- STM CSHB
- RJM CSH CHECKPOINT AND HANG
- C9E SPACE 4,15
- ** C9E - CHECK SPECIAL MODEL 990 ERRORS.
- *
- * ENTRY (IBMF+1) = *DFT* ANALYSIS CODE.
- * (T4) = CURRENT OFFSET INTO M/R BUFFER.
- *
- * EXIT (A) = 0, IF SPECIAL 990 ERROR PRESENT.
- * *BML* DATA PLACED IN BUFFER, IF (A) = 0.
- *
- * USES T4, T6.
- *
- * CALLS GPB, RMR.
- C9E SUBR ENTRY/EXIT
- LDM IBMF+1
- LPC 3777 MASK MULTIPLE OCCURRANCE FLAG
- LMC 0#206
- ZJN C9E1 IF REPAIRED ERROR
- LMK 0#207&0#206
- ZJN C9E1 IF UNREPAIRED ERROR
- LMK 0#205&0#207
- ZJN C9E1 IF RETRY IN PROGRESS ERROR
- LMK 0#21B&0#205
- ZJN C9E1 IF RETRY CONVERTED TO UNCORRECTED ERROR
- LMK 0#21C&0#21B
- ZJN C9E1 IF RETRY EXHAUSTED ERROR
- LMK 0#21D&0#21C
- NJN C9EX IF NOT RETRY EXHAUSTED ERROR
- C9E1 LDD T4
- SBN 5
- NJN C9EX IF NOT LAST M/R BUFFER
- STD T4
- STD T6 INITIALIZE SUMMARY STATUS FLAG
- * PROCESS LAST BUFFER FOR SPECIAL 990 ERRORS.
- RJM GPB READ DATA WORD INTO *BML* MESSAGE
- LDD BP
- STM C9EA
- LDD MS
- SHN 14
- LMD MS+1
- CRM **,ON
- C9EA EQU *-1
- LDC LDNI+0 SET *RMR* TO NOT USE *STATUS SUMMARY* FLAG
- STM RMRA
- LDN ZERL USE ZERO AS REGISTER NUMBERS
- CRML BDMR,ON
- RJM RMR LOG FAILING ADDRESS WORDS AS REGISTERS
- LDC LDNI+1 RESTORE *RMR* USE OF *STATUS SUMMARY* FLAG
- STM RMRA
- LDN 0 SET EXIT FLAG
- LJM C9EX RETURN
- DOA SPACE 4,10
- ** DOA - DETERMINE OS ACTION.
- *
- * ENTRY (CN - CN+3) = CONTROL WORD.
- *
- * EXIT TO OS ACTION ROUTINE.
- * NORMAL RETURN, IF NO OS ACTION CODE OR VERSION 3
- * AND NO VALID OS ACTION CODE.
- *
- * USES T1, T2.
- DOA3 LDD T1
- SBN MXAC
- PJN DOAX IF NOT A VALID ACTION CODE
- LDM TOSC,T1 SET OS ACTION ROUTINE ADDRESS
- UJN DOA5 EXIT TO ROUTINE
- DOA4 LDC MOB ROUTINE FOR NO MATCH FOUND
- DOA5 STM DOAA
- LJM ** PROCESS OS ACTION
- DOAA EQU *-1
- DOA SUBR ENTRY/EXIT
- LDD CN
- LPC 377
- STD T1
- ZJN DOAX IF NO OS ACTION CODE
- LDD CN+2 CHECK VALID 170 DATA FLAG
- LPBC MRV7
- ZJN DOAX IF NO VALID 170 DATA FLAG
- LDM DFTV
- ZJN DOA3 IF *DFT* VERSION 3
- LDN 0
- STD T2
- UJN DOA2 ENTER LOOP
- DOA1 LDN 3 ADVANCE TO NEXT ENTRY
- RAD T2
- DOA2 LDD CN+1 GET *DFT* ANALYSIS CODE
- LPC 3777
- SBM TDFA,T2
- MJN DOA4 IF ENTRY NOT IN TABLE
- NJN DOA1 IF NO MATCH
- LDD T1 GET OS ACTION CODE
- LMM TDFA+1,T2
- NJN DOA1 IF ACTION CODE DOES NOT MATCH
- LDM TDFA+2,T2 SET OS ACTION CODE ADDRESS
- UJP DOA5 EXIT TO ROUTINE
- DOB SPACE 4,10
- ** DOB - GET DFT/OS BUFFER ADDRESS.
- *
- * EXIT (A) = ADDRESS OF DFT/OS BUFFER.
- DOB SUBR ENTRY/EXIT
- DOBA LDC **
- UJN DOBX RETURN
- DPR SPACE 4,10
- ** DPR - DUMP PP REGISTERS.
- *
- * EXIT A, P, Q AND K REGISTERS OF EACH PP
- * DUMPED TO *PRGB*.
- *
- * USES EC, T2, T3, T4, CM - CM+4, CN - CN+4.
- *
- * MACROS EXITMR, LOCKMR, READMR, WRITMR.
- DPR SUBR ENTRY/EXIT
- EXITMR DPRX MODIFY ERROR EXIT ADDRESS
- LDK PPUL GET NUMBER OF PP-S
- CRD CN
- ADK EABL+2-PPUL GET IOU CONNECT CODE
- CRD CM
- LDD CM+3
- STD EC
- READMR BCMR,,DEMR READ EC REGISTER
- LDN 0 INITIALIZE BUFFER POINTER
- STD T3
- STD T4 INITIALIZE REGISTER NUMBER
- STD T2 INITIALIZE PP NUMBER
- DPR1 LDM BCMR+4 SET PP NUMBER
- SCN 77
- LMD T2
- LMN 40 SET AUTO MODE BIT
- STM BCMR+4
- LDM BCMR+6 MERGE REGISTER NUMBER
- SCN 3
- LMD T4
- STM BCMR+6
- LOCKMR SET GET LONG TERM INTERLOCK
- WRITMR BCMR,,DEMR WRITE EC REGISTER
- READMR BDMR,,ISTR READ STATUS REGISTER
- LOCKMR CLEAR CLEAR LONG TERM INTERLOCK
- LDM BDMR+4 FETCH REGISTER
- LPN 3
- SHN 10
- LMM BDMR+5
- SHN 10
- LMM BDMR+6
- STM PRGB+1,T3 STORE IN BUFFER
- SHN -14
- STM PRGB,T3
- LDN 2 INCREMENT BUFFER POINTER
- RAD T3
- AOD T4 INCREMENT REGISTER NUMBER
- SBN 4
- MJN DPR2 IF NOT END OF REGISTERS FOR THIS PP
- LDN 0 RESET REGISTER NUMBER
- STD T4
- SOD CN+2 DECREMENT NUMBER OF PP-S
- ZJN DPR3 IF END OF PP-S
- AOD T2 INCREMENT PP NUMBER
- SBN 12
- NJN DPR2 IF NOT PP 20
- ADN 12+6
- STD T2
- DPR2 LJM DPR1 READ NEXT REGISTER
- DPR3 LDC PRGB SET BUFFER ADDRESS IN INPUT REGISTER
- STD IR+4
- LDD IA
- CWD IR
- LJM DPRX RETURN
- DSP SPACE 4,10
- ** DSP - GET *EICB* ADDRESS.
- *
- * ENTRY (DSPA) = ADDRESS OF *EICB*.
- *
- * EXIT (A) = ADDRESS OF *EICB*.
- DSP SUBR ENTRY/EXIT
- DSPA LDC **
- UJN DSPX RETURN
- FNR SPACE 4,15
- ** FNR - FIND NON-REGISTER DATA.
- *
- * ENTRY (FNRA - FNRA+1) = FWA OF NON-REGISTER DATA.
- *
- * EXIT (A) = 0, IF NO ENTRY TO PROCESS.
- * (MB - MB+1) = ADDRESS OF CONTROL WORD FOR ENTRY.
- * (CN - CN+3) = CONTROL WORD TO PROCESS.
- * (CN+3) = SIZE OF ENTRY TO LOG.
- *
- * USES T1, T2, CM - CM+3, MB - MB+1.
- *
- * CALLS FOM.
- FNR SUBR ENTRY/EXIT
- FNRA LDC ** (FWA OF NON-REGISTER DATA)
- ZJN FNRX IF *DFT* VERSION 3
- CRDL CM READ HEADER WORD
- ADN 1
- STD MB+1 SAVE ADDRESS OF START OF FIRST ENTRY
- SHN -14
- STD MB
- LDD CM+3 SET INTERVAL BETWEEN CONTROL WORDS
- STD T2
- LDD CM+2 SET NUMBER OF CONTROL WORDS TO SEARCH
- RJM FOM FIND OLDEST ENTRY
- ZJN FNR1 IF NO ENTRY TO PROCESS
- LDD MB READ SIZE OF DATA TO LOG
- SHN 14
- LMD MB+1
- ADN 1
- CRDL CM
- LDD CM+3 SAVE SIZE OF DATA TO LOG
- FNR1 STD CN+3
- UJN FNRX RETURN
- FOM SPACE 4,10
- ** FOM - FIND OLDEST M/R BUFFER ENTRY.
- *
- * ENTRY (A) = NUMBER OF CONTROL WORDS TO SEARCH.
- * (T2) = INTERVAL BETWEEN CONTROL WORDS.
- * (MB - MB+1) = ADDRESS OF FIRST CONTROL WORD.
- *
- * EXIT (A) = (T7) = OFFSET OF OLDEST CONTROL WORD.
- * = 0, IF NO ENTRY FOUND TO PROCESS.
- * (CN - CN+3) = OLDEST M/R CONTROL WORD.
- * (MB - MB+1) = ADDRESS OF OLDEST M/R CONTROL WORD.
- *
- * USES CN - CN+3, MB - MB+1, T1, T6, T7, T8.
- * INTERLOCK SELECTED ENTRY. IF UNABLE TO DO SO, *DFT* IS IN
- * THE PROCESS OF OVERWRITING IT AND A NEW ENTRY MUST BE
- * SELECTED. IF THE INTERLOCK IS OBTAINED, BUT THE SEQUENCE
- * NUMBER IS DIFFERENT, *DFT* HAS OVERWRITTEN IT. A NEW ENTRY
- * MUST BE SELECTED.
- FOM6 LDD T7
- ZJN FOMX IF NO ENTRY SELECTED
- LDN ZERL SET UP INTERLOCK WORD
- CRDL CN
- LDBC MRIL
- STD CN+2
- LDD MB
- SHN 14
- LMD MB+1
- ADD T7
- RDSL CN SET INTERLOCK ON OLDEST CONTROL WORD
- LDDL CN+2
- SHN 21-MRIL
- MJN FOM1 IF INTERLOCKED BY *DFT*
- LDDL CN+2
- SHN -10 CHECK SEQUENCE NUMBER
- SBD T8
- ZJN FOM7 IF SAME SEQUENCE NUMBER
- LDD MB CLEAR INTERLOCK
- SHN 14
- LMD MB+1
- ADD T7
- CWDL CN
- UJN FOM1 RESTART SEARCH
- FOM7 LDD T7 SET OLDEST BUFFER CONTROL WORD ADDRESS
- RAD MB+1
- SHN -14
- RAD MB
- LDD T7
- FOM SUBR ENTRY/EXIT
- STM FOMB SAVE NUMBER OF CONTROL WORDS
- FOM1 LDN 0
- STD T6 COUNTER FOR M/R BUFFER ENTRIES
- STD T7 OFFSET OF OLDEST M/R BUFFER
- STD T8 SEQUENCE NUMBER OF OLDEST M/R BUFFER
- LDC **
- FOMB EQU *-1 (NUMBER OF CONTROL WORDS TO SEARCH)
- STD T1
- UJN FOM3 ENTER LOOP
- FOM2 LDD T2 ADVANCE TO NEXT CONTROL WORD
- RAD T6
- SOD T1
- ZJP FOM6 IF SEARCH COMPLETE
- FOM3 LDD MB READ NEXT M/R CONTROL WORD
- SHN 14
- LMD MB+1
- ADD T6
- CRDL CN
- LDDL CN+2 CHECK VALID DATA FLAG AND INTERLOCK FLAG
- FOMA LPBC (MRV7,MRIL,MRLG)
- * LPBC (MRV7,MRIL) (IF 180 LOGGING)
- SHN 21-MRIL
- MJN FOM2 IF INTERLOCKED BY *DFT*
- ZJN FOM2 IF NOT A POTENTIAL EARLIEST ENTRY
- LDD T7
- ZJN FOM5 IF NO ENTRY SELECTED YET
- LDDL CN+2 GET SEQUENCE NUMBER
- SHN -10
- SBD T8 SUBTRACT OLDEST SEQUENCE NUMBER
- MJN FOM4 IF LOWER THAN PREVIOUS
- SBN 40
- PJN FOM5 IF WRAP AROUND
- FOM3.1 UJP FOM2 PROCESS NEXT ENTRY
- FOM4 ADN 40
- MJN FOM2 IF NOT AN EARLIER ENTRY
- FOM5 LDDL CN+2 SET NEW OLDEST SEQUENCE NUMBER
- SHN -10
- STD T8
- LDD T6 SET NEW OLDEST OFFSET
- STD T7
- UJN FOM3.1 PROCESS NEXT ENTRY
- FSS SPACE 4,10
- ** FSS - FIND SUPPORTIVE STATUS DATA.
- *
- * ENTRY (FSSA) = FWA OF SUPPORTIVE STATUS BUFFER.
- * (FSSB) = OFFSET OF ENTRY IN M/R BUFFER CONTROL WORDS.
- * (MUST BE NON-ZERO)
- *
- * EXIT (SSCW - SSCW+1) = ADDRESS OF CONTROL WORD FOR
- * SUPPORTIVE STATUS DATA.
- *
- * USES T1, CM - CM+4, MS - MS+1.
- FSS SUBR ENTRY/EXIT
- FSSA LDC ** GET START OF SUPPORTIVE STATUS BUFFERS
- ZJN FSSX IF *DFT* VERSION 3
- CRDL CM
- ADN 1 ADVANCE TO START OF FIRST ENTRY
- STD MS+1
- SHN -14
- STD MS
- LDC * SET OFFSET
- FSSB EQU *-1
- STD T1
- FSS1 LDD CM+3 ADVANCE TO NEXT ENTRY
- RAD MS+1
- SHN -14
- RAD MS
- SOD T1
- NJN FSS1 IF NOT YET AT CORRECT ENTRY
- LDD MS SAVE ADDRESS OF CONTROL WORD FOR ENTRY
- STM SSCW
- LDD MS+1
- STM SSCW+1
- UJN FSSX RETURN
- GPB SPACE 4,10
- ** GPB - GET POINTER TO *BML* BUFFER.
- *
- * ENTRY (BP) = PREVIOUS POINTER INTO *BML* BUFFER.
- *
- * EXIT (BP) UPDATED.
- * *BML* MESSAGE ISSUED.
- *
- * USES BP, CM - CM+4.
- *
- * CALLS DFM.
- GPB SUBR ENTRY/EXIT
- LDN 5
- RAD BP UPDATE POINTER TO *BML* BUFFER
- ADC -IBMHL
- MJN GPBX IF STILL WITHIN BUFFER
- LDN ZERL
- CRD CM FORM *BML* PARAMETERS
- LDN 6*5 SET BYTE COUNT
- STD CM+1
- LDM IBMG+1 UNCONDITIONALLY SET CONTINUATION BIT
- SCN 4
- LMN 4
- STM IBMG+1
- LDC IBMF+BMLN SEND *BML* MESSAGE
- RJM DFM
- LDC IBMH
- STD BP
- LDM IBMG+1 SET NOT FIRST BLOCK FLAG
- SCN 10
- LMN 10
- STM IBMG+1
- UJN GPBX RETURN
- IMD SPACE 4,10
- ** IMD - ISSUE MODEL DEPENDENT DATA *BML* MESSAGE.
- *
- * ENTRY MESSAGE BUILT AT *BHDR*.
- * (A) = LENGTH OF MESSAGE TO ISSUE.
- *
- * CALLS IMB.
- IMD SUBR ENTRY/EXIT
- ADN 1
- STM BHDR+3
- LDC BHDR
- RJM IMB ISSUE MESSAGE TO BUFFER
- LDM MBUF+1*5+1 SET NOT FIRST BLOCK FLAG
- SCN 10
- LMN 10
- STM MBUF+1*5+1
- UJP IMDX RETURN
- LDT SPACE 4,15
- ** LDT - LOG DATA STRUCTURE.
- *
- * *LDT* LOGS THE SUPPORTIVE STATUS BUFFER AND NON-REGISTER
- * DATA.
- *
- * ENTRY (T4) = NUMBER OF WORDS TO LOG.
- * (MS - MS+1) = ADDRESS-1 OF FIRST WORD TO LOG.
- *
- * USES BP, T4, T5, CN - CN+3, MS - MS+1.
- *
- * CALLS CMB, PMB, PMR.
- LDT SUBR ENTRY/EXIT
- LDN 0 CLEAR CONTINUATION/NOT FIRST BLOCK FLAGS
- STM IBMG+1
- STD T5 SET UP FOR *PMB*
- LDC IBMH-5
- STD BP
- LDN ZERL USE ZERO AS REGISTER NUMBERS
- CRML BDMR,ON
- LDT1 AOD MS+1 READ NEXT WORD OF DATA
- SHN -14
- RAD MS
- SHN 14
- LMD MS+1
- CRDL CN
- RJM PMR PACK DATA INTO *BCMR* BUFFER
- RJM PMB PACK DATA INTO *BML* MESSAGE
- NJN LDT2 IF NOT AT END OF BLOCK
- LDM IBMG+1 SET NOT FIRST BLOCK FLAG
- SCN 10
- LMN 10
- STM IBMG+1
- LDT2 SOD T4
- NJN LDT1 IF MORE WORDS TO LOG
- RJM CBM COMPLETE *BML* MESSAGES
- UJP LDTX RETURN
- LED SPACE 4,10
- ** LED - LOAD AND EXECUTE *DFT*.
- *
- * EXIT *DFT* IS LOADED INTO THIS PP.
- *
- * USES DC - DC+1, CM - CM+3, CN - CN+4, SC, T0, T7.
- *
- * CALLS DOB.
- LED BSS 0 ENTRY
- RJM DOB READ *DFT* CONTROL WORD
- ADK DFCW
- CRDL DC
- LDDL DC+3 CHECK DEDICATED MODE
- SHN 21-DCDM
- PJP LED1 IF *DFT* IS IN DEDICATED MODE
- * SAVE PP RESIDENT.
- SETMS NODRIVER CLEAR DRIVER PRESENT FLAG
- LDC DFPSL-1 SET WORD COUNT TO SAVE
- STD T7
- LDN DFTBL TRANSFER BOOTSTRAP TO *MSFW*
- STD CM
- LDD MA
- CWM LEDD,CM
- LDD MA
- CRM MSFW,CM
- LDC MSFW-1 SET EXECUTION ADDRESS ON RETURN FROM *DFT*
- STD T0
- RJM DOB GET *PPR* SAVE AREA BUFFER ADDRESS
- ADK DFPS
- CRDL CM
- RPTR CM CONVERT ADDRESS
- CWD T0 WRITE FIRST WORD OF *PPR*
- ADN 1
- CWM 5,T7 WRITE REMAINDER OF *PPR*
- LDN DSAL RESERVE CIP CHANNEL
- CRD CM
- LDD CM+4
- LPN 77
- RCHAN
- * CHECK NOS REQUEST STATUS.
- RJM SDA READ NOS REQUEST HEADER
- CRD CM
- LDD CM+4 CHECK STATUS
- LMN STRY
- NJN LED3 IF NOT STATUS = *READY*
- LDN STAC SET STATUS = *ACTIVE*
- STD CM+4
- RJM SDA REWRITE NOS REQUEST HEADER
- CWD CM
- UJN LED3 CONTINUE WITH LOADING *DFT*
- LED1 SHN 21-DCVR-21+DCDM+22
- PJN LED2 IF *DFT* NOT ALREADY ACTIVATED
- RJM CNR CHECK FOR NOS REQUEST
- LJM DPP DROP PP
- LED2 LDD IA CHANGE *1MB* TO *DFT* IN INPUT REGISTER
- CRD CM
- LDC 2RDF
- STD CM
- LDD CM+1
- LPN 77
- LMC 1RT*100
- STD CM+1
- LDD IA
- CWD CM
- LED3 LDM IBMF+2 SET PP NUMBER IN *DFT* CONTROL WORD
- SHN -6
- LMDL DC+1
- LPN 37
- LMDL DC+1
- STDL DC+1
- RJM DOB
- ADK DFCW
- CWDL DC UPDATE *DFT* CONTROL WORD
- * FIND *DFT* ENTRY IN *CTI* CM DIRECTORY.
- LDN 0
- STD T1
- LDK EIBP
- CRD CN
- LDD CN+3
- SHN 14
- LMD CN+4
- ADK DSCM+2 READ *CTI* CM DIRECTORY POINTER
- CRDL CN
- LRD CN+1 LOAD R-REGISTER
- LDDL CN SAVE REMAINDER
- STD T2
- LED4 ADC 400000 SET BIT TO USE R-REGISTER
- CRDL CN READ *CTI* DIRECTORY ENTRY
- LDDL CN
- LMC 2RDF
- NJN LED5 IF NOT *DFT* ENTRY
- LDDL CN+1
- SHN -6
- LMN 1RT
- ZJN LED6 IF *DFT* ENTRY
- LED5 LDDL CN+3 FIND NEXT DIRECTORY ENTRY
- RAD T2
- SHN -14
- RAD T1
- SHN 14
- LMD T2
- UJN LED4 CHECK NEXT DIRECTORY ENTRY
- * MOVE CODE TO SAVE AREA SO *DFT* DOES NOT OVERWRITE IT.
- LED6 LDN .LED2 SIZE OF CODE TO MOVE
- STD T3
- LDD MA MOVE CODE THROUGH MESSSAGE BUFFER
- CWML LEDA,T3
- SBD T3
- CRML CN,T3
- LJM CN JUMP TO LOADER
- * LOAD AND EXECUTE *DFT*.
- LEDA BSS 0 START OF CODE TO MOVE
- LDD T1
- SHN 14
- LMD T2
- ADC 400001
- CRDL CN READ *DFT* LOAD PARAMETERS
- ADN 1
- STD T2
- SHN -14
- STD T1
- LDD CN SET *DFT* LOAD ADDRESS
- STD LEDC
- LDD T1 LOAD *DFT*
- SHN 14
- LMD T2
- CRML **,CN+1
- LEDB EQU *-1 (*DFT* LOAD ADDRESS)
- LJM 100 EXECUTE *DFT*
- .LED1 EQU *-LEDA-1
- .LED2 EQU .LED1/4+1
- ERRPL .LED2-7 CODE LONGER THAN MESSAGE BUFFER
- LEDC EQU LEDB-LEDA+CN LOCATION TO PLUG *DFT* LOAD ADDRESS
- * BOOTSTRAP USED TO DROP CIP CHANNEL ON RETURN FROM *DFT*.
- LEDD BSS 0
- LOC MSFW
- LDN DSAL LOCATE CIP CHANNEL
- CRD CM
- LDD CM+4 RELEASE CIP CHANNEL
- LPN 77
- DCHAN
- LJM PPR RELOAD *1MB*
- LOC *O
- .LEDDL SET *-LEDD+4
- ERRNG DFTBL-.LEDDL/5 *DFT* BOOTSTRAP TOO LONG
- LMD SPACE 4,15
- ** LMD - LOG MODEL DEPENDENT BUFFER.
- *
- * ENTRY (T4) = LENGTH OF DATA TO LOG.
- * (MS - MS+1) = FWA - 1 OF DATA TO LOG.
- *
- * EXIT MODEL DEPENDENT DATA ISSUED TO *BML*.
- *
- * USES T1 - T5, BP, MS, CN - CN+3.
- *
- * CALLS IMD, PMR, PWB.
- LMD7 LDM MBUF+1*5+1 CLEAR CONTINUATION BIT
- SCN 4
- STM MBUF+1*5+1
- LMD8 LDC 18D
- LMDA EQU *-1 (NUMBER OF WORDS TO LOG)
- RJM IMD ISSUE *BML* MESSAGE
- LDN 18D RESET WORD COUNT
- STM LMDA
- LDD T4
- NJN LMD1 IF MORE DATA TO LOG
- LMD SUBR ENTRY/EXIT
- LMD1 LDC MBUF+2*5 SET BUFFER POINTER
- STD T1
- STD BP
- ADK 15D*5 SET POINTER TO ASSEMBLY FOR LAST 4 BITS
- STD EC
- LMD2 LDN 0 CLEAR BUFFER
- STI T1
- AOD T1
- LMC MBUF+50D*5
- NJN LMD2 IF MORE TO CLEAR
- STD T5 INITIALIZE COUNTER
- LDN 15D NUMBER OF WORDS PER BLOCK
- STD T1
- LMD3 AOD MS+1 READ NEXT WORD
- SHN -14
- RAD MS
- SHN 14
- LMD MS+1
- CRDL CN
- RJM PMR PACK WORD INTO *BCMR*
- RJM PWB PACK WORD INTO BUFFER
- LJM LMD4,T5 POSITION LAST 4 BITS
- * LJM LMD4 (LEFTMOST BITS)
- * LJM LMD4+1 (MIDDLE BITS)
- * LJM LMD4+2 (RIGHTMOST BITS)
- LMD4 SHN 4
- SHN 4
- RAI EC ADD TO ASSEMBLY
- SOD T4
- ZJP LMD7 IF NO MORE DATA TO LOG
- AOD T5
- SBN 3
- MJN LMD5 IF NOT END OF BYTE
- LDN 0 RESET COUNTER
- STD T5
- AOD EC ADVANCE TO NEXT BYTE
- LMD5 LDN 5 ADVANCE BUFFER POINTER
- RAD BP
- SOD T1
- LMD6 NJP LMD3 IF NOT END OF GROUP
- LDN 15D RESET GROUP COUNTER
- STD T1
- LDC 15D*5 ADVANCE ASSEMBLY BUFFER
- RAD EC
- LDN 5 SKIP OVER ASSEMBLY BUFFER
- RAD BP
- LMC MBUF+50D*5
- ZJP LMD8 IF END OF *BML* MESSAGE
- LDN 16D INCREMENT WORD COUNT TO LOG
- RAM LMDA
- UJN LMD6 READ NEXT WORD
- LMR SPACE 4,10
- ** LMR - LOG MAINTENANCE REGISTERS.
- *
- * ENTRY (CN - CN+3) = M/R CONTROL WORD.
- * (MB - MB+1) = ADDRESS OF CONTROL WORD.
- * (LMRA) = SIZE OF ELEMENT COUNTER BUFFER.
- * (LMRB) = SIZE OF M/R BUFFER.
- * (LMRD) = NON-REGISTER DATA FLAG.
- *
- * EXIT MAINTENANCE REGISTERS LOGGED TO *BML*.
- * (MB - MB+1) UNCHANGED.
- *
- * USES BP, T4, T5, T6, CM - CM+4, MS - MS+1.
- *
- * CALLS CBM, C9E, DOB, LNR, LSS, LTE, MDB, MRB, RMR, SID, WLB.
- *
- * MACROS RPTR.
- LMR10 RJM LNR LOG NON-REGISTER DATA
- LMR SUBR ENTRY/EXIT
- LMRC LDD CN+2
- * UJN LMRX (NOS/VE LOGGING)
- SHN 21-MRLG
- PJN LMRX IF NO LOGGING ACTION
- LDC **
- LMRD EQU *-1 (NON-REGISTER DATA FLAG)
- ZJN LMR10 IF PROCESSING NON-REGISTER DATA
- LDM IBMG+1 CLEAR NOT FIRST BLOCK FLAG
- SCN 10
- STM IBMG+1
- * LOCATE MAINTENANCE REGISTER BUFFER.
- LDC **
- LMRB EQU *-1 (LENGTH OF M/R BUFFER)
- STD T4
- RJM MRB GET ADDRESS OF M/R BUFFERS
- ADD CN+3 ADD OFFSET
- STD MS+1
- SHN -14
- STD MS
- * DETERMINE ANALYSIS CODE.
- LDD CN+1 GET ANALYSIS CODE
- LMC 0#707
- ZJN LMR1 IF TO LOG ELEMENT COUNTER TABLE
- LMK 0#708&0#707
- ZJN LMR4 IF TO LOG SECDED ID TABLE
- SHN -10
- NJN LMR5 IF NOT WARNING ANALYSIS CODE
- * PROCESS WARNING ANALYSIS CODE.
- LDN 10D SET SIZE TO LOG
- UJN LMR2 LOG EID REGISTERS
- * PROCESS ELEMENT COUNTER TABLE.
- LMR1 LDC MECB
- LMRA EQU *-1 (SIZE OF ELEMENT COUNTER BUFFER)
- LMR2 STD T4
- LMR3 RJM LTE LOG TABLE ENTRIES
- RJM WLB WRITE LAST *BML* MESSAGE
- LJM LMR8 LOG SUPPORTIVE STATUS DATA
- * PROCESS SECDED ID TABLE.
- LMR4 RJM SID SET SECDED INFORMATION
- NJN LMR3 IF SECDED ID TABLE NOT EMPTY
- UJN LMR9 RETURN
- * PROCESS MAINTENANCE REGISTERS.
- LMR5 LDN 0 PRESET *RMR*
- STD T5
- STD T6
- LDC IBMH-5 PRESET *GPB*
- STD BP
- LMR6 LCN 5
- RAD T4
- MJN LMR7 IF ALL BUFFERS PROCESSED
- LDD MS READ M/R BUFFER HEADER WORD
- SHN 14
- LMD MS+1
- CRML BDMR,ON
- RJM RMR READ MAINTENANCE REGISTER BUFFER
- NJN LMR7 IF LOGGING COMPLETE
- AOD MS+1 ADVANCE TO NEXT BUFFER
- SHN -14
- RAD MS
- RJM C9E CHECK SPECIAL 990 ERROR
- NJN LMR6 IF NOT SPECIAL 990 ERROR
- LMR7 RJM CBM COMPLETE *BML* MESSAGES
- LMR8 RJM LSS LOG SUPPORTIVE STATUS DATA
- RJM MDB LOG MODEL DEPENDENT BUFFER
- LMR9 LDM IBMG CLEAR SPECIAL FLAGS FROM *BML*
- LPN 77
- STM IBMG
- LJM LMRX RETURN
- LNR SPACE 4,10
- ** LNR - LOG NON-REGISTER DATA.
- *
- * ENTRY (MB - MB+1) = ADDRESS OF CONTROL WORD FOR ENTRY.
- * (CN - CN+3) = CONTROL WORD FOR ENTRY TO LOG.
- *
- * EXIT NON-REGISTER DATA LOGGED TO BML.
- *
- * USES T4, MS - MS+1.
- *
- * CALLS LDT.
- LNR SUBR ENTRY/EXIT
- LDM IBMG SET NON-REGISTER DATA FLAG
- LPN 77
- ADC 400
- STM IBMG
- LDD MB INITIALIZE ADDRESS OF DATA TO LOG
- STD MS
- SHN 14
- LMD MB+1
- STD MS+1
- ADN 1 LENGTH TO LOG WORD
- CRD CM READ LENGTH WORD
- LDD CM+4 SET LENGTH OF DATA TO INCLUDE LENGTH WORD
- STD T4
- RJM LDT LOG DATA STRUCTURE
- LDM IBMG CLEAR NON-REGISTER DATA FLAG
- LPN 77
- STM IBMG
- UJN LNRX RETURN
- LSS SPACE 4,15
- ** LSS - LOG SUPPORTIVE STATUS DATA.
- *
- * ENTRY (SSCW - SSCW+1) = ADDRESS OF CONTROL WORD FOR ENTRY
- * TO LOG.
- *
- * EXIT SUPPORTIVE STATUS BUFFER DATA LOGGED.
- * (MDBB) = MODEL DEPENDENT BUFFER ORDINAL.
- * (MDBC) = MDB DATA UNLOGGED STATUS.
- *
- * USES T4, CM - CM+3, MS - MS+1.
- *
- * CALLS LDT.
- LSS SUBR ENTRY/EXIT
- LDM DFTV
- ZJN LSSX IF *DFT* VERSION 3
- LDM SSCW SET ADDRESS OF CONTROL WORD
- STD MS
- SHN 14
- LMM SSCW+1
- STD MS+1
- CRDL CM READ CONTROL WORD
- LDD CM+1 SET LENGTH OF DATA TO LOG
- STD T4
- ZJN LSSX IF NO DATA TO LOG
- LDD CM+2 SAVE MODEL DEPENDENT BUFFER ORDINAL
- LPC 377
- STM MDBB
- LDDL CM+2 SAVE UNLOGGED DATA STATUS
- SHN -10
- STM MDBC
- LDD HN SET SUPPORTIVE STATUS BUFFER FLAG
- RAM IBMG
- RJM LDT LOG DATA STRUCTURE
- UJP LSSX RETURN
- LTE SPACE 4,15
- ** LTE - LOG TABLE ENTRIES.
- *
- * ENTRY MESSAGE ID AND SYMPTOM CODE IN *BML* HEADER.
- * (T4) = WORD SIZE OF *BML* MESSAGE.
- * (MS - MS+1) = ADDRESS OF FIRST ENTRY TO LOG.
- *
- * EXIT ENTRIES LOGGED TO *BML*.
- * (T4) = CM WORDS TO WRITE IN LAST *BML* MESSAGE.
- *
- * USES MS - MS+1, T1, T4.
- *
- * CALLS DFM, LMB.
- LTE2 LDD MS READ LAST *BML* MESSAGE DATA
- SHN 14
- LMD MS+1
- CRM IBMH,T4
- AOD T4 ADD HEADER WORDS TO COUNT
- AOD T4
- LTE SUBR ENTRY/EXIT
- LTE1 LDN 4
- STD T1
- LDM IBMG+1 SET CONTINUATION BIT
- SCN 4
- LMN 4
- STM IBMG+1
- LDD T4
- SBN 5
- MJN LTE2 IF LAST *BML* MESSAGE TO ISSUE
- ADN 1
- STD T4
- LDD MS
- SHN 14
- LMD MS+1
- CRM IBMH,T1 READ BUFFER INTO *BML*
- STD MS+1
- SHN -14
- STD MS
- LDN 6*5 PP WORDS IN *BML* MESSAGE
- STD CM+1
- LDC IBMF+BMLN ISSUE *BML* MESSAGE
- RJM DFM
- LDM IBMG+1 SET NOT FIRST BLOCK FLAG
- SCN 10
- LMN 10
- STM IBMG+1
- LJM LTE1 PROCESS NEXT *BML* MESSAGE
- MDB SPACE 4,15
- ** MDB - LOG MODEL DEPENDENT BUFFER DATA.
- *
- * ENTRY (MB - MB+1) = ADDRESS OF M/R BUFFER CONTROL WORD.
- * (MDBA) = ADDRESS OF MODEL DEPENDENT BUFFER.
- * (MDBB) = MODEL DEPENDENT BUFFER ORDINAL.
- * (MDBC) = MODEL DEPENDENT DATA UNLOGGED STATUS.
- *
- * EXIT MODEL DEPENDENT BUFFER DATA LOGGED.
- *
- * USES T1, T4, CM - CM+3, MS - MS+1, T8 - T9.
- *
- * CALLS LMD.
- *
- * MACROS RPTR.
- MDB SUBR ENTRY/EXIT
- LDD MB READ M/R BUFFER CONTROL WORD
- SHN 14
- LMD MB+1
- CRDL CM
- LDDL CM+2
- SHN 21-MRMD
- PJN MDBX IF NO MODEL DEPENDENT DATA
- MDBA LDC ** (MODEL DEPENDENT BUFFER ADDRESS)
- ADC **
- MDBB EQU *-1 (MODEL DEPENDENT BUFFER ORDINAL)
- CRDL CM READ MODEL DEPENDENT BUFFER POINTER
- LDC *
- MDBC EQU *-1 (DATA UNLOGGED STATUS)
- NJN MDBX IF DATA UNLOGGED OR OVERWRITTEN
- RPTR CM CONVERT ADDRESS
- CRDL CM READ HEADER
- STD MS+1 SAVE ADDRESS OF HEADER
- STD T9
- SHN -14
- STD MS
- STD T8
- LDD CM+3 SET LENGTH TO LOG
- ZJN MDBX IF NO DATA TO LOG
- SBN 1
- STD T4
- LDM IBMG SET MODEL DEPENDENT DATA FLAG
- LPN 77
- ADC 200
- STM IBMG
- LDM IBMG+1
- SCN 14 CLEAR NOT FIRST BLOCK FLAG
- LMN 4 SET CONTINUATION BIT
- STM IBMG+1
- LDN 2 MOVE MESSAGE HEADER TO PP BUFFER
- STD T1
- LDD MA
- CWM IBMF,T1
- SBD T1
- CRM MBUF,T1
- LDN ZERL CLEAR *EMB* HEADER WORD
- CRM BHDR,ON
- LDK MLDY SET MESSAGE TYPE
- STM BHDR+4
- RJM LMD LOG MODEL DEPENDENT DATA
- LDD T8 READ MODEL DEPENDENT HEADER
- SHN 14
- LMD T9
- CRDL CM
- LDDL CM CLEAR CONTROL WORD OFFSET
- LPC 0#FF00
- STDL CM
- LDD T8
- SHN 14
- LMD T9
- CWDL CM
- MDB1 DELAY
- LDK EMBP CHECK FOR *1MD* STILL ACTIVE
- CRD CM
- LDD CM+1
- SHN 14
- LMD CM+2
- CRD CM
- LDD CM+4
- LPN 2
- NJN MDB1 IF *1MD* ACTIVE
- UJP MDBX RETURN
- MRB SPACE 4,10
- ** MRB - GET M/R BUFFERS ADDRESS.
- *
- * (A) = ADDRESS OF M/R BUFFERS.
- MRB SUBR ENTRY/EXIT
- MRBA LDC ** (ADDRESS OF M/R BUFFERS)
- UJN MRBX RETURN
- MRER SPACE 4,10
- ** MRER - MAINTENANCE REGISTER ERROR HANDLER.
- *
- * ENTRY FATAL MAINTENANCE REGISTER ERROR.
- *
- * EXIT TO *CSH*.
- *
- * USES CM - CM+4.
- *
- * CALLS CSH.
- *
- * MACROS MONITOR.
- MRER LDC MSME SET MESSAGE ADDRESS
- STM CSHA
- STM CSHB
- STM CKPA+2
- LDN SPLG SET *1MB* FUNCTION CODE
- STM CKPA+3
- LDN ZERL
- CRD CM
- LDN 1 SET *MCH* ERROR IN PROGRESS
- STD CM+1
- STD CM+2
- LDD MA
- CWM MRERA,ON
- MONITOR UADM
- RJM CSH CHECKPOINT AND HANG THE SYSTEM
- MRERA CON LIOS INCREMENT LOW CORE FIELD BY ONE
- CON INWL WORD ADDRESS
- CON 5*100+1 BIT ADDRESS/FIELD WIDTH
- CON 0
- CON 0
- PMB SPACE 4,15
- ** PMB - PACK MAINTENANCE REGISTER TO *BML*.
- *
- * ENTRY (T5) = BYTE IN M/R HEADER WORD WITH REGISTER NUMBER.
- * (BCMR - BCMR+7) = CONTENTS OF REGISTER.
- *
- * EXIT REGISTER WRITTEN TO *BML*.
- * (A)= (T5) = 0, IF ALL REGISTERS IN THIS BLOCK
- * WRITTEN.
- * (T5) = BYTE WITH NEXT REGISTER NUMBER, OTHERWISE.
- *
- * USES T5.
- *
- * CALLS GPB, PWB.
- PMB SUBR ENTRY/EXIT
- RJM GPB GET POINTER INTO *BML* BUFFER
- RJM PWB PACK REGISTER INTO BUFFER
- SHN 10
- LMML BDMR,T5 INCLUDE REGISTER NUMBER
- STM PMBB,T5
- AOD T5
- SBN 4
- MJN PMB1 IF TRAILER WORD NOT FULL
- RJM GPB GET POINTER TO *BML* BUFFER
- LDD BP
- STM PMBA
- LDD MA
- CWM PMBB,ON COPY TRAILER WORD TO *BML* BUFFER
- LDD MA
- CRM **,ON
- PMBA EQU *-1
- LDN 0
- STD T5
- PMB1 UJP PMBX RETURN
- PMBB VFD 4/0,8/0,4/0,8/0,4/0,8/0,4/0,8/0,12/0
- PMR SPACE 4,10
- ** PMR - UNPACK M/R INTO *BCMR*.
- *
- * ENTRY (CN - CN+3) = REGISTER.
- *
- * EXIT MAINTENANCE REGISTER WRITTEN TO *BML* BUFFER.
- *
- * USES T3, T7.
- PMR SUBR ENTRY/EXIT
- LDN 0
- STD T3
- LDN CN
- STD T7
- PMR1 LDIL T7
- SHN -10
- STM BCMR,T3
- AOD T3
- LDIL T7
- LPC 377
- STM BCMR,T3
- AOD T3
- AOD T7
- SBN CN+4
- ZJN PMRX IF PACKING COMPLETE
- UJN PMR1 CONTINUE PACKING
- PWB SPACE 4,10
- ** PWB - PACK WORD TO BUFFER.
- *
- * ENTRY (BCMR - BCMR+7) = DATA WORD.
- * (BP) = OFFSET INTO *BML* BUFFER.
- *
- * EXIT (A) = BITS 60 - 63 OF DATA WORD RIGHT JUSTIFIED.
- * BITS 0 - 59 OF DATA WORD MOVED TO *BML* WORD.
- PWB SUBR ENTRY/EXIT
- LDM BCMR PACK REGISTER INTO BUFFER
- SHN 10
- LMM BCMR+1
- SHN -4+22
- STI BP
- SHN 0+4-22
- SHN 10
- LMM BCMR+2
- STM 1,BP
- LDM BCMR+3
- SHN 10
- LMM BCMR+4
- SHN -4+22
- STM 2,BP
- SHN 0+4-22
- SHN 10
- LMM BCMR+5
- STM 3,BP
- LDM BCMR+6
- SHN 10
- LMM BCMR+7
- SHN -4+22
- STM 4,BP
- SHN 0+4-22
- UJP PWBX RETURN
- RMR SPACE 4,10
- ** RMR - READ MAINTENANCE REGISTER.
- *
- * ENTRY (BDMR - BDMR+3) = M/R CONTROL WORD.
- * (MS - MS+1) = ADDRESS OF MAINTENANCE REGISTER.
- * (T5) = BYTE WITH NEXT REGISTER NUMBER TO LOG.
- * (T6) = 0 IF STATUS SUMMARY NOT YET LOGGED.
- *
- * EXIT (A) = 0, IF MORE BUFFERS TO CHECK.
- *
- * USES CN - CN+3, MS - MS+1, T5.
- *
- * CALLS PMB, PMR.
- RMR SUBR ENTRY/EXIT
- RMR1 LDML BDMR,T5 GET NEXT REGISTER NUMBER
- NJN RMR2 IF REGISTER IS PRESENT
- LDD T6
- NJN RMRX IF ALL REGISTERS LOGGED
- RMRA LDN 1 SET STATUS SUMMARY LOGGED
- STD T6
- RMR2 AOD MS+1 READ MAINTENANCE REGISTER
- SHN -14
- RAD MS
- SHN 14
- LMD MS+1
- CRDL CN
- RJM PMR PACK REGISTER INTO *BCMR* BUFFER
- RJM PMB PACK M/R INTO *BML* MESSAGE
- ZJN RMRX IF BUFFER COMPLETE
- UJN RMR1 PROCESS NEXT REGISTER
- SCA SPACE 4,10
- ** SCA - SET M/R BUFFER CONTROL WORDS ADDRESS.
- *
- * EXIT (MB - MB+1) = ADDRESS OF FIRST M/R CONTROL WORD.
- *
- * CALLS DOB.
- *
- * USES CM - CM+3, MB - MB+1.
- *
- * MACROS RPTR.
- SCA SUBR ENTRY/EXIT
- RJM DOB
- SCAA ADK DFHL
- * UJN SCA2 (*DFT* VERSION 4 OR ABOVE)
- SCA1 STD MB+1 SAVE ADDRESS
- SHN -14
- STD MB
- UJN SCAX RETURN
- SCA2 ADK DFBC
- CRDL CM READ M/R BUFFER CONTROL WORD POINTER
- RPTR CM CONVERT ADDRESS
- UJN SCA1 SAVE ADDRESS
- SDA SPACE 4,10
- ** SDA - SET NOS REQUEST HEADER ADDRESS.
- *
- * EXIT (A) = ADDRESS OF NOS REQUEST HEADER.
- SDA SUBR ENTRY/EXIT
- SDAA LDC ** (ADDRESS OF NOS REQUEST HEADER)
- UJN SDAX RETURN
- SID SPACE 4,10
- ** SID - SET SECDED ID TABLE INFORMATION.
- *
- * ENTRY (MS - MS+1) = ADDRESS OF M/R BUFFER.
- *
- * EXIT (A) = NUMBER OF SECDED ENTRIES.
- *
- * USES CM - CM+4, MS - MS+1, T1 - T1+4.
- SID SUBR ENTRY/EXIT
- LDD MS READ MEMORY SIZE
- SHN 14
- LMD MS+1
- CRD CM
- ADN 1 READ MEMORY MODEL
- CRD T1
- LDD T1+3
- SHN -4
- STM IBMG+2 STORE MEMORY MODEL
- LDDL CM ADD MEMORY SIZE TO *BML*
- SHN 22-4
- STM IBMF+3
- SHN 4-22
- SHN 10
- STD T1
- LDDL CM+1
- SHN -10
- LMD T1
- STM IBMF+4
- LDN 2 ADVANCE TO SECDED ENTRIES
- RAD MS+1
- SHN -14
- RAD MS
- * CALCULATE SECDED TABLE SIZE.
- LDN 0
- STD T4
- SID1 LDD MS READ NEXT SECDED ENTRY
- SHN 14
- LMD MS+1
- ADD T4
- CRD CM
- LDD CM CHECK IF EMPTY ENTRY
- ADD CM+1
- ADD CM+2
- ADD CM+3
- ADD CM+4
- SBN 1
- MJN SID2 IF LAST ENTRY
- AOD T4
- UJN SID1 CHECK NEXT ENTRY
- SID2 LDD T4 RETURN SECDED SIZE
- UJP SIDX RETURN
- UCC SPACE 4,10
- ** UCC - UPDATE CTI CLOCK.
- *
- * ENTRY DURING TOP-OF-HOUR PROCESSING.
- *
- * EXIT *1MA* CALLED IF TIME IS MIDNIGHT.
- *
- * USES CM - CM+4.
- *
- * MACROS MONITOR.
- UCC SUBR ENTRY/EXIT
- LDN PDTL CHECK TIME
- CRD CM
- LDD CM+3
- LPN 77
- NJN UCCX IF NOT MIDNIGHT
- LDD IR+1 UPDATE CONTROL POINT NUMBER
- LPN 37
- RAM UCCA+1
- LDD MA WRITE *1MA* REQUEST TO MESSAGE BUFFER
- CWM UCCA,ON
- MONITOR RPPM REQUEST PP FOR *1MA*
- UJN UCCX RETURN
- UCCA VFD 18/3L1MA,6/**,12/6,12/,12/
- WLB SPACE 4,10
- ** WLB - WRITE LAST *BML* MESSAGE.
- *
- * ENTRY DATA FOR LAST *BML* MESSAGE IN BUFFER.
- * (T4) = WORD COUNT OF MESSAGE.
- *
- * EXIT LAST *BML* MESSAGE WRITTEN.
- *
- * CALLS DFM.
- *
- * USES CM - CM+4.
- WLB SUBR ENTRY/EXIT
- LDM IBMG+1 CLEAR CONTINUATION BIT
- SCN 4
- STM IBMG+1
- LDN ZERL
- CRD CM
- LDD T4 SET BYTE COUNT
- SHN 2
- ADD T4
- STD CM+1
- LDC IBMF+BMLN SEND LAST *BML* MESSAGE
- RJM DFM
- UJN WLBX RETURN
- LINS SPACE 4,10
- LINS BSS 0 TABLE OF LONG INSTRUCTIONS
- LIST16
- SPACE 4,10
- ** COMMON DECKS.
- *CALL COMPDLI
- QUAL COMPIMB
- LIST X
- *CALL COMPIMB
- LIST *
- QUAL *
- IMB EQU /COMPIMB/IMB
- SPACE 4,15
- ** MAINTENANCE REGISTER BUFFERS.
- BCMR EQU *
- BDMR EQU BCMR+10
- PRGB EQU BDMR+10 PP REGISTER BUFFER
- BHDR EQU PRGB *EMB* HEADER WORD
- MBUF EQU BHDR+5 MODEL DEPENDENT DATA *BML* BUFFER
- ERRPL PRGB+240B-EPFW PP REGISTER BUFFER OVERFLOW
- ERRPL MBUF+50D*5-EPFW MODEL DEPENDENT DATA BUFFER OVERFLOW
- TITLE OVERLAYABLE SUBROUTINES.
- * THESE SUBROUTINES ARE OVERLAYED BY THE MAINTENANCE REGISTER
- * AND MODEL DEPENDENT DATA BUFFERS.
- SBA SPACE 4,25
- ** SBA - SET BUFFER ADDRESSES.
- *
- * EXIT (DC - DC+3) = *DFT* CONTROL WORD.
- * (DOBA - DOBA+1) = DFT/OS BUFFER ADDRESS.
- * (SDAA - SDAA+1) = NOS REQUEST HEADER ADDRESS.
- * (MRBA - MRBA+1) = ADDRESS OF M/R BUFFERS.
- * (LMRB) = LENGTH OF M/R BUFFER.
- * MACHINE ID, MESSAGE ID AND CHANNEL PLACED IN *BML*
- * MESSAGE BUFFER.
- * *DFT* VERSION PLACED IN *BML* MESSAGE BUFFER.
- * CODE MODIFIED TO SKIP LOGGING IF NOS/VE IS LOGGING.
- *
- * IN ADDITION, FOR *DFT* VERSION 4 OR ABOVE -
- * (DFTV) = *DFT* VERSION.
- * (LMRA) = SIZE OF ELEMENT COUNTER BUFFER.
- * (FNRA - FNRA+1) = NON-REGISTER DATA ADDRESS.
- * (LSSA - LSSA+1) = SUPPORTIVE STATUS BUFFER ADDRESS.
- * (MDBA - MDBA+1) = MODEL DEPENDENT BUFFER ADDRESS.
- *
- * USES CM - CM+4, CN - CN+4, DC - DC+3.
- *
- * CALLS DLI, DOB, DSP.
- *
- * MACROS ISTORE, RPTR.
- SBA SUBR ENTRY/EXIT
- LDC SBAL DEFINE LONG INSTRUCTIONS
- RJM DLI
- RJM DSP READ *DFT/OS* BUFFER POINTER
- ADK DSCM+3
- CRDL CN
- RPTR CN,DOBA SET *DFT/OS* BUFFER ADDRESS
- RJM DOB READ *DFT* CONTROL WORD
- ADK DFCW
- CRDL DC
- ADK DFRQ-DFCW READ NOS REQUEST HEADER POINTER
- CRDL CM
- ADK DFMR-DFRQ READ M/R BUFFERS POINTER
- CRDL CN
- RPTR CN,MRBA SAVE FWA OF M/R BUFFERS
- RPTR CM,SDAA SET ADDRESS OF NOS REQUEST HEADER
- LDDL DC+2 SET LENGTH OF M/R BUFFER
- SHN -10
- STM LMRB
- LDDL DC+1 GET *DFT* VERSION
- SHN -10
- LPN 77
- STM IBMG SET *DFT* VERSION INTO *BML*
- SHN -2
- STM DFTV SAVE *DFT* VERSION (0 = VERSION 3)
- ZJP SBA2 IF *DFT* VERSION 3
- ISTORE SCAA,(UJN SCA2) USE POINTER TO FIND CONTROL WORDS
- RJM DOB
- ADK DFMD READ MODEL DEPENDENT BUFFER POINTER
- CRDL T1
- ADK DFSS-DFMD READ SUPPORTIVE STATUS BUFFER POINTER
- CRDL CM
- ADK DFNR-DFSS READ NON-REGISTER DATA POINTER
- CRDL CN
- RPTR T1,MDBA SAVE FWA OF MODEL DEPENDENT BUFFER
- RPTR CM,FSSA SAVE FWA OF SUPPORTIVE STATUS DATA
- LDM IBMG CHECK FOR *DFT* VERSION 5 AND ABOVE
- SBN 5
- MJN SBA1 IF *DFT* VERSION 4 OR PRIOR
- RPTR CN,FNRA SAVE FWA OF NON-REGISTER DATA
- LDDL DC+3 CHECK DEDICATED MODE
- SHN 21-DCDM
- PJN SBA1 IF *DFT* IS IN DEDICATED MODE
- LDD IR+2 CHECK FOR TOP OF HOUR
- LPN SPTP
- ZJN SBA0 IF NOT TOP OF HOUR
- ISTORE CTPB,(LDN SPTH) SET TO SECOND TOP OF HOUR FUNCTION
- UJN SBA1 CONTINUE
- SBA0 LDD IR+2 CHECK FOR TOP OF HOUR PASS TWO
- LPN SPTH
- ZJN SBA1 IF NOT TOP OF HOUR PASS TWO
- ISTORE DPPA,(UJN DPP5) SET TO RECALL *DFT*
- * LPN SPTP
- LPN SPLG
- STD IR+2
- LDD IA REWRITE INPUT REGISTER
- CWD IR
- SBA1 RJM DOB
- ADK DFEC READ ELEMENT COUNTER BUFFER POINTER
- CRDL CM
- LDD CM+3 SAVE SIZE OF BUFFER
- STM LMRA
- SBA2 LDDL DC+3 CHECK OS LOGGING FLAG
- SHN 21-DCLG
- MJN SBA3 IF 170 LOGGING
- ISTORE LMRC,(UJN LMRX) SKIP LOGGING
- LDC LJMI SET *LJM*
- STM CTPA
- LDC CTPX SET *LJM* ADDRESS
- STM CTPA+1
- LDBC (MRV7,MRIL)
- STM FOMA+1
- LDBC (MRV7,MRIL)
- LMC SCNI
- STM MEPC
- SBA3 LDC MMFL SET MACHINE ID INTO *BML*
- CRD CM
- LDD CM
- STM IBMG+3
- LDC /COMSDFS/HM0250 SET MESSAGE ID INTO *BML*
- STM IBMF
- LDN MR SET CHANNEL NUMBER INTO *BML*
- RAM IBMF+2
- LDC 400000B+SBAL CLEAR LONG INSTRUCTIONS
- RJM DLI
- LJM SBAX RETURN
- SBAL BSS 0 TABLE OF LONG INSTRUCTIONS
- LIST16
- TITLE COMMON PRESET.
- PRESET SPACE 4,10
- ** PRESET - COMMON PRESET CODE FOR *1MB* AND *1SC*.
- *
- * THIS MACRO PROVIDES IDENTICAL CODE FOR *1MB* AND *1SC*.
- *
- * ENTRY (IR+2) = *1MB* FUNCTION BITS.
- *
- * EXIT (MF) = MAINFRAME TYPE.
- * = 0 = MF70 = CYBER 70.
- * = 1 = MF170 = CYBER 170.
- * = 2 = MF700 = CYBER 170 - 700 SERIES.
- * = 3 = MF865 = CYBER 170 - 865.
- * = 4 = MF875 = CYBER 170 - 875.
- * = 5 = MF180 = CYBER 180 CLASS MACHINE.
- * = 6 = MF176A = CYBER 176 LEVEL A.
- * = 7 = MF176B = CYBER 176 LEVEL B.
- * (PN) = PP NUMBER * 100B
- *
- * ERROR EXIT TO *PPR* IF CALLED WITH INCORRECT FUNCTION CODE.
- *
- * USES MF, T1, T3, T4, CM - CM+4, MI - MI+4, SC - SC+4.
- *
- * CALLS DFM.
- PRESET MACRO
- PRESET RMT
- LIST D
- PRS SUBR ENTRY/EXIT
- LDK MABL READ MAINFRAME IDENTIFICATION
- CRD MI
- LDC SCRL READ *SCRL* WORD
- CRD SC
- LDN MF70 PRESET CYBER 70 MAINFRAME TYPE
- STD MF
- LDD MI+1
- SHN 21-7
- PJN PRS8 IF CYBER 70
- SHN 21-13-21+7+22
- MJN PRS3 IF NOT CYBER 180 CLASS MACHINE
- SHN 0-2-21+13+22
- LPN 21
- ZJN PRS2 IF CYBER 170 - 865
- LMN 1
- ZJN PRS1 IF CYBER 170 - 875
- LDN MF180&MF875
- PRS1 LMN MF875&MF865
- PRS2 LMN MF865
- UJN PRS7 SET MACHINE TYPE
- PRS3 SHN 0-10-21+13
- LMN 17
- ZJN PRS5 IF CYBER 176 LEVEL A
- LMN 16&17
- ZJN PRS6 IF CYBER 176 LEVEL B
- LPN 1
- ZJN PRS4 IF CYBER 170 - 700 SERIES
- LDN MF170&MF700
- PRS4 LMN MF700&MF176A
- PRS5 LMN MF176A&MF176B
- PRS6 LMN MF176B
- PRS7 STD MF
- PRS8 LDD IR+2 CHECK FUNCTION BITS
- SBK SPMX
- MJN PRS12 IF LEGAL FUNCTION
- * PROCESS INCORRECT FUNCTION CODE.
- LDC PRSA ISSUE CALL ERROR MESSAGE
- RJM DFM
- MONITOR DPPM
- LJM PPR EXIT TO PP RESIDENT
- PRS12 LDD CP SET CONTROL POINT NUMBER IN PP CALL
- SHN -7
- RAM CKPA+1
- LDN PPCP STORE LOGICAL PP NUMBER BEING USED
- CRD CM
- LDD IA
- SBD CM+4
- SHN -3
- SBN 12 CHECK BARREL
- MJN PRS12.1 IF IN LOWER BARREL
- ADN 20-12 ADJUST FOR PP20-PP31
- PRS12.1 ADN 12
- SHN 6
- STM IBMF+2
- STD PN
- LJM PRS13 COMPLETE PRESET
- PRSA DATA C* 1MB - CALL ERROR.*
- LIST *
- PRESET RMT
- PRESET ENDM
- TITLE PRESET.
- SPACE 4,10
- ** COMMON PRESET.
- PRESET
- PRESET HERE
- PRS13 LDD CP
- SHN -7
- RAM MEPD+1 PRESET CP IN *1DS* CALL
- * PLUG *EMB* ADDRESSES.
- LDK EMBP FETCH *EMB* POINTER
- CRD CM
- .CM1 EQU CM+1
- LDC .CM1*10000+TEMB
- RJM STA SET *EMB* ADDRESSES
- LJM PRSX EXIT PRESET
- TEMB BSS 0 TABLE OF *EMB* ADDRESSES
- QUAL COMPIMB
- TEMB HERE
- QUAL *
- CON 0 TERMINATE TABLE
- STA SPACE 4,10
- ** STA - SET TABLE ADDRESSES.
- *
- * ENTRY (A) = 6/ TP, 12/ TA
- * TP = TABLE POINTER.
- * TA = INSTRUCTION TABLE ADDRESS.
- *
- * EXIT (A) = 0.
- *
- * USES T0, T1, T2.
- STA1 STD T2 SET INSTRUCTION ADDRESS
- LDM 1,T1
- RAM 1,T2 SET LOWER 12 BITS OF ADDRESS
- SHN -14
- ADI T1 SET UPPER 6 BITS OF ADDRESS
- LPN 37
- RAI T2
- AOD T0 ADVANCE INSTRUCTION LIST
- STA2 LDI T0
- NJN STA1 IF NOT END OF TABLE
- STA SUBR ENTRY/EXIT
- STD T0
- SHN -14 SET ADDRESS POINTER
- STD T1
- UJN STA2 ENTER LOOP
- L1MB EQU * LWA+1 OF *1MB* CODE
- SPACE 4,10
- OVERFLOW PPFW,EPFW
- TTL 1MB/1SC - SCR ERROR PROCESSOR.
- TITLE
- IDENT 1SC,PPFW
- QUAL 1SC
- *COMMENT 1MB - SCR ERROR PROCESSOR.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- SEP SPACE 4,10
- *** SEP - SCR ERROR PROCESSOR.
- *
- * *SEP* IS THE MAIN DRIVER THAT PROCESSES ERRORS
- * DETECTED IN THE SCR (OR SIMULATED SCR). *1SC* IS CALLED
- * FOR LOGGING *UIDL* (SEE *COMSSCR*) UNIQUE SECDED ERRORS,
- * FOR END-OF-HOUR PROCESSING, AND FOR ALL SCR ERRORS OTHER
- * THAN SECDED ERRORS.
- *
- * *1SC* FIRST CHECKS FOR GROUP 1 AND GROUP 2 FATAL ERRORS (SEE
- * *COMSSCR*). IF ANY OF THESE BITS ARE SET, *1SC* DISPLAYS
- * *FATAL MAINFRAME ERROR*, CHECKPOINTS THE DEVICES (IF NOT A
- * IAF ERROR), REQUESTS STEP MODE, AND HANGS THE PP. IF NO
- * FATAL ERROR BITS ARE DETECTED, *1SC* CONTINUES CHECKING FOR
- * OTHER ERRORS.
- *
- * *1SC* THEN CHECKS THE S/C REGISTER FOR BITS 36 AND/OR
- * 37 SET. IF BIT 36 (POWER FAILURE) IS SET, THE STEP
- * REQUEST BIT IN CM WORD *SCRL* IS SET AND A STEP FUNCTION
- * IS ISSUED. THE S/C REGISTER(S) ARE READ ALONG WITH THE
- * TIME OF DAY. IF ONLY BIT 36 IS SET, THE MESSAGE
- * *POWER FAILURE.* IS DISPLAYED AT THE SYSTEM CONTROL
- * POINT. IF BOTH BITS 36 AND 37 ARE SET, THE MESSAGE
- * *POWER DOWN.* IS DISPLAYED. IF BIT 37 ALONE IS SET, *1CK*
- * IS CALLED TO PERFORM A SYSTEM CHECKPOINT AND THE MESSAGE
- * *SHUTDOWN IMMINENT.* IS ENTERED IN THE ERROR LOG AND
- * DISPLAYED AT THE SYSTEM CP. THEN THE STEP REQUEST BIT
- * IS SET AND A STEP FUNCTION IS ISSUED. DURING THIS TIME
- * AND SUBSEQUENTLY, BITS 36 AND 37 ARE MONITORED AND THE
- * CONTROL POINT MESSAGE KEPT UP TO DATE. IF BIT 36 BECOMES
- * SET, STEP MODE IS IMMEDIATELY REQUESTED. IF BOTH BITS
- * BECOME CLEAR, THE MESSAGE *POWER/ENVIRONMENT NORMAL.*
- * IS DISPLAYED AT THE SYSTEM CONTROL POINT, THE S/C
- * REGISTER(S) AND THE TIME OF DAY ARE READ, AND THE STEP
- * REQUEST BIT IS CLEARED, ENABLING THE ENTERING OF THE
- * *DSD* COMMAND *UNSTEP.* BY THE OPERATOR. WHEN *UNSTEP.*
- * IS EXECUTED, *1SC* ENTERS INTO THE ERROR LOG AS
- * APPROPRIATE, THE MESSAGE *SR HH.MM.SS. POWER FAILURE.*
- * OR *SR HH.MM.SS. POWER DOWN.*. THE LAST MESSAGE SEQUENCE
- * IN THE ERROR LOG BEFORE *1MB* DROPS WILL BE
- * *SR HH.MM.SS. POWER/ENVIRONMENT NORMAL.*.
- * (ON A CYBER 70, BIT 0 OF THE INTERLOCK REGISTER INDICATES
- * POWER FAILURE. THERE IS NO SHUTDOWN IMMINENT BIT. THE
- * POWER FAILURE PROCEDURE DESCRIBED ABOVE IS FOLLOWED
- * EXCEPT THE MESSAGE PREFIX BECOMES *IR* INSTEAD OF *SR*.)
- *
- * IF S/C REGISTER BITS 36 AND/OR 37 ARE NOT SET,
- * *1SC* S/C REGISTER(S) PROCESSING WILL, FOR EACH
- * AVAILABLE S/C REGISTER, CLEAR APPROPRIATE ERROR
- * BITS, AND ISSUE ERROR INFORMATION TO THE BML.
- *
- * FOR PP MEMORY PARITY ERRORS, *1SC* WILL DISPLAY A
- * *PP MEMORY PARITY ERROR* MESSAGE AT THE SYSTEM
- * CONTROL POINT.
- *
- * EACH SINGLE BIT SECDED ERROR DETECTED IN THE SCR (OR
- * SIMULATED SCR) WILL BE COUNTED. THE FIRST *UIDL* UNIQUE
- * PER HOUR WILL BE LOGGED (SUBSEQUENT SINGLE BIT SECDED
- * ERRORS DETECTED BY MONITOR WILL MERELY INCREMENT THE COUNTS
- * AND CLEAR THE ERROR BITS IN MONITOR ITSELF). AT THE END OF
- * EACH HOUR, THE *TIME PROCESSING* CALL TO *1SC* WILL CAUSE
- * THE CURRENT SINGLE BIT SECDED ERROR COUNT TO BE LOGGED TO
- * THE ERROR LOG. THE CM AND LCME SECDED ID TABLES AND COUNTS
- * WILL ALSO BE LOGGED TO THE BML. THESE TABLES AND COUNTS
- * WILL THEN BE CLEARED AFTER LOGGING. THE ESM SECDED
- * ERROR LOG IS ALSO LOGGED TO THE BML, IF AN ESM
- * MAINTENANCE PORT IS DEFINED.
- *
- * FOR CYBER 176 MACHINES, LCME SINGLE BIT SECDED
- * ERRORS ARE HANDLED IN A SIMILAR MANNER. THE
- * THRESHOLD VALUE FOR LCME IS ALSO DEFINED BY *UIDL*.
- *
- * ALL DETECTED DOUBLE BIT SECDED ERRORS WILL BE LOGGED.
- *
- * NOTE - *1SC* IS, TO AN EXTENT, FUNCTION-DRIVEN BY BITS. ONE
- * BIT IN THE PARAMETER LIST DENOTES WHETHER OR NOT MONITOR HAS
- * DETECTED A CM SINGLE BIT SECDED ERROR. A SECOND BIT
- * SPECIFIES IF AN LCME SINGLE BIT SECDED ERROR HAS BEEN
- * DETECTED. A THIRD BIT DENOTES IF END-OF-HOUR PROCESSING HAS
- * BEEN SPECIFIED. THUS, AN OPEN WINDOW FOR SECDED ERRORS
- * EXISTS FROM THE TIME MONITOR CALLS *1SC* UNTIL *1SC* BEGINS
- * PROCESSING. THIS PRESENTS NO MAJOR CONCERN, HOWEVER, SINCE
- * *1SC* WILL NOT PROCESS ANY SECDED ERRORS NOT DETECTED BY
- * MONITOR. THOSE SECDED BITS WILL REMAIN SET UNTIL MONITOR
- * DETECTS THE ERROR IN ITS NEXT CYCLE.
- * WHEN *1SC* IS FINISHED, IT WILL CLEAR BIT 59 IN
- * CM LOCATION *SCRL*, SET BY *MTR*, TO RE-ENABLE
- * S/C REGISTER ERROR LOGGING.
- SPACE 4,10
- *** CALL.
- *
- *
- *T IR 18/ *1SC*,1/0,5/ CP,9/0,1/ C,1/ L,1/ T,24/0
- * CP CONTROL POINT NUMBER.
- * C SET IF CM SINGLE BIT SECDED ERROR.
- * L SET IF LCME SINGLE BIT SECDED ERROR (176 ONLY).
- * T SET IF TIME PROCESSING SPECIFIED.
- SPACE 4,10
- *** DAYFILE MESSAGES.
- *
- *
- * * 1SC - CALL ERROR.* = *1SC* WAS CALLED WITH AN ILLEGAL
- * FUNCTION BIT CODE.
- *
- * * 1SC - ESM CHANNEL HANG.* = THE ESM MAINTENANCE
- * CHANNEL HUNG ACTIVE WHILE WAITING TO FUNCTION THE
- * ESM TO READ THE ESM SECDED LOG.
- *
- * * 1SC - INCOMPLETE ESM SECDED READ.* = *1SC* DETECTED
- * THAT NOT ALL OF THE ESM SECDED LOG WAS READ OFF THE
- * ESM MAINTENANCE CHANNEL.
- SPACE 4,20
- *** SCR PROCESSING SYSTEM CONTROL POINT MESSAGES.
- *
- *
- * * FATAL MAINFRAME ERROR.*
- *
- * * POWER FAILURE.*
- * BIT 36 OF S/C REGISTER SET.
- * BIT 0 OF INTERLOCK REGISTER SET (CYBER 70)
- *
- * * SHUTDOWN IMMINENT.*
- * BIT 37 OF S/C REGISTER SET.
- *
- * * POWER DOWN.*
- * BOTH BITS 36 AND 37 OF S/C REGISTER SET.
- *
- * * POWER/ENVIRONMENT NORMAL.*
- * BOTH BITS 36 AND 37 OF S/C REGISTER CLEAR.
- SPACE 4,40
- *** SCR PROCESSING ERROR LOG MESSAGES.
- *
- *
- * *SR HH.MM.SS. POWER FAILURE.*
- * *IR HH.MM.SS. POWER FAILURE.* (CYBER 70)
- *
- * *SR SHUTDOWN IMMINENT.*
- *
- * *SR HH.MM.SS. POWER DOWN.*
- *
- * *SR HH.MM.SS. POWER/ENVIRONMENT NORMAL.*
- * *IR HH.MM.SS. POWER/ENVIRONMENT NORMAL.* (CYBER 70)
- *
- * WHERE HH.MM.SS. IS TIME OF DAY.
- * ABOVE MESSAGES ARE FOLLOWED BY S/C REGISTER(S)
- * CONTENTS READ AT TIME HH.MM.SS. IN FORMAT
- * SHOWN ABOVE.
- ORG PPFW
- SEP RJM PSC PRESET FOR *1SC*
- RJM RSC READ S/C REGISTER(S)
- SEPA RJM CFE CHECK FOR FATAL ERRORS
- * UJN *+2 (IF CYBER 70 AND NO SIMULATION)
- RJM PEF CHECK FOR POWER OR ENVIRONMENTAL FAILURE
- RJM TEB CLEAR TEST ERROR BITS IN S/C
- RJM PSB PROCESS SINGLE BIT ERRORS
- RJM IBM ISSUE BML MESSAGE
- RJM PTP PERFORM TIME PROCESSING
- LJM DPP DROP PP
- SPACE 4,10
- ** COMMON SUBROUTINES.
- COMMON
- LIST D
- COMMON HERE
- LIST *
- BIS SPACE 4,10
- ** BIS - BUILD ID SUMMARY TABLE ADDRESS.
- *
- * ENTRY (SC - SC+4) = SCR PARAMETER WORD *SCRL*.
- *
- * EXIT (T3) = ID TABLE LENGTH.
- *
- * USES T3, T6, T7.
- BIS SUBR ENTRY/EXIT
- LDD SC BUILD ID SUMMARY TABLE ADDRESS
- LPN 77
- SHN 14
- LMD SC+1
- BISA ADN UIDL
- * ADN UIDL*2 (ADD OFFSET FOR LCME ID TABLE)
- STD T7
- SHN -14
- STD T6
- LDN UIDL GET ID TABLE LENGTH
- STD T3
- UJN BISX RETURN
- CFE SPACE 4,10
- ** CFE - CHECK FOR FATAL ERRORS.
- *
- * ENTRY (MF) = MAINFRAME TYPE FLAG.
- *
- * EXIT IF ANY FATAL ERROR BITS SET, HANGS WITH STEP MODE
- * SET, FORCING DEADSTART. OTHERWISE, EXIT IS NORMAL.
- *
- * USES T2, CM - CM+4, CN - CN+4.
- *
- * CALLS CSH, TRB.
- CFE SUBR ENTRY/EXIT
- LDM TSCR+20 TEST SCR FOR GROUP ONE FATAL ERRORS
- LPC FEM0 (CYBER 170)
- * LPC FEM6 (CYBER 176)
- * LPC FEM7 (CYBER 170 - 700 SERIES)
- * LPC FEM8 (CYBER 170 - 865/875)
- CFEA EQU *-1
- NJN CFE1 IF FATAL ERROR
- LDM TSCR+17
- NJN CFE1 IF FATAL ERROR
- LDD CH+1
- ZJN CFE2 IF DONE WITH SCR REGISTERS
- LDM TSCR+40
- ZJN CFE2 IF NO GROUP ONE FATAL ERRORS
- CFE1 LJM CFE7 PROCESS FATAL ERROR
- CFE2 LDN CMCE CHECK FOR *CMC* ERROR (BIT CLEAR ON 176)
- RJM TRB TEST BIT
- NJN CFE6 IF *CMC* INPUT ERROR
- CFE3 LDN SECD
- RJM TRB
- ZJN CFE4 IF NO SECDED ERROR
- LDC SDSC CHECK IF DOUBLE BIT ERROR
- RJM TRB
- ZJN CFE4 IF NO DOUBLE BIT ERROR
- LDD MF
- SBN MF176A
- MJN CFE6 IF NOT A CYBER 176
- LJM CSH1 REQUEST STEP AND HANG
- CFE4 LDD MF GET MACHINE TYPE
- SBN MF176A
- MJN CFE5 IF NOT CYBER 176
- LDN LSCD CHECK FOR LCME SECDED ERROR
- RJM TRB
- ZJN CFE5 IF NO LCME SECDED ERROR
- LDC LDSC CHECK IF DOUBLE BIT ERROR
- RJM TRB
- NJN CFE6 IF DOUBLE BIT LCME ERROR
- CFE5 LJM CFEX RETURN
- CFE6 LDD CP CHECK SYSTEM CONTROL POINT FOR *PEET*
- ADN STSW
- CRD CM
- LDD CM+1
- LMN PEET
- ZJN CFE7 IF PROGRAM MODE CPUMTR ENCOUNTERED ERROR
- LDC VCPT*200+STSW CHECK FOR *IAF* ERROR
- CRD CM
- ADN JCIW-STSW-1
- CRD CN
- LDD CN+2
- LMC /SSD/IFSI
- NJN CFE8 IF NOT *IAF*
- LDD CM+1
- LMN PEET
- NJN CFE8 IF ERROR NOT IN *IAF* FL
- CFE7 AOM CKPA+2 SET FUNCTION TO CHECKPOINT DEVICES
- CFE8 RJM CSH CHECKPOINT, STEP, AND HANG
- CSHM DATA C* FATAL MAINFRAME ERROR.* DEFAULT *CSH* MESSAGE
- IBM SPACE 4,10
- ** IBM - ISSUE BML MESSAGE.
- *
- * ENTRY (IR+2) = *1MB* FUNCTION BITS.
- * (MF) = MAINFRAME TYPE.
- * (SC - SC+4) = SCR PARAMETER WORD *SCRL*.
- *
- * USES T3, T5 - T7, CM - CM+4, CN - CN+4, NW.
- *
- * CALLS BIS, DFM, OLB.
- IBM SUBR ENTRY/EXIT
- LDM TMID,MF GET MESSAGE ID
- STM IBMF
- LDC MMFL GET MACHINE ID
- CRD CM
- LDD CM
- STM IBMG+3
- LDD MF CHECK FOR CYBER 70
- ZJN IBMX IF INTERLOCK REGISTER
- LDN CHSC STORE SCR CHANNEL
- RAM IBMF+2
- LDD ER
- ZJN IBM3 IF NO ERRORS IN SCR
- RJM OLB OUTPUT LOG TO BML
- IBM3 LDD IR+2
- LPN SPTP
- ZJN IBMX IF NOT TIME PROCESSING
- * OUTPUT SECDED ERROR SUMMARY TABLE TO BML.
- IBM4 LDM IBMH+2 RESET FIRST SCR CHANNEL
- SCN 77
- LMD CH
- STM IBMH+2
- LDC /COMSDFS/HS0102 (CM SUMMARY TABLE)
- * LDC /COMSDFS/HS0104 (LCME SUMMARY TABLE)
- IBMA EQU *-1
- STM IBMF+1
- LDN ZERL SAVE 5 WORDS OF ZEROES
- CRD CN
- RJM BIS BUILD ID SUMMARY TABLE ADDRESS
- LDN 0 INITIALIZE TOTAL MESSAGE WORD COUNT
- STD NW
- IBM5 SOD T7 DECREMENT NEXT TABLE ENTRY ADDRESS
- PJN IBM6 IF NO UNDERFLOW
- SOD T6
- AOD T7
- IBM6 LDD T6 READ NEXT ID TABLE ENTRY
- SHN 14
- ADD T7
- CRD CM
- LDD CM+4 CHECK IF ERROR COUNT .GT. 0
- ZJN IBM7 IF REMAINING TABLE ENTRIES EMPTY
- AOD NW INCREMENT UNIQUE SECDED ERROR COUNT
- SOD T3
- NJN IBM5 IF ENTIRE ID TABLE NOT SEARCHED
- IBM7 RJM BIS REBUILD LWA+1 OF TABLE
- RAM BISA
- IBM8 LDD NW
- NJN IBM10 IF SECDED ERRORS OCCURRED THIS HOUR
- LDD MF
- SBN MF176A
- MJN IBM9 IF NOT CYBER 176
- LDN /COMSDFS/HS0104-/COMSDFS/HS0102 LCME ERRORS ID
- RAM IBMA
- LMC /COMSDFS/HS0104
- NJN IBM9 IF LCME ERRORS REPORTED
- LJM IBM4 PROCESS LCME SECDED SUMMARY TABLE
- IBM9 LJM IBMX RETURN
- IBM10 LDN 12 INITIALIZE BML MESSAGE BYTE COUNT
- STD T5
- LDC IBMH INITIALIZE MESSAGE BUFFER POINTER
- STM IBME
- IBM11 SOD T7 DECREMENT NEXT TABLE ENTRY ADDRESS
- PJN IBM12 IF NO UNDERFLOW
- SOD T6
- AOD T7
- IBM12 LDD NW
- ZJN IBM13 IF TIME TO ISSUE DAYFILE MESSAGE
- SOD NW DECREMENT UNIQUE SECDED ERROR COUNT
- LDD T6 READ NEXT TABLE ENTRY INTO MESSAGE BUFFER
- SHN 14
- ADD T7
- CRM IBMH,ON
- IBME EQU *-1
- * CRM IBMH+5,ON
- * CRM IBMH+12,ON
- * CRM IBMH+17,ON
- SBN 1 RESET CURRENT ID TABLE ADDRESS
- CWD CN CLEAR ID SUMMARY TABLE ENTRY
- LDN 5 INCREMENT MESSAGE BUFFER POINTER
- RAM IBME
- LDN 5 INCREMENT MESSAGE BYTE COUNT
- RAD T5
- SBN 36
- ZJN IBM13 IF BML MESSAGE BUFFER FULL
- LJM IBM11 PROCESS MORE TABLE ENTRIES
- * ISSUE DAYFILE MESSAGE.
- IBM13 LDN ZERL CLEAR CM REGISTERS FOR DAYFILE CALL
- CRD CM
- LDD T5 SET BYTE COUNT OF MESSAGE
- STD CM+1
- LDD NW
- ZJN IBM14 IF END OF BML MESSAGE
- LDM IBMG+1 SET CONTINUATION BIT STATUS
- SCN 4
- LMN 4
- UJN IBM15 STORE STATUS
- IBM14 LDM IBMG+1 STORE MESSAGE STATUS
- SCN 4
- IBM15 STM IBMG+1
- LDC IBMF+BMLN ISSUE DAYFILE MESSAGE
- RJM DFM
- LDM IBMG+1 SET NOT FIRST BLOCK FLAG
- SCN 10
- LMN 10
- STM IBMG+1
- LJM IBM8 CONTINUE PROCESSING
- SPACE 4,10
- TMID INDEX TABLE OF MESSAGE IDS
- INDEX MF170,/COMSDFS/HM0200 CYBER 170
- INDEX MF700,/COMSDFS/HM0201 CYBER 170 - 700 SERIES
- INDEX MF865,/COMSDFS/HM0204 CYBER 170 - 865
- INDEX MF875,/COMSDFS/HM0205 CYBER 170 - 875
- INDEX MF176A,/COMSDFS/HM0202 CYBER 176 LEVEL A
- INDEX MF176B,/COMSDFS/HM0203 CYBER 176 LEVEL B
- INDEX MFMAX
- ODW SPACE 4,10
- ** ODW - OUTPUT DESCRIPTOR WORD TO SCR.
- *
- * ENTRY (A) = DESCRIPTOR WORD.
- * CHANNEL INSTRUCTION SET.
- *
- * EXIT (A) = SCR REPLY WORD.
- ODW SUBR ENTRY/EXIT
- OAN CHSC OUTPUT DESCRIPTOR WORD
- * OAN CHSC+20 (SECOND SCR)
- * OAN 15 (INTERLOCK REGISTER)
- ODWA EQU *-1
- IAN CHSC INPUT SCR REPLY WORD
- * IAN CHSC+20 (SECOND SCR)
- * IAN 15 (INTERLOCK REGISTER)
- ODWB EQU *-1
- UJN ODWX EXIT
- OLB SPACE 4,10
- ** OLB - OUTPUT LOG TO *BML*.
- *
- * ENTRY (CH+1) = 0, IF ONLY ONE SCR REGISTER.
- * TABLE *TSCR* CONTAINS SCR SECDED DATA.
- *
- * USES CM - CM+4, T3 - T5.
- *
- * CALLS DFM.
- OLB8 LDN ZERL CLEAR FOR DAYFILE CALL
- CRD CM
- LDN 6*5 SET MESSAGE LENGTH
- STD CM+1
- LDC IBMF+BMLN ISSUE DAYFILE MESSAGE
- RJM DFM
- LDM IBMG+1 CHECK CONTINUATION BIT
- LPN 4
- ZJN OLBX IF COMPLETE, RETURN
- LDN 14 SET NOT FIRST BLOCK FLAG
- STM IBMG+1
- UJN OLB1 ISSUE NEXT MESSAGE
- OLB SUBR ENTRY/EXIT
- LDC /COMSDFS/HS0100
- STM IBMF+1
- LDN 0 PRESET INPUT TABLE INDEX
- STD T3
- OLB1 LDN 0 PRESET *BML* MESSAGE INDEX
- STD T4
- OLB2 LDM TSCR,T3 SCR ERROR LOG TABLE
- STM IBMH,T4 MOVE ONE BYTE FROM INPUT TABLE TO *BML*
- AOD T3 INCREMENT INPUT TABLE INDEX
- AOD T4 INCREMENT *BML* MESSAGE INDEX
- LMN 4*5
- ZJN OLB4 IF AT END OF *BML* MESSAGE BUFFER
- LDD T3
- ADC -NSCB (FIRST SCR ERROR LOG)
- OLBA EQU *-1
- * ADC -NSCB-NSCB (SECOND SCR ERROR LOG)
- NJN OLB2 IF NOT AT END OF ERROR LOG
- OLB3 LDN 0 CLEAR BYTES AT END OF ERROR LOG
- STM IBMH,T4
- AOD T4
- LMN 4*5
- NJN OLB3 IF MORE BYTES TO CLEAR
- LDM IBMG+1 CHECK CONTINUATION BIT
- LPN 4
- NJN OLB5 IF PROCESSING SECOND SCR *BML* MESSAGE
- LDD CH+1
- ZJN OLB6 IF ONLY ONE SCR *BML* MESSAGE
- LDC -NSCB-NSCB RESET FOR END OF SECOND SCR *BML* MESSAGE
- STM OLBA
- OLB4 LDM IBMG+1 SET CONTINUATION BIT
- SCN 4
- LMN 4
- UJN OLB7 STORE STATUS
- OLB5 LDM IBMF+2 CHANGE TO SECOND SCR CHANNEL
- SCN 77
- LMD CH+1
- STM IBMF+2
- OLB6 LDM IBMG+1 CLEAR CONTINUATION BIT
- SCN 4
- OLB7 STM IBMG+1
- LJM OLB8 CONTINUE
- PTP SPACE 4,15
- ** PTP - PERFORM TIME PROCESSING.
- *
- * ENTRY (IR+2) = *1MB* FUNCTION BITS.
- * (MF) = MAINFRAME TYPE.
- *
- * EXIT THE ESM SECDED ERROR LOG IS LOGGED TO THE
- * BML FOR A *TIME PROCESSING* CALL, IF AN ESM
- * MAINTENANCE PORT IS DEFINED.
- *
- * USES CM - CM+4, T3.
- *
- * CALLS CCO, CRC, DFM, PES, *2TH*.
- *
- * MACROS EXECUTE.
- PTP SUBR ENTRY/EXIT
- LDD IR+2 CHECK FOR *TIME PROCESSING* FUNCTION
- LPN SPTP
- ZJN PTPX IF NOT *TIME PROCESSING* FUNCTION
- EXECUTE 2TH LOAD TOP-OF-HOUR ROUTINES
- LDC CECL READ ERROR COUNTERS
- CRD CM
- CRM IBMG,ON
- LDD CM
- ADD CM+1
- ADD CM+2
- ADD CM+3
- ADD CM+4
- NJN PTP1 IF ERRORS TO REPORT
- LJM PTP2 CLEAR COUNTS
- PTP1 LDN ZERL CLEAR MESSAGE BUFFER
- CRD CM
- CRM IBMF,ON
- SBN 1
- CRM IBMH,ON
- SBN 1
- CRM IBMH+5,ON
- LDC CECL CLEAR ERROR COUNTERS
- CWD CM
- LDD T3 IOU CORRECTED ERROR COUNT
- STM IBMH+4 PLACE IN BML MESSAGE
- LDC /COMSDFS/HM0410 SET MESSAGE ID
- STM IBMF
- LDC /COMSDFS/HS0101 SET MESSAGE SYMPTOM
- STM IBMF+1
- LDN 3*5 SET BYTE COUNT FOR BML MESSAGE
- STD CM+1
- LDC IBMF+BMLN ISSUE BML MESSAGE
- RJM DFM
- LDN ZERL CLEAR BML BUFFER
- CRM IBMG,ON
- PTP2 RJM /IHD/CRC CLEAR RELOAD COUNT IN CONTROLWARE TABLE
- RJM /IHD/CCO CLEAR COUNTS IN EST/MST ENTRIES
- LDD MF CHECK FOR CYBER 70
- ZJN PTP3 IF PROCESSING INTERLOCK REGISTER
- RJM /IHD/PES PROCESS ESM SECDED LOGGING
- PTP3 LJM PTPX RETURN
- RSC SPACE 4,15
- ** RSC - READ S/C REGISTER(S).
- *
- * READS THE CONTENTS OF THE S/C REGISTER(S) FROM
- * CHANNEL 16 AND/OR CHANNEL 36.
- *
- * ENTRY (MF) = MAINFRAME TYPE.
- *
- * EXIT TABLE *TSCR* CONTAINS HARDWARE COPY OF SCR.
- *
- * USES T1, T2, T3, T4.
- *
- * CALLS CHN, ODW.
- RSC SUBR ENTRY/EXIT
- * READ S/C REGISTER.
- LDC TSCR SET BUFFER ADDRESS
- * LDC TSCR+50 (POWER FAILURE)
- RSCA EQU *-1
- STD T1
- STD T2
- LDD CH+1 SECOND SCR CHANNEL
- SHN 0-4 CONVERT 0 TO 0, 36 TO 1
- STD T4
- RSC1 LDN NSCB-1 SET S/C WORD TO READ
- STD T3
- RSC2 LDD T3 READ WORD (T3) OF S/C REGISTER
- RJM ODW OUTPUT DESCRIPTOR WORD
- STI T2 SAVE S/C CONTENTS
- AOD T2 INCREMENT *TSCR* BUFFER ADDRESS
- SOD T3 DECREMENT WORD COUNT FOR S/C
- PJN RSC2 IF NOT FINISHED WITH S/C
- SOD T4
- NJN RSC3 IF FINISHED WITH BOTH S/C,S
- LDN CHSC+20 CHANNEL 36
- RJM CHN CHANGE TO CHANNEL 36 S/C
- UJN RSC1 LOOP FOR CHANNEL 36 S/C
- RSC3 LDD CH FIRST SCR CHANNEL
- RJM CHN RESET CHANNEL FOR BITS 36 AND 37
- LDM 20,T1 CLEAR FIRST SCR BYTE 0 INACTIVE BITS
- LPC ABM0 CYBER 170 ACTIVE BIT MASK
- * LPC ABM6 (CYBER 176)
- * LPC ABM7 (CYBER 170 - 700 SERIES)
- * LPC ABM8 (CYBER 170 - 865/875)
- RSCB EQU *-1
- STM 20,T1
- LDM 17,T1 CLEAR FIRST SCR BYTE 1 INACTIVE BITS
- RSCC SCN 0
- * SCN INB6 (CYBER 176)
- * SCN INB1 (CPU 1 OFF)
- * SCN INB0 (CPU 0 OFF)
- STM 17,T1
- LDM 40,T1 CLEAR SECOND SCR BYTE 1 INACTIVE BITS
- RSCD SCN 0
- * SCN INB6 (CYBER 176)
- * SCN INB1 (CPU 1 OFF)
- * SCN INB0 (CPU 0 OFF)
- STM 40,T1
- LJM RSCX RETURN
- PEF SPACE 4,15
- ** PEF - CHECK FOR POWER OR ENVIRONMENTAL FAILURE.
- *
- * EXIT NORMAL IF POWER FAILURE OR ENVIRONMENTAL BITS NOT SET.
- * NO EXIT TAKEN IF POWER FAILURE AND/OR ENVIRONMENTAL
- * BITS REMAIN SET.
- * EXIT THROUGH *UBS* OTHERWISE.
- *
- * USES T2.
- *
- * CALLS CKC, CKP, DFM, IEL, RSC, RSM, TPE, UBS.
- PEF SUBR ENTRY/EXIT
- RJM TPE TEST POWER FAILURE AND ENVIRONMENTAL BITS
- ZJN PEFX IF NEITHER SET
- LPN 1
- ZJN PEF2 IF NO POWER FAILURE
- * ENTRY HERE FROM *UBS* IF POWER FAILURE SET FOR FIRST TIME.
- PEF1 RJM RSM REQUEST STEP
- LDM UBSC,T1 SET MESSAGE
- SBN 5
- STM PEFA
- SBN 1
- STM UBSB
- LDN TIML READ TIME
- CRM *,ON
- PEFA EQU *-1 (TIME MESSAGE ADDRESS)
- LDC TSCR+50 SET BUFFER ADDRESS
- STM RSCA
- LDC LDNI+1 SET POWER FAILURE PREVIOUSLY PROCESSED
- STM UBSD
- RJM RSC READ S/C REGISTER(S)
- LDC TSCR RESET BUFFER ADDRESS
- STM RSCA
- UJN PEF3 WAIT FOR CONDITION TO CHANGE
- PEF2 RJM CKP CALL *1CK* IF NOT ALREADY CALLED
- LDC MSGF-1+ERLN
- RJM DFM
- RJM CKC CHECK FOR *1CK* COMPLETE
- RJM RSM REQUEST STEP MODE
- PEF3 RJM UBS UPDATE BIT STATUS
- UJN PEF3 WAIT UNTIL CLEAR
- PSB SPACE 4,15
- ** PSB - PROCESS SINGLE BIT SECDED ERRORS.
- *
- * ENTRY (IR+2) = FUNCTION BITS.
- * (MF) = MAINFRAME TYPE.
- *
- * EXIT SECDED ERROR BITS ARE CLEARED IN THE SCR IF THEIR
- * CORRESPONDING FUNCTION BITS IN IR+2 WERE SET.
- *
- * USES ER.
- *
- * CALLS ODW.
- PSB SUBR ENTRY/EXIT
- LDD IR+2 CHECK FOR CM SECDED FUNCTION BIT SET
- LPN SPCS
- ZJN PSB2 IF CM SECDED FUNCTION BIT NOT SET
- AOD ER SET ERROR FLAG
- LDC FCCL+SECD CLEAR SECDED ERROR
- RJM ODW
- LDD MF TEST FOR CYBER 176
- SBN MF176A
- MJN PSBX IF NOT CYBER 176
- LDC FCSB+CCRT SET CM RANK II CLEAR
- RJM ODW
- LDC FCCL+CCRT CLEAR CM RANK II CLEAR
- RJM ODW
- PSB2 LDD IR+2 CHECK FOR LCME SECDED FUNCTION BIT SET
- LPN SPLS
- ZJN PSBX IF LCME SECDED FUNCTION BIT NOT SET
- PSB3 AOD ER SET ERROR FLAG
- LDC FCCL+LSCD CLEAR LCME SECDED ERROR
- RJM ODW
- LDC FCSB+LCRT SET LCME RANK II CLEAR
- RJM ODW
- LDC FCCL+LCRT CLEAR LCME RANK II CLEAR
- RJM ODW
- LJM PSBX EXIT
- TEB SPACE 4,15
- ** TEB - CLEAR TEST/ERROR BITS IN S/C.
- *
- * ENTRY (CH) = SCR CHANNEL NUMBER.
- * (MF) = MAINFRAME TYPE.
- * (CH+1) = 0, IF ONLY ONE SCR CHANNEL.
- * (TSCR) = TABLE CONTAINING COPY OF THE SCR(S).
- *
- * EXIT ERROR BITS THAT ARE SET IN *TSCR* ARE CLEARED FROM
- * THE SCR WITH THE EXCEPTION OF BIT 3. ON A CYBER 176
- * BIT 11 IS ALSO NOT CLEARED. BIT 3 (AND BIT 11 ON A
- * CYBER 176) IS PROCESSED IN ROUTINE *PSB*.
- *
- * USES ER, T4, T5.
- *
- * CALLS CHN, ODW, TRB.
- TEB3 SOD T5
- PJN TEB1 IF SECOND CHANNEL
- TEB SUBR ENTRY/EXIT
- LDD CH+1
- SHN 0-4 CONVERT 0 TO 0, 36 TO 1
- STD T5
- LDD MF
- SBN MF176A
- PJN TEB1 IF CYBER 176
- LDN PSNI ENABLE CLEARING OF BIT 11
- STM TEBA
- TEB1 LDM CH,T5 SET REGISTER CHANNEL
- RJM CHN CHANGE CHANNEL
- LDN NTEB SET MAXIMUM ERROR BIT
- STD T4
- TEB2 SOD T4 TEST NEXT BIT
- MJN TEB3 IF END OF BITS
- LMN SECD
- ZJN TEB2 IF BIT 3
- LMN LSCD&SECD
- TEBA ZJN TEB2 IF BIT 11
- * PSN (NON-CYBER 176 MAINFRAMES)
- LMN LSCD RESTORE CONTENTS
- RJM TRB
- ZJN TEB2 IF NOT SET
- AOD ER SET ERROR FLAG
- LDC FCCL
- LMD T4
- RJM ODW CLEAR BIT
- UJN TEB2 LOOP FOR NEXT BIT
- CHN SPACE 4,10
- ** CHN - CHANGE S/C REGISTER CHANNEL.
- * MODIFIES CHANNEL INSTRUCTIONS IN SUBROUTINE *ODW*.
- *
- * ENTRY (A) = S/C REGISTER CHANNEL.
- CHN SUBR ENTRY/EXIT
- LMC OANI
- STM ODWA
- LMC IANI&OANI
- STM ODWB
- LPN 77
- LMN 36
- ZJN CHN1 IF CHANNEL 36
- LCN NSCB
- CHN1 ADC LDNI+NSCB*2
- STM TRBA
- UJN CHNX RETURN
- TPE SPACE 4,20
- ** TPE - TEST POWER FAILURE AND ENVIRONMENTAL BITS.
- *
- * EXIT IF POWER FAILURE BIT SET, (T1) = (A) = 1.
- * IF ENVIRONMENTAL BIT SET, (T1) = (A) = 2.
- * IF BOTH BITS SET, (T1) = (A) = 3.
- * IF NEITHER BIT SET, (T1) = (A) = 0.
- *
- * USES T1, T5.
- *
- * CALLS ODW.
- *
- * MACROS DELAY.
- *
- * NOTE - A *TEST* FUNCTION IS USED FOR THE FIRST CALL AND A
- * *TEST/CLEAR* FUNCTION IS USED FOR ALL FURTHER CALLS.
- * THIS PREVENTS A TRANSIENT SETTING OF BITS 36,37 FROM
- * CAUSING A SYSTEM CHECKPOINT IN ROUTINE *PEF* BUT CLEARING
- * BEFORE *1MB* CAN BE RECALLED TO LOG THE ERROR MESSAGES.
- TPE SUBR ENTRY/EXIT
- LDC 600 PRESET DELAY LOOP COUNT
- STM TPEF
- TPEA UJN TPE1 TEST BIT 36
- * PSN IF CYBER 70
- LDC FCTB TEST BIT 0 OF INTERLOCK REGISTER
- * LDC FCTC (SUBSEQUENT CALLS)
- TPEB EQU *-1
- RJM ODW OUTPUT DESCRIPTOR WORD
- STD T1 SET RETURN CODE
- LDC FCTC CHANGE TO TEST/CLEAR FUNCTION
- STM TPEB
- TPEC UJN TPE3 RESTORE EXIT VALUE
- * PSN IF SIMULATOR REQUESTED
- TPE1 LDC FCTB+MAPF TEST MAINS POWER FAILURE
- * LDC FCTC+MAPF (SUBSEQUENT CALLS)
- TPED EQU *-1
- RJM ODW OUTPUT DESCRIPTOR WORD
- STD T1 SET RETURN CODE
- LDC FCTB+SHIM TEST SHUTDOWN IMMINENT
- * LDC FCTC+SHIM (SUBSEQUENT CALLS)
- TPEE EQU *-1
- RJM ODW OUTPUT DESCRIPTOR WORD
- SHN 1 SET RETURN CODE
- RAD T1
- TPE1.1 UJN TPE4 CHANGE FUNCTION CODES
- * ZJN TPEX IF NO ERROR DETECTED
- TPEG EQU *-1
- LPN 1
- NJN TPE3 IF MAINS POWER FAILURE
- LDN 77 INNER LOOP DELAY COUNT
- STD T5
- TPE2 DELAY
- SOD T5
- NJN TPE2 IF NOT END OF INNER DELAY LOOP
- SOM TPEF
- NJN TPE1 IF NOT END OF DELAY PERIOD
- TPE3 LDD T1 GET RETURN CODE
- LJM TPEX RETURN
- TPE4 LDC FCTC+MAPF CHANGE TO TEST/CLEAR FUNCTION
- STM TPED
- ADN SHIM-MAPF
- STM TPEE
- ISTORE TPEG,(ZJN TPEX)
- LDD T1
- UJN TPE1.1 ENTER LOOP
- TPEF CON 0 DELAY LOOP COUNT
- TRB SPACE 4,10
- ** TRB - TEST S/C REGISTER BIT.
- *
- * ENTRY (A) BIT TO BE TESTED.
- *
- * EXIT (A) = 0 BIT CLEAR.
- * (A) = 1 BIT SET.
- *
- * USES T0, T1.
- TRB SUBR ENTRY/EXIT
- STD T0
- TRBA LDN NSCB SET WORD INDEX
- * LDN NSCB*2 (CHANNEL 36)
- STD T1
- TRB1 SOD T1
- LCN 14
- RAD T0
- PJN TRB1 IF WORD NOT FOUND
- ADN 14
- LMC SHNI+77
- STM TRBB
- LDM TSCR,T1
- TRBB SHN -0
- LPN 1
- UJN TRBX RETURN
- UBS SPACE 4,25
- ** UBS - UPDATE BIT STATUS.
- * CHECKS S/C REGISTER FOR STATUS OF POWER FAILURE (BIT 36) AND
- * SHUTDOWN IMMINENT (BIT 37), UPDATES CONTROL POINT MESSAGE IF
- * NECESSARY, EXITS TO POWER FAILURE ROUTINE IF BIT 36 SET FOR
- * THE FIRST TIME, AND TERMINATES IF BOTH BITS CLEAR
- * AFTER UNSTEP IS ENTERED BY OPERATOR.
- *
- * ENTRY (T2) = 77 IF FIRST ENTRY.
- * = PREVIOUS EXIT CONDITION OF *UBS*.
- * (T1) = OUTPUT OF *TPE*.
- *
- * EXIT (T2) = CONDITION CODE.
- * 1, IF POWER FAILURE (BIT 36) SET.
- * 2, IF SHUTDOWN IMMINENT (BIT 37) SET.
- * 3, IF BOTH BITS SET.
- * IF BOTH BITS CLEAR, WAITS FOR OPERATOR *UNSTEP*
- * COMMAND, THEN EXITS TO *DPP*.
- *
- * USES SC - SC+4.
- *
- * CALLS DFM, DPP, IEL, RSC, RSM, TPE.
- UBS9 LDD T2
- NJN UBS10 IF PREVIOUS CONDITION NOT ALL CLEAR
- RJM RSM RESTORE STEP MODE
- UBS10 LDD T1 SET CONDITION HISTORY
- STD T2
- UBS SUBR ENTRY/EXIT
- UBS1 RJM TPE TEST POWER FAILURE AND ENVIRONMENTAL BITS
- LMD T2
- NJN UBS2 IF CONDITION CHANGED
- LDD T1
- NJN UBSX IF NOT BOTH CLEAR
- LJM UBS5 CHECK STEP MODE
- UBS2 LDM UBSC,T1 GET MESSAGE ADDRESS
- STM UBSA
- LDD CP DISPLAY STSTEM CONTROL POINT MESSAGE
- ADN MS2W
- CWM *,TR
- UBSA EQU *-1 (MESSAGE ADDRESS)
- LDD T1
- ZJN UBS4 IF ALL CLEAR
- LPN 1
- ZJN UBS9 IF NOT POWER FAILURE
- UBSD LDN 0
- * LDN 1 (POWER FAILURE PREVIOUSLY PROCESSED)
- NJN UBS9 IF POWER FAILURE PREVIOUSLY PROCESSED
- LJM PEF1 PROCESS POWER FAILURE/ENVIRONMENTAL BITS
- UBS4 LDN TIML READ TIME OF DAY
- CRM TIMA,ON
- LDD SC CLEAR STEP REQUEST
- LPC 6777
- STD SC
- LDC SCRL WRITE SCRL
- CWD SC
- RJM RSC READ S/C REGISTER(S)
- UBS5 LDC SCRL CHECK STEP MODE
- CRD SC
- LDD SC
- SHN 21-10
- PJN UBS6 IF STEP NOT SET
- LDN 0 SET CONDITION HISTORY
- STD T2
- LJM UBS1 TEST POWER/ENVIRONMENTAL BITS
- UBS6 LDC 0 LOG PRELIMINARY MESSAGE
- UBSB EQU *-1 (MESSAGE ADDRESS)
- NJN UBS8 IF TWO MESSAGES TO BE LOGGED
- UBS7 LDN 0 CLEAR TWO MESSAGE INDICATION
- STM UBSB
- LDC MSGD-6
- UBS8 ADC ERLN
- RJM DFM
- LDM UBSB
- NJN UBS7 IF ALL MESSAGES NOT LOGGED
- STD CM+2 CLEAR INPUT FILE SCHEDULING FLAG
- MONITOR RSJM REQUEST SCHEDULER
- RJM PTP PERFORM TIME PROCESSING
- LJM DPP DROP PP
- * MESSAGE ADDRESS TABLE
- UBSC CON MSGD
- CON MSGE
- CON MSGF
- CON MSGG
- * ERROR LOG MESSAGES.
- MIDA CON 2RSR MESSAGE ID
- TIMA VFD 60/0
- MSGD DATA C* POWER/ENVIRONMENT NORMAL.*
- MIDB CON 2RSR MESSAGE ID
- VFD 60/0 TIME (READ BY ROUTINE *PEF*)
- MSGE DATA C* POWER FAILURE.*
- MIDC CON 2RSR MESSAGE ID
- MSGF DATA C* SHUTDOWN IMMINENT.*
- MIDD CON 2RSR MESSAGE ID
- VFD 60/0 TIME (READ BY ROUTINE *PEF*)
- MSGG DATA C* POWER DOWN.*
- SPACE 4,10
- ** TSCR - TABLE FOR THE CONTENTS OF THE S/C REGISTERS.
- *
- * THIS TABLE CONTAINS THE CONTENTS OF THE S/C REGISTER(S).
- * THE CHANNEL 16 REGISTER, WORDS 16 - 0, FIRST AND THE
- * CHANNEL 36 REGISTER, WORDS 16 - 0, NEXT.
- TSCR EQU * S/C REGISTER TABLE
- TSCRL EQU TSCR+4*NSCB LWA+1 OF S/C REGISTER TABLES
- PSC SPACE 4,10
- ** PCS - PRESET FOR 1SC.
- *
- * USES CH, CH+1, ER, NP, CM - CM+4.
- *
- * CALLS CFP, PRS.
- * CYBER 70 INITIALIZATION.
- PSC7 SOD CH CHANGE TO INTERLOCK REGISTER
- SOM ODWA
- SOM ODWB
- LDN PSNI ENABLE CYBER 70 POWER FAILURE CHECKING
- STM TPEA
- LDN SSTL CHECK FOR SCR SIMULATION
- CRD CM
- LDD CM+3
- SHN 21-3
- MJN PSC8 IF NOT SIMULATING SCR
- LDN PSNI ENABLE SIMULATED ENVIRONMENT CHECKING
- STM TPEC
- UJN PSCX RETURN
- PSC8 LDC 2RIR CHANGE MESSAGE IDENTIFICATION
- STM MIDA
- STM MIDB
- STM MIDC
- STM MIDD
- LDC UJNI+2 DISABLE FATAL ERROR CHECKING
- STM SEPA
- PSC SUBR ENTRY/EXIT
- LDC 2RSC * 1SC - CALL ERROR.*
- STM PRSA+1
- RJM PRS COMMON PRESET
- LDN CHSC SET SCR CHANNELS
- STD CH
- LDN 0
- STD CH+1
- STD ER CLEAR SCR ERROR FLAG
- STD NP INITIALIZE PHYSICAL PP COUNT
- LDN EABLL ELEMENT ATTRIBUTE BLOCK LENGTH
- STD T1
- LDK EABL READ MAINFRAME ATTRIBUTE BLOCK
- CRM EABB,T1
- LDN 2 READ I/O SYSTEM ENTRY
- STD T1
- LDM EABB+IOEI*5+1 GET ADDRESS OF VARIABLE IOU ENTRY
- SCN 77
- SHN 6
- ADM EABB+IOEI*5+0
- SHN 6
- CRM VMAB,T1
- LDN 0
- STD T1
- PSC0.1 LDN 12 INITIALIZE INDEX FOR BYTE
- STD T3
- LDM VMAB+1*5,T1 TEST BYTE FOR PP COUNT
- STD T4
- PSC0.2 LDD T4
- SHN 21-0
- STD T4
- MJN PSC0.3 IF PHYSICAL PP NOT PRESENT
- AOD NP INCREMENT PHYSICAL PP COUNT
- PSC0.3 SOD T3
- NJN PSC0.2 IF MORE PP BITS TO TEST
- AOD T1
- LMN 1
- ZJN PSC0.1 IF NEXT BYTE TO PROCESS
- LDM TFEM,MF SET SCR FATAL ERROR MASK
- STM CFEA
- LDM TABM,MF SET SCR ACTIVE BIT MASK
- STM RSCB
- LDD MF
- NJN PSC1 IF NOT CYBER 70
- LJM PSC7 CONTINUE CYBER 70 PRESET
- * CYBER 170, 700, 865/875 INITIALIZATION.
- PSC1 LDD MF
- SBN MF176A
- MJN PSC2 IF NOT CYBER 176
- RJM CFP CHECK FOR *FLPP* ERROR
- LDN INB6 CLEAR INACTIVE BITS IN SCR BYTE 2
- UJN PSC4 CHECK NUMBER OF S/C REGISTERS
- PSC2 LDD MI+1
- LPN 3
- ZJN PSC5 IF DUAL CPU PRESENT
- LPN 1
- ZJN PSC3 IF CPU 0 ON, CPU 1 OFF OR UNDEFINED
- LDN INB0&INB1 CLEAR INACTIVE BIT IN SCR FOR CPU 0
- PSC3 LMN INB1 CLEAR INACTIVE BIT IN SCR FOR CPU 1
- PSC4 RAM RSCD
- STM RSCC
- PSC5 LDD NP CHECK NUMBER OF S/C REGISTERS
- SBN 13
- MJN PSC6 IF ONLY 1 S/C REGISTER
- LDN 36 ENABLE SECOND REGISTER CHECKING
- STD CH+1
- PSC6 LJM PSCX RETURN
- SPACE 4,10
- ** COMMON PRESET.
- PRESET
- PRESET HERE
- PRS13 LJM PRSX EXIT PRESET
- CFP SPACE 4,10
- ** CFP - CHECK FOR *FLPP* ERROR.
- *
- * EXIT SCANNER POSITIONED TO *FLPP* WITH ERROR.
- *
- * USES T1 - T3.
- CFP2 LDD T3 CHECK NEXT BIT
- SHN -1
- CFP3 STD T3
- LPN 1
- ZJN CFP4 IF BIT TO BE CLEARED
- LDC FCSB&FCCL
- CFP4 LMD T2
- OAN CHSC+40
- IAN CHSC+40
- AOD T2 ADVANCE BIT NUMBER
- LMC FCCL+SCSL+4
- NJN CFP2 IF NOT END OF BITS
- LDN FCRD+FLPW READ *FLPP* STATUS
- OAN CHSC+40
- IAN CHSC+40
- LPN 37
- NJN CFPX IF ERROR DETECTED
- AOD T1 ADVANCE *FLPP* NUMBER
- LMN 20
- NJN CFP1 IF NOT END OF *FLPP-S*
- CFP SUBR ENTRY/EXIT
- LDN 1 SET STARTING *FLPP* NUMBER
- STD T1
- CFP1 LDC FCCL+SCSL PRESET FUNCTION AND BIT NUMBER
- STD T2
- LDD T1 SELECT *FLPP*
- UJN CFP3 ENTER LOOP
- SPACE 4,10
- TABM INDEX TABLE OF SCR ACTIVE BIT MASKS
- INDEX MF70,ABM0 CYBER 70
- INDEX MF170,ABM0 CYBER 170
- INDEX MF700,ABM7 CYBER 170 - 700 SERIES
- INDEX MF865,ABM8 CYBER 170 - 865
- INDEX MF875,ABM8 CYBER 170 - 875
- INDEX MF176A,ABM6 CYBER 176 LEVEL A
- INDEX MF176B,ABM6 CYBER 176 LEVEL B
- INDEX MFMAX
- SPACE 4,10
- TFEM INDEX TABLE OF SCR FATAL ERROR MASKS
- INDEX MF70,FEM0 CYBER 70
- INDEX MF170,FEM0 CYBER 170
- INDEX MF700,FEM7 CYBER 170 - 700 SERIES
- INDEX MF865,FEM8 CYBER 170 - 865
- INDEX MF875,FEM8 CYBER 170 - 875
- INDEX MF176A,FEM6 CYBER 176 LEVEL A
- INDEX MF176B,FEM6 CYBER 176 LEVEL B
- INDEX MFMAX
- EABB BSS EABLL*5 ELEMENT ATTRIBUTE BLOCK
- VMAB BSS 5*2 BUFFER FOR I/O SYSTEM ENTRY
- SPACE 4,10
- OVERFLOW PPFW,EPFW
- TTL 1MB/1MP - PROCESS SCR CHANNEL ERRORS.
- TITLE
- IDENT 1MP,PPFW
- QUAL CCE
- *COMMENT 1MB - CHANNEL ERROR PROCESSOR.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- SPACE 4,10
- *** 1MP - PROCESS SCR CHANNEL ERRORS.
- *
- * P. D. HAAS. 82/11/30.
- SPACE 4,10
- *** *1MP* IS CALLED BY *MTR* TO PERFORM PRELIMINARY
- * CHECKS ON THE SCR. IT RESIDES IN THE RPL TO ENSURE A
- * SUCCESSFUL LOAD IN CASE OF CHANNEL ERRORS ON A SYSTEM
- * DEVICE, AND AS SUCH SHOULD BE KEPT AS SMALL AS POSSIBLE.
- *
- * *1MP* CHECKS THE SCR FOR CHANNEL ERRORS, AND IF
- * NONE ARE FOUND OR IF NO SCR EXISTS, CALLS *1MB*. IF
- * CHANNEL ERRORS ARE INDICATED, *1MP* SCANS THE EST TO
- * DETERMINE IF SAID CHANNEL IS ASSOCIATED WITH MASS STORAGE
- * EQUIPMENT. IF SO, *1DS* WILL BE CALLED TO REMOVE THE CHANNEL
- * FROM SYSTEM USE.
- *
- * UPON COMPLETION, *1MP* LOADS *1MB*. CHANNEL
- * ERRORS ASSOCIATED WITH NON MASS STORAGE EQUIPMENT ARE
- * IGNORED.
- SPACE 4,10
- ** COMMON DECKS.
- *CALL COMS1DS
- SPACE 4,10
- **** DIRECT CELL USAGE.
- CH EQU IR+3 CHANNEL NUMBER
- ****
- TITLE MAIN PROGRAM.
- ORG PPFW
- CCE RJM PRS PRESET PROGRAM
- IJM CCE2,CHSC IF NO SCR
- LCN 0 CHANNEL 00 IS LEAST SIGNIFICANT BIT
- STD CH
- LDN FCRD+CPEW READ CHANNEL STATUS
- OAN CHSC
- IAN CHSC
- ZJN CCE1 IF NO PARITY ERRORS
- RJM CMC CHECK MASS STORAGE CHANNELS
- CCE1 IJM CCE2,CHSC+20 IF NO UPPER CHANNEL BANK
- LDN 20-1 CHANNEL 20 IS LEAST SIGNIFICANT BIT
- STD CH
- LDN FCRD+CPEW READ CHANNEL STATUS
- OAN CHSC+20
- IAN CHSC+20
- ZJN CCE2 IF NO PARITY ERRORS
- RJM CMC CHECK MASS STORAGE CHANNELS
- CCE2 LDD IA STORE INPUT REGISTER
- CWD IR
- LJM PPR LOAD AND EXECUTE
- TITLE SUBROUTINES.
- CMC SPACE 4,15
- ** CMC - CHECK MASS STORAGE CHANNEL.
- *
- * ENTRY (A) = CHANNEL STATUS WORD (BYTE) FROM SCR.
- * (CH) = INITIAL CHANNEL VALUE FOR BANK 0 OR 1.
- * (EM) = LAST MASS STORAGE EST ORDINAL + 1.
- *
- * USES T1, T4, T5, CM - CM+4, CN - CN+4.
- *
- * MACROS EXECUTE, MONITOR, SFA.
- CMC2 SFA EST,T5 READ EST ENTRY
- ADK EQDE
- CRD CN
- LDD CN
- SHN 21-13
- PJN CMC6 IF NOT MASS STORAGE
- LDD CN+1
- SHN 21-13
- PJN CMC3 IF PRIMARY CHANNEL ACCESS IS DISABLED
- SHN 13-21
- LMD CH
- LPN 37
- ZJN CMC4 IF CHANNEL MATCH
- CMC3 LDD CN+2
- SHN 21-13
- PJN CMC6 IF SECONDARY CHANNEL NOT PRESENT/DISABLED
- SHN 13-21
- LMD CH
- NJN CMC6 IF NOT A MATCH
- * CALL *1DS* TO GLOBALLY DOWN THE CHANNEL.
- CMC4 LDD MA PLACE *1DS* CALL IN MESSAGE BUFFER
- CWM CMCA,ON
- LDN 0 INITIALIZE RETRY COUNT
- STD T1
- CMC5 STD CM+1
- EXECUTE 1DS,=
- MONITOR RPPM CALL *1DS*
- LDD CM+1
- NJN CMC7 IF PP ASSIGNED
- AOD T1 INCREMENT RETRY COUNT
- SHN -3
- ZJN CMC5 IF RETRY LIMIT NOT REACHED
- UJN CMCX RETURN
- CMC6 AOD T5 ADVANCE EST ORDINAL
- LMD EM
- NJP CMC2 IF MORE DEVICES TO PROCESS
- CMC7 LDD T4
- NJN CMC1 IF MORE CHANNELS WITH ERROR
- CMC SUBR ENTRY/EXIT
- STD T4
- CMC1 AOD CH ADJUST CHANNEL NUMBER
- STM CMCA+3 STORE CHANNEL NUMBER IN *1DS* CALL
- LDD T4
- SHN 21-0 CHECK CHANNEL FLAG
- STD T4
- PJN CMC1 IF NOT CHANNEL WITH ERROR
- LDN NOPE INITIALIZE EST ORDINAL FOR SEARCH
- STD T5
- UJP CMC6 BEGIN EST SCAN
- CMCA VFD 18/3R1DS,6/,6/0,6/DWNF,12/0,12/0
- TITLE PRESET PROGRAM.
- PRS SPACE 4,10
- ** PRS - PRESET PROGRAM.
- *
- * EXIT (EM) = LAST MASS STORAGE EST ORDINAL + 1.
- *
- * USES EM, CM - CM+4, IR - IR+1, MI - MI+4.
- *
- * MACROS MONITOR.
- PRS3 LDK ESTP
- CRD CM
- LDD CM+3 SET LAST MASS STORAGE EST ORDINAL + 1
- STD EM
- PRS SUBR ENTRY/EXIT
- LDN NCPL
- CRD CM
- ADN MABL-NCPL
- CRD MI
- AOD CM+1 CHECK CONTROL POINT
- SHN 7
- LMD CP
- ZJN PRS1 IF CALLED BY SYSTEM
- MONITOR ABTM ABORT JOB
- LJM PPR EXIT TO PP RESIDENT
- PRS1 LDD MI+1
- SHN -6
- LPN 41
- LMN 1
- ZJN PRS2 IF LOWER 800 SERIES MACHINE
- LDN 1RS-1RM
- RAD IR
- LDN 1RC-1RB
- PRS2 SBN 1RP-1RB
- SHN 6
- RAD IR+1
- UJP PRS3 CONTINUE
- SPACE 4,10
- OVERFLOW PPFW,EPFW,CMR
- TTL 1MB/2TH - PROCESS COMMON TOP-OF-HOUR FUNCTIONS.
- TITLE
- QUAL IHD
- IDENT 2TH,IHDX
- *COMMENT 1MB - TOP-OF-HOUR PROCESSOR.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- SPACE 4,10
- *** 2TH - TOP-OF-HOUR PROCESSOR.
- *
- * J. M. MAREK 87/11/24.
- SPACE 4,10
- *** *2TH* IS CALLED BY *1MB* AND *1SC* TO PERFORM
- * THE FOLLOWING TOP-OF-HOUR TASKS -
- *
- * - ISSUE HOUR AND DAY MESSAGES TO THE DAYFILES.
- * - CLEAR THE RELOAD COUNT IN THE CONTROLWARE TABLE.
- * - CLEAR COUNTS IN THE EST AND MST.
- * - LOG ESM AND STORNET SECDED AND STATUS INFORMATION.
- SPACE 4,10
- * ASSEMBLY CONSTANTS.
- FRDL EQU 1010B FUNCTION - READ ESM SECDED LOG
- FRST EQU 1011B FUNCTION - RESET ESM SECDED LOG
- FRSP EQU 1040 FUNCTION - READ SIDE DOOR PORT STATUS
- FCSP EQU 1203 FUNCTION - CLEAR SIDE DOOR PORT STATUS
- DCSP EQU 1000 DATA - CLEAR SIDE DOOR PORT STATUS
- NESB EQU 83D NUMBER OF ESM SECDED LOG BYTES
- OVLO MAX /1MB/BCMR+5,/1SC/TSCRL+5
- ORG OVLO
- IHD SPACE 4,10
- ** IHD - ISSUE HOUR AND DATE TO DAYFILES.
- *
- * EXIT HOUR AND DATE MESSAGE ISSUED TO DAYFILES.
- *
- * USES CM+1.
- *
- * CALLS DFM.
- IHD SUBR ENTRY/EXIT
- LDN DTEL SET DATE IN DAYFILE MESSAGES
- CRM IHDA+7,ON
- SBN 1
- CRM IHDB+3,ON
- LDC IHDA ISSUE MESSAGE TO SYSTEM DAYFILE
- RJM DFM
- LDC ERLN+IHDA ISSUE MESSAGE TO ERROR LOG
- RJM DFM
- LDC ACFN+IHDB ISSUE MESSAGE TO ACCOUNT FILE
- RJM DFM
- UJN IHDX RETURN
- IHDA DATA C*SYSTEM DATE: NNNNNNNNNN*
- IHDB DATA C*SIDT, NNNNNNNNNN*
- CCO SPACE 4,10
- ** CCO - CLEAR COUNTS IN EST/MST ENTRIES.
- *
- * EXIT RELOAD COUNTS IN CONTROL MODULE EST ENTRIES CLEARED
- * IF NOT EQUAL TO RELOAD LIMIT.
- * RECOVERED AND UNRECOVERED ERROR COUNTS CLEARED IN EACH
- * MST IN WHICH THE *1SJ* PROCESSED BIT IS NOT SET.
- *
- * USES CM - CM+4, CN - CN+4, T0 - T7.
- *
- * MACROS MONITOR, SFA.
- CCO SUBR ENTRY/EXIT
- LDN ESTP INITIALIZE FOR EST SEARCH
- CRD T0
- CCO1 SOD T0+2 DECREMENT EST ORDINAL
- STD CM+1
- ZJN CCOX IF END OF EST
- * CLEAR CONTROL MODULE RELOAD COUNT IN EST.
- SFA EST READ EST ENTRY
- ADK EQDE
- CRD T3
- ADK EQAE-EQDE
- CRD CN
- LDD T3+3
- LMC 2RCM
- NJN CCO2 IF NOT *CM* DEVICE
- STD CM+4
- LDD CN+2
- SHN -6
- LPN 7
- ZJN CCO2 IF NO RELOAD COUNT
- SBN /MSP/CRTH
- ZJN CCO2 IF RELOAD LIMIT
- LDN SB2S
- STD CM+2
- LDC 7077
- STD CM+3
- MONITOR SEQM CLEAR RELOAD COUNT
- * CLEAR THRESHOLD COUNTS IN MST.
- CCO2 LDD T3
- SHN 21-13
- PJN CCO1 IF NOT MASS STORAGE DEVICE
- LDD T3+4 SET MST ADDRESS
- SHN 3
- STD CM+4
- SHN -14
- STD CM+3
- LDN 2 SET NUMBER OF REQUESTS
- STD CM+1
- LDD MA
- CWM CCOA,CM+1
- MONITOR UTEM
- LDD T3+4 SET MST ADDRESS
- SHN 3
- STD CM+4
- SHN -14
- STD CM+3
- LDN 2 SET NUMBER OF REQUESTS
- STD CM+1
- LDD MA
- CWM CCOB,CM+1
- MONITOR UTEM
- LJM CCO1 PROCESS NEXT EST ENTRY
- CCOA VFD 1/1,5/CTLL,6/1,6/11D,42/0 VERIFY *1SJ* BIT NOT SET
- VFD 1/0,5/CTLL,6/11D,6/0,42/0 CLEAR ERROR COUNT
- CCOB VFD 1/1,5/CTLL,6/1,6/23D,42/0 VERIFY *1SJ* BIT NOT SET
- VFD 1/0,5/CTLL,6/11D,6/12D,42/0 CLEAR ERROR COUNT
- CRC SPACE 4,10
- ** CRC - CLEAR RELOAD COUNTS IN CONTROLWARE TABLE.
- *
- * USES CM - CM+4, CN - CN+4, T2 - T7.
- *
- * MACROS MONITOR.
- CRC SUBR ENTRY/EXIT
- LDN ZERL
- CRD CN
- ADN CHTP-ZERL FETCH CHANNEL TABLES POINTER
- CRD T3+1
- LDN 1 PARAMETER COUNT FOR *UTEM* REQUEST
- STD T4
- LDN CTALL SET CONTROLWARE TABLE LENGTH
- STD T3
- SHN 1 CONTROLWARE TABLE OFFSET
- RAD T7
- SHN -14 SET CONTROLWARE TABLE ADDRESS
- RAD T6
- SHN 14
- LMD T7 READ CONTROLWARE TABLE
- CRM IBMH,T3
- LDN 0 INITIAL CHANNEL VALUE
- STD T5
- LDC IBMH-1 PRESET BYTE ADDRESS FOR TABLE SCAN
- STD T2
- LDN 3 RELOAD COUNT FIELD WIDTH
- STD CN
- CRC1 AOD T2 ADVANCE CONTROLWARE TABLE SEARCH
- LDI T2
- SHN -6 POSITION RELOAD COUNT FIELD
- LPN 7
- ZJN CRC2 IF NO COUNT
- LMN /MSP/CRTH
- ZJN CRC2 IF RELOAD LIMIT
- LDM CRCA,T5
- STD CN+1 DEFINE RELOAD COUNT FIELD IN WORD
- LDD MA
- CWD T3 *UTEM* REQUEST TO (CM - CM+4)
- CRD CM
- CWD CN STORE PARAMETER WORD
- MONITOR UTEM
- CRC2 AOD T5 ADVANCE CHANNEL BYTE INDEX
- LMN 5
- NJN CRC1 IF NOT 5 CHANNELS CHECKED
- STD T5
- AOD T7 ADVANCE CONTROLWARE TABLE ADDRESS
- SHN -14
- RAD T6
- SOD T3
- NJN CRC1 IF MORE CHANNELS TO CHECK
- LJM CRCX RETURN
- CRCA BSS 0 RELOAD COUNT FIELD BIT POSITIONS
- CON 54DS6
- CON 42DS6
- CON 30DS6
- CON 18DS6
- CON 6DS6
- PES SPACE 4,10
- ** PES - PROCESS ESM SECDED ERROR LOG.
- *
- * ENTRY (MF) = MAINFRAME TYPE.
- *
- * USES T1, T2, T5, CM - CM+4, CN - CN+4.
- *
- * CALLS C2D, DFM, OLB, PCI, WCF.
- *
- * MACROS DCHAN, RCHAN, RICHI, RSTC, SFA.
- PES SUBR ENTRY/EXIT
- LDN NOPE-1 SEARCH FOR EM DEVICE WITH MAINTENANCE PORT
- STD T5
- PES1 AOD T5 ADVANCE EST ORDINAL
- LMD EM
- ZJN PESX IF END OF MASS STORAGE DEVICES
- SFA EST,T5 READ EST ENTRY
- ADK EQDE
- CRD CN
- ADK EQAE-EQDE
- CRD CM
- LDD CN+3
- LMC 2RDE
- ZJN PES3 IF EXTENDED MEMORY ENTRY
- LMN 2RDP&2RDE
- PES2 NJN PES1 IF NOT EXTENDED MEMORY ENTRY
- PES3 LDD CM+2 SAVE MAINTENANCE PORT CHANNEL NUMBER
- LPN 37
- ZJN PES1 IF NO MAINTENANCE PORT DEFINED
- STD CN
- LMD PN SET PP NUMBER AND CHANNEL NUMBER
- STM IBMF+2
- * REQUEST MAINTENANCE PORT CHANNEL.
- RJM PCI PRESET CHANNEL INSTRUCTIONS
- RICHI REDEFINE I/O INSTRUCTIONS
- LDC 4000+0 REQUEST CHANNEL, RETURN IF DOWN
- CHTE *-1
- RCHAN
- LDD CM+1
- SHN 0-13
- NJN PES2 IF CHANNEL DOWN
- LDD CN+4 CHECK EM TYPE
- SHN 3
- ADN DILL
- CRD CM
- LDD CM+3
- SHN -6
- LPN 7
- LMN 5
- ZJN PES3.1 IF ESM
- LDK /COMSDFS/HM0173-/COMSDFS/HM0211 STORNET MESSAGE ID
- PES3.1 ADC /COMSDFS/HM0211 ESM MESSAGE ID
- STM IBMF
- LDD T5 SET EST ORDINAL
- STM IBMG
- SHN -3
- RJM C2D CONVERT UPPER TWO DIGITS
- STM PESA+1
- STM PESB+1
- LDD T5 CONVERT LOWER DIGIT
- LPN 7
- SHN 6
- ADC 2R0,
- STM PESA+2
- STM PESB+2
- * READ MAINTENANCE CHANNEL STATUS.
- AJM PES5,0 IF CHANNEL IS ACTIVE
- FNC FRSP,0
- LDN 77
- PES4 IJM PES6,0 IF ESM MAINTENANCE CHANNEL INACTIVE
- SBN 1
- NJN PES4 IF NOT TIMED OUT ON INACTIVE
- PES5 DCN 40
- LDC PESA ISSUE ERROR MESSAGE TO SYSTEM DAYFILE
- RJM DFM
- LDC PESA+ERLN ISSUE ERROR MESSAGE TO ERROR LOG
- RJM DFM
- LDD CN DROP CHANNEL
- DCHAN
- LJM PES1 RETURN
- PES6 ACN 0
- RJM WCF WAIT FOR CHANNEL FULL
- LDN 4
- STD NB
- IAM IBMH,0
- DCN 40
- FNC FCSP,0 CLEAR SIDE DOOR PORT STATUS
- LDK DCSP
- ACN 0
- OAN 0
- LDC /COMSDFS/HS0101
- STM IBMF+1
- RJM OLB OUTPUT LOG TO *BML*
- LDN 77
- FJM PES5,0 IF CLEAR OPERATION NOT COMPLETE
- DCN 40
- * READ MAINTENANCE CHANNEL STATUS.
- FNC FRDL,0 ISSUE ESM READ FUNCTION
- ACN 0
- RJM WCF WAIT FOR CHANNEL FULL
- LDC NESB
- STD NB
- IAM IBMH,0 READ LOG TO ESM SECDED TABLE
- DCN 40
- ZJN PES8 IF ALL SECDED DATA READ
- STD T1 SAVE COUNT OF WORDS NOT READ
- LDC NESB-1 PRESET INDEX TO BEGIN CLEARING TABLE
- STD T2
- PES7 LDN 0 CLEAR NEXT ESM TABLE BYTE
- STM IBMH,T2
- SOD T2 DECREMENT ESM TABLE INDEX
- SOD T1 DECREMENT COUNT OF WORDS TO BE CLEARED
- NJN PES7 IF MORE WORDS TO CLEAR
- LDC PESB ISSUE ERROR MESSAGE TO SYSTEM DAYFILE
- RJM DFM
- LDC PESB+ERLN ISSUE ERROR MESSAGE TO ERROR LOG
- RJM DFM
- PES8 FNC FRST,0 ISSUE ESM RESET FUNCTION
- LDD CN DROP CHANNEL
- DCHAN
- LDC /COMSDFS/HS0100
- STM IBMF+1
- RJM OLB OUTPUT LOG TO *BML*
- LJM PES1 RETURN
- PESA DATA C*EQ000, MAINTENANCE CHANNEL ERROR.*
- PESB DATA C*EQ000, INCOMPLETE SECDED READ.*
- OLB SPACE 4,15
- ** OLB - OUTPUT LOG TO *BML*.
- *
- * ENTRY (NB) = NUMBER OF BYTES TO WRITE TO *BML*.
- * (IBMF) = *BML* MESSAGE ID.
- * (IBMF+1) = *BML* SYMPTOM CODE.
- * (IBMF+2) = 6/ PP NUMBER, 6/ EM MAINTENANCE CHANNEL.
- * BUFFER *IBMH* CONTAINS *BML* DATA.
- *
- * USES T3, T4, CM - CM+4.
- *
- * CALLS DFM.
- OLB SUBR ENTRY/EXIT
- LDN 0
- STM IBMG+1 CLEAR NOT FIRST MESSAGE/CONTINUATION
- LDN ZERL CLEAR FOR DAYFILE CALL
- CRD CM
- LDD NB
- STD T4
- SBN 4*5+1
- PJN OLB3 IF MESSAGE CONTINUES
- OLB1 LDD T4 SET BYTE COUNT
- ADN 2*5
- STD CM+1
- OLB2 LDN 0 CLEAR REMAINDER OF MESSAGE
- STM IBMH,T4
- AOD T4
- SBN 4*5
- MJN OLB2 IF MORE BYTES TO CLEAR
- LDM IBMG+1 CLEAR CONTINUATION BIT
- SCN 4
- UJN OLB5 STORE CONTINUATION BIT
- OLB3 LDN 4*5 INITIALIZE MESSAGE OFFSET
- STD T3
- OLB4 LDN 6*5 SET MESSAGE LENGTH
- STD CM+1
- LDM IBMG+1 SET CONTINUATION BIT
- SCN 4
- LMN 4
- OLB5 STM IBMG+1
- LDC IBMF+BMLN ISSUE DAYFILE MESSAGE
- RJM DFM
- LDM IBMG+1 CHECK CONTINUATION BIT
- LPN 4
- ZJP OLBX IF COMPLETE, RETURN
- LDN 14
- STM IBMG+1
- LDN 0 PRESET *BML* MESSAGE INDEX
- STD T4
- OLB6 LDM IBMH,T3 MOVE ONE BYTE FROM INPUT TABLE TO *BML*
- STM IBMH,T4
- AOD T4 INCREMENT BUFFER INDEX
- AOD T3 INCREMENT MESSAGE INDEX
- LMD NB
- ZJP OLB1 IF AT END OF MESSAGE
- LDD T4
- LMN 4*5
- NJN OLB6 IF NOT AT END OF BUFFER
- UJP OLB4 OUTPUT BUFFER
- WCF SPACE 4,10
- ** WCF - WAIT FOR CHANNEL FULL.
- *
- * *WCF* WAITS 250 MICROSECONDS FOR THE CHANNEL TO BECOME FULL.
- *
- * EXIT TO *PES5* IF CHANNEL TIMES OUT.
- WCF SUBR ENTRY/EXIT
- LDM .DLY GET DELAY COUNT
- WCF1 FJM WCFX,0 IF MAINTENANCE CHANNEL FULL
- SBN 1
- NJN WCF1 IF NOT TIMED OUT
- LJM PES5 ISSUE ERROR MESSAGE
- RSTC RESTORE I/O INSTRUCTIONS
- PCI SPACE 4,10
- ** PCI - PRESET CHANNEL INSTRUCTIONS.
- *
- * ENTRY (CN) = MAINTENANCE CHANNEL NUMBER.
- * (CTABLE) = FWA OF CHANNEL TABLE.
- *
- * EXIT MAINTENANCE CHANNEL NUMBER IS ADDED TO ALL
- * CHANNEL INSTRUCTIONS IN SUBROUTINE *PES*.
- *
- * USES T1, T2.
- *
- * MACROS CHTB.
- PCI SUBR ENTRY/EXIT
- LDC CTABLE SET START OF CHANNEL TABLE
- STD T1
- PCI1 LDI T1
- ZJN PCIX IF AT END OF CHANNEL TABLE
- STD T2
- LDI T2 GET NEXT CHANNEL INSTRUCTION
- SCN 37
- LMD CN SET MAINTENANCE CHANNEL
- STI T2
- AOD T1
- UJN PCI1 CHECK NEXT TABLE ENTRY
- CTABLE CHTB TABLE TO PRESET ESM I/O INSTRUCTIONS
- COMMON SPACE 4,10
- * COMMON DECKS.
- *CALL COMPC2D
- IBM SPACE 4,10
- * *BML* MESSAGE BUFFER.
- IBMF VFD 12/0,12/0,6/0,6/0,24/0 MESSAGE ID/SYMPTOM CODE
- IBMG VFD 12/0,9/0,1/0,2/0,36/0 MESSAGE CONTINUATION BIT
- IBMH BSS 0 *BML* MESSAGE BUFFER (4 CM WORDS)
- IBMHL EQU 4*5 END OF *BML* BUFFER
- SPACE 4,10
- .1 MAX IBMHL,NESB,CTALL*5
- ERRNG EPFW-IBMH-.1 BUFFER OVERFLOWS ERROR PROCESSOR
- OVERFLOW IHDX,EPFW
- SPACE 4,10
- TTL 1MB - HARDWARE ERROR PROCESSOR.
- END
cdc/nos2.source/opl871/1mb.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator