cdc:nos2.source:opl871:dsdi
Table of Contents
DSDI
Table Of Contents
- [00011] DSDI - EXPRESS DEAD START DUMP INTERPRETER.
- [00013] EXPRESS DEAD START DUMP INTERPRETER.
- [00299] ASSEMBLY CONSTANTS.
- [00326] SUB-SYSTEM COMMON DECKS.
- [00403] MACRO DEFINITIONS.
- [00405] CARD - GENERATE DIRECTIVE PROCESSOR TABLE ENTRY.
- [00424] FIELD - GENERATE TABLE FIELD DESCRIPTOR.
- [00482] GETCM - READ 60-BIT CM WORDS FROM DUMP FILE.
- [00501] PRINT - PRINT LINE.
- [00520] RFDSC - REGISTER FILE DESCRIPTOR BUILDER.
- [00547] SCLASS - DEFINE SERVICE CLASS TABLE.
- [00573] STBL - SET TABLE POINTERS.
- [00593] S2BIT - CREATE BIT DEFINITIONS FOR THE CYBER 170-8×5.
- [00612] SXREG - CREATE MAINTENANCE REGISTER TABLE ENTRYS FOR THE
- [00650] FETS AND CONTROL STORAGE.
- [00680] BFMB - BML FILE MESSAGE BLOCK.
- [00910] MANAGED TABLES.
- [00912] TCMT - CENTRAL MEMORY TABLES.
- [00921] TDIR - BINARY DUMP FILE RANDOM DIRECTORY.
- [00930] TNFL - NEGATIVE FIELD LENGTH TABLE.
- [00936] TSCR - SCRATCH TABLE.
- [00943] TSC1 - SCRATCH TABLE.
- [00947] MAIN PROGRAM.
- [00949] MAIN PROGRAM.
- [01127] ERROR PROCESSORS.
- [01297] PNE - PROCESS NON-FATAL ERROR.
- [01362] COMMON DECKS.
- [01395] OPERATING SYSTEM TABLE DESCRIPTORS.
- [01410] TFLC - LOW CORE POINTER DESCRIPTORS.
- [01800] TFCP - CONTROL POINT AREA FIELD DESCRIPTORS.
- [02110] TFEJ - EXECUTING JOB TABLE FIELD DESCRIPTORS.
- [02144] TFES - EQUIPMENT STATUS TABLE FIELD DESCRIPTORS.
- [02170] TFFN - SYSTEM FILE NAME TABLE FIELD DESCRIPTORS.
- [02194] TFMS - MASS STORAGE TABLE FIELD DESCRIPTORS.
- [02315] TFJC - JOB CONTROL AREA FIELD DESCRIPTORS.
- [02380] TFEB - FIELD DESCRIPTORS FOR THE EI COMMUNICATIONS
- [02487] TFQF - QUEUED FILE TABLE FIELD DESCRIPTORS.
- [02523] TFSD - STATISTICAL DATA AREA FIELD DESCRIPTIONS.
- [02578] TSCT - SERVICE CLASS CONTROL TABLE.
- [02629] TCPR - CPU REQUEST QUEUE FIELD DESCRIPTORS.
- [02655] TPPR - PP REQUEST QUEUE FIELD DESCRIPTORS.
- [02677] TCRL - CPU RECALL QUEUE FIELD DESCRIPTORS.
- [02696] TPRL - PP RECALL QUEUE FIELD DESCRIPTORS
- [02719] TFTT - IAF TERMINAL TABLE FIELD DESCRIPTORS.
- [02773] TFMT - IAF MESSAGE STATUS TABLE FIELD DESCRIPTORS.
- [02795] TFMU - MAGNET UNIT DESCRIPTOR TABLE FIELD DESCRIPTORS.
- [02925] TLCW - *BDT* LIST CONTROL WORD FIELD DESCRIPTORS.
- [02958] TIBS - I/O BUFFER STATISTICS TABLE FIELD DESCRIPTORS.
- [02978] TPLT - PP LINK TABLE FIELD DESCRIPTORS.
- [03014] TCBE - CONTROL BUFFER TABLE FIELD DESCRIPTORS.
- [03075] TCCE - CHANNEL CONTROL TABLE FIELD DESCRIPTORS.
- [03108] TFTE - FUNCTION TIMEOUT TABLE FIELD DESCRIPTORS.
- [03129] THAE - HASH TABLE FIELD DESCRIPTORS.
- [03150] TPUE - PHYSICAL UNIT TABLE FIELD DESCRIPTORS.
- [03238] DIRECTIVE PROCESSING - MAIN ROUTINES.
- [03673] TCTP - TABLE OF CONTROLLER TYPE PARAMETERS.
- [07064] TMNO - TABLE OF MODEL NUMBER OFFSETS.
- [08260] SPUA - VALID PARAMETER TABLE.
- [08750] BML MAINTENANCE REGISTER FILE SUBROUTINES.
- [08752] CBF - CREATE BML MAINTENANCE REGISTER FILE.
- [09017] MRET - MAINTENANCE REGISTER ERROR ELEMENTS TABLE.
- [09033] DRA - DERIVE R-FORMAT ADDRESS.
- [09058] FOM - FIND OLDEST M/R ENTRY.
- [09118] GMR - GET MAINTENANCE REGISTER.
- [09143] LMB - LOCATE M/R BUFFER.
- [09182] PBH - PROCESS BML HEADER.
- [09215] PBL - PROCESS BML.
- [09345] TM9E - TABLE OF MODEL 990 SPECIAL ERRORS.
- [09406] RDB - RESET DATA BLOCK.
- [09425] SMR - STORE MAINTENANCE REGISTER.
- [09489] SMS - SET MESSAGE SIZE IN BML HEADER.
- [09514] TBM - TERMINATE BML MESSAGE.
- [09572] SUBROUTINES.
- [09574] APP - ANALYZE PPU.
- [09725] ASD - ASSEMBLE DIGITS.
- [09747] ASN - ASSEMBLE NAME.
- [09792] ASP - ANALYZE SELECTED PPUS.
- [09879] ASX - ASSEMBLE HEXADECIMAL DIGITS.
- [09905] ATC - ASSEMBLE TRACK CHAIN.
- [09999] BCP - BEGIN CONTROL POINT DUMP.
- [10022] BPN - BUILD PPU NAME.
- [10070] BST - DUMP BUFFER STATUS TABLE.
- [10155] CCM - PROCESS *CCM* (CRITICAL *NOS/VE* MEMORY) RECORDS.
- [10168] CCQ - CHECK FOR CIRCULAR QUEUE.
- [10194] CEA - CHECK *EI* ADDRESS.
- [10218] CEP - CHECK FOR EXTRANEOUS PARAMETERS.
- [10235] CKC - CRACK AND PROCESS DIRECTIVE CARD.
- [10277] CLE - CHECK FOR LAST TABLE ENTRY.
- [10301] CMB - CHECK MEMORY BOUNDS.
- [10334] CMP - PROCESS *CM* RECORD.
- [10381] CNL - CHECK NFL LENGTH.
- [10406] COF - COMPLETE OUTPUT FILES.
- [10453] CPC - CHECK PAGE CHANGE.
- [10496] CPD - COPY PP DATA TO BUFFER.
- [10523] CPN - CONVERT PP/CPP NUMBER.
- [10547] CPS - CHECK PAGE SPACE REMAINING.
- [10571] CRA - COMPUTE CONTROL POINT REFERENCE ADDRESS.
- [10594] CRS - COPY RECORD TO S.
- [10618] CSI - COLLECT SEGMENT INFORMATION.
- [10638] CST - CREATE SUBTITLE LINE.
- [10694] CTS - CONVERT TO STRING BUFFER.
- [10719] CVB - CONVERT *NOS/VE* BUFFER.
- [10755] CVE - CHECK CONTROLLER DATA VERIFICATION ERROR.
- [10784] DBB - DUMP BATCHIO BUFFER POINTS.
- [11145] DBP - DUMP BATCHIO PPUS.
- [11164] DBT - DUMP BUFFERED DEVICE TABLE.
- [11307] DCA - DUMP JOB DAYFILE POINTERS AND BUFFER.
- [11338] DCC - DUMP FIELD LENGTH IN *C* FORMAT.
- [11379] DCD - DUMP FIELD LENGTH IN *D* FORMAT.
- [11385] DCE - DUMP FIELD LENGTH IN *E* FORMAT.
- [11391] DCF - DUMP ATTACHED FILES.
- [11426] DCG - DUMP CONTROL POINT AREA IN *C* FORMAT.
- [11468] DCI - DUMP CONTROL POINT AREA IN *E* FORMAT.
- [11474] DCJ - DUMP CONTROL POINT AREA IN *D* FORMAT.
- [11480] DCM - DUMP CONTROL POINT EXTENDED MEMORY (USER ECS)
- [11554] DCN - DUMP NEGATIVE FIELD LENGTH IN *D* FORMAT.
- [11716] DCP - DUMP CONTROL POINT.
- [11762] DCQ - DUMP AND ANALYZE ALL ACTIVE PPUS ASSOCIATED WITH
- [11783] DCT - DUMP PARAMETERS IN DETAIL.
- [11806] DCX - PRINT CONTROL POINT EXCHANGE PACKAGE,
- [11929] DDB - DISPLAY *DFT* BLOCK.
- [11966] DFI - DUMP FILE INFORMATION.
- [12167] DFT - PROCESS DFT MESSAGE AND DFT/OS BUFFER.
- [12412] DHC - DUMP RHF FIELD LENGTH.
- [12425] DHP - DUMP RHF PPU-S.
- [12443] DHR - DISPLAY HEX REGISTER.
- [12468] DMB - DISPLAY MESSAGE BUFFER.
- [12503] DMP - DUMP MAGNET PPUS.
- [12518] DMQ - DUMP MAGNET QUEUE TABLE.
- [12567] DMR - DUMP MAINTENANCE REGISTERS.
- [12758] DMS - DUMP MAGNET TAPE PF STAGING TABLES.
- [12801] DMU - DUMP MAGNET UNIT DESCRIPTOR TABLES.
- [12866] DNN - PROCESS CPP-S.
- [12890] DOS - DISPLAY OCTAL DIGITS WITH LEADING ZERO SUPPRESSION.
- [12926] DOT - DUMP ORDINAL TABLE.
- [13005] DPB - DISPLAY PPU BYTE.
- [13054] DPN - DISPLAY PROCEDURE NAME.
- [13132] DPO - DUMP PP OVERLAY.
- [13196] DPP - DUMP PPU/FLPP IN *P* FORMAT.
- [13268] DPQ - DUMP PPU/FLPP IN *Q* FORMAT.
- [13318] DRT - DETERMINE RECORD TYPE.
- [13403] DSM - DUMP SIXTY-FOUR BIT MEMORY.
- [13570] DSP - DUMP 16-BIT PP.
- [13660] DSS - DUMP SUB-SYSTEM.
- [13705] DST - DUMP STAGING TABLE.
- [13741] DTB - DUMP TABLE.
- [13783] DTC - DUMP IAF COMMAND TABLE.
- [13891] DTE - DUMP IAF REENTRY TABLE.
- [13942] DTI - DUMP TABLE WITH INTERPRETATION.
- [14029] DTL - DUMP IAF POT LINK TABLE AND POTS.
- [14173] DTP - DUMP IAF PPUS.
- [14193] DTQ - DUMP TEN BYTES IN *Q* FORMAT.
- [14250] DTT - DUMP IAF TERMINAL TABLES.
- [14389] ECS - PROCESS *ECS* RECORD.
- [14416] ERF - POSITION TO EOR ON FILE F.
- [14433] ERS - END RECORD ON S-FILE.
- [14467] EVA - EXPAND VIRTUAL ADDRESS.
- [14494] FAC - FIND ASSIGNED CHANNEL.
- [14537] FBB - FILL BYTE BUFFER.
- [14637] FBP - FIND BYTE POSITION.
- [14669] FDW - FORMAT DATA WORD.
- [14694] FEM - FORMAT ENTRY POINT MAP LINE.
- [14754] FFD - FIND FWA OF DISK BUFFER AREA IN EXTENDED MEMORY.
- [14798] FLC - FORMAT PPU LOW CORE ANALYSIS LINE.
- [14960] FOL - FORMAT ONE LINE OF *P* DUMP.
- [15003] FON - FORMAT PPU OVERLAY NAME LINE.
- [15098] FPB - FILL PAGE BUFFER.
- [15195] FPL - FORMAT PPU COMMUNICATION REGISTER WORD.
- [15316] FPO - FORMAT PP OPERATING REGISTERS LINE.
- [15404] FPP - FIND PPU PROGRAM.
- [15459] FPR - FIND PROCESSOR RECORD.
- [15520] FPW - FORMAT CONTROL POINT PARAMETER LINE.
- [15887] FPX - FIND AND PACK EXCHANGE PACKAGE.
- [15987] FRV - FETCH REGISTER VALUE.
- [16014] FSC - FORMAT STATUS/CONTROL REGISTER CONTENTS.
- [16047] FTR - FORMAT TWO PP COMMUNICATION REGISTERS.
- [16095] FXA - FORMAT EXCHANGE AREA.
- [16290] FXC - FORMAT EXCHANGE PACKAGE REGISTER ADDRESS CONTENTS.
- [16328] FXW - FORMAT EXCHANGE PACKAGE WORD.
- [16477] GAT - GET ADDRESS TOKEN.
- [16598] GCS - GET CPU STATUS.
- [16628] GDA - GET DFT/OS BUFFER FWA (DFT CONTROL WORD).
- [16653] GDB - GET DAYFILE BUFFER.
- [16789] GEE - GET EJT ENTRY.
- [16837] GFL - GET FL AND RA.
- [16863] GHA - GET HARDWARE ADDRESS.
- [16968] GID - GET ELEMENT IDENTIFIER.
- [16994] GNF - GET NEXT FILE.
- [17081] GPS - GET PP SAVE AREA ENTRY.
- [17239] GRV - GET R-REGISTER VALUE.
- [17294] GSR - GET SELECTED RECORD.
- [17341] GTD - GENERATE DETAILED TABLE DUMP.
- [17392] GTE - GET TABLE ENTRY.
- [17456] GXA - GET EXCHANGE PACKAGE ADDRESS.
- [17488] HTS - HEX TO STRING BUFFER.
- [17516] ICT - INITIALIZE CHANNEL TABLE.
- [17547] IMR - PROCESS IOU MAINTENANCE REGISTER RECORD.
- [17585] IPA - INITIALIZE FOR PPU ANALYSIS.
- [17625] IPD - INITIALIZE FOR PPU/FLPP DUMP.
- [17672] IOQ - DISPLAY IOU IN LINE FORMAT.
- [17777] IPO - INSPECT PPU OCTAL BLOCK FORMAT.
- [17843] IPX - INSPECT PPU HEX BLOCK FORMAT.
- [17918] ISM - INITIALIZE FOR SIXTY-FOUR BIT MEMORY PROCESSING.
- [17963] ISS - INITIALIZE FOR SUB-SYSTEM DUMP.
- [18034] LDC - LIST DIRECTIVE CARD.
- [18070] LDD - LOAD DUMP DIRECTORY.
- [18111] LPW - LOAD 12 BIT WORD.
- [18153] MEM - PROCESS CENTRAL MEMORY RECORD.
- [18216] MRT - DUMP MACHINE RECOVERY TABLE.
- [18320] MST - DUMP MASS STORAGE TABLE.
- [18367] NPE - NEXT PAGE ENTRY.
- [18433] NXB - GET NEXT BYTE FROM RECORD.
- [18505] OTH - PROCESS MISCELLANEOUS RECORD.
- [18533] PBB - PRINT BYTE BUFFER
- [18631] PBC - PACK BUFFER CONTROLLER.
- [18922] PCH - PRINT CONTROL POINT DUMP HEADING.
- [18973] PCM - POSITION CYBER MEMORY.
- [19006] PCS - PROCESSOR CONTROL STORE.
- [19031] PCV - PROCESS CONTROLLER DATA VERIFICATION.
- [19192] PCW - PRINT CONTENTS OF SUB-SYSTEM WORDS.
- [19243] PDB - PRINT DAYFILE BUFFER.
- [19400] PDF - POSITION DUMP FILE.
- [19441] PDP - PRINT DAYFILE POINTERS.
- [19478] PEC - PRINT EIGHT CONTROL POINTS.
- [19603] PEN - PRINT BUFFERED DEVICE TABLE ENTRY NUMBER.
- [19626] PER - PROCESS ERROR EXIT.
- [19660] PFS - PRINT FILE SUMMARY.
- [19789] PIO - PRESET INPUT AND OUTPUT FILES.
- [19833] PKS - PACK CHARACTERS FROM STRING BUFFER.
- [19863] PMD - PROCESS MEMORY DUMP.
- [19989] PNF - PRINT NEGATIVE FL AREA.
- [20022] POM - POSITION CM/EXTENDED MEMORY.
- [20046] PPB - PRINT PAGE BUFFER.
- [20134] PPE - PROCESS PREMATURE EOF.
- [20151] PPO - PACK PP OPERATING REGISTERS.
- [20249] PRS - PRESET PROGRAM.
- [20348] PSM - POSITION SIXTY-FOUR BIT MEMORY.
- [20379] PTC - PRINT TRACK CHAIN.
- [20421] PTL - PRINT TABLE LINE.
- [20498] PTX - POSITION TO EXCHANGE PACKAGE.
- [20559] PVM - POSITION VIRTUAL MEMORY.
- [20583] PXH - PRINT PPU XP HEADING.
- [20612] PXM - PRINT MULTIPLE EXCHANGE PACKAGES.
- [20729] PXP - PRINT PPU EXCHANGE PACKAGES.
- [20778] P4F - PRINT FOUR BIT FLAGS.
- [20805] RBC - READ BUFFER CONTROLLER MEMORY.
- [20842] RBF - READ UP TO 512 WORDS OR TO EOR FROM FILE F.
- [20895] RBH - READ BLOCK OR HEADER RECORD.
- [20936] RBI - RANDOMIZE BINARY INPUT FILE.
- [21083] RBT - READ DATA IN BYTE FORMAT.
- [21168] RCM - READ 60-BIT CM.
- [21209] RCW - READ CYBER WORD.
- [21252] RDC - READ DIRECTIVE INPUT CARD.
- [21298] RDR - READ DUMP RECORD.
- [21333] RMB - READ MEMORY BYTES.
- [21380] RMR - READ MAINTENANCE REGISTER.
- [21416] RNF - READ NEGATIVE FL OF CONTROL POINT.
- [21462] RPB - READ PPU BYTE.
- [21490] RPD - READ PPU DATA TO CORE.
- [21561] RSP - RESET PRINT DENSITY SELECTION.
- [21614] RST - READ SYSTEM TABLES.
- [21758] RUC - RESET USER SELECTED CONTROLS.
- [21786] SAI - SET ASCII INTERPRETATION.
- [21818] SBC - SELECT NEXT BUFFER CONTROLLER CHANNEL.
- [21904] SBL - STORE BLANKS IN PRINT LINE.
- [21924] SCH - SET SC DIRECTIVE HEADER.
- [21950] SCM - SET CENTRAL MEMORY.
- [21985] SCP - SELECT NEXT CONTROL POINT/PSEUDO-CONTROL POINT TO DUMP.
- [22100] SET DISPLAY CODE INTERPRETATION.
- [22133] SDT - SEARCH DESCRIPTOR TABLE.
- [22161] SEA - SET EXCHANGE ADDRESS FOR CYBER 176.
- [22184] SEC - SET EXTENDED CORE STORAGE.
- [22237] SEM - SET UNIFIED EXTENDED MEMORY.
- [22266] SFP - SEARCH FOR PAGE.
- [22324] SFR - SEARCH FOR REGISTER.
- [22366] SHA - SET HEX ADDRESSES.
- [22426] SLP - SET LOGICAL PP IN MESSAGE.
- [22462] SMT - SELECT MASS STORAGE TABLE TO DUMP.
- [22558] SNO - SELECT NEXT LIST OPTION.
- [22589] SNP - SELECT NEXT PPU/FLPP TO DUMP.
- [22638] SPA - SELECT NEXT PPU TO ANALYZE.
- [22740] SPD - SET UP PP/CPP/FLPP DUMP
- [22794] SPP - SET CYBER 170-8×5 PROCESSOR POINTERS.
- [22850] SPT - SEARCH CYBER 170-8×5 PAGE TABLE.
- [22912] SRA - SET REFERENCE ADDRESS.
- [22939] SRD - SUPPRESS REPEATED DATA.
- [23000] SSB - SPACEFILL STRING BUFFER.
- [23013] SVA - GET ASID FROM SEGMENT TABLE OF XP.
- [23058] SXH - SET PPU XP HEADING IN PRINT STRING.
- [23126] TOV - PROCESS MANAGED TABLE OVERFLOW.
- [23159] TPF - CYBER 180-990 PROCESSOR FILE.
- [23385] TRT - DUMP TRACK RESERVATION TABLE.
- [23478] UCS - UNPACK CHARACTER STRING.
- [23506] UPS - UNPACK CHARACTERS TO STRING BUFFER.
- [23537] UPW - UNPACK 60 BIT WORDS FROM 64 BIT WORDS.
- [23567] VOL - CHECK RECORD FOR TAPE VOLUME HEADER.
- [23579] WBS - WRITE BLOCK TO FILE *S*.
- [23603] WOF - WRITE LINE TO OUTPUT.
- [23675] XPH - SET XP DIRECTIVE HEADER.
- [23713] TABLES.
- [23715] TLPP - TABLE OF LOGICAL PP NUMBERS.
- [23746] BUFFERS AND TABLE SPACE.
Source Code
- DSDI.txt
- IDENT DSDI,I
- ABS
- SST
- SYSCOM B1
- ENTRY DSDI
- ENTRY MFL=
- ENTRY SSJ=
- NOREF .BI,.OW,.NW
- *COMMENT DSDI - DEAD START DUMP INTERPRETER.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TITLE DSDI - EXPRESS DEAD START DUMP INTERPRETER.
- DSDI SPACE 4,10
- *** DSDI - EXPRESS DEAD START DUMP INTERPRETER.
- *
- * J.E. LAKE 75/01/31.
- * J.R. HILDEBRAND 75/07/15.
- * M.A. DOLCE 81/12/01.
- DSDI SPACE 4,10
- *** *DSDI* READS AN EXPRESS DEADSTART DUMP TAPE AND FORMATS
- * SELECTED PORTIONS FOR LISTING. THE OUTPUT FORMAT IS
- * CONTROLLED BY DIRECTIVES READ FROM A DIRECTIVE INPUT FILE.
- SPACE 4,10
- *** COMMAND FORMAT.
- *
- * DSDI(P1,P2,...,PN)
- *
- * WHERE PN MAY BE ANY OF THE FOLLOWING-
- *
- * I OMITTED READ DIRECTIVES FROM FILE *INPUT*.
- * I=NAME READ DIRECTIVES FROM FILE *NAME*.
- *
- * F OMITTED READ EXPRESS DUMP FROM FILE *DUMP*.
- * F=NAME READ EXPRESS DUMP FROM FILE *NAME*.
- *
- * B OMITTED NO BML FILE IS CREATED.
- * B=NAME BML MAINTENANCE REGISTER MESSAGES ARE
- * ON FILE *NAME*.
- *
- * L OMITTED LISTING IS ON FILE *OUTPUT*.
- * L=NAME LISTING IS ON FILE *NAME*.
- *
- * NR OMITTED DUMP FILE IS REWOUND BEFORE PROCESSING.
- * NR DUMP FILE IS NOT REWOUND.
- *
- * PD OMITTED PRINT DENSITY IS 6 LINES PER INCH.
- * PD PRINT DENSITY IS 8 LINES PER INCH.
- * PD=N PRINT DENSITY IS N LINES PER INCH WHERE N
- * MAY BE 3, 4, 6 OR 8.
- *
- * D D IF THE DUMP FILE IS NOT IN RANDOM
- * FORMAT ON MASS STORAGE, IT IS COPIED
- * TO A SCRATCH FILE WITH A RANDOM DIR-
- * ECTORY. THE SCRATCH FILE IS THEN
- * RENAMED WITH THE NAME OF THE ORIGINAL
- * DUMP FILE AND THE ORIGINAL FILE IS
- * RETURNED.
- * D=NAME PROCESSING IS IDENTICAL EXCEPT THAT THE
- * RANDOM DUMP FILE IS WRITTEN TO FILE
- * *NAME*, AND THE ORIGINAL DUMP FILE IS NOT
- * RETURNED.
- *
- * DMB NEEDED IF FILE FROM THE *DMB* OR *LOADBC*
- * UTILITY IS TO BE ANALYZED. (SEE NOTE)
- *
- * FULL NEEDED IF *NOS V/E* AREA OF MEMORY
- * IS TO BE ANALYZED. (SEE NOTE)
- *
- * P USE LOW CORE POINTERS FROM RUNNING SYSTEM
- * RATHER THAN THOSE IN DUMP FILE.
- *
- * Z DIRECTIVES ARE ONLY ON THE COMMAND.
- * THIS OVERRIDES THE *I* PARAMETER IF
- * SPECIFIED. THE COMMAND FORMAT IS -
- *
- * DSDI(...)TDDDDTDDDDTDDDD...
- *
- * *T* IS THE DIRECTIVE SEPERATOR. IT IS THE
- * FIRST CHARACTER FOLLOWING THE COMMAND
- * TERMINATOR AND MAY BE ANY CHARACTER THAT
- * WILL NOT BE USED IN A DIRECTIVE.
- * *DDDD* REPRESENTS ANY LEGAL DSDI DIRECTIVE.
- *
- * NOTE ON THE *DMB* PARAMETER-
- * *DSDI* MAY BE USED TO ANALYZE A FILE PRODUCED BY THE
- * *DMB* OR *LOADBC* UTILITY WHEN THIS PARAMETER IS PRESENT.
- *
- * ONLY THE *BCDUMP* DIRECTIVE CAN BE USED TO ANALYZE
- * THE CONTROLWARE DUMP FILE FROM *LOADBC*.
- *
- * TO ANALYZE THE FILE FROM THE *DMB* UTILITY, USE
- * DIRECTIVES AS THOUGH THE JOB HAD BEEN RUNNING AT
- * CONTROL POINT ONE. SINCE *DMB* DOES NOT CARRY ALL
- * SYSTEM INFORMATION, ONLY THE EXCHANGE PACKAGE,
- * THE FIELD LENGTH OF THE DUMPED CONTROL POINT AND DUMPED
- * USER EXTENDED MEMORY ARE AVAILABLE. USE THE FOLLOWING
- * DIRECTIVES-
- * CP,1 TO DUMP EXCHANGE PACKAGE
- * RAC,1/C,FWA,LWA TO DUMP CM IN *C* FORMAT
- * RAC,1/D,FWA,LWA TO DUMP CM IN *D* FORMAT
- * RA,0/EC/C,FWA,LWA DUMPS EXTENDED MEMORY IN *C* FORMAT
- * RA,0/EC/D,FWA,LWA DUMPS EXTENDED MEMORY IN *D* FORMAT
- *
- * NOTE ON THE *FULL* PARAMETER-
- * *FULL* MUST BE PRESENT IN ORDER TO PROCESS DUMP RECORDS
- * BEYOND THE *NOS* PORTION OF MEMORY FROM 180-CLASS MACHINES.
- * BESIDES THE *NOS V/E* PORTION OF MEMORY, THIS ALSO INCLUDES
- * EXTERNAL EXTENDED MEMORY (ESM OR *STORNET*) AND BUFFER
- * CONTROLLER DUMP RECORDS.
- SPACE 4,10
- *** ERROR PROCESSING.
- *
- * ARITHMETIC (RANGE) ERRORS ARE INTERCEPTED
- * BY *REPRIEVE* AND JOB EXECUTION IS RESUMED
- * AT *ERR19*.
- DSDI SPACE 4,10
- *** DAYFILE MESSAGES.
- *
- * * B PARAMETER NOT ALLOWED WITH DMB DUMP FILE.*
- * IF THE DUMP FILE TO BE ANALYZED IS FROM THE
- * *DMB* UTILITY, A BML FILE CANNOT BE CREATED.
- *
- * * CM RECORD NOT FOUND.*
- * CENTRAL MEMORY RECORD NOT FOUND IN DUMP FILE.
- *
- * * DIRECTORY TABLE BAD.*
- * DIRECTORY TABLE ON RANDOM FILE NOT CORRECT LENGTH.
- *
- * * DSDI ARGUMENT ERROR.*
- * AN UNKNOWN KEYWORD WAS ENCOUNTERED.
- *
- * * DSDI ERROR LIMIT EXCEEDED.*
- * TOO MANY ERRORS WERE DETECTED.
- *
- * * EXPRESS DUMP COMPLETE (FL USED XXXXXXB)*
- * DUMP COMPLETED NORMALLY.
- *
- * * MAINTENANCE REGISTER RECORD NOT FOUND.*
- * MAINTENANCE REGISTER RECORD NOT FOUND IN DUMP FILE.
- *
- * * NO ERRORS REPORTED IN MAINTENANCE REGISTERS.*
- * NO BML MESSAGES WERE WRITTEN TO THE BML MAINENANCE
- * REGISTER MESSAGE FILE BECAUSE NO ERRORS WERE
- * REPORTED IN THE STATUS SUMMARY REGISTERS.
- *
- * * WARNING - INCOMPLETE DUMP FILE.*
- * AN UNEXPECTED EOF WAS DETECTED WHILE COPYING
- * THE EDD FILE TO A RANDOM FILE DURING INITIALIZATION.
- * PROCESSING WILL CONTINUE USING THE DATA COPIED SO FAR.
- DSDI SPACE 4,10
- *** ERROR MESSAGES.
- *
- * *ALTERNATE FILE ACTIVE*
- * ALTERNATE FILE WAS ALREADY BEING PROCESSED.
- *
- * *ALTERNATE OUTPUT TO TERMINAL INCORRECT*
- * ALTERNATE FILE WAS SPECIFIED TO TERMINAL.
- *
- * *BAD SYSTEM POINTER*
- * A BAD SYSTEM POINTER WAS DETECTED IN DUMP FILE.
- *
- * *DIRECTIVE NOT MEANINGFUL.*
- * THE *MPP.* DIRECTIVE WAS ENTERED WHEN ONLY 10 PPU-S
- * EXIST OR WHEN THE MACHINE IS A CYBER 170 WITH LESS
- * THAN 20 PPU-S, THE *MPP,N1.* DIRECTIVE WAS ENTERED
- * WITH N1=0, THE *PMS* DIRECTIVE WAS ENTERED ON A
- * NON-CYBER 170, OR THE VALUE N1 ON THE *PMS,N1.*
- * DIRECTIVE WAS THE SAME AS THE CURRENT VALUE OF THE
- * SELECT SWITCHES IN THE S/C REGISTER.
- *
- * *DIRECTIVE PARAMETER ERROR*
- * AN ERROR WAS DETECTED IN A DIRECTIVE PARAMETER.
- *
- * *DIRECTIVE RESTRICTED TO PRINTER OUTPUT*
- * A DIRECTIVE THAT IS RESTRICTED TO PRINTER OUTPUT WAS
- * SPECIFIED.
- *
- * *DIRECTIVE RESTRICTED TO TERMINAL OUTPUT*
- * A DIRECTIVE THAT IS RESTRICTED TO TERMINAL OUTPUT WAS
- * SPECIFIED.
- *
- * *DIRECTIVE SHOULD HAVE NO PARAMETERS.*
- * NO PARAMETER VALUES ARE USED BY THE
- * INDICATED DIRECTIVE.
- *
- * * DMB FILE FORMAT ERROR.*
- * THE FILE BEING ANALYZED WITH THE *DMB* PARAMETER
- * PRESENT IS NOT IN THE CORRECT FORMAT.
- *
- * *EXTENDED MEMORY RECORD NOT FOUND*
- * EXTENDED CORE STORAGE RECORD NOT FOUND IN DUMP FILE.
- *
- * *HARDWARE REGISTERS NOT FOUND*
- * HARDWARE REGISTERS RECORD NOT FOUND IN DUMP FILE.
- *
- * *INCORRECT CONTROL POINT NUMBER*
- * SPECIFIED CONTROL POINT NUMBER WAS GREATER THAN
- * SYSTEM CONTROL POINT NUMBER, OR THE NUMERIC FORMAT
- * WAS INCORRECT.
- *
- * *INCORRECT FILE NAME*
- * AN INCORRECT FILE NAME WAS SPECIFIED.
- *
- * *INCORRECT PRINT DENSITY SELECTION*
- * AN INCORRECT PRINT DENSITY WAS SPECIFIED OR THE SYSTEM
- * VALUE FOR LINES PER PAGE IS SO SMALL THAT IT CAUSES
- * THE SPECIFIED DENSITY TO BE UNUSABLE.
- *
- * *INCORRECT PRINT OPTION SELECTION*
- * AN INCORRECT PRINT OPTION WAS SPECIFIED.
- *
- * *INSUFFICIENT NFL SPACE.*
- * CONTROL POINT BEING DUMPED WITH *CP* DIRECTIVE
- * HAS A NEGATIVE FIELD LENGTH OF LESS THAN THE
- * DEFAULT VALUE.
- *
- * *INCORRECT DISK BUFFER NUMBER.*
- * THE DISK BUFFER NUMBER ON THE DIRECTIVE
- * WAS GREATER THAN THAT OF THE LAST DISK BUFFER
- * WITH THE SPECIFIED MACHINE ID.
- *
- * *INCORRECT MACHINE ID.*
- * THE MACHINE ID USED TO SEARCH THE I/O
- * BUFFER DEFINITION TABLE IN EXTENDED MEMORY
- * WAS NOT FOUND.
- *
- * *NO ACTIVE DISK BUFFERS.*
- * NO DISK BUFFERS IN EXTENDED MEMORY HAVE NONZERO
- * ACTIVITY COUNTS IN THEIR CORRESPONDING CONTROL
- * BUFFER TABLE ENTRIES.
- *
- * *NO BUFFERED DEVICES DEFINED.*
- * DISK BUFFERS ARE NOT DEFINED ON THE DUMP FILE.
- *
- * *PAGE DESCRIPTOR ENTRY NOT FOUND.*
- * THE CYBER 170-8XX PAGE DESCRIPTOR ENTRY FOR A CM
- * ADDRESS WAS NOT FOUND.
- *
- * *PARAMETER CHARACTER COUNT EXCEEDED.*
- * MORE THAN TEN CHARACTERS WERE USED WITH ONE PARAMETER.
- *
- * *PPU NOT FOUND*
- * REQUESTED PPU RECORD NOT FOUND IN DUMP FILE.
- *
- * * PVA WITH RING = 0.*
- * A CM ADDRESS FOR A CYBER 170-8XX HAS AN INCORRECT RING
- * VALUE. THE VALUE MUST BE IN THE RANGE OF 1 TO 15.
- *
- * *RECORD NOT FOUND*
- * SPECIFIED RECORD NAME NOT FOUND IN SPECIFIED FILE.
- *
- * *REQUESTED MEMORY NOT FOUND*
- * REQUESTED MEMORY WAS NOT FOUND IN DUMP FILE.
- *
- * *RESIDENT CENTRAL LIBRARY EMPTY.*
- * NO PROGRAMS WERE FOUND IN THE RESIDENT CENTRAL
- * LIBRARY IN THE DUMP FILE.
- *
- * * SEGMENT MISSING.*
- * THE SEGMENT ID PART OF A CYBER 170-8XX ADDRESS IS
- * INCORRECT OR THE SEGMENT CANNOT BE FOUND IN THE
- * SEGMENT TABLE.
- *
- * *SELECTED DEVICE NOT MASS STORAGE.*
- * AN EST ORDINAL SPECIFIED WITH THE *MST*
- * DIRECTIVE WAS NOT THAT OF A MASS STORAGE DEVICE.
- *
- * *SELECTED ENTRY BEYOND TABLE BOUNDARY.*
- * THE ENTRY NUMBER SELECTED TO BE DUMPED FROM
- * THE DESIRED BUFFERED DEVICE TABLE WAS
- * GREATER THAN THAT OF THE LAST TABLE ENTRY.
- *
- * *STATUS/CONTROL REGISTERS NOT FOUND*
- * STATUS/CONTROL REGISTERS RECORD NOT FOUND IN DUMP
- * FILE.
- *
- * *SUBSYSTEM NOT FOUND*
- * A SUBSYSTEM WAS NOT FOUND IN DUMP FILE.
- *
- * *TAPE MUST BE REQUESTED AS LABELED*
- * AN *EDD* TAPE WAS REQUESTED AS UNLABELED.
- *
- * *UNRECOGNIZABLE DIRECTIVE*
- * AN UNRECOGNIZABLE DIRECTIVE WAS ENCOUNTERED.
- *
- * *USER EXTENDED MEMORY NOT DEFINED*
- * NO USER EXTENDED MEMORY SPACE WAS DEFINED IN THE CMR
- * WORD *ECRL*.
- *
- * *WORD ADDRESS NOT FOUND*
- * WORD ADDRESS SPECIFIED NOT FOUND IN SPECIFIED RECORD
- * ON DUMP FILE.
- *
- * *PROBE TABLE NOT AVAILABLE.*
- * THE PROBE TABLE IS IN AN INDETERMINANT STATE BECAUSE
- * IT WAS INTERLOCKED AT THE TIME OF THE DUMP.
- *
- * *PROBE NOT ENABLED.*
- * PROBE WAS NOT ENABLED AT DEADSTART TIME.
- TITLE ASSEMBLY CONSTANTS.
- SPACE 4
- **** ASSEMBLY CONSTANTS.
- TMIN EQU 16000B MINIMUM TABLE SPACE TO RUN
- IBUFL EQU 200B DIRECTIVE INPUT FILE BUFFER LENGTH
- OBUFL EQU 1001B OUTPUT FILE BUFFER LENGTH
- ABUFL EQU 1001B ALTERNATE OUTPUT FILE BUFFER LENGTH
- FBUFL EQU 3007B DUMP INPUT FILE BUFFER LENGTH
- JBUFL EQU 200B ALTERNATE INPUT FILE BUFFER LENGTH
- SBUFL EQU 1000B BINARY SCRATCH FILE BUFFER LENGTH
- BBUFL EQU 1001B BML FILE BUFFER LENGTH
- CPLEN EQU 200B LENGTH OF EACH CONTROL POINT AREA
- LRCL EQU 100B NUMBER OF RCL ENTRIES
- LRPL EQU 400B NUMBER OF RPL ENTRIES
- NERR EQU 50 NUMBER OF ERRORS ALLOWED
- MAXP EQU 20 MAXIMUM NUMBER OF PPU-S
- DMBCM EQU 1000B CMR SIZE IN WORDS FOR DMB MODE
- ****
- SPACE 4,10
- * *DSP* FLAG BIT EQUIVALENCES.
- FRCS EQU 2 ROUTE TO CENTRAL SITE
- FRTI EQU 4 TID OR FM/UN
- FRDC EQU 20B DISPOSITION CODE
- TITLE SUB-SYSTEM COMMON DECKS.
- ORG 110B
- SPACE 4
- ** SYMBOLIC COMMON DECKS.
- *CALL COMCCMD
- *CALL COMCMAC
- *CALL COMCMTM
- QUAL BIO
- BASE M
- *CALL COMSBIO
- BASE *
- QUAL *
- QUAL DFT
- *CALL COMSDFT
- QUAL *
- QUAL$S EQU 0
- *CALL COMSDFS
- QUAL HIO
- *CALL,COMSHIO
- QUAL *
- QUAL IOU
- *CALL COMSIOU
- QUAL *
- *CALL,COMSMMF
- QUAL VE
- *CALL COMSDST
- QUAL *
- *CALL COMSMSC
- *CALL COMSMTR
- QUAL MSP
- *CALL COMSMSP
- QUAL *
- QUAL MTX
- *CALL COMSMTX
- QUAL *
- QUAL REM
- *CALL COMSREM
- QUAL *
- *CALL COMSSCR
- *CALL,COMSSSD
- QUAL SSJ
- *CALL COMSSSJ
- QUAL *
- QUAL 1DS
- *CALL COMS1DS
- QUAL *
- QUAL COMS176
- *CALL COMS176
- QUAL *
- QUAL DSL MUST FOLLOW *COMSMTX* CALL
- *CALL COMSDSL
- QUAL *
- SPACE 4,10
- ** COMMON DECK EQUIVALENCES.
- DSDL EQU /1DS/DSDL
- TITLE MACRO DEFINITIONS.
- CARD SPACE 4,6
- ** CARD - GENERATE DIRECTIVE PROCESSOR TABLE ENTRY.
- *
- * CARD R,NAME,ERR
- * R = RESTRICTIONS - *P* IF ONLY FOR PRINTER OUTPUT.
- * *T* IF ONLY FOR TERMINAL.
- * NAME = DIRECTIVE NAME.
- * ERR = ERROR RETURN ADDRESS.
- NOREF /DIRECT/.A
- CARD MACRO R,NAME,ERR
- .A SET 0
- IFC EQ,*R*P*,1
- .A SET 40B
- IFC EQ,*R*T*,1
- .A SET 20B
- VFD 6/.A,18/0,18/ERR,18/NAME
- ENDM
- FIELD SPACE 4,20
- ** FIELD - GENERATE TABLE FIELD DESCRIPTOR.
- *
- * DESCRIPTOR FORMAT -
- *
- *T WORD0 6/ IND,18/ DIGIT WIDTH,18/ FIRST DIGIT,18/ WORD ORDINAL
- *T WORD1 60/ DISPLAY CODE DESCRIPTION OF FIELD
- *T WORD2 60/ *
- *T WORD3 60/ *
- *
- * FIELD O,( DESCRIPTION ),F,W,I
- *
- * *DESCRIPTION* MUST BE 27 CHARACTERS LONG.
- * O = WORD ORDINAL.
- * F = FIRST BIT NUMBER (LEFTMOST BIT IS 59).
- * W = FIELD WIDTH IN BITS.
- * I - NON-BLANK IF WORD ORDINAL CONTAINS A POINTER TO
- * WORD CONTAINING WORD ORDINAL IN BITS 17-0.
- *
- * FIELD BOUNDARIES MUST BE ON 3 BIT DIGIT
- * BOUNDARIES.
- NOREF .A,.B
- FIELD MACRO O,D,F,W,I
- .A SET 59D-F
- ERRNZ .A-.A/3*3 STARTING BIT NOT ON 3-BIT BOUNDARY
- ERRNZ W-W/3*3 DIGIT WIDTH NOT ON 3-BIT BOUNDARY
- IFC NE,$I$$,2
- .B SET 1
- SKIP 1
- .B SET 0
- .C MICRO 1,1,$O$
- IFC LT,$".C"$0$,1
- SKIP 5
- IFC GT,$".C"$9$,1
- SKIP 3
- VFD 6/.B,18/W/3,18/.A/3,18/O_B
- .BA MICRO 1,, B
- SKIP 2
- VFD 6/.B,18/W/3,18/.A/3,18/O
- .BA MICRO 1,,
- DATA 27H_D
- .1 IFC EQ,/I//
- * VALIDATE WORD AND BIT PARAMETERS.
- .NW SET O".BA"
- .BI IFEQ F,59D
- ERRNZ .NW-.OW-1 SEQUENCE ERROR - WORD O
- ERRNZ .BI SEQUENCE ERROR - WORD O, BIT F
- .BI ELSE
- ERRNZ F-.BI SEQUENCE ERROR - WORD O, BIT F
- .BI ENDIF
- .OW SET .NW
- .BI MAX F-W,0
- .1 ENDIF
- ENDM
- GETCM SPACE 4,10
- ** GETCM - READ 60-BIT CM WORDS FROM DUMP FILE.
- *
- * GETCM FWA,N
- *
- * IF *FWA,N* IS MISSING, ONE WORD IS READ TO X6.
- *
- * CALLS RCM.
- GETCM MACRO FWA,N
- .A IFC NE,*FWA**
- R= B6,FWA
- R= B7,N
- .A ELSE
- SB6 B0
- .A ENDIF
- RJ RCM READ CM
- ENDM
- PRINT SPACE 4,8
- ** PRINT - PRINT LINE.
- *
- * PRINT FWA,N
- *
- * IF *N* IS MISSING, LINE IS IN *C* FORMAT.
- * IF *N* IS PRESENT, LINE IS IN *S* FORMAT.
- *
- * CALLS WOF.
- PRINT MACRO FWA,N
- R= X1,FWA
- IFC NE,*N**,1
- R= X2,N
- IFC EQ,*N**,1
- SX2 B0
- RJ WOF
- ENDM
- RFDSC SPACE 4,15
- ** RFDSC - REGISTER FILE DESCRIPTOR BUILDER.
- *
- * DSC2 RFDSC RN,DSC1
- *
- * RN = REGISTER NUMBER.
- * DSC1 = LARGE DESCRIPTOR.
- * DSC2 = TWO CHARACTER REGISTER NAME.
- *
- * CREATES A WORD OF THE FORM:
- *
- * VFD 9/RN,17/0,17/2RDSC2,17/DSC1
- MACRO RFDSC,D2,RN,D1
- VFD 9/0#_RN,17/0
- .A IFC NE,$D2$$
- VFD 17/2R_D2
- .A ELSE
- VFD 17/0
- .A ENDIF
- .B IFC NE,$D1$$
- VFD 17/=C*D1*
- .B ELSE
- VFD 17/0
- .B ENDIF
- ENDM
- SCLASS SPACE 4,15
- ** SCLASS - DEFINE SERVICE CLASS TABLE.
- *
- * SCLASS NM,MN,DF,ST,TX
- *
- * ENTRY *NM* = SERVICE CLASS NAME.
- * *MN* = TWO CHARACTER MNEMONIC.
- * *DF* = DAYFILE MESSAGE CHARACTER.
- * *ST* = SHORT TEXT FOR *QFTLIST*.
- * *TX* = TEXT OF SERVICE CLASS NAME FOR BANNER PAGE.
- *
- * NOTE - THE CALL TO *COMSSCD* MUST FOLLOW THE DEFINITION OF
- * THIS MACRO.
- PURGMAC SCLASS
- SCLASS MACRO NM,MN,DF,ST,TX
- .SCL RMT
- DATA 10L_NM TX
- .SCL RMT
- SCLASS ENDM
- SCL$ EQU 0 ONLY PROCESS CLASSES WITH JCB-S
- *CALL COMSSCD
- STBL SPACE 4,10
- ** STBL - SET TABLE POINTERS.
- *
- * STBL TBL
- *
- * TBL = TABLE NAME.
- *
- * EXIT (B2) = TABLE POINTER.
- * (X3) = SUBTITLE.
- * (X6) = TABLE DESCRIPTOR POINTER.
- * (X7) = TABLE ENTRY LENGTH.
- STBL MACRO TBL
- R= B2,TBL_P
- SA3 =10H_TBL 0000
- R= X7,TBL_E
- .A MICRO 1,2,$TBL$
- R= X6,TF_".A"
- ENDM
- S2BIT SPACE 4,10
- ** S2BIT - CREATE BIT DEFINITIONS FOR THE CYBER 170-8X5.
- *
- * S2BIT POS,DESC,FLAGS
- *
- * POS = BIT POSITION TO BE DESCRIBED (OCTAL).
- * DESC = DESCRIPTION OF THE BIT.
- * FLAGS = MACHINES ON WHICH THE DESCRIPTION IS VALID.
- *
- * CREATES A WORD OF THE FORM
- *
- * VFD 9/POS,17/FLAGS,17/0,17/=C*DESC*
- S2BIT MACRO POS,DESC,F
- LOCAL FLG
- FLG EQU F 77B
- VFD 9/POS,17/FLG,34/=C*DESC*
- ENDM
- SXREG SPACE 4,15
- ** SXREG - CREATE MAINTENANCE REGISTER TABLE ENTRYS FOR THE
- * C170-SX MAINFRAMES.
- *
- * SXREG REG,DEFMSG,BITDEF,FLAGS
- *
- * REG = MAINTENANCE REGISTER NUMBER.
- * DEFMSG = DESCRIPTION OF THE MAINTENANCE REGISTER.
- * BITDEF = LIST OF BIT DEFINITIONS FOR REGISTER.
- * FLAGS = LIST OF VALID PROCESSORS.
- *
- * CREATES A WORD OF THE FORM:
- *
- * VFD 9/REG,17/FLAGS,17/BITDEF,17/DEFMSG
- SXREG MACRO R,D,B,F
- LOCAL FLG
- FLG EQU F 77B
- VFD 9//IOU/_R,17/FLG
- .A IFC NE,$B$$
- VFD 17/B
- .A ELSE
- VFD 17/0
- .A ENDIF
- .B IFC NE,$D$$
- VFD 17/=C*D*
- .B ELSE
- VFD 17/0
- .B ENDIF
- ENDM
- S1 EQU 1S1
- S2 EQU 1S2
- I2 EQU S2
- S3 EQU 1S3
- THETA EQU 1S4
- I4A EQU 1S4 MODEL 40 IOU
- I4S EQU 1S5 MODEL 42 IOU
- TITLE FETS AND CONTROL STORAGE.
- ORG 110B
- FETS SPACE 4
- ** FILE ENVIRONMENT TABLES.
- I BSS 0 DIRECTIVE INPUT FILE
- INPUT FILEC IBUF,IBUFL,(FET=6)
- J BSS 0 ALTERNATE INPUT FILE
- ALTINP FILEC JBUF,JBUFL,(FET=6)
- F BSS 0 BINARY INPUT FILE
- DUMP FILEB FBUF,FBUFL,(FET=7)
- F1 BSS 0 REFORMATTING SCRATCH FILE
- ZZZZZG1 FILEB SBUF,SBUFL,(FET=8)
- L BSS 0 LISTING OUTPUT FILE
- OUTPUT FILEC OBUF,OBUFL,(FET=6)
- A BSS 0 ALTERNATE LIST FILE
- ALTRNT FILEC ABUF,ABUFL,(FET=8)
- S BSS 0 BINARY SCRATCH FILE
- ZZZZZG0 RFILEB SBUF,SBUFL,(FET=8)
- B BSS 0 BML MAINTENANCE REGISTER FILE
- BML FILEB BBUF,BBUFL,(FET=8)
- BFMB SPACE 4,30
- ** BFMB - BML FILE MESSAGE BLOCK.
- *
- * NOTE - REVISION C OF THE BML INTERFACE SPECIFICATIONS
- * WAS FOLLOWED.
- *
- *T,BFMB 1/P, 17/ 0, 18/ PMS, 6/ 0, 18/ CMS
- *T 12/ CMS, 12/ 0, 36/ PDT
- *T 60/ JOBID
- *T 12/ MSGID, 12/ SYM, 6/ 0, 6/ 17B, 12/ 0, 12/ SEQ
- *T 6/ M, 6/ D, 6/ 0, 6/ F, 36/ 0
- *T 60/ DATA
- *T 60/ DATA
- *T 60/ DATA
- *T 60/ DATA
- *
- * P = PARITY FLAG.
- * PMS = PREVIOUS MESSAGE SIZE.
- * CMS = CURRENT MESSAGE SIZE.
- * PDT = PACKED DATE AND TIME.
- * JOBID = JOB IDENTIFICATION.
- * MSGID = MESSAGE IDENTIFICATION.
- * SYM = SYMPTOM CODE.
- * SEQ = DFT SEQUENCE NUMBER.
- * M = MESSAGE CONTENT FLAGS.
- * BIT 54 SET INDICATES SUPPORTIVE STATUS BUFFER DATA.
- * BIT 55 SET INDICATES MODEL DEPENDENT BUFFER DATA.
- * D = DFT REVISION LEVEL.
- * F = FLAG FIELD.
- * DATA = BML MAINTENANCE REGISTERS.
- *
- * NOTE - IF THE BLOCK LENGTH (*BFMBL*) CHANGES, *P*
- * MAY NEED TO BE SET TO MAINTAIN ODD PARITY.
- BFMB BSS 0 BML FILE MESSAGE BLOCK
- VFD 1/0,17/0,18/0,6/0,18/BFMBL
- VFD 12/BFMBL,12/0,36/0
- VFD 60/10H SYS S.
- VFD 12/HM0250,12/0,6/0,6/17B,12/0,12/0
- VFD 6/0,6/0,6/0,6/4,36/0
- BFHL EQU *-BFMB HEADER LENGTH
- BFBD BSS 4 DATA BLOCK
- BFBDL EQU *-BFBD DATA BLOCK LENGTH
- BFMBL EQU *-BFMB-1 BML FILE MESSAGE BLOCK LENGTH
- BFBDA BSS 48-4 ADDITIONAL MODEL DEPENDENT DATA BLOCK
- BFBDAL EQU *-BFBD DATA BLOCK LENGTH
- BFBI BSS 1 DATA BLOCK INDEX
- SPACE 4,10
- ** REPRIEVE PARAMETER BLOCK.
- SPACE 2,10
- RPVB VFD 36/0,12/31B,12/0
- VFD 30/0,30/PER
- BSSZ 27B
- CONTROL SPACE 4
- ** CONTROL STORAGE CELLS.
- AC CON 0 ACTUAL NUMBER OF PPU-S IN SYSTEM
- AF CON 0 ALTERNATE INPUT ACTIVE FLAG
- AM CON 0 *ALLMEM* FLAG
- AO CON 0 ADDRESS OFFSET
- AP CON 0 ADVANCED PROCESSOR
- BA CON 0 REFERENCE ADDRESS FOR DUMP
- BD CON 0 BINARY DUMP MODE FLAG
- BE CON 0 HIGH-SPEED DEVICE I/O TABLE ENTRY IN *BDT*
- BF CON 0 BML MAINTENANCE REGISTER FILE NAME
- BI CON 0 INDEX INTO UBUF
- CE CON 0 CM EXTENSION ON MAINFRAME
- CF CON 1 ZERO IF CYBER 176 MAINFRAME
- CH CON 0 INPUT DIRECTIVE STRING BUFFER POINTER
- CI CON 0 CENTRAL MEMORY BLOCK RANDOM INDEX
- CL CON 0 CONTROL POINT DUMP LIST OPTIONS
- CN CON 0 CONTROL POINT NUMBER UNDER ANALYSIS
- CO DATA 0LXTAF DEFAULT LIST OPTIONS FOR CP/PCP DUMP
- C4 CON 0 NUMBER OF CCP-S OR CCH-S
- DA CON 0 FWA OF DISK BUFFER AREA
- DP CON 0 NUMBER OF DIRECTIVES PROCESSED
- DR CON 0 CONVERT DUMP INPUT FILE TO RANDOM FILE
- EB CON 0 EMPTY BML FILE FLAG
- EC CON 0 ERROR COUNTER
- ED CON 0 *EDD* DUMP
- EE CON 0 EXTENDED MEMORY SELECTION ERROR FLAG
- EH CON 0,0 *EIC* RECORD HEADER + RANDOM INDEX
- EI CON 0 *EI* RELATIVE ADDRESS FLAG
- EM CON 0 EXTENDED MEMORY SHIFT COUNT
- EQ CON 0 *EQDE* WORD FROM EST ENTRY
- FI CON 0 POINTER FOR FNT SEARCH
- FC CON 0 FL OF CONTROL POINT UNDER ANALYSIS
- FM CON 0 CURRENT FIELD LENGTH
- FN CON 0 INITIAL FIELD LENGTH
- FW CON 0 FIRST WORD ADDRESS FOR DUMP
- LW CON 0 LAST WORD ADDRESS+1 FOR DUMP
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- IC CON 0,0 *CPP* PROCESSING FLAG / *NPP*/*CPP* FLAG
- ID CON 0 RECORD ID
- IO CON 1 IOU TYPE (0 = I4A OR I4S IOU)
- K4 CON 0 FLAG FOR CONTROLLER SIZE
- MB CON 0 MEMORY BASE ADDRESS (FOR ECM)
- ME CON 0 NUMBER OF MCT ENTRIES
- MH CON 0,0 *MEM* RECORD HEADER + RANDOM INDEX
- MI CON 0 MEMORY BLOCK RANDOM INDEX
- MT CON 0 MEMORY TYPE (NON-ZERO = ESM)
- NC CON 0 NUMBER OF CONTROL POINTS IN SYSTEM
- NP CON 0 NUMBER OF PP COMMUNICATION AREAS IN SYSTEM
- NR CON 0 NEXT RECORD POINTER
- OP CON 0 PCPA OFFSET
- PC CON 0 PP COMMUNICATION AREA POINTER
- PF CON 0 LOW CORE POINTER FLAG
- PI CON 0 SEARCH POINTER FOR PPU/CONTROL POINT DUMPS
- PP CON 0 NUMBER OF PPU TO ANALYZE
- PS CON 4096 PP MEMORY SIZE
- RC CON 0 RA OF CONTROL POINT UNDER ANALYSIS
- RI CON 0 RANDOM ADDRESS FOR RECORD BEING DUMPED
- SSJ= EQU /SSJ/SSJP DEFINE *SSJ=* PRIVILEGES
- UA CON 0 USER CONTROLLED REFERENCE ADDRESS
- UE CON 0 USER EXTENDED MEMORY SHIFT COUNT
- UI CON 0 USER CONTROLLED MEMORY BLOCK RANDOM INDEX
- US DATA 10H 0000000 USER CONTROLLED SUBTITLE
- DATA 10HCM
- VE CON 0 *NOS V/E* MEMORY PRESENT
- XB CON 0 MEMORY BOUNDS REAL BYTE ADDRESS
- XH CON 0 MEMORY RECORD VALID FWA
- XI CON 0 MEMORY RECORD RANDOM INDEX
- XL CON 0 MEMORY RECORD VALID LWA+1
- XM CON 0 MEMORY RECORD PAGE SIZE MASK
- ZF CON 0 COMMAND DIRECTIVES FLAG
- * OUTPUT LIST CONTROLS - ORDER MUST BE PRESERVED.
- OF CON L LIST FILE FET POINTER
- CC DATA 1R CARRIAGE CONTROL CHARACTER
- EF CON 0 NO AUTO EJECT FLAG
- LC CON 100 LINE NUMBER
- PD CON LINP-3 NUMBER OF LINES PER PAGE
- PN CON 1 PAGE NUMBER
- TF CON 0 TERMINAL FLAG
- LISTING SPACE 4
- ** LISTING TITLE LINES.
- TITL BSS 0 LISTING TITLE LINE
- DATA 10H1RA =
- TITL1 DATA 50H
- TITL2 DATA 10H
- DATA 20H DSDI
- DATE DATA 10H
- TIMM DATA 10H
- DATA 10H PAGE
- PAGE DATA 10H
- TITLL EQU *-TITL
- SBTL BSS 0 LISTING SUBTITLE LINE
- DATA 10H
- SBTL1 DATA 10H
- SBTL2 DATA 50H
- DATA 30H
- SBTL3 DATA 36C
- DATA 2C
- SBTLL EQU *-SBTL
- SPACE 4,10
- ** CYBER 170-8X5 PROCESSOR POINTERS.
- S2STL CON 0 SEGMENT TABLE LENGTH
- S2STA CON 0 SEGMENT TABLE ADDRESS
- S2PTA CON 0 PAGE TABLE ADDRESS
- S2PTL CON 0 PAGE TABLE LENGTH
- S2PSM CON 0 PAGE SIZE MASK
- S2MPS CON 0 MONITOR PROCESS STATE REGISTER
- S2JPS CON 0 JOB PROCESS STATE POINTER
- S2LPS CON 0 LIVE PROCESSOR STATE ADDRESS
- S2RMA CON 0 SAVED RMA
- S2PVA CON 0 SAVED PVA
- PTEVCUM CON 0 PAGE TABLE ENTRY (VALID, CONT, USED, MOD)
- PTEPD CON 0 PAGE DESCRIPTOR
- STSDE CON 0 SEGMENT TABLE DESCRIPTOR ENTRY
- BRMA CON 0 BYTE REAL MEMORY ADDRESS
- SPACE 4,10
- ** DUMP FILE RECORD NAMES.
- .NPP DATA 0LPP00 C170 NORMAL PP MEMORY
- .FPP DATA 0LFP00 FIRST LEVEL PP MEMORY
- ERRNZ .NPP+1-.FPP CODE DEPENDS ON VALUE
- .BCD VFD 12/0,12/0LBC,36/0 BUFFER CONTROLLER HEADER
- .BCH VFD 12/0,24/0LCH00,24/0 BUFFER CONTROLLER MEMORY
- .CCR DATA 0LCCR CIO CHANNEL REGISTERS
- .CMM DATA 3LCM C170 CENTRAL MEMORY (60 BIT)
- .CPP VFD 6/0,18/0LD00,36/0 CIO PP MEMORY
- .CP0 VFD 12/0,24/0LCPU0,24/0 CPU HARDWARE EXCHANGE PACHAGE
- .DFT DATA 0LDFT DFT BLOCK
- .DSB DATA 0LDSB DUAL STATE BLOCK
- .ECS DATA 0LECS EXTENDED CORE STORAGE
- .EIB DATA 0LEIB ENVIRONMENTAL INTERFACE (OLD NAME)
- .EIC DATA 0LEIC ENVIRONMENTAL INTERFACE
- .ESM DATA 0LESM EXTENDED SEMI-CONDUCTOR MEMORY
- .IMR DATA 0LIMR IOU MAINTENANCE REGISTERS
- .IPP DATA 0LI00 C180 NORMAL PP MEMORY
- .MEM DATA 0LMEM C180 CENTRAL MEMORY (64 BIT)
- .MMR DATA 0LMMR MEMORY MAINTENANCE REGISTERS
- .PCS DATA 0LPCS PROCESSOR CONTROL STORE
- .PIS DATA 0LPIS C180-99X INSTRUCTION BUFFER STACK
- .PMR DATA 0LPMR PROCESSOR MAINTENANCE REGISTERS
- .POC DATA 0LPOC C180-99X PROCESSOR OPERAND CACHE
- .PPM DATA 0LPPM C180-99X PROCESSOR PAGE MAP
- .PRF DATA 0LPRF C180-99X PROCESSOR REGISTER FILE
- .PRG DATA 0LPRG C180-99X PROCESSOR RGU REGISTERS
- .PRH DATA 0LPRH C180-99X PROCESSOR HISTORY FILE
- .PSM DATA 0LPSM C180-99X PROCESSOR SEGMENT MAP
- .PSR DATA 0LPSR I4 IOU OPERATING REGISTERS
- .PXP DATA 0LPXP PROCESSOR EXCHANGE PACKAGES
- .SCR DATA 0LSCR C170 STATUS/CONTROL REGISTERS
- .SC1 DATA 0LSC1 C170 S/C REGISTERS AFTER CLEAR
- SPACE 4,10
- ** MISCELLANEOUS CONSTANTS.
- K4BFL EQU 10000B 4K BUFFER CONTROLLER SIZE (4096D)
- K8BFL EQU 20000B 8K BUFFER CONTROLLER SIZE (8192D)
- K16BFL EQU 40000B 16K BUFFER CONTROLLER SIZE
- KIBFL EQU 106000B 63X ADAPTOR SIZE
- K4RBFL EQU K4BFL/40*40+40 4K BUFFER SIZE, ROUNDED UP
- K4WBFL EQU K4RBFL/5*2 NUMBER OF WORDS TO CONTAIN *K4RBFL* BYTES
- TITLE MANAGED TABLES.
- TCMT SPACE 4,5
- ** TCMT - CENTRAL MEMORY TABLES.
- * CONTAINS CM TABLES FROM LOCATION 0 THROUGH THE END OF THE
- * SECDED ID TABLE AS DEFINED IN LOW CORE. LOW CORE MAY COME
- * FROM THE DUMP FILE OR THE RUNNING SYSTEM DEPENDING UPON THE
- * COMMAND *P* OPTION.
- TCMT TABLE
- TDIR SPACE 4,5
- ** TDIR - BINARY DUMP FILE RANDOM DIRECTORY.
- * ENTRY 2 WORDS PER RECORD.
- *
- *T WORD0 60/FIRST WORD OF RECORD
- *T WORD1 30/WORD COUNT,30/RANDOM ADDRESS
- TDIR TABLE 2
- SPACE 4,10
- ** TNFL - NEGATIVE FIELD LENGTH TABLE.
- * CONTAINS THE NEGATIVE FL FOR THE CURRENT CONTROL POINT.
- TNFL TABLE
- TSCR SPACE 4,3
- ** TSCR - SCRATCH TABLE.
- * USED TO HOLD VARIOUS TABLES AND BUFFERS FROM THE DUMP FILE
- * DURING PROCESSING.
- TSCR TABLE
- TSC1 SPACE 4
- ** TSC1 - SCRATCH TABLE.
- TSC1 TABLE
- TITLE MAIN PROGRAM.
- DSDI SPACE 4
- ** DSDI - MAIN PROGRAM.
- DSDI SB1 1 (B1) = 1 THROUGHOUT PROGRAM
- RJ PRS PRESET DSDI
- RJ PBD PREPROCESS BINARY DUMP
- RJ RBI RANDOMIZE BINARY INPUT
- RJ PIO PRESET INPUT AND OUTPUT FILES
- RJ CST CREATE SUBTITLE LINE
- RJ RST READ SYSTEM TABLES
- RJ SPP SET C180 PROCESSOR POINTERS
- MESSAGE MSG1,1,R * PROCESSING INPUT DIRECTIVES.*
- * PROCESS INPUT DIRECTIVE STATEMENTS. DIRECTIVE PROCESSORS ARE
- * CALLED BY *CKC* AND EXIT TO *DSD1*.
- DSD1 RJ RDC READ NEXT DIRECTIVE
- NZ X1,DSD2 IF END OF DIRECTIVES
- RJ RUC RESET USER SELECTED CONTROLS
- BX6 X6-X6 CLEAR DUMP CONTROL BLOCK
- SA6 CPRA FWA
- SA6 A6+B1 LWA+1
- SA6 A6+B1 CORE ADDRESS
- SA6 A6+B1 SUPPRESS REPEAT DATA FLAG
- SA6 A6+B1 FORMAT CODE
- SA6 A6+B1 COLUMN LENGTH
- SA6 CPRA+6 INVERTED ADDRESS
- SA6 EI FORCED *EI* ADDRESSING
- SA6 NR NEXT RECORD POINTER
- SA6 IC *CPP* PROCESSING FLAG
- SB2 DSDA DIRECTIVE PROCESSOR TABLE
- RJ CKC CRACK AND PROCESS DIRECTIVE
- JP ERR3 ERROR - UNRECOGNIZABLE DIRECTIVE
- DSD2 RJ CBF CREATE BML MAINTENANCE REGISTER FILE
- RJ COF COMPLETE OUTPUT FILES, RESET FL
- MESSAGE MSG2,,R * EXPRESS DUMP COMPLETE (FL USED )*
- SA1 DP
- NZ X1,DSD3 IF DIRECTIVES PROCESSED
- SA1 I CHECK INPUT FILE NAME
- MX0 42
- BX1 X0*X1
- ZR X1,DSD3 IF *I=0* SPECIFIED
- MESSAGE MSG3,,R * NO DIRECTIVES PROCESSED.*
- DSD3 SA1 EB
- ZR X1,DSD4 IF NOT EMPTY BML FILE
- MESSAGE MSG4,,R NO ERRORS IN MAINTENANCE REGISTERS
- DSD4 ENDRUN
- DSDA BSS 0 CONTROL DIRECTIVE PROCESSOR TABLE
- QUAL DIRECT
- CARD P,ACCOUNT
- CARD ,ALLMEM
- CARD ,B
- CARD P,AP,APR1
- CARD P,BATCHIO
- CARD P,BIO
- CARD ,BCDUMP
- CARD ,BUFF
- CARD ,C
- CARD ,CBT
- CARD ,CCT
- CARD ,CM
- CARD ,CP,CPP1
- CARD ,CPO
- CARD P,CT
- CARD ,D
- CARD P,DAYFILE
- CARD P,DB,DBR4
- CARD ,DBW
- CARD P,DDB
- CARD ,DISPOSE
- CARD P,DP
- CARD P,E
- CARD ,EC
- CARD P,EICB
- CARD P,EJ
- CARD ,EJOFF
- CARD ,EJON
- CARD P,EJT
- CARD P,EPB
- CARD P,ERRLOG
- CARD P,EST
- CARD ,FMFREG
- CARD P,FNT
- CARD P,FOT
- CARD ,FTT
- CARD ,HAT
- CARD P,IAF
- CARD ,II
- CARD ,IOUCR
- CARD ,IOUMR
- CARD P,JC
- CARD P,LC
- CARD P,LDIS
- CARD P,LIDT
- CARD ,LPVA
- CARD P,MAG
- CARD P,MAGNET
- CARD P,MAINLOG
- CARD ,MCT
- CARD ,MEMMR
- CARD ,MPP
- CARD P,MST
- CARD P,MTR
- CARD P,MTRQU
- CARD P,ODIS
- CARD ,OUTPUT
- CARD P,P
- CARD ,PCP
- CARD ,PD
- CARD P,PF
- CARD P,PLD
- CARD ,PMS
- CARD P,PO
- CARD ,PP
- CARD P,PROBE
- CARD ,PROCA
- CARD ,PROCW
- CARD ,PROMR
- CARD ,PROPM
- CARD ,PRORF
- CARD ,PROSM
- CARD ,PROXP
- CARD P,PST
- CARD ,PUT
- CARD P,PX
- CARD ,Q
- CARD P,QF
- CARD P,QFT
- CARD ,QOA
- CARD ,QOD
- CARD ,QXA
- CARD ,QXD
- CARD ,RA
- CARD ,RAC
- CARD P,RCL
- CARD ,READ
- CARD ,REWIND
- CARD P,RHF
- CARD P,RPL
- CARD P,SAB
- CARD P,SC
- CARD P,SDA
- CARD P,SECDED
- CARD ,SETCPU
- CARD ,SETIOU
- CARD ,SETJPS
- CARD ,SETRMA
- CARD ,SETVEP
- CARD P,SST
- CARD ,TBDUMP
- CARD ,TRACE
- CARD ,UEC
- CARD P,W
- CARD P,XP
- CARD ,Z
- DATA 0
- QUAL
- DAYFILE SPACE 4
- ** DAYFILE MESSAGES.
- MSG1 DATA 29C PROCESSING INPUT DIRECTIVES.
- MSG2 DATA 30H EXPRESS DUMP COMPLETE (FL USE
- MSG2A VFD 12/2LD
- VFD 36/0 MEMORY USED
- VFD 12/2LB)
- DATA 0
- MSG3 DATA C* NO DIRECTIVES PROCESSED.*
- MSG4 DATA C* NO ERRORS REPORTED IN MAINTENANCE REGISTERS.*
- MSG5 DATA C* WARNING - INCOMPLETE DUMP FILE.*
- TITLE ERROR PROCESSORS.
- ERRORS SPACE 4
- ** ERROR PROCESSORS.
- ERR1 SX5 =C* DSDI ARGUMENT ERROR.*
- EQ PFE PROCESS FATAL ERROR
- ERR2 SX5 =C*STATUS/CONTROL REGISTERS NOT FOUND.*
- EQ PNE1 PROCESS NON-FATAL ERROR
- ERR3 SX5 =C*UNRECOGNIZABLE DIRECTIVE.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR4 SX5 =C* CM RECORD NOT FOUND.*
- EQ PFE PROCESS FATAL ERROR
- ERR5 SX5 =C*EXTENDED MEMORY RECORD NOT FOUND.*
- EQ PNE1 PROCESS NON-FATAL ERROR
- ERR6 SX5 =C*DIRECTIVE PARAMETER ERROR.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR7 SX5 =C*PPU NOT FOUND.*
- EQ PNE1 PROCESS NON-FATAL ERROR
- ERR8 SX5 =C*INCORRECT CONTROL POINT NUMBER.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR8.1 SX6 1 CHECK ERROR RETURN ADDRESS
- SA6 ERRC
- EQ ERR8 SET ERROR MESSAGE
- ERR9 SX5 =C*INCORRECT PRINT DENSITY SELECTION.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR10 SX5 =C*SUBSYSTEM NOT FOUND.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR11 SX5 =C*ALTERNATE FILE ACTIVE.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR12 SX5 =C*INCORRECT FILE NAME.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR13 SX5 =C*ALTERNATE OUTPUT TO TERMINAL INCORRECT.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR14 SX5 =C*RECORD NOT FOUND.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR15 SX5 =C*HARDWARE REGISTERS NOT FOUND.*
- EQ PNE1 PROCESS NON-FATAL ERROR
- ERR16 SX5 =C*DIRECTIVE RESTRICTED TO PRINTER OUTPUT.*
- EQ PNE1 PROCESS NON-FATAL ERROR
- ERR17 SX5 =C*DIRECTIVE RESTRICTED TO TERMINAL OUTPUT.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR18 SX6 1 CHECK ERROR RETURN ADDRESS
- SA6 ERRC
- SX5 =C*WORD ADDRESS NOT FOUND.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR19 SX5 =C*BAD SYSTEM POINTER.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR19.1 SX6 1 CHECK ERROR RETURN ADDRESS
- SA6 ERRC
- EQ ERR19 SET ERROR MESSAGE
- ERR20 SX5 =C* DSDI ERROR LIMIT EXCEEDED.*
- EQ PFE PROCESS FATAL ERROR
- ERR21 SX5 =C*REQUESTED MEMORY NOT FOUND.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR22 SX5 =C*INCORRECT PRINT OPTION SELECTION.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR23 SX5 =C*SELECTED DEVICE NOT MASS STORAGE.*
- EQ PNE1 PROCESS NON-FATAL ERROR
- ERR24 SX5 =C* DIRECTORY TABLE BAD.*
- EQ PFE PROCESS FATAL ERROR
- ERR25 SX5 =C*DIRECTIVE NOT MEANINGFUL.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR26 SX5 =C*PROBE TABLE NOT AVAILABLE.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR27 SX5 =C*PROBE NOT ENABLED.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR28 SX5 =C* INSUFFICIENT NFL SPACE.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR30 SX5 =C* PAGE DESCRIPTOR ENTRY NOT FOUND.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR31 SX5 =C*RESIDENT CENTRAL LIBRARY EMPTY.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR32 SX5 =C* MEMORY ADDRESS BEYOND CM BOUNDARY.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR33 SX5 =C*PARAMETER CHARACTER COUNT EXCEEDED.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR34 SX5 =C*NO BUFFERED DEVICES DEFINED.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR35 SX5 =C*SELECTED ENTRY BEYOND TABLE BOUNDARY.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR36 SX5 =C*INCORRECT MACHINE ID.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR37 SX5 =C*NO ACTIVE DISK BUFFERS.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR38 SX6 1 CHECK ERROR RETURN ADDRESS
- SA6 ERRC
- SX5 =C*INCORRECT DISK BUFFER NUMBER.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR39 SX5 =C* DMB FILE FORMAT ERROR.*
- EQ PFE PROCESS FATAL ERROR
- ERR40 SX5 =C*DIRECTIVE SHOULD HAVE NO PARAMETERS.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR41 SX5 =C* USER EXTENDED MEMORY NOT DEFINED.*
- EQ PNE1 PROCESS ERROR
- ERR42 SX5 =C* MAINTENANCE REGISTER RECORD NOT FOUND.*
- EQ PFE PROCESS FATAL ERROR
- ERR43 SX5 =C* B PARAMETER NOT ALLOWED WITH DMB DUMP FILE.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR44 SX5 =C* SEGMENT MISSING.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR45 SX5 =C* PVA WITH RING = 0.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR46 SX5 =C* TAPE MUST BE REQUESTED AS LABELED. *
- EQ PFE PROCESS FATAL ERROR
- ERR47 SX5 =C$ CANNOT PROCESS IOU TYPE, USE *ANAD* ON NOS/VE.$
- EQ PNE PROCESS ERROR
- ERR48 SX5 =C* NO PSEUDO-CONTROL POINTS DEFINED.*
- EQ PNE PROCESS NON-FATAL ERROR
- ERR49 SX6 1 CHECK ERROR RETURN ADDRESS
- SA6 ERRC
- SX5 =C* INCORRECT PPU PROGRAM NAME.*
- EQ PNE1 PROCESS NON-FATAL ERROR
- ERR50 SX6 1 CHECK ERROR RETURN ADDRESS
- SA6 ERRC
- SX5 =C*PROGRAM NOT FOUND - .*
- BX6 X1 SET PROGRAM NAME IN MESSAGE
- SA6 X5+2
- EQ PNE1 PROCESS NON-FATAL ERROR
- PNE SPACE 4,10
- ** PNE - PROCESS NON-FATAL ERROR.
- *
- * ENTRY AT PNE, LIST CURRENT DIRECTIVE CARD.
- * AT PNE1, DO NOT LIST CURRENT DIRECTIVE CARD.
- * (X5) = MESSAGE ADDRESS.
- PNE SA1 TF
- NZ X1,PNE1 IF CURRENT OUTPUT IS TO TERMINAL
- SA1 EF
- SA0 X1 SAVE EJECT FLAG
- SX6 B1
- SA6 A1 TURN EJECT ON
- RJ LDC LIST DIRECTIVE
- SX6 A0
- SA6 EF RESTORE EJECT FLAG
- * CHECK FOR ACTIVE TERMINAL.
- PNE1 SX2 L SET TERMINAL FILE
- RJ STF
- NZ X6,PNE2 IF LIST OUTPUT NOT TO TERMINAL
- WRITE L,* SET WRITE CODE IN FET
- WRITEC L,X5 WRITE MESSAGE TO TERMINAL
- PNE2 SA1 TF
- NZ X1,PNE4 IF CURRENT OUTPUT TO TERMINAL
- SB2 ERRB BUILD PRINT MESSAGE
- SB3 B0
- MX2 -12
- PNE3 SA1 X5+B3 MOVE MESSAGE
- BX6 X1
- SA6 B2
- SB2 B2+B1
- SB3 B3+B1
- BX6 -X2*X6
- NZ X6,PNE3 IF NOT END OF MESSAGE
- PRINT (=2C )
- PRINT ERRA
- PNE4 SA1 EC ADVANCE ERROR COUNT
- SX6 X1+B1
- SA6 A1
- SX6 X6-NERR
- PL X6,ERR20 IF ERROR LIMIT EXCEEDED
- SA1 ERRC
- ZR X1,DSD1 IF NOT TO CHECK FOR ERROR RETURN ADDRESS
- BX6 X6-X6 CLEAR FLAG
- SA6 A1
- SA1 A1+B1 GET RETURN ADDRESS
- SB3 X1
- ZR B3,DSD1 IF NONE SPECIFIED
- JP B3 CONTINUE PROCESSING DIRECTIVE
- ERRA DATA 20H *********WARNING -
- ERRB BSS 6
- ERRC CON 0 CHECK ERROR RETURN FLAG
- CON 0 ERROR RETURN ADDRESS
- PFE SPACE 4,10
- ** PROCESS FATAL ERRORS.
- *
- * ENTRY (X5) = MESSAGE ADDRESS.
- PFE MESSAGE X5,,R
- RJ COF COMPLETE OUTPUT FILES
- ABORT
- TITLE COMMON DECKS.
- COMMON SPACE 4
- ** COMMON DECKS.
- *CALL COMCARG
- *CALL COMCCDD
- *CALL COMCCMD
- ERP1$ EQU 1 SELECT ERROR PROCESSING
- *CALL COMCCIO
- *CALL COMCCOD
- *CALL COMCCPM
- *CALL COMCDXB
- *CALL COMCHXB
- *CALL COMCLFM
- *CALL COMCMTP
- *CALL COMCMVE
- *CALL COMCRDC
- *CALL COMCRDO
- *CALL COMCRDS
- *CALL COMCRDW
- *CALL COMCSFN
- *CALL COMCSTF
- *CALL COMCSYS
- USBL$ EQU 1 SELECT VARIABLE STRING LENGTH OPTION
- *CALL COMCUSB
- *CALL COMCWTC
- *CALL COMCWTO
- *CALL COMCWTS
- *CALL COMCWTW
- *CALL COMCZAP
- *CALL COMDTFN
- *CALL COMTVDT
- TITLE OPERATING SYSTEM TABLE DESCRIPTORS.
- SPACE 4,5
- ** THIS SECTION CONTAINS TABLES WHICH DESCRIBE THE KRONOS/NOS
- * OPERATING SYSTEM TABLES.
- *
- * EACH TABLE SHOULD HAVE THE LEFT COLUMN EQUAL TO OR LONGER
- * THAN THE RIGHT COLUMN. THE FIELD DESCRIPTION LEFT
- * PARENTHESIS SHOULD BE IN COLUMN 30 AND THE FIELD 27
- * CHARACTERS LONG. ALSO, EACH ENTRY SHOULD BE IN THE FORM -
- *
- * FIELD WORD,( 27 CHARACTER DESCRIPTION ),SB,NB
- *
- * WHERE SB IS THE STARTING BIT OF THE FIELD AND NB IS THE
- * NUMBER OF BITS IN THE FIELD (MUST BE A MULTIPLE OF 3 BITS).
- TFLC SPACE 4
- ** TFLC - LOW CORE POINTER DESCRIPTORS.
- TFLC VFD 24/0,18/TFLC1,18/TFLC2
- .OW SET 0-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFLC1 BSS 0
- FIELD 0,(RESERVED ),59,60
- FIELD 1,( ),59,60
- FIELD 2,( ),59,60
- FIELD 3,( ),59,60
- FIELD 4,( ),59,60
- FIELD REML,(RESERVED REML),59,48
- FIELD REML,(ERROR FLAGS ),11,12
- FIELD DSAL,(DEADSTART ASSISTANT PP DSAL),59,12
- FIELD DSAL,(SYSTEM CONSOLE DRIVER PP ),47,12
- FIELD DSAL,(RESERVED ),35,12
- FIELD DSAL,(CEL PRESENT FLAG ),23,12
- FIELD DSAL,(DEADSTART CHANNEL ),11,12
- FIELD DSCL,(ACTIVATE ASSISTANT PP DSCL),59,3
- FIELD DSCL,(RESERVED ),56,3
- FIELD DSCL,(ASSISTANT CHANNEL ),53,6
- FIELD DSCL,(RESERVED ),47,48
- FIELD IN0L,(INSTALLATION WORD 0 IN0L),59,60
- FIELD IN1L,(INSTALLATION WORD 1 IN1L),59,60
- FIELD IN2L,(INSTALLATION WORD 2 IN2L),59,60
- FIELD IN3L,(INSTALLATION WORD 3 IN3L),59,60
- FIELD IN4L,(INSTALLATION WORD 4 IN4L),59,60
- FIELD IN5L,(INSTALLATION WORD 5 IN5L),59,60
- FIELD IN6L,(INSTALLATION WORD 6 IN6L),59,60
- FIELD IN7L,(INSTALLATION WORD 7 IN7L),59,60
- FIELD 20,(RESERVED ),59,60
- FIELD JSNL,(ZERO JSNL),59,12
- FIELD JSNL,(RESERVED ),47,24
- FIELD JSNL,(JOB SEQUENCE NUMBER ),23,24
- FIELD ACML,(AVAILABLE CM/100B ACML),59,24
- FIELD AECL,(AVAILABLE XM/*UEBS* AECL),35,24
- FIELD ACML,(RESERVED ),11,12
- FIELD CMRL,(ZERO CMRL),59,12
- FIELD CMRL,(RESERVED ),47,12
- FIELD CMRL,(RA/100B FOR CP ZERO ),35,24
- FIELD CMRL,(CMR SIZE/100B ),11,12
- FIELD CMRL+1,(ZERO ),59,12
- FIELD CMRL+1,(RA/100B FOR CP ZERO ),47,24
- FIELD CMRL+1,(4000B ),23,12
- FIELD CMRL+1,(FL/100B FOR CP ZERO ),11,12
- FIELD ECRL,(ZERO ECRL),59,12
- FIELD ECRL,(NUMBER OF *UEBS* BLOCKS ),47,12
- FIELD ECRL,(EM RA/*UEBS* FOR CP 0 ),35,24
- FIELD ECRL,(EM FL/*UEBS* FOR CP 0 ),11,12
- FIELD PPXL,(PP EXCHANGE PENDING PPXL),59,60
- FIELD MSCL,(RECALL REDUCTION LIMIT MSCL),59,12
- FIELD MSCL,(CPU RECALL DELAY ),47,12
- FIELD MSCL,(PP/AUTO RECALL DELAY ),35,12
- FIELD MSCL,(RESERVED ),23,12
- FIELD MSCL,(MEMORY PAD FOR *RSTM* ),11,12
- FIELD JDAL,(JULIAN DATE JDAL),59,60
- FIELD PDTL,(ZERO PDTL),59,24
- FIELD PDTL,(YEAR - BIASED BY 1970 ),35,6
- FIELD PDTL,(MONTH ),29,6
- FIELD PDTL,(DAY ),23,6
- FIELD PDTL,(HOURS ),17,6
- FIELD PDTL,(MINUTES ),11,6
- FIELD PDTL,(SECONDS ),5,6
- FIELD TIML,(TIME OF DAY (DSD) TIML),59,60
- FIELD DTEL,(DATE (DSD) DTEL),59,60
- FIELD SYTL,(SYSTEM TITLE LINE SYTL),59,60
- FIELD SYTL+1,( ),59,60
- FIELD SYTL+2,( ),59,60
- FIELD SYTL+3,( ),59,60
- FIELD SVNL,(SYSTEM VERSION NAME SVNL),59,60
- FIELD SVNL+1,( ),59,60
- FIELD SSML,(RESERVED SSML),59,3
- FIELD SSML,(OUTPUT QUEUE HANDLING LEVEL),56,3
- FIELD SSML,(RESERVED ),53,3
- FIELD SSML,(SYSTEM SECURITY MODE ),50,3
- FIELD SSML,(RESERVED ),47,15
- FIELD SSML,(SECURITY ACCESS CATEGORIES ),32,33
- FIELD JSCL,(SCHEDULER ACTIVE FLAG JSCL),59,3
- FIELD JSCL,(RESERVED ),56,9
- FIELD JSCL,(INPUT FILE SCHED INTERVAL ),47,12
- FIELD JSCL,(SCHEDULER CYCLE INTERVAL ),35,12
- FIELD JSCL,(SCHEDULER RECALL TIME ),23,24
- FIELD IPRL,(CPU1 MULTIPLIER INDEX IPRL),59,6
- FIELD IPRL,(CPU0 MULTIPLIER INDEX ),53,6
- FIELD IPRL,(SEC ROLLOUT SCTR THRESHOLD ),47,12
- FIELD IPRL,(ASSUMED KEYPUNCH MODE ),35,3
- FIELD IPRL,(RESERVED ),32,6
- FIELD IPRL,(ASSUMED CHAR SET CONV ),26,3
- FIELD IPRL,(ASSUMED CONV MODE ),23,12
- FIELD IPRL,(ASSUMED NT TAPE DENSITY ),11,6
- FIELD IPRL,(TRACK TYPE/MT DENSITY ),5,6
- FIELD SSTL,(AUTOR/CM CLR/SEC LOCK SSTL),59,3
- FIELD SSTL,(LOCK/DISABLE MSS M,CART PFS),56,3
- FIELD SSTL,(DISABLE USER ECS, PF/MS VAL),53,3
- FIELD SSTL,(DISABLE MS VAL,MSE M,SP DWN),50,3
- FIELD SSTL,(RES/DISABLE FORCED FORM/RES),47,3
- FIELD SSTL,(DISABLE HFI,TAPE PFS,REMOVE),44,3
- FIELD SSTL,(DISABLE DSK VL,SEC USER,SCP),41,3
- FIELD SSTL,(RESERVED ),38,3
- FIELD SSTL,(DISABLE SUB-CP/RESERVED ),35,3
- FIELD SSTL,(RESERVED/DISABLE PROBE ),32,3
- FIELD SSTL,(DISABLE TRACE/RESERVED ),29,3
- FIELD SSTL,(RESERVED/DISABLE TMS ),26,3
- FIELD SSTL,(*VE=*/DISABLE FMP, DDP RO ),23,3
- FIELD SSTL,(RESIDENT/PRIVILEGED RDF ),20,3
- FIELD SSTL,(DISABLE STACK/LOG/SIM SCR ),17,3
- FIELD SSTL,(ENGR/SYS DEBUG/DEBUG STATUS),14,3
- FIELD SSTL,(RESERVED FOR INSTALLATION ),11,12
- FIELD SSSL,(SUBSYSTEM STATUS SSSL),59,60
- FIELD DFPP,(FWA DAYFILE BUF PTRS DFPP),59,24
- FIELD DFPP,(FWA DAYFILE DUMP BUFFER ),35,24
- FIELD DFPP,(DAYFILE DUMP BUF INTERLOCK ),11,12
- FIELD IPPL,(6 LPI CHARGE IPPL),59,12
- FIELD IPPL,(8 LPI CHARGE ),47,12
- FIELD IPPL,(SYSTEM PD/PS/PW DEFAULTS ),35,24
- FIELD IPPL,(RESERVED ),11,12
- FIELD PPRL,(CPP *MTR* REQ FLAG PPRL),59,12
- FIELD PPRL,(RPL FLAG ),47,6
- FIELD PPRL,(CMR ADDRESS OF IDLE LOOP ),41,18
- FIELD PPRL,(LENGTH OF IDLE LOOP ),23,12
- FIELD PPRL,(IDLE LOOP LOAD ADDRESS ),11,12
- FIELD PPAL,(ZERO PPAL),59,12
- FIELD PPAL,(FREE PP-S, PP0 - PP10 ),47,9
- FIELD PPAL,(FREE PP-S, PP11,PP31 - PP20),38,12
- FIELD PPAL,(ZERO ),26,9
- FIELD PPAL,(FREE CPP COUNT ),17,6
- FIELD PPAL,(FREE PP COUNT ),11,12
- FIELD MSEL,(MS ERR PROC. LOAD CODE MSEL),59,12
- FIELD MSEL,(CRD CM ),47,12
- FIELD MSEL,(LDD CM ),35,12
- FIELD MSEL,(NJN LMSE ),23,12
- FIELD MSEL,(LDD T1 ),11,12
- FIELD MSEL+1,(STD CM+3 ),59,12
- FIELD MSEL+1,(LDN 1R7 ),47,12
- FIELD MSEL+1,(STD CM+2 ),35,12
- FIELD MSEL+1,(MONITOR SPLM ),23,24
- FIELD MSEL+2,(MONITOR SPLM (LOW 12 BITS) ),59,12
- FIELD MSEL+2,(LDD CM+4 ),47,12
- FIELD MSEL+2,(LJM PLL4 ),35,24
- FIELD MSEL+2,(CON LMSE-1 ),11,12
- FIELD BMLL,(DEADSTART FLAG BMLL),59,12
- FIELD BMLL,(FWA ERROR MSG BUFFER EMBP),47,24
- FIELD BMLL,(MESSAGE LINK ),23,24
- FIELD CMCL,(CP FOR STORAGE MOVE CMCL),59,12
- FIELD CMCL,(INTERNAL TO MTR ),47,48
- FIELD ACPL,(CPU 0 OFF/CPU 0 RA ACPL),59,24
- FIELD ACPL,(CPU 0 TIME SLICE OF SUB CP ),35,36
- FIELD ACPL+1,(CPU 1 OFF/CPU 1 RA ),59,24
- FIELD ACPL+1,(CPU 1 TIME SLICE OF SUB CP ),35,36
- FIELD CSWL,(CPU 0 SWITCH REQ CSWL),59,6
- FIELD CSWL,(PTR TO BYPASS WQ ENTRY ),53,18
- FIELD CSWL,(CPU 0 SWITCH TIME ),35,36
- FIELD CSWL+1,(CPU 1 SWITCH REQ ),59,6
- FIELD CSWL+1,(PTR TO BYPASS WQ ENTRY ),53,18
- FIELD CSWL+1,(CPU 1 SWITCH TIME ),35,36
- FIELD PXPP,(RESERVED PXPP),59,36
- FIELD PXPP,(ADDRESS OF PP2 XP ),23,24
- FIELD PXPP+1,(FIRST WORD OF PP XP ),59,60
- FIELD ZERL,(ZERO LOCATION ZERL),59,60
- FIELD SMRL,(STORAGE MOVE INC. SMRL),59,12
- FIELD SMRL,(PREVIOUS CPU STATUS ),47,3
- FIELD SMRL,(RESERVED ),44,6
- FIELD SMRL,(ECS ERROR OCCURED ),38,3
- FIELD SMRL,(RESERVED ),35,24
- FIELD SMRL,(NUMBER OF MOVING CP/PCP ),11,12
- FIELD NCHL,(MAXIMUM CHANNEL NUMBER NCHL),59,12
- FIELD NCPL,(NUMBER OF CONTROL PTS NCPL),47,12
- FIELD PPUL,(NUMBER OF PP-S PPUL),35,12
- FIELD CFGL,(WALL CLK/EM MODE/7255 CFGL),23,3
- FIELD CFGL,(ISD ONLY/RESERVED ),20,3
- FIELD CPPL,(NUMBER OF CCH-S AND CPP-S ),17,6
- FIELD EXML,(RESERVED ),11,3
- FIELD EXML,(EM EQUIPMENT, CPU PATH EXML),8,9
- FIELD EIBP,(FLAGS - 2CPU W/CACHE EIBP),59,3
- FIELD EIBP,(RESERVED ),56,6
- FIELD EIBP,(MTR XP ADDR - 2CPU W/CACHE ),50,18
- FIELD EIBP,(*EICB* POINTER ),32,33
- FIELD ESTP,(FWA EST ESTP),59,24
- FIELD ESTP,(SIZE EST / LAST ORD + 1 ),35,12
- FIELD ESTP,(LAST MS ORDINAL + 1 ),23,12
- FIELD DSSL,(LIBDECK NUMBER DSSL),11,6
- FIELD DSSL,(RES / MICRO/EI STATUS ),5,3
- FIELD DSSL,(D/S FLAG / RECOVERY LEVEL ),2,3
- FIELD FNTP,(FWA SYSTEM FNT FNTP),59,24
- FIELD FNTP,(MAX FNT ENTRIES ),35,12
- FIELD FNTP,(COUNT OF FREE FNT ENTRIES ),23,12
- FIELD FNTP,(NEXT AVAILABLE FNT ENTRY ),11,12
- FIELD EJTP,(FWA EJT EJTP),59,24
- FIELD EJTP,(MAX EJT ENTRIES ),35,12
- FIELD EJTP,(COUNT OF FREE EJT ENTRIES ),23,12
- FIELD EJTP,(NEXT AVAILABLE EJT ENTRY ),11,12
- FIELD QFTP,(FWA QFT QFTP),59,24
- FIELD QFTP,(MAX QFT ENTRIES ),35,12
- FIELD QFTP,(COUNT OF FREE QFT ENTRIES ),23,12
- FIELD QFTP,(NEXT AVAILABLE QFT ENTRY ),11,12
- CON -1 END OF LEFT COLUMN
- TFLC2 BSS 0
- FIELD CPSL,(EQ CPSL CPSL),59,30
- FIELD CPSL,(PS 0 ),29,30
- FIELD PPCP,(FWA EXT. PP COMM. BLK. PPCP),59,24
- FIELD MEFL,(USER EM SHIFT COUNT ),35,3
- FIELD MEFL,(EXTENDED ADDRESSING FIELDS ),32,6
- FIELD MEFL,(RESERVED MEFL),26,3
- FIELD MEFL,(EM SIZE/*EMBS* ),23,12
- FIELD PPCP,(FWA PP COMM AREA PPCP),11,12
- FIELD SFIL,(SCOPE STAT INTERLOCK SFIL),59,60
- FIELD CLTP,(FWA CLT CLTP),59,24
- FIELD CLTP,(MAX CLT ENTRIES ),35,12
- FIELD CLTP,(COUNT OF FREE CLT ENTRIES ),23,12
- FIELD CLTP,(NEXT ),11,12
- FIELD SDAP,(FWA STAT DATA AREA SDAP),59,24
- FIELD PPSP,(FWA PP SAVE AREA PPSP),35,24
- FIELD PPSP,(MAX PP SAVE AREAS ),11,12
- FIELD CECL,(UNCORRECTED CPU ERROR CECL),59,12
- FIELD CECL,(CORRECTED CPU0 COUNT ),47,12
- FIELD CECL,(CORRECTED CPU1 COUNT ),35,12
- FIELD CECL,(CM SECDED ERROR COUNT ),23,12
- FIELD CECL,(LCME SECDED ERROR COUNT ),11,12
- FIELD 104,(RESERVED FOR INSTALLATION ),59,60
- FIELD 105,( ),59,60
- FIELD RTCL,(RT CLOCK IMAGE - SECS RTCL),59,24
- FIELD RTCL,(RT CLOCK IMAGE - MSECS ),35,36
- FIELD PFNL,(DEFAULT PACK TYPE PFNL),59,18
- FIELD PFNL,(RESERVED ),41,18
- FIELD PFNL,(EST ORD OF DEFAULT FAM ),23,12
- FIELD PFNL,(CPU TRANSFER THRESHOLD ),11,12
- FIELD RDSL,(SECS TILL LABEL CHECK RDSL),59,12
- FIELD RDSL,(SECONDS TILL *1CK* CALL ),47,12
- FIELD RDSL,(RESERVED ),35,36
- FIELD SCRL,(ERROR/EMERGENCY FLAGS SCRL),59,3
- FIELD SCRL,(EMER STEP/MANUAL STEP/RES ),56,3
- FIELD SCRL,(FWA OF SECDED ID TABLE ),53,18
- FIELD SCRL,(*1CK* ADDR IF FROM *1MB* ),35,12
- FIELD SCRL,(RESERVED ),23,24
- FIELD SABL,(FWA SAB SABL),59,24
- FIELD SABL,(SAB LENGTH ),35,12
- FIELD SABL,(RESERVED ),23,12
- FIELD SABL,(LAST EJT ORDINAL SCHEDULED ),11,12
- FIELD MABL,(RESERVED MABL),59,12
- FIELD MABL,(OPTIONS INSTALLED ),47,12
- FIELD MABL,(CM SIZE/100B ),35,24
- FIELD MABL,(PP SPEED ),11,12
- FIELD EABL+CPEI,(CPU 0 DESCRIPTOR ADDR EABL),59,18
- FIELD EABL+CPEI,(CPU 1 DESCRIPTOR ADDR ),41,18
- FIELD EABL+CPEI,(CPU 0 CONNECT CODE ),23,12
- FIELD EABL+CPEI,(CPU 1 CONNECT CODE ),11,12
- FIELD EABL+CMEI,(CENTRAL MEMORY DESCRIPTOR ),59,18
- FIELD EABL+CMEI,(EXTENDED MEMORY DESCRIPTOR ),41,18
- FIELD EABL+CMEI,(CENTRAL MEMORY CONNECT CODE),23,12
- FIELD EABL+CMEI,(RESERVED ),11,12
- FIELD EABL+IOEI,(IOU DESCRIPTOR ADDR ),59,18
- FIELD EABL+IOEI,(RESERVED ),41,18
- FIELD EABL+IOEI,(IOU CONNECT CODE ),23,12
- FIELD EABL+IOEI,(RESERVED ),11,12
- FIELD EABL+MFEI,(MAINFRAME DESCRIPTOR ADDR ),59,18
- FIELD EABL+DCEI,(DISPLAY CONSOLE DESCRIPTOR ),41,18
- FIELD EABL+MFEI,(SAB LENGTH ),23,12
- FIELD EABL+MFEI,(RESERVED ),11,12
- FIELD UEML,(UEM BASE ADDR/1000B UEML),59,12
- FIELD UEML,(UEM FL/*UEBS* ),47,12
- FIELD UEML,(UEM EQUIPMENT ),35,12
- FIELD UEML,(RESERVED ),23,21
- FIELD UEML,(*UEM* PRESENT ),2,3
- FIELD CMBL,(FWA BLOCK NAME TABLE CMBL),59,24
- FIELD CMBL,(RESERVED ),35,12
- FIELD CMBL,(FWA BREAKPOINT TABLE ),23,24
- FIELD MMFL,(MACHINE IDENTIFICATION MMFL),59,12
- FIELD MMFL,(ISD/LSPMMF/BIOMMF FLAGS ),47,3
- FIELD MMFL,(LINK DEVICE EQ ),44,9
- FIELD MMFL,(FLAG REG RECOVERY INTERLOCK),35,3
- FIELD MMFL,(INITIALIZED EQ COUNT ),32,9
- FIELD MMFL,(MACHINES MASK ),23,12
- FIELD MMFL,(MACHINE INDEX ),11,12
- FIELD EFRL,(MACHINE STATE TBL PTR EFRL),59,24
- FIELD EFRL,(RESERVED ),35,12
- FIELD EFRL,(DISPLAY FLAG REGISTER IF 0 ),23,6
- FIELD EFRL,(FLAG REGISTER IMAGE ),17,18
- FIELD INWL,(RESERVED INWL),59,6
- FIELD INWL,(RES/MDD DEDICATED/CM WRITE ),53,3
- FIELD INWL,(MR WRT/MX CH HNG/MNT CH HNG),50,3
- FIELD INWL,(RESERVED ),47,24
- FIELD INWL,(ACTIVE MREC COUNT ),23,6
- FIELD INWL,(RESERVED/DEADSTART JOB ),17,3
- FIELD INWL,(LIMITS CHG/DIS SCHEDULE/RES),14,3
- FIELD INWL,(RESERVED ),11,6
- FIELD INWL,(RES/CKPT/WALL CLOCK RESET ),5,3
- FIELD INWL,(CPD/FATAL ERR/SUBSYS ABORT ),2,3
- FIELD 125,(RESERVED ),59,60
- FIELD 126,(RESERVED ),59,60
- FIELD 127,(RESERVED ),59,60
- FIELD OSTP,(OPTICAL STATUS TBL FWA OSTP),59,24
- FIELD OSTP,(NUMBER OF OPTICAL DEVICES ),35,12
- FIELD OSTP,(RESERVED ),23,12
- FIELD OSTP,(OPTICAL SCANNER CONTROL ),11,12
- FIELD ORTP,(OPTICAL REQ. TABLE FWA ORTP),59,24
- FIELD ORTP,(OPTICAL REQ. TABLE LENGTH ),35,12
- FIELD ORTP,(OPTICAL REQ. ENTRIES AVAIL.),23,12
- FIELD ORTP,(NEXT OPTICAL REQUEST ENTRY ),11,12
- FIELD PRBP,(PROBE TABLE INTERLOCK PRBP),59,3
- FIELD PRBP,(RESERVED ),56,15
- FIELD PRBP,(PROBE TABLE AREA LENGTH ),41,18
- FIELD PRBP,(FWA PROBE TABLE AREA ),23,24
- FIELD EVTP,(EVENT TABLE FWA EVTP),59,24
- FIELD INBP,(INSTALLATION BLOCK FWA INBP),35,24
- FIELD INBP,(INST. BLOCK LENGTH INBP),11,12
- FIELD MCTP,(FWA MCT MCTP),59,24
- FIELD MCTP,(MAX MCT ENTRIES ),35,12
- FIELD PCPP,(FWA PCP AREA PCPP),23,24
- FIELD MSAP,(FWA MS ALLOC TABLE MSAP),59,24
- FIELD SSCP,(FWA SSCT SSCP),35,24
- FIELD TFML,(TMS STATUS BYTE TFML),11,12
- FIELD OPRL,(OPERATOR MSG PRESENT OPRL),59,3
- FIELD OPRL,(RESERVED ),56,42
- FIELD OPRL,(RESERVED/LOW SPACE ),14,3
- FIELD OPRL,(ERR ALERT/CH DWN/EM DIS ),11,3
- FIELD OPRL,(TRACK, BML, ACC SIZE LIMIT ),8,3
- FIELD OPRL,(ERRLOG, DAYFIL LIM/EJT FULL),5,3
- FIELD OPRL,(QFT, FNT, FOT FULL ),2,3
- FIELD FOTP,(FWA FOT FOTP),59,24
- FIELD FOTP,(MAX FOT ENTRIES ),35,12
- FIELD FOTP,(COUNT OF FREE FOT ENTRIES ),23,12
- FIELD FOTP,(NEXT AVAILABLE FOT ENTRY ),11,12
- FIELD LIDP,(FWA LID TABLE LIDP),59,24
- FIELD LIDP,(LENGTH OF LID TABLE ),35,12
- FIELD LIDP,(NUMBER OF FREE ENTRIES ),23,12
- FIELD LIDP,(RESERVED ),11,9
- FIELD LIDP,(INTERLOCK ),2,3
- FIELD CHTP,(RESERVED CHTP),59,24
- FIELD CHTP,(FWA CHANNEL TABLES ),35,24
- FIELD NVOL,(NOS/VE EJT ORDINAL ),11,12
- FIELD RPLP,(FWA RPL RPLP),59,24
- FIELD LDSP,(FWA L-DISPLAY BUFFER LDSP),35,24
- FIELD VEBL,(NOS/VE BYPASS LIMIT VEBL),11,12
- FIELD RCLP,(FWA RCL RCLP),59,24
- FIELD SCDP,(FWA SCD PARAMETERS SCDP),35,24
- FIELD SCDP,(RESERVED ),11,12
- FIELD PLDP,(FWA PLD PLDP),59,24
- FIELD LBDP,(FWA LBD LBDP),35,24
- FIELD LBDP,(RESERVED ),11,12
- FIELD EPDP,(FWA EPD EPDP),59,24
- FIELD PSTP,(FWA PST PSTP),35,24
- FIELD PSTP,(RESERVED ),11,12
- FIELD EDBP,(FWA EM DISPLAY BUFFER EDBP),59,24
- FIELD EDBP,(RESERVED ),35,12
- FIELD EPBP,(ECS/PP BUFFER COUNT EPBP),23,6
- FIELD EPBP,(FWA ECS/PP BUFFER ),17,18
- FIELD BIOL,(CPUMLD LOAD ADDR/100B BIOL),59,12
- FIELD BIOL,(FWA BUFFERED I/O TABLES ),47,24
- FIELD CMTP,(FWA CPUMTR CMTP),23,24
- FIELD JBCP,(FWA JOB CONTROL BLOCKS JBCP),59,24
- FIELD JBCP,(RESERVED ),35,36
- FIELD JBCP+1,(RESERVED ),59,60
- FIELD CPAL,(CPU0 EXPACK TYPE CPAL),59,18
- FIELD CPAL,(CP ADDR OF JOB IN CPU0 ),41,18
- FIELD CPAL,(XP ADDR OF JOB IN CPU0 ),23,24
- FIELD CPAL+1,(CPU1 EXPACK TYPE ),59,18
- FIELD CPAL+1,(CP ADDR OF JOB IN CPU1 ),41,18
- FIELD CPAL+1,(XP ADDR OF JOB IN CPU1 ),23,24
- FIELD BQRL,(BUF MGR RCL QUEUE PTR BQRL),59,60
- FIELD RQRL,(MTR RECALL QUEUE PTR RQRL),59,60
- FIELD CQRL,(CPUCIO REQUEST Q PTR CQRL),59,60
- FIELD PQRL,(PP REQUEST QUEUE PTR PQRL),59,60
- FIELD WQRL,(WQ QUEUE POINTER WQRL),59,60
- FIELD TSCL,(CPU0 JOB PRIORITY TSCL),59,12
- FIELD TSCL,(RESERVED ),47,12
- FIELD TSCL,(CPU0 RECALL EXPIRATION ),35,36
- FIELD TSCL+1,(CPU1 JOB PRIORITY ),59,12
- FIELD TSCL+1,(RESERVED ),47,12
- FIELD TSCL+1,(CPU1 RECALL EXPIRATION ),35,36
- FIELD DSDL+0,(DSD - 1DS PARAMETER BLOCK ),59,60
- FIELD DSDL+1,( ),59,60
- FIELD DSDL+2,( ),59,60
- FIELD DSDL+3,( ),59,60
- FIELD DSDL+4,( ),59,60
- FIELD DSDL+5,( ),59,60
- FIELD DSDL+6,( ),59,60
- FIELD DSDL+7,( ),59,60
- FIELD DSDL+10B,( ),59,60
- FIELD DSDL+11B,( ),59,60
- FIELD DSDL+12B,( ),59,60
- FIELD DSDL+13B,( ),59,60
- FIELD DSDL+14B,( ),59,60
- CON 0 END OF RIGHT COLUMN
- TFLC3 EQU *
- ERRNG 2*TFLC2-TFLC1-TFLC3 IF RIGHT LONGER THAN LEFT
- TFCP SPACE 4
- ** TFCP - CONTROL POINT AREA FIELD DESCRIPTORS.
- TFCP VFD 24/0,18/TFCP1,18/TFCP2
- .OW SET STSW-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFCP1 BSS 0
- FIELD STSW,(CPU STATUS STSW),59,3
- FIELD STSW,(CPU SUB-CP ACTIVE ),56,3
- FIELD STSW,(NUMBER PPS ASSIGNED ),53,6
- FIELD STSW,(ERROR FLAGS ),47,12
- FIELD STSW,(RESERVED ),35,3
- FIELD STSW,(ROLLOUT CONTROL ),32,9
- FIELD STSW,(RESERVED ),23,12
- FIELD STSW,(RECALL CONTROL ),11,12
- FIELD CWQW,(CPU PRIORITY/FLAGS CWQW),59,12
- FIELD CWQW,(SLICE/RECALL FLAGS ),47,3
- FIELD CWQW,(SERVICE CYCLE NUMBER ),44,9
- FIELD CWQW,(CPU SCHED SERVICE INDEX ),35,9
- FIELD CWQW,(CPU FLAGS/RES/EXPACK TYPE ),26,9
- FIELD CWQW,(*WQ* LINKAGE ),17,18
- FIELD CSAW,(ZERO CSAW),59,6
- FIELD CSAW,(CPU TIME THRESHOLD ),53,18
- FIELD CSAW,(RECALL SLICE ACCUMULATOR ),35,18
- FIELD CSAW,(CPU SLICE ACCUMULATOR ),17,18
- FIELD FLSW,(NEGATIVE FL/100B FLSW),59,12
- FIELD FLSW,(*SET* RECOVERY NFL ),47,12
- FIELD FLSW,(RA/100B ),35,24
- FIELD FLSW,(FL/100B ),11,12
- FIELD FLSW+1,(ZERO ),59,12
- FIELD FLSW+1,(RA/100B - NFL/100B ),47,24
- FIELD FLSW+1,(4000B + NFL/100B ),23,12
- FIELD FLSW+1,(FL/100B ),11,12
- FIELD ECSW,(ZERO ECSW),59,12
- FIELD ECSW,(ECXM INTERLOCK/RESERVED ),47,3
- FIELD ECSW,(RESERVED ),44,9
- FIELD ECSW,(EM RA/*UEBS* ),35,24
- FIELD ECSW,(EM FL/*UEBS* ),11,12
- FIELD JCIW,(RESERVED JCIW),59,18
- FIELD JCIW,(RESV/RESV/CPUPFM ACTIVE ),41,3
- FIELD JCIW,(RESERVED/CPU SELECTION ),38,3
- FIELD JCIW,(SUBSYSTEM ID ),35,12
- FIELD JCIW,(JOB CONTROL/*DIS* FLAGS ),23,3
- FIELD JCIW,(USER PRIVACY, PRESERVE EM ),20,3
- FIELD JCIW,(RESERVED ),17,18
- FIELD EOJW,(JOB TERMINATION OPTION EOJW),59,3
- FIELD EOJW,(QUEUE FILE DISPOSITION ),56,3
- FIELD EOJW,(RESERVED ),53,21
- FIELD EOJW,(PROJ PRLG/EPLG TERM OPTION ),32,3
- FIELD EOJW,(PROJ PRLG/EPLG NEST LVL-1 ),29,6
- FIELD JOTW,(JOB ORIGIN TYPE JOTW),23,12
- FIELD OAEW,(OPER ASSIGNED EQUIP OAEW),11,12
- FIELD SNSW,(PUNCH MODE/OVERRIDE SNSW),59,3
- FIELD SNSW,(RESERVED ),56,21
- FIELD SNSW,(RESERVED-INSTALLATION ),35,12
- FIELD SNSW,(PP PAUSE FLAGS ),23,12
- FIELD SNSW,(SENSE SWITCHES ),11,6
- FIELD SNSW,(RESERVED ),5,6
- FIELD MS1W,(MESSAGE 1 AREA MS1W),59,60
- FIELD MS1W+1,( ),59,60
- FIELD MS1W+2,( ),59,60
- FIELD MS1W+3,( ),59,60
- FIELD MS1W+4,( ),59,60
- FIELD MS2W,(MESSAGE 2 AREA MS2W),59,60
- FIELD MS2W+1,( ),59,60
- FIELD MS2W+2,( ),59,60
- FIELD IN0W,(INSTALLATION WORD 0 IN0W),59,60
- FIELD IN1W,(INSTALLATION WORD 1 IN1W),59,60
- FIELD IN2W,(INSTALLATION WORD 2 IN2W),59,60
- FIELD IN3W,(INSTALLATION WORD 3 IN3W),59,60
- FIELD IN4W,(INSTALLATION WORD 4 IN4W),59,60
- FIELD IN5W,(INSTALLATION WORD 5 IN5W),59,60
- FIELD IN6W,(INSTALLATION WORD 6 IN6W),59,60
- FIELD IN7W,(INSTALLATION WORD 7 IN7W),59,60
- FIELD ACTW,(LIMIT FLAGS ACTW),59,6
- FIELD SRUW,(RESERVED SRUW),53,3
- FIELD SRUW,(OVERFLOW/CONTROL FLAGS ),50,9
- FIELD SRUW,(SRU ACCUMULATOR/OVERFLOW ),41,42
- FIELD CPTW,(CP ACCUM (NANOUNITS/4) CPTW),59,60
- FIELD IOAW,(IO ACCUMULATORS IOAW),59,60
- FIELD MP1W,(M13 = M1 * M3 MP1W),59,18
- FIELD MP1W,(M14 = M1 * M4 ),41,18
- FIELD ADAW,(RESERVED ),23,3
- FIELD ADAW,(ADDER ACCUMULATOR ADAW),20,21
- FIELD MP2W,(M1 * 1000 MP2W),59,18
- FIELD MP2W,(M12 = M1 * M2 ),41,18
- FIELD MP2W,(RESERVED ),23,24
- FIELD MP3W,(DISABLE SRU ACCUM, CPM MP3W),59,30
- FIELD MP3W,(IOM ),29,30
- FIELD STLW,(SRU ACCOUNT BLOCK LMT STLW),59,18
- FIELD STLW,(COMPUTED SRU JOB STEP LIMIT),41,42
- FIELD SRJW,(SRU MESSAGE TRIGGER SRJW),59,12
- FIELD SRJW,(SRU JOB STEP LIMIT ),47,18
- FIELD SRJW,(SRU ACCUM AT JOB STEP START),29,30
- FIELD CPJW,(RESERVED CPJW),59,12
- FIELD CPJW,(CP TIME JOB STEP LIMIT ),47,18
- FIELD CPJW,(CP ACCUM AT JOB STEP START ),29,30
- FIELD FPFW,(CHARGE/ACCOUNTING FLGS FPFW),59,6
- FIELD FPFW,(RESERVED ),53,6
- FIELD FPFW,(SRU VALIDATION LIMIT ),47,12
- FIELD FPFW,(FNT ORDINAL OF PROFILE FILE),35,12
- FIELD FPFW,(LEVEL-3 BLOCK TRACK ),23,12
- FIELD FPFW,(LEVEL-3 BLOCK SECTOR ),11,12
- FIELD FLCW,(MAX FL FOR JOB STEP FLCW),59,12
- FIELD FLCW,(LAST COMMAND FL (NFL) ),47,12
- FIELD FLCW,(MAXIMUM FL FOR ENTIRE JOB ),35,12
- FIELD FLCW,(RESERVED ),23,24
- FIELD ELCW,(JOB STEP MAX EM FL ELCW),59,12
- FIELD ELCW,(LAST CARD EM FL (NFL) ),47,12
- FIELD ELCW,(JOB MAX EXTENDED MEMORY FL ),35,12
- FIELD ELCW,(RESERVED ),23,24
- FIELD EACW,(EQUIP ASSIGNED COUNT EACW),59,12
- FIELD FLIW,(RESERVED FLIW),47,9
- FIELD FLIW,(SCHEDULER STATUS ),38,3
- FIELD FLIW,(NEGATIVE FL FOR ROLLIN ),35,12
- FIELD FLIW,(EXTENDED MEMORY FL REQUEST ),23,12
- FIELD FLIW,(CM FL REQUEST ),11,12
- FIELD TXSW,(TXOT SUBSYSTEM TXSW),59,6
- FIELD TXSW,(RESERVED ),53,6
- FIELD TTNW,(TERMINAL NUMBER TTNW),47,12
- FIELD TIAW,(TERMINAL INT ADDR TIAW),35,18
- FIELD TIOW,(OUTPUT POINTER TIOW),17,18
- FIELD PFCW,(RESERVED PFCW),59,24
- FIELD PFCW,(*PUCN* USER LIMITS ),35,12
- FIELD PFCW,(EST ORD OF FAMILY DEVICE ),23,12
- FIELD PFCW,(LIMIT FOR SIZE OF DAF ),11,3
- FIELD PFCW,(LIMIT FOR NUMBER OF PF ),8,3
- FIELD PFCW,(LIMIT CUMM SIZE IAPF ),5,3
- FIELD PFCW,(LIMIT FOR SIZE OF IAPF ),2,3
- FIELD UIDW,(USER NAME UIDW),59,42
- FIELD UIDW,(RESERVED, USER INDEX ),17,18
- FIELD EECW,(NO EXIT FLAG EECW),59,3
- FIELD EECW,(RESERVED ),56,6
- FIELD EECW,(RESERVED/TL EXTENDED ),50,3
- FIELD EECW,(REPRIEVE DATA ),47,12
- FIELD TINW,(TERMINAL INPUT POINTER TINW),35,18
- FIELD EECW,(REPRIEVE DATA ),17,18
- FIELD TFSW,(EJT ORDINAL OF JOB TFSW),59,12
- FIELD TFSW,(PRIMARY FILE FNT OFFSET ),47,12
- FIELD TFSW,(RESERVED ),35,6
- FIELD TERW,(ROLLOUT TIME TERW),29,9
- FIELD TERW,(EVENT DESCRIPTOR ),20,21
- FIELD CSPW,(RESERVED CSPW),59,6
- FIELD CSPW,(DIS EMSG/RESERVED/EPLG REQ ),53,3
- FIELD CSPW,(CHG REQ/PR USER/INHIB DECR ),50,3
- FIELD CSPW,(EOR FLAG/CS COUNT ),47,24
- FIELD CSPW,(NEXT COMMAND INDEX ),23,12
- FIELD CSPW,(LIMIT INDEX ),11,12
- FIELD CSSW,(INPUT/SKIP FLAGS CSSW),59,3
- FIELD CSSW,(EST ORDINAL ),56,9
- FIELD CSSW,(FIRST TRACK ),47,12
- FIELD CSSW,(CURRENT TRACK ),35,12
- FIELD CSSW,(CURRENT SECTOR ),23,12
- FIELD CSSW,(OVERLAP WORD COUNT ),11,12
- FIELD RFCW,(RESERVED RFCW),59,24
- FIELD RFCW,(COMMAND ADDRESS ),35,18
- FIELD RFCW,(DEMAND FILE RANDOM INDEX ),17,18
- FIELD ALMW,(ORIGINAL MAX SRU LIMIT ALMW),59,6
- FIELD ALMW,(MAX UNITS PLOTTED ),53,6
- FIELD ALMW,(MAX MAGNETIC TAPES ),47,3
- FIELD ALMW,(MAX REMOVABLE PACKS ),44,3
- FIELD ALMW,(MAX DEFER BATCH JOBS ),41,3
- FIELD ALMW,(RESERVED ),38,3
- FIELD ALMW,(MAX TIME LIMIT ),35,6
- FIELD ALMW,(MAX SRU LIMIT ),29,6
- FIELD ALMW,(MAX FIELD LENGTH ),23,6
- FIELD ALMW,(MAX EM FIELD LENGTH ),17,6
- FIELD ALMW,(MAX LINES PRINTED ),11,6
- FIELD ALMW,(MAX CARDS PUNCHED ),5,6
- CON -1 END OF LEFT COLUMN
- TFCP2 BSS 0
- FIELD ACLW,(REPRIEVE LIMIT ACLW),59,12
- FIELD ACLW,(DAYFILE MESSAGES COUNT ),47,12
- FIELD ACLW,(COMMANDS CNT ),35,12
- FIELD ACLW,(RESERVED ),23,6
- FIELD ACLW,(MS PRUS COUNT ),17,18
- FIELD AACW,(ACCOUNT ACCESS WORD AACW),59,60
- FIELD MPMW,(MAP MULTIPLIER * M1 MPMW),59,18
- FIELD ODAW,(OPTICAL ACCUMULATOR ODAW),41,21
- FIELD MPAW,(MAP ACCUMULATOR MPAW),20,21
- FIELD AUCW,(RESERVED AUCW),59,30
- FIELD AUCW,(AUC ACCUMULATOR ),29,30
- FIELD AUCW+1,(RESERVED ),59,60
- FIELD AUCW+2,(RESERVED ),59,60
- FIELD SEPW,(SPEC ENTRY POINT FLAG SEPW),59,3
- FIELD SEPW,(UTL=/LDR=/CLB= EN PT FLAGS ),56,3
- FIELD SEPW,(ARG=/DMP=/SDM= EN PT FLAGS ),53,3
- FIELD SEPW,(SSJ=/VAL=/SSM= EN PT FLAGS ),50,3
- FIELD SEPW,(DPA= /RESERVED ),47,9
- FIELD SEPW,(RESERVED / ENABLE SSJ ),38,3
- FIELD SEPW,(RESTART/SUPPRESS DMP= FLAGS),35,3
- FIELD SEPW,(DM* FILE/RESOURCE FLAGS ),32,3
- FIELD SEPW,(DMP= FL/100 (0 = ENTIRE FL)),29,12
- FIELD SEPW,(SSJ= PARAMETER BLK ADDRESS ),17,18
- FIELD SPCW,(SYSTEM PROC CALL WORD SPCW),59,60
- FIELD JCDW,(CCL - EFF JCDW),59,6
- FIELD JCDW,(CCL - R1G ),53,18
- FIELD JCDW,(CCL - DATA ),35,6
- FIELD JCDW,(PROCEDURE NESTING LEVEL ),29,6
- FIELD JCDW,(RESERVED ),23,24
- FIELD JCRW,(CCL - EF JCRW),59,6
- FIELD JCRW,(CCL - R3 ),53,18
- FIELD JCRW,(CCL - R2 ),35,18
- FIELD JCRW,(CCL - R1 ),17,18
- FIELD DBAW,(SEC MEM/K DIS FLAGS DBAW),59,3
- FIELD DBAW,(EM AND CM CMM MODE FLAGS ),56,3
- FIELD DBAW,(INPUT BUFFER ADDRESS ),53,18
- FIELD DBAW,(RIGHT SCREEN BFR ADD ),35,18
- FIELD DBAW,(LEFT SCREEN BFR ADD ),17,18
- FIELD LB1W,(MAP OPTIONS/LIB FLAG LB1W),59,6
- FIELD LB1W,(REDUCE/LOADER FLAGS ),53,6
- FIELD LB1W,(RESERVED FOR LOADER ),47,12
- FIELD LB1W,(INTERACTIVE DEBUG CONTROL ),35,12
- FIELD LB1W,(GLOBAL LIB INDICATORS ),23,24
- FIELD LB2W,(SECOND LIB/GLOBAL IND LB2W),59,60
- FIELD LB3W,(FIRST LIB/GLOBAL IND LB3W),59,60
- FIELD EOCW,(FNT ADDR LAST FIL EXEC EOCW),59,12
- FIELD PPDW,(EM FL FOR DMP= CALL PPDW),47,12
- FIELD PPDW,(FL FOR DMP= CALL ),35,12
- FIELD PPDW,(DUMP WORD COUNT ),23,6
- FIELD PPDW,(FWA OF DUMP ),17,18
- FIELD SSOW,(RESERVED ),59,48
- FIELD SSOW,(OUTSTANDING CONNECT COUNT ),11,12
- FIELD SSCW,(SCP INDEX SSCW),59,6
- FIELD SSCW,(RES/ROLLOUT/CONNECTION ),53,3
- FIELD SSCW,(WAIT RESPONSES ),50,3
- FIELD SSCW,(SCP INDEX ),47,6
- FIELD SSCW,(RES/ROLLOUT/CONNECTION ),41,3
- FIELD SSCW,(WAIT RESPONSES ),38,3
- FIELD SSCW,(SCP INDEX ),35,6
- FIELD SSCW,(RES/ROLLOUT/CONNECTION ),29,3
- FIELD SSCW,(WAIT RESPONSES ),26,3
- FIELD SSCW,(SCP INDEX ),23,6
- FIELD SSCW,(RES/ROLLOUT/CONNECTION ),17,3
- FIELD SSCW,(WAIT RESPONSES ),14,3
- FIELD SSCW,(SCP INDEX ),11,6
- FIELD SSCW,(RES/ROLLOUT/CONNECTION ),5,3
- FIELD SSCW,(WAIT RESPONSES ),2,3
- FIELD CPLW,(COMPUTED CP TIME LIMIT CPLW),59,60
- FIELD LOFW,(LIST OF FILES INDEX LOFW),59,12
- FIELD LOFW,(RESERVED ),47,6
- FIELD LOFW,(LIST OF FILES ADDRESS ),41,18
- FIELD LOFW,(RESERVED ),23,18
- FIELD AALW,(APPL ACCESS LEVEL AALW),5,6
- FIELD TSCW,(CM RESIDENCE TIME LMT TSCW),59,24
- FIELD TSCW,(RESERVED ),35,3
- FIELD TSCW,(INIT TIME SLICE OCCUR FLAG ),32,3
- FIELD TSCW,(CPU TIME SLICE LIMIT ),29,30
- FIELD JSCW,(ADMIN/DIAG/USER PW EXP JSCW),59,3
- FIELD JSCW,(PF PW EXP/LOWER JAL/FAL ),56,3
- FIELD JSCW,(WRITE DOWN/UNLABELED TAPES ),53,3
- FIELD JSCW,(RESERVED ),50,3
- FIELD JSCW,(JOB ACCESS LEVEL ),47,3
- FIELD JSCW,(USER ACCESS LEV VALIDATION ),44,9
- FIELD JSCW,(JOB ACCESS LEVEL LIMIT ),35,3
- FIELD JSCW,(USER ACCESS CATEGORY SET ),32,33
- FIELD PKNW,(DEFAULT PACK NAME PKNW),59,42
- FIELD PKNW,(DEFAULT PACK TYPE ),17,18
- FIELD CRCW,(RECALL CRITERION NO. CRCW),59,12
- FIELD CRCW,(RECALL CRITERION PARAMS ),47,36
- FIELD CRCW,(NEXT RECALL STACK ENTRY ),11,12
- FIELD RCCW,(RECALL CRITERION RCCW),59,60
- FIELD RCCW+1,(RECALL CRITERION ),59,60
- FIELD RCCW+2,(RECALL CRITERION ),59,60
- FIELD RCCW+3,(RECALL CRITERION ),59,60
- FIELD RCCW+4,(RECALL CRITERION ),59,60
- FIELD RCCW+5,(RECALL CRITERION ),59,60
- FIELD RCCW+6,(RECALL CRITERION ),59,60
- FIELD RCCW+7,(RECALL CRITERION ),59,60
- FIELD RCCW+8,(RECALL CRITERION ),59,60
- FIELD RCCW+9,(RECALL CRITERION ),59,60
- FIELD RCCW+10,(RECALL CRITERION ),59,60
- FIELD RCCW+11,(RECALL CRITERION ),59,60
- FIELD RCCW+12,(RECALL CRITERION ),59,60
- FIELD RCCW+13,(RECALL CRITERION ),59,60
- FIELD RECW,(RECALL REQUESTS IR-S RECW),59,60
- FIELD RECW+1,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+2,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+3,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+4,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+5,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+6,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+7,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+8,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+9,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+10,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+11,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+12,(RECALL REQUESTS IR-S ),59,60
- FIELD RECW+13,(RECALL REQUESTS IR-S ),59,60
- FIELD REPW,(RECALL REQUESTS MB-S REPW),59,60
- FIELD REPW+1,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+2,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+3,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+4,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+5,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+6,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+7,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+8,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+9,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+10,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+11,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+12,(RECALL REQUESTS MB-S ),59,60
- FIELD REPW+13,(RECALL REQUESTS MB-S ),59,60
- CON 0 END OF RIGHT COLUMN
- TFCP3 EQU *
- ERRNG 2*TFCP2-TFCP1-TFCP3 IF RIGHT LONGER THAN LEFT
- TFEJ SPACE 4,10
- ** TFEJ - EXECUTING JOB TABLE FIELD DESCRIPTORS.
- TFEJ VFD 24/0,18/TFEJ1,18/TFEJ2
- .OW SET JSNE-1
- .BI SET 0
- TFEJ1 BSS 0
- FIELD JSNE,(JSN JSNE),59,24
- FIELD JSNE,(FAMILY ORDINAL ),35,6
- FIELD JSNE,(USER INDEX ),29,18
- FIELD JSNE,(SCP/CS/JOB ADVANCE ),11,6
- FIELD JSNE,(JOB STATUS/INTERLOCK ),5,6
- FIELD SCHE,(STATUS DEPENDENT SCHE),59,24
- FIELD SCHE,(NORERUN/JOB TERMINATION ),35,3
- FIELD SCHE,(RESERVED ),32,3
- FIELD SCHE,(SCHEDULING DATA ),29,30
- CON -1 END OF LEFT COLUMN
- TFEJ2 BSS 0
- FIELD PRFE,(INSTALLATION RESERVED PRFE),59,12
- FIELD PRFE,(ERROR FLAGS ),47,12
- FIELD PRFE,(RESERVED/JOB ACCESS LVLS ),35,12
- FIELD PRFE,(STATUS DEPENDENT ),23,24
- FIELD SCLE,(SERVICE CLASS SCLE),59,6
- FIELD SCLE,(FORCED RI/FORCED RO/OT ),53,6
- FIELD SCLE,(ROUTING INFORMATION ),47,24
- FIELD SCLE,(EM FL ),23,12
- FIELD SCLE,(CM FL ),11,12
- CON 0 END OF RIGHT COLUMN
- TFEJ3 EQU *
- ERRNG 2*TFEJ2-TFEJ1-TFEJ3 IF RIGHT LONGER THAN LEFT
- TFES SPACE 4,10
- ** TFES - EQUIPMENT STATUS TABLE FIELD DESCRIPTORS.
- TFES VFD 24/0,18/TFES1,18/TFES2
- .OW SET EQDE-1
- .BI SET 0
- TFES1 BSS 0
- FIELD EQDE,(MS/DEVICE DEP/STATUS EQDE),59,12
- FIELD EQDE,(CHANNEL 1 DATA ),47,12
- FIELD EQDE,(CHANNEL 2 DATA ),35,12
- FIELD EQDE,(DEVICE TYPE ),23,12
- FIELD EQDE,(DEVICE DEPENDENT ),11,12
- CON -1 END OF LEFT COLUMN
- TFES2 BSS 0
- FIELD EQAE,(INSTALLATION RESERVED EQAE),59,12
- FIELD EQAE,(RESERVED FOR CDC ),47,12
- FIELD EQAE,(DEVICE DEPENDENT ),35,12
- FIELD EQAE,(RES/ACCESS LEVELS ),23,12
- FIELD EQAE,(ASSIGNED EJT ORDINAL ),11,12
- CON 0 END OF RIGHT COLUMN
- TFES3 EQU *
- ERRNG 2*TFES2-TFES1-TFES3 IF RIGHT LONGER THAN LEFT
- TFFN SPACE 4,10
- ** TFFN - SYSTEM FILE NAME TABLE FIELD DESCRIPTORS.
- TFFN VFD 24/0,18/TFFN1,18/TFFN2
- .OW SET FNTG-1
- .BI SET 0
- TFFN1 BSS 0
- FIELD FNTG,(FILE NAME FNTG),59,42
- FIELD FNTG,(RES/FAT INDEX ),17,6
- FIELD FNTG,(FILE TYPE ),11,6
- FIELD FNTG,(RESERVED/INTERLOCK ),5,6
- CON -1 END OF LEFT COLUMN
- TFFN2 BSS 0
- FIELD FSTG,(EST ORDINAL FSTG),59,12
- FIELD FSTG,(FIRST TRACK ),47,12
- FIELD FSTG,(USER COUNT FOR MOD/APP/RD ),35,24
- FIELD FSTG,(ATTACH MODE/UPDATE COUNT ),11,12
- CON 0 END OF RIGHT COLUMN
- TFFN3 EQU *
- ERRNG 2*TFFN2-TFFN1-TFFN3 IF RIGHT LONGER THAN LEFT
- TFMS SPACE 4
- ** TFMS - MASS STORAGE TABLE FIELD DESCRIPTORS.
- TFMS VFD 24/0,18/TFMS1,18/TFMS2
- .OW SET TDGL-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFMS1 BSS 0
- FIELD TDGL,(NUMBER OF TRACKS TDGL),59,12
- FIELD TDGL,(PF INTERLOCK / COUNTS ),47,12
- FIELD TDGL,(LENGTH OF TRT ),35,12
- FIELD TDGL,(FIRST AVAIL TRACK PTR ),23,12
- FIELD TDGL,(NUM AVAILABLE TRACKS ),11,12
- FIELD ACGL,(CTI/DS FILE/CT TRK OVF ACGL),59,3
- FIELD ACGL,(RESERVED ),56,3
- FIELD ACGL,(DAS MMF PARITY ACCESS MASK ),53,6
- FIELD ACGL,(OFFLINE DAS PARITY UNIT ),47,6
- FIELD ACGL,(DAS RESTORE CYL/100B ),41,6
- FIELD ACGL,(DIRECT ACCESS FILE CNT ),35,12
- FIELD ACGL,(FIRST TRACK IQFT ),23,12
- FIELD ACGL,(REDEFINITION STATUSES ),11,6
- FIELD ACGL,(ALL MF UNLOADED/ERROR IDLE ),5,3
- FIELD ACGL,(DAS ERROR/PARITY FLAGS ),2,3
- FIELD SDGL,(FLAG/MST LINK DEV ADDR SDGL),59,24
- FIELD SDGL,(MST/TRT UPDATE COUNT ),35,30
- FIELD SDGL,(MF INDEX/CPUMTR INTERLOCKS ),5,6
- FIELD ALGL,(FIRST TRACK IAPF ALGL),59,12
- FIELD ALGL,(LABEL TRACK ),47,12
- FIELD ALGL,(FIRST TRACK PERMITS ),35,12
- FIELD ALGL,(NUMBER CATALOG TRACKS ),23,12
- FIELD ALGL,(FIRST TRACK DAT ),11,12
- FIELD PFGL,(FAMILY OR PACK NAME PFGL),59,42
- FIELD PFGL,(DEVICE NUMBER ),17,6
- FIELD PFGL,(DEVICE AL LIMIT LOWER/UPPER),11,6
- FIELD PFGL,(REL UNIT MULTIUNIT DEV ),5,3
- FIELD PFGL,(NUM UNIT MULTIUNIT DEV ),2,3
- FIELD PUGL,(USER NUM PRIVATE PACK PUGL),59,42
- FIELD PUGL,(CONT LBL TRK/DEV RES MASKS ),17,18
- FIELD MDGL,(FLAGS AND DAT INDEX MDGL),59,12
- FIELD MDGL,(HT FLAG / S.U. SECTOR LIMIT),47,12
- FIELD MDGL,(DRIVER NAME ),35,12
- FIELD MDGL,(RESERVED ),23,6
- FIELD MDGL,(DRIVER INDEX ),17,6
- FIELD MDGL,(SECTOR LIMIT ),11,12
- FIELD NVGL,(TRACK TO BE FLAWED NVGL),59,12
- FIELD NVGL,(BAT EM ADDRESS ),47,24
- FIELD NVGL,(BAT TRACK CHAIN - LINK DEV.),23,12
- FIELD NVGL,(RESERVED UNIT FLAGS ),11,12
- FIELD ISGL,(GLOBAL INSTAL AREA ISGL),59,60
- FIELD I2GL,( I2GL),59,60
- FIELD DALL,(RES/DEVICE STATE DALL),59,3
- FIELD DALL,(SUSPECT/RESTR. ACTIVITY ),56,3
- FIELD DALL,(OUTSTANDING REQUESTS ),53,6
- FIELD DALL,(UNIT INTERLOCKS ),47,12
- FIELD DALL,(CYLINDER NUMBER ),35,12
- FIELD DALL,(PRIORITY PP NUMBER ),23,12
- FIELD DALL,(CHANNEL 2 ),11,6
- FIELD DALL,(CHANNEL 1 ),5,6
- FIELD DILL,(ALLOCATION FLAGS DILL),59,12
- FIELD DILL,(CH 2 ACCESS 7154 FLAG ),47,6
- FIELD DILL,(CH 1 ACCESS 7154 FLAG ),41,6
- FIELD DILL,(*PUT* ORD OF FIRST UNIT ),35,12
- FIELD DILL,(DEVICE FLAGS ),23,3
- FIELD DILL,(MEMORY TYPE - 3 BIT VALUE ),20,3
- FIELD DILL,(CPU TYPE - 3 BIT VALUE ),17,3
- FIELD DILL,(PP PATH TYPE - 3 BIT VALUE ),14,3
- FIELD DILL,(RESERVED ),11,6
- FIELD DILL,(ALGORITHM INDEX ),5,6
- CON -1 END OF LEFT COLUMN
- TFMS2 BSS 0
- FIELD DULL,(2ND LABEL/TRT SECTOR DULL),59,12
- FIELD DULL,(PF INTERLOCK / COUNTS ),47,12
- FIELD DULL,(RESERVED ),35,6
- FIELD DULL,(MACHINE INDEX - 1 ),29,6
- FIELD DULL,(CKPT FLG/SYSTEM TABLE TRACK),23,12
- FIELD DULL,(FAMILY IDLE STAT/ACT COUNT ),11,12
- FIELD STLL,(LOCAL STATUS FLAGS STLL),59,18
- FIELD STLL,(ERROR STATUS ),41,6
- FIELD STLL,(MACHINE ID ),35,12
- FIELD STLL,(CURRENT USER COUNT DAF ),23,12
- FIELD STLL,(NEXT EST ORDINAL IN CHAIN ),11,9
- FIELD STLL,(LOCAL STATUS ),2,3
- FIELD DDLL,(REDEF IN PROG/NULL EQ DDLL),59,3
- FIELD DDLL,(EQUIPMENT NUMBER ),56,3
- FIELD DDLL,(ORIGINAL NO. OF UNITS - 1 ),53,3
- FIELD DDLL,(CURRENT NO. OF UNITS - 1 ),50,3
- FIELD DDLL,(UNIT LIST ),47,48
- FIELD ISLL,(LOCAL INSTAL AREA ISLL),59,60
- FIELD SCLL,(SWEEP CYLINDER SCLL),59,12
- FIELD SCLL,(SWEEP TIME STAMP ),47,12
- FIELD SCLL,(STARTING CYLINDER SCYL),35,12
- FIELD SCLL,(RESERVED ),23,06
- FIELD TRLL,(FWA OF TRT TRLL),17,18
- FIELD THLL,(VERIF FAILURE THRESHOLD ),59,12
- FIELD THLL,(RESTRICT ACTIVITY THRESHOLD),47,12
- FIELD THLL,(LOW SPACE THRESHOLD ),35,12
- FIELD THLL,(RECOVERED ERROR THRESHOLD ),23,12
- FIELD THLL,(UNRECOVERED ERROR THRESHOLD),11,12
- FIELD CTLL,(VERIFIFICATION FAILURE CNT ),59,12
- FIELD CTLL,(RESERVED ),47,24
- FIELD CTLL,(RECOVERED ERROR COUNT ),23,12
- FIELD CTLL,(UNRECOVERED ERROR COUNT ),11,12
- FIELD EDLL,(RESERVED ),59,24
- FIELD EDLL,(ERROR DATE/TIME ),35,36
- FIELD MCLL,(RESERVED FOR CDC MCLL),59,24
- FIELD MCLL,(MRT WRITE FLAG ),35,12
- FIELD MCLL,(PP INTERLOCK BIT MASK ),23,24
- FIELD BDLL,(DAS/9853 FLAGS BDLL),59,12
- FIELD BDLL,(BST ADDRESS ),47,24
- FIELD BDLL,(DAS MMF FLAGS ),23,6
- FIELD BDLL,(READ BUFFER COUNT ),17,6
- FIELD BDLL,(READ-AHEAD TRIGGER ),11,6
- FIELD BDLL,(READ BUFFER THRESHOLD ),5,6
- FIELD 26,(RESERVED ),59,60
- FIELD 27,(RESERVED ),59,60
- CON 0 END OF RIGHT COLUMN
- TFMS3 EQU *
- ERRNG 2*TFMS2-TFMS1-TFMS3 IF RIGHT LONGER THAN LEFT
- TFJC SPACE 4
- ** TFJC - JOB CONTROL AREA FIELD DESCRIPTORS.
- TFJC VFD 24/0,18/TFJC1,18/TFJC2
- .OW SET INQT-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFJC1 BSS 0
- FIELD INQT,(RESERVED INQT),59,12
- FIELD INQT,(LOWER BOUND PRIORITY ),47,12
- FIELD INQT,(UPPER BOUND PRIORITY ),35,12
- FIELD INQT,(WEIGHTING FACTOR ),23,12
- FIELD INQT,(RESERVED ),11,12
- FIELD EXQT,(INIT LWR BND PRIORITY EXQT),59,12
- FIELD EXQT,(LOWER BOUND PRIORITY ),47,12
- FIELD EXQT,(UPPER BOUND PRIORITY ),35,12
- FIELD EXQT,(WEIGHTING FACTOR ),23,12
- FIELD EXQT,(INIT EXEC JOB PRIORITY ),11,12
- FIELD OTQT,(RESERVED OTQT),59,12
- FIELD OTQT,(LOWER BOUND PRIORITY ),47,12
- FIELD OTQT,(UPPER BOUND PRIORITY ),35,12
- FIELD OTQT,(WEIGHTING FACTOR ),23,12
- FIELD OTQT,(RESERVED ),11,12
- FIELD SVJT,(RESERVED SVJT),59,12
- FIELD SVJT,(CP TIME SLICE - SECS ),47,12
- FIELD SVJT,(CM TIME SLICE - SECS/10B ),35,12
- FIELD SVJT,(MAX NUMBER JOBS FOR CLASS ),23,12
- FIELD SVJT,(TIMEOUT DELAY FOR SUSP JOBS),11,12
- FIELD MCMT,(CP SLICE PRIORITY MCMT),59,12
- FIELD MCMT,(BASE PRTY FOR INT JOBS ),47,12
- FIELD MCMT,(MAX CM FL FOR ANY JOB ),35,12
- FIELD MCMT,(MAX CM FL FOR ALL JOBS ),23,24
- FIELD MECT,(RESERVED MECT),59,24
- FIELD MECT,(MAX XM FL FOR ANY JOB ),35,12
- FIELD MECT,(RESERVED ),23,12
- FIELD MECT,(MAX XM FL FOR ALL JOBS ),11,12
- CON -1 END OF LEFT COLUMN
- TFJC2 BSS 0
- FIELD PFCT,(LIMIT FOR SIZE OF DAF PFCT),59,3
- FIELD PFCT,(LIMIT FOR NUMBER OF PF ),56,3
- FIELD PFCT,(LIMIT CUMM SIZE IAPF ),53,3
- FIELD PFCT,(LIMIT FOR SIZE OF IAPF ),50,3
- FIELD PFCT,(RESERVED FOR CDC ),47,36
- FIELD PFCT,(SERVICE CLASS ON DETACH ),11,12
- FIELD CSJT,(CPU PRIORITY CSJT),59,12
- FIELD CSJT,(SYSTEM I/O CPU THRESHOLD ),47,12
- FIELD CSJT,(CPU SLICE EXTENSION ),35,12
- FIELD CSJT,(RECALL CPU SLICE ),23,12
- FIELD CSJT,(UNEXTENDED CPU SLICE ),11,12
- FIELD CSAT,(RESERVED CSAT),59,6
- FIELD CSAT,(CONVERTED SLICE EXTENSION ),53,18
- FIELD CSAT,(CONVERTED RECALL SLICE ),35,18
- FIELD CSAT,(CONVERTED US+SE-RS ),17,18
- FIELD CSBT,(RESERVED CSBT),59,42
- FIELD CSBT,(CONVERTED I/O THRESHOLD ),17,18
- FIELD JCTT,(CURRENT JOB COUNT JCTT),59,12
- FIELD JCTT,(JOBS WAITING ),47,12
- FIELD JCTT,(RESERVED ),35,36
- FIELD CTMT,(TOTAL CPU ACCUMULATOR CTMT),59,60
- CON 0 END OF RIGHT COLUMN
- TFJC3 EQU *
- ERRNG 2*TFJC2-TFJC1-TFJC3 IF RIGHT LONGER THAN LEFT
- TFEB SPACE 4
- ** TFEB - FIELD DESCRIPTORS FOR THE EI COMMUNICATIONS
- * BLOCK.
- TFEB VFD 24/0,18/TFEB1,18/TFEB2
- .OW SET /VE/D7TY-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFEB1 BSS 0
- FIELD /VE/D7TY,(RESERVED D7TY),59,6
- FIELD /VE/D7TY,(DATE POINTER ),53,18
- FIELD /VE/D7TY,(TIME POINTER ),35,18
- FIELD /VE/D7TY,(170 OS TYPE ),17,6
- FIELD /VE/D7TY,(170 INTERFACE VERSION ),11,6
- FIELD /VE/D7TY,(170 INTERFACE LEVEL ),5,6
- FIELD /VE/D7JP,(JOB UNIQUE ID D7JP),59,36
- FIELD /VE/D7JP,(TRAP 180 VALIDATION ),23,9
- FIELD /VE/D7JP,(170 CPU PRIORITY ),14,15
- FIELD /VE/D7JP+1,(JOB UNIQUE ID ),59,36
- FIELD /VE/D7JP+1,(TRAP 180 VALIDATION ),23,9
- FIELD /VE/D7JP+1,(170 CPU PRIORITY ),14,15
- FIELD /VE/D7ST,(OPERATING MODES D7ST),59,3
- FIELD /VE/D7ST,(OPERATOR FLAGS ),56,3
- FIELD /VE/D7ST,(CHECKPOINT COMPLETE ),53,3
- FIELD /VE/D7ST,(CHECKPOINT IN PROGRESS ),50,3
- FIELD /VE/D7ST,(RESERVED ),47,9
- FIELD /VE/D7ST,(DROP NOS/VE ),38,3
- FIELD /VE/D7ST,(FWA MLST/MLI STATUS TABLE ),35,18
- FIELD /VE/D7ST,(LENGTH OF MLST ),17,6
- FIELD /VE/D7ST,(RESERVED ),11,12
- FIELD /VE/D7RS,(RESERVED D7RS),59,60
- FIELD /VE/D7RS+1,(RESERVED ),59,60
- FIELD /VE/D7RS+2,(RESERVED ),59,27
- FIELD /VE/D7RS+2,(FWA SCD PARAMETER TABLE ),32,33
- FIELD /VE/D7CM,(RESERVED D7CM),59,12
- FIELD /VE/D7CM,(MINCM/1000B ),47,24
- FIELD /VE/D7CM,(NVE STATIC CM SIZE/1000B ),23,24
- FIELD /VE/D7CM+1,(RESERVED ),59,12
- FIELD /VE/D7CM+1,(NOS/VE CM FWA/1000B ),47,24
- FIELD /VE/D7CM+1,(NOS/VE CM LWA+1/1000B ),23,24
- FIELD /VE/D7SV,(LAST 180 CP TIME CPU0 D7SV),59,60
- FIELD /VE/D7SV+1,(LAST 180 CP TIME CPU1 ),59,60
- FIELD /VE/D7SV+2,(SYSTEM VERSION NAME POINTER),59,60
- FIELD /VE/D7SV+3,(SYSTEM TITLE LINE POINTER ),59,60
- FIELD /VE/D7SV+4,(RESERVED ),59,60
- FIELD /VE/D7SV+5,(RESERVED ),59,60
- FIELD /VE/D8TY,(RESERVED D8TY),59,33
- FIELD /VE/D8TY,(EI VERSION ),26,9
- FIELD /VE/D8TY,(180 OS TYPE ),17,6
- FIELD /VE/D8TY,(180 INTERFACE VERSION ),11,6
- FIELD /VE/D8TY,(180 INTERFACE LEVEL ),5,6
- FIELD /VE/D8TM,(ACCUM 180 CPU0 TIME D8TM),59,60
- FIELD /VE/D8TM+1,(ACCUM 180 CPU1 TIME ),59,60
- FIELD /VE/D8JP,(RESERVED D8JP),59,36
- FIELD /VE/D8JP,(CPU0 ACTIVE OS ),23,9
- FIELD /VE/D8JP,(NOS/VE CPU0 PRIORITY ),14,15
- FIELD /VE/D8JP+1,(RESERVED ),59,36
- FIELD /VE/D8JP+1,(CPU1 ACTIVE OS ),23,9
- FIELD /VE/D8JP+1,(NOS/VE CPU1 PRIORITY ),14,15
- CON -1 END OF LEFT COLUMN
- TFEB2 BSS 0
- FIELD /VE/D8ST,(OPERATING MODES D8ST),59,3
- FIELD /VE/D8ST,(OPERATOR FLAG ),56,3
- FIELD /VE/D8ST,(CHECKPOINT COMPLETE ),53,3
- FIELD /VE/D8ST,(CHECKPOINT IN PROGRESS ),50,3
- FIELD /VE/D8ST,(RESERVED ),47,18
- FIELD /VE/D8ST,(VPB LOGICAL PP NUMBER ),29,6
- FIELD /VE/D8ST,(SVP PORT NUMBER ),23,6
- FIELD /VE/D8ST,(SCD LOGICAL PP NUMBER ),17,6
- FIELD /VE/D8ST,(RESERVED ),11,12
- FIELD /VE/D8DS,(NVE DEADSTART STATUS D8DS),59,30
- FIELD /VE/D8DS,(NVE DEADSTART INTRLK ),29,30
- FIELD /VE/D8DS+1,(EI STACK FRAME ADDRESS ),59,30
- FIELD /VE/D8DS+1,(C170 EXCHANGE ADDRESS ),29,30
- FIELD /VE/D8DS+2,(ALT STACK FRAME ADDRESS ),59,30
- FIELD /VE/D8DS+2,(ALT EXCHANGE ADDRESS ),29,30
- FIELD /VE/D8SV,(ADDRESS OF SPAA D8SV),59,60
- FIELD /VE/D8SV+1,(SSR POINTER WORD ),59,60
- FIELD /VE/D8SV+2,(RESERVED ),59,60
- FIELD /VE/D8SV+3,(RESERVED ),59,60
- FIELD /VE/D8SV+4,(SCD WORD 1 ),59,60
- FIELD /VE/D8SV+5,(SCD WORD 2 ),59,60
- FIELD /VE/DSCM,(MAINFRAME ERROR INFO DSCM),59,60
- FIELD /VE/DSCM+1,(ZERO ),59,60
- FIELD /VE/DSCM+2,(CTI DIRECTORY POINTER ),59,60
- FIELD /VE/DSCM+3,(DFT/OS BUFFER POINTER ),59,60
- FIELD /VE/DSCM+4,(RESERVED ),59,60
- FIELD /VE/DFCM,(RESERVED DFCM),59,12
- FIELD /VE/DFCM,(MESSAGE LENGTH ),47,18
- FIELD /VE/DFCM,(RESERVED ),29,12
- FIELD /VE/DFCM,(MESSAGE SEQUENCE NUMBER ),17,18
- FIELD /VE/DFCM+1,(DFT MESSAGE WORD 1 ),59,60
- FIELD /VE/DFCM+2,(DFT MESSAGE WORD 2 ),59,60
- FIELD /VE/DFCM+3,(DFT MESSAGE WORD 3 ),59,60
- FIELD /VE/DFCM+4,(RESERVED ),59,60
- FIELD /VE/DFCM+5,(RESERVED ),59,60
- FIELD /VE/DFCM+6,(RESERVED ),59,60
- FIELD /VE/DFCM+7,(RESERVED ),59,60
- FIELD /VE/DFCM+8,(RESERVED ),59,60
- FIELD /VE/DFCM+9,(RESERVED ),59,60
- FIELD /VE/DFCM+10,(RESERVED ),59,60
- CON 0 END OF RIGHT COLUMN
- TFEB3 EQU *
- ERRNG 2*TFEB2-TFEB1-TFEB3 RIGHT COLUMN LONGER THAN LEFT
- TFQF SPACE 4,10
- ** TFQF - QUEUED FILE TABLE FIELD DESCRIPTORS.
- TFQF VFD 24/0,18/TFQF1,18/TFQF2
- .OW SET JSNQ-1
- .BI SET 0
- TFQF1 BSS 0
- FIELD JSNQ,(JSN JSNQ),59,24
- FIELD JSNQ,(FAMILY ORDINAL ),35,6
- FIELD JSNQ,(USER INDEX ),29,18
- FIELD JSNQ,(DISPOSITION TYPE ),11,6
- FIELD JSNQ,(STATUS ),5,6
- FIELD ENTQ,(EST ORDINAL ENTQ),59,12
- FIELD ENTQ,(FIRST TRACK ),47,12
- FIELD ENTQ,(RESERVED ),35,9
- FIELD ENTQ,(FILE SIZE INDEX ),26,3
- FIELD ENTQ,(ENTRY TIME ),23,24
- CON -1 END OF LEFT COLUMN
- TFQF2 BSS 0
- FIELD INSQ,(INSTALLATION RESERVED INSQ),59,12
- FIELD INSQ,(DESTINATION LID ),47,18
- FIELD INSQ,(RESERVED ),29,12
- FIELD INSQ,(FILE ACCESS LVL/LIMIT/RES ),17,12
- FIELD INSQ,(REPEAT COUNT ),5,6
- FIELD SCLQ,(SERVICE CLASS SCLQ),59,6
- FIELD SCLQ,(FILE ORIGIN TYPE ),53,6
- FIELD SCLQ,(LOCAL PRINTER ID/FO-UI ),47,24
- FIELD SCLQ,(RES/FILE CHARACTERISTICS ),23,12
- FIELD SCLQ,(FORMS CODE ),11,12
- CON 0 END OF RIGHT COLUMN
- TFQF3 EQU *
- ERRNG 2*TFQF2-TFQF1-TFQF3 IF RIGHT LONGER THAN LEFT
- TFSD SPACE 4,10
- ** TFSD - STATISTICAL DATA AREA FIELD DESCRIPTIONS.
- TFSD VFD 24/0,18/TFSD1,18/TFSD2
- .OW SET JS0S-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFSD1 BSS 0
- FIELD JS0S,(EJT SCANS JS0S),59,24
- FIELD JS0S,(SCHEDULABLE JOBS ),35,36
- FIELD JS1S,(RESERVED FOR CDC JS1S),59,12
- FIELD JS1S,(JOBS PREEMPTED ),47,24
- FIELD JS1S,(JOBS SCHEDULED ),23,24
- FIELD JS2S,(RESERVED FOR CDC JS2S),59,12
- FIELD JS2S,(JOBS SCHED NO CONSTRAINTS ),47,24
- FIELD JS2S,(EJT SCANS INSUFFICIENT CM ),23,24
- FIELD JS3S,(RESERVED FOR CDC JS3S),59,12
- FIELD JS3S,(EJT SCANS INSUFFICIENT EM ),47,24
- FIELD JS3S,(EJT SCANS NO CP ),23,24
- FIELD PF0S,(RESERVED FOR CDC PF0S),59,12
- FIELD PF0S,(ROLLOUTS FOR RES LIMITS ),47,24
- FIELD PF0S,(TIME SLICES ),23,24
- FIELD MTRS,(RESERVED FOR CDC MTRS),59,12
- FIELD MTRS,(MTR CLOCK UPDATES MISSED ),47,12
- FIELD MTRS,(MTR WORST CASE MXN TIME ),35,12
- FIELD MTRS,(WORST CASE MTR CYCLE TIME ),23,12
- FIELD MTRS,(CURRENT MTR CYCLE TIME ),11,12
- FIELD CMMS,(CM STORAGE MOVES CMMS),59,60
- FIELD EMMS,(EM STORAGE MOVES EMMS),59,60
- FIELD DMMS,(DIRECT MOVES DMMS),59,60
- CON -1 END OF LEFT COLUMN
- TFSD2 BSS 0
- FIELD CBNS,(COM BUFFER NOT AVAIL CBNS),59,60
- FIELD PRXS,(PP PRIORITY EXCHANGES PRXS),59,60
- FIELD ROTS,(MASS STORAGE ROLLOUTS ROTS),59,60
- FIELD POTS,(PSEUDO-ROLLOUTS POTS),59,60
- FIELD PCTS,(PCP ROLLOUTS PCTS),59,60
- FIELD SOTS,(ROLLOUTS TO SEC DEV SOTS),59,60
- FIELD NROS,(SECTORS ROLLED OUT NROS),59,60
- FIELD NSRS,(SEC ROLLED TO SEC DEV NSRS),59,60
- FIELD PCNS,(NO PCP AVAILABLE PCNS),59,60
- FIELD DM1S,(CURRENT BRT ENTRIES DM1S),59,12
- FIELD DM1S,(WORST CASE BRT ENTRIES ),47,12
- FIELD DM1S,(BRT ENTRIES REJECTED ),35,12
- FIELD DM1S,(TOTAL BRT ENTRIES ),23,24
- FIELD DM2S,(CURRENT MTE CYCLE TIME DM2S),59,12
- FIELD DM2S,(WORST CASE MTE CYCLE TIME ),47,12
- FIELD DM2S,(BAT INTERLOCK UNAVAIL. ),35,12
- FIELD DM2S,(TOTAL BAT REQUESTS ),23,24
- CON 0 END OF RIGHT COLUMN
- TFSD3 EQU *
- ERRNG 2*TFSD2-TFSD1-TFSD3 IF RIGHT LONGER THAN LEFT
- TSCT SPACE 4,10
- ** TSCT - SERVICE CLASS CONTROL TABLE.
- TSCT VFD 24/0,18/TSCT1,18/TSCT2
- .OW SET SYOT-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TSCT1 BSS 0
- FIELD SYOT,(RESERVED FOR INSTALLATIONS ),59,12
- FIELD SYOT,(RESERVED FOR CDC ),47,6
- FIELD SYOT,(ACCESS LEVEL LOWER LIMIT ),41,3
- FIELD SYOT,(ACCESS LEVEL UPPER LIMIT ),38,3
- FIELD SYOT,(VALIDATION MASK FOR SYOT ),35,36
- FIELD BCOT,(RESERVED FOR INSTALLATIONS ),59,12
- FIELD BCOT,(RESERVED FOR CDC ),47,6
- FIELD BCOT,(ACCESS LEVEL LOWER LIMIT ),41,3
- FIELD BCOT,(ACCESS LEVEL UPPER LIMIT ),38,3
- FIELD BCOT,(VALIDATION MASK FOR BCOT ),35,36
- FIELD EIOT,(RESERVED FOR INSTALLATIONS ),59,12
- FIELD RBOT,(RESERVED FOR CDC ),47,6
- FIELD RBOT,(ACCESS LEVEL LOWER LIMIT ),41,3
- FIELD RBOT,(ACCESS LEVEL UPPER LIMIT ),38,3
- FIELD RBOT,(VALIDATION MASK FOR RBOT ),35,36
- FIELD IAOT,(RESERVED FOR INSTALLATIONS ),59,12
- FIELD IAOT,(RESERVED FOR CDC ),47,6
- FIELD IAOT,(ACCESS LEVEL LOWER LIMIT ),41,3
- FIELD IAOT,(ACCESS LEVEL UPPER LIMIT ),38,3
- FIELD IAOT,(VALIDATION MASK FOR IAOT ),35,36
- FIELD MXOT-2,(RESERVED FOR FUTURE OT ),59,60
- FIELD MXOT-1,(RESERVED FOR FUTURE OT ),59,60
- CON -1 END OF LEFT COLUMN
- TSCT2 BSS 0
- FIELD PLSC,(P0 SERVICE CLASS ),59,12
- FIELD PLSC,(P1 SERVICE CLASS ),47,12
- FIELD PLSC,(P2 SERVICE CLASS ),35,12
- FIELD PLSC,(P3 SERVICE CLASS ),23,12
- FIELD PLSC,(P4 SERVICE CLASS ),11,12
- FIELD PLSC+1,(P5 SERVICE CLASS ),59,12
- FIELD PLSC+1,(P6 SERVICE CLASS ),47,12
- FIELD PLSC+1,(P7 SERVICE CLASS ),35,12
- FIELD PLSC+1,(RESERVED FOR CDC ),23,24
- FIELD PLSC+2,(RESERVED FOR INSTALLATION ),59,60
- FIELD PLSC+3,(RESERVED FOR CDC ),59,60
- FIELD PLSC+4,(RESERVED FOR CDC ),59,60
- FIELD PLSC+5,(RESERVED FOR CDC ),59,60
- CON 0 END OF RIGHT COLUMN
- TSCT3 EQU *
- ERRNG 2*TSCT2-TSCT1-TSCT3 IF RIGHT LONGER THAN LEFT
- TCPR SPACE 4,10
- ** TCPR - CPU REQUEST QUEUE FIELD DESCRIPTORS.
- TCPR VFD 24/0,18/TCPR1,18/TCPR2
- .OW SET CWQW-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TCPR1 BSS 0
- FIELD CWQW,(CPU PRIORITY/FLAGS CWQW),59,12
- FIELD CWQW,(SLICE/RECALL FLAGS ),47,3
- FIELD CWQW,(SERVICE CYCLE NUMBER ),44,9
- FIELD CWQW,(CPU SCHED SERVICE INDEX ),35,9
- FIELD CWQW,(CPU FLAGS/RES/EXPACK TYPE ),26,9
- FIELD CWQW,(*WQ* LINKAGE ),17,18
- CON -1 END OF LEFT COLUMN
- TCPR2 BSS 0
- FIELD CSAW,(ZERO CSAW),59,6
- FIELD CSAW,(CPU TIME THRESHOLD ),53,18
- FIELD CSAW,(RECALL SLICE ACCUMULATOR ),35,18
- FIELD CSAW,(CPU SLICE ACCUMULATOR ),17,18
- CON 0 END OF RIGHT COLUMN
- TCPR3 EQU *
- ERRNG 2*TCPR2-TCPR1-TCPR3 IF RIGHT LONGER THAN LEFT
- TPPR SPACE 4,10
- ** TPPR - PP REQUEST QUEUE FIELD DESCRIPTORS.
- TPPR VFD 24/0,18/TPPR1,18/TPPR2
- TPPR1 BSS 0
- FIELD TPPRA,(RESERVED RCCW),59,48,I
- FIELD TPPRA,(LINK TO NEXT ENTRY ),11,12,I
- CON -1 END OF LEFT COLUMN
- TPPR2 BSS 0
- FIELD TPPRB,(PP INPUT REGISTER RECW),59,60,I
- FIELD TPPRC,(PP MESSAGE BUFFER REPW),59,60,I
- CON 0 END OF RIGHT COLUMN
- TPPR3 EQU *
- ERRNG 2*TPPR2-TPPR1-TPPR3 IF RIGHT LONGER THAN LEFT
- TPPRA CON 0 ACTUAL RCCW ADDRESS
- TPPRB CON 0 ACTUAL RECW ADDRESS
- TPPRC CON 0 ACTUAL REPW ADDRESS
- TCRL SPACE 4,10
- ** TCRL - CPU RECALL QUEUE FIELD DESCRIPTORS.
- TCRL VFD 24/0,18/TCRL1,18/TCRL2
- .OW SET CRCW-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TCRL1 BSS 0
- FIELD CRCW,(RECALL CRITERION NO. CRCW),59,12
- FIELD CRCW,(RECALL CRITERION PARMS. ),47,36
- FIELD CRCW,(LINK TO NEXT ENTRY ),11,12
- CON -1 END OF LEFT COLUMN
- TCRL2 BSS 0
- CON 0 END OF RIGHT COLUMN
- TCRL3 EQU *
- ERRNG 2*TCRL2-TCRL1-TCRL3 IF RIGHT LONGER THAN LEFT
- TPRL SPACE 4,10
- ** TPRL - PP RECALL QUEUE FIELD DESCRIPTORS
- TPRL VFD 24/0,18/TPRL1,18/TPRL2
- TPRL1 BSS 0
- FIELD TPRLA,(RECALL CRITERION NO. RCCW),59,12,I
- FIELD TPRLA,(RECALL CRITERION PARMS. ),47,36,I
- FIELD TPRLA,(LINK TO NEXT ENTRY ),11,12,I
- CON -1 END OF LEFT COLUMN
- TPRL2 BSS 0
- FIELD TPRLB,(PP INPUT REGISTER RECW),59,60,I
- FIELD TPRLC,(PP MESSAGE BUFFER REPW),59,60,I
- CON 0 END OF RIGHT COLUMN
- TPRL3 EQU *
- ERRNG 2*TPRL2-TPRL1-TPRL3 IF RIGHT LONGER THAN LEFT
- TPRLA CON 0 ACTUAL RCCW ADDRESS
- TPRLB CON 0 ACTUAL RECW ADDRESS
- TPRLC CON 0 ACTUAL REPW ADDRESS
- TFTT SPACE 4
- ** TFTT - IAF TERMINAL TABLE FIELD DESCRIPTORS.
- TFTT VFD 24/0,18/TFTT1,18/TFTT2
- .OW SET /REM/VUIT-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFTT1 BSS 0
- FIELD /REM/VUIT,(USER NAME VUIT),59,42
- FIELD /REM/VUIT,(FAMILY ORDINAL ),17,6
- FIELD /REM/VUIT,(EJT ORDINAL ),11,12
- FIELD /REM/VFNT,(PRIMARY FILE NAME VFNT),59,42
- FIELD /REM/VFNT,(MODE ),17,6
- FIELD /REM/VFNT,(RESERVED ),11,12
- FIELD /REM/VFST,(JOB SEQUENCE NUMBER VFST),59,24
- FIELD /REM/VFST,(TOTAL I/O OVERFLOW COUNT ),35,12
- FIELD /REM/VFST,(SMF STATE CODE ),23,6
- FIELD /REM/VFST,(SM TIMEOUT/NEXT OP INDEX ),17,6
- FIELD /REM/VFST,(EXTRA POT POINTER ),11,12
- FIELD /REM/VROT,(NEXT OPER INDICATOR VROT),59,6
- FIELD /REM/VROT,(PREPROCESSOR INDEX ),53,6
- FIELD /REM/VROT,(CONT STMNT POT POINTER ),47,12
- FIELD /REM/VROT,(*1TO* STATUS ),35,12
- FIELD /REM/VROT,(SUB-STATUS ),23,12
- FIELD /REM/VROT,(STATUS ),11,12
- FIELD /REM/VDPT,(FIRST POT VDPT),59,12
- FIELD /REM/VDPT,(CURRENT POT ),47,12
- FIELD /REM/VDPT,(POT POSITION ),35,12
- FIELD /REM/VDPT,(CONTROL FLAGS ),23,12
- FIELD /REM/VDPT,(ROUTINE ADDRESS ),11,12
- CON -1 END OF LEFT COLUMN
- TFTT2 BSS 0
- FIELD /REM/VCHT,(REENTRY ADDRESS VCHT),59,12
- FIELD /REM/VCHT,(12 BIT (X7) ),47,12
- FIELD /REM/VCHT,((B3) ),35,12
- FIELD /REM/VCHT,(INPUT CHARACTER COUNT ),23,12
- FIELD /REM/VCHT,(OUTPUT CHARACTER COUNT ),11,12
- FIELD /REM/VDCT,(DRIVER FLAGS VDCT),59,12
- FIELD /REM/VDCT,(CONTROL INFORMATION ),47,12
- FIELD /REM/VDCT,(AUTO ),35,12
- FIELD /REM/VDCT,(ACCESS LEVEL ),23,12
- FIELD /REM/VDCT,(NEXT MESSAGE ),11,12
- FIELD /REM/VSTT,(GENERAL FLAGS VSTT),59,12
- FIELD /REM/VSTT,(FIRST POT SOURCE ),47,12
- FIELD /REM/VSTT,(POT COUNT ),35,12
- FIELD /REM/VSTT,(INIT CHAR SET/CURR SYS ),23,12
- FIELD /REM/VSTT,(QUEUED OUTPUT POT POINTER ),11,12
- CON 0 END OF RIGHT COLUMN
- TFTT3 EQU *
- ERRNG 2*TFTT2-TFTT1-TFTT3 IF RIGHT LONGER THAN LEFT
- TFMT SPACE 4,10
- ** TFMT - IAF MESSAGE STATUS TABLE FIELD DESCRIPTORS.
- TFMT VFD 24/0,18/TFMT1,18/TFMT2
- .OW SET 0-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFMT1 BSS 0
- FIELD 0,(FLAGS/DEVICE TYPE VMST),59,24
- FIELD 0,(UNACKNOW DWNSTRM BLOCK CNT ),35,3
- FIELD 0,(APPLICATION BLOCK LIMIT ),32,3
- FIELD 0,(RESERVED ),29,6
- FIELD 0,(NUMBER OF OUTPUT POTS ),23,6
- FIELD 0,(SUPERVISORY MSG POT PNTR ),17,18
- CON -1 END OF LEFT COLUMN
- TFMT2 BSS 0
- CON 0 END OF RIGHT COLUMN
- TFMT3 EQU *
- ERRNG 2*TFMT2-TFMT1-TFMT3 IF RIGHT LONGER THAN LEFT
- TFMU SPACE 4
- ** TFMU - MAGNET UNIT DESCRIPTOR TABLE FIELD DESCRIPTORS.
- TFMU VFD 24/0,18/TFMU1,18/TFMU2
- .OW SET /MTX/UXRQ-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFMU1 BSS 0
- FIELD /MTX/UXRQ,(RETURN STATUS RS UXRQ),59,12
- FIELD /MTX/UXRQ,(FUNCTION NUMBER FN ),47,12
- FIELD /MTX/UXRQ,(MODE MD ),35,12
- FIELD /MTX/UXRQ,(PARAMETER A PA ),23,12
- FIELD /MTX/UXRQ,(PARAMETER B PB ),11,12
- FIELD /MTX/UFRQ,(FILE REQUEST UFRQ),59,12
- FIELD /MTX/UFRQ,(FILE REQUEST STATUS ),47,12
- FIELD /MTX/UFRQ,(RESERVED ),35,24
- FIELD /MTX/UFRQ,(TAPE FILE FNT ADDRESS ),11,12
- FIELD /MTX/UCIA,(INTERNAL CIO CODE UCIA),59,12
- FIELD /MTX/UCIA,(FET LENGTH ),47,6
- FIELD /MTX/UCIA,(SKIP COUNT ),41,18
- FIELD /MTX/UCIA,(FET ADDRESS ),23,24
- FIELD /MTX/UCIB,(RCL/DATA/EXT CIO CODE UCIB),59,12
- FIELD /MTX/UCIB,(USER FET OPTIONS ),47,12
- FIELD /MTX/UCIB,(LEVEL NUMBER ),35,6
- FIELD /MTX/UCIB,(MLRS FOR S OR L FORMAT ),29,30
- FIELD /MTX/UCIC,(JOB FIELD LENGTH UCIC),59,12
- FIELD /MTX/UCIC,(FIRST ),47,24
- FIELD /MTX/UCIC,(LIMIT ),23,24
- FIELD /MTX/UST1,(EQUIP DESCRIPTION ED UST1),59,12
- FIELD /MTX/UST1,(HARDWARE OPTIONS HP ),47,12
- FIELD /MTX/UST1,(EST ORDINAL EO ),35,12
- FIELD /MTX/UST1,(EXTENDED STATUS ES ),23,12
- FIELD /MTX/UST1,(DEVICE STATUS DS ),11,12
- FIELD /MTX/UST2,(ERROR ITERATION EI UST2),59,12
- FIELD /MTX/UST2,(BLOCK ID WINDOW POINTER ),47,12
- FIELD /MTX/UST2,(TAPE BLOCK COUNT BC ),35,24
- FIELD /MTX/UST2,(USER OPTIONS UP ),11,12
- FIELD /MTX/UST3,(LAST GOOD RECORD LG UST3),59,24
- FIELD /MTX/UST3,(ERROR PARAMETERS EP ),35,24
- FIELD /MTX/UST3,(REQUEST ERROR CODE EC ),11,12
- FIELD /MTX/UST4,(LABEL TYPE, FLAGS LT UST4),59,12
- FIELD /MTX/UST4,(SOFTWARE OPTIONS SP ),47,12
- FIELD /MTX/UST4,(FORMAT/NOISE DEF EO ),35,12
- FIELD /MTX/UST4,(BLOCK WORD COUNT WC ),23,12
- FIELD /MTX/UST4,(CHUNK COUNT OV ),11,12
- FIELD /MTX/UST5,(DENSITY/CONV MODE UST5),59,12
- FIELD /MTX/UST5,(ERROR SUB-CODE ),47,12
- FIELD /MTX/UST5,(RESERVED ),35,36
- FIELD /MTX/UDS1,(DETAILED STATUS UDS1),59,60
- FIELD /MTX/UDS2,(DETAILED STATUS UDS2),59,60
- FIELD /MTX/UDS3,(DETAILED STATUS UDS2),59,60
- FIELD /MTX/UDS4,(DET STAT/FORMAT PARAM UDS4),59,60
- FIELD /MTX/UDS5,(DET STAT/BID WINDOW UDS5),59,24
- FIELD /MTX/UDS6,(DET STAT/BID WINDOW UDS6),35,36
- FIELD /MTX/UERC,(LATE DATA ERRORS UERC),59,18
- FIELD /MTX/UERC,(WRITE ERRORS ),41,18
- FIELD /MTX/UERC,(RESERVED ),23,6
- FIELD /MTX/UERC,(READ ERRORS ),17,18
- FIELD /MTX/UBLC,(BLOCKS READ COUNT UBLC),59,24
- FIELD /MTX/UBLC,(BLOCKS WRITTEN COUNT ),35,24
- FIELD /MTX/UBLC,(BLOCKS SKIPPED COUNT ),11,12
- FIELD /MTX/ULRQ,(LAST PP REQUEST ULRQ),59,60
- FIELD /MTX/UMSG,(TMS MESSAGE UMB1),59,60
- FIELD /MTX/UMSG+1,(TMS MESSAGE ),59,60
- FIELD /MTX/UMSG+2,(TMS MESSAGE ),59,60
- FIELD /MTX/UMSG+3,(TMS MESSAGE ),59,60
- CON -1 END OF LEFT COLUMN
- TFMU2 BSS 0
- FIELD /MTX/UREQ,(ZERO UREQ),59,6
- FIELD /MTX/UREQ,(SHIFT COUNT ),53,6
- FIELD /MTX/UREQ,(PROCESSOR ADDRESS ),47,12
- FIELD /MTX/UREQ,(PARAMETER ),35,36
- FIELD /MTX/UFLA,(MAGNET FLAGS UFLA),59,12
- FIELD /MTX/UFLA,(PP REQUEST TO REISSUE ),47,48
- FIELD /MTX/UTIM,(TIME OF LABEL READ UTIM),59,24
- FIELD /MTX/UTIM,(RESERVED ),35,36
- FIELD /MTX/UVRI,(EJT ORDINAL UVRI),59,12
- FIELD /MTX/UVRI,(FLAGS ),47,6
- FIELD /MTX/UVRI,(VSN FILE RANDOM ADDRESS ),41,18
- FIELD /MTX/UVRI,(REEL NUMBER ),23,12
- FIELD /MTX/UVRI,(FLAGS ),11,12
- FIELD /MTX/UTMS,(TFM REQUEST UTMS),59,12
- FIELD /MTX/UTMS,( ),47,12
- FIELD /MTX/UTMS,(WRITE REEL ),35,12
- FIELD /MTX/UTMS,(WAIT UNIT GO FLAGS ),23,12
- FIELD /MTX/UTMS,(TMS RETURN STATUS ),11,12
- FIELD /MTX/UTCI,(FNT ORDINAL UTCI),59,12
- FIELD /MTX/UTCI,(POSMF CATALOG ),47,24
- FIELD /MTX/UTCI,(CURRENT CATALOG ),23,24
- FIELD /MTX/UESN,(EXTERNAL VSN UESN),59,36
- FIELD /MTX/UESN,(RESOURCE MNEMONIC ),23,12
- FIELD /MTX/UESN,(PREVIEW DISPLAY FLAGS ),11,12
- FIELD /MTX/UISN,(INTERNAL VSN UISN),59,36
- FIELD /MTX/UISN,(PREVIEW DISPLAY FLAGS ),23,6
- FIELD /MTX/UISN,(PREV DISP MESSAGE CODE ),17,6
- FIELD /MTX/UISN,(PREV DISP MESSAGE EST ),11,12
- FIELD /MTX/UUFN,(USER NAME UUFN),59,42
- FIELD /MTX/UUFN,(FAMILY ORDINAL ),17,6
- FIELD /MTX/UUFN,(SPECIFIED FILE ACCESS ),11,6
- FIELD /MTX/UUFN,(RESERVED ),5,6
- FIELD /MTX/UVSN,(VOLUME SERIAL NUMBER UVSN),59,36
- FIELD /MTX/UVSN,(LABEL PROCESSING FLAGS ),23,12
- FIELD /MTX/UVSN,(RESERVED ),11,12
- FIELD /MTX/UFID,(FILE IDENTIFIER UFID),59,60
- FIELD /MTX/UFSN,(FILE ID CONTINUED UFSN),59,42
- FIELD /MTX/UFSN,(FILE SECTION NUMBER ),17,18
- FIELD /MTX/USID,(SET IDENTIFIER USID),59,36
- FIELD /MTX/USID,(FILE ACCESSIBILITY ),23,6
- FIELD /MTX/USID,(FILE SEQUENCE NUMBER ),17,18
- FIELD /MTX/UGNU,(RESERVED UGNU),59,12
- FIELD /MTX/UGNU,(EST ORDINAL WRITTEN ON ),47,12
- FIELD /MTX/UGNU,(VOLUME ACCESSIBILITY ),35,6
- FIELD /MTX/UGNU,(GENERATION VERSION ),29,12
- FIELD /MTX/UGNU,(GENERATION NUMBER ),17,18
- FIELD /MTX/UDAT,(CREATION DATE UDAT),59,30
- FIELD /MTX/UDAT,(EXPIRATION DATE ),29,30
- FIELD /MTX/UMST,(ACS VSN UMST),59,36
- FIELD /MTX/UMST,(CONTROL PATH DATA ),23,12
- FIELD /MTX/UMST,(FLAGS, MOUNT STATUS ),11,12
- FIELD /MTX/UARP,(RESERVED, REQUEST ID UARP),59,18
- FIELD /MTX/UARP,(ACS REQUEST CODE ),41,6
- FIELD /MTX/UARP,(ACS RESPONSE CODE ),35,6
- FIELD /MTX/UARP,(RESERVED ),29,6
- FIELD /MTX/UARP,(TIME OF REQUEST TIMEOUT ),23,24
- CON 0 END OF RIGHT COLUMN
- TFMU3 EQU *
- ERRNG 2*TFMU2-TFMU1-TFMU3 IF RIGHT LONGER THAN LEFT
- TLCW SPACE 4,10
- ** TLCW - *BDT* LIST CONTROL WORD FIELD DESCRIPTORS.
- TLCW VFD 24/0,18/TLCW1,18/TLCW2
- .OW SET /HIO/EMTP-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TLCW1 BSS 0
- FIELD /HIO/EMTP,(RESERVED EMTP),59,6
- FIELD /HIO/EMTP,(EMPTY BUFFER COUNT ),53,18
- FIELD /HIO/EMTP,(EMPTY BUFFER - LAST ORDINAL),35,18
- FIELD /HIO/EMTP,(EMPTY BUFFER - 1ST ORDINAL ),17,18
- FIELD /HIO/DWTP,(RESERVED DWTP),59,6
- FIELD /HIO/DWTP,(DATA WRITTEN BUFFER COUNT ),53,18
- FIELD /HIO/DWTP,(DATA WRT BUF - LAST ORDINAL),35,18
- FIELD /HIO/DWTP,(DATA WRT BUF - 1ST ORDINAL ),17,18
- FIELD /HIO/DRDP,(RESERVED DRDP),59,6
- FIELD /HIO/DRDP,(READ DATA BUFFER COUNT ),53,18
- FIELD /HIO/DRDP,(RD DATA BUF - LAST ORDINAL ),35,18
- FIELD /HIO/DRDP,(RD DATA BUF - 1ST ORDINAL ),17,18
- FIELD /HIO/WRTP,(RESERVED WRTP),59,6
- FIELD /HIO/WRTP,(WRITE DATA BUFFER COUNT ),53,18
- FIELD /HIO/WRTP,(WRT DATA BUF - LAST ORDINAL),35,18
- FIELD /HIO/WRTP,(WRT DATA BUF - 1ST ORDINAL ),17,18
- FIELD /HIO/IORQP,(I/O REQUEST IORQP),59,60
- CON -1 END OF LEFT COLUMN
- TLCW2 BSS 0
- CON 0 END OF RIGHT COLUMN
- TLCW3 EQU *
- ERRNG 2*TLCW2-TLCW1-TLCW3 IF RIGHT LONGER THAN LEFT
- TIBS SPACE 4,10
- ** TIBS - I/O BUFFER STATISTICS TABLE FIELD DESCRIPTORS.
- TIBS VFD 24/0,18/TIBS1,18/TIBS2
- .OW SET /HIO/EMTBC-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TIBS1 BSS 0
- FIELD /HIO/EMTBC,(REALLOC EMPTY BUFS EMTBC),59,60
- FIELD /HIO/DWTBC,(REALLOC DATA WRT BUFS DWTBC),59,60
- FIELD /HIO/DRDBC,(REALLOC RD DATA BUFS DRDBC),59,60
- FIELD /HIO/WRTBC,(REALLOC WRT DATA BUFS WRTBC),59,60
- CON -1 END OF LEFT COLUMN
- TIBS2 BSS 0
- CON 0 END OF RIGHT COLUMN
- TIBS3 EQU *
- ERRNG 2*TIBS2-TIBS1-TIBS3 IF RIGHT LONGER THAN LEFT
- TPLT SPACE 4,10
- ** TPLT - PP LINK TABLE FIELD DESCRIPTORS.
- TPLT VFD 24/0,18/TPLT1,18/TPLT2
- .OW SET 0-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TPLT1 BSS 0
- FIELD 0,(CONTROL BUF ORDINAL - PP 0 ),59,60
- FIELD 1,( PP 1 ),59,60
- FIELD 2,( PP 2 ),59,60
- FIELD 3,( PP 3 ),59,60
- FIELD 4,( PP 4 ),59,60
- FIELD 5,( PP 5 ),59,60
- FIELD 6,( PP 6 ),59,60
- FIELD 7,( PP 7 ),59,60
- FIELD 10,( PP 10),59,60
- FIELD 11,( PP 11),59,60
- FIELD 12,( PP 20),59,60
- FIELD 13,( PP 21),59,60
- FIELD 14,( PP 22),59,60
- FIELD 15,( PP 23),59,60
- FIELD 16,( PP 24),59,60
- FIELD 17,( PP 25),59,60
- FIELD 20,( PP 26),59,60
- FIELD 21,( PP 27),59,60
- FIELD 22,( PP 30),59,60
- FIELD 23,( PP 31),59,60
- CON -1 END OF LEFT COLUMN
- TPLT2 BSS 0
- CON 0 END OF RIGHT COLUMN
- TPLT3 EQU *
- ERRNG 2*TPLT2-TPLT1-TPLT3 IF RIGHT LONGER THAN LEFT
- TCBE SPACE 4,10
- ** TCBE - CONTROL BUFFER TABLE FIELD DESCRIPTORS.
- TCBE VFD 24/0,18/TCBE1,18/TCBE2 PRINTER OUTPUT
- VFD 24/0,18/TCBE1,18/0 TERMINAL OUTPUT
- .OW SET /HIO/PAD1-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TCBE1 BSS 0
- FIELD /HIO/PAD1,( RESERVED PAD1),59,6
- FIELD /HIO/PAD1,( PHYS UNIT NUMBER ),53,6
- FIELD /HIO/PAD1,( PHYS CYL NUMBER ),47,12
- FIELD /HIO/PAD1,( PHYS TRACK NUMBER ),35,6
- FIELD /HIO/PAD1,( PHYS SECTOR NUMBER),29,6
- FIELD /HIO/PAD1,( DATA FLAGS ),23,12
- FIELD /HIO/PAD1,( NEXT SECTOR LINK ),11,12
- FIELD /HIO/PAD2,( RESERVED PAD2),59,6
- FIELD /HIO/PAD2,( PHYS UNIT NUMBER ),53,6
- FIELD /HIO/PAD2,( PHYS CYL NUMBER ),47,12
- FIELD /HIO/PAD2,( PHYS TRACK NUMBER ),35,6
- FIELD /HIO/PAD2,( PHYS SECTOR NUMBER),29,6
- FIELD /HIO/PAD2,( DATA FLAGS ),23,12
- FIELD /HIO/PAD2,( NEXT SECTOR LINK ),11,12
- FIELD /HIO/PAD3,( RESERVED PAD3),59,6
- FIELD /HIO/PAD3,( PHYS UNIT NUMBER ),53,6
- FIELD /HIO/PAD3,( PHYS CYL NUMBER ),47,12
- FIELD /HIO/PAD3,( PHYS TRACK NUMBER ),35,6
- FIELD /HIO/PAD3,( PHYS SECTOR NUMBER),29,6
- FIELD /HIO/PAD3,( DATA FLAGS ),23,12
- FIELD /HIO/PAD3,( NEXT SECTOR LINK ),11,12
- FIELD /HIO/PAD4,( RESERVED PAD4),59,6
- FIELD /HIO/PAD4,( PHYS UNIT NUMBER ),53,6
- FIELD /HIO/PAD4,( PHYS CYL NUMBER ),47,12
- FIELD /HIO/PAD4,( PHYS TRACK NUMBER ),35,6
- FIELD /HIO/PAD4,( PHYS SECTOR NUMBER),29,6
- FIELD /HIO/PAD4,( DATA FLAGS ),23,12
- FIELD /HIO/PAD4,( NEXT SECTOR LINK ),11,12
- CON -1 END OF LEFT COLUMN
- TCBE2 BSS 0
- FIELD /HIO/FSTC,(FST INFORMATION FSTC),59,60
- FIELD /HIO/IOLK,(GENERAL FLAGS IOLK),59,12
- FIELD /HIO/IOLK,(UNIT I/O QUEUE BACK LINK ),47,12
- FIELD /HIO/IOLK,(UNIT I/O QUEUE FORWARD LINK),35,12
- FIELD /HIO/IOLK,(I/O BUFFER ADDRESS ),23,24
- FIELD /HIO/HSLK,(I/O ERROR INFORMATION HSLK),59,12
- FIELD /HIO/HSLK,(HASH LIST BACK LINK ),47,12
- FIELD /HIO/HSLK,(HASH LIST FORWARD LINK ),35,12
- FIELD /HIO/HSLK,(BUFFER RESID LIST INDEX ),23,3
- FIELD /HIO/HSLK,(BUFFER HASH INDEX ),20,9
- FIELD /HIO/HSLK,(*PUT* ORDINAL ),11,12
- FIELD /HIO/LSLK,(ACTIVITY COUNT LSLK),59,12
- FIELD /HIO/LSLK,(BUFFER LIST BACKWARD LINK ),47,12
- FIELD /HIO/LSLK,(BUFFER LIST FORWARD LINK ),35,12
- FIELD /HIO/LSLK,(CONTROL POINT NUMBER ),23,6
- FIELD /HIO/LSLK,(RECALL ENTRY ADDRESS ),17,18
- CON 0 END OF RIGHT COLUMN
- TCBE3 EQU *
- ERRNG 2*TCBE2-TCBE1-TCBE3 IF RIGHT LONGER THAN LEFT
- TCCE SPACE 4,10
- ** TCCE - CHANNEL CONTROL TABLE FIELD DESCRIPTORS.
- TCCE VFD 24/0,18/TCCE1,18/TCCE2 PRINTER OUTPUT
- VFD 24/0,18/TCCE1,18/0 TERMINAL OUTPUT
- .OW SET /HIO/CREQ-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TCCE1 BSS 0
- FIELD /HIO/CREQ,(CHANNEL BUSY FLAG CREQ),59,12
- FIELD /HIO/CREQ,(RETRY REQUEST ),47,24
- FIELD /HIO/CREQ,(PENDING REQUEST ),23,12
- FIELD /HIO/CREQ,(ACTIVE REQUEST ),11,12
- FIELD /HIO/CCNT,(REQUEST INIT FLAGS CCNT),59,12
- FIELD /HIO/CCNT,(SECOND CHANNEL ),47,6
- FIELD /HIO/CCNT,(FIRST CHANNEL ),41,6
- FIELD /HIO/CCNT,(REQUESTS PROCESSED COUNT ),35,36
- CON -1 END OF LEFT COLUMN
- TCCE2 BSS 0
- FIELD /HIO/CUN1,(*PUT* ORD FOR UNIT 3 CUN1),59,24
- FIELD /HIO/CUN1,( UNIT 2 ),35,12
- FIELD /HIO/CUN1,( UNIT 1 ),23,12
- FIELD /HIO/CUN1,( UNIT 0 ),11,12
- FIELD /HIO/CUN2,(*PUT* ORD FOR UNIT 7 CUN2),59,24
- FIELD /HIO/CUN2,( UNIT 6 ),35,12
- FIELD /HIO/CUN2,( UNIT 5 ),23,12
- FIELD /HIO/CUN2,( UNIT 4 ),11,12
- CON 0 END OF RIGHT COLUMN
- TCCE3 EQU *
- ERRNG 2*TCCE2-TCCE1-TCCE3 IF RIGHT LONGER THAN LEFT
- TFTE SPACE 4,10
- ** TFTE - FUNCTION TIMEOUT TABLE FIELD DESCRIPTORS.
- TFTE VFD 24/0,18/TFTE1,18/TFTE2 PRINTER OUTPUT
- VFD 24/0,18/TFTE1,18/0 TERMINAL OUTPUT
- .OW SET 0-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TFTE1 BSS 0
- FIELD 0,(RESERVED ),59,12
- FIELD 0,(TIMEOUT INCREMENT ),47,12
- FIELD 0,(EXPECTED STATUS ),35,12
- FIELD 0,(TIMEOUT VALUE ),23,24
- CON -1 END OF LEFT COLUMN
- TFTE2 BSS 0
- CON 0 END OF RIGHT COLUMN
- TFTE3 EQU *
- ERRNG 2*TFTE2-TFTE1-TFTE3 IF RIGHT LONGER THAN LEFT
- THAE SPACE 4,10
- ** THAE - HASH TABLE FIELD DESCRIPTORS.
- THAE VFD 24/0,18/THAE1,18/THAE2 PRINTER OUTPUT
- VFD 24/0,18/THAE1,18/0 TERMINAL OUTPUT
- .OW SET 0-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- THAE1 BSS 0
- FIELD 0,(LOGICAL TRACK HATL),59,12
- FIELD 0,(FIRST SECTOR ),47,12
- FIELD 0,(LAST SECTOR ),35,12
- FIELD 0,(ORD OF 1ST CONTROL BUFFER ),23,24
- CON -1 END OF LEFT COLUMN
- THAE2 BSS 0
- CON 0 END OF RIGHT COLUMN
- THAE3 EQU *
- ERRNG 2*THAE2-THAE1-THAE3 IF RIGHT LONGER THAN LEFT
- TPUE SPACE 4,10
- ** TPUE - PHYSICAL UNIT TABLE FIELD DESCRIPTORS.
- TPUE VFD 24/0,18/TPUE1,18/TPUE2 PRINTER OUTPUT
- VFD 24/0,18/TPUE1,18/0 TERMINAL OUTPUT
- .OW SET /HIO/UNCT-1 INITIALIZE *FIELD* MACRO CHECKS
- .BI SET 0
- TPUE1 BSS 0
- FIELD /HIO/UNCT,(UNIT INTERLOCK UNCT),59,3
- FIELD /HIO/UNCT,(EQUIPMENT NUMBER ),56,3
- FIELD /HIO/UNCT,(PHYSICAL UNIT NUMBER ),53,6
- FIELD /HIO/UNCT,(ASSIGNED EST ORDINAL ),47,12
- FIELD /HIO/UNCT,(UNIT QUEUE SIZE ),35,12
- FIELD /HIO/UNCT,(CURRENT *CB* ORDINAL ),23,12
- FIELD /HIO/UNCT,(FIRST *CB* ORDINAL ),11,12
- FIELD /HIO/HSCT,(SECTORS PER I/O BUFFER HSCT),59,6
- FIELD /HIO/HSCT,(HASH MASK ),53,12
- FIELD /HIO/HSCT,(FWA *HAT* FOR THIS UNIT ),41,18
- FIELD /HIO/HSCT,(REQUESTS PROCESSED ),23,12
- FIELD /HIO/HSCT,(*PUT* ORDINAL OF NEXT UNIT ),11,12
- FIELD /HIO/RDST,(RESERVED RDST),59,24
- FIELD /HIO/RDST,(SECTORS READ ),35,36
- FIELD /HIO/WTST,(RESERVED WTST),59,24
- FIELD /HIO/WTST,(SECTORS WRITTEN ),35,36
- CON -1 END OF LEFT COLUMN
- TPUE2 BSS 0
- FIELD /HIO/ACRJ,(EVICTED READ *HAT* ENT ACRJ),59,12
- FIELD /HIO/ACRJ,(EVICTED WRITE *HAT* ENTRIES),47,12
- FIELD /HIO/ACRJ,(FULL HASH TABLE REJECTS ),35,12
- FIELD /HIO/ACRJ,(BUFFER BUSY REJECTS ),23,24
- FIELD /HIO/ACST,(RECALL REQUEST REPLIES ACST),59,24
- FIELD /HIO/ACST,(BUFFER REQUESTS PROCESSED ),35,36
- FIELD /HIO/INST,(I/L BUFFER REJECT INST),59,24
- FIELD /HIO/INST,(I/L BUFFER COMPLETE ),35,36
- FIELD /HIO/PILL,(ERROR FLAGS PILL),59,12
- FIELD /HIO/PILL,(ERROR UNIT NUMBER ),47,6
- FIELD /HIO/PILL,(RESERVED ),41,18
- FIELD /HIO/PILL,(SPECIAL REQUEST FLAGS ),23,12
- FIELD /HIO/PILL,(*OR* ADDRESS OF I/L PP ),11,12
- CON 0 END OF RIGHT COLUMN
- TPUE3 EQU *
- ERRNG 2*TPUE2-TPUE1-TPUE3 IF RIGHT LONGER THAN LEFT
- FPWB SPACE 4,2
- ** JOB ORIGIN TYPE NAMES.
- * USED BY ROUTINE *FPW*.
- FPWB BSS 0 TABLE OF ORIGIN TYPE NAMES
- LOC 0
- DATA 10LSYOT
- DATA 10LBCOT
- DATA 10LEIOT
- DATA 10LTXOT
- LOC *O
- FPWC SPACE 4,3
- ** SPECIAL ENTRY POINT NAMES. NAMES CORRESPOND TO BITS
- * IN THE *SEPW* WORD IN THE CONTROL POINT AREA. TABLE
- * ORDER MUST BE PRESERVED. USED BY ROUTINE *FPW*.
- FPWC BSS 0
- DATA 10LDPA= BIT 47
- DATA 10LSSM= BIT 48
- DATA 10LVAL= BIT 49
- DATA 10LSSJ= BIT 50
- DATA 10LSDM= BIT 51
- DATA 10LDMP= BIT 52
- DATA 10LARG= BIT 53
- DATA 10LCLB= BIT 54
- DATA 10LLDR= BIT 55
- DATA 10LUTL= BIT 56
- FPWCL EQU *-FPWC TABLE OF SPECIAL ENTRY POINTS LENGTH
- SCNT SPACE 4,10
- ** SERVICE CLASS NAMES.
- * USED BY *JC* PROCESSOR.
- SCNT BSS 0 TABLE OF SERVICE CLASS NAMES
- LOC 1
- LIST D
- .SCL HERE
- LIST *
- LOC *O
- SEG
- TITLE DIRECTIVE PROCESSING - MAIN ROUTINES.
- QUAL DIRECT
- SPACE 4
- *** DSDI INPUT DIRECTIVES.
- *
- * THE FOLLOWING NOTES AND RULES APPLY TO ALL INPUT DIRECTIVES-
- *
- * 1. ANY CHARACTER WITH A DISPLAY CODE GREATER THAN OR
- * EQUAL TO 50B (*/* CODE) IS CONSIDERED A SEPARATOR.
- *
- * 2. THE EXPLICIT COMMAND TERMINATOR IS *.*. ANYTHING BEYOND
- * THE TERMINATOR IS IGNORED.
- *
- * 4. DIRECTIVES WHICH REQUIRE A FIXED NUMBER OF PARAMETERS
- * WILL IGNORE EVERYTHING BEYOND THE SEPARATOR FOR THE LAST
- * LEGAL PARAMETER.
- ACCOUNT SPACE 4,3
- *** ACCOUNT.
- *
- * DUMP THE ACCOUNT DAYFILE BUFFER IN *E* FORMAT.
- * ALSO, DUMP THE CURRENT BUFFER LINE BY LINE.
- ACCOUNT DATA 0LACCOUNT
- SX7 -1
- ACN1 SA7 CN
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ GDB GET DAYFILE BUFFER
- RJ LDC LIST DIRECTIVE
- RJ PDP PRINT DAYFILE POINTERS
- PRINT (=2C )
- RJ PDB PRINT DAYFILE BUFFER
- JP DSD1 RETURN
- ALLMEM SPACE 4,10
- *** ALLMEM.
- *
- * ALLOW CM DUMPS TO EXTEND PAST THE CM BOUNDARY ON MACHINES
- * WITH CENTRAL MEMORY EXTENSION (CME).
- ALLMEM DATA 0LALLMEM
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 CE
- ZR X1,ERR25 IF NOT CM EXTENSION ON MAINFRAME
- SX6 1 SET *ALLMEM* FLAG
- SA6 AM
- EQ DSD1 RETURN
- AP SPACE 4,13
- *** AP.
- * DUMP AND ANALYZE ALL ACTIVE PPUS.
- *
- * AP,N1,N2,...,NN.
- * DUMP AND ANALYZE SELECTED PPUS. NN MAY BE A PPU NUMBER
- * OR A PROGRAM NAME. IF IT IS A PROGRAM NAME, ALL PPUS
- * EXECUTING THAT PROGRAM ARE DUMPED. A WARNING IS ISSUED
- * IF AN ILLEGAL NUMBER IS DETECTED OR IF A NAMED PROGRAM IS NOT
- * FOUND IN ANY PPU.
- *
- * PPU MEMORY IS DUMPED IN *Q* FORMAT. THE ASSOCIATED
- * COMMUNICATION REGISTERS ARE DUMPED. RESIDENT ENTRY
- * POINT CALL ADDRESSES ARE LISTED. LOW CORE READ-ONLY
- * CONSTANTS ARE VERIFIED AND FLAGGED IF WRONG.
- AP DATA 0LAP
- RJ IPA INITIALIZE FOR PPU DUMP
- RJ LDC LIST DIRECTIVE
- APR1 RJ SPA SELECT NEXT PPU TO ANALYZE
- ZR X1,DSD1 IF NO MORE TO DUMP
- RJ APP ANALYZE PPU
- JP APR1 CONTINUE
- B SPACE 4,5
- ** B.
- *
- * DISPLAY BRIEF STATUS FOR ALL CONTROL POINTS IN A FORMAT
- * SIMILAR TO THE *DSD* *B,A* DISPLAY.
- B DATA 0LB
- RJ LDC DISPLAY DIRECTIVE
- RJ SCM SET CENTRAL MEMORY
- SA7 RI
- SX6 0 SET FWA
- SA6 FW
- SA1 NC SET LWA
- SX6 X1+2
- LX6 7
- SA6 A6+B1
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- PRINT (=2C )
- PRINT (=C* CP JSN SC PR FL CPU MS1W*)
- PRINT (=C* EJT SCPR FLE SS MS2W*)
- BDS1 RJ SSB
- PRINT (=2C )
- SA1 FW INCREMENT CPA ADDRESS
- SX6 X1+CPLEN
- SA6 A1
- SA2 A1+B1
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- IX2 X6-X2
- BX1 X6
- PL X2,DSD1 IF ALL CONTROL POINTS DISPLAYED
- AX1 7
- SB4 B1+B1
- SB7 PRBF+4 DISPLAY CP NUMBER
- RJ DOS
- RJ GEE GET EJT ENTRY
- NZ X1,BDS2 IF ACTIVE CP
- PRINT CCCH,10
- PRINT (=2C )
- EQ BDS1 CHECK NEXT CP
- BDS2 SA2 BUF+JSNE DISPLAY JSN
- SB6 4
- SB7 PRBF+9
- RJ SDI
- SA1 BUF+SCLE GET SERVICE CLASS, CM FL
- MX0 6
- BX2 X0*X1
- LX2 6
- SA2 X2+SCNT-1 DISPLAY SERVICE CLASS MNEMONIC
- BX6 X0*X2
- LX6 6
- SA6 PRBF+16
- SA1 FW
- RJ GFL GET CM FL
- BX5 X1 SAVE BUFFER ADDRESS OF CPA FWA
- BX1 X7
- LX1 -6 DISPLAY FL/100B
- SB4 4
- SB7 PRBF+27
- RJ DOS DISPLAY CM FL
- SA1 X5+CWQW GET CPU PRIORITY
- MX0 2
- BX1 -X0*X1
- AX1 51
- SB7 PRBF+19
- RJ DOS DISPLAY CPU PRIORITY
- SB7 PRBF+34
- RJ GCS DISPLAY CPU STATUS
- SA2 X5+MS1W DISPLAY *MS1W*
- SB6 48
- SB7 PRBF+38
- RJ DMB
- PRINT CCCH,B7-CCCH+1
- SA1 GEEA GET EJT ORDINAL
- RJ SSB CLEAR PRINT BUFFER
- SB4 4
- SB7 PRBF+13
- RJ DOS DISPLAY EJT ORDINAL
- SA1 BUF+SCHE DISPLAY SCHEDULING PRIORITY
- RJ DOS
- SA1 X5+ECSW
- MX0 -12
- BX1 -X0*X1
- SA2 UE GET FLE
- SB3 X2
- LX1 B3
- SB4 6
- RJ DOS DISPLAY FLE
- SA1 X5+SNSW
- SA2 X5+STSW
- SA3 BUF+SCLE
- SA4 F.TCMT
- SA4 X4+CMCL
- SX6 1RI
- SX7 1RS
- LX1 59-15
- LX2 59-56
- LX3 59-52
- PL X1,BDS3 IF SUBSYSTEM IDLEDOWN NOT SET
- SA6 B7 DISPLAY *SUBSYSTEM IDLEDOWN* FLAG
- BDS3 PL X2,BDS4 IF NO SUBCONTROL POINTS ACTIVE
- SA7 B7+1 DISPLAY *SUBCONTROL POINTS ACTIVE* FLAG
- BDS4 SX6 1RL
- SX7 1RM
- PL X3,BDS5 IF NOT FORCED ROLLIN
- SA6 B7+2 DISPLAY *FORCED ROLLIN* FLAG
- BDS5 MX0 -12
- LX4 12
- SA2 FW
- AX2 7
- BX4 -X0*X4
- BX4 X2-X4
- NZ X4,BDS6 IF CONTROL POINT NOT MOVING
- SA7 B7+3 DISPLAY *CONTROL POINT MOVING* FLAG
- BDS6 SA2 X5+MS2W DISPLAY *MS2W*
- SB6 28
- SB7 PRBF+38
- RJ DMB
- PRINT CCCH,B7-CCCH+1
- EQ BDS1 CHECK NEXT CP
- BATCHIO SPACE 4,20
- *** BATCHIO,OPS.
- * BIO,OPS.
- *
- * WHERE OPS IS A STRING OF UP TO 3 CHARACTERS SELECTING
- * VARIOUS DUMP OPTIONS AS FOLLOWS-
- *
- * B EACH OF THE ACTIVE BATCHIO BUFFER POINTS ARE ANALYZED
- * WITH ASSOCIATED FET, EST, EQUIPMENT TYPE, AND FNT/FST.
- *
- * N DUMP NEGATIVE FIELD LENGTH IN *D* FORMAT.
- *
- * P ALL COPIES OF 1CD, 1IO, DSP, QAC, AND QAP ARE ANALYZED.
- *
- *
- * BATCHIO. OR BIO.
- *
- * IS EQUIVALENT TO *BATCHIO,PBN.*.
- BATCHIO DATA 0LBATCHIO
- EQ BIO1 PROCESS LIKE *BIO* DIRECTIVE
- BIO DATA 0LBIO
- BIO1 SA5 BIOA
- RJ ISS INITIALIZE FOR SUB-SYSTEM DUMP
- GETCM SSBF,/BIO/BUFR+1
- SA5 BIOB
- RJ DSS DUMP BATCHIO SUB-SYSTEM
- JP DSD1 RETURN
- BIOA VFD 24/0,12/BISI,24/0
- BIOB VFD 60/0LPBN
- VFD 36/0,6/1RB,18/DBB
- VFD 36/0,6/1RN,18/DBN
- VFD 36/0,6/1RP,18/DBP
- VFD 60/0
- BCDUMP SPACE 4,35
- *** BCDUMP.
- *
- * DUMP EACH CONTROLLER RECORD FOUND WITH DEFAULT OPTIONS.
- *
- * BCDUMP/OPS.
- *
- * DUMP EACH CONTROLLER RECORD FOUND WITH SPECIFIED OPTIONS.
- *
- * BCDUMP,CC,CC.
- *
- * DUMP SPECIFIED CHANNELS WITH DEFAULT OPTIONS.
- *
- * BCDUMP,CC/OPS,CC/OPS.
- *
- * DUMP SPECIFIED CHANNELS WITH SPECIFIED OPTIONS.
- *
- * CONTROLLER MEMORY IS DUMPED IN HEXADECIMAL LINE FORMAT
- * WITH DISPLAY CODE INTERPRETATION BY DEFAULT, WITH NO
- * VERIFICATION DATA. IF OTHER THAN THE DEFAULT SELECTION
- * IS REQUIRED, THE *OPS* STRING OF CHARACTERS MAY BE SPECIFIED
- * TO SELECT ALTERNATE DUMP OPTIONS AS FOLLOWS -
- *
- * A SELECT 7-BIT ASCII CODE INTERPRETATION.
- *
- * D SELECT 6-BIT DISPLAY CODE INTERPRETATION.
- *
- * H DUMP CONTROLLER MEMORY IN HEXADECIMAL LINE FORMAT.
- *
- * O DUMP CONTROLLER MEMORY IN OCTAL LINE FORMAT.
- *
- * V LIST VERIFICATION INFORMATION IN ADDITION TO
- * CONTROLLER MEMORY DUMP (FOR USE WITH CONTROLWARE DUMP
- * FILE PRODUCED BY *LOADBC* UTILITY).
- BCDUMP DATA 0LBCDUMP
- RJ LDC LIST DIRECTIVE
- SA1 .BCH SEARCH FOR FIRST BUFFER CONTROLLER RECORD
- MX0 12
- LX0 -12
- SEARCH TDIR,X1,X0
- ZR X2,ERR14 IF RECORD NOT FOUND
- SX6 A2-2 SAVE ADDRESS OF DIRECTORY ENTRY
- SA6 BCDA
- SA1 CH CHECK SEPARATOR
- SA1 X1+
- SX6 X1-1R.
- SA6 PI SAVE PARAMETER PRESENT FLAG
- SX6 2RHD
- SA6 SBCB
- SX6 X1-1R/
- NZ X6,BCD1 IF NOT OPTION SELECTION
- RJ ASN ASSEMBLE OPTIONS
- SA1 CH CHECK SEPARATOR
- AX6 B6
- SA1 X1
- SA6 SBCB SET ALTERNATE OPTION SELECTION
- SX6 X1-1R.
- SA6 PI
- NZ X6,ERR6 IF NOT END OF DIRECTIVE
- BCD1 RJ SBC SELECT NEXT BUFFER CONTROLLER CHANNEL
- ZR X1,DSD1 IF END OF CHANNELS TO DUMP
- SX6 A2 SAVE ADDRESS OF DIRECTORY ENTRY
- MX0 -6
- SA6 BCDA
- SA1 SBCB GET OPTIONS
- SX6 4 SET DEFAULT OPTIONS (HEX AND DISPLAY CODE)
- SA3 TBOP-1
- BCD2 SA3 A3+B1 GET *BCDUMP* OPTION TABLE ENTRY
- ZR X3,ERR6 IF INCORRECT OPTION
- BX7 X1-X3
- BX7 -X0*X7
- NZ X7,BCD2 IF NO MATCH
- AX3 6 SELECT DUMP FORMAT
- SX7 X3
- BX6 -X7*X6
- AX3 18
- BX6 X6+X3
- AX1 6
- SA3 TBOP-1
- SX7 X6
- NZ X1,BCD2 IF MORE OPTIONS SPECIFIED
- SA7 BCDB+3 SET FORMAT OF DUMP
- SA6 BCDC SAVE VERIFY OPTION
- PRINT (=2C )
- SB7 PRBF SET HEADING
- SA2 =17H CHANNEL NUMBER
- SB6 17
- RJ UPS
- SA1 SBCA GET CHANNEL NUMBER
- LX1 -6
- SB6 B1+B1
- RJ CTS
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- SA2 BCDA
- SA2 X2+1 GET RANDOM INDEX
- BX6 X2
- SA6 RI SET RANDOM INDEX OF NEXT RECORD
- BX6 X6-X6 SET FWA
- SA6 BCDB
- SA6 BCDD
- BCD3 SA3 BCDD POSITION DUMP FILE
- RJ PDF
- RJ PBC PACK BUFFER CONTROLLER MEMORY
- SA2 BCDD
- NZ X2,BCD4 IF NOT BEGINNING OF DUMP
- SA1 PBUF GET FIRST WORD OF CONTROLWARE
- MX0 8D
- BX1 X1*X0 MASK OUT CHANNEL TYPE
- LX1 8D SHIFT INTO POSITION
- BX6 X1 SAVE CHANNEL TYPE
- SA6 K4
- SA1 X6+TCTP GET DUMP LWA+1
- AX1 18
- SX6 X1
- SA6 BCDE
- SX7 K4RBFL SET INITIAL LWA+1
- SA7 BCDB+1
- IX7 X6-X7
- PL X7,BCD4 IF NOT 4K CONTROLLER
- SA6 A7 RESET LWA+1
- BCD4 SX6 X2+K4WBFL UPDATE DUMP RECORD FWA
- SA6 A2
- BX7 X7-X7 INITIALIZE *NXB* POINTERS
- SX6 IUBUFL1+4
- SA6 NXBA
- SA7 A6+B1
- SX6 PBUF-1 SET STARTING ADDRESS -1
- SA6 A7+B1
- SA1 BCDB SET CONTROL BLOCK ADDRESS
- RJ DSP PROCESS DUMP
- SA2 BCDB+1
- SA3 BCDE GET DUMP LWA+1
- IX7 X3-X2
- ZR X7,BCD5 IF DUMP LWA+1
- BX6 X2 UPDATE FWA
- SA6 A2-B1
- SX7 X6+K4RBFL UPDATE LWA+1
- SA7 A2
- IX2 X3-X7
- PL X2,BCD3 IF NOT TOO BIG
- SX7 X3
- SA7 A2 SET LWA+1 TO DUMP LWA+1
- EQ BCD3 READ NEXT BLOCK
- BCD5 SA1 BCDC
- PL X1,BCD1 IF NOT VERIFY OPTION
- SX1 X1
- AX1 2 OCTAL OR HEX FORMAT OPTION
- SA2 BCDA GET CONTROLLER MEMORY DIRECTORY ENTRY
- RJ PCV PROCESS CONTROLLER VERIFICATION DATA
- EQ BCD1 PROCESS NEXT CHANNEL
- BCDA CON 0 DIRECTORY INDEX
- BCDB CON 0 FWA TO DUMP
- CON 0 LWA+1 TO DUMP
- CON 0
- CON 4 HEX - LINE - DISPLAY CODE
- BCDC CON 0 VERIFICATION OPTION
- BCDD CON 0 DUMP RECORD ADDRESS
- BCDE CON 0 DUMP LWA+1
- TBOP BSS 0 TABLE OF *BCDUMP* OPTIONS
- VFD 36/1,18/1,6/1RA 7-BIT ASCII CODE
- VFD 36/0,18/1,6/1RD 6-BIT DISPLAY CODE
- VFD 36/4,18/6,6/1RH HEX LINE FORMAT
- VFD 36/2,18/6,6/1RO OCTAL LINE FORMAT
- VFD 1/1,35/0,18/0,6/1RV VERIFICATION DATA
- CON 0 END OF TABLE
- SPACE 4,10
- *** BUFF.
- *
- * DUMP 819 BUFFER TABLES.
- BUFF DATA 0LBUFF
- RJ LDC LIST DIRECTIVE
- BX6 X6-X6 SET REFERENCE ADDRESS
- RJ SRA
- RJ SCM SET CENTRAL MEMORY
- SA1 F.TCMT
- SA1 X1+BIOL GET BUFFER POINTERS
- SX7 X1 GET LWA+1
- AX1 24
- SX6 X1 GET FWA
- ZR X6,ERR34 IF NO BUFFERED DEVICES
- SA6 CPRA FWA
- SA7 A6+B1 LWA
- SX6 B1
- SA6 CPRA+4 *D* FORMAT
- JP CPR2 PROCESS DUMP
- TCTP SPACE 4,15
- ** TCTP - TABLE OF CONTROLLER TYPE PARAMETERS.
- * INDEXED BY CONTROLLER TYPE.
- *
- *T 1/W,23/0,18/LA,18/BS
- *
- * W CONTROLLER WORD SIZE FLAG.
- * 0 = 8 BIT WORD SIZE.
- * 1 = 16 BIT WORD SIZE.
- * LA LWA+1 TO DUMP.
- * BS CM WORDS OF DATA IN PBUF.
- TCTP BSS 0
- VFD 1/1,23/0,18/K4BFL,18/IUBUFL1
- VFD 1/0,23/0,18/K16BFL,18/IUBUFL2
- VFD 1/1,23/0,18/K8BFL,18/IUBUFL2
- VFD 1/0,23/0,18/KIBFL,18/IUBUFL3
- VFD 1/1,23/0,18/K16BFL,18/IUBUFL4
- C SPACE 4,8
- *** C,FWA,LWA+1.
- *
- * DUMP MEMORY IN INSTRUCTION PARCEL FORMAT WITH DISPLAY
- * CODE INTERPRETATION. WORDS ARE LISTED COLUMNWISE WITH
- * THREE COLUMNS PER PAGE. REPETITIVE DATA IS SUPPRESSED.
- *
- * FOR TERMINAL OUTPUT, DATA IS LISTED ONE WORD PER LINE WITH
- * DISPLAY CODE INTERPRETATION AND NO PAGINATION IS PROCESSED.
- C DATA 0LC
- SA1 EE
- NZ X1,ERR5 IF EXTENDED MEMORY ERROR FLAG SET
- SA1 TF
- NZ X1,CTN IF OUTPUT IS TO TERMINAL
- SX6 0 SET *C* FORMAT CODE
- CPR1 SA6 CPRA+4 SET FORMAT CODE
- RJ LDC LIST DIRECTIVE
- SB7 0 SET OCTAL BASE
- RJ ASD ASSEMBLE FWA
- NZ X4,ERR6 IF ERROR IN CONVERSION
- SA6 CPRA SET FWA
- SX6 X6+B1
- SA6 A6+B1 PRESET LWA+1
- RJ ASD ASSEMBLE LWA+1
- NZ X4,CPR2 IF NOT SPECIFIED
- SA6 CPRA+1 SET LWA+1
- CPR2 SB2 CPRA
- RJ CMB CHECK MEMORY BOUNDS
- RJ POM POSITION DUMP FILE
- SB2 CPRA
- RJ PMD PROCESS DUMP
- JP DSD1 RETURN
- QUAL
- CPRA BSS 0 DUMP PARAMETERS
- CON 0 FWA
- CON 0 LWA+1
- CON 0
- CON 0
- CON 0 FORMAT CODE
- CON 0
- CON 0 INVERTED ADDRESS
- QUAL *
- * PROCESS TERMINAL OUTPUT.
- CTN SA1 =5000004B
- CTN1 BX6 X1
- SA6 CPRA+4 SET FORMAT PARAMETERS
- RJ SSB CLEAR PRINT STRING
- SB7 0
- RJ ASD ASSEMBLE FWA
- NZ X4,ERR6 IF CONVERSION ERROR
- SA6 CPRA SET FWA
- SX6 X6+B1
- SA6 A6+B1 PRESET LWA+1
- RJ ASD
- NZ X4,CTN2 IF LWA+1 NOT SPECIFIED
- SA6 CPRA+1
- CTN2 SB2 CPRA
- RJ CMB CHECK MEMORY BOUNDS
- RJ POM POSITION MEMORY
- CTN3 SA1 CPRA
- SB6 8 NUMBER OF DIGITS
- SB7 PRBF
- LX1 -24 LEFT JUSTIFY BINARY DIGITS
- RJ CTS CONVERT ADDRESS
- SB7 B7+B1
- GETCM
- NZ X1,CTN4 IF END OF RECORD
- BX1 X6
- SA2 CPRA+4
- RJ FDW FORMAT DATA WORD
- BX2 X1
- SB6 10
- RJ SDI SET DISPLAY CODE INTERPRETATION
- PRINT PRBF,B7-PRBF
- SA1 CPRA
- SA2 A1+B1
- SX6 B1
- IX6 X1+X6
- SA6 A1 ADVANCE ADDRESS
- IX6 X6-X2
- NG X6,CTN3 IF MORE TO DUMP
- JP DSD1 RETURN
- CTN4 PRINT (=C*-- END OF RECORD --*)
- JP DSD1 RETURN
- CBT SPACE 4,10
- *** CBT.
- * DUMP ALL NONZERO CONTROL BUFFER TABLE ENTRIES.
- *
- * CBT,E1,E2,...,EN.
- * DUMP SELECTED CONTROL BUFFER TABLE ENTRIES.
- CBT DATA 0LCBT
- SX5 =C* CONTROL BUFFER TABLE*
- SX6 TCBE SET FORMAT TABLE POINTERS ADDRESS
- SX7 =4HCBT SET TABLE NAME ADDRESS
- SB2 /HIO/CBTP SET BUFFERED DEVICE TABLE INDEX
- RJ DBT DUMP *CBT*
- EQ DSD1 RETURN
- CCT SPACE 4,10
- *** CCT.
- * DUMP ALL NONZERO CHANNEL CONTROL TABLE ENTRIES.
- *
- * CCT,E1,E2,...,EN.
- * DUMP SELECTED CHANNEL CONTROL TABLE ENTRIES.
- CCT DATA 0LCCT
- SX5 =C* CHANNEL CONTROL TABLE*
- SX6 TCCE SET FORMAT TABLE POINTERS ADDRESS
- SX7 =4HCCT SET TABLE NAME ADDRESS
- SB2 /HIO/CCTP SET BUFFERED DEVICE TABLE INDEX
- RJ DBT DUMP *CCT*
- EQ DSD1 RETURN
- CM SPACE 4,4
- *** CM.
- *
- * SET MEMORY TYPE TO *CM*. SUBSEQUENT C, D AND E DIRECTIVES
- * APPLY TO CENTRAL MEMORY.
- CM DATA 0LCM
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ LDC LIST DIRECTIVE
- RJ SCM SELECT CENTRAL MEMORY
- SA6 US+1 SET USER CONTROLLED MEMORY NAME (SUBTITLE)
- SA7 UI SET USER CONTROLLED MEMORY RANDOM INDEX
- BX7 X7-X7 CLEAR EXTENDED MEMORY ERROR FLAG
- SA7 EE
- JP DSD1 RETURN
- CP SPACE 4,54
- *** CP.
- * DUMP ALL ACTIVE CONTROL POINT AND PSEUDO-CONTROL POINT AREAS.
- *
- * CP,N1,N2,...,NN.
- * DUMP SELECTED CONTROL POINT (ONLY) AREAS.
- *
- * NN = CONTROL POINT NUMBER. NN MAY BE OF THE
- * FORM *NN/OPS* WHERE OPS IS A STRING OF UP TO 10 CHARACTERS
- * SELECTING UP TO 10 OF THE FOLLOWING 11 LIST OPTIONS AT ONE
- * TIME-
- *
- * X DUMP EXCHANGE PACKAGE, PARAMETER SUMMARY,
- * AND EJT ENTRY.
- *
- * T PRINT DETAILED DUMP OF CONTROL POINT AREA. AN
- * ENGLISH DESCRIPTION OF EACH PARAMETER FIELD
- * IS PRINTED. EACH WORD IS LISTED WITH ITS SYSTEXT
- * TAG.
- *
- * A DUMP THE JOB DAYFILE BUFFER IN *E* FORMAT.
- * ALSO, DUMP THE CURRENT BUFFER LINE BY LINE.
- *
- * F PRINT THE FNT/FST, EST AND MASS STORAGE TRACK CHAIN
- * (IF ANY) FOR ALL FILES ATTACHED TO THIS CONTROL
- * POINT.
- *
- * C DUMP THE CONTROL POINTS FIELD LENGTH IN *C* FORMAT.
- *
- * D DUMP FIELD LENGTH IN *D* FORMAT.
- *
- * E DUMP FIELD LENGTH IN *E* FORMAT.
- *
- * G DUMP THE CONTROL POINT AREA IN *C* FORMAT.
- *
- * H DUMP THE CONTROL POINT AREA IN *D* FORMAT.
- *
- * I DUMP THE CONTROL POINT AREA IN *E* FORMAT.
- *
- * M DUMP USER EXTENDED MEMORY FIELD LENGTH IN *D* FORMAT.
- *
- * N DUMP NEGATIVE FIELD LENGTH IN *D* FORMAT.
- *
- * P DUMP AND ANALYZE ALL ACTIVE PPUS ASSOCIATED WITH THE
- * CONTROL POINT.
- *
- * IF OPS IS NOT SPECIFIED, THE DEFAULT VALUE *XTAF* IS USED.
- * THE DEFAULT MAY BE CHANGED WITH THE *CPO* DIRECTIVE. WHEN
- * SPECIFIED, OPS APPLIES ONLY TO THE CONTROL POINT NUMBER
- * WITH WHICH IT IS ASSOCIATED ON THE DIRECTIVE STATEMENT.
- *
- * FOR TERMINAL OUTPUT, THE COMMAND FORMAT IS -
- *
- * CP.
- *
- * CP/PCP NUMBER AND CPA/PCPA ADDRESS ARE LISTED FOR EACH
- * CONTROL POINT AND PSEUDO-CONTROL POINT.
- *
- * NONE OF THE LIST OPTIONS ARE EXCLUSIVE, I.E., IF BOTH *D* AND
- * *E* ARE SPECIFIED, FIELD LENGTH IS DUMPED TWICE, ONCE IN *D*
- * FORMAT AND ONCE IN *E* FORMAT.
- CP DATA 0LCP
- SX6 0
- SA6 FW SET CPA FWA - CPLEN
- SA6 OP SET NO OFFSET
- SA1 TF
- NZ X1,CPTN IF TERMINAL OUTPUT
- CPP0 RJ BCP BEGIN CONTROL POINT DUMP
- RJ LDC
- CPP1 RJ SCP SELECT NEXT CONTROL POINT TO DUMP
- ZR X1,DSD1 IF NO MORE TO DUMP
- SA1 PI
- BX6 X1
- SA6 CPPA SAVE POINTER INDEX
- RJ DCP DUMP SELECTED CONTROL POINT
- SA1 CPPA
- BX6 X1
- SA6 PI RESTORE POINTER INDEX
- JP CPP1 CONTINUE
- CPPA BSS 1 POINTER INDEX
- * TERMINAL OUTPUT PROCESSOR.
- CPTN SA2 NC SET LAST CP NUMBER + 1
- SX2 X2+2
- CPN0 LX2 7 COMPUTE CPA/PCPA LWA+1
- IX6 X6+X2 ADD PCPA OFFSET
- SA6 LW
- SA5 FW PRESET CONTROL POINT AREA ADDRESS
- SX5 X5+CPLEN
- CPN1 PRINT (=2C )
- RJ PEC PRINT EIGHT CONTROL POINTS
- SA1 LW
- IX1 X5-X1
- NG X1,CPN1 IF MORE CONTROL POINTS TO PROCESS
- SA2 OP
- NZ X2,DSD1 IF THROUGH DUMPING PCP-S
- SA1 F.TCMT GET PCPA FWA
- SA1 X1+PCPP
- SA3 LW SET PCPA OFFSET
- SX5 X1
- IX6 X5-X3
- ZR X5,DSD1 IF NO PCP-S DEFINED
- SA6 A2
- SA2 ME SET NEW LWA+1
- LX2 7
- IX6 X2+X6 ADD PCPA OFFSET
- SA6 A3
- EQ CPN1 DISPLAY PCP-S
- CPO SPACE 4,4
- *** CPO,OPS.
- *
- * RESET THE DEFAULT LIST OPTION STRING FOR CONTROL POINT
- * DUMPS TO *OPS*.
- CPO DATA 0LCPO
- RJ ASN ASSEMBLE OPTION STRING
- SA6 CO UPDATE DEFAULT OPTION LIST
- JP DSD1 RETURN
- CT SPACE 4,10
- *** CT.
- *
- * DUMP CHANNEL TABLES IN *D* FORMAT.
- CT DATA 0LCT
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT GET FWA OF CTIL TABLE
- SA2 X1+CHTP
- AX2 12
- SX6 X2
- SX7 X6+CTALL GET LWA+1 OF CTIL TABLE
- SX5 =C* CHANNEL STATUS TABLE*
- SB3 B1 SET *D* FORMAT
- IX4 X6+X1 SET ADDRESS OF READ FROM CORE
- RJ DTB DUMP CTIL TABLE
- SB3 -B1 SET NO PAGE EJECT
- SA1 CPRA+1 GET FWA OF EJTA TABLE
- BX6 X1
- SX7 X6+CTALL GET LWA+1 OF EJTA TABLE
- SX5 =C* EJT ASSIGNMENT TABLE*
- SA1 F.TCMT SET ADDRESS OF READ FROM CORE
- IX4 X6+X1
- RJ DTB DUMP EJTA TABLE
- SB3 -B1 SET NO PAGE EJECT
- SA1 CPRA+1 GET FWA OF CCTL TABLE
- BX6 X1
- SX7 X6+CTALL GET LWA+1 OF CCTL TABLE
- SX5 =C* CHANNEL CONTROLWARE TABLE*
- SA1 F.TCMT SET ADDRESS OF READ FROM CORE
- IX4 X6+X1
- RJ DTB DUMP CCTL TABLE
- EQ DSD1 RETURN
- D SPACE 4,9
- *** D,FWA,LWA+1.
- *
- * DUMP MEMORY IN BYTE FORMAT WITH DISPLAY CODE INTERPRETATION.
- * WORDS ARE LISTED COLUMNWISE WITH THREE COLUMNS PER
- * PAGE. REPETITIVE DATA IS SUPPRESSED.
- *
- * FOR TERMINAL OUTPUT, DATA IS LISTED ONE WORD PER LINE
- * WITH DISPLAY CODE INTERPRETATION AND NO PAGINATION IS
- * PROCESSED.
- D DATA 0LD
- SA1 EE
- NZ X1,ERR5 IF EXTENDED MEMORY ERROR FLAG SET
- SA1 TF
- NZ X1,DTN IF TERMINAL OUTPUT
- SX6 1 *D* FORMAT CODE
- JP CPR1 PROCESS DUMP
- * TERMINAL OUTPUT PROCESSOR.
- DTN SA1 =4000005B FORMAT PARAMETERS
- JP CTN1 PROCESS DUMP
- DAYFILE SPACE 4,10
- *** DAYFILE.
- *
- * DUMP THE SYSTEM DAYFILE BUFFER IN *E* FORMAT.
- * ALSO, DUMP THE CURRENT BUFFER LINE BY LINE.
- DAYFILE DATA 0LDAYFILE
- SX7 B0
- EQ ACN1 DUMP SYSTEM DAYFILE
- DB SPACE 4,10
- *** DB.
- * DUMP ALL ACTIVE DISK BUFFERS, USING MACHINE ID FROM LOW CORE
- * ON DUMP FILE.
- *
- * DB,ID.
- * DUMP ALL ACTIVE DISK BUFFERS, USING MACHINE ID ON DIRECTIVE.
- *
- * DB,,D1,D2,...,DN.
- * DUMP SELECTED DISK BUFFERS, USING MACHINE ID FROM LOW CORE
- * ON DUMP FILE.
- *
- * DB,ID,D1,D2,...,DN.
- * DUMP SELECTED DISK BUFFERS, USING MACHINE ID ON DIRECTIVE.
- DB DATA 0LDB
- RJ LDC LIST DIRECTIVE
- RJ SCM SET CENTRAL MEMORY
- SX6 B0
- RJ SRA SET REFERENCE ADDRESS
- SA2 F.TCMT
- SA1 X2+BIOL
- AX1 24
- SX1 X1
- ZR X1,ERR34 IF NO BUFFERED DEVICES DEFINED
- SX6 X1+/HIO/CBTP
- SA6 CPRA
- SB2 A6
- RJ POM POSITION TO *BDT* ENTRY
- GETCM
- SA6 BE STORE *BDT* ENTRY FOR *CBT*
- RJ ASN GET NEXT PARAMETER
- BX5 X6
- NG B6,DBR1 IF MACHINE ID ON DIRECTIVE
- SA2 F.TCMT
- SA1 X2+MMFL GET MACHINE ID FROM LOW CORE
- MX0 12
- BX5 X0*X1
- DBR1 RJ FFD FIND FWA OF DISK BUFFER AREA
- SX6 B1 SET *D* FORMAT
- SA6 CPRA+4
- SB7 B0 ASSUME OCTAL BASE
- RJ ASD GET NEXT PARAMETER
- SX5 0 PRESET FOR NO ACTIVE DISK BUFFERS
- NG B6,DBR5 IF SELECTED DISK BUFFERS TO BE DUMPED
- GT B6,ERR6 IF NULL DISK BUFFER NUMBER
- * DUMP ALL ACTIVE DISK BUFFERS.
- SX6 0
- SA6 DBRA PRESET ENTRY NUMBER
- DBR2 SA3 DBRA INCREMENT ENTRY NUMBER
- SX6 X3+B1
- SA6 A3
- RJ SCM SET CENTRAL MEMORY
- SA4 A3 GET NEXT ENTRY NUMBER
- RJ CLE CHECK IF LAST ENTRY
- NG X3,DBR3 IF MORE BUFFERS TO DUMP
- NZ X5,DSD1 IF ACTIVE DISK BUFFERS DUMPED
- EQ ERR37 *NO ACTIVE DISK BUFFERS.*
- DBR3 SA3 BE GET FWA OF *CBT* ENTRY
- SX3 X3
- IX6 X0+X3
- SA6 CPRA
- SB2 A6+
- RJ POM POSITION TO *CBT* ENTRY
- GETCM BUF,/HIO/CBTL READ ENTRY INTO CORE
- * THE FOLLOWING TEST MUST BE CHANGED TO DUMP
- * DISK BUFFERS UNDER DIFFERENT CONDITIONS.
- SA1 BUF+/HIO/LSLK TEST ACTIVE COUNT IN *CBT* ENTRY
- AX1 48
- ZR X1,DBR2 IF EMPTY DISK BUFFER
- SA2 =11HDISK BUFFER
- SB6 12
- SA1 DBRA GET ENTRY NUMBER
- LX1 -12
- RJ PEN PRINT ENTRY NUMBER
- RJ SEC SET EXTENDED MEMORY
- SA4 DBRA DISK BUFFER NUMBER
- SX4 X4-1 ALLOW FOR NO ENTRY ZERO
- SX2 /HIO/LSLB
- LX2 6
- IX4 X2*X4 RELATIVE DISK BUFFER FWA ON DUMP FILE
- SA1 DA DISK BUFFER AREA FWA
- IX6 X1+X4
- IX7 X6+X2
- SA6 CPRA STORE DISK BUFFER FWA
- SA7 A6+B1 STORE DISK BUFFER LWA+1
- SB2 A6
- RJ POM POSITION TO DISK BUFFER FWA
- SB2 CPRA
- RJ PMD DUMP DISK BUFFER
- PRINT (=2C )
- SX5 B1 INDICATE ACTIVE DISK BUFFER EXISTS
- EQ DBR2 CHECK NEXT BUFFER
- * DUMP SELECTED DISK BUFFERS.
- DBR4 SB7 B0 ASSUME OCTAL BASE
- RJ ASD GET NEXT ENTRY NUMBER
- ZR B6,DSD1 IF NO MORE BUFFERS TO DUMP
- DBR5 NZ X4,ERR6 IF CONVERSION ERROR
- ZR X6,ERR38 IF INCORRECT DISK BUFFER NUMBER
- SA6 DBRA
- SX4 X6
- RJ CLE CHECK IF VALID ENTRY NUMBER
- PL X3,ERR38 IF INCORRECT DISK BUFFER NUMBER
- SX1 X4 GET ENTRY NUMBER
- LX1 -12
- SA2 =11HDISK BUFFER
- SB6 12
- RJ PEN PRINT ENTRY NUMBER
- SA2 DA
- SA4 DBRA GET ENTRY NUMBER
- SX4 X4-1 ALLOW FOR NO ENTRY ZERO
- SX1 /HIO/LSLB
- LX1 6
- IX4 X1*X4 RELATIVE DISK BUFFER FWA IN DUMP FILE
- IX6 X4+X2
- IX7 X1+X6
- SA6 CPRA STORE DISK BUFFER FWA
- SA7 A6+B1 STORE DISK BUFFER LWA+1
- SB2 A6
- RJ POM POSITION TO DISK BUFFER
- SB2 CPRA
- RJ PMD DUMP DISK BUFFER
- PRINT (=2C )
- EQ DBR4 CHECK NEXT ENTRY NUMBER
- DBRA BSS 1 DISK BUFFER NUMBER
- DBW SPACE 4,10
- *** DBW.
- * PRINT BUFFERED DEVICE TABLE LIST CONTROL WORDS, BUFFER
- * STATISTICS TABLE, AND PP - I/O BUFFER LINK TABLE.
- DBW DATA 0LDBW
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ LDC LIST DIRECTIVE
- SX6 B0
- RJ SRA SET REFERENCE ADDRESS
- RJ SCM SET CENTRAL MEMORY
- SA1 F.TCMT
- SA1 X1+BIOL
- AX1 24
- SX6 X1
- ZR X6,ERR34 IF NO BUFFERED DEVICES DEFINED
- * DUMP *BDT* LIST CONTROL WORDS.
- SA6 FW SET DUMP FILE FWA
- SX6 X6+/HIO/EMTP
- SA6 CPRA
- SB2 A6+
- RJ POM POSITION TO FWA OF LIST WORDS
- GETCM BUF,/HIO/BDTL-/HIO/EMTP READ LIST WORDS INTO CORE
- PRINT (=2C )
- PRINT (=C+ *BDT* LIST CONTROL WORDS+)
- PRINT (=2C )
- SA1 TLCW GET FORMAT TABLE POINTERS
- SA2 FW
- SB2 X2-BUF+/HIO/EMTP
- SB2 -B2 SET FWA OF WORDS IN CORE
- RJ GTD GENERATE DETAILED TABLE DUMP
- * DUMP BUFFER STATISTICS TABLE.
- PRINT (=2C )
- PRINT (=2C )
- PRINT (=C* BUFFER STATISTICS TABLE*)
- PRINT (=2C )
- SA1 F.TCMT
- SA1 X1+BIOL
- AX1 24
- SX3 X1+/HIO/IBSP
- RJ PCM POSITION TO *BDT* *IBST* ENTRY
- GETCM
- SX6 X6
- SA6 FW STORE FWA *IBST* IN DUMP FILE
- SX3 X6
- RJ PCM POSITION TO FWA OF *IBST*
- GETCM BUF,/HIO/IBSL READ *IBST* INTO CORE
- SA1 TIBS GET FORMAT TABLE POINTERS
- SA2 FW
- SB2 X2-BUF
- SB2 -B2 SET FWA OF *IBST* IN CORE
- RJ GTD GENERATE DETAILED TABLE DUMP
- * DUMP PP - I/O BUFFER LINK TABLE.
- PRINT (=2C )
- PRINT (=2C )
- PRINT (=C* PP - I/O BUFFER LINK TABLE*)
- PRINT (=2C )
- SA1 F.TCMT
- SA1 X1+BIOL
- AX1 24
- SX3 X1+/HIO/PLTP
- RJ PCM POSITION TO *BDT* *PLT* ENTRY
- GETCM
- SX6 X6
- SA6 FW STORE FWA OF LINK TABLE IN DUMP FILE
- SX3 X6
- RJ PCM POSITION TO FWA OF LINK TABLE
- GETCM BUF,/HIO/PLTL READ *PLT* INTO CORE
- SA1 TPLT GET FORMAT TABLE POINTERS
- SA2 FW
- SB2 X2-BUF
- SB2 -B2 SET FWA OF *PLT* IN CORE
- RJ GTD GENERATE DETAILED TABLE DUMP
- EQ DSD1 RETURN
- DDB SPACE 4,3
- *** DDB.
- *
- * DUMP DAYFILE DUMP BUFFER IN *D* FORMAT.
- DDB DATA 0LDDB
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+DFPP
- LX2 -12
- SX6 X2 FWA DAYFILE DUMP BUFFER
- SX7 X6+DFDS
- SX5 =C* DAYFILE DUMP BUFFER*
- SB3 B1 SET *D* FORMAT
- SX4 B0 SET READ FROM DUMP FILE
- RJ DTB DUMP BUFFER
- EQ DSD1 RETURN
- DISPOSE SPACE 4,12
- *** DISPOSE.
- * DISPOSE,UN.
- *
- * UN = USER NAME.
- *
- * DISPOSE ALTERNATE LIST FILE TO PRINT QUEUE. LIST OUTPUT
- * REVERTS TO ORIGINAL OUTPUT FILE. HAS NO EFFECT IF OUTPUT
- * HAS NOT BEEN ASSIGNED TO AN ALTERNATE FILE VIA THE OUTPUT
- * DIRECTIVE. IF UN IS NOT SPECIFIED, THE LISTING IS PRINTED AT
- * THE CENTRAL SITE. IF IT IS SPECIFIED, THE LISTING IS ROUTED
- * TO THE REMOTE BATCH TERMINAL LOGGED IN UNDER THAT USER
- * NUMBER.
- DISPOSE DATA 0LDISPOSE
- SA1 OF
- SX1 X1-A
- NZ X1,DSD1 IF ALTERNATE OUTPUT NOT ACTIVE
- RECALL A
- WRITER X2,R TERMINATE ALTERNATE FILE
- SA1 CH CHECK DIRECTIVE CARD SEPERATOR
- SA1 X1+
- SX1 X1-1R.
- ZR X1,DSP1 IF USER NAME NOT SPECIFIED
- RJ ASN ASSEMBLE USER NAME
- SA6 DSPB+1 SAVE USER NAME
- SX2 FRDC+FRTI
- EQ DSP2 PROCESS ROUTE
- DSP1 SX2 FRDC+FRCS
- DSP2 SA1 DSPA+1 SAVE FLAGS
- MX5 42
- BX7 X5*X1
- BX7 X7+X2
- SA7 A1
- SA1 A GET FILE NAME
- BX7 X5*X1
- SA7 DSPA
- ROUTE DSPA,R
- SX6 L RESET CONTROLS
- SA6 OF RESET OUTPUT FILE FET POINTER
- MOVE 6,OTPA,CC RESET LIST CONTROLS
- SA1 CC
- BX6 X1
- SA6 CCCH RESTORE CARRIAGE CONTROL CHARACTER
- JP DSD1 RETURN
- DSPA VFD 42/0LALTRNT,18/0
- VFD 24/0,12/2HPR,6/0,18/FRDC+FRCS
- VFD 36/0,24/-DSPB
- BSSZ 4
- DSPB CON 0 FAMILY
- CON 0 USER NAME
- DP SPACE 4,3
- *** DP.
- *
- * DUMP DAYFILE BUFFER POINTERS IN *D* FORMAT.
- DP DATA 0LDP
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+DFPP
- LX2 24
- SX6 X2+
- SB3 B1 SET *D* FORMAT
- SX7 X6+3*EXDF SET LWA+1 TO BE DUMPED
- SX5 =C* DAYFILE BUFFER POINTERS*
- SX4 0 SET READ FROM DUMP FILE
- RJ DTB DUMP BUFFER POINTERS
- EQ DSD1 RETURN
- E SPACE 4,4
- *** E,FWA,LWA+1.
- *
- * DUMP MEMORY IN WORD FORMAT WITH INTERPRETATION,
- * 4 WORDS PER LINE.
- E DATA 0LE
- SA1 EE
- NZ X1,ERR5 IF EXTENDED MEMORY ERROR FLAG SET
- SX6 2 *E* FORMAT CODE
- JP CPR1 PROCESS DUMP
- EC SPACE 4,15
- *** EC,FWA.
- * EC,EMID,FWA.
- *
- * SET MEMORY TYPE TO *EXTENDED MEMORY*. SUBSEQUENT C, D AND
- * E DIRECTIVES APPLY TO EXTENDED MEMORY/LCME.
- *
- * EMID - SET TYPE OF EXTENDED MEMORY FOR CYBER 170-865/875.
- * *UEM* SETS MEMORY TYPE TO UEM, *ESM* SETS TYPE TO ESM.
- * IF OMITTED, THE DEFAULT IS UEM FOR 800 SERIES MAINFRAMES,
- * AND ESM FOR ALL OTHERS, INCLUDING CYBER 170-865/875.
- *
- * FWA - FIRST WORD ADDRESS/1000B FOR UEM.
- * IF OMITTED, THE FIRST WORD ADDRESS FOR UEM IS OBTAINED
- * FROM THE *UEML* WORD IN CMR FOR A CYBER 170-8X5.
- EC DATA 0LEC
- RJ LDC LIST DIRECTIVE CARD
- SA1 .ECS
- MX0 18
- SEARCH TDIR,X1,X0
- NZ X2,ECB1 IF EXTENDED MEMORY RECORD FOUND
- SA1 CH SAVE STRING POINTER
- BX6 X1
- SA6 ECBA
- RJ ASN ASSEMBLE PARAMETER
- ZR X6,ECB0 IF NULL PARAMETER
- SA2 =3LUEM
- BX5 X6-X2
- ZR X5,ECB0 IF UEM SPECIFIED
- SA2 =3LESM
- BX5 X6-X2
- ZR X5,ECB1 IF ESM SPECIFIED
- SA1 ECBA SET POINTER TO RE-READ FWA
- BX6 X1
- SA6 CH
- ECB0 SA1 CE
- ZR X1,ECB1 IF NO CM EXTENSION (ERROR)
- RJ SEM SET UNIFIED EXTENDED MEMORY (UEM)
- PL X3,ECB1 IF NO UEM DEFINED (ERROR)
- SA6 US+1 SET USER CONTROLLED MEMORY NAME (SUBTITLE)
- SA7 UI SET USER CONTROLLED RANDOM INDEX
- SB7 B0+ SET OCTAL BASE
- RJ ASD ASSEMBLE FWA FROM EC DIRECTIVE
- ZR X6,DSD1 IF DEFAULT UEM BASE ADDRESS
- LX6 9
- SA6 MB
- EQ DSD1 RETURN
- ECB1 RJ SEC SET EXTENDED CORE STORAGE
- SA6 US+1 SET USER CONTROLLED MEMORY NAME (SUBTITLE)
- SA7 UI SET USER CONTROLLED MEMORY RANDOM INDEX
- JP DSD1 RETURN
- ECBA CON 0 STRING POINTER
- EICB SPACE 4,10
- *** EICB.
- *
- * DUMP THE EI COMMUNICATIONS BLOCK WITH INTERPRETATION
- * OF THE VARIOUS FIELDS. IF THE DFT/OS BUFFER IS PRESENT,
- * IT WILL BE DUMPED IN 64-BIT *I* FORMAT.
- EICB DATA 0LEICB
- RJ LDC LIST DIRECTIVE
- SA1 ED
- ZR X1,EIC2 IF *EDD* DUMP
- SA1 .DSB CHECK FOR *DSB* RECORD
- MX0 18
- SEARCH TDIR,X1,X0
- NZ X2,EIC1 IF FOUND
- SA1 .EIB CHECK FOR *EIB* RECORD
- MX0 18
- SEARCH TDIR,X1,X0
- ZR X2,ERR14 IF NOT FOUND
- EIC1 SA2 A2+B1 SET RANDOM INDEX
- BX6 X2
- SA6 RI
- SX3 0
- EQ EIC3 FORMAT RECORD CONTENTS
- EIC2 RJ SCM SET CENTRAL MEMORY
- SA7 RI
- SA1 F.TCMT FETCH EICB POINTER
- SA3 X1+EIBP
- MX1 -32
- BX3 -X1*X3
- ZR X3,ERR21 IF NO EICB POINTER
- EIC3 RJ PCM POSITION CENTRAL MEMORY
- GETCM BUF,/VE/DSCBL
- SX6 /VE/D7TY SET FIRST WORD OF BLOCK
- SA6 FW
- SB2 BUF
- SA1 TFEB
- RJ GTD GENERATE DETAILED TABLE DUMP
- RJ DFT PROCESS DFT/OS BUFFER
- JP DSD1 RETURN
- EJ SPACE 4,9
- *** EJ.
- * FORCE EJECT FOR NEXT DIRECTIVE.
- *
- * EJ,NN.
- * FORCE PAGE EJECT ONLY IF LESS THAN NN LINES REMAINING
- * ON THE CURRENT PAGE. NN IS DECIMAL.
- *
- * THE *EJ.* FUNCTION IS AUTOMATIC UNLESS TURNED OFF BY AN
- * *EJOFF.* DIRECTIVE.
- EJ DATA 0LEJ
- SA1 CH CHECK SEPARATOR
- SA1 X1+
- SX2 X1-1R.
- SX1 100 PRESET BIG LINE COUNT FOR EJECT
- ZR X2,EJP1 IF LINE COUNT NOT SPECIFIED
- SB7 1 SET DECIMAL BASE
- RJ ASD ASSEMBLE NN
- NZ X4,ERR6 IF CONVERSION ERROR
- SX1 X6+ SET LINE COUNT
- EJP1 RJ CPS CHECK REMAINING PAGE SPACE
- JP DSD1 RETURN
- EJOFF SPACE 4,3
- *** EJOFF.
- *
- * TURN OFF AUTO PAGE EJECT FOR EACH DIRECTIVE.
- EJOFF DATA 0LEJOFF
- SX6 1
- EFO1 SA6 EF UPDATE AUTO EJECT FLAG
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- JP DSD1 RETURN
- EJON SPACE 4,3
- *** EJON.
- *
- * TURN ON AUTO EJECT FOR EACH DIRECTIVE (DEFAULT).
- EJON DATA 0LEJON
- SX6 0
- JP EFO1
- EJT SPACE 4,10
- *** EJT.
- *
- * DUMP EXECUTING JOB TABLE WITH INTERPRETATION.
- EJT DATA 0LEJT
- STBL EJT
- SX5 =C* EXECUTING JOB TABLE*
- RJ DTI DUMP TABLE WITH INTERPRETATION
- EQ DSD1 RETURN
- EPB SPACE 4,3
- *** EPB.
- *
- * DUMP EXTENDED MEMORY/PP BUFFER IN *D* FORMAT.
- EPB DATA 0LEPB
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ SCM SET CENTRAL MEMORY
- SA1 F.TCMT
- SA2 X1+EPBP
- SX6 X2 FWA EXTENDED MEMORY/PP BUFFER
- SX4 B0 SET READ FROM DUMP FILE
- ZR X6,ERR21 IF NO EXTENDED MEMORY/PP BUFFER
- MX0 -6 GET BUFFER COUNT
- AX2 18
- SX7 102B LENGTH OF BUFFER
- BX2 -X0*X2
- IX2 X2*X7
- IX7 X6+X2 LWA+1
- SB3 B1 SET *D* FORMAT
- SX5 =C* EXTENDED MEMORY/PP BUFFER*
- RJ DTB DUMP BUFFER
- EQ DSD1 RETURN
- ERRLOG SPACE 4,3
- *** ERRLOG.
- *
- * DUMP THE ERRLOG DAYFILE BUFFER IN *E* FORMAT.
- * ALSO, DUMP THE CURRENT BUFFER LINE BY LINE.
- ERRLOG DATA 0LERRLOG
- SX7 -2
- JP ACN1
- EST SPACE 4,3
- *** EST.
- *
- * DUMP EQUIPMENT STATUS TABLE WITH INTERPRETATION.
- EST DATA 0LEST
- STBL EST SET UP TABLE POINTERS
- SX5 =C* EQUIPMENT STATUS TABLE*
- RJ DTI DUMP TABLE WITH INTERPRETATION
- EQ DSD1 RETURN
- FMFREG SPACE 4,10
- *** FMFREG.
- *
- * DUMP PP REGISTERS STORED IN *1MB* WHILE PROCESSING A FATAL
- * MAINFRAME ERROR. *1MB* PLACES THE BUFFER ADDRESS IN (IR+4).
- FMFREG DATA 0LFMFREG
- RJ LDC LIST DIRECTIVE
- PRINT (=C* PP P Q K A*)
- PRINT (=C* *)
- RJ SSB SET STRING BUFFER TO SPACES
- SX6 B0+ SET *FPP* ENTRY CONDITION
- SA6 FI
- SA6 FMFA INITIALIZE PP NUMBER
- * LOCATE *1MB* PP AND SET BUFFER ADDRESS.
- SX4 3R1MB
- LX4 42
- RJ FPP FIND *1MB* PP
- SA6 //PP SET PP NUMBER
- ZR X1,ERR7 IF *1MB* NOT FOUND
- RJ RPD READ *1MB* PP MEMORY INTO *PBUF*
- SX1 IR+4 FIND BUFFER ADDRESS IN *1MB*
- RJ RPB READ PP BYTE
- ZR X6,ERR15 IF BUFFER POINTER NOT SET
- LX6 12
- SB4 X6 SAVE BUFFER FWA
- * STORE PP NUMBER IN STRING BUFFER.
- FMF1 SA1 FMFA SET PP NUMBER
- SX2 X1-12B
- NG X2,FMF2 IF IN LOWER PP BANK
- SX1 X1+20B-12B
- FMF2 SB6 2
- SB7 PRBF+4 SET STRING BUFFER ADDRESS
- LX1 54
- RJ CTS CONVERT TO STRING BUFFER
- * STORE *P* REGISTER.
- SX1 B4+1 READ *P* FROM *1MB* BUFFER
- RJ RPB READ PP BYTE
- BX1 X6
- SB6 4
- SB7 PRBF+8
- RJ CTS CONVERT TO STRING BUFFER
- * STORE *Q* REGISTER.
- SX1 B4+3 READ *Q* FROM *1MB* BUFFER
- RJ RPB READ PP BYTE
- BX1 X6
- SB6 4
- SB7 PRBF+14
- RJ CTS CONVERT TO STRING BUFFER
- * STORE *K* REGISTER.
- SX1 B4+4 PROCESS UPPER 6 BITS OF *K*
- RJ RPB READ PP BYTE
- BX1 X6
- SB6 2
- LX1 6
- SB7 PRBF+20
- RJ CTS CONVERT TO STRING BUFFER
- SX1 B4+5 PROCESS LOWER 12 BITS OF *K*
- RJ RPB READ PP BYTE
- BX1 X6
- SB6 4
- SB7 PRBF+22
- RJ CTS CONVERT TO STRING BUFFER
- * STORE *A* REGISTER.
- SX1 B4+6 PROCESS UPPER 6 BITS OF *A*
- RJ RPB READ PP BYTE
- BX1 X6
- SB6 2
- LX1 6
- SB7 PRBF+28
- RJ CTS CONVERT TO STRING BUFFER
- SX1 B4+7 PROCESS LOWER 12 BITS OF *A*
- RJ RPB READ PP BYTE
- BX1 X6
- SB6 4
- SB7 PRBF+30
- RJ CTS CONVERT TO STRING BUFFER
- * PRINT DATA FOR ONE PP.
- SX6 B4+8 SAVE *1MB* BUFFER ADDRESS
- SA6 FMFB
- PRINT PRBF,B7-PRBF PRINT COMPLETED PP REGISTER LINE
- SA1 FMFA INCREMENT PP NUMBER
- SX6 X1+1
- SA2 FMFB RESTORE *1MB* BUFFER ADDRESS
- SB4 X2
- SA3 NP
- SA6 A1
- IX3 X6-X3
- NG X3,FMF1 IF MORE PP-S TO PROCESS
- JP DSD1 RETURN
- FMFA BSS 1 PP COUNTER
- FMFB BSS 1 *1MB* BUFFER ADDRESS SAVE AREA
- FNT SPACE 4,3
- *** FNT.
- *
- * DUMP FILE NAME TABLE WITH INTERPRETATION.
- FNT DATA 0LFNT
- STBL FNT SET TABLE POINTERS
- SX5 =C* SYSTEM FILENAME TABLE*
- RJ DTI DUMP TABLE WITH INTERPRETATION
- EQ DSD1 RETURN
- FOT SPACE 4,10
- *** FOT.
- *
- * DUMP FAMILY ORDINAL TABLE IN *D* FORMAT.
- FOT DATA 0LFOT
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+FOTP SET TABLE POINTER
- LX2 24
- SX6 X2 FWA OF TABLE
- LX2 12
- MX0 -12
- BX2 -X0*X2 MAXIMUM NUMBER OF TABLE ENTRIES
- IX7 X6+X2 LWA+1 OF TABLE
- SB3 B1 SET *D* FORMAT
- SX4 B0 SET READ FROM DUMP FILE
- SX5 =C* FAMILY ORDINAL TABLE*
- RJ DTB DUMP TABLE
- EQ DSD1 RETURN
- FTT SPACE 4,10
- *** FTT.
- * DUMP ALL NONZERO FUNCTION TIMEOUT TABLE ENTRIES.
- *
- * FTT,E1,E2,...,EN.
- * DUMP SELECTED FUNCTION TIMEOUT TABLE ENTRIES.
- FTT DATA 0LFTT
- SX5 =C* FUNCTION TIMEOUT TABLE*
- SX6 TFTE SET FORMAT TABLE POINTERS ADDRESS
- SX7 =4HFFT SET TABLE NAME ADDRESS
- SB2 /HIO/FTTP SET BUFFERED DEVICE TABLE INDEX
- RJ DBT DUMP *FTT*
- EQ DSD1 RETURN
- HAT SPACE 4,10
- *** HAT.
- * DUMP ALL NONZERO HASH TABLE ENTRIES.
- *
- * HAT,E1,E2,...,EN.
- * DUMP SELECTED HASH TABLE ENTRIES.
- HAT DATA 0LHAT
- SX5 =C* HASH TABLE*
- SX6 THAE SET FORMAT TABLE POINTERS ADDRESS
- SX7 =4HHAT SET TABLE NAME ADDRESS
- SB2 /HIO/HATP SET BUFFERED DEVICE TABLE INDEX
- RJ DBT DUMP *HAT*
- EQ DSD1 RETURN
- II SPACE 4,25
- *** I,HFBN,HLBN,ASID.
- *
- * DUMP 64-BIT MEMORY IN INSTRUCTION PARCEL FORMAT.
- *
- * HFBN SPECIFIES FIRST BYTE NUMBER (HEXADECIMAL)
- * TO BE DUMPED (MANDATORY).
- *
- * HLBN SPECIFIES LAST BYTE NUMBER PLUS ONE
- * (HEXADECIMAL) TO BE DUMPED. IF HLBN IS
- * OMITTED, HFBN+8 IS ASSUMED BY DEFAULT.
- *
- * ASID SPECIFIES THE ACTUAL SEGMENT IDENTIFIER OF
- * THE MEMORY TO BE DUMPED. IF ASID=1 THEN
- * HFBN AND HLBN ARE ADDRESSES WITHIN THE
- * CYBER 170-8X5 ERROR INTERFACE PACKAGE. IF
- * OMITTED, HFBN AND HLBN ARE REAL MEMORY
- * ADDRESSES.
- *
- * THE I DIRECTIVE CAUSES THE SPECIFIED LOCATIONS OF
- * CENTRAL MEMORY TO BE DUMPED IN FOUR GROUPS OF
- * FOUR HEXADECIMAL DIGITS, THREE WORDS PER LINE
- * (ONE WORD PER LINE FOR TERMINAL OUTPUT) WITH
- * ASCII CHARACTER EQUIVALENTS. REPETITIVE DATA
- * IS SUPPRESSED.
- II DATA 0LI
- SX6 B0
- IPR1 SA6 IPRA+2 SET FORMAT CODE
- RJ LDC LIST DIRECTIVE CARD
- RJ GHA GET HARDWARE ADDRESS
- ZR B6,ERR6 IF NOT SPECIFIED
- MX0 57 FORCE MULTIPLE OF 8 BYTES
- BX6 X0*X6
- SA6 IPRA SET FIRST BYTE NUMBER
- SX1 8
- IX6 X6+X1
- SA6 A6+B1 PRESET LAST BYTE + 1
- RJ GHA GET SECOND HARDWARE ADDRESS
- ZR B6,IPR3 IF NO SECOND PARAMETER
- MX0 57 ROUND UP TO 8-BYTE MULTIPLE
- SX1 7
- IX6 X6+X1
- BX6 X0*X6
- SA6 IPRA+1 SET LAST BYTE + 1
- RJ ASX CHECK FOR ASID
- IPR3 SA1 IPRA CHECK CONSISTENCY
- SA2 A1+B1
- SB2 32
- AX4 X1,B2 ISOLATE POSSIBLE ASID
- AX5 X2,B2
- NZ X4,IPR4 IF ASID GIVEN FOR FBA
- BX4 X5
- IPR4 ZR X5,IPR5 IF NO ASID GIVEN FOR LBA
- BX5 X4-X5
- NZ X5,ERR6 IF ASID-S DO NOT MATCH
- IPR5 LX3 X6,B2
- ZR X4,IPR6 IF NO ASID IN EITHER FBO, LBO
- LX3 X4,B2
- NZ X6,ERR6 IF ASID ALSO SPECIFICALLY GIVEN
- IPR6 BX7 X2+X3
- BX6 X1+X3
- SA7 A2
- SA6 A1
- SB2 A1
- RJ DSM DUMP SIXTY-FOUR BIT MEMORY
- EQ DSD1 RETURN TO PROCESS NEXT DIRECTIVE
- IPRA BSS 0 DUMP PARAMETERS
- CON 0 FIRST BYTE NUMBER
- CON 0 LAST BYTE NUMBER + 1
- CON 0 FORMAT CODE
- IAF SPACE 4,10
- *** IAF,OPS.
- *
- * WHERE OPS IS A STRING OF UP TO 5 CHARACTERS SELECTING
- * VARIOUS DUMP OPTIONS AS FOLLOWS-
- *
- * C THE IAF COMMAND TABLE IS ANALYZED.
- *
- * E THE IAF REENTRY TABLE IS PRINTED IN BYTE FORMAT WITH
- * DISPLAY CODE INTERPRETATION. EACH LINE OF TWO WORDS
- * INDICATES ITS ORDINAL WITHIN THE TABLE.
- *
- * L THE POT LINK TABLE IS PRINTED IN BYTE FORMAT, WITH
- * LINK ORDINALS PRINTED FOR EVERY FOUR LINKS. THE POTS
- * ARE DUMPED, FOUR WORDS PER LINE, TWO LINES PER POT,
- * WITH DISPLAY CODE INTERPRETATION.
- *
- * P ALL COPIES OF TLX, 1TA, 1TN, AND 1TO ARE
- * ANALYZED. ALL COPIES OF 1RO AND 1RI THAT ARE
- * ASSOCIATED WITH CONTROL POINTS OF IAF ORIGIN ARE
- * ANALYZED.
- *
- * T THE IAF TERMINAL TABLE IS ANALYZED. EACH WORD OF
- * THE TERMINAL TABLE IS PRINTED WITH ITS SYMBOL AND IS
- * SPLIT INTO THE APPROPRIATE PARAMETER FIELDS WITH
- * DESCRIPTION.
- *
- *
- * IN ALL CASES, THE IAF CURRENT ENTRY WORD *SSPA* IS PRINTED
- * FIRST IN BYTE FORMAT.
- *
- *
- * IAF.
- *
- * IS EQUIVALENT TO *IAF,ETLP.*.
- IAF DATA 0LIAF
- RJ SCM SET CENTRAL MEMORY
- SX3 /REM/VCPT/
- SX5 IFSI
- LX5 24
- BX5 X5+X3
- RJ ISS INITIALIZE FOR SUB-SYSTEM DUMP
- GETCM SSBF,/REM/TXORG+1 READ IAF POINTERS AND *SSPA*
- SX1 3
- RJ CPS CHECK PAGE SPACE
- SA5 IAFA
- RJ PCW PRINT CONTENTS OF WORDS
- SA5 IAFB
- RJ DSS DUMP IAF SUBSYSTEM
- JP DSD1 RETURN
- IAFA BSS 0
- VFD 36/6L*SSPA*,6/0,18//REM/TXORG
- DATA 40HIAF CURRENT ENTRY
- VFD 60/0
- IAFB VFD 60/0LETLP
- VFD 36/0,6/1RC,18/DTC
- VFD 36/0,6/1RE,18/DTE
- VFD 36/0,6/1RL,18/DTL
- VFD 36/0,6/1RP,18/DTP
- VFD 36/0,6/1RT,18/DTT
- VFD 60/0
- IOUCR SPACE 4,15
- *** IOUCR.
- * SPECIFIES THAT ALL CONCURRENT PP CHANNEL REGISTERS
- * WILL BE PROCESSED.
- *
- * IOUCR,C1,C2,,,,CN.
- * PROCESS THE CONCURRENT PP CHANNEL REGISTERS SPECIFIED
- * ON DIRECTIVE CARD.
- *
- * THE *IOUCR* DIRECTIVE CAUSES THE CHANNEL NUMBER, CHANNEL
- * TYPE, IOU STATUS REGISTER, T-REGISTER, FAULT STATUS MASK
- * AND TEST MODE OPERAND GENERATOR (TEST SEED) TO BE PRINTED
- * FOR THE THE CHANNELS SPECIFIED. THE CHANNEL NUMBER AND
- * TYPE WILL BE PRINTED IN OCTAL, ALL OTHER DATA IS PRINTED
- * IN HEXADECIMAL.
- IOUCR DATA 0LIOUCR
- RJ LDC LIST DIRECTIVE CARD
- SX6 B0+
- RJ IPD INITIALIZE FOR 16-BIT DUMP
- SA1 C4
- ZR X1,ERR14 IF NO *CPP* CHANNELS ON MAINFRAME
- * OUTPUT *CCH* CHANNEL DATA HEADER.
- PRINT (=2C )
- PRINT ICRB
- PRINT ICRC
- * SELECT NEXT CHANNEL.
- ICR1 SA1 PI
- ZR X1,ICR2 IF CHANNEL NUMBERS ON DIRECTIVE CARD
- SA1 //PP
- SA2 C4
- IX2 X1-X2
- PL X2,DSD1 IF NO MORE CHANNELS TO DUMP
- EQ ICR3 DUMP NEXT CHANNEL
- ICR2 SB7 B0+
- RJ ASD
- ZR B6,DSD1 IF NO MORE CHANNELS TO DUMP
- NZ X4,ERR6 IF CONVERSION ERROR
- SA2 C4
- IX7 X6-X2
- PL X7,ERR6 IF CHANNEL NUMBER ERROR
- SA6 //PP
- * GET CHANNEL DATA.
- ICR3 SA1 .CCR SEARCH FOR IOU CHANNEL RECORD
- MX0 18
- SEARCH TDIR,X1,X0
- ZR X2,ERR14 IF RECORD ID NOT IN DIRECTORY
- SA1 A2+B1
- BX6 X1
- SA6 RI
- SA3 //PP CHANNEL NUMBER
- SX1 11D
- IX3 X3*X1 CONVERT TO BYTE NUMBER
- RJ FBP FIND BYTE POSITION
- ICR4 RJ NXB GET CHANNEL NUMBER
- BX5 X1
- LX5 12
- RJ NXB GET CHANNEL TYPE
- BX6 X5+X1
- SA6 ICRD
- BX5 X5-X5
- SB6 6
- SB7 B0+
- ICR5 LX5 8
- RJ NXB GET T-REGISTER DATA
- BX5 X1+X5
- SB7 B7+B1
- NE B6,B7,ICR5 IF NOT END OF T-REGISTER
- BX6 X5
- SA6 ICRE
- BX5 X5-X5
- SB6 3
- SB7 B0
- MX0 -8
- ICR6 LX5 8 GET FAULT MASK AND TEST SEED
- SB7 B7+B1
- RJ NXB
- BX1 -X0*X1
- BX5 X5+X1
- NE B6,B7,ICR6 IF NOT END OF DATA
- BX6 X5
- SA6 ICRF
- SA1 .IMR FETCH IOU MAINTENANCE REGISTERS RECORD
- RJ RDR
- ZR X2,ERR14 IF RECORD NOT FOUND
- SX1 /IOU/C0CR FORM *CCH* CHANNEL STATUS REGISTER NUMBER
- SA2 //PP
- IX5 X1+X2
- SX7 X2+B1 INCREMENT CHANNEL NUMBER
- SA7 A2
- RJ SFR SEARCH FOR REGISTER
- NG X1,ERR14 IF REGISTER NOT FOUND
- SA6 ICRA
- SA7 A6+1
- * OUTPUT *CCH* CHANNEL STATUS REGISTER DATA.
- RJ SSB SPACE FILL STRING BUFFER
- SB7 PRBF+2
- SA2 ICRD SAVE CHANNEL TYPE FOR REFERENCE
- MX3 -12
- BX3 -X3*X2
- SB2 X3
- LX2 59-23
- SB6 B1+B1
- RJ UPS UNPACK CHANNEL NUMBER
- SA2 ICRI DETERMINE CHANNEL TYPE
- SA4 ICRG
- SB3 X4
- EQ B2,B3,ICR6.1 IF DMA/ISI CHANNEL TYPE
- SA2 A2+B1
- SA4 A4+B1
- SB4 X4
- EQ B2,B4,ICR6.1 IF DMA/170 CHANNEL TYPE
- SA2 A2+B1
- ICR6.1 SB7 B7+3
- SB6 7
- RJ UPS UNPACK CHANNEL TYPE
- SB7 B7+2 PROCESS UPPER 16 BITS OF STATUS REGISTER
- SA1 ICRA
- MX0 12
- SA2 A1+B1
- BX3 X0*X2
- BX1 X1+X3
- SB6 4
- LX1 -4
- RJ HTS
- SX4 2
- ICR7 BX1 X2 PROCESS LOWER 48 BITS OF REGISTER
- LX1 12
- SX5 3
- ICR8 SB7 B7+1
- SB6 4
- RJ HTS
- SX5 X5-1
- NZ X5,ICR8 IF MORE OF CURRENT REGISTER TO PROCESS
- SX4 X4-1
- ZR X4,ICR9 IF STATUS AND T-REGISTER PROCESSED
- SA2 ICRE
- SB7 B7+2
- EQ ICR7 PROCESS T-REGISTER DATA
- ICR9 SB7 B7+3 PROCESS FLAG MASK REGISTER DATA
- SB6 4
- SA1 ICRF
- EQ B2,B3,ICR10 IF DMA/ISI TYPE CHANNEL
- SA2 ICRL WRITE *N/A* IN STRING BUFFER
- RJ UPS
- LX1 -16 SHIFT FOR TEST MODE OPERAND GENERATOR
- EQ ICR11 CONTINUE
- ICR10 LX1 59-23
- RJ HTS
- ICR11 SB7 B7+7 PROCESS TEST MODE OPERAND GENERATOR
- NE B2,B4,ICR12 IF NOT DMA/170 CHANNEL TYPE
- SA2 ICRL
- SB6 3
- RJ UPS
- EQ ICR13 PRINT OUTPUT
- ICR12 SB6 2
- RJ HTS
- ICR13 PRINT CCCH,B7-CCCH+1
- EQ ICR1 DUMP NEXT CHANNEL REGISTERS
- ICRA CON 0 UPPER FOUR BITS OF STATUS REGISTER
- CON 0 LOWER 60 BITS OF STATUS REGISTER
- ICRB DATA 50H CHANNEL
- DATA 29C FAULT TEST MODE OPERAND
- ICRC DATA 50H NUMBER TYPE STATUS REGISTER T REGISTE
- DATA 25CR MASK GENERATOR
- ICRD CON 0 *CCH* CHANNEL NUMBER AND TYPE
- ICRE CON 0 *CCH* CHANNEL T-REGISTER
- ICRF CON 0 *CCH* CHANNEL FAULT MASK AND TEST SEED
- ICRG CON 2R03 DMA/ISI CHANNEL FUNCTION CODE
- ICRH CON 2R05 DMA/170 CHANNEL FUNCTION CODE
- ICRI CON 7LDMA/ISI
- ICRJ CON 7LDMA/170
- ICRK CON 7LDMA/IPI
- ICRL CON 4LN/A
- IOUMR SPACE 4,20
- *** IOUMR.
- * SPECIFIES THAT ALL IOU MAINTENANCE REGISTERS SHOULD
- * BE DUMPED.
- *
- * IOUMR,FIRST,LAST.
- *
- * FIRST SPECIFIES THE FIRST REGISTER (HEX) TO BE DUMPED.
- * IF OMITTED, REGISTER 00 IS USED BY DEFAULT.
- *
- * LAST SPECIFIES THE LAST PLUS ONE REGISTER (HEX) TO BE
- * DUMPED. IF OMITTED, FIRST+1 IS USED BY DEFAULT.
- *
- * THE *IOUMR* DIRECTIVE CAUSES THE IOU MAINTENANCE
- * REGISTERS TO BE DUMPED. FOR EACH REGISTER, THE
- * REGISTER NUMBER, REGISTER CONTENTS, AND REGISTER
- * DESCRIPTION ARE PRINTED. FOR REGISTERS CONTAINING
- * ERROR INDICATORS, DESCRIPTIONS OF ERROR INDICATORS
- * SET ARE PRINTED.
- IOUMR DATA 0LIOUMR
- SA1 .IMR RECORD ID
- SX7 IMRA DESCRIPTOR TABLE ADDRESS
- RJ DMR DUMP MAINTENANCE REGISTERS
- EQ DSD1 RETURN TO PROCESS NEXT DIRECTIVE
- * DESCRIPTOR FORMAT -
- *
- *T 9/ REGISTER,17/ BDTA,17/ 0,17/ DESCRIPTOR PTR
- *
- * BDTA = BIT DESCRIPTOR TABLE ADDRESS.
- IMRA BSS 0
- SXREG SSMR,(STATUS SUMMARY ),IMRB
- SXREG EIMR,(ELEMENT ID )
- SXREG OIMR,(OPTIONS INSTALLED )
- SXREG IFSM,(FAULT STATUS MASK )
- SXREG IOSB,(OS BOUNDS )
- SXREG DEMR,(DEPENDENT ENV CONTROL)
- SXREG ISTR,(STATUS REG )
- SXREG IFS1,(FAULT STATUS 1 ),IMRC
- SXREG IFS2,(FAULT STATUS 2 ),IMRD
- SXREG ITMR,(TEST MODE )
- SXREG OICR,(CCH OPTIONS INSTALLED),,I4A
- SXREG ECCR,(CCH ENVIRONMENT CONTROL),,I4A
- SXREG SRCR,(CCH STATUS REGISTER),,I4A
- SXREG F1CR,(CCH FAULT STATUS 1),,I4A
- SXREG F2CR,(CCH FAULT STATUS 2),,I4A
- SXREG TMCR,(CCH TEST MODE),,I4A
- SXREG FMCR,(CCH FAULT STATUS MASK),,I4A
- SXREG OBCR,(CCH OS BOUNDS),,I4A
- SXREG C0CR,(CCH CHANNEL 0 STATUS),,I4A+I4S
- SXREG C1CR,(CCH CHANNEL 1 STATUS),,I4A+I4S
- SXREG C2CR,(CCH CHANNEL 2 STATUS),,I4A+I4S
- SXREG C3CR,(CCH CHANNEL 3 STATUS),,I4A+I4S
- SXREG C4CR,(CCH CHANNEL 4 STATUS),,I4A
- SXREG C5CR,(CCH CHANNEL 5 STATUS),,I4A
- SXREG C6CR,(CCH CHANNEL 6 STATUS),,I4A
- SXREG C7CR,(CCH CHANNEL 7 STATUS),,I4A
- SXREG C8CR,(CCH CHANNEL 10 STATUS),,I4A
- SXREG C9CR,(CCH CHANNEL 11 STATUS),,I4A
- CON 0
- * REG *SSMR* (STATUS SUMMARY) BIT INTERPRETATIONS.
- *
- * DESCRIPTOR FORMAT -
- *
- *T 9/ BIT NO.,17/ 0,17/ 0,17/ DESCRIPTOR PTR
- IMRB BSS 0
- S2BIT 59,(SUMMARY STATUS )
- S2BIT 60,(PROCESSOR HALT )
- S2BIT 61,(UNCORRECTED ERROR )
- S2BIT 63,(PHYS ENVIRON WARN )
- CON 0
- * REG *IFS1* (FAULT STATUS 1) BIT INTERPRETATIONS.
- *
- * DESCRIPTOR FORMAT -
- *
- *T 9/ BIT NO.,17/ 0,17/ 0,17/ DESCRIPTOR PTR
- IMRC BSS 0
- S2BIT 7,(BARREL 0 PP 00 ERR )
- S2BIT 6,(BARREL 0 PP 01 ERR )
- S2BIT 5,(BARREL 0 PP 02 ERR )
- S2BIT 4,(BARREL 0 PP 03 ERR )
- S2BIT 3,(BARREL 0 PP 04 ERR )
- S2BIT 15,(BARREL 0 PP 05 ERR ),S1
- S2BIT 15,(BARREL 1 PP 00 ERR ),I2+I4A+I4S
- S2BIT 14,(BARREL 0 PP 06 ERR ),S1
- S2BIT 14,(BARREL 1 PP 01 ERR ),I2+I4A+I4S
- S2BIT 13,(BARREL 0 PP 07 ERR ),S1
- S2BIT 13,(BARREL 1 PP 02 ERR ),I2+I4A+I4S
- S2BIT 12,(BARREL 0 PP 10 ERR ),S1
- S2BIT 12,(BARREL 1 PP 03 ERR ),I2+I4A+I4S
- S2BIT 11,(BARREL 0 PP 11 ERR ),S1
- S2BIT 11,(BARREL 1 PP 04 ERR ),I2+I4A+I4S
- S2BIT 23,(BARREL 1 PP 00 ERR ),S1
- S2BIT 23,(BARREL 2 PP 00 ERR ),I2+I4A+I4S
- S2BIT 22,(BARREL 1 PP 01 ERR ),S1
- S2BIT 22,(BARREL 2 PP 01 ERR ),I2+I4A+I4S
- S2BIT 21,(BARREL 1 PP 02 ERR ),S1
- S2BIT 21,(BARREL 2 PP 02 ERR ),I2+I4A+I4S
- S2BIT 20,(BARREL 1 PP 03 ERR ),S1
- S2BIT 20,(BARREL 2 PP 03 ERR ),I2+I4A+I4S
- S2BIT 19,(BARREL 1 PP 04 ERR ),S1
- S2BIT 19,(BARREL 2 PP 04 ERR ),I2+I4A+I4S
- S2BIT 31,(BARREL 1 PP 05 ERR ),S1
- S2BIT 31,(BARREL 3 PP 00 ERR ),I2+I4A
- S2BIT 31,(CIO PP 00 ERR ),I4S
- S2BIT 30,(BARREL 1 PP 06 ERR ),S1
- S2BIT 30,(BARREL 3 PP 01 ERR ),I2+I4A
- S2BIT 30,(CIO PP 01 ERR ),I4S
- S2BIT 29,(BARREL 1 PP 07 ERR ),S1
- S2BIT 29,(BARREL 3 PP 02 ERR ),I2+I4A
- S2BIT 29,(CIO PP 02 ERR ),I4S
- S2BIT 28,(BARREL 1 PP 10 ERR ),S1
- S2BIT 28,(BARREL 3 PP 03 ERR ),I2+I4A
- S2BIT 28,(CIO PP 03 ERR ),I4S
- S2BIT 27,(BARREL 1 PP 11 ERR ),S1
- S2BIT 27,(BARREL 3 PP 04 ERR ),I2+I4A
- S2BIT 27,(CIO PP 04 ERR ),I4S
- S2BIT 32,(A/R PARITY ERR ),S1
- S2BIT 32,(ERR ON 7VD0 MODULE ),S2
- S2BIT 32,(ERR ON JW MODULE ),I4A
- S2BIT 32,(ERR ON IIW MODULE ),I4S
- S2BIT 33,(P/Q PARITY ERR ),S1
- S2BIT 33,(ERR ON 7VE0 MODULE ),S2
- S2BIT 33,(ERR ON KR MODULE ),I4A+I4S
- S2BIT 34,(ERR ON JA MODULE ),I4A
- S2BIT 34,(ERR ON LA MODULE ),I4S
- S2BIT 34,(FIRMWARE ERR ),S1+I2
- S2BIT 35,(ERR ON KB MODULE ),I4A+I4S
- S2BIT 35,(PP MEM DATA-OUT ERR ),S1+I2
- S2BIT 36,(ADU ERR ),S1
- S2BIT 36,(ERR ON 7VG0 MODULE ),S2
- S2BIT 36,(ERR ON JC MODULE ),I4A+I4S
- S2BIT 37,(12/16 CONVERSION ERR ),S2
- S2BIT 37,(ERR ON JD MODULE ),I4A+I4S
- S2BIT 38,(ERR ON JE MODULE ),I4A+I4S
- S2BIT 38,(PP MEM ADDR ERR ),S1+I2
- S2BIT 39,(ERR ON JF MODULE ),I4A+I4S
- S2BIT 39,(PP MEM DATA-IN ERR ),S1+I2
- S2BIT 40,(NIO BARREL 0 SECDED ),I4A+I4S
- S2BIT 41,(NIO BARREL 1 SECDED ),I4A+I4S
- S2BIT 42,(NIO BARREL 2 SECDED ),I4A+I4S
- S2BIT 43,(NIO BARREL 3 SECDED ),I4A
- S2BIT 43,(CIO BARREL 0 SECDED ),I4S
- S2BIT 44,(12/16 CONVERSION ERR ),I4A+I4S
- S2BIT 45,(OS BOUNDS VIOLATION )
- S2BIT 46,(OS BOUNDS ADDR PARITY ERR)
- S2BIT 47,(ADU BARREL PARITY ERR),S2
- S2BIT 47,(FIRMWARE ERR ),I4A+I4S
- S2BIT 48,(CM READ BUFFER ERR ),S2
- S2BIT 48,(RESPONSE CODE ERROR ),I4A+I4S
- S2BIT 49,(UNCORRECTED CM READ ERR)
- S2BIT 50,(UNCORRECTED CM WRITE ERR)
- S2BIT 51,(CM REJECT )
- S2BIT 52,(OUTPUT CM TAG ERR ),S1
- S2BIT 52,(INPUT CM TAG ERR ),S2
- S2BIT 52,(DATA IN ERR - CMI/ADU),I4A+I4S
- S2BIT 53,(TAG IN ERR - CMI/ADU ),I4A+I4S
- S2BIT 53,(CM RESPONSE CODE ERR ),S1+I2
- S2BIT 54,(CM DATA-IN ERR ),S1
- S2BIT 54,(CM DATA-OUT ERR ),S2
- S2BIT 54,(DATA-OUT ERR - CMI/ADU),I4A+I4S
- S2BIT 55,(CM ADDRESS-OUT ERR ),S2
- S2BIT 55,(ADDR/FUNC ERR - CMI/ADU),I4A+I4S
- S2BIT 56,(TAG OUT ERR - CMI/ADU),I4A+I4S
- S2BIT 56,(CM DATA-IN ERR BYTE 0),S1+I2
- S2BIT 57,(CMI ERR - JJ MODULE ),I4A
- S2BIT 57,(CMI ERR - FJ MODULE ),I4S
- S2BIT 57,(CM DATA-IN ERR BYTE 1),S1+I2
- S2BIT 58,(CMI ERR - JJ MODULE ),I4A
- S2BIT 58,(CMI ERR - FJ MODULE ),I4S
- S2BIT 58,(CM DATA-IN ERR BYTE 2),S1+I2
- S2BIT 59,(CMI ERR - JG MODULE ),I4A
- S2BIT 59,(CMI ERR - FG MODULE ),I4S
- S2BIT 59,(CM DATA-IN ERR BYTE 3),S1+I2
- S2BIT 60,(CMI ERR - JH MODULE ),I4A
- S2BIT 60,(CMI ERR - FH MODULE ),I4S
- S2BIT 60,(CM DATA-IN ERR BYTE 4),S1+I2
- S2BIT 61,(CMI ERR - JH MODULE ),I4A
- S2BIT 61,(CMI ERR - FH MODULE ),I4S
- S2BIT 61,(CM DATA-IN ERR BYTE 5),S1+I2
- S2BIT 62,(CMI ERR - JH MODULE ),I4A
- S2BIT 62,(CMI ERR - FH MODULE ),I4S
- S2BIT 62,(CM DATA-IN ERR BYTE 6),S1+I2
- S2BIT 63,(CMI ERR - JH MODULE ),I4A
- S2BIT 63,(CMI ERR - FH MODULE ),I4S
- S2BIT 63,(CM DATA-IN ERR BYTE 7),S1+I2
- CON 0
- * REG *IFS2* (FAULT STATUS 2) BIT INTERPRETATIONS.
- *
- * DESCRIPTOR FORMAT -
- *
- *T 9/ BIT NUMBER,17/ 0,17/ 0,17/ DESCRIPTOR PTR
- IMRD BSS 0
- S2BIT 32,(CHAN 07 ERR )
- S2BIT 33,(CHAN 06 ERR )
- S2BIT 34,(CHAN 05 ERR )
- S2BIT 35,(CHAN 04 ERR )
- S2BIT 36,(CHAN 03 ERR )
- S2BIT 37,(CHAN 02 ERR )
- S2BIT 38,(CHAN 01 ERR )
- S2BIT 39,(CHAN 00 ERR )
- S2BIT 40,(CHAN 17 ERR )
- S2BIT 42,(CHAN 15 ERR )
- S2BIT 44,(CHAN 13 ERR )
- S2BIT 45,(CHAN 12 ERR )
- S2BIT 46,(CHAN 11 ERR )
- S2BIT 47,(CHAN 10 ERR )
- S2BIT 48,(CHAN 27 ERR ),S1+I2+I4A
- S2BIT 49,(CHAN 26 ERR ),S1+I2+I4A
- S2BIT 50,(CHAN 25 ERR ),S1+I2+I4A
- S2BIT 51,(CHAN 24 ERR )
- S2BIT 52,(CHAN 23 ERR )
- S2BIT 53,(CHAN 22 ERR )
- S2BIT 54,(CHAN 21 ERR )
- S2BIT 55,(CHAN 20 ERR )
- S2BIT 57,(RADIAL INTERFACE 5/6 ERR),S2
- S2BIT 58,(RADIAL INTERFACE 3/4 ERR),S2
- S2BIT 59,(RADIAL INTERFACE 1/2 ERR),S2
- S2BIT 59,(RADIAL INTERFACE 2/3 ERR),S1
- S2BIT 60,(CHAN 33 ERR ),S1+I2+I4A
- S2BIT 60,(CIO CHAN 03 ERR ),I4S
- S2BIT 61,(CHAN 32 ERR ),S1+I2+I4A
- S2BIT 61,(CIO CHAN 02 ERR ),I4S
- S2BIT 62,(CHAN 31 ERR ),S1+I2+I4A
- S2BIT 62,(CIO CHAN 01 ERR ),I4S
- S2BIT 63,(CHAN 30 ERR ),S1+I2+I4A
- S2BIT 63,(CIO CHAN 00 ERR ),I4S
- CON 0
- JC SPACE 4,5
- *** JC.
- *
- * DUMP JOB CONTROL AREA FOR EACH SERVICE CLASS. EACH WORD IS
- * PRINTED WITH ITS SYSTEXT SYMBOL AND IS SPLIT INTO THE
- * APPROPRIATE PARAMETER FIELDS.
- * THE FIRST JOB CONTROL BLOCK CONTAINS THE SERVICE CLASS
- * CONTROL AREA *SCT*. THIS AREA IS DUMPED.
- JC DATA 0LJC
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ SCM SELECT CENTRAL MEMORY
- SA7 RI
- SX6 JCBE PRESET JOB CONTROL AREA INDEX FOR JCB 1
- SA6 JCPA
- SX6 B0+ PRESET (SERVICE CLASS - 1) FOR JCB 1
- SA6 JCPC
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- SA1 F.TCMT
- SA2 X1+JBCP
- LX2 24
- SX6 X2 FWA JOB CONTROL AREA
- SA6 JCPB SAVE FWA OF JOB CONTROL AREA
- SX3 X6
- RJ PCM POSITION TO CM WORD
- GETCM BUF,MXJC*JCBE
- * DISPLAY THE FIRST JOB CONTROL BLOCK WHICH CONTAINS THE
- * SERVICE CLASS CONTROL TABLE.
- SX1 14D
- RJ CPS CHECK PAGE SPACE
- PRINT (=C* SERVICE CLASS CONTROL TABLE*)
- PRINT (=2C )
- SA1 JCPB FWA OF JOB CONTROL AREA
- BX2 -X1
- SB2 X2+BUF SET CORE ADDRESS OF TABLE DATA
- BX6 X1
- SA6 FW SET PRINT ADDRESS
- SA1 TSCT FORMAT TABLE POINTERS
- RJ GTD GENERATE DETAILED TABLE DUMP
- PRINT (=2C )
- PRINT (=C* JOB CONTROL AREA BY SERVICE CLASS*)
- * DISPLAY JOB CONTROL BLOCKS ASSOCIATED WITH A SERVICE CLASS.
- JCP1 SX1 23D
- RJ CPS CHECK PAGE SPACE
- PRINT (=2C )
- SB7 PRBF
- SA5 JCPC SERVICE CLASS NUMBER - 1
- SX6 X5+B1
- SA6 A5 INCREMENT SERVICE CLASS
- SA2 X5+SCNT TABLE OF SERVICE CLASS NAMES
- SB6 10
- RJ UPS STORE IN PRINT STRING
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- SA1 JCPB FWA OF JOB CONTROL AREA
- BX2 -X1
- SA5 JCPA JOB CONTROL AREA INDEX
- SB2 X2+BUF SET CORE ADDRESS OF TABLE DATA
- IX6 X1+X5
- SA6 FW SET PRINT ADDRESS
- SA1 TFJC FORMAT TABLE POINTERS
- RJ GTD GENERATE DETAILED TABLE DUMP
- SA1 JCPA
- SX6 X1+JCBE
- SA6 A1 INCREMENT JOB CONTROL AREA INDEX
- SX3 X6-MXJC*JCBE
- NZ X3,JCP1 IF MORE TO DUMP
- JP DSD1 RETURN
- JCPA BSS 1 JOB CONTROL AREA INDEX
- JCPB BSS 1 FWA OF JOB CONTROL AREA
- JCPC BSS 1 SERVICE CLASS - 1
- LC SPACE 4,4
- *** LC.
- *
- * DUMP LOW CORE. EACH WORD IS PRINTED WITH ITS SYSTEXT SYMBOL
- * AND IS SPLIT INTO THE APPROPRIATE PARAMETER FIELDS.
- LC DATA 0LLC
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ SCM SELECT CENTRAL MEMORY
- SA7 RI
- SX6 0
- SA6 FW SET PRINT ADDRESS
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- SX3 0
- RJ PCM POSITION TO START OF CM
- GETCM BUF,CPAS
- SB2 BUF SET CORE ADDRESS OF TABLE DATA
- SA1 TFLC FORMAT TABLE POINTERS
- RJ GTD GENERATE DETAILED TABLE DUMP
- JP DSD1 RETURN
- LDIS SPACE 4,10
- *** LDIS.
- *
- * DUMP THE *L* DISPLAY BUFFERS IN *C* FORMAT.
- LDIS DATA 0LLDIS
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+LDSP SET DUMP FWA
- AX2 12
- SX6 X2
- SX7 X6+1+LCOM+LDSY+2+2+1 SET DUMP LWA+1
- SB3 B0 SET *C* FORMAT
- SX4 B0 SET READ FROM DUMP FILE
- SX5 =C* L-DISPLAY BUFFERS*
- RJ DTB DUMP BUFFERS
- EQ DSD1 RETURN
- SPACE 4,10
- *** LIDT.
- *
- * DUMP LOGICAL ID TABLE IN *D* FORMAT.
- LIDT DATA 0LLIDT
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+LIDP GET LID TABLE FWA
- MX0 -18
- LX2 24
- BX5 -X0*X2
- BX3 X5
- RJ PCM POSITION DUMP TO LID TABLE
- GETCM GET LID TABLE HEADER
- MX0 -12 GET USABLE LENGTH OF LID TABLE
- LX6 12
- BX2 -X0*X6
- IX7 X5+X2 COMPUTE LWA+1 OF LID TABLE
- SB3 B1 SET *D* FORMAT
- BX6 X5 MOVE FWA
- SX4 B0 SET TO READ FROM DUMP FILE
- SX5 =C* LOGICAL ID TABLE*
- RJ DTB DUMP LID TABLE
- EQ DSD1 RETURN
- LPVA SPACE 4,10
- *** LPVA,ADDRESS.
- *
- * LOAD PVA FROM MEMORY AT THE ADDRESS SPECIFIED.
- LPVA DATA C*LPVA*
- RJ GHA GET HARDWARE ADDRESS
- ZR B6,ERR6 IF NO ADDRESS SPECIFIED
- SA6 BRMA SAVE SVA
- RJ ASX GET HEX NUMBER
- ZR B6,LPV1 IF NO VALUE SPECIFIED
- NZ X4,ERR6 IF NOT VALID HEX NUMBER
- LPV1 SA1 BRMA FETCH SVA
- IX1 X1+X6 ADD OFFSET TO SVA
- RJ FRV FETCH REGISTER VALUE
- NZ X2,ERR30 IF PAGE IS MISSING
- SA6 S2PVA VALUE OF PVA
- SA2 =13HLOADED PVA
- SB6 13
- SB7 PRBF
- RJ UPS UNPACK STRING
- SA1 S2PVA
- LX1 59-47
- SB6 12
- RJ HTS HEX TRANSLATION OF PVA
- PRINT CCCH,B7-CCCH *LOADED PVA = RSSSBBBBBBBB*
- JP DSD1 END OF COMMAND
- MAGNET SPACE 4,23
- *** MAG,OPS.
- * MAGNET,OPS.
- *
- * WHERE OPS IS A STRING OF UP TO 5 CHARACTERS SELECTING
- * VARIOUS DUMP OPTIONS AS FOLLOWS-
- *
- * P ALL COPIES OF 1MT ARE ANALYZED.
- *
- * Q THE MAGNET QUEUE TABLE IS PRINTED IN BYTE FORMAT WITH
- * DISPLAY CODE INTERPRETATION. EACH LINE OF TWO WORDS
- * ALSO SHOWS THE ORDINAL WITHIN THE TABLE.
- *
- * S THE ACTIVE STAGING JOB TABLE, STAGING VSN TABLE, AND
- * STAGE REQUEST TABLE ARE PRINTED IN BYTE FORMAT WITH
- * DISPLAY CODE INTERPRETATION.
- *
- * U EACH OF THE MAGNET UNIT DESCRIPTOR TABLES ARE ANALYZED
- * WITH ASSOCIATED FET, EST, AND FNT/FST. EACH WORD OF
- * THE UDT IS PRINTED WITH ITS SYMBOL AND IS SPLIT INTO
- * THE APPROPRIATE PARAMETER FIELDS WITH DESCRIPTION. IF
- * EXTENDED LABELS ARE PRESENT, THEY ARE PRINTED WITH THE
- * FET. THE FET INDICATES THE ADDRESS AND CONTROL POINT
- * NUMBER OF THE USER.
- *
- *
- * MAGNET. OR MAG.
- *
- * IS EQUIVALENT TO *MAGNET,UAQSP.*.
- MAGNET DATA 0LMAGNET
- EQ MAG1 PROCESS LIKE *MAG* DIRECTIVE
- MAG DATA 0LMAG
- MAG1 SA5 MAGA
- RJ ISS INITIALIZE FOR SUB-SYSTEM DUMP
- GETCM SSBF,/MTX/TVSP+1 READ MAGNET POINTERS
- SA5 MAGB
- RJ DSS DUMP MAGNET SUB-SYSTEM
- JP DSD1 RETURN
- MAGA VFD 24/0,12/MTSI,24/0
- MAGB VFD 60/0LUQSP
- VFD 36/0,6/1RP,18/DMP
- VFD 36/0,6/1RS,18/DMS
- VFD 36/0,6/1RQ,18/DMQ
- VFD 36/0,6/1RU,18/DMU
- VFD 60/0
- MAINLOG SPACE 4,10
- *** MAINLOG.
- *
- * DUMP THE BINARY MAINTENANCE LOG IN *E* FORMAT.
- MAINLOG DATA 0LMAINLOG
- SX7 -3 SET CONTROL POINT
- EQ ACN1 USE DAYFILE DUMP CODE
- MCT SPACE 4,10
- *** MCT.
- *
- * DISPLAY THE MEMORY CONTROL TABLE (MCT).
- *
- * EACH MCT ENTRY IS DISPLAYED ALONG WITH THE RA, FL, RAE, AND
- * FLE FROM THE CORRESPONDING CPA OR PCPA.
- MCT DATA 0LMCT
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ LDC LIST DIRECTIVE
- RJ SCM SET CENTRAL MEMORY
- SA7 RI
- SA1 F.TCMT
- SA3 X1+MCTP
- AX3 36
- BX6 X6-X6 INITIALIZE PCPA OFFSET
- SA6 OP
- RJ PCM POSITION TO MCT
- SA2 ME NUMBER OF MCT ENTRIES
- LX2 1
- SX6 -B1 INITIALIZE CP/PCP NUMBER
- SA6 CN
- GETCM BUF,X2 READ IN MCT
- PRINT (=2C )
- PRINT (=C* PREVIOUS NEXT UNASSIGNED RA
- , FL NFL RECOVERY*)
- PRINT (=C* CP/PCP CP/PCP MEMORY
- , INFORMATION*)
- MCT1 RJ SSB CLEAR STRING BUFFER
- PRINT (=C )
- SA5 CN
- SA3 ME
- SX5 X5+B1
- IX3 X5-X3
- PL X3,DSD1 IF FINISHED
- SA3 NC
- SX3 X3+2
- BX6 X5
- IX4 X5-X3
- NZ X4,MCT2 IF NOT AT FIRST PCP
- SA1 F.TCMT SET PCPA FWA OFFSET
- SA1 X1+PCPP
- SX1 X1
- LX3 7
- IX7 X1-X3
- SA7 OP
- MCT2 SA6 A5
- NZ X5,MCT3 IF NOT CMR
- BX2 X2-X2
- SA1 MCTA
- EQ MCT4 PRINT MCT HEADER
- MCT3 BX2 X5 CONVERT CP/PCP NUMBER
- SX1 707B
- LX2 3
- BX2 X2+X5
- BX2 X2*X1
- SA1 MCTB
- LX2 35-11
- NG X4,MCT4 IF CP
- SA1 A1+B1
- MCT4 IX2 X1+X2
- LX5 1
- SB6 6
- SB7 PRBF
- RJ UPS UNPACK STRING
- MCT5 SA1 X5+BUF GET NEXT MCT WORD
- SB6 4
- SB7 B7+3
- RJ CTS DISPLAY PREVIOUS CP/PCP
- SB6 4
- SB7 B7+6
- RJ CTS DISPLAY NEXT CP/PCP
- LX1 12
- SB6 8
- SB7 B7+5
- RJ CTS DISPLAY UNASSIGNED CM/EM
- AX1 X5,B1
- SA2 OP ADD PCP OFFSET
- LX1 7
- IX4 X1+X2
- SX3 X4+FLSW
- LX5 59-0
- PL X5,MCT6 IF CM WORD OF MCT ENTRY
- SX3 X4+ECSW
- MCT6 SA1 F.TCMT
- IX1 X1+X3
- SA1 X1
- LX1 59-35
- SB6 8
- SB7 PRBF+42
- RJ CTS DISPLAY RA/RAE
- SB6 4
- SB7 B7+4
- RJ CTS DISPLAY FL/FLE
- SB6 4
- SB7 B7+4
- RJ CTS DISPLAY NFL/NFLE
- SX3 X4+6
- SA1 F.TCMT
- IX1 X1+X3
- SA1 X1
- PL X5,MCT6.1 IF CM WORD OF MCT ENTRY
- LX1 59-47
- MCT6.1 SB6 4
- SB7 B7+4
- RJ CTS DISPLAY MCT RECOVERY BYTE
- PRINT CCCH,B7-CCCH
- NG X5,MCT1 IF THROUGH WITH ENTRY
- RJ SSB CLEAR STRING BUFFER
- SB7 PRBF+6
- LX5 0-59
- SX5 X5+B1
- EQ MCT5 PRINT EM WORD OF MCT ENTRY
- MCTA DATA 6L CMR
- MCTB DATA 6L CP 00
- DATA 6LPCP 00
- MEMMR SPACE 4,20
- *** MEMMR.
- * SPECIFIES THAT ALL MEMORY MAINTENANCE REGISTERS
- * SHOULD BE DUMPED.
- *
- * MEMMR,FIRST,LAST.
- *
- * FIRST SPECIFIES THE FIRST REGISTER (HEX) TO BE DUMPED.
- * IF OMITTED, REGISTER 00 IS USED BY DEFAULT.
- *
- * LAST SPECIFIES THE LAST PLUS ONE REGISTER (HEX) TO BE
- * DUMPED. IF OMITTED, FIRST+1 IS USED BY DEFAULT.
- *
- * THE *MEMMR* DIRECTIVE CAUSES THE MEMORY MAINTENANCE
- * REGISTERS TO BE DUMPED. FOR EACH REGISTER, THE REGISTER
- * NUMBER, REGISTER CONTENTS, AND REGISTER DESCRIPTION
- * ARE PRINTED. FOR REGISTERS CONTAINING ERROR
- * INDICATORS, DESCRIPTIONS OF ERROR INDICATORS
- * SET ARE PRINTED.
- MEMMR DATA 0LMEMMR
- SA1 .MMR FETCH MEMORY MAINTENANCE REGISTERS RECORD
- RJ RDR
- ZR X2,ERR14 IF RECORD NOT FOUND
- SX5 /IOU/OIMR OPTIONS INSTALLED REGISTER
- RJ SFR
- NG X1,ERR14 IF REGISTER NOT FOUND
- LX7 8
- PL X7,MMR1 IF BIT 12 OF *OIMR* NOT SET
- SA1 MMRP CHANGE ADDRESS OF BIT DESCRIPTOR TABLE
- BX7 X1
- SA7 MMRO
- MMR1 SA1 .MMR RECORD ID
- SX7 MMRA DESCRIPTOR TABLE ADDRESS
- RJ DMR DUMP MAINTENANCE REGISTERS
- EQ DSD1 RETURN TO PROCESS NEXT DIRECTIVE
- * DESCRIPTOR FORMAT -
- *
- *T 9/ REGISTER,17/ MVP,17/ BDTA,17/ DESCRIPTOR PTR
- *
- * BDTA = BIT DESCRIPTOR TABLE ADDRESS.
- * = 0, IF NO TABLE.
- * MVP = MAP OF VALID PROCESSORS.
- MMRA BSS 0
- SXREG SSMR,(STATUS SUMMARY ),MMRB
- SXREG EIMR,(ELEMENT ID )
- MMRO SXREG OIMR,(OPTIONS INSTALLED ),MMRC
- SXREG ECMR,(ENVIRON CONTROL ),MMRF,S1
- SXREG ECMR,(ENVIRON CONTROL ),MMRE,S2+S3+THETA
- SXREG MBRG,(BOUNDS REG )
- SXREG MCEL,(CORR ERR LOG ),,S1+S2+S3
- SXREG MCEL,(CORR ERRLOG REG 0 ),,THETA
- SXREG MCEL+1,(CORR ERRLOG REG 1 ),,THETA
- SXREG MCEL+2,(CORR ERRLOG REG 2 ),,THETA
- SXREG MCEL+3,(CORR ERRLOG REG 3 ),,THETA
- SXREG MUL1,(UNCORR ERR LOG 1 ),,S1+S2+S3
- SXREG MUL1,(UNCOR ERRLOG REG 0),,THETA
- SXREG MUL1+1,(UNCOR ERRLOG REG 1),,THETA
- SXREG MUL1+2,(UNCOR ERRLOG REG 2),,THETA
- SXREG MUL1+3,(UNCOR ERRLOG REG 3),,THETA
- SXREG MUL2,(UNCORR ERR LOG 2 ),,S1+S2+S3
- SXREG MFRC,(FREE RUN COUNTER )
- CON 0
- MMRP SXREG OIMR,(OPTIONS INSTALLED ),MMRD
- * REGISTER *SSMR* (STATUS SUMMARY) BIT INTERPRETATIONS.
- *
- * DESCRIPTOR FORMAT -
- *
- *T 9/ BIT NO.,17/ 0,17/ 0,17/ DESCRIPTOR PTR
- MMRB BSS 0
- S2BIT 58,(CLOCK TUNING MODE )
- S2BIT 61,(UNCORRECTED ERROR )
- S2BIT 62,(CORRECTED ERROR )
- S2BIT 63,(PHYS ENVIRON WARN )
- CON 0
- * REGISTER *OIMR* (OPTIONS INSTALLED) BIT INTERPRETATIONS.
- MMRC BSS 0
- S2BIT 0,(1 MEGABYTE MEMORY )
- S2BIT 1,(2 MEGABYTE MEMORY )
- S2BIT 2,(3 MEGABYTE MEMORY )
- S2BIT 3,(4 MEGABYTE MEMORY )
- S2BIT 4,(5 MEGABYTE MEMORY )
- S2BIT 5,(6 MEGABYTE MEMROY )
- S2BIT 6,(7 MEGABYTE MEMORY )
- S2BIT 7,(8 MEGABYTE MEMORY )
- S2BIT 8,(10 MEGABYTE MEMORY )
- S2BIT 9,(12 MEGABYTE MEMORY )
- S2BIT 10,(14 MEGABYTE MEMORY )
- S2BIT 11,(16 MEGABYTE MEMORY )
- S2BIT 16,(MEMORY RECONFIGURED )
- S2BIT 17,(SW 1 NOT AT CENTER )
- S2BIT 18,(SW 2 NOT AT CENTER )
- S2BIT 19,(SW 3 NOT AT CENTER )
- S2BIT 20,(SW 4 NOT AT CENTER )
- S2BIT 21,(SW 5 NOT AT CENTER )
- S2BIT 22,(SW 6 NOT AT CENTER )
- CON 0
- * REGISTER *OIMR* (OPTIONS INSTALLED) BIT INTERPRETATIONS
- * FOR LARGE MEMORY SYSTEMS.
- MMRD BSS 0
- S2BIT 0,(2048 MEGABYTE MEMORY )
- S2BIT 1,(1024 MEGABYTE MEMORY )
- S2BIT 2,(512 MEGABYTE MEMORY )
- S2BIT 3,(256 MEGABYTE MEMORY )
- S2BIT 4,(128 MEGABYTE MEMORY )
- S2BIT 5,(64 MEGABYTE MEMROY )
- S2BIT 6,(32 MEGABYTE MEMORY )
- S2BIT 7,(16 MEGABYTE MEMORY )
- S2BIT 8,(8 MEGABYTE MEMORY )
- S2BIT 9,(4 MEGABYTE MEMORY )
- S2BIT 10,(2 MEGABYTE MEMORY )
- S2BIT 11,(1 MEGABYTE MEMORY )
- S2BIT 16,(MEMORY RECONFIGURED )
- S2BIT 17,(SW 1 NOT AT CENTER )
- S2BIT 18,(SW 2 NOT AT CENTER )
- S2BIT 19,(SW 3 NOT AT CENTER )
- S2BIT 20,(SW 4 NOT AT CENTER )
- S2BIT 21,(SW 5 NOT AT CENTER )
- S2BIT 22,(SW 6 NOT AT CENTER )
- CON 0
- * REGISTER *ECMR* (ENVIRONMENTAL CONTROL) - CYBER 835 - 990.
- MMRE BSS 0
- S2BIT 0,(DISABLE PARITY CHECK )
- S2BIT 1,(DISABLE SEC/DED )
- S2BIT 2,(ENABLE NONINTLVE MODE)
- S2BIT 5,(TIMING MARGINS WIDE ),S2+S3
- S2BIT 5,(FORCE TO CORR ERR LOG),THETA
- S2BIT 6,(TIMING MARGINS NARROW),S2+S3
- S2BIT 32,(DISABLE PORT 0 )
- S2BIT 33,(DISABLE PORT 1 )
- S2BIT 34,(DISABLE PORT 2 )
- S2BIT 35,(DISABLE PORT 3 )
- S2BIT 38,(DISABLE CORR ERR RESP)
- S2BIT 39,(DISABLE SNGL BIT ERR)
- CON 0
- * REGISTER *ECMR* (ENVIRONMENTAL CONTROL) - CYBER 810 - 830.
- MMRF BSS 0
- S2BIT 0,(ENABLE PARITY CHECK )
- S2BIT 1,(DISABLE SEC/DED )
- S2BIT 2,(ENABLE NONINTLVE MODE)
- S2BIT 9,(DISABLE M PORT )
- S2BIT 10,(DISABLE 40/41 )
- S2BIT 11,(DISABLE CPU PORT )
- S2BIT 12,(DISABLE IOU PORT )
- S2BIT 13,(DISABLE P PORT )
- S2BIT 38,(DISABLE CORR ERR RESP)
- S2BIT 39,(DISABLE CORR ERR LOG )
- CON 0
- MPP SPACE 4,20
- *** MPP.
- * MOVE ALL PP-S TO THE OTHER BANK.
- *
- * MPP,N1.
- * MOVE ONLY PP00 TO PPN1.
- *
- * THE LOGICAL POSITION OF PP00 HAS BEEN CHANGED PRIOR TO THE
- * FULL DUMP TO TAPE. IF THE PPS-0/PPS-1 (PPU-A) TOGGLE SWITCH
- * HAS BEEN TOGGLED, *MPP* SHOULD BE SPECIFIED. WHEN THE
- * SYSTEM HAS ONLY 10 PP-S, OR A CYBER 170 SYSTEM HAS .LT. 20
- * PP-S, *MPP* HAS NO MEANING. IF PP00 HAS BEEN MOVED TO
- * ANOTHER PP VIA A DEADSTART PANEL PROGRAM, *MPP,N1* SHOULD
- * BE SPECIFIED. IF N1 IS SPECIFIED WITH VALUE 0, THE
- * DIRECTIVE HAS NO MEANING. CORRECT SPECIFICATION OF EITHER
- * FORM OF THIS DIRECTIVE CAUSES THE CORRECT LOGICAL PP TO BE
- * DUMPED WHEN A SWITCH HAS BEEN MADE.
- MPP DATA 0LMPP
- * GET INITIAL TABLE ENTRY.
- SA1 .NPP FIND TABLE ENTRY FOR FIRST PP
- MX0 24
- SEARCH TDIR,X1,X0 FIND PP00 TABLE ENTRY
- ZR X2,ERR7 IF NOT FOUND
- SX6 A2+ SAVE TABLE ENTRY ADDRESS
- SA6 PI
- * CHECK FOR LEGAL DIRECTIVE.
- SA1 CH
- SA1 X1+
- SX1 X1-1R.
- NZ X1,MPP3 IF PP NUMBER ON DIRECTIVE CARD
- SA2 F.TCMT
- SA4 AC CHECK NUMBER OF PP-S IN SYSTEM
- SX7 X4-11
- NG X7,ERR25 IF ONLY 10 PP-S
- SX6 X4-20
- ZR X6,MPP1 IF 20 PP SYSTEM
- SA3 AP
- ZR X3,ERR25 IF CYBER 170 WITH .LT. 20 PP-S
- * SWITCH UPPER AND LOWER BANKS.
- MPP1 SA5 PI SET INITIAL TABLE ENTRY ADDRESS
- SB2 B0 INITIALIZE ENTRY INDICIES
- SB3 X4
- AX4 B1
- SB4 X4+
- SB7 X5+B3
- MPP2 SB5 B2+B2 SWITCH BANKS OF PP-S
- SX2 X5+B5
- SA2 X2+B1
- SA3 A2+B3
- BX6 X2
- BX7 X3
- SA6 A3
- SA7 A2
- SA2 TLPP+B2 SWITCH LOGICAL PP NUMBERS IN BANKS
- SA3 A2+B4
- BX6 X2
- BX7 X3
- SA6 A3
- SA7 A2
- SB2 B2+B1 INCREMENT ENTRY INDEX
- SB6 B2-12B
- NZ B6,MPP2 IF MORE TO SWITCH
- EQ DSD1 PROCESS NEXT DIRECTIVE
- * PROCESS MOVE OF PP00 ONLY.
- MPP3 SB7 B0 ASSEMBLE PP NUMBER
- RJ ASD
- NZ X4,ERR6 IF ERROR
- ZR X6,ERR25 IF MOVING PP00 TO PP00
- SA2 NP CHECK IF VALID PP NUMBER
- SX2 X2+6
- SX7 X6-12B
- NG X7,MPP4 IF IN LOWER BANK
- SX7 X6-20B
- NG X7,ERR6 IF INCORRECT PP NUMBER
- IX1 X6-X2
- PL X1,ERR6 IF PP NUMBER .GT. NUMBER OF PP-S
- SX6 X6-6 SET INDEX
- MPP4 LX7 X6,B1 FIND TABLE ENTRY FOR LOGICAL PP
- SA5 PI
- IX7 X5+X7
- SA2 X7+1 SET ENTRY INDEX FOR PP00
- SA1 TLPP+X6 SET LOGICAL PP00 NUMBER IN PP TABLE
- BX7 X2
- SA7 X5+1
- BX6 X1
- SA6 TLPP
- EQ DSD1 PROCESS NEXT DIRECTIVE
- MST SPACE 4,8
- *** MST.
- * DUMP ALL MASS STORAGE TABLES.
- *
- * MST,E1,E2,...,EN.
- * DUMP SELECTED EQUIPMENT MASS STORAGE TABLES.
- *
- * DUMP MASS STORAGE AND TRACK RESERVATION TABLES. FOR SHARED
- * BUFFERED I/O DEVICES, ALSO DUMP BUFFER STATUS TABLES. EACH
- * WORD OF EACH MST IS PRINTED WITH ITS SYSTEXT SYMBOL AND IS
- * SPLIT INTO THE APPROPRIATE PARAMETER FIELDS. EACH WORD OF
- * EACH TRT INDICATES ITS LINKAGE BYTE ORDINAL, BYTE FORMAT OF
- * THE WORD, TRACK BITS(3 GROUPS OF 4 BITS), AND DISPLAY CODE
- * INTERPRETATION. EACH BST WORD DISPLAYS THE BUFFER ORDINAL,
- * BYTE FORMAT AND DISPLAY CODE INTERPRETATION OF THE WORD.
- MST DATA 0LMST
- MX6 0
- SA6 PI PRESET TO SELECT EQUIPMENT FROM CARD
- SA1 CH
- SA1 X1+
- SX1 X1-1R.
- NZ X1,MST1 IF EST ORDINALS ON DIRECTIVE CARD
- SX7 NOPE INITIALIZE EST ORDINAL FOR SEARCH
- SA7 PI PRESET EST SEARCH POINTER
- MST1 RJ SCM SELECT CENTRAL MEMORY
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- MST2 RJ SMT SELECT NEXT UNIT TO DUMP
- ZR X6,DSD1 IF NO MORE TO DUMP
- RJ //MST DUMP MASS STORAGE TABLE
- RJ TRT DUMP TRACK RESERVATION TABLE
- RJ MRT DUMP MACHINE RECOVERY TABLE
- RJ BST DUMP BUFFER STATUS TABLE
- EQ MST2 CONTINUE
- MTR SPACE 4,6
- *** MTR.
- *
- * DUMP CPU MONITOR. EXCHANGE PACKAGES WILL BE DUMPED IN
- * EXCHANGE PACKAGE FORMAT AND PROGRAM AREA WILL BE DUMPED
- * IN INSTRUCTION PARCEL FORMAT WITH DISPLAY CODE
- * INTERPRETATION. IF A CYBER 176, THE CPU DEADSTART AND
- * REAL TIME CLOCK EXCHANGE PACKAGES WILL ALSO BE DUMPED.
- MTR DATA 0LMTR
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT GET FWA CPUMTR
- SA2 X1+CMTP
- SX6 X2+
- SA6 MTRC
- RJ SRA SET REFERENCE ADDRESS
- RJ SCM SELECT CENTRAL MEMORY
- SA1 F.TCMT
- SA2 X1+RPLP RESIDENT PP LIBRARY POINTER
- LX2 24
- SX6 X2
- SA1 BA
- IX6 X6-X1
- MX7 0
- SA7 CPRA SET FWA FOR DUMP
- SA6 A7+1 SET LWA+1 = FWA OF RPL
- SA7 CPRA+4 SET *C* FORMAT CODE
- SB2 CPRA
- RJ POM POSITION DUMP FILE
- RJ LDC LIST DIRECTIVE CARD
- SB2 CPRA
- RJ PMD PROCESS DUMP
- * PRINT *MTR* AND BREAKPOINT XP-S.
- SA1 CPRA
- SX6 X1+CSXP
- SA6 A1+
- SB2 CPRA REPOSITION TO RA OF *CPUMTR*
- RJ POM POSITION DUMP FILE
- GETCM MTRB,2 READ WORD *CXBP* OF *CPUMTR*
- SA1 MTRB+1 GET ADDRESS OF *MTR* XP
- SA2 MTRC
- SX1 X1
- IX6 X1-X2 RELATIVE ADDRESS OF *MTR* XP
- SA6 CPRA
- SB2 A6
- RJ POM POSITION DUMP FILE
- GETCM BUF,BUFL READ EXCHANGE PACKAGES TO CORE
- SA1 PXMC
- SB2 /EXPACS/MXP
- RJ PXM PRINT EXCHANGE PACKAGE
- * PRINT CPU 0 IDLE XP.
- SA1 CPRA SET LISTING ADDRESS
- SX6 X1-40B+/EXPACS/IXP
- SA6 A1
- SA1 PXMN
- SX6 B1 SET ONE XP FLAG
- SB2 /EXPACS/IXP
- SA6 PXMM
- RJ PXM PRINT EXCHANGE PACKAGE
- PRINT (=2C )
- SA1 CPRA PRINT THE 3 WORDS FOLLOWING THE XP
- SX6 X1
- BX1 -X1
- SA6 FW SET LISTING ADDRESS
- SB2 X1+BUF+/EXPACS/IXP+20B SET CORE ADDRESS
- SA1 MTRD
- RJ GTD
- * PRINT CPU 1 IDLE XP.
- SA1 MTRB GET ADDRESS OF IDLE 1 XP
- SA2 MTRC
- SB2 CPRA
- SX1 X1
- IX6 X1-X2
- SA6 B2+
- RJ POM POSITION DUMP FILE TO IDLE 1
- GETCM BUF,MXXT
- SA1 BUF+DIXT GET ADDRESS OF DUAL CPU XP FOR CPU 1
- SA2 MTRC
- SB2 CPRA
- SX1 X1+
- IX6 X1-X2
- NG X6,MTR1 IF ONLY ONE CPU
- SA6 B2
- RJ POM POSITION DUMP FILE TO IDLE 1
- GETCM BUF,BUFL
- SA1 PXMO
- SX6 B1 SET ONE XP FLAG
- SB2 B0
- SA6 PXMM
- RJ PXM PRINT EXCHANGE PACKAGE
- PRINT (=2C )
- SA1 CPRA PRINT THE 3 WORDS FOLLOWING THE XP
- SX6 X1
- BX1 -X1
- SA6 FW SET LISTING ADDRESS
- SB2 BUF+20B+X1 SET CORE ADDRESS
- SA1 MTRD
- RJ GTD
- * PRINT PP EXCHANGE PACKAGES.
- MTR1 SA1 MTRB+1 GET MTR XP ADDRESS
- SA2 MTRC
- SB2 CPRA
- SX1 X1+/EXPACS/PXP
- IX6 X1-X2
- SA6 B2
- RJ POM POSITION DUMP FILE
- GETCM BUF,BUFL
- RJ PXP PRINT PPU EXCHANGE PACKAGES
- * PRINT CYBER 176 EXCHANGE PACKAGES.
- SA1 CF
- NZ X1,DSD1 IF NOT CYBER 176
- RJ SEA SET EXCHANGE ADDRESS
- RJ SRA SET REFERENCE ADDRESS
- RJ SCM SELECT CENTRAL MEMORY
- BX6 X6-X6 SET RELATIVE ADDRESS OF CYBER 176 PACKAGES
- SA6 CPRA
- SB2 A6
- SX7 X6+40B
- SA7 A6+1
- RJ POM POSITION DUMP FILE
- GETCM BUF,BUFL READ EXCHANGE PACKAGES TO CORE
- SA1 PXMD SET HEADER ADDRESS
- SB2 B0+
- RJ PXM PRINT CYBER 176 EXCHANGE PACKAGES
- SA1 PXMF SET HEADER ADDRESS
- SB2 40B SET *BUF* OFFSET
- RJ PXM PRINT PACKAGES
- SA1 F.TCMT
- SA1 X1+BIOL
- AX1 24
- SX1 X1
- ZR X1,DSD1 IF NO 819 DISKS IN SYSTEM
- SA1 PXMG SET HEADER FOR CHANNEL 2
- SB2 100B
- RJ PXM PRINT CHANNEL 2 I/O PACKAGES
- SA1 PXMH SET HEADER FOR CHANNEL 3
- SB2 140B
- RJ PXM PRINT CHANNEL 3 I/O PACKAGES
- SA1 PXMI SET HEADER FOR CHANNEL 4
- SB2 200B
- RJ PXM PRINT CHANNEL 4 I/O PACKAGES
- SA1 PXMJ SET HEADER FOR CHANNEL 5
- SB2 240B
- RJ PXM PRINT CHANNEL 5 I/O PACKAGES
- SA1 PXMK SET HEADER FOR CHANNEL 6
- SB2 300B
- RJ PXM PRINT CHANNEL 6 I/O PACKAGES
- SA1 PXML SET HEADER FOR CHANNEL 7
- SB2 340B
- RJ PXM PRINT CHANNEL 7 I/O PACKAGES
- EQ DSD1 PROCESS NEXT DIRECTIVE
- MTRA CON 0 FWA OF PP EXCHANGE PACKAGES FROM LOW CORE
- MTRB CON 0 WORD *CSXP* OF *CPUMTR* FL
- CON 0 WORD *CXBP* OF *CPUMTR* FL
- MTRC CON 0 RA OF *CPUMTR*
- MTRE CON 0,1,2,3
- MTRD VFD 24/0,18/MTRD1,18/MTRD2
- MTRD1 BSS 0
- FIELD MTRE+0,(STSW WORD ),59,60,I
- FIELD MTRE+1,(CWQW WORD ),59,60,I
- FIELD MTRE+2,(CSAW WORD ),59,60,I
- FIELD MTRE+3,(CTMW WORD ),59,60,I
- CON -1 END OF LEFT COLUMN
- MTRD2 BSS 0
- CON 0 END OF RIGHT COLUMN
- MTRD3 EQU *
- ERRNG 2*MTRD2-MTRD1-MTRD3 IF RIGHT COLUMN LONGER THAN LEFT
- MTRQU SPACE 4,10
- *** MTRQUEUE.
- * DUMP CPU REQUEST, PP REQUEST, CPUCIO REQUEST,
- * AND RECALL QUEUES.
- *
- * MTRQUEUE,P1,P2.
- * DUMP SELECTED QUEUES.
- MTRQU DATA 0LMTRQUEUE
- BX6 X6-X6 CLEAR *C* FLAG
- SA6 MTQB
- SA1 CH CHECK SEPARATOR
- SA1 X1+
- SX1 X1-1R.
- ZR X1,MTQ6 IF DUMPING ALL QUEUES
- SX6 0 CLEAR SELECTED OPTIONS
- SA6 MTQA
- MTQ1 RJ ASN GET NEXT PARAMETER
- ZR B6,MTQ7 IF NO MORE PARAMETERS
- AX1 X6,B6
- SX1 X1-1RC
- ZR X1,MTQ3 IF *C* SELECTED
- SX1 X1-1RP+1RC
- ZR X1,MTQ4 IF *P* SELECTED
- SX1 X1-1RR+1RP
- ZR X1,MTQ5 IF *R* SELECTED
- SX1 X1-1RW+1RR
- NZ X1,ERR6 IF INVALID PARAMETER
- SX6 1 SET *W* SELECTED
- MTQ2 SA1 MTQA UPDATE SELECTED OPTIONS
- BX6 X6+X1
- SA6 A1
- EQ MTQ1 GET NEXT PARAMETER
- MTQ3 SX6 10B SET *C* SELECTED
- JP MTQ2 SAVE SELECTION
- MTQ4 SX6 4 SET *P* SELECTED
- JP MTQ2 SAVE SELECTION
- MTQ5 SX6 2 SET *R* SELECTED
- JP MTQ2 SAVE SELECTION
- MTQ6 SX6 17B SELECT ALL OPTIONS
- SA6 MTQA
- * JP MTQ7 PROCESS DUMP
- * PROCESS CPU REQUEST QUEUE DUMP.
- MTQ7 SA5 NC PRESET QUEUE ENTRY LIMIT
- SX6 20B 20B ENTRIES PER CONTROL POINT
- SX5 X5+B1
- IX6 X5*X6
- SA6 CCQA
- RJ LDC LIST DIRECTIVE CARD
- SA1 MTQA GET OPTIONS
- SX2 1
- BX2 X2*X1
- ZR X2,MTQ10 IF *W* NOT SELECTED
- SX6 0 CLEAR QUEUE ENTRY COUNT
- SA6 CCQB
- PRINT (=2C )
- PRINT (=C* CPU REQUEST QUEUE*)
- PRINT (=2C )
- SA1 F.TCMT GET CORE ADDRESS
- SA2 X1+WQRL GET BASE LINK
- MTQ8 UX6,B4 X2
- ZR B4,MTQ10 IF END OF QUEUE
- SA3 NC CHECK IF CPUCIO REQUEST
- SX3 X3+B1
- LX3 7
- IX3 X6-X3
- PL X3,MTA9 IF CPUCIO REQUEST
- SX6 X6
- SA6 FW SAVE CONTROL POINT ADDRESS
- SB2 X1
- SA1 TCPR
- RJ GTD DUMP CPU REQUEST QUEUE WORDS
- RJ CCQ
- NG X5,MTQ10 IF CIRCULAR QUEUE FOUND
- PRINT (=2C )
- SA2 FW GET LINK TO NEXT ENTRY
- SA1 F.TCMT
- SX2 X2+CWQW
- IX2 X1+X2
- SA2 X2
- JP MTQ8 PROCESS NEXT ENTRY
- MTA9 MX6 -18 GET ADDRESS OF CPUCIO ENTRY
- BX6 -X6*X2
- SX6 X6-CWQW
- SA6 FW
- SA6 CPRA SET FWA
- SX7 25B
- IX7 X6+X7
- SA7 A6+B1 SET LWA
- SX6 B0+
- RJ SRA SET REFERENCE ADDRESS
- RJ SCM SELECT CENTRAL MEMORY
- SB2 CPRA
- RJ POM POSITION DUMP FILE
- GETCM BUF,25B
- SA2 FW
- SB2 X2 SET CORE ADDRESS
- SB2 -B2
- SB2 BUF+B2
- SA1 TCPR
- RJ GTD DUMP CPUCIO REQUEST QUEUE
- RJ CCQ
- NG X5,MTQ10 IF CIRCULAR QUEUE FOUND
- PRINT (=2C )
- SA2 BUF+CWQW
- JP MTQ8 PROCESS NEXT ENTRY
- * PROCESS PP REQUEST QUEUE DUMP.
- MTQ10 SA1 MTQA GET OPTIONS
- SX2 4
- BX2 X2*X1
- ZR X2,MTQ12 IF *P* NOT SELECTED
- SX6 0 CLEAR QUEUE ENTRY COUNT
- SA6 CCQB
- PRINT (=2C )
- PRINT (=C* PP REQUEST QUEUE*)
- PRINT (=2C )
- SA1 F.TCMT GET CORE ADDRESS
- SA2 X1+PQRL GET BASE LINK
- MTQ11 MX6 5
- LX6 11-59
- BX6 X6*X2 GET START OF CONTROL POINT AREA
- ZR X6,MTQ12 IF END OF QUEUE
- SA6 FW SAVE CONTROL POINT ADDRESS
- MX6 -7
- BX6 -X6*X2 GET INDEX INTO RCCW
- SA6 TPPRA
- SX6 X6+RECW-RCCW GET INDEX INTO RECW
- SA6 TPPRB
- SX6 X6+REPW-RECW GET INDEX INTO REPW
- SA6 TPPRC
- SB2 X1
- SA1 TPPR
- RJ GTD DUMP PP REQUEST QUEUE WORDS
- RJ CCQ
- NG X5,MTQ12 IF CIRCULAR QUEUE FOUND
- SA2 FW GET LINK TO NEXT ENTRY
- SA1 F.TCMT
- SA3 TPPRA
- IX2 X2+X3
- IX2 X2+X1
- SA2 X2+
- JP MTQ11 PROCESS NEXT ENTRY
- * PRINT CPUCIO REQUEST QUEUE.
- MTQ12 SA1 MTQB
- NZ X1,MTQ13 IF BOTH *P* AND *C* PROCESSED
- SX6 B1
- SA6 A1 SET *C* FLAG
- SA1 MTQA
- SX2 10B
- BX2 X2*X1
- ZR X2,MTQ13 IF *C* NOT SELECTED
- SX6 0 CLEAR QUEUE ENTRY COUNT
- SA6 CCQB
- PRINT (=2C )
- PRINT (=C* CPUCIO REQUEST QUEUE*)
- PRINT (=2C )
- SA1 F.TCMT
- SA2 X1+CQRL GET BASE INDEX
- JP MTQ11 PROCESS ENTRY
- * PROCESS RECALL QUEUE DUMP.
- MTQ13 SA1 MTQA GET OPTIONS
- SX2 2
- BX2 X2*X1
- ZR X2,MTQ17 IF *R* NOT SELECTED
- SX6 0 CLEAR QUEUE ENTRY COUNT
- SA6 CCQB
- PRINT (=2C )
- PRINT (=C* RECALL QUEUE*)
- PRINT (=2C )
- SA1 F.TCMT GET CORE ADDRESS
- SA2 X1+RQRL GET BASE LINK
- MTQ14 MX6 5
- LX6 11-59
- BX6 X6*X2 GET START OF CONTROL POINT AREA
- ZR X6,MTQ17 IF END OF QUEUE
- SA6 FW SAVE CONTROL POINT ADDRESS
- MX6 -7
- BX6 -X6*X2
- SA6 TPRLA SAVE LINK INDEX
- SX5 X6-CRCW
- NZ X5,MTQ15 IF PP RECALL
- SB2 X1
- SA1 TCRL
- RJ GTD DUMP CPU RECALL WORD
- RJ CCQ
- NG X5,MTQ17 IF CIRCULAR QUEUE FOUND
- JP MTQ16 GET NEXT ENTRY
- MTQ15 SX6 X6+RECW-RCCW GET INDEX INTO RECW
- SA6 TPRLB
- SX6 X6+REPW-RECW GET INDEX INTO REPW
- SA6 TPRLC
- SB2 X1
- SA1 TPRL
- RJ GTD DUMP PP RECALL WORDS
- RJ CCQ
- NG X5,MTQ17 IF CIRCULAR QUEUE FOUND
- MTQ16 PRINT (=2C )
- SA1 F.TCMT GET LINK TO NEXT ENTRY
- SA2 FW
- SA3 TPRLA
- IX2 X2+X3
- IX2 X2+X1
- SA2 X2
- JP MTQ14 PROCESS NEXT ENTRY
- MTQ17 JP DSD1 RETURN
- MTQA CON 0 SELECTED PARAMETERS
- MTQB CON 0 *C* PROCESSED FLAG
- ODIS SPACE 4,10
- *** ODIS.
- *
- * DUMP THE OPERATOR DISPLAY BUFFER.
- ODIS DATA 0LODIS
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+LDSP
- AX2 12
- SX6 X2-LODS SET DUMP FWA
- SX7 X2 SET DUMP LWA+1
- SB3 B0
- SX4 B0
- SX5 =C* OPERATOR-DISPLAY BUFFER*
- RJ DTB DUMP BUFFER
- EQ DSD1 RETURN
- OUTPUT SPACE 4,5
- *** OUTPUT,LFN.
- * OUTPUT. (*LFN* DEFAULT = *ALTRNT*)
- *
- * ASSIGN OUTPUT TO ALTERNATE FILE *LFN*. WHEN *LFN* IS
- * DISPOSED (SEE DISPOSE), OUTPUT RESUMES ON THE ORIGINAL
- * OUTPUT FILE. ONLY ONE ALTERNATE FILE MAY BE ACTIVE AT A TIME.
- * *LFN* MAY NOT BE THE SAME AS THE NORMAL OUTPUT FILE NAME.
- OUTPUT DATA 0LOUTPUT
- SA1 OF
- SX1 X1-A
- ZR X1,ERR11 IF ALREADY PROCESSING ALTERNATE FILE
- RJ ASN ASSEMBLE FILE NAME
- NZ X6,OTP1 IF NAME SPECIFIED
- SA1 OTPC SET DEFAULT NAME
- BX6 X1
- SB6 -36 SET SHIFT COUNT
- OTP1 SA1 L
- MX2 42
- BX1 X1-X6
- BX1 X1*X2
- ZR X1,ERR12 IF SAME AS OUTPUT FILE NAME
- SB6 B6+42
- NG B6,ERR12 IF NAME TOO LONG
- SX7 3
- BX6 X6+X7
- SA6 A SET ALTERNATE OUTPUT FILE NAME
- SA1 A6+B1 READ FIRST
- SX6 X1
- SA6 A1+B1 SET IN = FIRST
- SA6 A6+B1 OUT = FIRST
- SX2 A
- RJ STF CHECK IF TERMINAL
- ZR X6,ERR13 IF TERMINAL FILE
- SX6 X2+0
- SA6 OF SET OUTPUT FILE FET POINTER
- MOVE 6,CC,OTPA SAVE CURRENT LIST CONTROLS
- MOVE 6,OTPB,CC RESET CONTROLS FOR NEW FILE
- SA1 PRSB
- RJ RSP RESET PRINT DENSITY
- JP DSD1 RETURN
- OTPA BSS 6 LIST CONTROL SAVE AREA
- OTPB BSS 0 LIST CONTROL RESET BLOCK
- CON 0 CARRIAGE CONTROL CHARACTER
- CON 0 NO AUTO EJECT FLAG
- CON 100 LINE NUMBER
- CON 0 NUMBER OF LINES PER PAGE
- CON 1 PAGE NUMBER
- CON 0 TERMINAL OUTPUT FLAG
- OTPC DATA 6LALTRNT DEFAULT ALTERNATE LIST FILE NAME
- P SPACE 4,11
- *** P.
- * DUMP ALL PPUS IN BLOCK FORMAT.
- *
- * P,N1,N2,...,NN.
- * DUMP SELECTED PPUS.
- *
- * MEMORY IS DUMPED IN 100B WORD BLOCKS WITH 10B ROWS AND
- * 10B COLUMNS. EACH BLOCK IS READ COLUMNWISE. EACH PAGE
- * CONTAINS TWO BLOCKS ACROSS THE PAGE AND SIX DOWN.
- * ZERO BYTES ARE REPRESENTED AS *----*. REPETITIVE DATA
- * IS NOT SUPPRESSED.
- P DATA 0LP
- SX6 B0 INITIALIZE FOR PPU DUMP
- PPS1 RJ IPD
- PPS2 RJ SNP SELECT NEXT PPU
- ZR X1,DSD1 IF NO MORE PPUS TO DUMP
- RJ DPP DUMP PPU IN *P* FORMAT
- EQ PPS2 CONTINUE
- PCP SPACE 4,10
- *** PCP.
- *
- * DUMP PSEUDO-CONTROL POINTS (PCP-S).
- *
- * PARAMETERS ARE THE SAME AS FOR THE *CP* DIRECTIVE.
- PCP DATA 0LPCP
- SA2 F.TCMT
- SA2 X2+PCPP
- SX2 X2
- ZR X2,ERR48 IF NO PCP-S DEFINED
- SA1 NC
- SX1 X1+2 FIRST PCP NUMBER
- LX1 7
- IX6 X2-X1
- SA6 OP SET PCPA FWA OFFSET
- SX7 X2-CPLEN
- SA7 FW SET (PCPA FWA)-(CPLEN)
- SA1 TF
- ZR X1,CPP0 IF PRINTER OUTPUT
- SA2 ME SET LWA+1 OF PCPA-S
- EQ CPN0 DISPLAY PCPA-S AT TERMINAL
- PD SPACE 4,4
- *** PD,N.
- *
- * RESET PRINT LINE DENSITY TO N LINES PER INCH. N MAY BE
- * 3, 4, 6 OR 8.
- PD DATA 0LPD
- RJ ASN ASSEMBLE N
- SA6 PRSB SAVE DENSITY SELECTION
- BX1 X6
- RJ RSP RESET PRINT DENSITY
- JP DSD1 RETURN
- PF SPACE 4,20
- *** PF.
- * DUMP ALL FLPPS IN BLOCK FORMAT.
- *
- * PF,N1,N2,...,NN.
- * DUMP SELECTED FLPPS.
- *
- * MEMORY IS DUMPED IN 100B WORD BLOCKS WITH 10B ROWS AND
- * 10B COLUMNS. EACH BLOCK IS READ COLUMNWISE. EACH PAGE
- * CONTAINS TWO BLOCKS ACROSS THE PAGE AND SIX DOWN.
- * ZERO BYTES ARE REPRESENTED AS *----*. REPETITIVE DATA
- * IS NOT SUPPRESSED.
- PF DATA 0LPF
- SX6 B1 INITIALIZE FOR FLPP DUMP
- EQ PPS1 DUMP FLPPS
- PLD SPACE 4,3
- *** PLD.
- *
- * DUMP PERIPHERAL LIBRARY DIRECTORY IN *D* FORMAT.
- PLD DATA 0LPLD
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+PLDP
- LX2 24
- SX6 X2 FWA PP LIBRARY DIRECTORY
- SA3 X1+PSTP
- AX3 12
- SX7 X3 LWA+1 PP LIBRARY DIRECTORY
- SX5 =C* PERIPHERAL LIBRARY DIRECTORY*
- SB3 B1 SET *D* FORMAT
- SX4 B0 SET READ FROM DUMP FILE
- RJ DTB DUMP PLD
- EQ DSD1 RETURN
- PMS SPACE 4,20
- *** PMS,N1.
- * CYBER 170 PP MEMORY SELECT SWITCHES WERE PREVIOUSLY SET
- * TO VALUE N1.
- *
- * THE LOGICAL POSITION OF PP00 HAS BEEN CHANGED PRIOR TO THE
- * FULL DUMP TO TAPE. IF THE PP MEMORY SELECT SWITCHES HAVE
- * BEEN CHANGED, THIS DIRECTIVE SHOULD BE SPECIFIED WITH THE
- * BINARY VALUE OF THE SWITCHES PRIOR TO CHANGING THEM, I.E.,
- * 0 - 11B. THE DUMP OF THE S/C REGISTER WILL BE READ TO FIND
- * THE CURRENT VALUE OF THE SWITCHES AND DETERMINE THE CORRECT
- * LOGICAL PP TO BE DUMPED. IF THE MACHINE IS NOT A CYBER 170
- * OR THE VALUE N1 SPECIFIED IS THE SAME AS THE VALUE READ
- * FROM THE S/C REGISTER, THIS DIRECTIVE HAS NO MEANING.
- PMS DATA 0LPMS
- * MOVE TABLES TO TEMPORARY BUFFER.
- SA1 .NPP FIND TABLE ENTRY FOR FIRST PP
- MX0 24
- SEARCH TDIR,X1,X0 FIND PP00 TABLE ENTRY
- ZR X2,ERR7 IF NOT FOUND
- SX6 A2+ SAVE TABLE ENTRY ADDRESS
- SA6 PI
- MOVE 40,A2,BUF MOVE TABLE ENTRIES
- MOVE 20,TLPP,BUF+40 MOVE LOGICAL PP TABLE
- * CHECK FOR LEGAL SELECT SWITCH VALUE.
- SA1 CH
- SA1 X1+
- SX1 X1-1R.
- ZR X1,ERR6 IF NO VALUE SPECIFIED
- SB7 B0 ASSEMBLE SWITCH VALUE
- RJ ASD
- NZ X4,ERR6 IF ERROR
- SX7 X6-12B
- PL X7,ERR6 IF INCORRECT VALUE
- SA6 PMSA SAVE OLD VAUE OF SWITCHES
- * GET CURRENT VALUE OF SWITCHES.
- SA1 .SCR CHECK DIRECTORY FOR *SCR* RECORD
- MX0 18
- SEARCH TDIR,X1,X0 LOCATE S/C REGISTER RECORD
- ZR X2,ERR25 IF NOT A CYBER 170
- SA2 A2+2
- MX0 24
- LX0 -12
- SA3 =6L SC16
- BX4 X3-X2
- BX2 X0*X4
- NZ X2,ERR2 IF NO SC16 RECORD FOUND
- SA2 A2+B1 SET RANDOM INDEX OF S/C REGISTER
- BX6 X2
- SA6 RI
- SX3 B1 POSITION DUMP FILE
- RJ PDF
- READW S,BUF,B1 READ S/C REGISTER DATA
- SA1 BUF+PMSW* GET PP SELECT SWITCHES CURRENT VALUE
- MX0 -4
- LX1 7
- BX7 -X0*X1
- SA2 PMSA GET OLD VALUE
- IX4 X2-X7
- ZR X4,ERR25 IF OLD SAME AS NEW VALUE
- PL X4,PMS1 IF OLD VALUE .GT. NEW
- SX4 X4+10 BIAS VALUE DIFFERENCE FOR LOGICAL PP00
- * MOVE BANK OF PP ADDRESSES AND LOGICAL PP NUMBERS.
- PMS1 SX0 X4 INITIALIZE INDICIES
- SA5 PI
- SX1 B0
- SA0 12B SET END OF LOWER BANK
- PMS2 LX2 X0,B1 FIND TABLE ENTRY
- LX3 X1,B1
- SX2 BUF+X2
- SA2 X2+B1 TRANSFER ENTRY
- BX7 X2
- IX3 X5+X3
- SA7 X3+B1
- SA2 BUF+40+X0 TRANSFER LOGICAL PP NUMBER
- SX7 X2+
- SA7 TLPP+X1
- SX1 X1+1 INCREMENT INDICIES
- SX7 A0
- IX6 X1-X7
- ZR X6,PMS3 IF END OF BANK
- SX0 X0+B1
- IX6 X0-X7
- NG X6,PMS2 IF NOT WRAP AROUND
- SX0 A0-12B WRAP AROUND BANK
- EQ PMS2 PROCESS NEXT PP
- * CHECK FOR END OF PP-S.
- PMS3 SX6 A0-24B
- ZR X6,DSD1 IF BOTH BANKS PROCESSED
- SA2 NP CHECK FOR 20 PP-S
- SX7 X2-20
- NZ X7,DSD1 IF NOT 20 PP MACHINE
- SX0 X4+12B INITIALIZE INDICIES FOR UPPER BANK
- SX1 12B
- SA0 24B SET END OF UPPER BANK
- EQ PMS2 MOVE UPPER BANK
- PMSA CON 0 OLD SELECT SWITCH VALUE
- PO SPACE 4,25
- *** PO,N1,N2,...,NN.
- *
- * DUMP 16-BIT PP MEMORY IN OCTAL BLOCK FORMAT.
- *
- * NI NUMBER OF PP TO BE DUMPED. IF OMITTED, ALL
- * PP-S ARE DUMPED.
- *
- * THE *PO* DIRECTIVE CAUSES PP MEMORY TO BE DUMPED IN
- * OCTAL BLOCK FORMAT, WHERE EACH BLOCK REPRESENTS
- * 64 WORDS. EACH 16-BIT WORD IS REPRESENTED BY 6
- * OCTAL DIGITS UNLESS THE UPPER 4 BITS OF THE WORD
- * ARE ZERO. THEN THE WORD IS REPRESENTED BY 4
- * OCTAL DIGITS. THE BLOCKS ARE READ BY COLUMN (TOP
- * TO BOTTOM), WHERE EACH COLUMN CONTAINS EIGHT
- * 16-BIT WORDS NUMBERED 0 THRU 7. THERE ARE EIGHT
- * COLUMNS IN EACH BLOCK NUMBERED 0 THRU 7.
- * REPETITIVE DATA IS NOT SUPPRESSED AND ZERO WORDS
- * ARE REPRESENTED BY FOUR HYPHENS. THE CONTENTS
- * OF THE R-REGISTER IN OCTAL PRECEDES THE FIRST
- * BLOCK FOR EACH PP. OUTPUT TO THE TERMINAL IS
- * NOT PROVIDED.
- PO DATA 0LPO
- SX6 0 SET OCTAL BLOCK FORMAT
- EQ QOD1 DUMP PP/CPP
- PP SPACE 4,10
- *** PP.
- *
- * DUMP PPU COMMUNICATION REGISTERS. CONTROL POINT ASSIGNMENT,
- * CHANNEL ASSIGNMENT AND MONITOR FUNCTION ARE LISTED WITH
- * EACH COMMUNICATION AREA. THE AREAS ARE DUMPED IN BYTE
- * FORMAT WITH DISPLAY CODE INTERPRETATION.
- *
- * FOR TERMINAL OUTPUT, THE PPU NUMBER, EXECUTING PROGRAM
- * NAME, CONTROL POINT ASSIGNMENT AND INPUT REGISTER
- * ADDRESS ARE LISTED FOR EACH COMMUNICATION AREA.
- PP DATA 0LPP
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 TF
- NZ X1,PPTN IF TERMINAL OUTPUT
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ SCM SET CENTRAL MEMORY
- RJ LDC LIST DIRECTIVE CARD
- RJ ICT INITIALIZE CHANNEL RESERVATION TABLE
- RJ SSB SPACEFILL STRING BUFFER
- SA1 F.TCMT
- SA2 NP GET NUMBER OF PP-S
- SX2 X2-11
- SX7 32B SET LAST PP NUMBER FOR 20 PP CONFIGURATION
- PL X2,PPP1 IF 20 PP CONFIGURATION
- SX7 12B SET LAST PPU NUMBER
- PPP1 MX6 0
- SA6 FW INITIALIZE PPU NUMBER
- SA7 A6+B1 SET LAST PPU NUMBER
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- SA5 PC GET PP COMMUNICATION AREA POINTER
- IX5 X1+X5
- SA5 X5 READ FIRST WORD OF PP COMMUNICATION AREA
- PPP3 SX1 11B
- RJ CPS CHECK PAGE SPACE
- RJ FTR FORMAT 2 COMMUNICATION BLOCKS
- SA1 FW
- SA2 A1+1
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- SX6 X1+2 ADVANCE PPU NUMBER
- IX7 X6-X2
- PL X7,PPP5 IF LAST PHYSICAL PP PROCESSED
- SX7 X6-10
- NZ X7,PPP4 IF NOT END OF FIRST BANK
- SX6 20B RESET TO BEGINNING OF UPPER BANK
- PPP4 SA6 A1+ UPDATE PPU NUMBER
- JP PPP3 CONTINUE
- PPP5 SA1 C4 NUMBER OF CPP-S
- ZR X1,PPP8 IF NO CPP-S
- BX6 X1
- SA6 LW INITIALIZE LAST CPP NUMBER
- SA6 IC SET *CPP* PROCESSING FLAG
- SX1 13B
- RJ CPS CHECK PAGE SPACE
- PRINT (=2C )
- PRINT (=C* CONCURRENT PP-S COMMUNICATION AREA*)
- PRINT (=2C )
- MX6 0 INITIALIZE CPP NUMBER
- SA6 FW
- SA6 FTRB RESET 2 PP FLAG
- PPP6 SX1 11B
- RJ CPS CHECK PAGE SPACE
- RJ FTR FORMAT 2 COMMUNICATION BLOCKS
- SA1 FW
- SX6 X1+2 ADVANCE CPP NUMBER
- SA2 A1+B1
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- IX7 X6-X2
- PL X7,PPP7 IF LAST PHYSICAL CPP PROCESSED
- SA6 A1 UPDATE CPP NUMBER
- SX0 X7+B1
- NZ X0,PPP6 IF EVEN NUMBER OF CPP-S
- SX7 1 SET 1 PP FLAG
- SA7 FTRB
- JP PPP6 CONTINUE
- PPP7 BX6 X6-X6 CLEAR PROCESSING CPP FLAG
- SA6 IC
- PPP8 PRINT (=2C )
- PRINT (=C* PSEUDO PP COMMUNICATION AREA*)
- PRINT (=2C )
- SA1 F.TCMT GET ADDRESS OF FIRST PSEUDO AREA
- SA2 PC
- SA3 NP GET NUMBER OF PP-S
- SX6 B1+
- SA6 FTRB SET 1 PSEUDO PP FLAG
- BX6 X6-X6
- LX3 3
- IX3 X2+X3
- SA4 C4
- LX4 3
- IX3 X4+X3
- SA6 FW CLEAR PP NUMBER
- IX3 X1+X3
- SA5 X3+ ADDRESS OF PSEUDO AREA
- RJ FTR PROCESS PSEUDO PP-S
- JP DSD1 RETURN
- * PROCESS TERMINAL OUTPUT.
- PPTN SA0 B0 PRESET PPU NUMBER
- SA5 PC GET PP COMMUNICATION AREA POINTER
- PPT1 PRINT (=2C )
- * PRINT PPU NAMES.
- SA2 PPTA GET LOOP COUNT
- SB2 X2+
- SB7 PRBF PRINT STRING ADDRESS
- PPT2 SX6 A0+
- SA6 //PP SET PPU NUMBER
- RJ BPN BUILD PPU NAME
- BX2 X6
- SB6 7
- RJ UPS FORMAT PPU NAME
- SB2 B2-B1
- SA0 A0+B1 ADVANCE PPU NUMBER
- GT B2,B0,PPT2 IF MORE FOR THIS LINE
- PRINT PRBF,B7-PRBF
- * PRINT EXECUTING PROGRAM NAMES AND CONTROL POINT ASSIGNMENTS.
- SB7 PRBF
- SB2 X5 PP COMMUNICATION AREA INDEX
- MX3 18
- SA4 F.TCMT
- SA2 PPTA GET LOOP COUNT
- SB3 X2+
- PPT3 SA2 B2+X4 READ PP INPUT REGISTER
- MX1 12
- BX1 X1*X2
- NZ X1,PPT4 IF PPU ACTIVE
- SA2 =4L----
- SB6 7
- RJ UPS
- JP PPT5 CONTINUE
- PPT4 BX2 X3*X2 MASK NAME
- SB6 3
- RJ UPS SET NAME IN PRINT STRING
- SX6 1R-
- SA6 B7
- SB7 B7+B1
- SA2 A2 REREAD INPUT REGISTER
- MX1 -5
- LX2 24
- BX1 -X1*X2 CONTROL POINT NUMBER
- LX1 -6
- SB6 B1+B1
- RJ CTS SET CONTROL POINT NUMBER
- SB7 B7+1 SPACE 1
- PPT5 SB2 B2+10B ADVANCE COMMUNICATION AREA ADDRESS
- SB3 B3-1
- GT B3,B0,PPT3 IF MORE FOR THIS LINE
- PRINT PRBF,B7-PRBF
- * PRINT COMMUNICATION AREA ADDRESSES.
- SB7 PRBF
- SA1 PPTA GET LOOP COUNT
- SB2 X1+
- PPT6 BX1 X5
- LX1 -12
- SB6 4
- RJ CTS CONVERT ADDRESS
- SB6 3
- RJ SBL SPACE 3
- SX5 X5+10B ADVANCE ADDRESS
- SB2 B2-1
- GT B2,B0,PPT6 IF MORE FOR THIS LINE
- PRINT PRBF,B7-PRBF
- SA1 NP
- SX2 A0
- IX2 X2-X1
- SA0 A0-12B+20B ADJUST PP NUMBER FOR UPPER BANK
- SA3 PPTA
- SX3 X3-2
- SA4 IC
- NZ X4,PPT7 IF CPP-S ALREADY PROCESSED
- NG X3,PPT8 IF PSEUDO PP-S PROCESSED
- NG X2,PPT1 IF 10 MORE PPUS
- SA2 C4
- ZR X2,PPT7 IF NO CPP-S
- BX6 X2 RESET COUNT FOR CPP-S
- SA6 PPTA
- SA6 IC SET *CPP* PROCESSING FLAG
- PPT6.1 SA0 0 SET *CPP* NUMBER
- JP PPT1 CONTINUE PROCESSING
- PPT7 SX6 B1
- SA6 PPTA SET COUNT FOR PSEUDO PP
- SX6 B0 CLEAR *CPP* PROCESSING FLAG
- SA6 IC
- JP PPT6.1 PROCESS NEXT LINE
- PPT8 SX6 10 RESET LOOP COUNT FOR NEXT CALL
- SA6 PPTA
- JP DSD1 RETURN
- PPTA CON 10 LOOP COUNT
- PROBE SPACE 4,10
- *** PROBE.
- *
- * DUMP *PROBE* TABLES IN *D* FORMAT.
- PROBE DATA 0LPROBE
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+SSTL
- LX2 59-30
- NG X2,ERR27 IF PROBE NOT ENABLED
- SA2 X1+PRBP
- PL X2,ERR26 IF PROBE TABLES INTERLOCKED
- SX6 X2 SET FWA OF DUMP
- LX2 -24 SET LWA+1 OF DUMP
- SX2 X2
- IX7 X2+X6
- SX5 =C* PROBE TABLES*
- SB3 B1 SET *D* FORMAT
- SX4 B0 SET READ FROM DUMP FILE
- RJ DTB DUMP TABLES
- EQ DSD1 RETURN
- PROCA SPACE 4,20
- *** PROCA.
- *
- * SPECIFIES THAT THE ENTIRE PROCESSOR OPERAND CACHE
- * SHOULD BE DUMPED.
- *
- * PROCA,FIRST,LAST.
- *
- * FIRST SPECIFIES THE FIRST WORD (HEX) TO BE DUMPED.
- * IF OMITTED, WORD 00 IS USED BY DEFAULT.
- *
- * LAST SPECIFIES THE LAST+1 WORD (HEX) TO BE DUMPED.
- * IF OMITTED, WORD FIRST+1 IS USED BY DEFAULT.
- * IF FIRST IS OMITTED, WORD 4095 IS DEFAULT FOR LAST.
- *
- * THE *PROCA* DIRECTIVE IS APPLICABLE ONLY WHEN DUMPING A
- * CYBER 180-990 MAINFRAME, AND CAUSES THE PROCESSOR LOAD/STORE
- * UNIT (LSU) OPERAND CACHE MEMORY CONTENTS TO BE DUMPED. THE
- * RADIAL MCI IS PRINTED BEFORE PRINTING REGISTER 00. EACH
- * ROW CONTAINS THE WORD NUMBER, AND THE CONTENTS OF THE
- * CORRESPONDING CONTROL WORD AND DATA WORD.
- PROCA DATA 0LPROCA
- PCA1 RJ LDC LIST DIRECTIVE CARD
- SA1 .POC
- SX6 B1+ DISPLAY RADIAL MCI
- RJ FPR FIND PROCESSOR RECORD
- ZR X2,ERR14 IF RECORD NOT FOUND
- SX6 4095 SET DEFAULT LWA+1
- RJ SHA SET HEX ADDRESSES
- PRINT (=C* CONTROL WORDS DATA WORDS*)
- PRINT (=2C )
- RJ SSB CLEAR STRING BUFFER
- PCA4 SA3 FW GET FWA
- LX3 2 CONVERT TO BYTE NUMBER
- RJ FBP FIND BYTE POSITION
- * READ BLOCK OF 60 64-BIT REGISTER WORDS FROM CONTROL
- * WORD AREA AND CORRESPONDING DATA WORD AREA.
- SB6 B0+
- SB7 240
- PCA5 RJ NXB READ 4*60 16-BIT BYTES (64 CM WORDS)
- BX6 X1
- SA6 BUF+B6 WRITE THEM INTO BUF+0 TO BUF+239
- SB6 B6+B1
- LT B6,B7,PCA5 IF LESS THAN 60 WORDS READ
- SA3 FW GET POSITION
- LX3 2
- SX3 X3+4096*4 JUMP TO DATA WORD AREA
- RJ FBP FIND BYTE POSITION
- SB6 0
- SB7 240 READ 60 DATA WORDS AND STORE THEM IN BUF
- PCA6 RJ NXB
- BX6 X1
- SA6 BUF+240+B6 SAVE THEM IN BUF RIGHT AFTER CONTROL WORDS
- SB6 B6+B1
- LT B6,B7,PCA6 IF LESS THAN 60 WORDS READ
- SA0 0 INITIALIZE BUFFER POINTER
- PCA7 SA1 FW GET CURRENT FWA
- SB7 PRBF
- SB6 3
- LX1 59-11
- RJ HTS PLACE ENTRY NUMBER IN OUTPUT FIELD
- SA1 BUF+A0-1 READ CONTENTS OF BUFFER
- SX5 4
- PCA9 SA1 A1+B1
- LX1 59-15
- SB7 B7+2 READ ONE CONTROL WORD
- SB6 4
- RJ HTS
- SX5 X5-1
- NZ X5,PCA9 IF MORE DATA TO READ
- SA1 BUF+240-1+A0 READ CORRESPONDING DATA WORD
- SB7 B7+2
- SX5 4
- PCA10 SA1 A1+B1
- LX1 59-15
- SB7 B7+2
- SB6 4
- RJ HTS
- SX5 X5-1
- NZ X5,PCA10 IF MORE DATA TO READ
- PRINT CCCH,B7-CCCH+1 PRINT OUT LINE
- SA1 FW FWA
- SA2 A1+B1 LWA+1
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- IX2 X1-X2
- PL X2,PCA11 IF REACHED LWA
- SX6 X1+B1 INCREMENT FWA
- SA6 A1
- SA0 A0+4 INCREMENT BUFFER POINTER
- SX1 A0-240
- NZ X1,PCA7 IF BUFFER NOT EMPTY
- JP PCA4 READ NEXT BLOCK OF WORDS
- PCA11 SA1 NR NEXT TABLE ENTRY
- ZR X1,DSD1 IF NO MORE RECORDS TO PROCESS
- JP PCA1 PROCESS NEXT RECORD
- PROCW SPACE 4,10
- *** PROCW.
- *
- * THE *PROCW* DIRECTIVE CAUSES THE PROCESSOR CONTROLWARE
- * PART NUMBER AND REVISION LEVEL TO BE DUMPED.
- PROCW DATA 0LPROCW
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 .PMR
- RJ GID GET ELEMENT ID
- SA2 TMNO+X6
- BX6 X2
- NG X6,ERR14 IF UNUSED MODEL
- SA6 PCWA
- PCW1 RJ LDC LIST DIRECTIVE
- SA1 .PCS
- SX6 B0+ SET NO RADIAL MCI DISPLAY
- RJ FPR FIND PROCESSOR RECORD
- ZR X2,ERR14 IF RECORD NOT FOUND
- SA3 PCWA
- RJ FBP FIND BYTE POSITION
- SA2 =41HCONTROLWARE PART NUMBER/REVISION LEVEL =
- SB6 41
- SB7 PRBF
- RJ UPS UNPACK STRING
- SB5 4
- PCW4 RJ NXB GET NEXT BYTE
- SB6 B1+B1
- LX1 -16 POSITION TO TOP OF WORD
- BX2 X1
- SB5 B5-B1
- RJ SAI SET ASCII INTERPRETATION
- NZ B5,PCW4 IF MORE ASCII TO CONVERT
- PRINT CCCH,B7-CCCH
- SA1 NR
- ZR X1,DSD1 IF DONE, RETURN TO PROCESS NEXT DIRECTIVE
- JP PCW1 PROCESS NEXT CONTROLWARE RECORD
- PCWA CON 0 BYTE OFFSET
- ** TMNO - TABLE OF MODEL NUMBER OFFSETS.
- *
- *T 12/ OFFSET
- *
- * OFFSET = NUMBER OF 16-BIT BYTES TO SKIP TO FIND THE START OF
- * THE MICROCODE NAME IN THE CONTROL STORE RECORD FOR
- * THIS MODEL NUMBER.
- * = -1, IF THE MODEL NUMBER IS NOT VALID.
- TMNO BSS 0
- LOC 0
- CON -1 UNUSED
- CON 8 P1
- CON 12 P2
- CON 4 P3
- CON 20420 THETA
- CON 8 P0
- CON -1 UNUSED
- CON -1 UNUSED
- LOC *O
- PROMR SPACE 4,25
- *** PROMR.
- *
- * SPECIFIES THAT ALL PROCESSOR MAINTENANCE REGISTERS
- * SHOULD BE DUMPED.
- *
- * PROMR,FIRST,LAST.
- *
- * FIRST SPECIFIES THE FIRST REGISTER (HEX) TO BE DUMPED.
- * IF OMITTED, REGISTER 00 IS USED BY DEFAULT.
- *
- * LAST SPECIFIES THE LAST PLUS ONE REGISTER (HEX) TO BE
- * DUMPED. IF OMITTED, FIRST+1 IS USED BY DEFAULT.
- *
- * THE PROMR DIRECTIVE CAUSES THE PROCESSOR MAINTENANCE
- * REGISTERS TO BE DUMPED. FOR EACH REGISTER, THE
- * REGISTER NUMBER, REGISTER CONTENTS, AND REGISTER
- * DESCRIPTION ARE PRINTED. FOR REGISTERS CONTAINING
- * ERROR INDICATORS, DESCRIPTIONS OF ERROR INDICATORS
- * SET ARE PRINTED. THE RADIAL MAINTENANCE CHANNEL
- * INTERFACE (MCI) IS PRINTED BEFORE PRINTING
- * REGISTER 00.
- PROMR DATA 0LPROMR
- PRM1 SA1 .PMR RECORD ID
- SX7 PMRA DESCRIPTOR TABLE ADDRESS
- RJ DMR DUMP MAINTENANCE REGISTERS
- SA1 NR
- NZ X1,PRM1 LOOP FOR MORE RECORDS
- EQ DSD1 RETURN TO PROCESS NEXT DIRECTIVE
- * DESCRIPTOR FORMAT -
- *
- *T 9/ REGISTER,17/ BDTA,17/ 0,17/ DESCRIPTOR PTR
- *
- * BDTA = BIT DESCRIPTOR TABLE ADDRESS.
- PMRA BSS 0
- SXREG SSMR,(STATUS SUMMARY ),PMRB
- SXREG EIMR,(ELEMENT ID )
- SXREG PPID,(PROCESSOR ID )
- SXREG OIMR,(OPTIONS INSTALLED )
- SXREG PVCM,(VM CAPABILITY LIST )
- SXREG DEMR,(DEPENDENT ENV CTRL )
- SXREG PCSA,(CSA ADDR BEFORE HALT )
- SXREG PCSB,(CONTROL MEM BKPT )
- SXREG PPRG,(PROGRAM ADDR )
- SXREG PMPS,(MTR PROCESS STATE PTR)
- SXREG PMCR,(MTR CONDITION REG ),PMRC
- SXREG PUCR,(USER CONDITION REG )
- SXREG PUPR,(UNTRANSLATABLE PTR )
- SXREG PSTL,(SEGMENT TABLE LENGTH )
- SXREG PSTA,(SEGMENT TABLE ADDRESS)
- SXREG PBCR,(BASE CONSTANT )
- SXREG PPTA,(PAGE TABLE ADDRESS )
- SXREG PPTL,(PAGE TABLE LENGTH )
- SXREG PPSM,(PAGE SIZE MASK )
- SXREG PMDF,(MODEL DEPENDENT FLAGS),,S3+THETA
- SXREG PMDW,(MODEL DEPENDENT WORD ),,S1+S2
- SXREG PMMR,(MTR MASK )
- SXREG PJPS,(JOB PROCESS STATE PTR)
- SXREG PSIT,(SYS INTERVAL TIMER )
- SXREG PPFS,(PROC FAULT STATUS ),,S1+S2
- SXREG PPFS,(PROC FAULT STATUS 0 ),,S3+THETA
- SXREG PCSP,(CONTROL STORE ERR LOG),,S1
- SXREG PCSP,(CONTROL MEMORY PARITY),,S2
- SXREG PPFS+1,(PROC FAULT STATUS 1 ),,S3+THETA
- SXREG PPFS+2,(PROC FAULT STATUS 2 ),,S3+THETA
- SXREG PPFS+3,(PROC FAULT STATUS 3 ),,S3+THETA
- SXREG PPFS+4,(PROC FAULT STATUS 4 ),,S3+THETA
- SXREG PPFS+5,(PROC FAULT STATUS 5 ),,S3+THETA
- SXREG PPFS+6,(PROC FAULT STATUS 6 ),,S3+THETA
- SXREG PPFS+7,(PROC FAULT STATUS 7 ),,S3+THETA
- SXREG PPFS+8,(PROC FAULT STATUS 8 ),,S3+THETA
- SXREG PPFS+9,(PROC FAULT STATUS 9 ),,S3+THETA
- SXREG PPFS+10,(PROC FAULT STATUS A ),,THETA
- SXREG PPFS+11,(PROC FAULT STATUS B ),,THETA
- SXREG PPFS+12,(PROC FAULT STATUS C ),,THETA
- SXREG PPFS+13,(PROC FAULT STATUS D ),,THETA
- SXREG PPFS+14,(PROC FAULT STATUS E ),,THETA
- SXREG PPFS+15,(PROC FAULT STATUS F ),,THETA
- SXREG PRCL,(RETRY CORR ERROR LOG ),,S1+S2
- SXREG PUCS,(CONTROL STORE ERR LOG),,S1
- SXREG PCCL,(CACHE CORR ERR LOG ),,S2
- SXREG PMCL,(MAP CORR ERR LOG ),,S1+S2
- SXREG PPTM,(PROC TEST MODE ),,S1+S2+S3
- SXREG PPTM,(PROC TEST MODE 0 ),,THETA
- SXREG PPTM+1,(PROC TEST MODE 1 ),,THETA
- SXREG PPTM+2,(PROC TEST MODE 2 ),,THETA
- SXREG PPTM+3,(PROC TEST MODE 3 ),,THETA
- SXREG PTPE,(TRAP ENABLE )
- SXREG PTPE+1,(TRAP ENABLE )
- SXREG PTPE+2,(TRAP ENABLE )
- SXREG PTPE+3,(TRAP ENABLE )
- SXREG PTRP,(TRAP PTR )
- SXREG PDLP,(DEBUG LIST PTR )
- SXREG PKPM,(KEYPT MASK )
- SXREG PKPC,(KEYPT CODE )
- SXREG PKCN,(KEYPT CLASS NUMBER )
- SXREG PPIT,(PROC INTERVAL TIMER )
- SXREG PCCF,(CRITICAL FRAME FLAG )
- SXREG PCCF+1,(CRITICAL FRAME FLAG )
- SXREG POCF,(ON CONDITION FLAG )
- SXREG POCF+1,(ON CONDITION FLAG )
- SXREG PDBI,(DEBUG INDEX )
- SXREG PDBM,(DEBUG MASK )
- SXREG PUSM,(USER MASK )
- SXREG PRDM,(REG FILE DUMP ADDRESS),,S1+S2
- CON 0
- * REG *SSMR* (STATUS SUMMARY) BIT INTERPRETATIONS.
- *
- * DESCRIPTOR FORMAT -
- *
- *T 9/ BIT NO.,17/ 0,17/ 0,17/ DESCRIPTOR PTR
- PMRB BSS 0
- S2BIT 58,(EXECUTIVE MONITOR MODE)
- S2BIT 59,(SHORT ENVIRON WARNING)
- S2BIT 60,(PROCESSOR HALT )
- S2BIT 61,(UNCORRECTABLE ERROR )
- S2BIT 62,(CORRECTED ERROR )
- S2BIT 63,(PHYSICAL ENVIRON WARNING)
- CON 0
- * REG *PMCR* (MTR COND REG) BIT INTERPRETATIONS.
- *
- * DESCRIPTOR FORMAT -
- *
- *T 9/ BIT NO.,17/ 0,17/ 0,17/ DESCRIPTOR PTR
- PMRC BSS 0
- S2BIT 48,(DETECTED UNCORR ERR )
- S2BIT 50,(SHORT WARNING )
- S2BIT 51,(INSTRUCTION SPEC ERROR)
- S2BIT 52,(ADDRESS SPEC ERROR )
- S2BIT 53,(C170 EXCHANGE REQUEST)
- S2BIT 54,(ACCESS VIOLATION )
- S2BIT 55,(ENVIRONMENT SPEC ERROR)
- S2BIT 56,(EXTERNAL INTERRUPT )
- S2BIT 57,(PAGE TBL SEARCH W/O FIND)
- S2BIT 58,(SYSTEM CALL )
- S2BIT 59,(SYSTEM INTERVAL TIMER)
- S2BIT 60,(INCORRECT SEG/RING 0 )
- S2BIT 61,(OUTWARD CALL/INWARD RETURN)
- S2BIT 62,(SOFT/CORRECTED ERROR )
- S2BIT 63,(TRAP EXCEPTION )
- CON 0
- *
- * SECOND OCCURANCE OF REGISTER 31 DESCRIPTOR.
- *
- PMRD BSS 0
- SXREG PCSA,(CSA ADDR AFTER HALT )
- CON 0
- PROPM SPACE 4,10
- *** PROPM.
- *
- * DUMP CYBER 180-990 PROCESSOR PAGE MAP.
- *
- * THE *PROPM* DIRECTIVE IS APPLICABLE ONLY WHEN DUMPING A
- * CYBER 180-990 MAINFRAME, AND CAUSES THE PROCESSOR PAGE MAP
- * TO BE DUMPED. THE RADIAL MCI IS PRINTED BEFORE PRINTING
- * REGISTER 00. THERE ARE NO PARAMETERS. FOR EACH REGISTER,
- * THE SET NUMBER, ENTRY NUMBER WITHIN THE SET, AND THE REGISTER
- * CONTENTS ARE PRINTED.
- PROPM DATA 0LPROPM
- SA5 .PPM RECORD ID
- SX7 3 MAXIMUM SET NUMBER
- EQ PSM1 PROCESS PAGE MAP
- PRORF SPACE 4,20
- *** PRORF.
- *
- * SPECIFIES THAT THE ENTIRE PROCESSOR REGISTER FILE
- * SHOULD BE DUMPED.
- *
- * PRORF,FIRST,LAST.
- *
- * FIRST SPECIFIES THE FIRST REGISTER (HEX) TO BE DUMPED.
- * IF OMITTED, REGISTER 00 IS USED BY DEFAULT.
- *
- * LAST SPECIFIES THE LAST+1 REGISTER (HEX) TO BE DUMPED.
- * IF OMITTED, FIRST+1 IS USED BY DEFAULT.
- *
- * THE *PRORF* DIRECTIVE CAUSES THE PROCESSOR REGISTER
- * FILE TO BE DUMPED. THE RADIAL MCI IS PRINTED
- * BEFORE PRINTING REGISTER 00. FOR EACH REGISTER,
- * THE REGISTER NUMBER AND REGISTER CONTENTS ARE
- * PRINTED.
- PRORF DATA 0LPRORF
- SA1 .PMR
- RJ GID GET ELEMENT ID
- SX6 X6-4
- NZ X6,PRF2 IF NOT CYBER 180-990
- RJ TPF
- EQ DSD1 RETURN
- PRF1 SA1 NR
- ZR X1,DSD1 IF NO MORE RECORDS TO PROCESS
- PRF2 RJ LDC DISPLAY DIRECTIVE
- SA1 .PRF
- SX6 1 DISPLAY RADIAL MCI
- RJ FPR FIND PROCESSOR RECORD
- ZR X2,ERR14 IF RECORD NOT FOUND
- MX0 -18 PRESET *LAST* TO ACTUAL NUMBER OF REGS
- BX6 -X0*X2
- RJ SHA SET HEX ADDRESSES
- SA3 FW
- LX3 2 CONVERT STARTING REGISTER NUMBER TO BYTE
- RJ FBP FIND BYTE POSITION
- PRF3 SA1 FW
- SX6 X1+B1
- SA2 A1+B1 LAST REGISTER+1 TO PRINT
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- SA6 A1 INCREMENT REGISTER NUMBER
- IX3 X2-X6
- NG X3,PRF1 IF ALL REGISTERS PRINTED
- SB7 PRBF
- SB6 B1+B1
- LX1 59-7
- RJ HTS DISPLAY REGISTER NUMBER
- RJ DHR DISPLAY REGISTER
- EQ PRF3 DISPLAY NEXT REGISTER
- PROSM SPACE 4,10
- *** PROSM.
- *
- * DUMP CYBER 180-990 PROCESSOR SEGMENT MAP.
- *
- * THE *PROSM* DIRECTIVE IS APPLICABLE ONLY WHEN DUMPING A
- * CYBER 180-990, AND CAUSES THE PROCESSOR SEGMENT MAP TO BE
- * DUMPED. THE RADIAL MCI IS PRINTED BEFORE PRINTING REGISTER
- * 00. THERE ARE NO PARAMETERS. FOR EACH REGISTER, THE
- * SET NUMBER, ENTRY NUMBER WITHIN THE SET, AND THE REGISTER
- * CONTENTS ARE PRINTED.
- PROSM DATA 0LPROSM
- SA5 .PSM RECORD ID
- SX7 B1+ MAXIMUM SET NUMBER
- PSM1 SA7 LW SAVE LAST SET NUMBER
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- PSM2 RJ LDC DISPLAY DIRECTIVE
- BX1 X5
- SX6 B1 DISPLAY RADIAL MCI
- RJ FPR FIND PROCESSOR RECORD
- ZR X2,ERR14 IF RECORD NOT FOUND
- BX7 X7-X7
- SX3 B0
- SA7 FW INITIALIZE SET NUMBER
- RJ FBP POSITION DUMP FILE
- SA0 0 INITIALIZE ENTRY NUMBER
- PRINT (=C* SET ENTRY CONTENTS *)
- PRINT (=2C )
- PSM3 SA1 FW DISPLAY SET NUMBER
- SX6 X1+1R0
- SA6 PRBF+1
- SX1 A0 DISPLAY ENTRY NUMBER
- SB6 B1+B1
- SB7 PRBF+6
- RJ CDD
- BX2 X6
- LX2 59-11
- RJ UPS
- SA0 A0+1 INCREMENT ENTRY NUMBER
- RJ DHR DISPLAY REGISTER
- SX3 A0-32D
- NG X3,PSM3 IF NOT FINISHED WITH SET
- SA2 FW GET SET NUMBER
- SA1 A2+B1 GET LAST SET NUMBER
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- IX1 X1-X2
- ZR X1,PSM4 IF DONE
- SX7 X2+B1 INCREMENT SET NUMBER
- SA7 A2
- SA0 0 RESET ENTRY NUMBER
- EQ PSM3 DISPLAY NEXT SET
- PSM4 SA1 NR NEXT TABLE ENTRY
- NZ X1,PSM2 IF MORE RECORDS TO PROCESS
- EQ DSD1 RETURN TO PROCESS NEXT DIRECTIVE
- PROXP SPACE 4,10
- *** PROXP.
- *
- * DUMP CYBER 170-8X5 EXCHANGE PACKAGE.
- *
- * THE *PROXP* DIRECTIVE CAUSES THE PROCESSOR EXCHANGE
- * PACKAGE TO BE DUMPED. THE RADIAL MCI IS PRINTED BEFORE
- * REGISTER *SSMR*. FOR EACH REGISTER, THE REGISTER NUMBER,
- * REGISTER CONTENTS, AND DESCRIPTIVE INFORMATION IS PRINTED.
- PROXP DATA 0LPROXP
- RJ LDC LIST DIRECTIVE CARD
- RJ GHA GET HARDWARE ADDRESS
- PRX1 SX3 1 DISPLAY RADIAL MCI
- RJ PTX POSITION TO EXCHANGE PACKAGE
- SX6 51 DISPLAY FULL EXCHANGE PACKAGE
- SX1 0
- RJ FXA FORMAT EXCHANGE AREA
- SA1 NR NEXT DIRECTORY TABLE ENTRY
- ZR X1,DSD1 IF NO MORE TO PROCESS
- SB6 0 NO ADDRESS SPECIFIED
- EQ PRX1 PROCESS NEXT EXCHANGE PACKAGE
- PST SPACE 4,10
- *** PST.
- *
- * DUMP PROGRAM STATUS TABLE AND
- * ENTRY POINT DIRECTORY IN *D* FORMAT.
- PST DATA 0LPST
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+PSTP GET FWA PST
- AX2 12
- SX6 X2
- AX2 24 GET LWA+1 PST
- SX7 X2
- SX5 =C* PROGRAM STATUS TABLE*
- SB3 B1 SET *D* FORMAT
- SX4 B0 SET READ FROM DUMP FILE
- RJ DTB DUMP PST
- SA1 CPRA+1 GET FWA EPD
- SA2 F.TCMT GET LWA+1 EPD
- SA2 X2+LBDP
- AX2 12
- BX6 X1
- SX7 X2
- SB3 B0 SET *D* FORMAT
- SX5 =C* ENTRY POINT DIRECTORY*
- SX4 0 SET READ FROM DUMP FILE
- RJ DTB DUMP EPD
- EQ DSD1 RETURN
- PUT SPACE 4,10
- *** PUT.
- * DUMP ALL NONZERO PHYSICAL UNIT TABLE ENTRIES.
- *
- * PUT,E1,E2,...,EN.
- * DUMP SELECTED PHYSICAL UNIT TABLE ENTRIES.
- PUT DATA 0LPUT
- SX5 =C* PHYSICAL UNIT TABLE*
- SX6 TPUE SET FORMAT TABLE POINTERS ADDRESS
- SX7 =4HPUT SET TABLE NAME ADDRESS
- SB2 /HIO/PUTP SET BUFFERED DEVICE TABLE INDEX
- RJ DBT DUMP *PUT*
- EQ DSD1 RETURN
- PX SPACE 4,25
- *** PX,N1,N2,...,NN.
- *
- * DUMP 16-BIT PP MEMORY IN HEX BLOCK FORMAT.
- *
- * NI NUMBER OF PP TO BE DUMPED. IF OMITTED,
- * ALL PP-S ARE DUMPED.
- *
- * THE *PX* DIRECTIVE CAUSES PP MEMORY TO BE DUMPED
- * IN HEXADECIMAL BLOCK FORMAT WHERE EACH BLOCK
- * REPRESENTS 256 WORDS. EACH 16-BIT WORD IS
- * REPRESENTED BY 4 HEXADECIMAL DIGITS. THE BLOCKS
- * ARE READ BY COLUMN (TOP TO BOTTOM), WHERE EACH
- * COLUMN CONTAINS 16 16-BIT WORDS NUMBERED
- * 0 THRU F. THERE ARE 16 COLUMNS IN EACH BLOCK
- * NUMBERED 0 THRU F. REPETITIVE DATA IS NOT
- * SUPPRESSED AND ZERO WORDS ARE REPRESENTED BY
- * FOUR HYPHENS. THE CONTENTS OF THE R-REGISTER
- * IN HEXADECIMAL PRECEDES THE FIRST BLOCK FOR
- * EACH PP. OUTPUT TO THE TERMINAL IS NOT PROVIDED.
- PX DATA 0LPX
- SX6 1 SET HEX BLOCK FORMAT
- EQ QOD1 DUMP PP/CPP
- Q SPACE 4,19
- *** Q.
- * DUMP ALL PPUS IN LINE FORMAT WITH INTERPRETATION.
- *
- * Q,N1,N2,...,NN.
- * DUMP SELECTED PPUS.
- *
- * EACH LINE CONTAINS 20B BYTES PRINTED IN TWO SETS OF 10B.
- * EACH SET OF 10B CONSISTS OF AN ADDRESS, 10B DATA BYTES AND
- * 16D DISPLAY CODE CHARACTERS INTERPRETATION. REPETITIVE
- * LINES ARE SUPPRESSED. ZERO BYTES ARE PRINTED AS *----*.
- *
- * FOR TERMINAL OUTPUT, THE DIRECTIVE FORMAT IS -
- *
- * Q,N,FWA,LWA+1.
- *
- * DATA IS DUMPED 10B BYTES PER LINE WITH DISPLAY CODE
- * INTERPRETATION. ZERO BYTES ARE REPRESENTED AS *----*.
- * FWA AND LWA+1 ARE ADJUSTED SO THAT THE DUMP LIMITS
- * FALL ON A MULTIPLE OF 10B.
- Q DATA 0LQ
- SA1 TF
- NZ X1,QTN IF TERMINAL OUTPUT
- SX6 B0 INITIALIZE FOR PPU DUMP
- QPR1 RJ IPD
- QPR2 RJ SNP SELECT NEXT PPU
- ZR X1,DSD1 IF NO MORE TO DUMP
- RJ DPQ DUMP PPU IN *Q* FORMAT
- EQ QPR2 CONTINUE
- * PROCESS TERMINAL OUTPUT.
- QTN SB7 0
- RJ ASD ASSEMBLE PPU NUMBER
- NZ X4,ERR6 IF ERROR
- BX7 X4
- SA7 IPDA
- SA6 //PP SET PPU NUMBER
- SA1 IC+1 GET PP TYPE
- BX6 X1
- SA6 A1-B1 SET *CPP* PROCESSING FLAG
- RJ RPD READ PPU DATA TO CORE
- RJ SSB CLEAR PRINT STRING
- SB7 B0
- RJ ASD ASSEMBLE FWA FOR DUMP
- NZ X4,ERR6 IF ERROR
- MX7 -3
- BX6 X6*X7 ROUND DOWN
- SA6 FW SET DUMP FWA
- SX6 X6+10B
- SA6 LW PRESET LWA+1
- RJ ASD ASSEMBLE LWA+1
- NZ X4,QTN1 IF NOT SPECIFIED
- SA6 LW
- QTN1 SA1 FW
- SB2 X1+ SET DUMP ADDRESS
- SB3 10B LOOP COUNT
- SB4 BUF BYTE BUFFER ADDRESS
- QTN2 SX1 B2
- RJ RPB READ BYTE
- SA6 B4 STORE IN BUFFER
- SB2 B2+B1
- SB4 B4+B1
- SB3 B3-B1
- GT B3,B0,QTN2 IF MORE BYTES TO READ
- SX4 B2-10B SET ADDRESS
- SB2 BUF BYTE BUFFER ADDRESS
- SB7 PRBF PRINT STRING ADDRESS
- RJ DTQ FORMAT TEN BYTES
- PRINT PRBF,B7-PRBF
- SA1 FW
- SA2 LW
- SX6 X1+10B
- SA6 A1 UPDATE DUMP ADDRESS
- IX6 X6-X2
- NG X6,QTN1 IF MORE TO DUMP
- JP DSD1 RETURN
- QF SPACE 4,10
- *** QF.
- * DUMP ALL FLPPS IN LINE FORMAT WITH INTERPRETATION.
- *
- * QF,N1,N2,...,NN.
- * DUMP SELECTED FLPPS.
- *
- * EACH LINE CONTAINS 20B BYTES PRINTED IN TWO SETS OF 10B.
- * EACH SET OF 10B CONSISTS OF AN ADDRESS, 10B DATA BYTES AND
- * 16D DISPLAY CODE CHARACTERS INTERPRETATION. REPETITIVE
- * LINES ARE SUPPRESSED. ZERO BYTES ARE PRINTED AS *----*.
- QF DATA 0LQF
- SX6 B1 INITIALIZE FOR FLPP DUMP
- EQ QPR1 DUMP FLPPS
- QFT SPACE 4,10
- *** QFT.
- *
- * DUMP QUEUE FILE TABLE WITH INTERPRETATION.
- QFT DATA 0LQFT
- STBL QFT SET TABLE POINTERS
- SX5 =C* QUEUE FILE TABLE*
- RJ DTI DUMP TABLE WITH INTERPRETATION
- EQ DSD1 RETURN
- QOA SPACE 4,25
- *** QOA,N1,N2,...,NN. (FOR PRINTER OUTPUT)
- *
- * QOA,N,FWA,LWA,R. (FOR TERMINAL OUTPUT)
- *
- * NI NUMBER OF PP TO BE DUMPED.
- * IF OMITTED, ALL PP-S ARE DUMPED.
- *
- * N NUMBER OF PP TO BE DUMPED.
- * IF OMITTED, ZERO IS ASSUMED.
- *
- * FWA FIRST WORD ADDRESS (OCTAL) TO BE DUMPED.
- * IF OMITTED, ZERO IS ASSUMED.
- *
- * LWA LAST WORD ADDRESS + 1 (OCTAL) TO BE DUMPED.
- * IF OMITTED, FWA + 1 IS ASSUMED.
- *
- * R IF PRESENT, SPECIFIES THAT R-REGISTER
- * SHOULD BE DUMPED.
- *
- * THE *QOA* DIRECTIVE CAUSES PP MEMORY TO BE DUMPED IN
- * OCTAL LINE FORMAT WITH ASCII CODE INTERPRETATION.
- QOA DATA 0LQOA
- SX6 3 SET OCTAL LINE ASCII CODE FORMAT
- EQ QOD1 DUMP PP MEMORY
- QOD SPACE 4,30
- *** QOD,N1,N2,...,NN. (FOR PRINTER OUTPUT)
- *
- * QOD,N,FWA,LWA,R. (FOR TERMINAL OUTPUT)
- *
- * NI NUMBER OF PP TO BE DUMPED.
- * IF OMITTED, ALL PP-S ARE DUMPED.
- *
- * N NUMBER OF PP TO BE DUMPED.
- * IF OMITTED, ZERO IS ASSUMED.
- *
- * FWA FIRST WORD ADDRESS (OCTAL) TO BE DUMPED.
- * IF OMITTED, ZERO IS ASSUMED.
- *
- * LWA LAST WORD ADDRESS + 1 (OCTAL) TO BE DUMPED.
- * IF OMITTED, LWA+10B IS ASSUMED.
- *
- * R IF PRESENT, SPECIFIES THAT R-REGISTER
- * SHOULD BE DUMPED.
- *
- * THE *QOD* DIRECTIVE CAUSES PP MEMORY TO BE DUMPED
- * IN OCTAL LINE FORMAT WITH DISPLAY CODE INTERPRETATION.
- * EACH LINE CONTAINS AN OCTAL ADDRESS, THE CONTENTS OF
- * EIGHT 16-BIT WORDS, AND DISPLAY CODE CHARACTER
- * INTERPRETATION. EACH WORD IS REPRESENTED BY
- * 6 OCTAL DIGITS UNLESS THE UPPER 4 BITS OF THE
- * WORD ARE ZERO, WHEN THE WORD IS REPRESENTED BY
- * 4 OCTAL DIGITS. ZERO WORDS ARE REPRESENTED BY
- * 4 HYPHENS. REPETITIVE LINES ARE SUPPRESSED. IF
- * SPECIFIED, THE R-REGISTER PRECEDES THE FIRST LINE
- * OF THE DUMP.
- QOD DATA 0LQOD
- SX6 2 SET OCTAL LINE DISPLAY CODE FORMAT
- QOD1 SA1 //AP
- ZR X1,ERR25 IF NO *IOU* SUBSYSTEM
- SA6 CPRA+3 DUMP FORMAT CODE
- SA1 PS
- BX6 X1
- SA6 A6-B1 SET R-REGISTER DUMP
- SA6 A6-B1 SET LWA+1
- AX1 13
- LX7 X1,B1
- SA7 K4 SET BUFFER LENGTH
- BX6 X6-X6
- RJ IPD INITIALIZE FOR 16-BIT PP DUMP
- SA1 TF
- ZR X1,QOD5 IF PRINTER OUTPUT
- BX7 X7-X7 PRESET NOT R-REGISTER DUMP
- SB7 B0 ASSEMBLE PP NUMBER
- SA7 CPRA+2
- RJ ASD
- NZ X4,ERR6 IF ERROR
- RJ SPD SET UP PP/CPP DUMP
- SA1 CPRA+3
- SX1 X1-4
- PL X1,QOD2 IF HEXADECIMAL ADDRESSES
- SB7 B0 ASSEMBLE OCTAL FWA FOR DUMP
- RJ ASD
- NZ X4,ERR6 IF ERROR
- MX7 -2
- BX6 X6*X7 ROUND FWA DOWN
- SA6 CPRA SET DUMP FWA
- SX6 X6+10B
- SA6 CPRA+1 PRESET DUMP LWA+1
- RJ ASD
- EQ QOD4 ASSEMBLE R-REGISTER PARAMETER
- QOD2 RJ ASX ASSEMBLE HEX FWA
- ZR B6,QOD3 IF END OF DIRECTIVE
- NZ X4,ERR6 IF ERROR
- MX7 -3
- BX6 X6*X7 ROUND FWA DOWN
- QOD3 SA6 CPRA SET DUMP FWA
- SX6 X6+10B
- SA6 CPRA+1 PRESET DUMP LWA+1
- RJ ASX
- QOD4 ZR B6,QOD6 IF END OF DIRECTIVE
- NZ X4,QOD6 IF CONVERSION ERROR
- SA6 CPRA+1 SET DUMP LWA+1
- RJ ASN ASSEMBLE R-REGISTER PARAMETER
- SA6 CPRA+2
- EQ QOD6 DUMP PP/CPP
- QOD5 RJ SNP SELECT NEXT PP TO DUMP
- ZR X1,DSD1 IF NO MORE PP-S
- QOD6 RJ CPD COPY PP DATA TO BUFFER
- SA1 CPRA DUMP 16-BIT PP
- RJ DSP
- SA1 TF
- ZR X1,QOD5 IF PRINTER OUTPUT
- EQ DSD1 RETURN TO PROCESS NEXT DIRECTIVE
- QXA SPACE 4,25
- *** QXA,N1,N2,...,NN. (FOR PRINTER OUTPUT)
- *
- * QXA,N,HFWA,HLWA,R. (FOR TERMINAL OUTPUT)
- *
- * NI NUMBER OF PP TO BE DUMPED.
- * IF OMITTED, ALL PP-S ARE DUMPED.
- *
- * N NUMBER OF PP TO BE DUMPED.
- * IF OMITTED, ZERO IS ASSUMED.
- *
- * HFWA FIRST WORD ADDRESS (HEX) TO BE DUMPED.
- * IF OMITTED, ZERO IS ASSUMED.
- *
- * HLWA LAST WORD ADDRESS + 1 (HEX) TO BE DUMPED.
- * IF OMITTED, FWA + 1 IS ASSUMED.
- *
- * R IF PRESENT, SPECIFIES THAT R-REGISTER
- * SHOULD BE DUMPED.
- *
- * THE *QXA* DIRECTIVE CAUSES PP MEMORY TO BE DUMPED
- * IN HEX LINE FORMAT WITH ASCII CODE INTERPRETATION.
- QXA DATA 0LQXA
- SX6 5 SET HEX LINE ASCII CODE FORMAT
- EQ QOD1 DUMP PP MEMORY
- QXD SPACE 4,25
- *** QXD,N1,N2,...,NN. (FOR PRINTER OUTPUT)
- *
- * QXD,N,HFWA,HLWA,R. (FOR TERMINAL OUTPUT)
- *
- * NI NUMBER OF PP TO BE DUMPED.
- * IF OMITTED, ALL PP-S ARE DUMPED.
- *
- * N NUMBER OF PP TO BE DUMPED.
- * IF OMITTED, ZERO IS ASSUMED.
- *
- * HFWA FIRST WORD ADDRESS (HEX) TO BE DUMPED.
- * IF OMITTED, ZERO IS ASSUMED.
- *
- * HLWA LAST WORD ADDRESS + 1 (HEX) TO BE DUMPED.
- * IF OMITTED, FWA + 1 IS ASSUMED.
- *
- * R IF PRESENT, SPECIFIES THAT R-REGISTER
- * SHOULD BE DUMPED.
- *
- * THE *QXD* DIRECTIVE CAUSES PP MEMORY TO BE DUMPED
- * IN HEX LINE FORMAT WITH DISPLAY CODE INTERPRETATION.
- QXD DATA 0LQXD
- SX6 4 SET HEX LINE DISPLAY CODE FORMAT
- EQ QOD1 DUMP PP MEMORY
- RA SPACE 4,3
- *** RA,NNNNNNN.
- *
- * RESET REFERENCE ADDRESS TO NNNNNNN.
- RA DATA 0LRA
- RJ LDC LIST DIRECTIVE CARD
- SB7 0 SET OCTAL BASE
- RJ ASD ASSEMBLE NNNNNNN
- NZ X4,ERR6 IF ASSEMBLY ERROR
- SA6 UA SET USER CONTROLLED REFERENCE ADDRESS
- RJ SRA SET REFERENCE ADDRESS
- SA6 US SET USER CONTROLLED RA (SUBTITLE)
- JP DSD1 RETURN
- RAC SPACE 4,3
- *** RAC,NN.
- *
- * RESET REFERENCE ADDRESS TO THE RA OF CONTROL POINT NN.
- RAC DATA 0LRAC
- RJ LDC LIST DIRECTIVE CARD
- SB7 0 SET OCTAL BASE
- RJ ASD ASSEMBLE CONTROL POINT NUMBER
- NZ X4,ERR6 IF ASSEMBLY ERROR
- RJ CRA COMPUTE CONTROL POINT REFERENCE ADDRESS
- SA6 UA SET USER CONTROLLED REFERENCE ADDRESS
- RJ SRA SET REFERENCE ADDRESS
- SA6 US SET USER CONTROLLED RA (SUBTITLE)
- JP DSD1 RETURN
- RCL SPACE 4,3
- *** RCL.
- *
- * DUMP RESIDENT CENTRAL LIBRARY IN *C* FORMAT.
- RCL DATA 0LRCL
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ SCM SELECT CENTRAL MEMORY
- SA7 RI
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- SA1 F.TCMT
- SA2 X1+RCLP GET FWA RCL
- LX2 24
- SX6 X2
- SA6 CPRA SAVE FWA RCL
- SB2 A6+
- RJ POM POSITION TO PROGRAM LENGTH
- GETCM
- BX5 X6
- ZR X5,ERR31 IF RCL EMPTY
- PRINT (=2C )
- PRINT (=C* RESIDENT CENTRAL LIBRARY*)
- PRINT (=2C )
- RCL1 SA3 CPRA SET LWA+1 OF NEXT PROGRAM
- IX7 X5+X3
- SX7 X7
- SA7 A3+B1
- RJ PCM POSITION TO RCL
- SB2 CPRA
- RJ PMD PROCESS MEMORY DUMP
- SA2 CPRA+1 SET FWA OF NEXT PROGRAM
- SX6 X2
- SB2 A2-B1
- SA6 CPRA
- RJ POM POSITION TO NEXT PROGRAM LENGTH
- GETCM
- BX5 X6
- ZR X5,DSD1 IF NO MORE PROGRAMS - RETURN
- PRINT (=2C ) SPACE BETWEEN PROGRAMS
- PRINT (=2C )
- PRINT (=2C )
- PRINT (=2C )
- PRINT (=2C )
- EQ RCL1 DUMP NEXT PROGRAM
- READ SPACE 4,14
- *** READ,LFN.
- * READ DIRECTIVE INPUT FROM FILE *LFN* UNTIL END OF RECORD.
- * RECORDS MUST BE IN TEXT FORMAT WHERE THE FIRST WORD OF THE
- * RECORD IS THE NAME.
- *
- * READ,LFN,NAME.
- * READ ONE NAMED RECORD FROM FILE *LFN*. THE FILE IS SEARCHED
- * FROM CURRENT POSITION TO END OF FILE OR AN EMPTY RECORD.
- *
- * READ,LFN,*.
- * READ ALL RECORDS TILL EOF OR AN EMPTY RECORD.
- *
- * AT END OF READ PROCESSING, INPUT RESUMES FROM THE ORIGINAL
- * INPUT FILE.
- READ DATA 0LREAD
- RJ LDC LIST DIRECTIVE CARD
- RJ ASN ASSEMBLE FILE NAME
- ZR B6,ERR12 IF NULL NAME
- SX7 B6+42
- NG X7,ERR12 IF NAME TOO LONG
- SX7 X7-42
- ZR X7,ERR12 IF NULL NAME
- SX7 B1
- BX6 X6+X7
- SA6 J SET FILE NAME IN FET
- SA1 A6+B1 READ *FIRST* POINTER
- SX6 X1
- SA6 A1+B1 IN = FIRST
- SA6 A6+B1 OUT = IN
- SX2 J CHECK IF TERMINAL FILE
- RJ STF
- NZ X6,RCN0 IF NOT TERMINAL FILE
- SX7 1 SET READ TO EOR
- SA7 AF
- JP DSD1 RETURN
- RCN0 SA1 CH
- SA1 X1+
- SX6 X1-1R.
- ZR X6,RCN1 IF RECORD NAME NOT SPECIFIED
- RJ ASN ASSEMBLE RECORD NAME
- RCN1 RJ GSR GET SELECTED RECORD
- ZR X7,ERR14 IF RECORD NOT FOUND
- SA7 AF SET ALTERNATE INPUT FLAG
- JP DSD1 RETURN
- REWIND SPACE 4,3
- *** REWIND,LFN.
- *
- * REWIND FILE *LFN*.
- REWIND DATA 0LREWIND
- RJ ASN ASSEMBLE FILE NAME
- MX0 42
- BX5 X0*X6
- SA1 REWA SET FET LIST ADDRESS
- REW1 SA2 X1 CHECK FOR NAME IN FET
- BX2 X0*X2
- BX7 X5-X2
- SA1 A1+B1 SET NEXT ENTRY
- ZR X7,REW2 IF CORRECT FET FOUND
- NZ X1,REW1 IF NOT END OF LIST
- RECALL F
- SX7 3 SET FILE NAME IN INPUT FET
- BX7 X5+X7
- SA7 X2
- EQ REW3 REWIND FILE
- REW2 RECALL A2
- REW3 REWIND X2 REWIND FILE
- EQ DSD1 RETURN
- REWA CON I DIRECTIVE INPUT
- CON J ALTERNATE INPUT
- CON F BINARY INPUT
- CON L LISTING OUTPUT
- CON A ALTERNATE LIST
- CON S BINARY SCRATCH
- CON 0 END OF LIST
- SPACE 4,10
- *** RHF,OPS.
- *
- * WHERE OPS IS A STRING OF UP TO 3 CHARACTERS
- * SELECTING THE DUMP OPTIONS LISTED BELOW.
- *
- * A DUMPS RHF DAYFILE BUFFER.
- *
- * C DUMPS RHF FIELD LENGTH.
- *
- * P PROVIDES DUMP AND FULL ANALYSIS OF
- * PP-S RUNNING *NDR*, *NLD*, AND *RHH*.
- *
- * *RHF.* IS EQUIVALENT TO *RHF,ACP.* .
- RHF DATA 0LRHF
- SA5 RHFA
- RJ ISS INITIALIZE FOR SUBSYSTEM DUMP
- GETCM SSBF,100 READ RHF POINTERS
- SA5 RHFB
- RJ DSS DUMP SUBSYSTEM
- EQ DSD1 RETURN
- RHFA VFD 24/0,12/RFSI,24/0
- RHFB VFD 60/0LACP
- VFD 36/0,6/1RA,18/DHA
- VFD 36/0,6/1RC,18/DHC
- VFD 36/0,6/1RP,18/DHP
- VFD 60/0
- RPL SPACE 4,6
- *** RPL.
- *
- * DUMP RESIDENT PERIPHERAL LIBRARY IN BYTE FORMAT WITH
- * DISPLAY CODE INTERPRETATION. EACH LINE OF TWO CENTRAL MEMORY
- * WORDS INDICATES ITS ORDINAL RELATIVE TO THE FWA OF THE PP.
- * THE PP NAME AND BYTE LENGTH IS ALSO LISTED.
- RPL DATA 0LRPL
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ SCM SELECT CENTRAL MEMORY
- SA7 RI
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- SA1 F.TCMT
- SA2 X1+RPLP
- LX2 24
- SX5 X2 ADDRESS OF FIRST OVERLAY HEADER
- SX6 LRPL
- SA6 RPLA SET MAXIMUM NUMBER OF OVERLAYS TO DUMP
- RPL1 SA1 RPLA
- SX6 X1-1
- SA6 A1 DECREMENT MAXIMUM OVERLAYS TO DUMP
- NG X6,DSD1 IF MAXIMUM DUMPED
- SX3 X5
- RJ DPO DUMP PP OVERLAY
- NZ X6,RPL1 IF MORE PP OVERLAYS TO DUMP
- JP DSD1 RETURN
- RPLA BSS 1 MAXIMUM NUMBER OF OVERLAYS TO DUMP
- SAB SPACE 4,10
- *** SAB.
- *
- * DUMP SYSTEM ATTRIBUTE BLOCK IN *D* FORMAT.
- SAB DATA 0LSAB
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT
- SA2 X1+EABL+MFEI GET SAB ADDRESSES
- MX7 -12
- MX6 -18
- LX2 0-12
- BX7 -X7*X2 LENGTH OF SAB
- LX2 0-42+0+12
- BX6 -X6*X2 FWA OF SAB
- IX7 X6+X7 LWA+1 OF SAB
- SB3 B1 SET *D* FORMAT
- SX4 B0 SET READ FROM DUMP FILE
- SX5 =C* SYSTEM ATTRIBUTE BLOCK*
- RJ DTB DUMP BUFFERS
- EQ DSD1 RETURN
- SC SPACE 4,3
- *** SC.
- *
- * DUMP STATUS AND CONTROL REGISTER FOR CYBER 170,
- * 700, AND 865/875 MAINFRAMES.
- SC DATA 0LSC
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 =10HSCR
- BX6 X1
- SA6 SBTL1 SET NAME FOR SUBTITLE
- SA6 SCPB SET *SC1* NOT YET PROCESSED
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- RJ SSB CLEAR PRINT STRING
- SA1 .SCR
- MX0 18
- SEARCH TDIR,X1,X0 LOCATE SCR RECORD
- ZR X2,ERR2 IF NO SCR RECORD
- SCP1 SA5 A2+2
- MX0 24
- LX0 -12
- SA3 =6L SC16
- BX4 X3-X5
- BX2 X0*X4
- NZ X2,ERR2 IF NO SC16 RECORD FOUND
- RJ SSB CLEAR PRINT STRING
- PRINT (=2C )
- SA1 SCPB
- NZ X1,SCP2 IF *SC1* NOT YET PROCESSED
- SA2 =38HSCR REGISTER 0 AFTER CLEAR(CHANNEL 16)
- EQ SCP3 CONTINUE
- SCP2 SA2 =38HSTATUS/CONTROL REGISTER 0 (CHANNEL 16)
- SCP3 SB7 PRBF+15
- SA0 BUF SC REGISTER ADDRESS
- RJ SCH SET SC DIRECTIVE HEADER
- SA5 A5+1
- MX0 24
- LX0 -12
- SA3 =6L SC36
- BX4 X3-X5
- BX6 X0*X4
- SA6 SCPA SET SC36 PRESET OR NOT
- NZ X6,SCP6 IF SC36 RECORD NOT FOUND
- SA1 SCPB
- NZ X1,SCP4 IF *SC1* NOT YET PROCESSED
- SA2 =38HSCR REGISTER 1 AFTER CLEAR(CHANNEL 36)
- EQ SCP5 CONTINUE
- SCP4 SA2 =38HSTATUS/CONTROL REGISTER 1 (CHANNEL 36)
- SCP5 SB7 PRBF+65
- SA0 BUF+4 SC REGISTER ADDRESS
- RJ SCH SET SC DIRECTIVE HEADER
- SCP6 SX1 5
- RJ CPS CHECK PAGE SPACE
- PRINT CCCH,1+65+38
- PRINT (=2C )
- * UNPACK SC REGISTER WORDS.
- SB4 4 PRESET NUMBER OF WORDS
- SA4 SCPA
- NZ X4,SCP7 IF SC36 RECORD NOT FOUND
- SB4 8
- SCP7 SB7 BUF+10 CHARACTER BUFFER
- SA1 BUF
- SCP8 SA2 =4000005B FORMAT CONTROL
- RJ FDW
- SB4 B4-1
- ZR B4,SCP9 IF NO MORE WORDS TO UNPACK
- SA1 A1+B1 READ NEXT WORD
- EQ SCP8 CONTINUE
- SCP9 SX5 BUF+10 SC16 CHARACTER STRING ADDRESS
- SB3 25 NUMBER OF CHARACTERS
- SA0 =14HBITS 203 - 144
- RJ FSC FORMAT SC REGISTER CONTENTS
- SX5 BUF+35
- SB3 30
- SA0 =14HBITS 143 - 72
- RJ FSC FORMAT SC REGISTER CONTENTS
- SX5 BUF+65
- SB3 30
- SA0 =14HBITS 71 - 00
- RJ FSC FORMAT SC REGISTER CONTENTS/
- SA1 SCPB
- ZR X1,DSD1 IF *SC1* PROCESSED, RETURN
- SA1 .SC1
- MX0 18
- SEARCH TDIR,X1,X0 LOCATE SC1 RECORD
- ZR X2,DSD1 IF NO *SC1* RECORD, RETURN
- BX6 -X2*X2
- SA6 SCPB *SC1* PROCESSED
- EQ SCP1 CONTINUE
- SCPA BSS 1 IF NONZERO, SC36 RECORD NOT FOUND
- SCPB BSS 1 IF NONZERO, *SC1* NOT YET PROCESSED
- SDA SPACE 4,10
- *** SDA.
- *
- * DUMP STATISTICAL DATA AREA. EACH WORD IS PRINTED
- * WITH ITS NOSTEXT SYMBOL AND IS SPLIT INTO THE
- * APPROPRIATE PARAMETER FIELDS.
- SDA DATA 0LSDA
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ SCM SELECT CENTRAL MEMORY
- SA7 RI SET CENTRAL MEMORY RANDOM INDEX
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- SA1 F.TCMT SET STATISTICAL DATA AREA FWA
- SA3 X1+SDAP
- AX3 36
- BX0 -X3 SAVE STATISTICAL DATA AREA FWA
- SX6 X3 SET FIRST ADDRESS FOR OUTPUT
- SA6 FW
- RJ PCM POSITION MEMORY RECORD
- GETCM BUF,SDAL READ STATISTICAL DATA AREA
- SA1 TFSD SET FIELD DESCRIPTION POINTERS
- SB2 X0+BUF SET DATA ADDRESS
- RJ GTD GENERATE DETAILED TABLE DUMP
- EQ DSD1 RETURN
- SPACE 4,10
- *** SECDED.
- *
- * DUMP SECDED ID TABLE IN *D* FORMAT.
- SECDED DATA 0LSECDED
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- RJ SCM SELECT CENTRAL MEMORY
- SA1 F.TCMT GET ADDRESS OF TABLE
- SA2 X1+SCRL
- MX6 -18
- AX2 36
- BX6 -X6*X2
- SA6 CPRA SET FWA OF DUMP
- SX7 B1 SELECT *D* FORMAT
- SA7 CPRA+4
- SX6 X6+UIDL*2 SET LWA+1 OF DUMP
- SA6 CPRA+1
- RJ LDC LIST DIRECTIVE CARD
- JP CPR2 PROCESS DUMP
- SETCPU SPACE 4,10
- ** SETCPU,N.
- *
- * SETS UP THE CYBER 170-8XX PROCESSOR POINTERS FOR
- * THE PROCESSOR SPECIFIED BY *N*. DEFAULT IS CPU 0.
- SETCPU DATA 0LSETCPU
- RJ ASN
- ZR X6,STP1 IF DEFAULT
- BX5 X6
- SB7 0 SET OCTAL BASE
- RJ DXB
- SA1 STPA
- IX1 X1-X6
- NG X1,ERR6 IF PARAMETER ERROR
- STP1 SA6 SPPB SAVE PROCESSOR NUMBER
- RJ SPP SET PROCESSOR POINTERS
- EQ DSD1 RETURN
- STPA CON 1 MAXIMUM PROCESSOR NUMBER
- SETIOU SPACE 4,20
- *** SETIOU.
- * SET PP SIZE TO 4096 12 BIT WORDS AND PP TYPE TO
- * NON-CONCURRENT PP.
- *
- * SETIOU,P1,P2.
- * SET PP SIZE AND TYPE BASED ON THE FOLLOWING PARAMETERS:
- *
- * C - SET PP SIZE TO 8192 16 BIT WORDS, PP TYPE TO
- * CONCURRENT PP SUBSYSTEM.
- *
- * N - SET PP SIZE TO 4096 16 BIT WORDS, PP TYPE TO
- * NON-CONCURRENT PP SUBSYSTEM.
- *
- * 8K - SET PP SIZE TO 8192 16 BIT WORDS.
- *
- * 4K - SET PP SIZE TO 4096 16 BIT WORDS - IGNORED IF THE *C*
- * PARAMETER IS ALSO SPECIFIED.
- *
- * NOTE - PARAMETERS *C* AND *N*, AS WELL AS *4K* AND *8K*, ARE
- * INCOMPATIBLE AND WILL FORCE AN ERROR IF SPECIFIED TOGETHER.
- SETIOU DATA 0LSETIOU
- SA1 EF
- SX6 B1+
- SA0 X1 SAVE EJECT FLAG
- SA6 A1 TURN EJECT ON
- RJ LDC LIST DIRECTIVE CARD
- SX6 A0+
- SA6 EF RESTORE EJECT FLAG
- SB2 2 SET PARAMETER COUNTER
- SX5 4 SET DEFAULT INDEX
- SPU1 RJ ASN ASSEMBLE PARAMETER NAME
- ZR X6,SPU4 IF NO PARAMETER PRESENT
- SB2 B2-1
- NG B2,ERR6 IF MORE THAN 2 PARAMETERS
- SA1 SPUA-1
- SPU2 SA1 A1+B1
- ZR X1,ERR6 IF PARAMETER ERROR
- MX0 12
- BX2 X0*X1
- BX7 X6-X2
- NZ X7,SPU2 IF NO MATCH
- MX0 -4
- ZR B2,SPU3 IF SECOND PARAMETER
- BX3 -X0*X1 GET COMBINATION MASK
- LX1 -44 SET INDEX
- BX5 -X0*X1
- EQ SPU1 PROCESS NEXT PARAMETER
- SPU3 BX4 X3*X1
- ZR X4,ERR6 IF INVALID PARAMETER COMBINATION
- LX1 -44
- BX1 -X0*X1
- BX5 X1+X5 COMBINE INDICES
- EQ SPU1 CHECK NEXT PARAMETER
- SPU4 MX0 -2 SET PP RECORD SIZE
- BX2 -X0*X5
- SX3 10000B DEFAULT PP RECORD SIZE
- IX7 X3*X2
- IX7 X7+X3
- SA7 PS
- AX5 2
- ZR X5,DSD1 IF ONLY PP MEMORY SIZE CHANGE
- AX6 X5,B1
- SA6 IC+1 SET *NPP*/*CPP* FLAG
- ZR X6,DSD1 IF NOT SETTING CPP PROCESSING
- SA1 IO
- NZ X1,ERR6 IF NOT I4A OR I4S IOU
- EQ DSD1 RETURN
- ** SPUA - VALID PARAMETER TABLE.
- *
- *T 12/ VP,2/ C,2/ S,40/ 0,4/ MSK.
- * VP VALID PARAMETER.
- * C CONCURRENT PP PROCESSING FLAG.
- * S PP RECORD SIZE FLAG.
- * MSK PARAMETER COMBINATION MASK.
- SPUA VFD 12/2L4K,2/0,2/0,40/0,4/11B
- VFD 12/2L8K,2/0,2/1,40/0,4/6B
- VFD 12/1LN,2/1,2/0,40/0,4/12B
- VFD 12/1LC,2/2,2/1,40/0,4/5B
- CON 0 END OF TABLE
- SETJPS SPACE 4,10
- ** SETJPS,RMA.
- * SETJPS,PVA.
- *
- * SET THE S2JPS REGISTER TO AN ARBITRARY VALUE.
- SETJPS DATA 0LSETJPS
- RJ GHA GET HARDWARE ADDRESS
- ZR B6,ERR6 IF NO ADDRESS SPECIFIED
- SA6 S2JPS SAVE POSSIBLE RMA
- SB2 32
- AX7 X6,B2
- ZR X7,DSD1 IF JUST RMA SPECIFIED
- RJ PVM POSITION VIRTUAL MEMORY
- NZ X2,ERR30 IF PAGE IS MISSING
- RJ NXB
- BX5 X1
- LX5 16
- RJ NXB
- BX6 X1+X5
- SA6 S2JPS
- JP DSD1 RETURN
- SETRMA SPACE 4,10
- *** SETRMA,PVA.
- *
- * DISPLAY THE TRANSLATED REAL MEMORY ADDRESS FOR A PVA.
- SETRMA DATA 0LSETRMA
- RJ GHA GET HARDWARE ADDRESS
- ZR B6,ERR6 IF NO ADDRESS SPECIFIED
- RJ PVM POSITION VIRTUAL MEMORY
- NZ X2,ERR30 IF PAGE IS MISSING
- SA2 =17HTRANSLATED PVA =
- SB6 17
- SB7 PRBF
- RJ UPS UNPACK STRING
- SB6 6
- SA1 BRMA GET TRANSLATED RMA
- BX6 X1
- LX1 59-23
- SA6 S2RMA SAVE FOR SYMBOL *RMA*
- RJ HTS COPY TO BUFFER
- PRINT CCCH,B7-CCCH *TRANSLATED PVA = NNNNNN*
- JP DSD1 PROCESS NEXT COMMAND
- SETVEP SPACE 4,10
- ** SETVEP,PTA,PTL,PSM,MPS.
- *
- * SET VE PARAMETERS.
- SETVEP DATA C*SETVEP*
- RJ ASX
- NZ X4,ERR6 IF PARAMETER ERROR
- SA6 S2PTA
- RJ ASX
- NZ X4,ERR6 IF PARAMETER ERROR
- SA6 S2PTL
- RJ ASX
- NZ X4,ERR6 IF PARAMETER ERROR
- SA6 S2PSM
- RJ ASX
- NZ X4,ERR6 IF PARAMETER ERROR
- SA6 S2MPS
- JP DSD1 RETURN
- SST SPACE 4,10
- *** SST.
- *
- * DUMP SUBSYSTEM CONTROL POINT TABLE AND SUBSYSTEM ASSIGNMENT
- * TABLE IN *D* FORMAT.
- SST DATA 0LSST
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 F.TCMT GET FWA OF SSCT
- SA2 X1+SSCP
- AX2 12
- SX6 X2
- SX7 X6+SSCTL GET LWA+1 OF SSCT
- SX5 =C* SUBSYSTEM CONTROL POINT TABLE*
- SB3 B1 SET *D* FORMAT
- IX4 X6+X1 SET ADDRESS OF READ FROM CORE
- RJ DTB DUMP SSCT
- SB3 -B1 SET NO PAGE EJECT
- SA1 CPRA+1 GET FWA OF SSAT
- BX6 X1
- SX7 X6+SSCTL GET LWA+1 OF SSAT
- SX5 =C* SUBSYSTEM ASSIGNMENT TABLE*
- SA1 F.TCMT SET ADDRESS OF READ FROM CORE
- IX4 X6+X1
- RJ DTB DUMP SSAT
- EQ DSD1 RETURN
- TBDUMP SPACE 4,10
- *** TBDUMP,MTR.
- * TBDUMP,PPU.
- *
- * DISPLAY THE SELECTED TRACE BUFFER IN *D* FORMAT.
- * THE FUNCTIONS TRACED, ABSOLUTE ADDRESSES SAVED, AND CPA
- * ADDRESSES SAVED (*TBDUMP,MTR* ONLY) ARE ALSO DISPLAYED.
- TBDUMP DATA 0LTBDUMP
- RJ LDC LIST DIRECTIVE CARD
- RJ ASN ASSEMBLE PARAMETER
- SA1 TBDB
- TBD1 ZR X1,ERR6 IF INCORRECT PARAMETER
- BX2 X1-X6
- SA1 A1+B1
- NZ X2,TBD1 IF NO MATCH
- SX6 A1-TBDB-1
- SA6 TBDA
- RJ SCM SET CENTRAL MEMORY
- SA7 RI
- SA1 F.TCMT
- SA3 X1+CMBL
- AX3 36
- RJ PCM POSITION TO BLOCK NAME TABLE
- SA5 =5RTRACE
- TBD2 GETCM
- SX3 X6
- ZR X3,ERR21 IF NO TRACE BLOCK
- AX6 30
- BX6 X6-X5
- NZ X6,TBD2 IF NOT TRACE POINTER
- RJ PCM POSITION TO TRACE BLOCK
- GETCM TBDC,5 SAVE POINTER WORDS
- SA1 TBDA
- ZR X1,TBD3 IF MTR
- SX1 3
- TBD3 SA2 X1+TBDC
- SX7 X2
- SX6 B1 SET *D* FORMAT
- SA7 CPRA SET FWA
- SA6 CPRA+4
- AX2 18
- SX7 X2
- SA7 CPRA+1 SET LWA+1
- SA3 X1+TBDC+1
- RJ PCM GET LIST OF FUNCTIONS TRACED
- GETCM
- BX5 X6
- RJ SSB CLEAR STRING BUFFER
- SA2 =19HFUNCTIONS TRACED -
- SB7 PRBF
- SB6 19
- RJ UPS UNPACK STRING
- BX1 X5
- SA2 =4000005B
- RJ FDW FORMAT DATA WORD
- SA2 =15H*IN* POINTER -
- SB7 B7+5
- SB6 15
- RJ UPS UNPACK STRING
- SA3 CPRA GET *IN* POINTER
- SX3 X3-1
- RJ PCM POSITION TO *IN* POINTER
- GETCM
- BX1 X6
- LX1 59-17
- SB6 6
- SB7 PRBF+64
- RJ CTS PRINT *IN*
- PRINT CCCH,B7-CCCH
- RJ SSB CLEAR STRING BUFFER
- PRINT (=2C )
- SA3 TBDC+2 GET ABS ADDRESS LIST
- AX3 18
- RJ PCM POSITION TO ABS ADDRESS LIST
- SA2 =18HABS WORDS SAVED -
- SA5 TBDA
- TBD4 SB7 PRBF
- SB6 18
- RJ UPS UNPACK STRING
- GETCM GET ADDRESS OF FIRST WORD SAVED
- BX1 X6
- LX1 59-17
- SB7 PRBF+18
- SB6 6
- RJ CTS CONVERT ADDRESS
- SA0 A1 SAVE FET ADDRESS
- LX1 59-41 GET SECOND ADDRESS
- SB7 B7+2
- SB6 6
- RJ CTS CONVERT ADDRESS
- PRINT CCCH,B7-CCCH
- RJ SSB CLEAR PRINT STRING
- PRINT (=2C )
- NZ X5,CPR2 IF THROUGH PROCESSING ADDRESS LISTS
- SX5 X5+B1 SET UP EXIT
- SA2 =18HCPA WORDS SAVED -
- SA1 A0 GET CPA ADDRESS LIST
- EQ TBD4 DISPLAY CPA ADDRESS LIST
- TBDA CON 0 MTR/PPU FLAG
- TBDB CON 3LMTR
- CON 3LPPU
- CON 0
- TBDC VFD 24/0,18/0,18/0 *MTR* TRACE BUFFER LWA+1, FWA
- VFD 42/0,18/0 *MTR* FUNCTION LIST
- VFD 24/0,18/0,18/0 ABS/CPA ADDRESS LISTS
- VFD 24/0,18/0,18/0 *PPU* TRACE BUFFER LWA+1, FWA
- VFD 42/0,18/0 *PPU* FUNCTION LIST
- TRACE SPACE 4,10
- ** TRACEBK,PVA.
- *
- * PERFORM TRACEBACK ON EXCHANGE PACKAGE.
- TRACE DATA C*TRACEBK*
- RJ LDC LIST DIRECTIVE AND EJECT
- SA1 TF CHECK TERMINAL FLAG
- SX6 51
- ZR X1,TRC1 IF PRINTER, DISPLAY FULL STACK FRAMES
- SX6 3
- TRC1 SA6 TRCA+2 MAXIMUM DISPLAY SIZE
- RJ GHA GET HARDWARE ADDRESS
- SX3 B0+ SET NO RADIAL MCI DISPLAY
- RJ PTX POSITION TO EXCHANGE PACKAGE
- SX1 B0
- SA2 TRCA+2
- BX6 X2
- RJ FXA FORMAT EXCHANGE AREA
- RJ CSI COLLECT SEGMENT INFORMATION
- SA6 TRCA+1
- TRC2 PRINT (=2C )
- SA1 BUF+3*4+1
- SA2 A1+B1
- SA3 A2+B1
- LX1 32
- LX2 16
- BX6 X3+X1
- BX6 X6+X2
- RJ EVA EXPAND VIRTUAL ADDRESS
- ZR X2,DSD1 IF END OF THE LINE
- SA7 TRCA SAVE THE PVA
- SB2 A7
- RJ SVA CONVERT TO SVA
- SA6 TRCA SAVE SVA
- SA2 A6+B1
- BX6 X2
- RJ DPN DISPLAY PROCEDURE NAME
- SA1 TRCA
- BX6 X1
- RJ PVM POSITION VIRTUAL MEMORY
- NZ X2,ERR30 IF PAGE ENTRY NO PRESENT
- SA2 TRCA+2
- SA1 TRCA EXCHANGE PACKAGE SVA
- BX6 X2
- RJ FXA FORMAT FIRST THREE WORDS
- JP TRC2 PROCESS NEXT STACK FRAME
- TRCA CON 0 TRAP PACKAGE SVA
- CON 0 EXCHANGE PACKAGE RMA
- CON 0,0
- UEC SPACE 4,10
- *** UEC,FWA.
- *
- * SET MEMORY TYPE TO *UEC*. SUBSEQUENT C, D, AND E
- * DIRECTIVES APPLY TO USER EXTENDED CORE MEMORY.
- *
- * FWA SPECIFIES THE FIRST WORD ADDRESS/1000B FOR USER ECS.
- * IF OMITTED, THE FIRST WORD ADDRESS FOR UEC IS OBTAINED
- * FROM RAE IN THE SYSTEM CONTROL POINT *ECSW* WORD. FOR USER
- * ECS IN UEM, THE UEM BASE ADDRESS FROM CMR WORD *UEML* IS
- * ALSO ADDED TO THE RAE FROM THE SYSTEM CONTROL POINT.
- UEC DATA 0LUEC
- RJ LDC LIST DIRECTIVE CARD
- SA1 F.TCMT
- SA2 X1+ECRL
- MX3 -12
- LX2 -36
- BX2 -X3*X2
- ZR X2,UEC3 IF NO USER EXTENDED MEMORY DEFINED
- RJ SEM SET UNIFIED EXTENDED MEMORY (UEM)
- NG X3,UEC1 IF UEM DEFINED
- RJ SEC SET EXTENDED CORE STORAGE
- UEC1 SA7 UI SET USER CONTROLLED MEMORY RANDOM INDEX
- SB7 B0+ SELECT OCTAL BASE
- RJ ASD ASSEMBLE FWA FROM UEC DIRECTIVE
- LX6 9
- NZ X6,UEC2 IF FWA SPECIFIED
- SA1 F.TCMT
- SA2 NC GET SYSTEM CP RAE
- SA3 UE GET USER EM SHIFT COUNT
- SX2 X2+B1
- LX2 7
- IX2 X1+X2
- SB2 X3+9
- MX6 -24
- SA2 X2+ECSW
- LX2 -12
- BX6 -X6*X2
- SA3 MB SET USER EXTENDED MEMORY BASE ADDRESS
- LX6 B2
- IX6 X3+X6
- UEC2 SA6 MB
- SA1 =10HUEC SET NAME FOR SUBTITLE
- BX6 X1
- SA6 SBTL1
- SA6 US+1 SET USER CONTROLLED MEMORY NAME
- EQ DSD1 RETURN
- UEC3 SX7 B1+ SET EXTENDED MEMORY ERROR FLAG
- SA7 EE
- EQ ERR41 PROCESS *USER EXTENDED MEMORY NOT DEFINED*
- W SPACE 4,20
- *** W,HFBN,HLBN,ASID.
- *
- * DUMP 64-BIT MEMORY IN WORD FORMAT.
- *
- * HFBN FIRST BYTE NUMBER (HEX) TO BE DUMPED.
- *
- * HLBN LAST BYTE NUMBER + 1 TO BE DUMPED.
- * IF OMITTED, HFBN+8 IS ASSUMED.
- *
- * ASID SPECIFIES THE ACTUAL SEGMENT IDENTIFIER OF THE
- * MEMORY TO BE DUMPED. IF ASID=1 THEN HFBN AND
- * HLBN ARE ADDRESSES WITHIN THE CYBER 170-8X5 ERROR
- * INTERFACE PACKAGE. IF OMMITTED, HFBN AND HLBN
- * ARE REAL MEMORY ADDRESSES.
- *
- * THE *W* DIRECTIVE CAUSES THE SPECIFIED LOCATIONS OF
- * CENTRAL MEMORY TO BE DUMPED IN HEXADECIMAL (FOUR
- * WORDS PER LINE WITH ASCII CHARACTER EQUIVALENTS).
- * OUTPUT TO THE TERMINAL IS NOT PROVIDED.
- W DATA 0LW
- SX6 2 SET *W* FORMAT CODE
- EQ IPR1 DUMP CENTRAL MEMORY
- XP SPACE 4,4
- *** XP.
- *
- * DUMP THE CPU(S) EXCHANGE PACKAGE(S) EXECUTING AT THE TIME
- * OF DEAD START.
- XP DATA 0LXP
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA1 =10HCPR
- BX6 X1
- SA6 SBTL1 SET NAME FOR SUBTITLE
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- RJ SSB CLEAR PRINT STRING
- SA1 .CP0
- MX0 24
- LX0 -12
- SEARCH TDIR,X1,X0 LOCATE CPU0 RECORD
- NZ X2,XPP3 IF CPU0 RECORD FOUND
- RJ FPX FIND CYBER 170-8X5 EXCHANGE PACKAGE
- BX6 X1 SAVE CPU1(800) EXCHANGE PACKAGE POINTER
- SA6 XPPD
- SA2 =28HCPU0 HARDWARE REGISTERS - ON
- SB7 PRBF
- SB6 28
- RJ UPS SET CPU0 TITLE MESSAGE
- SX6 0
- SA6 XPPA SET CPU0 PRESENT
- SX6 B1
- SA6 A6+B1 SET CPU1 NOT PRESENT
- ZR X1,XPP4 IF CPU1 EXCHANGE PACKAGE NOT PRESENT
- BX2 X1
- RJ FPX
- NZ X1,XPP1 IF CPU1 IN C170 MODE
- BX6 X1
- SA6 XPPD
- SA2 =46HCPU1 IS IN C180 STATE - USE DIRECTIVE *PROXP.*
- SB6 46
- EQ XPP2 PRINT MESSAGE
- XPP1 SA2 =28HCPU1 HARDWARE REGISTERS - ON
- SB6 28
- XPP2 SB7 PRBF+45
- RJ UPS UNPACK MESSAGE
- EQ XPP4 DUMP EXCHANGE PACKAGE
- XPP3 SA0 BUF EXCHANGE PACKAGE ADDRESS
- SB7 PRBF
- SA5 A2+
- SA2 =5HCPU0
- SB6 5
- RJ UPS
- RJ XPH SET XP DIRECTIVE HEADER
- SA6 XPPA SET CPU0 ON/OFF
- SX6 B1
- SA6 A6+B1 PRESET CPU1 OFF
- SA5 A5+1
- MX0 24
- LX0 -12
- SA3 =6L CPU1
- BX4 X3-X5
- BX2 X0*X4
- NZ X2,XPP4 IF CPU1 RECORD NOT FOUND
- SA0 BUF+20B EXCHANGE PACKAGE ADDRESS
- SB7 PRBF+45
- SA2 =5HCPU1
- SB6 5
- RJ UPS
- RJ XPH SET XP DIRECTIVE HEADER
- SA6 XPPB SET CPU1 ON/OFF
- XPP4 SX1 19
- RJ CPS CHECK PAGE SPACE
- PRINT CCCH,100
- PRINT (=2C )
- SX6 0
- SA6 XPPC CLEAR LINE INDEX
- SA5 BUF READ FIRST EXCHANGE PACKAGE
- XPP5 RJ SSB CLEAR PRINT STRING
- SA4 XPPA
- ZR X4,XPP6 IF CPU0 ON
- SA5 A5+B1
- JP XPP7 CHECK CPU1
- XPP6 SA1 XPPC LINE INDEX
- SB7 PRBF+1
- RJ FXW FORMAT EXCHANGE PACKAGE WORD
- XPP7 SA5 A5+17B ADVANCE TO NEXT EXCHANGE PACKAGE
- SA4 XPPB
- ZR X4,XPP8 IF CPU1 ON
- SA4 XPPD GET CPU1(800) ON/OFF
- NZ X4,XPP8 IF PRESENT
- SA5 A5+1
- JP XPP9 PRINT EXCHANGE PACKAGE
- XPP8 SA1 XPPC LINE INDEX
- SB7 PRBF+46
- RJ FXW FORMAT EXCHANGE PACKAGE WORD
- XPP9 PRINT CCCH,B7-CCCH
- SA1 XPPC
- SX6 X1+B1
- SA6 A1 ADVANCE LINE INDEX
- SX7 X6-10B
- NZ X7,XPP10 IF NOT END OF A AND B REGISTERS
- PRINT (=2C )
- XPP10 SA5 A5-20B RESET EXCHANGE PACKAGE
- SA1 XPPC
- SX1 X1-20B
- NG X1,XPP5 IF MORE LINE TO FORMAT
- JP DSD1 RETURN
- XPPA BSS 1 CPU 0 ON/OFF
- XPPB BSS 1 CPU 1 ON/OFF
- XPPC BSS 1 EXCHANGE PACKAGE LINE INDEX
- XPPD CON 0 POINTER TO CPU1 EXCHANGE PACKAGE
- SPACE 4,3
- *** *.CCC - CCC
- *
- * PLACE CCC - CCC IN THE SUBTITLE LINE AS A COMMENT.
- *E
- Z DATA 0L*
- SA1 CH STRING POINTER
- SB2 X1+1
- SB6 36
- SB7 SBTL3
- RJ PKS MOVE COMMENT TO SUBTITLE LINE
- JP DSD1 RETURN
- QUAL *
- TITLE BML MAINTENANCE REGISTER FILE SUBROUTINES.
- CBF SPACE 4,10
- ** CBF - CREATE BML MAINTENANCE REGISTER FILE.
- *
- * USES X - ALL.
- * A - 1, 2, 3, 4, 5, 6, 7.
- * B - 2, 3, 6.
- *
- * CALLS DRA, FOM, GDA, GMR, LMB, PBL, RDR, SMR, TBM.
- *
- * MACROS WRITER, SETFS.
- CBF SUBR ENTRY/EXIT
- SA1 BF
- ZR X1,CBFX IF NO BML FILE SPECIFIED
- SA1 F.TCMT GET PACKED DATE AND TIME
- SA2 X1+PDTL
- MX0 -36
- BX6 -X0*X2
- SA3 BFMB+1 ADD PACKED DATE AND TIME TO HEADER
- BX3 X0*X3
- BX6 X3+X6
- SA6 A3+
- RJ GDA GET DFT/OS BUFFER FWA
- ZR X3,CBF2 IF BUFFER NOT FOUND
- BX5 X3
- BX7 X5
- SA7 CBFK
- SA3 X5+/DFT/DFMR SAVE FWA OF M/R BUFFERS
- RJ DRA
- SA6 CBFL
- SA3 X5 READ DFT CONTROL WORD
- MX2 -8
- LX3 0-16 SAVE NUMBER OF M/R BUFFERS
- BX6 -X2*X3
- SA6 CBFH
- LX3 0-24-0+16
- BX6 -X2*X3 SAVE LENGTH OF M/R BUFFER
- SA6 CBFJ
- LX3 0-48-0+24 GET DFT SEQUENCE NUMBER
- BX7 -X2*X3
- LX3 8 SAVE DFT VERSION LEVEL
- BX6 -X2*X3
- SA6 CBFO
- SA2 BFMB+4 PLACE IN BML HEADER
- LX6 53-5
- BX6 X6+X2 ADD VERSION LEVEL
- BX7 X7+X6 ADD SEQUENCE NUMBER
- SA7 A2
- AX6 50
- ZR X6,CBF0 IF VERSION 3 OR LESS
- SA3 X5+/DFT/DFMD SAVE FWA OF MODEL DEPENDENT BUFFERS
- RJ DRA
- IX6 X6+X1
- SA6 CBFM
- SA3 X5+/DFT/DFSS SAVE FWA OF SUPPORTIVE STATUS BUFFERS
- RJ DRA
- SA6 CBFN
- SA3 X5+/DFT/DFBC SAVE M/R CONTROL WORD ADDRESS
- RJ DRA
- BX5 X6
- EQ CBF0.1 SAVE M/R CONTROL WORD ADDRESS
- CBF0 LX3 40-0
- SX1 6 DEFAULT NUMBER OF M/R BUFFERS
- MX4 4
- BX0 X4*X3
- ZR X0,CBF0.1 IF DFT VERSION 1
- SB3 4
- LX1 X0,B3 NUMBER OF DFT CONTROL WORDS
- CBF0.1 IX6 X5+X1 SAVE ADDRESS OF M/R CONTROL WORD
- SA6 CBFI
- CBF1 RJ FOM FIND OLDEST ENTRY
- ZR B3,CBF2 IF NO MORE ENTRIES TO PROCESS
- SX7 B0 INITIALIZE SUMMARY STATUS FLAG
- SX6 B3 SAVE MRB/SSB ORDINAL
- SA7 PBHA
- SA6 PBLB
- RJ LMB LOCATE M/R BUFFER ENTRY
- RJ PBL PROCESS BML
- EQ CBF1 PROCESS NEXT ENTRY
- * READ MAINTENANCE REGISTER ERROR ELEMENT RECORDS.
- CBF2 SA1 CBFA GET NEXT ELEMENT RECORD
- SX6 X1+B1 INCREMENT *MRET* INDEX
- SA6 A1
- SA2 MRET+X1
- ZR X2,CBF9 IF END OF ELEMENTS
- SA1 X2 RECORD ID
- MX3 24
- BX7 X3*X2 BML MESSAGE ID / SYMPTOM CODE
- AX2 18
- SA7 CBFD
- SX6 X2 MAINTENANCE REGISTER LIST ADDRESS
- SA6 A7-B1
- RJ RDR READ DUMP RECORD
- ZR X2,ERR42 IF RECORD NOT FOUND
- * GET MODEL NUMBER FROM ELEMENT ID REGISTER.
- SX5 /IOU/EIMR READ ELEMENT ID REGISTER
- RJ GMR
- NG X1,ERR42 IF ELEMENT ID REGISTER NOT FOUND
- MX6 -4
- AX7 16
- BX6 -X6*X7 ISOLATE MODEL NUMBER
- SA6 CBFB SAVE MODEL NUMBER
- * CHECK STATUS SUMMARY REGISTER FOR ERRORS.
- CBF5 SX5 /IOU/SSMR READ STATUS SUMMARY REGISTER
- RJ GMR
- NG X1,ERR42 IF STATUS SUMMARY REGISTER NOT FOUND
- BX6 X6+X7
- BX7 X7-X7 CLEAR EMPTY BML FILE FLAG
- ZR X6,CBF2 IF NO ERRORS FOR ELEMENT
- SA7 EB
- SA1 BFMB+3
- SA2 CBFD GET MESSAGE ID AND SYMPTOM CODE
- MX0 -36
- BX1 -X0*X1 SET MESSAGE ID/SYMPTOM CODE IN HEADER
- BX6 X1+X2
- SA6 A1
- * PROCESS MAINTENANCE REGISTER LIST.
- CBF6 SB6 48 SET OVERFLOW SHIFT COUNT
- SX6 B0+ CLEAR UPPER REGISTER BITS WORD
- SA6 CBFF
- CBF7 SA1 CBFC INCREMENT REGISTER LIST ADDRESS
- SX6 X1+B1
- SA6 A1
- SA2 X6+ GET NEXT REGISTER
- ZR X2,CBF8 IF END OF REGISTERS
- SA4 CBFB CREATE MODEL NUMBER MASK
- SX1 B1+
- SB2 X4
- LX4 X1,B2
- LX4 34 POSITION MASK
- BX3 X2*X4
- ZR X3,CBF7 IF NOT FOR THIS MODEL
- MX0 9
- BX5 X0*X2 GET REGISTER NUMBER
- LX5 9
- RJ GMR GET MAINTENANCE REGISTER
- NG X1,CBF7 IF MAINTENANCE REGISTER NOT FOUND
- LX6 8
- BX6 X1+X6 UPPER REGISTER BITS/REGISTER NUMBER
- SA3 CBFF UPDATE UPPER REGISTER BITS WORD
- LX6 B6
- BX6 X3+X6
- SA6 A3
- SB6 B6-12 DECREMENT OVERFLOW SHIFT COUNT
- BX5 X7
- RJ SMR STORE MAINTENANCE REGISTER
- GT B6,CBF7 IF OVERFLOW WORD NOT FULL
- SA5 CBFF
- RJ SMR STORE OVERFLOW WORD
- EQ CBF6 PROCESS NEXT REGISTER
- CBF8 RJ TBM TERMINATE BML MESSAGE
- SA1 NR CHECK NEXT RECORD INDEX
- ZR X1,CBF2 IF NO SECOND RECORD
- SA1 CBFA
- SX6 X1-1
- SA6 A1
- EQ CBF2 PROCESS SECOND RECORD
- CBF9 SA1 EB
- NZ X1,CBFX IF EMPTY BML FILE
- WRITER B,R
- SETFS X2,0 CLEAR OUTPUT FILE STATUS
- EQ CBFX RETURN
- CBFA DATA 0 *MRET* INDEX
- CBFB DATA 0 MODEL NUMBER
- CBFC CON 0,0 MAINTENANCE REGISTER LIST ADDRESS
- CBFD EQU CBFC+1 MESSAGE ID-S AND SYMPTOM CODES
- CBFF DATA 0 UPPER REGISTER BITS WORD
- CBFH CON 0 NUMBER OF M/R BUFFERS
- CBFI CON 0 ADDRESS OF FIRST CONTROL WORD
- CBFJ CON 0 LENGTH OF M/R BUFFER
- CBFK CON 0 ADDRESS OF DFT CONTROL WORD
- CBFL CON 0 FWA OF M/R BUFFERS
- CBFM CON 0 FWA OF MODEL DEPENDENT BUFFERS
- CBFN CON 0 FWA OF SUPPORTIVE STATUS BUFFERS
- CBFO CON 0 DFT VERSION LEVEL
- SPACE 4,10
- * ERROR ELEMENT MAINTENANCE REGISTER LISTS.
- IMRL BSS 0 IOU MAINTENANCE REGISTER LIST
- SXREG EIMR
- SXREG SSMR
- SXREG OIMR
- SXREG DEMR
- SXREG ISTR
- SXREG IFS1
- SXREG IFS2
- SXREG ITMR
- SXREG IFSM
- SXREG IOSB
- SXREG OICR,,,I4A
- SXREG ECCR,,,I4A
- SXREG SRCR,,,I4A
- SXREG F1CR,,,I4A
- SXREG F2CR,,,I4A
- SXREG TMCR,,,I4A
- SXREG FMCR,,,I4A
- SXREG OBCR,,,I4A
- SXREG C0CR,,,I4A+I4S
- SXREG C1CR,,,I4A+I4S
- SXREG C2CR,,,I4A+I4S
- SXREG C3CR,,,I4A+I4S
- SXREG C4CR,,,I4A
- SXREG C5CR,,,I4A
- SXREG C6CR,,,I4A
- SXREG C7CR,,,I4A
- SXREG C8CR,,,I4A
- SXREG C9CR,,,I4A
- CON 0
- MMRL BSS 0 MEMORY MAINTENANCE REGISTER LIST
- SXREG EIMR
- SXREG SSMR
- SXREG OIMR
- SXREG ECMR
- SXREG MCEL
- SXREG MCEL+1,,,THETA
- SXREG MCEL+2,,,THETA
- SXREG MCEL+3,,,THETA
- SXREG MUL1
- SXREG MUL1+1,,,THETA
- SXREG MUL1+2,,,THETA
- SXREG MUL1+3,,,THETA
- SXREG MUL2,,,S1+S2+S3
- SXREG MBRG
- CON 0
- PMRL BSS 0 PROCESSOR MAINTENANCE REGISTER LIST
- SXREG EIMR
- SXREG SSMR
- SXREG OIMR
- SXREG DEMR
- SXREG PMCL,,,S1
- SXREG PCCL,,,S2
- SXREG PRCL,,,S1+S2
- SXREG PUCS,,,S1
- SXREG PPFS
- SXREG PPFS+1
- SXREG PPFS+2,,,S3+THETA
- SXREG PPFS+3,,,S3+THETA
- SXREG PPFS+4,,,S3+THETA
- SXREG PPFS+5,,,S3+THETA
- SXREG PPFS+6,,,S3+THETA
- SXREG PPFS+7,,,S3+THETA
- SXREG PPFS+8,,,S3+THETA
- SXREG PPFS+9,,,S3+THETA
- SXREG PPFS+10,,,THETA
- SXREG PPFS+11,,,THETA
- SXREG PPFS+12,,,THETA
- SXREG PPFS+13,,,THETA
- SXREG PPFS+14,,,THETA
- SXREG PPFS+15,,,THETA
- MRET SPACE 4,10
- ** MRET - MAINTENANCE REGISTER ERROR ELEMENTS TABLE.
- *
- *T,MRET 12/ MSGID, 12/ SYM, 18/ RL, 18/ RID
- *
- * MSGID = MESSAGE IDENTIFIER.
- * SYM = SYMPTOM CODE.
- * RL = LIST OF REGISTERS TO PROCESS.
- * RID = ADDRESS OF RECORD ID WORD.
- MRET BSS 0 MAINTENANCE REGISTER ERROR ELEMENTS TABLE
- VFD 12/HM0250,12/HS1002,18/PMRL-1,18/.PMR
- VFD 12/HM0250,12/HS0402,18/MMRL-1,18/.MMR
- VFD 12/HM0250,12/HS0002,18/IMRL-1,18/.IMR
- CON 0 END OF ELEMENT LIST
- DRA SPACE 4,10
- ** DRA - DERIVE R-FORMAT ADDRESS.
- *
- * ENTRY (X3) = R-FORMAT ADDRESS.
- *
- * EXIT (X6) = UNFORMATTED ADDRESS.
- * (X7) = LENGTH OF BUFFER.
- *
- * USES X - 0, 2, 3, 6, 7.
- DRA SUBR ENTRY/EXIT
- MX0 -12
- BX7 -X0*X3 LENGTH OF BUFFER
- AX3 16
- BX2 -X0*X3 R-LOWER
- AX3 16
- BX6 -X0*X3 R-UPPER
- LX6 12
- BX6 X2+X6
- AX3 16
- BX2 -X0*X3 OFFSET
- LX6 6
- BX6 X2+X6
- EQ DRAX RETURN
- FOM SPACE 4,10
- ** FOM - FIND OLDEST M/R ENTRY.
- *
- * ENTRY (CBFI) = ADDRESS OF M/R CONTROL WORD.
- * (CBFH) = NUMBER OF M/R ENTRIES.
- *
- * EXIT (B3) = OFFSET OF OLDEST M/R ENTRY.
- * (X7) = DFT ANALYSIS CODE.
- * (PBLD) .NE. 0 IF MDB DATA PRESENT.
- *
- * USES X - 0, 1, 2, 3, 4, 6, 7.
- * A - 1, 2, 3, 7.
- * B - 2, 3.
- FOM SUBR ENTRY/EXIT
- SB3 B0 OFFSET OF OLDEST ENTRY
- BX4 X4-X4 OLDEST SEQUENCE NUMBER
- SA1 CBFH
- SA2 CBFI ADDRESS OF FIRST M/R CONTROL WORD
- SB2 X1+ NUMBER OF ENTRIES TO CHECK
- FOM1 SB2 B2-B1 DECREMENT COUNTER FOR M/R ENTRIES
- ZR B2,FOMX IF ALL ENTRIES PROCESSED
- SA3 X2+B2 GET NEXT M/R CONTROL WORD
- MX0 -8
- LX3 0-16
- BX0 -X0*X3 GET M/R FLAGS
- LX0 59-/DFT/MRLG
- PL X0,FOM1 IF NO DATA TO LOG
- LX0 59-/DFT/MRIL-59+/DFT/MRLG
- NG X0,FOM1 IF ENTRY INTERLOCKED
- LX3 0-32-0+16
- MX0 -12 GET DFT ANALYSIS CODE
- BX1 -X0*X3
- SX0 X1-3400B
- PL X0,FOM1 IF TO IGNORE THIS ENTRY
- MX0 -8 GET SEQUENCE NUMBER
- LX3 0-24-0+32
- BX6 -X0*X3
- ZR B3,FOM3 IF NO ENTRY SELECTED YET
- IX0 X4-X6 COMPARE OLDEST WITH CURRENT
- PL X0,FOM2 IF LOWER THAN PREVIOUS OLDEST
- SX0 X0+40B
- NG X0,FOM3 IF WRAP AROUND
- EQ FOM1 PROCESS NEXT ENTRY
- FOM2 SX0 X0-40B
- PL X0,FOM1 IF NOT EARLIER ENTRY
- FOM3 SB3 B2 UPDATE OLDEST ENTRY OFFSET
- LX3 0-22-0+24 GET MDB FLAG
- BX4 X6 SEQUENCE NUMBER
- BX7 X1 SAVE DFT ANALYSIS CODE
- SA7 FOMA
- MX0 -1
- BX7 -X0*X3
- SA7 PBLD
- EQ FOM1 PROCESS NEXT ENTRY
- FOMA CON 0 DFT ANALYSIS CODE
- GMR SPACE 4,15
- ** GMR - GET MAINTENANCE REGISTER.
- *
- * ENTRY (X5) = REGISTER NUMBER.
- *
- * EXIT (X1) = REGISTER NUMBER IF FOUND.
- * .LT. 0 IF REGISTER NOT FOUND.
- * (X6) = LOWER 4 BITS OF REGISTER (BITS 60-63).
- * (X7) = UPPER 60 BITS OF REGISTER (BITS 0-59).
- *
- * USES X - 2, 3, 6, 7.
- * A - 6.
- *
- * CALLS SFR.
- GMR SUBR ENTRY/EXIT
- RJ SFR
- BX2 X6 REPOSITION BITS
- MX3 -4
- BX6 -X3*X7 (X6) = BITS 60-63
- BX7 X3*X7 CLEAR LOWER BITS
- BX7 X2+X7 ADD UPPER BITS
- LX7 -4 (X7) = BITS 0-59
- EQ GMRX RETURN
- LMB SPACE 4,15
- ** LMB - LOCATE M/R BUFFER.
- *
- * ENTRY (B3) = OFFSET OF M/R CONTROL WORD.
- * (FOMA) = DFT ANALYSIS CODE.
- * (CBFI) = FIRST M/R CONTROL WORD ADDRESS.
- * (CBFL) = FWA OF M/R BUFFERS.
- *
- * EXIT POSITIONED TO CORRECT BYTE FOR ROUTINE *NXB*.
- * M/R BUFFER CONTROL WORD CLEARED.
- *
- * USES X - 0, 1, 2, 3, 4, 6, 7.
- * A - 1, 2, 3, 4, 6, 7.
- *
- * CALLS FBP, SCM.
- LMB SUBR ENTRY /EXIT
- SA1 BFMB+3 SET ANALYSIS CODE INTO BML
- MX0 48
- LX0 36-0
- BX1 X0*X1 CLEAR OLD SYMPTOM CODE
- SA2 FOMA DFT ANALYSIS CODE
- LX2 36-0
- BX7 X1+X2
- SA7 A1
- SA3 CBFI GET OFFSET TO M/R BUFFER
- SA4 X3+B3 M/R BUFFER CONTROL WORD
- MX0 -16
- BX3 -X0*X4 OFFSET INTO M/R BUFFERS
- BX6 X6-X6 CLEAR M/R CONTROL WORD
- SA6 A4
- SA2 CBFL FWA OF M/R BUFFERS
- IX3 X2+X3 LOCATION OF M/R BUFFER
- LX3 2 BYTE POSITION OF M/R BUFFER
- RJ SCM SET CENTRAL MEMORY
- SA7 RI
- RJ FBP FIND BYTE POSITION
- EQ LMBX RETURN
- PBH SPACE 4,10
- ** PBH - PROCESS BML HEADER.
- *
- * EXIT (B7) = NUMBER OF REGISTERS TO PROCESS.
- * (CBFF) = BML REGISTER NUMBERS ENTERED.
- *
- * USES X - 1, 3, 6.
- * A - 3, 6.
- * B - 6, 7.
- *
- * CALLS NXB.
- PBH SUBR ENTRY/EXIT
- SB6 48 SHIFT COUNT
- SB7 B0+ INITIALIZE REGISTER COUNT
- PBH1 RJ NXB READ NEXT BYTE
- NZ X1,PBH2 IF REGISTER PRESENT
- SA3 PBHA
- NZ X3,PBH3 IF NOT STATUS SUMMARY
- MX6 1 SET STATUS SUMMARY FLAG
- SA6 A3
- PBH2 LX1 B6 SHIFT REGISTER NUMBER TO PROPER LOCATION
- SA3 CBFF UPDATE BML REGISTER WORD
- BX6 X3+X1
- SA6 A3
- SB7 B7+B1 INCREMENT REGISTER COUNT
- PBH3 SB6 B6-12 UPDATE SHIFT COUNT
- NZ B6,PBH1 IF NOT COMPLETE
- EQ PBHX RETURN
- PBHA CON 0 SUMMARY STATUS FLAG
- PBL SPACE 4,15
- ** PBL - PROCESS BML.
- *
- * ENTRY (CBFJ) = REGISTERS LEFT TO PROCESS.
- * (FOMA) = DFT ANALYSIS CODE.
- *
- * EXIT BML FILE WRITTEN.
- *
- * USES X - 0, 1, 2, 3, 5, 6, 7.
- * A - 1, 2, 3, 6, 7.
- * B - 6, 7.
- *
- * CALLS DRA, FBP, NXB, PBH, PBR, SMR, SMS.
- * PROCESS SSB DATA.
- PBL7 SA1 CBFO
- SX1 X1-4
- NG X1,PBLX IF NOT DFT VERSION 4 OR ABOVE
- SX1 B1 SET BIT 54 IN SECOND WORD OF BML MESSAGE
- LX1 54-0
- SA2 BFMB+4
- BX7 X1+X2
- SA7 A2
- SA1 CBFN SSB FWA
- SA2 F.TCMT
- IX2 X1+X2
- SA2 X2
- MX0 -16
- BX6 -X0*X2 BUFFER LENGTH
- SX1 X1+B1 FWA OF BUFFER DATA
- SA3 PBLB MRB/SSB ORDINAL
- IX2 X3*X6 OFFSET INTO BUFFER
- IX3 X2+X1 FWA OF BLOCK
- LX3 2 CONVERT TO BYTE NUMBER
- RJ FBP POSITION TO HEADER WORD
- RJ NXB
- RJ NXB
- SB7 X1 NUMBER OF REGISTERS TO PROCESS
- RJ NXB
- SA2 PBLD
- BX6 X6-X6
- MX0 -8
- ZR X2,PBL8 IF NO MODEL DEPENDENT DATA
- BX2 -X0*X1 GET MDB ORDINAL
- AX1 8
- NZ X1,PBL8 IF NOT VALID DATA
- SX6 X2+1 SET ORDINAL+1 (ENSURE NON-ZERO VALUE)
- PBL8 SA6 A2+ SET/CLEAR MDB FLAG
- RJ NXB
- PBL9 SB6 56 INITIALIZE OVERFLOW POSITION
- RJ PBR PROCESS AND STORE BML REGISTERS
- PL X6,PBL9 IF MORE REGISTERS
- * PROCESS MDB DATA.
- SA3 PBLD
- ZR X3,PBLX IF NO MODEL DEPENDENT DATA
- SX7 BFBDAL SET DATA BLOCK LENGTH
- SA7 PBLC+0
- SX6 4 SET OVERFLOW SHIFT COUNT DECREMENT AMOUNT
- SA6 A7+B1
- SX1 B1 SET BIT 55 IN BML HEADER
- LX1 55-0
- SA2 BFMB+4
- BX6 X1+X2
- SA6 A2
- SX6 X7+BFHL-1 SET MDB MESSAGE SIZE
- RJ SMS
- SA1 CBFM CALCULATE MDB FWA
- SX3 X3-1 GET MDB ORDINAL
- IX3 X3+X1
- SA3 X3
- RJ DRA
- LX6 2 CONVERT TO BYTE ADDRESS
- SX3 X6+3 ADVANCE TO BYTE 3 OF HEADER WORD
- RJ FBP
- RJ NXB GET DATA BLOCK LENGTH
- SB7 X1-1
- PBL10 SB6 56 INITIALIZE SHIFT COUNT
- RJ PBR PROCESS BLOCK OF REGISTERS
- PL X6,PBL10 IF MORE TO PROCESS
- PBL SUBR ENTRY/EXIT
- SA1 CBFJ NUMBER OF REGISTERS TO PROCESS
- BX7 X1
- SA7 PBLA
- PBL1 SX7 B0+
- SA7 EB SET BML ERRORS PRESENT FLAG
- PBL2 SA1 PBLA CHECK ENTRIES LEFT TO PROCESS
- ZR X1,PBL7 IF ALL ENTRIES PROCESSED
- SX6 X1-5 DECREMENT ENTRY COUNT
- SA6 A1+
- NZ X6,PBL5 IF NOT LAST BLOCK
- SA2 FOMA DFT ANALYSIS CODE
- * PROCESSING FOR LAST BLOCK OF REPAIRED/UNREPAIRED ERRORS.
- SA1 TM9E CHECK FOR SPECIAL MODEL 990 ERRORS
- PBL3 ZR X1,PBL5 IF NOT SPECIAL ERROR
- IX3 X2-X1
- SA1 A1+B1
- NZ X3,PBL3 IF NO MATCH
- SB7 48 INITIALIZE SHIFT POSITION
- RJ NXB
- MX0 -12
- BX5 -X0*X1 DO NOT SAVE UPPER 4 BITS
- LX5 B7 POSITION BYTE IN REGISTER SAVE AREA
- PBL4 SB7 B7-16 DECREMENT SHIFT POSITION
- RJ NXB
- LX1 B7 POSITION BYTE
- BX5 X1+X5
- NZ B7,PBL4 IF NOT COMPLETE
- RJ SMR STORE MAINTENANCE REGISTER
- SB7 4 INITIALIZE REGISTER COUNT
- EQ PBL6 CONTINUE PROCESSING BML REGISTERS
- PBL5 RJ PBH PROCESS BML HEADER REGISTERS
- PBL6 SB6 56 INITIALIZE OVERFLOW POSITION
- RJ PBR PROCESS AND STORE BML REGISTERS
- NG X6,PBL7 IF THROUGH PROCESSING
- EQ PBL1 CONTINUE PROCESSING
- PBLA CON 0 REGISTERS LEFT TO PROCESS
- PBLB CON 0 MRB/SSB ORDINAL
- PBLC CON BFBDL DATA BLOCK LENGTH
- CON 12 SHIFT COUNT
- PBLD CON 0 MODEL DEPENDENT DATA BUFFER FLAG
- ** TM9E - TABLE OF MODEL 990 SPECIAL ERRORS.
- TM9E BSS 0
- CON 0#206 REPAIRED ERROR
- CON 0#207 UNREPAIRED ERROR
- CON 0#205 RETRY IN PROGRESS
- CON 0#21B RETRY CONVERTED TO UNCORRECTED ERROR
- CON 0#21C RETRY EXHAUSTED
- CON 0#21D RETRY EXHAUSTED
- CON 0
- PBR SPACE 4,10
- * PBR - PROCESS AND STORE BLOCK OF BML REGISTERS.
- *
- * EXIT (X6) = NEGATIVE IF *TBM* CALLED.
- *
- * USES X - 0, 1, 2, 3, 5, 6.
- * A - 0, 3, 5, 6.
- * B - 4, 6, 7.
- *
- * CALLS NXB, SMR, TBM.
- PBR3 RJ TBM TERMINATE BML MESSAGE
- SX6 -1
- PBR SUBR ENTRY/EXIT
- PBR1 ZR B7,PBR3 IF NO MORE REGISTERS
- SX5 B0+ INITIALIZE BML SAVE AREA
- SB4 44 INITIALIZE SHIFT COUNT FOR REGISTERS
- PBR2 SA0 B4+
- RJ NXB GET NEXT BYTE
- SB4 A0+
- LX1 B4 CORRECTLY POSITION REGISTER
- BX5 X1+X5
- SB4 B4-16 DECREMENT SHIFT COUNT
- PL B4,PBR2 IF NOT COMPLETE
- RJ NXB GET LAST BYTE
- MX0 -4 GET LOWER 4 BITS
- BX2 -X0*X1
- AX1 4
- BX5 X1+X5
- LX2 B6
- SA3 PBLC+1 UPDATE OVERFLOW SHIFT COUNT
- SB4 X3
- SB6 B6-B4
- SA3 CBFF UPDATE BML OVERFLOW WORD
- BX6 X2+X3
- SA6 A3
- SB7 B7-B1 DECREMENT REGISTER COUNT
- RJ SMR STORE REGISTER
- ZR B6,PBR1 IF ONE MORE SPOT IN MDB OVERFLOW WORD
- SA3 PBLC+1
- SB4 X3
- SB4 B6-B4
- PL B4,PBR1 IF OVERFLOW WORD NOT FULL
- SA5 CBFF STORE OVERFLOW WORD
- RJ SMR
- BX6 X6-X6 CLEAR OVERFLOW WORD
- SA6 A5
- EQ PBRX RETURN
- RDB SPACE 4,10
- ** RDB - RESET DATA BLOCK.
- *
- * EXIT (BFBI) = 0.
- * (BFBD - BFBD+BFBDL) = 0.
- *
- * USES X - 1, 7.
- * A - 1, 7.
- * B - 2.
- RDB SUBR ENTRY/EXIT
- BX7 X7-X7 RESET DATA BLOCK INDEX
- SA1 PBLC+0
- SB2 X1
- SA7 BFBI
- RDB1 SB2 B2-1
- SA7 BFBD+B2
- NZ B2,RDB1 IF NOT END OF BLOCK
- EQ RDBX RETURN
- SMR SPACE 4,15
- ** SMR - STORE MAINTENANCE REGISTER.
- *
- * ENTRY (X5) = WORD TO STORE.
- *
- * EXIT (BFBI) = (BFBI) + 1.
- * (B6) PRESERVED.
- * (B7) PRESERVED.
- * IF THE DATA BLOCK IS FULL, THE CURRENT MESSAGE BLOCK
- * IS WRITTEN TO THE BML FILE AND (X5) IS STORED IN A
- * NEW MESSAGE BLOCK.
- *
- * USES X - 0, 1, 2, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 6, 7.
- *
- * CALLS RDB.
- *
- * MACROS WRITEW.
- SMR SUBR ENTRY/EXIT
- SA1 BFBI GET DATA BLOCK INDEX
- SA2 PBLC+0 DATA BLOCK LENGTH
- IX6 X1-X2
- NZ X6,SMR1 IF NOT END OF DATA BLOCK
- * FLUSH DATA BLOCK.
- SX6 B6 SAVE B6, B7
- LX6 18
- SX7 B7
- BX7 X6+X7
- SA7 SMRA
- SX2 X2+BFHL
- WRITEW B,BFMB,X2
- SA1 SMRA RESTORE
- SB7 X1
- AX1 18
- SB6 X1
- RJ RDB RESET DATA BLOCK
- SA1 BFMB SET PREVIOUS BLOCK LENGTH
- SA2 PBLC+0
- SX6 X2+BFHL
- MX0 18
- LX6 24
- LX0 -18
- BX1 -X0*X1
- BX6 X1+X6
- SA6 A1
- SA1 BFMB+4 SET *NOT FIRST BLOCK* FLAG
- MX0 1
- LX0 39-59
- BX6 X0+X1
- SA6 A1
- SA1 BFBI GET DATA BLOCK INDEX
- SMR1 BX7 X5 STORE REGISTER CONTENTS
- SA7 BFBD+X1
- SX6 X1+B1 ADVANCE DATA BLOCK INDEX
- SA6 A1
- EQ SMRX RETURN
- SMRA CON 0 REGISTER SAVE WORD
- SMS SPACE 4,10
- ** SMS - SET MESSAGE SIZE IN BML HEADER.
- *
- * ENTRY - (X6) = CURRENT MESSAGE SIZE TO SET.
- *
- * EXIT CURRENT MESSAGE SIZE FIELDS SET IN BML HEADER WORDS
- * 0 AND 1.
- *
- * USES X - 0, 1, 6, 7.
- * A - 1, 7.
- SMS SUBR ENTRY/EXIT
- SA1 BFMB SET HEADER WORD ONE
- MX0 -12
- BX1 X0*X1
- BX7 X1+X6
- SA7 A1
- LX6 59-11 POSITION SIZE
- LX0 59-11
- SA1 A1+B1 SET HEADER WORD TWO
- BX1 X0*X1
- BX7 X1+X6
- SA7 A1
- EQ SMSX RETURN
- TBM SPACE 4,10
- ** TBM - TERMINATE BML MESSAGE.
- *
- * ENTRY (CBFF) = REGISTER BML WORD.
- * (PBLC+1) = AMOUNT TO DECREMENT OVERFLOW SHIFT COUNT.
- * (B6) = OVERFLOW SHIFT COUNT.
- *
- * EXIT BML BUFFER FLUSHED.
- * CONTINUATION BIT RESET.
- *
- * USES X - 0, 1, 5, 6, 7.
- * A - 1, 5, 6, 7.
- * B - 2, 6, 7.
- *
- * CALLS RDB, SMR, SMS.
- *
- * MACROS WRITEW.
- TBM SUBR ENTRY/EXIT.
- SB2 B6-56
- ZR B2,TBM2 IF OVERFLOW WORD WRITTEN
- SA1 PBLC+1 GET SHIFT COUNT
- SB7 X1
- SB6 B6-B7
- TBM1 BX5 X5-X5 WRITE ZERO WORD
- SB6 B6-B7
- RJ SMR
- GT B6,TBM1 IF NOT THROUGH WITH BLOCK
- SA5 CBFF STORE OVERFLOW WORD
- BX6 X6-X6 CLEAR OVERFLOW WORD
- SA6 A5
- RJ SMR
- TBM2 SX0 B1 CLEAR CONTINUATION BIT
- LX0 38-0
- SA1 BFMB+4
- BX7 -X0*X1
- SA7 A1
- * FLUSH MESSAGE BLOCK AND RESET HEADER.
- SA1 PBLC+0
- SX1 X1+BFHL
- WRITEW B,BFMB,X1 WRITE LAST BLOCK OF MESSAGE
- RJ RDB RESET DATA BLOCK
- SA1 BFMB+4
- MX0 2
- LX0 55-59 CLEAR MESSAGE CONTENT FLAGS
- BX1 -X0*X1
- LX0 39-59-55+59 SET CONTINUATION/CLEAR *NOT FIRST BLOCK*
- BX7 X0-X1
- SA7 A1
- SX6 BFMBL RESET CURRENT MESSAGE SIZE
- RJ SMS
- SX6 BFBDL RESET BML MESSAGE SIZE
- SA6 PBLC+0
- SX7 12 RESET OVERFLOW SHIFT COUNT
- SA7 A6+1
- EQ TBMX RETURN
- TITLE SUBROUTINES.
- APP SPACE 4,7
- ** APP - ANALYZE PPU.
- *
- * ENTRY PP = PPU NUMBER.
- *
- * USES ALL REGISTERS.
- *
- * CALLS COD, CPN, CPS, DPQ, FEM, FLC, FON, FPL, FPO, GPS, ICT,
- * PPO, RPD, SFN, SLP, SSB, UPS.
- *
- * MACROS PRINT.
- APP SUBR
- RJ PPO PACK PP OPERATING REGISTERS
- SA6 APPH SAVE REGISTER DATA FOUND FLAG
- RJ RPD READ PP DATA
- SX6 B0+ CLEAR DUMPING PP SAVE AREA DATA FLAG
- APP1 SA6 APPF
- RJ ICT INITIALIZE CHANNEL TABLE
- SA2 EF CHECK AUTO EJECT FLAG
- SX1 100 PRESET FOR EJECT
- ZR X2,APP2 IF AUTO EJECT ON
- SX1 26
- APP2 RJ CPS CHECK PAGE SPACE
- PRINT (=2C )
- SA1 BPNA+1
- SA2 =6R, AFTE
- BX6 X1
- BX7 X1+X2
- SA6 APPA+2 SET NAME IN HEADER
- SA7 APPB+2
- SA2 APPF
- ZR X2,APP3 IF NOT DUMPING PP SAVE AREA DATA
- SA1 GPSB GET ADDRESS OF PP SAVE BUFFER
- RJ COD CONVERT SAVE BUFFER ADDRESS
- MX6 48 ENSURE END OF LINE
- BX6 X6*X4
- BX1 X4
- SA6 APPB+7
- APP3 SA0 A6+2 SET LOGICAL PP IN MESSAGE
- RJ SLP
- ZR X6,APP4 IF NO PP SWITCH
- RJ SFN SPACE FILL NAME
- SA6 A6+ SET SPACE FILLED NAME IN HEADER
- APP4 SA1 A6+3 GET FWA OF HEADER
- PRINT X1 PRINT HEADER
- PRINT (=2C )
- RJ SSB CLEAR PRINT STRING
- SA3 F.TCMT
- SA4 PC GET PP COMMUNICATION AREA POINTER
- IX4 X3+X4 ADDRESS OF PP COMMUNICATION AREA
- RJ CPN CONVERT PP/CPP NUMBER
- LX6 3
- IX5 X6+X4
- SA5 X5 READ SELECTED INPUT REGISTER
- SX6 B0 PRESET LINE INDEX
- * FORMAT I/O REGISTERS AND OVERLAY NAMES.
- APP7 SA2 PP RELOAD PP NUMBER
- SA6 APPE SAVE LINE INDEX
- SB4 X6
- SB2 X2 SET PPU NUMBER
- SB7 PRBF+5 PRINT STRING ADDRESS
- RJ FPL FORMAT PPU REGISTER LINE
- SB7 PRBF+60
- RJ FON FORMAT OVERLAY NAME
- PRINT CCCH,B7-CCCH
- SA1 APPE
- SA2 APPF
- SA5 A5+B1 READ NEXT REGISTER WORD
- SX6 X1+B1 ADVANCE LINE INDEX
- SB4 X6-10B
- ZR X2,APP8 IF NOT DUMPING PP SAVE AREA DATA
- SA5 X1+1+PSAV GET REGISTER FROM SAVE AREA
- APP8 NG B4,APP7 IF MORE TO FORMAT
- * FORMAT ENTRY POINT MAP, LOW CORE ANALYSIS AND OPERATING
- * REGISTERS.
- PRINT (=2C )
- RJ SSB
- SB7 PRBF PRINT HEADERS
- SB6 57
- SA2 APPC
- RJ UPS
- SA5 APPH
- ZR X5,APP8.1 IF NO PP REGISTERS
- SB7 PRBF+88
- SB6 20
- SA2 =C*OPERATING REGISTERS*
- RJ UPS
- APP8.1 PRINT CCCH,B7-CCCH
- RJ SSB
- SB7 PRBF
- SB6 61
- SA2 APPD
- RJ UPS
- ZR X5,APP8.2 IF NO PP REGISTERS
- SB7 PRBF+93
- SB6 25
- SA2 =C*P Q K A*
- RJ UPS
- APP8.2 PRINT CCCH,B7-CCCH
- SX5 0 PRESET LINE INDEX
- PRINT (=2C )
- APP9 RJ SSB CLEAR PRINT STRING
- RJ FEM FORMAT ENTRY POINT
- RJ FLC FORMAT LOW CORE ANALYSIS LINE
- SB7 PRBF+76
- RJ FPO FORMAT OPERATING REGISTERS LINE
- PRINT CCCH,B7-CCCH
- SX5 X5+1 ADVANCE LINE INDEX
- SX6 X5-10
- SA1 CE
- ZR X1,APP10 IF CME NOT PRESENT
- SX6 X6-1 COUNT R-REGISTER LINE
- APP10 NG X6,APP9 IF MORE LINES TO FORMAT
- * DUMP MEMORY IN *Q* FORMAT.
- PRINT (=2C )
- PRINT (=C* PPU MEMORY*)
- PRINT (=2C )
- SX6 B1+
- SA6 APPG SET *PBUF*-DEFINED TO TRUE
- RJ DPQ DUMP PPU MEMORY
- SA3 APPF
- NZ X3,APP11 IF DUMPING PP SAVE AREA DATA
- RJ GPS GET PP SAVE AREA DATA
- SX6 1 SET DUMPING PP SAVE AREA DATA FLAG
- NZ X5,APP1 IF PP FOUND IN PP SAVE AREA
- APP11 SX6 B0+
- SA6 APPF CLEAR DUMPING PP SAVE AREA DATA FLAG
- SA6 APPG CLEAR *PBUF*-VALID
- JP APPX EXIT
- APPA DATA C* ANALYSIS OF PPXX (LOGICAL PPYY)*
- CON APPA
- APPB DATA 50H RE-ANALYSIS OF PPXX, AFTER RESTORING IT FROM
- DATA C*THE PP SAVE AREA AT 000000. (LOGICAL PPYY)*
- CON APPB
- APPC DATA 50H RESIDENT ENTRY POINTS LOW CORE CON
- DATA C*STANTS*
- APPD DATA 50H NAME LOC CALLER NAME LOC ACTUA
- DATA C*L EXPECTED*
- APPE BSS 1 LINE INDEX
- APPF CON 0 DUMPING PP SAVE AREA DATA FLAG
- APPG CON 0 PP DATA IN *PBUF* FLAG
- APPH CON 0 PP REGISTER DATA FLAG
- ASD SPACE 4,12
- ** ASD - ASSEMBLE DIGITS.
- *
- * ENTRY (B7) = 0, IF OCTAL BASE.
- * = NONZERO, IF DECIMAL BASE.
- * (CH) = STRING POINTER.
- *
- * EXIT (X4) = NONZERO, IF CONVERSION ERROR.
- * (X6) = CONVERTED DIGITS.
- * (B6) = 0, IF AT END OF DIRECTIVE.
- * = NONZERO, IF DIGITS PROCESSED.
- *
- * USES X - 5.
- *
- * CALLS ASN, DXB.
- ASD SUBR ENTRY/EXIT
- RJ ASN ASSEMBLE NAME
- BX5 X6
- RJ DXB CONVERT DISPLAY CODE TO BINARY
- EQ ASDX RETURN
- ASN SPACE 4,15
- ** ASN - ASSEMBLE NAME.
- * ASSEMBLES UP TO A 10-CHARACTER NAME TO A SEPARATOR.
- * LEADING SPACES ARE IGNORED.
- *
- * ENTRY (CH) = STRING POINTER.
- *
- * EXIT (X6) = NAME, LEFT-JUSTIFIED AND ZERO-FILLED.
- * = 0, IF NULL PARAMETER.
- * (B6) = 0, IF AT END OF DIRECTIVE.
- * .LT.0, IF SHIFT COUNT TO RIGHT-JUSTIFY.
- * .GT.0, IF NULL PARAMETER.
- *
- * ERROR TO *ERR33*, IF PARAMETER MORE THAN 10 CHARACTERS.
- *
- * USES X - 1, 6, 7.
- * A - 1, 7.
- * B - 6.
- ASN3 SX7 A1+ STORE ADDRESS OF LAST PARAMETER
- SA7 CH
- LX6 B6 LEFT-JUSTIFY PARAMETER
- ZR X6,ASNX IF NULL PARAMETER
- ASN4 SB6 B6-60 CLEAR IF END OF DIRECTIVE
- ASN SUBR ENTRY/EXIT
- SB6 60 PRESET SHIFT COUNT
- SX6 0 PRESET ASSEMBLED NAME
- SA1 CH GET FIRST CHARACTER
- SA1 X1+
- SX7 X1-1R/
- NG X7,ASN2 IF FIRST CHARACTER NOT SEPARATOR
- SX7 X1-1R.
- ZR X7,ASN4 IF END OF DIRECTIVE
- ASN1 SA1 A1+1 GET NEXT CHARACTER
- ASN2 SX7 X1-1R
- ZR X7,ASN1 IF SPACING WITHIN DIRECTIVE
- SX7 X1-1R/
- PL X7,ASN3 IF END OF PARAMETER
- SB6 B6-6
- NG B6,ERR33 IF MORE THAN 10 CHARACTERS READ
- LX6 6 STORE CHARACTER
- BX6 X6+X1
- EQ ASN1 GET NEXT CHARACTER
- ASP SPACE 4,27
- ** ASP - ANALYZE SELECTED PPUS.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (X6) = PARAMETER BLOCK ADDRESS.
- * (PC) = PP COMMUNICATION AREA POINTER.
- *
- * PARAMETER BLOCK FORMAT -
- *
- * 18/ NAME,1/ ,5/ NUMBER,1/ OT BIT,18/ ,5/ ORIGIN TYPE,12/
- * SECOND ENTRY
- * . .
- * . .
- * . .
- * 60/ NEGATIVE WORD TERMINATES BLOCK
- *
- * NAME = 0 IF ANY ACTIVE PPU ALLOWED.
- * = PPU NAME.
- * NUMBER = 0 IF ANY CONTROL POINT NUMBER ALLOWED.
- * = CONTROL POINT NUMBER THAT MUST MATCH THE
- * CONTROL POINT NUMBER ASSOCIATED WITH THE PPU.
- * OT BIT = 0 IF ANY ORIGIN TYPE ALLOWED.
- * = 1 IF THE ORIGIN TYPE SPECIFIED (BITS 17-12)
- * MUST MATCH THE ORIGIN TYPE OF THE CONTROL
- * POINT ASSOCIATED WITH THE PPU.
- *
- * USES X - ALL.
- * A - 1, 3, 4, 5, 6, 7.
- * B - 2.
- *
- * CALLS APP, SCM, SPA.
- ASP SX7 A0
- SA7 ASPA SAVE RETURN ADDRESS
- SA6 A7+B1 SAVE PARAMETER BLOCK ADDRESS
- SA1 PC GET PP COMMUNICATION AREA POINTER
- BX6 X1
- SA6 PI SET SEARCH INDEX
- ASP1 RJ SPA SELECT NEXT PPU TO ANALYZE
- ZR X1,ASP6 IF NO MORE PPUS TO ANALYZE
- SA5 F.TCMT
- SB2 X6-10B
- SA4 X5+B2 READ INPUT REGISTER
- SA1 ASPB
- SA5 X1-1
- ASP2 SA5 A5+1 NEXT ENTRY IN TABLE
- NG X5,ASP1 IF END OF TABLE
- MX3 18
- BX2 X5*X3
- ZR X2,ASP3 IF ANY ACTIVE PPU ALLOWED
- BX0 X5-X4
- BX1 X0*X3
- NZ X1,ASP2 IF NAMES DO NOT MATCH
- ASP3 MX6 5
- LX6 -19
- BX1 X5*X6
- ZR X1,ASP4 IF ANY CONTROL POINT NUMBER ALLOWED
- BX1 X5-X4
- BX1 X1*X6
- NZ X1,ASP2 IF CONTROL POINT NUMBERS DO NOT MATCH
- ASP4 BX2 X5
- LX2 24
- PL X2,ASP5 IF ANY ORIGIN TYPE ALLOWED
- SA1 F.TCMT
- SX7 CPLEN
- BX3 X4*X6
- LX3 24 CONTROL POINT NUMBER
- IX3 X3*X7 CONTROL POINT AREA ADDRESS
- IX3 X1+X3
- SA3 X3+JOTW GET CONTROL POINT AREA ORIGIN TYPE
- AX6 24
- BX6 X6*X3
- BX5 X6*X5 GET ORIGIN TYPE FOR TABLE ENTRY
- BX5 X5-X6
- NZ X5,ASP2 IF ORIGIN TYPES DO NOT MATCH
- ASP5 RJ APP ANALYZE PPU
- JP ASP1 CONTINUE
- ASP6 RJ SCM SET CENTRAL MEMORY
- SA7 RI
- SA1 ASPA
- SB2 X1
- JP B2 RETURN
- ASPA BSS 1 RETURN ADDRESS
- ASPB BSS 1 PARAMETER BLOCK ADDRESS
- ASX SPACE 4,15
- ** ASX - ASSEMBLE HEXADECIMAL DIGITS.
- *
- * ENTRY (CH) = STRING POINTER.
- *
- * EXIT (X4) = NONZERO, IF CONVERSION ERROR.
- * (X6) = CONVERTED DIGITS.
- * (B6) = 0, IF NO DIGITS ASSEMBLED.
- * (ASXA) = NUMBER IN DISPLAY CODE,
- * = 0 IF NULL PARAMETER.
- *
- * USES X - 4, 5.
- *
- * CALLS ASN, HXB.
- ASX SUBR ENTRY/EXIT
- SX4 1 PRESET ERROR RESPONSE
- RJ ASN ASSEMBLE NAME
- SA6 ASXA SAVE NAME
- ZR B6,ASXX IF NO DIGITS ASSEMBLED
- BX5 X6
- RJ HXB CONVERT DISPLAY CODE TO HEX
- EQ ASXX RETURN
- ASXA CON 0 SAVE RESULT FROM *ASN*
- ATC SPACE 4,13
- ** ATC - ASSEMBLE TRACK CHAIN.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (GNFA - GNFA+5) = FILE INFORMATION.
- *
- * EXIT TRACK LINKS STORED ONE PER WORD RIGHT JUSTIFIED
- * IN TABLE *TSC1*. TABLE *TSCR* IS USED TO HOLD THE
- * SELECTED TRT DURING THE ASSEMBLY PROCESS.
- *
- * USES X - 0, 1, 2, 3, 4, 5, 6.
- * A - 0, 1, 2, 3, 5, 6.
- * B - 2, 3, 4, 5.
- *
- * CALLS PCM.
- *
- * MACROS ADDWRD, ALLOC, GETCM.
- ATC SUBR
- SA2 GNFA+5 READ EST
- MX0 -12
- BX3 -X0*X2
- LX3 3
- SX5 X3 SAVE MST ADDRESS
- SX3 X3+TRLL
- RJ PCM POSITION TO MST WORD *TRLL*
- GETCM
- MX0 -18 SAVE FWA OF TRT
- BX6 -X0*X6
- SA6 ATCA
- MX0 -12
- SX3 X5+TDGL
- RJ PCM POSITION TO TRT ADDRESS
- GETCM
- AX6 24
- SA1 ATCA SET FWA OF TRT
- SB3 X1
- SA5 A0 SAVE A0
- BX5 -X0*X6 TRT LENGTH
- SA1 L.TSCR ALLOCATE SCRATCH TABLE SPACE
- IX1 X5-X1
- ALLOC TSCR,X1
- SA0 X2 SAVE TABLE FWA
- SX0 X3 SAVE TABLE LENGTH
- SX3 B3+
- RJ PCM POSITION TO TRT
- GETCM A0,X0 READ TRT INTO SCRATCH TABLE
- SB5 X0 RESET TABLE LENGTH
- SX6 B0
- SA6 L.TSC1 CLEAR LINK TABLE
- SA3 GNFA+2 READ FST
- MX1 -12
- AX3 36
- BX1 -X1*X3 EXTRACT FIRST TRACK NUMBER
- ATC1 ADDWRD TSC1,X1 STORE LINK IN TABLE
- SA0 A5+ RESTORE A0
- SX2 X1-3777B
- ZR X2,ATC2 IF LINKED TO FLAW
- LX1 -12
- PL X1,ATCX IF EOI REACHED
- LX1 12
- MX0 -11
- BX1 -X0*X1 CLEAR LINKED FLAG
- MX2 -2
- BX2 -X2*X1 BYTE INDEX
- AX1 2 TRT WORD ORDINAL
- SB3 X1
- GE B3,B5,ATC2 IF LINK BEYOND END OF TRT
- SB2 X2
- SX3 12
- IX3 X2*X3
- SB4 X3 SHIFT COUNT
- SA2 F.TSCR
- IX2 X1+X2
- SA1 X2 READ TRT WORD
- SX5 10B
- AX5 X5,B2
- BX4 X5*X1 CHECK RESERVATION
- ZR X4,ATC2 IF TRACK NOT RESERVED OR ALREADY LINKED
- BX6 -X5*X1 CLEAR RESERVATION
- SA6 A1 UPDATE TRT
- MX0 12
- LX1 X1,B4 POSITION TRT WORD
- BX1 X0*X1 EXTRACT NEXT LINK
- LX1 12
- JP ATC1 ADD TO TABLE
- ATC2 SX1 -=C* INCORRECT TRACK LINKAGE*
- ADDWRD TSC1,X1 SET ERROR FLAG
- SA0 A5 RESTORE A0
- JP ATCX EXIT
- ATCA CON 0 FWA OF TRT
- BCP SPACE 4,9
- ** BCP - BEGIN CONTROL POINT DUMP.
- *
- * ENTRY (CH) = DIRECTIVE CARD STRING POINTER.
- *
- * EXIT (PI) = *TCMT* TABLE INDEX FOR ACTIVE CP SEARCH.
- * = 0, IF CONTROL POINT NUMBERS ON DIRECTIVE CARD.
- *
- * USES X - 1, 6.
- * A - 1, 6.
- BCP SUBR
- SX6 0
- SA6 PI PRESET SEARCH INDEX
- SA1 CH CHECK LAST SEPARATOR
- SA1 X1+
- SX1 X1-1R.
- NZ X1,BCPX IF NUMBERS SPECIFIED ON DIRECTIVE CARD
- SA1 FW CPA/PCPA FWA - CPLEN
- SX6 X1+TFSW
- SA6 PI PRESET CP AREA SEARCH INDEX
- JP BCPX EXIT
- BPN SPACE 4,15
- ** BPN - BUILD PPU NAME.
- *
- * ENTRY (PP) = PPU NUMBER.
- * (IC) = *CPP* RECORD PROCESSING FLAG.
- * (IPDA) = PPU/FLPP RECORD FLAG.
- *
- * EXIT (X0) = MASK FOR PP/CPP/FLPP RECORD SEARCH.
- * (X3) = PP NUMBER IN DISPLAY CODE MINUS 3333B.
- * (X6) = (BPNA+1) = PP HEADER NAME IN FORM *CPPNN*,
- * *PPNN*, OR *FPNN*, LEFT JUSTIFIED.
- * (X7) = (BPNA) = PP RECORD NAME IN FORM *DNN*, *PPNN*,
- * OR *FPNN*, LEFT JUSTIFIED.
- *
- * USES X - 0, 1, 2, 3, 6, 7.
- * A - 1, 2, 6, 7.
- BPN SUBR
- SA1 PP
- SX2 707B
- BX3 X1
- LX3 3
- BX3 X3+X1
- BX3 X3*X2
- SA1 IC
- LX3 47-11
- SA2 IPDA
- ZR X1,BPN1 IF NOT CPP
- SA1 BPNB
- SA2 .CPP GET CPP RECORD ID
- IX6 X1+X3
- LX6 -6
- JP BPN2 SET IN HEADER
- BPN1 SA2 .NPP+X2 GET RECORD ID
- NO
- IX6 X3+X2
- BPN2 IX7 X3+X2
- LX3 11-47
- SA6 BPNA+1 SET PP HEADER NAME
- SA7 A6-B1
- MX0 24
- JP BPNX EXIT
- BPNA BSS 1 PP RECORD NAME
- BSS 1 PP HEADER NAME
- BPNB VFD 60/4LPP00+1RC CPP HEADER NAME
- BST SPACE 4,15
- ** BST - DUMP BUFFER STATUS TABLE.
- *
- * ENTRY (BUF) = MST FOLLOWED BY TRT OR MRT.
- *
- * EXIT (BUF) = MST AND BST, IF BST PRESENT.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2, 5, 6, 7.
- *
- * CALLS CTS, FDW, POM, P4F, SDI, SRD, SSB.
- *
- * MACROS GETCM, PRINT.
- BST SUBR
- SA1 BUF+BDLL FWA OF BST
- LX1 -24
- SX6 X1
- ZR X6,BSTX IF NO BUFFER STATUS TABLE
- SA6 CPRA
- SA6 FW
- SB2 A6
- RJ POM POSITION TO BST
- SX7 BSTL SET BST LENGTH
- SA7 LW SET BST LWA+1
- GETCM BUF+MSTXL,X7 READ BST INTO *BUF*
- PRINT (=2C )
- PRINT (=C* BUFFER STATUS TABLE*)
- PRINT (=2C )
- MX7 1
- SA7 SRDA PRESET FIRST CALL TO *SRD*
- SX6 B0
- SA6 BSTA CLEAR LINK ORDINAL
- SA6 BSTB CLEAR DATA WORD ORDINAL
- SA6 SRDC+5 STOP DASHES AFTER 50 CHARACTERS
- RJ SSB CLEAR PRINT STRING
- BST1 SA1 BSTB SET DATA ADDRESS
- SX1 X1+BUF+MSTXL
- SB5 1 SET WORD COUNT
- RJ SRD SENSE REPEAT DATA
- NZ X1,BST2 IF REPEAT SENSED
- SA1 FW GET BST ADDRESS
- SA2 BSTB
- IX1 X1+X2
- LX1 -18
- SB6 6
- SB7 PRBF
- RJ CTS CONVERT BST ADDRESS
- SB7 B7+B1
- SX6 1R+
- SA6 B7
- SB7 B7+B1
- SA1 BSTA BUFFER ORDINAL
- LX1 -12
- SB6 4
- RJ CTS CONVERT BUFFER ORDINAL
- SB7 B7+2
- SA2 =4000005B
- SA1 BSTB READ BST DATA WORD
- SA1 X1+BUF+MSTXL
- RJ FDW FORMAT DATA WORD
- SA2 BSTB RE-READ DATA WORD
- SA2 X2+BUF+MSTXL
- SB7 B7+2
- SB6 10
- RJ SDI SET DISPLAY CODE INTERPRETATION
- PRINT CCCH,B7-CCCH
- BST2 SA1 BSTA
- SX6 X1+20B
- SA6 A1+ UPDATE BUFFER ORDINAL
- SA1 BSTB
- SX6 X1+B1
- SA6 A1+ UPDATE BST ADDRESS
- SA2 LW
- IX3 X6-X2
- NG X3,BST1 IF MORE TO DUMP
- SA1 SRDC+1
- BX6 X1
- SA6 SRDC+5 RESET DASHES FOR 136 CHARACTERS
- JP BSTX EXIT
- BSTA BSS 1 TRACK LINK ORDINAL
- BSTB BSS 1 BST DATA WORD ORDINAL
- CCM SPACE 4,5
- ** CCM - PROCESS *CCM* (CRITICAL *NOS/VE* MEMORY) RECORDS.
- *
- * ENTRY VIA UNCONDITIONAL JUMP.
- *
- * CALLS ERF, RBF.
- CCM BSS 0 ENTRY
- RJ ERF POSITION TO EOR OF HEADER RECORD
- RJ RBF INITIATE READ OF *CCM* DATA RECORD
- RJ ERF SKIP TO EOR
- EQ RBI2 READ NEXT RECORD
- CCQ SPACE 4,10
- ** CCQ - CHECK FOR CIRCULAR QUEUE.
- *
- * EXIT (X5) .LT. 0, IF CIRCULAR QUEUE FOUND.
- * ELSE, QUEUE ENTRY COUNT IS INCREMENTED.
- *
- * USES X - 5, 6.
- * A - 5, 6.
- *
- * MACROS PRINT.
- CCQ SUBR
- SA5 CCQB INCREMENT QUEUE ENTRY COUNT
- SX6 X5+1
- SA6 CCQB
- SA5 CCQA CHECK IF QUEUE ENTRY LIMIT EXCEEDED
- IX5 X5-X6
- PL X5,CCQX IF QUEUE ENTRY LIMIT NOT REACHED
- PRINT (=2C )
- PRINT (=C+ *********WARNING - QUEUE ENTRY LIMIT EXCEEDED+)
- PRINT (=2C )
- EQ CCQX RETURN
- CCQA CON 0 QUEUE ENTRY LIMIT
- CCQB CON 0 QUEUE ENTRY COUNT
- CEA SPACE 4,10
- ** CEA - CHECK *EI* ADDRESS.
- *
- * ENTRY (X3) = BYTE ADDRESS.
- *
- * USES X - 1, 2, 3, 7.
- * A - 1, 2, 7.
- *
- * CALLS PCM.
- CEA1 BX7 X1 SET RANDOM ADDRESS
- AX3 3
- SA7 RI
- RJ PCM POSITION CM RECORD
- CEA SUBR ENTRY/EXIT
- SA2 XB
- SA1 MH+1 MEMORY RECORD RANDOM ADDRESS
- IX7 X3-X2
- NG X7,CEA1 IF NOT *EI* ADDRESS
- BX3 X7
- SA1 EH+1
- EQ CEA1 PROCESS ENVIRONMENTAL INTERFACE ADDRESS
- CEP SPACE 4,10
- ** CEP - CHECK FOR EXTRANEOUS PARAMETERS.
- *
- * ENTRY (CH) = DIRECTIVE CARD STRING POINTER.
- *
- * EXIT TO *ERR40* IF EXTRA PARAMETER DETECTED.
- *
- * USES X - 1.
- * A - 1.
- CEP SUBR ENTRY/EXIT
- SA1 CH GET NEXT CHARACTER
- SA1 X1+
- SX1 X1-1R.
- NG X1,ERR40 IF NOT END OF DIRECTIVE
- EQ CEPX RETURN
- CKC SPACE 4,12
- ** CKC - CRACK AND PROCESS DIRECTIVE CARD.
- *
- * ENTRY (B2) = DIRECTIVE PROCESSOR TABLE ADDRESS.
- * DIRECTIVE BEGINS AT ADDRESS *CHAR* IN
- * *S* FORMAT.
- * (TF) = 0, IF OUTPUT NOT TO TERMINAL.
- *
- * EXIT (CH) = DIRECTIVE STRING POINTS TO FIRST ARGUMENT.
- * TO DIRECTIVE PROCESSOR, IF FOUND IN TABLE AND VALID.
- * TO CALLER, IF DIRECTIVE NOT FOUND IN TABLE.
- * TO *ERR16*, IF PRINTER DIRECTIVE AND TERMINAL OUTPUT.
- * TO *ERR17*, IF TERMINAL DIRECTIVE AND PRINTER OUTPUT.
- *
- * USES X - 1, 2, 3, 6.
- * A - 1, 2, 6.
- * B - 2, 3.
- *
- * CALLS ASN, DIRECTIVE PROCESSORS.
- CKC SUBR
- SX6 CHAR
- SA6 CH SET DIRECTIVE STRING POINTER
- RJ ASN ASSEMBLE DIRECTIVE NAME
- CKC1 SA1 B2 READ PROCESSOR TABLE
- SB2 B2+B1 ADVANCE TABLE POINTER
- ZR X1,CKCX IF END OF TABLE
- SA2 X1 READ PROCESSOR NAME
- BX3 X2-X6
- NZ X3,CKC1 IF NO MATCH
- SB3 X1+B1 SET EXECUTION ADDRESS
- LX3 X1,B1
- SA2 TF CHECK TERMINAL FLAG
- ZR X2,CKC2 IF OUTPUT NOT TO TERMINAL
- NG X1,ERR16 IF DIRECTIVE RESTRICTED TO PRINTER
- CKC2 NZ X2,CKC3 IF OUTPUT TO TERMINAL
- NG X3,ERR17 IF DIRECTIVE RESTRICTED TO TERMINAL
- CKC3 LX1 -18 SET/CLEAR ERROR RETURN ADDRESS
- SX6 X1
- SA6 ERRC+1
- JP B3 EXECUTE SELECTED PROCESSOR
- CLE SPACE 4,10
- ** CLE - CHECK FOR LAST TABLE ENTRY.
- *
- * ENTRY (X4) = TABLE ENTRY NUMBER.
- * (BE) = BUFFERED DEVICE TABLE ENTRY.
- *
- * EXIT (X0) = ENTRY ADDRESS RELATIVE TO TABLE FWA.
- * (X1) = ENTRY LENGTH.
- * (X2) = TABLE LENGTH.
- * (X3).LT.0, IF ENTRY WITHIN TABLE.
- *
- * USES X - 0, 1, 2, 3.
- * A - 2.
- CLE SUBR ENTRY/EXIT
- SA2 BE GET TABLE *BDT* ENTRY
- LX2 18
- MX0 -6
- BX1 -X0*X2 ENTRY LENGTH
- IX0 X1*X4 ENTRY ADDRESS RELATIVE TO TABLE FWA
- AX2 42 TABLE LENGTH
- IX3 X0-X2 CHECK IF ENTRY NUMBER WITHIN TABLE
- EQ CLEX RETURN
- CMB SPACE 4,15
- ** CMB - CHECK MEMORY BOUNDS.
- *
- * ENTRY (B2) = DUMP PARAMETER BLOCK ADDRESS.
- * (AM) = *ALLMEM* FLAG.
- * (AP) = ADVANCED PROCESSOR FLAG.
- *
- * EXIT TO CALLER IF DUMP PARAMETERS OKAY.
- * TO *ERR32* IF PARAMETERS ARE BAD.
- *
- * USES X - 1, 2.
- * A - 1, 2.
- CMB SUBR ENTRY/EXIT
- SA1 CE
- ZR X1,CMBX IF BOUNDS CHECKING NOT REQUIRED
- SA1 AM
- NZ X1,CMBX IF *ALLMEM* ENABLED
- SA1 SBTL1
- SA2 =10HCM
- BX1 X1-X2
- NZ X1,CMBX IF NOT DUMPING CM
- SA2 F.TCMT GET CM SIZE
- SA1 X2+MABL
- MX2 -24
- LX1 -12
- BX1 -X2*X1
- SA2 B2+B1 GET LWA+1 OF DUMP
- LX1 6
- IX1 X2-X1
- NG X1,CMBX IF LWA+1 WITHIN CM BOUNDARY
- EQ ERR32 PROCESS BOUNDARY ERROR
- CMP SPACE 4,15
- ** CMP - PROCESS *CM* RECORD.
- *
- * ENTRY VIA UNCONDITIONAL JUMP.
- *
- * EXIT TO *RBI2* IF NORMAL.
- * TO *PPE* IF PREMATURE EOF.
- *
- * USES A - 1, 2, 3, 6, 7.
- * X - 1, 2, 3, 6, 7.
- *
- * CALLS CRS, ERS, RBH, WBS.
- CMP BSS 0 ENTRY
- SA1 BUF DETERMINE NUMBER OF WORDS TO COPY
- SX6 X1 GET CM SIZE
- PL X6,CMP1 IF NEW CM FORMAT
- SX6 X6-1L DELETE UPPER SPACE
- CMP1 LX6 9 CONVERT TO WORDS
- SA6 CMPA
- RJ CRS COPY RECORD TO S
- SX7 B0 CLEAR NUMBER OF WORDS COPIED
- SA7 CMPB
- SA7 ID CLEAR RECORD ID
- CMP2 RJ RBH READ BLOCK OR HEADER FROM FILE *F*
- NZ X1,PPE IF PREMATURE EOF
- NG X1,PPE IF EOR WITH DEFERRED HEADER
- SA1 BWCF SET NUMBER OF WORDS TO WRITE
- BX6 X1
- SA6 BWCS
- RJ WBS WRITE BLOCK TO FILE *S*
- SA1 CMPB UPDATE COUNT OF WORDS COPIED
- SA2 BWCS
- IX6 X1+X2
- SA6 A1
- SA3 CMPA TEST ALL WORDS COPIED
- IX6 X6-X3
- NG X6,CMP2 IF NOT DONE
- RJ ERS END RECORD ON S
- SX6 -1 FORCE EOR ON F
- SA6 EORF
- EQ RBI2 EXIT TO READ NEXT RECORD FROM F
- CMPA BSS 1 NUMBER OF WORDS TO COPY
- CMPB BSS 1 NUMBER OF WORDS COPIED
- CNL SPACE 4,10
- ** CNL - CHECK NFL LENGTH.
- *
- * ENTRY (L.TNFL) = NFL/100 OF CURRENT CP.
- *
- * EXIT (X1) .GE. 0 IF SUFFICIENT NFL SPACE.
- * (X1) .LT. 0 IF INSUFFICIENT NFL SPACE.
- * WARNING MESSAGE PRINTED.
- *
- * USES X - 1, 6.
- * A - 1.
- *
- * MACROS PRINT.
- CNL SUBR ENTRY/EXIT
- SA1 L.TNFL GET NFL/100
- SX6 DNFL GET DEFAULT
- IX1 X1-X6
- PL X1,CNLX IF SUFFICIENT SPACE
- PRINT (=2C )
- PRINT (=C* INSUFFICIENT NFL SPACE.*)
- PRINT (=2C )
- MX1 1 SET ERROR STATUS
- EQ CNLX RETURN
- COF SPACE 4,10
- ** COF - COMPLETE OUTPUT FILES.
- * RESET FIELD LENGTH TO ORIGINAL VALUE IF CHANGED.
- *
- * ENTRY OF = CURRENT OUTPUT FILE FET ADDRESS.
- * FN = INITIAL FIELD LENGTH.
- * FM = CURRENT FIELD LENGTH.
- * BD = BINARY DUMP FLAG.
- *
- * USES X - 0, 1, 2, 6, 7.
- * A - 1, 2, 6, 7.
- *
- * CALLS COD.
- *
- * MACROS MEMORY, RECALL, RETURN, SETFS, WRITER.
- COF SUBR
- RECALL L
- WRITER X2,R
- SETFS X2,0 CLEAR OUTPUT FILE ID
- SA1 OF
- IX2 X1-X2
- ZR X2,COF1 IF NO ALTERNATE FILE ACTIVE
- RECALL X1
- WRITER X2,R
- SETFS X2,0 CLEAR ALTERNATE FILE ID
- COF1 SA1 BD
- ZR X1,COF2 IF NOT BINARY DUMP
- RETURN F1 DROP SCRATCH FILE
- COF2 SA1 FM CURRENT FIELD LENGTH
- RJ COD CONVERT TO DISPLAY CODE
- MX0 -36
- BX6 -X0*X6
- LX6 12
- SA2 MSG2A STORE FL USED INTO MESSAGE
- BX7 X2+X6
- SA7 A2
- SA1 FN INITIAL FIELD LENGTH
- SA2 FM CURRENT FIELD LENGTH
- IX2 X2-X1
- ZR X2,COFX IF NO FL CHANGE
- LX1 30
- BX6 X1
- SA6 A1 SET RFL PARAMETER
- MEMORY CM,FN,R
- JP COFX EXIT
- CPC SPACE 4,10
- ** CPC - CHECK PAGE CHANGE.
- *
- * CHECK IF THE FWA HAS ENTERED A NEW CM PAGE AND
- * IF NECESSARY, POSITION TO THAT NEW PAGE.
- *
- * ENTRY (B2+0) - SVA TO DUMP NEXT.
- *
- * EXIT *NXB* - POSITIONED TO CORRECT ADDRESS.
- * (X2) = 0, IF PAGE IS PRESENT.
- * (X3) < 0, IF PAGE IS VALID.
- * (A3) = *PTEVCUM*
- *
- * USES X - 1, 2, 6.
- * A - 1, 2, 6.
- *
- * SAVES X - 5.
- *
- * CALLS PSM, SPT.
- CPC SUBR ENTRY/EXIT
- MX3 1
- SA4 B2 ADDRESS TO BE DUMPED
- SA1 XM PAGE SIZE MASK
- BX6 X4*X1
- SX2 B0
- AX4 32
- BX7 X5 SAVE X5
- NZ X6,CPCX IF NO PAGE CHANGE
- ZR X4,CPCX IF NOT VIRTUAL MEMORY DUMP
- SA7 CPCA SAVE X5
- RJ SPT SEARCH PAGE TABLE
- NZ X2,CPCX IF PAGE MISSING
- SB2 BRMA BYTE REAL MEMORY ADDRESS OF PAGE
- RJ PSM POSITION TO THE RMA
- SA1 CPCA RESTORE X5
- SA3 PTEVCUM
- BX5 X1
- SX2 B0 DEFINE PAGE AS PRESENT
- EQ CPCX RETURN
- CPCA CON 0
- CPD SPACE 4,10
- ** CPD - COPY PP DATA TO BUFFER.
- *
- * ENTRY DUMP FILE POSITIONED TO PROPER PP RECORD.
- *
- * EXIT PP MEMORY COPIED TO BUFFER *PBUF*.
- *
- * USES X - 1, 6.
- * A - 1, 6.
- *
- * MACROS READW.
- CPD1 READW S,PBUF,IUBUFL1
- SX6 IUBUFL1
- CPD2 SA6 NXBA
- BX6 X6-X6
- SA6 A6+B1
- SX6 PBUF-1
- SA6 A6+1
- CPD SUBR ENTRY/EXIT
- SA1 IO
- NZ X1,CPD1 IF NOT I4A OR I4S IOU
- READW S,PBUF,IUBUFL2
- SX6 IUBUFL2
- EQ CPD2 SET POINTERS FOR *NXB*
- CPN SPACE 4,10
- ** CPN - CONVERT PP/CPP NUMBER.
- *
- * ENTRY (PP) = PP/CPP NUMBER FROM DUMP.
- *
- * EXIT (X2) = (PP).
- * (X3) .NE. 0 IF DUMPING A CPP.
- * (X6) = LOGICAL PP/CPP NUMBER.
- *
- * USES X - 2, 3, 6.
- * A - 2, 3.
- CPN SUBR ENTRY/EXIT
- SA2 PP GET PP/CPP NUMBER
- BX6 X2
- SX3 X2-20B
- NG X3,CPN1 IF NOT UPPER BANK
- SX6 X2-20B+12B CONVERT UPPER BANK PP NUMBER
- CPN1 SA3 IC
- ZR X3,CPNX IF NOT PROCESSING CPP-S
- SA3 NP CONVERT CPP NUMBER
- IX6 X2+X3
- EQ CPNX RETURN
- CPS SPACE 4,12
- ** CPS - CHECK PAGE SPACE REMAINING.
- *
- * ENTRY X1 = NUMBER OF LINES DESIRED.
- * LC = CURRENT LINE NUMBER.
- * PD = NUMBER OF LINES PER FULL PAGE.
- *
- * EXIT X6 = NUMBER OF LINES AVAILABLE.
- * A NEW PAGE IS FORCED IF THERE ARE .LT. (X1)
- * LINES LEFT ON THE CURRENT PAGE.
- *
- * USES X - 2,3,6.
- * A - 2,3,6.
- CPS SUBR
- SA2 LC CURRENT LINE COUNT
- SA3 PD
- IX6 X3-X2 NUMBER OF LINES LEFT ON THIS PAGE
- IX2 X6-X1
- PL X2,CPSX IF ENOUGH ROOM REMAINING
- BX6 X3
- SA6 A2 FORCE NEW PAGE
- JP CPSX EXIT
- CRA SPACE 4,10
- ** CRA - COMPUTE CONTROL POINT REFERENCE ADDRESS.
- *
- * ENTRY (X6) = CONTROL POINT NUMBER.
- *
- * EXIT (X6) = CONTROL POINT RA.
- * (X7) = CONTROL POINT FL.
- *
- * USES X - 1, 2.
- * A - 2.
- *
- * CALLS GFL.
- CRA SUBR
- SA2 NC
- SX2 X2+B1 ALLOW FOR SYSTEM CONTROL POINT
- IX2 X2-X6
- NG X2,ERR8 IF INCORRECT CONTROL POINT NUMBER
- SX2 CPLEN
- IX1 X2*X6
- RJ GFL GET RA
- JP CRAX EXIT
- CRS SPACE 4,10
- ** CRS - COPY RECORD TO S.
- *
- * ENTRY (BWCF) = NUMBER OF WORDS TO WRITE IN 1ST BLOCK.
- *
- * USES A - 1, 6.
- * X - 1, 6.
- *
- * CALLS ERS, RBH, WBS.
- CRS2 RJ ERS END RECORD ON S
- CRS SUBR ENTRY/EXIT
- CRS1 SA1 BWCF SET NUMBER OF WORDS TO WRITE
- BX6 X1
- SA6 BWCS
- RJ WBS WRITE BLOCK TO S
- SA1 EORF
- NG X1,CRS2 IF EOR
- RJ RBH READ BLOCK OR HEADER
- NZ X1,PPE IF PREMATURE EOF
- NG X1,CRS2 IF EOR WITH DEFERRED HEADER
- EQ CRS1 CONTINUE COPY OF RECORD
- CSI SPACE 4,10
- ** CSI - COLLECT SEGMENT INFORMATION.
- *
- * ENTRY (BUF - BUF+53*4) = C170-8X5 EXCHANGE PACKAGE.
- *
- * EXIT X6 = 12/0, 16/STL, 32/STA.
- *
- * USES A - 1, 2, 3.
- * X - 1, 2, 3, 6.
- CSI SUBR ENTRY/EXIT
- SA1 BUF+128/2 SEGMENT TABLE LENGTH
- SA2 BUF+272/2 SEGMENT TABLE ADDRESS
- SA3 BUF+280/2
- LX1 32
- LX2 16
- BX3 X1+X3
- BX6 X3+X2
- JP CSIX RETURN
- CST SPACE 4,10
- ** CST - CREATE SUBTITLE LINE.
- * READS SYSTEM DATE LINE FROM CM RECORD TO LISTING SUBTITLE.
- *
- * EXIT (ED) = 0 IF *EDD* DUMP.
- * = 1 IF *DROPVE* DUMP.
- * = 2 IF NO *CM* RECORD FOUND.
- *
- * USES X - 0, 1, 2, 3, 6.
- * A - 1, 2, 3, 6.
- * B - 2, 6, 7.
- *
- * CALLS PCM, PKS, UPS.
- *
- * MACROS GETCM, SEARCH.
- CST2 SX6 2
- SA6 ED ED = 2 IF NO CM RECORD FOUND
- CST SUBR
- MX0 18
- SA1 .CMM
- SEARCH TDIR,X1,X0 LOCATE CM RECORD
- SA3 A2+3
- NZ X2,CST1 IF *CM* RECORD PRESET
- SA2 MH
- ZR X2,CST2 IF NO CENTRAL MEMORY
- LX2 -18
- SX6 X2
- ZR X6,CST0 IF *EDD* DUMP
- SX6 B1+
- CST0 SA6 ED ED = 0 IF *EDD* DUMP, = 1 IF *DROPVE* DUMP
- SX6 B1
- SA3 A2+B1
- SA6 AP SET ADVANCED PROCESSOR FLAG
- SA6 CE SET CM EXTENSION FLAG
- CST1 BX6 X3
- ZR X6,ERR4 IF NO CENTRAL MEMORY
- SA6 UI
- SA6 RI
- SA6 CI
- SX3 TIML
- RJ PCM POSITION DUMP FILE
- GETCM CSTA,8 READ SYSTEM DATE/NAME LINE
- SA2 CSTA
- SB6 80
- SB7 PRBF
- RJ UPS UNPACK LINE
- SB2 PRBF
- SB6 80
- SB7 SBTL2
- RJ PKS REPACK LINE IN SUBTITLE
- JP CSTX EXIT
- CSTA BSS 8
- CTS SPACE 4,12
- ** CTS - CONVERT TO STRING BUFFER.
- *
- * ENTRY X1 = BINARY DIGITS LEFT JUSTIFIED.
- * B6 = NUMBER OF DIGITS TO CONVERT.
- * B7 = ADDRESS OF STRING BUFFER.
- *
- * EXIT B7 IS UPDATED.
- * X1 IS LEFT SHIFTED (B6)*3 PLACES.
- *
- * SAVES X - 2,3,4,5,6.
- * B - 1,2,3,4,5.
- * A - 0,1.
- CTS SUBR
- SX0 7 DIGIT MASK
- CTS1 LX1 3 SHIFT ASSEMBLY
- BX7 X0*X1
- SX7 X7+1R0 CONVERT DIGIT
- SA7 B7 SET IN STRING BUFFER
- SB7 B7+B1 ADVANCE INDEX
- SB6 B6-1 DECREASE COUNT
- NZ B6,CTS1 IF MORE DIGITS
- JP CTSX EXIT
- CVB SPACE 4,10
- ** CVB - CONVERT *NOS/VE* BUFFER.
- *
- * CONVERT 64-BIT WORDS IN *FBB* FORMAT TO 60-BIT FORMAT (BYTE 0
- * IS TRUNCATED) FOR PROCESSING *DROPVE* DUMPS.
- *
- * ENTRY (X3) = NUMBER OF WORDS TO CONVERT. MUST BE .GT. 0.
- * (CVBA) = CONVERTED BUFFER POINTER.
- *
- * EXIT (CVBA) UPDATED.
- *
- * USES X - 0, 1, 2, 3, 6.
- * A - 1, 2, 6.
- CVB SUBR ENTRY/EXIT
- SA1 ED
- ZR X1,CVBX IF USING *CM* RECORD
- SA1 BUF-1
- SA2 CVBA GET POINTER
- CVB1 MX0 -28
- SA1 A1+B1 GET BYTES 0, 1
- BX6 -X0*X1 TRUNCATE BYTE 0
- LX6 32
- SA1 A1+B1 GET BYTES 3, 4
- BX6 X6+X1
- SA6 X2 STORE CONVERTED WORD
- SX2 X2+B1 UPDATE POINTER
- SX3 X3-1
- NZ X3,CVB1 IF MORE TO CONVERT
- BX6 X2 STORE UPDATED POINTER
- SA6 A2
- EQ CVBX RETURN
- CVBA CON 0 STORAGE ADDRESS
- CVE SPACE 4,15
- ** CVE - CHECK CONTROLLER DATA VERIFICATION ERROR.
- *
- * ENTRY (B5) = LEFT SHIFT FOR LOGICAL DIFFERENCE.
- * (X6) = VERIFICATION ERROR FLAG.
- * 0 = NO ERROR.
- * 10B = BIT 0 IN ERROR.
- * 1-7 = CORRESPONDING BIT IN ERROR.
- * 17B = MULTIPLE BIT FAILURE.
- *
- * EXIT (X6) = 0 IF NO VERIFICATION ERROR.
- * (X6) .LT. 0 IF MULTIPLE BIT FAILURE.
- * (X6) = SHIFTED LOGICAL DIFFERENCE FOR BIT IN ERROR.
- *
- * USES X - 6.
- * B - 4.
- CVE SUBR ENTRY/EXIT
- ZR X6,CVEX IF NO ERROR
- SB4 X6-10B
- MX6 1
- GT B4,CVEX IF MULTIPLE BIT FAILURE
- SX6 B1
- ZR B4,CVE1 IF BIT 0 IN ERROR
- SB4 B4+10B VERIFICATION ERROR BIT NUMBER
- CVE1 LX6 B4
- LX6 B5
- EQ CVEX RETURN
- DBB SPACE 4,9
- ** DBB - DUMP BATCHIO BUFFER POINTS.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (CN) = CONTROL POINT NUMBER.
- * (RC) = CONTROL POINT REFERENCE ADDRESS.
- *
- * USES X - ALL.
- * A - 1, 2, 3, 4, 5, 6, 7.
- * B - 2, 3, 4, 5, 6, 7.
- *
- * CALLS CTS, DFI, FDW, PCM, SDI, SSB, UPS.
- *
- * MACROS GETCM, PRINT.
- DBB PRINT (=2C )
- PRINT (=C* BATCHIO BUFFER POINTS*)
- * PROCESS AVAILABLE EQUIPMENT TABLE.
- SA2 SSBF+/BIO/TEQR
- SB6 5*7+4 MAXIMUM NUMBER OF EQUIPMENTS AVAILABLE
- SB7 DBBA
- LX2 12 SKIP COUNT FIELD
- MX0 -12
- SB5 4 BYTE COUNT FIRST WORD
- JP DBB2 ENTER LOOP
- DBB1 SB5 5 BYTE COUNT REMAINING WORDS
- DBB2 LX2 12
- BX1 -X0*X2 NEXT BYTE
- SB5 B5-B1
- SB6 B6-B1
- ZR X1,DBB3 IF END OF TABLE
- NG B6,DBB3 IF MAXIMUM REACHED
- AX1 3
- BX6 -X0*X2
- LX6 9
- BX6 -X0*X6
- LX6 54-9
- BX6 X6+X1
- SA6 B7+ STORE ENTRY INTO EQUIPMENT TYPE TABLE
- SB7 B7+1
- NZ B5,DBB2 IF MORE BYTES IN THIS WORD
- SA2 A2+1 READ NEXT WORD
- JP DBB1 CONTINUE
- DBB3 SX6 B0
- SA6 B7 INDICATE END
- * CHECK FOR TWO EQUIPMENTS AT SAME ORDINAL.
- SB5 DBBA
- DBB4 SB7 B7-1
- SB6 B7+
- LE B7,B5,DBB6 IF NO EQUIPMENTS MATCH
- SA1 B7+
- DBB5 SB6 B6-B1
- SA2 B6
- LT B6,B5,DBB4 IF NO MATCH YET
- BX3 X1-X2 COMPARE ORDINALS
- BX4 -X0*X3
- NZ X4,DBB5 IF NO MATCH
- PRINT (=2C )
- PRINT (=C+ *********WARNING - BATCHIO AVAILABLE EQUIPMENT TA
- ,BLE ERROR, TWO MATCHING ORDINALS+)
- * CLEAR FET ADDRESS TABLE.
- DBB6 SB5 DBBB
- MX6 1
- SB6 DBBB+/BIO/MXEQ
- DBB7 SB6 B6-1
- LT B6,B5,DBB8 IF FINISHED
- SA6 B6+
- JP DBB7
- * SET ACTIVE BUFFER POINT COUNT.
- DBB8 SA2 =3L1CD SET PP NAME MASK
- BX0 X2
- SX5 0 SET INITIAL COUNT
- SB3 /BIO/D1AR SET 1ST DRIVER ASSIGNMENT WORD ADDRESS
- DBB9 SA2 RC SET DRIVER WORD ADDRESS
- SX7 B3 SAVE ADDRESS
- IX3 X2+X7
- SA7 DBBI
- RJ PCM POSITION TO DRIVER ASSIGNMENT WORD
- GETCM
- BX3 X0-X6
- AX3 42
- NZ X3,DBB10 IF *1CD* NOT RUNNING
- LX6 36
- AX6 48
- IX5 X5+X6 ADD INTO COUNT
- DBB10 SA2 DBBI CHECK NEXT ASSIGNMENT WORD
- SB3 X2+B1
- SB6 /BIO/DRQR
- NE B3,B6,DBB11 IF THREE WORDS NOT PROCESSED
- MX0 -12 SET BUFFER POINT NUMBER MASK
- SX7 X5 SAVE COUNT
- SA7 DBBH
- * SET FET ADDRESS TABLE.
- SX5 /BIO/BUFR ADDRESS OF FIRST FET
- SX7 /BIO/MXEQ
- SA7 DBBC SET MAXIMUM NUMBER OF FETS TO PROCESS
- DBB11 SA3 DBBH
- ZR X3,DBB16 IF OUT OF FETS
- SA2 RC
- IX3 X2+X5
- SX6 X5
- SA6 DBBD SAVE CURRENT FET ADDRESS
- RJ PCM
- GETCM DBBE,6
- SA2 DBBE+5
- LX2 12
- BX3 -X0*X2 BUFFER POINT INDEX
- ZR X3,DBB13 IF NO BUFFER POINT
- SX3 X3-/BIO/BFCW+2
- AX3 1 BUFFER POINT
- SX4 X3-/BIO/MXEQ-1
- SB3 X3
- NG X4,DBB12 IF VALID BUFFER POINT
- PRINT (=2C )
- PRINT (=C+ *********WARNING - INVALID BATCHIO FET BUFFER POI
- ,NT+)
- SX7 X5 ADDRESS OF FET
- SA1 CN
- BX6 X1 CONTROL POINT NUMBER
- SX5 -1
- RJ DFI DUMP FILE INFORMATION
- JP DBB13 ADVANCE FET ADDRESS
- DBB12 SX6 X5+
- SA6 B3+DBBB SET FET ADDRESS INTO TABLE
- DBB13 SA3 DBBE+4
- SA5 DBBD CURRENT FET ADDRESS
- SX4 X3 NEXT FET ADDRESS
- IX1 X5-X4
- NG X1,DBB14 IF CORRECT LINKAGE
- PRINT (=2C )
- PRINT (=C+ *********WARNING - BATCHIO FET LINKAGE ERROR+)
- SX7 X5 ADDRESS OF FET
- SA1 CN
- BX6 X1 CONTROL POINT NUMBER
- SX5 -1
- RJ DFI DUMP FILE INFORMATION
- JP DBB30 TERMINATE DIRECTIVE
- DBB14 SX5 X4+ SET FET ADDRESS
- SA3 DBBE
- MX6 24 CHECK FOR JSN
- BX6 X6*X3
- ZR X6,DBB15 IF NO JSN IN FET
- SA3 DBBH DECREMENT BUFFER POINT COUNT
- SX6 X3-1
- SA6 A3+
- DBB15 SA1 DBBC
- SX6 X1-1
- SA6 A1+ DECREMENT MAXIMUM NUMBER OF FETS
- NZ X6,DBB11 IF MAXIMUM NOT PROCESSED
- * FIND LOCATION OF BUFFER POINTS IN NEGATIVE FL.
- DBB16 SX6 B0+
- SA6 DBBG PRESET BUFFER POINT NUMBER
- DBB17 SA1 F.TNFL FORM ADDRESS OF BUFFER POINTS IN *TNFL*
- SA2 L.TNFL
- SX5 /BIO/BFCW+2
- IX1 X1+X2
- IX6 X1-X5
- SA6 DBBF LOCATION-2 OF BUFFER POINTS
- * DUMP BUFFER POINTS.
- SA1 DBBG
- SX6 X1+1
- SA6 A1+
- SX2 X6-/BIO/MXEQ-1
- SX5 X6+ BUFFER POINT NUMBER
- ZR X2,DBB30 IF ALL BUFFER POINTS DUMPED
- PRINT (=2C )
- RJ SSB CLEAR PRINT STRING
- * SET BUFFER POINT, FIRST WORD.
- SA2 DBBF
- LX0 X5,B1
- IX4 X0+X2
- SA1 X4
- ZR X1,DBB30 IF ALL ACTIVE BUFFER POINTS DUMPED
- BX6 X1 SAVE FIRST WORD
- SA6 DBBJ
- SB7 PRBF+36
- SA2 =4000005B FORMAT CONTROL
- RJ FDW
- BX2 X1
- SB6 10
- RJ SDI
- * SET BUFFER POINT NUMBER.
- SB7 PRBF
- SA2 =13HBUFFER POINT
- SB6 13
- RJ UPS
- BX1 X5
- LX1 -6
- SB6 2
- RJ CTS CONVERT BUFFER POINT NUMBER
- * SET EQUIPMENT TYPE.
- SA2 =17HEQUIPMENT TYPE =
- SB6 17
- SB7 PRBF+74
- RJ UPS
- * FIND EQUIPMENT TYPE.
- MX6 -12
- SA3 DBBJ GET FIRST WORD OF BUFFER POINT AREA
- AX3 12
- BX1 -X6*X3
- ZR X1,DBB24 IF EST NOT SPECIFIED
- SB4 DBBA-1
- DBB18 SB4 B4+B1
- SA2 B4
- ZR X2,DBB23 IF NOT FOUND
- BX3 X1-X2 COMPARE ENTRIES
- BX4 -X6*X3
- NZ X4,DBB18 IF MATCH NOT FOUND YET
- AX2 54
- BX3 -X6*X2
- SX2 X3-/BIO/LPDT
- ZR X2,DBB19 IF PRINTER
- SX2 X3-/BIO/CPDT
- ZR X2,DBB20 IF CARD PUNCH
- SX2 X3-/BIO/CRDT
- ZR X2,DBB21 IF CARD READER
- SX2 X3-/BIO/NPDT
- ZR X2,DBB22 IF NON-IMPACT PRINTER
- SA2 =13HINCORRECT
- JP DBB25 MOVE NAME TO BUFFER
- DBB19 SA2 =13HPRINTER
- JP DBB25 MOVE NAME TO BUFFER
- DBB20 SA2 =13HCARD PUNCH
- JP DBB25 MOVE NAME TO BUFFER
- DBB21 SA2 =13HCARD READER
- JP DBB25 MOVE NAME TO BUFFER
- DBB22 SA2 =13HNIP PRINTER
- JP DBB25 MOVE NAME TO BUFFER
- DBB23 SA2 =13HNOT FOUND
- JP DBB25 MOVE NAME TO BUFFER
- DBB24 SA2 =13HNOT SPECIFIED
- DBB25 SB6 13
- RJ UPS
- BX0 X1
- PRINT CCCH,B7-CCCH
- * SET BUFFER POINT, SECOND WORD.
- RJ SSB CLEAR PRINT STRING
- BX3 X0
- SA2 DBBF
- LX0 X5,B1
- IX4 X0+X2
- SA1 X4+B1
- SB7 PRBF+36
- SA2 =4000005B FORMAT CONTROL
- RJ FDW
- BX2 X1
- SB6 10
- RJ SDI
- ZR X3,DBB26 IF NO EST SPECIFIED
- * SET EST.
- SA2 =6HEST -
- SB6 6
- SB7 PRBF+74
- RJ UPS
- SA1 F.TCMT
- SB2 X1+
- SA2 B2+ESTP
- AX2 36
- R= X4,ESTE
- IX3 X3*X4
- IX1 X2+X3 EST ADDRESS
- SX1 X1+EQDE
- SA3 B2+X1 EST
- LX1 -18
- SB6 6
- RJ CTS
- BX1 X3
- SB7 B7+2
- SA2 =4000005B FORMAT CONTROL
- RJ FDW
- BX2 X1
- SB6 10
- RJ SDI
- DBB26 PRINT CCCH,B7-CCCH
- PRINT (=2C )
- * DUMP FET.
- MX0 24
- SA4 DBBJ GET BUFFER POINT JSN
- BX4 X0*X4
- ZR X4,DBB17 IF NO ASSOCIATED FET
- SX0 /BIO/MXEQ
- DBB27 SX0 X0-1 GET JSN OF FET
- NG X0,DBB28 IF END OF TABLE
- SA5 DBBB+X0
- NG X5,DBB27 IF NULL ENTRY PROCESS NEXT ENTRY
- NZ X5,DBB29 IF STILL SEARCHING FET ADDRESS TABLE
- DBB28 PRINT (=2C )
- PRINT (=C+ *********WARNING - EXPECTED FET ADDRESS NOT FOUND
- ,+)
- EQ DBB17 CHECK NEXT BUFFER POINT
- DBB29 SA3 RC READ FIRST WORD OF FET
- IX3 X5+X3
- RJ PCM
- GETCM
- SA4 DBBJ
- BX1 X6-X4
- AX1 36
- NZ X1,DBB27 IF NO MATCHING JSN
- SX7 X5+ SET FET ADDRESS
- SA1 CN
- BX6 X1 CONTROL POINT NUMBER
- SX5 -1
- RJ DFI DUMP FILE INFORMATION
- JP DBB17 CONTINUE
- DBB30 SB2 A0
- JP B2 RETURN
- DBBA BSS 5*10B EQUIPMENT TYPE TABLE
- *T DBBA 6/ TYPE, 42/, 12/ ORD
- * TYPE = DEVICE TYPE, SEE *COMSBIO*.
- * ORD = EST ORDINAL.
- DBBB BSS /BIO/MXEQ FET ADDRESS TABLE
- DBBC BSS 1 MAXIMUM NUMBER OF FETS REMAINING
- DBBD BSS 1 CURRENT FET ADDRESS
- DBBE BSS 6 FET
- DBBF BSS 1 LOCATION-2 OF BUFFER POINTS
- DBBG BSS 1 CURRENT BUFFER POINT NUMBER
- DBBH BSS 1 NUMBER OF ACTIVE BUFFER POINTS
- DBBI BSS 1 CURRENT DRIVER ASSIGNMENT WORD ADDRESS
- DBBJ BSS 1 FIRST WORD OF CURRENT BUFFER POINT AREA
- DBP SPACE 4,7
- ** DBP - DUMP BATCHIO PPUS.
- *
- * ENTRY A0 = RETURN ADDRESS.
- *
- * USES ALL REGISTERS.
- *
- * CALLS ASP.
- DBP SX6 DBPA
- JP ASP
- DBPA VFD 18/3L1CD,42/0
- VFD 18/3L1IO,42/0
- VFD 18/3LDSP,42/0
- VFD 18/3LQAC,42/0
- VFD 18/3LQAP,42/0
- VFD 60/-1 END OF PARAMETER BLOCK
- DBT SPACE 4,25
- ** DBT - DUMP BUFFERED DEVICE TABLE.
- *
- * ENTRY (X5) = TABLE DESCRIPTION ADDRESS.
- * (X6) = ADDRESS OF PRINTER FORMAT TABLE POINTERS.
- * (X6)+1 = ADDRESS OF TERMINAL FORMAT TABLE POINTERS.
- * (X7) = TABLE NAME ADDRESS.
- * (B2) = TABLE ENTRY INDEX IN BUFFERED DEVICE TABLE.
- *
- * ERROR TO *ERR6*, IF CONVERSION ERROR ON SELECTED
- * ENTRY NUMBER.
- * TO *ERR16*, IF PROCESSING FULL TABLE DUMP WITH
- * TERMINAL OUTPUT.
- * TO *ERR34*, IF NO BUFFERED DEVICE TABLE ON
- * DUMP FILE.
- * TO *ERR35*, IF SELECTED ENTRY BEYOND TABLE BOUNDARY.
- *
- * USES X - 1, 2, 3, 4, 6.
- * A - 1, 2, 3, 4, 6, 7.
- * B - 2, 6, 7.
- *
- * CALLS ASD, CLE, GTD, GTE, LDC, PEN, POM, SCM, SRA.
- *
- * MACROS GETCM, PRINT.
- DBT SUBR ENTRY/EXIT
- SA6 DBTA STORE FORMAT TABLE POINTERS ADDRESS
- SA7 DBTB STORE TABLE NAME ADDRESS
- RJ SCM SET CENTRAL MEMORY
- SX1 B2 SAVE (B2) ACROSS *LDC* CALL
- LX5 18
- BX5 X5+X1
- RJ LDC LIST DIRECTIVE
- SA2 F.TCMT
- SB2 X5 RESTORE (B2), (X5)
- AX5 18
- SA1 X2+BIOL
- AX1 24
- SX1 X1
- ZR X1,ERR34 IF TABLE NOT ON DUMP FILE
- SX6 X1+B2
- SA6 CPRA
- PRINT (=2C )
- PRINT X5 PRINT TABLE DESCRIPTION
- PRINT (=2C )
- PRINT (=2C )
- SX6 B0
- RJ SRA SET REFERENCE ADDRESS
- SB2 CPRA
- RJ POM POSITION TO *BDT* ENTRY
- GETCM
- SA6 BE STORE *BDT* ENTRY FOR TABLE
- SB7 B0 ASSUME OCTAL BASE
- RJ ASD GET NEXT ENTRY NUMBER
- NZ X4,ERR6 IF CONVERSION ERROR
- NZ B6,DBT5 IF PROCESSING SELECTED ENTRIES
- * PROCESS FULL TABLE DUMP.
- SA1 TF
- NZ X1,ERR16 IF OUTPUT TO TERMINAL
- SX6 -1 PRESET ENTRY NUMBER
- SA6 DBTC
- DBT1 SA4 DBTC
- SX4 X4+1 INCREMENT ENTRY NUMBER
- RJ CLE CHECK FOR LAST ENTRY
- PL X3,DBTX IF ALL TABLE ENTRIES DUMPED
- SX6 X1+ STORE ENTRY LENGTH
- SA6 DBTD
- SA3 BE GET TABLE FWA
- SX3 X3
- IX6 X0+X3
- SA6 FW SET ENTRY ADDRESS IN DUMP FILE
- SX6 X4+
- SA6 DBTC STORE ENTRY NUMBER
- ZR X4,DBT2 IF DUMPING FIRST ENTRY
- SX3 0 CLEAR IF NOT FIRST CALL
- DBT2 RJ GTE GET TABLE ENTRY FWA IN CORE
- SB2 B0
- SA1 DBTD GET ENTRY LENGTH
- SB3 X1
- DBT3 SA1 X5+B2 GET ENTRY WORD
- NZ X1,DBT4 IF NONZERO ENTRY
- SB2 B2+B1
- LT B2,B3,DBT3 IF MORE WORDS TO CHECK
- EQ DBT1 CHECK NEXT ENTRY
- DBT4 SB6 4
- SA1 DBTC GET ENTRY NUMBER
- LX1 -12
- SA2 DBTB SET TABLE NAME ADDRESS
- SA2 X2
- RJ PEN PRINT ENTRY NUMBER
- SA1 FW
- IX6 X5-X1
- SB2 X6 SET DATA ADDRESS IN CORE BUFFER
- SA1 DBTA SET FORMAT TABLE POINTERS
- SA1 X1+
- RJ GTD GENERATE DETAILED TABLE ENTRY DUMP
- PRINT (=2C )
- EQ DBT1 DUMP NEXT ENTRY
- * PROCESS DUMP OF SELECTED TABLE ENTRIES.
- DBT5 SX4 X6+
- SA6 DBTC SAVE ENTRY NUMBER
- RJ CLE CHECK FOR VALID ENTRY NUMBER
- PL X3,ERR35 IF ENTRY BEYOND END OF TABLE
- SA3 BE
- SX3 X3
- IX6 X0+X3
- SA6 FW SET ENTRY ADDRESS IN DUMP FILE
- NZ B6,DBT6 IF FIRST ENTRY TO BE DUMPED
- SX3 0 CLEAR IF NOT FIRST ENTRY
- DBT6 RJ GTE GET TABLE ENTRY FWA IN CORE
- SB6 4
- SA1 DBTC GET ENTRY NUMBER
- LX1 -12
- SA2 DBTB SET TABLE NAME ADDRESS
- SA2 X2+
- RJ PEN PRINT ENTRY NUMBER
- SA1 DBTA GET FORMAT TABLE POINTERS
- SA3 TF
- ZR X3,DBT7 IF PRINTER OUTPUT
- SX1 X1+1 SET FOR TERMINAL OUTPUT
- DBT7 SA1 X1
- SA3 FW
- IX6 X5-X3
- SB2 X6 SET DATA ADDRESS IN CORE BUFFER
- RJ GTD GENERATE DETAILED TABLE ENTRY DUMP
- PRINT (=2C )
- SB7 B0 ASSUME OCTAL BASE
- RJ ASD GET NEXT ENTRY NUMBER
- NZ X4,ERR6 IF CONVERSION ERROR
- ZR B6,DBTX IF NO MORE ENTRIES TO DUMP
- SB6 B0 SET AS NOT FIRST ENTRY DUMPED
- EQ DBT5 DUMP NEXT ENTRY
- DBTA BSS 1 FORMAT TABLE POINTERS ADDRESS
- DBTB BSS 1 TABLE NAME ADDRESS
- DBTC BSS 1 ENTRY NUMBER
- DBTD BSS 1 ENTRY LENGTH
- DCA SPACE 4,9
- ** DCA - DUMP JOB DAYFILE POINTERS AND BUFFER.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (CN) = CONTROL POINT NUMBER.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- *
- * USES X - 1, 2.
- * A - 1, 2.
- * B - 2.
- *
- * CALLS GDB, PDB, PDP.
- *
- * MACROS PRINT.
- DCA SA1 CN
- SA2 NC
- SX2 X2+B1
- IX1 X2-X1
- ZR X1,DCA2 IF SYSTEM CONTROL POINT
- PRINT (=2C )
- PRINT (=C* DAYFILE POINTERS AND BUFFER*)
- PRINT (=2C )
- RJ GDB GET DAYFILE BUFFERS
- NG X1,DCA2 IF INSUFFICIENT NFL SPACE
- RJ PDP PRINT DAYFILE POINTERS
- PRINT (=2C )
- RJ PDB PRINT DAYFILE BUFFER
- DCA2 SB2 A0 GET RETURN ADDRESS
- JP B2 RETURN
- DCC SPACE 4,15
- ** DCC - DUMP FIELD LENGTH IN *C* FORMAT.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (CN) = CONTROL POINT NUMBER.
- * (FW) = CONTROL POINT AREA ADDRESS.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- *
- * USES X - 1, 2, 3, 6, 7.
- * USES X - 1, 2, 6, 7.
- * B - 2.
- *
- * CALLS GFL, PMD, POM, SCM, SRA.
- *
- * MACROS PRINT.
- DCC SX6 0
- DCC1 SA1 CN
- SA2 NC
- SX2 X2+B1
- IX1 X2-X1
- ZR X1,DCC2 IF SYSTEM CONTROL POINT
- SA6 CPRA+4 SET FORMAT CODE IN PARAMETER BLOCK
- PRINT (=2C )
- PRINT (=C* FIELD LENGTH*)
- PRINT (=2C )
- SA1 FW CP AREA ADDRESS
- RJ GFL GET FL, RA
- SB2 CPRA SET PARAMETER BLOCK ADDRESS
- SA7 B2+B1 SET LWA+1 OF DUMP
- BX7 X7-X7
- SA7 B2+ SET FWA
- RJ SRA SET REFERENCE ADDRESS
- RJ SCM SELECT CM DUMP
- DCC1.1 SB2 CPRA
- RJ POM POSITION DUMP FILE
- SB2 CPRA
- RJ PMD PROCESS DUMP
- DCC2 SB2 A0
- JP B2 RETURN
- DCD SPACE 4
- ** DCD - DUMP FIELD LENGTH IN *D* FORMAT.
- DCD SX6 1 FORMAT CODE
- JP DCC1 PROCESS DUMP
- DCE SPACE 4
- ** DCE - DUMP FIELD LENGTH IN *E* FORMAT.
- DCE SX6 2 FORMAT CODE
- JP DCC1 PROCESS DUMP
- DCF SPACE 4,10
- ** DCF - DUMP ATTACHED FILES.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (CN) = CONTROL POINT NUMBER.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- *
- * USES X - 1, 2, 6.
- * A - 1, 2, 6.
- * B - 2.
- *
- * CALLS CNL, GNF, PFS.
- *
- * MACROS PRINT.
- DCF SA1 CN
- SA2 NC
- SX2 X2+B1
- IX1 X2-X1
- ZR X1,DCF1.1 IF SYSTEM CONTROL POINT
- SX6 FNTN
- SA6 FI PRESET SEARCH INDEX
- PRINT (=2C )
- PRINT (=C* ATTACHED FILES*)
- PRINT (=2C )
- RJ CNL CHECK NFL LENGTH
- NG X1,DCF1.1 IF INSUFFICIENT NFL SPACE
- DCF1 RJ GNF GET NEXT FILE
- NZ X1,DCF2 IF FILE FOUND
- DCF1.1 SB2 A0 GET RETURN ADDRESS
- JP B2 RETURN
- DCF2 RJ PFS PRINT FILE SUMMARY
- JP DCF1 CONTINUE
- DCG SPACE 4,10
- ** DCG - DUMP CONTROL POINT AREA IN *C* FORMAT.
- *
- * ENTRY FW = CONTROL POINT AREA ADDRESS.
- * A0 = RETURN ADDRESS.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS PMD,SCM,SRA,WOF.
- DCG SX6 0
- DCG1 SA6 DCGA+4 SET FORMAT CODE
- PRINT (=2C )
- PRINT (=C* CONTROL POINT AREA*)
- PRINT (=2C )
- SA1 FW
- SA2 F.TCMT
- IX6 X1+X2
- BX7 X1
- SA6 DCGA+2 CORE ADDRESS OF CP AREA DATA
- SA7 DCGA DUMP FWA
- SX6 X7+CPLEN
- SA6 DCGA+1 DUMP LWA+1
- SX6 0
- RJ SRA RESET REFERENCE ADDRESS
- SB2 DCGA DUMP PARAMETER BLOCK ADDRESS
- RJ SCM SELECT CM
- RJ PMD PROCESS DUMP
- SB2 A0
- JP B2 RETURN
- DCGA BSS 0 DUMP PARAMETER BLOCK
- CON 0 FWA
- CON 0 LWA+1
- CON 0 CORE ADDRESS
- CON 0 NO SUPPRESS FLAG
- CON 0 FORMAT CODE
- CON 0 COLUMN LENGTH
- CON 0 INVERTED ADDRESS
- DCI SPACE 4
- ** DCI - DUMP CONTROL POINT AREA IN *E* FORMAT.
- DCI SX6 2 FORMAT CODE
- JP DCG1 PROCESS DUMP
- DCJ SPACE 4
- ** DCJ - DUMP CONTROL POINT AREA IN *D* FORMAT.
- DCJ SX6 1 FORMAT CODE
- JP DCG1 PROCESS DUMP
- DCM SPACE 4,20
- ** DCM - DUMP CONTROL POINT EXTENDED MEMORY (USER ECS)
- * IN *D* FORMAT.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (CN) = CONTROL POINT NUMBER.
- * (FW) = CONTROL POINT AREA ADDRESS.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- * (UE) = USER EXTENDED MEMORY SHIFT COUNT.
- *
- * EXIT (A0) = RETURN ADDRESS.
- * TO *DCC1.1* TO PROCESS USER EXTENDED MEMORY FL DUMP.
- * TO *DCC2* IF NO USER EXTENDED MEMORY FL TO DUMP.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 0, 1, 2, 3, 6, 7.
- * B - 2.
- *
- * CALLS SEC, SEM, SRA.
- *
- * MACROS PRINT.
- DCM SA1 CN
- SA2 NC
- SA3 UE
- SX2 X2+B1
- IX1 X2-X1
- ZR X1,DCC2 IF SYSTEM CONTROL POINT
- SX6 B1 SELECT *D* FORMAT DUMP
- SB2 X3+9
- SA6 CPRA+4
- SA1 F.TCMT
- SA2 FW CP AREA ADDRESS
- IX2 X1+X2
- MX3 -12
- SA2 X2+ECSW GET CONTROL POINT RAE AND FLE
- BX7 -X3*X2
- LX2 -12
- ZR X7,DCC2 IF NO USER EXTENDED MEMORY FL
- MX6 -24
- BX6 -X6*X2 EXTENDED MEMORY RA
- LX7 B2
- SA7 CPRA+1 SET LWA+1 OF DUMP
- BX7 X7-X7
- LX6 B2
- SA7 A7-B1 SET FWA OF DUMP
- SX7 A0+ SAVE RETURN ADDRESS
- SA7 DCMA
- RJ SRA SET REFERENCE ADDRESS
- PRINT (=2C )
- PRINT (=C* USER EXTENDED MEMORY FIELD LENGTH*)
- PRINT (=2C )
- SA1 SBTL1 SAVE SUBTITLE
- BX6 X1
- SA6 DCMB
- RJ SEM SET UNIFIED EXTENDED MEMORY (UEM)
- NG X3,DCM1 IF UEM DEFINED
- RJ SEC SET EXTENDED CORE STORAGE
- DCM1 SA2 =3RUEC SET USER EXTENDED MEMORY SUBTITLE
- SA1 DCMB
- LX1 -6
- MX7 -18
- BX1 X7*X1
- BX7 X1+X2
- LX7 6
- SA1 DCMA RESTORE RETURN ADDRESS
- SA0 X1
- SA7 SBTL1
- EQ DCC1.1 PROCESS DUMP
- DCMA CON 0 RETURN ADDRESS
- DCMB CON 0 CONTROL POINT SUBTITLE
- DCN SPACE 4,10
- ** DCN - DUMP NEGATIVE FIELD LENGTH IN *D* FORMAT.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (CN) = CONTROL POINT NUMBER.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- * (DCGA - DCGA+6) = DUMP PARAMETER INFORMATION.
- *
- * USES X - 0, 1, 2, 3, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2.
- *
- * CALLS CNL, PNF, SCM, SRA.
- *
- * MACROS PRINT.
- DCN SA1 CN
- SA2 NC
- SX2 X2+B1
- IX1 X2-X1
- ZR X1,DCN2 IF SYSTEM CONTROL POINT
- *
- DBN BSS 0 *DBN* ENTRY POINT
- *
- SX6 B1 SET *D* FORMAT
- SA6 DCGA+4
- PRINT (=2C )
- PRINT (=C* NEGATIVE FIELD LENGTH*)
- PRINT (=2C )
- RJ CNL CHECK NFL LENGTH
- NG X1,DCN1 IF INSUFFICIENT NFL SPACE
- PRINT (=2C )
- PRINT (=C* LOCAL FNT-S*)
- PRINT (=2C )
- SA1 RC GET RA OF SELECTED CONTROL POINT
- BX6 X1
- RJ SRA SET REFERENCE ADDRESS = RA OF CONTROL POINT
- RJ SCM SELECT CENTRAL MEMORY
- SA2 L.TNFL GET NFL
- SX3 DAYN SET ORDINAL OF LWA
- BX0 X2 SET ORDINAL OF FWA
- RJ PNF PRINT FNT AREA
- PRINT (=2C )
- PRINT (=C* DAYFILE BUFFER (DAYN)*)
- PRINT (=2C )
- SX3 CSBN SET ORDINAL OF LWA
- SX0 DAYN SET ORDINAL OF FWA
- RJ PNF PRINT DAYFILE BUFFER AREA
- PRINT (=2C )
- PRINT (=C* COMMAND BUFFER (CSBN)*)
- PRINT (=2C )
- SX3 QFBN SET ORDINAL OF LWA
- SX0 CSBN SET ORDINAL OF FWA
- RJ PNF PRINT COMMAND BUFFER AREA
- PRINT (=2C )
- PRINT (=C* QUEUED FUNCTION BUFFER (QFBN)*)
- PRINT (=2C )
- SX3 SSJN SET ORDINAL OF LWA
- SX0 QFBN SET ORDINAL OF FWA
- RJ PNF PRINT QUEUED FUNCTION BUFFER
- PRINT (=2C )
- PRINT (=C* SSJ= SCRATCH AREA (SSJN)*)
- PRINT (=2C )
- SX3 SSDN SET ORDINAL OF LWA
- SX0 SSJN SET ORDINAL OF FWA
- RJ PNF PRINT SSJ= SCRATCH AREA
- PRINT (=2C )
- PRINT (=C* SSJ=/DMP= SCRATCH AREA (SSDN)*)
- PRINT (=2C )
- SX3 DMPN SET ORDINAL OF LWA
- SX0 SSDN SET ORDINAL OF FWA
- RJ PNF PRINT SSJ=/DMP= SCRATCH AREA
- PRINT (=2C )
- PRINT (=C* DMP= SCRATCH AREA (DMPN)*)
- PRINT (=2C )
- SX3 TDFN SET ORDINAL OF LWA
- SX0 DMPN SET ORDINAL OF FWA
- RJ PNF PRINT DMP= SCRATCH AREA
- PRINT (=2C )
- PRINT (=C* JOB TAPE DEFAULTS (TDFN)*)
- PRINT (=2C )
- SX3 ICAN SET ORDINAL OF LWA
- SX0 TDFN SET ORDINAL OF FWA
- RJ PNF PRINT JOB TAPE DEFAULTS
- PRINT (=2C )
- PRINT (=C* INTER-CP COMMUNICATION (ICAN)*)
- PRINT (=2C )
- SX3 PUCN SET ORDINAL OF LWA
- SX0 ICAN SET ORDINAL OF FWA
- RJ PNF PRINT INTER-CP COMMUNICATION WORD
- PRINT (=2C )
- PRINT (=C* PF USER NAME CACHE (PUCN)*)
- PRINT (=2C )
- SX3 SCVN SET ORDINAL OF LWA
- SX0 PUCN SET ORDINAL OF FWA
- RJ PNF PRINT PF USER NAME CACHE
- PRINT (=2C )
- PRINT (=C* SERVICE CLASS VALIDATION (SCVN)*)
- PRINT (=2C )
- SX3 CHGN SET ORDINAL OF LWA
- SX0 SCVN SET ORDINAL OF FWA
- RJ PNF PRINT SERVICE CLASS VALIDATION
- PRINT (=2C )
- PRINT (=C* CHARGE/PROJECT NUMBER (CHGN)*)
- PRINT (=2C )
- SX3 SHCN SET ORDINAL OF LWA
- SX0 CHGN SET ORDINAL OF FWA
- RJ PNF PRINT CHARGE/PROJECT
- PRINT (=2C )
- PRINT (=C* SHELL CONTROL (SHCN)*)
- PRINT (=2C )
- SX3 SLMN SET ORDINAL OF LWA
- SX0 SHCN SET ORDINAL OF FWA
- RJ PNF PRINT SHELL CONTROL
- PRINT (=2C )
- PRINT (=C* TERMINAL WORD (SLMN)*)
- PRINT (=2C )
- SX3 LFCN SET ORDINAL OF LWA
- SX0 SLMN SET ORDINAL OF FWA
- RJ PNF PRINT TERMINAL WORD
- PRINT (=2C )
- PRINT (=C* LOCAL FILE COUNT (LFCN)*)
- PRINT (=2C )
- SX3 RC1N SET ORDINAL OF LWA
- SX0 LFCN SET ORDINAL OF FWA
- RJ PNF PRINT LOCAL FILE COUNT
- PRINT (=2C )
- PRINT (=C* RECOVERY WORD 1 (RC1N)*)
- PRINT (=2C )
- SX3 RC2N SET ORDINAL OF LWA
- SX0 RC1N SET ORDINAL OF FWA
- RJ PNF PRINT FIRST RECOVERY WORD
- PRINT (=2C )
- PRINT (=C* RECOVERY WORD 2 (RC2N)*)
- PRINT (=2C )
- SX3 JPPN SET ORDINAL OF LWA
- SX0 RC2N SET ORDINAL OF FWA
- RJ PNF PRINT SECOND RECOVERY WORD
- PRINT (=2C )
- PRINT (=C* JOB PAGE PARAMETERS (JPPN)*)
- PRINT (=C* TMS CONTROL (TMSN)*)
- PRINT (=2C )
- SX3 INSN SET ORDINAL OF LWA
- SX0 JPPN SET ORDINAL OF FWA
- RJ PNF PRINT JOB PAGE PARAMETERS
- PRINT (=2C )
- PRINT (=C* INSTALLATION WORDS (INSN)*)
- PRINT (=2C )
- SX3 DAPN SET ORDINAL OF LWA
- SX0 INSN SET ORDINAL OF FWA
- RJ PNF PRINT INSTALLATION WORDS
- PRINT (=2C )
- PRINT (=C* DAYFILE BUFFER POINTERS (DAPN)*)
- PRINT (=2C )
- SX3 B0 SET ORDINAL OF LWA
- SX0 DAPN SET ORDINAL OF FWA
- RJ PNF PRINT DAYFILE BUFFER POINTERS
- DCN1 BX7 X7-X7 CLEAR INVERTED ADDRESS
- SA7 DCGA+6
- DCN2 SB2 A0 GET RETURN ADDRESS
- JP B2 RETURN
- DCP SPACE 4,8
- ** DCP - DUMP CONTROL POINT.
- *
- * ENTRY CN = CONTROL POINT NUMBER.
- * CL = LIST OPTION CHARACTER STRING LEFT JUSTIFIED.
- *
- * USES ALL REGISTERS.
- *
- * CALLS PCH, RNF, SCM, SNO, SRA, LIST OPTION PROCESSORS.
- DCP SUBR
- RJ PCH PRINT CONTROL POINT HEADER
- DCP1 RJ SCM SET CENTRAL MEMORY
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- SB2 DCPA PROCESSOR TABLE ADDRESS
- SA1 CL OPTION STRING
- RJ SNO SELECT NEXT LIST OPTION
- ZR X3,DCPX IF NO MORE OPTIONS SELECTED
- SX6 B3 SAVE (B3)
- SA6 DCPB
- SA1 OP
- SA2 CN
- RJ RNF READ NEGATIVE FL FOR SELECTED CP
- SA1 DCPB RESTORE (B3)
- SB3 X1
- SA0 DCP1 SET RETURN ADDRESS
- JP B3 EXECUTE SELECTED PROCESSOR
- DCPA BSS 0 TABLE OF LIST OPTION PROCESSORS
- VFD 36/0,6/1RA,18/DCA
- VFD 36/0,6/1RC,18/DCC
- VFD 36/0,6/1RD,18/DCD
- VFD 36/0,6/1RE,18/DCE
- VFD 36/0,6/1RF,18/DCF
- VFD 36/0,6/1RG,18/DCG
- VFD 36/0,6/1RI,18/DCI
- VFD 36/0,6/1RH,18/DCJ
- VFD 36/0,6/1RM,18/DCM
- VFD 36/0,6/1RN,18/DCN
- VFD 36/0,6/1RP,18/DCQ
- VFD 36/0,6/1RT,18/DCT
- VFD 36/0,6/1RX,18/DCX
- VFD 60/0
- DCPB CON 0
- DCQ SPACE 4,9
- ** DCQ - DUMP AND ANALYZE ALL ACTIVE PPUS ASSOCIATED WITH
- * CONTROL POINT.
- *
- * ENTRY CN = CONTROL POINT NUMBER.
- * A0 = RETURN ADDRESS.
- *
- * USES ALL REGISTERS.
- *
- * CALLS ASP.
- DCQ SA1 CN
- LX1 36
- BX6 X1
- SA6 DCQA
- SX6 DCQA
- JP ASP
- DCQA VFD 60/0
- VFD 60/-1 END OF PARAMETER BLOCK
- DCT SPACE 4,11
- ** DCT - DUMP PARAMETERS IN DETAIL.
- *
- * ENTRY FW = CONTROL POINT AREA ADDRESS FOR DUMP.
- * A0 = RETURN ADDRESS.
- * TFCP = FORMAT TABLE POINTERS.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS GTD,WOF.
- DCT PRINT (=2C )
- PRINT (=C* CONTROL POINT AREA*)
- PRINT (=2C )
- SA1 F.TCMT
- SB2 X1+ SET CORE ADDRESS OF TABLE DATA
- SA1 TFCP FORMAT TABLE POINTERS
- RJ GTD GENERATE DETAILED TABLE DUMP
- SB2 A0
- JP B2 RETURN
- DCX SPACE 4,18
- ** DCX - PRINT CONTROL POINT EXCHANGE PACKAGE,
- * PARAMETER SUMMARY, AND EJT ENTRY.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (BD) = BINARY DUMP FLAG.
- * (CN) = CONTROL POINT NUMBER.
- * (FW) = CONTROL POINT AREA ADDRESS.
- * (OP) = PCPA FWA OFFSET (0 IF DUMPING CONTROL POINTS).
- *
- * USES X - ALL.
- * A - 1, 2, 3, 5, 6, 7.
- * B - 6, 7.
- *
- * CALLS CPS, CTS, FDW, FPW, FXW, GEE, SDI, SSB, UPS.
- *
- * MACROS PRINT.
- DCX RJ SSB CLEAR PRINT STRING
- SX1 19
- RJ CPS CHECK PAGE SPACE
- SA1 F.TCMT
- SA2 FW
- IX3 X1+X2 CONTROL POINT AREA ADDRESS
- SA5 X3+ READ FIRST WORD OF XP
- MX6 0
- SA6 DCXA CLEAR LINE INDEX
- SX7 -PRBF-1 PRESET TO PRINT ((REGISTERS))
- SA7 DCXB SAVE PRINT STRING ADDRESS
- SB7 PRBF+9
- MX4 24
- SA3 A5+6
- BX1 X3*X4
- LX1 24 MONITOR ADDRESS
- BX3 X1-X2
- ZR X3,DCX1 IF XP BELONGS TO THIS CONTROL POINT
- SA2 BD
- NZ X2,DCX1 IF BINARY DUMP
- SA2 OP
- NZ X2,DCX1 IF PCPA DUMP
- SA2 =4HNOT
- SB6 4
- RJ UPS
- SX7 PRBF+1 INDICATE ((REGISTERS)) NOT TO BE PRINTED
- SA7 DCXB SAVE PRINT STRING ADDRESS
- DCX1 SA2 =2HCP
- SB6 2
- SA1 OP
- ZR X1,DCX2 IF NOT DUMPING PCP-S
- SA2 =3HPCP
- SB6 3
- DCX2 RJ UPS UNPACK STRING
- SA1 CN
- LX1 -6
- SB6 2
- RJ CTS CONVERT CONTROL POINT NUMBER
- SA2 =17H EXCHANGE PACKAGE
- SB6 17
- RJ UPS
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- DCX3 RJ SSB CLEAR PRINT STRING BUFFER
- SA1 DCXA LINE INDEX
- SA2 A1+B1 GET PRINT STRING ADDRESS
- SB7 X2
- SX6 X1-10B
- ZR X6,DCX5 IF A7 AND B7 JUST PRINTED
- NG X6,DCX4 IF STILL DOING CONTROL REGISTERS
- SX1 X1-1 CORRECT XP WORD INDEX
- DCX4 RJ FXW FORMAT EXCHANGE PACKAGE WORD
- DCX5 PRINT CCCH,137
- SA1 DCXA
- SX6 X1+B1
- SA6 A1 ADVANCE LINE INDEX
- SX6 X6-17
- NZ X6,DCX3 IF MORE EXCHANGE PACKAGE LINES TO DUMP
- SA6 DCXA CLEAR LINE INDEX
- SA2 BD
- NZ X2,DCX8 IF BINARY DUMP
- PRINT (=2C* *)
- PRINT (=C* PARAMETER SUMMARY*)
- PRINT (=2C* *)
- DCX6 RJ SSB CLEAR PRINT STRING BUFFER
- SA1 DCXA LINE INDEX
- RJ FPW FORMAT PARAMETER WORD
- PRINT CCCH,137
- SA1 DCXA ADVANCE LINE INDEX
- SX6 X1+B1
- SA6 A1
- SX6 X6-17
- NZ X6,DCX6 IF MORE PARAMETER LINES TO DUMP
- PRINT (=2C )
- PRINT (=2C )
- PRINT (=C* EJT ENTRY*)
- PRINT (=2C )
- RJ GEE GET EJT ENTRY
- SX3 0 PRESET EJT ENTRY INDEX
- DCX7 IX1 X3+X5 FORMAT REFERENCE ADDRESS
- LX1 -18
- SB7 PRBF
- SB6 6
- RJ CTS
- SA2 =4000005B FORMAT DATA WORD
- SA1 X3+BUF
- SB7 B7+B1
- RJ FDW
- SB6 10D SET DISPLAY CODE INTERPRETATION
- SA2 X3+BUF
- SB7 B7+2
- RJ SDI
- SX0 X3 SAVE EJT ENTRY INDEX
- PRINT CCCH,B7-CCCH
- SX3 X0+1 INCREMENT EJT ENTRY INDEX
- SX6 X3-EJTE
- NZ X6,DCX7 IF MORE TO DUMP
- DCX8 SX1 10
- RJ CPS FORCE PAGE EJECT IF UNDER 10 LINES LEFT
- SB2 A0+
- JP B2 RETURN
- DCXA BSS 1 LINE INDEX
- DCXB BSS 1 PRINT STRING ADDRESS
- DDB SPACE 4,15
- ** DDB - DISPLAY *DFT* BLOCK.
- *
- * ENTRY (X5) = 0, IF ADDRESS IS SUPPLIED.
- * (X5) = 1, IF ADDRESS IS IN R-REGISTER FORMAT.
- * (X6) = SUPPLIED ADDERSS.
- * (X7) = SUPPLIED LENGTH.
- * (X3) = ADDRESS TO CONVERT, IF (X5) = 1.
- * (X1) = ADDRESS OF TITLE.
- *
- * USES X - 6, 7.
- * A - 6, 7.
- *
- * CALLS DRA, DSM.
- *
- * MACROS PRINT.
- DDB SUBR ENTRY/EXIT
- ZR X5,DDB1 IF ADDRESS SUPPLIED
- RJ DRA CONVERT R-REGISTER ADDRESS
- DDB1 LX6 3 SET STARTING BYTE ADDRESS
- LX7 3 SET LAST BYTE ADDRESS
- ZR X7,DDBX IF NO LENGTH
- IX7 X6+X7
- SA6 DDBA
- SA7 A6+B1
- PRINT X1 WRITE TITLE
- PRINT (=C* *)
- SB2 DDBA
- RJ DSM DUMP 64-BIT MEMORY
- DDB2 PRINT (=C* *)
- EQ DDBX RETURN
- DDBA CON 0 FWA TO DUMP
- CON 0 LWA+1 TO DUMP
- CON 0 *I* FORMAT
- DFI SPACE 4,13
- ** DFI - DUMP FILE INFORMATION.
- *
- * ENTRY X5 = N IF FET LENGTH IS N+5 WORDS.
- * .LT. 0 IF FET LENGTH IS A FUNCTION OF THE CONTENTS
- * OF WORD 1, BITS 23-18 OF THE FET.
- * X6 = CONTROL POINT NUMBER ASSOCIATED WITH FET.
- * X7 = ADDRESS OF FET.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS CRA, CTS, FDW, PCM, PFS, SDI, SSB, UPS.
- *
- * MACROS GETCM, PRINT.
- DFI SUBR
- SA6 DFIF SAVE CONTROL POINT NUMBER
- SA7 DFIG SAVE FET ADDRESS
- RJ CRA COMPUTE REFERENCE ADDRESS
- SA3 DFIG
- SA6 DFIB
- IX3 X6+X3
- RJ PCM
- GETCM BUF,5
- PRINT (=2C )
- PL X5,DFI1 IF FET LENGTH-5 SPECIFIED
- MX0 -6
- SA2 BUF+1
- LX2 -18
- BX5 -X0*X2 FET LENGTH-5
- DFI1 ZR X5,DFI2 IF ENTIRE FET IS IN BUF
- GETCM BUF+5,X5
- DFI2 SX6 X5+5
- SA6 DFIA FET LENGTH
- SA1 BUF+4
- MX0 12
- BX6 X0*X1
- LX6 12
- SA1 F.TCMT
- SB2 X1 TCMT TABLE BASE ADDRESS
- SA1 F.TNFL POSITION TO RA IN TNFL
- SA2 L.TNFL
- IX1 X1+X2
- IX1 X1-X6
- SA4 X1 READ FNT ENTRY
- SA5 A4+B1 READ FST ENTRY
- SX7 X6
- SA7 GNFA SET FNT ORDINAL
- BX6 X4
- LX7 X5
- SA6 A7+B1 SET FNT
- SA7 A6+B1 SET FST
- SA1 A5+B1 READ FUT
- BX6 X1
- SA6 A7+B1 SET FUT
- SA1 B2+ESTP EST POINTER WORD
- AX1 36
- AX7 48
- R= X6,ESTE
- SX1 X1+EQDE
- IX6 X7*X6
- IX6 X6+X1
- SA6 A6+B1 SET EST ADDRESS
- SA1 X6+B2
- BX7 X1
- SA7 A6+1 SET EST
- RJ PFS PRINT FILE SUMMARY
- * DUMP FET.
- SX5 -1
- RJ SSB CLEAR PRINT STRING
- SA2 =5HFET -
- SB6 5
- SB7 PRBF+24
- RJ UPS SET HEADER INFORMATION
- * SET FET ADDRESS.
- SA1 DFIG
- SB6 6
- SB7 PRBF+9
- LX1 -18
- RJ CTS
- * SET CONTROL POINT NUMBER.
- SA2 =2HCP
- SB6 2
- SB7 PRBF+18
- RJ UPS
- SA1 DFIF
- SB6 2
- LX1 -6
- RJ CTS
- DFI3 SA2 DFIA
- SX5 X5+1
- IX3 X2-X5
- ZR X3,DFI4 IF ENTIRE FET DUMPED
- * SET FET ORDINAL.
- BX1 X5
- SB7 PRBF+30
- SX6 1R+
- SA6 B7 SET RELATIVE SIGN
- SB7 B7+1
- LX1 -9
- SB6 3
- RJ CTS
- * SET FET WORD.
- SA1 BUF+X5
- SB7 B7+2
- SA2 =4000005B FORMAT CONTROL
- RJ FDW
- BX2 X1
- SB6 10
- RJ SDI
- PRINT CCCH,B7-CCCH
- RJ SSB CLEAR PRINT STRING
- JP DFI3 CONTINUE
- * DUMP FET EXTENDED LABELS.
- DFI4 SA1 DFIA
- SX2 X1-10
- NG X2,DFIX IF EXTENDED LABEL WORD IMPOSSIBLE
- SA1 BUF+1
- LX1 59-41
- PL X1,DFIX IF EXTENDED LABEL NOT SET
- PRINT (=2C )
- SA2 BUF+9
- SX6 X2+
- SA6 DFIC SET ADDRESS OF EXTENDED LABELS
- SX7 100
- SA7 DFID SET MAXIMUM NUMBER OF LABELS TO DUMP
- DFI5 RJ SSB CLEAR PRINT STRING
- SA1 DFIB
- SA2 DFIC
- IX3 X1+X2
- RJ PCM POSITION TO START OF NEXT EXTENDED LABEL
- SA2 =28HEXT LABEL CHARACTER COUNT =
- SB6 28
- SB7 PRBF
- RJ UPS
- GETCM READ HEADER
- SX4 10
- MX0 -12
- BX1 -X0*X6 NUMBER OF CHARACTERS
- ZR X1,DFIX IF NO MORE EXTENDED LABELS
- LX1 -12
- SB6 4
- RJ CTS SET CHARACTER COUNT
- SB7 B7+2 SPACE TWO TIMES
- SX6 X1+ NUMBER OF CHARACTERS
- SA6 DFIE
- IX2 X6/X4 NUMBER OF WHOLE WORDS
- SX4 10
- SX3 X1+
- IX0 X4*X2 NUMBER OF CHARACTERS WITHOUT REMAINDER
- IX6 X3-X0 REMAINDER
- ZR X6,DFI6 IF NO REMAINDER
- SX2 X2+1
- DFI6 SA1 DFIC
- IX4 X1+X2
- SX6 X4+B1
- SA6 A1+ SET NEXT EXTENDED LABEL ADDRESS
- GETCM BUF,10
- SA1 DFIE NUMBER OF CHARACTERS
- SX3 X1-101
- NG X3,DFI7 IF .LE. 100 CHARACTERS
- SX1 101
- SX6 65B =1R_
- LX6 -6 =1L_
- SA6 BUF+10 INDICATE OVERFLOW
- * SET EXTENDED LABEL.
- DFI7 SB6 X1+
- SB7 PRBF+34
- SA2 BUF
- RJ UPS
- PRINT CCCH,B7-CCCH
- SA1 DFID
- SX6 X1-1
- SA6 A1+ DECREMENT MAXIMUM NUMBER OF LABELS TO DUMP
- NZ X6,DFI5 IF MAXIMUM NOT DUMPED
- JP DFIX EXIT
- DFIA BSS 1 FET LENGTH
- DFIB BSS 1 CONTROL POINT REFERENCE ADDRESS
- DFIC BSS 1 ADDRESS OF EXTENDED LABEL
- DFID BSS 1 MAXIMUM NUMBER OF LABELS REMAINING TO DUMP
- DFIE BSS 1 NUMBER OF CHARACTERS IN LABEL
- DFIF BSS 1 CONTROL POINT NUMBER
- DFIG BSS 1 FET ADDRESS
- DFT SPACE 4,10
- ** DFT - PROCESS DFT MESSAGE AND DFT/OS BUFFER.
- *
- * USES X - 0, 1, 2, 3, 5, 6, 7.
- * A - 1, 2, 3, 6, 7.
- * B - 2.
- *
- * CALLS CPS, CVB, DDB, DRA, GDA, ISM.
- *
- * MACROS SEARCH.
- DFT SUBR ENTRY/EXIT
- SX1 100 FORCE NEW PAGE
- RJ CPS
- SA1 ED
- ZR X1,DFT1 IF USING *CM* RECORD
- SA1 .DFT GET *DFT* RECORD
- MX0 18
- SEARCH TDIR,X1,X0
- ZR X2,DFTX IF NOT FOUND
- SA1 A2+2
- SX6 X1 GET LENGTH OF DFT RECORD
- SA6 EH
- SA2 A2+3 POSITION PAST HEADER RECORD
- BX6 X2
- SA6 A6+B1 SAVE RANDOM INDEX
- SA6 EI FORCE *EI* ADDRESSING
- SA1 DFTE
- BX6 X1
- SA2 A1+B1
- SA6 DFTF-1+/DFT/DFMD UPDATE POINTER WORD TABLE
- BX7 X2
- SX6 B0 SET OFFSET
- SA7 DFTF-1+/DFT/DFRQ
- SA6 AO
- SX7 PBUF+20 FWA OF 60-BIT STORAGE BUFFER
- SA7 CVBA
- EQ DFT2 DISPLAY BUFFER
- DFT1 SA1 F.TCMT
- SA2 X1+EIBP READ *EICB* POINTER
- SX6 X2+/VE/DFCM+1 GET ADDRESS OF DFT MESSAGE
- SX7 3 SET LENGTH TO DUMP
- SX1 =C* DFT MESSAGE.*
- SX5 B0+
- RJ DDB DISPLAY DFT BLOCK
- RJ GDA GET DFT/OS BUFFER ADDRESS
- ZR X3,DFTX IF NO DFT/OS BUFFER POINTER
- BX7 X3
- DFT2 SA7 DFTA SAVE ADDRESS OF DFT CONTROL WORD IN BUFFER
- SA6 A7+B1 SAVE DFT/OS BUFFER ADDRESS
- ERRNZ DFTB-DFTA-1 CODE REQUIRES CONTIGUOUS WORDS
- SX5 B0
- SX7 B1 SET LENGTH TO DUMP
- SX1 =C* DFT CONTROL WORD.*
- RJ DDB DISPLAY DFT BLOCK
- SX3 1 NUMBER OF WORDS TO CONVERT
- RJ CVB CONVERT CONTROL WORD
- SA3 DFTA READ *DFT* CONTROL WORD
- SA3 X3+/DFT/DFCW
- LX3 -56
- MX0 -4
- BX3 -X0*X3 NUMBER OF POINTER WORDS
- BX7 X3 SAVE NUMBER OF POINTER WORDS
- SA7 DFTD
- SX7 /DFT/DFHL-1 DEFAULT NUMBER OF POINTER WORDS
- ZR X3,DFT3 IF NUMBER NOT IN CONTROL WORD
- SX7 X3-1 SET NUMBER OF POINTER WORDS
- DFT3 SX1 =C* DFT POINTER WORDS.*
- SA3 DFTB
- SX6 X3+B1 ADDRESS OF POINTER WORDS
- SX5 B0
- RJ DDB DISPLAY DFT BLOCK
- SA3 DFTD
- RJ CVB CONVERT POINTER WORDS
- SA3 DFTA READ *DFT* CONTROL WORD
- SA3 X3+/DFT/DFCW
- MX0 -8
- LX3 -16
- BX7 -X0*X3 NUMBER OF BUFFER CONTROL WORDS
- LX3 -24
- BX3 -X0*X3 *DFT* REVISION LEVEL
- SX3 X3-3-1 CHECK FOR *DFT* LEVEL 3
- PL X3,DFT5 IF *DFT* VERSION 4 OR ABOVE
- * PROCESS *DFT* VERSION 3.
- SA3 DFTB
- SX6 X3+/DFT/DFHL ADDRESS OF M/R CONTROL WORDS
- SX5 B0+
- SX1 =C* BUFFER CONTROL WORDS.*
- RJ DDB DISPLAY DFT BLOCK
- SX1 20
- RJ CPS
- SA3 DFTA
- SA3 X3+/DFT/DFMR M/R BUFFER POINTER
- SX1 =C* M/R BUFFERS.*
- SX5 B1+
- RJ DDB DISPLAY DFT BLOCK
- SX1 20
- RJ CPS
- SA3 DFTA
- SA3 X3+/DFT/DFMD MODEL DEPENDENT BUFFER POINTER
- ZR X3,DFT4 IF NO MODEL DEPENDENT BUFFER
- SX5 B1+
- SX1 =C* MODEL DEPENDENT BUFFER.*
- RJ DDB DISPLAY DFT BLOCK
- DFT4 SA3 DFTA
- SA3 X3+/DFT/DFRQ NOS REQUEST AREA POINTER
- SX6 /DFT/RQBL INCREMENT LENGTH FIELD
- IX3 X3+X6
- SX5 B1
- SX1 =C* NOS REQUEST AREA.*
- RJ DDB DISPLAY *DFT* BLOCK
- EQ DFTX RETURN
- * PROCESS *DFT* VERSION 4 OR ABOVE.
- DFT5 SX6 DFTF SET FIRST TABLE ENTRY ADDRESS
- SA6 DFTC
- SX6 DDB2 SET ERROR RETURN ADDRESS
- SA6 ERRC+1
- DFT6 SA1 DFTC GET NEXT TABLE ENTRY ADDRESS
- SA2 X1+ GET NEXT TABLE ENTRY
- ZR X2,DFT8 IF END OF TABLE
- SX6 X1+B1
- SA6 A1 ADVANCE TABLE ADDRESS
- NG X2,DFT6 IF SPECIAL ENTRY
- SX1 X2 SET ADDRESS OF HEADER
- AX2 30 SET POINTER OFFSET
- SB2 X2+
- SA3 DFTA GET POINTER WORD
- SA3 X3+B2
- SX5 B1
- ZR X3,DFT6 IF POINTER NOT PRESENT
- SA2 ED
- ZR X2,DFT7 IF NOT *DROPVE* DUMP
- SA2 DFTD GET BLOCK ADDRESS WITHIN *DFT* RECORD
- SX5 B0
- MX0 -16
- BX7 -X0*X3 GET BLOCK LENGTH
- IX6 X7+X2
- SA6 A2 UPDATE ADDRESS FOR NEXT BLOCK
- BX6 X2 SET CONVERTED ADDRESS
- DFT7 RJ DDB DISPLAY *DFT* BLOCK
- SX1 20
- RJ CPS CHECK PAGE SPACING
- EQ DFT6 PROCESS NEXT *DFT* TABLE
- * DISPLAY MODEL DEPENDENT BUFFERS.
- DFT8 SA1 ED
- SX1 X1-1
- ZR X1,DFTX IF *DROPVE* DUMP
- SA2 DFTA
- SA3 X2+/DFT/DFMD MDB POINTER ADDRESS
- SX1 =C* MODEL DEPENDENT BUFFER.*
- RJ DRA CONVERT ADDRESS
- SA6 A2+B1 SAVE MDB POINTER ADDRESS
- ERRNZ DFTA-DFTB+1
- BX5 X5-X5
- RJ DDB DISPLAY MDB POINTER WORDS
- SA1 DFTB CALCULATE MDB FWA
- SA2 F.TCMT
- IX6 X1+X2
- SA6 A1
- BX6 X6-X6
- SA6 A1+B1 MDB ORDINAL
- ERRNZ DFTB-DFTC+1
- DFT9 SA3 DFTB GET NEXT MDB POINTER
- IX3 X3+X6
- SA3 X3
- SX1 =C* * NO TITLE
- SX5 B1+
- RJ DDB DISPLAY MODEL DEPENDENT BUFFER
- SA1 DFTC UPDATE MDB ORDINAL
- SX6 X1+B1
- SA6 A1
- AX1 1
- ZR X1,DFT9 IF NOT THROUGH DISPLAYING MDB
- EQ DFT4 DUMP NOS REQUEST AREA
- DFTA CON 0 FWA OF DFT/OS BUFFER IN *TCMT*
- DFTB CON 0 FWA OF DFT/OS BUFFER
- DFTC CON 0 NEXT TABLE ENTRY ADDRESS
- DFTD CON 0 *DROPVE* DUMP BLOCK ADDRESS
- DFTE VFD 30//DFT/DFMD,30/=C* MODEL DEPENDENT BUFFER POINTERS.*
- VFD 30//DFT/DFRQ,30/=C* NOS REQUEST AREA.*
- ** TABLE OF *DFT* TABLES TO DISPLAY.
- *
- *T 30/ OFFSET, 30/ ADDRESS
- *
- * OFFSET = OFFSET OF POINTER IN *DFT/OS* BUFFER.
- * ADDRESS = ADDRESS OF HEADER TO DISPLAY.
- *
- * NOTE - ENTRIES IN THE TABLE MUST BE IN *COMSDFT* ORDER.
- * ENTRIES CONSISTING OF *-1* ARE SPECIAL ENTRIES AND
- * ARE PROCESSED SEPARATELY.
- DFTF BSS 0
- VFD 30//DFT/DFSI,30/=C* SECDED ID TABLE.*
- VFD 30//DFT/DFMR,30/=C* M/R BUFFERS.*
- CON -1
- VFD 30//DFT/DFNV,30/=C* NOS/VE BUFFER.*
- VFD 30//DFT/DFPS,30/=C* PPR SAVE AREA.*
- CON -1
- VFD 30//DFT/DFBC,30/=C* BUFFER CONTROL WORDS.*
- VFD 30//DFT/DFEC,30/=C* ELEMENT COUNTER BUFFER.*
- VFD 30//DFT/DFER,30/=C* ERROR CONTROL RECORD.*
- VFD 30//DFT/DFSS,30/=C* SUPPORTIVE STATUS BUFFERS.*
- VFD 30//DFT/DFNR,30/=C* NON REGISTER STATUS.*
- VFD 30//DFT/DFCA,30/=C* DFT CMR AREA.*
- VFD 30//DFT/DFPR,30/=C* PP REGISTER DATA.*
- VFD 30//DFT/DFSD,30/=C* DFT SECONDARY BUFFER POINTER.*
- CON 0 END OF TABLE
- SPACE 4,10
- *** DHA - DUMP RHF DAYFILE BUFFER.
- *
- * ENTRY (CN) = CONTROL POINT NUMBER.
- * (A0) = RETURN ADDRESS.
- *
- * USES X - 1, 6.
- * A - 1, 6.
- * B - 3.
- *
- * CALLS DCP.
- DHA SA1 =1LA SET OPTION FOR DAYFILE DUMP
- DHA1 SX6 A0 SAVE RETURN ADDRESS
- SA6 DHAA
- BX6 X1
- SA6 CL
- RJ DCP DUMP DAYFILE BUFFERS
- SA1 DHAA GET RETURN ADDRESS
- SB3 X1
- JP B3 RETURN
- DHAA DATA 0 RETURN ADDRESS
- SPACE 4,10
- ** DHC - DUMP RHF FIELD LENGTH.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- *
- * EXIT TO DHA1.
- *
- * USES X - 1.
- * A - 1.
- DHC SA1 =1LD
- JP DHA1 SET TO DUMP FIELD, *D* FORMAT
- SPACE 4,10
- ** DHP - DUMP RHF PPU-S.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- *
- * USES ALL REGISTERS.
- *
- * CALLS ASP.
- DHP SX6 DHPA
- JP ASP DUMP PPUS
- DHPA BSS 0 PARAMETERS FOR *ASP*
- VFD 18/3LNDR,42/0
- VFD 18/3LNLD,42/0
- VFD 18/3LRHH,42/0
- VFD 60/-1 END OF PARAMETERS
- DHR SPACE 4,15
- ** DHR - DISPLAY HEX REGISTER.
- *
- * ENTRY DUMP FILE POSITIONED AT REGISTER TO DISPLAY.
- * (B7) = OUTPUT COLUMN POINTER.
- *
- * USES X - 1, 5.
- * B - 6, 7.
- *
- * CALLS HTS, NXB.
- *
- * MACROS PRINT.
- DHR SUBR ENTRY/EXIT
- SX5 4
- DHR1 SB7 B7+2
- RJ NXB GET NEXT 16 BITS OF REGISTER
- SB6 4
- LX1 59-15
- RJ HTS DISPLAY 4 HEX DIGITS
- SX5 X5-1
- NZ X5,DHR1 IF MORE DATA TO DISPLAY
- PRINT CCCH,B7-CCCH+1
- EQ DHRX RETURN
- DMB SPACE 4,15
- ** DMB - DISPLAY MESSAGE BUFFER.
- *
- * ENTRY (A2) = FWA OF MESSAGE BUFFER.
- * (B6) = CHARACTER COUNT.
- * (B7) = STRING BUFFER POSITION.
- *
- * EXIT MESSAGE BUFFER UNPACKED TO STRING BUFFER.
- *
- * USES X - 0, 1, 3.
- * A - 3.
- * B - 4, 5, 6.
- *
- * CALLS UPS.
- DMB2 SB6 B5+
- ZR B5,DMBX IF EMPTY BUFFER
- DMB3 RJ UPS UNPACK MESSAGE
- DMB SUBR ENTRY/EXIT
- SB5 B0 INITIALIZE CHARACTER COUNTER
- MX0 12
- SB4 4 INITIALIZE BYTE COUNTER
- SA3 A2+ READ FIRST WORD
- DMB1 BX1 X0*X3
- ZR X1,DMB2 IF EOL
- LX0 -12
- SB5 B5+2
- GT B5,B6,DMB3 IF END OF MESSAGE
- SB4 B4-B1
- PL B4,DMB1 IF NOT FINISHED WITH WORD
- SA3 A3+B1
- SB4 4
- EQ DMB1 READ NEXT WORD
- DMP SPACE 4,7
- ** DMP - DUMP MAGNET PPUS.
- *
- * ENTRY A0 = RETURN ADDRESS.
- *
- * USES ALL REGISTERS.
- *
- * CALLS ASP.
- DMP SX6 DMPA
- JP ASP
- DMPA VFD 18/3L1MT,42/0
- VFD 60/-1 END OF PARAMETER BLOCK
- DMQ SPACE 4,9
- ** DMQ - DUMP MAGNET QUEUE TABLE.
- *
- * ENTRY A0 = RETURN ADDRESS.
- *
- * USES X - 1, 2, 3, 4, 5, 6, 7.
- * A - 1, 2, 3, 5, 6, 7.
- * B - 2.
- *
- * CALLS DOT, PCM, PCW.
- *
- * MACROS PRINT.
- DMQ PRINT (=2C )
- PRINT (=C* MAGNET QUEUE TABLE*)
- PRINT (=2C )
- SA1 SSBF+/MTX/UQUE
- SA2 FC
- SX6 X1+ FWA
- SA3 SSBF+/MTX/TAJP
- ZR X3,DMQ1 IF TAPE ALTERNATE STORAGE NOT ACTIVE
- SA2 SSBF+/MTX/TSRP
- DMQ1 SX7 X2 LWA+1
- ZR X6,DMQ2 IF NO QUEUE TABLE FWA
- IX4 X6-X7
- PL X4,DMQ2 IF LWA+1 .LE. FWA
- SA6 DMQA
- SA7 A6+B1
- SA2 RC
- IX3 X6+X2
- RJ PCM POSITION TO QUEUE TABLE
- SB2 DMQA
- RJ DOT DUMP ORDINAL TABLE
- JP DMQ3 RETURN
- DMQ2 SA5 DMQB
- RJ PCW PRINT CONTENTS OF *UQUE* WORD
- DMQ3 SB2 A0
- JP B2 RETURN
- DMQA VFD 60/0 FWA
- VFD 60/0 LWA+1
- VFD 60/0 STARTING ORDINAL
- VFD 60/2 ORDINAL INCREMENT
- VFD 24/0,18/4,18/5 FORMAT CONTROL
- DMQB VFD 36/6L*UQUE*,6/0,18//MTX/UQUE
- DATA 40HMAGNET QUEUE TABLE FWA
- VFD 60/0
- DMR SPACE 4,15
- ** DMR - DUMP MAINTENANCE REGISTERS.
- *
- * ENTRY (X1) = RECORD ID.
- * (X7) = PARAMETER LIST POINTER.
- *
- * USES A - 1, 2, 4, 5, 6, 7.
- * B - 2, 3, 4, 6, 7.
- * X - ALL.
- *
- * CALLS GID, HTS, LDC, RMR, SDT, SHA, SSB, UCS, UPS.
- *
- * MACROS PRINT.
- DMR SUBR ENTRY/EXIT
- SA7 DMRB DESCRIPTOR TABLE
- SX7 B0
- BX6 X1
- SA6 DMRA RECORD ID
- SA2 NR
- ZR X2,DMR1 IF FIRST RECORD
- SA7 DMRE RESET REGISTER 31 OCCURRENCE FLAG
- DMR1 RJ GID GET ELEMENT ID
- SB2 X6
- SX1 B1
- LX6 X1,B2 FORM BIT MASK OF MODEL NUMBER
- SA1 DMRB
- SX1 X1-/DIRECT/IMRA
- NZ X1,DMR1.1 IF NOT IOU REGISTER DUMP
- SX7 X7-0#42
- NZ X7,DMR1.1 IF NOT MODEL 42 IOU
- SX6 I4S SET BIT MASK FOR MODEL 42 IOU
- DMR1.1 SA6 DMRF SET MODEL NUMBER BIT MASK
- SX6 /IOU/PRDM+1 PRESET LAST REGISTER NUMBER
- RJ SHA SET HEX ADDRESSES
- RJ LDC LIST DIRECTIVE CARD
- * SKIP TO FIRST REGISTER TO DUMP.
- SX6 -1
- SA6 LPWA PRESET BYTE AND WORD POSITION IN BUFFER
- SX6 X6+B1
- SA6 A6+B1
- DMR2 RJ RMR READ MAINTENANCE REGISTER
- ZR X1,DMRX IF END OF REGISTERS
- SA1 RMRB CHECK REGISTER .LT. FIRST REGISTER
- SA2 FW
- IX6 X1-X2
- NG X6,DMR2 IF REGISTER .LT. FIRST REGISTER
- * PRINT RADIAL MCI, HEADER.
- RJ SSB
- PRINT (=2C )
- SB7 PRBF
- SA2 =13HRADIAL MCI =
- SB6 13
- RJ UPS
- SA2 RDRA
- LX2 3*6
- SB6 1
- RJ UPS UNPACK RADIAL MCI
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- PRINT (=C* REG CONTENTS DESCRIPTION*)
- PRINT (=2C )
- * PRINT REGISTER NUMBER AND CONTENTS.
- DMR3 RJ SSB SPACE FILL STRING BUFFER
- SB7 PRBF+1 PRINT REGISTER NUMBER
- SA1 RMRB
- SB6 2
- LX1 52
- RJ HTS
- SB7 PRBF+5 PRINT REGISTER CONTENTS
- SA1 RMRA
- SB4 X1
- SB3 MRBF
- DMR4 SA1 B3
- SB6 2
- LX1 52
- RJ HTS
- SB3 B3+B1
- SB4 B4-B1
- ZR B4,DMR5 IF REGISTER CONTENTS PRINTED
- SA1 B3
- SB6 2
- LX1 52
- RJ HTS
- SB7 B7+B1
- SB3 B3+B1
- SB4 B4-B1
- NZ B4,DMR4 IF REGISTER CONTENTS NOT PRINTED
- * PRINT REGISTER DESCRIPTION.
- DMR5 SA1 RMRB REGISTER NUMBER
- SA2 /DIRECT/PMRD CHECK FOR REGISTER 31
- SA4 DMRF GET MODEL NUMBER BIT MASK
- RJ SDT
- ZR X2,DMR5.1 IF NOT REGISTER 31
- SA2 DMRE
- ZR X2,DMR5.0 IF FIRST OCCURANCE OF REGISTER 31
- SA2 /DIRECT/PMRD REGISTER DESCRIPTOR
- EQ DMR5.2 PROCESS SECOND OCCURANCE OF REGISTER 31
- DMR5.0 SX6 1 SET REGISTER 31 OCCURANCE FLAG
- SA6 DMRE
- DMR5.1 SA1 RMRB REGISTER NUMBER
- SA2 DMRB DESCRIPTOR TABLE POINTER
- SA4 DMRF GET MODEL NUMBER BIT MASK
- SA2 X2 GET FIRST ENTRY OF TABLE
- RJ SDT SEARCH DESCRIPTOR TABLE
- ZR X2,DMR8 IF REGISTER NOT FOUND
- DMR5.2 MX0 -17
- BX6 X2
- BX2 -X0*X2
- AX6 17 ISOLATE SECONDARY TABLE
- BX6 -X0*X6
- SA6 DMRD
- SA2 X2 GET DESCRIPTOR
- SB7 PRBF+30
- RJ UCS
- PRINT CCCH,B7-CCCH
- SA1 DMRD
- ZR X1,DMR8 IF NO SECONDARY TABLE
- * PRINT BIT NUMBER AND DESCRIPTION FOR SET BITS OF INTEREST.
- DMR6 SA5 DMRD FETCH SECONDARY DESCRIPTOR TABLE ENTRY
- SA1 X5
- ZR X1,DMR8 IF END OF SECONDARY DESCRIPTOR TABLE
- SX6 X5+B1 INCREMENT DESCRIPTOR TABLE POINTER
- SA6 DMRD
- SA4 DMRF GET MODEL NUMBER BIT MASK
- LX4 17+17
- BX6 X1*X4
- ZR X6,DMR6 IF INFORMATION IS NOT FOR THIS MACHINE
- MX0 -3 DETERMINE IF SPECIFIED BIT IS SET
- BX6 X1
- SA6 DMRC
- AX1 -9
- BX2 -X0*X1
- AX1 3
- SA1 X1+MRBF
- SB2 X2+52
- LX1 B2
- PL X1,DMR6 IF BIT NOT SET
- RJ SSB SPACE FILL STRING BUFFER
- SB7 PRBF+18 PRINT *BIT NN*
- SA2 =4HBIT
- SB6 4
- RJ UPS
- SA1 DMRC
- AX1 -9
- BX3 X1
- SX2 10
- SX6 X2
- IX4 X1/X2 CALCULATE UPPER DIGIT
- IX1 X4*X6
- SX6 X4+1R0
- SA6 PRBF+22 STORE UPPER DIGIT
- IX2 X3-X1 FORM REMAINDER
- SX6 X2+1R0
- SA6 A6+B1
- SB7 PRBF+26 PRINT DESCRIPTION
- SA1 DMRC
- SA2 X1
- RJ UCS
- PRINT CCCH,B7-CCCH
- EQ DMR6 CONTINUE PRINTING BIT DESCRIPTIONS
- * TEST ALL REGISTERS PROCESSED.
- DMR8 RJ RMR READ NEXT MAINTENANCE REGISTER
- ZR X1,DMRX IF END OF REGISTERS
- SA1 RMRB
- SA2 LW
- IX6 X1-X2
- NG X6,DMR3 IF MORE REGISTERS TO PRINT
- EQ DMRX RETURN
- DMRA BSS 1 RECORD ID
- DMRB BSS 1 DESCRIPTOR TABLE POINTER
- DMRC BSS 1 DESCRIPTOR TABLE ENTRY
- DMRD BSS 1 SECONDARY DESCRIPTOR TABLE ADDRESS
- DMRE BSSZ 1 REGISTER 31 OCCURANCE FLAG
- DMRF BSS 1 MODEL NUMBER BIT MASK
- DMS SPACE 4,15
- ** DMS - DUMP MAGNET TAPE PF STAGING TABLES.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- *
- * USES X - 2, 3, 4, 6, 7.
- * A - 2, 3.
- * B - 2.
- *
- * CALLS DST.
- *
- * MACROS PRINT.
- DMS BSS 0 ENTRY
- SA3 SSBF+/MTX/TAJP
- ZR X3,DMS1 IF TAPE ALTERNATE STORAGE NOT ACTIVE
- PRINT (=2C )
- PRINT (=C* ACTIVE STAGING JOB TABLE*)
- PRINT (=2C )
- SA3 SSBF+/MTX/TAJP
- SX6 X3 FWA
- AX3 24
- SX7 X3 LWA+1
- RJ DST DUMP STAGING TABLE
- PRINT (=2C )
- PRINT (=C* STAGING VSN TABLE*)
- PRINT (=2C )
- SA3 SSBF+/MTX/TVSP
- SX6 X3 FWA
- AX3 24
- SX7 X3 LWA+1
- RJ DST DUMP STAGING TABLE
- PRINT (=2C )
- PRINT (=C* STAGE REQUEST TABLE*)
- PRINT (=2C )
- SA3 SSBF+/MTX/TSRP
- SA2 FC
- SX6 X3 FWA
- SX7 X2 LWA+1
- RJ DST DUMP STAGING TABLE
- DMS1 SB2 A0
- JP B2 RETURN
- DMU SPACE 4,15
- ** DMU - DUMP MAGNET UNIT DESCRIPTOR TABLES.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (CN) = MAGNET CONTROL POINT NUMBER.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- * (RC) = MAGNET CONTROL POINT REFERENCE ADDRESS.
- *
- * USES X - ALL.
- * A - 1, 2, 4, 6, 7.
- * B - 2, 3, 6, 7.
- *
- * CALLS CTS, DFI, GTD, PCM, UPS.
- *
- * MACRO GETCM, PRINT.
- DMU PRINT (=2C )
- PRINT (=C* MAGNET UNIT DESCRIPTOR TABLES*)
- SX6 A0+ SAVE RETURN ADDRESS
- SA6 DMUC
- SA1 SSBF+/MTX/UBUF
- SX6 X1 FWA OF UDT
- AX1 24
- SX7 X1 LWA OF UDT
- SA6 DMUA SAVE FWA OF FIRST UDT ENTRY
- SA7 A6+B1 SAVE LWA OF UDT
- DMU1 SA1 A6+B1 GET LWA OF UDT
- IX1 X1-X6
- ZR X1,DMU4 IF ALL UDTS DUMPED
- BX1 X6
- SA2 RC
- IX3 X1+X2
- RJ PCM POSITION TO NEXT UDT
- GETCM BUF,/MTX/UNITL READ UDT
- PRINT (=2C )
- SB7 PRBF
- SA2 =4HEST
- SB6 4
- RJ UPS STORE IN PRINT STRING
- SA1 BUF+/MTX/UST1 SET EST ORDINAL
- LX1 27
- SB6 3
- RJ CTS CONVERT EST ORDINAL
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- SA1 DMUA
- BX6 X1
- BX2 -X1
- SB2 X2+BUF SET CORE ADDRESS OF TABLE DATA
- SA6 FW SET PRINT ADDRESS
- SA1 TFMU FORMAT TABLE POINTERS
- RJ GTD GENERATE DETAILED TABLE DUMP
- SA1 DMUA
- SX6 X1+/MTX/UNITL
- SA6 A1 SET NEXT UDT FWA
- JP DMU1
- DMU4 SA1 DMUC GET RETURN ADDRESS
- SB2 X1
- JP B2 RETURN
- DMUA BSS 2 FWA, LWA OF UDT
- DMUC BSS 1 RETURN ADDRESS
- DNN SPACE 4,10
- ** DNN - PROCESS CPP-S.
- *
- * ENTRY VIA UNCONDITIONAL JUMP.
- *
- * EXIT TO *RBI2* IF NORMAL.
- * TO *PPE1* IF PREMATURE EOF.
- *
- * USES X - 1, 7.
- * A - 1, 7.
- *
- * CALLS CRS, ERF, RBF.
- DNN BSS 0 ENTRY
- RJ ERF POSITION TO EOR ON FILE *F*
- RJ RBF READ FIRST PART OF RECORD
- NZ X1,PPE1 IF PREMATURE EOF
- SA1 ID SHIFT RECORD ID BEFORE ENTRY INTO TABLE
- BX7 X1
- AX7 6
- SA7 A1
- RJ CRS COPY RECORD TO FILE *S*
- EQ RBI2 EXIT TO READ NEXT RECORD FROM FILE *F*
- DOS SPACE 4,15
- ** DOS - DISPLAY OCTAL DIGITS WITH LEADING ZERO SUPPRESSION.
- *
- * ENTRY (X1) = DIGITS RIGHT-JUSTIFIED.
- * (B4) = NUMBER OF DIGITS TO CONVERT.
- * (B7) = STRING BUFFER POINTER.
- *
- * EXIT DIGITS CONVERTED AND UNPACKED.
- * (B4) UNCHANGED.
- * (B7) UPDATED TO TWO SPACES PAST LAST DIGIT.
- *
- * SAVES X - 5.
- * A - 0, 1, 3, 5, 7.
- * B - 0, 1, 4.
- *
- * CALLS COD, UPS.
- DOS1 AX2 X6,B5 ** LOGICAL SHIFT BY -((B4)*6) **
- SB4 A2-B1 RESTORE B4
- RJ UPS UNPACK TO STRING BUFFER
- DOS SUBR ENTRY/EXIT
- SB2 B4+B4
- MX3 1
- SB2 B2+B4 (B4)*3
- SA2 B4+B1 SAVE B4
- SB3 B2-B1
- SB5 B2+B2 (B4)*6
- AX3 B3 CREATE MASK
- LX3 B2
- SB6 A2+B1 UNPACK (B4) DIGITS + 2 SPACES
- BX1 X3*X1 MASK OFF DIGITS
- RJ COD CONVERT OCTAL DIGITS
- SB5 B5-60
- EQ DOS1 UNPACK CONVERTED DIGITS
- DOT SPACE 4,20
- ** DOT - DUMP ORDINAL TABLE.
- *
- * ENTRY B2 = DUMP PARAMETER BLOCK ADDRESS.
- *
- * PARAMETER BLOCK FORMAT -
- *
- *T WORD0 60/FWA OF DUMP
- *T WORD1 60/LWA+1 OF DUMP
- *T WORD2 60/STARTING ORDINAL
- *T WORD3 60/ORDINAL INCREMENT PER LINE OF TWO WORDS
- *T WORD4 60/FORMAT CONTROL
- * DUMP FILE IS POSITIONED.
- *
- * EXIT INPUT PARAMETER BLOCK NOT UPDATED.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS CTS, FDW, SDI, SRD, SSB.
- *
- * MACROS GETCM, MOVE, PRINT.
- DOT SUBR
- MX6 1
- SX7 B0
- SA6 SRDA PRESET FIRST CALL TO *SRD*
- SA7 SRDC+10 STOP DASHES AFTER 100 CHARACTERS
- MOVE 5,B2,DOTA FETCH PARAMETER BLOCK
- RJ SSB SPACEFILL STRING BUFFER
- DOT1 GETCM BUF,2
- SX1 BUF SET DATA ADDRESS
- SB5 2 WORD COUNT
- RJ SRD SENSE REPEAT DATA
- NZ X1,DOT3 IF REPEAT SENSED
- SA1 DOTA
- LX1 -21
- SB6 7
- SB7 PRBF
- RJ CTS CONVERT ADDRESS
- SB7 B7+4 SPACE FOUR
- SX6 1R+
- SA6 B7 ADD RELATIVE SIGN
- SB7 B7+B1
- SA1 DOTA+2
- LX1 -15
- SB6 5
- RJ CTS CONVERT ORDINAL
- SA1 BUF
- SB2 2
- DOT2 SB7 B7+4 SPACE FOUR
- SA2 DOTA+4 FORMAT CONTROL
- RJ FDW FORMAT DATA WORD
- SA1 A1+B1
- SB2 B2-B1
- NZ B2,DOT2 IF MORE TO DUMP
- SB7 B7+4 SPACE FOUR
- SA2 A1-2
- SB6 20
- RJ SDI SET DISPLAY CODE INTERPRETATION
- PRINT CCCH,B7-CCCH
- DOT3 SA1 DOTA FWA
- SA2 DOTA+2 ORDINAL
- SA3 A2+B1 ORDINAL INCREMENT
- SA4 A1+B1 LWA+1
- SX6 X1+2
- IX7 X2+X3
- SA6 A1 UPDATE FWA
- SA7 DOTA+2 UPDATE ORDINAL
- IX3 X6-X4
- NG X3,DOT1 IF MORE TO DUMP
- SA1 SRDC+1
- BX6 X1
- SA6 SRDC+10 RESET DASHES FOR 136 CHARACTERS
- JP DOTX EXIT
- DOTA BSS 5 DUMP PARAMETER BLOCK
- DPB SPACE 4,20
- ** DPB - DISPLAY PPU BYTE.
- *
- * PRINT THE 16 BIT PPU BYTE AS EITHER FOUR HEX DIGITS OR
- * SIX OCTAL DIGITS. IF THE BYTE IS ZERO, PRINT FOUR DASHES. IF
- * THE BYTE IS LESS THEN 10000B AND IS TO BE DISPLAYED IN OCTAL,
- * SUPPRESS THE UPPER TWO ZEROS.
- *
- * ENTRY (X5) = ZERO IF HEXADECIMAL INTERPRETATION,
- * NON-ZERO IF DECIMAL INTERPRETATION.
- * (X1) = DATA TO DISPLAY.
- * (B7) = POSITION TO DISPLAY INFORMATION.
- *
- * EXIT (B7) = UPDATED DISPLAY INFORMATION POINTER.
- *
- * USES A - 6.
- * B - 6, 7.
- * X - 1, 2, 6.
- *
- * CALLS CTS, HTS.
- DPB SUBR ENTRY/EXIT
- NZ X5,DPB2 IF OCTAL
- SB6 4
- LX1 -16
- RJ HTS DISPLAY 4 HEX DIGITS
- NZ X1,DPBX IF DATA NONZERO
- DPB1 SX6 1R- DISPLAY ---- FOR A ZERO
- SA6 B7-B1
- SA6 A6-B1
- SA6 A6-B1
- SA6 A6-B1
- EQ DPBX RETURN
- DPB2 SB6 6
- LX1 -12
- SX2 X1
- LX1 -6
- NZ X2,DPB3 IF UPPER 4 BITS ARE NONZERO
- LX1 6
- SX6 1R
- SA6 B7
- SA6 B7+B1
- SB7 A6+B1
- SB6 4 DISPLAY 4 OCTAL DIGIT
- DPB3 RJ CTS
- ZR X1,DPB1 IF WORD IS ALL ZERO
- EQ DPBX RETURN
- DPN SPACE 4,10
- ** DPN - DISPLAY PROCEDURE NAME.
- *
- * ENTRY (X1) = ADDRESS OF STACK FRAME.
- * (X6) = EXCHANGE PACKAGE ADDRESS.
- *
- * USES A - 0, 1, 2, 6, 7.
- * X - 1, 2, 3, 5, 6, 7.
- * B - 2, 6, 7.
- *
- * CALLS EVA, FRV, PVM, RMB, SAI, SVA, UPS.
- *
- DPN2 PRINT CCCH,13
- DPN SUBR ENTRY/EXIT
- SA6 DPNA+1 SAVE EXCHANGE PACKAGE ADDRESS
- SX2 4*8+2
- IX6 X1+X2
- SA6 DPNA SAVE STACK FRAME ADDRESS
- SA2 =12HSTACK FRAME
- SB6 12
- SB7 PRBF
- RJ UPS UNPACK STRING
- SA1 DPNA
- RJ FRV FETCH REGISTER VALUE
- NZ X2,DPN2 IF NO REGISTER VALUE, RETURN
- RJ EVA EXPAND VIRTUAL ADDRESS
- ZR X2,DPN2 IF NIL POINTER
- SB2 DPNA
- SX1 8+2
- IX6 X7+X1 OFFSET TO PROCEDURE NAME POINTER
- SA6 B2
- RJ SVA CONVERT TO SVA
- SA2 STSDE FETCH SEGMENT DESCRIPTOR
- MX3 2
- LX2 59-15+4
- BX2 X3*X2
- BX3 X3-X2
- NZ X3,DPN2 IF NOT A BINDING SECTION
- RJ FRV FETCH REGISTER VALUE
- NZ X2,DPN2 IF NO REGISTER VALUE, RETURN
- ZR X6,DPN2 IF NO PVA GIVEN
- RJ EVA EXPAND VIRTUAL ADDRESS
- ZR X2,DPN2 IF NIL POINTER
- SA7 DPNA
- SB2 A7
- RJ SVA CONVERT TO SVA
- SA6 DPNA SAVE CONVERTED SVA
- RJ PVM POSITION VIRTUAL MEMORY
- NZ X2,DPN2 IF NO REGISTER VALUE, RETURN
- SA1 DPNA
- SX6 32/8
- RJ RMB READ MEMORY BYTES
- SA0 BUF
- SX5 32/2
- SA1 A0+B1
- MX2 -8
- BX6 -X2*X1
- SX6 X6-0#24 CHECK FOR *$*
- NZ X6,DPN2 IF NO *$*, RETURN
- SA2 =9HMODULE =
- SB6 9
- SB7 PRBF+12
- RJ UPS UNPACK STRING
- DPN1 SA2 A0
- SA0 A0+B1
- LX2 59-15
- SB6 B1+B1
- RJ SAI SET ASCII INTERPRETATION
- SX5 X5-1
- NZ X5,DPN1 IF MORE TO DECODE
- PRINT CCCH,B7-CCCH
- JP DPNX RETURN
- DPNA CON 0 PVA/SVA
- CON 0 EXCHANGE PACKAGE
- DPO SPACE 4,14
- ** DPO - DUMP PP OVERLAY.
- *
- * ENTRY X3 = ABSOLUTE ADDRESS OF OVERLAY HEADER.
- * X5 = RELATIVE ADDRESS OF OVERLAY HEADER.
- *
- * EXIT X6 = 0 IF ALL OVERLAYS DUMPED.
- * .NE. 0 IF MORE OVERLAYS TO DUMP.
- * X5 = ADDRESS OF NEXT OVERLAY HEADER.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS CTS, DOT, PCM, UPS.
- *
- * MACROS GETCM, PRINT.
- DPO SUBR
- SX0 X3 SAVE ABSOLUTE ADDRESS
- RJ PCM
- GETCM
- ZR X6,DPOX IF FINISHED WITH OVERLAYS
- SA6 DPOA SAVE OVERLAY HEADER
- SX3 X0
- RJ PCM POSITION TO OVERLAY HEADER AGAIN
- PRINT (=2C )
- SA2 DPOA
- SB7 PRBF
- SB6 3
- RJ UPS STORE OVERLAY NAME IN PRINT STRING
- SA2 =14H PP LENGTH =
- SB6 14
- RJ UPS STORE IN PRINT STRING
- SA1 DPOA
- SX3 X1 CM LENGTH
- IX6 X3+X5
- ZR X3,ERR19 IF LENGTH EQUALS ZERO
- SX7 X5+
- SA6 DPOB+1 LWA+1
- SA7 A6-B1 FWA
- AX1 24
- SX6 X1 PP LOAD ADDRESS
- SA6 A6+B1 STARTING ORDINAL
- SX4 5
- IX1 X3*X4 PP LENGTH
- LX1 -12
- SB6 4
- RJ CTS STORE PP LENGTH IN PRINT STRING
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- SB2 DPOB
- RJ DOT DUMP ORDINAL TABLE
- SA5 DPOB+1 ADDRESS OF NEXT OVERLAY HEADER
- SX6 1 INDICATE MORE OVERLAYS TO DUMP
- JP DPOX EXIT
- DPOA BSS 1 OVERLAY HEADER
- DPOB VFD 60/0 FWA
- VFD 60/0 LWA+1
- VFD 60/0 STARTING ORDINAL
- VFD 60/5*2 ORDINAL INCREMENT
- VFD 24/0,18/4,18/5 FORMAT CONTROL
- DPP SPACE 4,12
- ** DPP - DUMP PPU/FLPP IN *P* FORMAT.
- *
- * ENTRY PD = NUMBER OF LINES PER PAGE.
- * DUMP FILE POSITIONED TO CORRECT PPU/FLPP RECORD.
- *
- * USES X - 1, 2, 5, 6.
- * A - 0, 1, 2, 6.
- * B - 6, 7.
- *
- * CALLS CPS, CTS, FOL, RBT, UPS.
- *
- * MACROS PRINT.
- DPP SUBR
- BX6 X6-X6
- SA6 NXBA INITIALIZE *NXB*
- SA6 A6+B1
- ERRNZ NXBB-NXBA-1 CODE REQUIRES CONTIGUOUS LOCATIONS
- SA6 RBTA INITIALIZE BYTE READING ROUTINE
- SA6 FW CLEAR ADDRESS COUNTER
- * FORMAT 2 SIDE BY SIDE BLOCKS.
- DPP1 SX1 10
- RJ CPS CHECK PAGE SPACE
- PRINT (=2C )
- SA2 DPPA
- SB6 121
- SB7 PRBF
- RJ UPS SET HEADER LINE
- SA1 FW ADDRESS COUNTER
- LX1 -9
- SB6 3
- SB7 PRBF+4
- RJ CTS SET ADDRESS IN LEFT BLOCK
- SX1 X1+B1
- LX1 -9
- SB6 3
- SB7 PRBF+68
- RJ CTS SET ADDRESS IN RIGHT BLOCK
- PRINT CCCH,122
- SA0 200B
- RJ RBT READ NEXT 200B BYTES
- SX5 0 ROW COUNTER
- SX6 1R
- SA6 PRBF+4 BLANK OUT ADDRESS CHARACTERS
- SA6 A6+B1
- SA6 A6+B1
- SA6 PRBF+68
- SA6 A6+B1
- SA6 A6+B1
- DPP2 RJ FOL FORMAT ONE LINE
- SX5 X5+1
- SX6 X5-10B
- NG X6,DPP2 IF MORE ROWS TO FORMAT
- PRINT (=2C )
- SA1 FW
- SX6 X1+2
- SA6 A1+ ADVANCE ADDRESS COUNTER
- SA1 PS PP MEMORY SIZE
- AX1 6
- IX6 X6-X1
- NG X6,DPP1 IF MORE TO FORMAT
- EQ DPPX EXIT
- DPPA BSS 0 *P* FORMAT HEADER LINE
- DATA 50H XX 0X 1X 2X 3X 4X 5X 6
- DATA 50HX 7X XX 0X 1X 2X 3X
- DATA 21C 4X 5X 6X 7X
- DPQ SPACE 4,12
- ** DPQ - DUMP PPU/FLPP IN *Q* FORMAT.
- *
- * ENTRY (APPG) = PP DATA IN *PBUF*, IF NONZERO.
- *
- * USES X - 1, 4, 6.
- * A - 0, 4, 6.
- * B - 2, 5, 7.
- *
- * CALLS DTQ, RBT, SRD, SSB.
- *
- * MACROS PRINT.
- DPQ SUBR
- RJ SSB CLEAR PRINT STRING BUFFER
- BX6 X6-X6
- SA6 NXBA INITIALIZE *NXB*
- SA6 A6+B1
- SA6 RBTA INITIALIZE BYTE READING ROUTINE
- SA6 FW CLEAR ADDRESS
- SA4 APPG
- ZR X4,DPQ0 IF DATA IS NOT IN *PBUF*
- SX6 PBUF-1
- SA6 RBTB
- DPQ0 MX6 1
- SA6 SRDA INITIALIZE REPEAT DATA SENSING ROUTINE
- DPQ1 SA0 20B
- RJ RBT READ 20B BYTES
- SB5 20B WORD COUNT
- SX1 BUF DATA ADDRESS
- RJ SRD SENSE REPEAT DATA
- NZ X1,DPQ2 IF REPEAT DATA
- SA4 FW SET ADDRESS
- SB2 BUF BYTE BUFFER ADDRESS
- SB7 PRBF PRINT STRING ADDRESS
- RJ DTQ DUMP TEN BYTES *Q* FORMAT
- SB7 B7+3 SPACE 3
- SX4 X4+10B ADVANCE ADDRESS
- RJ DTQ DUMP NEXT TEN BYTES
- PRINT CCCH,B7-CCCH
- DPQ2 SA1 FW
- SX6 X1+20B ADVANCE ADDRESS
- SA6 A1
- SA1 PS PP MEMORY SIZE
- IX6 X6-X1
- NG X6,DPQ1 IF MORE TO DUMP
- SX6 B0+
- SA6 RBTB
- JP DPQX EXIT
- DRT SPACE 4,10
- ** DRT - DETERMINE RECORD TYPE.
- *
- * ENTRY (X1) = RECORD IDENTIFIER.
- *
- * EXIT (B3) = ADDRESS OF ROUTINE TO PROCESS RECORD.
- *
- * USES X - 0, 2, 3, 4.
- * B - 3, 6.
- * A - 2.
- DRT SUBR ENTRY/EXIT
- MX0 18 SEARCH MASK
- SB6 B0 SEARCH INDEX
- DRT1 SA2 DRTA+B6
- BX3 X2-X1
- BX3 X0*X3
- BX4 X0*X2
- SB6 B6+B1
- SB3 X2
- ZR X4,DRTX IF LAST TABLE ENTRY
- NZ X3,DRT1 IF NO MATCH
- EQ DRTX RETURN
- DRTA VFD 18/3LCCM,24/0,18/CCM
- VFD 18/3LCCR,24/0,18/CCR
- VFD 18/3LPSR,24/0,18/PCS
- VFD 18/3LCM ,24/0,18/CMP
- VFD 18/3LD00,24/0,18/DNN
- VFD 18/3LD01,24/0,18/DNN
- VFD 18/3LD02,24/0,18/DNN
- VFD 18/3LD03,24/0,18/DNN
- VFD 18/3LD04,24/0,18/DNN
- VFD 18/3LD05,24/0,18/DNN
- VFD 18/3LD06,24/0,18/DNN
- VFD 18/3LD07,24/0,18/DNN
- VFD 18/3LD10,24/0,18/DNN
- VFD 18/3LD11,24/0,18/DNN
- VFD 18/3LECS,24/0,18/ECS
- VFD 18/3LEIC,24/0,18/EIC
- VFD 18/3LESM,24/0,18/ESM
- VFD 18/3LIMR,24/0,18/IMR
- VFD 18/3LI00,24/0,18/INN
- VFD 18/3LI01,24/0,18/INN
- VFD 18/3LI02,24/0,18/INN
- VFD 18/3LI03,24/0,18/INN
- VFD 18/3LI04,24/0,18/INN
- VFD 18/3LI05,24/0,18/INN
- VFD 18/3LI06,24/0,18/INN
- VFD 18/3LI07,24/0,18/INN
- VFD 18/3LI10,24/0,18/INN
- VFD 18/3LI11,24/0,18/INN
- VFD 18/3LI20,24/0,18/INN
- VFD 18/3LI21,24/0,18/INN
- VFD 18/3LI22,24/0,18/INN
- VFD 18/3LI23,24/0,18/INN
- VFD 18/3LI24,24/0,18/INN
- VFD 18/3LI25,24/0,18/INN
- VFD 18/3LI26,24/0,18/INN
- VFD 18/3LI27,24/0,18/INN
- VFD 18/3LI30,24/0,18/INN
- VFD 18/3LI31,24/0,18/INN
- VFD 18/3LMMR,24/0,18/MMR
- VFD 18/3LMEM,24/0,18/MEM
- VFD 18/3LPMR,24/0,18/PMR
- VFD 18/3LPRF,24/0,18/PRF
- VFD 18/3LPCS,24/0,18/PCS
- VFD 18/3LPCD,24/0,18/PCS
- VFD 18/3LPSC,24/0,18/PCS
- VFD 18/3LPDC,24/0,18/PCS
- VFD 18/3LPBD,24/0,18/PCS
- VFD 18/3LPIS,24/0,18/PCS
- VFD 18/3LPCM,24/0,18/PCS
- VFD 18/3LPCW,24/0,18/PCS
- VFD 18/3LPOC,24/0,18/PCS
- VFD 18/3LPPM,24/0,18/PCS
- VFD 18/3LPRG,24/0,18/PCS
- VFD 18/3LPRH,24/0,18/PCS
- VFD 18/3LPSM,24/0,18/PCS
- VFD 18/3LPXP,24/0,18/PRX
- VFD 18/3LDSB,24/0,18/PCS
- VFD 18/0#564F4C/1S6,24/0,18/VOL
- VFD 18/0,24/0,18/OTH
- DSM SPACE 4,20
- ** DSM - DUMP SIXTY-FOUR BIT MEMORY.
- *
- * ENTRY (B2) = ADDRESS OF PARAMETER LIST.
- * (B2+0) = FWA OF DUMP.
- * (B2+1) = LWA OF DUMP.
- * (B2+2) = DUMP FORMAT.
- * 0 = I TYPE FORMAT.
- * 2 = W TYPE FORMAT.
- *
- * USES X - ALL.
- * A - 0, 1, 2, 3, 4, 6, 7.
- * B - 2, 4, 5, 6, 7.
- *
- * CALLS CPC, FBB, HTS, ISM, NXB, PBB, SAI, SFP, SRD, SSB.
- *
- * MACROS MOVE, PRINT.
- DSM SUBR ENTRY/EXIT
- MOVE 3,B2,DSMB
- RJ SSB SPACE FILL BUFFER
- SA1 DSMB
- SA2 A1+B1 COMPARE ADDRESSES
- IX7 X1-X2
- PL X7,ERR6 IF LWA .LE. FWA
- BX6 X1
- AX6 32 POSITION ASID
- SA3 XB
- ZR X6,DSM1 IF NO ASID SPECIFIED
- SB4 X6
- NE B4,B1,DSM2 IF ASID .NE. 1
- MX7 -32
- BX6 -X7*X1 CLEAR ASID
- BX7 -X7*X2
- SA6 A1 UPDATE FWA OF DUMP
- SA7 A2
- BX6 X3 FORCE RELATIVE *EI* ADDRESSING
- SX1 B0
- SA6 EI
- DSM1 SB2 DSMB SET PARAMETER BLOCK ADDRESS
- IX1 X1-X3
- BX7 X3
- NG X1,DSM2 IF FWA BELOW MEMORY BOUNDS
- SA7 AO
- DSM2 RJ ISM INITIALIZE FOR 64-BIT DUMP
- MX6 1
- SA6 SRDA SET INITIAL CALL TO *SRD*
- SA3 B2+B1
- SA4 A3+B1 FETCH DUMP TYPE
- SA2 B2
- ZR X4,DSM3 IF I-TYPE DUMP
- MX1 -5
- BX2 X1*X2
- BX6 X2
- SA6 A2 ROUND DOWN TO 32 BYTE BLOCK
- DSM3 BX6 X2
- AX6 32
- NZ X6,DSM4 IF ASID SPECIFIED
- SA4 XL
- IX4 X4-X3
- BX1 X4
- AX1 60
- BX4 X1*X4
- IX6 X3+X4 SET ACTUAL MEMORY SIZE IF LWA TOO LARGE
- SA6 A3
- IX6 X6-X2
- NG X6,ERR19.1 IF FWA BEYOND ACTUAL MEMORY SIZE
- DSM4 ZR X6,DSMX IF NO MEMORY TO DUMP
- RJ SFP SEARCH FOR STARTING PAGE
- PL X3,DSMX IF NO MEMORY TO DUMP
- SA1 DSMB+2 DUMP TYPE
- AX1 1
- SB2 X1
- NZ B2,DSM6 IF W-TYPE DUMP
- * PROCESS I TYPE DUMP.
- DSM5 SB2 DSMB PARAMETER BLOCK
- RJ FBB FILL BYTE BUFFER
- SB2 DSMB PARAMETER BLOCK
- RJ PBB PRINT BYTE BUFFER
- SA1 DSMB
- SA2 A1+B1
- IX6 X1-X2
- PL X6,DSMX IF NO MORE TO DUMP
- SB2 DSMB
- RJ CPC CHECK PAGE CHANGE
- NG X3,DSM5 IF VALID PAGE
- RJ SFP SEARCH FOR PAGE
- NG X3,DSM5 IF PAGE FOUND
- JP DSMX RETURN
- * PROCESS W TYPE DUMP.
- DSM6 SA0 0
- SX5 -8
- DSM7 RJ NXB GET NEXT BYTE
- BX0 X1
- LX0 16
- RJ NXB
- BX6 X0+X1
- SA6 A0+BUF
- SX5 X5+B1
- SA1 DSMB INCREMENT BYTE ADDRESS
- SX2 4
- SA0 A0+B1 ADVANCE BUFFER POINTER
- IX6 X2+X1
- SA6 A1
- NG X5,DSM7 IF MORE BYTES TO COLLECT
- SB5 8
- SX1 BUF
- RJ SRD SENSE FOR REPEATED DATA
- NZ X1,DSM9 IF REPEAT DATA
- SA1 DSMB
- SX2 32
- IX1 X1-X2
- LX1 -8*4
- SB6 8
- SB7 PRBF STRING POSITION FOR ADDRESS
- RJ HTS DISPLAY HEX ADDRESS
- SA1 BUF
- SB5 PRBF+80
- SB4 4
- SB7 B7+2
- DSM8 LX1 28
- SB6 8
- RJ HTS DISPLAY FIRST HALF OF WORD
- SA1 A1+B1
- LX1 28
- SB6 8
- RJ HTS DISPLAY SECOND HALF OF WORD
- SB2 B7+2
- SB7 B5
- SB5 B2
- SA2 A1-B1 PRINT ASCII REPRESENTATION OF THE WORD
- SB6 4
- LX2 28
- RJ SAI SET ASCII INTERPRETATION
- SA2 A2+B1
- SB6 4
- LX2 28
- RJ SAI SET ASCII INTERPRETATION
- SB2 B7
- SB7 B5
- SB5 B2+B1
- SB4 B4-B1
- SA1 A2+B1
- NZ B4,DSM8 IF LINE NOT COMPLETE
- PRINT CCCH,B5-CCCH-1
- DSM9 SA1 DSMB
- SA2 A1+B1
- IX3 X1-X2
- PL X3,DSMX IF NO MORE LINES TO FORMAT
- SB2 DSMB
- RJ CPC CHECK PAGE CHANGE
- NG X3,DSM6 IF PAGE PRESENT
- RJ SFP SEARCH FOR PAGE
- PL X3,DSMX IF NO MORE PAGES PRESENT
- SX6 -1
- SA6 SRDA RESET SRD
- EQ DSM6 CONTINUE DUMP
- DSMB CON 0 FWA OF DUMP
- DATA 0 LWA OF DUMP
- DATA 0 DUMP FORMAT
- DSP SPACE 4,25
- ** DSP - DUMP 16-BIT PP.
- *
- * ENTRY PBUF = ENTIRE PP IMAGE.
- * (X1) = FWA TO DUMP.
- * (A1) = ADDRESS OF PARAMETER LIST AS FOLLOWS -
- * WORD 0 = FWA TO DUMP.
- * WORD 1 = LWA+1 TO DUMP.
- * WORD 2 = 0 IF NOT R-REGISTER DUMP.
- * NONZERO IF R-REGISTER DUMP.
- * WORD 3 = DUMP FORMAT CODE.
- * 0 = OCTAL BLOCK.
- * 1 = HEX BLOCK.
- * 2 = OCTAL LINE DISPLAY INTERPRETATION.
- * 3 = OCTAL LINE ASCII INTERPRETATION.
- * 4 = HEX LINE DISPLAY INTERPRETATION.
- * 5 = HEX LINE ASCII INTERPRETATION.
- *
- * USES X - 0, 1, 2, 3, 4, 5, 6.
- * A - 1, 2, 3, 4, 5, 6.
- * B - 2, 6, 7.
- *
- * CALLS CTS, GRV, HTS, IOQ, IPO, IPX, SSB, UPS.
- *
- * MACROS MOVE, PRINT.
- DSP SUBR ENTRY/EXIT
- SB2 A1
- MOVE 4,B2,DSPB COPY PARAMETER BLOCK
- SA2 DSPB+1 LWA OF DUMP
- SA4 K4 CONTROLLER TYPE
- SA3 X4+/DIRECT/TCTP
- MX0 -18
- AX3 18
- BX3 -X0*X3
- IX1 X3-X2
- BX3 X1
- AX1 60
- BX3 X1*X3
- IX6 X2+X3 LWA IS .LE. 20000B
- SA6 A2
- SA1 A2-B1 FWA OF DUMP
- IX6 X1-X6
- PL X6,ERR6 IF LWA .LT. FWA
- SA1 DSPB+3 DUMP FORMAT
- SA5 X1+DSPD CORRESPONDING ASCII/DISPLAY HEX/OCTAL FLAGS
- SA2 TF
- SX6 8 BYTES PER LINE FOR A PRINTER FILE
- ZR X2,DSP1 IF NOT A TERMINAL FILE
- SX6 4 BYTES PER LINE FOR TERMINAL
- DSP1 SA6 DSPC SET BYTES PER LINE
- BX6 X5
- SA6 A6+B1 SAVE ASCII/DISPLAY, HEX/OCTAL FLAGS
- SA1 A1-B1
- ZR X1,DSP5 IF NOT TO DISPLAY THE R REGISTER
- RJ SSB
- SB7 PRBF
- SA2 =C* R REGISTER = *
- SB6 14
- RJ UPS UNPACK STRING
- RJ GRV GET R-REGISTER VALUE
- NZ X5,DSP3 IF OCTAL DISPLAY
- SB6 6 DISPLAY 6 HEX DIGITS
- RJ HTS
- EQ DSP4 PRINT REGISTER
- DSP3 SB6 8 DISPLAY 8 OCTAL DIGITS
- RJ CTS
- DSP4 PRINT CCCH,B7-CCCH * R REGISTER = NNNNNN*
- DSP5 RJ SSB
- SA1 DSPB+3 DUMP FORMAT
- SB2 X1
- ZR B2,IPO IF IOU DUMP IN OCTAL BLOCK
- EQ B2,B1,IPX IF IOU DUMP IN HEX BLOCK
- MX6 1 INITIALIZE *SRD*
- SA6 SRDA
- RJ IOQ DISPLAY IOU IN LINE FORMAT
- EQ DSPX RETURN
- DSPB BSS 4
- DSPC DATA 0 BYTES PER LINE (IOQ)
- DATA 0 OCTAL/HEX, ASCII/DISPLAY FLAG
- DSPD CON 1 OCTAL FORMAT
- CON 0 HEX FORMAT
- CON -1 OCTAL AND DISPLAY
- CON 1 OCTAL AND ASCII
- CON -0 HEX AND DISPLAY
- CON 0 HEX AND ASCII
- DSS SPACE 4,18
- ** DSS - DUMP SUB-SYSTEM.
- *
- * ENTRY (X5) = FIRST ENTRY IN PARAMETER BLOCK.
- * (A5) = PARAMETER BLOCK ADDRESS.
- *T 60/ DEFAULT LIST OPTIONS
- *T 36/ ,6/ OPT,18/ PROCESSOR ADD
- *T 36/ ,6/ OPT,18/ PROCESSOR ADD
- * . . .
- * . . .
- * . . .
- *T 60/ ZERO WORD TERMINATES BLOCK
- * (CH) = DIRECTIVE STRING POINTER.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 0, 1, 2, 6, 7.
- * B - 2.
- *
- * CALLS ASN, SNO, LIST OPTION PROCESSORS.
- DSS SUBR
- BX6 X5 PRESET DEFAULT
- SA1 CH
- SA2 X1
- SX3 X2-1R.
- ZR X3,DSS1 IF TERMINATOR ALREADY DETECTED
- RJ ASN ASSEMBLE LIST OPTIONS
- SA1 CH
- SA1 X1
- SX2 X1-1R.
- NZ X2,ERR6 IF NOT END OF DIRECTIVE
- DSS1 SA6 DSSA
- SX7 A5+1
- SA7 DSSB
- DSS2 SA2 DSSB
- SB2 X2+
- SA1 DSSA
- RJ SNO SELECT NEXT LIST OPTION
- ZR X3,DSSX IF NO MORE LIST OPTIONS SELECTED
- SA0 DSS2 SET RETURN ADDRESS
- JP B3 EXECUTE SELECTED PROCESSOR
- DSSA BSS 1 OPTIONS TO PROCESS
- DSSB BSS 1 PROCESSOR TABLE ADDRESS
- DST SPACE 4,15
- ** DST - DUMP STAGING TABLE.
- *
- * ENTRY (X6) = (FWA).
- * (X7) = (LWA+1).
- *
- * EXIT TABLE DUMPED.
- *
- * USES X - 1, 2, 3, 4, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2.
- *
- * CALLS DOT, PCM.
- DST SUBR ENTRY/EXIT
- IX4 X7-X6
- NG X4,DSTX IF (LWA+1) .LT. (FWA)
- NZ X4,DST1 IF (LWA+1) .NE. (FWA)
- SX7 X7+1
- DST1 SA6 DSTA
- SA7 A6+1
- SA1 A6
- SA2 RC
- IX3 X1+X2
- RJ PCM POSITION TO TABLE
- SB2 DSTA
- RJ DOT DUMP ORDINAL TABLE
- EQ DSTX RETURN
- DSTA VFD 60/0 FWA
- VFD 60/0 LWA+1
- VFD 60/0 STARTING ORDINAL
- VFD 60/2 ORDINAL INCREMENT
- VFD 24/0,18/4,18/5 FORMAT CONTROL
- DTB SPACE 4,20
- ** DTB - DUMP TABLE.
- *
- * ENTRY (X4) = 0, IF READ FROM DUMP FILE.
- * = DATA ADDRESS, IF READ FROM CORE.
- * (X5) = TABLE DESCRIPTION ADDRESS.
- * (X6) = FWA OF TABLE.
- * (X7) = LWA+1 OF TABLE.
- * (B3) .GE. 0, IF FORMAT CODE.
- * = -1, IF NOT FIRST TABLE.
- *
- * EXIT (CPRA - CPRA+7) SET.
- *
- * USES X - 6, 7.
- * A - 6, 7.
- * B - 2.
- *
- * CALLS LDC, PMD, POM, SCM, SRA.
- *
- * MACROS PRINT.
- DTB SUBR ENTRY/EXIT
- SA6 CPRA SET FWA OF TABLE
- SA7 CPRA+1 SET LWA+1 OF TABLE
- SX6 X4+ SET DUMP DATA LOCATION
- SA6 CPRA+2
- NG B3,DTB1 IF NOT FIRST TABLE
- RJ SCM SET CENTRAL MEMORY
- SX6 B3 SET FORMAT CODE
- SA6 CPRA+4
- BX6 X6-X6
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE CARD
- DTB1 PRINT (=2C )
- PRINT X5 PRINT TABLE DESCRIPTION
- PRINT (=2C )
- SB2 CPRA SET FWA OF TABLE
- RJ POM POSITION DUMP FILE
- SB2 CPRA RESET FWA OF TABLE
- RJ PMD PROCESS MEMORY DUMP
- EQ DTBX RETURN
- DTC SPACE 4,12
- ** DTC - DUMP IAF COMMAND TABLE.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (RC) = CONTROL POINT REFERENCE ADDRESS.
- *
- * USES X - 1, 2, 3, 4, 5, 6, 7.
- * A - 1, 2, 5, 6.
- * B - 2, 6, 7.
- *
- * CALLS CPS, CTS, PCM, PCW, SSB, UPS.
- *
- * MACROS GETCM, PRINT.
- DTC PRINT (=2C )
- PRINT (=C* IAF COMMAND TABLE*)
- PRINT (=2C )
- SA1 SSBF+/REM/VCTP
- SX7 X1 LWA+1
- AX1 24
- SX6 X1 FWA
- IX5 X7-X6
- NG X5,DTC2 IF (LWA+1) .LT. (FWA)
- SA6 DTCA SAVE FWA OF FIRST COMMAND
- SX4 X6
- AX5 1 NUMBER OF COMMANDS
- SA1 RC
- IX3 X1+X4
- RJ PCM POSITION TO FIRST COMMAND
- SX1 3
- RJ CPS CHECK PAGE SPACE
- PRINT DTCB SET HEADER LINE 1
- PRINT DTCC SET HEADER LINE 2
- PRINT (=2C )
- DTC1 SX5 X5-1
- NG X5,DTC3 IF ALL COMMANDS DUMPED
- GETCM BUF,2
- RJ SSB CLEAR PRINT STRING
- * SET ADDRESS OF COMMAND.
- SA1 DTCA
- LX1 -21
- SB6 7
- SB7 PRBF
- RJ CTS
- * SET COMMAND.
- SA2 BUF
- SB6 7
- SB7 PRBF+12
- RJ UPS
- * SET PROCESSOR ADDRESS.
- BX1 X2
- SB6 6
- SB7 PRBF+25
- RJ CTS
- * SET FLAGS.
- SA1 BUF+1
- SB6 2
- SB7 PRBF+39
- RJ CTS
- * SET NUMBER OF PARAMETERS.
- SB6 2
- SB7 PRBF+52
- RJ CTS
- * SET SUBSYSTEMS.
- SB6 6
- SB7 PRBF+64
- LX1 12
- RJ CTS
- * SET OCCURENCES.
- SB6 6
- SB7 PRBF+79
- RJ CTS
- PRINT CCCH,B7-CCCH
- SA1 DTCA
- SX6 X1+2
- SA6 A1 UPDATE ADDRESS OF COMMAND
- JP DTC1
- DTC2 SA5 DTCD
- RJ PCW PRINT CONTENTS OF *VCTP* WORD
- DTC3 SB2 A0
- JP B2 RETURN
- DTCA BSS 1 ADDRESS OF COMMAND
- DTCB BSS 0 HEADER LINE 1
- DATA 50H COMMAND PROCESSOR FLAGS N
- DATA 39CUMBER OF SUBSYSTEMS OCCURENCES
- DTCC BSS 0 HEADER LINE 2
- DATA 50H ADDRESS P
- DATA 9CARAMETERS
- DTCD VFD 36/6L*VCTP*,6/0,18//REM/VCTP
- DATA 40HIAF COMMAND TABLE FWA, LWA+1
- VFD 60/0
- DTE SPACE 4,9
- ** DTE - DUMP IAF REENTRY TABLE.
- *
- * ENTRY A0 = RETURN ADDRESS.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS DOT, PCM, PCW.
- *
- * MACROS PRINT.
- DTE PRINT (=2C )
- PRINT (=C* IAF REENTRY TABLE*)
- PRINT (=2C )
- SA1 SSBF+/REM/VRAP
- SX7 X1 LWA+1
- AX1 24
- SX3 X1 FWA
- IX4 X7-X3
- NG X4,DTE2 IF (LWA+1) .LT. (FWA)
- SX6 X3+B1 START WITH FWA+1 - 1ST TERMINAL NOT NEEDED
- IX4 X7-X6
- NG X4,DTE3 IF NOTHING TO DUMP
- NZ X4,DTE1 IF (LWA+1) .GT. NEW FWA
- SX7 X7+1
- DTE1 SA6 DTEA
- SA7 DTEA+1
- SA1 DTEA
- SA2 RC
- IX3 X1+X2
- RJ PCM POSITION TO REENTRY TABLE
- SB2 DTEA
- RJ DOT DUMP ORDINAL TABLE
- JP DTE3
- DTE2 SA5 DTEB
- RJ PCW PRINT CONTENTS OF *VRAP* WORD
- DTE3 SB2 A0
- JP B2 RETURN
- DTEA VFD 60/0 FWA
- VFD 60/0 LWA+1
- VFD 60/1 STARTING ORDINAL
- VFD 60/2 ORDINAL INCREMENT
- VFD 24/0,18/4,18/5 FORMAT CONTROL
- DTEB VFD 36/6L*VRAP*,6/0,18//REM/VRAP PARAMETER LIST FOR PCW
- DATA 40HIAF REENTRY TABLE FWA, LWA+1
- VFD 60/0
- DTI SPACE 4,15
- ** DTI - DUMP TABLE WITH INTERPRETATION.
- *
- * ENTRY (B2) = TABLE POINTER.
- * (X3) = SUBTITLE. MUST BE IN FORM *TBL 0000 *.
- * (X5) = TABLE HEADER POINTER.
- * (X6) = DESCRIPTOR TABLE POINTER.
- * (X7) = TABLE ENTRY LENGTH.
- *
- * SAVES X - NONE.
- * A - 0, 5.
- * B - NONE.
- *
- * CALLS CEP, COD, GTD, LDC, POM, SCM, SRA, UPS.
- *
- * MACROS GETCM, PRINT.
- DTI SUBR ENTRY/EXIT
- SA6 DTIB SAVE DESCRIPTOR TABLE POINTER
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- SA7 DTIA SAVE ENTRY LENGTH
- SA1 F.TCMT GET POINTER WORD
- SA1 X1+B2
- LX1 24
- SX6 X1 SAVE TABLE FWA
- LX1 12
- SA6 FW
- MX0 -12
- BX6 -X0*X1 LAST ORDINAL + 1
- SA6 CPRA+1
- RJ SCM SET CENTRAL MEMORY
- BX6 X3 RESET SUBTITLE
- SA6 SBTL1
- SX6 0
- RJ SRA SET REFERENCE ADDRESS
- RJ LDC LIST DIRECTIVE
- SB2 FW
- RJ POM POSITION TO FWA
- SA1 FW
- SA2 DTIA INITIALIZE ENTRY FWA FOR SEARCH
- SX6 -B1
- SA6 CPRA INITIALIZE ORDINAL
- IX7 X1-X2
- SA7 A1
- PRINT X5 PRINT HEADER
- DTI1 SA1 CPRA INCREMENT ORDINAL
- SX7 X1+B1
- SA7 A1
- SA1 A1+B1
- IX1 X1-X7
- ZR X1,DTIX IF ENTIRE TABLE SCANNED
- SA1 FW INCREMENT ENTRY FWA
- SA2 DTIA
- IX6 X1+X2
- SA6 A1
- GETCM BUF,X2 READ NEXT ENTRY
- SA1 BUF
- AX1 12
- ZR X1,DTI1 IF UNUSED ENTRY
- SA1 CPRA RESET SUBTITLE TABLE ORDINAL
- SX1 X1+10000B GUARANTEE LEADING ZEROS
- RJ COD
- LX4 6-1 DISCARD LEADING DIGIT
- AX4 24-1
- SA1 SBTL1
- AX1 36
- LX1 36
- BX6 X1+X4
- SA6 A1
- BX2 X6 DISPLAY ORDINAL
- SB6 8
- SB7 PRBF
- RJ UPS
- PRINT (=2C )
- PRINT CCCH,9
- SA1 FW
- BX1 -X1
- SB2 X1+BUF
- SA1 DTIB GET DESCRIPTOR TABLE POINTER
- SA1 X1
- RJ GTD GENERATE DETAILED TABLE DUMP
- EQ DTI1 CHECK NEXT ENTRY
- DTIA CON 0 ENTRY LENGTH
- DTIB CON 0 FWA OF DESCRIPTOR TABLE
- DTL SPACE 4,10
- ** DTL - DUMP IAF POT LINK TABLE AND POTS.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- *
- * USES X - 1, 2, 3, 5, 6, 7.
- * A - 1, 2, 3, 5, 6, 7.
- * B - 2, 5, 6, 7.
- *
- * CALLS CTS, FDW, GFL, LDC, PCM, PMD, SCM, SRA, SRD, SSB, UPS.
- *
- * MACROS GETCM, PRINT.
- DTL BSS 0 ENTRY
- RJ SCM SET CENTRAL MEMORY
- SX1 CPAS GET IAF FL, RA
- RJ GFL
- SA7 DTLA SAVE LWA+1 OF IAF FIELD LENGTH
- RJ SRA SET IAF CONTROL POINT RA
- RJ SSB CLEAR PRINT STRING BUFFER
- RJ LDC FORCE PAGE EJECT
- * DUMP POT LINK TABLE.
- PRINT (=2C )
- PRINT (=C* POT LINK TABLE*)
- PRINT (=2C )
- MX6 1 PRESET FIRST CALL TO *SRD*
- SA6 SRDA
- SX6 B0
- SA6 DTLB CLEAR PLT LINK ORDINAL
- SA6 SRDC+4 SET DASHED LINE TO 40 CHARACTERS
- SA5 SSBF+/REM/VPLP GET PLT POINTER WORD
- SA2 RC GET IAF REFERENCE ADDRESS
- SX6 X5 SAVE LWA+1 PLT
- SA6 LW
- AX5 24 SAVE FWA PLT
- SX6 X5
- SA6 FW
- SX3 X5
- IX3 X2+X3
- AX5 24
- RJ PCM READ PLT INTO CORE
- GETCM BUF,X5
- DTL1 SA1 DTLB CHECK FOR REPEATED DATA
- SX1 X1+BUF
- SB5 1
- RJ SRD
- NZ X1,DTL2 IF REPEAT SENSED
- SB6 6 FORMAT PLT WORD ADDRESS
- SB7 PRBF
- SA1 FW
- LX1 -18
- RJ CTS
- SB7 B7+B1 FORMAT PLT LINK ORDINAL
- SX6 1R+
- SA6 B7
- SB7 B7+B1
- SA1 DTLB
- LX1 -10
- SB6 4
- RJ CTS
- SB7 B7+2 FORMAT PLT WORD
- SA2 =4000005B
- AX1 2
- SA1 X1+BUF
- RJ FDW
- PRINT CCCH,B7-CCCH
- DTL2 SA1 DTLB INCREMENT PLT INDEX
- SX7 X1+B1
- SA7 A1
- SA1 FW INCREMENT PLT WORD ADDRESS
- SX6 X1+1
- SA6 A1
- SA1 LW CHECK IF ALL OF PLT DUMPED
- IX7 X6-X1
- NG X7,DTL1 IF MORE TO DUMP
- SA1 SRDC+3 RESET DASHED LINE TO 136 CHARACTERS
- BX6 X1
- SA6 A1+B1
- * DUMP POTS IN *E* FORMAT.
- PRINT (=2C )
- PRINT (=C* POTS*)
- PRINT (=2C )
- SA3 SSBF+/REM/VBMP GET POT STORAGE FWA
- SA2 RC GET IAF REFERENCE ADDRESS
- SX6 X3
- SA6 CPRA+1
- IX3 X2+X3
- RJ PCM POSITION TO POT STORAGE
- SX6 2
- SA6 CPRA+3 SET NO SUPPRESSION OF REPEATED DATA
- SA6 A6+B1 SET *E* FORMAT
- SX6 B0
- SA6 CPRA+5 COMPUTE COLUMN LENGTH
- SA6 CPRA+6 SET NO INVERTED ADDRESS
- SA6 CPRA+2 SET TO DUMP FROM DUMP FILE
- SX6 -1
- SA6 DTLB PRESET POT NUMBER
- DTL3 SB7 PRBF PRINT POT NUMBER
- SA2 =4LPOT
- SB6 4
- RJ UPS
- SB6 4
- SA1 DTLB INCREMENT POT NUMBER
- SX6 X1+B1
- SA6 A1
- SX1 X6
- LX1 -12
- RJ CTS
- PRINT CCCH,B7-CCCH
- SA1 CPRA+1 SET POT FWA
- SX7 X1
- SA7 A1-B1
- SX6 X1+8 SET POT LWA+1
- SA6 A1
- SB2 A7
- RJ PMD PROCESS MEMORY DUMP
- SA2 DTLA LWA+1 OF IAF FL
- SA1 CPRA+1 LWA+1 OF LAST DUMPED POT
- IX5 X1-X2
- ZR X5,DTL4 IF ALL POTS DUMPED
- NG X5,DTL3 IF MORE TO DUMP
- PRINT (=2C )
- SB7 PRBF
- SB6 49
- SA2 =49L*********WARNING - LAST POT OVERFLOWS IAF FL BY
- RJ UPS
- SB6 1 PRINT POT OVERFLOW
- SX1 X5
- LX1 -3
- RJ CTS
- SA2 =5LWORDS
- SB6 5
- SB7 B7+B1
- RJ UPS
- DTL4 SB2 A0
- JP B2 RETURN
- DTLA BSS 1 LWA+1 OF POT MEMORY (LWA+1 IAF FL)
- DTLB BSS 1 PLT INDEX AND LINK ORDINAL/POT NUMBER
- DTP SPACE 4,7
- ** DTP - DUMP IAF PPUS.
- *
- * ENTRY A0 = RETURN ADDRESS.
- *
- * USES ALL REGISTERS.
- *
- * CALLS ASP.
- DTP SX6 DTPA
- JP ASP
- DTPA VFD 18/3LTLX,42/0
- VFD 18/3L1TA,42/0
- VFD 18/3L1TN,42/0
- VFD 18/3L1TO,42/0
- VFD 18/3L1RO,6/0,1/1,18/0,5/TXOT,12/0
- VFD 18/3L1RI,6/0,1/1,18/0,5/TXOT,12/0
- VFD 60/-1 END OF PARAMETER BLOCK
- DTQ SPACE 4,13
- ** DTQ - DUMP TEN BYTES IN *Q* FORMAT.
- *
- * ENTRY B2 = BYTE BUFFER ADDRESS.
- * B7 = PRINT STRING ADDRESS.
- * X4 = CURRENT PPU ADDRESS.
- *
- * EXIT B2 AND B7 ARE UPDATED.
- *
- * SAVES X - 3,4,5.
- * B - NONE.
- * A - 0,3,4,5.
- *
- * CALLS CTS,UPS.
- DTQ SUBR
- BX1 X4
- LX1 -15
- SB6 5
- RJ CTS CONVERT ADDRESS
- SB7 B7+2 SPACE 2
- SB4 10B BYTE COUNTER
- DTQ1 SA1 B2+ READ BYTE
- SB6 4
- NZ X1,DTQ2 IF NOT A ZERO BYTE
- SA2 =4L----
- RJ UPS STORE ZERO INDICATOR
- JP DTQ3
- DTQ2 RJ CTS CONVERT BYTE
- DTQ3 SB7 B7+B1
- SB2 B2+B1
- SB4 B4-1 COUNT BYTE
- NZ B4,DTQ1 IF MORE TO DUMP
- * SET INTERPRETATION.
- SB5 B2
- MX0 -6
- SB2 B2-10B
- SB7 B7+1
- DTQ4 SA1 B2+
- SB3 2
- DTQ5 LX1 6
- BX6 -X0*X1
- ZR X6,DTQ6 IF COLON
- SX7 X6-60B
- NG X7,DTQ7 IF NOT A PRINTER SLOWER DOWNER
- DTQ6 SX6 1R
- DTQ7 SA6 B7 STORE CHARACTER
- SB7 B7+B1
- SB3 B3-1
- NZ B3,DTQ5 IF ONE MORE CHARACTER
- SB2 B2+1
- LT B2,B5,DTQ4 IF MORE TO INTERPRET
- JP DTQX EXIT
- DTT SPACE 4,10
- ** DTT - DUMP IAF TERMINAL TABLES.
- *
- * ENTRY (A0) = RETURN ADDRESS.
- * (RC) = CONTROL POINT REFERENCE ADDRESS.
- * (TFMT) = MESSAGE STATUS TABLE FORMAT POINTERS.
- * (TFTT) = TERMINAL TABLE FORMAT POINTERS.
- *
- * USES X - ALL.
- * A - 1, 2, 5, 6, 7.
- * B - 2, 6, 7.
- *
- * CALLS CTS, GTD, PCM, PCW, UPS.
- *
- * MACROS ALLOC, GETCM, PRINT.
- DTT SX6 A0 SAVE RETURN ADDRESS
- SA6 DTTF
- PRINT (=2C )
- PRINT (=C* IAF TERMINAL TABLES*)
- * READ MESSAGE STATUS TABLE INTO CORE.
- SA2 RC GET FWA MSG STATUS TABLE
- SA1 SSBF+/REM/VMST
- AX1 24
- IX3 X1+X2
- SA5 SSBF+/REM/VNTP GET FWA NETWORK ENTRIES
- SB2 24D
- AX0 X5,B2
- SX6 X3+ PRESET FWA NETWORK ENTRIES
- SA6 DTTE+1
- SX6 X6-1
- SA6 A6-B1
- RJ PCM POSITION TO FIRST MST NETWORK ENTRY
- IX2 X5-X0 SET NETWORK TERMINAL TABLE ENTRY COUNT
- SX2 X2+B1
- GETCM BUF+/REM/VTTL,X2
- * INITIALIZE DUMP OF TERMINAL TABLES.
- SA1 SSBF+/REM/VTTP
- SX2 X1 LWA+1
- AX1 24
- SX6 X1 FWA
- IX4 X2-X6
- NG X4,DTT2 IF (LWA+1) .LT. (FWA)
- SX6 X6-/REM/VTTL
- SA6 DTTA PRESET FWA OF FIRST TABLE
- SX5 /REM/VTTL
- IX7 X4/X5
- SX6 -1
- SA7 DTTB TOTAL TERMINAL TABLES TO DUMP
- SA6 DTTC PRESET TERMINAL NUMBER
- SA2 RC
- IX3 X1+X2
- RJ PCM POSITION TO FIRST TERMINAL TABLE
- * DUMP ONLY THOSE TERMINAL TABLES WITH IMPORTANT INFORMATION.
- DTT1 SA2 DTTC UPDATE TERMINAL NUMBER
- SX6 X2+1
- SA6 A2
- SA1 DTTB
- IX3 X6-X1
- ZR X3,DTT3 IF ALL TABLES DUMPED
- SA1 DTTA SET NEXT TERMINAL FWA
- SX6 X1+/REM/VTTL
- SA6 DTTA
- SA1 DTTE INCREMENT MSG STATUS TABLE INDEX
- SX6 X1+B1
- SA6 A1
- GETCM BUF,/REM/VTTL READ TERMINAL TABLE
- SB7 /REM/VTTL CHECK FOR EMPTY TERMINAL TABLE
- SB6 -1
- DTT1.1 SB6 B6+1
- EQ B6,B7,DTT1 IF EMPTY TABLE FOUND
- SA1 BUF+B6 READ TABLE ENTRY
- SB2 B6-/REM/VROT
- NZ B2,DTT1.2 IF NOT STATUS WORD
- SX1 X1-1 ALLOW FOR STATUS BIT
- DTT1.2 ZR X1,DTT1.1 IF ONLY STATUS BIT SET
- PRINT (=2C )
- SB7 PRBF
- SA2 =5HTERM
- SB6 5
- RJ UPS STORE IN PRINT STRING
- SB6 4
- SA1 DTTC
- LX1 -12
- RJ CTS CONVERT TERMINAL NUMBER
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- SA1 DTTA
- BX6 X1
- BX2 -X1
- SB2 X2+BUF SET CORE ADDRESS OF TABLE DATA
- SA6 FW SET PRINT ADDRESS
- SA1 TFTT FORMAT TABLE POINTERS
- RJ GTD GENERATE DETAILED TABLE DUMP
- * DUMP MESSAGE STATUS TABLE ENTRY, IF NETWORK TERMINAL TABLE.
- SA1 SSBF+/REM/VNTP GET FIRST NETWORK TERMINAL NUMBER
- SA2 DTTC
- AX1 24
- SX1 X1+
- IX1 X2-X1
- NG X1,DTT1 IF MUX TERMINAL TABLE
- PRINT (=2C )
- SA1 DTTE SET MSG STATUS TABLE ENTRY ADDRESS
- SX6 X1+
- SA6 FW
- SX1 BUF+/REM/VTTL SET CORE ADDRESS OF TABLE DATA
- SA2 DTTE+1
- IX1 X1-X2
- SB2 X1+
- SA1 TFMT SET NETWORK FORMAT TABLE POINTERS
- RJ GTD GENERATE DETAILED DUMP OF MST WORD
- EQ DTT1 DUMP NEXT TERMINAL TABLE
- * PRINT TERMINAL TABLE BOUNDARY ADDRESSES, IF NO TABLES FOUND.
- DTT2 SA5 DTTD
- RJ PCW PRINT CONTENTS OF *VTTP* WORD
- DTT3 SA1 DTTF RESTORE RETURN ADDRESS
- SB2 X1+
- JP B2 RETURN
- DTTA BSS 1 FWA OF TERMINAL TABLE
- DTTB BSS 1 NUMBER OF TERMINALS TO DUMP
- DTTC BSS 1 NUMBER OF TERMINALS DUMPED
- DTTD VFD 36/6L*VTTP*,6/0,18//REM/VTTP PARAMETER LIST FOR PCW
- DATA 40HIAF TERMINAL TABLE FWA, LWA+1
- VFD 60/0
- DTTE BSS 1 MSG STATUS TABLE ENTRY ADDRESS
- BSS 1 FWA MSG STATUS TABLE
- DTTF BSS 1 SAVED RETURN ADDRESS
- ECS SPACE 4,10
- ** ECS - PROCESS *ECS* RECORD.
- *
- * ENTRY VIA UNCONDITIONAL JUMP.
- *
- * EXIT TO *CMP1* TO READ THE *ECS* RECORD.
- *
- * USES X - 1, 6.
- * A - 1, 6.
- ECS SA1 BUF+1 TRANSFER TITLE
- BX6 X1
- SA6 TITL2
- SA1 BUF GET WORD COUNT
- MX6 -12
- BX6 -X6*X1 WORD COUNT/1000B
- SA2 ECSA 3LESM = ESM RECORD HDR
- BX2 X2-X1 COMPARE WITH EDD RECORD HDR
- MX0 18D MASK 3 CHARACTERS
- BX2 X2*X0 RELEVANT PART OF COMPARE
- NZ X2,CMP1 IF NOT *ESM* RECORD
- LX6 3 CONVERT WORD COUNT
- EQ CMP1 READ *ESM* RECORD
- ECSA DATA 3LESM *ESM* RECORD HEADER
- ESM EQU ECS
- ERF SPACE 4,15
- ** ERF - POSITION TO EOR ON FILE F.
- *
- * EXIT TO *PPE1* IF PREMATURE EOF.
- *
- * USES A - 1.
- * X - 1.
- *
- * CALLS RBH.
- ERF SUBR ENTRY/EXIT
- ERF1 SA1 EORF
- NG X1,ERFX IF AT EOR
- RJ RBH READ BLOCK OR HEADER
- ZR X1,ERF1 IF NOT EOF
- EQ PPE1 PREMATURE EOF
- ERS SPACE 4,15
- ** ERS - END RECORD ON S-FILE.
- *
- * ENTRY (ID) = RECORD ID.
- * (RWCS) = RECORD LENGTH.
- *
- * EXIT BUFFER WRITTEN TO *S*.
- * *TDIR* DIRECTORY ENTRY MADE.
- * (RWCS) = 0.
- *
- * USES A - 1, 2, 5, 6, 7.
- * X - 1, 2, 5, 6, 7.
- *
- * MACROS ADDWORD, WRITER.
- ERS SUBR ENTRY/EXIT
- WRITER S,R WRITE BUFFER TO FILE
- SA1 ID
- ADDWRD TDIR,X1 PUT RECORD ID IN DIRECTORY ENTRY
- ADDWRD A0,X1-X1 CLEAR DIRECTORY ENTRY WORD 2
- SA5 ERSA RANDOM INDEX OF RECORD
- SA2 RWCS
- LX2 30
- BX6 X2+X5
- SA6 A6
- SX7 B0 RESET RECORD LENGTH
- SA7 RWCS
- SX6 ERSA
- SA6 S+6 GET RANDOM INDEX OF NEXT RECORD
- EQ ERSX RETURN
- ERSA DATA 1 CURRENT RANDOM INDEX
- EVA SPACE 4,10
- ** EVA - EXPAND VIRTUAL ADDRESS.
- *
- * ENTRY (X6) = PROCESS VIRTUAL ADDRESS.
- *
- * EXIT (X6) = SEGMENT NUMBER.
- * (X7) = BYTE OFFSET.
- * (X2) = 0, IF THE ADDRESS IN X6 IS THE NIL POINTER.
- *
- * USES X - 1, 2, 6, 7.
- * A - 1.
- EVA SUBR ENTRY/EXIT
- SA1 EVAA
- BX2 X6*X1
- BX2 X2-X1
- ZR X2,EVAX IF NIL POINTER
- MX2 -32-12
- BX7 -X2*X6 ISOLATE BYTE OFFSET
- BX2 X2*X6 ISOLATE RING NUMBER
- BX6 X1*X7 ISOLATE SEGMENT NUMBER
- BX2 X1*X2
- ZR X2,ERR45 IF RING ZERO
- JP EVAX RETURN
- EVAA DATA 0#FFFF80000000 NIL POINTER
- FAC SPACE 4,13
- ** FAC - FIND ASSIGNED CHANNEL.
- *
- * ENTRY (B2) = PPU NUMBER.
- * (BUF - BUF+MXCH) = CHANNEL RESERVATION BYTES
- * FROM CHANNEL STATUS TABLE, ONE BYTE PER WORD,
- * LEFT JUSTIFIED.
- *
- * EXIT (X1) = NUMBER OF ASSIGNED CHANNEL.
- * .LT. 0, IF NO MORE CHANNELS ASSIGNED.
- *
- * USES X - 0, 1, 2, 3, 6.
- * A - 1, 3, 6.
- * B - 3, 5.
- FAC3 MX6 0 CLEAR RESERVATION ENTRY
- SA6 B3
- SX1 B3-BUF SET ASSIGNED CHANNEL NUMBER
- FAC SUBR
- SX2 B2 CHANNEL NUMBER
- MX0 -6
- SX3 X2-20B
- SB3 BUF CHANNEL TABLE ADDRESS
- SB5 B3+MXCH CHANNEL STATUS TABLE LWA+1
- SA1 IC
- ZR X1,FAC0 IF NOT CPP
- SX2 X2+24B
- JP FAC1 PROCESS CHANNELS FOR CPP-S
- FAC0 NG X3,FAC1 IF NOT PP 20 - 31
- SX2 X2-20B+12B CORRECT PPU INDEX
- FAC1 SA3 B3+ READ TABLE
- LX3 12
- BX3 -X0*X3
- ZR X3,FAC2 IF CHANNEL NOT ASSIGNED
- BX3 X2-X3
- ZR X3,FAC3 IF ASSIGNED TO THIS PPU
- FAC2 SB3 B3+B1
- LE B3,B5,FAC1 IF MORE TABLE ENTRIES
- SX1 -B1 SET NO MORE CHANNELS ASSIGNED
- JP FACX EXIT
- FBB SPACE 4,25
- ** FBB - FILL BYTE BUFFER.
- *
- * ENTRY (B2) = PARAMETER BLOCK ADDRESS.
- * +0 = FWA OF DUMP.
- * +1 = LWA OF DUMP.
- *
- * BUFFER CONSISTS OF TWO WORD ENTRIES.
- *
- * EITHER -
- * 28/ADDRESS,16/BYTE1,16/BYTE2
- * 28/0 ,16/BYTE3,16/BYTE4
- *
- * OR FOR REPEATED WORDS -
- * 60/-0
- * 60/
- *
- * EXIT (X1) = 2* WORDS IN BUFFER.
- * (PARAMETER BLOCK+0) = NEW FWA.
- *
- * USES X - ALL.
- * A - ALL.
- *
- * CALLS CPC, CPS, NXB.
- FBB SUBR ENTRY/EXIT
- SX1 10 CHECK FOR MINIMUM OF 10 WORDS
- RJ CPS CHECK PAGE SPACE
- SX3 6
- IX2 X6*X3 MAXIMUM SIZE OF BUFFER FOR SIZE OF PAGE
- SA1 B2+B1 LWA+1 OF DUMP
- BX6 X1
- SA6 FBBA
- SA0 B2 SAVE PARAMETER ADDRESS
- SX6 BUF BUFFER POINTER
- SA6 A6+B1
- IX7 X6+X2 MAXIMUM LWA+1 OF BUFFER
- SA7 A6+B1
- FBB1 RJ NXB GET UPPER PARCEL OF WORD
- SA5 A0 CURRENT ADDRESS
- SX3 8
- MX2 -32
- IX6 X3+X5 INCREMENT ADDRESS
- BX5 -X2*X5
- LX5 16
- SA6 A0
- IX5 X1+X5 COMBINE ADDRESS WITH DATA
- RJ NXB READ SECOND PARCEL OF WORD
- LX5 16
- BX0 X5+X1
- RJ NXB READ THIRD PARCEL OF WORD
- BX5 X1
- RJ NXB READ LAST PARCEL OF WORD
- LX5 16
- BX7 X5+X1
- SA1 FBBD DATA FROM LAST WORD
- SA2 A1+B1
- BX6 X0
- MX3 -32
- SA6 A1 REFRESH FBBD
- SA7 A2
- BX1 X6-X1
- SA4 FBBB BUFFER POINTER
- BX2 X7-X2
- SA6 X4
- SA7 A6+B1
- BX1 -X3*X1 DO NOT COMPARE ADDRESSES
- IX3 X1+X2
- SX6 A7+B1 NEW BUFFER POINTER
- SA6 A4
- NZ X3,FBB2 IF DATA NOT REPEATED
- SX2 X4-BUF
- ZR X2,FBB2 IF FIRST DATA IN BUFFER
- MX7 1
- SA7 X4 STORE FLAG IN BUFFER
- SA1 X4-2 CHECK IF FLAG ALREADY SAVED
- PL X1,FBB3 IF NO FLAG PRESENT YET
- SX6 A7
- SA6 A4 RESTORE NEW BUFFER POINTER
- FBB2 SA2 A4+B1 MAXIMUM LWA OF BUFFER
- IX3 X6-X2
- PL X3,FBB4 IF BUFFER FULL
- FBB3 SB2 A0
- RJ CPC CHECK PAGE CHANGE
- PL X3,FBB4 IF PAGE NOT VALID
- SA1 FBBA LWA+1 OF DUMP
- SA5 A0 CURRENT BYTE ADDRESS
- IX6 X5-X1
- NG X6,FBB1 IF NOT END OF DATA
- FBB4 SA1 FBBB
- SA2 A1+B1
- SX1 X1-BUF COMPUTE AMOUNT DATA IN BUFFER
- EQ FBBX RETURN
- FBBA DATA 0 LWA+1 OF DUMP
- FBBB DATA 0 BUFFER POINTER
- FBBC DATA 0 MAXIMUM LWA+1 OF BUFFER
- FBBD BSS 2 PREVIOUS WORD PRINTED
- FBP SPACE 4,11
- ** FBP - FIND BYTE POSITION.
- *
- * ENTRY (RI) = RANDOM ADDRESS OF CURRENT RECORD.
- * (X3) = DESIRED BYTE NUMBER.
- *
- * EXIT BUFFER POSITIONED AT DESIRED 16 BIT BYTE.
- *
- * USES X - 2, 3, 4, 5, 6.
- * A - 6.
- * B - 7.
- *
- * CALLS PDF, NXB.
- FBP SUBR ENTRY/EXIT
- SX4 15
- BX2 X3
- IX3 X3/X4
- SX4 15
- IX5 X3*X4
- IX5 X2-X5 BYTE POSITION WITHIN FOUR WORD GROUP
- IX5 X4-X5
- LX3 2 WORD OFFSET OF FOUR WORD GROUP
- RJ PDF POSITION DUMP FILE
- SX6 B0
- SA6 NXBA
- SA6 A6+B1
- RJ NXB
- BX6 X5 SAVE BYTE OFFSET INTO FOUR WORD STACK
- SA6 NXBB
- EQ FBPX RETURN
- FDW SPACE 4,11
- ** FDW - FORMAT DATA WORD.
- *
- * ENTRY X1 = DATA WORD.
- * B7 = PRINT STRING ADDRESS.
- * X2 = 24/0,18/DIGITS PER BYTE,18/BYTES PER WORD.
- *
- * USES X - 0,1,2,6,7.
- * B - 5,6,7.
- * A - 6,7.
- *
- * CALLS CTS.
- FDW SUBR
- SB5 X2 NUMBER OF BYTES
- AX2 18
- SX6 1R PRESET SPACE
- FDW1 SB6 X2+ DIGIT COUNT
- RJ CTS CONVERT ONE BYTE
- SA6 B7 SPACE 1
- SB7 B7+B1
- SB5 B5-1
- NZ B5,FDW1 IF MORE BYTES
- JP FDWX EXIT
- FEM SPACE 4,10
- ** FEM - FORMAT ENTRY POINT MAP LINE.
- *
- * ENTRY X5 = LINE INDEX.
- * PPU DATA IS AT *PBUF*.
- *
- * SAVES X - 5.
- * B - 1.
- * A - 0,5.
- *
- * CALLS CTS,RPB,UPS.
- FEM1 ZR X2,FEMX IF NO MESSAGE
- SB6 X2-3
- PL B6,FEMX IF NO MESSAGE
- SA3 APPF
- LX7 X2,B1
- IX2 X2+X7
- ZR X3,FEMX IF NOT DUMPING PP SAVE AREA DATA
- SA2 FEMB-3+X2 READ MESSAGE
- SB6 28
- SB7 PRBF+4
- RJ UPS SET NAME IN PRINT STRING
- FEM SUBR
- SX2 X5-7
- PL X2,FEM1 IF END OF ENTRY POINTS.
- SA2 X5+FEMA READ ENTRY POINT NAME,ADDRESS
- SB6 3
- SB7 PRBF+10
- RJ UPS SET NAME IN PRINT STRING
- BX1 X2
- SB6 4
- SB7 B7+2
- RJ CTS CONVERT LOCATION
- MX2 -12
- BX1 -X2*X1
- SB6 B7 SAVE B7
- RJ RPB READ RETURN ADDRESS FROM PPU
- SB7 B6+2
- SB6 4
- BX1 X6
- RJ CTS CONVERT RETURN ADDRESS
- JP FEMX EXIT
- FEMA BSS 0 RESIDENT ENTRY POINT TABLE
- LOC 0
- VFD 18/3LFTN,12/FTN,30/0
- VFD 18/3LDFM,12/DFM,30/0
- VFD 18/3LEXR,12/EXR,30/0
- VFD 18/3LSMS,12/.SMS,30/0
- VFD 18/3LRDS,12/RDS,30/0
- VFD 18/3LWDS,12/WDS,30/0
- VFD 18/3LEMS,12/.EMS,30/0
- LOC *O
- FEMB DATA 28H* ENTRY POINTS AND CONSTANTS
- DATA 28H MAY NOT HAVE BEEN SAVED.
- FFD SPACE 4,10
- ** FFD - FIND FWA OF DISK BUFFER AREA IN EXTENDED MEMORY.
- *
- * ENTRY (X5) = MACHINE ID, LEFT-JUSTIFIED AND ZERO-FILLED.
- *
- * EXIT (DA) = (X6) = FWA OF DISK BUFFER AREA.
- *
- * ERROR TO *ERR36*, IF INCORRECT MACHINE ID.
- *
- * USES X - 1, 2, 6.
- * A - 1, 6.
- * B - 2.
- *
- * CALLS POM, SEC.
- *
- * MACROS GETCM.
- FFD SUBR ENTRY/EXIT
- RJ SEC SET EXTENDED MEMORY
- SX6 20B SET EM SECTOR LIMIT
- SA1 EM
- SB2 X1
- LX6 B2
- SX6 X6+ETLT*100B+IBDT
- SA6 CPRA
- SB2 A6
- RJ POM POSITION TO FWA *IBDT*
- GETCM FFDA,MXMF READ *IBDT* INTO CORE
- SB2 MXMF PRESET *IBDT* INDEX
- FFD1 SB2 B2-1
- NG B2,ERR36 IF AT END OF *IBDT*
- SA1 B2+FFDA
- BX2 X1-X5
- AX2 48
- NZ X2,FFD1 IF MACHINE ID NOT FOUND
- AX1 12
- MX6 -12
- BX6 -X6*X1
- LX6 9
- SA6 DA STORE FWA OF DISK BUFFER AREA
- EQ FFDX RETURN
- FFDA BSS MXMF CORE BUFFER FOR *IBDT*
- FLC SPACE 4,9
- ** FLC - FORMAT PPU LOW CORE ANALYSIS LINE.
- *
- * ENTRY (X5) = LINE NUMBER.
- *
- * USES X - 1, 2, 3, 4, 6, 7.
- * A - 1, 2, 3, 4, 6, 7.
- * B - 2, 6, 7.
- *
- * CALLS CPN, CTS, GRV, RPB, UPS.
- FLC7 RJ GRV GET R-REGISTER VALUE
- SB7 B7+3
- SB6 8
- RJ CTS CONVERT AND STORE IN PRINT LINE
- BX3 X1 SAVE ACTUAL
- SA1 FLCB+3 GET CP ADDRESS
- ZR X1,FLC4 IF PPU NOT ATTACHED
- SA1 FLCB+5 GET EXPECTED R-REGISTER
- MX2 24
- LX1 12
- BX1 X2*X1
- SB6 8
- EQ FLC3.1 COMPARE VALUES
- FLC SUBR ENTRY/EXIT
- SA2 X5+FLCA
- SB6 7
- SB7 PRBF+35
- RJ UPS SET NAME AND LOCATION
- LX2 18
- SX1 X2 PPU ADDRESS
- ZR X1,FLC7 IF R-REGISTER
- SB6 B7 SAVE PRINT STRING ADDRESS
- RJ RPB READ LOCATION CONTENTS
- SB7 B6+3
- SB6 4
- BX1 X6
- RJ CTS CONVERT CONTENTS
- ZR X5,FLC1 IF LINE 0
- SB2 X5+FLC6-1
- JP B2 VERIFY WORD FOR LINES 1 - 9
- * COMPUTE EXPECTED LOW CORE VALUES.
- FLC1 SA4 PC GET PP COMMUNICATION AREA POINTER
- RJ CPN CONVERT PP NUMBER
- LX6 3
- IX6 X6+X4 PP INPUT REGISTER ADDRESS
- SA3 F.TCMT
- IX4 X6+X3
- SA6 FLCB SAVE
- SX7 X6+B1
- SA7 A6+B1 SAVE OUTPUT REGISTER ADDRESS
- SX6 X7+B1
- SA6 A7+B1 SAVE MESSAGE AREA ADDRESS
- SA4 X4 READ INPUT REGISTER
- MX2 -5
- AX4 36
- BX6 -X2*X4 CONTROL POINT NUMBER
- LX6 7 CONTROL POINT AREA ADDRESS
- SA6 A6+B1 SAVE
- ZR X6,FLC4 IF PPU NOT ASSIGNED TO CONTROL POINT
- IX4 X6+X3
- SA2 OP ADD PCPA OFFSET
- IX4 X2+X4
- SA2 X4+FLSW GET RA/100 AND FL/100
- BX6 X2
- SA6 A6+B1 SAVE RA/100 AND FL/100
- SA3 CE
- SA4 A2+B1 GET R-REGISTER
- ZR X3,FLC2.1 IF NO CM EXTENSION
- SA2 A2+1
- FLC2.1 LX2 -12
- BX6 X4
- SA6 A6+1 SAVE R-REGISTER
- * COMPARE ACTUAL AND EXPECTED VALUES.
- FLC3 BX3 X1 SAVE ACTUAL DATA
- MX1 -12
- BX1 -X1*X2 EXPECTED DATA
- LX1 -12
- SB6 4
- FLC3.1 SB7 B7+2
- RJ CTS FORMAT EXPECTED DATA
- BX1 X1-X3
- ZR X1,FLCX IF ACTUAL = EXPECTED
- SA2 =27H *** WARNING ***
- SB6 27
- FLC3.2 RJ UPS SET MESSAGE
- JP FLCX EXIT
- * PPU NOT ATTACHED - IGNORE CL, RA AND FL.
- FLC4 SA2 =4L----
- SB6 4
- SB7 B7+2
- JP FLC3.2 SET MESSAGE
- * CHECK CONTROL POINT RELATED DATA.
- FLC5 SA3 FLCB+3 READ CONTROL POINT AREA ADDRESS
- ZR X3,FLC4 IF PPU NOT ATTACHED
- JP FLC3 CHECK VALUE
- * SET EXPECTED VALUES.
- FLC6 BSS 0
- + SA2 FLCB+4 FL
- JP FLC5
- + SX2 1 ON
- JP FLC3
- + SX2 100B HN
- JP FLC3
- + SX2 1000B TH
- JP FLC3
- + SX2 3 TR
- JP FLC3
- + SA2 FLCB+3 CP
- JP FLC5
- + SA2 FLCB+0 IA
- JP FLC5
- + SA2 FLCB+1 OA
- JP FLC5
- + SA2 FLCB+2 MA
- JP FLC5
- FLCA BSS 0
- VFD 42/7LRA 55 ,18/RA
- VFD 42/7LFL 56 ,18/FL
- VFD 42/7LON 70 ,18/ON
- VFD 42/7LHN 71 ,18/HN
- VFD 42/7LTH 72 ,18/TH
- VFD 42/7LTR 73 ,18/TR
- VFD 42/7LCP 74 ,18/CP
- VFD 42/7LIA 75 ,18/IA
- VFD 42/7LOA 76 ,18/OA
- VFD 42/7LMA 77 ,18/MA
- VFD 42/7LR-REG ,18/0
- FLCB BSS 0 EXPECTED LOW CORE DATA
- LOC 0
- BSS 1 IA
- BSS 1 OA
- BSS 1 MA
- BSS 1 CP
- BSS 1 RA/100, FL/100
- BSS 1 R-REGISTER
- LOC *O
- FOL SPACE 4,9
- ** FOL - FORMAT ONE LINE OF *P* DUMP.
- *
- * ENTRY X5 = ROW NUMBER.
- *
- * SAVES X - 5.
- * B - NONE.
- * A - 5.
- *
- * CALLS CTS,UPS,WOF.
- FOL SUBR
- BX1 X5
- SB6 2
- LX1 -6
- SB7 PRBF+7
- RJ CTS SET ROW ADDRESS IN LEFT BLOCK
- LX1 -6
- SB6 B1+B1
- SB7 PRBF+71
- RJ CTS CONVERT FOR RIGHT BLOCK
- SB2 X5+BUF
- SB7 PRBF+11
- SB3 2
- FOL1 SB4 10B
- FOL2 SB6 4 DIGIT COUNT
- SA1 B2+ READ BYTE
- NZ X1,FOL3 IF NOT ZERO
- SA2 =4L----
- RJ UPS SET ZERO INDICATOR
- JP FOL4
- FOL3 RJ CTS CONVERT BYTE
- FOL4 SB2 B2+10B ADVANCE ADDRESS
- SB7 B7+2 SPACE 2
- SB4 B4-1 COUNT BYTE
- NZ B4,FOL2 IF MORE BYTES IN THIS BLOCK
- SB7 B7+16 SPACE TO RIGHT BLOCK
- SB3 B3-1
- NZ B3,FOL1 IF NOT DONE WITH RIGHT BLOCK
- PRINT CCCH,B7-CCCH-18
- JP FOLX EXIT
- FON SPACE 4,15
- ** FON - FORMAT PPU OVERLAY NAME LINE.
- *
- * ENTRY B4 = LINE INDEX.
- * PPU DATA IS AT *PBUF*.
- *
- * USES X - 1, 2, 6, 7.
- * A - 1, 2.
- * B - 3, 6, 7.
- *
- * SAVES X - 5.
- * A - 0, 5.
- * B - 1.
- *
- * CALLS RPB, UPS.
- FON SUBR ENTRY/EXIT
- SB3 3
- GE B4,B3,FONX IF NO MORE NAMES TO FORMAT
- SB7 B7+6 SET PRINT STRING ADDRESS
- JP FONA+B4 PROCESS APPROPRIATE LINE
- * LIST LAST MAIN PROGRAM LOADED.
- FON1 SA2 =27HLAST MAIN PROGRAM LOADED -
- SB6 27
- RJ UPS
- SX1 IR
- SB6 B7+ SAVE PRINT STRING ADDRESS
- RJ RPB READ INPUT REGISTER BYTE
- SX1 IR+1
- BX7 X6 SAVE (IR)
- RJ RPB
- LX6 -12
- FON2 BX2 X6+X7 SET PROGRAM NAME
- SB7 B6 PRINT STRING ADDRESS
- SB6 3
- RJ UPS SET NAME IN PRINT STRING
- JP FONX EXIT
- * LIST LAST OVERLAY LOADED.
- FON3 SA2 =27HLAST OVERLAY LOADED -
- SB6 27
- RJ UPS
- SB6 B7+ SAVE B7
- SX1 PLLA
- RJ RPB READ OVERLAY NAME
- SX1 PLLB
- BX7 X6
- RJ RPB
- MX2 6
- BX7 -X2*X7
- LX7 6
- LX6 -6
- JP FON2 SET NAME IN PRINT STRING
- * LIST LAST MASS STORAGE DRIVER LOADED.
- FON4 SA2 =27HLAST MASS STORAGE DRIVER -
- SB6 27
- RJ UPS
- SB6 B7+
- SX1 MSD
- RJ RPB READ DRIVER IDENTIFICATION BYTE
- SX7 B0 ASSUME NO DRIVER
- LX6 6 POSITION MASS STORAGE DRIVER INDEX
- BX6 X1*X6
- LX6 6
- ZR X6,FON2 IF NO DRIVER
- SA1 TFON-1+X6 INDEX INTO DRIVER DESIGNATOR TABLE
- BX6 X1
- SX7 1R6
- LX7 -6
- JP FON2 PROCESS DRIVER NAME
- FONA BSS 0 LINE PROCESSOR JUMP TABLE
- + JP FON1 PRINT LINE 0
- + JP FON3 PRINT LINE 1
- + JP FON4 PRINT LINE 2
- TFON BSS 0 TABLE OF MASS STORAGE DRIVER DESIGNATORS
- LOC 1
- ERRNZ /MSP/LA6DI-* ADJUST TABLE IF VALUE CHANGES
- VFD 6/0,12/2RDI,42/0 *6DI*
- ERRNZ /MSP/LA6DJ-* ADJUST TABLE IF VALUE CHANGES
- VFD 6/0,12/2RDJ,42/0 *6DJ*
- ERRNZ /MSP/LA6DP-* ADJUST TABLE IF VALUE CHANGES
- VFD 6/0,12/2RDP,42/0 *6DP*
- ERRNZ /MSP/LA6DE-* ADJUST TABLE IF VALUE CHANGES
- VFD 6/0,12/2RDE,42/0 *6DE*
- ERRNZ /MSP/LA6DX-* ADJUST TABLE IF VALUE CHANGES
- VFD 6/0,12/2RDX,42/0 *6DX*
- LOC *O
- FPB SPACE 4,22
- ** FPB - FILL PAGE BUFFER.
- *
- * ENTRY (B2) = ADDRESS OF DUMP PARAMETERS. PARAMETER BLOCK
- * IS DOCUMENTED IN *PMD*.
- * (LC) = CURRENT LINE COUNTER.
- * (PD) = NUMBER OF LINES PER PAGE.
- *
- * EXIT (X1) = PAGE BUFFER LENGTH.
- * PARAMETER BLOCK IS UPDATED. FOR EACH WORD DUMPED,
- * *BUF* CONTAINS A TWO WORD ENTRY -
- *
- * 36/0,24/ADDRESS
- * 60/DATA FOR DATA, OR
- *
- * 60/MINUS
- * 60/GARBAGE FOR REPEAT INDICATOR.
- *
- * USES X - 1, 2, 3, 5, 6, 7.
- * A - 1, 2, 3, 5, 6, 7.
- * B - 5, 7.
- *
- * CALLS CPS.
- *
- * MACROS GETCM.
- FPB SUBR
- SA5 B2+6 SAVE INVERTED ADDRESS FLAG
- BX6 X5
- SA5 B2
- SA6 FPBA
- SX1 1
- RJ CPS CHECK PAGE SPACE
- SX7 -1 SET SKIP FLAG
- SX3 6
- IX3 X3*X6 PAGE BUFFER LENGTH = 6*LINES
- SB5 BUF SET BUFFER POINTER
- SB7 B5+X3 SET LWA+1
- SA7 FPBA+1
- FPB1 SA1 A5+2
- ZR X1,FPB2 IF DATA NOT IN CORE
- SA2 X1 READ DATA WORD
- SX6 X1+B1
- SA6 A1 UPDATE CORE ADDRESS
- BX6 X2 SET DATA WORD
- EQ FPB3 PROCESS WORD
- FPB2 GETCM READ DATA FROM DUMP FILE
- FPB3 SA3 FPBA CHECK IF INVERTED ADDRESS IS PRESENT
- SA2 A5+6
- SX1 B1+
- ZR X3,FPB3.1 IF INVERTED ADDRESS NOT PRESENT
- IX7 X2-X1 UPDATE INVERTED ADDRESS
- SA7 A2
- FPB3.1 SA2 A5 GET DUMP ADDRESS
- IX7 X2+X1
- SA7 A2
- SA1 A2+3
- SA3 FPBA+1
- NZ X1,FPB5 IF NO SUPPRESS REQUESTED
- NG X3,FPB5 IF FIRST TIME THROUGH LOOP
- BX1 X6-X5 COMPARE WITH PREVIOUS WORD
- ZR X1,FPB4 IF DATA IS SAME OR LOGICAL OPPOSITE
- EQ FPB5 STORE NEW WORD
- FPB4 NG X1,FPB5 IF DATA IS LOGICAL OPPOSITE
- NZ X3,FPB7 IF REPEAT ALREADY FLAGGED
- MX6 1
- SA6 B5 STORE REPEAT FLAG
- SX6 B1 SET SKIPPING FLAG
- SA6 A3
- EQ FPB6 CONTINUE
- FPB5 BX5 X6 SAVE WORD FOR NEXT COMPARE
- SA6 B5+B1 STORE DATA WORD
- SX2 B1
- IX6 X7-X2
- SA1 FPBA GET INVERTED ADDRESS FLAG
- SA6 B5
- MX7 0 CLEAR SKIP FLAG
- SA3 A5+6
- SA7 FPBA+1
- ZR X1,FPB6 IF NO INVERTED ADDRESS
- IX6 X3+X2
- SA6 B5 STORE ADDRESS
- FPB6 SB5 B5+2 ADVANCE BUFFER ADDRESS
- GE B5,B7,FPB8 IF BUFFER FULL
- FPB7 SA1 A5+B1 LWA+1
- SA2 A5 FWA
- IX1 X2-X1
- NG X1,FPB1 IF MORE TO DUMP
- FPB8 SX1 B5-BUF SET BUFFER LENGTH
- EQ FPBX RETURN
- FPBA BSS 1 INVERTED ADDRESS FLAG
- BSS 1 SKIP FLAG
- FPL SPACE 4,15
- ** FPL - FORMAT PPU COMMUNICATION REGISTER WORD.
- *
- * ENTRY (A5) = ADDRESS OF REGISTER WORD.
- * (X5) = REGISTER WORD.
- * (B2) = PPU NUMBER.
- * (B4) = LINE INDEX.
- * (B7) = PRINT STRING ADDRESS.
- * (IC) = *CPP* PROCESSING FLAG.
- *
- * USES X - 0, 1, 2, 3, 6.
- * A - 1, 2, 6.
- * B - 6, 7.
- *
- * CALLS CTS, FAC, FDW, SDI, UPS.
- FPL SUBR
- JP FPLA+B4 PROCESS SELECTED LINE
- FPLA BSS 0
- LOC 0
- + JP FPL0
- + JP FPL3
- + JP FPL4
- + JP FPL5
- + JP FPL5
- + JP FPL5
- + JP FPL5
- + JP FPL5
- LOC *O
- * PROCESS WORD 0.
- FPL0 SA2 IC
- ZR X2,FPL1 IF NOT PROCESSING A CPP
- SX6 1RC
- SA6 B7-1
- FPL1 SX6 1RP
- SA6 B7 *PP* TO PRINT STRING
- SA6 A6+B1
- SB7 A6+1
- SX1 B2
- LX1 -6
- SB6 2
- RJ CTS CONVERT PPU NUMBER
- SB7 B7+3 SPACE 3
- BX2 X5
- SB6 3
- RJ UPS PROGRAM NAME TO PRINT STRING
- SX6 1R
- SA6 B7+
- SB7 B7+3
- FPL2 BX1 X5 DATA WORD TO PRINT STRING
- SA2 =4000005B
- RJ FDW FORMAT DATA WORD
- SB6 10 CHARACTER COUNT
- BX2 X5 DATA WORD
- SB7 B7+B1
- RJ SDI SET DISPLAY CODE INTERPRETATION
- JP FPLX EXIT
- * PROCESS WORD 1.
- FPL3 SX6 1R BLANK OUT PPU NUMBER
- SA6 B7-1 CLEAR *C* FOR CPP-S
- SA6 B7
- SA6 A6+B1
- SA6 A6+B1
- SA6 A6+B1
- SB7 A6+4
- MX0 7
- LX0 -5
- BX1 X0*X5 EXTRACT MTR FUNCTION CODE
- LX1 12
- SX0 X1-MXFM-1
- SB6 4
- NG X0,FPL3.1 IF FUNCTION WITHIN TABLE
- SX1 MXFM SET MAXIMUM FUNCTION CODE
- FPL3.1 SA2 TFTN+X1 READ CODE NAME FROM *COMDTFN*
- RJ UPS MTR FUNCTION NAME TO PRINT STRING
- SB7 B7+2
- JP FPL2 CONVERT DATA WORD
- * PROCESS WORD 2.
- FPL4 SX6 1RC *CL* TO PRINT STRING
- SA6 B7+7
- SX6 1RP
- SA1 A5-2 READ WORD 0
- MX0 -5
- LX1 24
- BX1 -X0*X1 CONTROL POINT NUMBER
- FPL4.1 SA6 A6+B1
- SB7 A6+B1
- LX1 -6
- SB6 2
- RJ CTS CONVERT CONTROL POINT NUMBER ASSIGNMENT
- SB7 B7+2
- JP FPL2 CONVERT DATA WORD
- * PROCESS WORDS 3 - 7.
- FPL5 RJ FAC FIND ASSIGNED CHANNEL
- NG X1,FPL6 IF NO MORE CHANNELS ASSIGNED
- SX6 1RC *CH* TO PRINT STRING
- SX3 X1-40B
- NG X3,FPL5.1 IF NOT PROCESSING A *CCH*
- SA6 B7+6
- FPL5.1 SA6 B7+7
- SX6 1RH
- JP FPL4.1 CONVERT DATA WORD
- FPL6 SX6 1R
- SA6 B7+6
- SA6 A6+B1
- SA6 A6+B1
- SA6 A6+B1
- SA6 A6+B1
- SB7 A6+3
- JP FPL2 CONVERT DATA WORD
- FPO SPACE 4,15
- ** FPO - FORMAT PP OPERATING REGISTERS LINE.
- *
- * ENTRY (X5) = LINE NUMBER.
- * (B7) = FWA OF STRING BUFFER.
- * (CPRA+3) = HEX/OCTAL FLAG.
- *
- * EXIT (X6) = 0 IF END OF REGISTERS.
- *
- * USES X - 1, 2, 6.
- * A - 1, 2, 6.
- * B - 6, 7.
- *
- * CALLS CTS, HTS, UPS.
- FPO3 LX1 59-15 DISPLAY HEX REGISTERS
- SB6 4
- SB7 B7+B1
- RJ HTS
- SA1 A1+B1 GET Q-REGISTER
- LX1 59-15
- SB6 4
- SB7 B7+3
- RJ HTS
- SA1 A1+B1 GET K-REGISTER
- LX1 59-15
- SB6 4
- SB7 B7+4
- RJ HTS
- SA1 A1+B1 GET A-REGISTER
- LX1 59-19
- SB6 5
- SB7 B7+3
- RJ HTS
- FPO SUBR ENTRY/EXIT
- NZ X5,FPO1 IF NOT FIRST LINE
- SX6 B0+ INITIALIZE REGISTER POINTER
- SA6 FPOA
- FPO1 SA2 FPOA
- SX6 X2-4
- ZR X6,FPOX IF END OF REGISTERS
- SX1 X5-2
- ZR X1,FPOX IF BETWEEN REGISTER SETS
- SX6 X2+B1
- SA6 A2 UPDATE POINTER
- LX2 2
- SA1 X2+PPOB GET P-REGISTER
- NG X1,FPO1 IF NO REGISTERS PRESENT
- LX2 -1 SET DESCRIPTOR
- ERRNZ FPOBE-2 CODE DEPENDS ON VALUE
- SA2 X2+FPOB
- SB6 12
- RJ UPS
- SB7 B7+3
- SA2 CPRA+3 GET FORMAT CODE
- SX6 2
- ZR X2,FPO2 IF OCTAL
- BX2 X6*X2
- ZR X2,FPO3 IF HEX
- FPO2 LX1 59-14 SET P-REGISTER
- SB6 5
- RJ CTS
- SA1 A1+B1 GET Q-REGISTER
- LX1 59-14
- SB6 5
- SB7 B7+2
- RJ CTS
- SA1 A1+B1 GET K-REGISTER
- LX1 59-17
- SB6 6
- SB7 B7+2
- RJ CTS
- SA1 A1+B1 GET A-REGISTER
- LX1 59-17
- SB6 6
- SB7 B7+2
- RJ CTS
- EQ FPOX RETURN
- FPOA CON 0 REGISTER SET POINTER
- FPOB DATA C* BEFORE IDLE*
- FPOBE EQU *-FPOB ENTRY LENGTH
- DATA C* AFTER IDLE*
- DATA C*DFT BUFFER 1*
- DATA C*DFT BUFFER 2*
- FPP SPACE 4,13
- ** FPP - FIND PPU PROGRAM.
- *
- * ENTRY X4 = PROGRAM NAME.
- * FI = 0 IF INITIAL ENTRY.
- * = CURRENT SEARCH INDEX IF NOT FIRST ENTRY.
- *
- * EXIT X6 = PPU NUMBER.
- * FI IS UPDATED.
- * X1=FI=0 IF NO MORE PPS EXECUTING REQUESTED PROGRAM.
- *
- * SAVES X - 5.
- * B - 1,5,6,7.
- * A - 0,5.
- FPP SUBR
- SA1 NP GET NUMBER OF PP-S
- SA2 PC GET PP COMMUNICATION AREA POINTER
- SA3 IC
- ZR X3,FPP1 IF NOT DUMPING CPP-S
- LX1 3
- IX2 X1+X2 SET CPP COMMUNICATION AREA POINTER
- SA1 C4 GET NUMBER OF CPP-S
- FPP1 LX1 3
- SB4 X2
- SB3 X1+B4 SET LWA+1 OF SEARCH AREA
- MX0 18
- SA1 FI READ SEARCH INDEX
- SA2 F.TCMT
- SB2 X1
- NZ X1,FPP2 IF NOT INITIAL ENTRY
- SB2 B4 PRESET SEARCH INDEX
- FPP2 GE B2,B3,FPP3 IF END OF SEARCH
- SA1 X2+B2
- BX3 X1-X4
- BX3 X0*X3
- ZR X3,FPP4 IF PROGRAM NAME MATCH
- SB2 B2+10B ADVANCE SEARCH
- EQ FPP2 CONTINUE SEARCH
- FPP3 SX6 0
- SA6 FI CLEAR SEARCH INDEX
- SX1 0 SET END OF SEARCH
- JP FPPX EXIT
- FPP4 SX6 B2+10B
- SA6 FI UPDATE SEARCH INDEX
- SX6 B2-B4
- AX6 3 SET PPU NUMBER
- SX1 1 SET PPU FOUND
- SX7 X6-12B
- NG X7,FPPX IF NOT PPUS 20 - 31
- SX6 X6+20B-12B CORRECT PPU NUMBER
- JP FPPX EXIT
- FPR SPACE 4,20
- ** FPR - FIND PROCESSOR RECORD.
- *
- * ENTRY (X1) = THREE CHARACTER RECORD ID.
- * (X6) = RADIAL MCI FLAG.
- *
- * EXIT (X2) = FIRST WORD OF TABLE DIRECTORY IF FOUND.
- * = 0 IF RECORD NOT FOUND.
- * (RI) = RANDOM INDEX.
- * RADIAL MCI PRINTED IF (X6) .NE. 0 ON ENTRY.
- *
- * USES X - 0, 1, 2, 3, 5, 6.
- * A - 1, 2, 3, 6.
- * B - 6, 7.
- *
- * CALLS SSB, UPS.
- *
- * MACROS PRINT, SEARCH.
- FPR SUBR ENTRY/EXIT
- SA6 FPRA SAVE RADIAL MCI FLAG
- SA3 NR NEXT DIRECTIVE TABLE ENTRY
- MX0 18
- ZR X3,FPR1 IF FIRST RECORD
- SA2 X3 GET PREVIOUS RECORD ID
- BX3 X1-X2
- BX3 X0*X3
- ZR X3,FPR2 IF RECORD ID MATCHES PREVIOUS RECORD ID
- FPR1 SEARCH TDIR,X1,X0
- ZR X2,FPRX IF RECORD ID NOT IN DIRECTORY
- FPR2 SA1 A2+C.TDIR CHECK NEXT *TDIR* ENTRY
- BX1 X1-X2
- BX1 X0*X1
- SX6 A1
- ZR X1,FPR3 IF RECORD NAMES MATCH
- SX6 B0
- FPR3 SA6 NR
- SA3 A2+B1 SET RANDOM INDEX
- BX6 X3
- SA6 RI
- SA1 FPRA
- ZR X1,FPRX IF NOT TO DISPLAY THE RADIAL MCI
- BX5 X2 SAVE FIRST WORD OF DIRECTORY ENTRY
- MX0 -6 SET RADIAL MCI
- AX2 36
- BX6 -X0*X2
- SA6 PRBF+13
- PRINT (=2C )
- SB7 PRBF
- SA2 =13HRADIAL MCI =
- SB6 13
- RJ UPS UNPACK MESSAGE
- PRINT CCCH,15
- RJ SSB CLEAR STRING BUFFER
- PRINT (=2C )
- BX2 X5 RESTORE FIRST WORD OF ENTRY
- EQ FPRX RETURN
- FPRA CON 0 RADIAL MCI FLAG
- FPW SPACE 4,15
- ** FPW - FORMAT CONTROL POINT PARAMETER LINE.
- *
- * ENTRY (X1) = LINE INDEX.
- * (CN) = CONTROL POINT NUMBER.
- * (FW) = CONTROL POINT AREA ADDRESS.
- * (GDBB) = DAYFILE BUFFER LENGTH.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- *
- * USES X - 0, 1, 2, 3, 4, 6, 7.
- * A - 1, 2, 3, 4, 6, 7.
- * B - 2, 3, 4, 5, 6, 7.
- *
- * CALLS CNL, CTS, DMB, DOS, GCS, GDB, GEE, GFL, POM, SCM, UPS.
- *
- * MACROS GETCM.
- FPW SUBR
- SB7 PRBF+1 SET PRINT STRING ADDRESS
- SA2 F.TCMT
- SA3 FW
- IX3 X2+X3
- SB2 X3 SET CONTROL POINT AREA ADDRESS
- SB3 X1+FPWA SET JUMP TABLE ADDRESS
- JP B3 EXECUTE SELECTED PROCESSOR
- * LINE 0 - USER NAME, SENSE SWITCHES.
- FPW1 SA2 =45HUSER NAME SENSE SWITCHES
- SB6 45
- RJ UPS STORE HEADING
- SA2 B2+UIDW READ USER NAME
- SB6 7
- SB7 PRBF+21
- RJ UPS STORE USER NAME
- SA1 B2+SNSW READ SENSE SWITCHES
- SB6 2
- SB7 PRBF+59
- LX1 -12
- RJ CTS CONVERT SENSE SWITCHES
- JP FPWX EXIT
- * LINE 1 - PRIMARY FILE NAME, CCL R1.
- FPW2 SA2 =45HPRIMARY FILE CCL R1
- SB6 45
- RJ UPS STORE HEADING
- SA1 B2+TFSW READ PRIMARY FILE EST POINTER
- SA2 F.TCMT
- MX3 -12
- AX1 36
- BX3 -X3*X1 FST ADDRESS
- ZR X3,FPW3 IF NO PRIMARY FILE
- IX1 X2+X3
- SA2 X1-1 READ FNT
- SB6 7
- SB7 PRBF+21
- RJ UPS SET FILE NAME
- FPW3 SA1 B2+JCRW READ CCL REGISTERS
- LX1 -18
- FPW3.1 SB6 6
- SB7 PRBF+55
- RJ CTS CONVERT REGISTER
- JP FPWX EXIT
- * LINE 2 - ORIGIN TYPE, CCL R2.
- FPW4 SA2 =45HORIGIN TYPE CCL R2
- SB6 45
- RJ UPS STORE HEADING
- MX0 12 PRESET ORIGIN TYPE MASK
- SA1 B2+JOTW GET ORIGIN TYPE
- LX0 24
- BX1 X0*X1
- AX1 12
- SA2 X1+FPWB READ ORIGIN TYPE
- SB6 4
- SB7 PRBF+24
- RJ UPS STORE ORIGIN TYPE
- SA1 B2+JCRW READ CCL REGISTERS
- LX1 -36
- JP FPW3.1 CONVERT REGISTER
- * LINE 3 - TIME USED, CCL R3.
- FPW5 SA2 =45HTIME USED CCL R3
- SB6 45
- RJ UPS STORE HEADING
- SA1 B2+CPTW READ CP ACCOUNTING WORD
- SX2 1000
- AX1 22 MILLISECONDS USED
- IX1 X1/X2 SECONDS USED
- LX1 -30
- SB6 10
- SB7 PRBF+18
- RJ CTS CONVERT TIME USED
- SA1 B2+JCRW READ CCL REGISTERS
- LX1 6
- SB6 6
- SB7 PRBF+55
- RJ CTS CONVERT CCL R3
- JP FPWX EXIT
- * LINE 4 - TIME REMAINING, CCL ERROR FLAGS.
- FPW6 SA2 =45HTIME REMAINING CCL EF
- SB6 45
- RJ UPS STORE HEADING
- SA1 B2+CPTW READ CP ACCOUNTING WORD
- SX2 1000
- AX1 22 MILLISECONDS USED
- IX1 X1/X2 SECONDS USED
- SA3 B2+CPLW GET TIME LIMIT
- SX2 1000
- AX3 22 LIMIT IN MILLISECONDS
- IX3 X3/X2 LIMIT IN SECONDS
- IX1 X3-X1 SECONDS LEFT
- LX1 -30
- SB6 10
- SB7 PRBF+18
- RJ CTS CONVERT TIME REMAINING
- SA1 B2+JCRW READ CCL REGISTERS
- SB6 2
- SB7 PRBF+59
- RJ CTS CONVERT ERROR FLAGS
- JP FPWX EXIT
- * LINE 5 - SUBSYSTEM ID, CPU PRIORITY.
- FPW7 SA2 =45HSUBSYSTEM ID CPU PRIORITY
- SB6 45
- SA1 B2+JCIW READ SUBSYSTEM ID
- RJ UPS STORE HEADING
- SB6 4
- SB7 PRBF+24
- LX1 24
- MX2 -58
- RJ CTS CONVERT SUBSYSTEM ID
- SA1 B2+CWQW READ CPU PRIORITY
- BX1 -X2*X1
- AX1 51
- SB7 PRBF+57
- SB4 4
- RJ DOS CONVERT CPU PRIORITY
- JP FPWX EXIT
- * LINE 6 - CPU STATUS.
- FPW8 SA2 =45HCPU STATUS SERVICE CLASS
- SB6 45
- SX5 B2
- RJ UPS STORE HEADING
- SB7 PRBF+27
- RJ GCS GET CPU STATUS
- RJ GEE GET EJT ENTRY
- R= A1,BUF+SCLE GET SERVICE CLASS
- MX0 6
- BX1 X0*X1
- LX1 6
- R= A2,X1+SCNT-1 READ SERVICE CLASS MEMONIC
- SB6 4
- SB7 PRBF+57
- RJ UPS STORE SERVICE CLASS
- EQ FPWX EXIT
- * LINE 8 - MESSAGE 1 LINE.
- FPW12 SA2 =28HMESSAGE 1 -
- SB6 28
- RJ UPS STORE HEADING
- SA2 B2+MS1W
- SB6 48
- RJ DMB STORE MESSAGE
- JP FPWX EXIT
- * LINE 9 - MESSAGE 2 LINE.
- FPW13 SA2 =28HMESSAGE 2 -
- SB6 28
- RJ UPS STORE HEADING
- SA2 B2+MS2W
- SB6 28
- RJ DMB STORE MESSAGE 2
- JP FPWX EXIT
- * LINE 11 - CURRENT COMMAND.
- FPW14 SA1 CN
- SA2 NC
- SX2 X2+B1
- IX1 X2-X1
- ZR X1,FPWX IF SYSTEM CONTROL POINT
- SA2 =28HCURRENT COMMAND -
- SB6 28
- RJ UPS STORE HEADING
- RJ CNL CHECK NFL LENGTH
- NG X1,FPWX IF INSUFFICIENT NFL SPACE
- RJ SCM SELECT CENTRAL MEMORY
- SA1 FW
- RJ GFL GET RA OF CONTROL POINT
- SX1 CSBN SET FWA OF COMMAND BUFFER
- IX6 X6-X1
- SX7 B2 SAVE B2
- MX1 -24
- BX6 -X1*X6
- SA6 CPRA
- SA7 A6+B1
- SB2 A6 POSITION DUMP FILE
- RJ POM
- GETCM BUF,110B READ COMMAND BUFFER
- SB7 PRBF+29 RESET PRINT STRING ADDRESS
- SA1 CPRA
- SB4 BUF FWA OF BUFFER
- SA3 A1+B1 RESTORE B2
- SX0 X1+CSBN RA OF CONTROL POINT
- SB2 X3
- SA1 B2+CSPW READ COMMAND BUFFER INDEX
- MX2 -12
- AX1 12
- BX1 -X2*X1
- SB3 X1-CSBN
- SB3 B4-B3 FORM CURRENT POINTER
- EQ B3,B4,FPWX IF BUFFER EMTPY
- FPW15 SB3 B3-B1 POINTER TO END OF LAST LINE
- SB5 B3 SAVE END OF LINE POINTER
- EQ FPW17 ENTER SEARCH LOOP
- FPW16 SA1 B3
- BX1 -X2*X1
- ZR X1,FPW18 IF END OF PREVIOUS LINE
- FPW17 SB3 B3-1
- GE B3,B4,FPW16 IF NOT BEGINNING OF BUFFER
- FPW18 SX1 10
- SX2 B5-B3 WORD COUNT FOR LINE
- IX2 X1*X2
- SB6 X2+ CHARACTER COUNT
- GE B3,B4,FPW19 IF NOT FIRST WORD OF BUFFER
- SX6 65B =1R_
- SA6 B7
- SB7 B7+B1
- FPW19 SA2 B3+1 READ FIRST WORD OF LINE
- RJ UPS STORE LINE IN PRINT STRING
- JP FPWX EXIT
- * LINE 13 - LAST DAYFILE MESSAGE.
- FPW20 SA2 =28HLAST DAYFILE MESSAGE -
- SB6 28
- RJ UPS STORE HEADING
- SA1 CN
- SA2 NC
- SX2 X2+B1
- IX1 X2-X1
- ZR X1,FPW20.0 IF SYSTEM CONTROL POINT
- RJ CNL CHECK NFL LENGTH
- NG X1,FPWX IF INSUFFICIENT NFL SPACE
- FPW20.0 RJ GDB GET DAYFILE BUFFER
- SA1 GDBD
- NZ X1,FPWX IF INACCURATE DAYFILE BUFFER POINTERS
- SA1 F.TSC1 GET POINTER ADDRESS
- SA1 X1 READ POINTER WORD
- MX2 -12
- BX3 -X2*X1 DETERMINE *IN* AND *FIRST* POINTERS
- SB2 X3 RELATIVE *IN* POINTER
- SA4 F.TSCR
- IX3 X4+X3
- SB6 X3-1 INITIALIZE POINTER FOR SEARCH LOOP
- SA3 GDBB GET BUFFER LENGTH
- SB7 X3
- NZ B2,FPW20.1 IF *IN* .NE. 0
- SB6 X4+B7 SET POINTER AT LWA OF DATA
- SB6 B6-B1
- FPW20.1 SB3 X4 *FIRST* POINTER
- SA1 A1+B1 DETERMINE *OUT* POINTER
- BX3 -X2*X1
- SX6 X3+B2 RELATIVE *IN* + *OUT*
- IX3 X4+X3
- SB4 X3 *OUT* POINTER
- SA1 A1+B1 CHECK DISK ASSIGNMENT
- AX1 12
- IX6 X1+X6 CHECK *IN* = *OUT* = 0
- ZR X6,FPWX IF BUFFER NOT USED
- SB5 B1 INITIALIZE WORD COUNTER
- SB2 B0 INITIALIZE TOP OF MESSAGE WORD COUNTER
- * FIND THE START OF THE LAST MESSAGE.
- FPW20.2 NE B6,B3,FPW20.3 IF POINTER .NE. FIRST
- SB6 B3+B7 SET POINTER = FIRST + LIMIT
- SB2 B5 SET TOP OF MESSAGE COUNT
- FPW20.3 SB6 B6-B1 *IN* = *IN* - 1
- SA3 B6 CHECK FOR ZERO BYTE TERMINATOR
- BX3 -X2*X3
- ZR X3,FPW20.5 IF START OF LAST MESSAGE FOUND
- SB5 B5+B1 INCREMENT WORD COUNT
- EQ B6,B4,FPW20.4 IF *IN* = *OUT* BOTTOM OF MESSAGE
- GT B5,B7,FPWX IF LAST MESSAGE CAN NOT BE DETECTED
- EQ FPW20.2 CONTINUE SEARCH FOR START OF LAST MESSAGE
- * SETUP THE PRINT BUFFER WITH FIRST AND LAST PART OF THE
- * MESSAGE IN UNPACKED FORMAT.
- FPW20.4 SB6 B6-B1 ADJUST POINTER TO FWA-1
- FPW20.5 SX3 B5-B2 CALCULATE WORDS IN BEGINNING OF MESSAGE
- SX1 10
- IX3 X1*X3 NUMBER OF CHARACTERS IN FIRST OF MESSAGE
- SB7 PRBF+29 SET PRINT STRING ADDRESS
- GE B6,B3,FPW20.6 IF NOT BEGINNING OF BUFFER
- SX6 65B =1R_
- SA6 B7
- SB7 B7+B1 DESTINATION OF UNPACKED CHARACTERS
- FPW20.6 SA2 B6+B1 SOURCE OF PACKED CHARACTERS
- SB6 X3 NUMBER OF CHARACTERS TO UNPACK
- ZR B6,FPW20.7 IF MESSAGE WORDS CONTIGUOUS IN LAST PART
- RJ UPS STORE FIRST PART OF MESSAGE
- FPW20.7 ZR B2,FPWX IF MESSAGE WORDS CONTIGUOUS IN FIRST PART
- SA2 F.TSCR SOURCE OF PACKED CHARACTERS
- SX3 B2 CALCULATE NUMBER OF CHARACTERS IN LAST PART
- SA2 X2
- IX3 X1*X3
- SB6 X3
- RJ UPS STORE LAST PART OF MESSAGE
- EQ FPWX EXIT
- * LINE 15 - SPECIAL ENTRY POINTS.
- FPW21 SA1 CN
- SA2 NC
- SX2 X2+B1
- IX1 X2-X1
- ZR X1,FPWX IF SYSTEM CONTROL POINT
- SA2 =28HSPECIAL ENTRY POINTS -
- SB6 28
- RJ UPS STORE HEADING
- SA1 B2+SEPW READ ENTRY POINT FLAGS
- SB3 FPWCL SET NUMBER OF ENTRY POINTS
- LX1 59-56 POSITION FIRST ENTRY POINT
- FPW22 PL X1,FPW23 IF NO SPECIAL ENTRY POINT
- SA2 B3+FPWC-1 READ ENTRY POINT NAME
- SB6 5
- RJ UPS STORE NAME
- FPW23 LX1 1 CHECK NEXT BIT
- SB3 B3-B1
- NZ B3,FPW22 IF MORE BITS TO CHECK
- JP FPWX EXIT
- FPWA BSS 0 LINE PROCESSOR JUMP TABLE
- LOC 0
- + JP FPW1
- + JP FPW2 PROCESS LINE 1
- + JP FPW4 PROCESS LINE 2
- + JP FPW5 PROCESS LINE 3
- + JP FPW6 PROCESS LINE 4
- + JP FPW7 PROCESS LINE 5
- + JP FPW8 PROCESS LINE 6
- + JP FPWX
- + JP FPW12
- + JP FPW13
- + JP FPWX
- + JP FPW14
- + JP FPWX
- + JP FPW20
- + JP FPWX
- + JP FPW21
- + JP FPWX
- LOC *O
- FPX SPACE 4,20
- ** FPX - FIND AND PACK EXCHANGE PACKAGE.
- *
- * ENTRY (X2) = 0, IF REQUEST FOR FIRST CPU EXCHANGE PACKAGE.
- * = ADDRESS OF THE ADDRESS OF THE DIRECTORY TABLE
- * ENTRY FOR THE EXCHANGE PACKAGE FOR CPU1.
- *
- * EXIT (X1) = 0, IF CPU1 NOT PRESENT OR NOT IN C170 MODE.
- * = ADDRESS OF THE ADDRESS OF THE DIRECTORY TABLE
- * ENTRY FOR THE EXCHANGE PACKAGE FOR CPU1.
- * EXCHANGE PACKAGE PACKED AT *BUF*.
- * TO *ERR15* IF C170 STATE XP NOT FOUND FOR CPU0.
- *
- * USES X - 1, 2, 3, 4, 6, 7.
- * A - 0, 1, 2, 3, 4, 6, 7.
- * B - 2, 3.
- *
- * CALLS FPR, PCM.
- *
- * MACROS GETCM, MOVE.
- FPX SUBR ENTRY/EXIT
- BX6 X2
- SA6 FPXA SAVE CPU1(800) ON/OFF
- SX6 B0 DO NOT DISPLAY RADIAL MCI
- SA1 .PXP
- RJ FPR FIND PROCESSOR RECORD
- ZR X2,ERR15 IF PROCESSOR EXCHANGE PACKAGE NOT FOUND
- SA1 FPXA
- SX6 BUF+20B
- NZ X1,FPX0 IF NOT FIRST RECORD
- SA2 NR SAVE CPU1 RECORD POINTER
- BX6 X2
- SA6 A1
- SX6 BUF
- FPX0 SA6 A1+B1 SET BUFFER POINTER
- ERRNZ FPXB-FPXA-1
- SX3 B0
- RJ PCM POSITION FOR READ
- SA4 FPXB
- SA0 X4
- GETCM A0,33 READ CYBER 170-8X5 EXCHANGE PACKAGE
- SA1 A0+B1
- AX1 -4
- SX1 X1-1
- ZR X1,FPX1 IF C170 VMID
- SA3 S2JPS
- RJ CEA POSITION TO JOB EXCHANGE PACKAGE IN *EI*
- SA4 FPXB
- SA0 X4
- GETCM A0,33 READ JOB EXCHANGE PACKAGE
- SA1 A0+B1
- AX1 -4
- SX1 X1-1
- ZR X1,FPX1 IF C170 VMID
- SA1 FPXB
- SX1 X1-BUF-20B
- NZ X1,ERR15 IF CPU0 NOT C170 VMID
- EQ FPXX CPU1 NOT C170 VMID
- FPX1 MOVE 5,A0+4,A0+1
- SA1 A0+3
- SA2 A0+B1
- BX6 X1
- LX7 X2
- SA6 A0+6 STORE MA
- AX7 32-12
- SA7 A1 STORE MODE
- SA1 A2-B1 CHANGE P TO A WORD ADDRESS
- MX4 -24
- BX2 -X4*X2 EXTRACT RA
- AX1 3
- IX6 X1-X2 FORM RELATIVE P
- SA6 A1
- SB2 B0
- MX6 0
- SA6 A0+7
- SA6 A0+17
- MX3 -18
- FPX2 SA1 A0+B2 FORM UPPER 10 WORDS OF XP
- SA2 A1+9 GET A-REGISTER
- BX6 -X4*X1
- BX7 -X3*X2
- SA2 A2+8 GET B-REGISTER
- LX6 18
- BX6 X6+X7
- BX7 -X3*X2
- LX6 18
- BX6 X6+X7
- SA6 A1 STORE EXCHANGE PACKAGE WORD
- SB2 B2+B1
- SB3 10B
- NE B3,B2,FPX2 IF MORE TO PACK
- MOVE 10B,A0+25,A0+10B MOVE X-REGISTERS
- SA1 FPXA GET CPU1(800) ON/OFF
- EQ FPXX RETURN
- FPXA CON 0 POINTER TO CPU1 EXCHANGE PACKAGE
- FPXB CON 0 BUFFER ADDRESS POINTER
- FRV SPACE 4,10
- ** FRV - FETCH REGISTER VALUE.
- *
- * ENTRY (X1) = SVA OF REGISTER.
- *
- * EXIT (X6) = 16/0, 12/SEG, 32/BYTE OFFSET.
- * (X2) = 0, IF PAGE FOUND.
- *
- * USES X - 2, 5, 6.
- *
- * CALLS ISM, NXB, PSM.
- FRV SUBR ENTRY/EXIT
- BX6 X1
- RJ PVM POSITION VIRTUAL MEMORY
- NZ X2,FRVX IF PAGE NOT FOUND
- RJ NXB
- BX5 X1 EXTRACT SEGMENT NUMBER
- RJ NXB
- LX5 16
- BX5 X5+X1
- RJ NXB
- LX5 16
- BX6 X5+X1
- SX2 0
- JP FRVX RETURN
- FSC SPACE 4,11
- ** FSC - FORMAT STATUS/CONTROL REGISTER CONTENTS.
- *
- * ENTRY X5 = SC16 CHARACTERS STRING ADDRESS.
- * B3 = NUMBER OF CHARACTERS.
- * A0 = ADDRESS OF 14 CHARACTER DESCRIPTION.
- * SCPA = 0 IF SC36 TO BE PROCESSED(CHARACTER STRING
- * WILL BE FOUND AT X5+ 100).
- *
- * USES ALL REGISTERS.
- *
- * CALLS MVE=,SSB,UPS,WOF.
- FSC SUBR
- RJ SSB CLEAR PRINT STRING
- SB2 1
- SB7 PRBF+15
- FSC1 SA2 A0+
- SB6 14
- RJ UPS
- SB7 B7+2 SPACE TWICE
- MOVE B3,X5,B7
- ZR B2,FSC2 IF DONE WITH SC36
- SA4 /DIRECT/SCPA
- NZ X4,FSC2 IF SC36 RECORD NOT FOUND
- SB2 0
- SX5 X5+100 SET SC36 CHARACTER STRING ADDRESS
- SB7 PRBF+65
- JP FSC1 CONTINUE
- FSC2 PRINT CCCH,116
- JP FSCX EXIT
- FTR SPACE 4,15
- ** FTR - FORMAT TWO PP COMMUNICATION REGISTERS.
- *
- * ENTRY A5 = ADDRESS OF FIRST REGISTER WORD.
- * X5 = FIRST REGISTER WORD.
- * FW = CURRENT PPU NUMBER.
- *
- * EXIT A5 IS ADVANCED BY 20B.
- *
- * USES X - 1, 2, 5, 6.
- * A - 1, 2, 5, 6.
- * B - 2, 4, 7.
- *
- * CALLS FPL.
- *
- * MACROS PRINT.
- FTR SUBR
- SX6 0
- SA6 FTRA CLEAR LINE INDEX
- PRINT (=2C )
- FTR1 SA1 FW
- SA2 FTRA
- SB2 X1 SET PPU NUMBER
- SB4 X2 SET LINE INDEX
- SB7 PRBF+7 PRINT STRING ADDRESS
- RJ FPL FORMAT PPU REGISTER WORD
- SB2 B2+1 ADVANCE PPU NUMBER
- SA5 A5+10B READ WORD FROM NEXT AREA
- SA1 FTRB
- NZ X1,FTR2 IF ONLY 1 AREA TO PRINT
- SB7 PRBF+65
- RJ FPL FORMAT REGISTER WORD
- FTR2 PRINT CCCH,B7-CCCH
- SA5 A5-7 READ NEXT WORD OF FIRST REGISTER
- SA1 FTRA
- SX6 X1+B1
- SA6 A1 ADVANCE LINE INDEX
- SX6 X6-10B
- NG X6,FTR1 IF MORE LINES TO FORMAT
- SA5 A5+10B UPDATE POINTER
- SX6 B0+ CLEAR 1 AREA FLAG
- SA6 FTRB
- JP FTRX EXIT
- FTRA BSS 1 LINE INDEX
- FTRB CON 0 PRINT ONLY 1 AREA FLAG
- FXA SPACE 4,10
- ** FXA - FORMAT EXCHANGE AREA.
- *
- * ENTRY (X1)= SVA OF EXCHANGE PACKAGE.
- * (X6)= NUMBER OF WORDS TO FORMAT.
- *
- * EXIT DESIRED AMOUNT OF EXCHANGE AREA PRINTED.
- *
- * USES A - 0, 1, 2, 3, 5, 6, 7.
- * X - 1, 2, 3, 5, 6, 7.
- * B - 6, 7.
- *
- * CALLS CDD, HTS, RMB, SSB, UPS.
- *
- * MACROS PRINT.
- FXA SUBR ENTRY/EXIT
- SA6 FXAA+1 SAVE TERMINATING CONDITION
- SX6 51 READ FULL BUFFER
- RJ RMB READ MEMORY BYTES
- SX7 0
- SA7 FXAA
- SA1 BUF+8 FETCH FRAME DESCRIPTOR
- SX2 0#F0
- SA3 FXAD DESCRIPTOR FOR FULL PACKAGE
- BX6 X3
- BX7 X1*X2 EXTRACT POSSIBLE ENDING A-REGISTER
- SA6 FXAA+2
- ZR X7,FXA1 IF EXCHANGE PACKAGE
- LX7 18-4
- IX3 X3+X7
- LX2 4
- BX6 X1*X2 EXTRACT STARTING X REGISTER
- LX6 12-8
- IX3 X6+X3
- LX2 -8
- BX6 X1*X2 EXTRACT ENDING X REGISTER
- LX6 6-0
- IX6 X6+X3
- LX6 59-23
- SA6 A6 SAVE STACK FRAME DESCRIPTOR
- FXA1 RJ SSB SPACE FILL BUFFER
- SA1 FXAA REGISTER TO DUMP
- SA5 FXAB+X1 REGISTER DESCRIPTOR
- SX2 X1
- LX2 2
- SA0 BUF+X2 POINTER TO REGISTER CONTENT
- RJ CDD GET DECIMAL REGISTER NUMBER
- BX2 X6
- LX2 59-11
- SB7 PRBF
- SB6 2
- RJ UPS PLACE REGISTER NUMBER IN OUTPUT LINE
- MX2 -17
- BX6 -X2*X5 EXTRACT MESSAGE ADDRESS
- SA6 FXAC
- AX5 17
- BX7 -X2*X5 EXTRACT 2 CHARACTER FIELD
- SA7 A6+B1
- SB7 B7+2
- SA2 X6 FETCH MESSAGE
- NZ X6,FXA3 IF MESSAGE SPECIFIED
- BX2 X7 2 CHARACTER FIELD
- LX2 59-11 LEFT JUSTIFY
- SB7 PRBF+11
- SB6 B1+B1
- SX5 B6+B6
- RJ UPS DISPLAY REGISTER NAME
- FXA2 SB7 B7+2 NEW POSITION IN OUTPUT LINE
- SA1 A0
- LX1 59-15 LEFT JUSTIFY 16 BIT DATA
- SB6 4
- RJ HTS DISPLAY 4 HEX DIGITS
- SA0 A0+1
- SX5 X5-1
- NZ X5,FXA2 IF MORE 16 BIT CHUNKS TO DISPLAY
- EQ FXA4 PRINT LINE
- FXA3 SB6 9
- RJ UPS UNPACK MESSAGE TO LINE
- SA2 FXAC+1 GET REGISTER NAME
- SB6 B1+B1
- SX5 B6+B6
- ZR X2,FXA2 IF NO REGISTER NAME
- SB7 PRBF+25
- LX2 59-11
- RJ UPS PLACE REGISTER NAME IN LINE
- SA1 A0
- LX1 59-15
- SB7 PRBF+15
- SB6 4
- RJ HTS DISPLAY 4 HEX DIGITS
- SA5 A0+B1
- LX5 16
- SA1 A0+2
- BX5 X5+X1
- LX5 16
- SA1 A0+3
- BX1 X5+X1
- LX1 59-47
- SB7 PRBF+29
- SB6 1
- RJ HTS DISPLAY RING NUMBER
- SB7 B7+B1
- SB6 3
- RJ HTS DISPLAY SEGMENT NUMBER
- SB7 B7+2
- SB6 8
- RJ HTS DISPLAY ADDRESS DATA
- FXA4 PRINT CCCH,B7-CCCH+1
- SA1 FXAA
- SA2 A1+B1
- SX6 X1+B1 INCREMENT REGISTER NUMBER
- SA6 A1
- IX2 X1-X2
- ZR X2,FXAX IF EXCHANGE PACKAGE DUMP FINISHED
- MX2 -6
- SA3 A2+B1
- BX6 X3
- LX6 6
- BX3 -X2*X6 ENDING REGISTER NUMBER
- IX1 X1-X3
- NZ X1,FXA1 IF MORE REGISTERS TO DUMP
- LX6 6
- SA6 A3 REPLACE DESCRIPTOR
- BX6 -X2*X6
- SA6 A1 SET NEW STARTING REGISTER
- ZR X6,FXAX IF END OF DUMP
- PRINT (=2C )
- EQ FXA1 DISPLAY NEXT REGISTER
- FXAA CON 0 REGISTER NUMBER
- CON 0 LAST REGISTER NUMBER
- CON 0 DUMP DESCRIPTOR
- FXAB BSS 0 REGISTER DESCRIPTORS
- P RFDSC 00,(LKEY )
- A0 RFDSC 00,(VMID/UVMI)
- A1 RFDSC 01,(FLGS/TRAP)
- A2 RFDSC 02,(USER MASK)
- A3 RFDSC 03,( MTR MASK)
- A4 RFDSC 04,(USER COND)
- A5 RFDSC 05,( MTR COND)
- A6 RFDSC 06,(KYPC/LPID)
- A7 RFDSC 07,(KYPT MASK)
- A8 RFDSC 08,(KYPT CODE)
- A9 RFDSC 09,( )
- AA RFDSC 0A,(INTV TIMR)
- AB RFDSC 0B,( )
- AC RFDSC 0C,(BASE CONS)
- AD RFDSC 0D,( )
- AE RFDSC 0E,(MODL FLGS)
- AF RFDSC 0F,(SEGT LENG)
- X0 RFDSC 10
- X1 RFDSC 11
- X2 RFDSC 12
- X3 RFDSC 13
- X4 RFDSC 14
- X5 RFDSC 15
- X6 RFDSC 16
- X7 RFDSC 17
- X8 RFDSC 18
- X9 RFDSC 19
- XA RFDSC 1A
- XB RFDSC 1B
- XC RFDSC 1C
- XD RFDSC 1D
- XE RFDSC 1E
- XF RFDSC 1F
- RFDSC 20,(TRACE REG)
- UP RFDSC 21,(SEGMENT )
- TP RFDSC 22,(TBL ADDR )
- DP RFDSC 23,(DB I/DB M)
- R1 RFDSC 24,(MAX RING )
- R2 RFDSC 25,( )
- R3 RFDSC 26,( )
- R4 RFDSC 27,( )
- R5 RFDSC 28,( )
- R6 RFDSC 29,( )
- R7 RFDSC 2A,( )
- R8 RFDSC 2B,( )
- R9 RFDSC 2C,( )
- RA RFDSC 2D,( )
- RB RFDSC 2E,( )
- RC RFDSC 2F,( )
- RD RFDSC 30,( )
- RE RFDSC 31,( )
- RF RFDSC 32,( )
- FXAC CON 0 MESSAGE ADDRESS
- CON 0 REGISTER NAME
- FXAD VFD 6/16,6/17,6/32,6/33,6/51,6/0,6/1,6/17,6/17,6/0
- FXC SPACE 4,15
- ** FXC - FORMAT EXCHANGE PACKAGE REGISTER ADDRESS CONTENTS.
- *
- * ENTRY (B2) = ADDRESS OF EXCHANGE PACKAGE REGISTER ADDRESS.
- * (X5) = STRING BUFFER ADDRESS FOR CONTENTS.
- * (FW) = ADDRESS OF CONTROL POINT AREA.
- *
- * EXIT REGISTER AND CONTENTS PLACED IN STRING BUFFER.
- *
- * USES A - 1, 2, 6.
- * B - 6, 7.
- * X - 1, 2, 6.
- *
- * CALLS FDW, GFL, POM, SDI.
- *
- * MACROS GETCM.
- FXC SUBR ENTRY/EXIT
- SA1 FW GET FIELD LENGTH AND REFERENCE ADDRESS
- RJ GFL
- SA6 BA
- SA1 B2 CHECK ADDRESS AGAINST FL
- IX2 X1-X7
- BX6 X6-X6 CLEAR VALUE
- PL X2,FXC1 IF ADDRESS .GE. FL
- RJ POM POSITION DUMP FILE
- GETCM READ WORD
- FXC1 SA2 =4000005B CONVERT REGISTER ADDRESS CONTENTS
- SB7 X5
- BX1 X6
- RJ FDW FORMAT WORD
- BX2 X1 SET DATA WORD
- SB6 10
- RJ SDI SET DISPLAY CODE INTERPRETATION
- SX6 B0+ CLEAR REFERENCE ADDRESS
- SA6 BA
- EQ FXCX RETURN
- FXW SPACE 4,16
- ** FXW - FORMAT EXCHANGE PACKAGE WORD.
- *
- * ENTRY X1 = WORD INDEX.
- * X5 = WORD.
- * A5 = WORD ADDRESS.
- * B7 = PRINT STRING ADDRESS.
- * = COMPLEMENT OF PRINT STRING ADDRESS IF CONTENTS
- * OF REGISTER ADDRESSES TO BE DISPLAYED.
- *
- * EXIT A5 IS ADVANCED.
- *
- * USES X - 0, 1, 2, 3, 5, 6.
- * A - 1, 2, 3, 5, 6, 7.
- * B - 2, 4, 6, 7.
- *
- * CALLS COD, DOS, FDW, FXC, SDI, UPS.
- FXW SUBR
- BX6 X6-X6
- PL B7,FXW1 IF CONTENTS OF ADDRESS NOT TO BE DISPLAYED
- SB7 -B7 SET PRINT STRING ADDRESS
- SX6 B1 SET DISPLAY CONTENTS FLAG
- FXW1 SA6 FXWE
- SX2 X1-10B
- PL X2,FXW6 IF X-REGISTER
- SB4 B7 SAVE B7
- SA2 FXWA+X1 READ REGISTER NAME
- SA3 CF CHECK IF A CYBER 176
- NZ X3,FXW2 IF NOT CYBER 176
- LX2 42 READ CYBER 176 REGISTER NAME
- * SET REGISTER NAMES.
- FXW2 SB6 3 SET CONTROL REGISTER NAME
- RJ UPS
- NZ X3,FXW3 IF NOT A CYBER 176
- LX2 18 SHIFT TO NEXT A REGISTER NAME
- FXW3 SB7 B7+11 SET A-REGISTER NAME
- SB6 2
- RJ UPS
- SB7 B7+9 SET B-REGISTER NAME
- SB6 2
- RJ UPS
- * SET A AND B-REGISTER CONTENTS NAMES.
- SA1 FXWE
- ZR X1,FXW4 IF NOT TO DISPLAY ADDRESS CONTENTS
- SA2 FXWB
- SB7 B7+9
- SB6 5
- RJ UPS UNPACK TO STRING BUFFER
- SB7 B7+37
- SB6 5
- RJ UPS UNPACK TO STRING BUFFER
- * SET REGISTERS IN STRING BUFFER.
- FXW4 SB7 B4+4
- BX1 X5
- LX1 24 SET CONTROL REGISTER
- SB4 8
- RJ DOS
- MX0 -18
- BX7 -X0*X5
- SA7 FXWD SAVE B-REGISTER
- BX1 X5
- LX1 -18 SET A-REGISTER
- BX7 -X0*X1
- SA7 A7-B1 SAVE A-REGISTER
- SB7 B7+3
- SB4 6
- RJ DOS
- BX1 X5 SET B-REGISTER
- SB7 B7+3
- SX5 PRBF+42
- RJ DOS
- * FORMAT A AND B-REGISTER CONTENTS.
- SA1 FXWE
- ZR X1,FXW5 IF NOT TO DISPLAY ADDRESS CONTENTS
- SB2 FXWC
- RJ FXC
- SB2 FXWD
- SX5 PRBF+84
- RJ FXC
- SA1 FXWB
- SA2 =100000000010000B
- IX6 X1+X2
- SA6 A1
- FXW5 SA5 A5+B1 READ NEXT WORD
- JP FXWX EXIT
- * FORMAT X - REGISTER.
- FXW6 SA3 FXWB RESET REGISTER NUMBER
- SA2 =10H(A0)=(B0)=
- BX6 X2
- SA6 A3
- SA2 FXWA+X1 READ REGISTER NAME
- BX1 X5 SET DATA WORD
- MX0 -18 SAVE ADDRESS
- BX6 -X0*X5
- SA6 FXWC
- SB6 4
- RJ UPS STORE REGISTER NAME
- SA3 FXWE
- ZR X3,FXW7 IF NOT TO DISPLAY ADDRESS CONTENTS
- SB4 B7+ SAVE STRING BUFFER ADDRESS
- SB6 5
- SB7 B4+37
- RJ UPS UNPACK TO STRING BUFFER
- SB7 B4+
- FXW7 SA2 =4000005B
- RJ FDW CONVERT REGISTER WORD
- BX2 X1 SET DATA WORD
- SB6 10
- RJ SDI SET DISPLAY CODE INTERPRETATION
- SA1 FXWE
- ZR X1,FXW5 IF NOT TO DISPLAY ADDRESS CONTENTS
- SB2 FXWC FORMAT X - REGISTER CONTENTS
- SX5 B7+7
- RJ FXC
- EQ FXW5 EXIT
- FXWA BSS 0 REGISTER NAMES
- DATA 10LP A0B0P
- DATA 10LRA A1B1RA
- DATA 10LFL A2B2FL
- DATA 10LEM A3B3PSD
- DATA 10LRAEA4B4RAE
- DATA 10LFLEA5B5FLE
- DATA 10LMA A6B6MA
- DATA 10L A7B7EEA
- DATA 10LX0 (X0)=
- DATA 10LX1 (X1)=
- DATA 10LX2 (X2)=
- DATA 10LX3 (X3)=
- DATA 10LX4 (X4)=
- DATA 10LX5 (X5)=
- DATA 10LX6 (X6)=
- DATA 10LX7 (X7)=
- FXWB DATA 10L(A0)=(B0)= REGISTER CONTENTS NAMES
- FXWC CON 0 BINARY A-REGISTER ADDRESS
- FXWD CON 0 BINARY B-REGISTER ADDRESS
- FXWE CON 0 DISPLAY REGISTER ADDRESS CONTENTS FLAG
- GAT SPACE 4,28
- ** GAT - GET ADDRESS TOKEN.
- *
- * ENTRY (GATA) = 0 IF PREVIOUS SEPARATOR WAS #.
- *
- * EXIT (B6) = 0 IF NO TOKEN OBTAINED.
- * IF (B6) .NE. 0
- * (X4) = TOKEN TYPE FLAG.
- * IF (X4) = 0, TOKEN IS A HEX NUMBER.
- * (X1) = CHARACTER REPRESENTATION OF TOKEN.
- * (X6) = BINARY REPRESENTATION OF HEX NUMBER.
- * IF (X4) .LT. 0, TOKEN IS AN XP SYMBOL.
- * (X1) = (X6) = ACTUAL RMA VALUE.
- * (X2) = REGISTER LIST ENTRY POSITIONED WITH
- * *P.RMA* IN BIT 59.
- * (A1) = ADDRESS IN *DSDI* OF ACTUAL VALUE IN X1.
- * IF (X4) .GT. 0, TOKEN NOT AN XP SYMBOL, BUT IS
- * PROBABLY A REGISTER SYMBOL.
- * (X1) = CHARACTER REPRESENTATION OF TOKEN.
- * (X2) = REGISTER LIST ENTRY POSITIONED WITH
- * *P.RMA* IN BIT 59.
- * (X6) = ADDRESS WITH *DSDI* WHERE REGISTER
- * CAN BE FOUND.
- *
- * USES X - 1, 2, 3, 4, 6, 7.
- * A - 1, 3, 4, 6.
- * B - 6.
- *
- * CALLS ASX.
- GAT SUBR ENTRY/EXIT
- MX6 0
- SB6 B0
- SA4 GATA CHECK TERMINATOR
- NZ X4,GATX IF INCORRECT TERMINATOR
- RJ ASX GET HEX NUMBER
- SA3 CH CHECK TERMINATOR
- MX2 1 SET NUMBER FLAG
- SA3 X3
- SA1 ASXA FETCH IDENTIFIER
- SX7 X3-1R#
- SA7 GATA *#* FLAG
- CX3 X1
- SB6 X3
- ZR B6,GATX IF NULL TOKEN
- ZR X4,GATX IF VALID HEX NUMBER
- SA4 A7+B1
- ERRNZ GATA+1-GATB CODE ASSUMES VALUE
- BX6 X1
- SA6 GATC SAVE SEARCH TERMINATOR
- GAT1 BX7 X4-X1 COMPARE ENTRIES
- SX2 X4
- AX7 -24
- AX4 18
- SX6 X4
- SA4 A4+B1 FETCH NEXT LIST ENTRY
- NZ X7,GAT1 IF ENTRY NOT YET FOUND
- ZR X2,ERR6 IF ENTRY IS INCORRECT
- LX2 59-P.RMA
- BX4 X2
- LX4 59-P.XCH-59+P.RMA
- PL X4,GATX IF NOT AN EXCHANGE PACKAGE SYMBOL
- SA1 X6
- BX6 X1 FETCH ACTUAL RMA VALUE
- JP GATX RETURN
- GATA CON 0
- GATB BSS 0 SYMBOL TABLE
- P.XCH EQU 0 XCH FLAG BIT
- V.XCH EQU 1S0
- P.REG EQU 1 REGISTER FLAG BIT
- V.REG EQU 1S1
- P.RMA EQU 3 RMA FLAG BIT
- V.RMA EQU 1S3
- VFD 24/0LPVA,18/S2PVA,18/V.REG
- VFD 24/0LP,18/2/2+BUF,18/V.REG
- VFD 24/0LRN1,18/298/2+BUF,18/V.REG
- VFD 24/0LRN2,18/306/2+BUF,18/V.REG
- VFD 24/0LRN3,18/314/2+BUF,18/V.REG
- VFD 24/0LRN4,18/322/2+BUF,18/V.REG
- VFD 24/0LRN5,18/330/2+BUF,18/V.REG
- VFD 24/0LRN6,18/338/2+BUF,18/V.REG
- VFD 24/0LRN7,18/346/2+BUF,18/V.REG
- VFD 24/0LRN8,18/354/2+BUF,18/V.REG
- VFD 24/0LRN9,18/362/2+BUF,18/V.REG
- VFD 24/0LRN10,18/370/2+BUF,18/V.REG
- VFD 24/0LRN11,18/378/2+BUF,18/V.REG
- VFD 24/0LRN12,18/386/2+BUF,18/V.REG
- VFD 24/0LRN13,18/394/2+BUF,18/V.REG
- VFD 24/0LRN14,18/402/2+BUF,18/V.REG
- VFD 24/0LRN15,18/410/2+BUF,18/V.REG
- VFD 24/0LRA0,18/10/2+BUF,18/V.REG
- VFD 24/0LRA1,18/18/2+BUF,18/V.REG
- VFD 24/0LRA2,18/26/2+BUF,18/V.REG
- VFD 24/0LRA3,18/34/2+BUF,18/V.REG
- VFD 24/0LRA4,18/24/2+BUF,18/V.REG
- VFD 24/0LRA5,18/50/2+BUF,18/V.REG
- VFD 24/0LRA6,18/58/2+BUF,18/V.REG
- VFD 24/0LRA7,18/66/2+BUF,18/V.REG
- VFD 24/0LRA8,18/74/2+BUF,18/V.REG
- VFD 24/0LRA9,18/82/2+BUF,18/V.REG
- VFD 24/0LRAA,18/90/2+BUF,18/V.REG
- VFD 24/0LRAB,18/98/2+BUF,18/V.REG
- VFD 24/0LRAC,18/106/2+BUF,18/V.REG
- VFD 24/0LRAD,18/114/2+BUF,18/V.REG
- VFD 24/0LRAE,18/122/2+BUF,18/V.REG
- VFD 24/0LRAF,18/130/2+BUF,18/V.REG
- VFD 24/0LUTP,18/274/2+BUF,18/V.REG
- VFD 24/0LTP,18/282/2+BUF,18/V.REG
- VFD 24/0LMPS,18/S2MPS,18/V.RMA+V.XCH
- VFD 24/0LJPS,18/S2JPS,18/V.RMA+V.XCH
- VFD 24/0LRMA,18/S2RMA,18/V.RMA+V.XCH
- VFD 24/0LPXP,18/0,18/V.XCH
- GATC CON 0 END OF TABLE
- GCS SPACE 4,10
- ** GCS - GET CPU STATUS.
- *
- * ENTRY (X5) = FWA OF CPA IN *TCMT*.
- * (B7) = STRING BUFFER POINTER.
- *
- * EXIT CPU PRIORITY PLACED IN STRING BUFFER.
- *
- * USES X - 0, 1, 2, 6.
- * A - 1, 2, 6.
- * B - 3.
- GCS SUBR ENTRY/EXIT
- MX0 3
- SA1 X5+STSW
- BX1 X0*X1
- LX1 4 FORM STATUS*6
- SA2 GCSA
- SB3 X1
- LX1 1
- SB3 B3+X1
- AX2 B3,X2 SHIFT SELECTED STATUS TO BITS 5-0
- MX0 -6
- BX6 -X0*X2
- SA6 B7 SET IN STRING BUFFER
- EQ GCSX RETURN
- GCSA DATA 10H IXW BA
- GDA SPACE 4,10
- ** GDA - GET DFT/OS BUFFER FWA (DFT CONTROL WORD).
- *
- * EXIT (X3) = DFT CONTROL WORD ADDRESS WITHIN BUFFER.
- * = 0 IF DFT/OS BUFFER NOT FOUND.
- * (X6) = DFT CONTROL WORD ADDRESS.
- *
- * USES X - 0, 1, 3.
- * A - 1, 3.
- *
- * CALLS DRA.
- GDA SUBR ENTRY/EXIT
- SA1 F.TCMT
- SA3 X1+EIBP POINTER TO *EICB*
- MX0 -32
- BX3 -X0*X3
- ZR X3,GDAX IF NO *EICB*
- IX3 X1+X3 GET DFT/OS POINTER
- SA3 X3+/VE/DSCM+3
- ZR X3,GDAX IF NO DFT/OS BUFFER
- RJ DRA GET ADDRESS OF DFT CONTROL WORD
- IX3 X1+X6
- EQ GDAX RETURN
- GDB SPACE 4,14
- ** GDB - GET DAYFILE BUFFER.
- *
- * ENTRY (CN) = CONTROL POINT NUMBER.
- * = 0, IF SYSTEM DAYFILE.
- * = -1, IF ACCOUNTING DAYFILE.
- * = -2, IF ERRLOG DAYFILE.
- * = -3, IF BML DAYFILE.
- * (OP) = PCPA FWA OFFSET (0 IF DUMPING CONTROL POINTS).
- *
- * EXIT (GDBB) = DAYFILE BUFFER LENGTH.
- * (GDBC) = MEMORY ADDRESS OF POINTERS.
- * (GDBD) = NONZERO, IF DAYFILE BUFFER POINTERS EXTEND
- * BEYOND MACHINE FL.
- * DAYFILE BUFFER POINTERS STORED IN TABLE *TSC1*
- * DAYFILE BUFFER STORED IN TABLE *TSCR*.
- *
- * USES X - 0, 1, 2, 3, 4, 6.
- * A - 0, 1, 2, 3, 4, 6, 7.
- * B - 2, 5.
- *
- * CALLS CNL, GFL, PCM, SCM.
- *
- * MACROS ALLOC, GETCM, PRINT.
- GDB5 SX6 B1 SET POINTERS AS INACCURATE
- SA6 GDBD
- PRINT (=2C )
- PRINT (=C+ *********WARNING - INACCURATE DAYFILE BUFFER POIN
- ,TERS+)
- PRINT (=2C )
- GDB6 SX1 B0 INDICATE SUFFICIENT NFL SPACE
- GDB SUBR ENTRY/EXIT
- SX6 0
- SA6 GDBD PRESET POINTERS AS ACCURATE
- SA1 L.TSC1 GET TABLE LENGTH
- SX3 3 LENGTH OF DAYFILE POINTERS
- IX1 X3-X1 CHANGE IN LENGTH
- SB2 A0 SAVE (A0)
- ALLOC TSC1,X1
- SA0 B2 RESTORE (A0)
- SA4 CN CONTROL POINT NUMBER
- SA1 NC
- NG X4,GDB1 IF ACCOUNTING, ERRLOG OR BML DAYFILE
- ZR X4,GDB2 IF SYSTEM DAYFILE
- SX2 X1+B1
- BX3 X2-X4
- NZ X3,GDB4 IF NOT SYSTEM CONTROL POINT
- SX4 B0
- EQ GDB2 PROCESS SYSTEM DAYFILE POINTERS
- GDB1 BX4 -X4
- GDB2 SA1 F.TCMT
- SB5 X1 TCMT BASE ADDRESS
- SA3 B5+DFPP LOW CORE DAYFILE BUFFER POINTERS POINTER
- LX3 24
- SX3 X3
- SX2 3 CALCULATE POINTER OFFSET
- IX4 X4*X2
- IX6 X3+X4 ADDRESS OF DAYFILE BUFFER POINTERS
- SA6 GDBC
- SX1 B5+X6 GET ABSOLUTE ADDRESS OF POINTERS
- SA2 F.TSC1 MOVE POINTER WORDS TO TSC1
- SA1 X1
- BX6 X1
- SA6 X2
- SA1 A1+B1
- BX6 X1
- SA6 A6+B1
- SA1 A1+B1
- BX6 X1
- SA6 A6+B1
- GDB3 MX1 -12
- SA3 F.TSC1 SET FWA OF POINTERS
- SA3 X3
- SA2 A3+B1 GET DAYFILE BUFFER LENGTH
- AX2 24
- BX6 -X1*X2
- MX2 -24
- SA6 GDBB SAVE BUFFER LENGTH
- SA1 F.TCMT GET MACHINE FL
- SA1 X1+MABL
- AX1 12
- BX1 -X2*X1
- LX1 6
- AX3 36 GET BUFFER FWA
- IX2 X3-X1
- IX2 X2+X6
- PL X2,GDB5 IF BUFFER LWA+1 BEYOND MACHINE FL
- ZR X6,GDBX IF NO BUFFER
- RJ SCM SELECT CM RECORD
- SA7 RI
- RJ PCM POSITION 60 BIT MEMORY
- * ALLOCATE BUFFER SPACE AND READ THE DAYFILE BUFFER.
- SA3 GDBB GET BUFFER LENGTH
- SA1 L.TSCR
- IX1 X3-X1
- SB2 A0+ SAVE A0
- ALLOC TSCR,X1 ALLOCATE SCRATCH TABLE SPACE
- SA0 B2 RESTORE A0
- GETCM X2,X3 READ BUFFER TO TABLE
- EQ GDB6 INDICATE SUFFICIENT NFL SPACE
- GDB4 RJ CNL CHECK NFL LENGTH
- NG X1,GDBX IF INSUFFICIENT NFL SPACE
- SA2 OP ADD PCPA OFFSET
- LX4 7
- IX1 X4+X2
- RJ GFL GET CONTROL POINT RA
- SX3 DAPN
- IX3 X6-X3 ABSOLUTE ADDRESS OF POINTER WORDS
- BX6 X3
- SA6 GDBC
- RJ SCM SELECT CM RECORD
- SA7 RI
- RJ PCM POSITION TO CM RECORD
- SA2 F.TSC1 READ POINTER WORDS TO TSC1
- GETCM X2,3
- SA1 GDBC FORM ABSOLUTE VALUE FOR *FIRST*
- SX0 DAYN-DAPN
- SA2 F.TSC1
- IX6 X1-X0
- SA1 X2
- LX6 36
- BX6 X1+X6
- SA6 A1
- EQ GDB3 READ DAYFILE BUFFER
- GDBB BSS 1 DAYFILE BUFFER LENGTH
- GDBC BSS 1 MEMORY ADDRESS OF POINTERS
- GDBD BSS 1 INACCURATE BUFFER POINTERS FLAG
- GEE SPACE 4,15
- ** GEE - GET EJT ENTRY.
- *
- * ENTRY (FW) = CPA FWA.
- * (RI) = CM RANDOM INDEX.
- *
- * EXIT (X1) = 0 IF CONTROL POINT NOT ACTIVE.
- * (X5) = FWA OF EJT ENTRY IF ACTIVE.
- * EJT ENTRY STORED AT *BUF* IF ACTIVE.
- *
- * USES X - 0, 1, 2, 3, 4, 5, 6.
- * A - 1, 2, 3, 4.
- *
- * CALLS PCM.
- *
- * MACROS GETCM.
- GEE2 SX1 0 SET INACTIVE CP
- GEE SUBR ENTRY/EXIT
- SA2 F.TCMT SET FWA EJT ENTRY
- SA1 X2+EJTP
- SA4 FW
- AX1 36 FWA EJT
- IX3 X4+X2 FWA CONTROL POINT AREA
- SA3 X3+TFSW
- MX0 12
- BX6 X0*X3
- SX3 EJTE
- NZ X6,GEE1 IF ACTIVE CP
- SA2 NC CHECK FOR SYSTEM CP
- SX2 X2+1
- LX2 7
- IX2 X2-X4
- NZ X2,GEE2 IF INACTIVE CP
- GEE1 LX6 12
- SA6 GEEA SAVE EJT ORDINAL
- IX3 X6*X3
- IX3 X1+X3
- SX5 X3 SAVE FWA EJT ENTRY
- RJ PCM POSITION TO EJT ENTRY
- GETCM BUF,EJTE
- SX1 1 SET EJT ENTRY FOUND
- EQ GEEX RETURN
- GEEA CON 0 EJT ORDINAL
- GFL SPACE 4,15
- ** GFL - GET FL AND RA.
- *
- * ENTRY (X1) = RELATIVE CPA/PCPA ADDRESS.
- *
- * EXIT (X1) = (X1)+(F.TCMT).
- * (X2) = *FLSW* WORD OF CPA/PCPA, RIGHT SHIFTED 12 BITS.
- * (X6) = RA.
- * (X7) = FL.
- *
- * USES X - 1, 2, 6, 7.
- * A - 2.
- GFL SUBR ENTRY/EXIT
- SA2 F.TCMT
- IX1 X1+X2
- MX7 -12
- SA2 X1+FLSW
- BX7 -X7*X2 FL/100B
- AX2 12
- MX6 -15
- BX6 -X6*X2 RA/100B
- LX6 6 RA
- LX7 6 FL
- EQ GFLX RETURN
- GHA SPACE 4,10
- ** GHA - GET HARDWARE ADDRESS.
- *
- * ENTRY INPUT LINE OF FORM -
- * NNNNN. - REAL MEMORY ADDRESS.
- * ASID#NNNNNNNN. - SYSTEM VIRTUAL ADDRESS.
- * SEG#NNNNNNNN#EXCH. - PVA.
- * REG#EXCH. - PVA FROM EXCHANGE PACKAGE.
- * NNNNNNNN#REG#EXCH. - SPECIFIC BYTE OFFSET.
- *
- * EXIT (X6) = REAL MEMORY ADDRESS/SVA.
- * (B6) = 0, IF NO ADDRESS DECODED.
- *
- * CALLS ASX, FRV, GXA, LTE.
- GHA SUBR ENTRY/EXIT
- SA1 CHAR
- SX2 100B
- GHA1 SA1 A1+B1 FLAG THE *+* AND *-* CHARACTERS
- SB6 X1-1R+
- BX6 X2+X1
- NG B6,GHA1 IF NOT A SEPARATOR
- SX1 X1-1R.
- ZR X1,GHA2 IF LINE TERMINATOR
- GT B6,B1,GHA1 IF NOT A *+* OR *-*
- SA6 A1
- JP GHA1 CHECK NEXT CHARACTER
- GHA2 SX6 0
- SA6 GATA CLEAR GAT FLAG
- RJ GAT GET ADDRESS TOKEN
- ZR B6,GHA5 IF NO TOKEN
- MX7 -32
- SA7 GHAA SET FLAG
- PL X2,GHA6 IF NOT A RMA SYMBOL OR A NUMBER
- SA6 A7
- RJ GAT GET TOKEN
- ZR B6,GHA4 IF ONLY RMA OR NUMBER
- SA1 GHAA FETCH ASID/SEGMENT
- LX1 32
- PL X2,GHA6 IF NOT A NUMBER OR RMA SYMBOL
- BX6 X1+X6 FORM SVA/PVA
- SA6 A1
- RJ GXA GET EXCHANGE ADDRESS
- ZR B6,GHA4 IF NO SYMBOL SPECIFIED
- SA6 GHAB SAVE SEGMENT TABLE LENGTH/ADDRESS
- NG X2,GHA8 IF EXCHANGE ADDRESS SPECIFIED
- JP ERR6 NOT GOOD AT ALL
- GHA3 RJ GAT
- GHA4 NZ B6,ERR6 IF BAD SYNTAX
- SA1 GHAA FETCH SVA
- BX6 X1
- SB6 B1
- GHA5 SA1 CH CHECK DELIMITER
- SA2 X1
- SB2 X2-1R+-100B
- NG B2,GHAX IF NOT A SPECIAL CHARACTER
- SX7 -B2
- AX7 1
- SA7 GHAB
- RJ ASX GET HEX DIGIT
- ZR B6,ERR6 IF NO NUMBER GIVEN
- NZ X4,ERR6 IF NOT A HEX NUMBER
- SA1 GHAA FETCH VALUE TO INCREMENT
- SA2 A1+B1 FETCH SIGN
- ERRNZ GHAA+1-GHAB
- BX6 X2-X6
- IX6 X1+X6
- SA6 A1
- JP GHA5 CHECK FOR END OF ADDRESS
- GHA6 LX2 59-P.REG-59+P.RMA
- PL X2,ERR6 IF NOT A REGISTER
- SA6 GHAB SAVE REGISTER POSITION
- RJ GXA GET EXCHANGE ADDRESS
- ZR B6,ERR6 IF NOT SPECIFIED
- PL X2,ERR6 IF NOT AN EXCHANGE ADDRESS
- SA1 GHAB FETCH REGISTER POSITION
- SA2 X1
- SA6 A1
- SB2 X1-BUF
- BX6 X2
- NG B2,GHA7 IF PSEUDO REGISTER
- SA1 A2+B1
- SA3 A1+B1
- LX1 16
- LX2 32
- BX6 X1+X3
- BX6 X2+X6
- GHA7 RJ EVA EXPAND VIRTUAL ADDRESS
- SA1 GHAA GET REPLACEMENT BYTE VALUE
- ZR X2,ERR44 IF NIL POINTER
- SA7 A1 SAVE REGISTER VALUE
- NG X1,GHA8 IF NO BYTE REPLACEMENT
- BX7 X6+X1
- SA7 A1
- GHA8 SB2 GHAA (SEGMENT, EXCHANGE ADDRESS)
- RJ SVA DETERMINE ASID
- SA6 GHAA
- JP GHA3 CHECK FOR PROPER ADDRESS TERMINATION
- GHAA DATA 0 BYTE OFFSET
- GHAB DATA 0 EXCHANGE PACKAGE ADDRESS
- GID SPACE 4,10
- ** GID - GET ELEMENT IDENTIFIER.
- *
- * ENTRY (X1) = RECORD IDENTIFIER.
- *
- * EXIT (X6) = ELEMENT ID/0#10.
- * (X7) = ELEMENT ID.
- *
- * USES X - 5, 6, 7.
- * A - 6.
- *
- * CALLS RDR, SFR.
- GID SUBR ENTRY/EXIT
- RJ RDR READ DUMP RECORD
- ZR X2,ERR14 IF RECORD NOT FOUND
- SX5 /IOU/EIMR ELEMENT ID REGISTER
- RJ SFR SEARCH FOR REGISTER
- NG X1,ERR14 IF REGISTER NOT FOUND
- MX5 -8
- AX7 16
- BX7 -X5*X7
- BX6 X7
- AX6 4
- EQ GIDX RETURN
- GNF SPACE 4,21
- ** GNF - GET NEXT FILE.
- *
- * ENTRY FI = CURRENT FNT INDEX.
- * CN = CONTROL POINT NUMBER.
- * (RC) = RA OF CURRENT CONTROL POINT.
- *
- * EXIT X1 = 0 IF END OF FNT.
- * .NE.0 IF FILE FOUND.
- * FI IS UPDATED.
- * GNFA = FILE INFORMATION AS FOLLOWS -
- *
- * +0 - FNT ORDINAL OF FILE.
- * +1 - FNT.
- * +2 - FST.
- * +3 - FUT.
- * +4 - EST ADDRESS.
- * +5 - EST.
- *
- * SAVES X - 5.
- * B - 1.
- * A - 0,5.
- GNF SUBR
- SA1 F.TCMT
- SB2 X1 TCMT TABLE BASE ADDRESS
- SA1 F.TNFL FORM ADDRESS OF RA IN TNFL
- SA2 L.TNFL
- IX4 X1+X2
- SA2 CN
- SA1 NC
- SX1 X1+B1
- BX1 X1-X2
- ZR X1,GNFX IF SYSTEM CONTROL POINT
- SA5 FI
- EQ GNF3 ENTER SEARCH LOOP
- GNF2 IX2 X4-X5 READ NEXT FNT ENTRY
- SX5 X5+LENF ADVANCE FNT ORDINAL
- SA1 X2
- NZ X1,GNF4 IF ENTRY PRESENT
- GNF3 SA1 L.TNFL
- IX1 X1-X5
- PL X1,GNF2 IF NOT END OF FNT
- SX1 0
- JP GNFX EXIT
- * SET FILE INFORMATION IN PARAMETER BLOCK.
- GNF4 BX6 X5 SAVE FNT ORDINAL FOR NEXT CALL
- SA6 FI
- IX7 X4-X2
- SA7 GNFA SET FNT ORDINAL
- BX6 X1 SET FNT CONTENTS
- SA6 A7+B1
- SA1 A1+B1
- BX7 X1 SET FST CONTENTS
- SA7 A6+B1
- AX7 48
- SX0 X7
- SA1 A1+B1 READ FUT
- BX6 X1 SET FUT
- SA6 A7+B1
- SA1 B2+ESTP GET EST POINTER WORD
- AX1 36
- SX1 X1+EQDE
- R= X2,ESTE
- IX0 X0*X2
- IX7 X0+X1
- SA7 A6+B1
- SA1 X7+B2 READ EST
- BX6 X1
- SA6 A7+B1
- SX1 B1 SET FILE FOUND
- JP GNFX EXIT
- GNFA BSS 0 FILE PARAMETERS
- LOC 0
- CON 0 FNT ORDINAL
- CON 0 FNT
- CON 0 FST
- CON 0 FUT
- CON 0 EST ADDRESS
- CON 0 EST
- LOC *O
- GPS SPACE 4,15
- ** GPS - GET PP SAVE AREA ENTRY.
- *
- * EXIT (X5) = 0, IF PP NOT FOUND IN PP SAVE AREA.
- *
- * USES X - ALL.
- * A - ALL.
- * B - 2, 3, 4, 5, 6, 7.
- *
- * CALLS CPN, PCM, SCM.
- *
- * MACROS GETCM.
- GPS SUBR ENTRY/EXIT
- SA1 F.TCMT
- SA3 X1+PPSP GET FWA AND NUMBER OF SAVE AREAS POSSIBLE
- MX5 -12
- BX5 -X5*X3 NUMBER OF SAVE AREA ENTRIES
- ZR X5,GPSX IF NO ISHARED DEVICES
- SA4 PC FWA OF PP COMMUNICATION AREA
- SX4 X4+B1 OUTPUT REGISTER ADDRESS FOR PP 0
- LX3 -12
- SX6 X3-PPSA FWA OF SAVE AREAS - *PPSA*
- SA6 GPSB
- RJ CPN GET CONVERTED PP NUMBER
- LX6 3
- IX6 X6+X4 OUTPUT REGISTER ADDRESS FOR THIS PP
- SA6 GPSC
- SA4 SBTL1 PRESERVE SUBTITLE
- RJ SCM
- BX6 X4 RESTORE SUBTITLE
- SA7 RI
- SA6 A4
- * CHECK NEXT ENTRY.
- GPS2 ZR X5,GPSX IF PP NOT FOUND
- SX7 X5-1
- SA3 GPSB GET PP SAVE ENTRY FWA
- SA7 GPSA STORE INDEX
- SX7 X3+PPSA
- SA7 A3
- SX3 X7
- RJ PCM POSITION DUMP FILE
- GETCM GET FWA OF THIS PP BUFFER IN X6
- SA1 GPSC GET OUTPUT REGISTER ADDRESS FOR THIS PP
- SA5 GPSA RESTORE INDEX
- MX3 12
- BX3 X3*X6
- LX3 12
- BX1 X1-X3
- NZ X1,GPS2 IF PP DATA NOT FOUND IN PP SAVE AREA
- SA6 PSAV SAVE THE FIRST WORD
- SA6 GPSD
- GETCM PSAV+1,PPSA-1 GET REST OF PP SAVE AREA
- * MOVE BLOCKS FROM *PSAV* TO *PBUF*.
- SX6 1S1 2**N-1 NUMBER OF BLOCKS TO MOVE
- SA4 PSAV+8 FWA OF PP MEMORY IN SAVE BUFFER
- SB6 PBUF+4095/5 LAST WORD OF *PBUF*
- SA6 GPSA
- GPS3 SA2 GPSA
- SA3 GPSD
- SA0 60 SET CONSTANT
- MX5 -24 INSURE EXIT CONDTION
- AX7 X2,B1
- ZR X2,GPSX IF COMPLETE
- SA7 A2
- BX6 X3
- BX3 -X5*X3
- LX6 12 POSITION NEXT PAIR OF BYTES
- AX3 12 FIRST BYTE ADDRESS
- SA6 A3
- SX7 A0
- AX6 48 WORD COUNT OF SAVE BLOCK
- IX6 X6*X7
- SB5 X6 NUMBER OF BITS TO MOVE IN THIS BLOCK
- SX5 5
- IX0 X3/X5
- SX5 5
- SB7 X0+PBUF FIRST *PBUF* WORD TO BE PARTIALLY REPLACED
- SX3 X3+ CLEAR PACKING DONE BY *IXX/X*
- IX0 X0*X5
- IX0 X3-X0 NUMBER OF BYTES TO PRESERVE IN FIRST WORD
- SX5 12
- IX6 X0*X5
- SB4 B0 NUMBER OF BITS MOVED
- * COMPUTE SHIFT COUNTS AND MASKS.
- GPS4 SB2 X6 NUMBER OF BITS TO PRESERVE
- SB3 A0
- BX7 X4 ALLOW SAVED BLOCK TO START AT 7777B
- BX0 X0-X0 SET UP N-BIT MASK FOR BITS TO PRESERVE
- ZR B2,GPS5 IF NO OFFSETTING REQUIRED
- SA2 B7 GET FIRST *PBUF* WORD TO REPLACE
- SB3 B2-B1
- MX0 1 SET UP N-BIT MASK FOR BITS TO PRESERVE
- AX0 B3
- SB3 A0-B2 NUMBER OF BITS TO REPLACE
- BX7 X0*X2 BITS TO BE PRESERVED FROM *PBUF* WORD
- * MOVE PP BYTES FROM *PSAV* TO *PBUF*.
- GPS5 LX4 B3 GET REPLACEMENT BITS
- BX1 -X0*X4
- BX7 X7+X1
- SA7 B7
- EQ B7,B6,GPS6 IF LAST WORD OF *PBUF*
- SB4 B4+A0 INCREMENT BIT COUNTER
- BX7 X0*X4 NEXT WORD-S UPPER BITS
- SA4 A4+B1 GET NEXT WORD-S LOWER BITS FROM *PSAV*
- SB7 B7+B1 INCR *PBUF* POINTER
- LT B4,B5,GPS5 IF MORE BITS TO BE MOVED
- * SET THE LAST BYTES FROM *PSAV* IN *PBUF*.
- SA3 B7 GET THE UNREPLACED BITS FROM *PBUF*
- BX3 -X0*X3
- BX7 X7+X3
- SA7 B7
- NE B7,B6,GPS3 IF NOT LAST WORD OF *PBUF*
- * MOVE BYTE 7777B INTO *PBUF*.
- GPS6 MX2 12 STORE ONLY BYTE 7777B
- BX6 X2*X7
- LX7 12 MOVE BYTE 0 TO TOP OF WORD
- SA6 B7
- SB7 PBUF RESET *PBUF* POINTER
- NZ B2,GPS7 IF OFFSETTING WAS REQUIRED
- SB2 A0
- MX0 60
- SA4 A4+B1
- SB4 B4+A0
- GPS7 SX6 B2-12
- SA3 B7 GET ORIGINAL BYTES 0-4
- LX4 B2 RESTORE REPLACEMENT BITS
- ZR X6,GPS8 IF NO OFFSETTING WILL BE REQUIRED
- * MOVE BYTE 0000 TO *PBUF**
- BX0 -X2*X0 ADJUST MASK
- LX0 12
- BX7 X0*X7
- BX3 -X0*X3
- BX7 X7+X3
- SA7 B7
- GPS8 LT B4,B5,GPS4 IF MORE BYTES IN BLOCK
- EQ GPS3 CHECK NEXT BLOCK
- GPSA BSS 1 COUNTER
- GPSB BSS 1 FWA OF PP SAVE AREA BUFFER
- GPSC BSS 1 OUTPUT REGISTER ADDRESS FOR THIS PP
- GPSD BSS 1 SAVED DATA PARAMETERS
- GRV SPACE 4,10
- ** GRV - GET R-REGISTER VALUE.
- *
- * ENTRY (PBUF) = IOU MEMORY RECORD.
- *
- * EXIT (X1) = 24/R-REG, 36/0
- *
- * USES A - 1, 2.
- * X - 1, 2, 3, 6.
- GRV1 SA1 PBUF+819 FIRST PART OF R-REGISTER (C170-865/875)
- SA2 A1+B1 SECOND PART
- MX3 -12
- BX1 -X3*X1
- MX3 12
- BX2 X3*X2
- BX1 X1+X2
- LX1 -12 POSITION R-REGISTER
- GRV SUBR ENTRY/EXIT
- SA1 AP
- ZR X1,GRV1 IF NOT 180 CLASS MACHINE
- SA1 IO
- ZR X1,GRV2 IF I4A OR I4S IOU
- SA1 PBUF+1092 GET R-REGISTER UPPER PART
- SA2 A1+B1 LOWER PART
- MX3 12 PACK INTO 22 BITS
- BX1 -X3*X1
- BX2 X3*X2
- IX6 X1+X2
- LX6 -24
- BX1 X3*X6
- LX3 -16
- BX2 X3*X6
- LX2 4
- BX1 X1+X2
- EQ GRVX RETURN
- GRV2 SA1 PBUF+2184 GET R-REGISTER BITS (36-41)
- MX3 -6
- BX2 -X3*X1
- LX2 59-5
- SA1 A1+B1 GET REMAINDER OF R-REGISTER (42-57)
- MX3 4
- BX6 X3*X1
- LX6 -6
- BX2 X2+X6
- MX3 12
- LX3 -8
- BX6 X3*X1
- LX6 -2
- BX1 X2+X6
- LX1 -2 SHIFT RESULT FOR PROPER FORMAT
- EQ GRVX RETURN
- GSR SPACE 4,12
- ** GSR - GET SELECTED RECORD.
- *
- * ENTRY X6 = REQUESTED RECORD NAME.
- * = 0 IF NEXT RECORD REQUESTED.
- *
- * EXIT X7 = 0 IF RECORD NOT FOUND.
- * = 1 IF NAMED RECORD.
- * = 2 IF RECORD NAME = -*-.
- *
- * USES ALL REGISTERS.
- *
- * CALLS CIO=,RDO=,RDW=,WNB=.
- GSR SUBR
- BX5 X6 SAVE RECORD NAME
- RECALL J
- GSR1 READ J
- READO X2 READ RECORD NAME
- SX7 0 PRESET RECORD NOT FOUND
- NZ X1,GSRX IF EMPTY RECORD OR EOF
- * REMOVE BLANKS FROM NAME.
- MX0 -6
- SB2 7
- GSR2 LX6 6
- BX3 -X0*X6
- SX2 X3-1R
- SB2 B2-B1
- NZ X2,GSR3 IF NOT BLANK
- BX6 X0*X6 REMOVE BLANK
- GSR3 NZ B2,GSR2 LOOP
- LX6 3*6
- BX4 X6-X5
- SX7 1
- ZR X5,GSRX IF NEXT RECORD REQUESTED
- SA1 =1L*
- SX7 X7+B1
- BX1 X1-X5
- ZR X1,GSRX IF READ TO EOF REQUESTED
- SX7 1
- ZR X4,GSRX IF NAMED RECORD FOUND
- GSR4 READW J,BUF,BUFL SKIP TO NEXT RECORD
- ZR X1,GSR4 IF NOT END OF RECORD
- JP GSR1 CHECK NEXT RECORD
- GTD SPACE 4,12
- ** GTD - GENERATE DETAILED TABLE DUMP.
- *
- * ENTRY (X1) = FORMAT TABLE POINTERS.
- * 24/0,18/LEFT COLUMN FWA,18/RIGHT COLUMN FWA
- * (B2) = TABLE ADDRESS IN CORE.
- * (FW) = TABLE ADDRESS IN DUMP FILE.
- *
- * USES X - 1, 2, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2, 7.
- *
- * CALLS PTL, SSB.
- *
- * MACROS PRINT.
- GTD SUBR
- SX6 X1
- SA6 GTDA SET RIGHT COLUMN TABLE POINTER
- SX7 B2
- SA7 GTDC SAVE DATA ADDRESS
- AX1 18
- SX6 X1
- SA6 GTDB SET LEFT COLUMN TABLE POINTER
- RJ SSB CLEAR PRINT STRING
- GTD1 SA1 GTDB
- SA2 GTDC
- SB2 X2+ SET DATA ADDRESS
- SB7 PRBF
- RJ PTL FORMAT LEFT COLUMN
- SA1 GTDA
- ZR X1,GTD2 IF ONLY 1 COLUMN TO BE DUMPED
- NG X2,GTDX IF END OF DUMP
- SB7 PRBF+69
- RJ PTL FORMAT RIGHT COLUMN
- PRINT CCCH,B7-CCCH PRINT 2 COLUMNS
- EQ GTD1 CONTINUE
- GTD2 PRINT CCCH,B7-CCCH PRINT ONLY 1 COLUMN
- SA1 GTDB
- SA2 X1+
- ZR X2,GTDX IF END OF DUMP
- PL X2,GTD1 IF NOT AT END OF LEFT COLUMN
- SX6 X1+B1 BEGIN DUMP OF RIGHT COLUMN
- SA6 A1
- EQ GTD1 CONTINUE
- GTDA BSS 1 RIGHT COLUMN FORMAT TABLE POINTER
- GTDB BSS 1 LEFT COLUMN FORMAT TABLE POINTER
- GTDC BSS 1 TABLE DATA ADDRESS
- GTE SPACE 4,10
- ** GTE - GET TABLE ENTRY.
- *
- * ENTRY (X0) = ENTRY FWA RELATIVE TO TABLE FWA
- * IN DUMP FILE.
- * (X1) = ENTRY LENGTH.
- * (X2) = TABLE LENGTH.
- * (X3) = TABLE FWA IN DUMP FILE.
- * = 0, IF CM BUFFER REQUIRES INITIAL READ.
- * (X4) = ENTRY NUMBER.
- *
- * EXIT (X5) = ABSOLUTE ENTRY FWA IN CM BUFFER.
- *
- * CM BUFFER CONTAINS NEW TABLE DATA, IF DESIRED
- * ENTRY WAS NOT FOUND IN ORIGINAL DATA.
- *
- * USES X - 2, 3, 5, 6.
- * A - 3, 6.
- * B - 2.
- *
- * CALLS POM.
- *
- * MACROS GETCM.
- GTE SUBR ENTRY/EXIT
- NZ X3,GTE1 IF FIRST ACCESS OF TABLE
- SA3 GTEB GET LAST ENTRY NUMBER
- IX3 X3-X4
- NG X3,GTE2 IF ENTRY NOT IN CM BUFFER
- SA3 GTEA GET FIRST ENTRY NUMBER
- IX3 X4-X3
- NG X3,GTE2 IF ENTRY NOT IN CM BUFFER
- IX3 X3*X1 SET FWA OF ENTRY IN CM BUFFER
- SX5 X3+BUF
- EQ GTEX RETURN
- * READ TABLE ENTRIES INTO CM BUFFER.
- GTE1 SX6 X3+
- SA6 GTEC STORE FWA OF TABLE
- GTE2 SX6 X4+
- SA6 GTEA STORE FIRST ENTRY NUMBER
- IX2 X2-X0
- SX3 X2-BUFL
- NG X3,GTE3 IF CM BUFFER NOT FILLED
- SX2 BUFL SET BUFFER LENGTH = BUFFER SIZE
- GTE3 SX5 X2 SET BUFFER LENGTH = REST OF TABLE
- IX3 X2/X1 NUMBER OF ENTRIES THAT FIT IN CM BUFFER
- IX3 X4+X3
- SX6 X3-1
- SA6 GTEB STORE LAST ENTRY NUMBER
- SA3 GTEC GET FWA OF TABLE
- IX6 X3+X0 FIND FWA OF DESIRED ENTRY
- SA6 CPRA
- SB2 A6
- RJ POM POSITION TO FWA OF ENTRY
- GETCM BUF,X5 READ TABLE ENTRIES
- SX5 BUF SET FWA OF ENTRY IN CM BUFFER
- EQ GTEX RETURN
- GTEA BSS 1 FIRST ENTRY NUMBER IN CM BUFFER
- GTEB BSS 1 LAST ENTRY NUMBER IN CM BUFFER
- GTEC BSS 1 FWA OF TABLE BEING ACCESSED
- GXA SPACE 4,15
- ** GXA - GET EXCHANGE PACKAGE ADDRESS.
- *
- * CRACK EXCHANGE PACKAGE ADDRESS PARAMETER.
- *
- * ENTRY DIRECTIVE IN BUFFER.
- *
- * EXIT (B6) = 0, IF NO TOKEN OBTAINED FROM *GAT*.
- * (X2) .LT. 0, IF EXCHANGE PACKAGE ADDRESS FOUND.
- * (X6) = 12/0, 16/STL, 32/STA.
- *
- * USES X - 1, 2, 3, 4, 6.
- * B - 6.
- *
- * CALLS CSI, GAT, PTX, RMB.
- GXA SUBR ENTRY/EXIT
- RJ GAT GET ADDRESS TOKEN.
- ZR B6,GXAX IF NOT SPECIFIED
- BX4 X2+X4
- SB6 A1
- PL X4,GXAX IF NOT A VALID EXCHANGE PACKAGE SYMBOL
- SX3 B0+ SET NO RADIAL MCI DISPLAY
- RJ PTX POSITION TO EXCHANGE PACKAGE
- SX6 51
- SX1 0
- RJ RMB READ MEMORY BLOCK
- RJ CSI COLLECT SEGMENT INFORMATION
- SB6 B1
- MX2 1
- JP GXAX RETURN
- HTS SPACE 4,15
- ** HTS - HEX TO STRING BUFFER.
- *
- * ENTRY (X1) = HEX DIGITS LEFT JUSTIFIED.
- * (B6) = NUMBER OF DIGITS TO CONVERT.
- * (B7) = ADDRESS OF STRING BUFFER.
- *
- * EXIT (B7) IS UPDATED.
- * (X1) IS LEFT SHIFTED (B6)*4 PLACES.
- *
- * USES X - 0, 1, 2, 3, 7.
- * A - 7.
- * B - 6, 7.
- HTS SUBR ENTRY/EXIT
- MX0 -4 DIGIT MASK
- HTS1 LX1 4
- BX3 -X0*X1
- SX7 X3+1R0 ASSUME DIGIT .LT. 0#A
- SX3 X3-0#A
- NG X3,HTS2 IF DIGIT .LT. 0#A
- SX7 X3+1RA SET A - F
- HTS2 SA7 B7
- SB7 B7+B1
- SB6 B6-B1
- NZ B6,HTS1 IF MORE DIGITS
- EQ HTSX RETURN
- ICT SPACE 4,8
- ** ICT - INITIALIZE CHANNEL TABLE.
- *
- * EXIT (BUF - BUF+CTALL*5) = CHANNEL STATUS TABLE
- * RESERVATION BYTES, LEFT JUSTIFIED.
- *
- * USES X - 0, 1, 2, 6.
- * A - 1, 2, 6.
- * B - 2, 3, 4, 5.
- ICT SUBR
- SA1 F.TCMT
- SA2 X1+CHTP CHANNEL STATUS TABLE FWA
- AX2 12
- SB2 X2
- SB2 X1+B2
- MX0 12
- SB5 B2+CTALL CHANNEL STATUS TABLE LWA+1
- SB3 BUF
- ICT1 SB4 5 BYTE COUNTER
- SA2 B2+ READ NEXT TABLE WORD
- ICT2 BX6 X0*X2 EXTRACT RESERVATION BYTE
- LX2 12
- SA6 B3
- SB4 B4-B1 COUNT BYTE
- SB3 B3+B1
- NZ B4,ICT2 IF MORE BYTES IN THIS WORD
- SB2 B2+B1 ADVANCE TABLE POINTER
- LT B2,B5,ICT1 IF MORE TABLE ENTRIES
- JP ICTX EXIT
- IMR SPACE 4,15
- ** IMR - PROCESS IOU MAINTENANCE REGISTER RECORD.
- *
- * ENTRY VIA UNCONDITIONAL JUMP.
- *
- * EXIT TO *RBI2* IF NORMAL.
- * TO *PPE1* IF PREMATURE EOF.
- *
- * USES X - 0, 1, 2, 5, 6, 7.
- * A - 1, 2, 6, 7.
- *
- * CALLS CRS, RBF, SFR.
- IMR BSS 0 ENTRY
- SX6 1
- SA6 AP DEFINE ADVANCED PROCESSOR
- SA1 ID
- SA2 =3LDID
- BX6 X1
- LX7 X2
- SA6 XI SAVE IMR RECORD ID
- SA7 A1 SET RECORD ID OF *DID*
- RJ CRS COPY RECORD TO FILE *S*
- RJ RBF READ IOU MAINTENANCE REGISTERS
- NZ X1,PPE1 IF PREMATURE EOF
- SA1 XI IMR RECORD ID
- BX6 X1
- SA6 ID
- MX0 -18
- SX5 /IOU/IOSB SEARCH FOR OS BOUNDS REGISTER
- RJ SFR
- NG X1,ERR42 IF NOT IN CURRENT BUFFER
- BX6 -X0*X7
- LX6 10 SET *NOS* MEMORY SIZE
- SA6 MEMB
- RJ CRS COPY MAINTENANCE REGISTERS TO FILE *S*
- EQ RBI2 EXIT TO READ NEXT RECORD FROM FILE *F*
- IPA SPACE 4,15
- ** IPA - INITIALIZE FOR PPU ANALYSIS.
- *
- * ENTRY (CH) = DIRECTIVE STRING POINTER.
- *
- * EXIT (IC) = *CPP* PROCESSING FLAG.
- * (PI) = 0 IF PP/CPP NUMBERS AND NAMES IN DIRECTIVE.
- * = PP COMMUNICATION AREA INDEX IF DUMPING ALL
- * ACTIVE PPUS.
- *
- * USES X - 1, 2, 6.
- * A - 1, 2, 6.
- *
- * CALLS SRA.
- IPA1 BX6 X1
- SA6 PI SET SEARCH INDEX
- IPA SUBR ENTRY/EXIT
- SA1 IC+1 GET *NPP*/*CPP* FLAG
- BX6 X1
- SA6 A1-B1 SET *CPP* PROCESSING FLAG
- SX6 0
- SA6 IPDA SET PP FLAG
- SA6 PI PRESET SEARCH INDEX
- SA6 FI PRESET NAMED PPU SEARCH INDEX
- SA6 PP PRESET PP NUMBER
- RJ SRA SET REFERENCE ADDRESS
- SA1 CH
- SA1 X1+
- SX1 X1-1R.
- NZ X1,IPAX IF NUMBERS AND NAMES ON DIRECTIVE CARD
- SA1 PC GET PP COMMUNICATION AREA POINTER
- SA2 IC
- ZR X2,IPA1 IF NOT PROCESSING CPP-S
- SA2 NP
- LX2 3
- IX1 X2+X1
- EQ IPA1 SET SEARCH INDEX
- IPD SPACE 4,20
- ** IPD - INITIALIZE FOR PPU/FLPP DUMP.
- *
- * ENTRY (X6) = 0 IF PP OR CPP DUMP.
- * = 1 IF FLPP DUMP.
- * (CH) = CURRENT DIRECTIVE CARD STRING POINTER.
- *
- * EXIT (IC) = *CPP* PROCESSING FLAG.
- * (PI) = 0 IF PP/CPP/FLPP NUMBERS ON DIRECTIVE CARD.
- * = *TDIR* TABLE POINTER FOR FIRST PP/CPP/FLPP
- * IF DUMPING ALL.
- * (PP) = 0.
- * (IPDA) = PPU/FLPP DUMP FLAG.
- *
- * USES X - 0, 1, 5, 6.
- * A - 1, 5, 6.
- *
- * CALLS BPN, SRA.
- *
- * MACROS SEARCH.
- IPD SUBR ENTRY/EXIT
- SA6 IPDA SAVE PPU/FLPP FLAG
- SA1 IC+1 GET *NPP*/*CPP* FLAG
- BX6 X1
- SA6 A1-B1 SET *CPP* PROCESSING FLAG
- SX6 0
- SA6 PI PRESET INDEX
- SA6 PP
- RJ SRA SET REFERENCE ADDRESS
- SA1 CH
- SA1 X1+
- SX1 X1-1R.
- NZ X1,IPDX IF NUMBERS ON DIRECTIVE CARD
- SA5 IPDA
- RJ BPN
- ZR X5,IPD1 IF NOT FLPP DUMP
- MX0 15
- IPD1 SEARCH TDIR,X7,X0 FIND PPU/FLPP/CPP TABLE ENTRY
- ZR X2,ERR7 IF NOT FOUND
- SX6 A2
- SA6 PI SET DIRECTORY INDEX FOR FIRST PPU/FLPP
- EQ IPDX EXIT
- IPDA CON 0 PPU/FLPP FLAG
- IOQ SPACE 4,20
- ** IOQ - DISPLAY IOU IN LINE FORMAT.
- *
- * ENTRY (DSPB ) = FWA OF DUMP.
- * (DSPB+1) = LWA OF DUMP.
- * (DSPC ) = LINE SIZE.
- * (DSPC+1) = HEX/OCTAL, ASCII/DISPLAY FLAGS.
- *
- * EXIT IOU DISPLAYED IN DESIRED LINE FORMAT.
- *
- * USES B - 4, 5, 6, 7.
- * A - 1, 2, 4, 5, 6.
- * X - 0, 1, 2, 3, 4, 5, 6.
- *
- * CALLS CTS, DPB, HTS, NXB, SAI, SDI, SRD.
- *
- * MACROS PRINT.
- IOQ SUBR ENTRY/EXIT
- SA4 DSPC BYTES PER LINE
- SA5 A4+B1 HEX/OCTAL, ASCII/DISPLAY FLAGS
- IOQ1 SB4 X4
- SB5 X4
- SA1 K4
- SA1 X1+/DIRECT/TCTP
- NG X1,IOQ1.1 IF CONTROLLER TYPE WITH 16 BIT ADDRESSES
- LX4 B1,X4 SHIFT COUNT TO REFLECT BYTE ADDRESSING
- IOQ1.1 SA1 DSPB
- SA2 A1+B1
- IX3 X1-X2
- PL X3,IOQX IF DUMP IS FINISHED
- IX6 X1+X4
- SA6 A1 REPLACE FWA
- IX3 X2-X1
- PL X1,IOQ2
- IX2 X3+X4
- SB4 X2
- IOQ2 LX1 -16 POSITION ADDRESS
- SB6 4 DISPLAY ADDRESS
- SB7 PRBF
- SA2 K4 CONTROLLER TYPE
- SX2 X2-3
- NZ X2,IOQ2.1 IF NOT 63X
- LX1 -4 SHIFT LAST DIGIT OF ADDRESS
- SB6 B6+B1 DIGIT COUNT
- IOQ2.1 SA2 K4
- SX0 B1
- BX2 X2-X0
- NZ X2,IOQ2.2 IF NOT ISD
- LX0 13-16 ADD 2000 (HEX) TO ADDRESS IF ISD
- IX1 X1+X0
- IOQ2.2 RJ HTS
- ZR X5,IOQ2.4 IF HEX DUMP REQUESTED
- SB6 4
- SB7 B7-B6
- SA2 K4 CHECK CONTROLLER SIZE
- ZR X2,IOQ2.3 IF 4K CONTROLLER
- LX1 -3 PROCESS 8K CONTROLLER
- SB6 B6+B1
- SX2 X2-3
- NZ X2,IOQ2.3 IF NOT 63X
- LX1 -3 SHIFT LAST DIGIT OF ADDRESS
- SB6 B6+B1 DIGIT COUNT
- IOQ2.3 LX1 -12
- RJ CTS CONVERT OCTAL ADDRESS
- IOQ2.4 SB7 B4+
- SB6 B5+
- IOQ3 RJ NXB COLLECT ONE BYTE
- BX6 X1
- SA6 BUF+B7
- SB7 B7-B1
- NZ B7,IOQ3 IF MORE BYTES TO COLLECT
- SX1 BUF+1
- SB5 B6+ RESTORE B5
- RJ SRD
- SA4 DSPC BYTES PER LINE
- SA5 A4+B1
- NZ X1,IOQ1 IF REPEATED DATA
- SB7 PRBF+6
- SB4 X4
- IOQ4 SA1 B4+BUF DISPLAY BYTES IN HEX OR OCTAL
- RJ DPB
- SB4 B4-B1
- SB7 B7+2
- NZ B4,IOQ4 IF MORE DIGITS TO DISPLAY
- SB4 X4
- SB7 B7+B1
- IOQ5 SA2 BUF+B4 PRINT CHARACTER REPRESENTATION
- SB6 B1+B1
- SB4 B4-B1
- NG B4,IOQ7 IF NO MORE BYTES TO INTERPRET
- NG X5,IOQ6 IF DISPLAY CODE INTERPRETATION
- LX2 -16
- RJ SAI SET ASCII INTERPRETATION
- EQ IOQ5 CHECK FOR MORE BYTES TO CONVERT
- IOQ6 SB6 B6+B1 DISPLAY 3 CHARACTERS IN DISPLAY CODE
- LX2 -18
- RJ SDI SET DISPLAY CODE INTERPRETATION
- EQ IOQ5 CHECK FOR MORE BYTES TO CONVERT
- IOQ7 PRINT CCCH,B7-CCCH DISPLAY LINE
- SA4 DSPC
- EQ IOQ1 REPEAT UNTIL ALL BYTES DISPLAYED
- IPO SPACE 4,15
- ** IPO - INSPECT PPU OCTAL BLOCK FORMAT.
- *
- * ENTRY (DSPB+0) = FWA OF DUMP.
- * (DSPB+1) = LWA OF DUMP.
- *
- * EXIT TO *DSPX*.
- *
- * USES B - 4, 6, 7.
- * A - 1, 2, 6.
- * X - 1, 2, 3, 5, 6.
- *
- * CALLS CPS, CTS, DPB, NXB, UPS.
- *
- * MACROS PRINT.
- IPO BSS 0 ENTRY
- SX1 10 ENSURE AT LEAST TEN LINES ON THE PAGE
- RJ CPS CHECK PAGE SPACE
- PRINT (=2C )
- SA2 IPOA
- SB7 PRBF
- SB6 70
- RJ UPS UNPACK HEADER
- SA1 DSPB FWA
- SB6 3
- LX1 60-15
- SB7 PRBF
- RJ CTS
- PRINT CCCH,71
- SX6 1R
- SA6 PRBF
- SA6 A6+B1
- SA6 A6+B1
- SB7 -100B
- IPO2 RJ NXB GET THE NEXT 100 BYTES
- BX6 X1
- SA6 B7+BUF+100B
- SB7 B7+B1
- NZ B7,IPO2 IF MORE BYTES NEEDED
- SX5 -10B
- IPO3 SX6 X5+1R0+10B
- SA6 PRBF+4
- SB7 PRBF+5
- SB4 10B
- SA1 X5+BUF+10B
- IPO4 SB7 B7+2 INCREMENT STRING POINTER
- RJ DPB DISPLAY PPU MEMORY
- SA1 A1+10B
- SB4 B4-B1
- NZ B4,IPO4 IF NOT FINISHED
- PRINT CCCH,71
- SX5 X5+B1
- NZ X5,IPO3 IF NOT FINISHED WITH BLOCK
- SA1 DSPB
- SX6 X1+100B
- SA6 A1
- SA2 A1+B1
- IX3 X6-X2
- NG X3,IPO IF NOT COMPLETE
- EQ DSPX RETURN
- IPOA DATA 40H 00XX 0X 1X 2X 3X
- DATA 30H 4X 5X 6X 7X
- SPACE 4,15
- ** IPX - INSPECT PPU HEX BLOCK FORMAT.
- *
- * ENTRY (DSPB+0) = FWA OF DUMP.
- * (DSPB+1) = LWA OF DUMP.
- *
- * EXIT TO *DSPX*.
- *
- * USES B - 3, 4, 6, 7.
- * A - 1, 2, 6.
- * X - 1, 2, 3, 5, 6.
- *
- * CALLS CPS, DPB, HTS, NXB, UPS.
- *
- * MACROS PRINT.
- IPX BSS 0 ENTRY
- IPX1 SX1 18
- RJ CPS ENSURE AT LEAST 18 LINES ON PAGE
- PRINT (=2C )
- SA2 IPXA * NXX 0X 1X ...*
- SB6 102
- SB7 PRBF
- RJ UPS UNPACK STRING
- SA1 DSPB FWA
- LX1 -16
- SB6 B1+B1
- SB7 PRBF+1
- RJ HTS
- PRINT CCCH,102
- SB7 0#100
- SB4 BUF
- IPX3 RJ NXB GET 100(16) BYTES
- BX6 X1
- SA6 B4
- SB4 B4+B1
- SB7 B7-B1
- NZ B7,IPX3 IF MORE BYTES TO GET
- SX1 0
- IPX4 LX1 -4
- SB6 B1
- SB7 PRBF+4
- SX6 1R
- SA6 PRBF+1
- SA6 A6+B1
- RJ HTS
- SB3 0#10
- SX6 X1+B1
- SB4 B3
- SA1 X1+BUF
- SA6 IPXB
- MX5 0
- IPX5 SB7 B7+2
- RJ DPB DISPLAY PPU BYTE
- SA1 A1+B3
- SB4 B4-B1
- NZ B4,IPX5 IF BLOCK NOT COMPLETE
- PRINT CCCH,B7-CCCH
- SA1 IPXB LOOP COUNT
- SX6 X1-0#10
- NZ X6,IPX4
- SA1 DSPB
- SX6 X1+0#100
- SA6 A1
- SA2 A1+B1
- IX3 X6-X2
- NG X3,IPX1 IF MORE PP MEMORY TO DUMP
- EQ DSPX RETURN TO *DSPX*
- IPXA DATA 50H LXX 0X 1X 2X 3X 4X 5X 6X
- DATA 50H 7X 8X 9X AX BX CX DX EX F
- DATA 2CX
- IPXB DATA 0
- ISD SPACE 4,15
- ** ISM - INITIALIZE FOR SIXTY-FOUR BIT MEMORY PROCESSING.
- *
- * ENTRY (AO) = ADDRESS OFFSET FOR *EI* ADDRESS.
- * (EI) .NE. 0 IF FORCING *EI* ADDRESSING.
- *
- * EXIT (AO) = 0.
- * (XH) = MEMORY RECORD VALID FWA.
- * (XI) = MEMORY RECORD RANDOM INDEX.
- * (XL) = MEMORY RECORD VALID LWA+1.
- * (XM) = MEMORY RECORD PAGE SIZE MASK.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 1, 2, 3, 6, 7.
- ISM SUBR ENTRY/EXIT
- SA3 AO
- SA2 EH
- NZ X3,ISM1 IF *EI* ADDRESS
- SA1 EI
- NZ X1,ISM1 IF FORCED *EI* ADDRESSING
- SA2 MH
- ISM1 ZR X2,ERR14 IF MEMORY RECORD NOT ON DUMP FILE
- SX6 X2 NUMBER OF WORDS DUMPED
- AX2 18 START OF MEMORY
- SX7 X2
- IX6 X7+X6
- LX6 12 CONVERT TO A BYTE ADDRESS
- IX6 X3+X6 APPEND ADDRESS OFFSET
- SA6 XL
- LX7 12
- IX7 X3+X7 APPEND ADDRESS OFFSET
- SA7 XH
- SA2 A2+B1 *MEM* RANDOM INDEX
- BX6 X2
- SA6 XI
- SA1 S2PSM GENERATE THE PAGE SIZE MASK
- LX1 9
- SX6 X1-1
- BX6 -X1*X6
- SA6 XM
- BX6 X6-X6 CLEAR ADDRESS OFFSET
- SA6 A3
- EQ ISMX RETURN
- ISS SPACE 4,16
- ** ISS - INITIALIZE FOR SUB-SYSTEM DUMP.
- *
- * ENTRY (X5) = 24/ ,12/SUBSYSTEM ID,6/ ,18/CP NUMBER
- * CP NUMBER = 0 IF ANY CONTROL POINT ALLOWED.
- * .GT. 0, SUBSYSTEM MUST BE AT GIVEN
- * CONTROL POINT UNLESS
- * SUBSYSTEM ID = 0.
- * (CN) = CONTROL POINT NUMBER.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- * (RC) = CONTROL POINT REFERENCE ADDRESS.
- *
- * EXIT (RI) = RANDOM ADDRESS OF DUMPED SUBSYSTEM.
- * BINARY DUMP FILE IS POSITIONED AT CONTROL POINT RA.
- *
- * USES X - 1, 2, 3, 4, 6, 7.
- * A - 1, 3, 4, 6, 7.
- * B - 2, 3, 7.
- *
- * CALLS LDC, PCM, RNF, SCM, SRA.
- ISS SUBR
- RJ LDC LIST DIRECTIVE
- MX7 12 SET SUBSYSTEM ID MASK
- LX7 36
- SX3 X5+ GET CP NUMBER
- SA4 F.TCMT
- SB7 CPLEN INCREMENTAL INDEX
- NZ X3,ISS2 IF SPECIFIC CONTROL POINT REQUIRED
- BX3 X7*X5
- SA1 NC
- SB2 X1+
- SA1 X4+CPAS+JCIW GET FIRST CP SUBSYSTEM ID
- BX2 X3-X1 COMPARE ENTRIES
- SB3 B0 PRESET CONTROL POINT NUMBER
- ISS1 SB3 B3+B1
- BX6 X7*X2
- GT B3,B2,ERR10 IF CONTROL POINT NUMBER .GT. NCPL
- SA1 A1+B7 GET NEXT CP SUBSYSTEM ID
- BX2 X3-X1 COMPARE ENTRIES
- NZ X6,ISS1 IF NO MATCH
- JP ISS3
- ISS2 SX1 CPAS
- IX2 X1*X3
- SB3 X3 SET CONTROL POINT NUMBER
- IX6 X2+X4
- SA1 X6+JCIW GET CP SUBSYSTEM ID
- BX3 X7*X5 GET REQUESTED SUBSYSTEM ID
- BX2 X3-X1 COMPARE ENTRIES
- ZR X3,ISS3 IF ANY SUBSYSTEM ALLOWED
- BX6 X7*X2
- NZ X6,ERR10 IF NO MATCH ON ENTRIES
- ISS3 SX6 B3
- SA6 CN
- BX2 X6
- SA1 OP
- RJ RNF READ NEGATIVE FL FOR SELECTED SUB-SYSTEM
- SA1 L.TNFL GET NFL/100
- SX6 DNFL GET DEFAULT
- IX1 X1-X6
- NG X1,ERR28 IF INSUFFICIENT NFL SPACE
- SA1 RC GET RA
- BX6 X1
- RJ SRA SET REFERENCE ADDRESS
- RJ SCM SET CENTRAL MEMORY
- SA7 RI
- SA3 RC
- RJ PCM
- JP ISSX EXIT
- LDC SPACE 4,10
- ** LDC - LIST DIRECTIVE CARD.
- *
- * ENTRY EF = 0 SET PAGE EJECT AND DONT LIST DIRECTIVE.
- * .NE. 0 LIST DIRECTIVE AND CURRENT RECORD NAME.
- *
- * SAVES X - 0,5.
- * B - 1.
- * A - 0.
- *
- * CALLS PKS,WOF.
- LDC SUBR
- SA1 EF
- NZ X1,LDC1 IF NO EJECT SELECTED
- SX6 100
- SA6 LC FORCE EJECT
- JP LDCX EXIT
- * LIST DIRECTIVE AND RECORD NAME.
- LDC1 SA1 =10H
- SA2 SBTL1
- BX6 X1
- SA6 BUF LEADING SPACES FOR LIST LINE
- BX7 X2
- SA7 A6+B1 STORE RECORD NAME
- SB2 CHAR
- SB7 A7+B1
- SB6 78
- RJ PKS PACK DIRECTIVE CARD
- PRINT (=2C )
- PRINT BUF
- PRINT (=2C )
- JP LDCX EXIT
- LDD SPACE 4,8
- ** LDD - LOAD DUMP DIRECTORY.
- *
- * EXIT (X1) .NE. 0 IF FILE NOT IN RANDOM FORMAT.
- * = 0 IF DIRECTORY TABLE LOADED.
- * *S* FILE NAME IS CHANGED TO NAME OF *F* FILE.
- *
- * USES X - 1, 3, 6.
- * A - 1, 3, 6.
- LDD SUBR ENTRY/EXIT
- OPEN F,READNR,R
- SA1 X2+B1
- NG X1,LDDX IF NOT ON MASS STORAGE
- SA1 RBIA
- NZ X1,LDDX IF NO REWIND SET
- SKIPEI X2 CHECK DIRECTORY RECORD
- SKIPB X2,2
- READ X2
- READO X2 READ FIRST WORD
- LX6 18
- SX1 X6-770000B
- NZ X1,LDDX IF NOT IDENT TABLE
- LX6 6 SET TABLE LENGTH
- READW X2,BUF,X6 DISCARD IDENT TABLE
- READO X2 READ DIRECTORY TABLE LENGTH WORD
- MX1 42D
- SA3 =0LDUMP
- BX3 X3-X6
- BX1 X1*X3
- NZ X1,LDDX IF NOT EDD DUMP DIRECTORY RECORD
- ALLOC TDIR,X6 ALLOCATE TABLE SPACE
- READW F,X2,X3 READ DIRECTORY TABLE TO CORE
- NZ X1,ERR24 IF BAD DIRECTORY TABLE
- RECALL X2
- SA1 X2
- BX6 X1
- SA6 S RESET SCRATCH FILE NAME
- SX1 0 SET DIRECTORY LOADED
- JP LDDX EXIT
- LPW SPACE 4,15
- ** LPW - LOAD 12 BIT WORD.
- *
- * ENTRY (LPWA+0) = RELATIVE ADDRESS OF WORD IN LPWB.
- * (LPWA+1) = ADDRESS IN BUFFER TO CONTINUE UNPACKING.
- *
- * EXIT (LPWA) = UPDATED.
- * (X6) = 12 BIT WORD.
- *
- * USES X - 1, 2, 3, 6.
- * A - 1, 2, 6.
- * B - 2.
- LPW SUBR ENTRY/EXIT
- SA2 LPWA POSITION OF NEXT 12 BIT BYTE
- SA1 X2+LPWB
- SX6 X2-1 UPDATE LPWA
- SA6 A2
- SX6 X1
- PL X2,LPWX IF VALID BYTE
- SB2 4
- SX6 B2-B1
- SA2 A2+B1 POSITION IN BUFFER OF NEXT WORD
- SA6 A6
- MX3 -12
- SX6 X2+B1
- SA1 X2+BUF
- SA6 A2 UPDATE LPWA+1
- LPW1 LX1 12
- BX6 -X3*X1 EXTRACT 12 BIT BYTE
- SA6 LPWB+B2
- SB2 B2-B1
- PL B2,LPW1 IF MORE BYTES TO UNPACK
- SA1 LPWB+4
- SX6 X1
- EQ LPWX RETURN
- LPWA CON 0 NEXT BYTE IN BUFFER LPWB
- CON 0 NEXT WORD IN BUF
- LPWB BSS 5
- MEM SPACE 4,15
- ** MEM - PROCESS CENTRAL MEMORY RECORD.
- *
- * ENTRY VIA UNCONDITIONAL JUMP.
- *
- * EXIT TO *RBI2* IF NORMAL.
- * TO *PPE* IF PREMATURE EOF.
- *
- * USES A - 1, 3, 6.
- * X - 1, 2, 3, 6.
- *
- * CALLS ERS, RBH, WBS.
- MEM SA1 BUF GET MEMORY SIZE
- MX2 -18
- BX6 -X2*X1
- SA3 MEMB
- LX6 9
- SA6 A3
- ZR X3,MEM1 IF NO SIZE FROM OS BOUNDS REGISTER
- IX2 X6-X3
- NO
- NG X2,MEM1 IF SIZE FROM HEADER IS SMALLER
- SA1 VE
- NZ X1,MEM1 IF *NOS V/E* MEMORY SPACE REQUIRED
- BX6 X3
- SA6 A3
- MEM1 RJ RBH READ BLOCK OR HEADER FROM FILE *F*
- NZ X1,PPE IF PREMATURE EOF
- NG X1,PPE IF PREMATURE EOR
- SA1 BWCF SET WORD COUNT FOR FILE *S*
- BX6 X1
- SA6 BWCS
- RJ WBS WRITE BLOCK TO FILE *S*
- SA1 BWCF INCREMENT WORD COUNT
- SX2 15
- IX6 X1*X2
- AX6 4
- SA1 MEMA
- SA3 A1+B1
- IX6 X6+X1 COUNT OF 64 BIT WORDS PROCESSED
- SA6 A1
- IX2 X6-X3 COMPARE WITH CM SIZE
- NG X2,MEM1 IF NOT DONE
- AX3 9
- MX2 42
- SA1 ID FETCH RECORD ID
- BX1 X2*X1
- BX6 X1+X3 ENSURE MEMORY SIZE CORRECT IN DIRECTORY
- SA6 A1
- SX2 15 SIZE * 16 / 15
- LX3 9+4
- IX6 X3/X2 FORM RECORD LENGTH
- SA6 RWCS
- RJ ERS END RECORD ON FILE *S*
- SA1 VE
- ZR X1,RBI3 IF *NOS/VE* MEMORY SPACE NOT REQUIRED
- EQ RBI2 EXIT TO READ NEXT RECORD ON FILE *F*
- MEMA CON 0 COUNT OF 64-BIT WORDS PROCESSED
- MEMB CON 0 64-BIT MEMORY SIZE
- MRT SPACE 4,15
- ** MRT - DUMP MACHINE RECOVERY TABLE.
- *
- * ENTRY (EQ) = *EQDE* WORD OF EST ENTRY.
- * (BUFF) = MST AND TRT.
- *
- * EXIT MRT DUMPED IF PRESENT.
- * (BUFF) = MST FOLLOWED BY TRT OR MRT.
- *
- * USES X - 1, 2, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2, 5, 6, 7.
- *
- * CALLS CPS, CTS, GTD, POM, UPS.
- *
- * MACROS GETCM, PRINT.
- MRT SUBR
- SA1 EQ *EQDE* WORD OF EST
- SX2 1020B SHARED AND ISHARED FLAGS
- LX1 12
- BX2 X1*X2
- ZR X2,MRTX IF NOT A SHARED DEVICE
- PRINT (=2C )
- PRINT (=C* MACHINE RECOVERY TABLE*)
- PRINT (=2C )
- SA1 BUF+TRLL SET FWA OF TRT
- SX6 X1
- SA1 BUF+TDGL SET TRT LENGTH
- MX7 -12
- AX1 24
- BX7 -X7*X1
- IX6 X6+X7 MRT ADDRESS
- SA6 CPRA
- SA6 FW
- SX7 X7+7
- AX7 3 MRT LENGTH
- SA7 LW
- SB2 A6
- RJ POM POSITION TO MRT
- SA1 LW MRT LENGTH
- GETCM BUF+MSTXL,X1 READ MRT INTO *BUF*
- MX7 1
- SA7 SRDA PRESET FIRST CALL TO *SRD*
- SX6 B0
- SA6 MRTA CLEAR LINK ORDINAL
- SA6 MRTB CLEAR DATA WORD ORDINAL
- SA6 SRDC+10 STOP DASHES AFTER 80 CHARACTERS
- RJ SSB CLEAR PRINT STRING
- MRT1 SA1 MRTB SET DATA ADDRESS
- SX1 X1+BUF+MSTXL
- SB5 1 SET WORD COUNT
- RJ SRD SENSE REPEAT DATA
- NZ X1,MRT3 IF REPEAT SENSED
- SA1 FW GET MRT ADDRESS
- SA2 MRTB
- IX1 X1+X2
- LX1 -18
- SB6 6
- SB7 PRBF
- RJ CTS CONVERT MRT ADDRESS
- SB7 B7+B1
- SX6 1R+
- SA6 B7
- SB7 B7+B1
- SA1 MRTA LINK ORDINAL
- LX1 -12
- SB6 4
- RJ CTS CONVERT LINK ORDINAL
- SB7 B7+2
- SA2 =4000005B
- SA1 MRTB READ MRT DATA WORD
- SA1 X1+BUF+MSTXL
- RJ FDW FORMAT DATA WORD
- SB7 B7+B1
- LX1 28
- SB6 8
- MRT2 SB6 B6-1
- RJ P4F LIST TRACK BITS
- SB7 B7+1
- NZ B6,MRT2
- SA2 MRTB RE-READ DATA WORD
- SA2 X2+BUF+MSTXL
- SB7 B7+2
- SB6 10
- RJ SDI SET DISPLAY CODE INTERPRETATION
- PRINT CCCH,B7-CCCH
- MRT3 SA1 MRTA
- SX6 X1+32
- SA6 A1+ UPDATE TRACK ORDINAL
- SA1 MRTB
- SX6 X1+B1
- SA6 A1+ UPDATE MRT ADDRESS
- SA2 LW
- IX3 X6-X2
- NG X3,MRT1 IF MORE TO DUMP
- SA1 SRDC+1
- BX6 X1
- SA6 SRDC+10 RESET DASHES FOR 136 CHARACTERS
- JP MRTX EXIT
- MRTA BSS 1 TRACK ORDINAL
- MRTB BSS 1 MRT DATA WORD ORDINAL
- MST SPACE 4,15
- ** MST - DUMP MASS STORAGE TABLE.
- *
- * ENTRY (X6) = MST ADDRESS.
- * (FI) = EST ORDINAL TO BE DUMPED.
- *
- * EXIT MST DUMPED.
- *
- * USES X - 1, 2.
- * A - 1, 2, 6.
- * B - 2, 5, 6, 7.
- *
- * CALLS CPS, CTS, GTD, POM, UPS.
- *
- * MACROS GETCM, PRINT.
- MST SUBR
- SA6 FW STORE MST ADDRESS
- SA6 CPRA
- SB2 A6
- RJ POM POSITION TO MST
- GETCM BUF,MSTXL READ FULL MST INTO *BUF*
- SA2 EF
- SX1 100 FORCE PAGE EJECT
- ZR X2,MST1 IF AUTO EJECT SELECTED
- SX1 3
- MST1 RJ CPS CHECK PAGE SPACE
- PRINT (=2C )
- SA2 =40HEQUIPMENT - MASS STORAGE TABLE
- SB6 34
- SB7 PRBF
- RJ UPS SET HEADING
- SB5 B7+ SAVE PRINT STRING ADDRESS
- SA1 FI SET EST ORDINAL
- LX1 -9
- SB6 3
- SB7 PRBF+10
- RJ CTS CONVERT EST ORDINAL
- PRINT CCCH,B5-CCCH
- PRINT (=2C )
- SA1 FW SET BASE ADDRESS
- SB2 X1-BUF
- SB2 -B2
- SA1 TFMS ASSUME TABLE FOR NON-819 DISK
- RJ GTD GENERATE DETAILED DUMP
- EQ MSTX RETURN
- NPE SPACE 4,10
- ** NPE - NEXT PAGE ENTRY.
- *
- * ENTRY (X4) = STARTING OFFSET INTO PAGE TABLE.
- * (X4) < 0 THEN GET NEXT CONSECUTIVE PAGE ENTRY.
- *
- * EXIT (X3) = (PTEVCUM ) = VALID, CONTINUE, USED,
- * MODIFIED BITS.
- * (X5) = (PTEPD ) = REMAINDER OF PAGE DESCRIPTOR.
- * (A3) = *PTEVCUM*.
- *
- * USES X - 1, 2, 3, 4, 5, 6, 7.
- * A - 2, 3, 4, 6.
- * B - 2.
- *
- * CALLS NXB, PSM.
- NPE SUBR ENTRY/EXIT
- SA3 S2PTL OBTAIN PAGE TABLE LENGTH
- MX2 -12
- LX3 12
- BX3 -X2+X3 FORM BYTE ADDRESS MASK
- SX7 32 DEFAULT PAGE ENTRIES TO SEARCH
- MX5 0
- SA1 NPEA GET CURRENT PAGE ENTRY ADDRESS
- PL X4,NPE1 IF SETTING INITIAL PAGE ENTRY
- SX6 8
- SA2 A1+B1
- IX6 X1+X6
- SA6 A1
- BX4 X6*X3 ISOLATE PAGE TABLE INDEX
- SX6 X2-1
- SA6 PTEVCUM CLEAR VALID CONTINUE BITS
- SA6 NPEA+1
- ZR X6,NPE3 IF SEARCHED TOO MANY ENTRIES
- NZ X4,NPE2 IF WRAP AROUND HAS NOT HAPPENED
- NPE1 SA2 S2PTA PAGE TABLE ADDRESS
- BX4 X3*X4 ISOLATE PAGE TABLE INDEX
- IX6 X2+X4
- SA6 A1 SAVE PAGE ENTRY ADDRESS
- SA7 A1+B1
- SB2 A6
- RJ PSM POSITION TO PAGE ENTRY
- NPE2 RJ NXB GET UPPER 16 BITS OF DESCRIPTOR
- MX2 4-16
- BX5 -X2*X1
- BX6 X2*X1
- LX6 59-15
- SA6 PTEVCUM VALID, CONTINUE, USED, MODIFIED BITS
- RJ NXB GET BITS 16-31
- LX5 16
- BX5 X5+X1
- RJ NXB GET BITS 32-47
- LX5 16
- BX5 X5+X1
- RJ NXB GET BITS 48-63
- LX5 16
- BX5 X5+X1
- BX6 X5
- NPE3 SA6 PTEPD SAVE REMAINDER OF PAGE DESCRIPTOR
- SA3 PTEVCUM FETCH PTE BITS
- JP NPEX RETURN
- NPEA DATA 0 PAGE ENTRY BYTE ADDRESS
- DATA 32 PAGE ENTRIES TO SEARCH
- NXB SPACE 4,15
- ** NXB - GET NEXT BYTE FROM RECORD.
- *
- * ENTRY (NXBA) = WORDS OF DATA IN PBUF.
- * (NXBB) = OFFSET TO NEXT BYTE IN UBUF.
- * (NXBC) = NEXT WORD TO UNPACK.
- *
- * EXIT (X1) = NEXT 16 BIT BYTE.
- *
- * USES X - 1, 2, 3, 4, 6, 7.
- * A - 1, 2, 3, 6.
- * B - 2, 3.
- *
- * MACROS READW.
- NXB SUBR ENTRY/EXIT
- SA2 NXBB
- SA1 X2+UBUF-1 NEXT BYTE FROM BUFFER
- SX6 X2-1
- SA3 A2-B1
- SA6 A2 UPDATE BYTE POINTER
- PL X6,NXBX IF VALID BYTE
- ZR X3,NXB3 IF PBUF IS EMPTY
- SA2 A2+B1 NEXT WORD OF DATA
- SX6 X3-4
- SA6 A3 DECREMENT WORD COUNT
- NXB0 SA1 X2
- MX2 16
- SB2 60+16
- SB3 14
- NXB1 BX6 X1*X2 EXTRACT BYTE
- PL X2,NXB2 IF BYTE CONTAINED WITHIN THIS WORD
- SA1 A1+B1 GET REMAINING PART OF BYTE
- MX3 30
- SB2 B2-60
- BX6 -X3*X6
- BX4 X3*X1
- IX7 X4+X6
- BX6 X2*X7
- NXB2 LX6 B2 POSITION BYTE TO LOWER 16 BITS OF WORD
- SB2 B2+16
- LX2 -16
- SA6 UBUF+B3 SAVE BYTE
- SB3 B3-B1
- SX6 A1
- PL B3,NXB1 IF UNPACKING NOT COMPLETE
- SA1 UBUF+14 RETURN THIS BYTE
- SA6 A2 UPDATE UBUF
- SX6 14
- SA6 A2-B1
- EQ NXBX RETURN
- NXB3 SX6 B7 SAVE B6 AND B7
- SX1 B6
- LX6 18
- BX6 X6+X1
- SA6 A2+B1
- READW S,PBUF,16
- SX6 12
- SA6 NXBA RESET NXBA
- SA2 NXBC
- SB6 X2 RESTORE B6 AND B7
- AX2 18
- SB7 X2
- SX2 PBUF-1
- EQ NXB0 UNPACK FIRST 4 WORDS OF BYTES
- NXBA DATA 0 WORDS OF DATA REMAINING IN PBUF
- NXBB DATA 0 OFFSET INTO BYTE BUFFER
- NXBC CON PBUF-1 ADDRESS-1 OF NEXT DATA WORD IN PBUF
- OTH SPACE 4,10
- ** OTH - PROCESS MISCELLANEOUS RECORD.
- *
- * ENTRY VIA UNCONDITIONAL JUMP.
- *
- * EXIT TO *RBI2*.
- *
- * CALLS CRS.
- OTH BSS 0
- SA1 ID
- LX1 12
- MX0 12
- SA2 OTHA
- BX0 X0*X1
- BX2 X0-X2
- ZR X2,OTH1 IF *PP* RECORD
- SA2 A2+B1
- BX2 X0-X2
- NZ X2,OTH2 IF NOT *FLPP* RECORD
- OTH1 BX7 X1
- SA7 A1
- OTH2 RJ CRS COPY RECORD TO FILE *S*
- EQ RBI2 EXIT TO READ NEXT RECORD
- OTHA CON 2LPP
- CON 2LFP
- PBB SPACE 4,16
- ** PBB - PRINT BYTE BUFFER
- *
- * ENTRY (X1) = NUMBER OF WORDS*2 IN BUFFER.
- * (B2) = PARAMETER BLOCK ADDRESS.
- * +0 = FWA OF DUMP.
- * +1 = LWA OF DUMP.
- *
- * EXIT ONE PAGE WRITTEN.
- *
- * USES B - 3, 4, 6, 7.
- * A - 1, 2, 4, 6, 7.
- * X - 1, 2, 4, 6, 7.
- *
- * CALLS HTS, SAI, UPS.
- *
- * MACROS PRINT.
- PBB SUBR ENTRY/EXIT
- SX6 BUF
- IX7 X6+X1 LWA+1 OF DATA IN BUF
- SA6 PBBA FWA OF DATA IN BUF
- SX2 6 COMPUTE ROW INCREMENT = 2*(WORDS+2)/3
- SX1 X1+4
- IX6 X1/X2
- LX6 1
- SA6 A6+B1 ROW INCREMENT
- SA7 A6+B1 PRINT BUFFER LWA+1
- SA1 TF
- ZR X1,PBB1 IF NOT A TERMINAL FILE
- SX6 X7-BUF
- SA6 A6 SET ROW INCREMENT FOR TERMINAL FILE
- PBB1 SA1 PBBA NEXT DATA WORD TO DUMP
- SA4 A1+B1 ROW INCREMENT
- SA2 A4+B1 DATA LWA+1
- SB3 X1
- SB4 X2
- SB7 PRBF PRINT STRING ADDRESS
- PBB2 GE B3,B4,PBB4 IF NOT BEYOND END OF BUFFER
- SA1 B3+
- PL X1,PBB3 IF DATA NOT DUPLICATED
- SA2 =40H-----------------------------------
- SB6 40
- RJ UPS STORE REPEAT INDICATOR IN PRINT LINE
- SB3 B3+X4 ADVANCE PAGE BUFFER ADDRESS
- EQ PBB2 PROCESS NEXT WORD
- PBB3 SB6 7 HEX DIGITS IN ADDRESS
- SX6 1R
- RJ HTS CONVERT ADDRESS
- SA6 B7
- SA6 A6+B1
- SB7 A6+B1 SPACE ONE
- SB6 4 UNPACK 4 DIGITS
- RJ HTS UNPACK FIRST BYTE
- SA6 B7 INSERT SPACE
- SB7 B7+B1
- SB6 4
- RJ HTS UNPACK SECOND BYTE
- SA1 A1+B1
- SB6 4
- SA6 B7
- SB7 B7+B1
- LX1 28
- RJ HTS UNPACK THIRD BYTE
- SA6 B7
- SB7 B7+B1
- SB6 4
- RJ HTS UNPACK FOURTH BYTE
- SB6 4
- SA6 B7
- SB7 B7+B1
- SA2 A1-B1
- LX2 28
- RJ SAI SET ASCII INTERPRETATION
- SA2 A2+B1
- SB6 4
- LX2 28
- RJ SAI SET ASCII INTERPRETATION
- SB7 B7+3
- SB3 B3+X4 ADVANCE PAGE BUFFER ADDRESS
- EQ PBB2 CONTINUE PROCESSING THIS LINE
- PBB4 PRINT CCCH,B7-CCCH-2
- SA1 PBBA ADVANCE POSITION IN DATA BUFFER
- SA2 A1+1
- SX2 X2+BUF
- SX6 X1+2
- SA6 A1
- IX6 X6-X2
- NG X6,PBB1 IF ROOM FOR ANOTHER LINE ON PAGE
- EQ PBBX RETURN
- PBBA DATA 0 CURRENT BUFFER POSITION
- DATA 0 ROW INCREMENT
- DATA 0 LWA+1 OF DATA IN BUFFER
- PBC SPACE 4,15
- ** PBC - PACK BUFFER CONTROLLER.
- *
- * ENTRY DUMP FILE POSITIONED TO BEGINNING OF RECORD.
- *
- * EXIT (PBUF) CONTAINS CONTROLLER MEMORY.
- *
- * USES X - 0, 1, 2, 5, 6, 7.
- * A - 1, 2, 6, 7.
- *
- * CALLS RBC.
- *
- * DEFINE (X5) = PBUF INDEX.
- PBC SUBR ENTRY/EXIT
- SX5 0 INITIALIZE PBUF INDEX
- * READ 3 CM WORDS OF THE FORM- 20/0,8/B1,8/B2,8/B3,8/B4,8/B5
- PBC1 RJ RBC
- NZ X1,PBCX IF TRANSFER NOT COMPLETE
- SA7 PBUF+X5 SAVE WORD 1
- RJ RBC
- NZ X1,PBCX IF TRANSFER NOT COMPLETE
- SA7 PBUF+1+X5 SAVE WORD 2
- RJ RBC
- NZ X1,PBCX IF TRANSFER NOT COMPLETE
- SA1 PBUF+X5 GET WORD 1
- SA2 A1+B1 GET WORD 2
- * CONVERT 3 CM WORDS TO 2 CM WORDS WITH THE FORMAT-
- * 8/B1,8/B2,8/B3,8/B4,8/B5,8/B6,8/B7,4/B8
- * 4/B8,8/B9,8/B10,8/B11,8/B12,8/B13,8/B14,8/B15
- MX0 -20 FORM WORD 1
- BX0 -X0*X2 SAVE BITS FOR WORD 2
- LX1 20
- AX2 20
- BX6 X1+X2
- LX0 40 FORM WORD 2
- BX7 X0+X7
- SA6 PBUF+X5 SAVE WORD 1
- SA7 A6+1 SAVE WORD 2
- SX5 X5+2 UPDATE INDEX
- SX6 X5-IUBUFL1-4
- NG X6,PBC1 IF MORE MEMORY TO PACK
- EQ PBCX RETURN
- PBD SPACE 4,25
- *** PBD - PREPROCESS BINARY DUMP FILE.
- *
- * THIS SUBROUTINE IS USED WHEN THE *DMB* PARAMETER
- * IS PRESENT. THE FILE PRODUCED BY THE *DMB* OR
- * *LOADBC* UTILITY IS CONVERTED TO A FORMAT THAT
- * CAN BE PROCESSED BY *DSDI*. FOR THE FILE FROM
- * *DMB*, THE FIELD LENGTH DUMPED IS MADE TO
- * APPEAR AS THOUGH IT RESIDED AT CONTROL POINT ONE.
- * ONLY THE PORTION OF *CMR* NEEDED BY *DSDI*
- * IS SET UP.
- *
- * ENTRY (BD) = BINARY DUMP FLAG.
- * (RBIA) = REWIND FLAG.
- *
- * EXIT (BD) = DUMP NUMBER IF IN *BD* MODE.
- *
- * USES X - ALL.
- * A - 1, 2, 3, 4, 5, 6, 7.
- * B - 2, 7.
- *
- * CALLS SFN.
- *
- * MACROS ALLOC, MESSAGE, READ, READO, READW, RECALL,
- * RETURN, REWIND, WRITEF, WRITEO, WRITER,
- * WRITEW.
- PBD SUBR ENTRY/EXIT
- SA1 BD
- ZR X1,PBDX IF NOT BINARY DUMP MODE
- RECALL F
- RETURN F1,R DROP SCRATCH FILE
- MESSAGE (=C* REFORMATTING FILE.*),1
- SA1 RBIA
- NZ X1,PBD1 IF NO REWIND REQUESTED
- REWIND F,R
- PBD1 READ F
- ALLOC TCMT,DMBCM LENGTH OF *CMR* (MULTIPLE OF 100)
- SA2 L.TCMT CLEAR WORKING SPACE
- SA1 F.TCMT
- SB2 X2-1
- SX7 0
- PBD2 SA7 X1+B2
- SB2 B2-B1
- PL B2,PBD2 IF MORE TO CLEAR
- READO F
- NZ X1,ERR39 IF FORMAT ERROR
- SA3 RBIB
- BX1 X6 SAVE POSSIBLE DUMP NUMBER
- BX3 X6-X3
- NZ X3,PBD3 IF NOT 7700 TABLE
- LX6 -36 SKIP 7700 TABLE
- SB7 X6
- READW X2,BUF,B7
- NZ X1,ERR39 IF FORMAT ERROR
- READO X2
- NZ X1,ERR39 IF FORMAT ERROR
- BX1 X6 DUMP NUMBER
- PBD3 RJ SFN
- SA6 BD
- READO F
- NZ X1,ERR39 IF FORMAT ERROR
- BX1 X6
- SB7 X6
- AX1 48
- SX1 X1-2RID
- NZ X1,ERR39 IF NOT *ID* TABLE
- READW X2,BUF,B7
- NZ X1,ERR39 IF FORMAT ERROR
- * BUILD NEEDED *CMR* INFORMATION.
- SA5 F.TCMT
- SA3 BUF GET SYSTEM VERSION
- SA4 A3+B1
- BX6 X3
- BX7 X4
- SA6 X5+SVNL
- SA7 A6+B1
- SA3 A4+B1 DATE
- SA4 A3+B1 TIME
- BX6 X3
- BX7 X4
- SA6 X5+DTEL
- SA7 X5+TIML
- SX6 B1+B1 NUMBER OF CONTROL POINTS
- LX6 47-11
- SA6 X5+CFGL
- SX7 DMBCM/100B SET CMR SIZE
- SA7 X5+CMRL
- LX7 6 SET FWA OF JCA
- SX7 X7-100B
- LX7 59-23
- SA7 X5+JBCP
- READO X2
- NZ X1,ERR39 IF FORMAT ERROR
- BX1 X6
- AX6 48
- SX0 X6-2RBC
- ZR X0,PBD3.1 IF FILE FROM *LOADBC*
- SX7 3RDMM SET HEADER LABEL
- SX0 X1 SAVE WORD COUNT
- LX7 -18
- SA7 PBDA
- SX6 X6-2RXP
- NZ X6,ERR39 IF FORMAT ERROR
- READW X2,X5+CPAS,20B READ EXCHANGE PACKAGE
- SX0 X0-20B
- NG X0,ERR39 IF FORMAT ERROR
- NZ X1,ERR39 IF FORMAT ERROR
- MX6 6 MARK CONTROL POINT ACTIVE
- LX6 -6
- SA6 X5+CPAS+TFSW
- READW X2,BUF,X0 SKIP UNUSED WORDS
- NZ X1,ERR39 IF FORMAT ERROR
- * SET RA AND FL IN CP 1 *FLSW* WORD.
- READO X2
- SX0 X6 SAVE CMFL / 100B
- AX6 48
- SX6 X6-2RCM
- NZ X1,ERR39 IF FORMAT ERROR
- NZ X6,ERR39 IF FORMAT ERROR
- SA3 L.TCMT SET RA / 100 OF CP 1
- LX3 12-6
- BX7 X3+X0 COMBINE RA / 100 AND FL / 100
- SA7 X5+CPAS+FLSW
- * WRITE REFORMATTED FILE.
- PBD3.1 WRITEW F1,PBDA,B1 WRITE HEADER ONE
- WRITEW X2,X5+DTEL,B1
- WRITEW X2,X5+TIML,B1
- WRITEW X2,BD,B1
- WRITER X2,R
- SA3 L.TCMT *CMR* LENGTH
- LX0 6 CONVERT CM / 100B TO WORDS
- IX1 X0+X3 MEMORY SIZE
- SX1 X1+777B ROUND UP TO 1000B BLOCKS
- AX1 9
- SX3 3RCM
- LX3 59-17
- BX6 X3+X1
- LX1 9 SAVE ROUNDED FL
- BX7 X1 SET MACHINE CHARACTERISTICS
- SX3 4372B SET 170-700 MAINFRAME
- LX7 12-6 CM SIZE / 100
- LX3 47-11
- BX7 X7+X3
- SA7 X5+MABL
- BX5 X1
- WRITEO X2 WRITE HEADER TWO
- SB2 77B CLEAR BUFFER SPACE
- SX6 0
- PBD4 SA6 BUF+B2
- SB2 B2-1
- PL B2,PBD4 IF MORE TO CLEAR
- WRITEW X2,BUF,3
- WRITER X2,R
- SA3 L.TCMT
- SA1 F.TCMT
- IX5 X5-X3 SUBTRACT *CMR* WORDS
- WRITEW X2,X1,X3 WRITE CMR PORTION
- NZ X5,PBD5 IF CONTROL POINT FL TO COPY
- SA1 PBDA
- AX1 42
- SX1 X1-3RLBC
- NZ X1,PBD7 IF NOT FILE FROM *LOADBC*
- * COPY CONTROLLER MEMORY FOR FILE FROM *LOADBC*.
- WRITER F1,R WRITE EOR FOR CMR PORTION
- READW F,BUF,100B
- SA2 BD ENTER CHANNEL DISPLAY IN CONTROLLER DUMP
- MX6 24
- BX2 X6*X2
- SA3 BUF
- LX6 -12
- BX6 -X6*X3
- LX2 -12
- BX6 X6+X2
- SA6 A3
- SX0 X1 SAVE READ STATUS
- PBD4.1 SB7 B6-BUF
- WRITEW F1,BUF,B7
- NZ X0,PBD9 IF COPY COMPLETE
- READW F,BUF,100B
- SX0 X1 SAVE READ STATUS
- EQ PBD4.1 CONTINUE CONTROLLER DATA TRANSFER
- * COPY CM DUMP FROM FILE.
- PBD5 READW F,BUF+100B,100B
- NZ X1,ERR39 IF FORMAT ERROR
- WRITEW F1,BUF+100B,100B
- SX0 X0-100B
- SX5 X5-100B
- NZ X0,PBD5 IF MORE TO COPY
- PBD6 ZR X5,PBD7 IF PAD WORDS WRITTEN
- WRITEW F1,BUF,100B
- SX5 X5-100B
- EQ PBD6 WRITE MORE PAD WORDS
- * COPY EXTENDED MEMORY DUMP FROM FILE.
- PBD7 READO F CHECK FOR ECS DUMP RECORD
- NZ X1,PBD9 IF NOT ECS
- SA6 BUF
- SX1 3RECS
- SX0 X6 ECS LENGTH
- AX6 42
- LX0 9
- BX1 X1-X6
- NZ X1,PBD9 IF NOT EXTENDED MEMORY
- ZR X0,PBD9 IF NOTHING TO TRANSFER
- WRITER F1,R
- WRITEW X2,BUF,4 EXTENDED MEMORY DUMP HEADER
- WRITER X2,R
- PBD8 ZR X0,PBD9 IF COPY COMPLETE
- READW F,BUF+100B,100B COPY DUMP RECORD
- NZ X1,ERR39 IF END OF RECORD
- WRITEW F1,BUF+100B,100B
- SX0 X0-100B
- EQ PBD8 GET NEXT BLOCK
- PBD9 WRITEF F1,R TERMINATE FILE
- RECALL F
- SA1 F1 SWAP FILE NAMES
- MX3 42
- MX6 -2
- BX1 X3*X1
- BX6 -X6+X1
- SA6 F
- REWIND A6,R
- SA1 L.TCMT DROP TABLE SPACE
- BX1 -X1
- ALLOC TCMT,X1
- EQ PBDX RETURN
- PBDA CON 3LLBC
- PCH SPACE 4,12
- ** PCH - PRINT CONTROL POINT DUMP HEADING.
- *
- * ENTRY (CN) = CONTROL POINT NUMBER.
- * (OP) = PCPA FWA OFFSET (0 IF DUMPING CONTROL POINTS).
- *
- * EXIT (FW) = CONTROL POINT AREA ADDRESS.
- * (LW) = CONTROL POINT AREA LWA+1.
- *
- * USES X - 1, 2, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 6, 7.
- *
- * CALLS CPS, CTS, UPS.
- *
- * MACROS PRINT.
- PCH SUBR
- SA2 EF CHECK AUTO EJECT FLAG
- SX1 100 PRESET FOR EJECT
- ZR X2,PCH1 IF AUTO EJECT SELECTED
- SX1 3
- PCH1 RJ CPS CHECK PAGE SPACE
- PRINT (=2C )
- SA1 CN CONTROL POINT NUMBER
- SA2 OP ADD PCPA OFFSET
- LX1 7
- IX6 X1+X2
- SA6 FW SAVE ADDRESS
- SX7 X6+CPLEN
- SA7 LW SET LWA+1
- BX1 X6
- LX1 -12
- SB6 4
- SB7 PRBF
- RJ CTS CONVERT ADDRESS
- SA2 =18H - CONTROL POINT
- SB6 17
- SA1 OP
- ZR X1,PCH2 IF NOT DUMPING PCP-S
- SA2 =25H - PSEUDO-CONTROL POINT
- SB6 24
- PCH2 RJ UPS UNPACK STRING
- SA1 CN
- LX1 -6
- SB6 B1+B1
- RJ CTS CONVERT CONTROL POINT NUMBER
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- JP PCHX EXIT
- PCM SPACE 4,10
- ** PCM - POSITION CYBER MEMORY.
- *
- * ENTRY X3 - CM ADDRESS.
- *
- * EXIT DUMP FILE POSITIONED FOR *GETCM*
- *
- * USES A - 1, 6.
- * X - 1, 2, 3, 6.
- *
- * CALLS PDF, UPW.
- PCM SUBR ENTRY/EXIT
- SA1 MT
- NZ X1,PCM1 IF MEMORY TYPE IS ESM
- SA1 AP
- NZ X1,PCM2 IF ADVANCED PROCESSOR PRESENT
- PCM1 RJ PDF POSITION DUMP FILE
- EQ PCMX RETURN
- PCM2 BX1 X3
- SX2 15
- IX3 X3/X2
- SX2 15
- IX6 X2*X3
- IX2 X1-X6
- SX6 X2-15
- LX3 4
- SA6 BI DESIRED POSITION WITHIN 15 WORD BLOCK
- RJ PDF POSITION DUMP FILE
- RJ UPW UNPACK 64-60 BIT WORDS
- EQ PCMX RETURN
- PCS SPACE 4,10
- ** PCS - PROCESSOR CONTROL STORE.
- *
- * ENTRY VIA UNCONDITIONAL JUMP.
- *
- * EXIT TO *RBI2* IF NORMAL.
- * TO *PPE1* IF PREMATURE EOF.
- *
- * CALLS CRS, ERF, RBF.
- PCS BSS 0 ENTRY
- RJ ERF POSITION TO EOR ON FILE *F*
- RJ RBF READ FIRST PART OF CONTROL STORE
- NZ X1,PPE1 IF PREMATURE EOF
- RJ CRS COPY CONTROL STORE TO FILE *S*
- EQ RBI2 EXIT TO READ NEXT RECORD FROM FILE *F*
- EIC EQU PCS PROCESS ENVIRONMENTAL INTERFACE RECORD
- PMR EQU PCS PROCESS PROCESSOR MAINTENANCE REGISTERS
- PRF EQU PCS PROCESS PROCESSOR REGISTER FILE
- MMR EQU PCS PROCESS MEMORY MAINTENANCE REGISTERS
- INN EQU PCS PROCESS IOU MAINTENANCE REGISTERS
- CCR EQU PCS PROCESS CCH CHANNEL REGISTER RECORD
- PRX EQU PCS PROCESS PROCESSOR EXCHANGE PACKAGES.
- PCV SPACE 4,15
- ** PCV - PROCESS CONTROLLER DATA VERIFICATION.
- *
- * ENTRY (X1) = OCTAL/HEX DUMP FORMAT FLAG.
- * (X2) = DIRECTORY ENTRY ADDRESS FOR CONTROLLER DATA.
- *
- * EXIT CONTROLLER DUMP VERIFICATION ERROR DATA WRITTEN.
- *
- * USES X - ALL.
- * A - ALL.
- * B - 2, 3, 4, 5, 6, 7.
- *
- * CALLS CTS, CVE, HTS, PDF, SSB, UPS.
- *
- * MACROS PRINT, READO.
- PCV SUBR ENTRY/EXIT
- SA4 X2+B1 GET RANDOM INDEX OF CONTROLLER RECORD
- BX7 X1 SAVE OCTAL/HEX FORMAT FLAG
- SA7 PCVA
- BX6 X4
- SA6 RI
- BX7 X7-X7
- SA7 A7+B1
- ERRNZ PCVB-PCVA-1 CODE DEPENDS ON CONSECUTIVE LOCATIONS
- SX3 B1+B1 POSITION TO THIRD WORD OF RECORD
- RJ PDF
- PRINT (=2C )
- PRINT CDVH1 WRITE CONTROLLER DATA VERIFICATION HEADERS
- PRINT CDVH2
- PRINT (=2C )
- RJ SSB SPACE FILL LINE BUFFER
- PCV1 SA1 PCVB ADVANCE CONTROLLER MEMORY ADDRESS
- SX6 X1+5
- SA6 A1
- READO S
- NZ X1,PCVX IF END OF RECORD
- SA6 PCVC SAVE FIRST WORD OF PAIR
- READO S
- ZR X1,PCV2 IF SECOND WORD TRANSFERRED
- BX6 X6-X6
- PCV2 SA5 PCVC GET FIRST WORD OF PAIR
- SA3 PCVD GET VERIFICATION ERROR MASK
- SA6 A5 SAVE SECOND WORD OF PAIR
- BX1 X3*X6
- BX4 X3*X5
- BX1 X1+X4
- ZR X1,PCV1 IF NO ERROR
- SA1 PCVB GET CONTROLLER MEMORY ADDRESS
- SB7 PRBF PRINT STRING BUFFER
- SB6 4
- LX1 -16
- RJ HTS CONVERT ADDRESS TO HEX DISPLAY
- SA2 PCVA
- SA0 PRBF+10
- SB2 10
- NZ X2,PCV3 IF NOT OCTAL DUMP
- SB7 PRBF
- SB6 5
- LX1 -15
- RJ CTS CONVERT ADDRESS TO DISPLAY
- PCV3 MX0 -4
- SB3 4
- MX3 8
- LX5 4
- BX6 -X0*X5 VERIFICATION ERROR FLAG
- BX1 X3*X5 CONTROLLER DATA (FIRST HALF OF BYTE)
- LX5 12
- SB5 B3+B3
- RJ CVE CHECK FOR VERIFICATION ERROR
- BX4 X6 SAVE FIRST HALF BYTE VERIFICATION STATUS
- SB2 B2-2
- NE B2,B3,PCV4 IF NOT AT END OF FIRST WORD OF PAIR
- SA5 A5 GET SECOND WORD OF PAIR
- LX5 4
- PCV4 BX6 -X0*X5 VERIFICATION ERROR FLAG
- SB5 B0
- RJ CVE CHECK FOR VERIFICATION ERROR
- BX3 X3*X5 CONTROLLER DATA (SECOND HALF OF BYTE)
- LX3 -8
- BX1 X1+X3
- LX5 8
- SB7 A0
- SA2 PCVA GET OCTAL/HEX DUMP FORMAT FLAG
- SB6 B3
- ZR X2,PCV5 IF OCTAL DUMP
- RJ HTS CONVERT ACTUAL VALUE TO HEX DIGITS
- SB6 B3
- SB7 A0+52-10
- BX2 X6*X4
- SB4 B3
- NG X2,PCV7 IF MULTIPLE BIT FAILURE IN BOTH HALVES
- BX1 X1-X6 CALCULATE EXPECTED VALUE
- BX1 X1-X4
- LX1 -16
- RJ HTS CONVERT EXPECTED VALUE TO HEX DIGITS
- BX1 X4+X6 CALCULATE LOGICAL DIFFERENCE
- LX1 -16
- SB7 A0+94-10
- SB6 B3
- RJ HTS CONVERT DIFFERENCE TO HEX DIGITS
- SB4 B1+B1
- SB3 B1+B1
- EQ PCV6 PROCESS MULTIPLE BIT FAILURE
- PCV5 SB3 B3-1
- SB6 B3+B3
- LX1 -2
- RJ CTS CONVERT ACTUAL VALUE TO OCTAL DIGITS
- SB7 A0+52-10
- SB6 B3+B3
- BX2 X4*X6
- SB4 B6
- NG X2,PCV7 IF MULTIPLE BIT FAILURE IN BOTH HALVES
- BX1 X1-X6 CALCULATE EXPECTED VALUE
- BX1 X1-X4
- LX1 -18
- RJ CTS CONVERT EXPECTED VALUE TO OCTAL DIGITS
- SB6 B3+B3
- BX1 X4+X6 CALCULATE LOGICAL DIFFERENCE
- SB4 B3+B1
- LX1 -18
- SB7 A0+94-10
- RJ CTS CONVERT DIFFERENCE TO OCTAL DIGITS
- PCV6 PL X1,PCV9 IF NO MULTIPLE BIT ERROR
- SB7 A0+52-10
- SB6 B4+
- NG X4,PCV7 IF MULTIPLE BIT ERROR IN FIRST HALF
- SB6 B3
- SB7 B7+B6
- PCV7 SA2 =6L******
- RJ UPS UNPACK CHARACTERS TO PRINT LINE
- SB7 A0+94-10
- SB6 B4+
- NG X4,PCV8 IF MULTIPLE BIT ERROR IN FIRST HALF
- SB6 B3
- SB7 B7+B6
- PCV8 SA2 =6L******
- RJ UPS UNPACK CHARACTERS TO PRINT LINE
- PCV9 SA0 A0+8
- NZ B2,PCV3 IF MORE BYTES IN WORD PAIR
- PRINT CCCH,136 PRINT VERIFICATION ERROR LINE
- EQ PCV1 CONTINUE DUMP VERIFICATION
- PCVA CON 0 0 = OCTAL DUMP, 1 = HEX DUMP FORMAT
- PCVB CON 0 CONTROLLER MEMORY ADDRESS
- PCVC CON 0 CONTROLLER DATA WORD
- PCVD VFD 4/17B,8/0,4/17B,8/0,4/17B,8/0,4/17B,8/0,4/17B,8/0
- CDVH1 BSS 0 CONTROLLER DATA VERIFICATION HEADER LINE 1
- DATA 50H ACTUAL VALUE
- DATA 40H EXPECTED VALUE
- DATA C* LOGICAL DIFFERENCE*
- CDVH2 BSS 0 CONTROLLER DATA VERIFICATION HEADER LINE 2
- DATA 50H ADDRESS +0 +1 +2 +3 +4
- DATA 40H +0 +1 +2 +3 +4
- DATA C* +0 +1 +2 +3 +4*
- PCW SPACE 4,17
- ** PCW - PRINT CONTENTS OF SUB-SYSTEM WORDS.
- *
- * ENTRY A5 = ADDRESS OF DESCRIPTOR BLOCK.
- *T 24/ FIRST WORD LABEL,6/ ,18/ REL WORD ADD
- * 240/ 40 CHARACTER DESCRIPTION OF WORD
- *T 24/ SECOND WORD LABEL,6/ ,18/ REL WORD ADD
- * 240/ 40 CHARACTER DESCRIPTION OF WORD
- * . . . .
- * . . . .
- * . . . .
- *T 60/ ZERO WORD TERMINATES BLOCK
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS FDW,UPS,WOF.
- PCW SUBR
- PRINT (=2C )
- SA5 A5-5
- PCW1 SA5 A5+5
- ZR X5,PCW2 IF THROUGH DESCRIPTOR BLOCK
- SB7 PRBF
- SA2 =12HCONTENTS OF
- SB6 12
- RJ UPS
- SA2 A5+
- SB6 6
- RJ UPS STORE WORD LABEL
- SA2 =3H =
- SB6 3
- RJ UPS
- SA1 SSBF+X5 GET WORD TO DUMP
- SA2 =4000005B FORMAT CONTROL
- RJ FDW FORMAT DATA WORD
- SX6 1R-
- SX7 1R
- SA6 B7
- SA7 B7+B1
- SB7 B7+2
- SA2 A5+1
- SB6 40
- RJ UPS
- PRINT CCCH,B7-CCCH
- JP PCW1
- PCW2 PRINT (=2C )
- JP PCWX EXIT
- PDB SPACE 4,10
- ** PDB - PRINT DAYFILE BUFFER.
- *
- * ENTRY (GDBB) = DAYFILE BUFFER LENGTH.
- * (GDBD) = INACCURATE DAYFILE BUFFER POINTERS FLAG.
- * (NC) = NUMBER OF CONTROL POINTS.
- * (CN) = CONTROL POINT NUMBER.
- * = 0 OR (NC)+1 IF SYSTEM DAYFILE.
- * = -1 IF ACCOUNT DAYFILE.
- * = -2 IF ERRLOG DAYFILE.
- * = -3 IF BML DAYFILE.
- * DAYFILE BUFFER STORED IN TABLE *TSCR*.
- * DAYFILE BUFFER POINTERS STORED IN TABLE *TSC1*.
- *
- * USES X - ALL.
- * A - 1, 2, 3, 4, 5, 6, 7.
- * B - 2, 6, 7.
- *
- * CALLS PMD, SDI.
- *
- * MACROS PRINT.
- PDB8 PRINT (=2C )
- PRINT (=C* DAYFILE NOT DEFINED.*)
- PRINT (=2C )
- PDB SUBR
- SA1 GDBD
- NZ X1,PDBX IF INACCURATE DAYFILE BUFFER POINTERS
- SA1 F.TSC1 READ POINTERS ADDRESS
- SA2 GDBB GET BUFFER LENGTH
- BX0 X2
- ZR X2,PDB8 IF DAYFILE NOT DEFINED
- SA1 X1 ACCESS *FIRST* AND *IN*
- MX2 -12
- SA4 F.TSCR FIRST OF DAYFILE BUFFER
- BX6 -X2*X1 *IN*
- * SET POINTERS AND LENGTH FOR THE DAYFILE MESSAGE LIST.
- IX6 X4+X6 SET CURRENT POINTER AS *IN*
- SA6 PDBB
- IX7 X4+X0 BUFFER LWA+1 IN MANAGED TABLE
- SA7 A6+B1
- SX7 X0 WORDS REMAINING = BUFFER LENGTH
- SA7 A7+B1
- * RESET POINTERS AND LENGTH IF BUFFER HAS NOT BEEN USED.
- SA3 A1+B1 ACCESS *OUT*
- BX7 -X2*X3
- IX7 X7+X4 BIAS *OUT*
- BX3 X6-X7
- SA5 A3+B1 CHECK DEVICE ASSIGNMENT
- BX7 X5
- MX2 12
- AX7 36
- NZ X7,PDB1 IF EQUIPMENT ASSIGNED
- NZ X3,PDB1.1 IF DAYFILE USED
- SX6 B0 SET ZERO WORDS TO LIST
- SA6 A7
- EQ PDB2 CONTINUE FOR BUFFER DUMP
- PDB1 LX2 -12
- BX6 X2*X5
- LX2 -12
- AX6 12
- BX7 X2*X5
- BX6 X6-X7
- NZ X6,PDB2 IF BUFFER HAS BEEN FLUSHED
- LX2 -12
- BX6 X2*X5
- SX6 X6-10000B
- NZ X6,PDB2 IF BUFFER HAS BEEN FLUSHED
- PDB1.1 BX7 X4 SET CURRENT WORD POINTER AT BASE
- MX2 -12
- SA7 PDBB
- BX6 -X2*X1 SET LWA+1 AS *IN*
- IX7 X7+X6
- SA7 A7+B1
- SA6 A7+B1 SET WORDS REMAINING = *IN*
- * SET BUFFER MANAGE TABLE, *PDBA*, FOR MEMORY DUMP.
- PDB2 MX2 -24 CALCULATE FWA OF DAYFILE BUFFER
- AX1 36
- BX7 -X2*X1
- IX6 X0+X7
- SA7 PDBA SET DAYFILE BUFFER FWA
- SA6 A7+B1 SET DAYFILE BUFFER LWA+1
- SB2 A7
- BX6 X4
- SA2 CN
- SA6 A6+B1 SET FWA DAYFILE BUFFER IN MANAGED TABLE
- PDB3 RJ PMD PROCESS MEMORY DUMP
- SA1 CN CHECK FOR BINARY MAINTANENCE LOG (BML)
- SX1 X1+3
- ZR X1,PDBX IF BML DAYFILE
- SA1 PDBB+2
- ZR X1,PDBX IF NO LINES IN BUFFER
- PRINT (=2C )
- PRINT (=C* DAYFILE LINES IN BUFFER*)
- PRINT (=2C )
- PDB4 SA4 PDBB GET CURRENT WORD POINTER
- SA3 A4+B1 GET LWA+1 DAYFILE BUFFER IN MANAGED TABLE
- BX2 X2-X2
- SA5 A3+B1 GET NUMBER OF WORDS REMAINING
- MX0 -12
- ZR X5,PDBX IF END OF WORDS IN BUFFER
- PDB5 IX6 X4-X3
- NZ X6,PDB6 IF NO WRAP REQUIRED
- SA4 F.TSCR
- PDB6 SA1 X4 GET NEXT WORD IN DAYFILE BUFFER
- LX7 X1
- SX5 X5-1
- BX6 -X0*X1
- SA7 BUF+X2 BUILD LINE
- SX2 X2+B1
- ZR X5,PDB7 IF LAST WORD PROCESSED
- SX4 X4+B1
- NZ X6,PDB5 IF NOT END OF LINE
- PDB7 SX1 10 CALCULATE CHARACTERS IN LINE
- BX6 X4
- IX1 X2*X1
- SA6 PDBB SAVE CURRENT WORD POINTER
- BX7 X5
- SB6 X1
- SA7 PDBB+2 SAVE WORDS REMAINING
- SA2 BUF SET LINE BUFFER ADDRESS
- SB7 PRBF SET STRING BUFFER ADDRESS
- RJ SDI SET DISPLAY CODE INTERPRETATION
- PRINT CCCH,B7-CCCH
- EQ PDB4 CONTINUE PRINTING DAYFILE LINES
- PDBA BSS 0 DUMP PARAMETERS
- LOC 0
- CON 0 FWA
- CON 0 LWA+1
- CON 0 CORE ADDRESS
- CON 0 NO SUPPRESS FLAG
- CON 2 *E* FORMAT CODE
- CON 0 COLUMN LENGTH
- CON 0 INVERTED ADDRESS
- LOC *O
- PDBB BSS 0 MESSAGE PROCESSING PARAMETERS
- LOC 0
- CON 0 CURRENT WORD POINTER IN MANAGED TABLE
- CON 0 LWA+1 DAYFILE BUFFER IN MANAGED TABLE
- CON 0 WORDS REMAINING IN DAYFILE BUFFER
- LOC *O
- PDF SPACE 4,12
- ** PDF - POSITION DUMP FILE.
- *
- * ENTRY RI = RANDOM ADDRESS OF CURRENT RECORD.
- * X3 = DESIRED WORD ADDRESS.
- *
- * EXIT BINARY DUMP FILE IS POSITIONED AT DESIRED WORD.
- *
- * SAVES X - 0,5.
- * B - 1.
- * A - 0,5.
- *
- * CALLS CIO=,RDW=,WNB=.
- PDF SUBR
- NG X3,ERR18 IF WORD ADDRESS INCORRECT
- RECALL S
- SA1 RI
- BX6 X1
- AX6 30 RECORD WORD COUNT
- IX4 X3-X6
- PL X4,ERR18 IF WORD ADDRESS NOT IN RECORD
- BX6 X3
- MX3 -6
- BX3 -X3*X6 WORD OFFSET
- AX6 6 RELATIVE PRU NUMBER
- MX4 -30
- BX1 -X4*X1 RECORD RANDOM ADDRESS
- IX6 X1+X6
- SA6 S+6 SET RANDOM ADDRESS FOR READ
- SA1 X2+B1 READ FIRST
- SX6 X1
- SA6 A1+B1 IN = FIRST
- SA6 A6+B1 OUT = FIRST
- READ X2 BEGIN READ
- ZR X3,PDFX IF READ BEGINS ON PRU BOUNDARY
- READW X2,PDFA,X3 READ TO DESIRED WORD
- JP PDFX EXIT
- PDFA BSS 64 GARBAGE BUFFER
- PDP SPACE 4,9
- ** PDP - PRINT DAYFILE POINTERS.
- *
- * ENTRY (GDBC) = MEMORY ADDRESS OF POINTERS.
- * DAYFILE BUFFER POINTERS STORED IN TABLE *TSC1*.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS PMD.
- PDP SUBR
- SA1 F.TSC1
- SA2 F.TCMT
- BX6 X1
- SA6 PDPA+2 SET CORE ADDRESS OF POINTERS
- SA1 GDBC GET ADDRESS OF POINTERS
- BX6 X1
- SX2 3
- SA6 PDPA SET FWA
- IX6 X6+X2 FORM LWA+1
- SA6 A6+B1
- SB2 A6-B1
- RJ PMD PROCESS MEMORY DUMP
- JP PDPX EXIT
- PDPA BSS 0 DUMP PARAMETERS
- CON 0 FWA
- CON 0 LWA+1
- CON 0 CORE ADDRESS
- CON 1 NO SUPPRESS FLAG
- CON 1 *D* FORMAT CODE
- CON 3 COLUMN LENGTH
- CON 0 INVERTED ADDRESS
- PEC SPACE 4,10
- ** PEC - PRINT EIGHT CONTROL POINTS.
- *
- * ENTRY (X5) = CONTROL POINT AREA POINTER.
- * (LW) = LWA+1 OF CPA/PCPA.
- * (OP) = PCPA FWA OFFSET (0 IF DUMPING CONTROL POINTS).
- *
- * EXIT (X5) = UPDATED CONTROL POINT AREA POINTER.
- *
- * USES X - ALL.
- * A - 1, 2, 4, 6.
- * B - 2, 3, 4, 5, 6, 7.
- *
- * CALLS CTS, POM, SBL, UPS.
- *
- * MACROS GETCM, PRINT.
- PEC SUBR
- SB2 X5 CONTROL POINT AREA ADDRESS
- SB7 PRBF PRINT STRING ADDRESS
- SB3 B2+8*CPLEN LIMIT ADDRESS
- SA1 LW
- SB4 X1 LWA+1 OF CONTROL POINT AREA
- * PRINT CONTROL POINT NUMBERS.
- PEC1 SA2 =10HCP
- SB6 3
- SA1 OP
- ZR X1,PEC1.1 IF NOT DUMPING PCPA-S
- SA2 =10HPCP
- PEC1.1 RJ UPS UNPACK STRING
- SX1 B2
- SA2 OP
- IX1 X1-X2 SUBTRACT OFF PCPA OFFSET
- LX1 -13
- SB6 2
- RJ CTS SET CONTROL POINT NUMBER
- SB6 4
- RJ SBL SPACE 4
- SB2 B2+CPLEN ADVANCE CONTROL POINT ADDRESS
- GE,B2,B3,PEC2 IF END OF LINE
- LT B2,B4,PEC1 IF MORE CONTROL POINTS TO PROCESS
- PEC2 PRINT PRBF,B7-PRBF
- * PRINT JOB SEQUENCE NUMBERS.
- SB7 PRBF PRESET PRINT STRING ADDRESS
- SB2 X5+ SET CONTROL POINT AREA ADDRESS
- SX6 B2+8*CPLEN SET CONTROL POINT AREA LIMIT ADDRESS
- SA6 PECB
- SA1 LW SET CONTROL POINT AREA LWA+1
- BX6 X1
- SA6 PECA
- SB4 X6
- PEC3 SA4 F.TCMT READ EJT ORDINAL
- SX2 X4+B2
- SA2 X2+TFSW
- MX3 12 SET EJT ORDINAL MASK
- BX2 X3*X2
- NZ X2,PEC3.1 IF CONTROL POINT ACTIVE
- SB6 9 SPACE 9 IF CONTROL POINT NOT ACTIVE
- SB5 B2+CPLEN
- LT B5,B4,PEC4 IF NOT SYSTEM CONTROL POINT
- PEC3.1 SA1 X4+EJTP GET FWA EJT
- MX0 24
- BX1 X0*X1
- LX1 24
- LX2 12 FIND EJT ENTRY ADDRESS
- SX6 EJTE
- IX2 X2*X6
- IX6 X2+X1 SET ADDRESS INTO DUMP FILE
- SA6 CPRA
- SA0 B2+ SAVE CONTROL POINT AREA ADDRESS
- SX0 B7 SAVE PRINT STRING ADDRESS
- SB2 A6
- RJ POM
- GETCM READ FIRST WORD OF EJT ENTRY
- SB7 X0+ RESTORE PRINT STRING ADDRESS
- MX0 24
- BX2 X0*X6 SET JOB SEQUENCE NUMBER
- SB6 4
- RJ UPS
- SB2 A0+ RESTORE CONTROL POINT AREA ADDRESS
- SB6 5 SPACE 5
- PEC4 RJ SBL
- SB2 B2+CPLEN
- SA4 PECB GET CONTROL POINT AREA LIMIT ADDRESS
- SA2 PECA GET CONTROL POINT AREA LWA+1
- SB4 X2
- SB3 X4
- GE B2,B3,PEC5 IF END OF LINE
- LT B2,B4,PEC3 IF MORE CONTROL POINTS
- PEC5 PRINT PRBF,B7-PRBF
- * PRINT CONTROL POINT AREA ADDRESS.
- SB7 PRBF RESET PRINT STRING ADDRESS
- SA1 LW
- SB2 X5 CONTROL POINT AREA ADDRESS
- SB3 B2+8*CPLEN LIMIT ADDRESS FOR THIS LINE
- SB4 X1 CONTROL POINT AREA LWA+1
- SB5 -4 -(ADDRESS DIGIT COUNT)
- SA2 OP
- ZR X2,PEC6 IF NOT DUMPING PCPA-S
- SB5 -5
- PEC6 SX1 B2
- SB6 B5+60
- LX1 B6 SHIFT ADDRESS
- SB2 B2+CPLEN ADVANCE CPA/PCPA ADDRESS
- LX1 B6
- LX1 B6
- SB6 -B5
- RJ CTS CONVERT ADDRESS
- SB6 B5+9
- RJ SBL SPACE TO NEXT CPA/PCPA
- GE B2,B3,PEC7 IF END OF LINE
- LT B2,B4,PEC6 IF MORE CONTROL POINTS
- PEC7 SX5 B2+ UPDATE CONTROL POINT AREA ADDRESS
- PRINT PRBF,B7-PRBF
- JP PECX EXIT
- PECA BSS 1 SAVED CONTROL POINT AREA ADDRESS
- PECB BSS 1 SAVED CONTROL POINT AREA LIMIT ADDRESS
- PEN SPACE 4,12
- ** PEN - PRINT BUFFERED DEVICE TABLE ENTRY NUMBER.
- *
- * ENTRY (X1) = ENTRY NUMBER, LEFT-JUSTIFIED.
- * (X2) = TABLE NAME IN DISPLAY CODE, LEFT-JUSTIFIED
- * AND SPACE-FILLED.
- * (B6) = TABLE NAME CHARACTER COUNT.
- *
- * USES B - 6, 7.
- *
- * CALLS CTS, UPS.
- *
- * MACROS PRINT.
- PEN SUBR ENTRY/EXIT
- SB7 PRBF
- RJ UPS STORE TABLE NAME IN STRING BUFFER
- SB6 4
- RJ CTS STORE ENTRY NUMBER IN STRING BUFFER
- PRINT CCCH,B7-CCCH
- PRINT (=2C )
- EQ PENX RETURN
- PER SPACE 4,7
- ** PER - PROCESS ERROR EXIT.
- *
- * ENTRY (RPVB+7) = ERROR EXIT INFORMATION.
- *
- * EXIT IF AN ARITHMETIC ERROR IS ENCOUNTERED,
- * PROCESSING IS RESUMED AT *ERR19.1*. IF
- * ANY OTHER ERROR IS ENCOUNTERED *DSDI*
- * IS ABORTED AND THE ERROR IS REPORTED.
- *
- * USES X - 0, 1, 2, 3, 6, 7.
- * A - 1, 2, 6, 7.
- *
- * MACROS REPRIEVE.
- PER SA2 RPVB+7 ERROR FLAG
- MX0 -12
- BX3 -X0*X2 EXTRACT ERROR FLAG
- SX3 X3-ARET
- ZR X3,PER1 IF ARITHMETIC ERROR
- REPRIEVE RPVB,RESET,001
- PER1 SA1 PERA RESTORE REPRIEVE BLOCK
- SA2 A1+B1
- BX6 X1
- BX7 X2
- SA6 RPVB
- SA7 A6+B1
- REPRIEVE RPVB,SET,001
- EQ ERR19.1 * BAD SYSTEM POINTER.*
- PERA VFD 36/0,12/31B,12/0
- VFD 30/0,30/PER
- PFS SPACE 4,9
- ** PFS - PRINT FILE SUMMARY.
- *
- * ENTRY FILE INFORMATION IS AT *GNFA*.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS ATC,CTS,FDW,PTC,SDI,SSB,UPS,WOF.
- PFS SUBR
- RJ SSB CLEAR PRINT STRING
- SA2 =10HFNT -FUT -
- SB6 5
- SB7 PRBF+24
- RJ UPS SET HEADER INFORMATION
- SB6 5
- SB7 PRBF+74
- RJ UPS
- * SET FILE ORDINAL.
- SA1 GNFA
- SB6 4
- SB7 PRBF+3
- LX1 -12
- RJ CTS
- * SET FILE NAME.
- SA2 GNFA+1
- SB6 7
- SB7 PRBF+9
- RJ UPS
- * SET FILE TYPE.
- LX2 6
- MX1 6
- BX2 X1*X2
- LX2 6 TYPE CODE
- SX3 5 CALCULATE WORD ORDINAL
- BX4 X2
- SX7 X3
- IX0 X2/X3
- IX3 X0*X7
- SA1 PFSA+X0 GET WORD IN FILE TYPE MICRO
- IX4 X4-X3 CALCULATE SHIFT COUNT
- SX3 12
- MX0 12
- IX4 X3*X4
- SB2 X4+
- LX1 X1,B2
- BX2 X0*X1
- SB6 2
- SB7 PRBF+18
- RJ UPS
- * SET FNT.
- SA1 GNFA+1
- SB7 PRBF+30
- SA2 =4000005B FORMAT CONTROL
- RJ FDW
- BX2 X1
- SB6 10
- RJ SDI
- * SET FUT.
- SA1 GNFA+3
- SB7 PRBF+80
- SA2 =4000005B FORMAT CONTROL
- RJ FDW
- BX2 X1
- SB6 10
- RJ SDI
- PRINT CCCH,B7-CCCH
- * LINE 2.
- RJ SSB CLEAR PRINT STRING
- SA2 =10HFST -EST -
- SB6 5
- SB7 PRBF+24
- RJ UPS
- SB6 5
- SB7 PRBF+74
- RJ UPS
- * SET FST.
- SA1 GNFA+2
- SB7 PRBF+30
- SA2 =4000005B FORMAT CONTROL
- RJ FDW
- BX2 X1
- SB6 10
- RJ SDI
- * SET EST ADDRESS.
- SA1 GNFA+4
- LX1 -18
- SB6 6
- SB7 PRBF+80
- RJ CTS
- * SET EST.
- SA1 GNFA+5
- SB7 B7+2
- SA2 =4000005B FORMAT CONTROL
- RJ FDW
- BX2 X1
- SB6 10
- RJ SDI
- PRINT CCCH,B7-CCCH
- SA1 GNFA+5
- PL X1,PFS1 IF NOT MASS STORAGE
- PRINT (=C* TRACK CHAIN -*)
- RJ ATC ASSEMBLE TRACK CHAIN
- RJ PTC PRINT TRACK CHAIN
- PFS1 PRINT (=2C )
- JP PFSX EXIT
- PFSA DATA H*"NMFT"* FILE TYPE NAMES
- PIO SPACE 4,5
- ** PIO - PRESET INPUT AND OUTPUT FILES.
- *
- * USES ALL REGISTERS.
- *
- * CALLS CIO=,RSP,STF,WNB=.
- PIO SUBR
- * CHECK OUTPUT FILE.
- SX2 L
- RJ STF CHECK IF TERMINAL
- NZ X6,PIO1 IF NOT A TERMINAL
- SA1 =0LOUTPUT
- BX6 X1+X2
- SA6 B1+B1 SET OUTPUT FILE FET POINTER
- SX6 15B
- BX6 X1+X6
- SA6 X2 SET NON-BUSY WRITE CODE IN FET
- SX6 1R
- SA6 CCCH SET CARRIAGE CONTROL CHARACTER
- SX6 1
- SA6 TF SET TERMINAL OUTPUT FLAG
- JP PIO2 PROCESS INPUT FILE
- PIO1 SA1 PRSB
- RJ RSP RESET PRINT DENSITY
- * PRESET INPUT FILE.
- PIO2 SA1 ZF
- NZ X1,PIOX IF DIRECTIVES ON COMMAND
- SA4 I
- ZR X4,PIOX IF ZERO FET
- SX2 A4
- RJ STF CHECK IF TERMINAL
- NZ X6,PIO3 IF NOT A TERMINAL
- SA1 TF
- ZR X1,PIO3 IF OUTPUT NOT TO A TERMINAL
- PRINT (=C*ENTER DIRECTIVES--*)
- PIO3 RECALL I
- READ X2 BEGIN INPUT READ
- JP PIOX EXIT
- PKS SPACE 4,11
- ** PKS - PACK CHARACTERS FROM STRING BUFFER.
- *
- * ENTRY B2 = FWA OF STRING BUFFER.
- * B6 = NUMBER OF CHARACTERS TO PACK.
- * B7 = FWA OF PACKED BUFFER.
- *
- * EXIT B2 AND B7 ARE UPDATED.
- *
- * USES X - 1,6.
- * B - 2,5,6,7.
- * A - 1,6.
- PKS SUBR
- PKS1 SX6 0 CLEAR ASSEMBLY
- SB5 60 LEFT JUSTIFICATION SHIFT COUNT
- PKS2 SA1 B2 READ STRING
- LX6 6
- SB6 B6-1 COUNT CHARACTER
- SB2 B2+B1 ADVANCE STRING POINTER
- SB5 B5-6 DECREASE SHIFT COUNT
- BX6 X6+X1 MERGE NEW CHARACTER
- ZR B5,PKS3 IF FULL WORD ASSEMBLED
- NZ B6,PKS2 IF MORE CHARACTERS TO PACK
- PKS3 LX6 X6,B5 LEFT JUSTIFY LAST WORD
- SA6 B7 STORE PACKED DATA
- SB7 B7+1 ADVANCE OUTPUT POINTER
- NZ B6,PKS1 IF MORE CHARACTERS TO PACK
- JP PKSX EXIT
- PMD SPACE 4,36
- ** PMD - PROCESS MEMORY DUMP.
- *
- * ENTRY B2 = DUMP PARAMETER BLOCK ADDRESS.
- *
- * PARAMETER BLOCK FORMAT -
- *
- *T WORD0 60/FWA OF DUMP
- *T WORD1 60/LWA+1 OF DUMP
- *T WORD2 60/CORE ADDRESS
- *T WORD3 60/NO SUPPRESS FLAG
- *T WORD4 60/FORMAT CODE
- *T WORD5 60/COLUMN LENGTH
- *T WORD6 60/INVERTED ADDRESS
- *
- * WHERE -
- *
- * CORE ADDRESS = ADDRESS OF DATA IF DUMPING FROM MEMORY.
- * = 0 IF DUMPING FROM DUMP FILE.
- *
- * NO SUPPRESS FLAG = 0 TO SUPPRESS REPEAT DATA.
- * .NE.0 IF NO SUPPRESSION REQUESTED.
- *
- * FORMAT CODE = 0 FOR *C* FORMAT.
- * = 1 FOR *D* FORMAT.
- * = 2 FOR *E* FORMAT.
- *
- * COLUMN LENGTH = 0 - COMPUTE COLUMN LENGTH.
- * = L - FORCE COLUMNS TO BE L WORDS LONG.
- * INVERTED ADDRESS USED TO INDICATE ADDRESS ON
- * THE DUMP SHOULD DECREMENT.
- *
- * EXIT INPUT PARAMETER BLOCK NOT UPDATED.
- * B2 = ADDRESS OF UPDATED PARAMETER BLOCK.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS CTS, FPB, PPB, SDI, SRD, SSB.
- *
- * MACROS GETCM, MOVE, PRINT.
- PMD SUBR
- MOVE 7,B2,PMDB MOVE PARAMETER BLOCK
- RJ SSB SPACEFILL STRING BUFFER
- MX6 1
- SA6 SRDA PRESET FIRST CALL TO *SRD*
- SA1 PMDB+4 FORMAT CODE
- SB2 X1+
- JP B2+PMDA EXECUTE SELECTED PROCESSOR
- PMDA BSS 0
- LOC 0
- + JP PMD1 *C* FORMAT
- + JP PMD1 *D* FORMAT
- + JP PMD2 *E* FORMAT
- LOC *O
- * PROCESS C AND D FORMAT.
- PMD1 SB2 PMDB
- RJ FPB FILL PAGE BUFFER
- SB2 PMDB
- RJ PPB PRINT PAGE BUFFER
- SA1 PMDB FWA
- SA2 A1+B1 LWA+1
- IX2 X1-X2
- NG X2,PMD1 IF MORE TO DUMP
- SB2 PMDB
- JP PMDX EXIT
- * PROCESS E FORMAT.
- PMD2 SA1 PMDB+2
- NZ X1,PMD3 IF DUMPING FROM CORE
- GETCM BUF,4
- SX1 BUF SET DATA ADDRESS
- PMD3 SA2 PMDB+3
- NZ X2,PMD4 IF NO SUPPRESS REQUESTED
- SB5 4 WORD COUNT
- RJ SRD SENSE REPEAT DATA
- NZ X1,PMD7 IF REPEAT SENSED
- PMD4 SA1 PMDB+6
- NZ X1,PMD4.1 IF INVERTED ADDRESS TO BE USED
- SA1 PMDB GET NORMAL ADDRESS
- PMD4.1 LX1 -24 LEFT JUSTIFY BINARY DIGITS
- SB6 8 NUMBER OF DIGITS
- SB7 PRBF
- RJ CTS CONVERT ADDRESS
- SA1 PMDB+2
- SB7 B7+1
- NZ X1,PMD5 IF DUMPING FROM CORE
- SX1 BUF
- PMD5 SA1 X1+ READ FIRST DATA WORD
- SB2 4 WORD COUNT
- PMD6 SB6 20
- RJ CTS CONVERT DATA WORD
- SB7 B7+1
- SA1 A1+B1
- SB2 B2-B1
- NZ B2,PMD6 IF MORE TO DUMP
- SA2 A1-4
- SB6 40
- RJ SDI SET DISPLAY CODE INTERPRETATION
- PRINT CCCH,B7-CCCH
- PMD7 SA1 PMDB+2
- ZR X1,PMD8 IF DUMPING FROM FILE
- SX6 X1+4
- SA6 A1+ UPDATE CORE ADDRESS
- PMD8 SA1 PMDB+6
- SX6 4
- ZR X1,PMD9 IF NO INVERTED ADDRESS
- IX7 X1-X6
- SA7 A1
- PMD9 SA1 PMDB
- IX6 X1+X6
- SA6 A1 UPDATE ADDRESS
- SA2 A1+B1 LWA+1
- IX6 X6-X2
- NG X6,PMD2 IF MORE TO DUMP
- SB2 PMDB UPDATED PARAMETER BLOCK ADDRESS
- JP PMDX EXIT
- PMDB BSS 7 DUMP PARAMETER BLOCK
- PNF SPACE 4,15
- ** PNF - PRINT NEGATIVE FL AREA.
- *
- * ENTRY (X3) = NEGATIVE FIELD LENGTH ORDINAL OF LWA+1.
- * (X0) = NEGATIVE FIELD LENGTH ORDINAL OF FWA.
- * (RC) = RA OF CONTROL POINT.
- * (L.TNFL) = NFL OF CONTROL POINT.
- * TABLE *TNFL* CONTAINS NFL MEMORY.
- *
- * USES DCGA - DCGA+6.
- * X - 1, 2, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2.
- *
- * CALLS PMD.
- PNF SUBR ENTRY/EXIT
- SA1 RC GET RA
- SA2 L.TNFL GET NFL
- IX7 X1-X0 FORM ABSOLUTE FWA
- IX6 X1-X3 FORM ABSOLUTE LWA+1.
- SA7 DCGA
- SA6 A7+B1
- SA1 F.TNFL GET BASE ADDRESS OF DATA
- IX7 X2-X0 FORM INDEX
- IX7 X1+X7 FORM ADDRESS OF DATA IN CORE
- SA7 A6+B1
- SB2 A6-B1 SET BASE ADDRESS OF DUMP PARAMETERS
- BX7 X0 SAVE INVERTED ADDRESS
- SA7 DCGA+6
- RJ PMD PROCESS DUMP
- JP PNFX RETURN
- POM SPACE 4,10
- ** POM - POSITION CM/EXTENDED MEMORY.
- *
- * ENTRY MI = MEMORY BLOCK RANDOM INDEX.
- * B2 = ADDRESS OF DUMP PARAMETER BLOCK.
- *
- * SAVES X - 0,5.
- * B - 1.
- * A - 0,5.
- *
- * CALLS PCM.
- POM SUBR
- SA1 MI
- BX6 X1
- SA1 B2 FWA OF DUMP
- SA6 RI SET RANDOM INDEX FOR CURRENT MEMORY BLOCK
- SA2 MB MEMORY BASE ADDRESS
- IX3 X1+X2
- SA2 BA RA OF DUMP
- IX3 X3+X2
- RJ PCM POSITION DUMP FILE
- JP POMX EXIT
- PPB SPACE 4,11
- ** PPB - PRINT PAGE BUFFER.
- *
- * ENTRY X1 = BUFFER LENGTH.
- * B2 = DUMP PARAMETER BLOCK ADDRESS.
- * PAGE BUFFER IS AT *BUF*.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS CTS,FDW,SDI,UPS,WOF.
- PPB SUBR
- SX6 BUF
- IX7 X6+X1
- SA6 PPBA SAVE PAGE BUFFER FWA
- SA4 B2+5 COLUMN LENGTH
- ZR X4,PPB1 IF COLUMN LENGTH NOT SPECIFIED
- LX6 X4,B1
- JP PPB2 SET ROW INCREMENT
- PPB1 SX2 6 COMPUTE ROW INCREMENT = 2*(WORDS+2)/3
- SX1 X1+4
- IX6 X1/X2
- LX6 1
- PPB2 SA6 A6+B1 SAVE PRINT ROW INCREMENT
- SA7 A6+B1 SAVE PRINT BUFFER LWA+1
- SA5 B2+4 FORMAT CODE
- SA5 X5+PPBB FORMAT CONTROL PARAMETERS
- * FORMAT ONE ROW.
- PPB3 SA1 PPBA
- SA3 A1+B1 ROW INCREMENT
- SA2 A3+B1
- SB3 X1 SET BUFFER POINTER
- SB4 X2 BUFFER LWA+1
- SX4 3 LOOP COUNT
- SB7 PRBF PRINT STRING ADDRESS
- * PROCESS ONE WORD.
- PPB4 LT B3,B4,PPB5 IF NOT BEYOND END OF BUFFER
- SA2 =50H
- JP PPB6 BLANK THIS PORTION OF PRINT LINE
- PPB5 SA1 B3+ READ PAGE BUFFER ENTRY
- PL X1,PPB7 IF VALID DATA
- SA2 =50H-------------------------------------------
- PPB6 SB6 X5+39 NUMBER OF CHARACTERS
- RJ UPS STORE REPEAT DATA INDICATOR IN PRINT LINE
- JP PPB8 PROCESS NEXT WORD
- * FORMAT DATA WORD.
- PPB7 SB6 8 NUMBER OF DIGITS
- LX1 -24 LEFT JUSTIFY BINARY DIGITS
- RJ CTS CONVERT ADDRESS TO PRINT STRING
- SX6 1R
- SA6 B7
- SB7 B7+B1 SPACE ONE
- SA1 A1+B1 READ DATA WORD
- BX2 X5 SET FORMAT CONTROL
- RJ FDW FORMAT DATA WORD
- SB6 10
- BX2 X1 SET DATA WORD FOR *SDI*
- RJ SDI SET DISPLAY CODE INTERPRETATION
- PPB8 SB3 B3+X3 ADVANCE PAGE BUFFER ADDRESS
- SB7 B7+2 SPACE 2
- SX4 X4-1
- NZ X4,PPB4 IF MORE TO FORMAT IN THIS ROW
- PRINT CCCH,B7-CCCH-2
- SA1 PPBA ADVANCE PAGE BUFFER POINTER
- SA2 A1+1
- SX2 X2+BUF LWA+1 OF END OF FIRST COLUMN
- SX6 X1+2
- SA6 A1 UPDATE POINTER
- IX7 X6-X2
- NG X7,PPB3 IF MORE TO DUMP
- JP PPBX EXIT
- PPBA BSS 1 PAGE BUFFER POINTER
- BSS 1 PAGE ROW INCREMENT
- BSS 1 PAGE BUFFER LWA+1
- PPBB BSS 0 FORMAT CONTROL PARAMETERS
- VFD 24/0,18/5,18/4 *C* FORMAT
- VFD 24/0,18/4,18/5 *D* FORMAT
- PPE SPACE 4,10
- ** PPE - PROCESS PREMATURE EOF.
- *
- * ENTRY TO *PPE* TO END CURRENT RECORD AND ISSUE MESSAGE.
- * TO *PPE1* TO ISSUE MESSAGE ONLY.
- *
- * EXIT TO *RBI2*.
- *
- * CALLS ERS.
- *
- * MACROS MESSAGE.
- PPE BSS 0 ENTRY
- RJ ERS END RECORD ON FILE *S*
- PPE1 MESSAGE MSG5,,R * WARNING - INCOMPLETE DUMP FILE.*
- EQ RBI2 READ NEXT RECORD
- PPO SPACE 4,20
- ** PPO - PACK PP OPERATING REGISTERS.
- *
- * ENTRY (PP) = PP NUMBER.
- *
- * EXIT (X6) = 0 IF NO REGISTERS FOUND.
- * (PPOB - PPOB+7) = REGISTERS CAPTURED AT TIME OF DUMP,
- * BEFORE AND AFTER AN *IDLE* WAS ISSUED TO THE PP/CPP
- * (I4A OR I4S IOU ONLY).
- * (PPOB+8 - PPOB+15) = REGISTERS CAPTURED BY *DFT*.
- *
- * USES X - 0, 1, 2, 3, 5, 6, 7.
- * A - 1, 2, 3, 6, 7.
- * B - 6, 7.
- *
- * CALLS CPN, DRA, FBP, GDA, NXB, RDR, RPB.
- *
- * MACROS MOVE.
- PPO3 RJ GDA GET DFT/OS BUFFER FWA
- BX6 X5
- ZR X3,PPOX IF NO DFT/OS BUFFER
- SA2 X3 GET DFT CONTROL WORD
- MX0 4
- BX2 X0*X2 GET NUMBER OF POINTER WORDS
- SA1 CI SET RANDOM INDEX OF CM RECORD
- BX7 X1
- LX2 4
- SX2 X2-/DFT/DFPR-1
- NG X2,PPOX IF NO PP REGISTERS POINTER WORD
- SA7 RI
- SA3 X3+/DFT/DFPR
- RJ DRA GET PP REGISTER DATA POINTER
- SX6 X6+B1 SKIP HEADER WORD
- SA2 PPOA GET PP/CPP NUMBER
- LX2 2
- IX3 X6+X2 PP REGISTER DATA FWA
- LX3 2 CONVERT TO BYTE NUMBER
- RJ FBP FIND BYTE POSITION
- SB6 PPOB+8-1
- SB7 7
- PPO4 RJ NXB GET NEXT REGISTER
- LX1 16
- BX5 X1
- RJ NXB
- BX7 X5+X1
- SB6 B6+B1
- SA7 B6
- SB7 B7-B1
- PL B7,PPO4 IF NOT THROUGH GETTING REGISTERS
- SX6 1 SET REGISTER DATA FOUND
- PPO SUBR ENTRY/EXIT
- SX5 0 SET NO REGISTER DATA FOUND
- RJ CPN CONVERT PP/CPP NUMBER
- SA1 .PSR
- NZ X3,PPO1 IF DUMPING A CPP
- SA3 TLPP+X6 CHECK FOR PP SWITCH
- SX7 X3-20B
- BX2 X3-X2
- ZR X2,PPO1 IF NO SWITCH
- BX6 X3
- NG X7,PPO1 IF NOT UPPER BANK
- SX6 X3-20B+12B
- PPO1 SA6 PPOA SAVE LOGICAL PP NUMBER
- RJ RDR READ DUMP RECORD
- ZR X2,PPO3 IF RECORD NOT FOUND
- SA1 RI MOVE DATA TO *PBUF*
- AX1 30
- MOVE X1,BUF,PBUF
- SA1 PPOA CALCULATE STARTING BYTE IN RECORD
- SX2 18D
- IX5 X1*X2
- SX0 -452452B BIT MASK FOR NUMBER OF BYTES TO READ
- SB6 A1
- ERRNZ PPOB-1-PPOA *PPOA* AND *PPOB* MUST BE CONTIGUOUS
- SX7 B0+ CLEAR ASSEMBLY REGISTER
- PPO2 BX1 X5
- RJ RPB READ REGISTER BYTE
- LX6 4
- BX7 X7+X6
- LX7 8
- SX5 X5+B1 ADVANCE BYTE ADDRESS
- LX0 -1
- NG X0,PPO2 IF NOT THROUGH READING A REGISTER
- SB6 B6+B1 STORE REGISTER
- SA7 B6
- BX7 X7-X7 CLEAR ASSEMBLY REGISTER
- SX0 X0+
- NZ X0,PPO2 IF NOT THROUGH READING ALL REGISTERS
- EQ PPO3 CHECK FOR DFT BUFFER
- PPOA CON 0 LOGICAL PP NUMBER
- PPOB BSS 0 UNPACKED REGISTERS
- DUP 16,1
- CON 1S59
- PRS SPACE 4,5
- ** PRS - PRESET PROGRAM.
- *
- * USES ALL REGISTERS.
- *
- * CALLS ARG, ZAP.
- *
- * MACROS DATE, REPRIEVE.
- PRS SUBR
- REPRIEVE RPVB,SET,001
- SX6 A0+
- SX1 X6-MFL=
- PL X1,PRS0.0 IF SUFFICIENT FIELD LENGTH
- MEMORY CM,,R,MFL=
- SX6 MFL=+77B ROUND UP BY 100B
- AX6 6
- LX6 6
- PRS0.0 SA6 FN SAVE INITIAL FIELD LENGTH
- SA6 FM SET CURRENT FIELD LENGTH
- SX6 X6-10B
- SA6 F.TEND INITIALIZE TABLE SPACE
- GETPP PRSE,PRSD,PRSC JOBS DEFAULT PRINT INFORMATION
- SA1 =1LS
- SA2 PRSC
- BX2 X1-X2
- NZ X2,PRS0 IF NOT 6 LINES PER INCH (1LS)
- SA1 =1L6 SET 6 LINES PER INCH
- EQ PRS0.1 SET JOBS DEFAULT PRINT DENSITY
- PRS0 SA1 =1L8 SET 8 LINES PER INCH
- PRS0.1 BX6 X1
- SA6 PRSB JOBS DEFAULT PRINT DESITY SELECTION
- SA1 ACTR
- SB4 X1+ ARGUMENT COUNT
- ZR B4,PRS1 IF NO ARGUMENTS
- SB5 PRSA ARGUMENT TABLE ADDRESS
- SA4 ARGR READ FIRST ARGUMENT
- RJ ARG PROCESS COMMAND ARGUMENTS
- NZ X1,ERR1 IF ARGUMENT ERROR
- SA1 F
- ZR X1,ERR1 IF F=0 SPECIFIED
- SA1 BF
- ZR X1,PRS1 IF *B* NOT SPECIFIED
- SA2 B SET BML FILE NAME IN FET
- MX0 -18
- BX6 -X0*X2
- BX6 X1+X6
- SA6 A2
- SA6 EB SET EMPTY BML FILE FLAG
- SA1 BD
- NZ X1,ERR43 IF BINARY DUMP
- PRS1 SA1 ZF
- ZR X1,PRS2 IF *Z* ARGUMENT NOT SELECTED
- SX2 I SET INPUT FET ADDRESS
- SB6 80 SET STRING BUFFER LENGTH
- RJ ZAP PROCESS *Z* ARGUMENT
- PRS2 DATE DATE SET DATE
- SX6 1R.
- SA6 CHAR+80 GUARANTEE TERMINATOR ON DIRECTIVES
- SA3 BD
- ZR X3,PRS3 IF NOT BINARY DUMP
- SX6 1RX CHANGE CPO DIRECTIVE DEFAULT
- SA1 =10H(DMB MODE) SET MODE IN HEADER
- LX6 59-5
- BX7 X1
- SA6 CO
- SA7 TITL2+2
- PRS3 SA1 DR
- SA2 S
- MX3 42
- BX6 X3*X1
- ZR X6,PRSX IF NO RANDOM FILE NAME SPECIFIED
- BX2 -X3*X2
- BX6 X6+X2
- SX7 -1
- SA6 A2
- SA7 A1
- JP PRSX EXIT
- PRSA BSS 0 COMMAND ARGUMENT TABLE
- I ARG I,I
- F ARG F,F
- L ARG L,L
- B ARG BF,BF
- D ARG =1,DR
- DMB ARG -=1,BD
- NR ARG -=1,RBIA
- FULL ARG -=1,VE
- PD ARG =0L8,PRSB
- P ARG -=1,PF
- Z ARG -=1,ZF
- VFD 60/0
- PRSB CON 0 PRINT DESITY SELECTION
- PRSC CON 0 PRINT DESITY FORMAT CONTROL CHARACTER
- PRSD CON 0 PAGE LINE LIMIT
- PRSE CON 0,0 *GETPP* REPLY BUFFER
- PSM SPACE 4,10
- ** PSM - POSITION SIXTY-FOUR BIT MEMORY.
- *
- * ENTRY (B2) = POINTER TO 64-BIT MEMORY ADDRESS.
- *
- * EXIT *NXB* SET TO GET NEXT BYTE.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 1, 2, 3, 6, 7.
- *
- * CALLS FBP, ISM.
- PSM SUBR ENTRY/EXIT
- SA1 B2 64 BIT MEMORY BYTE ADDRESS
- BX7 X7-X7
- SA2 XB FETCH MEMORY BOUNDS
- IX1 X1-X2
- NG X1,PSM1 IF NOT *EI* ADDRESS
- BX7 X2
- PSM1 SA7 AO DETERMINE 64-BIT MEMORY RECORD
- RJ ISM
- SA1 XI SET CM RANDOM INDEX
- BX6 X1
- SA1 B2
- SA6 RI
- SA3 XH
- IX6 X1-X3 64 BIT WORD OFFSET WITHIN RECORD
- AX3 X6,B1
- RJ FBP FIND BYTE POSITION
- EQ PSMX RETURN
- PTC SPACE 4,11
- ** PTC - PRINT TRACK CHAIN.
- *
- * ENTRY TRACK LINKS IN TABLE *TSC1* ONE PER WORD RIGHT
- * JUSITIFIED. A NEGATIVE TABLE ENTRY IS AN ERROR
- * MESSAGE ADDRESS.
- *
- * USES X - 1, 2, 3, 5.
- * A - 1, 2, 3.
- * B - 2, 3, 4, 6, 7.
- *
- * CALLS CTS, SSB.
- *
- * MACROS PRINT.
- PTC4 BX1 -X1
- PRINT X1 PRINT ERROR MESSAGE
- PTC SUBR
- SX5 0 PRESET TABLE INDEX
- RJ SSB CLEAR PRINT STRING
- PTC1 SA2 F.TSC1 LINK TABLE BASE ADDRESS
- SA3 L.TSC1
- SB2 X5 SET CURRENT INDEX
- SB3 X3 TABLE LENGTH
- GE B2,B3,PTCX IF FINISHED
- SB7 PRBF+24 PRINT STRING ADDRESS
- SB4 21 LOOP COUNT
- PTC2 SA1 X2+B2 READ NEXT ENTRY
- NG X1,PTC4 IF ERROR
- LX1 -12
- SB6 4
- RJ CTS CONVERT TRACK LINK
- SB7 B7+B1
- SB2 B2+B1 ADVANCE INDEX
- SB4 B4-1 LOOP COUNT
- GE B2,B3,PTC3 IF END OF CHAIN REACHED
- GE B4,B0,PTC2 IF MORE SPACE IN THIS LINE
- PTC3 SX5 B2+ SAVE INDEX
- PRINT CCCH,B7-CCCH
- JP PTC1 CONTINUE
- PTL SPACE 4,16
- ** PTL - PRINT TABLE LINE.
- *
- * ENTRY X1 = FORMAT TABLE POINTER.
- * A1 = ADDRESS OF FORMAT TABLE POINTER.
- * B2 = BASE ADDRESS OF TABLE DATA IN CORE.
- * FW = BASE ADDRESS OF TABLE IN DUMP.
- * B7 = PRINT STRING ADDRESS.
- *
- * EXIT FORMAT TABLE POINTER IS UPDATED.
- * X2.LT.0 IF END OF DUMP.
- *
- * SAVES X - NONE.
- * B - 1,2.
- * A - 0.
- *
- * CALLS CTS,SBL,SDI,UPS.
- PTL SUBR
- SA2 X1+ READ FORMAT TABLE
- NG X2,PTLX IF END OF DUMP
- NZ X2,PTL1 IF DATA TO DUMP
- SB6 68
- RJ SBL BLANKFILL LINE
- JP PTLX EXIT
- PTL1 SX6 X1+4
- SA6 A1 UPDATE FORMAT TABLE POINTER
- SB3 X2 WORD ORDINAL IN TABLE
- AX2 18
- SB4 X2 FIRST DIGIT POSITION OF FIELD
- AX2 18
- SX4 X2 NUMBER OF DIGITS IN FIELD
- AX2 18
- ZR X2,PTL2 IF NOT INDIRECT PROCESSING
- SA1 B3
- SB3 X1+ WORD ORDINAL IN TABLE
- PTL2 SA2 A2+1 READ FIRST WORD OF FIELD DESCRIPTION
- SB6 28
- RJ UPS STORE IN PRINT STRING
- NZ B4,PTL3 IF NOT FIRST FIELD IN WORD
- SA1 FW
- SX1 X1+B3 FORM WORD ADDRESS
- SB6 6
- LX1 -18
- RJ CTS CONVERT WORD ADDRESS
- SB7 B7+B1
- JP PTL4 PROCESS FIELD DATA
- PTL3 SB6 7
- RJ SBL BLANK OUT ADDRESS CHARACTERS
- PTL4 SX5 B7+21 SAVE ADDRESS OF END OF DATA FIELD
- SA1 FW
- SB6 B2+B3
- SA1 X1+B6 READ DATA WORD FROM TABLE
- SX6 1R
- SB3 B4+ SAVE FIRST DIGIT NUMBER
- PTL5 ZR B4,PTL6 IF FIRST DIGIT POSITION REACHED
- LX1 3 SHIFT DATA
- SA6 B7 SPACEFILL TO FIRST DIGIT POSITION
- SB7 B7+B1
- SB4 B4-B1
- EQ PTL5 CONTINUE
- PTL6 SB6 X4 DIGIT COUNT FOR THIS FIELD
- RJ CTS CONVERT FIELD
- SB6 X5
- SB6 B6-B7
- RJ SBL SPACEFILL TO END OF DATA FIELD
- SX2 0 PRESET FOR NO INTERPRETATION
- SB6 10
- NZ B3,PTL7 IF NOT FIRST FIELD OF WORD
- SA2 A1+ READ DATA WORD TO INTERPRET
- PTL7 RJ SDI STORE DISPLAY CODE INTERPRETATION FOR WORD
- SX2 0 CLEAR END OF DUMP INDICATOR
- JP PTLX EXIT
- PTX SPACE 4,15
- ** PTX - POSITION TO EXCHANGE PACKAGE.
- *
- * ENTRY (B6) = LIVE EXCHANGE PACKAGE FLAG.
- * 0 = USE LIVE EXCHANGE PACKAGE.
- * (X3) = RADIAL MCI FLAG.
- * (X6) = ADDRESS OF EXCHANGE PACKAGE.
- *
- * EXIT (X2) = DIRECTORY ADDRESS OF LIVE EXCHANGE PACKAGE.
- * 0 = CM RESIDENT EXCHANGE PACKAGE.
- * *NXB* PARAMETERS SET TO READ NEXT BYTE.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 1, 2, 3, 6, 7.
- *
- * CALLS FBP, FPR, PVM.
- PTX1 SA6 PXPA SAVE SVA
- RJ PVM POSITION VIRTUAL MEMORY
- NZ X2,ERR30 IF PAGE NOT FOUND
- PTX1.1 SA1 PTXA
- SX2 0
- PTX SUBR ENTRY/EXIT
- SA1 S2LPS
- ZR B6,PTX2 IF NO ADDRESS GIVEN
- BX1 X1-X6
- NZ X1,PTX1 IF NOT SAME AS LIVE EXCHANGE
- SX7 B1 SET PARAMETER FLAG
- SA7 PTXB
- SA2 SPPB
- BX7 X2
- SA7 PTXC SAVE CPU NUMBER
- PTX2 SA1 .PXP
- BX6 X3 RADIAL MCI FLAG
- RJ FPR FIND PROCESSOR RECORD
- ZR X2,ERR14 IF RECORD NOT FOUND
- SA3 PTXC
- ZR X3,PTX4.1 IF CPU-0 EXCHANGE PACKAGE
- SA2 NR
- SA2 X2 CPU-1 RANDOM ADDRESS POINTER
- BX3 X3-X3
- PTX4.1 BX6 X2
- SA6 PTXA SAVE DIRECTORY ENTRY
- RJ FBP POSITION DUMP FILE
- SX6 B0+
- SA3 PTXB
- ZR X3,PTX5 IF NO PARAMETERS
- SA6 NR CLEAR NEXT EXCHANGE PACKAGE ENTRY
- PTX5 SA6 PTXB CLEAR FLAG
- SA3 PTXC
- SA6 PTXC CLEAR FLAG
- NZ X3,PTX1.1 IF CPU-1 EXCHANGE PACKAGE
- SA2 PTXA DIRECTORY ENTRY
- JP PTXX RETURN
- PTXA DATA 0
- PTXB CON 0
- PTXC CON 0
- PVM SPACE 4,10
- ** PVM - POSITION VIRTUAL MEMORY.
- *
- * ENTRY (X6) = SYSTEM VIRTUAL ADDRESS.
- *
- * EXIT (X1) = (BRMA) = BYTE REAL MEMORY ADDRESS.
- * (X2) = 0, IF PAGE FOUND.
- *
- * USES A - 6.
- * X - 2.
- * B - 2.
- *
- * CALLS PSM, SPT.
- PVM SUBR ENTRY/EXIT
- SA6 BRMA SAVE POSSIBLE RMA
- SB2 BRMA
- RJ SPT SEARCH PAGE TABLE
- NZ X2,PVMX IF PAGE NOT FOUND
- SB2 BRMA
- RJ PSM POSITION 64-BIT MEMORY
- SX2 0
- JP PVMX RETURN
- PXH SPACE 4,12
- ** PXH - PRINT PPU XP HEADING.
- *
- * EXIT (X1) = 0 IF NO MORE XP-S TO PROCESS.
- * (X5) = 0 IF ONLY ONE XP TO PROCESS.
- *
- * USES X - 1, 5.
- * B - 7.
- *
- * CALLS CPS, SXH.
- *
- * MACROS PRINT.
- PXH SUBR
- SB7 PRBF SET PRINT STRING ADDRESS
- RJ SXH SET LEFT HEADING
- ZR X1,PXHX IF NO MORE XPS TO PROCESS
- SX1 20
- RJ CPS CHECK PAGE SPACE
- PRINT (=2C )
- SB7 PRBF+45
- RJ SXH SET RIGHT HEADING
- NZ X1,PXH1 IF BOTH XPS ARE PRESENT
- SX5 B0 SET ONE XP FLAG
- PXH1 PRINT CCCH,B7-CCCH
- PRINT (=2C )
- SX1 1 ENSURE X1 NON-ZERO
- JP PXHX EXIT
- PXM SPACE 4,20
- ** PXM - PRINT MULTIPLE EXCHANGE PACKAGES.
- *
- * PRINT A PAIR OF EXCHANGE PACKAGES WITH THE HEADER
- * POINTED TO BY THE CONTENTS OF X1.
- *
- * ENTRY (X1) = EXCHANGE PACKAGE HEADER ADDRESS.
- * (PXMM) = PRINT 1 XP FLAG
- * (B2) = DATA BUFFER OFFSET.
- * (CPRA) = ADDRESS OF FIRST EXCHANGE PACKAGE.
- * XP DATA IS IN *BUF*.
- *
- * EXIT CPRA IS UPDATED.
- * (PXMM) = 0.
- * (PXMP) = 0.
- *
- * USES ALL REGISTERS.
- *
- * CALLS CPS,CTS,FXW,SSB,UPS,WOF.
- PXM SUBR
- SX7 X1+ SAVE HEADER ADDRESS
- SA7 PXME
- SX6 BUF+B2
- SA6 PXMB SET EXCHANGE PACKAGE DATA ADDRESS
- * PRINT HEADINGS.
- SX1 20
- RJ CPS CHECK REMAINING PAGE SPACE
- RJ SSB CLEAR PRINT STRING
- SA2 PXME
- SA2 X2+ READ FIRST WORD OF HEADER
- SB6 90
- SB7 PRBF
- RJ UPS SET HEADING
- * SET EXCHANGE PACKAGE ADDRESSES.
- SA1 CPRA
- LX1 -15
- SB6 5
- SB7 PRBF
- RJ CTS CONVERT ADDRESS
- SA2 PXMM
- NZ X2,PXM0 IF ONLY 1 XP
- SX1 X1+20B ADVANCE FOR SECOND PACKAGE
- LX1 -15
- SB6 5
- SB7 PRBF+45
- RJ CTS
- PXM0 SX6 X1+20B
- SA6 CPRA UPDATE XP ADDRESS
- PRINT (=2C )
- PRINT CCCH,90
- PRINT (=2C )
- * FORMAT TWO EXCHANGE PACKAGES.
- SX6 0
- SA6 PXMA CLEAR LINE INDEX
- SA5 PXMB
- SA5 X5+ READ FIRST XP WORD
- PXM1 RJ SSB CLEAR PRINT STRING
- SB7 PRBF+1
- SA1 PXMA LINE INDEX
- RJ FXW FORMAT EXCHANGE PACKAGE WORD
- SA2 PXMM
- NZ X2,PXM1.1 IF ONLY 1 XP
- SA5 A5+17B ADVANCE TO NEXT EXCHANGE PACKAGE
- SA1 PXMA LINE INDEX
- SB7 PRBF+46
- RJ FXW
- SA5 A5-20B
- PXM1.1 PRINT CCCH,B7-CCCH
- SA1 PXMA
- SX6 X1+B1
- SA6 A1 ADVANCE LINE INDEX
- SX7 X6-10B
- NZ X7,PXM2 IF NOT END OF A AND B REGISTERS
- PRINT (=2C )
- PXM2 SA1 PXMA
- SX1 X1-20B
- NG X1,PXM1 IF MORE LINES TO FORMAT
- BX6 X6-X6
- SA6 PXMM CLEAR 1 XP FLAG
- JP PXMX EXIT
- PXMA BSS 1 EXCHANGE PACKAGE LINE INDEX
- PXMB BSS 1 EXCHANGE PACKAGE DATA ADDRESS
- PXMM CON 0 PRINT 1 XP FLAG
- PXMC CON =90H - PP MONITOR XP
- ,- BREAKPOINT / HANG XP
- PXMN CON =90H - IDLE 0 XP
- ,
- PXMO CON =90H - IDLE 1 XP
- ,
- PXMD CON =90H - CPU DEADSTART XP
- ,- REAL TIME CLOCK XP
- PXMF CON =90H - ERROR EXIT XP
- ,- UNUSED XP
- PXME CON 0 EXCHANGE PACKAGE HEADER ADDRESS
- PXMG CON =90H - CHANNEL 2 INPUT XP
- ,- CHANNEL 2 OUTPUT XP
- PXMH CON =90H - CHANNEL 3 INPUT XP
- ,- CHANNEL 3 OUTPUT XP
- PXMI CON =90H - CHANNEL 4 INPUT XP
- ,- CHANNEL 4 OUTPUT XP
- PXMJ CON =90H - CHANNEL 5 INPUT XP
- ,- CHANNEL 5 OUTPUT XP
- PXMK CON =90H - CHANNEL 6 INPUT XP
- ,- CHANNEL 6 OUTPUT XP
- PXML CON =90H - CHANNEL 7 INPUT XP
- ,- CHANNEL 7 OUTPUT XP
- PXP SPACE 4,8
- ** PXP - PRINT PPU EXCHANGE PACKAGES.
- *
- * ENTRY CPRA = XP ADDRESS.
- *
- * USES ALL REGISTERS.
- *
- * CALLS FXW,PXH,SSB,WOF.
- PXP SUBR
- SX7 BUF PRESET PP EXCHANGE PACKAGE ADDRESS
- SA7 FW
- SX6 1
- SA6 PP CLEAR PPU NUMBER
- SA5 X7+ READ FIRST EXCHANGE PACKAGE WORD
- PXP1 RJ PXH PRINT XP HEADING
- ZR X1,PXPX IF NO MORE TO DUMP
- NZ X5,PXP1.1 IF ONLY ONE XP LEFT
- BX6 X5
- SA6 PXPB
- PXP1.1 SX6 0
- SA6 PXPA CLEAR XP LINE INDEX
- PXP2 SA1 PXPA
- RJ SSB CLEAR PRINT STRING
- SB7 PRBF+1
- RJ FXW FORMAT LEFT XP
- SA1 PXPB
- ZR X1,PXP2.1 IF AT LAST XP
- SA5 A5+20B READ DATA FROM NEXT XP
- SA1 PXPA
- SB7 PRBF+46
- RJ FXW FORMAT RIGHT XP
- SA5 A5-21B RESET FOR PREVIOUS XP
- PXP2.1 PRINT CCCH,B7-CCCH
- SA1 PXPA
- SX6 X1+B1
- SA6 A1 ADVANCE LINE INDEX
- SX6 X6-10B
- NZ X6,PXP3 IF NOT END OF A AND B REGISTERS
- PRINT (=2C )
- PXP3 SA1 PXPA
- SX1 X1-20B
- NG X1,PXP2 IF MORE LINES
- SA5 A5+22B ADVANCE TO NEXT XP PAIR
- JP PXP1 CONTINUE
- PXPA BSS 1 XP LINE INDEX
- PXPB CON 1 LAST XP FLAG
- P4F SPACE 4,11
- ** P4F - PRINT FOUR BIT FLAGS.
- *
- * ENTRY X1 = FLAG BITS LEFT JUSTIFIED.
- * B7 = PRINT STRING ADDRESS.
- *
- * EXIT X1 SHIFTED LEFT FOUR PLACES.
- * B7 IS UPDATED.
- *
- * USES X - 1,6.
- * B - 5,7.
- * A - 6.
- P4F SUBR
- SB5 4 LOOP COUNT
- P4F1 PL X1,P4F3 IF FLAG NOT SET
- SX6 1R1 *ON* INDICATOR
- P4F2 SA6 B7 STORE INDICATOR
- SB7 B7+B1 ADVANCE PRINT STRING
- SB5 B5-B1
- LX1 1 SHIFT FLAGS
- GT B5,B0,P4F1 IF MORE TO PRINT
- JP P4FX EXIT
- P4F3 SX6 1R- *OFF* INDICATOR
- JP P4F2
- RBC SPACE 4,15
- ** RBC - READ BUFFER CONTROLLER MEMORY.
- *
- * ENTRY DUMP FILE POSITIONED TO CORRECT WORD
- *
- * EXIT (X1) .EQ. 0 IF TRANSFER COMPLETE.
- * .NE. 0 IF TRANSFER NOT COMPLETE.
- * (X7) = 20/0,8/B1,8/B2,8/B3,8/B4,8/B5.
- *
- * USES X - 0, 1, 6, 7.
- * B - 2.
- *
- * MACROS READO.
- *
- * NOTES THE X7 EXIT CONDITION WILL BE SET ONLY IF THE
- * TRANSFER COMPLETED NORMALLY (X1 .EQ. 0). IF THE
- * TRANSFER COMPLETED NORMALLY, THE DUMP FILE WILL BE
- * ADVANCED TO THE NEXT WORD.
- RBC SUBR ENTRY/EXIT
- READO S READ NEXT WORD
- NZ X1,RBCX IF TRANSFER NOT COMPLETE
- MX0 -8
- BX7 X7-X7 CLEAR ASSEMBLY REGISTER
- SB2 5 SET LOOP COUNT
- * CONVERT 8/12 FORMAT- 4/0,8/B1,4/0,8/B2 ...
- RBC1 LX6 12
- LX7 8
- BX1 -X0*X6
- BX7 X7+X1
- SB2 B2-1
- NZ B2,RBC1 IF WORD NOT PACKED
- BX1 X1-X1 INDICATE TRANSFER COMPLETE
- EQ RBCX RETURN
- RBF SPACE 4,15
- ** RBF - READ UP TO 512 WORDS OR TO EOR FROM FILE F.
- *
- * EXIT (X1) = NONZERO IF EOF.
- * (EOFF) = NONZERO IF EOF.
- * (EORF) = NEGATIVE IF EOR.
- * (BWCF) = BLOCK WORD COUNT.
- * (RWCF) = RECORD WORD COUNT.
- *
- * USES A - 1, 2, 6, 7.
- * X - 0, 1, 2, 3, 5, 6, 7.
- *
- * MACROS READW.
- RBF SUBR ENTRY/EXIT
- SA1 RBHA CHECK FOR DEFERRED HEADER
- SX0 BUF ADDRESS TO READ DATA
- SA2 RBFA FILE TO READ
- ZR X1,RBF1 IF NO DEFERRED HEADER
- SX6 B0+ CLEAR HEADER WORD COUNT
- BX5 X1
- SA6 A1
- EQ RBF1.1 PROCESS HEADER
- RBF1 READW X2,CONW,B1 READ HEADER CONTROL WORD
- BX6 X1 SAVE EOF INFORMATION
- SA6 EOFF
- NZ X1,RBFX IF EOF
- SA1 CONW COMPUTE WORD COUNT FOR PRU
- SX6 5
- SX3 X1+4
- IX5 X3/X6
- READW X2,X0,X5+B1 READ DATA PLUS TRAILER CONTROL WORD
- ZR X5,RBF1 IF ZERO LENGTH PRU
- RBF1.1 IX0 X0+X5 INCREMENT BUFFER ADDRESS
- SA1 CONW CHECK FOR SHORT PRU (EOR)
- AX1 36
- SX1 X1
- IX6 X5-X1
- MX1 0 CLEAR EOF FLAG
- NG X6,RBF2 IF SHORT PRU (EOR)
- SX6 X0-BUF-512 CHECK FOR 512 WORDS READ
- NG X6,RBF1 IF NOT 512 WORDS
- RBF2 SA6 EORF SET/CLEAR EOR
- SX7 X0-BUF NUMBER OF WORDS IN BLOCK
- SA7 BWCF
- EQ RBFX RETURN
- RBFA CON F INITIAL FILE TO READ
- BWCF CON 0 BLOCK WORD COUNT
- EOFF CON 0 NONZERO IF EOF
- RBH SPACE 4,15
- ** RBH - READ BLOCK OR HEADER RECORD.
- *
- * EXIT (X1) .EQ. +0, IF NOT EOF OR DEFERRED HEADER EOR.
- * .NE. 0, IF EOF.
- * .EQ. -0, IF EOR WITH DEFERRED HEADER.
- * (EOFF) = NONZERO IF EOF.
- * (EORF) = NEGATIVE IF EOR.
- * = NEGATIVE ZERO IF EOR WITH DEFERRED HEADER.
- * (BWCF) = BLOCK WORD COUNT.
- * (RWCF) = RECORD WORD COUNT.
- * (RBHA) = WORD COUNT OF DEFERRED HEADER.
- *
- * USES A - 1, 6, 7.
- * X - 1, 6, 7.
- *
- * CALLS DRT, RBF.
- RBH SUBR ENTRY/EXIT
- RJ RBF READ BLOCK OF UP TO 512 WORDS
- NZ X1,RBHX IF EOF
- SA1 EORF
- ZR X1,RBHX IF NOT EOR
- SA1 BWCF CHECK FOR HEADER
- SX6 0 PRESET FOR EXIT CONDITION
- SX1 X1-4
- NZ X1,RBH1 IF NOT RIGHT SIZE FOR HEADER
- SA1 BUF
- RJ DRT DETERMINE RECORD TYPE
- ZR X4,RBH1 IF NO MATCH ON RECORD TYPE
- SA1 BWCF SAVE HEADER WORD COUNT
- MX6 60 SET HEADER DEFERRED STATUS
- BX7 X1
- SA6 EORF
- SA7 RBHA
- RBH1 BX1 X6 SET EXIT CONDITION
- EQ RBHX RETURN
- RBHA CON 0 DEFERRED HEADER WORD COUNT
- RBI SPACE 4,10
- ** RBI - RANDOMIZE BINARY INPUT FILE.
- *
- * USES X - 0, 1, 2, 3, 5, 6, 7.
- * A - 1, 2, 3, 5, 6, 7.
- *
- * CALLS BPN, DRT, LDD, RBF, RDR, SFR.
- *
- * MACROS ADDWRD, MESSAGE, READ, READW, READCW, RECALL, RENAME,
- * RETURN, REWIND, SEARCH, SETFS, WRITEF, WRITEO, WRITER,
- * WRITEW.
- RBI10 BX6 X1 PLACE DUMP NUMBER IN HEADER
- SA6 TITL2
- RBI SUBR
- RJ LDD LOAD DUMP DIRECTORY
- ZR X1,RBI6 IF DUMP INPUT RANDOM
- * INITIALIZE FOR RANDOM FILE GENERATION.
- SETFET F,ERP=E
- RECALL F
- SA1 DR
- NG X1,RBI0 IF RANDOM FILE NAME SPECIFIED
- RETURN S,R DELETE BINARY SCRATCH FILE
- EQ RBI0.1 INITIATE COPY
- RBI0 REWIND S,R REWIND EXISTING SCRATCH FILE, IF PRESENT
- RBI0.1 MESSAGE (=C* COPYING DUMP TO RANDOM FILE.*),1,R
- SA1 RBIA
- NZ X1,RBI1 IF NO REWIND REQUESTED
- REWIND F,R
- RBI1 SA2 RBFA INITIATE READ OF INPUT FILE
- READCW X2,17B
- * PROCESS INPUT FILE.
- RBI2 RJ RBF READ UP TO 512 WORD BLOCK
- NZ X1,RBI3 IF END OF FILE
- RBI2.1 SA1 BUF SET RECORD ID = 1ST WORD OF RECORD
- BX7 X1
- SA7 ID
- RJ DRT DETERMINE RECORD TYPE
- JP B3 BRANCH ON RECORD TYPE
- * PROCESS END OF FILE.
- RBI3 SA1 DR
- ZR X1,RBI3.1 IF *D* NOT SPECIFIED
- NG X1,RBI3.1 IF *D=FILE* SPECIFIED
- RETURN F
- RBI3.1 SX6 B0+ MAKE *PP* ENTRIES FOR ALL IOU-S
- SA6 PP
- RBI4 RJ BPN BUILD PP NAME
- SA1 .IPP
- MX0 18
- LX3 42 FORM RECORD ID
- SA2 PP
- SX6 X2+B1
- SA6 A2 INCREMENT PP NUMBER
- SX2 X2-32B
- ZR X2,RBI5 IF END OF POSSIBLE IOU-S
- IX6 X1+X3
- SEARCH TDIR,X6,X0
- ZR X2,RBI4 IF IOU NOT FOUND
- SA1 BPNA
- SA5 A2+B1 FETCH SECOND WORD OF ENTRY
- ADDWRD TDIR,X1
- ADDWRD TDIR,X5
- EQ RBI4 PROCESS NEXT IOU
- RBI5 WRITEW S,RBIB,RBIBL WRITE 7700 TABLE
- SA1 L.TDIR
- SA3 =0LDUMP
- BX6 X1+X3
- WRITEO X2 WRITE DIRECTORY LENGTH WORD
- SA1 F.TDIR
- WRITEW X2,X1,X6 WRITE DIRECTORY TABLE
- WRITER X2,R
- WRITEF X2,R TERMINATE DUMP FILE
- SA1 DR
- NG X1,RBI5.1 IF *D=FILE* SPECIFIED
- ZR X1,RBI6 IF *D* NOT SPECIFIED
- RENAME S,F RENAME SCRATCH FILE
- RBI5.1 SETFS S,0
- RBI6 ADDWRD TDIR,X6-X6 TERMINATE DIRECTORY TABLE
- ADDWRD A0,X6-X6
- SA1 .EIC LOOK FOR *EIC* RECORD
- MX0 18
- SEARCH TDIR,X1,X0
- ZR X2,RBI7 IF RECORD NOT FOUND
- BX6 X2
- SA3 A2+B1
- SA6 EH SAVE RECORD HEADER
- BX7 X3 SAVE RANDOM ADDRESS
- SA7 A6+B1
- RBI7 SA1 .MEM LOOK FOR *MEM* RECORD
- SEARCH TDIR,X1,X0
- ZR X2,RBI9 IF RECORD NOT FOUND
- BX6 X2
- SA3 A2+B1
- SA6 MH SAVE RECORD HEADER
- BX7 X3 SAVE RANDOM ADDRESS
- SA7 A6+B1
- SA1 .MMR LOCATE *MMR* RECORD
- RJ RDR
- ZR X2,ERR42 IF RECORD NOT FOUND
- SX5 /IOU/MBRG ASSEMBLE MEMORY BOUNDS
- RJ SFR
- NG X1,ERR42 IF REGISTER NOT FOUND
- MX0 -16
- BX7 -X0*X7 UPPER BOUND
- LX7 12 CONVERT TO FWA OF EI
- SA7 XB
- RBI9 SX6 0 CLEAR RANDOM ADDRESS IN FET
- SA6 S+6
- * SET EXPRESS DUMP NUMBER IN TITLE LINE.
- REWIND S,R
- SA1 X2+B1 RESET FET
- SX6 X1
- SA6 A1+B1 IN = FIRST
- SA6 A6+B1 OUT = FIRST
- READ X2 READ FIRST LABEL BLOCK
- READW X2,BUF,4 READ DUMP HEADER
- SA1 BUF+3 DUMP NUMBER FROM *EDD*
- SA2 BD
- NZ X2,RBI10 IF BINARY DUMP
- SA2 =8R DUMP
- MX3 12
- BX6 X3*X1
- BX6 X6+X2
- LX6 18
- SA6 TITL2 SET DUMP NUMBER IN HEADER
- JP RBIX EXIT
- RBIA CON 0 NO REWIND FLAG
- RBIB DATA 77000016000000000000B
- DATA 0LDUMP
- BSSZ 15B
- RBIBL EQU *-RBIB
- CONW CON 0 HEADER CONTROL WORD
- EORF VFD 1/1,59/0 EOR FLAG
- RBT SPACE 4,11
- ** RBT - READ DATA IN BYTE FORMAT.
- *
- * ENTRY (A0) = NUMBER OF BYTES TO READ.
- * (APPG) = PP DATA IN *PBUF* FLAG.
- * (RBTA) = CURRENT BYTE NUMBER.
- * (RBTA+1) = CURRENT WORD.
- *
- * EXIT BYTES STORED LEFT JUSTIFIED AT *BUF*.
- *
- * USES X - 0, 1, 5, 6, 7.
- * A - 0, 1, 6, 7.
- * B - 3, 4, 5.
- *
- * CALLS NXB.
- *
- * MACROS READO.
- RBT9 SX7 B5
- SA7 RBTA SAVE BYTE COUNTER
- SA6 A7+B1 SAVE CURRENT WORD
- RBT SUBR
- SA1 RBTA
- SB5 X1 SET CURRENT BYTE COUNTER
- SA1 A1+B1
- BX6 X1 SET CURRENT WORD
- MX0 12
- SB3 BUF
- SB4 B3+A0 BUFFER LIMIT
- SA1 APPG
- NZ X1,RBT6 IF DATA IS IN *PBUF*
- SA1 AP
- NZ X1,RBT4 IF 16-BIT PP
- JP RBT3 ENTER READ LOOP
- * GET 12-BIT BYTES FROM FILE.
- RBT1 SB5 5 RESET BYTE COUNTER
- READO S READ NEXT WORD
- RBT2 BX7 X0*X6
- SA7 B3 STORE NEXT BYTE
- SB5 B5-B1 COUNT BYTE
- LX6 12
- SB3 B3+1 ADVANCE BUFFER ADDRESS
- EQ B3,B4,RBT9 IF NO MORE TO READ
- RBT3 NZ B5,RBT2 IF NOT END OF WORD
- JP RBT1 READ NEXT WORD
- * GET 16-BIT BYTES FROM FILE. BYTES STORED 4 PER 64 BITS.
- RBT4 SX5 A0 SAVE BYTE COUNT
- SA0 BUF NEXT ADDRESS TO STORE
- MX0 12 PP BYTE MASK
- RBT5 RJ NXB READ NEXT IOU BYTE
- LX1 59-11
- BX6 X0*X1 EXTRACT PP BYTE
- SA6 A0
- SA0 A0+B1
- SX5 X5-1
- NZ X5,RBT5 IF MORE BYTES TO READ
- EQ RBTX RETURN
- * GET 12-BIT BYTES FROM *PBUF*.
- RBT6 SA1 RBTB GET CURRENT *PBUF* ADDRESS
- SA1 X1+
- RBT7 NZ B5,RBT8 IF NOT END OF WORD
- SA1 A1+1 READ NEXT WORD
- SB5 5 RESET BYTE COUNTER
- BX6 X1
- RBT8 BX7 X0*X6
- SB5 B5-B1 COUNT BYTE
- SA7 B3 STORE NEXT BYTE
- SB3 B3+B1 ADVANCE BUFFER ADDRESS
- LX6 12
- LT B3,B4,RBT7 IF MORE TO COPY
- SX7 A1
- SA7 RBTB SAVE CURRENT *PBUF* ADDRESS
- EQ RBT9 RETURN
- RBTA BSS 2 PARAMETER SAVE
- RBTB CON 0 PBUF-1 OR LAST *PBUF* WORD READ
- RCM SPACE 4,15
- ** RCM - READ 60-BIT CM.
- *
- * ENTRY (B6) = FWA OF BLOCK TO READ CM.
- * (B7) = LENGTH OF BLOCK.
- *
- * EXIT 60-BIT CM WORDS READ FROM FILE.
- *
- * USES X - 1, 6.
- * A - 1, 6.
- * B - 5, 6, 7.
- *
- * CALLS RCW.
- *
- * MACROS READO, READW.
- RCM SUBR ENTRY/EXIT
- SA1 MT
- NZ X1,RCM0 IF MEMORY TYPE IS ESM
- SA1 AP
- NZ X1,RCM2 IF ADVANCED PROCESSOR PRESENT
- RCM0 ZR B6,RCM1 IF READING ONE WORD
- READW S,B6,B7
- EQ RCMX RETURN
- RCM1 READO S
- EQ RCMX RETURN
- RCM2 NZ B6,RCM3 IF MULTIPLE WORD TRANSFER
- RJ RCW READ CYBER WORD
- EQ RCMX RETURN
- RCM3 SB5 B6 SAVE CM ADDRESS
- RJ RCW READ CYBER WORD
- NZ X1,RCMX IF EOR
- SA6 B5
- SB6 B5+B1
- SB7 B7-B1
- NZ B7,RCM3 IF BLOCK NOT READ
- EQ RCMX RETURN
- RCW SPACE 4,15
- ** RCW - READ CYBER WORD.
- *
- * ENTRY UBUF CONTAINS UNPACKED 60 BIT WORDS.
- * BI = INDEX INTO UBUF.
- *
- * EXIT (X6) = NEXT CM WORD.
- * (X1) = DUMP FILE STATUS.
- * UBUF UPDATED.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 2, 3, 6, 7.
- * B - 5, 7.
- *
- * CALLS UPW.
- RCW SUBR ENTRY/EXIT
- SA3 BI
- SA2 UBUF+16+X3
- SX7 X3+B1
- SA7 A3
- MX1 0
- BX6 X2
- NZ X7,RCWX IF NOT END OF BUFFER
- SA6 RCWA
- SX6 B7
- SA6 A6+B1
- SX6 B5
- SA6 A6+B1
- RJ UPW READ AND UNPACK WORDS
- SX6 -15
- SA6 BI SET WORD INDEX
- SA3 RCWA
- SA2 A3+B1
- SB7 X2
- SA2 A2+B1
- SB5 X2
- BX6 X3
- EQ RCWX RETURN
- RCWA BSS 3 SAVE AREA
- RDC SPACE 4,12
- ** RDC - READ DIRECTIVE INPUT CARD.
- *
- * ENTRY AF = 0 READ FROM REGULAR INPUT FILE.
- * = 1 READ FROM ALTERNATE FILE TO EOR.
- * = 2 READ FROM ALTERNATE FILE TO EOF.
- *
- * EXIT X1.NE.0 IF END OF DIRECTIVES SENSED.
- * DIRECTIVE READ IN 80R1 FORMAT TO *CHAR*.
- *
- * USES ALL REGISTERS.
- *
- * CALLS CIO=,PKS,RDS=,RDO=.
- RDC SUBR
- SA1 AF
- NZ X1,RDC3 IF READING FROM ALTERNATE INPUT
- SX1 B1+ SET END OF DIRECTIVES
- SA2 I
- ZR X2,RDCX IF ZERO FET
- RDC1 READS I,CHAR,80
- NZ X1,RDCX IF END OF RECORD SENSED
- RDC2 SB6 50
- SB7 TITL1
- SB2 CHAR
- RJ PKS MOVE DIRECTIVE TO TITLE LINE
- SA1 DP
- SX6 X1+B1
- SA6 A1 ADVANCE DIRECTIVES PROCESSED COUNTER
- MX1 0
- JP RDCX EXIT
- RDC3 READS J,CHAR,80 READ ALTERNATE INPUT FILE
- ZR X1,RDC2 IF NOT END OF RECORD
- NG X1,RDC4 IF END OF FILE
- SA3 AF
- SX3 X3-2
- NZ X3,RDC4 IF READING ONLY 1 RECORD
- READ X2 READ NEXT RECORD
- READO X2 READ RECORD NAME
- JP RDC3 CONTINUE
- RDC4 SX6 0
- SA6 AF CLEAR ALTERNATE INPUT FLAG
- JP RDC1 RETURN TO NORMAL INPUT FILE
- RDR SPACE 4,15
- ** RDR - READ DUMP RECORD.
- *
- * ENTRY (X1) = RECORD ID TO READ.
- *
- * EXIT (X2) = FIRST WORD OF RECORD.
- * = 0, IF RECORD NOT FOUND.
- *
- * USES X - 1, 2, 3, 6.
- * A - 1, 2, 6.
- *
- * CALLS FPR, PDF.
- *
- * MACROS READW.
- RDR SUBR ENTRY/EXIT
- SX6 B0+ SET NO RADIAL MCI DISPLAY
- RJ FPR FIND RECORD
- ZR X2,RDRX IF RECORD NOT FOUND
- BX6 X2 SAVE FIRST WORD OF TABLE ENTRY
- SX3 B0
- SA6 RDRA
- RJ PDF POSITION DUMP FILE
- SA1 RI READ MAINTENANCE REGISTERS RECORD
- AX1 30
- BX6 X6-X6
- SA6 BUF+X1
- SA6 BUF+1+X1
- READW S,BUF,X1
- SA2 RDRA RETURN FIRST WORD OF TABLE ENTRY
- EQ RDRX RETURN
- RDRA DATA 0 FIRST WORD OF DIRECTORY TABLE ENTRY
- RMB SPACE 4,10
- ** RMB - READ MEMORY BYTES.
- *
- * ENTRY (X1) = SVA OF BYTES TO READ.
- * (X6) = NUMBER OF WORDS OF BYTES TO READ.
- *
- * EXIT (BUF - BUF+X6*4-1) = 16 BIT DATA CHUNKS.
- *
- * USES A - 0, 2, 3, 6, 7.
- * X - 4, 6.
- * B - 2.
- *
- * CALLS CPC, NXB.
- RMB SUBR ENTRY/EXIT
- SA6 RMBA SAVE NUMBER OF WORDS TO READ
- BX6 X1
- SA6 A6+B1 SAVE CURRENT SVA
- SA0 BUF+1
- RMB1 SB2 RMBA+1 CHECK IF CROSSING A PAGE BOUNDARY
- RJ CPC
- NZ X2,ERR30 IF PAGE ENTRY NOT PRESENT
- RJ NXB GET NEXT 16 BITS
- BX6 X1
- SA6 A0-B1
- RJ NXB AND THE NEXT
- BX6 X1
- SA6 A0
- RJ NXB AND THE NEXT
- BX6 X1
- SA6 A0+B1
- RJ NXB AND THE LAST
- SA2 RMBA FETCH SVA
- SA3 A2+B1
- BX6 X1
- SA6 A0+2
- SX6 X2-1
- SX4 8
- SA0 A0+4
- IX7 X4+X3
- SA6 A2
- SA7 A3 INCREMENT SVA
- NZ X2,RMB1 IF MORE WORDS TO READ
- JP RMBX RETURN
- RMBA BSS 2
- RMR SPACE 4,15
- ** RMR - READ MAINTENANCE REGISTER.
- *
- * ENTRY (LPWA+1) = WORD OFFSET.
- *
- * EXIT (X1) = 0 IF END OF REGISTERS.
- * (RMRA) = REGISTER LENGTH.
- * (RMRB) = REGISTER NUMBER.
- * (MRBF,MRBF+7) = 1ST 64 BITS OF REGISTER.
- *
- * USES B - 3, 4.
- * A - 6, 7.
- * X - 1, 7.
- *
- * CALLS LPW.
- RMR SUBR ENTRY/EXIT
- RJ LPW GET REGISTER LENGTH
- ZR X1,RMRX IF END OF REGISTERS
- SX7 X6
- RJ LPW GET REGISTER NUMBER
- SA7 RMRA
- SA6 A7+B1
- SB4 B0
- SB3 X7
- RMR1 RJ LPW GET ANOTHER 8 BITS OF REGISTER
- SA6 MRBF+B4
- SB4 B4+B1
- MX1 1
- NE B3,B4,RMR1 IF MORE BYTES TO GET
- EQ RMRX RETURN
- RMRA CON 0 REGISTER LENGTH
- RMRB CON 0 REGISTER NUMBER
- RNF SPACE 4,20
- ** RNF - READ NEGATIVE FL OF CONTROL POINT.
- *
- * ENTRY (X2) = CONTROL POINT NUMBER.
- * (X1) = PCPA FWA OFFSET (0 IF DUMPING CONTROL POINTS).
- *
- * EXIT (RC) = RA.
- * (FC) = FL.
- * TABLE TNFL CONTAINS NFL DATA.
- *
- * ERROR TO *ERR8*, IF CONTROL POINT NUMBER IS ZERO.
- *
- * USES X - 1, 2, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2.
- *
- * CALLS GFL, POM.
- *
- * MACROS ALLOC, GETCM.
- RNF SUBR ENTRY/EXIT
- ZR X2,ERR8.1 IF CONTROL POINT ZERO
- LX2 7
- IX1 X1+X2
- RJ GFL GET FL, RA
- SA7 FC
- SA6 RC
- AX2 36 GET NFL
- MX6 -12
- BX6 -X6*X2
- LX6 6
- SA2 L.TNFL ALLOCATE SPACE FOR NFL
- IX1 X6-X2
- ALLOC TNFL,X1
- SA1 RC POSITION DUMP FILE
- SA2 L.TNFL
- IX7 X1-X2
- SA7 CPRA
- SB2 A7
- RJ POM POSITION TO CM WORD
- SA2 L.TNFL LENGTH TO READ
- SA1 F.TNFL BUFFER ADDRESS
- ZR X2,RNFX IF NO NFL TO READ
- GETCM X1,X2
- EQ RNFX RETURN
- RPB SPACE 4,10
- ** RPB - READ PPU BYTE.
- *
- * ENTRY X1 = PPU ADDRESS TO READ.
- * PPU DATA IS AT *PBUF*.
- *
- * EXIT X6 = PPU BYTE READ LEFT JUSTIFIED.
- *
- * USES X - 1,2,3,6.
- * B - 7.
- * A - 2.
- RPB SUBR
- BX3 X1
- SX2 5
- IX2 X3/X2 CPU WORD ORDINAL = AD/5
- SX3 5
- IX3 X2*X3 COMPUTE BYTE POS = AD-(AD/5)*5
- IX3 X1-X3
- SX1 12
- IX1 X1*X3
- SB7 X1 SHIFT COUNT
- MX1 12
- SA2 X2+PBUF READ WORD
- LX2 X2,B7 POSITION TO BYTE
- BX6 X1*X2 EXTRACT BYTE
- JP RPBX EXIT
- RPD SPACE 4,12
- ** RPD - READ PPU DATA TO CORE.
- *
- * ENTRY (PP) = PPU NUMBER.
- *
- * EXIT ALL OF REQUESTED PPU STORED AT *PBUF*.
- * (BPNA) = PPU NAME.
- *
- * USES X - 0, 1, 2, 3, 4, 5, 6.
- * A - 1, 2, 3, 6.
- * B - 2, 6, 7.
- *
- * CALLS BPN, CPD, CPN, NXB, PDF, SFN.
- *
- * MACROS READW, SEARCH.
- RPD SUBR
- RJ BPN BUILD PPU NAME
- SA1 F.TCMT
- SB2 X1 SET TCMT TABLE ADDRESS
- MX4 24
- SA1 PC GET PP COMMUNICATION AREA POINTER
- RJ CPN CONVERT PP/CPP NUMBER
- ZR X3,RPD1 IF *CPP* RECORDS NOT CHOSEN
- MX4 30
- RPD1 LX6 3
- IX1 X1+X6
- SA2 X1+B2
- MX3 18
- BX1 X3*X2 EXTRACT PROGRAM NAME
- RJ SFN SPACEFILL NAME
- LX6 24
- SA1 BPNA+1
- BX6 -X4*X6
- BX6 X6+X1 MERGE PP AND PROGRAM NAMES
- SA1 A1-B1 GET PP RECORD NAME
- SA6 SBTL1 STORE IN SUBTITLE LINE
- SEARCH TDIR,X1,X0
- ZR X2,ERR7 IF NO SUCH PPU
- SA1 A2+B1
- BX6 X1
- SA6 RI SET RANDOM ADDRESS OF REQUESTED PPU
- SX3 0
- RJ PDF POSITION DUMP FILE
- SA3 AP
- NZ X3,RPD2 IF IOU TO BE READ
- READW X2,PBUF,PBUFL READ ENTIRE PPU TO CORE
- JP RPDX EXIT
- RPD2 RJ CPD COPY PP DATA TO BUFFER
- SB7 B0 STORING INDEX INTO PBUF
- MX0 -12
- RPD3 SB6 5
- SX5 B0+
- RPD4 RJ NXB GET FIRST BYTE OF DATA
- LX5 12
- BX2 -X0*X1
- SB6 B6-B1
- BX5 X5+X2
- NZ B6,RPD4 IF MORE BYTES TO COLLECT
- SA1 PS BYTES IN PP (4096 OR 8192)
- BX6 X5
- SX5 B7+B1 WORDS MOVED
- SB7 B7+B1
- LX5 2
- SA6 PBUF-1+B7 SAVE PP BYTES
- SX6 X5+B7 BYTES MOVED
- IX6 X6-X1
- NG X6,RPD3 IF MORE TO MOVE
- EQ RPDX RETURN
- RSP SPACE 4,14
- ** RSP - RESET PRINT DENSITY SELECTION.
- *
- * ENTRY X1 = 1L3 FOR 3 LINES PER INCH.
- * 1L4 FOR 4 LINES PER INCH.
- * 1L6 FOR 6 LINES PER INCH.
- * 1L8 FOR 8 LINES PER INCH.
- *
- * EXIT CCCH = 1R0 FOR 3 OR 4 LINES PER INCH.
- * 1R FOR 6 OR 8 LINES PER INCH.
- * PD = NUMBER OF LINES PER PAGE.
- *
- * USES ALL REGISTERS.
- *
- * CALLS WTO=.
- RSP SUBR
- SB2 RSPA OPTION TABLE ADDRESS
- MX0 6
- RSP1 SA2 B2 READ OPTION TABLE
- SB2 B2+B1
- ZR X2,ERR9 IF OPTION NOT IN TABLE
- BX3 X1-X2
- BX3 X3*X0
- NZ X3,RSP1 IF NO MATCH
- SX6 X2
- AX2 18
- NG X6,ERR9 IF VALUE UNUSABLE
- ZR X6,ERR9 IF VALUE UNUSABLE
- SA6 PD SET NUMBER OF LINES PER PAGE
- SX6 X2+
- SA6 CCCH SET CARRIAGE CONTROL CHARACTER
- SA6 CC
- SA1 TF
- NZ X1,RSPX IF TERMINAL OUTPUT
- AX2 18
- SX6 X2
- LX6 -18
- SA2 OF
- WRITEO X2 OUTPUT DENSITY SELECTION CONTROL CHAR
- JP RSPX EXIT
- RSPA BSS 0 PRINT DENSITY OPTION TABLE
- VFD 6/1L3,18/1LS,18/1R0,18/RSPC
- VFD 6/1L4,18/1LT,18/1R0,18/RSPD
- VFD 6/1L6,18/1LS,18/1R ,18/RSPB
- VFD 6/1L8,18/1LT,18/1R ,18/RSPE
- VFD 60/0
- RSPB EQU LINP-3 6 LINES PER INCH DENSITY
- RSPC EQU RSPB/2 3 LINES PER INCH DENSITY
- RSPD EQU RSPB*2/3 4 LINES PER INCH DENSITY
- RSPE EQU RSPB*4/3 8 LINES PER INCH DENSITY
- RST SPACE 4,20
- ** RST - READ SYSTEM TABLES.
- *
- * READS ALL TABLES THROUGH THE SECDED ID TABLE
- * FROM THE DUMP FILE TO TABLE *TCMT*.
- *
- * ENTRY (PF) = 0, IF TO READ LOW CORE WORDS FROM DUMP FILE.
- * ELSE, READ LOW CORE WORDS FROM RUNNING SYSTEM.
- *
- * EXIT (CF) = NONZERO, IF CYBER 176.
- * (ME) = NUMBER OF MEMORY CONTROL TABLE (MCT) ENTRIES.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- * (NP) = NUMBER OF PPU-S IN SYSTEM.
- * (PC) = PP COMMUNICATION AREA POINTER.
- *
- * USES X - 0, 1, 2, 3, 6, 7.
- * A - 1, 2, 3, 6, 7.
- *
- * CALLS GID, PCM.
- *
- * MACROS ALLOC, GETCM, SEARCH, SYSTEM.
- RST SUBR
- ALLOC TCMT,CPAS ALLOCATE LOW CORE POINTER SPACE
- SA1 PF
- NZ X1,RST6 IF POINTERS TO COME FROM RUNNING SYSTEM
- SX3 0
- RJ PCM
- SA1 F.TCMT
- SA2 L.TCMT
- GETCM X1,X2
- RST1 SA1 F.TCMT
- SA1 X1+JBCP READ JOB CONTROL AREA POINTER
- LX1 24
- SX1 X1-CPAS LENGTH OF REMAINING CM TABLES
- SX2 X1-110000B CHECK IF CMR SIZE REASONABLE
- NG X1,RST2 IF UNREASONABLE SIZE
- NG X2,RST3 IF SIZE WITHIN MAXIMUM
- RST2 SX1 20000B SELECT LOAD LENGTH IF CMR BASHED
- RST3 ALLOC TCMT,X1 ALLOCATE REMAINDER OF TABLE
- GETCM X2+CPAS,X1
- SA1 F.TCMT
- SA2 X1+NCPL READ NUMBER OF CONTROL POINTS FROM SYSTEM
- MX0 -12
- SA3 X1+PPCP SET PP COMMUNICATION AREA POINTER
- BX7 -X0*X3
- LX2 24
- LX3 36 SET EXTENDED MEMORY SHIFT COUNTS
- ERRNZ MEFL-PPCP CODE ASSUMES SAME WORD
- SA7 PC
- BX7 -X0*X3
- AX7 5
- MX6 -2
- BX6 -X6*X7
- SA6 EM
- AX7 4
- SA7 UE
- BX6 -X0*X2 EXTRACT NUMBER OF CONTROL POINTS
- SX7 X6-/DSL/NCPS
- NG X7,RST4 IF NOT MAXIMUM OR BAD POINTER
- SX6 /DSL/NCPS SET MAXIMUM NUMBER OF CONTROL POINTS
- RST4 SA6 NC
- SA3 X1+MCTP SET NUMBER OF MCT ENTRIES
- AX3 24
- BX6 -X0*X3
- SA6 ME
- SX6 B0+
- SA6 IO INITIALIZE *I4A OR I4S IOU* FLAG
- SA1 BD
- NZ X1,RST5 IF *DMB* FILE, SKIP PP CHECKS
- SA1 .NPP
- MX0 12
- SEARCH TDIR,X1,X0
- ZR X2,ERR7 IF FIRST PP RECORD NOT FOUND
- SX6 0
- SA3 =2LPP
- MX0 12
- RST4.1 SX6 X6+B1
- SA2 A2+2 GET NEXT DIRECTORY ENTRY
- BX2 X0*X2
- IX2 X3-X2
- ZR X2,RST4.1 IF MORE PP RECORDS
- SA6 AC NUMBER OF PP-S ON DUMP TAPE
- SX7 X6-10D
- ZR X7,RST5 IF 10 PP SYSTEM
- SX6 MAXP SET MAXIMUM NUMBER OF PPU-S
- RST5 SA6 NP SET NUMBER OF PP COMMUNICATION AREAS
- SA1 .CPP
- MX0 24
- SEARCH TDIR,X1,X0
- SX6 0
- ZR X2,RST5.2 IF NO *CPP* RECORDS
- MX0 12
- SA3 .CPP
- BX3 X0*X3
- RST5.1 SX6 X6+1
- SA2 A2+2 CHECK NEXT RECORD
- BX2 X0*X2
- IX2 X3-X2
- ZR X2,RST5.1 IF CPP RECORD
- RST5.2 SA6 C4 NUMBER OF CPP-S AND CPP COMM. AREAS
- SA1 F.TCMT
- SA2 X1+MABL GET HARDWARE OPTIONS
- MX7 -2 SET CYBER 176 FLAG
- LX2 0-45
- BX6 -X7*X2
- BX6 -X7-X6
- SA6 CF
- SX7 B1+
- LX2 0-47-0+45
- BX6 X7*X2
- NZ X6,RSTX IF NOT CYBER 8X5
- SA7 CE SET CM EXTENSION
- LX2 59-42-0+47-60
- PL X2,RSTX IF CYBER 170-865/875
- SA1 =3LIMR CHECK FOR *I4* IOU
- RJ GID
- SX6 X6-4
- SA6 IO SAVE *I4A OR I4S IOU* FLAG
- SX7 X7-0#44
- ZR X5,ERR47 IF *I4C* IOU
- EQ RSTX RETURN
- * READ LOW CORE FROM RUNNING SYSTEM.
- RST6 SA1 F.TCMT
- SX6 -B1
- SA6 X1 PRESET BUFFER FOR ABSOLUTE MEMORY READ
- SA6 A6+100B
- SA2 RSTA
- SA3 RSTB UPDATE BUFFER ADDRESS IN *RSB* CALLS
- IX6 X2+X1
- IX7 X3+X1
- SA6 A2
- SA7 A3
- SYSTEM RSB,R,RSTA
- SYSTEM RSB,R,RSTB
- SX3 CPAS
- RJ PCM POSITION DUMP FILE PAST POINTER AREA
- JP RST1 READ REST OF CM TABLES
- RSTA VFD 12/0,12/100B,18/0,18/0 *RSB* CALL PARAMETERS
- RSTB VFD 12/0,12/100B,18/100B,18/100B
- RUC SPACE 4,11
- ** RUC - RESET USER SELECTED CONTROLS.
- * RESTORES REFERENCE ADDRESS, SUBTITLE AND MEMORY TYPE
- * TO THOSE SELECTED BY THE USER.
- *
- * ENTRY UA = USER SELECTED REFERENCE ADDRESS.
- * UI = USER SELECTED MEMORY INDEX.
- * US = SUBTITLE DISPLAY OF USER SELECTED RA.
- * US+1 = SUBTITLE MEMORY BLOCK NAME.
- *
- * USES X - 1,2,6,7.
- * A - 1,2,6,7.
- RUC SUBR
- SA1 UA
- SA2 UI
- BX6 X1
- LX7 X2
- SA6 BA RESTORE REFERENCE ADDRESS
- SA7 MI RESTORE MEMORY BLOCK RANDOM INDEX
- SA1 US
- SA2 A1+1
- BX6 X1
- LX7 X2
- SA6 SBTL RESTORE SUBTITLE
- SA7 SBTL1
- JP RUCX EXIT
- SAI SPACE 4,15
- ** SAI - SET ASCII INTERPRETATION.
- *
- * ENTRY (X2) = ASCII 8 BIT CHARACTERS.
- * (B6) = NUMBER OF CHARACTERS TO CONVERT.
- * (B7) = POSITION TO PLACE CHARACTERS.
- *
- * EXIT (X1) = SHIFTED (B6)*8 BITS.
- * (B7) = UPDATED.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 3, 7.
- * B - 6, 7.
- SAI SUBR ENTRY/EXIT
- MX1 -7 STRIP PARITY BIT FROM CHARACTER
- SAI1 LX2 8
- BX6 -X1*X2 EXTRACT CHARACTER
- SA3 X6+/COMTVDT/TVXD GET DISPLAY CODE EQUIVALENT
- SX7 X3
- PL X3,SAI2 IF CHARACTER IS PRINTABLE
- SX7 1R CHANGE TO A SPACE
- SAI2 SX6 X7 CHECK FOR 74/76 ESCAPE
- AX6 6
- SB6 B6-B1 DECREMENT CHARACTER COUNT
- LX6 6
- IX7 X7-X6 REMOVE ANY 74/76 ESCAPE
- SA7 B7
- SB7 B7+B1
- NZ B6,SAI1 IF MORE CHARACTERS TO UNPACK
- EQ SAIX RETURN
- SBC SPACE 4,20
- ** SBC - SELECT NEXT BUFFER CONTROLLER CHANNEL.
- *
- * ENTRY (BCDA) = LAST DIRECTORY ENTRY ADDRESS.
- * (PI) = 0, IF DUMPING ALL CHANNELS.
- * (SBCB) = OPTION SELECTION IF DUMPING ALL CHANNELS.
- *
- * EXIT (X1) = 0, IF NO MORE CHANNELS TO DUMP.
- * (A2) = DIRECTORY ENTRY ADDRESS.
- * (SBCA) = CHANNEL NUMBER SELECTED.
- * (SBCB) = PARAMETERS SELECTED FOR NEXT CHANNEL.
- *
- * USES X - 0, 1, 2, 6.
- * A - 1, 2, 6.
- * B - 7.
- *
- * CALLS ASD, ASN.
- *
- * MACROS SEARCH.
- SBC SUBR ENTRY/EXIT
- SA1 PI
- NZ X1,SBC2 IF CHANNELS ON DIRECTIVE
- SA1 /DIRECT/BCDA GET ADDRESS OF LAST DIRECTORY ENTRY
- SA2 X1+2 GET NEXT ENTRY
- SX1 2RCH CHECK IF STILL BUFFER CONTROLLER RECORD
- LX1 -24
- MX0 12
- LX0 -12
- BX2 X0*X2
- BX2 X1-X2
- ZR X2,SBC1 IF BUFFER CONTROLLER CHANNEL
- MX1 0 FLAG END OF DUMP
- EQ SBCX RETURN
- SBC1 SA2 A2 FORM CHANNEL NUMBER
- AX2 24
- MX0 -6
- BX1 -X0*X2
- AX2 6
- BX2 -X0*X2
- SX1 X1-1R0
- SX2 X2-1R0
- LX2 3
- IX6 X2+X1
- SA6 SBCA SAVE CHANNEL NUMBER
- SX1 B1 FLAG CHANNEL FOUND
- EQ SBCX RETURN
- * PROCESS PARAMETERS FROM DIRECTIVE.
- SBC2 SB7 0 SET OCTAL BASE
- RJ ASD ASSEMBLE CHANNEL NUMBER
- SX1 B6+
- ZR X1,SBCX IF NO MORE TO DUMP
- NZ X4,ERR6 IF CONVERSION ERROR
- SA6 SBCA SAVE CHANNEL NUMBER
- SA1 CH CHECK IF OPTIONS PRESENT
- SA1 X1+
- SX1 X1-1R/
- SX6 2RHD SET DEFAULT OPTIONS
- NZ X1,SBC3 IF NO PARAMETERS
- RJ ASN ASSEMBLE PARAMETERS
- AX6 B6
- SBC3 SA6 SBCB SAVE PARAMETERS
- SA1 SBCA FORM RECORD HEADER FOR SEARCH
- MX0 -3
- BX2 -X0*X1
- AX1 3
- BX1 -X0*X1
- LX1 6
- BX1 X1+X2
- SA2 .BCH
- LX1 24
- MX0 24
- IX6 X2+X1
- LX0 -12
- SEARCH TDIR,X6,X0
- ZR X2,ERR6 IF CHANNEL NOT FOUND
- SX1 1 FLAG CHANNEL FOUND
- EQ SBCX RETURN
- SBCA CON 0 CHANNEL NUMBER
- SBCB CON 0 SELECTED PARAMETERS FOR DUMP
- SBL SPACE 4,10
- ** SBL - STORE BLANKS IN PRINT LINE.
- *
- * ENTRY B6 = NUMBER OF BLANKS DESIRED.
- * B7 = CURRENT PRINT STRING ADDRESS.
- *
- * EXIT B7 IS UPDATED.
- *
- * USES X - 6.
- * B - 6,7.
- * A - 6.
- SBL SUBR
- SX6 1R
- SBL1 SA6 B7
- SB7 B7+1
- SB6 B6-B1
- NZ B6,SBL1 IF MORE SPACES TO STORE
- JP SBLX EXIT
- SCH SPACE 4,13
- ** SCH - SET SC DIRECTIVE HEADER.
- *
- * ENTRY X5 = CURRENT SC DIRECTORY WORD.
- * A5 = ADDRESS OF CURRENT SC DIRECTORY WORD.
- * A0 = ADDRESS OF WHERE TO STORE SC REGISTERS.
- * A2 = ADDRESS OF 38 CHARACTER HEADER MESSAGE.
- * B7 = PRINT STRING ADDRESS.
- *
- * EXIT A5 IS UPDATED TO RANDOM INDEX WORD.
- *
- * USES ALL REGISTERS.
- *
- * CALLS PDF,RDW=,UPS.
- SCH SUBR
- SB6 38
- RJ UPS
- SA5 A5+1
- BX6 X5
- SX3 B1
- SA6 RI
- RJ PDF POSITION TO SC REGISTERS
- READW S,A0,4
- JP SCHX EXIT
- SCM SPACE 4,7
- ** SCM - SET CENTRAL MEMORY.
- *
- * EXIT X6 = SBTL1 = CENTRAL MEMORY NAME FOR SUBTITLE.
- * X7 = MI = CENTRAL MEMORY BLOCK RANDOM INDEX.
- *
- * USES X - 1, 2, 6, 7.
- * A - 1, 2, 6, 7.
- SCM1 SA2 =4R CLEAR POSSIBLE *UEC *
- AX1 24
- LX1 24
- BX6 X1-X2
- SA6 A1
- SCM SUBR
- SA2 CI
- LX7 X2
- SX6 B0 CLEAR MEMORY BASE ADDRESS
- SA7 MI SET RANDOM INDEX OF CM
- SA6 MB
- SA6 MT SET MEMORY TYPE
- SA1 SBTL1
- MX6 12
- BX2 X6*X1
- LX2 12
- SX6 X2-2RCP
- ZR X6,SCM1 IF DUMPING CONTROL POINTS
- SX6 X2-2RPC
- ZR X6,SCM1 IF DUMPING PSEUDO-CONTROL POINTS
- SA2 =10HCM
- BX6 X2
- SA6 A1 SET NAME FOR SUBTITLE
- JP SCMX EXIT
- SCP SPACE 4,21
- ** SCP - SELECT NEXT CONTROL POINT/PSEUDO-CONTROL POINT TO DUMP.
- *
- * ENTRY (CH) = ADDRESS OF NEXT CHARACTER IN DIRECTIVE.
- * (CO) = DEFAULT LIST OPTIONS FOR CONTROL POINT DUMP.
- * (NC) = NUMBER OF CONTROL POINTS - 1.
- * (OP) = PCPA FWA OFFSET (0 IF DUMPING CONTROL POINTS).
- * (PI) = 0, IF NEXT CP NUMBER TO BE FROM DIRECTIVE CARD.
- * ELSE, CP AREA INDEX FOR ACTIVE CP SEARCH.
- *
- * EXIT (X1) = 0, IF NO MORE CONTROL POINTS TO DUMP.
- * (CL) = LIST OPTIONS SELECTED.
- * (CN) = SELECTED CONTROL POINT NUMBER.
- * (PI) = UPDATED CP SEARCH INDEX.
- *
- * ERROR TO *ERR8*, IF INCORRECT CONTROL POINT NUMBER.
- *
- * USES X - 1, 2, 3, 4, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2, 3, 4, 7.
- *
- * CALLS ASD, ASN.
- SCP6 SA6 SBTL1
- SX1 1 SET CONTROL POINT SELECTED FLAG
- SCP SUBR
- SA1 PI
- NZ X1,SCP3 IF DUMPING ALL ACTIVE CONTROL POINTS
- * SELECT NEXT CONTROL POINT NUMBER FROM DIRECTIVE CARD.
- SB7 B0 SET OCTAL BASE
- RJ ASD ASSEMBLE CP NUMBER
- SX1 B6+
- ZR X1,SCPX IF END OF DIRECTIVE
- NZ X4,ERR8 IF CONVERSION NOT OK
- ZR X6,ERR8.1 IF CONTROL POINT ZERO
- SA6 CN SAVE NUMBER
- SA1 NC
- IX7 X1-X6
- SX7 X7+B1 ALLOW FOR SYSTEM CONTROL POINT
- SA1 OP
- ZR X1,SCP1 IF NOT DUMPING PSEUDO-CONTROL POINTS
- PL X7,ERR8.1 IF INCORRECT PCP NUMBER
- SA1 ME NUMBER OF MCT ENTRIES
- SX7 X6+B1
- IX7 X1-X7
- SCP1 NG X7,ERR8.1 IF INCORRECT CONTROL POINT NUMBER
- SA1 CH CHECK SEPARATOR
- SA1 X1+
- SX1 X1-1R/
- SA2 CO
- BX6 X2 SET DEFAULT LIST OPTIONS
- NZ X1,SCP2 IF SEPERATOR NOT */*
- RJ ASN ASSEMBLE LIST OPTIONS
- SCP2 SA6 CL SET LIST OPTIONS
- SA1 CN SET CP/PCP NUMBER IN SUBTITLE LINE
- RJ COD
- SX1 2RCP&2R
- BX6 X4-X1
- LX6 -12
- SA1 OP
- ZR X1,SCP6 IF NOT DUMPING PCP-S
- SX1 1RP&1R
- BX6 X6-X1
- LX6 -6
- EQ SCP6 SET SUBTITLE
- * FIND NEXT ACTIVE CONTROL POINT.
- SCP3 SB2 X1 SET SEARCH INDEX
- SA2 NC LAST CONTROL POINT NUMBER-1
- SX2 X2+B1
- MX4 12
- SA3 OP
- ZR X3,SCP3.1 IF NOT DUMPING PCP-S
- SA2 ME
- SCP3.1 LX2 7
- IX2 X2+X3 ADD PCPA OFFSET
- SB3 X2+TFSW
- SA2 F.TCMT
- SB4 X2 SET TCMT TABLE BASE ADDRESS
- SX1 B0 PRESET NO MORE TO DUMP FLAG
- SCP4 SB2 B2+CPLEN ADVANCE SEARCH POINTER
- LT B2,B3,SCP4.1 IF NOT AT SYSTEM CP OR LAST PCP+1
- SA2 OP
- NZ X2,SCPX IF ALL THROUGH DUMPING PCP-S
- EQ B2,B3,SCP5 IF SYSTEM CP
- SA3 F.TCMT CHECK FOR PCP-S TO DUMP
- SA3 X3+PCPP
- SX2 B2-TFSW SET PCPA OFFSET
- SX3 X3
- ZR X3,SCPX IF NO PCP-S TO DUMP
- IX6 X3-X2
- SA6 A2
- SB2 B2+X6 ADVANCE SEARCH POINTER TO PCPA-S
- SA2 ME SET LAST PCPA+1 TO DUMP
- LX2 7
- IX2 X2+X6
- SB3 X2+TFSW
- SCP4.1 SA2 B2+B4 READ NEXT EJT ORDINAL
- BX2 X4*X2
- ZR X2,SCP4 IF CONTROL POINT NOT ACTIVE
- SCP5 SX1 B2-TFSW
- SA2 OP SUBTRACT OFF PCPA OFFSET
- IX7 X1-X2
- AX7 7
- SA7 CN SET CONTROL POINT NUMBER
- SX6 B2
- SA6 A1 UPDATE SEARCH POINTER
- SA1 CO DEFAULT LIST OPTIONS
- BX6 X1
- EQ SCP2 SET LIST OPTIONS
- SDI SPACE 4,13
- ** SDI - SET DISPLAY CODE INTERPRETATION.
- * COLONS AND DISPLAY CODE CHARACTERS ABOVE 57B ARE
- * REPLACED WITH SPACES IN ORDER NOT TO SLOW DOWN THE LINE
- * PRINTER.
- *
- * ENTRY A2 = ADDRESS OF FIRST DATA WORD.
- * X2 = FIRST DATA WORD.
- * B6 = NUMBER OF CHARACTERS.
- * B7 = STRING BUFFER ADDRESS.
- *
- * USES X - 0,2,6,7.
- * B - 5,6,7.
- * A - 2,6.
- SDI SUBR
- SDI1 SX0 77B
- SB5 10 CHARACTER COUNT
- SDI2 LX2 6 POSITION NEXT CHARACTER
- BX6 X0*X2
- ZR X6,SDI3 IF COLON
- SX7 X6-60B
- NG X7,SDI4 IF NOT A SPECIAL CHARACTER
- SDI3 SX6 1R
- SDI4 SA6 B7 STORE CHARACTER IN STRING
- SB7 B7+1
- SB6 B6-B1 COUNT CHARACTER
- ZR B6,SDIX IF NO MORE TO CONVERT
- SB5 B5-1
- NZ B5,SDI2 IF NOT END OF WORD
- SA2 A2+1 READ NEXT WORD
- EQ SDI1 CONTINUE
- SDT SPACE 4,15
- ** SDT - SEARCH DESCRIPTOR TABLE.
- *
- * ENTRY (X1) = SEARCH ARGUMENT (LOWER 8 BITS).
- * (A2) = ADDRESS OF DESCRIPTOR TABLE.
- * (X2) = FIRST ENTRY IN DESCRIPTOR TABLE.
- * (X4) = MODEL NUMBER BIT MASK.
- *
- * EXIT (X2) = 0 IF NO FIND.
- * = TABLE ENTRY IF FIND.
- * (A2) = ADDRESS OF DESCRIPTOR TABLE ENTRY.
- *
- * USES X - 0, 1, 2, 3, 4.
- * A - 2.
- SDT SUBR ENTRY/EXIT
- MX0 9
- LX1 51
- LX4 34
- SDT1 BX3 X0*X2
- BX3 X3-X1
- NZ X3,SDT2 IF NO MATCH
- BX3 X2*X4
- NZ X3,SDTX IF VALID FOR THIS MODEL
- SDT2 SA2 A2+B1
- NZ X2,SDT1 IF NOT END OF DESCRIPTOR TABLE
- EQ SDTX RETURN
- SEA SPACE 4,10
- ** SEA - SET EXCHANGE ADDRESS FOR CYBER 176.
- *
- * EXIT (X6) = REFERENCE ADDRESS.
- *
- * USES X - 1, 2, 3, 6.
- * A - 1.
- SEA SUBR ENTRY/EXIT
- SA1 F.TCMT GET EST FWA AND SIZE
- SA1 X1+ESTP
- AX1 24
- MX6 -12
- BX2 -X6*X1
- AX1 12 GET FWA EST
- R= X3,ESTE
- IX3 X2*X3
- IX6 X1+X3
- SX6 X6+777B ROUND UP TO NEXT 1000B
- AX6 9
- LX6 9
- EQ SEAX RETURN
- SEC SPACE 4,8
- ** SEC - SET EXTENDED CORE STORAGE.
- *
- * EXIT X6 = SBTL1 = EXTENDED MEMORY NAME FOR SUBTITLE.
- * X7 = MI = EXTENDED MEMORY BLOCK RANDOM INDEX.
- *
- * USES X - 0, 1, 2, 3, 6, 7.
- * A - 1, 2, 3, 6, 7.
- *
- * CALLS COD.
- *
- * MACROS SEARCH.
- SEC SUBR
- BX7 X7-X7 CLEAR EXTENDED MEMORY ERROR FLAG
- SA7 EE
- SA7 MB CLEAR MEMORY BASE ADDRESS
- SA1 .ECS
- MX0 18
- SEARCH TDIR,X1,X0
- NZ X2,SEC0 IF ECS RECORD FOUND
- SA1 .ESM
- MX0 18
- SEARCH TDIR,X1,X0
- ZR X2,SEC2 IF NO ESM RECORD FOUND
- SEC0 SA1 CF CHECK IF A CYBER 176
- SA3 =10REC SET HEADER FOR NO FLAG REGISTER
- BX6 X3
- ZR X1,SEC1 IF CYBER 176
- SA1 A2 READ FLAG REGISTER FROM TDIR ENTRY
- SA3 =10000000B
- MX0 -18
- LX1 -12
- BX1 -X0*X1
- IX1 X1+X3 GUARANTEE LEADING ZEROS
- RJ COD CONVERT FLAG REGISTER
- SA3 =4L EC
- MX0 -36
- BX6 -X0*X6
- BX6 X6+X3
- LX6 6
- SEC1 SA6 SBTL1 SET NAME AND FLAG REGISTER FOR SUBTITLE
- SA2 A2+3 READ RANDOM INDEX
- ZR X2,SEC2 IF NO EXTENDED MEMORY RECORD
- BX7 X2
- SA7 MT SET MEMORY TYPE
- SA7 MI SET RANDOM INDEX OF EXTENDED MEMORY
- JP SECX EXIT
- SEC2 SX7 B1 SET EXTENDED MEMORY ERROR FLAG
- SA7 EE
- JP ERR5 *EXTENDED MEMORY RECORD NOT FOUND*
- SEM SPACE 4,10
- ** SEM - SET UNIFIED EXTENDED MEMORY.
- *
- * EXIT (X3) = *UEML* WORD SHIFTED 59-1.
- * (X6) = (SBTL1) = UEM NAME FOR SUBTITLE.
- * (X7) = (MI) = CENTRAL MEMORY BLOCK RANDOM INDEX.
- *
- * USES A - 1, 2, 3, 6, 7.
- * X - 1, 2, 3, 6, 7.
- SEM SUBR ENTRY/EXIT
- SA1 F.TCMT
- SA3 X1+UEML
- MX6 12
- BX7 X7-X7
- BX6 X6*X3
- LX3 59-1
- SA7 EE CLEAR EXTENDED MEMORY ERROR FLAG
- SA7 MT SET MEMORY TYPE
- LX6 12+9
- SA6 MB SET MEMORY BASE ADDRESS TO UEM ADDRESS
- SA1 =10HUEM
- SA2 CI
- BX6 X1
- LX7 X2
- SA6 SBTL1 SET NAME FOR SUBTITLE
- SA7 MI SET RANDOM INDEX OF CM
- EQ SEMX RETURN
- SFP SPACE 4,10
- ** SFP - SEARCH FOR PAGE.
- *
- * ENTRY (DSMB, DSMB+1) = FWA, LWA OF DUMP.
- *
- * EXIT DSMB UPDATED.
- * (X3) < 0, IF PAGES FOUND.
- *
- * USES A - 1, 2, 3, 6.
- * X - 2, 3, 6.
- * B - 2, 6, 7.
- *
- * CALLS CPC, HTS, PSM, SPT, SSB, UPS.
- SFP SUBR ENTRY/EXIT
- RJ SSB SPACE FILL BUFFER
- SA2 SFPA * PAGE ENTRY IS MISSING.*
- SB7 PRBF
- SB6 23
- RJ UPS UNPACK STRING
- SB2 DSMB
- RJ SPT CHECK PAGE CHANGE
- NG X3,SFP3 IF INITIAL PAGE IS PRESENT
- ZR X2,SFP2 IF PAGE IS NOT REALLY MISSING
- PRINT (=2C )
- PRINT CCCH,24
- SFP1 SA1 DSMB INCREMENT TO NEXT PAGE
- SA2 XM
- SX2 X2+B1
- IX6 X2+X1
- SA6 A1
- SA3 A1+B1
- IX6 X6-X3
- PL X6,SFP4 IF NO MORE TO DUMP
- SB2 DSMB
- RJ CPC CHECK PAGE CHANGE
- SFP2 NZ X2,SFP1 IF PAGE MISSING
- SB7 PRBF+15 FETCH UPPER 4 BITS
- SA1 A3 FETCH VALID BITS
- SB6 B1
- RJ HTS
- SA1 A1+B1
- SB6 15
- RJ HTS
- PRINT (=2C )
- PRINT CCCH,32
- PRINT (=2C )
- SFP3 SB2 BRMA BYTE RMA OF PAGE
- RJ PSM POSITION DUMP FILE
- RJ SSB SPACE FILL BUFFER
- MX3 1
- JP SFPX RETURN
- SFP4 MX3 0 DEFINE MISSING PAGE/END OF DUMP
- JP SFPX RETURN
- SFPA DATA H* PAGE ENTRY IS MISSING.*
- SFR SPACE 4,15
- ** SFR - SEARCH FOR REGISTER.
- *
- * ENTRY (X5) = REGISTER NUMBER.
- *
- * EXIT (X1) = REGISTER NUMBER IF FOUND.
- * = NEGATIVE IF NOT FOUND.
- * (X6) = UPPER 4 BITS OF REGISTER (BITS 0-3).
- * (X7) = LOWER 60 BITS OF REGISTER (BITS 4-63).
- *
- * USES B - 2.
- * A - 1, 2.
- * X - 1, 2, 3, 6, 7.
- * LPWA - LPWA+1.
- *
- * CALLS RMR.
- SFR SUBR ENTRY/EXIT
- SX6 -1
- SA6 LPWA PRESET BUFFER POINTERS FOR *LPW*
- SX6 X6+B1
- SA6 A6+B1
- SFR1 RJ RMR READ MAINTENANCE REGISTER
- BX2 X1
- MX1 1
- ZR X2,SFRX IF END OF REGISTERS
- SA1 RMRA+1 GET REGISTER NUMBER
- IX6 X5-X1
- NZ X6,SFR1 IF NOT SELECTED REGISTER
- SA2 MRBF FWA OF REGISTER VALUE
- MX3 -4
- BX7 -X3*X2
- AX2 4
- SX6 X2
- SB2 7
- SFR2 SA2 A2+B1 PACK INTO 60 BIT VALUE
- LX7 8
- BX7 X7+X2
- SB2 B2-B1
- NZ B2,SFR2 IF MORE BYTES TO INCLUDE
- EQ SFRX RETURN
- SHA SPACE 4,12
- ** SHA - SET HEX ADDRESSES.
- *
- * ENTRY (X6) = MAXIMUM ADDRESS TO DUMP.
- * (NR) = NEXT RECORD FLAG.
- *
- * EXIT (FW) AND (LW) SET.
- *
- * USES X - 0, 1, 6.
- * A - 1, 6.
- *
- * CALLS ASX.
- SHA2 SA1 NR
- ZR X1,SHAX IF NO SECOND RECORD EXISTS
- SA1 FW SAVE FWA, LWA+1
- BX6 X1
- SA1 A1+B1
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- SHA3 SA6 SHAA
- BX6 X1
- SA6 A6+B1
- SHA SUBR ENTRY/EXIT
- SA1 SHAA+1
- ZR X1,SHA1 IF FIRST RECORD
- SA1 SHAA RESTORE FWA, LWA+1
- BX6 X1
- SA1 A1+B1
- SA6 FW
- BX6 X1
- SA6 A6+B1
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- SX1 B0
- SX6 B0
- EQ SHA3 CLEAR SAVE AREA
- SHA1 SA6 LW PRESET LWA+1
- BX0 X6 SAVE MAXIMUM
- SX6 B0 PRESET FWA
- SA6 FW
- RJ ASX ASSEMBLE FWA
- NZ X4,SHA2 IF NO ADDRESSES SPECIFIED
- SA6 FW SET FWA
- SX6 X6+B1 RESET LWA+1
- SA6 A6+B1
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- RJ ASX ASSEMBLE LWA+1
- NZ X4,SHA2 IF NOT SPECIFIED
- SA6 LW SET NEW LWA+1
- IX6 X0-X6
- PL X6,SHA2 IF LWA+1 NOT TOO LARGE
- BX6 X0
- SA6 A6+ RESET LWA+1
- EQ SHA2 CHECK NEXT RECORD
- SHAA CON 0 FWA
- CON 0 LWA+1
- SLP SPACE 4,12
- ** SLP - SET LOGICAL PP IN MESSAGE.
- *
- * ENTRY (A0) = MESSAGE WORD ADDRESS.
- * (PP) = PP BEING DUMPED.
- *
- * EXIT (X6) = 0 IF NO PP SWITCH.
- *
- * USES X - 0, 2, 3, 4, 6, 7.
- * A - 2, 3, 7.
- *
- * CALLS CPN.
- SLP1 SX6 0 SET NO PP SWITCH
- SLP SUBR ENTRY/EXIT
- RJ CPN CONVERT PP/CPP NUMBER
- NZ X3,SLP1 IF CPP
- SA3 TLPP+X6
- BX6 X3-X2
- ZR X6,SLPX IF NO PP SWITCH
- BX4 X3
- SX2 707B CONVERT LOGICAL NUMBER TO DISPLAY CODE
- LX3 3
- BX3 X3+X4
- BX3 X3*X2
- SX6 X3+2R00
- SA2 A0 SET LOGICAL NUMBER IN HEADER
- LX6 36
- MX0 12
- LX0 -12
- BX2 -X0*X2
- BX7 X2+X6
- SA7 A0
- EQ SLPX RETURN
- SMT SPACE 4,16
- ** SMT - SELECT MASS STORAGE TABLE TO DUMP.
- *
- * ENTRY (CH) = ADDRESS OF NEXT CHARACTER IN DIRECTIVE.
- * (PI) = EST SEARCH ORDINAL.
- * (PI) = 0 IF MST-S ARE SPECIFIED ON THE DIRECTIVE.
- *
- * EXIT (X6) = MST ADDRESS.
- * 0, IF NO MORE MST-S TO DUMP.
- * (EQ) = *EQDE* WORD OF EST ENTRY.
- * (FI) = EST ORDINAL TO DUMP.
- * (PI) ADVANCED.
- *
- * USES X - 1, 2, 3, 4, 5, 6, 7.
- * A - 1, 2, 3, 4, 6, 7.
- * B - 2, 7.
- *
- * CALLS ASD, COD.
- SMT3 SA6 EQ SAVE EST ENTRY WORD FOR *MRT*
- SA1 FI CONVERT EST ORDINAL
- RJ COD
- SX1 3REST&3R CREATE SUBTITLE
- MX6 -18
- BX1 -X6*X1
- LX1 6
- BX6 X4-X1 ADD CONVERTED ORDINAL
- LX6 -24
- SA6 SBTL1
- BX6 X5 RESTORE MST ADDRESS
- LX6 3
- SMT SUBR ENTRY/EXIT
- SA1 PI
- NZ X1,SMT1 IF DUMPING ALL MSTS
- * READ NEXT DEVICE NUMBER FROM DIRECTIVE CARD.
- SB7 B0
- RJ ASD ASSEMBLE NEXT EST ORDINAL
- ZR X6,SMTX IF END OF DIRECTIVE
- NZ X4,ERR6 IF ERROR
- SA1 F.TCMT READ EST POINTERS
- SA2 X1+ESTP
- MX3 -12
- AX2 12
- BX7 -X3*X2 SET LAST MASS STORAGE ORDINAL + 1
- AX2 24
- IX7 X6-X7
- PL X7,ERR6 IF INCORRECT EST ORDINAL
- SA6 FI SAVE EST ORDINAL
- R= X7,ESTE
- IX7 X6*X7
- IX2 X2+X7
- SX2 X2+EQDE
- IX2 X2+X1
- SA2 X2 READ EST ENTRY
- PL X2,ERR23 IF NOT MASS STORAGE
- BX5 -X3*X2 SET MST ADDRESS
- BX6 X2
- JP SMT3 EXIT
- * SEARCH FOR NEXT MASS STORAGE DEVICE.
- SMT1 SA2 F.TCMT
- SA4 X2+ESTP READ EST POINTER WORD
- SB2 X2+
- MX6 0 PRESET MST ADDRESS
- MX2 -12
- AX4 12
- BX7 -X2*X4 LAST MASS STORAGE ORDINAL + 1
- AX4 12
- BX3 -X2*X4 LAST EST ORDINAL + 1
- AX4 12
- SB2 B2+X4 SET (B2) = FWA OF EST IN *TCMT*
- SX4 X3 VERIFY LAST MASS STORAGE .LE. LAST EST
- IX2 X7-X4
- PL X2,SMT2 IF MAXIMUM MS DEVICES OR POINTERS BAD
- SX4 X7+
- SMT2 IX2 X1-X4
- PL X2,SMTX IF END OF MASS STORAGE EST-S
- R= X3,ESTE
- IX2 X1*X3
- SX2 X2+EQDE
- SA3 X2+B2 READ EST ENTRY
- SX1 X1+B1
- PL X3,SMT2 IF NOT A MASS STORAGE DEVICE
- BX6 X1
- SA6 A1 UPDATE EST POINTER
- SX6 X1-1
- SA6 FI SAVE FOR *MST*
- MX2 -12
- BX5 -X2*X3 SET MST ADDRESS
- BX6 X3
- JP SMT3 EXIT
- SNO SPACE 4,13
- ** SNO - SELECT NEXT LIST OPTION.
- *
- * ENTRY (X1) = OPTION CHARACTER STRING LEFT JUSTIFIED.
- * (A1) = ADDRESS OF OPTION STRING.
- * (B2) = OPTION PROCESSOR ADDRESS TABLE.
- *
- * EXIT (X3) = 0 IF OPTION STRING EMPTY.
- * (B3) = PROCESSOR ADDRESS IF FOUND.
- * OPTION STRING IS UPDATED.
- *
- * USES X - 1, 2, 3, 6.
- * A - 2, 6.
- * B - 2, 3.
- SNO SUBR
- LX1 6 POSITION NEXT OPTION CHARACTER
- MX2 -6
- BX3 -X2*X1 EXTRACT NEXT CHARACTER
- BX6 X2*X1
- SA6 A1+ UPDATE STRING
- ZR X3,SNOX IF END OF OPTIONS
- SNO1 SA2 B2 READ PROCESSOR ADDRESS
- ZR X2,ERR22 IF END OF TABLE
- SB3 X2 SET PROCESSOR ADDRESS
- AX2 18
- BX2 X2-X3
- ZR X2,SNOX IF MATCH FOUND
- SB2 B2+B1
- EQ SNO1 CHECK NEXT TABLE ENTRY
- SNP SPACE 4,13
- ** SNP - SELECT NEXT PPU/FLPP TO DUMP.
- *
- * ENTRY (PI) = *TDIR* TABLE POINTER IF DUMPING ALL PPUS/FLPPS.
- * = 0 IF NEXT PPU/FLPP NUMBER IS ON DIRECTIVE CARD.
- *
- * EXIT (X1) = 0, IF NO MORE PP-S/FLPP-S TO DUMP.
- * (PI) = UPDATED.
- * DUMP FILE IS POSITIONED.
- *
- * USES X - 0, 1, 2, 3, 5, 6.
- * A - 1, 2, 5, 6.
- * B - 7.
- *
- * CALLS ASD, SPD.
- SNP SUBR
- SA5 PI
- ZR X5,SNP2 IF NEXT NUMBER IS ON DIRECTIVE CARD
- SA1 BPNA
- SA2 X5
- MX0 12
- BX3 X2-X1
- BX3 X0*X3
- SX1 B0+ PRESET NO MORE TO DUMP
- NZ X3,SNPX IF NO MORE TO DUMP
- SX6 X5+2
- SA6 A5 ADVANCE TABLE POINTER
- LX2 12 SET *PP* FROM TABLE ENTRY
- BX2 X0*X2
- LX2 12
- SX3 X2-2R00
- MX0 -3
- BX2 -X0*X3
- AX3 3
- BX6 X2+X3
- SNP1 RJ SPD SET UP PP/CPP/FLPP DUMP
- SX1 1 SET PPU/FLPP SELECTED
- EQ SNPX EXIT
- * SELECT NEXT PPU/FLPP FROM DIRECTIVE CARD.
- SNP2 SB7 0 ASSUME OCTAL BASE
- RJ ASD CONVERT NEXT NUMBER FROM DIRECTIVE
- SX1 B6+
- ZR X1,SNPX IF NO MORE PP/FLPP NUMBERS
- NZ X4,ERR6 IF CONVERSION ERROR
- EQ SNP1 SET NAME AND POSITION FILE
- SPA SPACE 4,17
- ** SPA - SELECT NEXT PPU TO ANALYZE.
- *
- * ENTRY (FI) = NAMED PP SEARCH INDEX.
- * (PI) = PP COMMUNICATION AREA SEARCH POINTER.
- * = 0, IF NEXT PP NUMBER IS ON DIRECTIVE.
- *
- * EXIT (X1) = 0, IF NO MORE PP-S TO DUMP.
- * (PI) = UPDATED, IF DUMPING ALL ACTIVE PP-S.
- * (PP) = NUMBER OF PP SELECTED.
- *
- * USES X - ALL.
- * A - 1, 2, 3, 4, 5, 6, 7.
- * B - 2, 3, 7.
- *
- * CALLS ASN, DXB, FPP.
- *
- * MACROS PRINT.
- SPA9.1 SX7 1 SET PROGRAM FOUND
- SA7 SPAA
- SPA10 SA6 PP SET PPU NUMBER
- SX1 1 SET PPU SELECTED
- SPA SUBR
- SA1 PI
- NZ X1,SPA4 IF DUMPING ALL ACTIVE PPU-S
- * SELECT NEXT PPU FROM DIRECTIVE CARD.
- SA1 FI
- NZ X1,SPA2 IF SEARCHING FOR NAMED PPUS
- SPA1 SB7 0 SET OCTAL BASE
- RJ ASN ASSEMBLE NEXT PP NUMBER
- SX1 B6
- ZR X1,SPAX IF END OF DIRECTIVE
- BX7 X7-X7
- SA6 SPAB STORE PP NUMBER/NAME
- SA7 SPAA CLEAR NAMED PPU FOUND FLAG
- BX5 X6
- RJ DXB CONVERT NUMBER TO OCTAL
- ZR X4,SPA10 IF NO CONVERSION ERROR
- * SEARCH FOR NAMED PPU.
- SPA2 SA4 SPAB READ NAME
- MX2 18
- BX2 -X2*X4
- NZ X2,ERR49 IF NAME LONGER THAN 3 CHARACTERS
- RJ FPP FIND PPU PROGRAM
- NZ X1,SPA9.1 IF PPU FOUND
- SA2 SPAA
- NZ X2,SPA1 IF PROGRAM ALREADY FOUND AND DISPLAYED
- SA1 SPAB GET PROGRAM NAME
- EQ ERR50 *PROGRAM NOT FOUND - XXX*
- * SELECT NEXT ACTIVE PPU.
- SPA4 SA3 F.TCMT
- SA2 PC GET PP COMMUNICATION AREA POINTER
- SA4 NP NUMBER OF PPUS IN THE SYSTEM
- SA5 IC
- ZR X5,SPA4.1 IF NOT DUMPING CPP-S
- LX4 3 SET CPP COMMUNICATION AREA POINTER
- IX2 X4+X2
- SA4 C4 NUMBER OF CPP COMMUNICATION AREAS
- SPA4.1 SB2 X1 SET SEARCH INDEX
- LX4 3
- SB3 X4
- SB3 B3+X2 LWA+1 OF COMMUNICATION AREA
- GE B2,B3,SPA7 IF END OF SEARCH
- SPA5 SA4 B2+X3 READ INPUT REGISTER
- MX0 18
- BX1 X0*X4
- ZR X1,SPA6 IF PPU NOT ACTIVE
- SA4 =3R***
- LX1 18 CHECK FOR UNAVAILABLE PPU
- BX6 X1-X4
- NZ X6,SPA8 IF PPU AVAILABLE
- SPA6 SB2 B2+10B ADVANCE SEARCH
- LT B2,B3,SPA5 IF NOT END OF PPU-S
- SPA7 MX1 0 SET END OF SEARCH
- BX6 X1
- SA6 A1+ CLEAR SEARCH INDEX
- JP SPAX EXIT
- SPA8 SX6 B2+ COMPUTE PPU NUMBER
- IX6 X6-X2
- AX6 3
- SX7 X6-12B
- NG X7,SPA9 IF NOT PPU-S 20-31
- SX6 X6+20B-12B CORRECT PPU NUMBER
- SPA9 SA6 PP STORE PPU NUMBER
- SX6 B2+10B
- SA6 A1 UPDATE SEARCH INDEX
- SX1 B1 SET PPU FOUND
- JP SPAX EXIT
- SPAA CON 0 PROGRAM FOUND FLAG
- SPAB BSS 1 PP NUMBER OR NAME READ FROM DIRECTIVE
- SPD SPACE 4,15
- ** SPD - SET UP PP/CPP/FLPP DUMP
- *
- * ENTRY (X6) = PP/CPP/FLPP NUMBER.
- *
- * EXIT DUMP FILE IS POSITIONED.
- * SUBTITLE LINE PRINTED.
- * PP OPERATING REGISTERS PRINTED, IF PRESENT.
- *
- * USES X - 1, 2, 3, 5, 6.
- * A - 0, 1, 2, 6.
- * B - 7.
- *
- * CALLS BPN, FPO, LDC, PDF, PPO, SFN, SLP, SSB.
- *
- * MACROS PRINT, SEARCH.
- SPD SUBR ENTRY/EXIT
- SA6 PP SAVE PP/CPP/FLPP NUMBER
- RJ PPO PACK PP OPERATING REGISTERS
- BX5 X6 SAVE REGISTERS NOT FOUND FLAG
- RJ BPN BUILD PP NAME
- SEARCH TDIR,X7,X0 FIND SELECTED PP
- ZR X2,ERR7 IF NOT FOUND
- SA2 A2+B1
- BX6 X2
- SA6 RI SET RANDOM INDEX
- SA1 BPNA+1
- RJ SFN SPACE FILL NAME
- SA6 SBTL1 SET IN SUBTITLE
- RJ LDC LIST DIRECTIVE CARD
- SA0 SPDA+2 SET LOGICAL PP IN MESSAGE
- RJ SLP
- ZR X6,SPD1 IF NO PP SWITCH
- PRINT (=2C )
- PRINT SPDA PRINT LOGICAL PP NUMBER
- PRINT (=2C )
- SPD1 SX3 B0+
- RJ PDF POSITION DUMP FILE
- ZR X5,SPDX IF NO OPERATING REGISTERS FOUND
- PRINT SPDB
- SX5 0 INITIALIZE LINE COUNTER
- SPD2 RJ SSB CLEAR PRINT STRING BUFFER
- SB7 PRBF
- RJ FPO FORMAT PP OPERATING REGISTERS
- ZR X6,SPDX IF FINISHED DISPLAYING REGISTERS
- PRINT CCCH,B7-CCCH
- SX5 X5+1 INCREMENT LINE COUNTER
- EQ SPD2 LOOP
- SPDA DATA C* (LOGICAL PPXX)*
- SPDB DATA C* P Q K A*
- SPP SPACE 4,10
- ** SPP - SET CYBER 170-8X5 PROCESSOR POINTERS.
- *
- * EXIT *S2MPS* - *S2JPS* PRESET.
- *
- * USES X - 1, 4, 5, 6, 7.
- * A - 1, 5, 6.
- * B - 6.
- *
- * CALLS RDR, SFR.
- SPP2 SX5 0 READ PROCESSOR SUMMARY STATUS
- RJ SFR SEARCH FOR REGISTER
- NG X1,SPPX IF NOT FOUND
- SA1 S2MPS
- BX6 X1
- LX7 59-63+58 C180 MONITOR MODE
- SA1 A1+B1 GET JPS
- SA6 A1+B1 SET S2LPS TO (S2MPS)
- NG X7,SPPX IF PROCESSOR IN MONITOR MODE
- BX6 X1
- SA6 A6 SET S2LPS TO (S2JPS)
- SPP SUBR ENTRY/EXIT
- SA1 .PMR
- RJ RDR LOCATE *PMR* RECORD
- ZR X2,SPPX IF RECORD NOT FOUND
- SA1 SPPB CPU NUMBER
- ZR X1,SPP0 IF CPU 0
- SA1 NR
- ZR X1,ERR6 IF NO OTHER CPU RECORDS
- RJ RDR POSITION TO NEXT CPU-S *PMR* RECORD
- SPP0 SA5 SPPA START OF TABLE
- SPP1 SB6 X5 ADDRESS TO SAVE REGISTER VALUE
- ZR X5,SPP2 IF END OF REGISTER
- AX5 30 REGISTER NUMBER
- RJ SFR SEARCH FOR REGISTER
- SA5 A5+B1
- NG X1,SPP1 IF REGISTER NOT FOUND
- MX4 -30
- BX6 -X4*X7 USE LOWER 30 BITS OF REGISTER
- SA6 B6
- JP SPP1 SEARCH FOR NEXT REGISTER
- SPPA BSS 0
- VFD 30//IOU/PMPS,30/S2MPS MONITOR PROCESS POINTER
- VFD 30//IOU/PSTL,30/S2STL SEGMENT TABLE LENGTH
- VFD 30//IOU/PSTA,30/S2STA SEGMENT TABLE ADDRESS
- VFD 30//IOU/PPTA,30/S2PTA PAGE TABLE ADDRESS
- VFD 30//IOU/PPTL,30/S2PTL PAGE TABLE LENGTH
- VFD 30//IOU/PPSM,30/S2PSM PAGE SIZE MASK
- VFD 30//IOU/PJPS,30/S2JPS JOB PROCESS STATE POINTER
- CON 0 END OF LIST
- SPPB CON 0 CPU NUMBER
- SPT SPACE 4,15
- ** SPT - SEARCH CYBER 170-8X5 PAGE TABLE.
- *
- * ENTRY ((B2)) = 12/0, 16/ASID, 32/BYTE OFFSET
- *
- * EXIT (BRMA) = REAL MEMORY ADDRESS.
- * (X2) = 0, IF PAGE ENTRY FOUND.
- * (X3) < 0, IF PAGE ENTRY IS VALID.
- * (A3) = *PTEVCUM*.
- *
- * USES X - 1, 2, 3, 4, 5, 6, 7.
- * A - 1, 2, 3, 6, 7.
- * B - 2, 3.
- *
- * CALLS NPE.
- SPT SUBR ENTRY/EXIT
- SA2 B2 GET SVA (ASID AND BYTE OFFSET)
- SA5 XM PAGE SIZE MASK
- MX3 -32
- BX6 -X3*X2 ISOLATE BYTE OFFSET
- SA6 BRMA
- AX2 32
- ZR X2,SPTX IF NO ASID SPECIFIED
- CX7 X5
- SB3 X7
- AX4 X6,B3 EXTRACT INFORMATION FOR HASH
- MX3 -6 GET RIGHTMOST SIX BITS FOR EXPANDED OFFSET
- BX5 -X3*X4
- BX7 -X5*X6 EXTRACT PAGE NUMBER
- AX7 9
- BX4 X2-X4
- LX2 22
- BX7 X2+X7 CREATE SVA
- BX6 X6*X5
- AX2 22+10 GET LEFTMOST SIX BITS OF ASID FOR OFFSET
- SA7 SPTA SAVE PAGE NUMBER + ASID
- SA6 A7+B1
- BX5 X5-X2
- LX5 16 POSITION EXPANDED OFFSET FIELD
- BX4 X4+X5
- LX4 4
- SPT1 RJ NPE FETCH NEXT PAGE ENTRY
- SA2 SPTA SVA OF PAGE TO FIND
- MX4 -22
- BX6 -X4*X5 EXTRACT RMA OF PAGE
- BX5 X4*X5
- LX5 -22
- BX2 X2-X5 COMPARE SVA-S
- LX6 9
- SA1 A2+B1 BYTE OFFSET INTO PAGE
- BX6 X6+X1 RMA OF PAGE
- SA6 BRMA
- ZR X2,SPTX IF PAGE FOUND
- LX4 X3,B1
- SX3 B0
- NG X4,SPT1 IF CONTINUE BIT IS SET
- JP SPTX RETURN WITH PAGE NOT FOUND
- SPTA CON 0
- SPTB CON 0
- SRA SPACE 4,11
- ** SRA - SET REFERENCE ADDRESS.
- *
- * ENTRY X6 = NEW REFERENCE ADDRESS.
- *
- * EXIT X6 = SBTL = REFERENCE ADDRESS FOR SUBTITLE.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS COD.
- SRA SUBR
- SA6 BA SET NEW REFERENCE ADDRESS
- SA1 =10000000B
- IX1 X1+X6 GUARANTEE LEADING ZEROS
- RJ COD CONVERT TO DISPLAY CODE
- MX0 42
- SA1 =3R
- LX4 6 DISCARD LEADING DIGIT
- BX6 X0*X4 EXTRACT RA
- BX6 X1+X6 SPACEFILL
- LX6 -6
- SA6 SBTL STORE IN SUBTITLE
- JP SRAX EXIT
- SRD SPACE 4,16
- ** SRD - SUPPRESS REPEATED DATA.
- *
- * ENTRY B5 = NUMBER OF WORDS TO CHECK, MAXIMUM = 20B.
- * X1 = DATA ADDRESS.
- * SRDA = MINUS, IF FIRST CALL.
- * = ZERO, PRINT DASHES IF REPEAT SENSED.
- * = NON-ZERO IF DASHES HAVE BEEN PRINTED,
- * EXIT IF REPEAT SENSED.
- *
- * EXIT X1.NE.0 IF REPEAT SENSED.
- *
- * SAVES X - NONE.
- * B - 1.
- * A - 0.
- *
- * CALLS MVE=,WOF.
- SRD SUBR
- SA3 SRDA
- NG X3,SRD3 IF FIRST CALL
- * COMPARE DATA WITH DATA FROM LAST CALL.
- SB2 0
- SRD1 SA2 X1+B2 READ DATA WORD
- SA3 SRDB+B2
- BX3 X2-X3
- ZR X3,SRD2 IF DATA IS SAME OR IS LOGICAL OPPOSITE
- JP SRD3
- SRD2 NG X3,SRD3 IF DATA IS LOGICAL OPPOSITE
- SB2 B2+1
- NE B2,B5,SRD1 IF MORE DATA TO CHECK
- * PROCESS REPEATED DATA.
- SA2 SRDA
- SX1 B1
- NZ X2,SRDX IF DASHES ALREADY PRINTED
- SX6 B1
- SA6 A2+ SET REPEAT IN PROCESS FLAG
- PRINT SRDC PRINT DASHES
- SX1 B1 SET REPEAT PROCESSED
- JP SRDX EXIT
- * SAVE CURRENT BLOCK TO COMPARE WITH NEXT.
- SRD3 MX6 0
- SA6 SRDA CLEAR REPEAT FLAG
- BX2 X1 SET DATA ADDRESS
- MOVE B5,X2,SRDB
- SX1 0 SET NO REPEAT SENSED
- JP SRDX EXIT
- SRDA BSS 1 REPEAT PROCESSING FLAG
- SRDB BSS 20B PREVIOUS DATA BLOCK BUFFER
- SRDC DATA 50H -------------------------------------------------
- DATA 50H--------------------------------------------------
- DATA 36C------------------------------------
- SSB SPACE 4,7
- ** SSB - SPACEFILL STRING BUFFER.
- *
- * USES B - 6, 7.
- *
- * CALLS SBL.
- SSB SUBR
- SB6 136
- SB7 PRBF
- RJ SBL STORE BLANKS
- JP SSBX EXIT
- SVA SPACE 4,10
- ** SVA - GET ASID FROM SEGMENT TABLE OF XP.
- *
- * ENTRY ((B2)+0) = PVA.
- * ((B2)+1) = EXCHANGE PACKAGE ADDRESS.
- *
- * EXIT (X6) = SVA.
- * (X1) = SVA.
- *
- * USES A - 1, 2, 6.
- * X - 1, 2, 6, 7.
- * B - 2.
- *
- * CALLS NXB, PVM.
- SVA SUBR ENTRY/EXIT
- SA1 B2 GET SEGMENT NUMBER
- SA2 B2+B1 GET EXCH PACKAGE ADDRESS
- MX6 -32
- BX7 -X6*X2
- BX6 -X6*X1
- SA6 SVAA SAVE BYTE OFFSET
- AX2 32
- AX1 32
- IX6 X2-X1
- NG X6,ERR44 IF BAD SEGMENT NUMBER
- LX1 3
- IX6 X7+X1 RMA OF SEGMENT DESCRIPTOR
- RJ PVM POSITION VIRTUAL MEMORY
- NZ X2,ERR30 IF PAGE NOT FOUND
- RJ NXB GET NEXT BYTE
- BX6 X1
- SA6 STSDE SEGMENT TABLE DESCRIPTOR ENTRY
- LX1 59-15
- PL X1,ERR44 IF VALID BIT NOT SET FOR SEGMENT
- RJ NXB GET ASID
- SA2 SVAA GET BYTE OFFSET
- ZR X1,ERR44 IF ASID IS ZERO
- LX1 32
- BX6 X1+X2 FORM SVA
- BX1 X6
- JP SVAX RETURN
- SVAA DATA 0 BYTE OFFSET
- SXH SPACE 4,14
- ** SXH - SET PPU XP HEADING IN PRINT STRING.
- *
- * ENTRY (B7) = PRINT STRING ADDRESS.
- * (PP) = NUMBER OF LAST PP PROCESSED.
- * (CPRA) = CURRENT XP ADDRESS.
- *
- * EXIT (X1) = 0 IF NO MORE TO PROCESS.
- * PP, CPRA, AND B7 ARE UPDATED.
- *
- * USES X - 1, 2, 3, 4, 6, 7.
- * A - 1, 2, 4, 6, 7.
- * B - 6, 7.
- *
- * CALLS BPN, CTS, SBL, UPS.
- SXH SUBR
- SA1 PP
- SA2 AC
- BX3 X2
- SA4 C4
- IX2 X2+X4 ADD CPP-S
- SX6 X1+B1 ADVANCE PPU NUMBER
- IX1 X6-X2
- ZR X1,SXHX IF NO MORE TO PROCESS
- SX4 X6+ SAVE PPU NUMBER
- SX7 X6-10
- NG X7,SXH4 IF NOT UPPER 10 PPUS
- SX3 X3-11
- PL X3,SXH1 IF 20 PPU SYSTEM
- SX6 X6+10 ADJUST FOR 10 PPU SYSTEM
- EQ SXH2 PROCESS *CPP-S*
- SXH1 SX7 X7-12B
- NG X7,SXH3 IF NOT A *CPP*
- SXH2 SX7 1
- SA7 IC
- SX6 X6-20-6 ADJUST FOR *CPP-S*
- SXH3 SX6 X6+6 ADJUST FOR PP 20 - 30
- SXH4 SA6 A1+ UPDATE PPU NUMBER
- RJ BPN BUILD PPU NAME
- SX6 X4+ RESET PPU NUMBER
- SA6 PP
- SA1 CPRA
- SB6 5
- SX6 X1+21B
- SA6 A1 UPDATE XP ADDRESS
- LX1 -15
- RJ CTS CONVERT XP ADDRESS
- SX6 1R
- SX7 1R-
- SA6 B7
- SB7 B7+B1
- SA7 B7
- SB7 B7+B1
- SA6 B7
- SB7 B7+B1
- SA2 BPNA+1 READ PP NAME
- SB6 5
- RJ UPS
- SA2 =10H XP
- SB6 3
- RJ UPS
- SB6 32
- RJ SBL
- SX1 1
- JP SXHX EXIT
- TOV SPACE 4,14
- ** TOV - PROCESS MANAGED TABLE OVERFLOW.
- *
- * ENTRY (B5) = -(NUMBER OF WORDS NEEDED).
- * (B6) = RETURN ADDRESS.
- * (FM) = CURRENT FIELD LENGTH.
- * (F.TEND) = CURRENT END OF TABLE SPACE.
- *
- * EXIT FM, F.TEND ARE UPDATED.
- *
- * USES X - 0, 1, 6, 7.
- * A - 1, 6, 7.
- *
- * MACROS MEMORY.
- TOV SX6 -B5 NUMBER OF WORDS NEEDED
- SX6 X6+1010B ROUND UP TO NEXT 1000 WORDS
- MX0 -9
- BX6 X0*X6
- SA1 FM READ CURRENT FIELD LENGTH
- IX7 X1+X6
- ZR X6,ERR19 IF (B5) DESTROYED
- SX6 X7-10B
- SA7 A1 UPDATE CURRENT FIELD LENGTH
- LX7 30
- SA6 F.TEND UPDATE END OF TABLE SPACE POINTER
- SA7 TOVA SET RFL REQUEST WORD
- MEMORY CM,TOVA,R
- JP B6 RETURN TO TABLE ALLOCATOR
- TOVA BSS 1 RFL PARAMETER
- TPF SPACE 4,15
- ** TPF - CYBER 180-990 PROCESSOR FILE.
- *
- * ENTRY ONLY IF ON A CYBER 180-990.
- *
- * EXIT DIRECTIVE PRORF PROCESSED; RECORDS PRF, PRG, AND
- * PRH DISPLAYED.
- *
- * USES X - 0, 1, 2, 3, 5, 6, 7.
- * A - 0, 1, 2, 3, 5, 6, 7.
- * B - 3, 6, 7.
- *
- * CALLS CDD, CEP, DHR, FBP, FPR, HTS, LDC, NXB, SSB, UPS.
- *
- * MACROS PRINT.
- TPF17 SA1 NR
- NZ X1,TPF1 IF MORE RECORDS TO DISPLAY
- TPF SUBR ENTRY/EXIT
- RJ CEP CHECK FOR EXTRANEOUS PARAMETERS
- TPF1 RJ LDC LIST DIRECTIVE CARD
- SA5 TPFA INITIALIZE RECORD TABLE POINTER
- SX6 1 DISPLAY RADIAL MCI
- * GET NEXT RECORD.
- TPF2 SA1 A5 SET/CLEAR RECORD POINTER
- MX0 18
- BX7 X1
- SA7 NR
- SA1 A5+TPFE-TPFA GET RECORD ID
- BX1 X0*X1
- RJ FPR FIND PROCESSOR RECORD
- ZR X2,ERR14 IF RECORD ID NOT IN DIRECTORY
- SA1 NR SAVE POINTER TO SECOND RECORD
- BX6 X1
- SA6 A5
- SA5 A5+B1 ADVANCE RECORD POINTER
- SX3 B0
- RJ FBP POSITION DUMP FILE
- PRINT (=2C )
- SA1 A5+TPFE-1-TPFA
- RJ SSB SPACE FILL STRING BUFFER
- SB3 X1
- JP B3 PROCESS RECORD
- * PROCESS *PRF* RECORD.
- TPF3 PRINT (=C* IDU CURRENT INSTRUCTION REGISTER*)
- SX6 -8
- SA6 FW
- TPF4 SX6 X6+8+1R0 DISPLAY REGISTER NUMBER
- SA6 PRBF+5
- SB7 PRBF+9
- RJ DHR DISPLAY REGISTER
- SA1 FW INCREMENT REGISTER NUMBER
- SX6 X1+B1
- SA6 A1
- NZ X6,TPF4 IF NOT THROUGH WITH FIRST SEVEN WORDS
- * PRINT NEXT HEADER.
- RJ SSB
- PRINT (=2C )
- PRINT (=C* EXECUTING WORDS OF SOFT CONTROL MEMORIES*)
- * PRINT NEXT 13 WORDS FROM PRF FILE.
- TPF5 SA1 FW
- SX6 X1+B1
- SA6 A1
- SA2 TPFB+X1 GET DESCRIPTOR
- ZR X2,TPF6 IF AT END OF TABLE
- SB7 PRBF
- SB6 7+2
- RJ UPS
- RJ DHR DISPLAY REGISTER
- JP TPF5 CHECK NEXT WORD
- * PRINT NEXT HEADER.
- TPF6 RJ SSB
- PRINT (=2C )
- PRINT (=C* ERROR INFORMATION TABLE *)
- * PRINT NEXT 16 WORDS FROM PRF FILE.
- SA0 16
- TPF7 SX6 A0
- BX6 -X6
- SA6 FW
- TPF8 SB7 PRBF+4
- SB6 2
- SX1 A0
- IX1 X1+X6
- RJ CDD
- BX2 X6
- LX2 59-11
- RJ UPS
- SB7 B7+3
- RJ DHR DISPLAY REGISTER
- SA1 FW
- SX6 X1+B1
- SA6 A1
- NG X6,TPF8 IF MORE WORDS TO DISPLAY
- EQ TPF2 GET NEXT RECORD
- * PROCESS INSTRUCTION BUFFER STACK (*PIS*) RECORD.
- TPF9 PRINT (=C* INSTRUCTION BUFFER STACK*)
- SA0 64
- EQ TPF7 DISPLAY RECORD
- * PROCESS PROCESSOR REGISTER UNIT (*PRG*) RECORD.
- TPF10 PRINT (=C* REGISTER UNIT*)
- SX6 B0
- SA6 FW INITIALIZE DIGIT
- SA6 A6+B1 INITIALIZE DESCRIPTOR SHIFT COUNT
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- TPF11 SA1 LW GET SHIFT COUNT
- SA2 TPFC GET DESCRIPTOR
- SB3 X1
- LX2 B3 POSITION DESCRIPTOR
- SB6 B1+B1
- SA1 A1-B1 GET DIGIT
- SB7 PRBF+3
- RJ UPS
- LX1 59-3
- SB6 B1
- RJ HTS
- SB7 B7+3
- RJ DHR DISPLAY REGISTER
- SA1 FW INCREMENT DIGIT
- SX6 X1+B1
- SA6 A1
- SX7 X6-16
- NZ X7,TPF11 IF LAST DIGIT .LE. F (HEX)
- SA1 A1+B1 INCREMENT SHIFT COUNT
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- SX6 X1+12
- SA6 A1
- SX6 X6-48
- ZR X6,TPF2 IF END OF REGISTERS
- SX2 X6+24
- SX6 8 SET FIRST DIGIT FOR *SA* OR *SX* REGISTERS
- SA6 FW
- NZ X2,TPF11 IF NOT *X* REGISTERS NEXT
- SA7 A6
- JP TPF11 CHECK NEXT WORD
- * PROCESS PROCESSOR HISTORY FILE (*PRH*) RECORD.
- TPF12 PRINT (=C* HISTORY FILE*)
- SX6 B0
- SA6 LW REGISTER NUMBER
- SA6 A6-B1 TABLE POINTER
- TPF13 SA2 FW
- SX7 X2-3
- NZ X7,TPF15 IF NOT END OF REGISTER
- SA2 A2+B1 REGISTER NUMBER
- ERRNZ LW-FW-1 CODE REQUIRES CONTIGUOUS WORDS
- SX6 X2+B1 INCREMENT REGISTER NUMBER
- SX3 X2-15
- ZR X3,TPF17 IF END OF TABLE
- SA6 A2
- SA7 A6-B1 RESET TABLE POINTER
- SB6 6
- TPF14 RJ NXB SKIP 6*16 BITS OF ZEROS
- SB6 B6-B1
- NZ B6,TPF14 IF NOT THROUGH SKIPPING
- TPF15 SA1 LW REGISTER NUMBER
- SB7 PRBF
- SB6 B1
- LX1 59-3
- RJ HTS HEX TO STRING
- SA1 FW TABLE POINTER
- SA2 TPFD+X1
- SX6 X1+B1 INCREMENT POINTER
- SA6 A1
- SB7 PRBF+3
- SB6 5+2
- RJ UPS
- SX5 3
- NZ X1,TPF16 IF *A* OR *P* REGISTER
- SX5 4
- TPF16 SB7 B7+2
- RJ NXB
- SB6 4
- LX1 59-15
- SX5 X5-1
- RJ HTS
- NZ X5,TPF16 IF MORE REGISTER DATA TO DISPLAY
- PRINT CCCH,B7-CCCH+1
- JP TPF13 READ NEXT WORD IN TABLE
- TPFA CON 0 SECOND *PRF* POINTER
- CON 0 SECOND *PIS* POINTER
- CON 0 SECOND *PRG* POINTER
- CON 0 SECOND *PRH* POINTER
- TPFB DATA C*ACU M2 *
- DATA C*ACU M3 *
- DATA C*ACU M4 *
- DATA C*BDP *
- DATA C* *
- DATA C*EPN SCM*
- DATA C*EPN ETM*
- DATA C*IDU CS *
- DATA C* *
- DATA C*INU MAP*
- DATA C*INU IBS*
- DATA C*LSU *
- DATA C*SVA BN *
- CON 0
- TPFC DATA C* ASA XSX*
- TPFD DATA C*X-REG*
- DATA C*A-REG*
- DATA C*P, N *
- CON 0
- TPFE VFD 18/3LPRF,24/0,18/TPF3
- VFD 18/3LPIS,24/0,18/TPF9
- VFD 18/3LPRG,24/0,18/TPF10
- VFD 18/3LPRH,24/0,18/TPF12
- TRT SPACE 4,15
- ** TRT - DUMP TRACK RESERVATION TABLE.
- *
- * ENTRY (BUF) = MST WORDS.
- *
- * EXIT BUF CONTAINS MST AND TRT.
- *
- * USES X - 1, 2, 3, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 2, 5, 6, 7.
- *
- * CALLS CTS, FDW, POM, P4F, SDI, SRD, SSB.
- *
- * MACROS GETCM, PRINT.
- TRT SUBR
- PRINT (=2C )
- PRINT (=C* TRACK RESERVATION TABLE*)
- PRINT (=2C )
- SA1 BUF+TRLL SET FWA OF TRT
- SX6 X1
- SA6 CPRA
- SA6 FW
- SB2 A6
- RJ POM POSITION TO TRT
- SA1 BUF+TDGL SET TRT LENGTH
- MX7 -12
- AX1 24
- BX7 -X7*X1
- SA7 LW SET TRT LWA+1
- GETCM BUF+MSTXL,X7 READ TRT INTO *BUF*
- MX7 1
- SA7 SRDA PRESET FIRST CALL TO *SRD*
- SX6 B0
- SA6 TRTA CLEAR LINK ORDINAL
- SA6 TRTB CLEAR DATA WORD ORDINAL
- SA6 SRDC+7 STOP DASHES AFTER 70 CHARACTERS
- RJ SSB CLEAR PRINT STRING
- TRT1 SA1 TRTB SET DATA ADDRESS
- SX1 X1+BUF+MSTXL
- SB5 1 SET WORD COUNT
- RJ SRD SENSE REPEAT DATA
- NZ X1,TRT2 IF REPEAT SENSED
- SA1 FW GET TRT ADDRESS
- SA2 TRTB
- IX1 X1+X2
- LX1 -18
- SB6 6
- SB7 PRBF
- RJ CTS CONVERT TRT ADDRESS
- SB7 B7+B1
- SX6 1R+
- SA6 B7
- SB7 B7+B1
- SA1 TRTA LINK ORDINAL
- LX1 -12
- SB6 4
- RJ CTS CONVERT LINK ORDINAL
- SB7 B7+2
- SA2 =4000005B
- SA1 TRTB READ TRT DATA WORD
- SA1 X1+BUF+MSTXL
- RJ FDW FORMAT DATA WORD
- SB7 B7+B1
- LX1 -12
- RJ P4F LIST FIRST TRACK DIRECT FILE FLAGS
- SB7 B7+1
- RJ P4F LIST INTERLOCK FLAGS
- SB7 B7+1
- RJ P4F LIST RESERVATION FLAGS
- SA2 TRTB RE-READ DATA WORD
- SA2 X2+BUF+MSTXL
- SB7 B7+2
- SB6 10
- RJ SDI SET DISPLAY CODE INTERPRETATION
- PRINT CCCH,B7-CCCH
- TRT2 SA1 TRTA
- SX6 X1+4
- SA6 A1+ UPDATE TRACK ORDINAL
- SA1 TRTB
- SX6 X1+B1
- SA6 A1+ UPDATE TRT ADDRESS
- SA2 LW
- IX3 X6-X2
- NG X3,TRT1 IF MORE TO DUMP
- SA1 SRDC+1
- BX6 X1
- SA6 SRDC+7 PRESET DASHES FOR 136 CHARACTERS
- JP TRTX EXIT
- TRTA BSS 1 TRACK LINK ORDINAL
- TRTB BSS 1 TRT DATA WORD ORDINAL
- UCS SPACE 4,15
- ** UCS - UNPACK CHARACTER STRING.
- * STRING IS DELIMITED BY 00 CHARACTER.
- *
- * ENTRY (A2) = FWA OF PACKED DATA.
- * (X2) = FIRST WORD OF PACKED DATA.
- * (B7) = FWA OF STRING BUFFER.
- *
- * EXIT (A2) = UPDATED.
- * (B7) = UPDATED.
- *
- * USES X - 0, 2, 6.
- * B - 5, 7.
- * A - 2, 6.
- UCS SUBR ENTRY/EXIT
- UCS1 SX0 77B CHARACTER MASK
- SB5 10 CHARACTER COUNT
- UCS2 LX2 6
- BX6 X0*X2
- ZR X6,UCSX IF DELIMITER
- SB5 B5-B1
- SA6 B7 STORE CHARACTER
- SB7 B7+B1 ADVANCE OUTPUT STRING POINTER
- NZ B5,UCS2 IF MORE CHARACTERS IN THIS WORD
- SA2 A2+1 READ NEXT WORD OF PACKED DATA
- EQ UCS1 CONTINUE UNPACKING CHARACTER STRING
- UPS SPACE 4,13
- ** UPS - UNPACK CHARACTERS TO STRING BUFFER.
- * COLONS ARE REPLACED WITH SPACES.
- *
- * ENTRY A2 = FWA OF PACKED BUFFER.
- * X2 = FIRST WORD OF PACKED DATA.
- * B6 = NUMBER OF CHARACTERS TO UNPACK.
- * B7 = FWA OF STRING BUFFER.
- *
- * EXIT A2 AND B7 ARE UPDATED.
- *
- * USES X - 0,2,6.
- * B - 5,6,7.
- * A - 2,6.
- UPS SUBR
- UPS1 SX0 77B CHARACTER MASK
- SB5 10 CHARACTER COUNTER
- UPS2 LX2 6
- BX6 X0*X2
- SB6 B6-B1 DECREASE COUNT
- SB5 B5-B1
- NZ X6,UPS3 IF NOT COLON CODE
- SX6 1R REPLACE COLON WITH SPACE
- UPS3 SA6 B7 STORE CHARACTER
- SB7 B7+B1 ADVANCE OUTPUT STRING POINTER
- ZR B6,UPSX IF NO MORE CHARACTERS TO UNPACK
- NZ B5,UPS2 IF MORE CHARACTERS IN THIS WORD
- SA2 A2+1 READ NEXT WORD OF PACKED DATA
- EQ UPS1 CONTINUE
- UPW SPACE 4,15
- ** UPW - UNPACK 60 BIT WORDS FROM 64 BIT WORDS.
- *
- * ENTRY FILE POSITIONED AT NEXT 16 WORD BLOCK.
- *
- * EXIT UBUF FILLED WITH 60 BIT WORDS.
- * (X1) = FILE STATUS.
- *
- * USES X - 2, 3, 6, 7.
- * A - 3, 6.
- * B - 2.
- *
- * MACROS READW.
- UPW SUBR ENTRY/EXIT
- READW S,UBUF,16
- SB2 B0
- MX2 4
- SA3 UBUF
- UPW1 BX6 -X2*X3
- SA3 A3+B1 GET SECOND PART OF WORD
- BX7 X2*X3
- BX6 X6+X7 FORM 60-BIT WORD
- SB2 B2+4
- LX6 B2
- SA6 A3
- ZR X2,UPWX IF BLOCK UNPACKED
- AX2 4
- EQ UPW1 EXTRACT NEXT 60-BIT WORD
- VOL SPACE 4,10
- ** VOL - CHECK RECORD FOR TAPE VOLUME HEADER.
- *
- * ENTRY FROM *DRT*.
- *
- * EXIT TO *OTH* IF NOT FIRST RECORD.
- * TO ERR46 IF FIRST RECORD.
- VOL BSS 0
- SA1 L.TDIR
- NZ X1,OTH IF NOT FIRST RECORD
- EQ ERR46 DISPLAY MESSAGE AND ABORT
- WBS SPACE 4,15
- ** WBS - WRITE BLOCK TO FILE *S*.
- *
- * ENTRY (BWCS) = NUMBER OF WORDS TO WRITE.
- *
- * EXIT (RWCS) = UPDATED.
- *
- * USES A - 1, 5, 6.
- * X - 1, 5, 6.
- *
- * MACROS WRITEW.
- WBS SUBR ENTRY/EXIT
- SA5 BWCS WORD COUNT
- WRITEW S,BUF,X5 WRITE BLOCK
- SA1 RWCS UPDATE RECORD SIZE
- IX6 X1+X5
- SA6 A1
- EQ WBSX RETURN
- BWCS CON 0 BLOCK WORD COUNT
- RWCS CON 0 RECORD WORD COUNT
- WOF SPACE 4,12
- ** WOF - WRITE LINE TO OUTPUT.
- *
- * ENTRY X1 = FWA OF LINE.
- * X2 = WORD COUNT IF LINE IS IN *S* FORMAT.
- * = 0 IF LINE IS IN *C* FORMAT.
- * CCCH = CARRIAGE CONTROL CHARACTER RIGHT JUSTIFIED.
- *
- * SAVES X - 0,5.
- * B - NONE.
- * A - 0,5.
- *
- * CALLS CDD.
- *
- * MACROS CLOCK, WRITEC, WRITES, WRITEW.
- WOF SUBR
- SA3 TF CHECK FOR TERMINAL OUTPUT
- ZR X3,WOF1 IF NOT TO TERMINAL
- ZR X2,WOF3 IF *C* FORMAT
- SB7 X2 CHARACTER COUNT
- SA2 OF
- WRITES X2,X1,B7
- SX6 1R
- SA6 CCCH
- EQ WOFX RETURN
- WOF1 SA3 LC ADVANCE LINE COUNT
- SX6 X3+B1
- SA6 A3
- SA4 PD NUMBER OF LINES PER PAGE
- IX7 X3-X4
- NG X7,WOF2 IF BOTTOM OF PAGE NOT REACHED
- BX6 X1 SAVE REQUEST
- LX7 X2
- SA6 WOFA
- SA7 A6+1
- SA1 PN ADVANCE PAGE NUMBER
- SX6 B1 RESET LINE COUNT
- SX7 X1+B1
- SA6 A3
- SA7 A1
- RJ CDD CONVERT PAGE NUMBER
- MX1 -12
- LX6 4*6 STORE PAGE NUMBER
- BX6 X1*X6
- SA6 PAGE
- CLOCK TIMM
- SA2 OF
- WRITEW X2,TITL,TITLL
- WRITEW X2,SBTL,SBTLL
- SA1 WOFA RESTORE REQUEST
- SA2 A1+1
- WOF2 NZ X2,WOF4 IF *S* FORMAT
- SA2 CCCH CARRIAGE CONTROL CHARACTER
- SA3 X1 READ FIRST WORD OF OUTPUT LINE
- MX4 6
- BX6 -X4*X3
- LX2 -6
- BX6 X6+X2 MERGE CARRIAGE CONTROL CHARACTER
- SA6 X1+ UPDATE OUTPUT LINE
- WOF3 SA2 OF
- WRITEC X2,X1
- JP WOFX EXIT
- WOF4 SB7 X2
- SA2 OF
- WRITES X2,X1,B7
- JP WOFX EXIT
- WOFA DATA 0,0
- XPH SPACE 4,13
- ** XPH - SET XP DIRECTIVE HEADER.
- *
- * ENTRY X5 = CURRENT CPU DIRECTORY WORD.
- * A5 = ADDRESS OF CURRENT CPU DIRECTORY WORD.
- * A0 = ADDRESS OF WHERE TO STORE EXCHANGE PACKAGE.
- * B7 = PRINT STRING ADDRESS.
- *
- * EXIT X6 = CPU ON/OFF FLAG.
- * A5 IS UPDATED TO RANDOM INDEX WORD.
- *
- * USES ALL REGISTERS.
- *
- * CALLS PDF,RDW=,UPS.
- XPH SUBR
- SA2 =21HHARDWARE REGISTERS -
- SB6 21
- RJ UPS
- SX6 X5
- SA5 A5+B1
- ZR X6,XPH1 IF CPU IS ON
- SA2 =3HOFF
- SB6 3
- RJ UPS
- JP XPH2
- XPH1 SA2 =2HON
- SB6 2
- RJ UPS
- BX6 X5
- SX3 B1
- SA6 RI
- RJ PDF POSITION TO EXCHANGE PACKAGE
- READW S,A0,20B
- XPH2 SA1 A5-B1
- SX6 X1 SET CPU ON/OFF
- JP XPHX EXIT
- TITLE TABLES.
- TLPP SPACE 4,10
- ** TLPP - TABLE OF LOGICAL PP NUMBERS.
- *
- * ONE WORD ENTRY FOR EACH PP CONTAINING THE CURRENT LOGICAL
- * PP NUMBER FOR THAT PP.
- TLPP CON 0 PP00
- CON 1 PP01
- CON 2 PP02
- CON 3 PP03
- CON 4 PP04
- CON 5 PP05
- CON 6 PP06
- CON 7 PP07
- CON 10B PP10
- CON 11B PP11
- CON 20B PP20
- CON 21B PP21
- CON 22B PP22
- CON 23B PP23
- CON 24B PP24
- CON 25B PP25
- CON 26B PP26
- CON 27B PP27
- CON 30B PP30
- CON 31B PP31
- SPACE 4
- USE END FORCE LITERALS
- IDENT
- SEG
- END BSS 0 END OF PROGRAM BINARY
- TITLE BUFFERS AND TABLE SPACE.
- BUFFERS SPACE 4
- ** MISCELLANEOUS WORKING BUFFERS.
- BUF BSS 1002B BINARY WORKING BUFFER
- BUFL EQU *-BUF
- USBB BSS 0 STRING BUFFER
- CHAR BSS 81 DIRECTIVE CARD STRING BUFFER
- PBUF BSS 10000B/5+1 PPU DATA BUFFER
- PBUFL EQU *-PBUF
- IUBUFL1 EQU 0#1000*16/60+4 4K PRINT BUFFER LENGTH
- IUBUFL2 EQU 0#2000*16/60+2 8K PRINT BUFFER LENGTH
- IUBUFL3 EQU 0#10600*16/60+2
- IUBUFL4 EQU 0#4000*16/60+2 16K PRINT BUFFER LENGTH
- BSS IUBUFL2-PBUFL
- MRBF BSS 8
- PSAV BSS PPSA
- CCCH BSS 1 CARRIAGE CONTROL CHARACTER
- PRBF BSS 136 OUTPUT PRINT STRING BUFFER
- SSBF BSS 0 SUBSYSTEM LOW CORE WORKING BUFFER
- SSBFL MAX /BIO/BUFR+1,/MTX/TVSP+1,/REM/TXORG+1
- BSS SSBFL
- UBUF BSS 16 UNPACK BUFFER
- SPACE 4
- ** FILE BUFFERS AND TABLE SPACE.
- IBUF BSS IBUFL DIRECTIVE INPUT FILE BUFFER
- JBUF BSS JBUFL ALTERNATE INPUT FILE BUFFER
- OBUF BSS OBUFL LIST OUTPUT FILE BUFFER
- ABUF BSS ABUFL ALTERNATE OUTPUT FILE BUFFER
- FBUF BSS FBUFL DUMP INPUT FILE BUFFER
- SBUF BSS SBUFL BINARY SCRATCH FILE BUFFER
- BBUF BSS BBUFL BML MAINTENANCE REGISTER FILE BUFFER
- MEML BSS TMIN+10B MANAGED TABLE SPACE
- MFL= BSS 0 MINIMUM FL NEEDED FOR EXECUTION
- ORG END
- SPACE 4
- END
cdc/nos2.source/opl871/dsdi.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator