Table of Contents

DSD

Table Of Contents

  • [00009] DSD - DYNAMIC SYSTEM DISPLAY.
  • [00011] DYNAMIC SYSTEM DISPLAY.
  • [00239] MACRO DEFINITIONS.
  • [00241] JMP - THREADED JUMP.
  • [00266] SCLASS - DEFINE SERVICE CLASS TABLE.
  • [00292] OVERLAY ORGANIZATION.
  • [00294] DSD USES THREE TYPES OF OVERLAYS - SYNTAX, DISPLAY,
  • [00315] ENTRY - DEFINE OVERLAY ENTRY POINT.
  • [00343] OVLC - GENERATE OVERLAY NAME FOR CM RESIDENT OVERLAY.
  • [00365] OVLF - GENERATE OVERLAY NAME FOR BEGINNING OF RPL OVERLAYS.
  • [00380] OVLN - GENERATE OVERLAY NAME.
  • [00413] COMMAND ENTRIES.
  • [00415] ENTER - SPECIFY COMMAND ENTRY.
  • [00509] TCEF - TABLE OF COMMAND ENTRY FORMATS.
  • [00583] MAIN PROGRAM.
  • [00585] MAIN DISPLAY LOOP.
  • [00651] MAIN SUBROUTINES.
  • [00652] CEQ - CHECK EQUIPMENT.
  • [00725] MASTER DISPLAY ROUTINES.
  • [00727] DKB - DISPLAY KEYBOARD BUFFER.
  • [00806] DLS - DISPLAY LEFT SCREEN DATA.
  • [00919] OVERLAY LOADER.
  • [00921] LDO - LOAD DISPLAY OVERLAYS.
  • [00976] LOV - LOAD OVERLAY.
  • [01139] USS - UPDATE SCREEN STATUS.
  • [01182] DISPLAY CONTROL TABLES.
  • [01184] TDSP - DEFINE DISPLAY TABLE ENTRIES.
  • [01197] TDSO - TABLE OF DISPLAY OVERLAY NAMES.
  • [01209] TJAZ - TABLE OF DISPLAY JSN-S.
  • [01282] KEYBOARD INPUT PROCESSING.
  • [01464] KRI - PROCESS KEYBOARD REPEAT INPUT.
  • [01497] CKS - CHECK SYNTAX.
  • [01620] ADS - ADVANCE SYNTAX.
  • [01680] LSC - LOAD SYNTAX CHARACTER.
  • [01706] KII - INCOMPLETE INPUT.
  • [01743] RKB - READ KEYBOARD.
  • [01755] SPECIAL CHARACTER PROCESSING.
  • [01757] CSC - CHECK SPECIAL CHARACTER.
  • [01780] TSFC - TABLE OF SPECIAL FIRST CHARACTERS.
  • [01793] TSCE - TABLE OF SPECIAL CHARACTER ENTRIES.
  • [01809] AVD - ADVANCE DISPLAY.
  • [01840] AMF - ADVANCE MEMORY FIELDS.
  • [01863] RDC - RELEASE DISPLAY CHANNEL.
  • [01871] ARV - ADVANCE RIGHT SCREEN BY VALUE, IF C, D, F, G, OR M
  • [01879] ALV - ADVANCE LEFT DISPLAY BY VALUE, IF C, D, F, G, OR M
  • [01926] KBK - PROCESS *BKSP*.
  • [01939] KLB - PROCESS *LEFT BLANK*.
  • [01951] KCR - PROCESS *CR*.
  • [01990] KRB - PROCESS *RIGHT BLANK* KEY.
  • [02019] KSP - PROCESS *SPACE*.
  • [02042] KEYBOARD RETURN PROCESSORS.
  • [02044] KIE - INCORRECT ENTRY RETURN.
  • [02050] KPC - KEYBOARD PARTIAL CLEAR RETURN.
  • [02058] KBR - NORMAL KEYBOARD RETURN.
  • [02076] KMS - KEYBOARD ERROR MESSAGE RETURN.
  • [02096] KBC - CLEAR KEYBOARD BUFFER.
  • [02145] C1D - CHECK FOR *1DS* CALL.
  • [02215] KIC - INCOMPLETE *CR*
  • [02240] SLS - SET LEFT SCREEN.
  • [02283] TLSD - TABLE OF LEFT SCREEN DISPLAYS.
  • [02309] RESIDENT COMMAND PROCESSORS.
  • [02434] RESIDENT COMMAND PROCESSING SUBROUTINES.
  • [02437] ADA - ADVANCE DISPLAY ADDRESSES.
  • [02466] ASD - ASSEMBLE DIGITS.
  • [02506] ASN - ASSEMBLE NAME.
  • [02542] AST - ACCESS SUBSYSTEM TABLES.
  • [02580] CJS - CHANGE JSN.
  • [02613] CLP - CALL PP.
  • [02652] CMM - CLEAR MONITOR MESSAGE.
  • [02666] IEE - INTERLOCK EJT ENTRY.
  • [02702] CMT - CHECK *MAGNET*.
  • [02735] DAL - DISPLAY ACCESS LEVEL STRING.
  • [02750] FSS - FIND SUBSYSTEM.
  • [02791] FTN - PROCESS MONITOR FUNCTION.
  • [02903] RES - RESET ADDRESS FIELDS TO 0, 10, 20, 30.
  • [02923] SJS - SEARCH FOR JSN IN EJT.
  • [02986] SJT - SEARCH JSN (*TJAZ*) TABLE.
  • [03009] TABLES AND CONSTANTS FOR OVERLAYS.
  • [03011] TDFC - DISPLAY FIELD CHANGE TABLE.
  • [03053] TDSA - *A* DISPLAY CONTROL TABLE.
  • [03070] TDSB - *B* DISPLAY CONTROL TABLE.
  • [03076] TDSC - *C* DISPLAY ADDRESS TABLE.
  • [03085] *D* DISPLAY ADDRESS TABLE.
  • [03096] TDSE - *E* DISPLAY CONTROL TABLE.
  • [03107] TDSF - *F* DISPLAY ADDRESS TABLE.
  • [03116] TDSG - *G* DISPLAY ADDRESS TABLE.
  • [03127] TDSH - *H* DISPLAY CONSTANT TABLE.
  • [03134] TDSI - *I* DISPLAY CONTROL TABLE.
  • [03141] TDSM - *M* DISPLAY ADDRESS TABLE.
  • [03150] TDTL - *O,TLD* DISPLAY CONTROL TABLE.
  • [03159] TDSO - *O,TST* DISPLAY CONTROL TABLE.
  • [03166] TDTS - *O,SCP* DISPLAY CONTROL TABLE.
  • [03178] TDSQ - *Q* DISPLAY CONSTANT TABLE.
  • [03187] TDSR - *R* DISPLAY CONTROL TABLE.
  • [03194] TDSS - *S* DISPLAY CONTROL TABLE.
  • [03208] TDSV - *V* DISPLAY CONTROL TABLE.
  • [03216] TJSC - TABLE OF SERVICE CLASS TYPES.
  • [03234] TGTF - TOGGLE FLAGS.
  • [03244] JDAT - JULIAN DATE.
  • [03255] FOLLOWING CODE WILL BE OVERLAID AFTER PRESET.
  • [03257] PRS - PRESET PROGRAM.
  • [03461] CTE - COUNT TAPE EQUIPMENT.
  • [03509] INITIALIZATION DISPLAYS.
  • [03652] TDLM - TABLE OF DAY LIMITS FOR MONTHS.
  • [03675] DTE - ENTER DATE.
  • [03750] KCR - SPECIAL *CR* EXIT.
  • [03767] RDT - READ DATE AND TIME FROM CTI CLOCK.
  • [03777] TIM - ENTER TIME.
  • [03804] ASC - ASSEMBLE CHARACTERS.
  • [03830] CDD - CONVERT DECIMAL DIGITS.
  • [03854] CSY - COPY SYNTAX.
  • [03888] DFP - DISPLAY FROM PPU CHARACTERS.
  • [03923] DMR - DISPLAY MESSAGE REQUESTED.
  • [03965] COPY - COPYRIGHT BUFFER.
  • [03974] DLS - DISPLAY LOAD STATUS.
  • [04115] TIKB - INITIAL KEYBOARD BUFFER IMAGE.
  • [04131] DISPLAY OVERLAY MACROS.
  • [04239] RELM - REDEFINE -M- INSTRUCTIONS FOR RELOCATABLE CODE.
  • [04279] RELO - REDEFINE I/O INSTRUCTIONS FOR RELOCATABLE CODE.
  • [04316] RELC - DEFINE RELOCATABLE FORM FOR -C- TYPE INSTRUCTIONS.
  • [04588] SDF - SET DISPLAY FWA.
  • [04693] SSR - SELECT SCREEN ROLLING.
  • [04716] MSG - DEFINE *A,O* DISPLAY EVENT DESCRIPTOR MESSAGE.
  • [04735] EEMSG - DEFINE *E,E* DISPLAY MESSAGE.
  • [04755] PMSG - DEFINE *E,P* DISPLAY MESSAGE AND ERROR MNEMONIC.
  • [04785] TFTN - TABLE OF MONITOR FUNCTIONS.
  • [05003] DMS - DISPLAY THE MESSAGE.
  • [05371] DSBI - TABLE OF CPU STATUS CODES.
  • [05390] DMS - DISPLAY CONTROL POINT MESSAGE.
  • [05449] PBD - PAGE THE *B* DISPLAY.
  • [05532] DXP - DISPLAY EXCHANGE PACKAGE.
  • [05585] D4F - DISPLAY 4 GROUPS OF 5 DIGITS.
  • [05690] D4F - DISPLAY 4 GROUPS OF 5 DIGITS.
  • [05968] DCD - DISPLAY CHANNEL DATA.
  • [06022] PEA - PAGE *E,A* DISPLAY.
  • [06276] DCD - DISPLAY CHANNEL DATA.
  • [06330] PEC - PAGE *E,C* DISPLAY.
  • [06619] ANL - ADVANCE TO NEXT LINE.
  • [06675] DEM - DISPLAY ERROR MESSAGE.
  • [06695] PEE - PAGE *E,E* DISPLAY.
  • [06915] PEF - PAGE *E,F* DISPLAY.
  • [07114] PEH - PAGE *E,H* DISPLAY.
  • [07446] PEM - PAGE *E,M* DISPLAY.
  • [07611] PEO - PAGE *E,O* DISPLAY.
  • [07795] DEO - DISPLAY EST ORDINAL WITH EQUIPMENT MNEMONIC.
  • [07826] DPI - DISPLAY PREVIEW INFORMATION.
  • [08216] PES - PAGE *E,C* DISPLAY.
  • [08539] TCVM - TABLE OF CONVERSION MODES.
  • [08551] TDEN - TABLE OF DENSITIES.
  • [08567] TFMT - TABLE OF FORMATS.
  • [08582] TSTM - TABLE OF STATUS MESSAGES.
  • [08598] PET - PAGE *E,T* DISPLAY.
  • [08889] LNB - LINK TO NEXT BYTE IN TRT.
  • [08916] PHD - PAGE *H* DISPLAY.
  • [09175] PID - PAGE *I* DISPLAY.
  • [09447] DTL - DISPLAY TITLE LINE.
  • [09532] RNW - READ NEXT WORD.
  • [09607] SMA - SET MEMORY ADDRESS.
  • [09668] SMC - SET MEDIMUM CHARACTER SIZE
  • [09836] RNW - READ NEXT WORD.
  • [09883] SMS - SET MEDIUM CHARACTER SIZE.
  • [10364] POD - PAGE *O* DISPLAY.
  • [10626] POD - PAGE *O* DISPLAY.
  • [10849] POD - PAGE *O* DISPLAY.
  • [11189] DOW - DISPLAY ONE WORD.
  • [11216] ISR - INITIALIZE SCR REGISTER.
  • [11243] ODW - OUTPUT DESCRIPTOR WORD TO S/C REGISTER.
  • [11259] RPR - READ P REGISTER.
  • [11287] PPD - PAGE *P* DISPLAY.
  • [11305] PRS - PRESET *P* DISPLAY.
  • [11595] TPHE - TABLE OF PUNCH EXTERNAL CHARACTERISTICS.
  • [11611] TPLE - TABLE OF PLOT EXTERNAL CHARACTERISTICS.
  • [11627] TPRE - TABLE OF PRINT EXTERNAL CHARACTERISTICS.
  • [11665] PQD - PAGE *Q* DISPLAY.
  • [11963] PRD - PAGE *R* DISPLAY.
  • [12277] TQUT - TABLE OF QUEUE TYPES.
  • [12286] TNSC - TABLE OF TWO-CHARACTER SERVICE CLASS TYPES.
  • [12294] PSD - PAGE *S* DISPLAY.
  • [12609] PTD - PAGE *T* DISPLAY.
  • [12625] TTA - SET TERMINAL TABLE ADDRESS.
  • [12764] ACA - ADD CM BUFFER ADDRESS.
  • [12773] BLD - BUILD BUFFER.
  • [12816] CBK - CHECK PP AT BREAKPOINT.
  • [12832] DCA - DISPLAY COMMUNICATIONS AREA WORD.
  • [12875] DPM - DISPLAY PP MEMORY.
  • [12910] DPN - DISPLAY PP NUMBER.
  • [12939] D4F - DISPLAY FOUR FIELDS.
  • [12964] PNL - POSITION DISPLAY TO NEXT LINE.
  • [12979] SPM - SAVE PP MEMORY.
  • [13250] FEM - FIND EXTENDED MEMORY EQUIPMENTS.
  • [13428] DCH - DISPLAY COLUMN HEADER.
  • [13484] DCS - DISPLAY CHANNEL STATUS.
  • [13553] PRS - PRESET *W,C* DRIVER.
  • [13755] DLINE - DELAY LINE FOR DISPLAY.
  • [13778] TDLN - TABLE OF DISPLAY LINES.
  • [13879] DTA - DISPLAY TABLE ADDRESS.
  • [13929] DPTE - MACRO TO DEFINE POINTER TABLE ENTRY.
  • [13951] TSTP - TABLE OF SYSTEM TABLE POINTERS.
  • [14199] CBS - CHECK FOR BOTTOM OF SCREEN.
  • [14229] DCD - DISPLAY CHARACTER DATA FOR SYSTEM CONTROL POINT ENTRY.
  • [14505] DCP - DISPLAY CP / PCP COUNT.
  • [14539] DPS - DISPLAY PP STATISTICS.
  • [14559] ODC - OUTPUT DISPLAY COORDINATES.
  • [14580] DPTE - MACRO TO DEFINE POINTER TABLE ENTRY.
  • [14692] DIR - DIRECTORY DATA.
  • [14774] TERMINATE DISPLAY OVERLAYS.
  • [14806] COMMAND PROCESSING OVERLAY MACROS.
  • [14808] COMMAND - BEGIN COMMAND OVERLAY.
  • [14840] CMDEND - END COMMAND OVERLAY.
  • [14874] SYSTEM SYNTAX TABLE - CHARACTERS A - B.
  • [14919] SYSTEM SYNTAX TABLE - CHARACTER C.
  • [15000] SYSTEM SYNTAX TABLE - CHARACTER D.
  • [15002] NOTE - THIS OVERLAY SHOULD BE CM RESIDENT (FOR
  • [15049] CCH - CHECK FOR CONCURRENT CHANNELS.
  • [15064] CLS - CHECK LOCK STATUS IF SECURED SYSTEM.
  • [15083] SYSTEM SYNTAX TABLE - CHARACTERS E - J.
  • [15085] NOTE - THIS OVERLAY SHOULD BE CM RESIDENT (FOR
  • [15148] SYSTEM SYNTAX TABLE - CHARACTERS K - N.
  • [15206] SYSTEM SYNTAX TABLE - CHARACTERS O - P.
  • [15242] SYSTEM SYNTAX TABLE - CHARACTERS Q - R.
  • [15287] CLS - CHECK LOCK STATUS IF SECURED SYSTEM.
  • [15306] SYSTEM SYNTAX TABLE - CHARACTER S.
  • [15363] SYSTEM SYNTAX TABLE - CHARACTER T.
  • [15399] CTB - CHECK FOR TRACE BLOCK.
  • [15421] SYSTEM SYNTAX TABLE - CHARACTERS U - X.
  • [15423] NOTE - THIS OVERLAY SHOULD BE CM RESIDENT (FOR
  • [15464] CCH - CHECK FOR CONCURRENT CHANNELS.
  • [15736] SVF - SET STATUS IN *EICB*.
  • [15975] GCA - GET CM DISPLAY ADDRESS.
  • [16016] GCP - GET CPA ADDRESS.
  • [16098] ADV - ADVANCE/DECREMENT ADDRESS.
  • [16165] ASA - ASSEMBLE ADDRESS.
  • [16233] GCA - GET CM DISPLAY ADDRESS.
  • [16330] ADV - ADVANCE/DECREMENT ADDRESS.
  • [16397] ASA - ASSEMBLE ADDRESS.
  • [16465] GCA - GET CM DISPLAY ADDRESS.
  • [16594] ADV - ADVANCE/DECREMENT ADDRESS.
  • [16653] ASR - ASSEMBLE ADDRESS AND READ EXTENDED MEMORY.
  • [16866] PSC - PRESET CHANNELS.
  • [16906] TILC - TABLE OF INCORRECT CHANNELS.
  • [16915] TPSC - TABLE OF CHANNEL INSTRUCTIONS.
  • [17382] PJS - PROCESS JSN.
  • [17513] CSP - CALL *1DS*.
  • [17626] TIET - TABLE OF INCORRECT EQUIPMENTS TO *ASSIGN*.
  • [17647] CSP - CALL *1DS*.
  • [17782] SUBSYST - GENERATE SUBSYSTEM TABLE.
  • [17808] ISS - INITIATE SUBSYSTEM.
  • [17835] PPN - PACK PROCEDURE NAME.
  • [18016] PTM - PROCESS INTERACTIVE MESSAGE.
  • [18036] CTS - CHECK INTERACTIVE STATUS.
  • [18178] SIO - SET *BATCHIO* FLAG.
  • [18446] REE - READ EST ENTRY.
  • [18802] CME - CHECK MASS STORAGE EQUIPMENT.
  • [18829] CMS - CHECK FOR MASS STORAGE EQUIPMENT.
  • [18948] RSJ - REQUEST SYSTEM JOB.
  • [19210] TDLY - TABLE OF DELAY ENTRY ADDRESSES.
  • [19432] ENABLE SYNTAX TABLE - CHARACTERS A - P.
  • [19473] ENABLE SYNTAX TABLE - CHARACTERS Q - Z.
  • [19497] DISABLE SYNTAX TABLE - CHARACTERS A - P.
  • [19535] DISABLE SYNTAX TABLE - CHARACTERS Q - Z.
  • [19559] ESB - ENTER STATUS BIT.
  • [19940] TMB - TOGGLE *MSAL* BITS.
  • [20158] TNSC - TABLE OF TWO-CHARACTER SERVICE CLASS TYPES.
  • [20226] TQPN - TABLE OF *QUEUE* PARAMETERS.
  • [20245] AOD - ASSEMBLE OCTAL DIGITS.
  • [20273] SPT - SEARCH PARAMETER TABLE.
  • [20301] TQUT - TABLE OF QUEUE TYPES.
  • [20866] PTC - PROCESS TAPE EQUIPMENT COMMAND.
  • [20917] AVS - ASSEMBLE VSN.
  • [21031] TBLM - GENERATE TABLE OF DEVICES WITH PARITY PROTECTION.
  • [21126] CMS - CHECK FOR MASS STORAGE EQUIPMENT.
  • [21290] CCH - CHECK FOR VALID CHANNEL.
  • [21480] CEN - CHECK EST ORDINAL.
  • [21552] C1R - CALL *1DS* AND REENTER.
  • [21674] ADD - ASSEMBLE DECIMAL DIGITS.
  • [21781] SOT - SEARCH FOR VALID ORIGIN TYPE.
  • [21813] SPT - SEARCH PARAMETER TABLE.
  • [21841] TCOT - TABLE OF *CLASS* ORIGIN TYPES.
  • [21852] TSCM - TABLE OF SERVICE CLASS MASK BITS.
  • [21866] TNSC - TABLE OF TWO-CHARACTER SERVICE CLASS TYPES.
  • [21933] SPT - SEARCH PARAMETER TABLE.
  • [21961] TSCM - TABLE OF SERVICE CLASS MASK BITS.
  • [21977] TNSC - TABLE OF TWO-CHARACTER SERVICE CLASS TYPES.
  • [22105] TTHR - TABLE OF THRESHOLDS.
  • [22308] SST - SEARCH STRING TABLE.
  • [22339] TBDP - TABLE OF BOUNDS PARAMETERS.
  • [22347] TURE - UNIT RECORD EQUIPMENT MNEMONICS.
  • [22501] SPT - SEARCH PARAMETER TABLE.
  • [22529] TBDP - TABLE OF BOUNDS PARAMETERS.
  • [22537] TJOT - TABLE OF JOB ORIGIN TYPES.
  • [22696] ADD - ASSEMBLE TWO DECIMAL DIGITS.
  • [22731] AVA - ASSEMBLE AND VALIDATE ADDRESS.
  • [22914] MNF - PP REQUEST HASHING MACRO.
  • [22937] MTF - MONITOR REQUEST HASHING MACRO.
  • [23184] AAD - ASSEMBLE ADDRESS OF *CPUMTR* BREAKPOINT PARAMETERS.
  • [23198] SDA - SET *C* DISPLAY ADDRESS.
  • [23366] PBC - PROCESS PP BREAKPOINT COMMANDS.
  • [23520] SCA - SET PP COMMUNICATION AREA ADDRESSES.
  • [23721] CKB - CHECK PP AT BREAKPOINT.
  • [23906] ADD - ASSEMBLE DECIMAL DIGITS.
  • [23928] DTEA - DAY LIMITS FOR MONTH.
  • [23951] TERMINATE OVERLAYS.

Source Code

DSD.txt
  1. IDENT DSD,0
  2. PERIPH J
  3. BASE MIXED
  4. SST CP,DLYA,EXR,FTN,.BLI,.EST,CMEI
  5. SYSCOM DEFINE JOB COMMUNICATION AREA SYMBOLS
  6. QUAL$ EQU 1 DEFINE UNQUALIFIED COMMON DECKS
  7. *COMMENT DSD - SYSTEM DISPLAY.
  8. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  9. TITLE DSD - DYNAMIC SYSTEM DISPLAY.
  10. SPACE 4,10
  11. *** DSD - DYNAMIC SYSTEM DISPLAY.
  12. *
  13. * G. R. MANSFIELD. 70/12/13.
  14. * C. B. LOSCHEIDER. 78/09/11.
  15. SPACE 4,10
  16. *** DSD IS LOADED IN PP 1 AT DEAD START TIME AND
  17. * REMAINS THERE THROUGHOUT EXECUTION OF THE SYSTEM.
  18. * DSD PROVIDES AN OVERALL STATUS DISPLAY FOR ALL CURRENTLY
  19. * RUNNING JOBS VIA THE 6612 DISPLAY. THE KEYBOARD OF THE
  20. * 6612 IS MONITORED BY DSD AND IS USED FOR OPERATOR
  21. * COMMUNICATION TO THE SYSTEM.
  22. *
  23. * *DSD* INPUT REGISTER.
  24. *
  25. *T, 18/ *DSD*,6/ SC,6/ LDS,6/ RDS,12/ LEJT,12/ REJT
  26. *
  27. * SC SYSTEM CONTROL POINT NUMBER.
  28. * LDS LEFT SCREEN DISPLAY NAME.
  29. * RDS RIGHT SCREEN DISPLAY NAME.
  30. * LEJT EJT ORDINAL OF JOB ASSIGNED TO LEFT SCREEN.
  31. * REJT EJT ORDINAL OF JOB ASSIGNED TO RIGHT SCREEN.
  32. SPACE 4,15
  33. ** PROGRAMMING CONSIDERATIONS.
  34. *
  35. * BECAUSE THE LAST DISPLAY OVERLAY AND THE LAST
  36. * COMMAND OVERLAY ARE CHECKED FOR OVERFLOW IN A SPECIAL CASE,
  37. * THE FOLLOWING CONDITIONS MUST BE MAINTAINED TO ALLOW NEW
  38. * OVERLAYS TO REACH THE LARGEST POSSIBLE SIZE.
  39. * 1. THE *Z DISPLAY* OVERLAY MUST BE THE LAST DISPLAY OVERLAY.
  40. * 2. THE *ENTER DATE* OVERLAY MUST BE THE LAST COMMAND OVERLAY.
  41. *
  42. * FOR INFORMATION ON HOW TO SET UP A CALL
  43. * TO *1DS*, SEE COMMON DECK *COMS1DS*.
  44. SPACE 4,10
  45. *CALL COMDMAC
  46. *CALL COMPMAC
  47. *CALL COMSCPS
  48. *CALL COMSDST
  49. *CALL COMSEJT
  50. *CALL COMSHIO
  51. *CALL COMSLFD
  52. *CALL COMSMMF
  53. *CALL COMSMSC
  54. *CALL COMSMLS
  55. *CALL COMSPIM
  56. *CALL COMSPRD
  57. *CALL COMSSSD
  58. *CALL COMSSSJ
  59. SPACE 4,10
  60. **** DIRECT LOCATION ASSIGNMENTS.
  61.  
  62.  
  63. ORG 0
  64.  
  65. T0 CON /DSD/PRS-1 TEMPORARY STORAGE
  66. T1 CON 0
  67. T2 CON 0
  68. T3 CON 0
  69. T4 CON 0
  70. T5 CON 0
  71. T6 CON 0
  72. T7 CON 0
  73.  
  74. CM VFD 60/0 CM WORD BUFFER
  75. LA CON 0 OVERLAY LOAD ADDRESS
  76. XC CON CH01 X-COORDINATE
  77. YC CON LN02 Y-COORDINATE
  78.  
  79. AB VFD 60/0 ASSEMBLY BUFFER
  80. AR CON 0 CHANNEL *A* REGISTER
  81. LS CON 0 LEFT SCREEN DISPLAY
  82. RS CON 0 RIGHT SCREEN DISPLAY
  83.  
  84. TM VFD 60/0 TIME OF DAY (PRESET ONLY)
  85. SR EQU TM SCRATCH (DISPLAY AND COMMAND OVERLAYS)
  86. * (SR DESTROYED BY *MONITOR* OR *EXECUTE*)
  87. DT VFD 60/0 DATE (PRESET, DATE, AND TIME OVERLAYS)
  88. SH EQU DT SCRATCH (DISPLAY AND COMMAND OVERLAYS)
  89. LG CON 0 LOGGING ONLY FLAG
  90. CY CON 0 CYCLE COUNT
  91. ID CON 0 MESSAGE BUFFER INTERLOCK FLAG WITH *1DS*
  92.  
  93. NC CON 0 NUMBER OF CONTROL POINTS
  94. CN CON 0 CONTROL POINT NUMBER OR DISPLAY NAME
  95. CP CON 0 CONTROL POINT ADDRESS
  96.  
  97. SP VFD 60/0 SPECIAL PARAMETER WORD FOR *1DS* CALL
  98. SF CON 0 SECURITY FLAG
  99. DK CON 0 DISPLAY KEYBOARD CONTROL
  100. T8 CON 0 SCRATCH
  101. T9 CON 0 SCRATCH
  102.  
  103. KI CON 0 KEYBOARD INDEX
  104. KM CON 0 KEYBOARD MESSAGE
  105. KE CON 0 PRESET KEYBOARD ENTRY
  106. KR CON 0 KEYBOARD READY FLAG
  107. CA CON 0 CHARACTER ADDRESS
  108. LK CON 0 LOCK FLAG
  109. ST CON 0 STEP FLAG
  110.  
  111. ON CON 1 CONSTANT 1
  112. HN CON 100 CONSTANT 100
  113. TH CON 1000 CONSTANT 1000
  114. TR CON 3 CONSTANT 3
  115. EI CON 0 EJT ENTRY INTERLOCK
  116. IA CON 0
  117. OA CON 0
  118. MA CON 0
  119. ****
  120. SPACE 4,10
  121. * ASSEMBLY CONSTANTS.
  122.  
  123.  
  124. ILSP EQU 1RA INITIAL LEFT SCREEN DISPLAY
  125. IRSP EQU 1RB INITIAL RIGHT SCREEN DISPLAY
  126. EWAL EQU 100 ADDRESS OF ADDRESS LIST FOR *ECSM* WRITE
  127. ERAL EQU 102 ADDRESS OF ADDRESS LIST FOR *ECSM* READ
  128. OMT$ EQU 1 OMIT MANAGED TABLES LOGIC FROM *DCM*
  129. MX3C EQU 1R5 MAXIMUM THIRD CHARACTER IN OVERLAY NAMES
  130. SPACE 4,10
  131. * DEFINE QUAL BLOCK ORDER.
  132.  
  133.  
  134. QUAL DISPLAY
  135. QUAL COMMAND
  136. QUAL DSD
  137. QUAL KEYBOARD
  138. QUAL RES
  139. QUAL PRESET
  140. QUAL BIO
  141. QUAL REM
  142. QUAL
  143. SPACE 4,10
  144. * SUB-SYSTEM COMMON DECKS.
  145.  
  146.  
  147. QUAL BIO
  148. *CALL COMSBIO
  149. QUAL *
  150.  
  151. QUAL CPS
  152. *CALL COMSCPS
  153. QUAL *
  154.  
  155. QUAL DSL
  156. *CALL COMSDSL
  157. QUAL *
  158.  
  159. * UNQUALIFIED *COMSDSL* SYMBOLS.
  160.  
  161. CH EQU /DSL/CH
  162. SC EQU /DSL/SC
  163. DSCP EQU /DSL/DSCP
  164.  
  165. *CALL COMSEVT
  166.  
  167. QUAL IOU
  168. *CALL COMSIOU
  169. QUAL *
  170.  
  171. * UNQUALIFIED *COMSIOU* SYMBOLS.
  172.  
  173. MR EQU /IOU/MR
  174. MX EQU /IOU/MX
  175. MXDM EQU /IOU/MXDM
  176. MXPT EQU /IOU/MXPT
  177.  
  178. QUAL JIO
  179. *CALL COMSJIO
  180. QUAL *
  181.  
  182. *CALL COMSLFD
  183. *CALL COMSLSD
  184. QUAL MSP
  185. *CALL COMSMSP
  186. QUAL *
  187. *CALL COMSMST
  188. *CALL COMSMTR
  189.  
  190. QUAL MTX
  191. *CALL COMSMTX
  192. QUAL *
  193.  
  194. *CALL COMSPRD
  195.  
  196. QUAL REM
  197. *CALL COMSREM
  198. QUAL *
  199.  
  200. QUAL RSX
  201. *CALL COMSRSX
  202. QUAL *
  203.  
  204. QUAL SCR
  205. *CALL COMSSCR
  206. QUAL *
  207.  
  208. QUAL 1DS
  209. *CALL COMS1DS
  210. QUAL *
  211. MICROS TITLE MICRO DEFINITIONS.
  212. ** DEFINE MICROS OF THE DISPLAY TITLES.
  213.  
  214.  
  215. AHDR MICRO 1,,$A. DAYFILES.$
  216. BHDR MICRO 1,,$B. SYSTEM STATUS.$
  217. CHDR MICRO 1,,$C. CENTRAL MEMORY.$
  218. DHDR MICRO 1,,$D. CENTRAL MEMORY.$
  219. EHDR MICRO 1,,$E. EQUIPMENT STATUS.$
  220. FHDR MICRO 1,,$F. CENTRAL MEMORY.$
  221. GHDR MICRO 1,,$G. CENTRAL MEMORY.$
  222. HHDR MICRO 1,,$H. SYSTEM FILES.$
  223. IHDR MICRO 1,,$I. BIO STATUS.$
  224. JHDR MICRO 1,,$J. JOB STATUS.$
  225. KHDR MICRO 1,,$K. CPU PROGRAMMABLE.$
  226. LHDR MICRO 1,,$L. CMR BUFFERS.$
  227. MHDR MICRO 1,,$M. EXTENDED MEMORY.$
  228. OHDR MICRO 1,,$O. TAF STATUS.$
  229. PHDR MICRO 1,,$P. PP REGISTERS.$
  230. QHDR MICRO 1,,$Q. QUEUE STATUS.$
  231. RHDR MICRO 1,,$R. ROLLOUT STATUS.$
  232. SHDR MICRO 1,,$S. SYSTEM CONTROL.$
  233. THDR MICRO 1,,$T. INTERACTIVE STATUS.$
  234. UHDR MICRO 1,,$U. INSTALLATION USE.$
  235. VHDR MICRO 1,,$V. PP BREAKPOINT.$
  236. WHDR MICRO 1,,$W. SYSTEM INFORMATION.$
  237. YHDR MICRO 1,,$Y. MONITOR FUNCTIONS.$
  238. ZHDR MICRO 1,,$Z. DIRECTORY.$
  239. TITLE MACRO DEFINITIONS.
  240. MACROS SPACE 4,10
  241. ** JMP - THREADED JUMP.
  242. *
  243. * JMP ADDR
  244. *
  245. * ENTRY *ADDR* = JUMP ADDRESS.
  246. *
  247. * NOTE - THIS MACRO IS DESIGNED FOR JUMPING BACKWARDS ONLY.
  248.  
  249.  
  250. JMP MACRO ADDR
  251. MACREF JMP
  252. .A IF -DEF,/"QUAL"/.ADDR
  253. NOREF .ADDR
  254. .B IF ABS,ADDR-* INSURE SIMILAR TYPES
  255. .ADDR MAX ADDR,*-40
  256. .A ENDIF
  257. .B IFGT .ADDR,*-40
  258. UJN .ADDR
  259. .ADDR SET *-1
  260. .B ELSE
  261. .ADDR SET *
  262. LJM ADDR
  263. .B ENDIF
  264. JMP ENDM
  265. SCLASS SPACE 4,15
  266. ** SCLASS - DEFINE SERVICE CLASS TABLE.
  267. *
  268. * SCLASS NM,MN,DF,ST,TX
  269. *
  270. * ENTRY *NM* = SERVICE CLASS NAME.
  271. * *MN* = TWO CHARACTER MNEMONIC.
  272. * *DF* = DAYFILE MESSAGE CHARACTER.
  273. * *ST* = SHORT TEXT FOR *QFTLIST*.
  274. * *TX* = TEXT OF SERVICE CLASS NAME FOR BANNER PAGE.
  275. *
  276. * NOTE - THE CALL TO *COMSSCD* MUST FOLLOW THE DEFINITION OF
  277. * THIS MACRO.
  278. SCLASS SPACE 4,10
  279. PURGMAC SCLASS
  280.  
  281. SCLASS MACRO NM,MN,DF,ST,TX
  282. .A IFC NE,$NM$SSSC$
  283. .SCL RMT
  284. INDEX NM,MN_MK TX
  285. .SCL RMT
  286. .A ENDIF
  287. SCLASS ENDM
  288.  
  289.  
  290. SCL$ EQU 0 ONLY PROCESS CLASSES WITH JCB-S
  291. *CALL COMSSCD
  292. TITLE OVERLAY ORGANIZATION.
  293. OVERLAYS SPACE 4,15
  294. ** DSD USES THREE TYPES OF OVERLAYS - SYNTAX, DISPLAY,
  295. * AND COMMAND.
  296. * THE FOLLOWING MACROS FACILITATE THE ORGANIZATION AND
  297. * COMMUNICATION BETWEEN OVERLAYS AND THE MAIN PROGRAM.
  298. *
  299. * OVERLAYS MAY RESIDE IN THE *RPL* OR THE *PLD*. FOR THOSE
  300. * OVERLAYS WHICH RESIDE IN THE *PLD*, *DSD* CALLS *1DL* TO
  301. * PROCESS THE PHYSCAL LOAD OF THE OVERLAYS.
  302. *
  303. * DISPLAY OVERLAYS ARE WRITTEN AS LOCATION FREE ROUTINES SINCE
  304. * TWO MUST RESIDE IN DSD FOR THE TWO DISPLAY SCREENS.
  305. * SYNTAX AND COMMAND OVERLAYS ARE ASSEMBLED AS ABSOLUTE
  306. * ROUTINES.
  307. *
  308. * BY SPECIFYING A PARAMETER ON THE *DISPLAY* OR *COMMAND*
  309. * MACRO, SELECTED OVERLAYS MAY AUTOMATICALLY BE MADE CM
  310. * RESIDENT. OVERLAYS MAY ALSO BE MADE CM RESIDENT VIA
  311. * *LIBDECK* ENTRIES. THIS ALLOWS SELECTED OVERLAYS TO BE
  312. * MADE CM RESIDENT FOR DEBUGGING OR ON CERTAIN CONFIGURATIONS
  313. * BUT BE DISK RESIDENT IN OTHER SITUATIONS.
  314. ENTRY SPACE 4,10
  315. ** ENTRY - DEFINE OVERLAY ENTRY POINT.
  316. *
  317. *
  318. * ENTRY NAME,D
  319. *
  320. * ENTRY (NAME) = NAME OF ENTRY POINT.
  321. * (D) IF PRESENT, DEFINES DISPLAY OVERLAY ENTRY.
  322. * POINT IS THE CURRENT VALUE OF THE ORIGIN COUNTER.
  323. * EXIT (NAME) = ADDRESS + OVERLAY NUMBER * 10000B.
  324.  
  325.  
  326. PURGMAC ENTRY
  327.  
  328. ENTRY MACRO NAME,D
  329. ERRNG M. *ENTRY* IS NOT DEFINED FOR *RPL* OVERLAYS
  330. IFC NE,*D**
  331. RMT
  332. QUAL DISPLAY
  333. NAME EQU M.*10000B+/DSD"M."/NAME
  334. QUAL *
  335. RMT
  336. ELSE 4
  337. NAME BSS 0
  338. QUAL COMMAND
  339. NAME EQU M.*10000B+/DSD"M."/NAME
  340. QUAL *
  341. ENDM
  342. OVLC SPACE 4,10
  343. ** OVLC - GENERATE OVERLAY NAME FOR CM RESIDENT OVERLAY.
  344. *
  345. *
  346. * OVLC
  347. *
  348. * EXIT ("M.") = LAST TWO CHARACTERS OF OVERLAY NAME.
  349. * ("N.") = LAST TWO CHARACTERS OF OVL NAME//OVL NUMBER.
  350. * (M.) = OVERLAY NUMBER.
  351.  
  352.  
  353. OVLC MACRO
  354. C. SET C.+1
  355. M. SET C./MX3C
  356. P. MICRO M.,1,/ EFG/
  357. M. SET C.-M.*MX3C
  358. M. MICRO M.+1,1, ABCDEFGHIJKLMNOPQRSTUVWXYZ012345
  359. M. MICRO 1,2, "P.""M."
  360. M. SET C.
  361. N. OCTMIC M.,3
  362. N. MICRO 1,,/"M." ("N.")/
  363. ENDM
  364. OVLF SPACE 4,10
  365. ** OVLF - GENERATE OVERLAY NAME FOR BEGINNING OF RPL OVERLAYS.
  366. *
  367. *
  368. * OVLF
  369. *
  370. * EXIT ("N.") = ("M.") = *TA*.
  371. * (M.) = -1.
  372.  
  373.  
  374. OVLF MACRO
  375. M. MICRO 1,, TA
  376. N. MICRO 1,, TA
  377. M. SET -1
  378. ENDM
  379. OVLN SPACE 4,10
  380. ** OVLN - GENERATE OVERLAY NAME.
  381. *
  382. *
  383. * OVLN
  384. *
  385. * EXIT ("M.") = LAST TWO CHARACTERS OF OVERLAY NAME.
  386. * ("N.") = LAST TWO CHARACTERS OF OVL NAME//OVL NUMBER.
  387. * (M.) = OVERLAY NUMBER.
  388.  
  389.  
  390. OVLN MACRO
  391. N. SET N.+1
  392. M. SET N./MX3C
  393. P. MICRO M.,1,/ABCD /
  394. M. SET N.-M.*MX3C
  395. M. MICRO M.+1,1, ABCDEFGHIJKLMNOPQRSTUVWXYZ012345
  396. M. MICRO 1,2, "P.""M."
  397. M. SET N.
  398. N. OCTMIC M.,3
  399. N. MICRO 1,,/"M." ("N.")/
  400. ENDM
  401. SYMBOLS SPACE 4,10
  402. ** OVERLAY GENERATION SYMBOLS.
  403.  
  404.  
  405. NOREF C.,N.,M.,L.,L.C,L.D
  406. N. SET 1*MX3C-1 NON-CM RESIDENT OVERLAY COUNTER
  407. C. SET 5*MX3C-1 CM RESIDENT OVERLAY COUNTER
  408. M. SET 0 OVERLAY COUNTER
  409. M. MICRO 0,, LAST 2 CHARACTERS OF OVERLAY NAME
  410. L. SET 0 OVERLAY LENGTH
  411. L.C SET 0 MAXIMUM COMMAND OVERLAY LENGTH
  412. L.D SET 0 MAXIMUM DISPLAY OVERLAY LENGTH
  413. TITLE COMMAND ENTRIES.
  414. ENTER SPACE 4,35
  415. ** ENTER - SPECIFY COMMAND ENTRY.
  416. * THE *ENTER* MACRO IS USED FOR SPECIFYING THE FORMAT OF
  417. * THE KEYBOARD COMMANDS.
  418. *
  419. *
  420. *NAME ENTER COMMAND,COND,SDF,ERL
  421. * ENTRY (NAME) = ADDRESS OF COMMAND PROCESSING ROUTINE AS
  422. * SPECIFIED BY *ENTER* MACRO.
  423. * (COMMAND) = SYNTAX FOR KEYBOARD ENTRY.
  424. * (COND) = 0 OR MORE CONDITIONS WHICH MUST BE PRESENT TO
  425. * PERMIT THE ENTERING OF COMMANDS IN THIS FORMAT.
  426. * *LOCK* AND *SLOCK* ARE CONDITIONS THAT ARE
  427. * CHECKED IN *CKS* IN *DSD* RESIDENT. ALL OTHER
  428. * CONDITIONS ARE CHECKED IN A SUBROUTINE WHOSE
  429. * NAME IS THE SAME AS THE CONDITION.
  430. * = *LOCK* = UNLOCK IS REQUIRED.
  431. * = *SLOCK* = SECURITY UNLOCK IS REQUIRED.
  432. * (SDF) IF PRESENT, ENTRY IS TO BE ENTERED IN SYSTEM
  433. * DAYFILE.
  434. * (ERL) IF PRESENT, ENTRY IS TO BE ENTERED IN ERROR LOG.
  435. *
  436. * SPECIAL FIELDS MAY BE SPECIFIED BY THE FOLLOWING CHARACTERS -
  437. *
  438. * ' 70 (11-8-5) ALPHANUMERIC FIELD.
  439. *
  440. * ? 71 (11-8-6) OCTAL FIELD.
  441. *
  442. * < 72 (12-0) USED AS <XY - ANY CHARACTER BETWEEN *X*
  443. * AND *Y* MAY BE USED IN THIS FIELD.
  444. *
  445. * > 73 (11-8-7) USED AS >XYZ> - ANY CHARACTER IN THE SET
  446. * *XYZ* MAY BE USED IN THIS FIELD.
  447. *
  448. * @ 74 (8-5) TERMINATE SCAN - CHARACTERS IN ANY FORMAT
  449. * MAY FOLLOW.
  450. *
  451. * \ 75 (12-8-5) LEGAL DISPLAY NAME.
  452. *
  453. * ; 77 (12-8-7) SET NEW SYNTAX TABLE - SYNTAX FIELD
  454. * DESCRIBED BY (ADDRESS) WILL BE USED FOR
  455. * REMAINDER OF FIELDS.
  456. *
  457. * NOTE.
  458. *
  459. * CONDITIONS OTHER THAN *LOCK* AND *SLOCK* CAN ONLY BE USED IN
  460. * OVERLAYS AND THE OVERLAY MUST BEGIN WITH A LABELED *USE*
  461. * PSEUDO-OP SUCH AS -
  462. *
  463. * USE CODE
  464.  
  465.  
  466. MACRO ENTER,A,B,C,D,E
  467. CON /COMMAND/A/10000,/COMMAND/A-/COMMAND/A/10000*10000
  468. ORG *-2
  469. ERRZR 0R_A NO COMMAND PROCESSOR SPECIFIED
  470. .1 SET 0 DEFAULT LOCK CONDITION
  471. .F IRP C CHECK FOR CONDITIONS
  472. .G IFC NE,$C$$
  473. .H IFC EQ,$C$SLOCK$
  474. .1 SET 3
  475. .H ELSE
  476. .I IFC EQ,$C$LOCK$
  477. .1 SET 1
  478. .I ELSE
  479. ERRZR 0R"M." ONLY *(S)LOCK* IS PERMITTED IN RESIDENT
  480. .J IF ABS,*
  481. ERR THE OVERLAY MUST BEGIN WITH A *USE*
  482. .J ELSE
  483. .K IF -DEF,/"QUAL"/CP.C
  484. USE 0
  485. CP.C CON C
  486. USE *
  487. .K ENDIF
  488. CON CP.C-.FCOM+5
  489. .J ENDIF
  490. .I ENDIF
  491. .H ENDIF
  492. .G ENDIF
  493. .F IRP
  494. DATA Z$B$ GENERATE SYNTAX
  495. VFD 2/.1
  496. IFC NE,*D**
  497. VFD 1/1
  498. ELSE 1
  499. VFD 1/0
  500. IFC NE,*E**
  501. VFD 1/1
  502. ELSE 1
  503. VFD 1/0
  504. VFD 20//COMMAND/A
  505. ENDM
  506. COMMANDS SPACE 4,10
  507. ORG 100
  508. TCEF SPACE 4,15
  509. ** TCEF - TABLE OF COMMAND ENTRY FORMATS.
  510. *
  511. * NOTE - COMMANDS ARE TO BE IN THIS TABLE FOR ONE OF
  512. * THE FOLLOWING REASONS -
  513. *
  514. * 1. THE COMMAND IS PROCESSED IN *DSD* RESIDENT.
  515. * 2. THE COMMAND CAN BE ENTERED DURING DEADSTART
  516. * (INCLUDING AS AN *IPRDECK* ENTRY).
  517. * 3. THE COMMAND IS TO BE AVAILABLE WHEN THE SYSTEM
  518. * IS HUNG. THE COMMAND ITSELF MUST THEN BE IN EITHER
  519. * *DSD* RESIDENT OR IN A CM-RESIDENT OVERLAY.
  520. *
  521. * ALL OTHER SPECIFIC COMMANDS CAN THEREFORE HAVE THEIR
  522. * TABLE ENTRY IN AN OVERLAY RATHER THAN IN *TCEF*.
  523.  
  524.  
  525. TCEF BSS 0
  526. CDS ENTER (\\.)
  527.  
  528. DJS ENTER (>HJKP>,'.)
  529.  
  530. DJM ENTER (>CDFGM>,'.)
  531.  
  532. DFC ENTER (>CDFGM>&lt;06,?.)
  533.  
  534. PPC ENTER (PP;) PP BREAKPOINT COMMANDS
  535.  
  536. STE ENTER (STEP.),LOCK
  537.  
  538. ULK ENTER (UNLOCK.),,SDF,ERL
  539.  
  540. * PROGRAMMING NOTE. THE *UNLOCK,USERNUM,PASSWOR.* COMMAND
  541. * SYNTAX IS DISABLED IN PRESET ON NON-SECURE SYSTEMS. IF
  542. * THIS COMMAND IS DELETED FOR ANY REASON, ENSURE THAT THE
  543. * CORRESPONDING DISABLING CODE IS DELETED FROM PRESET, ALSO.
  544.  
  545. TSUL BSS 0
  546. SUL ENTER (UNLOCK,','.)
  547.  
  548. UNS ENTER (UNSTEP.)
  549.  
  550. SAB ENTER (&lt;AB;)
  551.  
  552. SCC ENTER (>C>;)
  553.  
  554. SDD ENTER (>D>;)
  555.  
  556. SEJ ENTER (&lt;EI;)
  557.  
  558. SKN ENTER (&lt;KN;)
  559.  
  560. SOP ENTER (&lt;OP;)
  561.  
  562. SQR ENTER (&lt;QR;)
  563.  
  564. SSS ENTER (>S>;)
  565.  
  566. STT ENTER (>T>;)
  567.  
  568. SUX ENTER (&lt;UX;)
  569.  
  570. ENM ENTER (?,?.),SLOCK,SDF,ERL
  571. ENM ENTER (?,,?.),SLOCK,SDF,ERL
  572. ENM ENTER (?,&lt;04,?.),SLOCK,SDF,ERL
  573. ENM ENTER (?,I&lt;03,?.),SLOCK,SDF,ERL
  574.  
  575. EMR ENTER (?&lt;+-?.),SLOCK,SDF,ERL
  576. EMR ENTER (?&lt;+-,?.),SLOCK,SDF,ERL
  577. EMR ENTER (?&lt;+-&lt;04,?.),SLOCK,SDF,ERL
  578. EMD ENTER (?>,+->D@),SLOCK,SDF,ERL
  579.  
  580. DOV ENTER (99.),,SDF,ERL
  581.  
  582. CON 0 END OF TABLE
  583. TITLE MAIN PROGRAM.
  584. DSD SPACE 4,10
  585. ** DSD - MAIN DISPLAY LOOP.
  586. *
  587. * THE MAIN PROGRAM CONSISTS OF THE OVERALL LOOP CONTROL
  588. * FOR DSD. DSD LOOPS THROUGH THE MAIN PROGRAM AS LONG
  589. * AS THE SYSTEM REMAINS ACTIVE.
  590.  
  591.  
  592. QUAL DSD
  593.  
  594. DSD RJM DLS DISPLAY LEFT SCREEN HEADER DATA
  595. LDC 0 LEFT SCREEN LOWER OVERRIDE FLAG
  596. DSDA EQU *-1
  597. ZJN DSD1 IF NEITHER NEW OVERLAY NOR TOGGLE TO DSD
  598. CFNC RTPF RESET TOP OF PAGE
  599. LDN 0 CLEAR OVERRIDE FLAG
  600. STM DSDA
  601. DSD1 LDD LS SET DISPLAY NAME
  602. STD CN
  603. LDC .FLFT SET LOAD ADDRESS
  604. STD LA
  605. RJM /PRESET/DLS
  606. * RJM .FLFT+DOEP (PRESET COMPLETE)
  607. DSDB EQU *-1
  608. FJM *,CH IF DATA NOT TAKEN, WAIT
  609. DCN CH+40
  610.  
  611. * PROCESS KEYBOARD IF CDC721 SYSTEM CONSOLE.
  612.  
  613. DFIM (CON RJMI)
  614. UJN *+2
  615. CON /KEYBOARD/KBI
  616.  
  617. * DISPLAY RIGHT SCREEN.
  618.  
  619. RJM SYS DISPLAY SYSTEM STATUS
  620. LDC 0 RIGHT SCREEN LOWER OVERRIDE FLAG
  621. DSDC EQU *-1
  622. ZJN DSD2 IF NEITHER NEW OVERLAY NOR TOGGLE TO DSD
  623. CFNC RTPF RESET TOP OF PAGE
  624. LDN 0 CLEAR OVERRIDE FLAG
  625. STM DSDC
  626. DSD2 LDD RS SET DISPLAY NAME
  627. STD CN
  628. LDC .FRHT SET LOAD ADDRESS
  629. STD LA
  630. RJM /PRESET/DLS
  631. * RJM .FRHT+DOEP (PRESET COMPLETE)
  632. DSDD EQU *-1
  633.  
  634. * TRANSFER HIDDEN SCREEN TO VISIBLE (CDC721).
  635.  
  636. CFNC THVF TRANSFER HIDDEN TO VISIBLE
  637. DCN CH+40
  638.  
  639. * PROCESS KEYBOARD.
  640.  
  641. RJM /KEYBOARD/KBI PROCESS KEYBOARD INPUT
  642.  
  643. * PROCESS MISCELLANEOUS TASKS.
  644.  
  645. RJM CEQ CHECK EQUIPMENT
  646.  
  647. * LOOP.
  648.  
  649. AOD CY ADVANCE CYCLE COUNT
  650. LJM DSD LOOP
  651. TITLE MAIN SUBROUTINES.
  652. ** CEQ - CHECK EQUIPMENT.
  653. *
  654. * USES CM - CM+4.
  655. *
  656. * CALLS RKB.
  657. *
  658. * MACROS CFNC, DFIM, MONITOR.
  659.  
  660.  
  661. CEQ3 STM CEQB CLEAR HOLD FLAG
  662.  
  663. CEQ SUBR ENTRY/EXIT
  664. CEQA LDC EQAE CHECK CONSOLE ASSIGNMENT
  665. CRD CM
  666. LDD CM+4 GET EJTO
  667. ZJN CEQ3 IF DISPLAY NOT ASSIGNED
  668. LDC 0
  669. CEQB EQU *-1
  670. NJN CEQX IF HOLD FLAG SET
  671. RJM RKB READ KEYBOARD
  672. NJN CEQX IF KEY ENTERED
  673. LDN CH RELEASE CHANNEL
  674. STD CM+1
  675. MONITOR DCHM
  676. CEQ1 LDN CH CHECK CHANNEL
  677. STD CM+1
  678. MONITOR CCHM
  679. .CCHM LDD CM+2
  680. NJN CEQ2 IF CHANNEL NOT BUSY
  681. LDC 10000 DELAY
  682. SBN 1
  683. NJN *-1 IF DELAY NOT DONE
  684. UJN CEQ1 LOOP
  685.  
  686. CEQ2 LDC EQAE CHECK CONSOLE ASSIGNMENT
  687. CEQC EQU CEQ2
  688. CRD CM
  689. LDD CM+4 CLEAR / SET HOLD FLAG (USING EJTO)
  690. STM CEQB
  691. RJM RKB READ KEYBOARD
  692. STM /KEYBOARD/KRIA STORE KEYBOARD INPUT
  693. DFIM (LDN 1)
  694. LDN 24 SET INITIAL DELAY
  695. STM /KEYBOARD/KRIB
  696. STM DSDA ENABLE RESET TOP OF PAGE FUNCTIONS
  697. STM DSDC
  698. LJM CEQX RETURN
  699. SPACE 4,10
  700. ** COMMON DECKS.
  701.  
  702.  
  703. QUAL
  704.  
  705. QUAL GFP
  706. BLI$ EQU 1 BUILD LONG INSTRUCTIONS
  707. EJT$ EQU 1 EJT SEARCH
  708. EST$ EQU 1 EST SEARCH
  709. FNT$ EQU 1 SYSTEM FNT SEARCH
  710. IFP$ EQU 1 *COMPGFP* REMOTE ASSEMBLY
  711. JCB$ EQU 1 JCB SEARCH
  712. QFT$ EQU 1 QFT SEARCH
  713. *CALL COMPGFP
  714. QUAL * DEFINE UNQUALIFIED ENTRY POINTS
  715. .BLI EQU /GFP/.BLI BUILD LONG INSTRUCTIONS
  716. .EJT EQU /GFP/.EJT EJT SEARCH
  717. .EST EQU /GFP/.EST EST SEARCH
  718. .FNT EQU /GFP/.FNT SYSTEM FNT SEARCH
  719. .JCB EQU /GFP/.JCB JCB SEARCH
  720. .QFT EQU /GFP/.QFT QFT SEARCH
  721. *CALL COMPRJC
  722. VAL$ EQU 1
  723. *CALL COMPVLC
  724. QUAL *
  725. TITLE MASTER DISPLAY ROUTINES.
  726. DKB SPACE 4,10
  727. ** DKB - DISPLAY KEYBOARD BUFFER.
  728. *
  729. * ENTRY (KM) = ADDRESS OF KEYBOARD MESSAGE.
  730. * (DK) = DISPLAY KEYBOARD CONTROL.
  731. *
  732. * EXIT (A) = (DK).
  733. *
  734. * USES DK, T1, YC.
  735. *
  736. * MACROS CFNC, DFIM.
  737.  
  738.  
  739. DKB SUBR ENTRY/EXIT
  740. CFNC SLPF SELECT LEFT PRIORITY OUTPUT
  741. DFIM (CON LN51),*+1
  742. LDC LN49 SET Y-COORDINATE
  743. STD YC
  744. DFIM (UJN DKB1)
  745. LDN 2 SET INTENSIFICATION COUNT
  746. STD DK
  747.  
  748. * DISPLAY KEYBOARD BUFFER IN MEDIUM CHARACTERS IF .LT. 32
  749. * CHARACTERS IN BUFFER. OTHERWISE, DISPLAY IN SMALL
  750. * CHARACTERS.
  751.  
  752. LDD KI CHECK KEYBOARD INDEX
  753. SBN 41
  754. PJN DKB1 IF .GT. 32 CHARACTERS
  755. DCN CH+40
  756. CFNC SLMF SELECT LEFT SCREEN, MEDIUM CHARACTERS
  757. LCN 4 DECREMENT Y-COORDINATE
  758. RAD YC
  759. LDN 2 INCREMENT COUNT
  760. RAD DK
  761. DKB1 LDN 2 OUTPUT COORDINATES
  762. OAM XC,CH
  763. * LDN 0
  764. STD T1
  765. DKB2 LDM KBUF,T1
  766. ZJN DKB3 IF END OF KEYBOARD LINE
  767. SHN 6
  768. ADM KBUF+1,T1
  769. OAN CH+40
  770. LDN 2 ADVANCE INDEX
  771. RAD T1
  772. SBD KI
  773. MJN DKB2 IF NOT END OF KEYBOARD LINE
  774. DKB3 CFNC EELF ERASE TO END OF LINE
  775.  
  776. * DISPLAY KEYBOARD MESSAGE IF SET.
  777.  
  778. LDN 2 OUTPUT ERROR MESSAGE LINE COORDINATE
  779. OAM DKBA,CH
  780. LDD KM
  781. NJN DKB4 IF ERROR MESSAGE PRESENT
  782. LDM /KEYBOARD/KBRA CHECK REPEAT ENTRY
  783. ZJN DKB6 IF REPEAT ENTRY NOT SET
  784. DKB4 STD T1 SET MESSAGE ADDRESS
  785. DKB5 LDI T1 DISPLAY MESSAGE
  786. ZJN DKB6 IF END OF MESSAGE
  787. OAN CH+40
  788. AOD T1
  789. UJN DKB5 DISPLAY NEXT BYTE
  790.  
  791. * LOOP FOR PROPER INTENSIFICATION.
  792.  
  793. DFIM (CFNC EELF)
  794. DKB6 SOD DK
  795. ZJN DKB7 IF INTENSIFICATION COMPLETE
  796. LJM DKB1 LOOP
  797.  
  798. DKB7 DCN CH+40
  799. LDD DK
  800. LJM DKBX RETURN
  801.  
  802. DKBA CON CH01
  803. DFIM (CON LN50)
  804. CON LN48+YINC/2
  805. DLS SPACE 4,15
  806. ** DLS - DISPLAY LEFT SCREEN DATA.
  807. *
  808. * EXIT DISPLAY CHANNEL STILL ACTIVE.
  809. *
  810. * USES LK, ST, CM - CM+4.
  811. *
  812. * CALLS DAL, HIL, RJC.
  813. *
  814. * MACROS CFNC, DISPLA.
  815. *
  816. * EXAMPLE -
  817. *
  818. * 1 2 3 4 5 6
  819. * 1234567890123456789012345678901234567890123456789012345678901234
  820. *
  821. * JSNN STEP 102 SECURITY-UNLOCK ENGR DEBUG 99
  822. *
  823. * LOWLEVL - UPPLEVL MID=AA VERSION LINE.........
  824.  
  825.  
  826. DLS SUBR
  827. CFNC SLSF SELECT LEFT SCREEN, SMALL CHARACTERS
  828. CFNC CHSF CLEAR HIDDEN SCREEN
  829.  
  830. * OUTPUT HEADER LINE TWO.
  831.  
  832. LDC HL02
  833. OAN CH+40
  834. LDC SCRL CHECK EMERGENCY STEP
  835. CRD CM
  836. LDD CM
  837. SHN 6+5
  838. LPN 3
  839. STD ST
  840. LPN 2
  841. ZJN DLS1 IF EMERGENCY STEP NOT SET
  842. LDN 0 CLEAR JSN
  843. STM DLSC
  844. STM DLSB
  845. LDC 2R
  846. STM DLSD+1 CLEAR LARGE FUNCTION CODE
  847. DPPMDSP OCTMIC DPPM,2
  848. LDC 2R"DPPMDSP"
  849. STM DLSD
  850. DLS1 LDD ST
  851. ZJN DLS2 IF STEP MODE NOT SET
  852. LDC DLSAL*10000+DLSA DISPLAY STEP
  853. RJM HIL
  854. DLS2 LDN SSTL READ SYSTEM STATUS
  855. CRD CM
  856. LDD CM SET LOCK FLAG
  857. SHN -10
  858. LPN 3
  859. STD LK
  860. SHN 21-1
  861. PJN DLS3 IF NOT SECURITY UNLOCK
  862. LDD SF
  863. ZJN DLS4 IF UNSECURED SYSTEM
  864. DISPLA CH21,,(SECURITY-),H
  865. UJN DLS4 CONTINUE
  866.  
  867. DLS3 SHN 1-0
  868. PJN DLS5 IF NOT UNLOCK
  869. DLS4 DISPLA CH30,,(UNLOCK),H
  870. DLS5 LDD CM+3 CHECK ENGINEERING
  871. LPN 4
  872. NJN DLS6 IF DISABLED
  873. DISPLA CH42,,(ENGR),H
  874. DLS6 LDD CM+3 CHECK DEBUG
  875. LPN 1
  876. ZJN DLS7 IF NOT SET
  877. DISPLA CH52,,(DEBUG),H
  878. DLS7 LDM /KEYBOARD/ADSA
  879. ZJN DLS8 IF SYNTAX CHECKING ENABLED
  880. DISPLA CH62,,(99),H
  881. DLS8 LDC HL04
  882. OAN CH+40
  883. LDD SF CHECK SECURITY
  884. ZJN DLS9 IF UNSECURED SYSTEM
  885.  
  886. * OUTPUT HEADER LINE FOUR.
  887.  
  888. LDC CH01
  889. OAN CH+40
  890. LDN 0 GET SYSTEM SECURITY BOUNDS
  891. RJM RJC
  892. CRD CM
  893. LDD CM+1 EXTRACT LOWER BOUND
  894. SHN -3
  895. RJM DAL DISPLAY SECURITY BOUND STRING
  896. LDC 2R- DISPLAY DASH
  897. OAN CH+40
  898. LDD CM+1 EXTRACT UPPER BOUND
  899. RJM DAL DISPLAY SECURITY BOUND STRING
  900. DLS9 LDN DLSEL DISPLAY MACHINE ID AND VERSION
  901. OAM DLSE,CH
  902. LJM DLSX RETURN
  903.  
  904.  
  905. DLSA CON CH02
  906. DLSB DATA 0 JSN
  907. DLSC DATA 0 JSN
  908. DATA H* STEP *
  909. DLSD DATA 0 FUNCTION
  910. DATA 0
  911. DLSAL EQU *-DLSA
  912.  
  913. DLSE CON CH22
  914. DATA H*MID=*
  915. DLSF DATA H* * MACHINE ID
  916. DATA 4H
  917. DLSG BSSZ 12 VERSION
  918. DLSEL EQU *-DLSE LENGTH
  919. TITLE OVERLAY LOADER.
  920. LDO SPACE 4,10
  921. ** LDO - LOAD DISPLAY OVERLAYS.
  922. *
  923. * ENTRY (A) = 2 CHARACTERS FOR DISPLAY.
  924. *
  925. * EXIT (LS) = LEFT SCREEN DISPLAY LETTER.
  926. * (RS) = RIGHT SCREEN DISPLAY LETTER.
  927. *
  928. * USES LA, LS, RS, T6, T7.
  929. *
  930. * CALLS LOV, USS.
  931.  
  932.  
  933. LDO SUBR ENTRY/EXIT
  934. SHN 14 LEFT SCREEN
  935. STD T6
  936. SHN -14 RIGHT SCREEN
  937. STD T7
  938.  
  939. * LOAD LEFT SCREEN DISPLAY.
  940.  
  941. LDD T6
  942. ZJN LDO1 IF NO LEFT SCREEN REQUEST
  943. LDC .FLFT SET LEFT SCREEN LOAD ADDRESS
  944. STD LA
  945. LDM TDSO,T6 LOAD OVERLAY
  946. RJM LOV
  947. STM DSDA
  948. LDD LA ENABLE LEFT SCREEN PAGING
  949. STM /KEYBOARD/AVDA
  950. ADN DOEP SET ENTRY POINT FOR OVERLAY
  951. STM DSDB SAVE ENTRY POINT
  952. LDD T6 SET LEFT SCREEN NAME
  953. STD LS
  954. RJM USS UPDATE SCREEN STATUS
  955.  
  956. * LOAD RIGHT SCREEN DISPLAY.
  957.  
  958. LDO1 LDD T7
  959. ZJN LDO2 IF NO RIGHT SCREEN REQUEST
  960. LDC .FRHT SET RIGHT SCREEN LOAD ADDRESS
  961. STD LA
  962. LDM TDSO,T7 LOAD OVERLAY
  963. RJM /PRESET/DRS
  964. LDOA EQU *-1
  965. * RJM LOV (PRESET COMPLETE)
  966. STM DSDC
  967. LDD LA ENABLE RIGHT SCREEN PAGING
  968. STM /KEYBOARD/AVDB
  969. ADN DOEP SET ENTRY POINT FOR OVERLAY
  970. STM DSDD
  971. LDD T7 SET RIGHT SCREEN NAME
  972. STD RS
  973. RJM USS UPDATE SCREEN STATUS
  974. LDO2 LJM LDOX RETURN
  975. LOV SPACE 4,15
  976. ** LOV - LOAD OVERLAY.
  977. *
  978. * ENTRY (A) = OVERLAY NUMBER.
  979. * (LA) = LOAD ADDRESS FOR OVERLAY.
  980. *
  981. * EXIT (A) = 0, IF OVERLAY ALREADY LOADED.
  982. * 2, IF DISK OVERLAY LOADED.
  983. *
  984. * USES KM, T1, T2, T3, AB - AB+4, CM - CM+4.
  985. *
  986. * CALLS *1DL*.
  987. *
  988. * MACROS CCF, CFNC, DFIM, EXECUTE.
  989.  
  990.  
  991. LOV11 LDN 0 CLEAR OVERLAY LOAD
  992. STM LOVA
  993. IAM *,CH INPUT OVERLAY
  994. LOVD EQU *-1
  995. CCF *+2,CH SIGNAL *SCD* TO RESUME USING CHANNEL
  996. LDM LOVD RESET LOAD ADDRESS
  997. STD LA
  998.  
  999. * RELOCATE OVERLAY.
  1000.  
  1001. LOV12 LDD LA CHECK LOAD ADDRESS
  1002. ADC -.FCOM+5
  1003. ZJN LOVX IF COMMAND/SYNTAX OVERLAY
  1004. SHN -11
  1005. STD T3 SET LEFT OR RIGHT SCREEN
  1006. LDM 5,LA SET RELOCATION ADDRESS
  1007. ADD LA
  1008. STD T1
  1009. LOV13 LDI T1
  1010. ZJN LOV14 IF END OF TABLE
  1011. ADD LA SET WORD ADDRESS TO BE RELOCATED
  1012. STD T2
  1013. LDD LA RELOCATE ADDRESS
  1014. RAI T2
  1015. AOD T1
  1016. UJN LOV13 RELOCATE NEXT ADDRESS
  1017.  
  1018. LOV14 STM TGTF,T3 CLEAR TOGGLE FLAG FOR OVERLAY
  1019. LDN 2 SET OVERLAY LOADED STATUS
  1020.  
  1021. LOV SUBR ENTRY/EXIT
  1022. LPC 377 SET OVERLAY NUMBER
  1023. STD T1
  1024. ZJN LOVX IF RESIDENT OVERLAY
  1025. SCN 37 CONVERT OVERLAY NUMBER TO OVERLAY NAME
  1026. ADN 1
  1027. RAD T1
  1028. LDC RPLP READ *RPLP* POINTER
  1029. CRD CM
  1030. ADN PLDP-RPLP GET PLD POINTER
  1031. CRD AB
  1032. LDI LA CHECK NAME
  1033. SHN 14
  1034. LMM 1,LA
  1035. SHN -6
  1036. LMD T1
  1037. ZJN LOVX IF LOADED
  1038. LDD AB
  1039. ADD AB+1
  1040. ZJP CLP1 IF LIBRARY LOCKED
  1041. LDM LOVA
  1042. NJN LOV1 IF LOAD IN PROGRESS
  1043. LDD LA
  1044. STM LOVB SET LOAD ADDRESS
  1045. STM LOVD
  1046. LDN 0
  1047. UJN LOV3 BEGIN NEW LOAD
  1048.  
  1049. LOV1 LJM 0 CONTINUE CURRENT LOAD
  1050. LOVA EQU *-1
  1051.  
  1052. LOV2 LDD AB+4 ADVANCE RPL ADDRESS
  1053. RAD CM+1
  1054. SHN -14
  1055. LOV3 RAD CM READ ENTRY
  1056. SHN 14
  1057. ADD CM+1
  1058. CRD AB
  1059. LDD AB+4
  1060. ZJN LOV4 IF END OF RPL
  1061. LDD AB+1 CHECK NAME
  1062. SCN 77
  1063. LMN 1R9 CHECK FOR *9XX*
  1064. SHN 6
  1065. LMD AB
  1066. SHN 6
  1067. LMD T1
  1068. NJN LOV2 IF NO MATCH
  1069. STD KM CLEAR ERROR MESSAGE
  1070. LDD CM READ OVERLAY
  1071. SHN 14
  1072. ADD CM+1
  1073. CRM *,AB+4
  1074. LOVB EQU *-1
  1075. LJM LOV12 RELOCATE OVERLAY
  1076.  
  1077. * SET UP DISK LOAD.
  1078.  
  1079. LOV4 LDD T1 SET OVERLAY NAME
  1080. STD AB+4
  1081. LDN 1R9
  1082. STD AB+3
  1083. LDN CH SET CHANNEL
  1084. STD AB+2
  1085. LDC LOV4
  1086. STM LOVA SET THIS PHASE
  1087. EXECUTE 1DL
  1088. LDD CM+1 SAVE PP INPUT REGISTER ADDRESS
  1089. STM LOVC
  1090.  
  1091. * CHECK STATUS OF LOAD.
  1092.  
  1093. LOV5 LDC LOV5 SET THIS PHASE
  1094. STM LOVA
  1095. LDC DDCF DESELECT DISPLAY
  1096. DFIM (CON SDCF),*-1
  1097. CFNC
  1098. LDC * READ PP INPUT REGISTER
  1099. LOVC EQU *-1
  1100. CRD CM
  1101. LDD CM+1 CHECK INPUT REGISTER
  1102. SCN 37
  1103. SHN 6
  1104. LMD CM
  1105. LMC 3RL1D
  1106. NJN LOV9 IF NOT *1DL*
  1107. LDD CM+2
  1108. LMC 7777
  1109. ZJN LOV7 IF TRANSMISSION READY
  1110. LDC KSBD
  1111. UJN LOV10 PROCESS *DISK BUSY*
  1112.  
  1113. * INPUT OVERLAY.
  1114.  
  1115. LOV7 LDD TH
  1116. SBN 1
  1117. NJN *-1 IF DELAY NOT OVER
  1118. DCN CH+40
  1119. STD KM CLEAR KEYBOARD MESSAGE
  1120. STD CM+2
  1121. LDM LOVC
  1122. CWD CM
  1123. ACN CH
  1124. LOV8 FJM LOV11,CH IF CHANNEL FULL
  1125. SOD CM+2
  1126. NJN LOV8 IF DELAY NOT OVER
  1127.  
  1128. * ABORT OVERLAY LOAD.
  1129.  
  1130. LOV9 LDD HN RESET FORMAT TABLE
  1131. ERRNZ TCEF-100 CANNOT USE DIRECT CELL *HN*
  1132. STM /KEYBOARD/KBIB
  1133. LDN 0 CLEAR OVERLAY NAME
  1134. STM LOVA
  1135. LOV10 DCN CH+40
  1136. CCF *+2,CH SIGNAL *SCD* TO RESUME USING CHANNEL
  1137. LJM CLP2 PROCESS INCOMPLETE *CR*
  1138. USS SPACE 4,15
  1139. ** USS - UPDATE SCREEN STATUS.
  1140. *
  1141. * ENTRY (LA) = LEFT OR RIGHT UPDATE FLAG.
  1142. * .LT. *.FLFT* = DO NOT UPDATE SCREENS.
  1143. * = *.FLFT* = UPDATE LEFT SCREEN DATA.
  1144. * = *.FRHT* = UPDATE RIGHT SCREEN DATA.
  1145. *
  1146. * EXIT SCREEN STATUS UPDATED IN *DSD* INPUT REGISTER.
  1147. *
  1148. * USES T1, T2, SR - SR+4.
  1149. *
  1150. * CALLS SJT.
  1151.  
  1152.  
  1153. USS SUBR ENTRY/EXIT
  1154. LDD LA DETERMINE WHICH SCREEN TO UPDATE
  1155. ADC -.FLFT
  1156. MJN USSX IF NO SCREEN IS INVOLVED
  1157. SHN -10 CONVERT *.FRHT*-*.FLFT* TO A 1
  1158. ERRNG .FLFT+777-.FRHT SHIFT COUNT IS TOO LOW
  1159. STD T1
  1160. LDD IA
  1161. CRD SR
  1162. LDD LS UPDATE SCREEN NAMES
  1163. SHN 6
  1164. LMD RS
  1165. STD SR+2
  1166. LDM LS,T1 SEARCH JSN TABLE
  1167. RJM SJT
  1168. ZJN USS2 IF ENTRY NOT FOUND
  1169. LDM 3,T2 GET EJTO OF ASSIGNED JOB
  1170. USS2 STM SR+3,T1 UPDATE INPUT REGISTER
  1171. LDD LS
  1172. LMD RS
  1173. NJN USS3 IF SCREENS ARE NOT THE SAME
  1174. LDD T1
  1175. LMN 1
  1176. STD T2
  1177. LDM SR+3,T1 MAKE BOTH EJTO-S THE SAME
  1178. STM SR+3,T2
  1179. USS3 LDD IA
  1180. CWD SR
  1181. LJM USSX RETURN
  1182. TITLE DISPLAY CONTROL TABLES.
  1183. TDSP SPACE 4,10
  1184. ** TDSP - DEFINE DISPLAY TABLE ENTRIES.
  1185. *
  1186. *
  1187. *T TDSP NAME
  1188. * ENTRY *LETTER* = NAME OF DISPLAY.
  1189. * *NAME* = NAME OF DISPLAY PROCESSOR.
  1190.  
  1191.  
  1192. MACRO TDSP,A,B
  1193. ORG TDSO+1R;A
  1194. CON /DISPLAY/B/10000
  1195. ENDM
  1196. TDSO SPACE 4,10
  1197. ** TDSO - TABLE OF DISPLAY OVERLAY NAMES.
  1198. * ENTRY = 1 WORD.
  1199. * INDEXED BY DISPLAY LETTER.
  1200. *
  1201. *T, 12/ NM
  1202. * NM LAST 2 CHARACTERS OF OVERLAY NAME
  1203.  
  1204.  
  1205. TDSO EQU *-1
  1206. DUP 1RZ,1
  1207. CON 7777
  1208. TJAZ SPACE 4,10
  1209. ** TJAZ - TABLE OF DISPLAY JSN-S.
  1210. *
  1211. * ENTRY = 5 WORDS.
  1212. *
  1213. *T 6/NCM, 6/INDEX, 24/JSN, 12/EJTO
  1214. *
  1215. * NCM = 40, IF NOT CM DISPLAY.
  1216. * = 0, IF CM DISPLAY.
  1217. * INDEX = DISPLAY NAME.
  1218. * JSN = JSN.
  1219. * EJTO = EJTO OF JSN. SET BY ROUTINE *SJS* WHEN
  1220. * A DISPLAY IS SELECTED BY THE OPERATOR.
  1221.  
  1222.  
  1223. TJAZ BSS 0
  1224. TJAA VFD 6/40,6/1RA,24/0,12/0
  1225. TJAZE EQU *-TJAZ ENTRY LENGTH
  1226. TJCC VFD 12/1RC,24/0,12/0
  1227. TJDD VFD 12/1RD,24/0,12/0
  1228. TJFF VFD 12/1RF,24/0,12/0
  1229. TJGG VFD 12/1RG,24/0,12/0
  1230. TJHH VFD 6/40,6/1RH,24/0,12/0
  1231. TJJJ VFD 6/40,6/1RJ,24/0,12/0
  1232. TJKK VFD 6/40,6/1RK,24/0,12/0
  1233. TJMM VFD 6/40,6/1RM,24/0,12/0
  1234. TJPP VFD 6/40,6/1RP,24/0,12/0
  1235. TJAZL CON 0 END OF TABLE
  1236. DISP SPACE 4,10
  1237. ** ENTER DISPLAY CONTROLS.
  1238.  
  1239.  
  1240. DISP BSS 0
  1241.  
  1242. A TDSP DSA
  1243. B TDSP DSB
  1244. C TDSP DSC
  1245. D TDSP DSC
  1246. E TDSP DSE
  1247. F TDSP DSF
  1248. G TDSP DSF
  1249. H TDSP DSH
  1250. I TDSP DSI
  1251. J TDSP DSJ
  1252. K TDSP DSK
  1253. L TDSP DSL
  1254. M TDSP DSM
  1255. O TDSP DSO
  1256. P TDSP DSP7
  1257. Q TDSP DSQ
  1258. R TDSP DSR
  1259. S TDSP DSS
  1260. T TDSP DST
  1261. V TDSP DSV
  1262. W TDSP DSWR
  1263. Y TDSP DSY
  1264. Z TDSP DSZ
  1265.  
  1266. ORG DISP
  1267. QUAL
  1268. LDO EQU /DSD/LDO
  1269. LOV EQU /DSD/LOV
  1270. USS EQU /DSD/USS
  1271. .CCHM EQU /DSD/.CCHM
  1272. COMMON SPACE 4,10
  1273. * COMMON DECKS.
  1274.  
  1275.  
  1276. LIST X
  1277. *CALL COMDDIS
  1278. DSS$ EQU 0 DISPLAY SUBSYSTEM STATUS
  1279. DSDSYS$ EQU 0 ASSEMBLE *DSD* ONLY CODE
  1280. *CALL COMDSYS
  1281. LIST *
  1282. TITLE KEYBOARD INPUT PROCESSING.
  1283. QUAL KEYBOARD
  1284. KBI SPACE 4,10
  1285. *** KEYBOARD INPUTS ARE PROCESSED AS THEY ARE ENTERED.
  1286. * CHECKING IS PERFORMED ON EACH CHARACTER TO VALIDATE THE ENTRY.
  1287. * WHEN AN ENTRY BECOMES UNIQUE, THE REMAINDER OF THE ENTRY
  1288. * IS FILLED IN BY THE INPUT PROCESSORS.
  1289. * AT THIS POINT, THE ENTRY IS CONSIDERED COMPLETE.
  1290. *
  1291. * *CR* MUST FOLLOW ALL ENTRIES BEFORE ACTION IS TAKEN.
  1292. *
  1293. * *BKSP* DELETES THE PREVIOUS CHARACTER TYPED.
  1294. *
  1295. * *LEFT BLANK* DELETES THE CURRENT LINE BEING ENTERED.
  1296. *
  1297. *
  1298. * IF THESE CHARACTERS ARE THE FIRST ENTRY, THE FOLLOWING
  1299. * APPLIES -
  1300. *
  1301. * *+* = ADVANCE LEFT SCREEN DISPLAY AS FOLLOWS -
  1302. * 1. ADVANCE DISPLAYED ADDRESSES BY 40 (20 ON A CC634B)
  1303. * ON THESE DISPLAYS -
  1304. * C, D, F, G, M.
  1305. * 2. ADVANCE ENTRIES ON THESE DISPLAYS -
  1306. * B, E, H, I, O, P, Q, R, S, T.
  1307. * 3. ENABLE DISPLAY SCROLLING ON THE CC545 ON THE *A*
  1308. * DISPLAY.
  1309. *
  1310. * *-* = DECREMENT LEFT SCREEN DISPLAY AS FOLLOWS -
  1311. * 1. DECREMENT DISPLAYED ADDRESSES BY 40 (20 ON A
  1312. * CC634B) ON THESE DISPLAYS -
  1313. * C, D, F, G, M.
  1314. * 2. DISPLAY FIRST OR PREVIOUS SCREEN ON THESE
  1315. * DISPLAYS -
  1316. * B, E, H, I, O, P, Q, R, S, T.
  1317. * 3. DISABLE DISPLAY SCROLLING ON THE CC545 ON THE *A*
  1318. * DISPLAY.
  1319. *
  1320. * (*) = HOLD DISPLAY.
  1321. *
  1322. * */* = ADVANCE LEFT SCREEN MEMORY DISPLAY ADDRESS BY THE
  1323. * VALUE IN THE BOTTOM 18 BITS OF THE FIRST WORD DISPLAYED.
  1324. *
  1325. * *(* = ADVANCE RIGHT SCREEN AS IN *+* ABOVE.
  1326. *
  1327. * *)* = DECREMENT RIGHT SCREEN AS IN *-* ABOVE.
  1328. *
  1329. * *CR* = SET REPEAT ENTRY. PROCESS THE FOLLOWING ENTRY, BUT
  1330. * DO NOT ERASE AFTER COMPLETION.
  1331. *
  1332. * ABOVE THE ENTRY DISPLAY, THE FOLLOWING MESSAGES MAY
  1333. * APPEAR -
  1334. * *INCORRECT ENTRY* = ENTRY IS UNRECOGNIZABLE.
  1335. *
  1336. * *PPU BUSY* = WAITING FOR THE SYSTEM TO ASSIGN
  1337. * A PP FOR PROCESSING OF THE ENTRY.
  1338. *
  1339. * *MTR BUSY* = WAITING FOR *MTR* TO PROCESS REQUEST.
  1340. *
  1341. * *LOG - * (PRECEDING EITHER OF THE LAST TWO MESSAGES) =
  1342. * COMMAND HAS BEEN EXECUTED BUT LOGGING IN SYSTEM
  1343. * DAYFILE AND/OR ERROR LOG IS WAITING.
  1344. *
  1345. * *DISK BUSY* = WAITING FOR THE DISK TO BECOME
  1346. * FREE TO PROCESS THE ENTRY.
  1347. * *COMMAND TOO LONG*
  1348. * AN ATTEMPT TO ENTER MORE THAN 60 CHARACTERS HAS
  1349. * BEEN MADE.
  1350. *
  1351. * USES DK, KE, KI, T2, T4, T6, T7.
  1352. *
  1353. * CALLS CKS, CSC, /DSD/DKB, KRI, RKB.
  1354. *
  1355. * MACROS DFIM.
  1356.  
  1357.  
  1358. KBI14 LDN 0 FORCE RETURN
  1359. STD DK
  1360. KBIX RJM /DSD/DKB DISPLAY KEYBOARD BUFFER
  1361. NJN KBI0 IF INPUT NOT COMPLETE
  1362.  
  1363. LJM * ENTRY/EXIT
  1364. KBI EQU *-1
  1365. LDN 0 INITIALIZE KEYBOARD DISPLAY CONTROL
  1366. STD DK
  1367. KBI0 LDD KE
  1368. NJN KBI1 IF PRESET INPUT
  1369. AOD DK
  1370. RJM RKB READ KEYBOARD
  1371. RJM KRI PROCESS REPEAT INPUT
  1372. ZJN KBI14 IF NO KEYBOARD INPUT
  1373. SBN 63
  1374. PJN KBI14 IF ILLEGAL CHARACTER
  1375. ADN 63
  1376.  
  1377. * CHECK FOR AND PROCESS SPECIAL CHARACTERS.
  1378.  
  1379. KBI1 STD T2 SET CHARACTER
  1380. LDC TSCE-2 SPECIAL CHARACTER TABLE
  1381. RJM CSC CHECK SPECIAL CHARACTER
  1382.  
  1383. * ENTER CHARACTER IN BUFFER.
  1384.  
  1385. KBI2 LDN 0 CLEAR PRESET ENTRY
  1386. STD KE
  1387. LDD KI
  1388. ZJN KBI3.1 IF FIRST CHARACTER
  1389. SBN KBUFL
  1390. MJN KBI4 IF BUFFER NOT FULL
  1391. LDC KCTL *COMMAND TOO LONG*
  1392. STD KM
  1393. KBI3 LJM KBIX RETURN
  1394.  
  1395. KBI3.1 LDC TSFC-2 FIRST CHARACTER TABLE
  1396. RJM CSC CHECK SPECIAL CHARACTER
  1397. KBI4 LDD T2 ENTER CHARACTER
  1398. STM KBUF,KI
  1399. AOD KI
  1400. AOD DK SET KEYBOARD DISPLAY
  1401.  
  1402. * SCAN SYNTAX TABLE.
  1403.  
  1404. KBI5 LDC 0 GET SYNTAX SKIP FLAG
  1405. KBIA EQU *-1
  1406. NJN KBI3 IF SYNTAX TO BE SKIPPED
  1407. STD T6
  1408. LDC TCEF SET SYNTAX TABLE START
  1409. KBIB EQU *-1
  1410. STD T7
  1411.  
  1412. * BEGIN NEW SYNTAX CHECK.
  1413.  
  1414. KBI6 LDD T7 SET START OF SYNTAX
  1415. STD T4
  1416. LDI T7
  1417. ZJN KBI10 IF END OF SYNTAX TABLE
  1418. KBI7 LPN 77 CHECK SYNTAX ENTRY
  1419. ZJN KBI8 IF END OF ENTRY
  1420. AOD T7
  1421. LDI T7
  1422. UJN KBI7 SKIP TO END OF ENTRY
  1423.  
  1424. KBI8 LDN 3 SET START OF NEXT SYNTAX
  1425. RAD T7
  1426.  
  1427. * COMPARE ENTRY AND SYNTAX CHARACTER.
  1428.  
  1429. RJM CKS CHECK SYNTAX
  1430. NJN KBI6 IF NO MATCH
  1431. LDD T6
  1432. NJN KBI9 IF PREVIOUS MATCH FOUND
  1433. LDD T4 SET NEW SYNTAX TABLE START
  1434. STM KBIB
  1435. LDD T1 SET NEXT SYNTAX CHARACTER
  1436. STD T6
  1437. KBI9 SBN 66
  1438. PJN KBI10 IF SPECIAL CHARACTER
  1439. LDD T1
  1440. LMD T6
  1441. ZJN KBI6 IF SAME CHARACTER
  1442. UJN KBI11 RETURN
  1443.  
  1444. * CHECK RESULTS OF SEARCH.
  1445.  
  1446. KBI10 LDD T6
  1447. NJN KBI12 IF UNIQUE ENTRY FOUND
  1448. STM KBUF-1,KI CLEAR ENTRY
  1449. SOD KI
  1450. KBI11 LJM KBIX RETURN
  1451.  
  1452. * ENTER NEXT SYNTAX CHARACTER IN KEYBOARD ENTRY.
  1453.  
  1454. KBI12 SBN 66
  1455. PJN KBI11 IF SPECIAL CHARACTER
  1456. ADN 66 SET PRESET ENTRY
  1457. STD KE
  1458. LMN 1R
  1459. NJN KBI13 IF NOT * *
  1460. LDN 62 SET SPACE BAR
  1461. STD KE
  1462. KBI13 LJM KBI0 ATTEMPT TO FILL IN NEXT CHARACTER
  1463. KRI SPACE 4,10
  1464. ** KRI - PROCESS KEYBOARD REPEAT INPUT.
  1465. *
  1466. * ENTRY (A) = KEYBOARD CHARACTER.
  1467. *
  1468. * EXIT (A) = KEYBOARD CHARACTER.
  1469. *
  1470. * USES T0.
  1471. *
  1472. * MACROS DFIM.
  1473.  
  1474.  
  1475. KRI1 LDN 20 SET REPEAT DELAY
  1476. DFIM (LDN 1)
  1477. KRI2 LMN 24 SET INITIAL DELAY
  1478. STM KRIB
  1479. LDD T0 STORE CHARACTER
  1480. KRI3 STM KRIA
  1481.  
  1482. KRI SUBR ENTRY/EXIT
  1483. ZJN KRI3 IF NO INPUT
  1484. STD T0 SAVE CHARACTER
  1485. LDN 0 CLEAR SYNTAX SKIP FLAG
  1486. STM KBIA
  1487. LDC 0
  1488. KRIA EQU *-1
  1489. ZJN KRI2 IF NO PREVIOUS INPUT
  1490. SOM KRIB DECREMENT DELAY
  1491. ZJN KRI1 IF DELAY ELAPSED
  1492. LDN 0 RETURN NO CHARACTER
  1493. UJN KRIX RETURN
  1494.  
  1495. KRIB CON 0
  1496. CKS SPACE 4,10
  1497. ** CKS - CHECK SYNTAX.
  1498. *
  1499. * ENTRY (T4) = FWA OF CURRENT SYNTAX TABLE ENTRY.
  1500. * (T7) = FWA+3 OF NEXT SYNTAX TABLE ENTRY.
  1501. * (LK) = CONSOLE LOCK STATUS.
  1502. *
  1503. * EXIT (A) = 0, IF MATCH AND END OF KEYBOARD ENTRY.
  1504. * .NE. 0, IF NO MATCH.
  1505. *
  1506. * USES T2, T3, T5.
  1507. *
  1508. * CALLS ADS, LSC.
  1509.  
  1510.  
  1511. CKS SUBR ENTRY/EXIT
  1512. LDC KBUF SET KEYBOARD BUFFER START
  1513. STD T3
  1514. LCN 0 CLEAR SYNTAX CHARACTER INDEX
  1515. STD T5
  1516. CKS1 AOD T5 ADVANCE TO NEXT BYTE IN SYNTAX
  1517. RJM LSC LOAD FIRST SYNTAX CHARACTER
  1518. NJN CKS4 IF NOT A CONDITIONAL CHECK FLAG
  1519. LDM .FCOM-5,T8 GET CHECK SUBROUTINE ADDRESS
  1520. STD T2
  1521. RJM 0,T2
  1522. NJN CKS1 IF CONDITION PRESENT
  1523. CKS2 LDN 1 SET MATCH FAILED
  1524. CKS3 UJN CKSX RETURN
  1525.  
  1526. CKS4 LDM -2,T7 CHECK (S)LOCK CONTROL
  1527. SHN -12
  1528. LPN 3
  1529. SBD LK
  1530. SBN 1
  1531. PJN CKS2 IF UNLOCK NOT SET
  1532. CKS5 LDM -2,T7 SET LOGGING CONTROL
  1533. SHN -10
  1534. LPN 3
  1535. STM LKBA
  1536. CKS6 LDI T3 CHECK CHARACTER
  1537. ZJN CKS3 IF END OF BUFFER
  1538. LDD T1 CHECK SYNTAX
  1539. SBN 66
  1540. PJN CKS8 IF SPECIAL CHARACTER
  1541. ADN 66
  1542. LMI T3
  1543. NJN CKS3 IF NO MATCH
  1544. RJM ADS ADVANCE SYNTAX
  1545. CKS7 AOD T3 ADVANCE CHARACTER
  1546. UJN CKS6 LOOP
  1547.  
  1548. * ALPHA/NUMERIC FIELD.
  1549.  
  1550. CKS8 ADN 66
  1551. LMN 1R'
  1552. NJN CKS10 IF NOT *'*
  1553. LDI T3 CHECK CHARACTER
  1554. SBN 1R+
  1555. MJN CKS7 IF ALPHA/NUMERIC
  1556. CKS9 RJM ADS ADVANCE SYNTAX
  1557. UJN CKS6 PROCESS NEXT SYNTAX
  1558.  
  1559. * OCTAL FIELD.
  1560.  
  1561. CKS10 LMN 1R?&1R'
  1562. NJN CKS11 IF NOT *?*
  1563. LDI T3
  1564. SBN 1R0
  1565. MJN CKS14 IF ALPHA
  1566. SBN 1R8-1R0
  1567. MJN CKS7 IF OCTAL DIGIT
  1568. SBN 1R -1R8
  1569. ZJN CKS7 IF * *
  1570. UJN CKS9 ADVANCE SYNTAX
  1571.  
  1572. * CHARACTER WITHIN LIMITS.
  1573.  
  1574. CKS11 LMN 1R&lt;&1R?
  1575. NJN CKS15 IF NOT *<*
  1576. RJM ADS ADVANCE SYNTAX
  1577. STD T2 NEXT SYNTAX CHAR = LOWER LIMIT
  1578. RJM ADS ADVANCE SYNTAX
  1579. SBI T3
  1580. MJN CKS14 IF CHARACTER > UPPER LIMIT
  1581. LDI T3
  1582. SBD T2
  1583. MJN CKS14 IF CHARACTER &lt; LOWER LIMIT
  1584. CKS12 AOD T3 ADVANCE CHARACTER
  1585. UJN CKS9 ADVANCE SYNTAX
  1586.  
  1587. CKS13 LDD T2
  1588. NJN CKS12 IF MATCH IN SET
  1589. CKS14 LDN 1 RETURN WITH (A) " 0
  1590. LJM CKSX RETURN
  1591.  
  1592. * CHARACTER IN SET.
  1593.  
  1594. CKS15 LMN 1R>&1R&lt;
  1595. NJN CKS17 IF NOT *>*
  1596. STD T2 CLEAR FLAG
  1597. CKS16 RJM ADS ADVANCE SYNTAX
  1598. LMN 1R>
  1599. ZJN CKS13 IF SECOND *>*
  1600. LMN 1R> COMPARE CHARACTER
  1601. LMI T3
  1602. NJN CKS16 IF NO MATCH
  1603. AOD T2 SET FLAG
  1604. UJN CKS16 LOOP
  1605.  
  1606. * DISPLAY NAME.
  1607.  
  1608. CKS17 LMN 1R\&1R>
  1609. NJN CKS14 IF NOT *\*
  1610. LDI T3 CHECK CHARACTER
  1611. SBN 1R0
  1612. PJN CKS14 IF NOT ALPHA
  1613. ADN 1R0 SET DISPLAY INDEX
  1614. STD T2
  1615. LDM /DSD/TDSO,T2 CHECK IF DISPLAY DEFINED
  1616. LMC 7777
  1617. ZJN CKS14 IF DISPLAY NOT DEFINED
  1618. UJN CKS12 ACCEPT FORMAT
  1619. ADS SPACE 4,15
  1620. ** ADS - ADVANCE SYNTAX.
  1621. *
  1622. * EXIT FROM *KBI* IF FREE SYNTAX SENSED.
  1623. * LOAD SYNTAX OVERLAY IF INDICATED.
  1624. *
  1625. * ENTRY (T4) = SYNTAX ADDRESS.
  1626. * (T5) = INDEX.
  1627. * (T7) = START OF NEXT SYNTAX ENTRY.
  1628. *
  1629. * EXIT (T4 - T5) ADVANCED.
  1630. * (A) = (T1) = NEXT SYNTAX CHARACTER.
  1631. *
  1632. * USES KI, KR, LA, T5, T7.
  1633. *
  1634. * CALLS LOV, LSC.
  1635.  
  1636.  
  1637. ADS SUBR ENTRY/EXIT
  1638. LDC 774000 ADVANCE CHARACTER
  1639. RAD T5
  1640. RJM LSC LOAD SYNTAX CHARACTER
  1641. ZJN ADS2 IF END OF SYNTAX
  1642. LMN 1R@
  1643. ZJN ADS3 IF *@*
  1644. LMN 1R;&1R@
  1645. ZJN ADS4 IF *;*
  1646. LMN 1R; RESTORE CHARACTER
  1647. UJN ADSX RETURN
  1648.  
  1649. ADS2 LDD KR
  1650. ZJN ADS3 IF KEYBOARD NOT READY BEFORE
  1651. SOD KI CLEAR ENTRY
  1652. LDN 0
  1653. STM KBUF,KI
  1654. ADS3 LDN 1 SET KEYBOARD READY
  1655. STD KR
  1656. LDM -2,T7 SET OVERLAY NAME
  1657. STM KCRA
  1658. LDM -1,T7 SET PROCESSOR ADDRESS
  1659. STM KCRB
  1660. LDD T4 SET SYNTAX TABLE START
  1661. STM KBIB
  1662. LJM KBIX RETURN
  1663.  
  1664. * SWITCH TO NEW SYNTAX OVERLAY.
  1665.  
  1666. ADS4 LDC 0
  1667. ADSA EQU *-1
  1668. NJN ADS5 IF SYNTAX CHECKING DISABLED (99.)
  1669. LDM -1,T7 SET TABLE ADDRESS
  1670. STM ADSB
  1671. LDC .FCOM-5 SET LOAD ADDRESS
  1672. STD LA
  1673. LDM -2,T7 LOAD OVERLAY
  1674. RJM LOV
  1675. LDC * SET NEW SYNTAX TABLE
  1676. ADSB EQU *-1
  1677. STD T7
  1678. ADS5 LJM KBI6 CHECK NEW SYNTAX
  1679. LSC SPACE 4,10
  1680. ** LSC - LOAD SYNTAX CHARACTER.
  1681. *
  1682. * ENTRY (A) = (T5) = INDEX.
  1683. * (T4) = SYNTAX ADDRESS.
  1684. *
  1685. * EXIT (A) = (T1) = NEXT SYNTAX CHARACTER.
  1686. * (T8) = BYTE CONTAINING NEXT SYNTAX CHARACTER.
  1687. *
  1688. * USES T1, T8.
  1689.  
  1690.  
  1691. LSC SUBR ENTRY/EXIT
  1692. LPN 77 SET BYTE ADDRESS
  1693. ADD T4
  1694. STD T1
  1695. LDD T5 LOAD CHARACTER
  1696. SCN 77
  1697. SHN 6
  1698. LMI T1
  1699. STD T8 SET BYTE
  1700. MJN LSC1 IF LOWER
  1701. SHN -6
  1702. LSC1 LPN 77 SET CHARACTER
  1703. STD T1
  1704. UJN LSCX RETURN
  1705. KII SPACE 4,10
  1706. ** KII - INCOMPLETE INPUT.
  1707. *
  1708. * USES KE.
  1709. *
  1710. * CALLS KRI, RKB.
  1711.  
  1712.  
  1713. KII BSS 0 ENTRY
  1714. RJM RKB READ KEYBOARD
  1715. RJM KRI PROCESS REPEAT INPUT
  1716. ZJN KII1 IF NO INPUT
  1717. SBN 53
  1718. NJN KII1 IF NOT *LEFT BLANK*
  1719. LJM KLB CLEAR KEYBOARD
  1720.  
  1721. KII1 SBN 62-53
  1722. NJN KII2 IF NOT *SPACE BAR*
  1723. LDD ST
  1724. ZJN KII2 IF *STEP* NOT SET
  1725. LJM KSP PROCESS STEP
  1726.  
  1727. KII2 LDD KE
  1728. LMN 55
  1729. NJN KII3 IF PRESET ENTRY NOT *RIGHT BLANK* KEY
  1730. LJM KRB1 ADVANCE LEFT DISPLAY
  1731.  
  1732. KII3 LMN 64&55
  1733. NJN KII4 IF NOT INCOMPLETE *1DS* CALL
  1734. LJM C1D3 PROCESS INCOMPLETE *1DS* CALL
  1735.  
  1736. KII4 LDD KR
  1737. NJN KII5 IF KEYBOARD READY
  1738. STD KE CLEAR PRESET ENTRY
  1739. LJM KBI5 PROCESS AS NORMAL INPUT
  1740.  
  1741. KII5 LJM KCR PROCESS *CR*
  1742. RKB SPACE 4,10
  1743. ** RKB - READ KEYBOARD.
  1744. *
  1745. * EXIT (A) = CHARACTER INPUT.
  1746. *
  1747. * MACROS CFNC.
  1748.  
  1749.  
  1750. RKB SUBR ENTRY/EXIT
  1751. CFNC SKIF
  1752. IAN CH+40 INPUT CHARACTER
  1753. DCN CH+40
  1754. UJN RKBX RETURN
  1755. TITLE SPECIAL CHARACTER PROCESSING.
  1756. CSC SPACE 4,10
  1757. ** CSC - CHECK SPECIAL CHARACTER.
  1758. *
  1759. * ENTRY (A) = FWA-2 OF SPECIAL CHARACTER TABLE.
  1760. * (T2) = CHARACTER.
  1761. *
  1762. * EXIT RETURN IF NOT SPECIAL CHARACTER.
  1763. * PROCESS CHARACTER IF FOUND.
  1764. *
  1765. * USES T1.
  1766.  
  1767.  
  1768. CSC SUBR ENTRY/EXIT
  1769. STD T1 SET TABLE ADDRESS
  1770. CSC1 LDN 2 ADVANCE TABLE
  1771. RAD T1
  1772. LDI T1 CHECK ENTRY
  1773. ZJN CSCX IF END OF TABLE
  1774. LMD T2
  1775. NJN CSC1 IF NO MATCH
  1776. LDM 1,T1 PROCESS ENTRY
  1777. STD T1
  1778. LJM 0,T1 GO TO SPECIAL CHARACTER HANDLER
  1779. TSFC SPACE 4,15
  1780. ** TSFC - TABLE OF SPECIAL FIRST CHARACTERS.
  1781.  
  1782.  
  1783. TSFC BSS 0
  1784. CON 1R+,AVD *+* - ADVANCE LEFT SCREEN DISPLAY
  1785. CON 1R-,AVD *-* - DECREMENT LEFT SCREEN DISPLAY
  1786. CON 1R*,RDC (*) - RELEASE DISPLAY CHANNEL
  1787. CON 1R/,ALV */* - ADVANCE LEFT SCREEN BY VALUE
  1788. CON 1R(,AVD *(* - ADVANCE RIGHT SCREEN DISPLAY
  1789. CON 1R),AVD *)* - DECREMENT RIGHT SCREEN DISPLAY
  1790. CON 1R=,ARV *=* - ADVANCE RIGHT SCREEN BY VALUE
  1791. CON 0 END OF TABLE
  1792. TSCE SPACE 4,15
  1793. ** TSCE - TABLE OF SPECIAL CHARACTER ENTRIES.
  1794.  
  1795.  
  1796. TSCE BSS 0
  1797. CON 53,KLB *LEFT BLANK* - CLEAR KEYBOARD
  1798. CON 55,KRB *RIGHT BLANK* - ADVANCE LEFT DISPLAY
  1799. TSCEA EQU *-1
  1800. CON 60,KCR *CR* - PROCESS ENTRY
  1801. TSCEB EQU *-1 (CHANGED ON INITIAL ENTRY)
  1802. CON 61,KBK *BKSP* - ERASE PREVIOUS CHARACTER
  1803. CON 62,KSP *SPACE BAR*
  1804. CON 63,KII INCOMPLETE INPUT
  1805. CON 64,KII INCOMPLETE INPUT (*1DS* CALL)
  1806. CON 65,/PRESET/KCR INCOMPLETE INPUT (PRESET)
  1807. CON 0
  1808. AVD SPACE 4,10
  1809. ** AVD - ADVANCE DISPLAY.
  1810. *
  1811. * EXIT (T2) = 0, IF PAGE FORWARD.
  1812. * = 1, IF PAGE BACKWARD.
  1813. * (T7) = SCREEN INDEX.
  1814. *
  1815. * USES LA, T2, T7.
  1816.  
  1817.  
  1818. AVD BSS 0 ENTRY
  1819. LDD LS SET LEFT SCREEN
  1820. STD T7
  1821. LDC KBIX-DOPG
  1822. AVDA EQU *-1
  1823. * LDC .FLFT (LEFT SCREEN ORIGIN AFTER OVERLAY LOAD)
  1824. STD LA
  1825. LDD T2 CHECK ENTRY
  1826. SBN 1R+
  1827. STD T2
  1828. SBN 1R--1R++1
  1829. MJN AVD1 IF *+* OR *-*
  1830. LDD RS SET RIGHT SCREEN
  1831. STD T7
  1832. LDC KBIX-DOPG
  1833. AVDB EQU *-1
  1834. * LDC .FRHT (RIGHT SCREEN ORIGIN AFTER OVERLAY LOAD)
  1835. STD LA
  1836. LCN 1R(-1R+ SET *+* OR *-*
  1837. RAD T2
  1838. AVD1 LJM DOPG,LA ENTER OVERLAY AT PAGING ENTRY POINT
  1839. AMF SPACE 4,10
  1840. ** AMF - ADVANCE MEMORY FIELDS.
  1841. *
  1842. * USES AB+3, AB+4.
  1843. *
  1844. * CALLS ADA.
  1845. *
  1846. * MACROS DFIM.
  1847.  
  1848.  
  1849. AMF BSS 0 ENTRY
  1850. LDD T2 CHECK CHARACTER
  1851. ZJN AMF1 IF *+*
  1852. DFIM (LCN 17+20) TWO-S COMPLEMENT OF 20
  1853. LCN 37+40 TW0-S COMPLEMENT OF 40
  1854. DFIM (ADN 20)
  1855. AMF1 ADN 40
  1856. STD AB+4 (AB+4) = 0040/0020/7760/7740
  1857. SHN -6
  1858. STD AB+3 (AB+3) = 0000/7777
  1859. LDD T7 ADVANCE DISPLAY ADDRESSES
  1860. RJM ADA
  1861. JMP KBIX RETURN
  1862. RDC SPACE 4,10
  1863. ** RDC - RELEASE DISPLAY CHANNEL.
  1864.  
  1865.  
  1866. RDC LDN 0 CLEAR HOLD FLAG
  1867. STM /DSD/CEQB
  1868. STD DK ENABLE *KBI* EXIT
  1869. JMP KBIX RETURN
  1870. ARV SPACE 4,10
  1871. ** ARV - ADVANCE RIGHT SCREEN BY VALUE, IF C, D, F, G, OR M
  1872. * DISPLAY. OTHERWISE, TOGGLE RIGHT SCREEN TOGGLE FLAG.
  1873.  
  1874.  
  1875. ARV BSS 0 ENTRY
  1876. LDN 1
  1877. UJN ALV0 SET RIGHT SCREEN
  1878. ALV SPACE 4,10
  1879. ** ALV - ADVANCE LEFT DISPLAY BY VALUE, IF C, D, F, G, OR M
  1880. * DISPLAY. OTHERWISE, TOGGLE LEFT SCREEN TOGGLE FLAG.
  1881. *
  1882. * USES T1, T2, T3, AB - AB+4.
  1883. *
  1884. * CALLS ADA.
  1885.  
  1886.  
  1887. ALV BSS 0 ENTRY
  1888. LDN 0 SET LEFT SCREEN
  1889. ALV0 STD T2
  1890. LDM LS,T2
  1891. STD T3
  1892. ZJN ALV3 IF NO SCREEN DISPLAY LOADED
  1893. SBN TDFCL
  1894. PJN ALV4 IF NO DISPLAY FIELD DEFINED
  1895. LDM TDFC-1,T3 SET FIELD TABLE ADDRESS
  1896. STD T1
  1897. ZJN ALV4 IF NOT DEFINED
  1898. LDD T3
  1899. LMN 1RM
  1900. NJN ALV1 IF NOT *M* DISPLAY
  1901. LDC EDBP SET DATA ADDRESS OF EXTENDED MEMORY BUFFER
  1902. CRD AB
  1903. LDD AB
  1904. SHN 14
  1905. LMD AB+1
  1906. ADN 4
  1907. UJN ALV2 READ EXTENDED MEMORY ADDRESS
  1908.  
  1909. ALV1 LDI T1
  1910. LPN 77
  1911. SHN 14
  1912. LMM 1,T1
  1913. ALV2 CRD AB
  1914. LDD AB+3 SET INCREMENT
  1915. LPN 37
  1916. STD AB+3
  1917. LDD T3 ADVANCE DISPLAY
  1918. RJM ADA
  1919. ALV3 JMP KBIX RETURN
  1920.  
  1921. ALV4 LDM TGTF,T2 TOGGLE FLAG
  1922. LMN 1
  1923. STM TGTF,T2
  1924. JMP KBIX RETURN
  1925. KBK SPACE 4,10
  1926. ** KBK - PROCESS *BKSP*.
  1927. *
  1928. * USES KI, KM.
  1929.  
  1930.  
  1931. KBK LDD KI
  1932. ZJN KBK1 IF FIRST ENTRY
  1933. SOD KI CLEAR ENTRY
  1934. LDN 0
  1935. STM KBUF,KI
  1936. STD KM CLEAR KEYBOARD MESSAGE
  1937. KBK1 LJM KBC2 CLEAR KEYBOARD
  1938. KLB SPACE 4,10
  1939. ** KLB - PROCESS *LEFT BLANK*.
  1940. *
  1941. * USES KM.
  1942.  
  1943.  
  1944. KLB LDN 0 CLEAR OVERLAY LOAD
  1945. STM /DSD/LOVA
  1946. KLB1 STM KBRA CLEAR REPEAT ENTRY
  1947. STM KBCA CLEAR INDEX
  1948. STD KM CLEAR KEYBOARD MESSAGE
  1949. LJM KBC CLEAR KEYBOARD BUFFER
  1950. KCR SPACE 4,10
  1951. ** KCR - PROCESS *CR*.
  1952. *
  1953. * USES CA, DK, LA, AB - AB+4.
  1954. *
  1955. * CALLS LOV.
  1956.  
  1957.  
  1958. KCR LDD KR
  1959. NJN KCR1 IF KEYBOARD READY
  1960. LDC KREP *REPEAT ENTRY*
  1961. STM KBRA
  1962. JMP KBIX RETURN
  1963.  
  1964. KCR1 LDC .FCOM-5 SET LOAD ADDRESS
  1965. STD LA
  1966. LDC 0 LOAD OVERLAY
  1967. KCRA EQU *-1
  1968. RJM LOV
  1969. LDN 0 ENABLE RETURN FROM *KBI*
  1970. STD DK
  1971. LDN ZERL CLEAR ASSEMBLY BUFFER
  1972. CRD AB
  1973. STM KBIA SET SYNTAX SKIP FLAG
  1974. LDC KBUF-1 SET CHARACTER ADDRESS
  1975. STD CA
  1976. KCR2 AOD CA SKIP CHARACTER
  1977. LDI CA CHECK NEXT CHARACTER
  1978. ZJN KCR3 IF END OF BUFFER
  1979. SBN 1R0
  1980. MJN KCR2 IF ALPHA
  1981. SBN 12
  1982. MJN KCR3 IF NOT SEPARATOR
  1983. LDD CA
  1984. LMC KBUF
  1985. ZJN KCR3 IF SEPARATOR FIRST CHARACTER
  1986. AOD CA SKIP SEPARATOR
  1987. KCR3 LJM * PROCESS ENTRY
  1988. KCRB EQU *-1
  1989. KRB SPACE 4,10
  1990. ** KRB - PROCESS *RIGHT BLANK* KEY.
  1991. *
  1992. * USES KE, T1.
  1993. *
  1994. * CALLS LDO.
  1995.  
  1996.  
  1997. KRB BSS 0 ENTRY
  1998. LDM /DSD/LOVA
  1999. ZJN KRB1 IF NO OVERLAY LOAD IN PROGRESS
  2000. JMP KII PROCESS INCOMPLETE INPUT
  2001.  
  2002. KRB1 LDN 55 ENTER CHARACTER
  2003. STD KE
  2004. LDC 0 SET DISPLAY INDEX
  2005. KRBA EQU *-1
  2006. STD T1
  2007. LDM TLSD,T1 SET DISPLAYS
  2008. SHN 6
  2009. LMD RS
  2010. RJM LDO
  2011. LDN 0 CLEAR ENTRY
  2012. STD KE
  2013. AOM KRBA ADVANCE INDEX
  2014. LMN TLSDL
  2015. NJN KRB2 IF NOT END OF TABLE
  2016. STM KRBA
  2017. KRB2 JMP KBIX RETURN
  2018. KSP SPACE 4,10
  2019. ** KSP - PROCESS *SPACE*.
  2020. *
  2021. * USES T2, CM - CM+4.
  2022. *
  2023. * MACROS MONITOR.
  2024.  
  2025.  
  2026. KSP LDD ST
  2027. ZJN KSP2 IF *STEP* NOT SET
  2028. LDD KI
  2029. NJN KSP1 IF NOT FIRST CHARACTER
  2030. LDN ZERL
  2031. CRD CM
  2032. LDN STPS STEP MONITOR
  2033. STD CM+1
  2034. MONITOR DSRM
  2035. KSP1 LDD KE
  2036. NJN KSP2 IF PRESET ENTRY
  2037. JMP KBIX RETURN
  2038.  
  2039. KSP2 LDN 1R ENTER * *
  2040. STD T2
  2041. LJM KBI2 ENTER CHARACTER
  2042. TITLE KEYBOARD RETURN PROCESSORS.
  2043. KIE SPACE 4,10
  2044. ** KIE - INCORRECT ENTRY RETURN.
  2045.  
  2046.  
  2047. KIE LDC KILE *INCORRECT ENTRY*
  2048. UJN KMS PROCESS MESSAGE
  2049. KPC SPACE 4,10
  2050. ** KPC - KEYBOARD PARTIAL CLEAR RETURN.
  2051. *
  2052. * ENTRY (A) = NEW KEYBOARD INDEX.
  2053.  
  2054.  
  2055. KPC STM KBCA SAVE INDEX
  2056. * UJN KBR RETURN
  2057. KBR SPACE 4,15
  2058. ** KBR - NORMAL KEYBOARD RETURN.
  2059. * PROCESS COMMAND LOGGING.
  2060. *
  2061. * KAR - KEYBOARD ALTERNATE RETURN.
  2062. * PROCESS *1DS* CALL AND COMMAND LOGGING.
  2063. *
  2064. * ENTRY (AB+3) - (AB+4) = *1DS* PARAMETERS.
  2065. * (A) = 0 FOR NO *1DS* CALL.
  2066. * = 8/, 1/LK, 3/, 6/FC FOR *1DS* CALL.
  2067. * LK - INTERLOCK REQUIRED.
  2068. * FC - *1DS* FUNCTION CODE.
  2069.  
  2070.  
  2071. KBR LDN 0 DO NOT CALL *1DS*
  2072.  
  2073. KAR RJM C1D CHECK FOR *1DS* CALL
  2074. STM KBIA CLEAR SYNTAX SKIP FLAG
  2075. KMS SPACE 4,10
  2076. ** KMS - KEYBOARD ERROR MESSAGE RETURN.
  2077. *
  2078. * ENTRY (A) = ADDRESS OF ERROR MESSAGE.
  2079.  
  2080.  
  2081. KMS STD KM
  2082. NJN KBR1 IF MESSAGE PRESENT
  2083. LDC 0
  2084. KBRA EQU *-1 (REPEAT ENTRY FLAG)
  2085. ZJN KBC IF REPEAT ENTRY NOT SET
  2086. KBR1 SOD KI ENTER PREVIOUS CHARACTER
  2087. LDM KBUF,KI
  2088. LMN 1R
  2089. ZJN KBR1 IF BLANK
  2090. LMN 1R
  2091. STD KE
  2092. LDN 0
  2093. STM KBUF,KI
  2094. UJN KBC3 CLEAR KEYBOARD READY
  2095. KBC SPACE 4,15
  2096. ** KBC - CLEAR KEYBOARD BUFFER.
  2097. *
  2098. * ENTRY (EI) = EJTO OF EJT ENTRY INTERLOCKED.
  2099. * (KM) = KEYBOARD MESSAGE FLAG.
  2100. *
  2101. * EXIT (EI) = 0.
  2102. *
  2103. * USES EI, KE, KI, KR, T1, CM - CM+4.
  2104. *
  2105. * MACROS MONITOR, SFA.
  2106.  
  2107.  
  2108. KBC LDD KM
  2109. NJN KBC2 IF KEYBOARD MESSAGE SET
  2110. LDC 0 CLEAR KEYBOARD INDEX
  2111. KBCA EQU *-1
  2112. STD KI
  2113. STD T1
  2114. KBC1 LDN 0 CLEAR BUFFER
  2115. STM KBUF,T1
  2116. AOD T1
  2117. LMN KBUFL
  2118. NJN KBC1 IF BUFFER NOT CLEARED
  2119. STM KBCA
  2120. KBC2 LDN 0 CLEAR PRESET ENTRY
  2121. STD KE
  2122. KBC3 STD KR CLEAR KEYBOARD READY
  2123. LDD HN RESET COMMAND FORMAT ADDRESS
  2124. ERRNZ TCEF-100 CANNOT USE DIRECT CELL *HN*
  2125. STM KBIB
  2126. KBC4 LDD EI
  2127. ZJN KBC5 IF NO EJT INTERLOCK SET
  2128. LDN ZERL SET PARAMETER IN MESSAGE BUFFER
  2129. CRD CM
  2130. SFA EJT,EI SAVE ABSOLUTE ADDRESS OF EJT ENTRY
  2131. STD CM+4
  2132. SHN -14
  2133. STD CM+3
  2134.  
  2135. * SET NUMBER OF REQUESTS, CLEAR INTERLOCK, SET JOB ADVANCE.
  2136.  
  2137. LDN 0+40+20
  2138. STD CM+1
  2139. MONITOR UTEM CLEAR EJT ENTRY INTERLOCK
  2140. LDD CM+1
  2141. NJN KBC5 IF REQUEST NOT COMPLETE
  2142. STD EI CLEAR EJT ENTRY INTERLOCK FLAG
  2143. KBC5 JMP KBIX RETURN
  2144. C1D SPACE 4,25
  2145. ** C1D - CHECK FOR *1DS* CALL.
  2146. *
  2147. * ENTRY (LKBA) = LOGGING CONTROL BITS.
  2148. * (LKBA) = 0 - DO NOT LOG.
  2149. * BIT 0 SET - LOG IN ERROR LOG.
  2150. * BIT 1 SET - LOG IN SYSTEM DAYFILE.
  2151. * BIT 2 SET - LOG IN ACCOUNT DAYFILE.
  2152. * (A) = 8/, 1/LK, 3/, 6/FC FOR *1DS* CALL.
  2153. * LK - INTERLOCK REQUIRED.
  2154. * FC - *1DS* FUNCTION CODE.
  2155. * (SP) = SPECIAL PARAMETER (IF NEEDED).
  2156. *
  2157. * EXIT (LKBA) = 0.
  2158. * (A) = 0.
  2159. * *1DS* CALLED IF NEEDED.
  2160. *
  2161. * USES ID, AB - AB+4, CM - CM+4, SP - SP+4.
  2162. *
  2163. * MACROS EXECUTE.
  2164. *
  2165. * NOTES IF A *1DS* CALL WAS NOT SPECIFIED ON ENTRY
  2166. * ((A)=0) AND LOGGING IS REQUIRED, *1DS*
  2167. * FUNCTION *FASF* WILL BE USED BY DEFAULT.
  2168. * (SEE COMMON DECK *COMS1DS* FOR MORE DETAIL.)
  2169.  
  2170.  
  2171. C1D SUBR ENTRY/EXIT
  2172. STD AB+2 SAVE CALL INFORMATION
  2173. STD LG
  2174. LDC 0
  2175. LKBA EQU *-1 (LOGGING CONTROL BITS)
  2176. LKBB LPN 7
  2177. * LPN 0 (LOGGING DISABLED)
  2178. SHN 6
  2179. RAD AB+2 FORM *1DS* PARAMETER BYTE
  2180. ZJN C1DX IF CALL NOT NEEDED
  2181. LDN 64 SET INCOMPLETE *1DS* CALL CHARACTER
  2182. STD KE
  2183. UJN C1D4 BYPASS CM READ
  2184.  
  2185. C1D1 LDN /1DS/KBCML SET INITIAL INTERLOCK
  2186. STD ID
  2187. LDC /1DS/DSDL TRANSFER KEYBOARD BUFFER
  2188. CWM KBUF,ID
  2189. CWD SP
  2190. C1D2 EXECUTE 1DS
  2191. LDN 0 CLEAR LOGGING BITS
  2192. STM LKBA
  2193. STD KE CLEAR PRESET ENTRY
  2194. UJN C1DX EXIT
  2195.  
  2196. C1D3 LDD MA RESTORE (AB) FOR RETRY
  2197. CRD AB
  2198. ADN 1 RESTORE (SP) FOR RETRY
  2199. CRD SP
  2200. C1D4 LDD AB+2
  2201. LPC 1700
  2202. C1DA PSN (DEADSTART IN PROGRESS)
  2203. * ZJN C1D2 IF BUFFER INTERLOCK NOT NEEDED
  2204. ERRNZ /1DS/FASF FUNCTION *FASF* MUST BE ZERO
  2205. LDC /1DS/DSDL
  2206. CRD CM
  2207. LDD CM
  2208. ZJN C1D1 IF BUFFER IS AVAILABLE
  2209. LDD MA SAVE (AB) FOR RETRY
  2210. CWD AB
  2211. ADN 1 SAVE (SP) FOR RETRY
  2212. CWD SP
  2213. LJM CLP1 PROCESS PPU BUSY
  2214. KIC SPACE 4,10
  2215. ** KIC - INCOMPLETE *CR*
  2216. *
  2217. * USES DK, KE, KM.
  2218.  
  2219.  
  2220. KIC LDD KE
  2221. LMN 55
  2222. ZJN KIC1 IF *RIGHT BLANK*
  2223. LMN 64&55
  2224. ZJN KIC2 IF INCOMPLETE LOGGING
  2225. LMN 65&64
  2226. ZJN KIC1 IF PRESET
  2227. LDN 63 ENTER *INCOMPLETE CR*
  2228. STD KE
  2229. KIC1 LDN 0 CLEAR PREVIOUS INPUT FLAG
  2230. STM KRIA
  2231. STD DK
  2232. LJM KBC4 CLEAR EJT INTERLOCK
  2233.  
  2234. KIC2 LDD LG
  2235. NJN KIC1 IF NOT LOGGING ONLY
  2236. LCN 2 ADD *LOG-* TO MESSAGE
  2237. RAD KM
  2238. UJN KIC1 CLEAR FNT INTERLOCK
  2239. SLS SPACE 4,10
  2240. ** SLS - SET LEFT SCREEN.
  2241. *
  2242. * ENTRY (A) = DISPLAY NAME.
  2243. * TO SLS1, (T1) = DISPLAY NAME. LEFT SCREEN SET
  2244. * EVEN IF RIGHT SCREEN SET.
  2245. *
  2246. * EXIT TO *KBR*.
  2247. *
  2248. * CALLS LDO, USS.
  2249.  
  2250.  
  2251. SLS STD T1 SAVE NAME
  2252. LMD RS
  2253. NJN SLS1 IF DISPLAY NOT ALREADY UP ON RIGHT SCREEN
  2254. LDC .FRHT
  2255. STD LA
  2256. ADN DOEP
  2257. STM /DSD/DSDD
  2258. RJM USS UPDATE SCREEN STATUS
  2259. UJN SLS3 RETURN
  2260.  
  2261. SLS1 LDD T1
  2262. ZJN SLS3 IF DISPLAY NOT RECOGNIZED
  2263. SBN 1RZ+1
  2264. PJN SLS3 IF NOT RECOGNIZED
  2265. LDD T1 ENTER REQUESTED DISPLAY
  2266. SHN 6
  2267. RJM LDO LOAD OVERLAY
  2268. SLS3 JMP KBR RETURN
  2269. SPACE 4,10
  2270. QUAL
  2271. AMF EQU /KEYBOARD/AMF
  2272. C1D EQU /KEYBOARD/C1D
  2273. KAR EQU /KEYBOARD/KAR
  2274. KBR EQU /KEYBOARD/KBR
  2275. KIE EQU /KEYBOARD/KIE
  2276. KMS EQU /KEYBOARD/KMS
  2277. KPC EQU /KEYBOARD/KPC
  2278. KIC EQU /KEYBOARD/KIC
  2279. RKB EQU /KEYBOARD/RKB
  2280. SLS EQU /KEYBOARD/SLS
  2281. SLS1 EQU /KEYBOARD/SLS1
  2282. TLSD SPACE 4,10
  2283. ** TLSD - TABLE OF LEFT SCREEN DISPLAYS.
  2284.  
  2285.  
  2286. TLSD BSS 0
  2287. CON 1RA
  2288. CON 1RI
  2289. CON 1RQ
  2290. CON 1RT
  2291. TLSDL EQU *-TLSD
  2292. KMS SPACE 4,10
  2293. ** KEYBOARD MESSAGES.
  2294.  
  2295.  
  2296. KILE DATA C*INCORRECT ENTRY*
  2297.  
  2298. KREP DATA C*REPEAT ENTRY*
  2299.  
  2300. KSBD DATA C*DISK BUSY*
  2301.  
  2302. DATA A*LOG-*
  2303. KSBM DATA C*MTR BUSY*
  2304.  
  2305. DATA A*LOG-*
  2306. KSBP DATA C*PP BUSY*
  2307.  
  2308. KCTL DATA C*COMMAND TOO LONG*
  2309. TITLE RESIDENT COMMAND PROCESSORS.
  2310. QUAL RES
  2311. DFC SPACE 4,10
  2312. ** X0,NNNNNN. CHANGE SECTION A OF MEMORY DISPLAY X TO
  2313. * START AT CM/ECS LOCATION NNNNNN.
  2314. * X1,NNNNNN. CHANGE SECTION B OF MEMORY DISPLAY X TO
  2315. * START AT CM/ECS LOCATION NNNNNN.
  2316. * X2,NNNNNN. CHANGE SECTION C OF MEMORY DISPLAY X TO
  2317. * START AT CM/ECS LOCATION NNNNNN.
  2318. * X3,NNNNNN. CHANGE SECTION D OF MEMORY DISPLAY X TO
  2319. * START AT CM/ECS LOCATION NNNNNN.
  2320. * X4,NNNNNN. CHANGE MEMORY DISPLAY X TO START AT
  2321. * CM/ECS LOCATION NNNNNN.
  2322. * X5,NNNNNN. ADVANCE MEMORY DISPLAY X BY NNNNNN
  2323. * LOCATIONS.
  2324. * X6,NNNNNN. DECREMENT MEMORY DISPLAY X BY NNNNNN
  2325. * LOCATIONS.
  2326.  
  2327.  
  2328. DFC BSS 0 ENTRY
  2329. LDM KBUF SET DISPLAY INDEX
  2330. STD T6
  2331. LDM TDFC-1,T6 SET DISPLAY ADDRESS TABLE
  2332. STD T7
  2333. LDC KBUF+3 ASSEMBLE ADDRESS VALUE
  2334. STD CA
  2335. RJM ASD
  2336. LDD AB
  2337. ADD AB+1
  2338. ADD AB+2
  2339. NJN DFC1.1 IF .GT. 8 DIGITS
  2340. LDM KBUF+1 CHECK FIELD NUMBER
  2341. SBN 1R4
  2342. PJN DFC1 IF FIELD NUMBER .GE. 4
  2343. ADN 4 SET FIELD INDEX
  2344. SHN 1
  2345. RAD T7
  2346. LDD AB+3 SET ADDRESS
  2347. STI T7
  2348. LDD AB+4
  2349. STM 1,T7
  2350. UJN DFC4 SET LEFT SCREEN
  2351.  
  2352. DFC1 NJN DFC2 IF NOT 4
  2353. RJM RES RESET FIELDS TO 0, 10, 20, 30
  2354. UJN DFC3 ADVANCE DISPLAY FIELD
  2355.  
  2356. DFC1.1 JMP KIE *INCORRECT ENTRY*
  2357.  
  2358. DFC2 SBN 1
  2359. ZJN DFC3 IF 5
  2360. LDD AB+3 FORM TWO,S COMPLEMENT
  2361. LMC -770000
  2362. STD AB+3
  2363. LDD AB+4
  2364. LMC -770000
  2365. ADN 1
  2366. STD AB+4
  2367. SHN -14
  2368. RAD AB+3
  2369. DFC3 LDD T6 ADVANCE DISPLAY ADDRESSES
  2370. RJM ADA
  2371. DFC4 LDD T6
  2372. JMP SLS SET LEFT SCREEN
  2373. DJM SPACE 4,10
  2374. ** X,JSN.
  2375. * X,.
  2376. * WHERE X = C, D, F, G, M.
  2377. *
  2378. * DISPLAY JSN CHANGE
  2379.  
  2380.  
  2381. DJM BSS 0
  2382. LDD SF
  2383. ZJN DJS IF NOT SECURE SYSTEM
  2384. LDD LK
  2385. LPN 2
  2386. ZJN DFC1.1 IF SECURITY UNLOCK NOT SET
  2387. * UJN DJS
  2388. DJS SPACE 4,10
  2389. ** X,JSN.
  2390. * X,.
  2391. * WHERE X = H, J, K, P.
  2392. *
  2393. * DISPLAY JSN CHANGE.
  2394.  
  2395.  
  2396. DJS BSS 0
  2397. LDM KBUF SET DISPLAY NAME
  2398. DJS1 STD T7
  2399. RJM CJS CHANGE JSN
  2400. LDD T7
  2401. JMP SLS SET LEFT SCREEN
  2402. CDS SPACE 4,10
  2403. ** XY.
  2404. *
  2405. * CHANGE DISPLAYS ON LEFT AND RIGHT SCREENS.
  2406.  
  2407.  
  2408. CDS LDM KBUF LOAD LEFT SCREEN LETTER
  2409. SHN 6
  2410. LMM KBUF+1 LOAD RIGHT SCREEN LETTER
  2411. RJM LDO LOAD DISPLAY OVERLAYS
  2412. JMP KBR RETURN
  2413. DOV SPACE 4,10
  2414. *** 99.
  2415. *
  2416. * TOGGLE SYNTAX OVERLAY PROCESSING AND COMMAND LOGGING.
  2417.  
  2418.  
  2419. DOV LDM /KEYBOARD/ADSA TOGGLE SYNTAX OVERLAY STATUS
  2420. LMN 1
  2421. STM /KEYBOARD/ADSA
  2422. LDM /KEYBOARD/LKBB TOGGLE LOGGING STATUS
  2423. LMN 7
  2424. STM /KEYBOARD/LKBB
  2425. JMP KBR RETURN
  2426. QUAL SPACE 4,10
  2427. QUAL COMMAND
  2428. CDS EQU /RES/CDS
  2429. DJS EQU /RES/DJS
  2430. DJM EQU /RES/DJM
  2431. DFC EQU /RES/DFC
  2432. DOV EQU /RES/DOV
  2433. QUAL *
  2434. TITLE RESIDENT COMMAND PROCESSING SUBROUTINES.
  2435. QUAL
  2436. ADA SPACE 4,10
  2437. ** ADA - ADVANCE DISPLAY ADDRESSES.
  2438. *
  2439. * ENTRY (A) = DISPLAY CHARACTER.
  2440. * (AB+3 - AB+4) = INCREMENT.
  2441. *
  2442. * USES T1, T2.
  2443.  
  2444.  
  2445. ADA SUBR ENTRY/EXIT
  2446. STD T1 SET CHARACTER
  2447. SBN TDFCL
  2448. PJN ADAX IF NO DISPLAY FIELD DEFINED
  2449. LDM TDFC-1,T1 SET FIELD TABLE ADDRESS
  2450. STD T1
  2451. ZJN ADAX IF FIELD NOT DEFINED
  2452. LDD T1 SET LIMIT
  2453. ADN 10
  2454. STD T2
  2455. ADA1 LDD AB+4 ADVANCE DISPLAY FIELD
  2456. RAM 1,T1
  2457. SHN -12D
  2458. ADD AB+3
  2459. RAI T1
  2460. LDN 2 ADVANCE FIELD
  2461. RAD T1
  2462. LMD T2
  2463. NJN ADA1 IF LIMIT NOT REACHED
  2464. UJN ADAX RETURN
  2465. ASD SPACE 4,15
  2466. ** ASD - ASSEMBLE DIGITS.
  2467. *
  2468. * ENTRY (CA) = ADDRESS OF NEXT CHARACTER.
  2469. *
  2470. * EXIT (A) = NON OCTAL DIGIT IN STRING.
  2471. * (CA) UPDATED.
  2472. * (AB - AB+4) = DIGITS ASSEMBLED, RIGHT-JUSTIFIED.
  2473. *
  2474. * USES T1, T2, T3, AB - AB+4.
  2475.  
  2476.  
  2477. ASD SUBR ENTRY/EXIT
  2478. LDN ZERL CLEAR ASSEMBLY
  2479. CRD AB
  2480. ASD1 LDI CA CHECK CHARACTER
  2481. SBN 1R0
  2482. MJN ASD2 IF ALPHA
  2483. SBN 10
  2484. MJN ASD3 IF OCTAL DIGIT
  2485. SBN 1R -1R8
  2486. ZJN ASD5 IF * *
  2487. ASD2 LDI CA GET CHARACTER
  2488. UJN ASDX RETURN
  2489.  
  2490. ASD3 ADN 10 SET NEW DIGIT
  2491. STD T2
  2492. LDN AB+4 SET BYTE ADDRESS
  2493. STD T3
  2494. ASD4 LDI T3 BYTE * 10
  2495. SHN 3
  2496. ADD T2 ADD NEW DIGIT
  2497. STI T3
  2498. SHN -14 NEW DIGIT = OVERFLOW
  2499. STD T2
  2500. SOD T3 DECREMENT BYTE ADDRESS
  2501. LMN AB-1
  2502. NJN ASD4 IF NOT 5 BYTES
  2503. ASD5 AOD CA ADVANCE CHARACTER
  2504. UJN ASD1 LOOP
  2505. ASN SPACE 4,15
  2506. ** ASN - ASSEMBLE NAME.
  2507. *
  2508. * ENTRY (CA) = CHARACTER ADDRESS.
  2509. *
  2510. * EXIT (AB - AB+4) = ASSEMBLED NAME LEFT JUSTIFIED WITH
  2511. * ZERO FILL.
  2512. * (CA) ADVANCED TO SEPARATOR CHARACTER.
  2513. *
  2514. * USES T1, T2, AB - AB+4.
  2515.  
  2516.  
  2517. ASN SUBR ENTRY/EXIT
  2518. LDN ZERL CLEAR ASSEMBLY
  2519. CRD AB
  2520. LDN AB SET BYTE ADDRESS
  2521. STD T1
  2522. ASN1 LDI CA CHECK CHARACTER
  2523. ZJN ASNX IF END OF STRING
  2524. SBN 1R9+1
  2525. PJN ASNX IF SEPARATOR
  2526. ADN 1R9+1 STORE UPPER
  2527. SHN 6
  2528. STI T1
  2529. AOD CA ADVANCE CHARACTER
  2530. LDI CA CHECK CHARACTER
  2531. ZJN ASNX IF END OF STRING
  2532. SBN 1R9+1
  2533. PJN ASNX IF SEPARATOR
  2534. ADN 1R9+1 STORE LOWER
  2535. RAI T1
  2536. AOD CA ADVANCE CHARACTER
  2537. AOD T1 ADVANCE BYTE
  2538. LMN AB+5
  2539. NJN ASN1 IF NOT 5 BYTES
  2540. UJN ASNX RETURN
  2541. AST SPACE 4,10
  2542. ** AST - ACCESS SUBSYSTEM TABLES.
  2543. *
  2544. * ENTRY (A) = 6/0, 12/SSID, IF ACCESS SSCT.
  2545. * = 6/FL, 12/SSID, IF ACCESS SSAT.
  2546. * WHERE FL = *SSCTL* VALUE.
  2547. * SSID = SUBSYSTEM ID.
  2548. *
  2549. * EXIT (A) = 6/ , 12/BYTE REQUESTED.
  2550. *
  2551. * USES T1, T2, T3, CM - CM+4.
  2552.  
  2553.  
  2554. AST SUBR ENTRY/EXIT
  2555. STD T3 SAVE SUBSYSTEM ID
  2556. SHN -14
  2557. STD T2 SAVE TABLE FLAG
  2558. LDC MXSI COMPUTE BYTE COUNT
  2559. SBD T3
  2560. STD T3
  2561. LCN 0 COMPUTE WORD
  2562. STD T1
  2563. AST1 AOD T1
  2564. LCN 5
  2565. RAD T3
  2566. PJN AST1 IF BYTE NOT REDUCED
  2567. ADN 5
  2568. STD T3
  2569. LDC SSCP GET FWA SUBSYSTEM TABLE
  2570. CRD CM
  2571. LDD CM+2
  2572. SHN 14
  2573. LMD CM+3
  2574. ADD T1
  2575. ADD T2
  2576. CRD CM
  2577. LDM CM,T3
  2578. UJN ASTX RETURN
  2579. CJS SPACE 4,10
  2580. ** CJS - CHANGE JSN.
  2581. *
  2582. * ENTRY (T7) = 6/0, 6/DISPLAY NAME.
  2583. *
  2584. * EXIT (T7) = DISPLAY NAME.
  2585. *
  2586. * CALLS ASN, GEE, SJT.
  2587.  
  2588.  
  2589. CJS2 LDD T7 SEARCH JSN TABLE
  2590. RJM SJT
  2591. ZJN CJS1 IF DISPLAY NOT FOUND
  2592. LDD AB+1
  2593. STM 2,T2 SET NEW JSN
  2594. LDD AB
  2595. STM 1,T2
  2596. ZJN CJS3 IF CLEARING JSN
  2597. LDN AB SET JSN FWA
  2598. RJM GEE GET EJT ENTRY
  2599. PJN CJS3 IF EJT ENTRY FOUND
  2600. LDN 0
  2601. CJS3 STM 3,T2 SET EJT ORDINAL
  2602.  
  2603. CJS SUBR ENTRY/EXIT
  2604. RJM ASN ASSEMBLE JSN
  2605. LDD AB
  2606. ZJN CJS2 IF NO JSN
  2607. LDD AB+2
  2608. NJN CJS1 IF JSN .GT. 4 CHARACTERS
  2609. LDD AB+1
  2610. NJN CJS2 IF JSN .GT. 2 CHARACTERS
  2611. CJS1 JMP KIE PROCESS INCORRECT ENTRY
  2612. CLP SPACE 4,15
  2613. ** CLP - CALL PP.
  2614. *
  2615. * ENTRY (A) = PP PROGRAM NAME.
  2616. * (AB+1 - AB+4) = PARAMETERS.
  2617. *
  2618. * USES AB, AB+1, ID, KM, CM - CM+4.
  2619. *
  2620. * MACROS MONITOR.
  2621.  
  2622.  
  2623. CLP3 LDN 0 CLEAR INTERLOCK
  2624. STD ID
  2625.  
  2626. CLP SUBR ENTRY/EXIT
  2627. EXR EQU CLP
  2628. SHN 14 STORE NAME
  2629. STD AB
  2630. SHN -6
  2631. SCN 77
  2632. STD AB+1
  2633. LDD MA STORE REQUEST
  2634. CWD AB
  2635. ADN 1 SAVE (SP) FOR *1DS*
  2636. CWD SP
  2637. LDN 1 SET PRIORITY REQUEST
  2638. STD CM+1
  2639. MONITOR RPPM REQUEST PP
  2640. LDD CM+1
  2641. NJN CLP3 IF PP ASSIGNED
  2642. LDD ID CHECK IF MESSAGE BUFFER INTERLOCK SET
  2643. ZJN CLP1 IF NOT SET
  2644. LDN 0 CLEAR ID
  2645. STD ID
  2646. LDC /1DS/DSDL
  2647. CWD ID
  2648. CLP1 LDC KSBP *PPU BUSY*
  2649. CLP2 STD KM
  2650. JMP KIC INCOMPLETE RETURN
  2651. CMM SPACE 4,10
  2652. ** CMM - CLEAR MONITOR MESSAGE.
  2653. *
  2654. * ENTRY (CM) = 0.
  2655. * (FTND) = SYSTEM CONTROL POINT MESSAGE 2 AREA ADDRESS.
  2656.  
  2657.  
  2658. CMM SUBR ENTRY/EXIT
  2659. LDM FTND *NO MONITOR RESPONSE* MESSAGE FLAG
  2660. ZJN CMMX IF NO MESSAGE PENDING
  2661. CWD CM CLEAR MESSAGE
  2662. LDN 0
  2663. STM FTND CLEAR MESSAGE FLAG
  2664. UJN CMMX RETURN
  2665. IEE SPACE 4,15
  2666. ** IEE - INTERLOCK EJT ENTRY.
  2667. *
  2668. * ENTRY (A) = EJTO OF ENTRY TO INTERLOCK.
  2669. *
  2670. * EXIT (A) = EJT ORDINAL IF INTERLOCK ACHIEVED.
  2671. * .LT. 0 IF INTERLOCK REJECTED.
  2672. * (T3) = EJT ORDINAL.
  2673. * (EI) = EJT ORDINAL IF INTERLOCK ACHIEVED.
  2674. *
  2675. * USES AB - AB+4, CM - CM+4.
  2676. *
  2677. * MACROS MONITOR, SFA.
  2678.  
  2679.  
  2680. IEE1 LCN 0 SET REJECT EXIT CONDITION
  2681.  
  2682. IEE SUBR ENTRY/EXIT
  2683. STD T3
  2684. SFA EJT CHECK JSN
  2685. ADK JSNE
  2686. CRD AB
  2687. STD CM+4 SAVE ABSOLUTE ADDRESS OF EJT ENTRY
  2688. SHN -14
  2689. STD CM+3
  2690. LDD AB
  2691. ZJN IEE1 IF EJT ENTRY EMPTY
  2692. LDN 0 INTERLOCK EJT ENTRY
  2693. STD CM+1
  2694. STD CM+2 CLEAR UNUSED BYTE
  2695. MONITOR UTEM
  2696. LDD CM+1
  2697. NJN IEE1 IF INTERLOCK REJECT
  2698. LDD T3
  2699. STD EI
  2700. UJN IEEX RETURN
  2701. CMT SPACE 4,15
  2702. ** CMT - CHECK *MAGNET*.
  2703. *
  2704. * EXIT (A) = 0, IF *MAGNET* NOT ACTIVE.
  2705. * = RA + /MTX/UBUF, IF *MAGNET* ACTIVE.
  2706. * (T1) = CP NUMBER.
  2707. * (T2 - T6) = (UBUF), (T3) = 0.
  2708. * (T7) = *MAGNET* RA, IF NOT CME.
  2709. * = 4000B, IF CME.
  2710. * (R) = *MAGNET* RA, IF CME.
  2711. *
  2712. * USES CM, T1 - T7.
  2713. *
  2714. * CALLS FSS.
  2715.  
  2716.  
  2717. CMT SUBR ENTRY/EXIT
  2718. LDC MTSI FIND *MAGNET*
  2719. RJM FSS
  2720. ZJN CMTX IF *MAGNET* NOT ACTIVE
  2721. STD T1
  2722. SHN 7
  2723. CMTA ADN FLSW
  2724. * ADN FLSW+1 (CENTRAL MEMORY EXTENSION)
  2725. CRD T4
  2726. LRD T4+1 ((R) = RA IF CME)
  2727. * LDD T4+3 SET RA
  2728. * STD T7
  2729. LDD T7 (T7) = RA
  2730. SHN 6
  2731. ADN /MTX/UBUF READ *MAGNET* UDT POINTER
  2732. CRD T2
  2733. UJN CMTX RETURN
  2734. DAL SPACE 4,10
  2735. ** DAL - DISPLAY ACCESS LEVEL STRING.
  2736. *
  2737. * ENTRY (A) = TABLE ENTRY NUMBER.
  2738.  
  2739.  
  2740. DAL SUBR ENTRY/EXIT
  2741. LPN 7
  2742. SHN 2 CONVERT ENTRY NUMBER TO TABLE INDEX
  2743. ADK TALV
  2744. STM DALA
  2745. LDN 4 DISPLAY STRING
  2746. OAM 0,CH
  2747. DALA EQU *-1
  2748. UJN DALX RETURN
  2749. FSS SPACE 4,10
  2750. ** FSS - FIND SUBSYSTEM.
  2751. *
  2752. * ENTRY (A) = SUBSYSTEM ID.
  2753. *
  2754. * EXIT (A) = 0, IF SUBSYSTEM NOT ACCESSIBLE AT A CP.
  2755. * = CP NUMBER, IF SUBSYSTEM IS ACCESSIBLE AT A CP.
  2756. *
  2757. * USES CM - CM+4, T2 - T6.
  2758. *
  2759. * CALLS AST.
  2760. *
  2761. * MACROS SFA.
  2762.  
  2763.  
  2764. FSS1 LDN 0 SET NOT AT CP
  2765.  
  2766. FSS SUBR ENTRY/EXIT
  2767. STD T4 SAVE SUBSYSTEM ID
  2768. RJM AST GET SSCT ENTRY
  2769. SHN 21-13
  2770. PJN FSS1 IF SUBSYSTEM NOT ACCESSIBLE
  2771.  
  2772. * GET CP NUMBER FROM EJT ENTRY.
  2773.  
  2774. LDD T4
  2775. ADC SSCTL*10000 GET SSAT ENTRY
  2776. RJM AST
  2777. ZJN FSSX IF SUBSYSTEM NOT ACTIVE
  2778. SFA EJT CALCULATE EJT ENTRY ADDRESS
  2779. ERRNZ JSNE NOT FIRST WORD OF EJT ENTRY
  2780. CRD CM
  2781. ADN SCHE GET CP NUMBER
  2782. CRD T2
  2783. LDD CM+4
  2784. LPN 76
  2785. LMN EXJS*2
  2786. NJN FSS1 IF SUBSYSTEM NOT EXECUTING
  2787. LDD T2+3 GET CP NUMBER
  2788. LPN 37
  2789. UJN FSSX RETURN
  2790. FTN SPACE 4,10
  2791. ** FTN - PROCESS MONITOR FUNCTION.
  2792. *
  2793. * ENTRY (A) = FUNCTION.
  2794. * (CM+1 - CM+4) = PARAMETERS.
  2795. *
  2796. * EXIT (CM - CM+4) = OUTPUT REGISTER.
  2797. *
  2798. * USES KM, T1, CM - CM+4, SR - SR+4.
  2799. *
  2800. * CALLS CMM.
  2801.  
  2802.  
  2803. FTN6 RJM CMM CLEAR MONITOR MESSAGE
  2804.  
  2805. FTN SUBR ENTRY/EXIT
  2806. LMD TH SET *DSD*/*MTR* INTERLOCK
  2807. STD CM SET FUNCTION
  2808. LDC 200 SET TIME DELAY
  2809. * LDC 100 (2X PP SPEED)
  2810. * LDC 40 (1X PP SPEED)
  2811. FTNC EQU *-1
  2812. STD T1
  2813.  
  2814. * THIS CODE ALLOWS FOR DEAD *MTR* AND FOR FUNCTIONS THAT
  2815. * WERE HUNG.
  2816.  
  2817. LDD OA CHECK FOR PREVIOUS FUNCTION COMPLETE
  2818. CRD SR
  2819. LDD SR
  2820. NJN FTN3 IF PREVIOUS FUNCTION NOT TAKEN
  2821. STD T0 INITIALIZE TIMER
  2822. LDD OA STORE OUTPUT REGISTER
  2823. CWD CM
  2824. FTN1 LDD OA READ OUTPUT REGISTER
  2825. CRD CM
  2826. LDD CM
  2827. ZJP FTN6 IF OUTPUT REGISTER CLEAR
  2828. SOD T0
  2829. NJN FTN1 IF NOT TIMED OUT
  2830. SOD T1 COUNT TIMER
  2831. NJN FTN1 IF NOT TIMED OUT
  2832. LDD NC *NO MONITOR RESPONSE*
  2833. SHN 7
  2834. ADN MS2W
  2835. STM FTND SET FLAG TO SYSTEM MESSAGE BUFFER ADDRESS
  2836. CWM FTNB,TR
  2837. FTN3 LDM FTN RETURN ADDRESS
  2838. ADC -.CCHM CHECK CHANNEL RETURN ADDRESS
  2839. ZJN FTN4 IF WAITING FOR CHANNEL
  2840. ADC .CCHM-.FLFT LOWEST ADDRESS FOR DISPLAY OVERLAYS
  2841. MJN FTN5 IF NOT CALLED BY SOME DISPLAY PROCESSOR
  2842. FTN4 LJM FTNX RETURN
  2843.  
  2844. FTN5 LDC KSBM *MTR BUSY*
  2845. LJM CLP2 PROCESS INCOMPLETE *CR*
  2846.  
  2847. FTNB DATA C*NO MONITOR RESPONSE*
  2848. FTND CON 0 SYSTEM CONTROL POINT MESSAGE FLAG
  2849. GEE SPACE 4,20
  2850. *** GEE - GET EJT ENTRY.
  2851. *
  2852. * ENTRY (A) = FWA OF JSN.
  2853. *
  2854. * EXIT (A) = EJT ORDINAL OF ENTRY FOUND.
  2855. * .LT. 0 IF ENTRY NOT FOUND.
  2856. * (T3) = ORDINAL OF ENTRY FOUND.
  2857. * (T5) = FWA OF JSN.
  2858. * (CM - CM+4) = WORD *JSNE* OF ENTRY FOUND.
  2859. *
  2860. * USES T3, T5, T6, T8, T9, CM - CM+4.
  2861. *
  2862. * MACROS SFA.
  2863.  
  2864.  
  2865. GEE2 LDD T8
  2866. ZJN GEE6 IF NO MORE ENTRIES IN USE
  2867. SFA EJT,T3
  2868. ADK JSNE
  2869. CRD CM FETCH FIRST WORD OF EJT ENTRY
  2870. LDD CM
  2871. ZJN GEE4 IF EMPTY ENTRY
  2872. LMI T5
  2873. NJN GEE3 IF NOT MATCHING JSN
  2874. LDI T9
  2875. LMD CM+1
  2876. ZJN GEE7 IF MATCHING JSN
  2877. GEE3 SOD T8
  2878. GEE4 AOD T3 ADVANCE EJT ORDINAL
  2879. LMD T6
  2880. GEE5 NJN GEE2 IF NOT END OF EJT
  2881. GEE6 LDC 1S17
  2882. GEE7 ADD T3 SET EXIT CONDITION
  2883.  
  2884. GEE SUBR ENTRY/EXIT
  2885. STD T5 SAVE FWA OF JSN
  2886. ADN 1
  2887. STD T9
  2888. LDI T9 CHECK JSN LENGTH
  2889. LPN 77
  2890. NJN GEE1 IF JSN .GT. 3 CHARACTERS
  2891. LDN 1R
  2892. RAI T9
  2893. GEE1 LDN EJTP
  2894. CRD CM
  2895. LDN 0 INITIALIZE EJT ORDINAL
  2896. STD T3
  2897. LDD CM+2 SAVE NUMBER OF EJT ENTRIES
  2898. STD T6
  2899. SBD CM+3 SAVE NUMBER OF ENTRIES USED
  2900. STD T8
  2901. UJP GEE5 BEGIN EJT SCAN
  2902. RES SPACE 4,5
  2903. ** RES - RESET ADDRESS FIELDS TO 0, 10, 20, 30.
  2904. *
  2905. * ENTRY (A) = 0.
  2906. * (T7) = DISPLAY ADDRESS TABLE FWA.
  2907.  
  2908.  
  2909. RES SUBR ENTRY/EXIT
  2910. STI T7 CLEAR FIELDS TO 0, 10, 20, 30
  2911. STM 1,T7
  2912. STM 2,T7
  2913. STM 4,T7
  2914. STM 6,T7
  2915. ADN 10
  2916. STM 3,T7
  2917. ADN 10
  2918. STM 5,T7
  2919. ADN 10
  2920. STM 7,T7
  2921. UJN RESX RETURN
  2922. SJS SPACE 4,15
  2923. ** SJS - SEARCH FOR JSN IN EJT.
  2924. *
  2925. * ENTRY (A) = JSN ADDRESS IN *TJAZ* TABLE.
  2926. *
  2927. * EXIT (A). LT. 0, IF NO DISPLAY POSSIBLE.
  2928. * (A) = 0, IF NO JSN IN *TJAZ* ENTRY.
  2929. * (CM+3) = CP NUMBER OF EJT ENTRY.
  2930. * (CP) = CP AREA ADDRESS OF EJT ENTRY.
  2931. * = 0, IF SYSTEM CP.
  2932. * EJTO IN *TJAZ* UPDATED.
  2933. *
  2934. * USES CP, T3, T5, CM - CM+4.
  2935. *
  2936. * MACROS DISPLA, SFA.
  2937. *
  2938. * CALLS GEE, USS.
  2939.  
  2940.  
  2941. SJS4 LDM 2,T5 GET JSN FROM EJT ENTRY
  2942. STD T3 SAVE EJTO
  2943. SFA EJT
  2944. ERRNZ JSNE NOT FIRST WORD OF EJT ENTRY
  2945. CRD CM
  2946. LDI T5
  2947. LMD CM
  2948. NJN SJS5 IF JSN DOES NOT MATCH
  2949. LDM 1,T5
  2950. LMD CM+1
  2951. ZJN SJS6 IF JSN MATCHES
  2952. SJS5 LDD T5 GET FWA OF JSN TO FIND
  2953. RJM GEE SEARCH EJT
  2954. MJN SJS1 IF EJT ENTRY NOT FOUND
  2955. STM 2,T5
  2956. RJM USS UPDATE SCREEN STATUS
  2957. SJS6 LDD CM+4
  2958. LPN 76
  2959. LMN EXJS*2
  2960. NJN SJS3 IF EJT ENTRY NOT AT A CP
  2961. SFA EJT,T3 GET CP NUMBER
  2962. ADN SCHE
  2963. CRD CM
  2964. LDD CM+3 SET CP AREA ADDRESS
  2965. SJS7 SHN 7
  2966. STD CP
  2967.  
  2968. SJS SUBR ENTRY/EXIT
  2969. STD T5
  2970. LDI T5
  2971. NJP SJS4 IF JSN SELECTED
  2972. * LDN 0
  2973. STM 2,T5
  2974. UJN SJS7 SET CPA ADDRESS
  2975.  
  2976. SJS1 DISPLA CH01,LN07,(JSN NOT FOUND)
  2977. * LDN 0 CLEAR EJTO IN *TJAZ*
  2978. STM 2,T5
  2979. RJM USS UPDATE SCREEN STATUS
  2980. SJS2 LCN 0 SET NO DISPLAY POSSIBLE
  2981. UJN SJSX RETURN
  2982.  
  2983. SJS3 DISPLA CH01,LN07,(ROLLED)
  2984. UJN SJS2 RETURN
  2985. SJT SPACE 4,10
  2986. ** SJT - SEARCH JSN (*TJAZ*) TABLE.
  2987. *
  2988. * ENTRY (A) = DISPLAY NAME.
  2989. *
  2990. * EXIT (A) = FWA OF ENTRY FOUND.
  2991. * = 0 IF NOT FOUND.
  2992. * (T2) = FWA OF ENTRY FOUND.
  2993.  
  2994.  
  2995. SJT1 LDN /DSD/TJAZE ADVANCE TABLE ADDRESS
  2996. RAD T2
  2997. SJT2 LDI T2
  2998. ZJN SJTX IF END OF TABLE
  2999. LMD T0
  3000. LPN 77
  3001. NJN SJT1 IF NOT MATCHING ENTRY
  3002. LDD T2
  3003.  
  3004. SJT SUBR ENTRY/EXIT
  3005. STD T0
  3006. LDC /DSD/TJAZ INITIALIZE SEARCH
  3007. STD T2
  3008. UJN SJT2 BEGIN TABLE SCAN
  3009. TITLE TABLES AND CONSTANTS FOR OVERLAYS.
  3010. TDFC SPACE 4,10
  3011. ** TDFC - DISPLAY FIELD CHANGE TABLE.
  3012.  
  3013.  
  3014. TDFC BSS 0
  3015. LOC 1RA
  3016.  
  3017. CON 0 NO FIELD
  3018. CON 0 NO FIELD
  3019. CON TDSC DISPLAY C
  3020. CON TDSD DISPLAY D
  3021. CON 0 NO FIELD
  3022. CON TDSF DISPLAY F
  3023. CON TDSG DISPLAY G
  3024. CON 0 NO FIELD
  3025. CON 0 NO FIELD
  3026. CON 0 NO FIELD
  3027. CON 0 NO FIELD
  3028. CON 0 NO FIELD
  3029. CON TDSM DISPLAY M
  3030.  
  3031. TDFCL BSS 0
  3032. LOC *O
  3033. SPACE 4,10
  3034. ** MISCELLANEOUS CONSTANTS.
  3035.  
  3036.  
  3037. DFIM (CON T721)
  3038. CTOS CON T545 Y-COORDINATE FOR TOP OF SCREEN BODY
  3039. DFIM (CON Y721)
  3040. CBOS CON Y545 BOTTOM OF SCREEN COORDINATE
  3041. MORE CON XMOR X-COORDINATE FOR THE *MORE* MESSAGE
  3042. DATA 4HMORE
  3043. MOREL EQU *-MORE
  3044. CMEI CON 0 CENTRAL MEMORY EXTENSION PRESENT FLAG
  3045. DFIM (CON C721) CODE FOR 721 CONSOLE
  3046. DCTY CON C545 DISPLAY CONSOLE TYPE
  3047. DLYA SBN 20 1X PP DELAY
  3048. * SBN 10 2X PP DELAY
  3049. * SBN 4 4X PP DELAY
  3050. LUDT CON 0 LENGTH OF MAGNET UNIT DESCRIPTOR TABLE
  3051. UESC BSS 1 USER EXTENDED MEMORY SHIFT COUNT
  3052. TDSA SPACE 4,15
  3053. ** TDSA - *A* DISPLAY CONTROL TABLE.
  3054. *
  3055. * ENTRY = 1 WORD.
  3056. *
  3057. *T, 12/ IND
  3058. * IND BUFFER INDEX
  3059.  
  3060.  
  3061. TDSA BSS 0
  3062. CON 0 MASTER DAYFILE
  3063. CON 0 ACCOUNT FILE
  3064. CON 0 ERROR LOG
  3065.  
  3066. ADSC CON 0 *A* DISPLAY TYPE
  3067. CON -0 LAST LINE USED ON DISPLAY
  3068. CON 0 SCREEN FULL FLAG (0 = FULL)
  3069. TDSB SPACE 4,10
  3070. ** TDSB - *B* DISPLAY CONTROL TABLE.
  3071.  
  3072.  
  3073. TDSB BSS 0
  3074. CON 1RA&1RA DEFAULT DISPLAY TYPE (*B,A*)
  3075. TDSC SPACE 4,10
  3076. ** TDSC - *C* DISPLAY ADDRESS TABLE.
  3077.  
  3078.  
  3079. TDSC BSS 0
  3080. VFD 24/0
  3081. VFD 24/10
  3082. VFD 24/20
  3083. VFD 24/30
  3084. TDSD SPACE 4,10
  3085. ** TDSD - *D* DISPLAY ADDRESS TABLE.
  3086.  
  3087.  
  3088. TDSD BSS 0
  3089. DFIM (VFD 24/20)
  3090. VFD 24/40
  3091. DFIM (VFD 24/30)
  3092. VFD 24/50
  3093. VFD 24/60
  3094. VFD 24/70
  3095. TDSE SPACE 4,10
  3096. ** TDSE - *E* DISPLAY CONTROL TABLE.
  3097.  
  3098.  
  3099. TDSE BSS 0
  3100. CON 0 CURRENT LEFT SCREEN INDEX
  3101. CON 0 NEXT LEFT SCREEN INDEX
  3102. CON 0 CURRENT RIGHT SCREEN INDEX
  3103. CON 0 NEXT RIGHT SCREEN INDEX
  3104. TDSEA CON 0 CURRENT E,T DISPLAY UDT OFFSET
  3105. CON 0 NEXT E,T DISPLAY UDT OFFSET
  3106. TDSF SPACE 4,10
  3107. ** TDSF - *F* DISPLAY ADDRESS TABLE.
  3108.  
  3109.  
  3110. TDSF BSS 0
  3111. VFD 24/0
  3112. VFD 24/10
  3113. VFD 24/20
  3114. VFD 24/30
  3115. TDSG SPACE 4,10
  3116. ** TDSG - *G* DISPLAY ADDRESS TABLE.
  3117.  
  3118.  
  3119. TDSG BSS 0
  3120. DFIM (VFD 24/20)
  3121. VFD 24/40
  3122. DFIM (VFD 24/30)
  3123. VFD 24/50
  3124. VFD 24/60
  3125. VFD 24/70
  3126. TDSH SPACE 4,10
  3127. ** TDSH - *H* DISPLAY CONSTANT TABLE.
  3128.  
  3129.  
  3130. TDSH BSS 0
  3131. CON 0 CURRENT INDEX
  3132. CON 0 NEXT INDEX
  3133. TDSI SPACE 4,10
  3134. ** TDSI - *I* DISPLAY CONTROL TABLE.
  3135.  
  3136.  
  3137. TDSI BSS 0
  3138. CON 0 CURRENT INDEX
  3139. CON 0 NEXT INDEX
  3140. TDSM SPACE 4,10
  3141. ** TDSM - *M* DISPLAY ADDRESS TABLE.
  3142.  
  3143.  
  3144. TDSM BSS 0
  3145. VFD 24/0
  3146. VFD 24/10
  3147. VFD 24/20
  3148. VFD 24/30
  3149. TDTL SPACE 4,10
  3150. ** TDTL - *O,TLD* DISPLAY CONTROL TABLE.
  3151.  
  3152.  
  3153. TDTL BSS 0
  3154. CON 0 CURRENT *TLD* ENTRY INDEX
  3155. CON 0 NEXT *TLD* ENTRY INDEX
  3156. CON 0 CURRENT *TLD* LIBRARY OFFSET
  3157. CON 0 NEXT *TLD* LIBRARY OFFSET
  3158. TDSO SPACE 4,10
  3159. ** TDSO - *O,TST* DISPLAY CONTROL TABLE.
  3160.  
  3161.  
  3162. TDSO BSS 0
  3163. CON 1 CURRENT INDEX
  3164. CON 1 NEXT INDEX
  3165. TDTS SPACE 4,10
  3166. ** TDTS - *O,SCP* DISPLAY CONTROL TABLE.
  3167.  
  3168.  
  3169. TDTS BSS 0
  3170. CON 1 CURRENT INDEX
  3171. CON 1 NEXT INDEX
  3172. TDSP SPACE 4,10
  3173. ** *P* DISPLAY PP CONTROL.
  3174.  
  3175.  
  3176. TDSPA CON 0 PPS SWITCH FLAG (CYBER 17X ONLY)
  3177. TDSQ SPACE 4,10
  3178. ** TDSQ - *Q* DISPLAY CONSTANT TABLE.
  3179.  
  3180.  
  3181. TDSQ BSS 0
  3182. CON 0 CURRENT QFT ORDINAL
  3183. CON 0 NEXT QFT ORDINAL
  3184.  
  3185. TDSQA CON 4000 QUEUE TYPE TO DISPLAY (4000 = ALL QUEUES)
  3186. TDSR SPACE 4,10
  3187. ** TDSR - *R* DISPLAY CONTROL TABLE.
  3188.  
  3189.  
  3190. TDSR BSS 0
  3191. CON 0 CURRENT PAGE FIRST EJTO
  3192. CON 0 NEXT PAGE FIRST EJTO
  3193. TDSS SPACE 4,10
  3194. ** TDSS - *S* DISPLAY CONTROL TABLE.
  3195.  
  3196.  
  3197. TDSS BSS 0
  3198. CON 1 CURRENT PAGE FIRST SERVICE CLASS
  3199. CON 0 NEXT PAGE FIRST SERVICE CLASS
  3200. TDST SPACE 4,10
  3201. * TDST - *T* DISPLAY CONSTANT TABLE.
  3202.  
  3203.  
  3204. TDST BSS 0
  3205. CON /REM/VPST CURRENT PAGE FIRST CONNECTION NUMBER
  3206. CON /REM/VPST NEXT PAGE FIRST CONNECTION NUMBER
  3207. SPACE 4,10
  3208. ** TDSV - *V* DISPLAY CONTROL TABLE.
  3209.  
  3210.  
  3211. TDSV CON 0 REFRESH FLAG / PP NUMBER
  3212. CON 0 PP MB+5
  3213. CON PPFW DISPLAY C POINTER
  3214. CON 0 DISPLAY D POINTER
  3215. TJOT SPACE 4,10
  3216. ** TJSC - TABLE OF SERVICE CLASS TYPES.
  3217. *
  3218. *T 6/CHARACTER, 6/0
  3219.  
  3220.  
  3221. TJSC BSS 0
  3222. LIST D,G
  3223. BASE OCTAL
  3224. .A SET 1 INITIALIZE CHARACTER NUMBER
  3225. DUP MXSC LOOP FOR ALL SERVICE CLASSES
  3226. .C MICRO .A,1,+"NMDS"+
  3227. CON 1L".C"
  3228. .A SET .A+1 GET NEXT SERVICE CLASS
  3229. ENDD
  3230. BASE *
  3231. LIST *
  3232. CON 0 END OF TABLE
  3233. TGTF SPACE 4,10
  3234. ** TGTF - TOGGLE FLAGS.
  3235. *
  3236. * NOTE - THESE FLAGS ARE CLEARED BY ROUTINE *LOV* WHEN AN
  3237. * OVERLAY IS INITIALLY LOADED.
  3238.  
  3239.  
  3240. TGTF BSS 0
  3241. CON 0 */* - LEFT SCREEN TOGGLE FLAG
  3242. CON 0 *=* - RIGHT SCREEN TOGGLE FLAG
  3243. JDAT SPACE 4,10
  3244. ** JDAT - JULIAN DATE.
  3245.  
  3246.  
  3247. JDAT VFD 24/0
  3248. VFD 36/5R00000
  3249. DIS SPACE 4,10
  3250. * INSERT DISPLAY MESSAGES.
  3251.  
  3252.  
  3253. CON 0
  3254. DIS HERE
  3255. TITLE FOLLOWING CODE WILL BE OVERLAID AFTER PRESET.
  3256. PRS SPACE 4,10
  3257. ** PRS - PRESET PROGRAM.
  3258. *
  3259. * EXIT (EJ - EJ+1) = FWA EJT.
  3260. * (IA) = ADDRESS OF FIRST PP INPUT REGISTER.
  3261. * (LK) = LOCK STATUS.
  3262. * (MA) = MESSAGE BUFFER ADDRESS.
  3263. * (NC) = NUMBER OF CP-S.
  3264. * (OA) = ADDRESS OF FIRST PP OUTPUT REGISTER.
  3265.  
  3266.  
  3267. QUAL DSD
  3268.  
  3269. PRS LDN PPCP READ PP COMMUNICATION AREA POINTER
  3270. CRD CM
  3271. LDD CM+4 SET COMMUNICATION ADDRESSES
  3272. ADN 10
  3273. STD IA
  3274. ADN 1
  3275. STD OA
  3276. ADN 1
  3277. STD MA
  3278.  
  3279. * SET CONSTANTS.
  3280.  
  3281. IJM PRS1,SC IF NOT CYBER 170
  3282. LDK /SCR/FCRD+/SCR/PMSW READ PPS SWITCH
  3283. OAN SC
  3284. IAN SC
  3285. SHN 4-11
  3286. LPN 20
  3287. STM TDSPA A = 0 FOR PPS-0 A = 20 FOR PPS-1
  3288. PRS1 RJM /GFP/IFP INITIALIZE *SFA* MACRO
  3289. LDK MEFL SET USER EM SHIFT COUNT
  3290. CRD T3
  3291. LDD T3+2
  3292. SHN -11
  3293. STM UESC
  3294. LDN SSML SET SECURITY FLAG
  3295. CRD T3
  3296. ADK MABL-SSML READ PP SPEED AND MAINFRAME TYPE
  3297. CRD T4
  3298. LDD T3
  3299. LPN 3
  3300. STD SF
  3301. NJN PRS1.1 IF SECURE SYSTEM
  3302. LDC 2R$$ DISABLE *SECURE-UNLOCK* COMMAND
  3303. STM TSUL+2
  3304. PRS1.1 LDM PRSA,T4+4 GET TIME DELAY
  3305. STM FTNC
  3306. LDM PRSB,T4+4
  3307. STM DLYA
  3308. LDN NCPL READ CONTROL POINT COUNT
  3309. CRD T6
  3310. ADK MMFL-NCPL READ MMF STATUS WORD
  3311. CRD CM
  3312. AOD T6+1 SET NUMBER OF CONTROL POINTS
  3313. STD NC
  3314. LDD CM SET MACHINE ID
  3315. STM DLSF
  3316. LDD T4+1 CHECK MAINFRAME TYPE
  3317. SHN 21-13
  3318. MJN PRS3 IF NOT CYBER 170-8X5
  3319. AJM PRS2,SC IF CYBER 170-865/875
  3320. AOM /DSD/TDSO+1RP USE CYBER 180 *P* DISPLAY DRIVER
  3321. ERRNZ /DISPLAY/DSP7/10000+1-/DISPLAY/DSP8/10000 FIX *AOM*
  3322. PRS2 AOM CMTA CHANGE TO READ *FLSW*+1
  3323. STM CMEI SET R-REGISTER FLAG
  3324. LDD T4+1 CHECK MAINFRAME TYPE
  3325. SHN 21-6
  3326. PJN PRS3 IF NOT CYBER 180
  3327. LDC /PRESET/RDT BYPASS DATE/TIME PROMPTS
  3328. STM /PRESET/DMRA
  3329. LDC KBR SET *KCR* TO IGNORE INPUT OF A *CR*
  3330. STM /PRESET/KCRA
  3331. PRS3 LDK EIBP SET EICB ADDRESS
  3332. CRD CM
  3333. LDD CM+3
  3334. SHN 14
  3335. LMD CM+4
  3336. ZJN PRS4 IF NO *EICB*
  3337. ADK D7ST
  3338. STM FDPA+1
  3339. SHN -14
  3340. RAM FDPA
  3341. PRS4 RJM CTE COUNT TAPE EQUIPMENT
  3342.  
  3343. * CLEAR EQUIPMENT ASSIGNMENT.
  3344.  
  3345. LDN DSEQ
  3346. SFA EST
  3347. ADK EQAE
  3348. CRD AB FETCH EQUIPMENT ASSIGNMENT WORD
  3349. STM CEQA+1
  3350. STM CEQC+1
  3351. SHN -14
  3352. RAM CEQA
  3353. STM CEQC
  3354. LDC STII+T3+100000 SET (*.BLI*) TO AN *STIL T3*
  3355. ACN CH+40
  3356. OAN CH+40
  3357. LDN 1
  3358. IAM .BLI,CH
  3359. DCN CH+40
  3360. LDN KBUFL+3 LENGTH OF KEYBOARD BUFFER
  3361. STD T7
  3362.  
  3363. * INITIALIZE *SCD* IF DEADSTART FROM CDC721.
  3364.  
  3365. LDK SCDP FETCH *SCD* POINTER WORD
  3366. CRD CM
  3367. LDD CM+2
  3368. SHN 14
  3369. ADD CM+3
  3370. ZJP PRS5 IF PARAMETER TABLE UNDEFINED
  3371. CRD T2
  3372. LDD T2+2
  3373. LPN 10
  3374. ZJN PRS5 IF *SCD* NOT ACTIVE
  3375. MDIN /PRESET/SRMT
  3376. CCF *,CH SIGNAL *SCD* TO LOOK AT DISPLAY CHANNEL
  3377. CFNC SSIF
  3378. LDN 2 OUTPUT PARAMETER TABLE ADDRESS
  3379. OAM CM+2,CH
  3380. FJM *,CH WAIT TRANSMISSION COMPLETE
  3381. DCN CH+40
  3382.  
  3383. * INITIALIZE KEYBOARD BUFFER.
  3384.  
  3385. PRS5 LDN 0
  3386. STM KBUF-1,T7
  3387. STM /PRESET/TIKB-1,T7
  3388. SOD T7
  3389. NJN PRS5 IF MORE TO CLEAR
  3390.  
  3391. * CLEAR TRAILING *. * IN DISPLAY COMMON DECKS.
  3392.  
  3393. STM D2SA
  3394. STM D2ZA
  3395. STM D4SB
  3396. STM D6SA
  3397. STD AB+4 CLEAR EQUIPMENT ASSIGNMENT
  3398. LDN DSEQ
  3399. SFA EST
  3400. ADN EQAE UPDATE EST ENTRY
  3401. CWD AB
  3402.  
  3403. * ENTER INITIAL COMMAND.
  3404.  
  3405. LDD IA READ COMMAND WORD
  3406. ADN 2
  3407. CRD CM
  3408. STD T7
  3409. LDD CM
  3410. ZJN PRS8 IF NO INITIAL COMMAND
  3411. LDC /PRESET/TIKB SET INITIAL COMMAND TABLE
  3412. STM /PRESET/DLSF
  3413. STD T6
  3414. PRS6 LDN CM SET BYTE ADDRESS
  3415. STD T1
  3416. PRS7 LDI T1 UNPACK BYTE
  3417. SHN 14
  3418. STI T6
  3419. SHN -14
  3420. STM 1,T6
  3421. LDN 2
  3422. RAD T6
  3423. AOD T1
  3424. LMN CM+5
  3425. NJN PRS7 IF NOT END OF WORD
  3426. AOD T7 ADVANCE WORD
  3427. CRD CM
  3428. LPN 7
  3429. NJN PRS6 IF NOT END OF COMMANDS
  3430. PRS8 LDK ZERL CLEAR MESSAGE BUFFER + 1
  3431. CRD CM
  3432. LDD MA
  3433. ADN 1
  3434. CWD CM
  3435. LDC /PRESET/DTEB COPY DATE SYNTAX
  3436. RJM /PRESET/CSY
  3437. LDC /KEYBOARD/KLB DISABLE *RIGHT BLANK* KEY
  3438. STM /KEYBOARD/TSCEA
  3439. LDC /PRESET/KCR SET *CR* PROCESSOR
  3440. STM /KEYBOARD/TSCEB
  3441. LJM /DSD/DSD ENTER PROGRAM
  3442.  
  3443.  
  3444. * TIME DELAY VALUES FOR *FTN*. INDEXED BY PP SPEED.
  3445.  
  3446. PRSA EQU *
  3447. LOC 0
  3448. CON 40 1X PP SPEED
  3449. CON 100 2X PP SPEED
  3450. CON 200 4X PP SPEED
  3451. LOC *O
  3452.  
  3453.  
  3454. PRSB BSS 0
  3455. LOC 0
  3456. SBN 20 1X PP SPEED
  3457. SBN 10 2X PP SPEED
  3458. SBN 4 4X PP SPEED
  3459. LOC *O
  3460. CTE SPACE 4,10
  3461. ** CTE - COUNT TAPE EQUIPMENT.
  3462. *
  3463. * EXIT (LUDT) = LENGTH OF MAGNET UDT.
  3464. *
  3465. * USES CM - CM+4, T1 - T5.
  3466. *
  3467. * MACROS SFA.
  3468.  
  3469.  
  3470. CTE SUBR ENTRY/EXIT
  3471. LDK ESTP GET NUMBER OF EST ENTRIES
  3472. CRD T1
  3473. LDN NOPE-1 INITIALIZE EST ORDINAL
  3474. STD T5
  3475. CTE1 AOD T5 ADVANCE EST ORDINAL
  3476. LMD T3
  3477. ZJN CTEX IF ALL ENTRIES CHECKED
  3478. SFA EST,T5
  3479. ADK EQDE
  3480. CRD CM
  3481. LDD CM+3
  3482. LMC 2RMT
  3483. ZJN CTE2 IF TAPE EQUIPMENT
  3484. LMC 2RNT&2RMT
  3485. ZJN CTE2 IF TAPE EQUIPMENT
  3486. LMC 2RCT&2RNT
  3487. ZJN CTE2 IF TAPE EQUIPMENT
  3488. LMC 2RAT&2RCT
  3489. NJN CTE1 IF NOT TAPE EQUIPMENT
  3490. CTE2 LDK /MTX/UNITL COUNT TAPE EQUIPMENT
  3491. RAM LUDT
  3492. UJN CTE1 CHECK NEXT EQUIPMENT
  3493. SPACE 4,10
  3494. QUAL *
  3495.  
  3496.  
  3497. * KEYBOARD BUFFER.
  3498.  
  3499.  
  3500. KBUF EQU /DSD/PRS
  3501. KBUFL EQU /1DS/KBCML*5
  3502. ERRNG /DSD/PRSA-KBUF-KBUFL-5 *DSD* PRESET OVERFLOWS
  3503. QUAL SPACE 4,10
  3504. QUAL GFP
  3505. IFP HERE
  3506. QUAL
  3507.  
  3508. QUAL PRESET
  3509. TITLE INITIALIZATION DISPLAYS.
  3510. DTM SPACE 4,20
  3511. *** ENTER DATE AND TIME.
  3512. *
  3513. * IF THE DATE AND/OR TIME ENTRIES ARE NOT TO BE MADE,
  3514. * A *CR* MAY BE TYPED AND THE CURRENT SYSTEM DATE AND TIME WILL
  3515. * BE USED.
  3516. *
  3517. * THE DATE MUST BE OF THE FORM *YY/MM/DD.*. THE FOLLOWING
  3518. * CONDITIONS APPLY -
  3519. * 00 @ YY @ 99.
  3520. * 1 @ MM @ 12.
  3521. * 1 @ DD @ N, WHERE N = NUMBER OF DAYS FOR MONTH MM
  3522. *
  3523. * THE TIME MUST BE OF THE FORM *HH.MM.SS.* THE FOLLOWING
  3524. * CONDITIONS APPLY -
  3525. * 0 @ HH @ 23
  3526. * 0 @ MM @ 59
  3527. * 0 @ SS @ 59
  3528.  
  3529.  
  3530. DTM LDN TIML
  3531. CRD TM
  3532. DTM0 LDN DTEL
  3533. CRD DT
  3534. DTM1 LDN 28D
  3535. STM TDLM+2
  3536. LDN ZERL CLEAR ASSEMBLY BUFFERS
  3537. CRD AB
  3538. LDN 0 CLEAR DAY LIMIT FOR MONTH
  3539. STD T3
  3540. LDD DT CONVERT YEAR
  3541. LPN 77
  3542. SHN 14
  3543. LMD DT+1
  3544. SHN -6
  3545. RJM CDD
  3546. STD T1
  3547. LPN 3
  3548. NJN DTM2 IF NOT LEAP YEAR
  3549. AOM TDLM+2 ADVANCE FEBRUARY
  3550. DTM2 LDD T1 ENTER YEAR
  3551. ADC -70D
  3552. PJN DTM3 IF YEAR 70-99
  3553. ADC 100D
  3554. DTM3 SHN 6
  3555. STD AB+2
  3556. LDD DT+2 CONVERT MONTH
  3557. RJM CDD
  3558. STD T2
  3559. RAD AB+2 ENTER MONTH
  3560. LDD DT+3 CONVERT DAY
  3561. LPN 77
  3562. SHN 14
  3563. LMD DT+4
  3564. SHN -6
  3565. RJM CDD
  3566. SHN 6
  3567. STD AB+3
  3568. LDD TM CONVERT HOURS
  3569. LPN 77
  3570. SHN 14
  3571. LMD TM+1
  3572. SHN -6
  3573. RJM CDD
  3574. RAD AB+3 ENTER HOURS
  3575. LDD TM+2 CONVERT MINUTES
  3576. RJM CDD
  3577. SHN 6 ENTER MINUTES
  3578. STD AB+4
  3579. LDD TM+3 CONVERT SECONDS
  3580. LPN 77
  3581. SHN 14
  3582. LMD TM+4
  3583. SHN -6
  3584. RJM CDD
  3585. RAD AB+4
  3586. LDM TDLM,T2 SET DAY LIMIT
  3587. ADN 1
  3588. STD T3
  3589.  
  3590. * ENTER JULIAN DATE.
  3591.  
  3592. LDD DT SET JULIAN YEAR
  3593. LPN 77
  3594. STM JDAT+2
  3595. LDD DT+1
  3596. SCN 77
  3597. ADN 1R0
  3598. STM JDAT+3
  3599. LDC 2R00
  3600. STM JDAT+4
  3601. LDD AB+3 SET CURRENT DAY
  3602. SHN -6
  3603. STD T2
  3604. LDD AB+2 CALCULATE JULIAN DAY
  3605. LPN 77
  3606. STD T1
  3607. UJN DTM5 CALCULATE MONTH
  3608.  
  3609. DTM4 LDM TDLM,T1 ACCUMALATE DAYS
  3610. RAD T2
  3611. DTM5 SOD T1
  3612. NJN DTM4 IF MORE MONTHS TO PROCESS
  3613. DTM6 LDC -100D COUNT 100-S OF DAYS
  3614. RAD T2
  3615. MJN DTM7 IF COUNT COMPLETE
  3616. AOM JDAT+3
  3617. UJN DTM6 COUNT NEXT 100 DAYS
  3618.  
  3619. DTM7 ADC 100D
  3620. STD T2
  3621. DTM8 LCN 10D COUNT 10-S OF DAYS
  3622. RAD T2
  3623. MJN DTM9 IF COUNT COMPLETE
  3624. LDD HN
  3625. RAM JDAT+4
  3626. UJN DTM8 COUNT NEXT 10 DAYS
  3627.  
  3628. DTM9 ADN 10D
  3629. RAM JDAT+4
  3630. LDN ZERL
  3631. CRD CM
  3632. LDD MA
  3633. ADN 1
  3634. STD CM+2
  3635. CWM JDAT,ON
  3636. CWD AB
  3637. ADN 1
  3638. CWD TM
  3639. ADN 1
  3640. CWD DT
  3641. ADN 1
  3642. CWD T3
  3643. LDN EDTS SET SUBFUNCTION
  3644. STD CM+1
  3645. MONITOR DSRM ENTER DATE AND TIME
  3646. LDN 0 CLEAR ENTRY MESSAGE
  3647. STM DLSA
  3648. LJM KBR RETURN FROM KEYBOARD
  3649. DTMB EQU *-1
  3650. * LJM RDTX (RETURN FROM CTI CLOCK READ)
  3651. TDLM SPACE 4,20
  3652. ** TDLM - TABLE OF DAY LIMITS FOR MONTHS.
  3653.  
  3654.  
  3655. TDLM EQU *-1
  3656. BASE D
  3657. LOC 1
  3658.  
  3659. CON 31
  3660. CON 28
  3661. CON 31
  3662. CON 30
  3663. CON 31
  3664. CON 30
  3665. CON 31
  3666. CON 31
  3667. CON 30
  3668. CON 31
  3669. CON 30
  3670. CON 31
  3671.  
  3672. BASE *
  3673. LOC *O
  3674. DTE SPACE 4,10
  3675. ** DTE - ENTER DATE.
  3676.  
  3677.  
  3678. DTE LDN 28D SET SECOND MONTH
  3679. STM TDLM+2
  3680. LDM KBUF CONVERT YEAR
  3681. SHN 6
  3682. LMM KBUF+1
  3683. RJM CDD
  3684. LPN 3
  3685. NJN DTE1 IF NOT LEAP YEAR
  3686. AOM TDLM+2 ADVANCE SECOND MONTH
  3687. DTE1 LDM KBUF+3 CONVERT MONTH
  3688. SHN 6
  3689. LMM KBUF+4
  3690. RJM CDD
  3691. STD T2
  3692. ZJN DTE2 IF 0
  3693. SBN 13D
  3694. PJN DTE2 IF .GT. 13
  3695. LDM KBUF+6 CONVERT DAY
  3696. SHN 6
  3697. LMM KBUF+7
  3698. RJM CDD
  3699. STD T3
  3700. ZJN DTE2 IF 0
  3701. SBN 1 CHECK DAY NUMBER
  3702. SBM TDLM,T2
  3703. MJN DTE3 IF WITHIN RANGE OF MONTH
  3704. DTE2 JMP KIE INCORRECT ENTRY
  3705.  
  3706. DTE3 LDN DT ASSEMBLE DATE
  3707. RJM ASC
  3708. LDN JDAL READ JULIAN DATE
  3709. CRD AB
  3710. LDN PDTL READ PACKED DATE
  3711. CRD T1
  3712. LDN TIML READ CURRENT TIME
  3713. CRD TM
  3714. LDN ZERL
  3715. CRD CM
  3716. LDD MA
  3717. ADN 1
  3718. STD CM+2
  3719. CWD AB WRITE JULIAN AND PACKED DATES TO BUFFER
  3720. ADN 1
  3721. CWD T1
  3722. ADN 1 WRITE TIME AND DATE TO BUFFER
  3723. CWD TM
  3724. ADN 1
  3725. CWD DT
  3726. LDN EDTS SET ENTER DATE SUB-FUNCTION
  3727. STD CM+1
  3728. MONITOR DSRM *DSD* MONITOR REQUEST
  3729. LDC DTEB RESTORE SYNTAX
  3730. RJM CSY
  3731. LDC TIMA-1 SET TIME REQUEST
  3732. STM DLSA
  3733. ADN TIMB-TIMA+1 COPY TIME SYNTAX
  3734. STM DLSC
  3735. RJM CSY
  3736. JMP KBR RETURN
  3737.  
  3738. DTEA CON CH01,LN19
  3739. DATA C*ENTER DATE - YY/MM/DD.*
  3740.  
  3741. * SYNTAX FOR DATE ENTRY.
  3742.  
  3743. DTEB BSS 0
  3744.  
  3745. EDT ENTER (&lt;09&lt;09/&lt;01&lt;09/&lt;03&lt;09.)
  3746.  
  3747. CON 0
  3748. CON 7777 SYNTAX TERMINATION
  3749. KCR SPACE 4,10
  3750. ** KCR - SPECIAL *CR* EXIT.
  3751.  
  3752.  
  3753. KCR LDN 65 SET SPECIAL *CR* INCOMPLETE INPUT
  3754. STD KE
  3755. LDD KR
  3756. ZJN KCR1 IF KEYBOARD NOT READY
  3757. LJM /KEYBOARD/KCR PROCESS *CR*
  3758.  
  3759. KCR1 LDD KI CHECK KEYBOARD BUFFER
  3760. NJN KCR2 IF DATA IN BUFFER
  3761. LJM DTM COMPLETE INITIALIZATION
  3762. KCRA EQU *-1
  3763. * LJM KBR (CYBER 180)
  3764.  
  3765. KCR2 JMP KIE INCORRECT ENTRY
  3766. RDT SPACE 4,10
  3767. ** RDT - READ DATE AND TIME FROM CTI CLOCK.
  3768. *
  3769. * EXIT TO *DTM* TO PROCESS DATE AND TIME.
  3770.  
  3771.  
  3772. RDT SUBR ENTRY/EXIT
  3773. LDC RDTX MODIFY *DTM* EXIT
  3774. STM DTMB
  3775. LJM DTM ENTER DATE AND TIME
  3776. TIM SPACE 4,10
  3777. ** TIM - ENTER TIME.
  3778.  
  3779.  
  3780. TIM LDM KBUF CONVERT HOURS
  3781. SHN 6
  3782. LMM KBUF+1
  3783. RJM CDD
  3784. SBN 24D
  3785. MJN TIM1 IF &lt; 24
  3786. JMP KIE INCORRECT ENTRY
  3787.  
  3788. TIM1 LDN TM ASSEMBLE TIME
  3789. RJM ASC
  3790. LJM DTM0 COMPLETE DATE AND TIME ENTRY
  3791.  
  3792. TIMA CON CH01,LN19
  3793. DATA C*ENTER TIME - HH.MM.SS.*
  3794.  
  3795. * SYNTAX FOR TIME.
  3796.  
  3797. TIMB BSS 0
  3798.  
  3799. ETM ENTER (&lt;02&lt;09.&lt;05&lt;09.&lt;05&lt;09.)
  3800.  
  3801. CON 0
  3802. CON 7777 SYNTAX TERMINATION
  3803. ASC SPACE 4,10
  3804. ** ASC - ASSEMBLE CHARACTERS.
  3805. *
  3806. * ENTRY (A) = ADDRESS OF ASSEMBLY AREA.
  3807. *
  3808. * USES T1 - T3.
  3809.  
  3810.  
  3811. ASC SUBR ENTRY/EXIT
  3812. STD T2 SET BYTE ADDRESS
  3813. ADN 5
  3814. STD T3
  3815. LDC KBUF-1 SET CHARACTER ADDRESS
  3816. STD T1
  3817. LDN 1R
  3818. ASC1 SHN 6 STORE UPPER
  3819. STI T2
  3820. AOD T1 ADVANCE CHARACTER
  3821. LDI T1 ADD LOWER
  3822. RAI T2
  3823. AOD T2 ADVANCE BYTE
  3824. LMD T3
  3825. ZJN ASCX IF WORD COMPLETE
  3826. AOD T1 ADVANCE CHARACTER
  3827. LDI T1
  3828. UJN ASC1 LOOP
  3829. CDD SPACE 4,10
  3830. ** CDD - CONVERT DECIMAL DIGITS.
  3831. *
  3832. * ENTRY (A) = DPC DIGITS.
  3833. *
  3834. * EXIT (A) = CONVERSION.
  3835. *
  3836. * USES T0, T1.
  3837.  
  3838.  
  3839. CDD SUBR ENTRY/EXIT
  3840. STD T1
  3841. SHN -6 UPPER * 10
  3842. LPN 77
  3843. SBN 1R0
  3844. SHN 1
  3845. STD T0
  3846. SHN 2
  3847. RAD T0
  3848. LDD T1 ADD LOWER
  3849. LPN 77
  3850. SBN 1R0
  3851. ADD T0
  3852. UJN CDDX RETURN
  3853. CSY SPACE 4,10
  3854. ** CSY - COPY SYNTAX.
  3855. *
  3856. * ENTRY (A) = NEW SYNTAX TABLE ADDRESS.
  3857. *
  3858. * EXIT (A) = 0.
  3859. *
  3860. * USES T1, T2, T3.
  3861.  
  3862.  
  3863. CSY SUBR ENTRY/EXIT
  3864. STD T1 SET NEW SYNTAX ADDRESS
  3865. LDD HN SET SYNTAX TABLE ADDRESS
  3866. ERRNZ TCEF-100 CANNOT USE DIRECT CELL *HN*
  3867. STD T2
  3868. CSY1 LDI T1 CHECK NEW SYNTAX
  3869. STD T3
  3870. LMC 7777
  3871. ZJN CSYX IF END OF SYNTAX
  3872. LDI T2 INTERCHANGE SYNTAX BYTES
  3873. STI T1
  3874. LDD T3
  3875. STI T2
  3876. AOD T1 ADVANCE SYNTAX
  3877. AOD T2
  3878. UJN CSY1 LOOP
  3879. PAD SPACE 4,10
  3880. ** DUE TO THE WAY SCREEN ADDRESSES ARE CALCULATED, THE FOLLOWING
  3881. * PAD MUST BE HARDCODED. IT SHOULD BE ADJUSTED TO BE AS SMALL
  3882. * AS POSSIBLE WHILE ENSURING THE *ERRPL* BELOW DOES NOT FAIL.
  3883.  
  3884.  
  3885. BSS 110 AVOID SELF-MODIFYING PRESET CODE
  3886. ERRPL .FRHT+1-* *DSD* PRESET PAD NEEDS ADJUSTMENT
  3887. DFP SPACE 4,10
  3888. ** DFP - DISPLAY FROM PPU CHARACTERS.
  3889. *
  3890. * ENTRY (A) = FUNCTION CODE.
  3891. * (T2) = DISPLAY ADDRESS - 1.
  3892. *
  3893. * USES T2, T3, T4, T5.
  3894. *
  3895. * MACROS CFNC.
  3896.  
  3897.  
  3898. DFP3 FJM *,CH
  3899. DCN CH+40
  3900.  
  3901. DFP SUBR ENTRY/EXIT
  3902. CFNC
  3903. LDM 1,T2 SAVE ORIGINAL COORDINATES
  3904. STD T3
  3905. LDM 2,T2
  3906. STD T4
  3907. DFP1 LDN 0 SET CHARACTER COUNT
  3908. STD T5
  3909. DFP2 AOD T2
  3910. LDI T2 DISPLAY BYTE
  3911. OAN CH+40
  3912. ZJN DFP3 IF MESSAGE COMPLETE
  3913. AOD T5 ADVANCE CHARACTER COUNT
  3914. LMN 25D CHECK FOR 50 CHARACTERS IN LINE
  3915. NJN DFP2 IF NOT YET 50 CHARACTERS
  3916. LCN 12 ADVANCE Y-COORDINATE
  3917. RAD T4
  3918. OAN CH+40
  3919. LDD T3 OUTPUT X-COORDINATE
  3920. OAN CH+40
  3921. UJN DFP1 BEGIN NEW LINE
  3922. DMR SPACE 4,10
  3923. ** DMR - DISPLAY MESSAGE REQUESTED.
  3924. *
  3925. * ENTRY (A) = FIRST MESSAGE ADDRESS - 1.
  3926. *
  3927. * USES T2, CM - CM+4.
  3928. *
  3929. * CALLS DFP, RWC.
  3930. *
  3931. * MACROS CFNC.
  3932.  
  3933.  
  3934. DMR SUBR ENTRY/EXIT
  3935. STD T2
  3936. ZJN DMR1 IF ONLY COPYRIGHT NOTICE TO BE DISPLAYED
  3937. LDN DSCL
  3938. CRD CM CHECK *MTR* ACTIVE
  3939. LDD CM+2
  3940. ZJN DMR1 IF INACTIVE
  3941. LDC SLMF SELECT LEFT SCREEN - MEDIUM CHARACTERS
  3942. RJM DFP DISPLAY MESSAGE
  3943. DMRA EQU *-1
  3944. * RJM RDT (CYBER 180)
  3945. DMR1 LDD LS
  3946. NJN DMR2 IF LEFT SCREEN DISPLAY PRESENT
  3947. LDC SLSF
  3948. CFNC SELECT LEFT SCREEN - SMALL CHARACTERS
  3949. LDN COPYL
  3950. OAM COPY,CH DISPLAY COPYRIGHT NOTICE
  3951. FJM *,CH
  3952. DCN CH+40
  3953. DMR2 CFNC SRSF SELECT RIGHT SCREEN - SMALL CHARACTERS
  3954. LDN COPYL
  3955. OAM COPY,CH DISPLAY COPYRIGHT NOTICE
  3956. FJM *,CH
  3957. DCN CH+40
  3958. UJP DMRX RETURN
  3959. SPACE 4,10
  3960. QUAL COMMAND
  3961. EDT EQU /PRESET/DTE
  3962. ETM EQU /PRESET/TIM
  3963. QUAL *
  3964. SPACE 4,10
  3965. ** COPY - COPYRIGHT BUFFER.
  3966.  
  3967. COPY CON CH01,LN06
  3968. DATA H*NOW LOADING THE NOS SOFTWARE SYSTEM.*
  3969. CON CH01,LN07
  3970. *CALL COPYRT
  3971. CPRT HERE
  3972. COPYL EQU *-COPY MESSAGE LENGTH
  3973. DLS SPACE 4,10
  3974. ** DLS - DISPLAY LOAD STATUS.
  3975.  
  3976.  
  3977. DLS SUBR ENTRY/EXIT
  3978. LDN 2
  3979. STD T7
  3980. LDN SVNL READ VERSION
  3981. CRM /DSD/DLSG,T7
  3982. DFIM (SOD T7)
  3983. AOD T7 SET INTENSIFICATION
  3984. DLS1 FJM *,CH
  3985. DCN CH+40
  3986. LDC DTEA-1 SET DATA ADDRESS
  3987. DLSA EQU *-1
  3988. RJM DMR DISPLAY MESSAGES
  3989. DLS2 CFNC SRMF SELECT RIGHT SCREEN - MEDIUM CHARACTERS
  3990. DISPLA CH01,LN13,(DEADSTART STATUS.)
  3991. LDN FNTP
  3992. CRD CM
  3993. LDD CM READ SYSTEM FILE FNT
  3994. SHN 14
  3995. LMD CM+1
  3996. ERRNZ SYFO SYSTEM FILE ORDINAL .NE. 0
  3997. CRD CM
  3998. LDD CM+4 CHECK STATUS
  3999. LPN 1
  4000. NJN DLS3 IF SYSTEM FILE BUSY
  4001. DISPLA CH01,LN19,(COMPLETE)
  4002. UJN DLS4 DISPLAY SYSTEM CP MESSAGE
  4003.  
  4004. DLS3 LDN 2 OUTPUT COORDINATES
  4005. OAM DLSD,CH
  4006. LDC CPAS+MS1W DLSPLAY CP 1 MESSAGE
  4007. RJM DOL
  4008. FJM *,CH
  4009. DCN CH+40
  4010. CFNC SRSF SELECT RIGHT SCREEN - SMALL CHARACTERS
  4011. LDN 2 OUTPUT COODRINATES
  4012. OAM DLSE,CH
  4013. LDC CPAS+MS2W DISPLAY CP 1 MESSAGE
  4014. RJM DOL
  4015. DLS4 LDN 2 OUTPUT COORDINATES
  4016. OAM DLSH,CH
  4017. LDD NC DISPLAY SYSTEM CP MESSAGE
  4018. SHN 7
  4019. ADN MS2W
  4020. RJM DOL
  4021. SOD T7
  4022. DLSB ZJN DLS6 IF INTENSIFICATION COMPLETE
  4023. * PSN WHEN *RECOVERY COMPLETE* STATUS ACCEPTED
  4024. NJN DLS5 IF INTENSIFICATION NOT COMPLETE
  4025. LJM DLS9 PROCESS INITIAL COMMAND
  4026.  
  4027. DLS5 LJM DLS1 LOOP
  4028.  
  4029. DLS6 LDM DLSA
  4030. ZJN DLS8 IF DATE/TIME ENTRIES PROCESSED
  4031. LMC DTEA-1
  4032. NJN DLS7 IF DATE PROCESSED
  4033. LDN TIML READ TIME
  4034. CRD TM
  4035. LDN DTEL READ DATE
  4036. CRD DT
  4037. DLS7 LJM DLSX RETURN
  4038.  
  4039. DLS8 STM DLSB ENABLE COMMAND PROCESSING
  4040. LDN DSCL
  4041. CRD CM SET DATE/TIME ENTERED
  4042. STD CM+1
  4043. CWD CM STORE DATE/TIME STATUS FOR *REC*
  4044.  
  4045. * RESTORE SYNTAX.
  4046.  
  4047. LDC DTEB
  4048. DLSC EQU *-1
  4049. RJM CSY
  4050.  
  4051. * CLEAR OVERLAY INDICATORS.
  4052.  
  4053. * LDN 0
  4054. STM .FCOM+1-5
  4055. STM .FLFT+1
  4056. STM .FRHT+1
  4057. LDC /KEYBOARD/KCR RESTORE *CR* PROCESSOR
  4058. STM /KEYBOARD/TSCEB
  4059. LDC /KEYBOARD/KRB RESTORE *RIGHT BLANK* KEY
  4060. STM /KEYBOARD/TSCEA
  4061. DRS UJN DLS9 PROCESS INITIAL COMMAND
  4062.  
  4063. * ENABLE RIGHT SCREEN AND *1DS* PROCESSING.
  4064.  
  4065. LDC LOV ENABLE RIGHT SCREEN OVERLAY LOAD
  4066. STM /DSD/LDOA
  4067. LDC * ENABLE *1DS* CALLS
  4068. ORG *-1
  4069. LOC /KEYBOARD/C1DA
  4070. ZJN /KEYBOARD/C1D2 IF BUFFER INTERLOCK NOT NEEDED
  4071. LOC *O
  4072. STM /KEYBOARD/C1DA
  4073. UJN DLS13 ENTER INCOMPLETE *CR*
  4074.  
  4075. * ENTER INITIAL COMMAND.
  4076.  
  4077. DLS9 LDD KE
  4078. NJN DLS14 IF PRESET ENTRY MADE
  4079. STM /KEYBOARD/KBIA CLEAR SYNTAX SKIP FLAG
  4080. LDC DLSF SET COMMAND ADDRESS
  4081. STD T1
  4082. LDI T1
  4083. NJN DLS10 IF COMMAND NOT COMPLETE
  4084. AOD T1 SET DISPLAY ENTRY
  4085. LDI T1
  4086. ZJN DLS14 IF DISPLAYS SET
  4087. DLS10 STD T2 SET CHARACTER ADDRESS
  4088. LDI T2 ENTER CHARACTER
  4089. STD KE
  4090. ZJN DLS12 IF END OF CHARACTER STRING
  4091. LMN 1R
  4092. NJN DLS11 IF NOT * *
  4093. LDN 62 ENTER *SPACE*
  4094. STD KE
  4095. DLS11 AOI T1 ADVANCE CHARACTER STRING
  4096. UJN DLS14 RETURN
  4097.  
  4098. DLS12 STI T1 CLEAR CHARACTER STRING POINTER
  4099. DLS13 LDN 63 ENTER INCOMPLETE *CR*
  4100. STD KE
  4101. DLS14 LJM DLSX RETURN
  4102.  
  4103. DLSD CON CH01,LN19
  4104. DLSE CON CH01,LN24
  4105.  
  4106. DLSF CON 0,DLSG
  4107.  
  4108. DLSG CON ILSP
  4109. CON IRSP
  4110. CON 1R.
  4111. CON 0
  4112.  
  4113. DLSH CON CH01,LN26
  4114. SPACE 4,10
  4115. ** TIKB - INITIAL KEYBOARD BUFFER IMAGE.
  4116.  
  4117.  
  4118. TIKB BSS 0
  4119. SPACE 4,10
  4120. ** DUMP INSTRUCTION MODIFICATION BLOCK.
  4121.  
  4122.  
  4123. DIMB
  4124.  
  4125. IFLT *-TIKB,KBUFL+2,1
  4126. BSS KBUFL+2-*+TIKB
  4127. SPACE 4,10
  4128. DIS HERE
  4129. ERRNG 7772-* IF OVERFLOW FROM D/S TAPE
  4130. QUAL *
  4131. TITLE DISPLAY OVERLAY MACROS.
  4132. DISPLAY SPACE 4,25
  4133. *** DISPLAY - BEGIN DISPLAY OVERLAY.
  4134. *
  4135. * DISPLAY GENERATES THE LINKAGE CONSTANTS FOR DISPLAY OVERLAYS.
  4136. *
  4137. * DISPLAY (SUBTITLE),PAGE,C
  4138. *
  4139. * ENTRY (SUBTITLE) = TEXT OF SUBTITLE.
  4140. * PAGE = ADDRESS OF PAGING ROUTINE.
  4141. * IF NULL, *KBIX* IS USED.
  4142. * C = CMR - FORCE OVERLAY TO BE CM RESIDENT.
  4143. * = RPL - FORCE OVERLAY TO BEGINNING OF RPL.
  4144. * EXIT (M.) = 2 CHARACTER MICRO FOR OVERLAY NAME.
  4145. *
  4146. * NOTE ALL DISPLAY OVERLAYS HAVE THE FOLLOWING FORMAT.
  4147. * WORDS 0-4 DISK LINKAGE BYTES.
  4148. * WORD 5 RELOCATION TABLE POINTER.
  4149. * WORDS 6-7 *LJM* TO PAGING CODE.
  4150. * *LJM* TO *KBIX* IF NO PAGING IMPLEMENTED.
  4151. * WORDS 10-11 *SUBR* ENTRY POINT OF OVERLAY.
  4152. *
  4153. * WORDS 2-5 MAY BE USED AS SCRATCH AREAS BY THE
  4154. * OVERLAY. FOR EXAMPLE, STM 5,LA LDM 3,LA.
  4155.  
  4156.  
  4157. ** DEFINE OVERLAY ENTRY POINT SYMBOLS.
  4158.  
  4159.  
  4160. QUAL
  4161. DOEP EQU 11 DISPLAY OVERLAY ENTRY POINT
  4162. DOPG EQU 6 DISPLAY OVERLAY PAGING ENTRY POINT
  4163. QUAL *
  4164.  
  4165.  
  4166. DISPLAY MACRO SUBTITLE,PAGE,C
  4167. .B IFC EQ,/C//
  4168. OVLN
  4169. .B ENDIF
  4170. .B IFC EQ,/C/CMR/
  4171. OVLC
  4172. .B ENDIF
  4173. .B IFC EQ,/C/RPL/
  4174. OVLF
  4175. .B ENDIF
  4176. TTL DSD/9"N." - SUBTITLE
  4177. TITLE
  4178. IDENT 9"M.",5 SUBTITLE
  4179. *COMMENT DSD - SUBTITLE
  4180. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  4181. ORG 5
  4182. L.D MAX L.D,L.
  4183. QUAL DSD"M."
  4184. RLO$ CON .REL
  4185. .B IFC NE,/PAGE// IF PAGING ROUTINE DEFINED
  4186. LJM PAGE EXECUTE PAGING ROUTINE
  4187. .B ELSE
  4188. LJM. /KEYBOARD/KBIX EXIT
  4189. .B ENDIF
  4190. ENDM
  4191. DSPEND SPACE 4,15
  4192. *** DSPEND - END DISPLAY OVERLAY.
  4193. *
  4194. * DSPEND TERMINATES A DISPLAY OVERLAY, AND CHECKS FOR OVERFLOW.
  4195. *
  4196. * THE INSTRUCTION RELOCATION TABLE MUST BE ASSEMBLED FIRST SO
  4197. * THAT IT CAN BE OVERLAYED AFTER THE DISPLAY IS LOADED.
  4198. *
  4199. * DSPEND EOD
  4200. *
  4201. * ENTRY EOD = INDICATES END OF DISPLAY OVERLAYS, IF NOT NULL.
  4202. *
  4203. * EXIT (L.NAME) = LENGTH OF OVERLAY (*NAME* IS OVERLAY NAME).
  4204. * (L.D) = LENGTH OF LONGEST DISPLAY OVERLAY SO FAR.
  4205. * (.REL) = INSRUCTION RELOCATION TABLE FWA.
  4206. * (.RELE) = INSTRUCTION RELOCATION TABLE LWA+1.
  4207.  
  4208.  
  4209. DSPEND MACRO E
  4210. .REL BSS 0
  4211. REL HERE INSTRUCTION RELOCATION TABLE
  4212. CON 0
  4213. .EREL BSS 0 END OF RELOCATION TABLE
  4214. HERE
  4215. DIS HERE
  4216. QUAL
  4217. USE END FORCE /LITERALS*/
  4218. BSS 0
  4219. .A IFPL M. IF NOT *TEXT* OVERLAY
  4220. L. SET *
  4221. QUAL LENGTH
  4222. LIST M
  4223.  
  4224. L.9"M." EQU * LENGTH OF OVERLAY
  4225. ERRNG .LDIS-L.9"M." BYTES UNTIL LONGEST DISPLAY OVERLAY
  4226. ERRNG .LDMX-.INSP-L.9"M." BYTES UNTIL MAXIMUM OVERLAY SIZE
  4227.  
  4228. LIST *
  4229. QUAL *
  4230. .A ENDIF
  4231. .B IFC NE,/E// IF END OF DISPLAY OVERLAYS
  4232. L.D SET L.D+4
  4233. L.D SET L.D/5*5
  4234. ERRNG L.D-L. *L.D* IS WRONG WHEN LARGEST OVL IS LAST
  4235. L. SET 0
  4236. .B ENDIF
  4237. ENDM
  4238. MACROS SPACE 4,10
  4239. ** RELM - REDEFINE -M- INSTRUCTIONS FOR RELOCATABLE CODE.
  4240. *
  4241. *
  4242. * RELM OPC
  4243. * DEFINE -M- TYPE INSTRUCTION *OPC* TO BE RELOCATABLE.
  4244. * FIRST TERM OF -M- PORTION MUST NOT BE RELOCATABLE OR NUMERIC
  4245. * IF THE INSTRUCTION IS NOT TO BE RELOCATED.
  4246.  
  4247.  
  4248. RELM MACRO OPC
  4249. OPC. OPSYN OPC
  4250. OPC= MACRO M,D
  4251. LOCAL A
  4252. IF DEF,//M,2
  4253. OPC. M,D
  4254. .1 SKIP
  4255. IFEQ D,0,2
  4256. OPC. M,LA
  4257. .1 SKIP
  4258. OPC. M,D
  4259. A EQU *-1
  4260. REL RMT
  4261. CON A
  4262. REL RMT
  4263. ENDIF
  4264. OPC= ENDM
  4265. OPC OPSYN OPC=
  4266. RELM ENDM
  4267.  
  4268. RELM LJM
  4269. RELM RJM
  4270. RELM LDM
  4271. RELM ADM
  4272. RELM SBM
  4273. RELM LMM
  4274. RELM STM
  4275. RELM RAM
  4276. RELM AOM
  4277. RELM SOM
  4278. RELO SPACE 4,10
  4279. ** RELO - REDEFINE I/O INSTRUCTIONS FOR RELOCATABLE CODE.
  4280. *
  4281. *
  4282. * RELO OPC
  4283. * DEFINE -I/O- TYPE INSTRUCTION *OPC* TO BE RELOCATABLE.
  4284. * FIRST TERM OF -M- PORTION MUST NOT BE RELOCATABLE OR NUMERIC
  4285. * IF THE INSTRUCTION IS NOT TO BE RELOCATED.
  4286.  
  4287.  
  4288. RELO MACRO OPC
  4289. OPC. OPSYN OPC
  4290. OPC= MACRO M,D
  4291. LOCAL A
  4292. IF DEF,//M,2
  4293. OPC. M,D
  4294. .1 SKIP
  4295. OPC. M,D
  4296. A EQU *-1
  4297. REL RMT
  4298. CON A
  4299. REL RMT
  4300. ENDIF
  4301. OPC= ENDM
  4302. OPC OPSYN OPC=
  4303. RELO ENDM
  4304.  
  4305. RELO CRM
  4306. RELO CWM
  4307. RELO IJM
  4308. RELO AJM
  4309. RELO EJM
  4310. RELO FJM
  4311. RELO IAM
  4312. RELO OAM
  4313. RELO SCF
  4314. RELO CCF
  4315. RELC SPACE 4,10
  4316. ** RELC - DEFINE RELOCATABLE FORM FOR -C- TYPE INSTRUCTIONS.
  4317. *
  4318. *
  4319. * RELC OPC
  4320. * DEFINE -C- TYPE INSTRUCTION TO BE RELOCATABLE.
  4321. * RELOCATABLE FORM IS -
  4322. * OPC. C
  4323.  
  4324.  
  4325. RELC MACRO OPC
  4326. OPC. MACRO C
  4327. LOCAL A
  4328. OPC C
  4329. A EQU *-1
  4330. REL RMT
  4331. CON A
  4332. REL RMT
  4333. ENDM
  4334.  
  4335. RELC LDC
  4336. RELC ADC
  4337. RELC LPC
  4338. RELC LMC
  4339. DISPLAY (DISPLAY A - DAYFILE MESSAGES.),SSR
  4340. ENTRY DSA,DSA
  4341. DSA SPACE 4,10
  4342. *** *A* DISPLAY.
  4343. *
  4344. * DISPLAY ACCUMULATED DAYFILE MESSAGES FOR SYSTEM DAYFILE.
  4345. * DISPLAY ACCOUNT FILE.
  4346. * DISPLAY ERROR LOG.
  4347. *
  4348. * ENTRY (ADSC) = 0, IF SYSTEM DAYFILE.
  4349. * = 1, IF JOB DAYFILE.
  4350. * = (NC), IF ACCOUNT FILE.
  4351. * = (NC)+1, IF ERROR LOG.
  4352. DIRECT SPACE 4,10
  4353. ** DIRECT CELL ASSIGNMENTS.
  4354.  
  4355.  
  4356. CT EQU SH CONSOLE TYPE
  4357. LL EQU SH+1 LAST LINE
  4358. DSA SPACE 4,10
  4359. DSA SUBR ENTRY/EXIT
  4360. LDM. CMEI
  4361. ZJN DSA1 IF CME NOT PRESENT
  4362. STM DSAB FORCE READ OF FLSW+1
  4363. LDN PSNI DISABLE NON-CME CHECK
  4364. STM DSAE
  4365. LDM DSAJ ENABLE CME CHECK
  4366. STM DSAC
  4367. DSA1 LDN DFPP READ DAYFILE BUFFER POINTER
  4368. CRD CM
  4369. LDM DCTY DETERMINE LAST LINE OF DISPLAY
  4370. STD CT SET CONSOLE TYPE
  4371. ZJN DSA1.1 IF CONSOLE TYPE IS *CC545*
  4372. LCN YINC
  4373. DSA1.1 ADM CBOS
  4374. STD LL SET LAST LINE
  4375. LDM DSAF
  4376. NJN DSA1.2 IF NOT NEW OVERLAY LOAD
  4377. LDM CTOS SET FIRST LINE Y-COORDINATE
  4378. STM DSAF
  4379. DSA1.2 LDM. ADSC
  4380. STD CN
  4381. SBN 1
  4382. NJN DSA2 IF NOT JOB DAYFILE
  4383. LDM. /DSD/TJAA+1 CHECK FOR JSN = *SYS*
  4384. LMC 2RSY
  4385. NJN DSA1.3 IF NOT *SYS*
  4386. LDM. /DSD/TJAA+2
  4387. LMC 2RS
  4388. ZJN DSA1.4 IF *SYS*
  4389. DSA1.3 DISPHD (A. JOB DAYFILE.),/DSD/TJAA+1
  4390. LDC /DSD/TJAA+1 GET JSN
  4391. RJM SJS
  4392. MJP DSAX IF EJT ENTRY ROLLED OUT OR NOT FOUND
  4393. LDD CP GET CP NUMBER
  4394. DSAB ADN FLSW GET RA
  4395. * ADN FLSW+1 (CME PRESENT)
  4396. CRD T7
  4397. SHN -7
  4398. DSA1.4 STD CN SET CP NUMBER
  4399. DSA2 LDD CN CHECK IF SAME DAYFILE AS BEFORE
  4400. LMC 0
  4401. DSAA EQU *-1
  4402. ZJN DSA3 IF DISPLAY NOT TOGGLED
  4403. STM DSAG SET ROLL NOT NEEDED
  4404. LCN 0 INITIALIZE MAXIMUM LINE NUMBER
  4405. STM ADSC+1
  4406. DSA3 LDK ZERL ASSUME SYSTEM DAYFILE
  4407. CRD T2 CLEAR DATA DISPLAYED, SPECIAL DAYFILE FLAG
  4408. LDD CN CHECK DAYFILE TYPE
  4409. STM DSAA
  4410. ZJN DSA5 IF SYSTEM DAYFILE
  4411. SBD NC
  4412. PJN DSA6 IF ACCOUNT DAYFILE OR ERROR LOG
  4413.  
  4414. * GET JOB DAYFILE BUFFER POINTERS.
  4415.  
  4416. LDD T7
  4417. DSAE ZJN DSA4 IF NO JOB AT CP
  4418. * PSN (CME PRESENT)
  4419. LRD T7+1
  4420. LDD T7+3 READ BUFFER POINTERS
  4421. SHN 6
  4422. SBN DAPN
  4423. CRD AB
  4424. ADN 1
  4425. CRD SR
  4426. ADN 1
  4427. CRD CM
  4428. ADC 1-DAYN SET JOB DAYFILE BUFFER ADDRESS
  4429. DSAC PSN
  4430. * PJN DSA4 (CME PRESENT)
  4431. STD AB+1
  4432. SHN -14
  4433. STD AB
  4434. LDD SR+2
  4435. LMK JDBL
  4436. NJN DSA4 IF BAD *LIMIT* FIELD
  4437. RJM SDF SET DAYFILE FWA
  4438. LJM DSA11 DISPLAY DAYFILE BUFFER
  4439.  
  4440. DSA4 LJM DSAX EXIT
  4441.  
  4442. * GET SPECIAL DAYFILE BUFFER POINTERS.
  4443.  
  4444. DSA5 ZJN DSA7 IF SYSTEM DAYFILE
  4445. DSA6 ADN 1 SET ROLL CONTROL
  4446. STD T5 (T5) = 0, 1, OR 2
  4447. SHN 3 SELECT MESSAGE
  4448. STD T2 (T2) = 0, 8, OR 16
  4449. SHN -2
  4450. ADD T5 (A) = 0, 3, OR 6
  4451. SHN 6
  4452. DSA7 ADD CM SET FWA OF DAYFILE POINTERS
  4453. SHN 14
  4454. ADD CM+1
  4455. CRD AB
  4456. ADN 1
  4457. CRD SR
  4458. ADN 1 READ FILE STATUS
  4459. CRD CM
  4460. DISPHD (A. ) DISPLAY HEADER
  4461. LDC. DSAI SET REST OF HEADER MESSAGE
  4462. ADD T2
  4463. STM DSAD
  4464. STD T3 SET SPECIAL DAYFILE FLAG
  4465. LDN DSAIL DISPLAY REST OF HEADER
  4466. OAM DSAI,CH
  4467. DSAD EQU *-1
  4468. RJM SDF SET DAYFILE FWA
  4469. NJN DSA10 IF THE CONSOLE IS NOT A *CC545*
  4470. LDM SSRA
  4471. ZJN DSA8 IF ROLLING IS NOT INHIBITED
  4472. SOM SSRA TIME OUT THE INHIBITION
  4473.  
  4474. * SET CURRENT DISPLAY STATUS TO FOLLOW BUFFER.
  4475.  
  4476. DSA8 LDM TDSA,T5 CHECK FOR DISPLAY RESET REQUEST
  4477. ADC 770000
  4478. NJN DSA9 IF NOT RESET
  4479. LDD YC RESET Y-COORDINATE
  4480. STM DSAF
  4481. STM DSAG ROLL NOT NEEDED
  4482. LDD T7 NEW INDEX = *OUT*
  4483. STM TDSA,T5
  4484. DSA9 STD T7
  4485. LDM DSAF SET Y-COORDINATE
  4486. STD YC
  4487. LMM CTOS
  4488. ZJN DSA11 IF UPPER LIMIT
  4489. AOM DSAF ADVANCE INITIAL Y-COORDINATE
  4490. DSA10 STM DSAG SET ROLL NOT NEEDED
  4491.  
  4492. * DISPLAY BUFFER.
  4493.  
  4494. DSA11 LDN 2 OUTPUT COORDINATES
  4495. OAM XC,CH
  4496. DSA12 LDN 6 SET WORD COUNT PER LINE
  4497. STD T4
  4498. DSA13 SOD T4
  4499. PJN DSA14 IF NOT EDGE OF SCREEN
  4500. LJM DSA22 PROCESS EDGE OF SCREEN
  4501.  
  4502. DSA14 LDD AB READ WORD
  4503. LPN 77
  4504. SHN 14
  4505. ADD AB+1
  4506. ADD T7
  4507. CRD CM
  4508. RJM DWD DISPLAY WORD
  4509. AOD T7 *OUT* = *OUT* + 1
  4510. LMD SR+2
  4511. NJN DSA15 IF *OUT* .NE. *LIMIT*
  4512. STD T7 *OUT* = *FIRST*
  4513. DSA15 LDD T7
  4514. LMD AB+4
  4515. NJN DSA16 IF *OUT* .NE. *IN*
  4516. LDD YC
  4517. SBM ADSC+1
  4518. PJN DSA15.1 IF NOT NEW MAXIMUM
  4519. RAM ADSC+1 SET NEW MAXIMUM
  4520. LDN 0 SET SCREEN FULL
  4521. DSA15.1 SHN -6
  4522. STM ADSC+2 SET SCREEN FULL FLAG
  4523. UJN DSA19 RETURN
  4524.  
  4525. DSA16 LDD CM+4
  4526. NJN DSA13 IF NOT END OF LINE
  4527. LDC 1
  4528. DSAG EQU *-1 (ROLL NOT NEEDED)
  4529. NJN DSA17 IF ROLL NOT NEEDED
  4530. LDD T7 SET INDEX = *OUT*
  4531. STM TDSA,T5
  4532. LCN YINC DECREASE INITIAL Y-COORDINATE
  4533. RAM DSAF
  4534. STM DSAG SET ROLL NOT NEEDED
  4535. DSA17 LDD T4
  4536. LMN 5
  4537. ADD CM
  4538. ZJN DSA20 IF NULL LINE
  4539. STD T6 SET DATA DISPLAYED FLAG
  4540. LCN YINC
  4541. RAD YC DECREMENT Y-COORDINATE
  4542. SBD LL
  4543. PJN DSA21 IF NOT BOTTOM OF SCREEN
  4544. DSA18 LDM SSRA START ROLLING UNLESS INHIBITED BY OPERATOR
  4545. STM DSAG
  4546. DSA19 LJM DSAX RETURN
  4547.  
  4548. DSA20 LDD T3
  4549. ZJN DSA21 IF JOB DAYFILE
  4550. LDD T6
  4551. NJN DSA21 IF DATA DISPLAYED
  4552. LDD T7 UPDATE *OUT* FOR NULL LINE
  4553. STM TDSA,T5
  4554. DSA21 LJM DSA11 PROCESS NEXT LINE
  4555.  
  4556. DSA22 AOD T6 SET DATA DISPLAYED FLAG
  4557. LDK XINC*10D ADJUST X-COORDINATE FOR SECOND LINE
  4558. STD T2
  4559. LDD T3
  4560. ZJN DSA23 IF JOB DAYFILE
  4561. LDD T2 POSITION FOR SPECIAL DAYFILE
  4562. DSA23 ADD T2 POSITION FOR NORMAL DAYFILE
  4563. ADC CH01
  4564. OAN CH+40
  4565. LCN YINC
  4566. RAD YC
  4567. OAN CH+40
  4568. SBD LL
  4569. MJN DSA18 IF BOTTOM OF SCREEN
  4570. LJM DSA12 FINISH CURRENT LINE
  4571.  
  4572.  
  4573. DSAF CON 0 CURRENT FIRST LINE Y-COORD WHEN SCROLLING
  4574.  
  4575. DSAI BSS 0
  4576. DATA H*SYSTEM DAYFILE. *
  4577. DSAIL EQU *-DSAI
  4578. DATA H*ACCOUNT DAYFILE.*
  4579. ERRNZ *-DSAI-2*DSAIL
  4580. DATA H*ERROR LOG. *
  4581. ERRNZ *-DSAI-3*DSAIL
  4582.  
  4583. DSAJ BSS 0
  4584. LOC DSAC
  4585. PJN DSA4 IF ADDRESS NOT IN NFL
  4586. LOC *O
  4587. SDF SPACE 4,25
  4588. ** SDF - SET DISPLAY FWA.
  4589. *
  4590. * ENTRY (AB - AB+4) = FIRST WORD OF DAYFILE BUFFER POINTERS.
  4591. * (SR - SR+4) = SECOND WORD OF DAYFILE BUFFER POINTERS.
  4592. * (CM - CM+4) = THIRD WORD OF DAYFILE BUFFER POINTERS.
  4593. * (T5) = DAYFILE INDEX.
  4594. *
  4595. * EXIT (A) = 0, IF THE CONSOLE IS A *CC545*.
  4596. * (T7) = POINTER WITHIN BUFFER TO FIRST LINE OF DISPLAY.
  4597. * (YC) = (*CTOS*).
  4598. * TO *DSAX* IF NO DATA IN BUFFER, OR IF *IN* OR *OUT*
  4599. * ARE GREATER THAN OR EQUAL TO *LIMIT*.
  4600. *
  4601. * USES AB+2, T4, T7, T8, T9, CM - CM+4.
  4602. *
  4603. * NOTE - *SDF* USES THE FOLLOWING BYTES FROM THE DAYFILE BUFFER
  4604. * POINTER WORDS.
  4605. *
  4606. * (AB - AB+1) = FWA OF BUFFER.
  4607. * (AB+4) = *IN*.
  4608. * (SR+2) = *LIMIT*.
  4609. * (SR+4) = *OUT*.
  4610. * (CM+1) = FIRST TRACK OF DAYFILE FILE.
  4611. * (CM+2) = CURRENT TRACK OF DAYFILE FILE.
  4612. * (CM+3) = CURRENT SECTOR OF DAYFILE FILE.
  4613.  
  4614.  
  4615. SDF SUBR ENTRY/EXIT
  4616. LDD AB+4 START DISPLAY AT *IN*
  4617. STD T7
  4618. SBD SR+2
  4619. PJN SDF0 IF *IN* .GE. *LIMIT*
  4620. LDD SR+4
  4621. SBD SR+2
  4622. PJN SDF0 IF *OUT* .GE. *LIMIT*
  4623. LDD CM+1 COMPARE CURRENT TRACK AND FIRST TRACK
  4624. LMD CM+2
  4625. NJN SDF1 IF BUFFER DUMPED
  4626. LDD CM+3 COMPARE CURRENT SECTOR TO SYSTEM SECTOR
  4627. SBN FSMS+1
  4628. PJN SDF1 IF BUFFER DUMPED
  4629. LDD SR+4 START DISPLAY AT *OUT*
  4630. STD T7
  4631. LMD AB+4
  4632. NJN SDF1 IF *OUT* .NE. *IN*
  4633. SDF0 LJM DSAX EXIT
  4634.  
  4635. SDF1 LDM CTOS SET Y-COORDINATE
  4636. STD YC
  4637. STD T9 INITIALIZE LINE COUNTER
  4638. LDD CT GET CONSOLE TYPE
  4639. ADM ADSC+2 GET SCREEN FULL FLAG
  4640. ZJN SDFX IF CONSOLE IS A *CC545* AND SCREEN IS FULL
  4641. LDD T7
  4642. STD T4 (T4) = FIRST POSSIBLE START OF DISPLAY
  4643. LDD AB+4
  4644. STD T7 INITIALIZE POINTER TO *IN*
  4645. LDN 0
  4646. SDF2 STD T8 INITIALIZE LINE LENGTH COUNTER
  4647. STD AB+2 SAVE INITIAL VALUE
  4648. SDF2.1 SOD T7 DECREMENT POINTER
  4649. PJN SDF3 IF POINTER .GE. *FIRST*
  4650. ADD SR+2 POINTER = *LIMIT* - 1
  4651. STD T7
  4652. SDF3 SBD T4
  4653. NJN SDF3.1 IF NOT BACK TO START OF DISPLAY
  4654. LJM SDF8 RETURN
  4655.  
  4656. SDF3.1 LDD AB READ WORD FROM BUFFER
  4657. SHN 14
  4658. ADD AB+1
  4659. ADD T7
  4660. CRD CM
  4661. AOD T8 INCREMENT LINE LENGTH COUNTER
  4662. LDD CM+4
  4663. NJN SDF2.1 IF NOT END OF LINE
  4664. LDD T8
  4665. SHN -1
  4666. NJN SDF5 IF NOT NULL LINE
  4667. SDF4 LDD CM
  4668. ZJN SDF2 IF NULL WORD
  4669. LDN 1
  4670. UJN SDF2 FIND NEXT LINE
  4671.  
  4672. SDF5 SHN -2
  4673. ZJN SDF6 IF LINE WAS SIX OR LESS WORDS LONG
  4674. LCN YINC
  4675. SDF6 SBN YINC
  4676. RAD T9 UPDATE LINE COUNT
  4677. SBD LL
  4678. ADN YINC
  4679. ZJN SDF7 IF EXACTLY AT THE BOTTOM OF SCREEN
  4680. PJN SDF4 IF NOT AT BOTTOM OF SCREEN YET
  4681. LDD T8 GO BACK TO THE NEXT LINE
  4682. SBD AB+2 SKIP PAST NULL WORD IF NECESSARY
  4683. SDF7 ADN 1
  4684. RAD T7
  4685. SBD SR+2
  4686. MJN SDF8 IF POINTER .LT. *LIMIT*
  4687. STD T7
  4688. SDF8 LCN 0 SET RESET REQUEST FLAG
  4689. STM TDSA,T5
  4690. LDD CT GET CONSOLE TYPE
  4691. LJM SDFX RETURN
  4692. SSR SPACE 4,10
  4693. ** SSR - SELECT SCREEN ROLLING.
  4694. *
  4695. * ENTRY (T2) = 0, IF ENABLE ROLLING.
  4696. * = 1, IF INHIBIT ROLLING.
  4697.  
  4698.  
  4699. SSR LDM DCTY,T2 GET APPROPRIATE ZERO/NONZERO VALUE
  4700. ERRNZ C545 A ZERO VALUE IS REQUIRED TO ENABLE ROLLING
  4701. ERRZR C721 CC634B CAN NOT BE ROLLED
  4702. ERRNZ DCTY+1-DLYA CODE ASSUMES THE RELATIONSHIP
  4703. STM SSRA
  4704. LJM. /KEYBOARD/KBIX RETURN
  4705.  
  4706.  
  4707. SSRA CON C545 INHIBIT ROLLING FLAG
  4708. SPACE 4,10
  4709. DSPEND
  4710. DISPLAY (DISPLAY OVERLAY MESSAGE TEXT.),,RPL
  4711. MSG SPACE 4,10
  4712. ** THIS OVERLAY CONTAINS TEXT THAT CAN BE ACCESSED FROM THE RPL
  4713. * BY DISPLAY OVERLAYS. IT IS NEVER LOADED BY *DSD* AND MUST BE
  4714. * THE FIRST ENTRY IN THE RPL.
  4715. MSG SPACE 4,10
  4716. ** MSG - DEFINE *A,O* DISPLAY EVENT DESCRIPTOR MESSAGE.
  4717. *
  4718. * MSG (TEXT)
  4719. * TEXT = TEXT OF MESSAGE.
  4720.  
  4721.  
  4722. PURGMAC MSG
  4723.  
  4724. MSG MACRO TEXT
  4725. LOCAL A,B
  4726. A SET *+4
  4727. B SET A/5
  4728. BSSZ B*5-A+4
  4729. MSG RMT
  4730. CON /DSD".AMSGOVL"/B TEXT
  4731. MSG RMT
  4732. DATA C*TEXT*
  4733. MSG ENDM
  4734. EEMSG SPACE 4,10
  4735. ** EEMSG - DEFINE *E,E* DISPLAY MESSAGE.
  4736. *
  4737. * EEMSG (TEXT)
  4738. * TEXT = TEXT OF MESSAGE.
  4739.  
  4740.  
  4741. PURGMAC EEMSG
  4742.  
  4743. MACRO EEMSG,NAME,TEXT
  4744. LOCAL A,B
  4745. A SET *+4
  4746. B SET A/5
  4747. BSSZ B*5-A+4
  4748. DATA C*TEXT*
  4749. QUAL EEMSG
  4750. NAME EQU /DSD".AMSGOVL"/B
  4751. QUAL *
  4752. EEMSG ENDM
  4753. SPACE 4,10
  4754. PMSG SPACE 4,10
  4755. ** PMSG - DEFINE *E,P* DISPLAY MESSAGE AND ERROR MNEMONIC.
  4756. *
  4757. * NAME PMSG CODE,TEXT,MNEM
  4758. * NAME = NAME OF TEXT.
  4759. * CODE = *COMSRSX* PREVIEW DISPLAY MESSAGE CODE.
  4760. * TEXT = MESSAGE TEXT.
  4761. * MNEM = ERROR MNEMONIC.
  4762.  
  4763.  
  4764. PURGMAC PMSG
  4765.  
  4766. MACRO PMSG,A,B,C,D
  4767. IFC NE,$A$$
  4768. .1 SET *+4
  4769. .2 SET .1/5
  4770. BSSZ .2*5-.1+4
  4771. A EQU */5
  4772. .3 SET *
  4773. ELSE 5
  4774. ORG .3+B*5*3
  4775. IFC NE,$C$$,3
  4776. LOC B*5*3
  4777. DATA 28L_C
  4778. DATA 2L_D
  4779. BSS 0
  4780. ENDM
  4781.  
  4782.  
  4783. .AMSGOVL MICRO 1,, "M."
  4784. TFTN SPACE 4,10
  4785. ** TFTN - TABLE OF MONITOR FUNCTIONS.
  4786. *
  4787. * THE TABLE IS FORCED TO BEGIN ON A CM WORD BOUNDARY. EACH
  4788. * WORD CONTAINS TWO CONSECUTIVE MNEMONICS IN ONE WORD.
  4789. *
  4790. * ENTRY 24/ EVEN MNEMONIC,24/ ODD MNEMONIC, 12/
  4791.  
  4792.  
  4793. .1 SET *+4 FORCE THE TABLE TO A WORD BOUNDARY
  4794. .2 SET .1/5
  4795. BSSZ .2*5-.1+4
  4796.  
  4797. QUAL DISPLAY
  4798. TFTN EQU */5 WORD OFFSET WITHIN THE TEXT OVERLAY
  4799. QUAL *
  4800.  
  4801. TXT$ EQU 1 FORCE 2 MNEMONICS PER CM WORD
  4802. LIST X,D
  4803. *CALL COMDTFN
  4804. LIST *
  4805. SPACE 4,10
  4806. ** A,OPERATOR EVENT DESCRIPTOR MESSAGES.
  4807.  
  4808.  
  4809. MSG (FAMILY ORDINAL TABLE FULL)
  4810. MSG (SYSTEM FNT FULL)
  4811. MSG (QUEUED FILE TABLE FULL)
  4812. MSG (EXECUTING JOB TABLE FULL)
  4813. MSG (DAYFILE LENGTH EXCEEDED)
  4814. MSG (ERROR LOG LENGTH EXCEEDED)
  4815. MSG (ACCOUNT FILE LENGTH EXCEEDED)
  4816. MSG (MAINLOG LENGTH EXCEEDED)
  4817. MSG (TRACK LIMIT)
  4818. MSG (USER EXTENDED MEMORY DISABLED)
  4819. MSG (CHANNEL DOWNED BY SYSTEM)
  4820. MSG (ERRLOG ALERT)
  4821. MSG (LOW SPACE ON MASS STORAGE DEVICE)
  4822. MSG (CHECK TMSDIS,FAM.)
  4823. MSG (CHECK E,E DISPLAY)
  4824. SPACE 4,10
  4825. ** E,E DISPLAY MESSAGES.
  4826.  
  4827.  
  4828. ERCM EEMSG (ERROR CODE = )
  4829. ACRM EEMSG (ACTIVITY RESTRICTED.)
  4830. SUSM EEMSG (SUSPECT.)
  4831. PPLM EEMSG (PARITY PROTECTION LOST. UNIT = )
  4832. PPRM EEMSG (PARITY RESTORE IN PROGRESS. RC = )
  4833. PRPM EEMSG (PARITY RESTORE PENDING.)
  4834. ERPM EEMSG (ERROR RECOVERY IN PROGRESS.)
  4835. COTM EEMSG (CONTROLLER OVERTEMP.)
  4836. LWSM EEMSG (LOW SPACE.)
  4837. VFTM EEMSG (VERIFICATION FAILURE THRESHOLD.)
  4838. RETM EEMSG (RECOVERED ERROR THRESHOLD.)
  4839. UETM EEMSG (UNRECOVERED ERROR THRESHOLD.)
  4840. SPACE 4,10
  4841. ** E,P DISPLAY MESSAGES AND ERROR MNEMONICS.
  4842.  
  4843.  
  4844. PDMS PMSG
  4845. PMSG 0,( ),( )
  4846. PMSG /RSX/OFF,(REQUIRED EQUIPMENT OFF/DOWN ),EO
  4847. PMSG /RSX/NWE,(NEEDS WRITE ENABLE ),WE
  4848. PMSG /RSX/NLB,(NEEDS LABEL ),LB
  4849. PMSG /RSX/CAD,(ACCESS NOT PERMITTED ),NP
  4850. PMSG /RSX/WVS,(WRONG VSN ),VS
  4851. PMSG /RSX/NLG,(NEEDS LABEL GO,EST TO LABEL),LB
  4852. PMSG /RSX/CAG,(NO PERMIT GO,EST TO LABEL),NP
  4853. PMSG /RSX/WVG,(WRONG VSN GO,EST TO LABEL),VS
  4854. PMSG /RSX/TCF,(TAPE CLEANER FAULT ),CF
  4855. PMSG /RSX/BFR,(READ ID BURST FAILURE ),RB
  4856. PMSG /RSX/BFW,(WRITE ID BURST FAILURE ),WB
  4857. PMSG /RSX/VOS,(VSN STORED OFFSITE ),OS
  4858. PMSG /RSX/NAC,(VOLUME NOT IN ACS ),NA
  4859. PMSG /RSX/UOL,(UNREADABLE OPTICAL LABEL ),OL
  4860. PMSG /RSX/NTV,(NEXTVSN,EST,VSN TO CONTINUE),NV
  4861. PMSG /RSX/ALC,(ACCESS LEVEL CONFLICT ),LC
  4862. PMSG /RSX/DRC,(DRIVE TYPE CONFLICT ),DC
  4863. PMSG /RSX/MXPM
  4864. SPACE 4,10
  4865. DSPEND
  4866. DISPLAY (DISPLAY A - OPERATOR STATUS.)
  4867. ENTRY DOD,DOD
  4868. DOD SPACE 4,10
  4869. *** *A,OPERATOR* DISPLAY.
  4870. *
  4871. *
  4872. * DISPLAY SYSTEM STATUS WORD *OPRL*.
  4873.  
  4874.  
  4875. DOD SUBR ENTRY/EXIT
  4876. DISPHD (A. OPERATOR DISPLAY.)
  4877. * LDN 0
  4878. STD T5 CLEAR EVENT FLAG
  4879. STD T6 CLEAR EVENT BIT NUMBER
  4880. STD CM+4
  4881. LDM CTOS SET Y-COORDINATE
  4882. STD YC
  4883. LDC RPLP GET MESSAGE TEXT OVERLAY ADDRESS
  4884. CRD AB
  4885. LDC OPRL
  4886. CRD SH
  4887. LDN 4
  4888. STD T8
  4889. DOD2 LDM SH,T8
  4890. LPN 1
  4891. ZJN DOD4 IF NOT THIS MESSAGE
  4892. LDD T5
  4893. NJN DOD3 IF HEADER ALREADY WRITTEN
  4894. LDN 2
  4895. OAM XC,CH OUTPUT COORDINATES
  4896. LDN DODCL
  4897. OAM DODC,CH OUTPUT HEADER
  4898. LCN 2*YINC SKIP A LINE
  4899. RAD YC
  4900. STD T5 SET EVENT FLAG
  4901. DOD3 LDN 2
  4902. OAM XC,CH
  4903. LDD T6
  4904. RJM D4S DISPLAY EVENT BIT NUMBER
  4905. LDD AB DISPLAY MESSAGE
  4906. SHN 14
  4907. ADD AB+1
  4908. ADM DODD,T6
  4909. RJM DOL
  4910. LCN YINC DECREMENT Y-COORDINATE
  4911. RAD YC
  4912. DOD4 AOD T6 INCREMENT EVENT BIT NUMBER
  4913. SBN DODDL
  4914. PJN DOD7 IF END OF OPERATOR EVENTS
  4915. ADN DODDL-14
  4916. ZJN DOD5 IF NEW BYTE
  4917. LDM SH,T8 POSITION TO NEXT EVENT
  4918. SHN -1
  4919. STM SH,T8
  4920. UJN DOD6 CHECK NEXT EVENT
  4921.  
  4922. DOD5 SOD T8
  4923. DOD6 LJM DOD2 CHECK NEXT EVENT
  4924.  
  4925. DOD7 LDD T5
  4926. ZJN DOD8 IF NO EVENT MESSAGES DISPLAYED
  4927. LCN 2*YINC DISPLAY RESPONSE LINE
  4928. RAD YC
  4929. ADN 2*YINC
  4930. OAN CH+40
  4931. DISPLA CH07,,(ENTER *LOG,NUMBER.* WHEN PROBLEM HAS BEEN CORREC
  4932. ,TED.)
  4933.  
  4934. * PROCESS *RDF*/*OPMSG* MESSAGE.
  4935.  
  4936. DOD8 LDC LDSP FIND OPERATOR DISPLAY BUFFER
  4937. CRD SR
  4938. LDD SR+2
  4939. SHN 14
  4940. LMD SR+3
  4941. SBN LODS
  4942. CRD T5
  4943. LDD T5+1
  4944. ZJN DOD10 IF NO MESSAGE
  4945. LDN 2 OUTPUT COORDINATES
  4946. OAM XC,CH
  4947. LDD T5+2
  4948. ZJN DOD9 IF NO *RTN*
  4949. LDC 3RFRD&3RNJS
  4950. DOD9 LMC 3RNJS
  4951. STD T2
  4952. SHN -6
  4953. SCN 77
  4954. STD T3
  4955. LDC 2R=
  4956. STD T4
  4957. LDN 5
  4958. OAM T2,CH DISPLAY *XXX = JSNA*
  4959. LDC 2R -
  4960. OAN CH+40 DISPLAY * - *
  4961. RJM DMS DISPLAY THE MESSAGE
  4962. LCN YINC UPDATE THE Y-COORDINATE
  4963. RAD YC
  4964. OAN CH+40
  4965. LDN DODEL
  4966. DOD10 ZJN DOD12 IF NO MESSAGE
  4967. OAM DODE,CH DISPLAY THE RESPONSE MESSAGE
  4968. LDD T5+2 SELECT THE VARIABLE PART OF THE RESPONSE
  4969. ZJN DOD11 IF NOT *RDF*
  4970. LDN DODG-DODF
  4971. DOD11 ADC. DODF
  4972. STM DODA
  4973. LDN 3
  4974. OAM. **,CH OUTPUT THE VARIABLE PART OF THE RESPONSE
  4975. DODA EQU *-1 ADDRESS OF -*DIAL,- OR - *CFO,-
  4976. DOD12 LJM DODX RETURN
  4977.  
  4978.  
  4979.  
  4980. DODC DATA H*NUMBER* OPERATOR EVENT HEADER
  4981. CON CH12
  4982. DATA H*MESSAGE TEXT*
  4983. DODCL EQU *-DODC
  4984.  
  4985. DODD BSS 0
  4986. LOC 0
  4987. LIST G
  4988. MSG HERE
  4989. LIST *
  4990. DODDL EQU *
  4991. LOC *O
  4992.  
  4993. DODE CON CH07 RESPONSE MESSAGE
  4994. DATA H$ENTER$
  4995. CON CH19
  4996. DATA H$JSN.MESSAGE.* TO RESPOND.$
  4997. CON CH13
  4998. DODEL EQU *-DODE
  4999.  
  5000. DODF DATA 6H *CFO,
  5001. DODG DATA 6H*DIAL,
  5002. DMS SPACE 4,10
  5003. ** DMS - DISPLAY THE MESSAGE.
  5004. *
  5005. * ENTRY (SR+2 - SR+3) = FWA OF *L* DISPLAY BUFFER.
  5006. *
  5007. * USES T5, T6, CM - CM+4.
  5008. *
  5009. * CALLS DWD.
  5010.  
  5011.  
  5012. DMS SUBR ENTRY/EXIT
  5013. LDN LODS-1 FIND FWA OF MESSAGE
  5014. STD T6
  5015. DMS1 LDN 4 SET WORD COUNT PER LINE = 5
  5016. STD T5
  5017. LDC CH14 SET X-COORDINATE
  5018. OAN CH+40
  5019. DMS2 LDD SR+2 DISPLAY NEXT WORD
  5020. SHN 14
  5021. ADD SR+3
  5022. SBD T6
  5023. CRD CM
  5024. RJM DWD DISPLAY WORD
  5025. SOD T6 UPDATE INDEX
  5026. ZJN DMSX IF END OF BUFFER
  5027. LDD CM+4
  5028. ZJN DMSX IF END OF LINE
  5029. SOD T5
  5030. PJN DMS2 IF NOT EDGE OF SCREEN
  5031. LCN YINC MOVE DOWN ONE LINE
  5032. RAD YC
  5033. OAN CH+40
  5034. UJN DMS1 FINISH CURRENT LINE
  5035. SPACE 4,10
  5036. DSPEND
  5037. DISPLAY (DISPLAY B - SYSTEM STATUS.),PBD
  5038. ENTRY DSB,DSB
  5039. DSB SPACE 4,10
  5040. *** *B* DISPLAY.
  5041. *
  5042. * DISPLAY SYSTEM STATUS BY CONTROL POINTS.
  5043. *
  5044. * *B,A* EXAMPLE -
  5045. *
  5046. * 1 2 3 4 5 6
  5047. * 1234567890123456789012345678901234567890123456789012345678901234
  5048. * CP JSN SC PR FL CPU STATUS
  5049. *
  5050. * 14 JSNN S 130 1234 X (MS2W, IF NOT BLANK, OR MS1W.)
  5051. * 15 (UNUSED CONTROL POINT WILL APPEAR AS A BLANK LINE.)
  5052. *
  5053. * UPON PRESSING THE *=* KEY (IF DISPLAY IS ON THE RIGHT SCREEN) OR
  5054. * THE */* KEY (IF ON THE LEFT), THE *B,A* DISPLAY TOGGLES TO -
  5055. *
  5056. * 1 2 3 4 5 6
  5057. * 1234567890123456789012345678901234567890123456789012345678901234
  5058. * CP JSN EJT SCPR FLE SS STATUS
  5059. *
  5060. * 14 JSNN 122 4413 1234 ISLM (MS2W, IF NOT BLANK, OR MS1W.)
  5061. * 15 (UNUSED CONTROL POINT WILL APPEAR AS A BLANK LINE.)
  5062. *
  5063. * SPECIAL FLAGS -
  5064. * COLUMN 30 = I, IF SUBSYSTEM IDLE SET.
  5065. * COLUMN 31 = S, IF SUBCONTROL POINTS ACTIVE.
  5066. * COLUMN 32 = L, IF JOB HAS FORCED ROLLIN SET (LOCK).
  5067. * COLUMN 32 = R, IF ROLLOUT REQUESTED (OVERRIDES L).
  5068. * COLUMN 33 = M, IF CONTROL POINT STORAGE MOVING.
  5069. *
  5070. * *B,O* EXAMPLE -
  5071. *
  5072. * 1 2 3 4 5 6
  5073. * 1234567890123456789012345678901234567890123456789012345678901234
  5074. * CP JSN STATUS
  5075. *
  5076. * 14 JSNN (MS2W MESSAGE, IF NOT BLANK, OR MS1W MESSAGE.)
  5077. * 15 (UNUSED CONTROL POINT WILL APPEAR AS A BLANK LINE.)
  5078. *
  5079.  
  5080.  
  5081. DSB SUBR PRESET ENTRY/EXIT
  5082. LDD TH PRESET SHIFT INSTRUCTION
  5083. ERRNZ SHNI-1000
  5084. ADM UESC
  5085. STM DSBJ
  5086. LDM TDSB GET DEFAULT DISPLAY TYPE
  5087. STM DSBA
  5088. SOM DSB UPDATE *RJM* ADDRESS IN *DSD-S* MAIN LOOP
  5089. STD T1
  5090. LDN DSB1-DOEP
  5091. RAI T1
  5092. LJM. -1,T1 RETURN AND RE-ENTER AT *DSB1*
  5093.  
  5094. DSB1 SUBR MAIN ENTRY/EXIT
  5095. DISPHD (B,) DISPLAY SCREEN TITLE
  5096. LDC 1RA&1RA CHECK DISPLAY TYPE
  5097. * LDC 1RO&1RA (*B,O* DISPLAY TYPE)
  5098. DSBA EQU *-1
  5099. STD T8
  5100. SHN 6
  5101. LMC 2RA.
  5102. OAN CH+40
  5103. DISPLA ,,( SYSTEM STATUS.)
  5104. * LDN 0 GET CPU CONDITION BITS FROM LOCATION 0
  5105. CRD CM
  5106. LDD CM
  5107. ADD CM+1
  5108. ADD CM+2
  5109. ZJN DSB2 IF NONE SET
  5110.  
  5111. * ISSUE *CPUMTR ERROR EXIT.* MESSAGE.
  5112.  
  5113. LDD NC DISPLAY MESSAGE
  5114. SHN 7
  5115. ADN MS2W
  5116. CWM DSBC,TR *CPUMTR ERROR EXIT.*
  5117.  
  5118. * DETERMINE START OF PAGE.
  5119.  
  5120. DSB2 LDD LA CHECK WHICH DISPLAY THE OVERLAY IS DRIVING
  5121. ADC -.FLFT
  5122. SHN -10B
  5123. ERRNG .FRHT-.FLFT-400B ENSURE DIFFERENCE IS IN RANGE
  5124. ERRNG .FLFT-.FRHT+777B
  5125. STD T1
  5126. ZJN DSB3 IF *B* IS NOT ON THE RIGHT SCREEN
  5127. LDD LS
  5128. LMN 1RB
  5129. NJN DSB3 IF *B* IS NOT ALSO ON THE LEFT SCREEN
  5130. LDM. .FLFT+DSBA
  5131. LMM. .FRHT+DSBA
  5132. NJN DSB3 IF DIFFERENT TYPE OF *B* DISPLAY
  5133. LDM TGTF
  5134. LMM TGTF+1
  5135. NJN DSB3 IF DIFFERENT TOGGLE STATUS
  5136. LDM. .FLFT+DSBH+1 GET NEXT CONTROL POINT NUMBER FROM LEFT
  5137. STM DSBH
  5138. DSB3 LDM TGTF,T1 SET TOGGLE STATUS
  5139. STD T9
  5140. LDM DSBH GET FIRST CONTROL POINT FOR THIS PAGE
  5141. STD CN
  5142. LDM CTOS INITIALIZE THE Y-COORDINATE
  5143. STD YC
  5144. OAN CH+40
  5145.  
  5146. * DISPLAY THE APPROPRIATE HEADER.
  5147.  
  5148. LDN DSBDL
  5149. OAM DSBD,CH DISPLAY PART 1 OF THE HEADER
  5150. LDD T8
  5151. NJN DSB5 IF *B,O* DISPLAY
  5152. LDD T9
  5153. ZJN DSB4 IF SET ONE
  5154. LDC DSBFL*10000+DSBF-DSBEL*10000-DSBE
  5155. DSB4 ADC. DSBEL*10000+DSBE
  5156. STM DSBB
  5157. SHN -14
  5158. OAM. DSBE,CH DISPLAY SET ONE
  5159. * OAM. DSBF,CH DISPLAY SET TWO
  5160. DSBB EQU *-1
  5161. DSB5 LDN DSBGL DISPLAY *STATUS*
  5162. OAM DSBG,CH
  5163. LCN 2*YINC POSITION DOWN TWO LINES
  5164. RAD YC
  5165. OAN CH+40 OUTPUT Y-COORDINATE
  5166.  
  5167. * DISPLAY THE CP NUMBER AND JSN.
  5168.  
  5169. DSB6 LDD XC OUTPUT X-COORDINATE
  5170. OAN CH+40
  5171. LDD CN
  5172. RJM D2S DISPLAY CP NUMBER
  5173. LDD CN SET CP ADDRESS
  5174. SHN 7
  5175. STD CP
  5176. ADK TFSW READ EJT ORDINAL
  5177. CRD T2 (T2) = EJT ORDINAL
  5178. LDD T2
  5179. NJN DSB7 IF ACTIVE CP
  5180. LDD CN
  5181. SBD NC
  5182. ZJN DSB7 IF NOT ACTIVE CP
  5183. LJM DSB15 ADVANCE THE CP NUMBER
  5184.  
  5185. DSB7 SFA EJT GET EJT DATA
  5186. ADK JSNE
  5187. CRD SR (SR - SR+1) = JSN
  5188. ADK SCLE-JSNE
  5189. CRD AB (AB) = SERVICE CLASS,ROLLIN WITH LOCK,OT
  5190. ADK SCHE-SCLE
  5191. CRD CM (CM+4) = SCHEDULER PRIORITY
  5192. LDK CH06
  5193. OAN CH+40 OUTPUT X-COORDINATE
  5194. ADK CH12-CH06 SET MESSAGE COORDINATE FOR *B,O*
  5195. STD AB+1
  5196. LDN 2 DISPLAY JSN
  5197. OAM SR,CH
  5198. LDD T8 CHECK DISPLAY TYPE
  5199. NJP DSB12 IF *B,O* DISPLAY
  5200.  
  5201. * DISPLAY DATA FIELDS FOR *B,A* DISPLAY (DEFAULT SET).
  5202.  
  5203. LDC LMNI+3 MODIFY *DOL* FOR *B,A*
  5204. STM DOLA
  5205. LDD CP READ CPA DATA
  5206. ADK STSW
  5207. CRD T3 (T3) = CPU, SUB-CONTROL POINT STATUS
  5208. ADK CWQW-STSW
  5209. CRD T4 (T4) = CPU PRIORITY
  5210. ADK FLSW-CWQW
  5211. CRD T7 (CM+3) = CM FIELD LENGTH
  5212. LDD T9 CHECK SET ONE OR SET TWO
  5213. NJN DSB8 IF SET TWO
  5214. OAN CH+40 SKIP TWO SPACES
  5215. LDD AB OUTPUT SERVICE CLASS
  5216. SHN -6
  5217. STD T5
  5218. LDM TJSC,T5
  5219. SHN -6
  5220. OAN CH+40
  5221. LDD T4
  5222. SHN -3
  5223. LPC 177
  5224. RJM D6S DISPLAY CPU PRIORITY
  5225. LDD CM+3
  5226. RJM D6S DISPLAY CM FL
  5227. LDD T3 GET CPU STATUS
  5228. SHN -11
  5229. STD CM+4
  5230. LDM DSBI,CM+4 DISPLAY CPU STATUS
  5231. UJP DSB11.2 CHECK FOR MESSAGE
  5232.  
  5233. * DISPLAY DATA FIELDS FOR *B,A* DISPLAY (ALTERNATE SET).
  5234.  
  5235. DSB8 LDD CP READ CPA DATA FOR SET TWO
  5236. ADK ECSW
  5237. CRD T6 (CM+2) = EM FIELD LENGTH
  5238. ADK SNSW-ECSW
  5239. CRD T5 (CM) = SUBSYSTEM IDLEDOWN STATUS, PAUSE
  5240. LDD T2
  5241. RJM D4S DISPLAY EJT ORDINAL
  5242. LDD CM+4
  5243. RJM D4S DISPLAY SCHEDULER PRIORITY
  5244. LDD CM+2
  5245. DSBJ SHN 0 BIAS FLE
  5246. * SHN UESC (UESC = USER EXTENDED MEMORY SHIFT COUNT)
  5247. RJM D6S DISPLAY EXTENDED MEMORY FL
  5248. LDD CM CHECK FOR SUBSYSTEM IDLEDOWN STATUS
  5249. LPN 10
  5250. ZJN DSB9 IF NOT BEING IDLED
  5251. LDN 1RI
  5252. SHN 6
  5253. DSB9 STD T1
  5254. LDD T3 GET SUBCONTROL POINT STATUS
  5255. SHN -10
  5256. LPN 1
  5257. ZJN DSB10 IF SUBCONTROL POINTS NOT ACTIVE
  5258. LDN 1RS
  5259. DSB10 LMD T1
  5260. OAN CH+40 DISPLAY SUBSYSTEM IDLEDOWN, SCP STATUS
  5261. LDD CP
  5262. ADK STSW
  5263. CRD T4 CHECK ROLLOUT REQUESTED
  5264. LDD T6
  5265. LPN 01
  5266. ZJN DSB10.1 IF ROLLOUT NOT REQUESTED
  5267. LDN 1RR
  5268. UJN DSB10.2 SET *R* IN MESSAGE
  5269.  
  5270. DSB10.1 LDD AB CHECK FOR ROLLIN WITH LOCK
  5271. LPN 20
  5272. ZJN DSB11 IF NOT ROLLIN WITH LOCK
  5273. LDN 1RL
  5274. DSB10.2 SHN 6
  5275. DSB11 STD T1
  5276. LDK CMCL CHECK IF CONTROL POINT MOVING
  5277. CRD T4
  5278. LDD T4
  5279. LMD CN
  5280. NJN DSB11.1 IF CONTROL POINT NOT MOVING
  5281. LDN 1RM DISPLAY STORAGE MOVE STATUS
  5282. RAD T1
  5283. DSB11.1 LDD T1
  5284. DSB11.2 OAN CH+40 DISPLAY STATUS
  5285. LDK CH35 SET THE MESSAGE COORDINATE FOR *B,A*
  5286. STD AB+1
  5287.  
  5288. * DISPLAY MESSAGE BUFFER.
  5289.  
  5290. DSB12 LDD CP READ THE PAUSE BIT
  5291. ADK SNSW
  5292. CRD T4 (T7) = PAUSE
  5293. ADK MS2W-SNSW READ MESSAGE 2
  5294. CRD CM
  5295. STD T5
  5296. LDD CM
  5297. STD T4 SAVE MESSAGE 2 STATUS
  5298. ZJN DSB13 IF BLANK
  5299. LDC LMNI+3 MODIFY *DOL* FOR MESSAGE 2
  5300. STM DOLA
  5301. UJN DSB14 DISPLAY MESSAGE
  5302.  
  5303. DSB13 LDD CP READ MESSAGE 1
  5304. ADN MS1W
  5305. CRD CM
  5306. STD T5
  5307. LDD CM
  5308. ZJN DSB15 IF NO MESSAGE
  5309. DSB14 RJM DMS DISPLAY MESSAGE
  5310.  
  5311. * ADVANCE THE CONTROL POINT NUMBER.
  5312.  
  5313. DSB15 LDC LMNI+5+1 RESTORE *DOL*
  5314. STM DOLA
  5315. AOD CN ADVANCE CP NUMBER
  5316. SBD NC
  5317. ZJN DSB16 IF ONE MORE CONTROL POINT
  5318. PJN DSB19 IF NO MORE CONTROL POINTS
  5319. DSB16 STD T1 SAVE LAST CONTROL POINT FLAG
  5320. LDM DCTY DECREMENT Y-COORDINATE
  5321. SHN 1
  5322. SBN YINC+2
  5323. RAD YC
  5324. OAN CH+40
  5325. SBM CBOS
  5326. MJN DSB18 IF NO MORE LINES
  5327. DSB17 LJM DSB6 LOOP
  5328.  
  5329. DSB18 LDD T1
  5330. ZJN DSB17 IF LAST CONTROL POINT
  5331. LDN MOREL DISPLAY *MORE*
  5332. OAM MORE,CH
  5333. LDD CN
  5334. DSB19 STM DSBH+1 SAVE CONTROL POINT NUMBER OF NEXT PAGE
  5335. LJM DSB1X RETURN
  5336.  
  5337.  
  5338. DSBC DATA C*CPUMTR ERROR EXIT.*
  5339.  
  5340. * SCREEN TITLES.
  5341.  
  5342. DSBD CON CH01,2HCP,CH06 COMMON HEADER
  5343. DATA 4HJSN
  5344. CON CH20
  5345. DSBDL EQU *-DSBD
  5346.  
  5347. DSBE CON CH12,2HSC *B,A* SET ONE HEADER
  5348. CON CH18,2HPR
  5349. CON CH25,2HFL
  5350. CON CH30
  5351. DATA 4HCPU
  5352. CON CH42
  5353. DSBEL EQU *-DSBE
  5354.  
  5355. DSBF CON CH11 *B,A* SET TWO HEADER
  5356. DATA 10HEJT SCPR
  5357. CON CH25
  5358. DATA 8HFLE SS
  5359. CON CH42
  5360. DSBFL EQU *-DSBF
  5361.  
  5362. DSBG DATA 6HSTATUS MESSAGE HEADER
  5363. DSBGL EQU *-DSBG
  5364.  
  5365. * PAGE CONTROL BYTES.
  5366. * BYTE 0 = FIRST CONTROL POINT FOR CURRENT PAGE
  5367. * BYTE 1 = FIRST CONTROL POINT FOR NEXT PAGE
  5368.  
  5369. DSBH CON 1,1
  5370. DSBI SPACE 4,10
  5371. ** DSBI - TABLE OF CPU STATUS CODES.
  5372. *
  5373. * INDEXED BY NUMERIC VALUE IN CPA WORD *STSW*.
  5374.  
  5375.  
  5376. DSBI BSS 0
  5377.  
  5378. LOC 0
  5379. VFD 12/1R NULL
  5380. VFD 12/1RA JOB ACTIVE IN CPU 0
  5381. VFD 12/1RB JOB ACTIVE IN CPU 1
  5382. VFD 12/1R (RESERVED)
  5383. VFD 12/1RW JOB WAITING FOR CPU
  5384. VFD 12/1RX JOB WAITING FOR RECALL
  5385. VFD 12/1RI JOB WAITING FOR PP DROP
  5386. VFD 12/1R (RESERVED)
  5387.  
  5388. LOC *O
  5389. DMS SPACE 4,10
  5390. ** DMS - DISPLAY CONTROL POINT MESSAGE.
  5391. *
  5392. * ENTRY (CN) = CP NUMBER.
  5393. * (CP) = CPA ADDRESS.
  5394. * (AB) = 8/ , 4/ ORIGIN TYPE CODE.
  5395. * (AB+1) = STARTING COORDINATE.
  5396. * (T4) = 0, IF NOT *MS2W*.
  5397. * (T5) = MESSAGE ADDRESS.
  5398. * (T7) = 11/ , 1/ PAUSE BIT
  5399. * (CM - CM+4) = FIRST WORD OF MESSAGE.
  5400. *
  5401. * USES T6, CM - CM+4.
  5402. *
  5403. * CALLS DOL.
  5404. *
  5405. * MACROS CFNC.
  5406.  
  5407.  
  5408. DMS SUBR ENTRY/EXIT
  5409. LDN 0 CLEAR INTENSITY COUNT
  5410. STD T6
  5411. LDD T7 CHECK PAUSE BIT
  5412. LPN 1
  5413. NJN DMS1 IF PAUSE BIT SET
  5414. LDD T4
  5415. ZJN DMS3 IF NOT *MS2W*
  5416. LDD NC
  5417. LMD CN
  5418. ZJN DMS1 IF SYSTEM CP
  5419. LDD AB
  5420. LPN 17
  5421. LMK SYOT
  5422. NJN DMS3 IF NOT SYSTEM ORIGIN
  5423. LDD CM
  5424. SHN -6
  5425. LMN 1R$
  5426. NJN DMS3 IF FIRST CHARACTER .NE. *$*
  5427. DMS1 CFNC BIVF
  5428. PJN DMS3 IF CDC721
  5429. LDD CN
  5430. SBD CY
  5431. LPN 30
  5432. ZJN DMS3 IF NOT TIME TO INTENSIFY
  5433. LDN 2
  5434. STD T6
  5435. DMS2 LDK CH06 INTENSIFY JSN
  5436. OAN CH+40
  5437. LDN 2
  5438. OAM SR,CH
  5439. DMS3 LDD AB+1 SET X-COORDINATE
  5440. OAN CH+40
  5441. LDD T5 DISPLAY 1 LINE
  5442. RJM DOL
  5443. SOD T6
  5444. ZJN DMS3 IF NOT DONE INTENSIFYING MESSAGE
  5445. PJN DMS2 IF NOT DONE INTENSIFYING JSN
  5446. CFNC EIVF
  5447. LJM DMSX RETURN
  5448. PBD SPACE 4,10
  5449. ** PBD - PAGE THE *B* DISPLAY.
  5450. *
  5451. * ENTRY (T2) = 0, IF PAGE FORWARD.
  5452. * = 1, IF PAGE BACKWARD.
  5453.  
  5454.  
  5455. PBD BSS 0 ENTRY
  5456. LDD T2
  5457. NJN PBD1 IF PAGE BACKWARD
  5458. LDM DSBH+1 GET FIRST CONTROL POINT FOR NEXT PAGE
  5459. PBD1 STM DSBH
  5460. LJM. /KEYBOARD/KBIX RETURN
  5461. SPACE 4,10
  5462. DSPEND
  5463. DISPLAY (DISPLAYS C, D - CENTRAL MEMORY.),AMF,CMR
  5464. ENTRY DSC,DSC
  5465. SPACE 4,10
  5466. *** NOTE -
  5467. *
  5468. * THIS OVERLAY SHOULD BE MADE CM RESIDENT SO THAT
  5469. * THE *C* AND *D* DISPLAYS IN THIS OVERLAY WILL
  5470. * BE AVAILABLE TO THE OPERATOR EVEN IF THE SYSTEM
  5471. * IS HUNG.
  5472. DSC SPACE 4,10
  5473. *** *C* DISPLAY.
  5474. * *D* DISPLAY.
  5475. *
  5476. * DISPLAY CM AS 5 GROUPS OF 4 DIGITS.
  5477.  
  5478.  
  5479. DSC SUBR ENTRY/EXIT
  5480. LDD CN DISPLAY HEADER
  5481. SHN 6
  5482. LMN 1R.
  5483. STM DSCB+2
  5484. LDN DSCBL
  5485. OAM DSCB,CH
  5486. LDM DSCA-1RC,CN GET JSN FOR SELECTED SCREEN
  5487. STM DSCC
  5488. LDN 2
  5489. OAM *,CH DISPLAY JSN
  5490. DSCC EQU *-1 (ADDRESS OF JSN)
  5491. LDM DSCC
  5492. RJM SJS SEARCH FOR JSN IN EJT
  5493. MJN DSCX IF JOB NOT AT CP OR JSN UNUSED
  5494. LDD SF SET SECURE FLAG
  5495. STD T8
  5496. LDD LK
  5497. SHN -1
  5498. ZJN DSC1 IF NOT SECURE UNLOCK
  5499. LDN 0 CLEAR SECURE FLAG
  5500. STD T8
  5501. DSC1 LDD CN CHECK DISPLAY
  5502. LMN 1RC
  5503. ZJN DSC4 IF *C* DISPLAY
  5504. DSC2 LDC D5F SET FORMAT
  5505. STD T6
  5506. LDM TDFC-1,CN DISPLAY CENTRAL MEMORY
  5507. DSC3 RJM DCM
  5508. LJM DSCX RETURN
  5509.  
  5510. DSC4 LDK CMBL FETCH *CPUMTR* BREAKPOINT STATUS
  5511. CRD CM
  5512. LDD CM+3 CHECK FOR EXCHANGE PACKAGE DISPLAY
  5513. LMM TDSC
  5514. SHN 14
  5515. ADD CM+4
  5516. LMM TDSC+1
  5517. NJN DSC2 IF NOT EXCHANGE PACKAGE
  5518. LDC. DXP SET FORMAT
  5519. STD T6
  5520. LDC TDSC SET ADDRESS OF DISPLAY BLOCK
  5521. UJP DSC3 DISPLAY EXCHANGE PACKAGE
  5522.  
  5523.  
  5524. DSCA CON /DSD/TJCC+1 JSN ADDRESS FOR *C* DISPLAY
  5525. CON /DSD/TJDD+1 JSN ADDRESS FOR *D* DISPLAY
  5526.  
  5527. DSCB CON CH01,HL01 SCREEN TITLE
  5528. DATA 22H"CHDR"
  5529. DSCBL EQU *-DSCB
  5530. ERRNZ XJSN-CH23 CODE DEPENDS ON VALUE
  5531. DXP SPACE 4,10
  5532. ** DXP - DISPLAY EXCHANGE PACKAGE.
  5533. *
  5534. * ENTRY (T5) = WORD INDEX.
  5535. * (CM - CM+4) = CONTENTS OF CM WORD.
  5536. *
  5537. * EXIT (T6) = *D4F* IF EXCHANGE PACKAGE IS COMPLETE.
  5538. *
  5539. * CALLS D4D, D4S, D5F, D6S.
  5540.  
  5541.  
  5542. DXP3 SBN 2
  5543. PJN DXP4 IF NOT *X* REGISTERS
  5544. RJM D5F
  5545. UJN DXPX RETURN
  5546.  
  5547. DXP4 RJM D4F DISPLAY BREAKPOINT AREA
  5548.  
  5549. DXP SUBR ENTRY/EXIT
  5550. LDD T7
  5551. SBK TDSC+2
  5552. PJN DXP3 IF NOT *A OR B* REGISTERS
  5553. LDC TDSC+10 FORCE 4 BLOCKS OF MEMORY
  5554. STM DCMB
  5555. LDC CH11
  5556. OAN CH+40 OUTPUT X-COORDINATE
  5557. LDD CM
  5558. SHN -6
  5559. NJN DXP1 IF EXIT MODE FLAGS
  5560. OAN CH+40
  5561. LDD CM DISPLAY 6 DIGITS
  5562. SHN 14
  5563. LMD CM+1 (LEADING ZERO SUPPRESSION)
  5564. RJM D6S
  5565. UJN DXP2 DISPLAY *A* REGISTER
  5566.  
  5567. DXP1 RJM D4D DISPLAY 4 DIGITS
  5568. LDD CM+1
  5569. RJM D4D DISPLAY 4 DIGITS
  5570. LDN 0
  5571. OAN CH+40
  5572. DXP2 LDD CM+3 DISPLAY *A* REGISTER
  5573. SCN 77
  5574. SHN 6
  5575. LMD CM+2
  5576. SHN 6
  5577. RJM D6S
  5578. LDD CM+3 DISPLAY *B* REGISTER
  5579. LPN 77
  5580. SHN 14
  5581. LMD CM+4
  5582. RJM D6S
  5583. UJP DXPX RETURN
  5584. D4F SPACE 4,10
  5585. ** D4F - DISPLAY 4 GROUPS OF 5 DIGITS.
  5586. *
  5587. * ENTRY (CM - CM+4) = CONTENTS OF CM WORD.
  5588. *
  5589. * CALLS DWD, D4D.
  5590.  
  5591.  
  5592. D4F SUBR ENTRY/EXIT
  5593. LDC CH11
  5594. OAN CH+40
  5595. LDD CM PARCEL 0
  5596. SHN -11
  5597. ADN 1R0 DISPLAY FIRST DIGIT
  5598. OAN CH+40
  5599. LDD CM+1
  5600. SCN 77
  5601. SHN 6
  5602. LMD CM
  5603. SHN 3 DISPLAY LOWER 4 DIGITS
  5604. RJM D4D
  5605. LDD CM+1 PARCEL 1
  5606. SHN -6
  5607. LPN 7
  5608. ADN 1R0 DISPLAY FIRST DIGIT
  5609. OAN CH+40
  5610. LDD CM+2
  5611. SCN 77
  5612. SHN 6
  5613. LMD CM+1
  5614. SHN 6 DISPLAY LOWER 4 DIGITS
  5615. RJM D4D
  5616. LDD CM+2 PARCEL 2
  5617. SHN -3
  5618. LPN 7
  5619. ADN 1R0 DISPLAY FIRST DIGIT
  5620. OAN CH+40
  5621. LDD CM+2
  5622. LPN 7
  5623. SHN 14
  5624. LMD CM+3
  5625. SHN -3 DISPLAY LOWER 4 DIGITS
  5626. RJM D4D
  5627. LDD CM+3 PARCEL 3
  5628. LPN 7
  5629. ADN 1R0 DISPLAY FIRST DIGIT
  5630. OAN CH+40
  5631. LDD CM+4 DISPLAY LOWER 4 DIGITS
  5632. RJM D4D
  5633. LDN 0 OUTPUT 2 SPACES
  5634. OAN CH+40
  5635. RJM DWD DISPLAY WORD
  5636. LJM D4FX RETURN
  5637. COMMON SPACE 4,10
  5638. ** COMMON DECKS.
  5639.  
  5640.  
  5641. *CALL COMDDCM
  5642. SPACE 4,10
  5643. DSPEND
  5644. DISPLAY (DISPLAYS F, G - CENTRAL MEMORY.),AMF
  5645. ENTRY DSF,DSF
  5646. DSF SPACE 4,10
  5647. *** *F* DISPLAY.
  5648. * *G* DISPLAY.
  5649. *
  5650. * DISPLAY CM AS 4 GROUPS OF 5 DIGITS.
  5651.  
  5652.  
  5653. DSF SUBR ENTRY/EXIT
  5654. LDD CN DISPLAY HEADER
  5655. SHN 6
  5656. LMN 1R.
  5657. STM DSFB+2
  5658. LDN DSFBL
  5659. OAM DSFB,CH
  5660. LDM DSFA-1RF,CN GET JSN FOR SELECTED SCREEN
  5661. STM DSFC
  5662. LDN 2
  5663. OAM *,CH DISPLAY JSN
  5664. DSFC EQU *-1 (ADDRESS OF JSN)
  5665. LDM DSFC
  5666. RJM SJS SEARCH FOR JSN IN EJT
  5667. MJN DSFX IF JOB NOT AT CP OR JSN UNUSED
  5668. LDC. D4F SET DISPLAY FORMAT
  5669. STD T6
  5670. LDD SF SET SECURE FLAG
  5671. STD T8
  5672. LDD LK
  5673. SHN -1
  5674. ZJN DSF1 IF NOT SECURITY UNLOCK
  5675. LDN 0 CLEAR SECURE FLAG
  5676. STD T8
  5677. DSF1 LDM TDFC-1,CN GET ADDRESS OF FIELD TABLE
  5678. RJM DCM
  5679. LJM DSFX RETURN
  5680.  
  5681.  
  5682. DSFA CON /DSD/TJFF+1
  5683. CON /DSD/TJGG+1
  5684.  
  5685. DSFB CON CH01,HL01 SCREEN TITLE
  5686. DATA 22H"FHDR"
  5687. DSFBL EQU *-DSFB
  5688. ERRNZ XJSN-CH23 CODE DEPENDS ON VALUE
  5689. D4F SPACE 4,10
  5690. ** D4F - DISPLAY 4 GROUPS OF 5 DIGITS.
  5691. *
  5692. * ENTRY (CM - CM+4) = CONTENTS OF CM WORD.
  5693. *
  5694. * USES T1.
  5695. *
  5696. * CALLS DWD, D4D.
  5697.  
  5698.  
  5699. D4F SUBR ENTRY/EXIT
  5700. LDC 6120 OUTPUT X-COORDINATE
  5701. OAN CH+40
  5702. LDD CM+1 PARCEL 0
  5703. SHN -11
  5704. SHN 17
  5705. LMD CM
  5706. SHN 3
  5707. STD T1 SAVE LOWER 4 DIGITS
  5708. SHN -14 DISPLAY UPPER DIGIT
  5709. LPN 7
  5710. ADN 1R0
  5711. OAN CH+40
  5712. LDD T1 DISPLAY LOWER DIGITS
  5713. RJM D4D
  5714. LDD CM+2 PARCEL 1
  5715. SCN 77
  5716. SHN 6
  5717. LMD CM+1
  5718. SHN 6
  5719. STD T1 SAVE LOWER 4 DIGITS
  5720. SHN -14 DISPLAY UPPER DIGIT
  5721. LPN 7
  5722. ADN 1R0
  5723. OAN CH+40
  5724. LDD T1 DISPLAY LOWER DIGITS
  5725. RJM D4D
  5726. LDD CM+2 PARCEL 2
  5727. LPN 77
  5728. SHN 14
  5729. LMD CM+3
  5730. SHN -3
  5731. STD T1 SAVE LOWER 4 DIGITS
  5732. SHN -14 DISPLAY UPPER DIGIT
  5733. LPN 7
  5734. ADN 1R0
  5735. OAN CH+40
  5736. LDD T1 DISPLAY LOWER DIGITS
  5737. RJM D4D
  5738. LDD CM+3 PARCEL 3
  5739. LPN 7
  5740. SHN 14
  5741. LMD CM+4
  5742. STD T1 SAVE LOWER 4 DIGITS
  5743. SHN -14 DISPLAY UPPER DIGIT
  5744. LPN 7
  5745. ADN 1R0
  5746. OAN CH+40
  5747. LDD T1 DISPLAY LOWER DIGITS
  5748. RJM D4D
  5749. LDN 0 OUTPUT 2 SPACES
  5750. OAN CH+40
  5751. RJM DWD DISPLAY WORD
  5752. LJM D4FX RETURN
  5753. COMMON SPACE 4,10
  5754. ** COMMON DECKS.
  5755.  
  5756.  
  5757. LIST X
  5758. *CALL COMDDCM
  5759. LIST *
  5760. SPACE 4,10
  5761. DSPEND
  5762. DISPLAY (DISPLAY E - EQUIPMENT STATUS TABLE.),PEA
  5763. ENTRY DSE,DSE
  5764. DSE SPACE 4,25
  5765. *** *E,A* DISPLAY.
  5766. *
  5767. * EACH LINE DISPLAYS STATUS FOR ONE EQUIPMENT IN THE EST. DATA
  5768. * SHOWN INCLUDE THE EST ORDINAL, THE ON/OFF/DOWN STATUS OF THE
  5769. * EQUIPMENT, THE JSN TO WHICH IT IS ASSIGNED, IF ANY, AND SOME
  5770. * HARDWARE CHARACTERISTICS OF THE DEVICE - CHANNELS, FIRST
  5771. * UNIT, CONTROLLER, ETC. AN ASTERISK FOLLOWS A *DOWN* CHANNEL.
  5772. * A MINUS SIGN FOLLOWS AN *IDLE* CHANNEL.
  5773. *
  5774. * EXAMPLE -
  5775. *
  5776. * 1 2 3 4 5 6
  5777. * 1234567890123456789012345678901234567890123456789012345678901234
  5778. * EST TYPE STATE JSN EQ UN CHANNELS ACCESS LIMITS
  5779. *
  5780. * 5 DE OFF 0 0 0 LVLBOTT LVLTOPP
  5781. * 6 DF ON 0 0 C00A C01B* LVLBOTT LVLTOPP
  5782. * 7 DN ON 2 3 C02B C03A LVLBOTT LVLTOPP
  5783. * 10 DJ-1 ON 0 0 1 - 24 LVLBOTT LVLTOPP
  5784. * 23 LT ON ASDF 5 0 12 LVLBOTT LVLTOPP
  5785. * 50 MT ON 0 0 13 * 22 LVLBOTT LVLTOPP
  5786. * 51 NT ON 0 1 13 * 33 LVLBOTT LVLTOPP
  5787. * MORE
  5788.  
  5789.  
  5790. DSE SUBR ENTRY/EXIT
  5791. DISPHD (E,A. EQUIPMENT STATUS.)
  5792. LDN ESTP READ EST POINTER
  5793. CRD T4
  5794. LDD LA SET SCREEN
  5795. LMC .FLFT
  5796. ZJN DSE1 IF LEFT SCREEN
  5797. LDN 2
  5798. DSE1 STD T5
  5799. LDM CTOS SET INITIAL Y-COORDINATE
  5800. OAN CH+40
  5801. SBN YINC
  5802. STD YC
  5803. DISPLA CH02,,(EST TYPE STATE JSN EQ UN CHANNELS)
  5804. * LDN 0
  5805. STM TDSE+1,T5 CLEAR NEXT EST ORDINAL
  5806. LDM TDSE,T5 SET EST ORDINAL
  5807. STD T7
  5808. LDD SF
  5809. ZJN DSE2 IF UNSECURED SYSTEM
  5810. DISPLA CH51,,(ACCESS LIMITS)
  5811. DSE2 LJM DSE22 READ EST ENTRY
  5812.  
  5813. DSE3 LDD XC
  5814. OAN CH+40
  5815. LDD T7
  5816. RJM D4S DISPLAY EST ORDINAL
  5817. LDD CM SET MASS STORAGE FLAG
  5818. SHN -13
  5819. STD T2
  5820. LDC CH08 RESET X-COORDINATE
  5821. OAN CH+40
  5822. LDD CM+3 DISPLAY TYPE
  5823. OAN CH+40
  5824. LDD T2
  5825. ZJN DSE5 IF NOT MASS STORAGE
  5826. LDD CM+4 READ NUMBER OF UNITS - 1
  5827. SHN 3
  5828. ADN DDLL
  5829. CRD AB
  5830. SBN DDLL-PFGL READ DEVICE ACCESS LEVEL LIMITS
  5831. CRD SH
  5832. LDD SH+4 SAVE DEVICE ACCESS LEVEL LIMITS
  5833. SHN -6
  5834. STD T8
  5835. LDD CM CHECK FOR *LDAM* TYPE EQUIPMENT
  5836. SHN 21-7
  5837. PJN DSE4 IF NOT *LDAM* TYPE
  5838. LDD AB CHECK NULL LIST BIT
  5839. SHN 21-12
  5840. PJN DSE4 IF NOT NULL EQUIPMENT
  5841. LDC 2R-0 OUTPUT NULL EQUIPMENT INDICATOR
  5842. OAN CH+40
  5843. LJM DSE21 SKIP TO NEXT EQUIPMENT
  5844.  
  5845. DSE4 LDD AB
  5846. LPN 7 DISPLAY PHYSICAL UNITS
  5847. ZJN DSE5 IF NOT MULTI-SPINDLE DEVICE
  5848. ADD T2
  5849. ADC 2R-0
  5850. DSE5 OAN CH+40
  5851. LDN 0 OUTPUT ZERO BYTE
  5852. OAN CH+40
  5853. OAN CH+40
  5854. LDD CM DISPLAY STATE
  5855. LPN 3
  5856. SHN 1
  5857. STD T1
  5858. LDM DSEA,T1
  5859. OAN CH+40
  5860. LDM DSEA+1,T1
  5861. OAN CH+40
  5862. SFA EST,T7 CHECK EQUIPMENT ASSIGNMENT
  5863. ADK EQAE
  5864. CRD SH
  5865. LDD CM
  5866. LPC 4100
  5867. LMC 4000
  5868. ZJN DSE8 IF MASS STORAGE DEVICE AND AVAILABLE
  5869. LDD SH+3 SAVE SECURITY BOUNDS
  5870. STD T8
  5871. DSE8 LDD SH+4
  5872. LMC 7777
  5873. ZJN DSE9 IF ASSIGNED AT SYSTEM CONTROL POINT
  5874. LMC 7777
  5875. NJN DSE9 IF ASSIGNED TO A JOB
  5876. * LDN 0
  5877. STD SH
  5878. STD SH+1
  5879. UJN DSE10 DISPLAY JSN
  5880.  
  5881. DSE9 SFA EJT GET JSN FROM EJT ENTRY
  5882. ADK JSNE
  5883. CRD SH
  5884. LDN 0 DISPLAY JSN
  5885. DSE10 STD SH+2
  5886. OAN CH+40
  5887. LDN 3
  5888. OAM SH,CH
  5889. LDD CM+4 PRESET NON MASS STORAGE CONNECT CODE
  5890. STD T2
  5891. LDD CM+3
  5892. LMC 2RMT
  5893. ZJN DSE13 IF TYPE *MT*
  5894. LMC 2RNT&2RMT
  5895. ZJN DSE13 IF TYPE *NT*
  5896. LMC 2RCT&2RNT
  5897. ZJN DSE13 IF TYPE *CT*
  5898. LMC 2RAT&2RCT
  5899. NJN DSE14 IF NOT TYPE *AT*
  5900. DSE13 LDD T2 MASK OFF UNUSED BITS FOR TAPE
  5901. LPC 7017
  5902. STD T2
  5903. DSE14 LDD CM CHECK EQUIPMENT TYPE
  5904. SHN 21-13
  5905. PJN DSE18 IF NOT MASS STORAGE EQUIPMENT
  5906. LDD AB+4 SET UNIT NUMBER FOR FIRST UNIT
  5907. LPN 77
  5908. STD T2
  5909. LDD AB SET EQUIPMENT (CONTROLLER) NUMBER
  5910. SHN -6
  5911. LPN 7
  5912. SHN 11
  5913. RAD T2
  5914. DSE18 LDD T2 DISPLAY EQUIPMENT (CONTROLLER) NUMBER
  5915. SHN -11
  5916. RJM D2Z
  5917. LDD T2 DISPLAY UNIT
  5918. LPN 77
  5919. RJM D2Z
  5920. LDC CH37
  5921. OAN CH+40
  5922. LDD CM+1 DISPLAY FIRST CHANNEL
  5923. RJM DCD
  5924. LDD CM+2
  5925. ZJN DSE19 IF NO SECOND CHANNEL
  5926. RJM DCD DISPLAY SECOND CHANNEL
  5927. DSE19 LDD T7 CHECK EST ORDINAL
  5928. SBN NOPE
  5929. MJN DSE21 IF PSEUDO-EQUIPMENT
  5930. LDD SF
  5931. ZJN DSE21 IF UNSECURED SYSTEM
  5932. LDC CH50 SET X-COORDINATE
  5933. OAN CH+40
  5934. LDD T8 GET LOWER SECURITY BOUND
  5935. SHN -3
  5936. RJM DAL DISPLAY LOWER SECURITY BOUND STRING
  5937. LDC CH58 SET X-COORDINATE
  5938. OAN CH+40
  5939. LDD T8 GET UPPER SECURITY BOUND
  5940. RJM DAL DISPLAY UPPER SECURITY BOUND STRING
  5941. DSE21 AOD T7 ADVANCE INDEX
  5942. LMD T4+2 LAST EST ORDINAL + 1
  5943. ZJN DSE24 IF END OF EST
  5944. DSE22 SFA EST,T7
  5945. ADK EQDE
  5946. CRD CM READ EST ENTRY
  5947. LDD CM+3
  5948. ZJN DSE21 IF EMPTY ENTRY
  5949. LCN YINC
  5950. RAD YC DECREMENT Y-COORDINATE
  5951. OAN CH+40
  5952. SBM CBOS
  5953. MJN DSE23 IF BOTTOM OF SCREEN
  5954. LJM DSE3 LOOP
  5955.  
  5956. DSE23 LDN MOREL OUTPUT *MORE* MESSAGE
  5957. OAM MORE,CH
  5958. LDD T7 SET NEXT INDEX
  5959. STM TDSE+1,T5
  5960. DSE24 LJM DSEX RETURN
  5961.  
  5962.  
  5963. DSEA DATA H*ON *
  5964. DATA H*IDLE*
  5965. DATA H*OFF *
  5966. DATA H*DOWN*
  5967. DCD SPACE 4,15
  5968. ** DCD - DISPLAY CHANNEL DATA.
  5969. *
  5970. * *DCD* DISPLAYS THE CHANNEL DATA AS +CNNP* + OR +CNNP- +.
  5971. * C = CONCURRENT CHANNEL FLAG (BLANK IF NCH).
  5972. * NN = CHANNEL NUMBER (LEADING ZERO SUPPRESSED IF NCH).
  5973. * P = CONCURRENT CHANNEL PORT (A OR B; BLANK IF NCH).
  5974. * * = DOWN CHANNEL FLAG (BLANK IF UP).
  5975. * - = IDLE CHANNEL FLAG (BLANK IF UP).
  5976. *
  5977. * ENTRY (A) = CHANNEL BYTE FROM THE EST.
  5978. * (CM) = BYTE 0 OF EST.
  5979.  
  5980.  
  5981. DCD SUBR ENTRY/EXIT
  5982. STD T1
  5983. LPN 37
  5984. STD T0
  5985. LDD T1
  5986. SHN 21-13
  5987. PJN DCDX IF CHANNEL NOT ACCESSIBLE
  5988. SHN 13-21
  5989. LPN 40
  5990. ZJN DCD1 IF NOT CONCURRENT CHANNEL
  5991. LDC 1RC*1000
  5992. DCD1 LMD T0
  5993. SHN -3
  5994. ZJN DCD2 IF NCH 0
  5995. ADN 1R0
  5996. DCD2 OAN CH+40
  5997. LDD T1
  5998. LPN 40
  5999. ZJN DCD3 IF NOT CONCURRENT CHANNEL
  6000. LDD T1 GET PORT FLAG
  6001. SHN -7
  6002. LPN 1
  6003. ADN 1RA
  6004. SHN 14
  6005. DCD3 LMD T0
  6006. SCN 70
  6007. ADN 1R0
  6008. SHN 6
  6009. OAN CH+40
  6010. LDD T1 CHECK CHANNEL STATE
  6011. SHN -11
  6012. LPN 3
  6013. ZJN DCD5 IF UP CHANNEL
  6014. SBN 3
  6015. ZJN DCD4 IF DOWN CHANNEL
  6016. LDN 1R-&1R* SET *IDLE* STATUS
  6017. DCD4 LMN 1R*
  6018. SHN 6
  6019. DCD5 OAN CH+40
  6020. UJP DCDX RETURN
  6021. PEA SPACE 4,10
  6022. ** PEA - PAGE *E,A* DISPLAY.
  6023. *
  6024. * ENTRY (LA) = LOAD ADDRESS.
  6025. * (T2) = 0 IF PAGE FORWARD.
  6026. * = 1 IF PAGE BACKWARD (RETURN TO PAGE ONE).
  6027. *
  6028. * USES T1.
  6029.  
  6030.  
  6031. PEA BSS 0 ENTRY
  6032. LDD LA GET LOAD ADDRESS
  6033. LMC .FLFT
  6034. ZJN PEA1 IF LEFT SCREEN
  6035. LDN 2
  6036. PEA1 STD T1 SET SCREEN INDEX (0=LEFT, 2=RIGHT)
  6037. LDD T2
  6038. SBN 1
  6039. ZJN PEA2 IF RETURN TO PAGE ONE
  6040. LDM TDSE+1,T1
  6041. PEA2 STM TDSE,T1
  6042. LJM. /KEYBOARD/KBIX RETURN
  6043. SPACE 4,10
  6044. DSPEND
  6045. DISPLAY (DISPLAY E - MASS STORAGE CONFIGURATION.),PEC
  6046. ENTRY DSEC,DSEC
  6047. DSE SPACE 4,10
  6048. *** *E,C* DISPLAY.
  6049. *
  6050. * EACH LINE DISPLAYS THE CONFIGURATION OF ONE MASS STORAGE EQ.
  6051. *
  6052. * EXAMPLE -
  6053. *
  6054. * 1 2 3 4 5 6
  6055. * 1234567890123456789012345678901234567890123456789012345678901234
  6056. * EST TYPE PN FM/PK DN CHANNELS EQ UNIT-NUMBERS
  6057. *
  6058. * 6 DF SYST08 1 C00B C01A* 0 0
  6059. * 7 DQ SYST08 2 21 22 - 0 0
  6060. * 10 DN SYSFAM1 1 C02B 2 5
  6061. * 11 EC SYSFAM1 2 C03A* C04A 6 12
  6062. * 14 DJ-8/8 SYSFAM2 2 22 - 21 0 40 41 42 43
  6063. * 44 45 46 47
  6064. * 30 ES 1 SYSFAM2 10 C03A* C04A 4 01
  6065. * 31 ES 2 SYSFAM3 11 C03A* C04A 4 01
  6066. * 117 DK-3 PACKV22* 40 21 22 - 0 3
  6067. *
  6068.  
  6069.  
  6070. DSEC SUBR ENTRY/EXIT
  6071. DISPHD (E,C. DISK CONFIGURATION.)
  6072. LDM CTOS SET INITIAL Y-COORDINATE
  6073. OAN CH+40
  6074. SBN YINC
  6075. STD YC
  6076. LDN ESTP READ EST POINTERS
  6077. CRD T4
  6078. LDD LA SET SCREEN
  6079. LMC .FLFT
  6080. ZJN DSE0 IF LEFT SCREEN
  6081. LDN 2
  6082. DSE0 STD T5
  6083. LDN DSEAL DISPLAY TITLE
  6084. OAM DSEA,CH
  6085. * LDN 0 CLEAR NEXT EST ORDINAL
  6086. STM TDSE+1,T5
  6087. LDM TDSE,T5 SET EST ORDINAL
  6088. STD T6
  6089. LJM DSE11 ENTER EST SEARCH LOOP
  6090.  
  6091. * DISPLAY EST ORDINAL.
  6092.  
  6093. DSE1 LDD XC OUTPUT X-COORDINATE
  6094. OAN CH+40
  6095. LDD T6 DISPLAY EST ORDINAL
  6096. RJM D4S
  6097. LDN 0 SKIP TWO SPACES
  6098. OAN CH+40
  6099.  
  6100. * DISPLAY DEVICE TYPE.
  6101.  
  6102. LDD CM+3 DISPLAY TYPE
  6103. OAN CH+40
  6104. LDD CM+4 GET MST ADDRESS/10
  6105. SHN 3
  6106. ADN PFGL READ PERMANENT FILE DESCRIPTION WORD
  6107. CRD AB
  6108. ADN DDLL-PFGL READ DEVICE DESCRIPTION
  6109. CRD SR
  6110. LDD SR GET ORIGINAL NUMBER OF UNITS
  6111. SHN -3
  6112. LPN 7
  6113. STD T3
  6114. LDD SR GET NUMBER OF UNITS-1 CURRENTLY IN USE
  6115. LPN 7
  6116. STD T4
  6117. SHN 3
  6118. STD T1
  6119. ZJN DSE2 IF NOT *EQ-N*
  6120. LDD T3
  6121. SBD T4
  6122. PJN DSE3 IF *EQ-N*
  6123. DSE2 LDD AB+4
  6124. LPN 77
  6125. ZJN DSE4 IF *EQ*
  6126. STD T1
  6127. DSE3 LDD T1 DISPLAY *-N*
  6128. SHN -3
  6129. ADC 2R-1
  6130. OAN CH+40
  6131. LDD T1
  6132. LPN 7
  6133. ZJN DSE4 IF NOT *EQ-N/M*
  6134. ADC 2R/1
  6135. OAN CH+40
  6136.  
  6137. * DISPLAY EQUIPMENT (CONTROLLER) NUMBER.
  6138.  
  6139. DSE4 LDC CH45
  6140. OAN CH+40
  6141. LDD SR
  6142. SHN -6
  6143. LPN 7
  6144. RJM D2Z
  6145.  
  6146. * DISPLAY UNITS.
  6147.  
  6148. LDN 3 SET UP LOOP FLAG
  6149. STD T1
  6150. LDD YC
  6151. STD SR+1
  6152. LDC CH50
  6153. OAN CH+40
  6154. LDN SR+4
  6155. STD T2
  6156. LDD SR
  6157. SHN 21-12
  6158. MJN DSE6 IF NULL EQUIPMENT
  6159. LDD T3
  6160. SBD T4
  6161. MJN DSE5 IF UNITS IN USE IS LARGER
  6162. LDD T3
  6163. STD T4
  6164. DSE5 SOD T1
  6165. NJN DSE5.1 IF LINE NOT FULL
  6166. LCN YINC MOVE TO NEXT LINE
  6167. RAD YC
  6168. OAN CH+40
  6169. LDC CH50
  6170. OAN CH+40
  6171. DSE5.1 LDI T2 DISPLAY UNIT NUMBER
  6172. LPN 77
  6173. RJM D2Z
  6174. SOD T4
  6175. MJN DSE6 IF ALL UNITS ARE DISPLAYED
  6176. LDI T2 DISPLAY ONE UNIT
  6177. SHN -6
  6178. LPN 77
  6179. RJM D2Z
  6180. SOD T2
  6181. SOD T4
  6182. PJN DSE5 IF MORE UNITS TO DISPLAY
  6183. DSE6 LDD SR+1 RESET Y-COORDINATE
  6184. OAN CH+40
  6185.  
  6186. * DISPLAY PARTITION NUMBER IF ANY.
  6187.  
  6188. LDD CM
  6189. SHN 21-5
  6190. PJN DSE7 IF NOT BUFFERED DEVICE
  6191. LDC CH15
  6192. OAN CH+40
  6193. SFA EST,T6
  6194. ADK EQAE
  6195. CRD SR
  6196. LDD SR+3
  6197. SHN 21-13
  6198. PJN DSE7 IF NOT A PARTITIONED DEVICE
  6199. SHN 6
  6200. LPN 17
  6201. RJM D2Z
  6202.  
  6203. * DISPLAY FAMILY NAME OR PACK NAME.
  6204.  
  6205. DSE7 LDC CH19
  6206. OAN CH+40
  6207. LDN 3 DISPLAY FIRST SIX CHARACTERS
  6208. OAM AB,CH
  6209. LDD CM+4 READ PERMANENT FILE USER DESCRIPTION
  6210. SHN 3
  6211. ADN PUGL
  6212. CRD SR
  6213. LDD SR
  6214. ZJN DSE9 IF USER NAME NOT PRESENT
  6215. LDN 1R*
  6216. DSE9 STD T0
  6217. LDD AB+3 DISPLAY LAST CHARACTER+USER FLAG
  6218. LPC 7700
  6219. LMD T0
  6220. OAN CH+40
  6221. LDN 0 SKIP TWO SPACES
  6222. OAN CH+40
  6223.  
  6224. * DISPLAY DEVICE NUMBER.
  6225.  
  6226. LDD AB+3
  6227. LPN 77
  6228. RJM D2Z
  6229.  
  6230. * DISPLAY CHANNEL(S).
  6231.  
  6232. LDC CH33
  6233. OAN CH+40
  6234. LDD CM+1 DISPLAY FIRST CHANNEL
  6235. RJM DCD
  6236. LDD CM+2 CHECK FOR SECOND CHANNEL
  6237. ZJN DSE10 IF SECOND CHANNEL NOT PRESENT
  6238. RJM DCD DISPLAY SECOND CHANNEL
  6239.  
  6240. * SEARCH FOR NEXT ENTRY.
  6241.  
  6242. DSE10 AOD T6 ADVANCE EST ORDINAL
  6243. SBD T4+3
  6244. PJN DSE13 IF END OF MASS STORAGE ENTRIES
  6245. DSE11 SFA EST,T6 READ NEXT EST ENTRY
  6246. ADK EQDE
  6247. CRD CM
  6248. LDD CM
  6249. SHN 21-13
  6250. PJN DSE10 IF NOT MASS STORAGE
  6251. LCN YINC
  6252. RAD YC DECREMENT Y-COORDINATE
  6253. OAN CH+40
  6254. SBM CBOS
  6255. MJN DSE12 IF BOTTOM OF SCREEN
  6256. LJM DSE1 PROCESS NEXT EST ENTRY
  6257.  
  6258. DSE12 LDN MOREL OUTPUT *MORE* MESSAGE
  6259. OAM MORE,CH
  6260. LDD T6
  6261. STM TDSE+1,T5
  6262. DSE13 LJM DSECX RETURN
  6263.  
  6264. * SCREEN TITLE.
  6265.  
  6266. DSEA CON CH02
  6267. DATA H*EST*
  6268. CON CH09
  6269. DATA H*TYPE PN*
  6270. CON CH20
  6271. DATA H*FM/PK*
  6272. CON CH29
  6273. DATA H*DN CHANNELS EQ UNIT-NUMBERS*
  6274. DSEAL EQU *-DSEA
  6275. DCD SPACE 4,15
  6276. ** DCD - DISPLAY CHANNEL DATA.
  6277. *
  6278. * *DCD* DISPLAYS THE CHANNEL DATA AS +CNNP* + OR +CNNP- +.
  6279. * C = CONCURRENT CHANNEL FLAG (BLANK IF NCH).
  6280. * NN = CHANNEL NUMBER (LEADING ZERO SUPPRESSED IF NCH).
  6281. * P = CONCURRENT CHANNEL PORT (A OR B; BLANK IF NCH).
  6282. * * = DOWN CHANNEL FLAG (BLANK IF UP).
  6283. * - = IDLE CHANNEL FLAG (BLANK IF UP).
  6284. *
  6285. * ENTRY (A) = CHANNEL BYTE FROM THE EST.
  6286. * (CM) = BYTE 0 OF EST.
  6287.  
  6288.  
  6289. DCD SUBR ENTRY/EXIT
  6290. STD T1
  6291. LPN 37
  6292. STD T0
  6293. LDD T1
  6294. SHN 21-13
  6295. PJN DCDX IF CHANNEL NOT ACCESSIBLE
  6296. SHN 13-21
  6297. LPN 40
  6298. ZJN DCD1 IF NOT CONCURRENT CHANNEL
  6299. LDC 1RC*1000
  6300. DCD1 LMD T0
  6301. SHN -3
  6302. ZJN DCD2 IF NCH 0
  6303. ADN 1R0
  6304. DCD2 OAN CH+40
  6305. LDD T1
  6306. LPN 40
  6307. ZJN DCD3 IF NOT CONCURRENT CHANNEL
  6308. LDD T1 GET PORT FLAG
  6309. SHN -7
  6310. LPN 1
  6311. ADN 1RA
  6312. SHN 14
  6313. DCD3 LMD T0
  6314. SCN 70
  6315. ADN 1R0
  6316. SHN 6
  6317. OAN CH+40
  6318. LDD T1 CHECK CHANNEL STATE
  6319. SHN -11
  6320. LPN 3
  6321. ZJN DCD5 IF UP CHANNEL
  6322. SBN 3
  6323. ZJN DCD4 IF DOWN CHANNEL
  6324. LDN 1R-&1R* SET *IDLE* STATUS
  6325. DCD4 LMN 1R*
  6326. SHN 6
  6327. DCD5 OAN CH+40
  6328. UJP DCDX RETURN
  6329. PEC SPACE 4,10
  6330. ** PEC - PAGE *E,C* DISPLAY.
  6331. *
  6332. * ENTRY (LA) = LOAD ADDRESS.
  6333. * (T2) = 0 IF PAGE FORWARD.
  6334. * = 1 IF PAGE BACKWARD (RETURN TO PAGE ONE).
  6335. *
  6336. * USES T1.
  6337.  
  6338.  
  6339. PEC BSS 0 ENTRY
  6340. LDD LA GET LOAD ADDRESS
  6341. LMC .FLFT
  6342. ZJN PEC1 IF LEFT SCREEN
  6343. LDN 2
  6344. PEC1 STD T1 STORE SCREEN INDEX (0=LEFT, 2=RIGHT)
  6345. LDD T2
  6346. SBN 1
  6347. ZJN PEC2 IF RETURN TO PAGE ONE
  6348. LDM TDSE+1,T1
  6349. PEC2 STM TDSE,T1
  6350. LJM. /KEYBOARD/KBIX RETURN
  6351. SPACE 4,10
  6352. DSPEND
  6353. DISPLAY (DISPLAY E - MASS STORAGE DEVICE ERRORS.),PEE
  6354. ENTRY DSEE,DSEE
  6355. DSE SPACE 4,15
  6356. *** *E,E* DISPLAY.
  6357. *
  6358. * EACH LINE SHOWS ERROR CONDITIONS THAT EXIST ON A DEVICE.
  6359. *
  6360. * EXAMPLE -
  6361. *
  6362. * 1 2 3 4 5 6
  6363. * 1234567890123456789012345678901234567890123456789012345678901234
  6364. * EST TYPE STATE CONDITIONS
  6365. *
  6366. * 6 DQ-3 ON ERROR CODE = NR.
  6367. * 15 DJ IDLE LOW SPACE.
  6368. * SUSPECT.
  6369.  
  6370.  
  6371. DSEE SUBR ENTRY/EXIT
  6372. DISPHD (E,E. DISK ERRORS.)
  6373.  
  6374. * SET BASE ADDRESS FOR *PUT*.
  6375.  
  6376. LDK BIOL
  6377. CRD CM
  6378. LDD CM+1
  6379. SHN 14
  6380. LMD CM+2
  6381. ADK PUTP
  6382. CRD CM
  6383. LDD CM+4
  6384. STM DSED+1
  6385. LDD CM+3
  6386. LPN 77
  6387. ADC ADCI
  6388. STM DSED
  6389.  
  6390. * DISPLAY HEADER.
  6391.  
  6392. LDM CTOS SET INITIAL Y-COORDINATE
  6393. OAN CH+40
  6394. SBN YINC
  6395. STD YC
  6396. LDN ESTP READ EST POINTERS
  6397. CRD T4
  6398. LDD T4+3 SAVE LAST MS EST ORDINAL + 1
  6399. LMC -0
  6400. STM DSEC+1
  6401. LDD LA SET SCREEN
  6402. LMC .FLFT
  6403. ZJN DSE1 IF LEFT SCREEN
  6404. LDN 2
  6405. DSE1 STD T5
  6406. DISPLA CH02,,(EST TYPE STATE CONDITIONS)
  6407. * LDN 0
  6408. STM TDSE+1,T5 CLEAR NEXT EST ORDINAL
  6409. LDM TDSE,T5 SET EST ORDINAL
  6410. STD T6
  6411. LCN YINC
  6412. RAD YC
  6413. OAN CH+40
  6414. LDC 2R. SET SUFFIX FOR *D2Z* AND *D2S*
  6415. STM D2ZA
  6416. STM D2SA
  6417. UJN DSE3 ENTER LOOP
  6418.  
  6419. * CHECK NEXT EST ENTRY.
  6420.  
  6421. DSE2 AOD T6 ADVANCE EST ORDINAL
  6422. DSEC ADC -* - (LAST MS EST ORDINAL + 1)
  6423. PJN DSE4 IF END OF EST
  6424. DSE3 SFA EST,T6 READ NEXT EST ENTRY
  6425. ADK EQDE
  6426. CRD AB
  6427. LDD AB
  6428. SHN 21-13
  6429. PJN DSE2 IF NOT MASS STORAGE
  6430. LDD YC
  6431. SBM CBOS
  6432. SBN YINC
  6433. PJN DSE5 IF NOT BOTTOM OF SCREEN
  6434. LDN MOREL DISPLAY *MORE*
  6435. OAM MORE,CH
  6436. LDD T6
  6437. STM TDSE+1,T5
  6438. DSE4 LDC CH01 RESET DEFAULT X-COORDINATE
  6439. STD XC
  6440. OAN CH+40
  6441. LDN 0 CLEAR SUFFIX FOR *D2Z* AND *D2S*
  6442. STM D2ZA
  6443. STM D2SA
  6444. UJP DSEEX RETURN
  6445.  
  6446. * GET INFORMATION ABOUT DEVICE.
  6447.  
  6448. DSE5 LDD AB+4
  6449. SHN 3
  6450. ADN DALL
  6451. CRD SR
  6452. ADN STLL-DALL
  6453. CRD SH
  6454. ADN DDLL-STLL
  6455. CRD CM
  6456. LDD CM GET UNIT COUNT
  6457. LPN 7
  6458. STD T7
  6459. LDD AB
  6460. SHN 1
  6461. LPN 6
  6462. STD T5
  6463. LDC CH26 OUTPUT X-COORDINATE
  6464. STD XC
  6465. OAN CH+40
  6466.  
  6467. * DISPLAY ERROR CODE.
  6468.  
  6469. LDD SH+1
  6470. LPN 77
  6471. ZJN DSE6 IF NO ERROR CODE TO DISPLAY
  6472. STD AB+1
  6473. SBN MXEC
  6474. MJN DSE5.1 IF VALID ERROR STATUS
  6475. LDN 0 INDICATE INVALID ERROR STATUS
  6476. STD AB+1
  6477. DSE5.1 LDC /EEMSG/ERCM * ERROR CODE = *
  6478. RJM DEM DISPLAY ERROR MESSAGE
  6479. LDM DSEA,AB+1
  6480. OAN CH+40
  6481. LDC 2R.
  6482. OAN CH+40
  6483. RJM ANL ADVANCE TO NEXT LINE
  6484.  
  6485. * DISPLAY *RESTRICT ACTIVITY* AND *SUSPECT* FLAGS.
  6486.  
  6487. DSE6 LDD SR
  6488. SHN 21-6
  6489. PJN DSE7 IF RESTRICT ACTIVITY NOT SET
  6490. LDC /EEMSG/ACRM * ACTIVITY RESTRICTED.*
  6491. RJM DEM DISPLAY ERROR MESSAGE
  6492. RJM ANL ADVANCE TO NEXT LINE
  6493. DSE7 LDD SR
  6494. SHN 21-7
  6495. PJN DSE8 IF SUSPECT NOT SET
  6496. LDD T5
  6497. SBN 2S1
  6498. PJN DSE8 IF DEVICE OFF OR DOWN
  6499. LDC /EEMSG/SUSM * SUSPECT.*
  6500. RJM DEM DISPLAY ERROR MESSAGE
  6501. RJM ANL ADVANCE TO NEXT LINE
  6502.  
  6503. * DISPLAY *DAS* PARITY PROTECTION MESSAGES.
  6504.  
  6505. DSE8 LDD AB+4
  6506. SHN 3
  6507. ADN BDLL
  6508. CRD SR
  6509. ADK DILL-BDLL
  6510. CRD SR+1
  6511. ADK ACGL-DILL
  6512. CRD SH
  6513. LDD SH+4
  6514. SHN 21-2
  6515. PJN DSE8.1 IF PARITY PROTECTION NOT LOST
  6516. LDC /EEMSG/PPLM * PARITY PROTECTION LOST. UNIT = *
  6517. RJM DEM DISPLAY ERROR MESSAGE
  6518. LDD SH+1
  6519. SHN -6
  6520. RJM D2Z DISPLAY UNIT NUMBER
  6521. RJM ANL ADVANCE TO NEXT LINE
  6522. DSE8.1 LDD SR+1+2 GET PUT ORDINAL
  6523. ZJN DSE8.3 IF NOT BUFFERED DEVICE
  6524. SHN PUTLS
  6525. DSED ADC ** (BASE ADDRESS OF *PUT*)
  6526. ADN PILL
  6527. CRD CM
  6528. CRD CM READ SPECIAL REQUEST FLAGS FROM *PUT*
  6529. LDD CM+3 CHECK FOR *RESTORE* SPECIAL REQUEST
  6530. SHN 21-1
  6531. MJN DSE8.2 IF RESTORE PENDING
  6532. LDD SH+4 CHECK FOR *PARITY RESTORE INITIATION* FLAG
  6533. SHN 21-3
  6534. PJN DSE8.3 IF NO RESTORE PENDING
  6535. DSE8.2 LDC /EEMSG/PRPM * PARITY RESTORE PENDING.*
  6536. RJM DEM DISPLAY ERROR MESSAGE
  6537. RJM ANL ADVANCE TO NEXT LINE
  6538. UJN DSE8.4 SKIP RESTORE IN PROGRESS MESSAGE
  6539.  
  6540. DSE8.3 LDD SH+4
  6541. SHN 21-0
  6542. PJN DSE8.4 IF PARITY RESTORE NOT IN PROGRESS
  6543. LDC /EEMSG/PPRM * PARITY RESTORE IN PROGRESS. RC = *
  6544. RJM DEM DISPLAY ERROR MESSAGE
  6545. LDD SH+1
  6546. LPN 77
  6547. RJM D2Z DISPLAY REMAINING CYLINDERS / 100B
  6548. RJM ANL ADVANCE TO NEXT LINE
  6549.  
  6550. * DISPLAY *DAS* ERROR RECOVERY MESSAGE.
  6551.  
  6552. DSE8.4 LDD SH+4
  6553. SHN 21-1
  6554. PJN DSE8.5 IF NO ERROR RECOVERY IN PROGRESS
  6555. LDC /EEMSG/ERPM * ERROR RECOVERY IN PROGRESS.*
  6556. RJM DEM DISPLAY ERROR MESSAGE
  6557. RJM ANL ADVANCE TO NEXT LINE
  6558.  
  6559. * DISPLAY 9853 / *DAS* CONTROLLER MESSAGES.
  6560.  
  6561. DSE8.5 LDD SR
  6562. SHN 21-3
  6563. PJN DSE8.6 IF NO CONTROLLER OVERTEMP
  6564. LDC /EEMSG/COTM * CONTROLLER OVERTEMP.*
  6565. RJM DEM DISPLAY ERROR MESSAGE
  6566. RJM ANL ADVANCE TO NEXT LINE
  6567.  
  6568. * DISPLAY THRESHOLD MESSAGES.
  6569.  
  6570. DSE8.6 LDD AB+4
  6571. SHN 3
  6572. ADK TDGL
  6573. CRD CM
  6574. ADN THLL-TDGL
  6575. CRD SH
  6576. ADN CTLL-THLL
  6577. CRD SR
  6578. LDN 0 CLEAR THE OPERATOR NOTIFIED FLAGS
  6579. STD T1
  6580. DSE9 LDM SR,T1
  6581. LPC 3777
  6582. STM SR,T1
  6583. AOD T1
  6584. LMN 5
  6585. NJN DSE9 IF MORE BYTES
  6586. LDD SH+2
  6587. LPC 3777
  6588. SBD CM+4
  6589. MJN DSE10 IF LOW SPACE THRESHOLD NOT REACHED
  6590. LDC /EEMSG/LWSM * LOW SPACE.*
  6591. RJM DEM DISPLAY ERROR MESSAGE
  6592. RJM ANL ADVANCE TO NEXT LINE
  6593. DSE10 LDD SR
  6594. SBD SH
  6595. MJN DSE11 IF NOT VERIFICATION FAILURE THRESHOLD
  6596. LDC /EEMSG/VFTM * VERIFICATION FAILURE THRESHOLD.*
  6597. RJM DEM DISPLAY ERROR MESSAGE
  6598. RJM ANL ADVANCE TO NEXT LINE
  6599. DSE11 LDD SR+3
  6600. SBD SH+3
  6601. MJN DSE12 IF NOT RECOVERED ERROR THRESHOLD
  6602. LDC /EEMSG/RETM * RECOVERED ERROR THRESHOLD.*
  6603. RJM DEM DISPLAY ERROR MESSAGE
  6604. RJM ANL ADVANCE TO NEXT LINE
  6605. DSE12 LDD SR+4
  6606. SBD SH+4
  6607. MJN DSE13 IF NOT UNRECOVERED ERROR THRESHOLD
  6608. LDC /EEMSG/UETM * UNRECOVERED ERROR THRESHOLD.*
  6609. RJM DEM DISPLAY ERROR MESSAGE
  6610. RJM ANL ADVANCE TO NEXT LINE
  6611. DSE13 LJM DSE2 LOOP
  6612.  
  6613.  
  6614. DSEA BSS 0 TABLE OF MST ERROR MNEMONICS
  6615. CON 2R** (INVALID ERROR STATUS)
  6616. ECHO 1,ERRCODE=("MSTERR")
  6617. CON 2R_ERRCODE
  6618. ANL SPACE 4,20
  6619. ** ANL - ADVANCE TO NEXT LINE.
  6620. *
  6621. * SET COORDINATES FOR MESSAGE TEXT ON NEXT LINE. IF FIRST
  6622. * LINE OF EQUIPMENT, DISPLAY EST ORDINAL, DEVICE TYPE AND
  6623. * DEVICE STATUS BEFORE ADVANCING.
  6624. *
  6625. * ENTRY (T5) = STATE * 2.
  6626. * (T6) = EST ORDINAL.
  6627. * (T7) = NUMBER OF UNITS.
  6628. * (AB+3) = EQUIPMENT MNEMONIC IF FIRST LINE.
  6629. *
  6630. * EXIT (XC) = COORDINATE FOR MESSAGE TEXT ON NEXT LINE.
  6631. * (YC) = COORDINATE FOR NEXT LINE.
  6632. *
  6633. * USES XC, YC.
  6634. *
  6635. * CALLS D4S.
  6636.  
  6637.  
  6638. ANL SUBR ENTRY/EXIT
  6639. LDD AB+3
  6640. ZJN ANL2 IF NOT FIRST LINE
  6641. LDC CH01
  6642. OAN CH+40
  6643. LDD T6 DISPLAY EST ORDINAL
  6644. RJM D4S
  6645. LDN 0
  6646. OAN CH+40
  6647. LDD AB+3 DISPLAY EQUIPMENT TYPE
  6648. OAN CH+40
  6649. LDD T7 DISPLAY NUMBER OF UNITS
  6650. ZJN ANL1 IF NOT MULTI UNIT DEVICE
  6651. ADC 2R-1
  6652. ANL1 OAN CH+40
  6653. LDN 0
  6654. STD AB+3
  6655. OAN CH+40
  6656. OAN CH+40
  6657. LDM ANLA,T5 DISPLAY DEVICE STATE
  6658. OAN CH+40
  6659. LDM ANLA+1,T5
  6660. OAN CH+40
  6661. ANL2 LCN YINC
  6662. RAD YC
  6663. OAN CH+40
  6664. LDC CH26
  6665. STD XC
  6666. OAN CH+40
  6667. UJP ANLX RETURN
  6668.  
  6669.  
  6670. ANLA DATA H*ON *
  6671. DATA H*IDLE*
  6672. DATA H*OFF *
  6673. DATA H*DOWN*
  6674. DEM SPACE 4,10
  6675. ** DEM - DISPLAY ERROR MESSAGE.
  6676. *
  6677. * ENTRY (A) = CM OFFSET OF ERROR MESSAGE WITHIN TEXT OVERLAY.
  6678. *
  6679. * USES (CM - CM+4).
  6680. *
  6681. * CALLS DOL.
  6682.  
  6683.  
  6684. DEM SUBR ENTRY/EXIT
  6685. STD T0 SAVE MESSAGE OFFSET
  6686. LDK RPLP GET MESSAGE TEXT OVERLAY ADDRESS
  6687. CRD CM
  6688. LDD CM SET MESSAGE ADDRESS
  6689. SHN 14
  6690. ADD CM+1
  6691. ADD T0
  6692. RJM DOL DISPLAY ONE LINE
  6693. UJN DEMX RETURN
  6694. PEE SPACE 4,10
  6695. ** PEE - PAGE *E,E* DISPLAY.
  6696. *
  6697. * ENTRY (LA) = LOAD ADDRESS.
  6698. * (T2) = 0 IF PAGE FORWARD.
  6699. * = 1 IF PAGE BACKWARD (RETURN TO PAGE ONE).
  6700. *
  6701. * USES T1.
  6702.  
  6703.  
  6704. PEE BSS 0 ENTRY
  6705. LDD LA GET LOAD ADDRESS
  6706. LMC .FLFT
  6707. ZJN PEE1 IF LEFT SCREEN
  6708. LDN 2
  6709. PEE1 STD T1 STORE SCREEN INDEX (0=LEFT, 2=RIGHT)
  6710. LDD T2
  6711. SBN 1
  6712. ZJN PEE2 IF RETURN TO PAGE ONE
  6713. LDM TDSE+1,T1
  6714. PEE2 STM TDSE,T1
  6715. LJM. /KEYBOARD/KBIX RETURN
  6716. SPACE 4,10
  6717. DSPEND
  6718. DISPLAY (DISPLAY E - FAMILY STATUS.),PEF
  6719. ENTRY DSEF,DSEF
  6720. DSE SPACE 4,10
  6721. *** *E,F* DISPLAY.
  6722. *
  6723. * EACH LINE DISPLAYS THE STATUS OF ONE MASS STORAGE EQ.
  6724. *
  6725. * EXAMPLE -
  6726. *
  6727. * 1 2 3 4 5 6
  6728. * 1234567890123456789012345678901234567890123456789012345678901234
  6729. * EST TYPE PN FM/PK DN FAMC DAFC IAM DAM
  6730. *
  6731. * 123 EM 1 FAMILYA* 10 1 23 377 377
  6732. * 234 EM 2 PACKB 0 0 377 377
  6733. * 253 DL-2 FAMILYA* 10 1 23 377 377
  6734. * 432 DI-1/2 PACKB 0 0 377 377
  6735.  
  6736.  
  6737. DSEF SUBR ENTRY/EXIT
  6738. DISPHD (E,F. FAMILY STATUS.)
  6739. LDN ESTP READ EST POINTERS
  6740. CRD T4
  6741. LDD LA SET SCREEN
  6742. LMC .FLFT
  6743. ZJN DSE1 IF LEFT SCREEN
  6744. LDN 2
  6745. DSE1 STD T5
  6746. LDM CTOS SET INITIAL Y-COORDINATE
  6747. OAN CH+40
  6748. SBN YINC
  6749. STD YC
  6750. LDN DSEAL DISPLAY TITLE
  6751. OAM DSEA,CH
  6752. * LDN 0 CLEAR NEXT EST ORDINAL
  6753. STM TDSE+1,T5
  6754. LDM TDSE,T5 SET EST ORDINAL
  6755. STD T6
  6756. UJN DSE4 ENTER TABLE SCAN
  6757.  
  6758. * SCAN EST.
  6759.  
  6760. DSE2 AOD T6 ADVANCE EST ORDINAL
  6761. SBD T4+3
  6762. DSE3 PJN DSEFX IF END OF EST
  6763. DSE4 SFA EST,T6 READ NEXT EST ENTRY
  6764. ADK EQDE
  6765. CRD CM
  6766. LDD CM
  6767. SHN 21-13
  6768. PJN DSE2 IF NOT MASS STORAGE
  6769. LCN YINC UPDATE Y-COORDINATE
  6770. RAD YC
  6771. OAN CH+40
  6772. SBM CBOS
  6773. PJN DSE5 IF NOT BOTTOM OF SCREEN
  6774. LDN MOREL DISPLAY *MORE*
  6775. OAM MORE,CH
  6776. LDD T6
  6777. STM TDSE+1,T5
  6778. UJN DSE3 RETURN
  6779.  
  6780. * DISPLAY EST ORDINAL.
  6781.  
  6782. DSE5 LDD XC OUTPUT X-COORDINATE
  6783. OAN CH+40
  6784. LDD T6 DISPLAY EST ORDINAL
  6785. RJM D4S
  6786. LDN 0 SKIP TWO SPACES
  6787. OAN CH+40
  6788.  
  6789. * DISPLAY DEVICE TYPE.
  6790.  
  6791. LDD CM+3 DISPLAY TYPE
  6792. OAN CH+40
  6793. LDD CM+4 GET MST ADDRESS/10
  6794. SHN 3
  6795. ADN PFGL READ PERMANENT FILE DESCRIPTION WORD
  6796. CRD AB
  6797. ADN DDLL-PFGL READ DEVICE DESCRIPTION
  6798. CRD SR
  6799. LDD SR GET ORIGINAL NUMBER OF UNITS
  6800. SHN -3
  6801. LPN 7
  6802. STD T3
  6803. LDD SR GET NUMBER OF UNITS-1 CURRENTLY IN USE
  6804. LPN 7
  6805. STD T4
  6806. SHN 3
  6807. STD T1
  6808. ZJN DSE6 IF NOT *EQ-N*
  6809. LDD T3
  6810. SBD T4
  6811. PJN DSE7 IF *EQ-N*
  6812. DSE6 LDD AB+4
  6813. LPN 77
  6814. ZJN DSE7.1 IF *EQ*
  6815. STD T1
  6816. DSE7 LDD T1 DISPLAY *-N*
  6817. SHN -3
  6818. ADC 2R-1
  6819. OAN CH+40
  6820. LDD T1
  6821. LPN 7
  6822. ZJN DSE7.1 IF NOT *EQ-N/M*
  6823. ADC 2R/1
  6824. OAN CH+40
  6825.  
  6826. * DISPLAY PARTITION NUMBER IF ANY.
  6827.  
  6828. DSE7.1 LDD CM
  6829. SHN 21-5
  6830. PJN DSE8 IF NOT BUFFERED DEVICE
  6831. LDC CH15
  6832. OAN CH+40
  6833. SFA EST,T6 READ NEXT EST ENTRY
  6834. ADK EQAE
  6835. CRD SR
  6836. LDD SR+3
  6837. SHN 21-13
  6838. PJN DSE8 IF NO PARTITION NUMBER
  6839. SHN 6
  6840. LPN 17
  6841. RJM D2Z
  6842.  
  6843. * DISPLAY FAMILY NAME OR PACKNAME.
  6844.  
  6845. DSE8 LDC CH19
  6846. OAN CH+40
  6847. LDN 3 DISPLAY FIRST SIX CHARACTERS
  6848. OAM AB,CH
  6849. LDD CM+4 READ PERMANENT FILE USER DESCRIPTION
  6850. SHN 3
  6851. ADN PUGL
  6852. CRD SR
  6853. ADN DULL-PUGL READ DEVICE USAGE DESCRIPTION
  6854. CRD T0
  6855. ADN STLL-DULL
  6856. CRD CM
  6857. LDD SR
  6858. ZJN DSE9 IF USER NUMBER NOT PRESENT
  6859. LDN 1R*
  6860. DSE9 STD T0
  6861. LDD AB+3 DISPLAY LAST CHARACTER+USER FLAG
  6862. SCN 77
  6863. LMD T0
  6864. OAN CH+40
  6865. LDN 0 SKIP FOUR SPACES
  6866. OAN CH+40
  6867. OAN CH+40
  6868.  
  6869. * DISPLAY DEVICE NUMBER.
  6870.  
  6871. LDD AB+3
  6872. LPN 77
  6873. RJM D2Z
  6874.  
  6875. * DISPLAY FAMILY AND DIRECT FILE COUNTS.
  6876.  
  6877. LDD T0+4 DISPLAY FAMILY COUNT
  6878. LPC 3777
  6879. RJM D6S
  6880. LDD CM+3 DISPLAY DIRECT ACCESS FILE COUNT
  6881. RJM D6S
  6882.  
  6883. * OUTPUT DEVICE MASKS.
  6884.  
  6885. LDD SR+4 DISPLAY INDIRECT FILE MASK
  6886. LPC 377
  6887. RJM D6S
  6888. LDD SR+3 DISPLAY DIRECT FILE MASK
  6889. LPN 17
  6890. SHN 14
  6891. LMD SR+4
  6892. SHN -10
  6893. LPC 377
  6894. RJM D4S
  6895. LJM DSE2 PROCESS NEXT EST ENTRY
  6896.  
  6897. * SCREEN TITLE.
  6898.  
  6899. DSEA CON CH02
  6900. DATA H*EST*
  6901. CON CH09
  6902. DATA H*TYPE PN*
  6903. CON CH20
  6904. DATA H*FM/PK*
  6905. CON CH31
  6906. DATA H*DN*
  6907. CON CH37
  6908. DATA H*FAMC*
  6909. CON CH45
  6910. DATA H*DAFC*
  6911. CON CH54
  6912. DATA H*IAM DAM*
  6913. DSEAL EQU *-DSEA
  6914. PEF SPACE 4,10
  6915. ** PEF - PAGE *E,F* DISPLAY.
  6916. *
  6917. * ENTRY (LA) = LOAD ADDRESS.
  6918. * (T2) = 0 IF PAGE FORWARD.
  6919. * = 1 IF PAGE BACKWARD (RETURN TO PAGE ONE).
  6920. *
  6921. * USES T1.
  6922.  
  6923.  
  6924. PEF BSS 0 ENTRY
  6925. LDD LA GET LOAD ADDRESS
  6926. LMC .FLFT
  6927. ZJN PEF1 IF LEFT SCREEN
  6928. LDN 2
  6929. PEF1 STD T1 STORE SCREEN INDEX (0=LEFT, 2=RIGHT)
  6930. LDD T2
  6931. SBN 1
  6932. ZJN PEF2 IF RETURN TO PAGE ONE
  6933. LDM TDSE+1,T1
  6934. PEF2 STM TDSE,T1
  6935. LJM. /KEYBOARD/KBIX RETURN
  6936. SPACE 4,10
  6937. DSPEND
  6938. DISPLAY (DISPLAY E - MASS STORAGE THRESHOLDS.),PEH
  6939. ENTRY DSEH,DSEH
  6940. DSE SPACE 4,15
  6941. *** *E,H* DISPLAY.
  6942. *
  6943. * TWO LINES ARE DISPLAYED FOR EACH MASS STORAGE DEVICE. THE
  6944. * FIRST LINE SHOWS THE VALUES OF THE THRESHOLDS FOR THE DEVICE
  6945. * AND THE SECOND LINE SHOWS THE CURRENT VALUES THAT CORRESPOND
  6946. * TO EACH THRESHOLD.
  6947. *
  6948. * EXAMPLE -
  6949. * 1 2 3 4 5 6
  6950. * 1234567890123456789012345678901234567890123456789012345678901234
  6951. * EST TYPE SIZE VF RA LS RE UE
  6952. *
  6953. * 6 DQ-3 3050 100 1000 400 10 4
  6954. * 0 2076 2076 14 1
  6955.  
  6956.  
  6957. DSEH SUBR ENTRY/EXIT
  6958. DISPHD (E,H. DISK THRESHOLDS.)
  6959. LDM CTOS SET INITIAL Y-COORDINATE
  6960. OAN CH+40
  6961. STD YC
  6962. LDN ESTP READ EST POINTERS
  6963. CRD T4
  6964. LDD LA SET SCREEN
  6965. LMC .FLFT
  6966. ZJN DSE1 IF LEFT SCREEN
  6967. LDN 2
  6968. DSE1 STD T5
  6969. DISPLA CH01,,( EST TYPE SIZE)
  6970. * LDN 0
  6971. STM TDSE+1,T5 CLEAR NEXT EST ORDINAL
  6972. STD T1
  6973. LDM TDSE,T5 SET EST ORDINAL
  6974. STD T6
  6975. DSE2 LDN 0 SKIP SIX SPACES
  6976. OAN CH+40
  6977. OAN CH+40
  6978. OAN CH+40
  6979. LDM DSEA,T1 OUTPUT NEXT TITLE
  6980. OAN CH+40
  6981. AOD T1
  6982. LMN DSEAL
  6983. NJN DSE2 IF MORE TITLES TO DISPLAY
  6984. UJN DSE5 ENTER LOOP
  6985.  
  6986. * SCAN EST.
  6987.  
  6988. DSE3 AOD T6 ADVANCE EST ORDINAL
  6989. SBD T4+3
  6990. DSE4 PJP DSEHX IF END OF MASS STORAGE EST
  6991. DSE5 SFA EST,T6
  6992. ADK EQDE
  6993. CRD CM READ NEXT EST ENTRY
  6994. LDD CM
  6995. SHN 21-13
  6996. PJN DSE3 IF NOT MASS STORAGE
  6997. LDM CBOS
  6998. ADN YINC*3
  6999. SBD YC
  7000. MJN DSE6 IF AT LEAST 3 LINES UNTIL BOTTOM OF SCREEN
  7001. LDN MOREL+1 DISPLAY *MORE*
  7002. OAM CBOS,CH
  7003. ERRNZ CBOS+1-MORE CODE ASSUMES *CBOS* IS BEFORE *MORE*
  7004. LDD T6
  7005. STM TDSE+1,T5
  7006. UJN DSE4 RETURN
  7007.  
  7008. * DISPLAY EST ORDINAL.
  7009.  
  7010. DSE6 LCN YINC*2 ADVANCE 2 LINES
  7011. RAD YC
  7012. OAN CH+40
  7013. LDD XC OUTPUT X-COORDINATE
  7014. OAN CH+40
  7015. LDD T6 DISPLAY EST ORDINAL
  7016. RJM D4S
  7017. LDN 0
  7018. OAN CH+40
  7019. STD T9
  7020.  
  7021. * DISPLAY DEVICE TYPE AND GET VALUES TO DISPLAY.
  7022.  
  7023. LDD CM+3 DISPLAY TYPE
  7024. OAN CH+40
  7025. LDD CM+4 READ NUMBER OF UNITS AND VALUES FROM MST
  7026. SHN 3
  7027. ADK TDGL
  7028. CRD CM
  7029. ADN DDLL-TDGL
  7030. CRD AB
  7031. ADN THLL-DDLL
  7032. CRD SH
  7033. ADN CTLL-THLL
  7034. CRD SR
  7035. LDD CM+4 SET CURRENT TRACK COUNT VALUES
  7036. STD SR+1
  7037. STD SR+2
  7038. LDD AB
  7039. LPN 7
  7040. ZJN DSE7 IF NOT MULTI UNIT DEVICE
  7041. ADC 2R-1
  7042. DSE7 OAN CH+40
  7043. LDN 0
  7044. OAN CH+40
  7045. OAN CH+40
  7046. STD T1 CLEAR OPERATOR NOTIFIED FLAGS
  7047. DSE8 LDM SR,T1
  7048. LPC 3777
  7049. STM SR,T1
  7050. LDM SH,T1
  7051. LPC 3777
  7052. STM SH,T1
  7053. AOD T1
  7054. LMN 5
  7055. NJN DSE8 IF MORE BYTES
  7056. LDD CM
  7057. RJM D4S DISPLAY TOTAL NUMBER OF TRACKS ON DEVICE
  7058.  
  7059. * DISPLAY THRESHOLDS.
  7060.  
  7061. DSE9 LDN 0 SKIP TWO SPACES
  7062. OAN CH+40
  7063. LDM SH,T9 DISPLAY NEXT THRESHOLD
  7064. RJM D4S
  7065. AOD T9
  7066. LMN 5
  7067. NJN DSE9 IF MORE THRESHOLDS TO DISPLAY
  7068.  
  7069. * DISPLAY VALUES CORRESPONDING TO THE THRESHOLDS.
  7070.  
  7071. STD T9
  7072. LCN YINC ADVANCE TO NEXT LINE
  7073. RAD YC
  7074. OAN CH+40
  7075. DSE10 LDM SH,T9 CHECK NEXT VALUE
  7076. SBM SR,T9
  7077. SBN 1
  7078. ADM DSEB,T9
  7079. SHN 0-21
  7080. LMM DSEB,T9
  7081. ZJN DSE11 IF THRESHOLD NOT REACHED
  7082. CFNC BIVF
  7083. SHN 1-21
  7084. LPN 2
  7085. DSE11 STD T2
  7086. DSE12 LDD T9 COMPUTE THE COORDINATE
  7087. SHN 3+3
  7088. ADK CH25
  7089. OAN CH+40
  7090. LDM SR,T9 DISPLAY VALUE
  7091. RJM D4S
  7092. SOD T2
  7093. PJN DSE12 IF MORE INTENSIFICATION
  7094. CFNC EIVF
  7095. AOD T9
  7096. LMN 5
  7097. NJP DSE10 IF MORE VALUES TO DISPLAY
  7098. LJM DSE3 ADVANCE TO NEXT EST ENTRY
  7099.  
  7100.  
  7101. DSEA CON 2RVF VERIFICATION FAILURES
  7102. CON 2RRA RESTRICT ACTIVITY
  7103. CON 2RLS LOW SPACE
  7104. CON 2RRE RECOVERED ERRORS
  7105. CON 2RUE UNRECOVERED ERRORS
  7106. DSEAL EQU *-DSEA
  7107.  
  7108. DSEB CON 0
  7109. CON 1
  7110. CON 1
  7111. CON 0
  7112. CON 0
  7113. PEH SPACE 4,10
  7114. ** PEH - PAGE *E,H* DISPLAY.
  7115. *
  7116. * ENTRY (LA) = LOAD ADDRESS.
  7117. * (T2) = 0 IF PAGE FORWARD.
  7118. * = 1 IF PAGE BACKWARD (RETURN TO PAGE ONE).
  7119. *
  7120. * USES T1.
  7121.  
  7122.  
  7123. PEH BSS 0 ENTRY
  7124. LDD LA GET LOAD ADDRESS
  7125. LMC .FLFT
  7126. ZJN PEH1 IF LEFT SCREEN
  7127. LDN 2
  7128. PEH1 STD T1 STORE SCREEN INDEX (0=LEFT, 2=RIGHT)
  7129. LDD T2
  7130. SBN 1
  7131. ZJN PEH2 IF RETURN TO PAGE ONE
  7132. LDM TDSE+1,T1
  7133. PEH2 STM TDSE,T1
  7134. LJM. /KEYBOARD/KBIX RETURN
  7135. SPACE 4,10
  7136. ** COMMON DECKS.
  7137.  
  7138.  
  7139. *CALL COMPC2D
  7140. SPACE 4,10
  7141. DSPEND
  7142. DISPLAY (DISPLAY E - MASS STORAGE STATUS.),PEM,CMR
  7143. ENTRY DSEM,DSEM
  7144. DSE SPACE 4,10
  7145. *** *E,M* DISPLAY.
  7146. *
  7147. * EACH LINE DISPLAYS THE STATUS OF ONE MASS STORAGE DEVICE.
  7148. *
  7149. * EXAMPLE -
  7150. *
  7151. * 1 2 3 4 5 6
  7152. * 1234567890123456789012345678901234567890123456789012345678901234
  7153. * EST TYPE STATE STATUS FILES TRACKS RP ERROR
  7154. *
  7155. * 5 DE ON ------IA-------- --------- 601 10
  7156. * 6 DQ-2 IDLE S--------F------ --------T 3027 FF
  7157. * 10 DJ OFF --RU------------ --------- 3150 LE
  7158. * 15 DI-8 DOWN SMRULCIAXFDO*NPG SBLPDROIT 3140
  7159. *
  7160. * PROGRAMMING NOTE.
  7161. *
  7162. * WHEN ADDING OR REMOVING A LETTER FROM THE STATUS OR FILE
  7163. * FIELDS, BE SURE TO UPDATE THE X-COORDINATES IN THE HEADER
  7164. * MESSAGE AND IN THE ERROR INTENSIFICATION CODE.
  7165.  
  7166.  
  7167. ERRNZ SR+5-SH DEFINITIONS ASSUME *SH* FOLLOWS *SR+4*
  7168.  
  7169. * FIRST SET OF READS.
  7170.  
  7171. .ACGL EQU AB BYTES 0 AND 4
  7172. .STLL EQU SR BYTES 0 AND 1
  7173. .MDGL EQU SR+2 BYTE 0
  7174. .DDLL EQU SR+3 BYTE 0
  7175. .SDGL EQU SR+5 BYTES 0 AND 4
  7176.  
  7177. * SECOND SET OF READS.
  7178.  
  7179. .TDGL EQU AB BYTES 1 AND 4
  7180. .STLL EQU SR BYTES 0 AND 1
  7181. .DALL EQU SR+2 BYTE 0
  7182. .DILL EQU SR+3 BYTE 0
  7183.  
  7184.  
  7185. DSEM SUBR ENTRY/EXIT
  7186. DISPHD (E,M. DISK STATUS.)
  7187. LDN ESTP READ EST POINTERS
  7188. CRD T4
  7189. LDD LA SET SCREEN
  7190. LMC .FLFT
  7191. ZJN DSE0 IF LEFT SCREEN
  7192. LDN 2
  7193. DSE0 STD T5
  7194. LDM CTOS SET INITIAL Y-COORDINATE
  7195. OAN CH+40
  7196. SBN YINC
  7197. STD YC
  7198. LDN DSEAL DISPLAY TITLE LINE
  7199. OAM DSEA,CH
  7200. * LDN 0 CLEAR NEXT EST ORDINAL
  7201. STM TDSE+1,T5
  7202. LDM TDSE,T5 SET EST ORDINAL
  7203. STD T6
  7204. LJM DSE8 ENTER EST SEARCH LOOP
  7205.  
  7206. * PROCESS NEXT EST ENTRY.
  7207.  
  7208. DSE1 LDD CM+4 READ MST DATA
  7209. SHN 3
  7210. ADK ACGL READ DEVICE ACTIVITY
  7211. CRD .ACGL
  7212. ADK STLL-ACGL READ DEVICE STATUS
  7213. CRD .STLL
  7214. ADK MDGL-STLL READ DEVICE DESCRIPTION WORD
  7215. CRD .MDGL
  7216. ADK DDLL-MDGL READ NUMBER OF UNITS
  7217. CRD .DDLL
  7218. ADK SDGL-DDLL READ SHARED DEVICE TYPE
  7219. CRD .SDGL
  7220. LDD XC OUTPUT X-COORDINATE
  7221. OAN CH+40
  7222. LDD T6 DISPLAY EST ORDINAL
  7223. RJM D4S
  7224.  
  7225. * DISPLAY DEVICE TYPE.
  7226.  
  7227. LDD CM+3
  7228. OAN CH+40
  7229. LDD .DDLL
  7230. LPN 7
  7231. ZJN DSE2 IF NOT MULTI UNIT DEVICE
  7232. ADC 2R-1
  7233. DSE2 OAN CH+40
  7234. LDN 0 SKIP TWO SPACES
  7235. OAN CH+40
  7236.  
  7237. * DISPLAY DEVICE STATE.
  7238.  
  7239. LDD CM GET STATE
  7240. SHN 1
  7241. LPN 6
  7242. STD T1
  7243. LDM DSEG,T1
  7244. OAN CH+40
  7245. LDM DSEG+1,T1
  7246. OAN CH+40
  7247. LDN 0 SKIP TWO SPACES
  7248. OAN CH+40
  7249.  
  7250. * COLLECT STATUS BITS.
  7251.  
  7252. LDD CM
  7253. LPC 3400 SET S,M,R
  7254. SHN 1
  7255. STD CN SMR.........
  7256. LDD CM SET U
  7257. LPC 100
  7258. SHN 10-6
  7259. RAD CN SMRU........
  7260. LDD .SDGL CHECK FOR ISHARED
  7261. SHN 21-13
  7262. LMD .STLL SET L,C
  7263. PJN DSE4 IF NOT ISHARED
  7264. LPN 10 SAVE L
  7265. STD T0
  7266. LDN 15 CHANGE *LC* TO *LT*
  7267. IFNE 2RLT&2R--,2RLC&2R--+15,1
  7268. ERR 15 WILL NOT CHANGE *LC* INTO *LT*
  7269. RAM DSEH
  7270. LDD .SDGL+4 CHECK FOR INTERLOCK
  7271. LPN 76
  7272. ZJN DSE3 IF NOT INTERLOCKED
  7273. LDN 4 SET T
  7274. DSE3 ADD T0
  7275. DSE4 LPN 14
  7276. SHN 7-3
  7277. RAD CN SMRULC......
  7278. LDD .STLL SET I
  7279. LPN MLIRP
  7280. ZJN DSE5 IF NO INITIALIZE OR FORMAT STATUS SET
  7281. LDN 40 SMRULCI.....
  7282. RAD CN
  7283. DSE5 LDD .STLL SET A
  7284. LPN 1
  7285. SHN 4-0
  7286. RAD CN SMRULCIA....
  7287. LDD .MDGL SET X
  7288. SHN 3-12
  7289. LPN 10
  7290. RAD CN SMRULCIAX...
  7291. LDD .ACGL SET F,D,O
  7292. SHN -11
  7293. RAD CN SMRULCIAXOFD
  7294. LDC. DSEB
  7295. RJM DBS
  7296. LDC 2RLC&2R-- RESTORE CHECKPOINT CODE
  7297. STM DSEH
  7298. LDD .ACGL+4 SET *
  7299. LPC 4000
  7300. STD CN *...
  7301. LDD .ACGL+4 SET N
  7302. LPN 40
  7303. SHN 12-5
  7304. RAD CN *N..
  7305. LDD CM
  7306. LPN 4
  7307. SHN 10-2 SET G
  7308. RAD CN
  7309. LDD CM+4 READ TRT DEFINITION
  7310. SHN 3
  7311. ADK TDGL READ DEVICE PERMANENT FILE INTERLOCK
  7312. CRD .TDGL
  7313. ADK DALL-TDGL READ NUMBER OF REQUESTS PENDING
  7314. CRD .DALL
  7315. ADK DILL-DALL READ ALLOWABLE FILE TYPES
  7316. CRD .DILL
  7317. LDD .TDGL+1 SET P
  7318. LPC 100
  7319. SHN 11-6
  7320. RAD CN *NPG
  7321. LDC. DSEC
  7322. RJM DBS
  7323. * LDN 0 SKIP TWO SPACES
  7324. OAN CH+40
  7325.  
  7326. * GET FILE TYPE BITS.
  7327.  
  7328. LDD .DILL
  7329. LPC 777
  7330. SHN 3
  7331. ADN 4 SET UNUSED BIT
  7332. STD CN
  7333. LDC. DSED
  7334. RJM DBS
  7335. * LDN 0 SKIP TWO SPACES
  7336. OAN CH+40
  7337.  
  7338. * DISPLAY AVAILABLE TRACKS.
  7339.  
  7340. LDD .TDGL+4 DISPLAY TRACKS AVAILABLE COUNT
  7341. RJM D4S
  7342.  
  7343. * DISPLAY REQUESTS PENDING.
  7344.  
  7345. LDC CH54
  7346. OAN CH+40
  7347. LDD .DALL DISPLAY PENDING REQUESTS
  7348. LPN 77
  7349. ZJN DSE6 IF NO PENDING REQUESTS
  7350. RJM D4S
  7351.  
  7352. * DISPLAY ERROR STATUS.
  7353.  
  7354. DSE6 LDD .STLL+1 GET ERROR STATUS
  7355. LPN 77
  7356. ZJN DSE7 IF NO ERROR STATUS
  7357. STD T1
  7358. SBN MXEC
  7359. MJN DSE6.1 IF VALID ERROR STATUS
  7360. LDN 0 INDICATE INVALID ERROR STATUS
  7361. STD T1
  7362. DSE6.1 LDM DSEE,T1 SET ERROR STATUS MNENONIC
  7363. STM DSEF+1
  7364. LDC. 2S12+DSEF DISPLAY ERROR STATUS
  7365. RJP HIL
  7366.  
  7367. * ADVANCE TO NEXT EST ENTRY.
  7368.  
  7369. DSE7 AOD T6 ADVANCE EST ORDINAL
  7370. SBD T4+3
  7371. PJN DSE10 IF END OF MASS STORAGE ENTRIES
  7372. DSE8 SFA EST,T6 READ NEXT EST ENTRY
  7373. ADK EQDE
  7374. CRD CM
  7375. LDD CM
  7376. SHN 21-13
  7377. PJN DSE7 IF NOT MASS STORAGE
  7378. LCN YINC
  7379. RAD YC DECREMENT Y-COORDINATE
  7380. OAN CH+40
  7381. SBM CBOS
  7382. MJN DSE9 IF BOTTOM OF SCREEN
  7383. LJM DSE1 LOOP FOR NEXT EST ENTRY
  7384.  
  7385. DSE9 LDN MOREL
  7386. OAM MORE,CH
  7387. LDD T6
  7388. STM TDSE+1,T5
  7389. DSE10 LJM DSEMX RETURN
  7390.  
  7391.  
  7392. * COLUMN HEADERS.
  7393.  
  7394. DSEA CON CH02
  7395. DATA H*EST TYPE STATE*
  7396. CON CH24
  7397. DATA H*STATUS*
  7398. CON CH39
  7399. DATA H*FILES*
  7400. CON CH48
  7401. DATA H*TRACKS*
  7402. CON CH56
  7403. DATA H*RP*
  7404. CON CH60
  7405. DATA H*ERROR*
  7406. DSEAL EQU *-DSEA
  7407.  
  7408. DSEB CON 2RSM&2R--
  7409. CON 2RRU&2R--
  7410. DSEH CON 2RLC&2R--
  7411. CON 2RIA&2R--
  7412. CON 2RXF&2R--
  7413. CON 2RDO&2R--
  7414. CON 0
  7415.  
  7416. DSEC CON 2R*N&2R--
  7417. CON 2RPG&2R--
  7418. CON 0
  7419.  
  7420. DSED CON 2RSB&2R--
  7421. CON 2RLP&2R--
  7422. CON 2RDR&2R--
  7423. CON 2ROI&2R--
  7424. CON 2RT &2R--
  7425. CON 0
  7426.  
  7427. DSEE BSS 0 TABLE OF MST ERROR MNEMONICS
  7428. CON 2R** (INVALID ERROR STATUS)
  7429. ECHO 1,ERRCODE=("MSTERR")
  7430. CON 2R_ERRCODE
  7431.  
  7432. DSEF CON CH62,0 ERROR CODE
  7433.  
  7434. DSEG DATA H*ON *
  7435. DATA H*IDLE*
  7436. DATA H*OFF *
  7437. DATA H*DOWN*
  7438. SPACE 4
  7439. ** COMMON DECKS.
  7440.  
  7441.  
  7442. LIST X
  7443. *CALL COMDDBS
  7444. LIST *
  7445. PEM SPACE 4,10
  7446. ** PEM - PAGE *E,M* DISPLAY.
  7447. *
  7448. * (LA) = LOAD ADDRESS.
  7449. * (T2) = 0 IF PAGE FORWARD.
  7450. * = 1 IF PAGE BACKWARD (RETURN TO PAGE ONE).
  7451. *
  7452. * USES T1.
  7453.  
  7454.  
  7455. PEM BSS 0 ENTRY
  7456. LDD LA GET LOAD ADDRESS
  7457. LMC .FLFT
  7458. ZJN PEM1 IF LEFT SCREEN
  7459. LDN 2
  7460. PEM1 STD T1 STORE SCREEN INDEX (0=LEFT, 2=RIGHT)
  7461. LDD T2
  7462. SBN 1
  7463. ZJN PEM2 IF RETURN TO PAGE ONE
  7464. LDM TDSE+1,T1
  7465. PEM2 STM TDSE,T1
  7466. LJM. /KEYBOARD/KBIX RETURN
  7467. SPACE 4,10
  7468. DSPEND
  7469. DISPLAY (DISPLAY E - OPTICAL DISK REQUEST PREVIEW.),PEO
  7470. ENTRY DSEO,DSEO
  7471. DSE SPACE 4,20
  7472. *** *E,O* DISPLAY.
  7473. *
  7474. * PREVIEW OPTICAL DISK REQUESTS.
  7475. * EACH LINE DISPLAYS ONE OPTICAL DISK REQUEST.
  7476. *
  7477. * EXAMPLE -
  7478. *
  7479. * 1 2 3 4 5 6
  7480. * 1234567890123456789012345678901234567890123456789012345678901234
  7481. * JSN EQ VSN USERNAM WT STATUS JBM=AAAQ
  7482. *
  7483. * AABK OD LABEL12 DON YES
  7484. * AAQI OD VV0002 3KSNN64
  7485. * AAAQ JB AA0077 SYSTEMX (STAGE)
  7486.  
  7487.  
  7488. DSEO SUBR ENTRY/EXIT
  7489. DISPHD (E,O. OPTICAL DISK REQUESTS.)
  7490. DSED RJM IFP INITIALIZE *SFA* MACRO
  7491. * UJN DSE1 (AFTER FIRST ENTRY)
  7492. ISTORE DSED,(UJN DSE1)
  7493. DSE1 LDD LA SET SCREEN
  7494. LMC .FLFT
  7495. ZJN DSE2 IF LEFT SCREEN
  7496. LDN 2
  7497. DSE2 STD T4 (T4) = 0 IF LEFT, 2 IF RIGHT
  7498. LDM CTOS SET INITIAL Y-COORDINATE
  7499. OAN CH+40
  7500. SBN YINC
  7501. STD YC
  7502. LDN DSEAL DISPLAY TITLE LINE
  7503. OAM DSEA,CH
  7504. * LDN 0 DISPLAY JSN OF JUKEBOX MANAGER
  7505. SFA ORT
  7506. ADN ORTJ
  7507. CRD CM
  7508. LDN 2
  7509. OAM CM+3,CH
  7510. * LDN 0 CLEAR NEXT ORT ORDINAL
  7511. STM TDSE+1,T4
  7512. LDM TDSE,T4 SET CURRENT ORT ORDINAL
  7513. STD T6
  7514. LDC ORTP GET NUMBER OF ENTRIES
  7515. CRD SR
  7516. LDD SR+2 CALCULATE NUMBER OF ENTRIES IN USE
  7517. SBD SR+3
  7518. STD T3
  7519. NJN DSE5 IF ENTRIES IN USE
  7520. DSE3 UJP DSEOX RETURN
  7521.  
  7522. DSE4 SOD T3
  7523. ZJP DSE3 IF NO MORE ENTRIES IN USE
  7524. DSE5 AOD T6 ADVANCE INDEX
  7525. LMD SR+2
  7526. ZJP DSE3 IF END OF ORT
  7527. SFA ORT,T6 GET NEXT ORT ENTRY
  7528. ADK ORTV
  7529. CRD CM GET CHARACTERS 1-10 OF VSN
  7530. ADN ORTU-ORTV
  7531. CRD AB GET JUKEBOX FLAG
  7532. LDD CM
  7533. ZJN DSE5 IF ENTRY NOT USED
  7534. LCN YINC
  7535. RAD YC DECREMENT Y-COORDINATE
  7536. OAN CH+40
  7537. SBM CBOS
  7538. PJN DSE6 IF NOT BOTTOM OF SCREEN
  7539. LDN MOREL
  7540. OAM MORE,CH
  7541. LDD T6 SET NEXT ORDINAL
  7542. STM TDSE+1,T4
  7543. UJP DSE3 RETURN
  7544.  
  7545. DSE6 LDD AB+4 GET JUKEBOX FLAG
  7546. LPN 4
  7547. SHN -2
  7548. STD T1
  7549. ZJN DSE7 IF DISK NOT IN JUKEBOX
  7550. LDM TGTF,T4 GET TOGGLE FLAG FOR DISPLAY
  7551. NJP DSE4 IF DISPLAY OF JUKEBOX REQUESTS DISABLED
  7552. DSE7 LDD XC OUTPUT X-COORDINATE
  7553. OAN CH+40
  7554. SFA ORT,T6 READ JSN AND CHARACTERS 11-12 OF VSN
  7555. ADN ORTJ
  7556. CRD AB
  7557. LDN 2 DISPLAY JSN
  7558. OAM AB+3,CH
  7559. OAN CH DISPLAY 2 SPACES
  7560. LDM DSEC,T1 DISPLAY EQUIPMENT TYPE
  7561. OAN CH
  7562. LDN 0
  7563. OAN CH DISPLAY 2 SPACES
  7564. LDN 5 DISPLAY VSN (CHARACTERS 1-10)
  7565. OAM CM,CH
  7566. LDD AB DISPLAY VSN (CHARACTERS 11-12)
  7567. OAN CH
  7568. SFA ORT,T6 GET USER NAME
  7569. ADN ORTU
  7570. CRD CM
  7571. LDN 0
  7572. OAN CH DISPLAY 2 SPACES
  7573. LDN 3 DISPLAY USER NAME
  7574. OAM CM,CH
  7575. LDD CM+3
  7576. SCN 77
  7577. OAN CH
  7578. LDD CM+4 GET WRITE STATUS
  7579. LPN 1
  7580. ZJN DSE8 IF WRITE NOT REQUIRED
  7581. LDC 2RYE DISPLAY *YES*
  7582. OAN CH
  7583. LDC 2RS
  7584. OAN CH
  7585. DSE8 LDC CH44
  7586. OAN CH
  7587. LDD CM+4 GET PF STAGING STATUS
  7588. LPN 2
  7589. ZJN DSE9 IF NOT STAGING JOB
  7590. LDN DSEBL DISPLAY *(STAGE)*
  7591. OAM DSEB,CH
  7592. DSE9 LJM DSE4 PROCESS NEXT ENTRY
  7593.  
  7594. * DISPLAY CONSTANTS.
  7595.  
  7596. DSEA CON CH01
  7597. DATA H*JSN EQ VSN*
  7598. CON CH25
  7599. DATA H*USERNAM WT*
  7600. CON CH44
  7601. DATA H*STATUS*
  7602. CON CH54
  7603. DATA H*JBM=*
  7604. DSEAL EQU *-DSEA
  7605.  
  7606. DSEB DATA H*(STAGE)*
  7607. DSEBL EQU *-DSEB
  7608. DSEC DATA 2ROD REQUEST EQUIPMENT TYPES
  7609. DATA 2RJB
  7610. PEO SPACE 4,10
  7611. ** PEO - PAGE *E,O* DISPLAY.
  7612. *
  7613. * (LA) = LOAD ADDRESS.
  7614. * (T2) = 0 IF PAGE FORWARD.
  7615. * = 1 IF PAGE BACKWARD (RETURN TO PAGE ONE).
  7616. *
  7617. * USES T1.
  7618.  
  7619.  
  7620. PEO BSS 0 ENTRY
  7621. LDD LA GET LOAD ADDRESS
  7622. LMC .FLFT
  7623. ZJN PEO1 IF LEFT SCREEN
  7624. LDN 2
  7625. PEO1 STD T1 STORE SCREEN INDEX (0=LEFT, 2=RIGHT)
  7626. LDD T2
  7627. SBN 1
  7628. ZJN PEO2 IF RETURN TO PAGE ONE
  7629. LDM TDSE+1,T1
  7630. PEO2 STM TDSE,T1
  7631. LJM. /KEYBOARD/KBIX RETURN
  7632. SPACE 4,10
  7633. * COMMON DECKS.
  7634.  
  7635.  
  7636. ORT$ EQU 1 ORT SEARCH
  7637. IFP$ EQU 1 *COMPGFP* REMOTE ASSEMBLY
  7638. *CALL COMPGFP
  7639. IFP HERE
  7640. SPACE 4,10
  7641. DSPEND
  7642. DISPLAY (DISPLAY E - RESOURCE MOUNTING PREVIEW.)
  7643. ENTRY DSEP,DSEP
  7644. DSE SPACE 4,30
  7645. *** *E,P* DISPLAY.
  7646. *
  7647. * PREVIEW RESOURCE (TAPES AND PACKS) MOUNTING.
  7648. *
  7649. * EXAMPLE -
  7650. *
  7651. * 1 2 3 4 5 6
  7652. * 1234567890123456789012345678901234567890123456789012345678901234
  7653. * JSN UNIT RS VSN/PN MD LEVEL USER FAMILY ERR
  7654. *
  7655. * AWRE NT060 GE AA0012 W USERAAA FAM AC
  7656. * AQQQ CT100 CT DB1140 R GSY2447 KTJ VS
  7657. * AJQR PE SCRATCH W SYSTEMX DEFTFAM
  7658. * AAAD DL1 PACKC - GSY2447 DNB OF
  7659. * ABCD CT C00800 - GSY2447 KTJ
  7660. * ABDR GE ARX007 - GSY2447 NVE DC
  7661. *
  7662. *
  7663. * 1 2 3 4 5 6
  7664. * 1234567890123456789012345678901234567890123456789012345678901234
  7665. * JSN UNIT RS IVSN/PN FLG
  7666. *
  7667. * AWRE NT060 GE BB0012 T- ACCESS NOT PERMITTED
  7668. * AQQQ CT100 CT R45678 TL WRONG VSN
  7669. * AJQR PE SCRATCH T-
  7670. * AAAD DL1 PACKC -- REQUIRED EQUIPMENT OFF/DOWN
  7671. * ABCD CT C00800 --
  7672. * ABDR GE ARX007 T- NT062 DRIVE TYPE CONFLICT
  7673.  
  7674.  
  7675. DSEP SUBR ENTRY/EXIT
  7676. DISPHD (E,P. RESOURCE REQUESTS.)
  7677. LDM CTOS SET INITIAL Y-COORDINATE
  7678. OAN CH+40
  7679. SBN YINC
  7680. STD YC
  7681. RJM CMT CHECK MAGNET
  7682. NJN DSE1 IF MAGNET ACTIVE
  7683. DISPLA CH01,,(NOT ACTIVE)
  7684. UJN DSEPX RETURN
  7685.  
  7686. * DISPLAY HEADER.
  7687.  
  7688. DSE1 LDD LA
  7689. LMC .FLFT
  7690. ZJN DSE2 IF LEFT SCREEN
  7691. LDN 1
  7692. DSE2 STD T9 SET *TGTF* INDEX FOR SCREEN
  7693. LDD T1 CLEAR *MAGNET* MESSAGE LINE
  7694. SHN 7
  7695. ADN MS2W
  7696. CRD AB SAVE MESSAGE
  7697. CWD T3
  7698. LDD AB
  7699. ZJN DSE3 IF NO MESSAGE
  7700. RJM SBO INDICATE OPERATOR ACTION REQUIRED
  7701. DSE3 LDN DSEAL DISPLAY COMMON TITLE TEXT
  7702. OAM DSEA,CH
  7703. LDM TGTF,T9
  7704. STD T9 SET ALTERNATE DISPLAY STATUS
  7705. NJP DSE4 IF ALTERNATE DISPLAY
  7706. LDN DSEBL DISPLAY MAIN TITLE TEXT
  7707. OAM DSEB,CH
  7708. UJN DSE5 DISPLAY UDT REQUESTS
  7709.  
  7710. DSE4 LDN DSECL DISPLAY ALTERNATE TITLE TEXT
  7711. OAM DSEC,CH
  7712.  
  7713. * DISPLAY UDT REQUESTS.
  7714.  
  7715. DSE5 LDN 0 INITIALIZE UDT OFFSET
  7716. STD T8
  7717. DSE6 LDD T7 SET UDT ADDRESS
  7718. SHN 6
  7719. ADD T6
  7720. ADD T8
  7721. ADK /MTX/UST1 GET EST ORDINAL
  7722. CRD CM
  7723. ADK /MTX/UVRI-/MTX/UST1 GET EJT ORDINAL AND FLAGS
  7724. CRD T1
  7725. ADK /MTX/UESN-/MTX/UVRI GET EXTERNAL VSN AND FLAGS
  7726. CRD SH
  7727. CRM EVSN,ON
  7728. ADK /MTX/UISN-/MTX/UESN-1 GET INTERNAL VSN AND FLAGS
  7729. CRD SR
  7730. CRM IVSN,ON
  7731. ADK /MTX/UUFN-/MTX/UISN-1 GET USER NAME AND FAMILY
  7732. CRD AB
  7733. LDD T1+4
  7734. SHN 21-0
  7735. PJN DSE7 IF NO DISPLAY REQUEST
  7736. LDD T1 SET EJT ORDINAL
  7737. STD AB+4
  7738. LDN 0 CLEAR UNUSED VSN FIELDS
  7739. STM EVSN+3
  7740. STM EVSN+4
  7741. STD SH
  7742. STM IVSN+3
  7743. STM IVSN+4
  7744. STD SR
  7745. RJM DPI DISPLAY PREVIEW INFORMATION
  7746. DSE7 LDK /MTX/UNITL ADVANCE UDT OFFSET
  7747. RAD T8
  7748. LMM LUDT
  7749. NJP DSE6 IF NOT END OF UNITS
  7750.  
  7751. * DISPLAY PREVIEW BUFFER.
  7752.  
  7753. STD T8 INITIALIZE BUFFER OFFSET
  7754. LDK LDSP GET PREVIEW DISPLAY BUFFER POINTER
  7755. CRD T4
  7756. DSE8 LDD T6 SET ENTRY ADDRESS
  7757. SHN 14
  7758. ADD T7
  7759. ADK LLDS+1
  7760. ADD T8
  7761. ADK /RSX/PVSN GET VSN OR PACK NAME
  7762. CRM EVSN,ON
  7763. ADK /RSX/PRES-/RSX/PVSN-1 GET RESOURCE TYPE AND FLAGS
  7764. CRD SH
  7765. ADK /RSX/PVSI-/RSX/PRES GET INTERNAL VSN
  7766. CRM IVSN,ON
  7767. ADK /RSX/PFLG-/RSX/PVSI-1 GET FLAGS
  7768. CRD SR
  7769. ADK /RSX/PJID-/RSX/PFLG GET JOB AND USER IDENTIFICATION
  7770. CRD AB
  7771. LDM EVSN
  7772. ZJN DSE9 IF END OF ENTRIES
  7773. LDN 0 INDICATE NO EST ORDINAL
  7774. STD CM+2
  7775. RJM DPI DISPLAY PREVIEW INFORMATION
  7776. LDN /RSX/PVEL ADVANCE ENTRY OFFSET
  7777. RAD T8
  7778. LMK LPDS-1
  7779. NJN DSE8 IF NOT END OF ENTRIES
  7780. DSE9 LJM DSEPX EXIT
  7781.  
  7782.  
  7783. DSEA CON CH01
  7784. DATA H*JSN UNIT RS *
  7785. DSEAL EQU *-DSEA
  7786.  
  7787. DSEB CON CH16
  7788. DATA H*VSN/PN MD LEVEL USER FAMILY ERR*
  7789. DSEBL EQU *-DSEB
  7790.  
  7791. DSEC CON CH16
  7792. DATA H*IVSN/PN FLG*
  7793. DSECL EQU *-DSEC
  7794. DEO SPACE 4,15
  7795. ** DEO - DISPLAY EST ORDINAL WITH EQUIPMENT MNEMONIC.
  7796. *
  7797. * ENTRY (A) = EST ORDINAL.
  7798. *
  7799. * EXIT EST EQUIPMENT MNEMONIC AND EST ORDINAL DISPLAYED.
  7800. *
  7801. * USES T1 - T5.
  7802. *
  7803. * CALLS D2D.
  7804. *
  7805. * MACROS SFA.
  7806.  
  7807.  
  7808. DEO SUBR ENTRY/EXIT
  7809. STD T0 SAVE EST ORDINAL
  7810. SFA EST GET EQUIPMENT MNEMONIC
  7811. ADK EQDE
  7812. CRD T1
  7813. LDD T1+3 DISPLAY EQUIPMENT MNEMONIC
  7814. OAN CH+40
  7815. LDD T0 SAVE EST ORDINAL
  7816. STD T1
  7817. SHN -3
  7818. RJM D2D
  7819. LDD T1
  7820. LPN 7
  7821. ADN 1R0
  7822. SHN 6
  7823. OAN CH+40
  7824. UJN DEOX RETURN
  7825. DPI SPACE 4,20
  7826. ** DPI - DISPLAY PREVIEW INFORMATION.
  7827. *
  7828. * ENTRY (T9) .NE. 0 IF ALTERNATE DISPLAY.
  7829. * (CM+2) = EST ORDINAL IF UDT REQUEST.
  7830. * (CM+2) = 0 IF PREVIEW BUFFER REQUEST.
  7831. * (EVSN - EVSN+4) = *PVSN*.
  7832. * (SH - SH+4) = *PRES*.
  7833. * (IVSN - IVSN+4) = *PVSI*.
  7834. * (SR - SR+4) = *PFLG*.
  7835. * (AB - AB+4) = *PJID*.
  7836. *
  7837. * EXIT TO CALLER IF LINE DISPLAYED.
  7838. * TO *DSEPX* IF DISPLAY FULL.
  7839. *
  7840. * USES T1 - T5, YC, SH - SH+4.
  7841. *
  7842. * CALLS DAL, DEO.
  7843.  
  7844.  
  7845. DPI SUBR ENTRY/EXIT
  7846.  
  7847. * CHECK SPACE REMAINING ON DISPLAY AND GET MESSAGE TEXT.
  7848.  
  7849. LCN YINC
  7850. RAD YC
  7851. SBM CBOS
  7852. MJP DSEPX IF NO MORE ROOM ON DISPLAY
  7853. LDK RPLP GET RPL POINTER
  7854. CRD T1
  7855. LDD SR+3 SET MESSAGE OFFSET
  7856. LPN 77
  7857. STD T3
  7858. SHN 1
  7859. RAD T3
  7860. LDD T1 SET MESSAGE ADDRESS
  7861. SHN 14
  7862. ADD T2
  7863. ADD T3
  7864. ADK /DSD".AMSGOVL"/PDMS
  7865. CRM MSGB,TR READ MESSAGE AND MNEMONIC
  7866.  
  7867. * DISPLAY JSN, ASSIGNED UNIT NUMBER, AND RESOURCE TYPE.
  7868.  
  7869. LDN 2 OUTPUT COORDINATES
  7870. OAM XC,CH
  7871. SFA EJT,AB+4 GET JSN
  7872. ADK JSNE
  7873. CRD T1
  7874. LDN 2 DISPLAY JSN
  7875. OAM T1,CH
  7876. LDC CH06 POSITION TO EST ORDINAL
  7877. OAN CH+40
  7878. LDD CM+2
  7879. ZJN DPI1 IF NOT UDT REQUEST
  7880. RJM DEO DISPLAY EST ORDINAL
  7881. DPI1 LDC CH12 POSITION TO RESOURCE TYPE
  7882. OAN CH+40
  7883. LDD SH+3 DISPLAY RESOURCE TYPE
  7884. OAN CH+40
  7885. LDD SH+4
  7886. LPN 20
  7887. ZJN DPI2 IF NOT TO DISPLAY UNIT COUNT
  7888. LDD SH+4
  7889. SHN -3
  7890. LPC 700
  7891. ADC 1R1*100
  7892. DPI2 OAN CH+40 DISPLAY UNIT COUNT
  7893. LDD T9
  7894. NJP DPI8 IF ALTERNATE DISPLAY
  7895.  
  7896. * DISPLAY VSN/PACK, MODE, LEVEL, USER NAME, FAMILY, AND ERROR.
  7897.  
  7898. LDD SH+4
  7899. SHN 21-5
  7900. PJN DPI3 IF NOT SCRATCH VSN
  7901. LDN 5
  7902. OAM DPIC,CH DISPLAY *SCRATCH* AS VSN
  7903. UJN DPI4 DISPLAY VSN
  7904.  
  7905. DPI3 LDN 5 DISPLAY VSN/PACK NAME
  7906. OAM EVSN,CH
  7907. DPI4 LDD SH
  7908. OAN CH+40
  7909. LDD SR+3 DISPLAY ACCESS MODE
  7910. SHN -6
  7911. LPN 3
  7912. STD T1
  7913. LDM DPIA,T1
  7914. OAN CH+40
  7915. LDD SF
  7916. ZJN DPI5 IF NOT SECURED MODE
  7917. LDC CH31 POSITION TO ACCESS LEVEL
  7918. OAN CH+40
  7919. LDD SH+4
  7920. SHN 21-3
  7921. PJN DPI5 IF NOT TO DISPLAY ACCESS LEVEL
  7922. SHN 0-6-21+3+22
  7923. LPN 7
  7924. RJM DAL DISPLAY ACCESS LEVEL
  7925. UJN DPI6 DISPLAY USER NAME
  7926.  
  7927. DPI5 LDC CH39 POSITION TO USER NAME
  7928. OAN CH+40
  7929. DPI6 LDN 3 DISPLAY USER NAME
  7930. OAM AB,CH
  7931. LDD AB+3
  7932. SCN 77
  7933. OAN CH+40
  7934. LDN ZERL PRESET FAMILY NAME
  7935. CRD SH
  7936. LDD AB+3 GET FAMILY ORDINAL
  7937. LPN 77
  7938. ZJN DPI7 IF FAMILY NOT DEFINED
  7939. STD T0
  7940. LDK FOTP GET FOT POINTER
  7941. CRD T1
  7942. LDD T1
  7943. SHN 14
  7944. ADD T2
  7945. ADD T0
  7946. CRD SH GET FAMILY NAME
  7947. DPI7 LDN 3 DISPLAY FAMILY
  7948. OAM SH,CH
  7949. LDD SH+4
  7950. SCN 77
  7951. OAN CH+40
  7952. LDM MSGB+16 DISPLAY ERROR MNEMONIC
  7953. OAN CH+40
  7954. LJM DPIX RETURN
  7955.  
  7956. * DISPLAY INTERNAL VSN/PACK, FLAGS, AND ERROR MESSAGE.
  7957.  
  7958. DPI8 LDN 5 DISPLAY INTERNAL VSN
  7959. OAM IVSN,CH
  7960. LDD SR
  7961. OAN CH+40
  7962. LDC CH29 POSITION TO FLAGS
  7963. OAN CH+40
  7964. LDD SR+3
  7965. SHN -10
  7966. LPN 3
  7967. STD T1
  7968. LDM DPIB,T1 DISPLAY TMS, LABELED STATUS
  7969. OAN CH+40
  7970. LDN 0
  7971. OAN CH+40
  7972. LDD SR+4
  7973. ZJN DPI9 IF NOT MESSAGE WITH EST ORDINAL
  7974. RJM DEO DISPLAY EST ORDINAL AND EQUPMENT TYPE
  7975. LCN 3 ADJUST BYTE COUNT
  7976. DPI9 ADN 16 DISPLAY ERROR MESSAGE
  7977. OAM MSGB,CH
  7978. LJM DPIX RETURN
  7979.  
  7980.  
  7981. DPIA BSS 0 ACCESS MODES
  7982. DATA H* -*
  7983. DATA H* R*
  7984. DATA H* W*
  7985. SPACE 4,10
  7986.  
  7987. DPIB BSS 0 TMS, LABELED REQUEST FLAGS
  7988. DATA H*--*
  7989. DATA H*-L*
  7990. DATA H*T-*
  7991. DATA H*TL*
  7992.  
  7993. DPIC DATA 10LSCRATCH
  7994. SPACE 4,10
  7995. ** BUFFERS OVERLAYING INSTRUCTION RELOCATION TABLE.
  7996.  
  7997.  
  7998. MSGB EQU * ERROR MESSAGE AND MNEMONIC BUFFER
  7999. EVSN EQU MSGB+3*5 *PVSN*
  8000. IVSN EQU EVSN+5 *PVSI*
  8001. EBUF EQU IVSN+5 END OF BUFFERS
  8002.  
  8003. BSS 10 PAD FOR DATA AREA
  8004.  
  8005. ERRNG .EREL-EBUF BUFFER OVERFLOW
  8006.  
  8007.  
  8008. DSPEND
  8009. DISPLAY (DISPLAY E - OPTICAL DISK STATUS.),PES
  8010. ENTRY DSES,DSES
  8011. DSE SPACE 4,20
  8012. *** *E,S* DISPLAY.
  8013. *
  8014. * OPTICAL DISK STATUS DISPLAY.
  8015. * EACH LINE DISPLAYS THE STATUS OF ONE OPTICAL DISK DRIVE.
  8016. *
  8017. * EXAMPLE -
  8018. *
  8019. * 1 2 3 4 5 6
  8020. * 1234567890123456789012345678901234567890123456789012345678901234
  8021. * EST VSN PARTITION WT STATUS AFC
  8022. *
  8023. * 30 DON DEFAULT NO READY 0
  8024. * 31* LABEL12 PART01 YES READY 12
  8025. * 32 YES IDLE 0
  8026. * 33 3KSNN64 DEFAULT YES FAULT 10
  8027.  
  8028.  
  8029. DSES SUBR ENTRY/EXIT
  8030. DISPHD (E,S. OPTICAL DISK STATUS.)
  8031. LDM CTOS SET INITIAL Y-COORDINATE
  8032. OAN CH+40
  8033. SBN YINC
  8034. STD YC
  8035. LDN ESTP READ EST POINTERS
  8036. CRD T4
  8037. LDD T4+2 SET LAST EST ORDINAL
  8038. STM DSED
  8039. LDC OSTP READ OST POINTER
  8040. CRD CM
  8041. LDD CM SET FWA OF OST
  8042. LPN 77
  8043. ADC ADCI
  8044. STM DSEE
  8045. LDD CM+1
  8046. STM DSEE+1
  8047. LDD LA SET SCREEN
  8048. LMC .FLFT
  8049. ZJN DSE1 IF LEFT SCREEN
  8050. LDN 2
  8051. DSE1 STD T5
  8052. LDN DSEAL DISPLAY TITLE
  8053. OAM DSEA,CH
  8054. * LDN 0 CLEAR NEXT EST ORDINAL
  8055. STM TDSE+1,T5
  8056. LDM TDSE,T5 SET EST ORDINAL
  8057. STD T6
  8058. LJM DSE9 ENTER EST SEARCH LOOP
  8059.  
  8060. * DISPLAY EST ORDINAL.
  8061.  
  8062. DSE2 LDD XC OUTPUT X-COORDINATE
  8063. OAN CH+40
  8064. LDD AB+4
  8065. ZJN DSE3 IF NOT ASSIGNED
  8066. LDC 2R*
  8067. DSE3 STM D4SB SET ASSIGNMENT STATUS
  8068. LDD T6 DISPLAY EST ORDINAL
  8069. RJM D4S
  8070. LDN 0
  8071. STM D4SB
  8072. OAN CH+40 DISPLAY 2 SPACES
  8073.  
  8074. * DISPLAY VSN/PARTITION NAME.
  8075.  
  8076. LDN 6 DISPLAY VSN
  8077. OAM ODST+5*OSTV,CH
  8078. OAN CH DISPLAY 4 SPACES
  8079. OAN CH
  8080. LDN 6 DISPLAY PARTITION NAME
  8081. OAM ODST+5*OSTI,CH
  8082. OAN CH DISPLAY 4 SPACES
  8083. OAN CH
  8084.  
  8085. * DISPLAY WRITE PROTECT STATUS.
  8086.  
  8087. LDM ODST+5*OSTS+3 GET DETAILED STATUS BYTE 21
  8088. LPC 140
  8089. ZJN DSE4 IF NOT WRITE PROTECTED
  8090. LDC 2RNO DISPLAY *NO*
  8091. OAN CH
  8092. LDN 0
  8093. UJN DSE5 DISPLAY WRITE STATUS
  8094.  
  8095. DSE4 LDC 2RYE DISPLAY *YES*
  8096. OAN CH
  8097. LDC 2RS
  8098. DSE5 OAN CH DISPLAY WRITE STATUS
  8099. LDN 0 DISPLAY 2 SPACES
  8100. OAN CH
  8101.  
  8102. * DISPLAY STATUS.
  8103.  
  8104. LDC. DSEB SET FWA OF STATUS LIST
  8105. STD T1
  8106. LDD CM GET EQUIPMENT STATUS
  8107. LPN 3
  8108. SBN 2
  8109. ZJN DSE6 IF *OFF*
  8110. LDN 3
  8111. RAD T1
  8112. LDD CM
  8113. LPN 3
  8114. SBN 3
  8115. ZJN DSE6 IF *DOWN*
  8116. LDN 3
  8117. RAD T1
  8118. LDM ODST+5*OSTS+2 GET CARTRIDGE STATUS
  8119. ZJN DSE6 IF *IDLE*
  8120. LDN 3
  8121. RAD T1
  8122. LDM ODST+5*OSTS+2
  8123. SHN 21-13
  8124. MJN DSE7 IF *BUSY*
  8125. LDN 3
  8126. RAD T1
  8127. LDM ODST+5*OSTS+3 GET DETAILED STATUS BYTE 21
  8128. STD T2
  8129. LPN 4 GET DRIVE SPINNING FLAG
  8130. DSE6 ZJN DSE7 IF *NOTRDY*
  8131. LDN 3
  8132. RAD T1
  8133. LDD T2
  8134. LPC 200 GET DEVICE ERROR FLAG
  8135. NJN DSE7 IF *ERROR*
  8136. LDN 3
  8137. RAD T1
  8138. LDD T2
  8139. LPN 10 GET DEVICE FAULT FLAG
  8140. NJN DSE7 IF *FAULT*
  8141. LDN 3
  8142. RAD T1 SET DEFAULT STATUS = *READY*
  8143. DSE7 LDD T1
  8144. STM DSEC
  8145. LDN 3 DISPLAY STATUS
  8146. OAM **,CH
  8147. DSEC EQU *-1
  8148.  
  8149. * DISPLAY ACTIVE FILE COUNT.
  8150.  
  8151. LDN 0 DISPLAY 2 SPACES
  8152. OAN CH
  8153. LDM ODST+5*OSTF+3 GET ACTIVE FILE COUNT
  8154. SHN 14
  8155. LMM ODST+5*OSTF+4
  8156. RJM D6S DISPLAY FILE COUNT
  8157.  
  8158. * SEARCH FOR NEXT ENTRY.
  8159.  
  8160. DSE8 AOD T6 ADVANCE EST ORDINAL
  8161. LMC **
  8162. DSED EQU *-1
  8163. ZJP DSESX IF NO MORE EQUIPMENT ENTRIES
  8164. DSE9 SFA EST,T6 READ NEXT EST ENTRY
  8165. ADK EQDE
  8166. CRD CM
  8167. ADN EQAE-EQDE
  8168. CRD AB
  8169. LDD CM+3
  8170. LMC 2ROD
  8171. NJN DSE8 IF NOT OPTICAL DISK
  8172. LCN YINC
  8173. RAD YC DECREMENT Y-COORDINATE
  8174. OAN CH+40
  8175. SBM CBOS
  8176. MJN DSE10 IF BOTTOM OF SCREEN
  8177. LDN OSTE SET LENGTH OF OST ENTRY
  8178. STD T1
  8179. LDD AB+2 GET OST ORDINAL FOR EQUIPMENT
  8180. LPN 77
  8181. SHN 2 *4, CONVERT ORDINAL TO OFFSET
  8182. ERRNZ OSTE-4 CODE DEPENDS ON VALUE
  8183. DSEE ADC **
  8184. CRM ODST,T1 READ OST ENTRY
  8185. LJM DSE2 PROCESS EST ENTRY
  8186.  
  8187. DSE10 LDN MOREL OUTPUT *MORE* MESSAGE
  8188. OAM MORE,CH
  8189. LDD T6
  8190. STM TDSE+1,T5
  8191. LJM DSESX RETURN
  8192.  
  8193. * SCREEN TITLE.
  8194.  
  8195. DSEA CON CH02
  8196. DATA H*EST*
  8197. CON CH09
  8198. DATA H*VSN*
  8199. CON CH25
  8200. DATA H*PARTITION*
  8201. CON CH41
  8202. DATA H*WT STATUS AFC*
  8203. DSEAL EQU *-DSEA
  8204.  
  8205. * STATUS MESSAGES.
  8206.  
  8207. DSEB DATA H*OFF *
  8208. DATA H*DOWN *
  8209. DATA H*IDLE *
  8210. DATA H*BUSY *
  8211. DATA H*NOTRDY*
  8212. DATA H*ERROR *
  8213. DATA H*FAULT *
  8214. DATA H*READY *
  8215. PES SPACE 4,10
  8216. ** PES - PAGE *E,C* DISPLAY.
  8217. *
  8218. * ENTRY (LA) = LOAD ADDRESS.
  8219. * (T2) = 0 IF PAGE FORWARD.
  8220. * = 1 IF PAGE BACKWARD (RETURN TO PAGE ONE).
  8221. *
  8222. * USES T1.
  8223.  
  8224.  
  8225. PES BSS 0 ENTRY
  8226. LDD LA GET LOAD ADDRESS
  8227. LMC .FLFT
  8228. ZJN PES1 IF LEFT SCREEN
  8229. LDN 2
  8230. PES1 STD T1 STORE SCREEN INDEX (0=LEFT, 2=RIGHT)
  8231. LDD T2
  8232. SBN 1
  8233. ZJN PES2 IF RETURN TO PAGE ONE
  8234. LDM TDSE+1,T1
  8235. PES2 STM TDSE,T1
  8236. LJM. /KEYBOARD/KBIX RETURN
  8237. ODST SPACE 4,16
  8238. ** OST ENTRY BUFFER.
  8239.  
  8240. ODST BSS 5*OSTE
  8241. SPACE 4,10
  8242. DSPEND
  8243. DISPLAY (DISPLAY E - MAGNETIC TAPES.),PET
  8244. ENTRY DSET,DSET
  8245. DSET SPACE 4,10
  8246. *** *E,T* DISPLAY.
  8247. *
  8248. * EACH TWO LINES DISPLAY THE STATUS OF ONE TAPE EQUIPMENT.
  8249. *
  8250. * EXAMPLE -
  8251. *
  8252. * 1 2 3 4 5 6
  8253. * 1234567890123456789012345678901234567890123456789012345678901234
  8254. * EST VSN DEN RING FMT JSN STATUS REEL MODE
  8255. *
  8256. * MT052 1600 IDLE
  8257. *
  8258. * NT053 ***053 1600 IN SI ASDF LOADPT 1 AS
  8259. * UNLABELED.
  8260.  
  8261.  
  8262. DSET SUBR ENTRY/EXIT
  8263. DISPHD (E,T. TAPE STATUS.)
  8264. LDM CTOS SET INITIAL Y-COORDINATE
  8265. OAN CH+40
  8266. SBN YINC*2
  8267. STD YC
  8268. RJM CMT CHECK MAGNET
  8269. NJN DSE1 IF *MAGNET* ACTIVE
  8270. DISPLA CH01,,(NOT ACTIVE)
  8271. UJN DSETX RETURN
  8272.  
  8273. DSE1 LDN 0 INITIALIZE NEXT UDT OFFSET
  8274. STM TDSEA+1
  8275. LDM TDSEA SET STARTING UDT OFFSET
  8276. STM DSED
  8277. ADD T6 SET STARTING UDT ADDRESS
  8278. STD T9
  8279.  
  8280. * DISPLAY TITLE.
  8281.  
  8282. DSE2 LDN DSECL DISPLAY TITLE LINE
  8283. OAM DSEC,CH
  8284. LDD T9
  8285. ZJN DSETX IF NO TAPES IN CONFIGURATION
  8286. LDN /MTX/PGS2 SET NUMBER OF ENTRIES PER PAGE
  8287. STD T8
  8288. LDM DCTY SET SPACING
  8289. NJN DSE3 IF CC634B
  8290. LDC /MTX/PGSZ*/MTX/UNITL
  8291. SBM LUDT
  8292. MJN DSE4 IF .GT. *PGSZ* UNITS
  8293. LDN YINC&C721
  8294. DSE3 LMN YINC&C721
  8295. STM DSEB
  8296. RAD YC
  8297. LDN /MTX/PGSZ RESET NUMBER OF ENTRIES PER PAGE
  8298. STD T8
  8299.  
  8300. * GET DATA FROM MAGNET.
  8301.  
  8302. DSE4 LDD T7 COMPUTE UDT ADDRESS
  8303. SHN 6
  8304. ADD T9
  8305. ADK /MTX/UST5
  8306. CRD T1 (T1) = DENSITY, COVERSION MODE
  8307. ADK /MTX/UVRI-/MTX/UST5
  8308. CRD T2 (T2) = EJT, (T5)= REEL, (T6) = FLAGS
  8309. ADK /MTX/UST4-/MTX/UVRI
  8310. CRD CM (CM+2) = FORMAT
  8311. ADK /MTX/UST1-/MTX/UST4
  8312. CRD AB (AB+2) = EST ORDINAL, (AB+4) = STATUS
  8313. ADK /MTX/UVSN-/MTX/UST1
  8314. CRD SR (SR - SR+2) = VSN, (SR+3) = FLAGS
  8315. ADK /MTX/UFID-/MTX/UVSN
  8316. CRD SH GET FILE IDENTIFIER
  8317. ADK /MTX/UFSN-/MTX/UFID
  8318. CRD SP
  8319. LDD CM+2 SAVE FORMAT
  8320. SHN -6
  8321. STD T3
  8322. LDD T1 SAVE DENSITY AND CONVERSION MODE
  8323. STD T4
  8324. SFA EST,AB+2 READ EST ENTRY
  8325. ADK EQDE
  8326. CRD CM
  8327. LDN 2 SET DISPLAY COORDINATES
  8328. OAM XC,CH
  8329.  
  8330. * DISPLAY UNIT TAPE DEVICE TYPE.
  8331.  
  8332. LDD CM+3 DISPLAY TAPE DEVICE TYPE
  8333. OAN CH+40
  8334.  
  8335. * DISPLAY EST ORDINAL.
  8336.  
  8337. LDD AB+2
  8338. SHN -3
  8339. RJM D2D OUTPUT UPPER DIGITS
  8340. LDD AB+2
  8341. LPN 7
  8342. ADN 1R0
  8343. SHN 6
  8344. OAN CH+40 OUTPUT LAST DIGIT
  8345.  
  8346. * DISPLAY VSN.
  8347.  
  8348. LDC CH10
  8349. OAN CH+40
  8350. LDD SR+3 CHECK IF SCRATCH VSN
  8351. SHN 7
  8352. MJN DSE5 IF SCRATCH VSN
  8353. LDC 2R
  8354. STD SR+3
  8355. SBD SR
  8356. NJN DSE6 IF NOT SCRATCH
  8357. LDD SR+1
  8358. SBD SR+3
  8359. NJN DSE6 IF NOT SCRATCH
  8360. LDD SR+2
  8361. SBD SR+3
  8362. NJN DSE6 IF NOT SCRATCH
  8363. DSE5 BSS 0
  8364. DISPLA ,,(SCRATCH ) DISPLAY SCRATCH VSN
  8365. UJN DSE7 DISPLAY DENSITY
  8366.  
  8367. DSE6 LDN 4
  8368. OAM SR,CH DISPLAY VSN
  8369.  
  8370. * DISPLAY DENSITY.
  8371.  
  8372. DSE7 LDD T2
  8373. ADD SR
  8374. ZJP DSE8.1 IF NO VSN AND UNIT NOT ASSIGNED
  8375. LDN 0
  8376. OAN CH+40 SKIP TWO SPACES
  8377. LDD T4
  8378. SHN -3
  8379. LPN 7
  8380. STD T1 SET DENSITY
  8381. SHN 1
  8382. RAD T1
  8383. LDM TDEN,T1 DISPLAY FIRST TWO CHARACTERS
  8384. OAN CH+40
  8385. LDM TDEN+1,T1 DISPLAY SECOND TWO CHARACTERS
  8386. OAN CH+40
  8387. LDM TDEN+2,T1 DISPLAY THIRD TWO CHARACTERS
  8388. OAN CH+40
  8389.  
  8390. * DISPLAY RING STATUS
  8391.  
  8392. LDN 0
  8393. OAN CH+40
  8394. OAN CH+40
  8395. LDD AB+4
  8396. LPC 200
  8397. ZJN DSE8 IF RING OUT
  8398. LDC 2RIN
  8399. DSE8 OAN CH+40
  8400.  
  8401. * CHECK JOB ASSIGNMENT.
  8402.  
  8403. DSE8.1 LDN 0 CLEAR INTENSIFICATION COUNTER
  8404. STD T1
  8405. LDD T2 EJT ORDINAL
  8406. NJN DSE11 IF ASSIGNED
  8407.  
  8408. * DETERMINE STATUS FOR UNASSIGNED TAPE UNIT.
  8409.  
  8410. LDD CM CHECK DEVICE STATE
  8411. LPN 3
  8412. LMN DWES
  8413. ZJN DSE10 IF DOWN
  8414. LMN OFES&DWES
  8415. ZJN DSE9 IF OFF
  8416. LDN SM2&SM3 STATUS MESSAGE 2 = IDLE
  8417. DSE9 LMN SM3&SM1 STATUS MESSAGE 3 = OFF
  8418. DSE10 LMN SM1 STATUS MESSAGE 1 = DOWN
  8419. DSE10.1 UJN DSE12 DISPLAY STATUS MESSAGE
  8420.  
  8421. * DISPLAY FORMAT AND JSN.
  8422.  
  8423. DSE11 SFA EJT GET JSN
  8424. CRD CM
  8425. AOD T5 SET REEL NUMBER
  8426. LDN 0
  8427. OAN CH+40
  8428. OAN CH+40
  8429. LDM TFMT,T3
  8430. OAN CH+40 DISPLAY FORMAT
  8431. LDC CH42 RESET X-COORDINATE
  8432. OAN CH+40
  8433. LDN 2 DISPLAY JSN
  8434. OAM CM,CH
  8435.  
  8436. * DISPLAY STATUS.
  8437.  
  8438. LDD T6 CHECK PREVIEW DISPLAY MESSAGE FLAG
  8439. LPN 1
  8440. ZJN DSE14 IF NO MESSAGE
  8441. CFNC BIVF
  8442. SHN 1-21 SET REPEAT COUNT
  8443. LPN 2
  8444. STD T1
  8445. LDN SM7 STATUS MESSAGE 7 = MOUNT
  8446. DSE12 UJN DSE17 DISPLAY STATUS MESSAGE
  8447.  
  8448. DSE14 LDD AB+4 CHECK FOR READY
  8449. SHN 21-0
  8450. MJN DSE15 IF READY
  8451. LDN SM4 STATUS MESSAGE 4 = NOTRDY
  8452. UJN DSE17 DISPLAY STATUS MESSAGE
  8453.  
  8454. DSE15 LPN 2
  8455. ZJN DSE16 IF NOT LOAD POINT
  8456. LCN SM6-SM5 STATUS MESSAGE 5 = LOADPT
  8457. DSE16 ADN SM6 STATUS MESSAGE 6 = READY
  8458.  
  8459. * DISPLAY STATUS MESSAGE.
  8460.  
  8461. DSE17 ADC. TSTM SET MESSAGE
  8462. STM DSEA
  8463. DSE18 LDC CH49 RESET X-COORDINATE
  8464. OAN CH+40
  8465. LDN 3 DISPLAY STATUS MESSAGE
  8466. OAM *,CH
  8467. DSEA EQU *-1
  8468. SOD T1
  8469. PJN DSE18 IF NOT ENOUGH INTENSITY
  8470. CFNC EIVF
  8471.  
  8472. * DISPLAY LABEL FILE IDENTIFIER.
  8473.  
  8474. LDD SR
  8475. ZJN DSE21 IF NO VSN
  8476. LDD SH
  8477. ZJN DSE21 IF NO FILE IDENTIFIER
  8478. LDC CH56 RESET X-COORDINATE
  8479. OAN CH+40
  8480. LDD T5 DISPLAY REEL NUMBER IF JOB ASSIGNED
  8481. NJN DSE20 IF SPECIFIED
  8482. LDD SP+4
  8483. DSE20 RJM D4S
  8484. LDD T4 SET CONVERSION MODE
  8485. LPN 7
  8486. STD T1
  8487. LDM TCVM,T1
  8488. OAN CH+40
  8489. LDC CH09 SET COORDINATES
  8490. OAN CH+40
  8491. LCN YINC
  8492. ADD YC
  8493. OAN CH+40
  8494. LDN 5 DISPLAY FILE IDENTIFIER
  8495. OAM SH,CH
  8496. LDN 4
  8497. OAM SP,CH
  8498.  
  8499. * LOOP FOR NEXT UDT.
  8500.  
  8501. DSE21 LDN /MTX/UNITL ADVANCE UDT POINTER
  8502. RAD T9
  8503. LDN /MTX/UNITL ADVANCE UDT OFFSET
  8504. RAM DSED
  8505. LMM LUDT
  8506. ZJN DSE24 IF END OF UDT
  8507. SOD T8
  8508. ZJN DSE22 IF END OF PAGE
  8509. LCN YINC*3
  8510. ADC YINC-2 SPACING FOR CC545 WITH .GT. *PGSZ* UNITS
  8511. * ADC YINC (SPACING FOR CC634B)
  8512. * ADC 0 (SPACING FOR CC545 WITH .LE. *PGSZ* UNITS)
  8513. DSEB EQU *-1
  8514. RAD YC
  8515. LJM DSE4 LOOP FOR NEXT UDT
  8516.  
  8517. DSE22 LDM DCTY
  8518. NJN DSE23 IF CC634B CONSOLE
  8519. LDN MOREL+1 DISPLAY *MORE*
  8520. OAM CBOS,CH
  8521. ERRNZ MORE-CBOS-1 CODE ASSUMES CONTIGUOUS DATA
  8522. DSE23 LDM DSED SET STARTING UDT OFFSET FOR NEXT PAGE
  8523. STM TDSEA+1
  8524. DSE24 LJM DSETX RETURN
  8525.  
  8526.  
  8527. DSEC CON CH02
  8528. DATA H*EST*
  8529. CON CH12
  8530. DATA H*VSN*
  8531. CON CH23
  8532. DATA H*DEN RING FMT JSN*
  8533. CON CH49
  8534. DATA H*STATUS REEL MODE*
  8535. DSECL EQU *-DSEC
  8536.  
  8537. DSED CON 0 CURRENT UDT OFFSET
  8538. TCVM SPACE 4,10
  8539. ** TCVM - TABLE OF CONVERSION MODES.
  8540.  
  8541.  
  8542. TCVM BSS 0
  8543. LOC 0
  8544. CON 2R NO CONVERSION MODE
  8545. CON 2RBC BCD (7 TRACK)
  8546. CON 2RAS ASCII (9 TRACK)
  8547. CON 2REB EBCDIC (9 TRACK)
  8548.  
  8549. LOC *O
  8550. TDEN SPACE 4,10
  8551. ** TDEN - TABLE OF DENSITIES.
  8552.  
  8553.  
  8554. TDEN BSS 0
  8555. LOC 0
  8556.  
  8557. VFD 36/6H
  8558. VFD 36/6H 200
  8559. VFD 36/6H 556
  8560. VFD 36/6H 800
  8561. VFD 36/6H 1600
  8562. VFD 36/6H 6250
  8563. VFD 36/6H 38000
  8564.  
  8565. LOC *O
  8566. TFMT SPACE 4,10
  8567. ** TFMT - TABLE OF FORMATS.
  8568.  
  8569.  
  8570. TFMT BSS 0
  8571. LOC 0
  8572.  
  8573. CON 2H I
  8574. CON 2HSI
  8575. CON 2H F
  8576. CON 2H S
  8577. CON 2H L
  8578. CON 2HLI
  8579.  
  8580. LOC *O
  8581. TSTM SPACE 4,10
  8582. ** TSTM - TABLE OF STATUS MESSAGES.
  8583.  
  8584.  
  8585. TSTM BSS 0
  8586. LOC 0
  8587.  
  8588. SM1 VFD 36/6HDOWN
  8589. SM2 VFD 36/6HIDLE
  8590. SM3 VFD 36/6HOFF
  8591. SM4 VFD 36/6HNOTRDY
  8592. SM5 VFD 36/6HLOADPT
  8593. SM6 VFD 36/6HREADY
  8594. SM7 VFD 36/6HMOUNT
  8595.  
  8596. LOC *O
  8597. PET SPACE 4,10
  8598. ** PET - PAGE *E,T* DISPLAY.
  8599. *
  8600. * ENTRY (T2) = 0, IF PAGE FORWARD.
  8601. * = 1, IF PAGE BACKWARD (RETURN TO PAGE 1).
  8602. *
  8603. * CALLS CMT.
  8604.  
  8605.  
  8606. PET BSS 0 ENTRY
  8607. RJM CMT
  8608. ZJN PET2 IF *MAGNET* NOT ACTIVE
  8609. LDD T2
  8610. LMN 1
  8611. ZJN PET1 IF RETURN TO PAGE ONE
  8612. LDM TDSEA+1
  8613. PET1 STM TDSEA SET FIRST UDT OFFSET
  8614. PET2 LJM. /KEYBOARD/KBIX RETURN
  8615. SPACE 4,10
  8616. DSPEND
  8617. DISPLAY (DISPLAY H - FILE NAME TABLE.),PHD
  8618. ENTRY DSH,DSH
  8619. DSH SPACE 4,15
  8620. *** *H* DISPLAY.
  8621. *
  8622. * DISPLAY FILES IN THE SYSTEM FNT (ONE FILE PER
  8623. * LINE) OR FILES IN A JOB-S LOCAL FNT.
  8624. *
  8625. * EXAMPLE (IF SYSTEM FNT) -
  8626. *
  8627. * 1 2 3 4 5 6
  8628. * 1234567890123456789012345678901234567890123456789012345678901234
  8629. * FNT NAME TYPE EST TRACK (LENGTH)
  8630. *
  8631. * 1 SYSTEM LI 1 1234 (1234567)
  8632. *
  8633. * EXAMPLE (IF LOCAL FNT) -
  8634. *
  8635. * 1 2 3 4 5 6
  8636. * 1234567890123456789012345678901234567890123456789012345678901234
  8637. * FNT NAME TYPE EST TRACK FS STATUS (POSITION) (LENGTH)
  8638. *
  8639. * 1 INPUT IN* 11 1234 ND 5 (1234567) (1234567)
  8640. *
  8641. * PRESSING THE *=* KEY (IF ON THE RIGHT SCREEN) OR THE */* KEY
  8642. * (IF ON THE LEFT) WILL CAUSE THE *POSITION* AND *LENGTH*
  8643. * FIELDS TO NOT BE DISPLAYED. THIS IS DONE BECAUSE THE SCREEN
  8644. * MAY FLICKER IF SEVERAL VERY LARGE FILES ARE ATTACHED TO A JOB
  8645. * AND THE *POSITION* AND *LENGTH* FIELDS ARE BEING DISPLAYED.
  8646.  
  8647.  
  8648. DSH SUBR ENTRY/EXIT
  8649. LDM. /DSD/TJHH+1
  8650. ZJN DSH2 IF SYSTEM FNT
  8651. DISPHD (H. LOCAL FILES.),/DSD/TJHH+1
  8652. LDK /DSD/TJHH+1 GET JSN ADDRESS
  8653. RJM SJS
  8654. MJP DSHX IF EJT ENTRY IS ROLLED OR NOT FOUND
  8655. LDD CP GET RELATIVE ADDRESS INFORMATION
  8656. ADK FLSW
  8657. CRD SR
  8658. ADN 1
  8659. CRD CM
  8660. LDM. CMEI
  8661. ZJN DSH1 IF NOT CENTRAL MEMORY EXTENSION
  8662. LRD CM+1
  8663. LDD CM+3
  8664. STD SR+3
  8665. DSH1 LDK FNTN-LENF
  8666. STD T6
  8667. UJN DSH3 CONTINUE
  8668.  
  8669. DSH2 STD CP
  8670. DISPHD ("HHDR")
  8671. LDN FNTP GET NUMBER OF ENTRIES
  8672. CRD SR
  8673. DSH3 LDM CTOS SET Y-COORDINATES
  8674. OAN CH+40
  8675. SBN YINC
  8676. STD YC
  8677. LDD CP
  8678. ZJN DSH4 IF SYSTEM FNT
  8679. LDN DSHDL
  8680. DSH4 ADN DSHCL
  8681. OAM DSHC,CH
  8682. * LDN 0
  8683. STM TDSH+1 CLEAR NEXT PAGE INDEX
  8684. STM D7SA
  8685. STD T7 INITIALIZE FNT ORDINAL
  8686. LDD LA CHECK WHICH DISPLAY THE OVERLAY IS DRIVING
  8687. ADC -.FLFT
  8688. SHN -10B
  8689. ERRNG .FRHT-.FLFT-400B ENSURE DIFFERENCE IS IN RANGE
  8690. ERRNG .FLFT-.FRHT+777B
  8691. STD T9
  8692. LDM TGTF,T9 SET TOGGLE STATUS
  8693. STD T9
  8694. NJN DSH6 IF NOT TO DISPLAY *POSITION*, *LENGTH*
  8695. LDD CP
  8696. ZJN DSH5 IF SYSTEM FNT
  8697. DISPLA ,,( POSITION )
  8698. * LDN 0
  8699. DSH5 OAN CH+40
  8700. DISPLA ,,( LENGTH )
  8701. DSH6 LJM DSH18 READ FNT ENTRY
  8702.  
  8703. * DISPLAY FNT ENTRY.
  8704.  
  8705. DSH7 LDD CM+4 SET FILE TYPE
  8706. SHN 14
  8707. STD T5
  8708. SHN -14 SAVE FS STATUS
  8709. STD T8
  8710. LDD XC OUTPUT X-COORDINATE
  8711. OAN CH+40
  8712. LDD T7 DISPLAY INDEX
  8713. RJM D4S
  8714. LDN 3 DISPLAY FILE NAME
  8715. OAM CM,CH
  8716. LDD CM+3
  8717. SCN 77
  8718. OAN CH+40
  8719. LDN 0 SKIP TWO SPACES
  8720. OAN CH+40
  8721. LDM DSHA,T5 DISPLAY TYPE
  8722. OAN CH+40
  8723. LDD CP
  8724. NJN DSH8 IF NOT SYSTEM FNT
  8725. STD AB+2 ENSURE *CURRENT TRACK* BYTE CLEAR
  8726. UJN DSH9 CONTINUE
  8727.  
  8728. DSH8 LDD CM+3 EXTRACT LOCK BIT
  8729. LPN 1
  8730. ZJN DSH9 IF FILE UNLOCKED
  8731. LDC 2R* DISPLAY (*) FOR LOCK
  8732. DSH9 OAN CH+40
  8733. LDD AB DISPLAY EQUIPMENT
  8734. RJM D4S
  8735. SFA EST,AB
  8736. ADK EQDE
  8737. CRD CM
  8738. LDD CM
  8739. SHN 21-13
  8740. DSH10 PJP DSH17 IF NOT MASS STORAGE DEVICE
  8741. LDD AB+1 DISPLAY FIRST TRACK
  8742. RJM D4S
  8743. LDD CP
  8744. ZJN DSH11 IF SYSTEM FNT
  8745. LDM DSHB,T8 DISPLAY FS STATUS
  8746. OAN CH+40
  8747. LDN 0 SKIP TWO SPACES
  8748. OAN CH+40
  8749. LDD AB+4 DISPLAY FILE STATUS
  8750. RJM D6S
  8751. DSH11 LDD AB+1
  8752. ZJN DSH10 IF NO TRACKS ASSIGNED
  8753. LDD T9
  8754. NJN DSH10 IF NOT TO DISPLAY POSITION, LENGTH
  8755. LDD AB+2
  8756. NJN DSH12 IF CURRENT TRACK SET
  8757. STD AB+3 SET POSITION AT BOI
  8758. LDD AB+1
  8759. STD AB+2
  8760. DSH12 LDD CM+4
  8761. SHN 3
  8762. ADK MDGL
  8763. CRD T1 (T5) = SECTOR LIMIT
  8764. ADN TRLL-MDGL
  8765. CRD CM
  8766. LDD CM+3
  8767. LPN 77
  8768. SHN 14
  8769. LMD CM+4
  8770. SBD TH 4000 / 4
  8771. STM LNBA+1
  8772. SHN -14
  8773. LMC ADCI
  8774. STM LNBA
  8775. LCN 0 INITIALIZE LIMIT FOR TRACK CHAIN SEARCH
  8776. STD SR+4
  8777. LDD AB+3 CURRENT SECTOR
  8778. STD T3
  8779. SHN -14
  8780. STD T2
  8781. LDD AB+1
  8782. UJN DSH14 ENTER TRACK SEARCH LOOP
  8783.  
  8784. DSH13 SHN -6 CHECK TRACK
  8785. STD T4
  8786. LMD AB+2
  8787. ZJN DSH15 IF CURRENT TRACK REACHED
  8788. LDD T5
  8789. RAD T3
  8790. SHN -14
  8791. RAD T2
  8792. RJM LNB LINK TO NEXT BYTE IN TRT
  8793. DSH14 SHN 6
  8794. MJN DSH13 IF NOT END OF CHAIN
  8795. DISPLA ,,(LINKAGE ERROR.)
  8796. UJN DSH17 READ NEXT ENTRY
  8797.  
  8798. DSH15 LDD CP
  8799. ZJN DSH16 IF SYSTEM FNT
  8800. RJM D7S DISPLAY CURRENT POSITION
  8801. DSH16 LDD T3 SET END OF INFORMATION
  8802. SBD AB+3
  8803. STD T3
  8804. PJN DSH16.1 IF NO BORROW
  8805. SOD T2
  8806. AOD T3
  8807. DSH16.1 RJM LNB LINK TO NEXT BYTE IN TRT
  8808. SHN 6
  8809. PJN DSH16.2 IF LAST SECTOR
  8810. SHN -6
  8811. STD T4
  8812. LDD T5
  8813. RAD T3
  8814. SHN -14
  8815. RAD T2
  8816. UJN DSH16.1 LOOP
  8817.  
  8818. DSH16.2 SHN -6 SET FINAL SECTOR COUNT
  8819. RAD T3
  8820. SHN -14
  8821. RAD T2
  8822. RJM D7S DISPLAY LENGTH
  8823.  
  8824. * GET NEXT FNT ENTRY.
  8825.  
  8826. DSH17 AOD T7 NEXT FNT ORDINAL
  8827. DSH18 LDD CP
  8828. ZJN DSH19 IF SYSTEM FNT
  8829. LDK LENF
  8830. RAD T6 NEXT FNT ADDRESS
  8831. SHN -6
  8832. SBD SR
  8833. PJN DSH20 IF END OF LOCAL FNT
  8834. LDD SR+3 RA / 100
  8835. SHN 6
  8836. SBD T6
  8837. ADK FNTL
  8838. UJN DSH21 READ ENTRY
  8839.  
  8840. DSH19 LDD T7
  8841. SBD SR+2
  8842. DSH20 PJN DSH22 IF END OF SYSTEM FNT
  8843. SFA FNT,T7
  8844. ADK FNTG
  8845. DSH21 CRD CM READ FNT
  8846. ADK FSTG-FNTG
  8847. ERRNZ FSTG-FSTL CODE REQUIRES SAME INDEX FOR SECOND WORD
  8848. CRD AB READ FST
  8849. LDD CM
  8850. ZJP DSH17 IF EMPTY ENTRY
  8851.  
  8852. * CHECK IF ENTRY IS OUTSIDE RANGE OF CURRENT SCREEN.
  8853.  
  8854. LDD T7
  8855. SBM TDSH
  8856. MJP DSH17 IF BEFORE START INDEX
  8857. LCN YINC
  8858. RAD YC DECREMENT Y-COORDINATE
  8859. OAN CH+40
  8860. SBM CBOS
  8861. PJP DSH7 IF SCREEN NOT FULL
  8862. LDN MOREL OUTPUT *MORE* MESSAGE
  8863. OAM MORE,CH
  8864. LDD T7 SET NEXT PAGE STARTING ORDINAL
  8865. STM TDSH+1
  8866. DSH22 LJM DSHX RETURN
  8867.  
  8868.  
  8869. DSHA DATA H*"NMFT"*
  8870. DSHB INDEX
  8871. INDEX UPST,2RUP USER FILE PRIVACY
  8872. INDEX SSST,2RSS SPECIAL SYSTEM JOB FILE
  8873. INDEX CBST,2RCB CB CHECKPOINT FILE
  8874. INDEX CKST,2RCK CK CHECKPOINT FILE
  8875. INDEX SOST,2RSO SPECIAL OUTPUT FILE
  8876. INDEX AAST,2RAA APPLICATION ACCOUNTING FILE
  8877. INDEX NDST,2RND NO DROP FILE
  8878. INDEX MXST END OF TABLE
  8879.  
  8880. DSHC CON CH01
  8881. DATA 10H FNT NAME
  8882. CON CH16
  8883. DATA 16HTYPE EST TRACK
  8884. DSHCL EQU *-DSHC
  8885.  
  8886. DSHD DATA 12H FS STATUS
  8887. DSHDL EQU *-DSHD
  8888. LNB SPACE 4,10
  8889. ** LNB - LINK TO NEXT BYTE IN TRT.
  8890. *
  8891. * ENTRY (T4) = TRACK LINK.
  8892. * (SR+4) = TRACK CHAIN SEARCH LIMIT COUNTER.
  8893. * (LNBA) = TRT FWA - 4000 / 4.
  8894. *
  8895. * EXIT (A) = NEXT TRACK RESERVATION BYTE.
  8896. * = 0 IF END OF TRACK CHAIN NOT FOUND.
  8897. * (CM - CM+4) = NEXT TRACK RESERVATION WORD.
  8898. * (T1) = INDEX INTO RESERVATION WORD.
  8899. *
  8900. * USES T1, CM - CM+4, SR+4.
  8901.  
  8902.  
  8903. LNB SUBR
  8904. SOD SR+4
  8905. ZJN LNBX IF END OF TRACK CHAIN NOT FOUND
  8906. LDD T4 READ TRT WORD
  8907. SHN -2
  8908. LNBA ADC **
  8909. CRD CM
  8910. LDD T4 COMPUTE BYTE INDEX
  8911. LPN 3
  8912. STD T1
  8913. LDM CM,T1 NEXT TRACK BYTE
  8914. UJN LNBX RETURN
  8915. PHD SPACE 4,10
  8916. ** PHD - PAGE *H* DISPLAY.
  8917. *
  8918. * ENTRY (T2) = 0, IF PAGE FORWARD.
  8919. * = 1, IF PAGE BACKWARD.
  8920.  
  8921.  
  8922. PHD BSS 0 ENTRY
  8923. LDD T2
  8924. SBN 1
  8925. ZJN PHD1 IF PAGE BACKWARD
  8926. LDM TDSH+1
  8927. PHD1 STM TDSH STORE NEW PAGE INDEX
  8928. LJM. /KEYBOARD/KBIX RETURN
  8929.  
  8930.  
  8931. ** COMMON DECKS.
  8932.  
  8933.  
  8934. *CALL COMDD7S
  8935. SPACE 4,10
  8936. DSPEND
  8937. DISPLAY (DISPLAY I - BATCHIO STATUS.),PID
  8938. ENTRY DSI,D
  8939. DSI SPACE 4,10
  8940. *** *I* DISPLAY.
  8941. *
  8942. * EACH ENTRY DISPLAYS THE STATUS OF ONE *BATCHIO* DEVICE.
  8943. *
  8944. * EXAMPLE -
  8945. *
  8946. * 1 2 3 4 5 6
  8947. * 1234567890123456789012345678901234567890123456789012345678901234
  8948. * EST JSN TR PS ID FC REP SIZE DONE STATUS
  8949. *
  8950. * LR021 AAZZ 1 S 40 2 636 123
  8951. * LT022 7 L NOT READY.
  8952. * LT023 ABCD 6 L LF 3 421 25
  8953. * CR024 JOBC ADV 1 CD RE-RD 3 CDS.
  8954. * LX025 ACXY 7 331 157
  8955.  
  8956.  
  8957. DSI SUBR ENTRY/EXIT
  8958. DISPHD ("IHDR")
  8959. LDM CTOS SET UP INITIAL Y-COORDINATES
  8960. STD YC
  8961. LDN 2
  8962. OAM XC,CH
  8963. LDC BISI FIND *BATCHIO*
  8964. RJM FSS
  8965. STD CN
  8966. NJN DSI1 IF *BATCHIO* ACTIVE
  8967. DISPLA ,,(NOT ACTIVE.)
  8968. UJN DSIX RETURN
  8969.  
  8970. DSI1 LDN DSICL DISPLAY COLUMN HEADERS
  8971. OAM DSIC,CH
  8972. * LDN 0 CLEAR CP MESSAGE
  8973. STD CM
  8974. STM TDSI+1 CLEAR NEXT PAGE INDEX
  8975. LCN YINC SET FIRST LINE Y-COORDINATE
  8976. RAD YC
  8977. LDM. CMEI
  8978. ZJN DSI2 IF NOT CME
  8979. LDC SBNI+MS2W-FLSW-1 FORCE READ OF FLSW+1
  8980. STM DSIA
  8981. DSI2 LDD CN CLEAR CP MESSAGE
  8982. SHN 7
  8983. ADN MS2W
  8984. CRD AB SAVE MESSAGE
  8985. CWD CM
  8986. DSIA SBN MS2W-FLSW
  8987. * SBN MS2W-FLSW-1 (CENTRAL MEMORY EXTENSION)
  8988. CRD CM
  8989. LDD AB
  8990. ZJN DSI3 IF NO MESSAGE
  8991. RJM SBO INDICATE OPERATOR ACTION REQUIRED
  8992. DSI3 LDC /BIO/BFCW
  8993. SBM TDSI
  8994. STD T7
  8995. LRD CM+1
  8996. LDD CM+3 READ AVAILABLE EQUIPMENT WORD
  8997. STD T2 SAVE *BATCHIO* RA/100
  8998. SHN 6
  8999. ADN /BIO/TEQR
  9000. CRD CM
  9001. AOD CM SET AVAILABLE EQUIPMENT COUNT
  9002. STD T5
  9003. LDM TDSI SET FIRST BUFFER POINT NUMBER
  9004. ADN 1
  9005. STD T6
  9006. DSI4 LCN YINC
  9007. RAD YC
  9008. OAN CH+40
  9009. SBM CBOS
  9010. PJN DSI5 IF NOT BOTTOM OF SCREEN
  9011. SOD T6 STORE NEXT PAGE INDEX
  9012. STM TDSI+1
  9013. LDN MOREL
  9014. OAM MORE,CH
  9015. LJM DSIX RETURN
  9016.  
  9017. DSI5 LDD XC OUTPUT INITIAL X-COORDINATE
  9018. OAN CH+40
  9019. LDD T2 READ BUFFER POINT WORD
  9020. SHN 6
  9021. SBD T7
  9022. CRD AB
  9023. SFA EST,AB+3
  9024. ADK EQDE
  9025. CRD CM
  9026. ADK EQAE-EQDE
  9027. CRD SR
  9028. LDD CM+3 DISPLAY TYPE
  9029. OAN CH+40
  9030. LDC CH02 RESET X-COORDINATE
  9031. OAN CH+40
  9032. LDD AB+3 DISPLAY UPPER DIGIT
  9033. SHN -6
  9034. ADN 1R0
  9035. OAN CH+40
  9036. LDD AB+3 DISPLAY LOWER DIGITS
  9037. RJM D2D
  9038. LDN 0 SKIP TWO SPACES
  9039. OAN CH+40
  9040. LDN 2 DISPLAY JOBCARD OR JSN
  9041. OAM AB,CH
  9042. LDD CM+3
  9043. SHN -6
  9044. LMN 1RL
  9045. ZJN DSI6 IF LINE PRINTER
  9046. LDC CH20 RESET X-COORDINATE
  9047. UJN DSI9 CONTINUE
  9048.  
  9049. DSI6 LDD CM+4 DISPLAY TRAIN
  9050. SHN -6
  9051. LPN 7
  9052. RJM D4S
  9053. LDD CM+3
  9054. LPN 77
  9055. LMN 1RX
  9056. ZJN DSI9 IF *LX*
  9057. LMN 2RLY&2RLX
  9058. ZJN DSI9 IF *LY*
  9059. LDD CM CHECK PAPER SIZE
  9060. SHN -11
  9061. ZJN DSI7 IF NOT SHORT PAPER
  9062. LDN 1RS-1RL
  9063. DSI7 ADN 1RL
  9064. SHN 6
  9065. DSI9 OAN CH+40 DISPLAY PAPER SIZE
  9066. LDD CM+4 DISPLAY EQUIPMENT ID
  9067. LPN 77
  9068. RJM D2S
  9069. LDD SR+2 DISPLAY FORMS CODE
  9070. OAN CH+40
  9071. LDC CH27 RESET X-COORDINATE
  9072. OAN CH+40
  9073. LDD AB+4 DISPLAY REPEAT COUNT
  9074. SHN -6
  9075. RJM D2S
  9076. LDD AB
  9077. ZJN DSI10 IF NO JSN
  9078. LDD T2
  9079. SHN 6
  9080. ADC -/BIO/BFSP-1
  9081. ADD T6 FETCH FET ADDRESS
  9082. CRD CM
  9083. LDD CM+3
  9084. SHN 6
  9085. ADD T2 BATCHIO RA/100
  9086. SHN 6
  9087. ADD CM+4
  9088. ADN /BIO/FPSN
  9089. CRD AB CURRENT FILE POSITION
  9090. ADN /BIO/FLEN-/BIO/FPSN
  9091. CRD CM FILE EOI
  9092. LDD CM+3
  9093. ADD CM+4
  9094. DSI10 ZJN DSI11 IF ZERO LENGTH
  9095. LDC CH30
  9096. OAN CH+40 RESET X-COORDINATE
  9097. LDD CM+3
  9098. SHN 14
  9099. ADD CM+4
  9100. RJM D6S DISPLAY FILE EOI
  9101. LDC CH37
  9102. OAN CH+40 SET X-COORDINATE
  9103. LDD AB+2
  9104. SHN 6
  9105. LMD AB+1
  9106. SHN 6
  9107. RJM D6S DISPLAY CURRENT FILE POSITION
  9108.  
  9109. * DISPLAY STATUS MESSAGE.
  9110.  
  9111. DSI11 SOD T7 SET MESSAGE CODE
  9112. LDD T2
  9113. SHN 6
  9114. SBD T7
  9115. CRD CM
  9116. LDD CM
  9117. SBN /BIO/EMAX
  9118. PJN DSI13 IF INVALID ERROR CODE
  9119. LDM DSIB,CM
  9120. ZJN DSI13 IF NO MESSAGE
  9121. ADD LA
  9122. SBN 1
  9123. STD T1
  9124. LDC CH44 RESET X-COORDINATE FOR STATUS MESSAGE
  9125. DSI12 OAN CH+40
  9126. AOD T1
  9127. LDI T1 OUTPUT MESSAGE
  9128. NJN DSI12 IF NOT END OF MESSAGE
  9129. DSI13 SOD T7
  9130. AOD T6 ADVANCE BUFFER POINT NUMBER
  9131. LMD T5
  9132. ZJN DSI14 IF END OF BUFFER POINTS
  9133. LDD T6
  9134. SBN /BIO/MXEQ+1
  9135. PJN DSI14 IF TOO MANY BUFFERS
  9136. LJM DSI4 LOOP
  9137.  
  9138. DSI14 LJM DSIX RETURN
  9139.  
  9140.  
  9141. * ERROR/STATUS MESSAGES - CANNOT EXCEED 21 CHARACTERS.
  9142.  
  9143. DSIB INDEX MESSAGE TABLE
  9144. INDEX /BIO/ECLE,0 CLEAR MESSAGE
  9145. INDEX /BIO/ENRD,(=C*NOT READY.*)
  9146. INDEX /BIO/ENPA,(=C*NO PAPER.*)
  9147. INDEX /BIO/ERCA,(=C*RE-RD CD COMPARE ERR.*)
  9148. INDEX /BIO/ERCB,(=C*ADV 1 CD RE-RD 3 CDS.*)
  9149. INDEX /BIO/ECPE,(=C*COMPARE ERROR.*)
  9150. INDEX /BIO/EFED,(=C*FEED FAILURE.*)
  9151. INDEX /BIO/EOFF,(=C*OFF.*)
  9152. INDEX /BIO/EDWN,(=C*DOWN.*)
  9153. INDEX /BIO/EHLD,(=C*HOLD.*)
  9154. INDEX /BIO/EPMM,(=C*PM MESSAGE.*)
  9155. INDEX /BIO/EPRH,(=C*PRINT ERROR.*)
  9156. INDEX /BIO/ECPA,(=C*PAPER FAULT.*)
  9157. INDEX /BIO/EOHE,(=C*OFF - CHECK ERRLOG.*)
  9158. INDEX /BIO/EIVR,(=C*INTERVENTION NEEDED.*)
  9159. INDEX /BIO/ECUA,(=C*CH UNAVAILABLE.*)
  9160. INDEX /BIO/EMAX
  9161.  
  9162. * COLUMN HEADERS.
  9163.  
  9164. DSIC DATA H* EST*
  9165. CON CH08
  9166. DATA H*JSN*
  9167. CON CH14
  9168. DATA H*TR PS ID FC REP SIZE*
  9169. CON CH39
  9170. DATA H*DONE*
  9171. CON CH46
  9172. DATA H*STATUS*
  9173. DSICL EQU *-DSIC
  9174. PID SPACE 4,10
  9175. ** PID - PAGE *I* DISPLAY.
  9176. *
  9177. * ENTRY (T2) = 0, IF PAGE FORWARD.
  9178. * = 1, IF PAGE BACKWARD.
  9179.  
  9180.  
  9181. PID BSS 0 ENTRY
  9182. SOD T2
  9183. ZJN PID1 IF PAGE BACKWARD
  9184. LDM TDSI+1
  9185. PID1 STM TDSI STORE NEW PAGE INDEX
  9186. LJM. /KEYBOARD/KBIX RETURN
  9187. SPACE 4,10
  9188. DSPEND
  9189. DISPLAY (DISPLAY J - JOB STATUS.)
  9190. ENTRY DSJ,D
  9191. DSJ SPACE 4,10
  9192. *** *J* DISPLAY.
  9193. *
  9194. * DISPLAY STATUS OF JOB WITH SPECIFIED JSN.
  9195. *
  9196. * NOTE - THE DISPLAY FORMAT IS DOCUMENTED IN *COMDGJD*.
  9197.  
  9198.  
  9199. DSJ SUBR ENTRY/EXIT
  9200. DISPHD ("JHDR"),/DSD/TJJJ+1
  9201. LDC /DSD/TJJJ+1 GET JSN ADDRESS
  9202. RJM SJS
  9203. MJN DSJX IF EJT ENTRY IS ROLLED OR NOT FOUND
  9204. ZJN DSJX IF NO JSN SPECIFIED
  9205. LDD T3 SAVE EJT ORDINAL
  9206. STD T7
  9207. SFA EJT GET EJT ADDRESS
  9208. ADK JSNE
  9209. CRD AB GET JSN
  9210. LDM CMEI GET CME FLAG
  9211. * UJN GJD GENERATE *J* DISPLAY
  9212. SPACE 4,10
  9213. * COMMON DECKS.
  9214.  
  9215.  
  9216. LIST X
  9217. GJD$ EQU UESC LOCATION OF USER EM SHIFT COUNT
  9218. *CALL COMDGJD
  9219. LIST *
  9220. SPACE 4,10
  9221. DSPEND
  9222. DISPLAY (DISPLAY K - CENTRAL PROGRAM BUFFER.)
  9223. ENTRY DSK,D
  9224. DSK SPACE 4,10
  9225. *** *K* DISPLAY.
  9226. *
  9227. * DATA FROM A CENTRAL MEMORY BUFFER WILL BE DISPLAYED IF A CPU
  9228. * PROGRAM IS ACTIVE AT THE CONTROL POINT ASSIGNED, AND IN THE
  9229. * CONTROL POINT AREA THERE IS A DISPLAY ADDRESS POINTING TO A
  9230. * CONTROL WORD (A) DESCRIBED BELOW -
  9231. *
  9232. *T A 1/0,1/U,4/0,18/KBUF,18/RSCR,18/LSCR
  9233. *
  9234. * U = 1, IF UPDATE OF STATUS WORD IS NOT REQUIRED.
  9235. * KBUF KEYBOARD BUFFER (8 CM WORDS).
  9236. *
  9237. *T LSCR 10/,1/S,1/F,1/A,5/,18/TBUF,23/,1/I
  9238. * LEFT-SCREEN CONTROL WORD
  9239. *
  9240. *T RSCR 10/,1/S,1/F,1/A,5/,18/TBUF,23/,1/I
  9241. * RIGHT-SCREEN CONTROL WORD
  9242. *
  9243. * S = CHARACTER SIZE.
  9244. * 0 = SMALL (64 CHARACTERS/LINE) LINES 12B UNITS APART.
  9245. * (DISPLAY IS 1000B * 1000B UNITS)
  9246. * 1 = MEDIUM (32 CHARACTERS/LINE) LINES 24B UNITS APART.
  9247. *
  9248. * F = FORMAT.
  9249. * 0 = PROGRAM FORMATTED.
  9250. * AFTER DISPLAY IS SELECTED, DATA IS OUTPUT
  9251. * UNTIL A ZERO IN BYTE (0) OF A WORD IS
  9252. * ENCOUNTERED OR UNTIL 1000B WORDS HAVE BEEN OUTPUT.
  9253. * THE DATA MUST CONTAIN ALL COORDINATES.
  9254. * IF A WORD CONTAINING 7777 IN BYTE (0) IS
  9255. * FOUND, THE LOWER 18 BITS WILL BE USED AS AN
  9256. * INDEX. IF THE INDEX IS ZERO OR GREATER THAN
  9257. * FL, THE DATA WILL BE TERMINATED.
  9258. *
  9259. * 1 = CODED FORMAT (*C* FORMAT).
  9260. * BUFFER IS ASSUMED TO BE IN *C* FORMAT (LINE IS
  9261. * TERMINATED BY A ZERO IN BYTE (4)) AND IS
  9262. * OUTPUT UNTIL A ZERO IN BYTE (0) OF THE FIRST WORD
  9263. * IN A LINE IS ENCOUNTERED, OR UNTIL 1000B
  9264. * WORDS HAVE BEEN DISPLAYED.
  9265. * IF A WORD CONTAINING 7777 IN BYTE (0) IS
  9266. * FOUND, THE LOWER 18 BITS WILL BE USED AS AN
  9267. * INDEX. IF THE INDEX IS ZERO OR GREATER THAN
  9268. * FL, THE DATA WILL BE TERMINATED.
  9269. *
  9270. * A = ALTERNATE LINE SPACING.
  9271. * 0 = NORMAL LINE SPACING AS SPECIFIED BY THE *S* BIT.
  9272. * 1 = LINE SPACING IS ONE AND HALF TIMES THAT SPECIFIED
  9273. * BY THE *S* BIT.
  9274. *
  9275. * TBUF = FWA OF TITLE.
  9276. * THIS STRING OF 16 CHARACTERS WILL BE PLACED ON LINE
  9277. * CHARACTER POSITIONS 5-20 OF THE DISPLAY. IMBEDDED
  9278. * CHARACTERS WITH A VALUE OF 60B OR MORE WILL APPEAR
  9279. * AS A BLANK. THE STRING MAY BE TERMINATED BY AN END
  9280. * OF LINE BYTE. IF *TBUF* IS ZERO, OR THE (*TBUF*) IS
  9281. * ZERO, A DEFAULT TITLE WILL BE USED. THE DEFAULT TITLE IS
  9282. * FOUND AT RA+*PGNR* (THE PROGRAM NAME WORD) FOR NON-SUBSYSTEM
  9283. * JOBS, AND IS BLANK FOR SUBSYSTEM JOBS.
  9284. *
  9285. * I = DISPLAY STATUS.
  9286. *
  9287. * IF THIS IS PRESET TO ZERO (0), IT MAY BE SUBSEQUENTLY
  9288. * CHECKED FOR NONZERO WHICH INDICATES DATA HAS BEEN
  9289. * DISPLAYED AT LEAST ONCE.
  9290.  
  9291.  
  9292. DSK SUBR ENTRY/EXIT
  9293. DISPHD (K.),/DSD/TJKK+1 DISPLAY HEADER
  9294. * LDN 0
  9295. STD AB
  9296. STD T1 CLEAR TERMINATE FLAG
  9297. LDC /DSD/TJKK+1
  9298. RJM SJS SEARCH FOR JSN IN EJT
  9299. MJN DSKX IF JOB NOT AT CP OR JSN UNUSED
  9300. ZJN DSKX IF SYSTEM CP
  9301. LDD CM+3 CHECK CP NUMBER BEFORE CLEARING *MS2W*
  9302. SBD NC
  9303. PJN DSKX IF INVALID CP NUMBER
  9304. ZJN DSKX IF INVALID CP NUMBER
  9305. LDD CP
  9306. ADN FLSW
  9307. CRD SR
  9308. ADN MS2W-FLSW CLEAR CP MESSAGE
  9309. CWD AB
  9310. ADN DBAW-MS2W READ DISPLAY CONTROL WORD
  9311. CRD AB
  9312. LDD AB SAVE DISPLAY STATUS UPDATE FLAG
  9313. SHN 0-12
  9314. LPN 1
  9315. STM DSKA
  9316. LDD LA CHECK LOAD ADDRESS
  9317. LMC .FLFT
  9318. ZJN DSK1 IF LEFT SCREEN ADDRESS
  9319. LDD AB+3 SET RIGHT SCREEN ADDRESS
  9320. SCN 77
  9321. SHN 6
  9322. LMD AB+2
  9323. SHN 6
  9324. STD AB+4
  9325. SHN -14
  9326. STD AB+3
  9327. LDD HN SET RIGHT SCREEN
  9328. DSK1 STM DSKF SET RIGHT/LEFT SCREEN FLAG
  9329. LDD AB+3 CHECK CONTROL WORD ADDRESS
  9330. LPN 37
  9331. SHN 14
  9332. ADD AB+4
  9333. NJN DSK2 IF BUFFER ADDRESS DEFINED
  9334. AOD T1 SET TERMINATE FLAG IN *DTL*
  9335. DSK2 SHN -6 BUFFER ADDRESS/100B
  9336. SBD SR+4
  9337. MJN DSK3 IF BUFFER ADDRESS IN RANGE
  9338. AOD T1 SET TERMINATE FLAG IN *DTL*
  9339. LDN 0 CLEAR BUFFER ADDRESS
  9340. STD AB+3
  9341. STD AB+4
  9342. DSK3 RJM SMA SET MEMORY ADDRESS OF CONTROL WORD
  9343. SOD SR UPDATE COUNT LEFT TILL END OF FL
  9344. LDD T6 READ CM BUFFER CONTROL WORD
  9345. SHN 14
  9346. ADD T7
  9347. CRD AB
  9348. ADN 1
  9349. STD T7 SAVE DATA ADDRESS
  9350. SHN -14
  9351. STD T6
  9352. RJM DTL DISPLAY TITLE
  9353. LDN 7 WORD COUNT/LINE = 6
  9354. STD T3
  9355. LDN YINC INITIALIZE LINE SPACING
  9356. STD T2
  9357. LDM DCTY
  9358. NJN DSK4 IF THE CONSOLE IS NOT A *CC545*
  9359. LDD AB+1 CHECK THE ALTERNATE SPACING BIT
  9360. SHN 21-13
  9361. PJN DSK3.1 IF SINGLE SPACING REQUESTED
  9362. LDN YINC/2
  9363. RAD T2
  9364. DSK3.1 LDD AB CHECK THE SIZE BIT
  9365. LPN 2
  9366. ZJN DSK4 IF SMALL SIZE
  9367. RJM SMC SET MEDIMUM CHARACTER SIZE
  9368. LDN 4 WORD COUNT/LINE = 3
  9369. STD T3
  9370. LDD T2 DOUBLE THE LINE SPACING
  9371. RAD T2
  9372. DSK4 LDD T2 SET SPACING FOR CODED DISPLAYS
  9373. LMC LCNI
  9374. STM DSKD
  9375. LDM DCTY DETERMINE IF COORDINATE CHECKS TO BE MADE
  9376. ZJN DSK4.1 IF *CC545*
  9377. STM DSKE ENABLE THE STATUS UPDATE
  9378. LMD AB CHECK CODED/PROGRAM MODE
  9379. LPN 1
  9380. DSK4.1 STD T4
  9381. LDM RNWB,T4
  9382. STM RNWA
  9383. LDN 0 SET WORD COUNT
  9384. STD T2
  9385. LDM CTOS SET Y-COORDINATE
  9386. OAN CH+40
  9387. STD YC
  9388. LDD AB CHECK FORMAT
  9389. LPN 1
  9390. NJN DSK6 IF CODED FORMAT
  9391.  
  9392. * DISPLAY PROGRAM FORMAT.
  9393.  
  9394. DSK5 RJM RNW READ NEXT WORD
  9395. ZJN DSK7 IF END OF DATA
  9396. LDN 5 DISPLAY WORD
  9397. OAM CM,CH
  9398. UJN DSK5 DISPLAY NEXT WORD
  9399.  
  9400. * DISPLAY CODED FORMAT.
  9401.  
  9402. DSK6 RJM RNW READ NEXT WORD
  9403. DSK7 ZJN DSK12 IF END OF DATA
  9404. LDN 2 OUTPUT COORDINATES
  9405. OAM XC,CH
  9406. STD T4 CLEAR DISPLAY COUNT
  9407. DSK8 LDD CM+4 SAVE END OF WORD
  9408. STD T1
  9409. AOD T4 COUNT WORD DISPLAYED
  9410. SBD T3
  9411. MJN DSK8.1 IF NOT LAST WORD
  9412. NJN DSK9 IF FULL LINE DISPLAYED
  9413. STD CM+2 DISPLAY CHARACTERS 61-64
  9414. STD CM+3
  9415. STD CM+4
  9416. DSK8.1 RJM DWD DISPLAY WORD
  9417. DSK9 LDD T1
  9418. ZJN DSK10 IF END OF LINE
  9419. RJM RNW READ NEXT WORD
  9420. UJN DSK8 LOOP TO END OF LINE
  9421.  
  9422. DSK10 LCN YINC DECREMENT Y-COORDINATE
  9423. DSKD EQU *-1 (COORDINATE POSITIONS PER LINE)
  9424. RAD YC
  9425. ADC -Y545+YINC CHECK SCREEN BOTTOM FOR BOTH CONSOLE TYPES
  9426. PJN DSK6 IF NOT BOTTOM OF SCREEN
  9427.  
  9428. * SET DISPLAY STATUS.
  9429.  
  9430. DSK12 LDC 0 GET STATUS UPDATE FLAG
  9431. DSKA EQU *-1
  9432. NJN DSK13 IF NO STATUS UPDATE REQUIRED
  9433. DSKE LDD CY
  9434. * PSN 1 (IF NOT A *CC545*)
  9435. LPN 17
  9436. NJN DSK13 IF NOT TIME TO SET COMPLETE BIT
  9437. LDN SKCS SET *K* DISPLAY COMPLETE BIT
  9438. ADC 0 SET LEFT/RIGHT SCREEN FLAG
  9439. * ADC 100 RIGHT SCREEN
  9440. DSKF EQU *-1 LEFT/RIGHT SCREEN FLAG
  9441. STD CM+1
  9442. LDD CP SET CP ADDRESS OF JOB
  9443. STD CM+2
  9444. MONITOR DSRM REQUEST *MTR* TO SET COMPLETE BIT
  9445. DSK13 LJM DSKX RETURN
  9446. DTL SPACE 4,15
  9447. ** DTL - DISPLAY TITLE LINE.
  9448. *
  9449. * ENTRY (SR+1) = RA/100.
  9450. * (SR+4) = FL/100.
  9451. * (T1) = TERMINATE FLAG.
  9452. * 0 = CONTINUE PROCESSING.
  9453. * 1 = EXIT TO *DSKX*.
  9454. * (AB - AB+4) = LEFT OR RIGHT SCREEN CONTROL WORD.
  9455. *
  9456. * EXIT TO *DSKX* IF (T1) .NE. 0.
  9457. *
  9458. * USES T0, CM - CM+4.
  9459. *
  9460. * CALLS DWD.
  9461.  
  9462.  
  9463. DTL6 LDD T1
  9464. NJN DSK13 IF TERMINATING
  9465.  
  9466. DTL SUBR ENTRY/EXIT
  9467. LDD T1 CHECK TERMINATION FLAG
  9468. NJN DTL1 IF TERMINATING
  9469. LDD AB+1 CHECK FOR LEGAL ADDRESS
  9470. LPN 37
  9471. SHN 14
  9472. LMD AB+2
  9473. ZJN DTL1 IF *TBUF* = 0
  9474. ADN 1
  9475. SHN -6
  9476. SBD SR+4
  9477. PJN DTL1 IF *TBUF* .GE. FL
  9478. LDD AB+1 READ THE TITLE
  9479. LPN 37
  9480. SHN 6
  9481. ADD SR+1
  9482. SHN 6
  9483. ADD AB+2
  9484. CRD CM
  9485. LDD CM
  9486. NJN DTL4 IF (*TBUF*) .NE. 0
  9487. DTL1 LDD CP DETERMINE DEFAULT TITLE
  9488. ADK JCIW
  9489. CRD CM
  9490. LDD CM+2
  9491. SBK LSSI+1
  9492. PJN DTL6 IF SUBSYSTEM
  9493. LDD SR+1 GET PROGRAM NAME FROM (RA+*PGNR*)
  9494. SHN 6
  9495. ADK PGNR
  9496. CRD CM
  9497. LDD CM+3 CLEAR PARAMETER COUNT
  9498. SCN 77
  9499. STD CM+3
  9500. LDN 0
  9501. STD CM+4
  9502. LDN CM-1 APPEND PERIOD TO PROGRAM NAME
  9503. STD T0
  9504. DTL2 AOD T0
  9505. LDI T0
  9506. ZJN DTL3 IF END OF NAME
  9507. LPN 77
  9508. NJN DTL2 IF NOT END OF NAME
  9509. LDC 1R.&2R.
  9510. DTL3 LMC 2R.
  9511. RAI T0
  9512. DTL4 LDC CH05
  9513. OAN CH+40 SET X-COORDINATE
  9514. RJM DWD DISPLAY THE FIRST WORD
  9515. LDD CM+4
  9516. ZJN DTL5 IF ONLY ONE WORD
  9517. LDD AB+1
  9518. LPN 37
  9519. SHN 6
  9520. ADD SR+1
  9521. SHN 6
  9522. ADD AB+2
  9523. ADN 1
  9524. CRD CM
  9525. LDN 0
  9526. STD CM+3
  9527. STD CM+4
  9528. RJM DWD DISPLAY THE SECOND WORD
  9529. DTL5 LJM DTL6 RETURN
  9530.  
  9531. RNW SPACE 4,20
  9532. ** RNW - READ NEXT WORD.
  9533. *
  9534. * ENTRY (T6 - T7) = ABSOLUTE MEMORY ADDRESS.
  9535. * (T2) = COUNT OF WORDS READ.
  9536. * (SR) = COUNT TILL END OF FL
  9537. *
  9538. * EXIT (CM - CM+4) = NEXT WORD.
  9539. * (T2) UPDATED.
  9540. * (SR) UPDATED.
  9541. * (T6 - T7) UPDATED.
  9542. * (A) = 0, IF END OF DATA FOUND.
  9543. *
  9544. * ERROR TO *DSK11*, IF THE COUNT EXCEEDS 1000B OR
  9545. * READ PAST FL IS FOUND.
  9546. *
  9547. * USES SR, T0, T2, AB+3 - AB+4, CM - CM+4, T6 - T7.
  9548. *
  9549. * CALLS SMA.
  9550.  
  9551.  
  9552. RNW SUBR ENTRY/EXIT
  9553. SOD SR UPDATE COUNT TILL END OF FL
  9554. NJN RNW2 IF WITHIN FL
  9555. RNW1 LJM DSK12 PROCESS END OF DATA
  9556.  
  9557. RNW2 AOD T2 UPDATE READ COUNT
  9558. SHN -11
  9559. NJN RNW1 IF 1000B WORDS READ
  9560. LDD T6 GET MEMORY ADDRESS
  9561. SHN 14
  9562. ADD T7
  9563. CRD CM READ NEXT WORD
  9564. ADN 1 UPDATE MEMORY ADDRESS
  9565. STD T7
  9566. SHN -14
  9567. STD T6
  9568. LDD CM
  9569. ZJN RNWX IF END OF DATA WORD
  9570. LMC 7777
  9571. RNWA NJN RNWX IF NOT INDEX WORD
  9572. * NJN RNW3 (PROGRAM FORMAT REQUEST FOR A *CDC721*)
  9573. LDD CM+3 SET NEW MEMORY ADDRESS
  9574. STD AB+3
  9575. LDD CM+4
  9576. STD AB+4
  9577. ADD CM+3
  9578. ZJN RNW1 IF END OF CHAIN
  9579. RJM SMA SET ABSOLUTE MEMORY ADDRESS
  9580. UJN RNW2 PROCESS NEXT READ
  9581.  
  9582. RNW3 LDN CM CHECK Y-COORDINATES
  9583. STD T0
  9584. RNW4 LDI T0
  9585. ADC -LN51
  9586. MJN RNW6 IF BYTE IS NOT A Y-COORDINATE
  9587. ADK -LN46+LN51
  9588. MJN RNW5 IF Y-COORDINATE IS IN THE TRAILER AREA
  9589. ADK -LN05-1+LN46
  9590. MJN RNW6 IF Y-COORDINATE IS NOT IN THE HEADER AREA
  9591. RNW5 LDC BL01 FORCE Y-COORDINATE TO FIRST LINE OF BODY
  9592. STI T0
  9593. RNW6 AOD T0
  9594. SBN CM+5
  9595. MJN RNW4 IF MORE BYTES TO CHECK
  9596. LDN 1 DATA FOUND
  9597. LJM RNWX RETURN
  9598.  
  9599.  
  9600. RNWB BSS 0
  9601. LOC RNWA
  9602. NJN RNWX IF NOT INDEX WORD
  9603. LOC RNWA
  9604. NJN RNW3 IF NOT INDEX WORD
  9605. LOC *O
  9606. SMA SPACE 4,15
  9607. ** SMA - SET MEMORY ADDRESS.
  9608. *
  9609. * ENTRY (AB+3 - AB+4) = RELATIVE ADDRESS.
  9610. * (SR+2 - SR+3) = RA/100B.
  9611. * (SR+4) = FL/100B.
  9612. *
  9613. * EXIT (T6 - T7) = ABSOLUTE ADDRESS.
  9614. * (SR) = COUNT UNTIL END OF FL.
  9615. * (SR+1) = RA/100B IF NOT CME.
  9616. * = 4000B IF CME.
  9617. *
  9618. * ERROR TO *DSK12*, IF ADDRESS IS OUTSIDE OF FL.
  9619. *
  9620. * USES SR, SR+1, T0, T7, T2 - T6.
  9621.  
  9622.  
  9623. SMA SUBR ENTRY/EXIT
  9624. LDD AB+3 GET RELATIVE ADDRESS
  9625. LPN 37
  9626. SHN 14
  9627. ADD AB+4
  9628. SHN -6 RELATIVE ADDRESS/100B
  9629. STD SR
  9630. LDD SR+3
  9631. STD SR+1
  9632. LDM. CMEI
  9633. ZJN SMA1 IF NOT CENTRAL MEMORY EXTENSION
  9634. LRD SR+2 (R) = REFERENCE ADDRESS
  9635. LDC 4000
  9636. STD SR+1
  9637. SMA1 LDD SR+4
  9638. SBD SR
  9639. MJN SMA2 IF INCORRECT ADDRESS
  9640. NJN SMA3 IF VALID ADDRESS
  9641. SMA2 LJM DSK12 PROCESS END OF DATA
  9642.  
  9643. SMA3 STD SR
  9644. SBN 21
  9645. MJN SMA4 IF WITHIN 2000B WORDS OF FL
  9646. LDC 1001 SET COUNT
  9647. STD SR
  9648. UJN SMA5 FORM ADDRESS
  9649.  
  9650. SMA4 LDD AB+4 FORM COUNT
  9651. LPN 77
  9652. STD T0
  9653. LDD SR
  9654. SHN 6
  9655. SBD T0
  9656. STD SR
  9657. SMA5 LDD AB+3 FORM ABSOLUTE ADDRESS
  9658. LPN 37
  9659. SHN 6
  9660. ADD SR+1
  9661. SHN 6
  9662. ADD AB+4
  9663. STD T7
  9664. SHN -14
  9665. STD T6
  9666. LJM SMAX RETURN
  9667. SMC SPACE 4,10
  9668. ** SMC - SET MEDIMUM CHARACTER SIZE
  9669.  
  9670.  
  9671. SMC SUBR ENTRY/EXIT
  9672. FJM *,CH
  9673. DCN CH+40
  9674. LDD LA CHECK SCREEN
  9675. LMC .FLFT
  9676. ZJN SMC1 IF LEFT SCREEN
  9677. LDD HN SET RIGHT SCREEN
  9678. ERRNZ SLMF+100-SRMF CODE DEPENDS ON VALUE
  9679. SMC1 LMC SLMF SELECT MEDIUM CHARACTERS
  9680. CFNC
  9681. UJN SMCX RETURN
  9682. SPACE 4,10
  9683. DSPEND
  9684. DISPLAY (DISPLAY L - CENTRAL PROGRAM BUFFER.)
  9685. ENTRY DSL,D
  9686. SPACE 4,10
  9687. *** *L* DISPLAY.
  9688. *
  9689. * DISPLAY DATA FROM CMR BUFFER.
  9690.  
  9691.  
  9692. DSL SUBR ENTRY/EXIT
  9693. DISPHD (L. ) DISPLAY SCREEN NAME
  9694. * LDN 0 STORE *L* DISPLAY ACTIVE FLAG
  9695. STM. /COMDSYS/SYSB
  9696. LDM. /COMDSYS/SYSC READ *L* DISPLAY CONTROL WORD
  9697. LPN 77
  9698. STD CM+3
  9699. SHN 14
  9700. LMM. /COMDSYS/SYSC+1
  9701. STD CM+4
  9702. CRD AB
  9703. ADN LCOM+1
  9704. STD T7 SAVE DATA ADDRESS
  9705. SHN -14
  9706. STD T6
  9707. LDD AB+4
  9708. SHN 21-3
  9709. PJN DSL1 IF NO DATA TO DISPLAY
  9710. SHN 21-0-21+3
  9711. PJN DSL2 IF *L* DISPLAY REQUESTED
  9712. LDN 0 CLEAR *L* DISPLAY REQUESTED FLAG
  9713. STD CM+2
  9714. LDN 2
  9715. STD CM+1 STORE WORD COUNT OF OPTIONS
  9716. LDD MA
  9717. CWM DSLB,CM+1
  9718. MONITOR UTEM
  9719. LDD CM+1
  9720. ZJN DSL2 IF VERIFICATION PASSED
  9721. DSL1 DISPLA ,,(DISPLAY NOT ACTIVE.)
  9722. DISPLA CH01,LN07,(L DISPLAY NOT ACTIVE)
  9723. LJM DSLX RETURN
  9724.  
  9725. DSL2 LDD T6 DISPLAY THE REST OF THE TITLE
  9726. SHN 14
  9727. LMD T7
  9728. ADK LDSY+2
  9729. CRD CM
  9730. RJM DWD DISPLAY WORD
  9731. LDD CM+4
  9732. ZJN DSL2.1 IF THIS IS A ONE WORD TITLE
  9733. LDD T6
  9734. SHN 14
  9735. LMD T7
  9736. ADK LDSY+3
  9737. CRD CM
  9738. RJM DWD DISPLAY WORD
  9739. DSL2.1 LDD AB+4 CHECK FOR INPUT REQUESTED
  9740. LPN 20
  9741. ZJN DSL3 IF INPUT NOT REQUESTED
  9742. LDC 0 (*L.* NOT PROCESSED)
  9743. * LDC 2 (*L.* PROCESSED)
  9744. DSLA EQU *-1
  9745. NJN DSL4 IF *L.* ALREADY PROCESSED
  9746. LDD KI
  9747. ADD KE
  9748. NJN DSL4 IF KEYBOARD ACTIVE
  9749. LDN 1RL SET *L.* INTO *KBUF*
  9750. STM KBUF
  9751. LDN 1R.
  9752. STM KBUF+1
  9753. LDN 2 ADJUST KEYBOARD INDEX
  9754. STD KI
  9755. DSL3 STM DSLA
  9756. DSL4 LDN 7 WORD COUNT/LINE=6
  9757. STD T3
  9758. LDN YINC INITIALIZE LINE SPACING
  9759. STD T4
  9760. LDM DCTY
  9761. NJN DSL5 IF THE CONSOLE IS NOT A *CC545*
  9762. LDD AB+4 CHECK THE ALTERNATE SPACING BIT
  9763. SHN 21-6
  9764. PJN DSL4.1 IF SINGLE SPACING REQUESTED
  9765. LDN YINC/2
  9766. RAD T4
  9767. DSL4.1 LDD AB+4 CHECK THE SIZE BIT
  9768. LPN 4
  9769. ZJN DSL5 IF SMALL CHARACTER SIZE
  9770. RJM SMS SET MEDIUM CHARACTER SIZE
  9771. LDN 4
  9772. STD T3
  9773. LDD T4 DOUBLE THE LINE SPACING
  9774. RAD T4
  9775. DSL5 LDD T4 SET SPACING FOR CODED DISPLAYS
  9776. LMC LCNI
  9777. STM DSLC
  9778. LDM DCTY DETERMINE IF COORDINATE CHECKS TO BE MADE
  9779. ZJN DSL5.1 IF *CC545*
  9780. LMD AB CHECK CODED/PROGRAM MODE
  9781. LPN 1
  9782. DSL5.1 STD T4
  9783. LDM RNWB,T4
  9784. STM RNWA
  9785. LDM CTOS SET Y-COORDINATE
  9786. OAN CH+40
  9787. STD YC
  9788. LDD AB+4 CHECK FORMAT
  9789. LPN 2
  9790. NJN DSL7 IF CODED FORMAT
  9791.  
  9792. * DISPLAY PROGRAM FORMAT
  9793.  
  9794. DSL6 RJM RNW READ NEXT WORD
  9795. ZJN DSL8 IF END OF DATA
  9796. LDN 5 DISPLAY WORD
  9797. OAM CM,CH
  9798. UJN DSL6 DISPLAY NEXT WORD
  9799.  
  9800. * DISPLAY CODED FORMAT.
  9801.  
  9802. DSL7 RJM RNW READ NEXT WORD
  9803. DSL8 ZJN DSL13 IF END OF DATA
  9804. LDN 2 OUTPUT COORDINATES
  9805. OAM XC,CH
  9806. STD T4 CLEAR DISPLAY COUNT
  9807. DSL9 LDD CM+4 SAVE LAST BYTE
  9808. STD T1
  9809. AOD T4 COUNT WORD DISPLAYED
  9810. SBD T3
  9811. MJN DSL9.1 IF NOT LAST WORD
  9812. NJN DSL10 IF FULL LINE DISPLAYED
  9813. STD CM+2 DISPLAY CHARACTERS 61-64
  9814. STD CM+3
  9815. STD CM+4
  9816. DSL9.1 RJM DWD DISPLAY WORD
  9817. DSL10 LDD T1
  9818. ZJN DSL11 IF END OF LINE
  9819. RJM RNW READ NEXT WORD
  9820. UJN DSL9 LOOP TO END OF FILE
  9821.  
  9822. DSL11 LCN YINC DECREMENT Y-COORDINATE
  9823. DSLC EQU *-1 (COORDINATE POSITIONS PER LINE)
  9824. RAD YC
  9825. ADC -Y545+YINC CHECK SCREEN BOTTOM FOR BOTH CONSOLE TYPES
  9826. PJN DSL7 IF NOT BOTTOM OF SCREEN
  9827. DSL13 LJM DSLX RETURN
  9828. DSLB SPACE 4,10
  9829. * *UTEM* MONITOR FUNCTION BUFFER.
  9830.  
  9831. DSLB VFD 1/1,5/0,6/1,6/0,6/0 VERIFY *L* DISPLAY REQUESTED
  9832. CON 0,0,1
  9833. VFD 1/0,5/0,6/1,6/0,6/0 CLEAR *L* DISPLAY REQUESTED
  9834. CON 0,0,0
  9835. RNW SPACE 4,10
  9836. ** RNW - READ NEXT WORD.
  9837. *
  9838. * ENTRY (T6 - T7) = ABSOLUTE ADDRESS.
  9839. *
  9840. * EXIT (CM - CM+4) = NEXT WORD.
  9841. * (T6 - T7) UPDATED.
  9842. * (A) = 0, IF END OF DATA FOUND.
  9843. *
  9844. * USES T0, T6, T7, CM - CM+4.
  9845.  
  9846.  
  9847. RNW SUBR ENTRY/EXIT
  9848. LDD T6 GET MEMORY ADDRESS
  9849. SHN 14
  9850. LMD T7
  9851. CRD CM READ NEXT WORD
  9852. AOD T7 UPDATE MEMORY ADDRESS
  9853. SHN -14
  9854. RAD T6
  9855. LDD CM
  9856. RNWA UJN RNWX IF NOT INDEX WORD
  9857. * ZJN RNWX (PROGRAM FORMAT REQUEST FOR A *CDC721*)
  9858. LDN CM CHECK Y-COORDINATES
  9859. STD T0
  9860. RNW1 LDI T0
  9861. ADC -LN51
  9862. MJN RNW3 IF BYTE IS NOT A Y-COORDINATE
  9863. ADK -LN46+LN51
  9864. MJN RNW2 IF Y-COORDINATE IS IN THE TRAILER AREA
  9865. ADK -LN05-1+LN46
  9866. MJN RNW3 IF Y-COORDINATE IS NOT IN THE HEADER AREA
  9867. RNW2 LDC BL01 FORCE Y-COORDINATE TO FIRST LINE OF BODY
  9868. STI T0
  9869. RNW3 AOD T0
  9870. SBN CM+5
  9871. MJN RNW1 IF MORE BYTES TO CHECK
  9872. LDN 1 DATA FOUND
  9873. LJM RNWX RETURN
  9874.  
  9875.  
  9876. RNWB BSS 0
  9877. LOC RNWA
  9878. UJN RNWX IF NOT INDEX WORD
  9879. LOC RNWA
  9880. ZJN RNWX IF NOT INDEX WORD
  9881. LOC *O
  9882. SMS SPACE 4,10
  9883. ** SMS - SET MEDIUM CHARACTER SIZE.
  9884.  
  9885.  
  9886. SMS SUBR ENTRY/EXIT
  9887. FJM *,CH
  9888. DCN CH+40
  9889. LDD LA CHECK IF LEFT SCREEN
  9890. LMC .FLFT
  9891. ZJN SMS1 IF LEFT SCREEN
  9892. LDD HN SELECT RIGHT SCREEN
  9893. ERRNZ SLMF+100-SRMF CODE DEPENDS ON VALUE
  9894. SMS1 LMC SLMF SELECT MEDIUM CHARACTERS
  9895. CFNC
  9896. UJN SMSX RETURN
  9897.  
  9898. QUAL
  9899. DSLA EQU /DSD"M."/DSLA
  9900. QUAL *
  9901. SPACE 4,10
  9902. DSPEND
  9903. DISPLAY (DISPLAY M - EXTENDED MEMORY DISPLAY.),AMF
  9904. ENTRY DSM,DSM
  9905. DSM SPACE 4,10
  9906. *** *M* DISPLAY.
  9907. *
  9908. * DISPLAY EXTENDED MEMORY IN 5 GROUPS OF 4 DIGITS WITH
  9909. * DISPLAY CODE TRANSLATION.
  9910.  
  9911.  
  9912. EMRA EQU 2 - 3 EM RAE (IN WORDS)
  9913. EMFL EQU 4 - 5 EM FIELD LENGTH (IN WORDS)
  9914.  
  9915. DSM SUBR ENTRY/EXIT
  9916. DISPHD ("MHDR"),/DSD/TJMM+1
  9917. LDC SHNI+22-3 PRESET SHIFT INSTRUCTIONS
  9918. ADM UESC
  9919. STM DSMF
  9920. STM DSMG
  9921. LDC EDBP
  9922. CRD SH
  9923. LDD SH
  9924. ADD SH+1
  9925. NJN DSM1 IF EXTENDED MEMORY DEFINED
  9926. DISPLA CH01,LN08,(EXTENDED MEMORY UNDEFINED.)
  9927. DSM0 UJN DSMX RETURN
  9928.  
  9929. DSM1 LDD SF SET SECURE FLAG (LOCAL)
  9930. STD T8
  9931. LDD LK
  9932. SHN -1
  9933. ZJN DSM2 IF NOT SECURE UNLOCK
  9934. LDN 0 CLEAR SECURE FLAG
  9935. STD T8
  9936. DSM2 LDC /DSD/TJMM+1 SEARCH FOR JSN IN EST
  9937. RJM SJS
  9938. MJN DSM0 IF JOB NOT AT CP OR JSN UNUSED
  9939. LDM CTOS INITIALIZE LINE NUMBER
  9940. SBN YINC
  9941. STD YC
  9942. OAN CH+40
  9943. LDN 2 SET (T9) FOR 2 OR 4 GROUPS OF DISPLAY DATA
  9944. SBM DCTY
  9945. SHN 2
  9946. STD T9
  9947.  
  9948. * SET EXTENDED MEMORY EQUIPMENT.
  9949.  
  9950. LDD CP
  9951. NJP DSM5 IF CP RELATIVE MEMORY DISPLAY
  9952. LDK MMFL LINK DEVICE IS DEFAULT
  9953. CRD CM
  9954. LDD CM+1
  9955. LPC 777
  9956. NJN DSM3 IF LINK DEVICE DEFINED
  9957. LDK EXML GET EM EQUIPMENT WITH CPU ACCESS
  9958. CRD CM
  9959. LDD CM+4
  9960. LPC 777
  9961. ZJN DSM4 IF NO EM EQUIPMENT DEFINED
  9962. DSM3 STD T5
  9963. LDK MEFL
  9964. CRD CM
  9965. LDD CM+2 CALCULATE SHIFT COUNT
  9966. SHN -5
  9967. LPN 3
  9968. ADD TH
  9969. ERRNZ SHNI-1000
  9970. STM DSMH
  9971. LDD CM+3
  9972. SHN 0
  9973. * SHN (EMBS/1000B)-1
  9974. DSMH EQU *-1
  9975. SHN 21-2
  9976. STM EMFL
  9977. SHN 14
  9978. SCN 77
  9979. STM EMFL+1
  9980. LDN 0
  9981. UJN DSM6 SET ABSOLUTE RAE
  9982.  
  9983. DSM4 LDD NC USE SYSTEM CP RAE, FLE
  9984. SHN 7
  9985. DSM5 ADN ECSW READ EXTENDED MEMORY STATUS WORD
  9986. CRD CM
  9987. LDD CM+4 SET EM FIELD LENGTH
  9988. NJN DSM5.1 IF USER EM PRESENT
  9989. DISPLA CH01,LN08,(USER EM NOT ASSIGNED.)
  9990. LJM DSMX RETURN
  9991.  
  9992. DSM5.1 SHN 22-3
  9993. * SHN 22-3+UESC
  9994. DSMF EQU *-1
  9995. STM EMFL
  9996. SHN -6
  9997. SCN 77
  9998. STM EMFL+1
  9999. LDD CM+2 SET EM RA (RAE) IN WORDS
  10000. SHN 14
  10001. LMD CM+3
  10002. DSMG SHN 22-3
  10003. * SHN 22-3+UESC
  10004. DSM6 STM EMRA
  10005. SHN -6
  10006. SCN 77
  10007. STM EMRA+1
  10008. LDC EFRL READ FLAG REGISTER
  10009. CRD CM
  10010. LDD CM+3
  10011. SHN 21-13
  10012. MJN DSM7 IF NO FLAG REGISTER TO DISPLAY
  10013. DISPLA CH01,,(FLAG REGISTER =)
  10014. LDD CM+3 DISPLAY FLAG REGISTER
  10015. RJM D2D
  10016. LDD CM+4
  10017. RJM D4D
  10018. DSM7 LDC. DSMD SET ADDRESS OF ERROR STATUS WORDS
  10019. STD T3
  10020. LDN 0 PRESET INDEX INTO BUFFER
  10021. STD T4
  10022. LDD T9 PRESET LAST INDEX-INTO-BUFFER + 1
  10023. SHN -1
  10024. STD T5
  10025. SOM DSMC CHECK REREAD COUNTER
  10026. MJN DSM8 IF TIME TO REREAD
  10027. LJM DSM14 CHECK TIME AND DISPLAY
  10028.  
  10029. DSM8 LDC TDSM ADDRESS TABLE
  10030. STD T7
  10031. ADD T9 SET END OF TABLE
  10032. STD T2
  10033. LDI T7
  10034. SHN -13
  10035. LMN 1
  10036. ADD CP
  10037. NJN DSM8.1 IF NOT ABSOLUTE OVERLAY WITH POSITIVE FWA
  10038. RJM RES
  10039. DSM8.1 LDN 0
  10040. STD AB
  10041. STD AB+2
  10042. LDD TH SET NUMBER OF WORDS IN EACH GROUP = 10
  10043. STD AB+1
  10044. DSM9 LDM EMFL
  10045. NJN DSM10 IF EXPANDED MODE ADDRESSING
  10046. LDI T7
  10047. LPC 777
  10048. STI T7
  10049. DSM10 LDI T7
  10050. STD AB+3
  10051. AOD T7
  10052. LDI T7
  10053. STD AB+4
  10054. LDD CP
  10055. ZJN DSM11 IF ABSOLUTE DISPLAY
  10056. LDM EMRA+1 ADD RAE TO ADDRESS
  10057. RAD AB+4
  10058. SHN -14
  10059. ADM EMRA
  10060. RAD AB+3
  10061. DSM11 LDD SH
  10062. SHN 14
  10063. LMD SH+1
  10064. ADD T4
  10065. CWD AB WRITE ADDRESS LIST
  10066. AOD T4
  10067. AOD T7
  10068. LMD T2
  10069. NJN DSM9 IF NOT END OF ADDRESS TABLE
  10070. LDD SH+1 SET LIST ADDRESS IN *ECSM* REQUEST
  10071. STD CM+2
  10072. LDD T9 SET NUMBER OF ENTRIES IN LIST = 4 (OR 2)
  10073. SHN -1+6
  10074. ADD SH
  10075. STD CM+1
  10076. LDD CP
  10077. ZJN DSM12 IF ABSOLUTE EXTENDED MEMORY DISPLAY
  10078. LDN 2 INDICATE READ FROM USER EXTENDED MEMORY
  10079. DSM12 ADN /CPS/PELS*10 SET *ECSM* READLIST SUBFUNCTION
  10080. SHN 6
  10081. STD CM+3
  10082. MONITOR ECSM READ EXTENDED MEMORY
  10083. LDD T9
  10084. LPN 10
  10085. STM DSMC RESET COUNTER = 10 (OR 0)
  10086. LDD T9
  10087. SHN -1
  10088. SBN 1
  10089. STM DSMA
  10090. DSM13 SOD T4 READ ERROR RESPONSE
  10091. LDD SH
  10092. SHN 14
  10093. LMD SH+1
  10094. ADD T4
  10095. CRD CM
  10096. LDD CM+4
  10097. STM 0,T3
  10098. DSMA EQU *-1
  10099. SOM DSMA
  10100. PJN DSM13 IF NOT END OF TABLE
  10101. DSM14 LDN 0 TABLE INDEX
  10102. STD T6
  10103. LCN 2*YINC
  10104. RAD YC
  10105. DSM15 LDN 1 SET ERROR FLAG MASK
  10106. STD T4
  10107. LDI T3 SET ERROR BITS
  10108. STM DSMB
  10109. LDM TDSM,T6 EXTENDED MEMORY ADDRESS
  10110. STD AB
  10111. LDM TDSM+1,T6
  10112. STD AB+1
  10113. DSM16 LCN YINC
  10114. RAD YC
  10115. LDD T4 CHECK FOR EXTENDED MEMORY ERROR
  10116. LPC 1
  10117. DSMB EQU *-1
  10118. ZJN DSM17 IF NO ERROR ON THIS WORD
  10119. CFNC BIVF
  10120. SHN 1-21
  10121. LPN 2
  10122. DSM17 STD T2 SET INTENSIFICATION COUNT
  10123. LDN 2 OUTPUT COORDINATES
  10124. OAM XC,CH
  10125. LDD AB DISPLAY ADDRESS
  10126. RJM D4D
  10127. LDD AB+1
  10128. RJM D4D
  10129. LDD T8
  10130. ZJN DSM19 IF OKAY TO DISPLAY EXTEMDED ME
  10131. LDD AB
  10132. NJN DSM18 IF ADDRESS IN SECURED AREA
  10133. LDC 2000B
  10134. SBD AB+1
  10135. PJN DSM19 IF ADDRESS NOT IN SECURED AREA
  10136. DSM18 LDN DSMJL
  10137. OAM DSMJ,CH DISPLAY SECURITY BLANKET
  10138. LDN DSMEL
  10139. OAM DSME,CH
  10140. UJN DSM20 CONTINUE
  10141.  
  10142. DSM19 LDD SH FETCH WORD FROM BUFFER
  10143. SHN 14
  10144. LMD SH+1
  10145. ADD T5
  10146. CRD CM
  10147. RJM D5F DISPLAY WORD
  10148. DSM20 SOD T2
  10149. PJP DSM17 IF MORE INTENSIFICATION NEEDED
  10150. AOD AB+1 INCREMENT ADDRESS
  10151. SHN -12D
  10152. RAD AB
  10153. CFNC EIVF
  10154. AOD T5
  10155. LDD T4 SHIFT MASK
  10156. SHN 1
  10157. STD T4
  10158. SHN -10
  10159. NJN DSM21 IF END OF GROUP
  10160. LJM DSM16 LOOP
  10161.  
  10162. DSM21 LCN YINC
  10163. RAD YC
  10164. AOD T3 ADVANCE ERROR WORD POINTER
  10165. LDN 2
  10166. RAD T6
  10167. LMD T9
  10168. ZJN DSM22 IF END OF DISPLAY
  10169. LJM DSM15 LOOP TO NEXT GROUP
  10170.  
  10171. DSM22 LJM DSMX EXIT
  10172.  
  10173.  
  10174. DSMC CON 0
  10175. DSMD BSS 4 ERROR INDICATION TEMPORARIES
  10176. DSME DATA H$ SECURED AREA$
  10177. DSMJ DATA H$ **********$
  10178. DSMJL EQU *-DSMJ
  10179. DSMEL EQU *-DSME
  10180.  
  10181. * DEFINE SYMBOLS FOR USE BY *EEC*.
  10182.  
  10183. QUAL
  10184. EMRA EQU /DSD"M."/EMRA
  10185. EMFL EQU /DSD"M."/EMFL
  10186. QUAL *
  10187. SPACE 4,10
  10188. DSPEND
  10189. DISPLAY (DISPLAY O - TRANSACTION STATUS TABLE.),POD
  10190. ENTRY DSO,D
  10191. DSO SPACE 4,10
  10192. *** *O,TST* DISPLAY.
  10193. *
  10194. * EXAMPLE.
  10195. *
  10196. * 1 2 3 4 5 6
  10197. * 1234567890123456789012345678901234567890123456789012345678901234
  10198. * TERMINALS = 313.
  10199. *
  10200. * NUMBER NAME DB STATUS USER AREA ACN COUNT
  10201. * 120 AAAAAAA SS -L--R--I--- 12345670 1234 1234
  10202.  
  10203.  
  10204. VTST EQU 12 ADDRESS OF TERMINAL TABLE POINTER
  10205.  
  10206. DSO SUBR ENTRY/EXIT
  10207. DISPHD (O,TST. TAF TERMINALS.)
  10208. LDM. CMEI
  10209. ZJN DSO1 IF CME NOT PRESENT
  10210. STM DSOA FORCE READ OF *FLSW*+1
  10211. DSO1 LDC TRSI FIND *TAF*
  10212. RJM FSS
  10213. NJN DSO3 IF *TAF* ACTIVE
  10214. DSO2 DISPLA CH01,LN08,(NOT ACTIVE)
  10215. UJN DSOX RETURN
  10216.  
  10217. DSO3 SHN 7
  10218. DSOA ADN FLSW
  10219. * ADN FLSW+1 (CME PRESENT)
  10220. CRD AB
  10221. LRD AB+1
  10222. LDD AB+3 READ TABLE POINTER
  10223. SHN 6
  10224. ADN VTST
  10225. CRD T3
  10226. LDD T4
  10227. ADD T5
  10228. ZJN DSO2 IF *TAF* IDLE
  10229. LDM CTOS INITIALIZE LINE NUMBER
  10230. OAN CH+40
  10231. SBN 2*YINC
  10232. STM DSOC+2
  10233. STD YC
  10234. DISPLA CH01,,(TERMINALS = )
  10235. LDD T6 FIND NUMBER OF TERMINALS
  10236. SBD T4
  10237. SHN 14
  10238. ADD T7
  10239. SBD T5
  10240. ADN 2
  10241. SHN -1
  10242. SBN 1
  10243. STD T7 TERMINAL COUNT
  10244. RJM D4S DISPLAY NUMBER OF TERMINALS
  10245. LDN DSOCL
  10246. OAM DSOC,CH
  10247. LDD AB+3 SAVE RA
  10248. STD T6
  10249. LDM TDSO SET FIRST TERMINAL
  10250. STD T3
  10251. SHN 1
  10252. RAD T5
  10253. SHN -14
  10254. RAD T4
  10255. LCN 2*YINC SET Y-COORDINATE
  10256. RAD YC
  10257. OAN CH+40
  10258.  
  10259. * DISPLAY TERMINAL STATUS.
  10260.  
  10261. DSO4 LDD XC OUTPUT X-COORDINATE
  10262. OAN CH+40
  10263. LDD T4 READ TERMINAL ENTRY
  10264. SHN 6
  10265. ADD T6
  10266. SHN 6
  10267. ADD T5
  10268. CRD AB
  10269. ADN 1
  10270. CRD CM
  10271. CRD SR
  10272. LDD T3 DISPLAY TERMINAL NUMBER
  10273. RJM D4S
  10274. LDN 0 DISPLAY TERMINAL NAME
  10275. STD CM+4
  10276. LDD CM+3
  10277. SCN 77
  10278. STD CM+3
  10279. LDC CH09
  10280. OAN CH+40
  10281. LDN 5
  10282. OAM CM,CH
  10283. LDD AB+2 DISPLAY DATA BASE NAME
  10284. OAN CH+40
  10285. LDC CH24
  10286. OAN CH+40
  10287. LDD SR+3 FORM LOWER 5 BITS FROM WORD 2
  10288. LPN 76
  10289. LMN 1 SET UNUSED BIT
  10290. STD CN
  10291. LDD AB FORM UPPER 6 BITS FROM WORD 1
  10292. LPC 7700
  10293. RAD CN
  10294. LDC. DSOB DISPLAY BIT STATUS
  10295. RJM DBS
  10296. LDC CH38
  10297. OAN CH+40
  10298. LDD AB+3 DISPLAY USER AREA
  10299. RJM D4D
  10300. LDD AB+4
  10301. RJM D4D
  10302. LDC CH49
  10303. OAN CH+40
  10304. LDD AB+1 DISPLAY APPLICATION CONNECTION NUMBER
  10305. SHN -6
  10306. SHN 14
  10307. ADD AB
  10308. SHN 6
  10309. LPC 7777
  10310. RJM D4S
  10311. LDD SR+4 DISPLAY NUMBER OF TRANSACTIONS
  10312. RJM D4S
  10313. AOD T3 ADVANCE TERMINAL NUMBER
  10314. SBD T7
  10315. ZJN DSO4.1 IF ONE MORE TERMINAL
  10316. PJN DSO6 IF END OF TERMINALS
  10317. DSO4.1 LDN 2 ADVANCE ENTRY ADDRESS
  10318. RAD T5
  10319. SHN -14
  10320. RAD T4
  10321. LCN YINC
  10322. RAD YC DECREMENT Y-COORDINATE
  10323. OAN CH+40
  10324. SBM CBOS
  10325. MJN DSO5 IF SCREEN FULL
  10326. LJM DSO4 LOOP FOR ANOTHER TERMINAL
  10327.  
  10328. DSO5 LDN MOREL OUTPUT *MORE* MESSAGE
  10329. OAM MORE,CH
  10330. LDD T3 SET STARTING TERMINAL FOR NEXT PAGE
  10331. DSO6 STM TDSO+1
  10332. LJM DSOX RETURN
  10333.  
  10334.  
  10335. DSOB CON 2RAL&2R--
  10336. CON 2R-C&2R--
  10337. CON 2RRT&2R--
  10338. CON 2RMI&2R--
  10339. CON 2RFP&2R--
  10340. CON 2RD &2R--
  10341. CON 0
  10342.  
  10343. DSOC CON CH17,2H.
  10344. CON T545-2*YINC,CH01
  10345. * CON T721-2*YINC,CH01
  10346. DATA H*NUMBER*
  10347. CON CH10
  10348. DATA H*NAME*
  10349. CON CH19
  10350. DATA H*DB*
  10351. CON CH26
  10352. DATA H*STATUS*
  10353. CON CH38
  10354. DATA H*USER AREA*
  10355. CON CH50
  10356. DATA H*ACN COUNT*
  10357. DSOCL EQU *-DSOC LENGTH OF HEADING
  10358. SPACE 4
  10359. ** COMMON DECKS.
  10360.  
  10361.  
  10362. *CALL COMDDBS
  10363. POD SPACE 4,10
  10364. ** POD - PAGE *O* DISPLAY.
  10365. *
  10366. * ENTRY (T2) = 0, IF PAGE FORWARD.
  10367. * = 1, IF PAGE BACKWARD.
  10368.  
  10369.  
  10370. POD BSS 0 ENTRY
  10371. LDD T2
  10372. NJN POD1 IF *-*
  10373. LDM TDSO+1
  10374. POD1 STM TDSO
  10375. LJM. /KEYBOARD/KBIX RETURN
  10376. SPACE 4,10
  10377. DSPEND
  10378. DISPLAY (DISPLAY O - SUBCONTROL POINT STATUS.),POD
  10379. ENTRY DTS,D
  10380. DTS SPACE 4,10
  10381. *** *O,SCP* DISPLAY.
  10382. *
  10383. * EXAMPLE.
  10384. *
  10385. * 1 2 3 4 5 6
  10386. * 1234567890123456789012345678901234567890123456789012345678901234
  10387. * SCP NAME RA FL NT USER RA+1 STATUS
  10388. *
  10389. * 1 ABCDEFG 111100 110000 0 ABCDEFG CIOP ------------
  10390. * 2
  10391.  
  10392.  
  10393. DTS SUBR ENTRY/EXIT
  10394. DISPHD (O,SCP. TAF SUBCONTROL PT.)
  10395. LDM. CMEI
  10396. ZJN DTS1 IF CME NOT PRESENT
  10397. STM DTSA FORCE READ OF FLSW+1
  10398. DTS1 LDC TRSI FIND *TAF*
  10399. RJM FSS
  10400. NJN DTS3 IF *TAF* IS ACTIVE
  10401. DTS2 DISPLA CH01,LN08,(NOT ACTIVE)
  10402. UJN DTSX RETURN
  10403.  
  10404. DTS3 SHN 7
  10405. DTSA ADN FLSW
  10406. * ADN FLSW+1 (CME PRESENT)
  10407. CRD AB
  10408. LRD AB+1
  10409. LDD AB+3 SET RA
  10410. STD T7
  10411. SHN 6
  10412. ADN VNSCP NUMBER OF SUB CONTROL POINTS
  10413. CRD CM
  10414. ADN VTST-VNSCP *TAF* IDLE FLAG
  10415. CRD AB
  10416. ADN VLSP-VTST LAST SUB CONTROL POINT
  10417. CRD T2
  10418. LDD AB+3
  10419. ADD AB+4
  10420. ZJN DTS2 IF *TAF* IS IDLE
  10421. LDD CM+2
  10422. STD T6
  10423. SHN 3
  10424. STD CM+2
  10425. LDD T3 COMPUTE ADDRESS OF FIRST SUBCONTROL POINT
  10426. SHN 6
  10427. ADD T7
  10428. SHN 6
  10429. ADD T4
  10430. SBD CM+2 ADDRESS OF FIRST SUBCONTROL POINT
  10431. STM DTSB+1
  10432. STM DTSC+1
  10433. SHN -14
  10434. ADC ADCI
  10435. STM DTSB
  10436. STM DTSC
  10437. LDD T7
  10438. SHN 6
  10439. ADN VTLD TASK LIBRARY DIRECTORY POINTER
  10440. CRD AB
  10441. LDD AB+1
  10442. STD T3
  10443. LDD AB+2
  10444. STD T4
  10445. LDM CTOS INITIALIZE LINE NUMBER
  10446. OAN CH+40
  10447. SBN 2*YINC
  10448. STD YC
  10449. LDN DTSEL DISPLAY HEADER
  10450. OAM DTSE,CH
  10451. LDM TDTS CURRENT INDEX
  10452. STD T5
  10453. DTS4 LDN 2 OUTPUT COORDINATES
  10454. OAM XC,CH
  10455. LDD T5
  10456. SHN 3 READ FIRST WORD OF SUBCONTROL POINT TABLE
  10457. DTSB ADC *
  10458. CRD AB
  10459. ADN 2 READ THIRD WORD OF SUBCONTROL POINT TABLE
  10460. CRD CM
  10461. LDD AB
  10462. SHN 21-6
  10463. PJN DTS5 IF NOT BATCH CONCURRENT JOB
  10464. LDD AB+3
  10465. LPN 77
  10466. SHN 6
  10467. ADD T7
  10468. SHN 6
  10469. ADD AB+4
  10470. ADC -NUAPL+BCTN GET BATCH CONCURRENT JOB NAME
  10471. CRD CM
  10472. UJN DTS6 DO NOT GET NAME FROM *TASKLIB* DIRECTORY
  10473.  
  10474. DTS5 BSS 0
  10475. LDD T3
  10476. SHN 6
  10477. ADD T7
  10478. SHN 6
  10479. ADD T4
  10480. ADD CM GET TASK NAME
  10481. SBN 1
  10482. CRD CM
  10483. LDD CM+3
  10484. SCN 77
  10485. STD CM+3
  10486. DTS6 BSS 0
  10487. LDD T5 DISPLAY SUBCONTROL POINT NUMBER
  10488. RJM D2S
  10489. LDD AB+3
  10490. SCN 77
  10491. ADD AB+2
  10492. NJN DTS7 IF SUBCONTROL POINT ACTIVE
  10493. LJM DTS9 ADVANCE SUBCONTROL POINT
  10494.  
  10495. DTS7 LDC CH06
  10496. OAN CH+40
  10497. LDN 4 DISPLAY TASK NAME
  10498. OAM CM,CH
  10499. * LDN 0
  10500. OAN CH+40 SKIP TWO SPACES
  10501. LDD T5
  10502. SHN 3
  10503. ADN 1 READ SECOND WORD OF SUBCONTROL POINT TABLE
  10504. DTSC ADC *
  10505. CRD CM
  10506. LDD AB+3
  10507. LPN 77
  10508. SHN 14
  10509. ADD AB+4 DISPLAY TASK RA
  10510. RJM D6S
  10511. LDD AB+3 DISPLAY TASK FL
  10512. SHN -6
  10513. STD T0
  10514. LDD AB+2
  10515. SHN 6
  10516. ADD T0
  10517. RJM D6S
  10518. LDD CM+1 DISPLAY NUMBER OF TASKS ACTIVE AT SUB CP
  10519. LPN 7
  10520. RJM D2S
  10521. LDC CH37
  10522. OAN CH+40
  10523. LDD AB SAVE STATUS BITS
  10524. SCN 77
  10525. STD CN
  10526. LDD CM
  10527. SHN -5
  10528. LPN 77
  10529. RAD CN
  10530. LDN ZERL BLANK TERMINAL NAME
  10531. CRD SR
  10532. LDD CM+3
  10533. LPN 77
  10534. ADD CM+4
  10535. ZJN DTS8 IF NO STATUS WORDS PRESENT
  10536. SBD CM+4
  10537. SHN 6
  10538. ADD T7
  10539. SHN 6
  10540. ADD CM+4
  10541. CRD CM READ STATUS WORD
  10542. LDD CM+3 GET ADDRESS OF USER NAME WORD
  10543. LPN 77
  10544. SHN 6
  10545. ADD T7
  10546. SHN 6
  10547. ADD CM+4
  10548. ADN CBWCW
  10549. CRD SR
  10550. LDD SR+3
  10551. SCN 77
  10552. STD SR+3
  10553. DTS8 LDN 4 DISPLAY USER NAME
  10554. OAM SR,CH
  10555. * LDN 0 SKIP TWO SPACES
  10556. OAN CH+40
  10557. LDD AB+3 GET ADDRESS OF LAST SYSTEM REQUEST CALL
  10558. LPN 77
  10559. SHN 6
  10560. ADD T7
  10561. SHN 6
  10562. ADD AB+4
  10563. ADC LRA1-NUAPL
  10564. CRD CM
  10565. LDN 2 DISPLAY LAST RA+1 CALL
  10566. OAM CM,CH
  10567. * LDN 0 SKIP TWO SPACES
  10568. OAN CH+40
  10569. LDC. DTSD DISPLAY BIT STATUS
  10570. RJM DBS
  10571. DTS9 AOD T5
  10572. SBD T6
  10573. ZJN DTS9.1 IF ONE MORE SUBCONTROL POINT
  10574. PJN DTS11 IF AT END OF SUBCONTROL POINTS
  10575. DTS9.1 LCN YINC
  10576. RAD YC DECREMENT Y-COORDINATE
  10577. SBM CBOS
  10578. MJN DTS10 IF SCREEN FULL
  10579. LJM DTS4 LOOP
  10580.  
  10581. DTS10 LDD YC DISPLAY MORE MESSAGE
  10582. OAN CH+40
  10583. LDN MOREL
  10584. OAM MORE,CH
  10585. LDD T5 SET FIRST SUBCONTROL POINT FOR NEXT PAGE
  10586. DTS11 STM TDTS+1
  10587. LJM DTSX RETURN
  10588.  
  10589.  
  10590.  
  10591. DTSD CON 2RSF&2R--
  10592. CON 2RLM&2R--
  10593. CON 2R-B&2R--
  10594. CON 2RUC&2R--
  10595. CON 2REA&2R--
  10596. CON 2RTD&2R--
  10597. CON 0
  10598.  
  10599. DTSE CON CH01 HEADER LINE
  10600. DATA H*SCP NAME*
  10601. CON CH19,2HRA
  10602. CON CH27,2HFL
  10603. CON CH32,2HNT
  10604. CON CH38
  10605. DATA H*USER*
  10606. CON CH47
  10607. DATA H*RA+1*
  10608. CON CH56
  10609. DATA H*STATUS*
  10610. DTSEL EQU *-DTSE LENGTH OF HEADING
  10611.  
  10612. BCTN EQU 113 BATCH CONCURRENCY JOB NAME IN NEGATIVE FL
  10613. NUAPL EQU 120 LENGTH OF NEGATIVE *FL*
  10614. VNSCP EQU 10 NUMBER OF SUB CONTROL POINTS
  10615. VTST EQU 12 TERMINAL STATUS TABLE
  10616. VLSP EQU 15 LAST SUB CONTROL POINT
  10617. VTLD EQU 22 TASK LIBRARY DIRECTORY
  10618. LRA1 EQU 32 LAST SYSTEM REQUEST CALL
  10619. CBWCW EQU 11D WORD COUNT OF INPUT DATA
  10620. SPACE 4
  10621. ** COMMON DECKS.
  10622.  
  10623.  
  10624. *CALL COMDDBS
  10625. POD SPACE 4,10
  10626. ** POD - PAGE *O* DISPLAY.
  10627. *
  10628. * ENTRY (T2) = 0, IF PAGE FORWARD.
  10629. * = 1, IF PAGE BACKWARD.
  10630.  
  10631.  
  10632. POD BSS 0 ENTRY
  10633. LDD T2
  10634. NJN POD1 IF *-*
  10635. LDM TDTS+1
  10636. POD1 STM TDTS
  10637. LJM. /KEYBOARD/KBIX RETURN
  10638. SPACE 4,10
  10639. DSPEND
  10640. DISPLAY (DISPLAY O - TASK LIBRARY DIRECTORY.),POD
  10641. ENTRY DTL,D
  10642. DTL SPACE 4,10
  10643. *** *O,TLD* DISPLAY.
  10644. *
  10645. * EXAMPLE.
  10646. *
  10647. * 1 2 3 4 5 6
  10648. * 1234567890123456789012345678901234567890123456789012345678901234
  10649. * LIBRARY = TAFLIB
  10650. *
  10651. * NUMBER NAME CALLED LOADED FL EFL STATUS
  10652. * 1234 ABCDEFG 123456 123456 2000 4000 --------
  10653. SPACE 4,10
  10654. *** ABBREVIATIONS.
  10655. *
  10656. * *TLD* = TASK LIBRARY DIRECTORY.
  10657.  
  10658.  
  10659. DTL SUBR ENTRY/EXIT
  10660. DISPHD (O,TLD. TAF TASK LIBRARY.)
  10661. LDM. CMEI
  10662. ZJN DTL1 IF CME NOT PRESENT
  10663. STM DTLA FORCE READ OF *FLSW*+1
  10664. DTL1 LDC TRSI FIND *TAF*
  10665. RJM FSS
  10666. NJN DTL3 IF *TAF* IS ACTIVE
  10667. DTL2 DISPLA CH01,LN08,(NOT ACTIVE)
  10668. UJN DTLX RETURN
  10669.  
  10670. DTL3 SHN 7
  10671. DTLA ADN FLSW
  10672. * ADN FLSW+1 (CME PRESENT)
  10673. CRD T4 (T7) = RA
  10674. LRD T4+1
  10675. LDD T7
  10676. SHN 6
  10677. ADN VTST *TAF* IDLE FLAG
  10678. CRD AB
  10679. ADN VTLD-VTST READ *TLD* ADDRESS
  10680. CRD T2
  10681. LDD AB+3
  10682. SHN 6
  10683. ADD AB+4
  10684. ZJN DTL2 IF *TAF* IS IDLE
  10685. LDD T3 READ FIRST *TLD* HEADER
  10686. SHN 6
  10687. ADD T7
  10688. SHN 6
  10689. ADD T4
  10690. SBN TLDLH
  10691. CRD CM
  10692. ADM TDTL+2 READ CURRENT *TLD* HEADER
  10693. CRD SR
  10694. ADN TLDLH-1 READ CURRENT LIBRARY NAME
  10695. CRD SH
  10696. LDD SH+3
  10697. SCN 77
  10698. STD SH+3
  10699. LDD CM+1
  10700. LPN 77B
  10701. SHN 14
  10702. LMD CM+2 LWA OF ALL *TLD*-S
  10703. SBD T4
  10704. STD SR TOTAL LENGTH OF ALL THE *TLD*-S
  10705. LDM CTOS INITIALIZE LINE NUMBER
  10706. OAN CH+40
  10707. SBN 2*YINC
  10708. STM DTLB
  10709. SBN YINC
  10710. STD YC
  10711. DISPLA CH01,,(LIBRARY = )
  10712. LDN 4
  10713. OAM SH,CH
  10714. LDN DTLBL OUTPUT COLUMN HEADINGS
  10715. OAM DTLB,CH
  10716. LDM TDTL CURRENT *TLD* ENTRY INDEX
  10717. STM TDTL+1 NEXT *TLD* ENTRY INDEX
  10718. SHN 1
  10719. ADM TDTL
  10720. ADM TDTL+2 CURRENT *TLD* LIBRARY OFFSET
  10721. STD T6 CURRENT *TLD* ENTRY OFFSET
  10722. DTL5 LDD T3 READ ENTRY
  10723. SHN 6
  10724. ADD T7
  10725. SHN 6
  10726. ADD T4
  10727. ADD T6 CURRENT OFFSET
  10728. CRD CM
  10729. LDD CM
  10730. NJN DTL9 IF NON-ZERO *TLD* ENTRY
  10731. LDM TDTL+2
  10732. ADD SR+4 LENGTH OF CURRENT LIBRARY DIRECTORY
  10733. STM TDTL+3 PAGE TO NEXT LIBRARY
  10734. SBD SR
  10735. MJN DTL7 IF NOT END OF *TLD*-S
  10736. DTL6 LDN 0
  10737. STM TDTL+3 RESET NEXT *TLD* LIBRARY OFFSET
  10738. DTL7 LDN 0
  10739. STM TDTL+1 RESET NEXT *TLD* ENTRY INDEX
  10740. DTL8 LJM DTLX RETURN
  10741.  
  10742. DTL9 LCN YINC DECREMENT Y-COORDINATE
  10743. RAD YC
  10744. OAN CH+40
  10745. SBM CBOS
  10746. PJN DTL10 IF NOT THE BOTTOM OF THE SCREEN
  10747. LDN MOREL OUTPUT *MORE*
  10748. OAM MORE,CH
  10749. LDM TDTL+2 PAGE TO SUBSEQUENT ENTRIES IN SAME LIBRARY
  10750. STM TDTL+3
  10751. UJN DTL8 RETURN
  10752.  
  10753. DTL10 LDD XC OUTPUT X-COORDINATE
  10754. OAN CH+40
  10755. AOM TDTL+1 DISPLAY TASK NUMBER
  10756. RJM D4S
  10757. LDN 0 SKIP TWO SPACES
  10758. OAN CH+40
  10759. LDD CM+3
  10760. SCN 77 CLEAR LAST TASK CHARACTER
  10761. STD CM+3
  10762. LDN 4 DISPLAY NAME
  10763. OAM CM,CH
  10764. * LDN 0 SKIP TWO SPACES
  10765. OAN CH+40
  10766. LDD T3
  10767. SHN 6
  10768. ADD T7 READ SECOND WORD OF *TLD* ENTRY
  10769. SHN 6
  10770. ADD T4
  10771. ADD T6
  10772. ADN 1
  10773. CRD CM
  10774. ADN 1 READ THIRD WORD OF *TLD* ENTRY
  10775. CRD AB
  10776. LDD AB+3 DISPLAY TIMES TASK HAS BEEN CALLED
  10777. SHN -6
  10778. STD T0
  10779. LDD AB+2
  10780. SHN 6
  10781. ADD T0
  10782. RJM D6S
  10783. LDN 0 SKIP TWO SPACES
  10784. OAN CH+40
  10785. LDD AB DISPLAY TIMES TASK HAS BEEN LOADED
  10786. LPN 77
  10787. SHN 14
  10788. ADD AB+1
  10789. RJM D6S
  10790. LDD CM+2 DISPLAY TASK FIELD LENGTH
  10791. LPN 77
  10792. SHN 14
  10793. ADD CM+3
  10794. SCN 77
  10795. RJM D6S
  10796. LDD CM+3 DISPLAY EXPANDABLE FIELD LENGTH
  10797. LPN 77
  10798. SHN 14
  10799. ADD CM+4
  10800. SCN 77
  10801. RJM D6S
  10802. LDN 0 SKIP TWO SPACES
  10803. OAN CH+40
  10804. LDD AB FORM STATUS BITS
  10805. LPC 3700 FORM UPPER 5 BITS
  10806. SHN 1
  10807. STD CN
  10808. LDD AB+3 FORM LOWER 3 BITS
  10809. LPN 70
  10810. SHN 6-5
  10811. RAD CN
  10812. LDC. DTLC GET ADDRESS OF LETTER TABLE
  10813. RJM DBS DISPLAY BIT STATUS
  10814. LDN TLDLE ADVANCE OFFSET TO NEXT ENTRY
  10815. RAD T6
  10816. SBD SR
  10817. MJP DTL5 IF NOT END OF *TLD*-S
  10818. DTL11 LJM DTL6 UPDATE PAGING AND RETURN
  10819.  
  10820.  
  10821. VTST EQU 12B TERMINAL STATUS TABLE
  10822. VTLD EQU 22B TASK LIBRARY POINTER WORD
  10823. TLDLH EQU 4 LENGTH OF TLD HEADER
  10824. TLDLE EQU 3 LENGTH OF TLD ENTRY
  10825.  
  10826.  
  10827. DTLB CON T545-2*YINC COLUMN HEADINGS
  10828. * CON T721-2*YINC
  10829. CON CH01
  10830. DATA H*NUMBER NAME*
  10831. CON CH19
  10832. DATA H*CALLED*
  10833. CON CH29
  10834. DATA H*LOADED*
  10835. CON CH40
  10836. DATA H*FL*
  10837. CON CH48
  10838. DATA H*EFL*
  10839. CON CH56
  10840. DATA H*STATUS*
  10841. DTLBL EQU *-DTLB LENGTH OF COLUMN HEADINGS
  10842.  
  10843. DTLC CON 2RUC&2R--
  10844. CON 2REO&2R--
  10845. CON 2RDS&2R--
  10846. CON 2RQR&2R--
  10847. CON 0
  10848. POD SPACE 4,10
  10849. ** POD - PAGE *O* DISPLAY.
  10850. *
  10851. * ENTRY (T2) = 0, IF PAGE FORWARD.
  10852. * 1, IF PAGE BACKWARD.
  10853. *
  10854. * USES T1.
  10855.  
  10856.  
  10857. POD BSS 0 ENTRY
  10858. LDM TDTL+3 ADVANCE MULTIPLE DIRECTORY INDEX
  10859. STM TDTL+2
  10860. LDD T2
  10861. LMN 1
  10862. ZJN POD1 IF *-*
  10863. LDM TDTL+1 ADVANCE DIRECTORY INDEX
  10864. POD1 STM TDTL
  10865. LJM. /KEYBOARD/KBIX RETURN
  10866. SPACE 4,10
  10867. ** COMMON DECKS.
  10868.  
  10869.  
  10870. *CALL COMDDBS
  10871. SPACE 4,10
  10872. DSPEND
  10873. TTL DSD/P DISPLAY SKELETON.
  10874. EJECT
  10875. LIST E
  10876. .MODEL ECHO ,M=(7,8)
  10877. DISPLAY (DISPLAY P - 1_M_0 PP REGISTERS.),PPD,CMR
  10878. ENTRY DSP_M,D
  10879. DSP_M SPACE 4,15
  10880. *** *P* DISPLAY.
  10881. *
  10882. * DISPLAY PP REGISTERS BY CONTROL POINTS.
  10883. *
  10884. * EXAMPLE -
  10885. *
  10886. * 1 2 3 4 5 6
  10887. * 1234567890123456789012345678901234567890123456789012345678901234
  10888. * PP PGM CP JSN CH IA/FCN INPUT/OUTPUT REGISTERS ADDR
  10889. * 0 MTR 20 AAAQ 7400 1524 2220 0000 0000 0000 1354
  10890. * 0000 0000 0000 0000 0000
  10891. * 1 DSD 35 SYS * 7410 0423 0435 0102 0031 0000 7057
  10892. * RPPM 0071 0001 0000 0000 0000
  10893. SPACE 4,20
  10894. ** NOTES.
  10895. *
  10896. * BECAUSE OF THE DIFFERENCES BETWEEN CYBER 170 AND 180 PPS AND
  10897. * BECAUSE OF THE SPACE CONSTRAINTS IN THE *P* DISPLAY DRIVER,
  10898. * THE DRIVER CODE IS ASSEMBLED IN A 170 AND A 180 VARIANT BY
  10899. * PLACING IT ALL IN A LARGE *ECHO* BLOCK. EACH VARIANT IS A
  10900. * SEPARATE OVERLAY. WHEN *DSD* PRESETS ITSELF, IT SELECTS THE
  10901. * CORRECT OVERLAY FOR THE SYSTEM. *DSD* DOES NOT FORCE THE *P*
  10902. * DISPLAY DRIVER TO BE CM RESIDENT, BUT WHEN *LIBDECK* DIREC-
  10903. * TIVES ARE USED TO FORCE IT INTO CM, ONLY THE APPROPRIATE
  10904. * OVERLAY NEEDS TO BE THERE.
  10905. *
  10906. * CONDITIONAL CODE SEQUENCES ARE USED TO EXCLUDE CODE WHEN IT
  10907. * IS UNNECESSARY. THE *ECHO* PARAMETER *M* IS USED TO DISTIN-
  10908. * GUISH WHICH VARIANT IS BEING ASSEMBLED.
  10909. *
  10910. * M=7 = THE 170 VARIANT
  10911. * M=8 = THE 180 VARIANT
  10912. DIRECT SPACE 4,10
  10913. * DIRECT CELL ASSIGNMENTS.
  10914.  
  10915.  
  10916. JA EQU AB JSN ADDRESS
  10917. PN EQU AB+1 PP NUMBER
  10918. PR EQU AB+2 PP INPUT REGISTER ADDRESS
  10919. SI EQU AB+3 SPACING INCREMENT
  10920. * = 0 UNLESS *P* UP ON BOTH SIDES OF A CC545
  10921. * = *YINC* UNLESS CPP-S ARE PRESENT
  10922. * = 3 WHEN CPP-S ARE PRESENT
  10923. TA EQU AB+4 TEMPORARY
  10924. DSP SPACE 4,10
  10925. DSP_M SUBR * ENTRY/EXIT
  10926. DSPA LJM PRS PRESET OVERLAY
  10927. * UJN DSP1 (AFTER INITIAL PRESET)
  10928. DSP1 DISPHD ("PHDR"),/DSD/TJPP+1
  10929. LDC /DSD/TJPP+1 GET JSN ADDRESS
  10930. STD JA
  10931. RJM SJS SEARCH FOR JSN IN EJT
  10932. MJN DSP_M_X IF NO DISPLAY POSSIBLE
  10933. LDN CTALL READ CHANNEL STATUS TABLE
  10934. STD T1
  10935. DSPB LDC ** (FWA OF THE CHANNEL RESERVATION TABLE)
  10936. CRM CTAL,T1
  10937.  
  10938. * DETERMINE THE FIRST PP TO DISPLAY AND THE PROPER SPACING.
  10939.  
  10940. LDD LS
  10941. LMD RS
  10942. NJN DSP2 IF *P* IS NOT UP ON BOTH SCREENS
  10943. LDM. .FLFT+DSPJ GET LEFT SCREEN FIRST INDEX
  10944. * LDM. .FLFT+DSPJ+1 (GET RIGHT SCREEN FIRST INDEX)
  10945. DSPC EQU *-1 (ADDRESS OF CURRENT INDEX)
  10946. STM DSPJ
  10947. LDC YINC*100
  10948. * LDC 3*100 (CC545 AND CPP-S PRESENT)
  10949. * LDC 0*100+C721 (CC634B)
  10950. DSPD EQU *-1
  10951. DSP2 SHN -6
  10952. STD SI
  10953. LDC BL01-5 SET TOP OF SCREEN
  10954. SBD SI
  10955. OAN CH+40
  10956. STD YC
  10957. STD T8 SET NEW BANK FLAG
  10958. LDN DSPKL DISPLAY HEADER COLUMNS
  10959. OAM DSPK,CH
  10960. LDM DSPJ
  10961. STD PN
  10962.  
  10963. * DISPLAY NEXT PP.
  10964.  
  10965. DSP3 LDD PN READ INPUT AND OUTPUT REGISTERS
  10966. SHN 3
  10967. ADD IA
  10968. SBN 10
  10969. STD PR SAVE INPUT REGISTER ADDRESS
  10970. CRD CM
  10971. ADN 1
  10972. CRD SP
  10973. LDD PN
  10974. DSPE SBN ** (NUMBER OF NPP-S + NUMBER OF CPP-S)
  10975. MJN DSP4 IF THIS IS NOT THE PSEUDO PP
  10976. * LDN 0 SET PP IDENTIFIER
  10977. STD T7
  10978. LDC 2RPS
  10979. STD T6
  10980. UJN DSP10 DETERMINE LINE SPACING
  10981.  
  10982. DSP4 BSS 0
  10983. .A IFC EQ,/M/8/
  10984. DSPF ADN ** (NUMBER OF CPP-S)
  10985. MJN DSP5 IF THIS IS NOT A CPP
  10986. ADC 2RC0*10 SET PP IDENTIFIER
  10987. SHN -3+22
  10988. STD T6
  10989. SHN -11
  10990. ADC 1R0*100
  10991. STD T7
  10992. UJN DSP9 CHECK FOR A CHANGE IN BARRELS
  10993.  
  10994. DSP5 BSS 0
  10995. .A ENDIF
  10996.  
  10997. DSPG CON ADNI+**-10D (NUMBER OF PP-S IN THE SECOND BARREL)
  10998. * ADN **-10D
  10999. MJN DSP6 IF FIRST BANK
  11000. ADN 6
  11001. DSP6 ADN 10D
  11002. STD T6 SET THE PHYSICAL PP NUMBER
  11003. DSP9 LDD T6 CHECK FOR A CHANGE IN BARRELS
  11004. SCN 17
  11005. LMD T8
  11006. ZJN DSP11 IF SAME BANK AS PREVIOUS LINE
  11007. LMD T8
  11008. STD T8
  11009. .A IFC EQ,/M/7/
  11010. AJM ISR,SC IF CYBER 17X
  11011. .A ENDIF
  11012. DSP10 LDN 0 SKIP A LINE
  11013. SBD SI
  11014. DSP11 SBN YINC SKIP TO NEXT LINE
  11015. SBD SI DOUBLE SPACE WHEN *P* IS ON BOTH SCREENS
  11016. RAD YC
  11017. OAN CH+40 OUTPUT Y-COORDINATE
  11018. SBM CBOS
  11019. SBN YINC
  11020. PJN DSP12 IF SPACE IS AVAILABLE
  11021. LDD T6
  11022. SHN -11
  11023. NJN DSP12 IF THIS IS THE PSEUDO-PP
  11024. LDD PN
  11025. LJM DSP22 EXIT
  11026.  
  11027. * DISPLAY PP INFORMATION.
  11028.  
  11029. DSP12 LDD XC OUTPUT X COORDINATE
  11030. OAN CH+40
  11031. LDD T6 DISPLAY IDENTIFIER
  11032. SBN 77
  11033. PJN DSP13 IF THIS IS NOT AN NPP
  11034. LPN 77
  11035. RJM D2Z DISPLAY PP NUMBER
  11036. UJN DSP14 COMPARE JSN-S
  11037.  
  11038. DSP13 LDN 2 DISPLAY *PS* OR *CNN*
  11039. OAM T6,CH
  11040.  
  11041. * COMPARE JSN-S IF INCLUDED ON OPERATOR DISPLAY SELECTION.
  11042.  
  11043. DSP14 LDD PN
  11044. SHN PPXES
  11045. DSPL ADC ACPP GET CONTROL POINT ADDRESS
  11046. CRD T1
  11047. LDD T1+4 USE FUNCTION PROCESSING CP
  11048. STD T7 SAVE CP ADDRESS
  11049. ADN TFSW GET EJTO
  11050. CRD T1
  11051. SFA EJT,T1 CALCULATE EJT ENTRY ADDRESS
  11052. CRD SH GET JSN
  11053. LDI JA
  11054. ZJN DSP16 IF JSN NOT SPECIFIED
  11055. LDD CM
  11056. ZJN DSP15 IF PP NOT ACTIVE
  11057. LDI JA
  11058. LMD SH
  11059. NJN DSP15 IF JSN-S DO NOT MATCH
  11060. LDM. 1,JA
  11061. LMD SH+1
  11062. ZJN DSP16 IF JSN-S MATCH
  11063. DSP15 LCN YINC-1 SKIP SECOND LINE
  11064. SBM DCTY
  11065. RAD YC
  11066. LJM DSP21 ADVANCE TO NEXT PP
  11067.  
  11068. * DISPLAY P ADDRESS.
  11069.  
  11070. DSP16 LDD T6 CHECK FOR PSEUDO-PP
  11071. STD T5
  11072. SHN -11
  11073. NJN DSP17 IF THIS IS THE PSEUDO-PP
  11074. .A IFC EQ,/M/7/
  11075. AJM RPR,SC IF CYBER 17X
  11076. .A ENDIF
  11077.  
  11078. * DISPLAY PROGRAM NAME, CP NUMBER AND JSN.
  11079.  
  11080. DSP17 LDC CH06 SET X-COORDINATE
  11081. OAN CH+40
  11082. LDD CM
  11083. ZJN DSP15 IF PP IS NOT ACTIVE
  11084. OAN CH+40 DISPLAY PROGRAM NAME
  11085. LDD CM+1
  11086. SCN 77
  11087. OAN CH+40
  11088. LDD T7 DISPLAY CP NUMBER
  11089. SHN -7
  11090. RJM D4S
  11091. LDC CH17
  11092. OAN CH+40
  11093. LDN 2 DISPLAY JSN
  11094. OAM SH,CH
  11095.  
  11096. * INDICATE IF CHANNEL IS ASSIGNED.
  11097.  
  11098. * LDN 0
  11099. OAN CH+40
  11100. LDD T6
  11101. ZJN DSP19 IF PP NUMBER ZERO
  11102. LDN MXCH+2
  11103. STD T2
  11104. DSP18 SOD T2
  11105. ZJN DSP19 IF NO MORE TO CHECK
  11106. LDM CTAL-1,T2
  11107. LPN 37
  11108. LMD PN
  11109. NJN DSP18 IF NOT ASSIGNED TO THIS PP
  11110. LDN 1R* OUTPUT -*-
  11111. DSP19 OAN CH+40
  11112.  
  11113. * DISPLAY THE INPUT REGISTER
  11114.  
  11115. LDC CH28 DISPLAY INPUT REGISTER ADDRESS
  11116. OAN CH+40
  11117. LDD PR
  11118. RJM D4D
  11119. LDN CM
  11120. ERRNZ CM-CM/10*10 ADDRESS MUST BE ON A 10-BYTE BOUNDARY
  11121. RJM DOW DISPLAY ONE WORD
  11122.  
  11123. * DISPLAY THE MONITOR FUNCTION AND OUTPUT REGISTER.
  11124.  
  11125. LCN YINC-1 SKIP TO A NEW LINE
  11126. SBM DCTY
  11127. RAD YC
  11128. OAN CH+40
  11129. LDC CH28 DISPLAY THE MONITOR FUNCTION
  11130. OAN CH+40
  11131. LDD SP
  11132. LPC 177
  11133. SHN -1+22
  11134. STD TA
  11135. SHN 1-0+1-22
  11136. ADN SH
  11137. STM DSPH
  11138. LDC RPLP
  11139. CRD CM
  11140. LDD CM FORM TEXT OVERLAY ADDRESS
  11141. SHN 14
  11142. LMD CM+1
  11143. ZJN DSP20 IF LIBRARY LOCKED
  11144. ADK /DISPLAY/TFTN
  11145. ADD TA
  11146. CRD SH
  11147. LDN 2
  11148. OAM. **,CH
  11149. DSPH EQU *-1
  11150. DSP20 LDN SP
  11151. ERRNZ SP-SP/10*10 ADDRESS MUST BE ON A 10-BYTE BOUNDARY
  11152. RJM DOW DISPLAY ONE WORD
  11153.  
  11154. * ADVANCE TO NEXT PP.
  11155.  
  11156. DSP21 AOD PN ADVANCE TO NEXT PP
  11157. SBN **+1
  11158. DSPI EQU *-1 (NUMBER OF NPP-S + NUMBER OF CPP-S + 1)
  11159. PJN DSP22 IF ALL PPS HAVE BEEN DISPLAYED
  11160. LJM DSP3 DISPLAY NEXT PP
  11161.  
  11162. DSP22 STM DSPJ+1 SAVE START OF NEXT PAGE
  11163. ZJN DSP23 IF THE LAST PP WAS DISPLAYED
  11164. LDM CBOS DISPLAY *MORE*
  11165. SBN YINC
  11166. OAN CH+40
  11167. LDN MOREL
  11168. OAM MORE,CH
  11169. DSP23 BSS 0
  11170. .A IFC EQ,/M/7/
  11171. IJM DSP_M_X,SC IF NOT A CYBER 17X
  11172. LDC /SCR/FCCL+/SCR/AMMS CLEAR AUTO PP SELECT
  11173. RJM ODW
  11174. .A ENDIF
  11175. LJM DSP_M_X RETURN
  11176.  
  11177.  
  11178. DSPJ CON 0,0 CURRENT AND NEXT PAGE INDICES
  11179.  
  11180. * *P* DISPLAY HEADER.
  11181.  
  11182. DSPK CON CH01
  11183. DATA 34HPP PGM CP JSN CH IA/FCN
  11184. DATA H*INPUT/OUTPUT REGISTERS*
  11185. CON CH61
  11186. DATA H*ADDR*
  11187. DSPKL EQU *-DSPK
  11188. DOW SPACE 4,10
  11189. ** DOW - DISPLAY ONE WORD.
  11190. *
  11191. * ENTRY (A) = FWA OF THE 5 BYTES TO BE OUTPUT.
  11192. * NOTE - THE CODE ASSUMES THAT THE FWA IS A
  11193. * MULTIPLE OF 10B.
  11194. *
  11195. * USES TA, T4.
  11196. *
  11197. * CALLS D4D.
  11198.  
  11199.  
  11200. DOW SUBR ENTRY/EXIT
  11201. STD TA
  11202. LDC CH34 SET X-COORDINATE
  11203. STD T4
  11204. DOW1 OAN CH+40
  11205. LDI TA OUTPUT BYTE
  11206. RJM D4D
  11207. AOD TA
  11208. LPN 7
  11209. LMN 5
  11210. ZJN DOWX IF NO MORE BYTES TO OUTPUT
  11211. LDN 5*XINC
  11212. RAD T4
  11213. UJN DOW1 OUTPUT COORDINATES OF NEXT BYTE
  11214. .A IFC EQ,/M/7/
  11215. ISR SPACE 4,10
  11216. ** ISR - INITIALIZE SCR REGISTER.
  11217. *
  11218. * ENTRY (A) .GT. 77B IF THIS IS THE INITIAL CALL.
  11219. * (T6) = PHYSICAL PP NUMBER.
  11220. * (TDSPA) = THE PP SUBSYSTEM TOGGLE SWITCH.
  11221. *
  11222. * EXIT (ODWA) AND (ODWB) CONTAIN THE CORRECT CHANNEL.
  11223. *
  11224. * CALLS ODW.
  11225.  
  11226.  
  11227. ISR BSS 0 ENTRY
  11228. SHN -6
  11229. NJN ISR1 IF INITIAL CALL
  11230. LDC /SCR/FCCL+/SCR/AMMS CLEAR AUTO PP SELECT
  11231. RJM ODW
  11232. ISR1 LDD T6
  11233. LPN 20
  11234. LMM TDSPA SELECT CORRECT CHASSIS
  11235. LMC OANI+SC SET S/C REGISTER CHANNEL
  11236. STM ODWA
  11237. LMC IANI&OANI
  11238. STM ODWB
  11239. LDC /SCR/FCSB+/SCR/AMMS SET AUTO PP SELECT
  11240. RJM ODW
  11241. LJM DSP10 RETURN
  11242. ODW SPACE 4,10
  11243. ** ODW - OUTPUT DESCRIPTOR WORD TO S/C REGISTER.
  11244. *
  11245. * ENTRY (A) = DESCRIPTOR WORD.
  11246. * (ODWA) = CORRECT CHANNEL.
  11247. * (ODWB) = CORRECT CHANNEL.
  11248. *
  11249. * EXIT (A) = S/C REGISTER RESPONSE.
  11250.  
  11251.  
  11252. ODW SUBR ENTRY/EXIT
  11253. ODWA OAN SC
  11254. * OAN SC+20 (SECOND PPS)
  11255. ODWB IAN SC
  11256. * IAN SC+20 (SECOND PPS)
  11257. UJN ODWX EXIT
  11258. RPR SPACE 4,10
  11259. ** RPR - READ P REGISTER.
  11260. *
  11261. * ENTRY (T5) = PHYSICAL PP NUMBER.
  11262. *
  11263. * USES T4, T5.
  11264. *
  11265. * CALLS ODW.
  11266.  
  11267.  
  11268. RPR LDC CH61 SET X-COORDINATE FOR P-ADDRESS
  11269. OAN CH+40
  11270. LDN 3 LOOP FOR BITS 3-0 OF PP NUMBER
  11271. STD T4
  11272. RPR1 LDD T5 FORM NEXT BIT TO SET/CLEAR
  11273. RAD T5
  11274. LPN 20
  11275. SHN 6
  11276. ADC /SCR/FCCL+/SCR/PPSC (A) = 2170 OR 4170
  11277. ADD T4
  11278. RJM ODW
  11279. SOD T4
  11280. PJN RPR1 IF ALL BITS NOT PROCESSED
  11281. LDN /SCR/FCRD+5 READ BYTE 5 OF S/C REGISTER
  11282. RJM ODW
  11283. RJM D4S DISPLAY P-REGISTER
  11284. LJM DSP17 RETURN
  11285. .A ENDIF
  11286. PPD SPACE 4,10
  11287. ** PPD - PAGE *P* DISPLAY.
  11288. *
  11289. * ENTRY (T2) = 0, IF PAGE FORWARD.
  11290. * = 1, IF PAGE BACKWARD.
  11291.  
  11292.  
  11293. PPD BSS 0 ENTRY
  11294. SOD T2
  11295. ZJN PPD1 IF PAGING BACKWARD
  11296. LDM DSPJ+1 GET INDEX FOR NEXT PAGE
  11297. PPD1 STM DSPJ SET CURRENT INDEX
  11298. LJM. /KEYBOARD/KBIX RETURN
  11299. SPACE 4,10
  11300. ** REMOTE CODE
  11301.  
  11302.  
  11303. DIS HERE
  11304. PRS SPACE 4,10
  11305. ** PRS - PRESET *P* DISPLAY.
  11306. *
  11307.  
  11308.  
  11309. PRS BSS 0 ENTRY
  11310. * LDD LA SET ADDRESS OF CURRENT INDEX
  11311. SBD XC
  11312. SHN -11
  11313. RAM DSPC
  11314. ERRNG .FLFT-CH01 CODE DEPENDS ON THE RELATIONSHIP
  11315. ERRPL .FLFT-CH01-1000 CODE DEPENDS ON THE RELATIONSHIP
  11316. ERRNG .FRHT-CH01-1000 CODE DEPENDS ON THE RELATIONSHIP
  11317. ERRPL .FRHT-CH01-2000 CODE DEPENDS ON THE RELATIONSHIP
  11318. LDK PPUL GET NUMBER OF PP-S
  11319. CRD CN
  11320. ADK PPCP-PPUL GET PP COMMUNICATION AREA POINTERS
  11321. CRD AB
  11322. ADK CHTP-PPCP GET CHANNEL RESERVATION TABLE FWA
  11323. CRD CM
  11324. LDD CM+2 PRESET THE CHANNEL RESERVATION TABLE FWA
  11325. RAM DSPB
  11326. LDD CM+3
  11327. STM DSPB+1
  11328. LDD AB+1 SET *ACPP* BASE ADDRESS
  11329. RAM DSPL+1
  11330. SHN -14
  11331. RAM DSPL
  11332. LDD CN+2 GET NUMBER OF PP-S
  11333. RAM DSPG (ADN NPP-10D)
  11334. LDD CN+2 GET NUMBER OF PP-S
  11335. .A IFC EQ,/M/8/
  11336. ADD CN+3 GET NUMBER OF CPP-S
  11337. ERRNZ CPPL-PPUL CODE ASSUMES VALUE
  11338. LPN 77
  11339. .A ENDIF
  11340. RAM DSPI (SBN NPP+CPP+1)
  11341. SBN 1
  11342. STM DSPE (SBN NPP+CPP)
  11343. .A IFC EQ,/M/8/
  11344. SBD HN (ADN NPP+CPP)
  11345. ERRNZ ADNI+100-SBNI
  11346. SBD CN+2
  11347. STM DSPF (ADN CPP)
  11348. LPN 77
  11349. ZJN PRS0 IF NO CPP-S
  11350. LDC 3*100
  11351. STM DSPD REDUCE DOUBLE SPACING
  11352. PRS0 LDM DCTY
  11353. ZJN PRS1 IF CC545 CONSOLE
  11354. STM DSPD DISABLE DOUBLE SPACING
  11355. .A ENDIF
  11356. PRS1 ISTORE DSPA,(UJN DSP1)
  11357. LJM DSP1 RETURN
  11358.  
  11359.  
  11360. CTAL EQU PRS CHANNEL RESERVATION TABLE
  11361. ERRNG .LDMX-CTAL-5*CTALL CHANNEL TABLE WILL NOT FIT
  11362. SPACE 4,10
  11363. DSPEND
  11364. .MODEL ENDD
  11365. LIST *
  11366. DISPLAY (DISPLAY Q - QUEUED FILES.),PQD
  11367. ENTRY DSQ,D
  11368. DSQ SPACE 4,10
  11369. *** *Q* DISPLAY.
  11370. *
  11371. * DISPLAY QUEUED FILES.
  11372. *
  11373. * EXAMPLE -
  11374. * 1 2 3 4 5 6
  11375. * 1234567890123456789012345678901234567890123456789012345678901234
  11376. * QFT JSN SC QP QT FSI REP LID DS ID FC EC LEVEL
  11377. *
  11378. * 0 SYS S 0 IN 0
  11379. * 1 AAAN B 212 PR 0 2 MQE BC 40 LF A9 LVLMIDD
  11380.  
  11381.  
  11382. DSQ SUBR ENTRY/EXIT
  11383. LDM CTOS SET FIRST LINE OF DISPLAY
  11384. OAN CH+40
  11385. SBN YINC
  11386. STD YC
  11387. LDN QFTP
  11388. CRD SH
  11389. LDD SF
  11390. ZJN DSQ1 IF UNSECURED SYSTEM
  11391. LDN DSQCL
  11392. DSQ1 ADN DSQBL DISPLAY COLUMN HEADERS
  11393. OAM DSQB,CH
  11394. * LDN 0 CLEAR NEXT QFT ORDINAL
  11395. STM TDSQ+1
  11396. STD T6
  11397. STD SH INITIALIZE NUMBER OF ENTRIES IN USE
  11398. LDD SH+2 CALCULATE NUMBER OF ENTRIES IN USE
  11399. SBD SH+3
  11400. STD SH+4
  11401. LDM TDSQ GET FIRST QFT ORDINAL
  11402. STD T7
  11403. ZJN DSQ4 IF BEGINNING OF QFT
  11404. DSQ2 SFA QFT,T6
  11405. CRD CM
  11406. LDD CM
  11407. ZJN DSQ3 IF ENTRY NOT IN USE
  11408. AOD SH INCREMENT NUMBER OF ENTRIES IN USE
  11409. DSQ3 AOD T6 INCREMENT INDEX
  11410. LMD T7
  11411. NJN DSQ2 IF NOT END OF SEARCH
  11412. DSQ4 LDM TDSQA
  11413. SHN 21-13
  11414. PJN DSQ5 IF SPECIFIC QUEUE TYPE
  11415. LDN TQTYL
  11416. STD AB
  11417. LDN PSNI
  11418. UJN DSQ6 SELECT ALL QUEUE TYPES
  11419.  
  11420. DSQ5 LDM TDSQA
  11421. STD AB
  11422. LDC NJNI+77-DSQA+DSQ8
  11423. ERRNG 37+DSQA-DSQ8 INCORRECT JUMP INSTRUCTION
  11424. ERRNG 37+DSQ8-DSQA INCORRECT JUMP INSTRUCTION
  11425. DSQ6 STM DSQA
  11426. DISPHD (Q, QUEUE STATUS.)
  11427. LDC CH03
  11428. OAN CH+40
  11429. LDM TQTY,AB DISPLAY QUEUE TYPE
  11430. ZJN DSQ7 IF ALL QUEUE TYPES SELECTED
  11431. OAN CH+40
  11432. DSQ7 LDC 2R.
  11433. OAN CH+40
  11434. LDD T7
  11435. UJN DSQ9 ENTER LOOP
  11436.  
  11437. DSQ8 LDD SH+4
  11438. LMD SH
  11439. ZJN DSQ10 IF NOT MORE ENTRIES IN USE
  11440. AOD T7 ADVANCE INDEX
  11441. DSQ9 LMD SH+2
  11442. NJN DSQ11 IF NOT END OF QFT
  11443. DSQ10 LJM DSQX RETURN
  11444.  
  11445. DSQ11 SFA QFT,T7 GET NEXT QFT ENTRY
  11446. ADK JSNQ
  11447. CRD AB GET JSN, FILE TYPE
  11448. LDD AB
  11449. ZJN DSQ8 IF ENTRY BLANK
  11450. AOD SH INCREMENT NUMBER OF ENTRIES IN USE
  11451. LDD AB+4
  11452. LPN 16
  11453. NJN DSQ8 IF FILE ASSIGNED OR NOT QUEUED
  11454. LDD AB+4 SAVE DISPOSITION CODE
  11455. SHN -6
  11456. STD AB+4
  11457. SHN -11+6 SAVE QUEUE TYPE
  11458. STD SH+3
  11459. LMM TDSQA
  11460. NJN DSQ8 IF NOT SELECTED QUEUE TYPE
  11461. * PSN (ALL QUEUE TYPES SELECTED)
  11462. DSQA EQU *-1
  11463.  
  11464. * PROCESS FIELDS COMMON TO ALL FILE TYPES.
  11465.  
  11466. LDC CH01
  11467. OAN CH+40
  11468. LCN YINC
  11469. RAD YC DECREMENT Y-COORDINATE
  11470. OAN CH+40
  11471. SBM CBOS
  11472. PJN DSQ12 IF NOT BOTTOM OF SCREEN
  11473. LDN MOREL
  11474. OAM MORE,CH
  11475. LDD T7 SET NEXT PAGE QFT ORDINAL
  11476. STM TDSQ+1
  11477. LJM DSQX RETURN
  11478.  
  11479. DSQ12 LDD T7 DISPLAY QFT ORDINAL
  11480. RJM D4S
  11481. SFA QFT,T7 GET ENTRY TIME
  11482. ADN ENTQ
  11483. CRD SR
  11484. ADN INSQ-ENTQ GET LID
  11485. CRD SP
  11486. ADN SCLQ-INSQ GET SERVICE CLASS, ID, FORMS CODE
  11487. CRD T2
  11488. LDN 2 DISPLAY JSN
  11489. OAM AB,CH
  11490. * LDN 0 SKIP TWO SPACES
  11491. OAN CH+40
  11492. LDD T2
  11493. SHN -6
  11494. STD SR+1
  11495. LDM TJSC,SR+1 DISPLAY SERVICE CLASS
  11496. OAN CH+40
  11497. LDD SR+3 SET ENTRY TIME
  11498. STD T1
  11499. LDD SR+4
  11500. STD T2
  11501. LDD SH+3 SET FILE TYPE
  11502. ZJN DSQ13 IF INPUT TYPE
  11503. LDN OTQT-INQT
  11504. DSQ13 BSS 0
  11505. * ADN INQT
  11506. ERRNZ INQT QUEUE TYPE .NE. 0
  11507. SHN 6
  11508. ADD SR+1 SET SERVICE CLASS
  11509. SHN 14
  11510. RJM CPR CONVERT ENTRY TIME TO QUEUE PRIORITY
  11511. PJN DSQ14 IF JCB EXISTS FOR THIS SERVICE CLASS
  11512. LDN 0 DISPLAY ZERO
  11513. DSQ14 RJM D6S DISPLAY QUEUE PRIORITY
  11514. LDM TQTY,SH+3 DISPLAY QUEUE TYPE
  11515. OAN CH+40
  11516. LDD SR+2 DISPLAY FILE SIZE INDEX
  11517. LPN 7
  11518. RJM D4S
  11519. LDC CH32
  11520. OAN CH+40 RESET X-COORDINATE
  11521. LDD SH+3
  11522. ZJN DSQ14.1 IF NOT OUTPUT FILE
  11523. LDD SP+4 DISPLAY REPEAT COUNT
  11524. DSQ14.1 RJM D2S
  11525. LDD SP+1 DISPLAY LID
  11526. SHN -6
  11527. OAN CH+40
  11528. LDD SP+1
  11529. SHN 14
  11530. LMD SP+2
  11531. SHN -6
  11532. OAN CH+40
  11533. LDD SH+3
  11534. ERRNZ /JIO/INQT QUEUE TYPE .NE. 0
  11535. ZJP DSQ18 IF NOT OUTPUT FILE
  11536.  
  11537. * PROCESS OUTPUT FILE TYPE FIELDS.
  11538.  
  11539. LDN 0 SKIP TWO SPACES
  11540. OAN CH+40
  11541. LDD T2+1 CHECK FOR FAMILY ORDINAL
  11542. ZJN DSQ15 IF FAMILY ORDINAL NOT PRESENT
  11543. LDN 0
  11544. STD T2+2 CLEAR FILE ID
  11545. LDC 2RRB&2RBC DISPLAY REMOTE BATCH DESTINATION
  11546. DSQ15 LMC 2RBC DISPLAY LOCAL BATCH DESTINATION
  11547. OAN CH+40
  11548. LDN 0
  11549. OAN CH+40
  11550. LDD T2+2 DISPLAY FILE ID
  11551. RJM D2S
  11552. LDD T2+4 DISPLAY FORMS CODE
  11553. OAN CH+40
  11554. LDN 0 DISPLAY * *
  11555. OAN CH+40
  11556. LDD T2+3 GET EXTERNAL CHARACTERISTICS
  11557. LPN 70
  11558. SHN -3
  11559. STD T2+3
  11560. LDD SH+3
  11561. SBN /JIO/PHQT
  11562. ZJN DSQ17 IF PUNCH
  11563. SBN /JIO/PLQT-/JIO/PHQT
  11564. ZJN DSQ16 IF PLOT
  11565. SBN /JIO/PRQT-/JIO/PLQT
  11566. NJN DSQ18 IF NEITHER PUNCH, PLOT, NOR PRINT
  11567. LDN TPLE-TPHE
  11568. DSQ16 ADN TPRE-TPLE
  11569. RAD T2+3
  11570. DSQ17 LDM TPHE,T2+3 GET PUNCH EXTERNAL CHARACTERISTICS
  11571. OAN CH+40
  11572. DSQ18 LDD SF
  11573. ZJN DSQ19 IF UNSECURED SYSTEM
  11574. LDC CH58 SET X-COORDINATE
  11575. OAN CH+40
  11576. LDD SP+3
  11577. SHN -3
  11578. RJM DAL DISPLAY ACCESS LEVEL STRING
  11579. DSQ19 LJM DSQ8 LOOP
  11580.  
  11581.  
  11582. * DISPLAY HEADER.
  11583.  
  11584. DSQB BSS 0
  11585. CON CH02
  11586. DATA H*QFT JSN SC*
  11587. CON CH19
  11588. DATA H*QP QT FSI REP LID DS ID FC EC*
  11589. DSQBL EQU *-DSQB
  11590. DSQC CON CH59
  11591. DATA H*LEVEL*
  11592. DSQCL EQU *-DSQC
  11593. ERRNZ *-DSQB-DSQBL-DSQCL CODE ASSUMES TITLES CONTIGUOUS
  11594. TPHE SPACE 4,10
  11595. ** TPHE - TABLE OF PUNCH EXTERNAL CHARACTERISTICS.
  11596.  
  11597.  
  11598. TPHE BSS 0
  11599. LOC 0
  11600. CON 2RPH DEFAULT
  11601. CON 2RSB SYSTEM BINARY
  11602. CON 2R80 80 COLUMN
  11603. CON 0 (RESERVED)
  11604. CON 2R26 O26
  11605. CON 2R29 O29
  11606. CON 2RAS ASCII
  11607. CON 0 (RESERVED)
  11608.  
  11609. LOC *O
  11610. TPLE SPACE 4,10
  11611. ** TPLE - TABLE OF PLOT EXTERNAL CHARACTERISTICS.
  11612.  
  11613.  
  11614. TPLE BSS 0
  11615. LOC 0
  11616. CON 0 (RESERVED)
  11617. CON 2RT6 TRANSPARENT 6-BIT PLOTTER DATA
  11618. CON 2RT8 TRANSPARENT 8-BIT PLOTTER DATA
  11619. CON 0 (UNUSED)
  11620. CON 0 (UNUSED)
  11621. CON 0 (UNUSED)
  11622. CON 0 (UNUSED)
  11623. CON 0 (RESERVED)
  11624.  
  11625. LOC *O
  11626. TPRE SPACE 4,10
  11627. ** TPRE - TABLE OF PRINT EXTERNAL CHARACTERISTICS.
  11628.  
  11629.  
  11630. TPRE BSS 0
  11631. LOC 0
  11632. CON 0 DEFAULT
  11633. CON 0 (RESERVED)
  11634. CON 2RA4 48 CHARACTER ASCII GRAPHIC
  11635. CON 2RB4 48 CHARACTER DISPLAY
  11636. CON 2RB6 64 CHARACTER DISPLAY
  11637. CON 2RA6 64 CHARACTER ASCII GRAPHIC
  11638. CON 2RA9 95 CHARACTER ASCII GRAPHIC
  11639. CON 0 (RESERVED)
  11640.  
  11641. LOC *O
  11642. TQTY SPACE 4,10
  11643. * TQTY - TABLE OF QUEUE TYPES.
  11644.  
  11645.  
  11646. TQTY BSS 0
  11647. LOC 0
  11648. DATA H*"NMQT"*
  11649. LOC *O
  11650. TQTYL EQU *-TQTY TABLE LENGTH
  11651.  
  11652. * NOTE THE FOLLOWING *DATA* STATEMENT MUST IMMEDIATELY
  11653. * FOLLOW THE *TQTY* TABLE.
  11654.  
  11655. DATA 0 ALL QUEUE TYPES SELECTED
  11656. SPACE 4,10
  11657. ** COMMON DECKS.
  11658.  
  11659.  
  11660. CPR$ EQU 1 CALCULATE QUEUE PRIORITY
  11661. IOQ$ EQU 1 CALCULATE QUEUE PRIORITY
  11662. DRC$ EQU 1 USE DIRECT CELLS TO SAVE SPACE
  11663. *CALL COMPCPE
  11664. PQD SPACE 4,10
  11665. ** PQD - PAGE *Q* DISPLAY.
  11666. *
  11667. * ENTRY (T2) = 0, IF PAGE FORWARD.
  11668. * = 1, IF PAGE BACKWARD.
  11669.  
  11670.  
  11671. PQD BSS 0 ENTRY
  11672. LDD T2
  11673. SBN 1
  11674. ZJN PQD1 IF PAGE BACKWARD
  11675. LDM TDSQ+1 ADVANCE QFT ORDINAL
  11676. PQD1 STM TDSQ
  11677. LJM. /KEYBOARD/KBIX RETURN
  11678. SPACE 4,10
  11679. DSPEND
  11680. DISPLAY (DISPLAY R - ROLLED EJT ENTRIES.),PRD
  11681. ENTRY DSR,DSR
  11682. DSR SPACE 4,15
  11683. *** *R* DISPLAY.
  11684. *
  11685. * DISPLAY ROLLED EJT ENTRIES.
  11686. *
  11687. * EXAMPLE -
  11688. *
  11689. * 1 2 3 4 5 6
  11690. * 1234567890123456789012345678901234567890123456789012345678901234
  11691. * JSN SC EJT ST LR SCPR FL FLE ACCESS LIMITS
  11692. *
  11693. * AAAC C 10 TE * 0 22 5 LVLBOTT LVLTOPP
  11694. * AAAM N 20 SO 1234 1234 1234 LVLBOTT LVLTOPP
  11695. *
  11696. * COLUMN 21 = * IF JOB IS LOCKED IN ROLLOUT.
  11697.  
  11698.  
  11699. DSR SUBR ENTRY/EXIT
  11700. DISPHD ("RHDR") DISPLAY SCREEN NAME
  11701. LDM UESC
  11702. ADD TH
  11703. ERRNZ SHNI-1000
  11704. STM DSRD
  11705. LDM CTOS INITIALIZE Y-COORDINATE
  11706. OAN CH+40
  11707. SBN YINC
  11708. STD YC
  11709. LDN DSRAL DISPLAY MAIN HEADER
  11710. OAM DSRA,CH
  11711. LDD SF
  11712. ZJN DSR1 IF UNSECURED SYSTEM
  11713. LDN DSREL DISPLAY SECURITY HEADER
  11714. OAM DSRE,CH
  11715. * LDN 0 INITIALIZE DATA LOCATIONS
  11716. DSR1 STM TDSR+1 NEXT PAGE FIRST EJTO
  11717. STD T5 EJT ENTRIES IN USE
  11718. STD T6 CURRENT EJTO
  11719. LDK EJTP GET NUMBER OF ENTRIES
  11720. CRD SR
  11721. LDD SR+2 CALCULATE NUMBER OF ENTRIES IN USE
  11722. STD T8 SAVE NUMBER OF EJT ENTRIES
  11723. SBD SR+3
  11724. STD T3
  11725. LDM TDSR SET CURRENT PAGE FIRST EJTO
  11726. STD T7
  11727. ZJN DSR4 IF BEGINNING OF EJT
  11728. DSR2 SFA EJT,T6
  11729. ADK JSNE
  11730. CRD CM
  11731. LDD CM
  11732. ZJN DSR3 IF ENTRY NOT IN USE
  11733. AOD T5 INCREMENT NUMBER OF ENTRIES IN USE
  11734. DSR3 AOD T6 INCREMENT INDEX
  11735. LMD T7
  11736. NJN DSR2 IF NOT END OF SEARCH
  11737. DSR4 LDD T7
  11738. UJN DSR6 ENTER DISPLAY LOOP
  11739.  
  11740. DSR5 LDD T3
  11741. LMD T5
  11742. ZJN DSR7 IF NO MORE ENTRIES IN USE
  11743. AOD T7 ADVANCE INDEX
  11744. DSR6 LMD T8
  11745. ZJN DSR7 IF END OF EJT
  11746. SFA EJT,T7 GET NEXT EJT ENTRY
  11747. ADK JSNE
  11748. CRD AB GET JSN
  11749. LDD AB
  11750. ZJN DSR5 IF ENTRY BLANK
  11751. AOD T5 INCREMENT NUMBER OF ENTRIES IN USE
  11752. LDD AB+4 CHECK JOB STATUS
  11753. LPN 76
  11754. SHN -1
  11755. STD T4 SAVE JOB STATUS
  11756. LMN NVJS
  11757. ZJN DSR5 IF NVE
  11758. LCN YINC
  11759. RAD YC DECREMENT Y-COORDINATE
  11760. OAN CH+40
  11761. SBM CBOS
  11762. PJN DSR8 IF NOT BOTTOM OF SCREEN
  11763. LDN MOREL
  11764. OAM MORE,CH
  11765. LDD T7 SET NEXT EJTO
  11766. STM TDSR+1
  11767. DSR7 LJM DSRX RETURN
  11768.  
  11769. DSR8 SFA EJT,T7 GET ENTRY TIME
  11770. ADN SCHE
  11771. CRD SR
  11772. ADN PRFE-SCHE GET ACCESS LEVEL
  11773. CRD SP
  11774. ADN SCLE-PRFE GET SERVICE CLASS, CM FL, EM FL
  11775. CRD SH
  11776. LDD XC OUTPUT X-COORDINATE
  11777. OAN CH+40
  11778. LDN 2 DISPLAY JSN
  11779. OAM AB,CH
  11780. * LDN 0 ADVANCE X-COORDINATE TWO SPACES
  11781. OAN CH+40
  11782. LDD SH
  11783. SHN -6
  11784. STD SR+1
  11785. LDM TJSC,SR+1 DISPLAY SERVICE CLASS
  11786. SHN -6
  11787. OAN CH+40
  11788. LDD T7 DISPLAY EJTO
  11789. RJM D6S
  11790. LDC CH26 RESET X-COORDINATE
  11791. OAN CH+40
  11792.  
  11793. * IF JOB STATUS = *EXJS*/*PCJS*/*PRJS*/*ROJS*, DISPLAY
  11794. * SCHEDULING PRIORITY, CM FL AND EM FL.
  11795.  
  11796. LDD T4 CHECK JOB STATUS
  11797. LMK EXJS
  11798. NJN DSR8.1 IF JOB NOT AT CONTROL POINT
  11799. LDD SR+3 GET CM/EM FL
  11800. SHN 7
  11801. ADK FLSW
  11802. CRD SH
  11803. ADK ECSW-FLSW
  11804. CRD CM
  11805. LDD CM+4
  11806. STD SH+3
  11807. LDD SR+4 GET SCHEDULING PRIORITY
  11808. UJN DSR10 DISPLAY SCHEDULING PRIORITY, CM FL, XM FL
  11809.  
  11810. DSR8.1 LMK ROJS&EXJS
  11811. ZJN DSR9 IF SCHEDULER ROLLOUT
  11812. LMN PRJS&ROJS
  11813. ZJN DSR9 IF PRE-INITIAL JOB STATE
  11814. LMN PCJS&PRJS
  11815. NJN DSR12 IF NOT PSEUDO-CONTROL POINT JOB
  11816. DSR9 LDD SR+3 SET ENTRY TIME
  11817. STD T1
  11818. LDD SR+4
  11819. STD T2
  11820. LDD SR+1 SET SERVICE CLASS
  11821. SHN 14
  11822. ADN EXQT SET FILE TYPE
  11823. RJM CPR CONVERT ENTRY TIME TO SCHEDULING PRIORITY
  11824. PJN DSR10 IF JOB EXISTS FOR THIS SERVICE CLASS
  11825. LDN 0 SKIP FIELD
  11826. DSR10 RJM D4S
  11827. LDD SH+4 DISPLAY FL/100B
  11828. RJM D6S
  11829. LDD SH+3 DISPLAY FLE/1000B
  11830. DSRD SHN 0
  11831. * SHN UESC
  11832. RJM D6S
  11833. DSR11 LJM DSR18 DISPLAY JOB STATUS
  11834.  
  11835. * IF JOB STATUS = *TOJS*/*ERJS*/*PWJS*, DISPLAY ROLLOUT
  11836. * DESCRIPTOR AND TIME REMAINING UNTIL ROLLIN.
  11837.  
  11838. DSR12 LMN TOJS&PCJS
  11839. ZJN DSR13 IF TIMED/EVENT ROLLOUT
  11840. LMN ERJS&TOJS
  11841. ZJN DSR13 IF ERROR ON ROLLOUT FILE
  11842. LMN PWJS&ERJS
  11843. NJN DSR11 IF NOT PRE-INITIAL JOB STEP WAIT
  11844. DSR13 LDD SR+2 GET TIME UNTIL ROLLIN
  11845. LPN 77
  11846. SHN 14
  11847. LMD SR+3
  11848. SHN -11
  11849. STD SR+2
  11850. LDD SR+3 ISOLATE EST ORDINAL OF EVENT DESCRIPTOR
  11851. LPC 377
  11852. STD SR+3
  11853. LMN EXTM/10000
  11854. NJN DSR14 IF NOT EXTENDED TIME EVENT
  11855. LDD SR+4 DISPLAY TIME UNTIL ROLLIN
  11856. RJM D4S
  11857. LDC CH34 OUTPUT X-COORDINATE
  11858. OAN CH+40
  11859. DSR14 LDD SR+2 DISPLAY TIME UNTIL ROLLIN / EXTENDED TIME
  11860. RJM D4S
  11861. LDC CH18 OUTPUT X-COORDINATE
  11862. OAN CH+40
  11863. LDD SR+3 GET EST ORDINAL OF EVENT DESCRIPTOR
  11864. ZJN DSR17 IF WAITING FOR RESOURCE
  11865. SBN WRKE/10000+1
  11866. PJN DSR15 IF NORMAL EST ORDINAL
  11867. LDM DSRB-2,SR+3
  11868. UJN DSR19 DISPLAY *RS*, *TE*, OR *WK*
  11869.  
  11870. DSR15 LDD SR+4
  11871. ZJN DSR16 IF NO TRACK NUMBER
  11872. LDC 2RPF&2RWI
  11873. DSR16 LMC 2RWI
  11874. UJN DSR19 DISPLAY *PF* OR *WI*
  11875.  
  11876. DSR17 LDD SR+4
  11877. ZJN DSR17.1 IF TIMED/EVENT ROLLOUT
  11878. SBN MAXE
  11879. MJN DSR17.2 IF VALID DESCRIPTOR
  11880. LDN 0 DISPLAY GENERIC TIMED/EVENT DESCRIPTOR
  11881. DSR17.1 LMC 2RTE
  11882. UJN DSR19 DISPLAY ROLLOUT DESCRIPTOR
  11883.  
  11884. DSR17.2 LDM DSRB+2,SR+4
  11885. UJN DSR19 DISPLAY ROLLOUT DESCRIPTOR
  11886.  
  11887. * IF JOB STATUS IS NEITHER *TOJS* NOR *PWJS*, DISPLAY IT.
  11888.  
  11889. DSR18 LDC CH18
  11890. OAN CH+40
  11891. LDM DSRC,T4 DISPLAY JOB STATUS
  11892. DSR19 OAN CH+40
  11893. LDD SH GET FORCED ROLLOUT FLAG
  11894. SHN 21-5
  11895. PJN DSR20 IF JOB NOT LOCKED OUT
  11896. LDN 1R* DISPLAY LOCKED OUT STATUS
  11897. OAN CH+40
  11898. DSR20 LDD SF
  11899. ZJN DSR21 IF UNSECURED SYSTEM
  11900. LDC CH50
  11901. OAN CH+40
  11902. LDD SP+2 GET ACCESS LEVELS
  11903. SHN -3
  11904. RJM DAL DISPLAY LOWER ACCESS LEVEL
  11905. LDD SP+2
  11906. RJM DAL DISPLAY UPPER ACCESS LEVEL
  11907. DSR21 LJM DSR5 LOOP
  11908.  
  11909.  
  11910. * DISPLAY HEADERS.
  11911.  
  11912. DSRA BSS 0 MAIN HEADER
  11913. CON CH01
  11914. DATA H*JSN SC EJT ST LR*
  11915. CON CH26
  11916. DATA H*SCPR*
  11917. CON CH35
  11918. DATA H*FL*
  11919. CON CH43
  11920. DATA H*FLE*
  11921. DSRAL EQU *-DSRA
  11922.  
  11923. DSRE BSS 0 SECURITY HEADER
  11924. CON CH51
  11925. DATA H*ACCESS LIMITS *
  11926. DSREL EQU *-DSRE
  11927.  
  11928.  
  11929. * ROLLOUT DESCRIPTORS.
  11930.  
  11931. DSRB BSS 0 TWO-CHARACTER ROLLOUT DESCRIPTORS
  11932. QUAL
  11933. LIST D,G
  11934. RODS
  11935. LIST *
  11936.  
  11937.  
  11938. * JOB STATUS NAMES.
  11939. QUAL *
  11940.  
  11941. DSRC BSS 0 TABLE OF JOB STATUS NAMES
  11942. DATA H*IN* PRJS
  11943. DATA H*EX* EXJS
  11944. DATA H*RO* ROJS
  11945. DATA H*SI* SIJS
  11946. DATA H*SO* SOJS
  11947. DATA H*TO* TOJS
  11948. DATA H*IO* IOJS
  11949. DATA H*DO* DOJS
  11950. DATA H*SU* SUJS
  11951. DATA H*PC* PCJS
  11952. DATA H*ER* ERJS
  11953. DATA H*NV* NVJS
  11954. DATA H*PW* PWJS
  11955. DATA H*SW* SWJS
  11956. SPACE 4,10
  11957. ** COMMON DECKS.
  11958.  
  11959.  
  11960. CPR$ EQU 1 CALCULATE SCHEDULING PRIORITY
  11961. *CALL COMPCPE
  11962. PRD SPACE 4,10
  11963. ** PRD - PAGE *R* DISPLAY.
  11964. *
  11965. * ENTRY (T2) = 0, IF PAGE FORWARD.
  11966. * = 1, IF PAGE BACKWARD.
  11967.  
  11968.  
  11969. PRD BSS 0 ENTRY
  11970. LDD T2
  11971. SBN 1
  11972. ZJN PRD1 IF PAGE BACKWARD
  11973. LDM TDSR+1
  11974. PRD1 STM TDSR STORE NEW PAGE INDEX
  11975. LJM. /KEYBOARD/KBIX RETURN
  11976. SPACE 4,10
  11977. DSPEND
  11978. DISPLAY (DISPLAY S - SYSTEM CONTROL INFORMATION.),PSD
  11979. ENTRY DSS,D
  11980. DSS SPACE 4,10
  11981. *** *S* DISPLAY.
  11982. *
  11983. * DISPLAY SYSTEM CONTROL INFORMATION.
  11984. *
  11985. * EXAMPLE -
  11986. *
  11987. * 1 2 3 4 5 6
  11988. * 1234567890123456789012345678901234567890123456789012345678901234
  11989. *
  11990. * SC QU QUEUE VALUES SERVICE LIMITS
  11991. * CP CT CM NJ TD
  11992. * FL AM TP AJ DT
  11993. * IL LP UP WF IP EC EM DS FC CS FS
  11994. * PR SE RS US
  11995. *
  11996. * TS IN 1234 1234 1234 1234 1234 1234 1234 1234
  11997. * EX 1234 1234 1234 1234 1234 1234 123456 1234 1234 SC
  11998. * OT 1234 1234 1234 123456 123456 2 2 2 2
  11999. * 12 1234 1234 1234
  12000. *
  12001. *
  12002. * SSTL = 0102 0304 0506 0710 1112 ABCDEFGHIJ
  12003. * INWL = 0102 0304 0506 0710 1112 ABCDEFGHIJ
  12004.  
  12005.  
  12006. DSS SUBR ENTRY/EXIT
  12007. DISPHD ("SHDR")
  12008. LDM UESC PRESET SHIFT INSTRUCTIONS
  12009. ADD TH
  12010. ERRNZ SHNI-1000
  12011. STM DSSE
  12012. STM DSSF
  12013. LDM DCTY
  12014. ZJN DSS0 IF CC545 CONSOLE
  12015. LCN 6-2
  12016. DSS0 ADN 6 SET NUMBER OF SERVICE CLASSES ON PAGE
  12017. STM DSSB
  12018. LDC DSSAL DISPLAY HEADER
  12019. OAM DSSA,CH
  12020. LDN 1 RESET NEXT PAGE INDEX
  12021. STM TDSS+1
  12022. LDC LN12 SET INITIAL Y-COORDINATE
  12023. STD YC
  12024. LDM TDSS INITIALIZE SERVICE CLASS
  12025. STD T7
  12026. RAM DSSB SET NUMBER OF LAST SERVICE CLASS ON PAGE+1
  12027. DSS1 LDN 2
  12028. OAM XC,CH OUTPUT COORDINATES
  12029. * LDN 0
  12030. STD T6 INITIALIZE QUEUE TYPE
  12031. LDD T7
  12032. SBN MXJC
  12033. MJN DSS3 IF JCB EXISTS
  12034. DSS2 LJM DSS12 DISPLAY *SSTL*
  12035.  
  12036. DSS3 LDM TNSC,T7 DISPLAY SERVICE CLASS
  12037. OAN CH+40
  12038. DSS4 SFA JCB,T7 READ QUEUE WORD
  12039. ADD T6
  12040. CRD CM
  12041. LDC CH04 OUTPUT X-COORDINATE
  12042. OAN CH+40
  12043. LDD YC OUTPUT Y-COORDINATE
  12044. OAN CH+40
  12045. LDM TQUT,T6 DISPLAY QUEUE TYPE
  12046. OAN CH+40
  12047. LDC CH02 PRESET X-COORDINATE
  12048. STD T3
  12049.  
  12050. * DISPLAY QUEUE VALUES.
  12051.  
  12052. LDN CM SET BYTE INDEX
  12053. STD T2
  12054. LDD CM+3 EXTRACT SHIFT COUNT
  12055. LPN 77
  12056. LMD TH
  12057. STM DSSD
  12058. LDN 1 CALCULATE WEIGHTING FACTOR
  12059. DSSD SHN 0
  12060. STD CM+3
  12061. DSS5 LDN 5*XINC ADVANCE X-COORDINATE
  12062. RAD T3
  12063. OAN CH+40 OUTPUT X-COORDINATE
  12064. LDI T2
  12065. RJM D4S DISPLAY BYTE
  12066. AOD T2
  12067. LMN CM+5
  12068. NJN DSS5 IF MORE QUEUE VALUES
  12069.  
  12070. * ADVANCE QUEUE TYPE.
  12071.  
  12072. DSS7 LCN YINC
  12073. RAD YC
  12074. AOD T6 ADVANCE QUEUE TYPE
  12075. LMN MXQT
  12076. ZJN DSS8 IF ALL QUEUES COMPLETE
  12077. LJM DSS4 LOOP
  12078.  
  12079. * DISPLAY SERVICE LIMITS.
  12080.  
  12081. DSS8 LDN MXQT*YINC ADJUST Y-COORDINATE
  12082. RAD YC
  12083. OAN CH+40
  12084. LDC CH37
  12085. OAN CH+40
  12086. SFA JCB,T7 GET SERVICE LIMIT WORDS FROM JCB
  12087. ADN SVJT
  12088. CRD CM
  12089. ADN MCMT-SVJT
  12090. CRD SH
  12091. ADN MECT-MCMT
  12092. CRD SR
  12093. ADN CSJT-MECT
  12094. CRD SP
  12095. ADK JCTT-CSJT
  12096. CRD T0
  12097. ADK PFCT-JCTT
  12098. CRD T1
  12099. LDD T1 SAVE *PF* VALUES
  12100. STD T3
  12101. LDD T0
  12102. STD T4
  12103.  
  12104. * DISPLAY *CP*, *CT*, *CM*, *NJ*, *TD*.
  12105.  
  12106. LDC CH37 OUTPUT X-COORDINATE
  12107. OAN CH+40
  12108. LDD SH SET CONTROL POINT SLICE PRIORITY
  12109. STD CM
  12110. LDN CM INITIALIZE BYTE NUMBER
  12111. STD T2
  12112. DSS9 LDI T2 DISPLAY NEXT BYTE
  12113. RJM D4S
  12114. AOD T2
  12115. LMN CM+5
  12116. NJN DSS9 IF NOT END OF WORD
  12117.  
  12118. * DISPLAY *FL*, *AM*, *EC*, *EM*.
  12119.  
  12120. LCN YINC
  12121. RAD YC OUTPUT COORDINATES
  12122. OAN CH+40
  12123. LDC CH37
  12124. OAN CH+40
  12125. LDD SH+2 DISPLAY *FL* VALUE
  12126. RJM D4S
  12127. LDC CH42
  12128. OAN CH+40
  12129. LDD SH+3 DISPLAY *AM* VALUE
  12130. SHN 14
  12131. LMD SH+4
  12132. RJM D6S
  12133. LCN YINC OUTPUT COORDINATES
  12134. ADD YC
  12135. OAN CH+40
  12136. LDC CH35
  12137. OAN CH+40
  12138. LDD SR+2 DISPLAY *EC* VALUE
  12139. DSSE SHN 0
  12140. * SHN UESC (UESC = USER EXTENDED MEMORY SHIFT COUNT)
  12141. RJM D6S
  12142. LDC CH42
  12143. OAN CH+40
  12144. LDD SR+4 DISPLAY *EM* VALUE
  12145. DSSF SHN 0
  12146. * SHN UESC (UESC = USER EXTENDED MEMORY SHIFT COUNT)
  12147. RJM D6S
  12148.  
  12149. * DISPLAY *DS*, *FC*, *CS*, *FS*.
  12150.  
  12151. LDC CH51
  12152. OAN CH+40
  12153. LDN 4 INITIALIZE *PF* COUNTER
  12154. STD T6
  12155. DSS10 LDD T3
  12156. SHN 3
  12157. STD T3
  12158. SHN -14
  12159. RJM D2S
  12160. SOD T6
  12161. NJN DSS10 IF MORE PARAMETERS
  12162.  
  12163. * DISPLAY *TP*, *AJ*, AND *DT*.
  12164.  
  12165. LDD YC OUTPUT COORDINATES
  12166. OAN CH+40
  12167. LDC CH49
  12168. OAN CH+40
  12169. LDD SH+1 DISPLAY *TP*
  12170. RJM D4S
  12171. LDD T4 DISPLAY *AJ*
  12172. RJM D4S
  12173. LDC CH63
  12174. OAN CH+40
  12175. LDM TNSC,T5
  12176. OAN CH+40
  12177.  
  12178. * DISPLAY *PR*, *SE*, *RS* AND *US*.
  12179.  
  12180. LCN 2*YINC MOVE TO 4TH LINE
  12181. ADD YC
  12182. OAN CH+40 OUTPUT Y-COORDINATE
  12183. LDC CH37
  12184. OAN CH+40 OUTPUT X-COORDINATE
  12185. LDD SP
  12186. STD SP+1
  12187. LDN SP+1 INITIALIZE BYTE NUMBER
  12188. STD T2
  12189. DSS10.1 LDI T2 DISPLAY NEXT BYTE
  12190. RJM D4S
  12191. AOD T2
  12192. LMN SP+5
  12193. NJN DSS10.1 IF NOT END OF WORD
  12194.  
  12195. * ADVANCE COORDINATES FOR NEXT SERVICE CLASS.
  12196.  
  12197. LCN 4*YINC DECREMENT Y-COORDINATE
  12198. RAD YC
  12199. AOD T7 ADVANCE SERVICE CLASS
  12200. SBM DSSB
  12201. ZJN DSS11 IF PAGE FULL
  12202. LJM DSS1 LOOP
  12203.  
  12204. * DISPLAY *SSTL* AND *INWL*.
  12205.  
  12206. DSS11 LDD T7 SET NEXT PAGE INDEX
  12207. STM TDSS+1
  12208. DSS12 LCN YINC
  12209. RAD YC
  12210. OAN CH+40
  12211. DISPLA CH03,,(SSTL =)
  12212. LDN SSTL READ SYSTEM STATUS
  12213. CRD CM
  12214. RJM D5F DISPLAY STATUS WORD
  12215. LCN YINC DECREMENT Y-COORDINATE
  12216. RAD YC
  12217. OAN CH+40
  12218. DISPLA CH03,,(INWL =)
  12219. LDC INWL READ INTERLOCK WORD
  12220. CRD CM
  12221. RJM D5F DISPLAY INTERLOCK WORD
  12222. LJM DSSX RETURN
  12223.  
  12224.  
  12225. DSSA CON CH01,LN06
  12226. DATA H*SC QU QUEUE VALUES*
  12227. CON CH35
  12228. DATA H*SERVICE LIMITS*
  12229. CON CH39,LN07
  12230. DATA H*CP*
  12231. CON CH45
  12232. DATA H*CT*
  12233. CON CH51
  12234. DATA H*CM*
  12235. CON CH57
  12236. DATA H*NJ*
  12237. CON CH63
  12238. DATA H*TD*
  12239. CON CH39,LN08
  12240. DATA H*FL*
  12241. CON CH45
  12242. DATA H*AM*
  12243. CON CH51
  12244. DATA H*TP*
  12245. CON CH57
  12246. DATA H*AJ*
  12247. CON CH63
  12248. DATA H*DT*
  12249. CON CH09,LN09
  12250. DATA H*IL*
  12251. CON CH14
  12252. DATA H*LP*
  12253. CON CH19
  12254. DATA H*UP*
  12255. CON CH24
  12256. DATA H*WF*
  12257. CON CH29
  12258. DATA H*IP*
  12259. CON CH39
  12260. DATA H*EC*
  12261. CON CH45
  12262. DATA H*EM*
  12263. CON CH51
  12264. DATA H*DS FC CS FS*
  12265. CON CH39,LN10
  12266. DATA H*PR*
  12267. CON CH45
  12268. DATA H*SE*
  12269. CON CH51
  12270. DATA H*RS*
  12271. CON CH57
  12272. DATA H*US*
  12273. DSSAL EQU *-DSSA
  12274.  
  12275. DSSB CON 0 FIRST SERVICE CLASS NEXT PAGE
  12276. TQUT SPACE 4,10
  12277. ** TQUT - TABLE OF QUEUE TYPES.
  12278.  
  12279.  
  12280. TQUT CON 2RIN
  12281. CON 2REX
  12282. CON 2ROT
  12283.  
  12284. CON 0 END OF TABLE
  12285. TNSC SPACE 4,10
  12286. ** TNSC - TABLE OF TWO-CHARACTER SERVICE CLASS TYPES.
  12287.  
  12288.  
  12289. LIST D,G
  12290. TNSC DATA H+"NMSC"+
  12291. LIST *
  12292. CON 0 END OF TABLE
  12293. PSD SPACE 4,10
  12294. ** PSD - PAGE *S* DISPLAY.
  12295. *
  12296. * ENTRY (T2) = 0, IF PAGE FORWARD.
  12297. * = 1, IF PAGE BACKWARD.
  12298.  
  12299.  
  12300. PSD BSS 0 ENTRY
  12301. LDD T2
  12302. NJN PSD1 IF *-*
  12303. LDP TDSS+1
  12304. PSD1 STP TDSS
  12305. LJM. /KEYBOARD/KBIX RETURN
  12306. SPACE 4,10
  12307. DSPEND
  12308. DISPLAY (DISPLAY T - TIME SHARING STATUS.),PTD
  12309. ENTRY DST,D
  12310. DST SPACE 4,10
  12311. *** *T* DISPLAY.
  12312. *
  12313. * EXAMPLE -
  12314. *
  12315. * 1 2 3 4 5 6
  12316. * 1234567890123456789012345678901234567890123456789012345678901234
  12317. * TOTAL USERS = 123456D ACTIVE USERS = 123D
  12318. *
  12319. * CONN USER JSN W ST TERM CONN USER JSN W ST TERM
  12320. *
  12321. * 2 CDCCE ABBC * TE 56 USERXYZ BBCC IO CLNTN17
  12322. * 23 ASDFASD ACCC EX BLNTA1F 65 ABCDEFG BCCC * DO ALNTN07
  12323. * MORE
  12324. *
  12325. * THE FOLLOWING DIRECT CELLS ARE USED FOR SPECIFIC FUNCTIONS.
  12326. *
  12327. * (SR+1 - SR+2) = WARN MESSAGE ADDRESS.
  12328. * (SR+3) = NUMBER OF ACTIVE USERS.
  12329. * (SR+4) = COUNT OF NUMBER OF ACTIVE USERS FOUND SO FAR.
  12330. * (T3) = MAXIMUM NUMBER OF USERS POSSIBLE.
  12331. * (T5) = DISPLAY COLUMN INDICATOR.
  12332. * (T6) = CURRENT CONNECTION NUMBER.
  12333. * (T8) = RA/100B.
  12334. * (YC) = Y-COORDINATE.
  12335.  
  12336.  
  12337. DST SUBR ENTRY/EXIT
  12338. DISPHD ("THDR") DISPLAY SCREEN TITLE
  12339. LDM CTOS SET TOP OF SCREEN
  12340. OAN CH+40
  12341. SBN 2*YINC
  12342. STM DSTD
  12343. SBN YINC
  12344. STD YC
  12345. LDM. CMEI
  12346. ZJN DST1 IF CME NOT PRESENT
  12347. STM DSTA
  12348. DST1 LDC IFSI FIND *IAF*
  12349. RJM FSS
  12350. NJN DST2 IF INTERACTIVE SUBSYSTEM ACTIVE
  12351. DISPLA CH01,,(NOT ACTIVE)
  12352. UJN DSTX RETURN
  12353.  
  12354. DST2 SHN 7 READ JOB STATUS
  12355. DSTA ADN FLSW
  12356. * ADN FLSW+1 (CME PRESENT)
  12357. CRD CM
  12358. LRD CM+1
  12359. LDD CM+3 GET TERMINAL TABLE POINTER
  12360. SHN 6
  12361. ADN /REM/VTTP
  12362. CRD AB
  12363. ADN /REM/VWMP-/REM/VTTP GET WARN MESSAGE ADDRESS
  12364. CRD SR
  12365. ADN /REM/VTNL-/REM/VWMP TOTAL USER COUNT (CM+3 - CM+4)
  12366. CRD CM
  12367. ADN /REM/VANL-/REM/VTNL ACTIVE USER COUNT (CM+2)
  12368. CRD T6
  12369. ADN /REM/VMNL-/REM/VANL MAXIMUM USER COUNT (CM+1)
  12370. CRD T5
  12371. ADN /REM/VCTL-/REM/VMNL CONVERTED *VTNL* (T6 - CM)
  12372. CRD T4
  12373. ADN /REM/VCAL-/REM/VCTL CONVERTED *VANL* (T4 - T5)
  12374. CRD T1
  12375. SHN -6 SET RA
  12376. STD T8
  12377. LDD CM+1 SAVE MAXIMUM USER COUNT
  12378. ADN /REM/VPST
  12379. STD T3
  12380. DISPLA CH01,,(TOTAL USERS = )
  12381. LDN 3 DISPLAY TOTAL USER COUNT
  12382. OAM T6,CH
  12383. LDD CM+3
  12384. ADD CM+4
  12385. ZJN DST3 IF NO USERS
  12386. LDC 1RD*100 ADD DECIMAL POST-RADIX
  12387. DST3 OAN CH+40
  12388. DISPLA ,,( ACTIVE USERS =)
  12389. LDN 2
  12390. OAM T4,CH DISPLAY ACTIVE USER COUNT
  12391. LDD CM+2 SAVE NUMBER OF ACTIVE USERS
  12392. STD SR+3
  12393. ZJN DST4 IF NO ACTIVE USERS
  12394. LDC 1RD*100 ADD DECIMAL POST-RADIX
  12395. DST4 OAN CH+40
  12396. LDM TDST SET FIRST CONNECTION NUMBER ON PAGE
  12397. STD T6
  12398. LDN DSTCL
  12399. OAM DSTC,CH
  12400. * LDN 0 INITIALIZE DISPLAY COLUMN
  12401. STD T5
  12402. STD SR+4 INITIALIZE NUMBER OF ENTRIES USED
  12403.  
  12404. * INITIALIZE TERMINAL TABLE ADDRESSES.
  12405.  
  12406. LDD AB+1 SET ADDRESS OF FIRST TERMINAL TABLE ENTRY
  12407. SHN 6
  12408. ADD T8
  12409. SHN 6
  12410. ADD AB+2
  12411. STM TTAA+1
  12412. SHN -14
  12413. LMC ADCI
  12414. STM TTAA
  12415.  
  12416. * COUNT NUMBER OF ACTIVE USERS BEFORE BEGINNING OF CURRENT
  12417. * PAGE.
  12418.  
  12419. LDD T6 SAVE FIRST CONNECTION NUMBER ON PAGE
  12420. STD T4
  12421. LMN /REM/VPST
  12422. ZJN DST7 IF BEGINNING OF TERMINAL TABLE
  12423. LDN /REM/VPST INITIALIZE INDEX
  12424. STD T6
  12425. DST5 RJM TTA GET NEXT JSN
  12426. ADN /REM/VFST
  12427. CRD CM
  12428. LDD CM
  12429. ZJN DST6 IF ENTRY NOT IN USE
  12430. AOD SR+4 INCREMENT NUMBER OF ENTRIES IN USE
  12431. DST6 AOD T6 INCREMENT INDEX
  12432. LMD T4
  12433. NJN DST5 IF NOT BEGINNING OF PAGE
  12434. DST7 LDD T6 GET FIRST CONNECTION NUMBER ON PAGE
  12435. UJN DST9 ENTER LOOP
  12436.  
  12437. * PROCESS NEXT TERMINAL.
  12438.  
  12439. DST8 LDD SR+3
  12440. LMD SR+4
  12441. ZJN DST11 IF NO MORE ACTIVE USERS
  12442. AOD T6 INCREMENT CONNECTION NUMBER
  12443. DST9 LMD T3
  12444. ZJN DST11 IF END OF TERMINALS
  12445. RJM TTA SET TERMINAL TABLE ADDRESS
  12446. ADN /REM/VFST GET JSN
  12447. CRD CM
  12448. LDD CM
  12449. ZJN DST8 IF USER NOT ACTIVE
  12450. AOD SR+4 INCREMENT NUMBER OF ENTRIES IN USE
  12451. LCN YINC
  12452. RAD YC DECREMENT Y-COORDINATE
  12453. DST10 OAN CH+40
  12454. SBM CBOS
  12455. PJN DST14 IF COLUMN NOT FULL
  12456. LDD T5
  12457. NJN DST12 IF BOTH COLUMNS FULL
  12458. AOD T5
  12459. LDM DSTE,T5 OUTPUT RIGHT COLUMN HEADER
  12460. OAN CH+40
  12461. LDN DSTDL DISPLAY HEADER
  12462. OAM DSTD,CH
  12463. LDM DSTD RESET Y-COORDINATE
  12464. SBN 2*YINC
  12465. STD YC
  12466. UJN DST10 USE RIGHT COLUMN
  12467.  
  12468. DST11 LDN /REM/VPST RESET FIRST CONNECTION NUMBER
  12469. UJN DST13 RETURN
  12470.  
  12471. DST12 LDN TMREL OUTPUT *MORE* MESSAGE
  12472. OAM TMRE,CH
  12473. LDD T6
  12474. DST13 STM TDST+1 SET FIRST CONNECTION NUMBER FOR NEXT PAGE
  12475. LJM DSTX RETURN
  12476.  
  12477. * DISPLAY TERMINAL STATUS.
  12478.  
  12479. DST14 RJM TTA SET TERMINAL TABLE ADDRESS
  12480. ADK /REM/VUIT GET USER NAME
  12481. CRD SH
  12482. ADN /REM/VSTT-/REM/VUIT GET WARNING STATUS
  12483. CRD AB
  12484. LDM DSTE,T5 OUTPUT X-COORDINATE
  12485. OAN CH+40
  12486. LDD T6 DISPLAY CONNECTION NUMBER
  12487. RJM D4S
  12488. LDD SH+3 DISPLAY USER NAME
  12489. SCN 77
  12490. STD SH+3
  12491. LDM DSTF,T5 OUTPUT X-COORDINATE
  12492. OAN CH+40
  12493. LDN 4
  12494. OAM SH,CH
  12495. STD T1 CLEAR MESSAGE INDEX
  12496. LDM DSTG,T5 OUTPUT X-COORDINATE
  12497. OAN CH+40
  12498. LDN 2 DISPLAY JSN
  12499. OAM CM,CH
  12500. LDD SR+1
  12501. ADD SR+2
  12502. ZJN DST15 IF NO WARN MESSAGE PRESENT
  12503. LDD AB
  12504. LPN 4
  12505. NJN DST15 IF WARN MESSAGE ISSUED
  12506. LDC 2R *
  12507. UJN DST16 ISSUE WARN MESSAGE REMINDER
  12508.  
  12509. DST15 LDN 0
  12510. DST16 OAN CH+40
  12511. SFA EJT,SH+4
  12512. ADK JSNE
  12513. CRD SH READ JOB STATUS
  12514. LDD SH+4
  12515. LPN 76
  12516. SHN -1
  12517. STD SH+4
  12518. LDM DSTH,T5 OUTPUT X-COORDINATE
  12519. OAN CH+40
  12520. LDM DSTJ,SH+4
  12521. OAN CH+40 DISPLAY JOB STATUS
  12522.  
  12523. * DISPLAY TERMINAL NAME.
  12524.  
  12525. LDD T8 RA
  12526. SHN 6
  12527. ADN /REM/VTNP ADDRESS OF TABLE
  12528. CRD CM
  12529. LDD CM+1
  12530. SHN 6
  12531. ADD T8
  12532. SHN 6
  12533. ADD CM+2
  12534. ADD T6
  12535. CRD CM GET TERMINAL NAME
  12536. LDM DSTI,T5 OUTPUT X-COORDINATE
  12537. OAN CH+40
  12538. LDN 4
  12539. OAM CM,CH DISPLAY TERMINAL NAME
  12540. LJM DST8 PROCESS NEXT TERMINAL
  12541.  
  12542.  
  12543. * HEADER.
  12544.  
  12545.  
  12546. DSTC CON CH01
  12547. DSTD CON LN07
  12548. DATA H*CONN USER JSN W ST TERM*
  12549. DSTDL EQU *-DSTD
  12550. DSTCL EQU *-DSTC
  12551.  
  12552. * X-COORDINATE FOR CONNECTION NUMBER.
  12553.  
  12554. DSTE BSS 0
  12555. CON CH01 LEFT COLUMN
  12556. CON CH35 RIGHT COLUMN
  12557.  
  12558. * X-COORDINATE FOR USERNAME.
  12559.  
  12560. DSTF BSS 0
  12561. CON CH06
  12562. CON CH40
  12563.  
  12564. * X-COORDINATE FOR JSN.
  12565.  
  12566. DSTG BSS 0
  12567. CON CH14
  12568. CON CH48
  12569.  
  12570. * X-COORDINATE FOR JOB STATUS.
  12571.  
  12572. DSTH BSS 0
  12573. CON CH21 LEFT COLUMN
  12574. CON CH55 RIGHT COLUMN
  12575.  
  12576. * X-COORDINATE FOR TERMINAL NAME
  12577.  
  12578. DSTI BSS 0
  12579. CON CH24 LEFT COLUMN
  12580. CON CH58 RIGHT COLUMN
  12581.  
  12582. * T - DISPLAY *MORE* MESSAGE.
  12583.  
  12584. TMRE CON CH30
  12585. DATA 4HMORE
  12586. TMREL EQU *-TMRE
  12587.  
  12588. * JOB STATUS CODES.
  12589.  
  12590. DSTJ BSS 0
  12591. DATA H*IN* PRJS
  12592. DATA H*EX* EXJS
  12593. DATA H*RO* ROJS
  12594. DATA H*SI* SIJS
  12595. DATA H*SO* SOJS
  12596. DATA H*TE* TOJS
  12597. DATA H*IO* IOJS
  12598. DATA H*DO* DOJS
  12599. DATA H*SU* SUJS
  12600. DATA H*PC* PCJS
  12601. DATA H*ER* ERJS
  12602. DATA H*NV* NVJS
  12603. DATA H*PW* PWJS
  12604. DATA H*SW* SWJS
  12605. DSTJL EQU *-DSTJ
  12606.  
  12607. ERRNZ DSTJL-MXJS TABLE SIZE ERROR
  12608. PTD SPACE 4,10
  12609. ** PTD - PAGE *T* DISPLAY.
  12610. *
  12611. * ENTRY (T2) = 0, IF PAGE FORWARD.
  12612. * = 1, IF PAGE BACKWARD.
  12613.  
  12614.  
  12615. PTD BSS 0 ENTRY
  12616. LDD T2
  12617. NJN PTD1 IF *-*
  12618. LDM TDST+1
  12619. UJN PTD2 ADVANCE DISPLAY
  12620.  
  12621. PTD1 LDN /REM/VPST RESET TO FIRST CONNECTION NUMBER
  12622. PTD2 STM TDST STORE NEW PAGE INDEX
  12623. LJM. /KEYBOARD/KBIX RETURN
  12624. TTA SPACE 4,10
  12625. ** TTA - SET TERMINAL TABLE ADDRESS.
  12626. *
  12627. * ENTRY (T6) = TERMINAL NUMBER.
  12628. *
  12629. * EXIT (A) = TERMINAL TABLE ADDRESS.
  12630.  
  12631.  
  12632. TTA SUBR ENTRY/EXIT
  12633. TTAP LDD,T6 SET RELATIVE INDEX IN TABLE
  12634. TTAA ADC * ADD BASE ADDRESS
  12635. UJN TTAX RETURN
  12636. SPACE 4,10
  12637. DSPEND
  12638. DISPLAY (DISPLAY V - PP BREAKPOINT.),,CMR
  12639. ENTRY DSV,DSV
  12640. SPACE 4,10
  12641. *** *V* DISPLAY.
  12642.  
  12643.  
  12644. DSV SUBR ENTRY/EXIT
  12645. DISPHD (V,)
  12646. LDM TDSV SAVE REFRESH FLAG
  12647. STD T5
  12648. RJM DPN DISPLAY PP NUMBER
  12649. DISPLA ,,(. PP BREAKPOINT.)
  12650. * LDN 0
  12651. STD T6 INITIALIZE CM BUFFER INDEX
  12652.  
  12653. * SET COMMUNICATIONS ADDRESS.
  12654.  
  12655. LDM TDSV+1 PP MB+5
  12656. STD CN
  12657. ZJN DSVX IF NO PP PRESENT
  12658. SBN 1
  12659. STD T7 SET END OF COMMUNICATIONS AREA DISPLAY
  12660. SBN 6
  12661. STD T4 FWA OF PP COMMUNICATIONS AREA
  12662.  
  12663. * LOCATE COMMUNICATION AREA IN CMR.
  12664.  
  12665. LDN DFPP FETCH DAYFILE-S POINTER
  12666. CRD CM
  12667. LDD CM
  12668. SHN 14
  12669. LMD CM+1
  12670. SBN 50 LOCATE COMMUNICATION AREA
  12671. STM ACAA+1
  12672. SHN -14
  12673. ADC ADCI UPDATE ROUTINE *ACA*
  12674. STM ACAA
  12675.  
  12676. * DISPLAY PP COMMUNICATIONS AREA.
  12677.  
  12678. LDM CTOS
  12679. ADN YINC
  12680. STD YC SET COORDINATES
  12681. RJM PNL
  12682. LDD T4 DISPLAY PP COMMUNICATIONS ADDRESS
  12683. RJM D4D
  12684. RJM CBK CHECK PP AT BREAKPOINT
  12685. STD T3
  12686. ZJN DSV1 IF AT BREAKPOINT
  12687. LDN 2
  12688. RAD T7 ADJUST MESSAGE BUFFER LIMIT CHECK
  12689. DSV1 LDD T4
  12690. RJM DCA DISPLAY WORD
  12691. RJM PNL
  12692. AOD T4 ADVANCE ADDRESS
  12693. LMD T7
  12694. NJN DSV1 IF MORE TO DISPLAY
  12695. LDD T3
  12696. ZJN DSV3 IF AT BREAKPOINT
  12697. DISPLA CH01,LN17,(NOT AT BREAKPOINT)
  12698. DSV2 LJM DSVX RETURN
  12699.  
  12700. * DISPLAY MB+4 AND MB+5.
  12701.  
  12702. DSV3 AOD T6 FETCH DATA FROM CM BUFFER
  12703. RJM ACA
  12704. CRD CM DISPLAY 5 GROUPS OF 4 DIGITS
  12705. RJM D5F
  12706. RJM PNL SWITCH TO NEXT DISPLAY LINE
  12707. AOD T6
  12708. RJM ACA READ MB+5 DATA
  12709. CRD CM
  12710. RJM D5F DISPLAY DATA
  12711. AOD T6
  12712.  
  12713. * CHECK FOR DISPLAY UPDATE REQUIRED.
  12714.  
  12715. LDD T5 CHECK REFRESH FLAG
  12716. SCN 77
  12717. ZJN DSV4 IF NO UPDATE REQUIRED
  12718. LMD T5
  12719. STM TDSV CLEAR UPDATE FLAG
  12720. RJM BLD ASSEMBLE NEW DISPLAY DATA
  12721. UJN DSV2 RETURN
  12722.  
  12723. * DISPLAY *P* AND *A* REGISTERS.
  12724.  
  12725. DSV4 LDD CN READ REGISTER DATA
  12726. CRD CM
  12727. DISPLA CH54,LN10,(P = )
  12728. LDD CM+4 DISPLAY *P* REGISTER
  12729. RJM D4D
  12730. DISPLA CH54,LN12,(A = )
  12731. LDD CM+2 DISPLAY *A* REGISTER
  12732. RJM D2D
  12733. LDD CM+3
  12734. RJM D4D
  12735. LCN YINC SKIP ONE LINE
  12736. RAD YC
  12737. RJM PNL RESET DISPLAY COORDINATES
  12738.  
  12739. * DISPLAY PP MEMORY AT *C*.
  12740.  
  12741. LDM DCTY
  12742. ZJN DSV6 IF CC545
  12743. LCN 3
  12744. DSV6 ADN 10 SET BLOCK COUNT
  12745. STD T5
  12746. LDN 1RC DISPLAY BLOCK IDENTIFIER *C*
  12747. OAN CH
  12748. DSV7 RJM DPM DISPLAY EIGHT BYTES
  12749. SOD T5
  12750. NJN DSV7 IF NOT END OF BLOCK
  12751. RJM PNL SKIP ONE LINE
  12752.  
  12753. * DISPLAY PP MEMORY AT *D*.
  12754.  
  12755. LDN 10 SET BLOCK COUNT
  12756. STD T5
  12757. LDN 1RD DISPLAY BLOCK IDENTIFIER *D*
  12758. OAN CH
  12759. DSV8 RJM DPM DISPLAY EIGHT BYTES
  12760. SOD T5
  12761. NJN DSV8 IF NOT END OF BLOCK
  12762. LJM DSVX RETURN
  12763. ACA SPACE 4,10
  12764. ** ACA - ADD CM BUFFER ADDRESS.
  12765. *
  12766. * ENTRY (A) = OFFSET INTO BUFFER.
  12767.  
  12768.  
  12769. ACA SUBR ENTRY/EXIT
  12770. ACAA ADC 0
  12771. UJN ACAX RETURN
  12772. BLD SPACE 4,10
  12773. ** BLD - BUILD BUFFER.
  12774. *
  12775. * ENTRY (T3) = CM BUFFER INDEX.
  12776. * (CN) = PP MB+5 ADDRESS.
  12777. *
  12778. * USES T5.
  12779. *
  12780. * CALLS SPM.
  12781. *
  12782. * NOTE - DATA STORED IN CM AS (12/ADDR, 48/DATA)
  12783.  
  12784.  
  12785. BLD SUBR ENTRY/EXIT
  12786. AOM SPMA
  12787. LDC PBK4 SAVE MB+4 IN CM BUFFER
  12788. RJM SPM
  12789. LDC PBK5 SAVE MB+5
  12790. RJM SPM
  12791. SOM SPMA RESTORE INSTRUCTION FOR MEMORY DATA
  12792.  
  12793. * READ AREA AT C AND D.
  12794.  
  12795. LDM DCTY
  12796. ZJN BLD1 IF CC545
  12797. LCN 3*2
  12798. BLD1 ADN 10*2 SET BLOCK COUNT
  12799. STD T5
  12800. LDM TDSV+2 ASSEMBLE DATA FOR DISPLAY AT C
  12801. STD T7
  12802. BLD2 LDD T7 SAVE FOUR BYTES
  12803. RJM SPM
  12804. SOD T5
  12805. NJN BLD2 IF NOT END OF BLOCK
  12806. LDN 10*2
  12807. STD T5 SET BLOCK COUNT
  12808. LDM TDSV+3
  12809. STD T7 ASSEMBLE DATA FOR DISPLAY AT D
  12810. BLD3 LDD T7
  12811. RJM SPM SAVE FOUR BYTES
  12812. SOD T5
  12813. NJN BLD3 IF NOT END OF BLOCK
  12814. UJP BLDX RETURN
  12815. CBK SPACE 4,10
  12816. ** CBK - CHECK PP AT BREAKPOINT.
  12817. *
  12818. * ENTRY (CN) = PP MB+5 ADDRESS.
  12819. *
  12820. * EXIT (A) = 0 IF AT BREAKPOINT.
  12821. * (CM - CM+4) = (MB+5).
  12822.  
  12823.  
  12824. CBK SUBR ENTRY/EXIT
  12825. LDD CN
  12826. CRD CM READ PP MESSAGE BUFFER
  12827. LDD CM
  12828. ADD CM+1 CHECK PP AT BREAKPOINT
  12829. LMC 2*7777
  12830. UJN CBKX RETURN
  12831. DCA SPACE 4,10
  12832. ** DCA - DISPLAY COMMUNICATIONS AREA WORD.
  12833. *
  12834. * ENTRY (A) = ADDRESS OF WORD.
  12835. *
  12836. * USES CM - CM+4, SH - SH+4.
  12837. *
  12838. * CALLS D5F.
  12839.  
  12840.  
  12841. DCA1 LDN CM SET ADDRESS OF PROGRAM NAME
  12842. DCA2 STM DCAA
  12843. LDC CH06 OUTPUT X-COORDINATE
  12844. OAN CH+40
  12845. LDN 2 TRANSLATE NAME / FUNCTION
  12846. OAM **,CH
  12847. DCAA EQU *-1
  12848. DCA3 RJM D5F DISPLAY WORD
  12849.  
  12850. DCA SUBR ENTRY/EXIT
  12851. CRD CM
  12852. LPN 7
  12853. ZJN DCA1 IF PP INPUT REGISTER ADDRESS
  12854. LMN 1
  12855. NJN DCA3 IF NOT OUTPUT REGISTER ADDRESS
  12856. LDD CM
  12857. SHN -1 UNPACK MONITOR FUNCTION
  12858. LPN 77
  12859. STD T0 SET TRANSLATION TABLE INDEX
  12860. LDC RPLP
  12861. CRD SH FETCH RPL POINTER
  12862. LDD SH
  12863. SHN 14 FORM FWA OF RPL
  12864. LMD SH+1
  12865. ZJN DCA3 IF LIBRARY LOCKED
  12866. ADK /DISPLAY/TFTN
  12867. ADD T0 GET MONITOR FUNCTION MNEMONIC
  12868. CRD SH
  12869. LDD CM UNPACK MONITOR FUNCTION
  12870. SHN 1
  12871. LPN 2 FORM BYTE INDEX
  12872. ADN SH
  12873. UJP DCA2 SET ADDRESS OF MNEMONIC
  12874. DPM SPACE 4,10
  12875. ** DPM - DISPLAY PP MEMORY.
  12876. *
  12877. * ENTRY (T6) = CM BUFFER INDEX.
  12878. *
  12879. * EXIT (T6) = (T6) + 2.
  12880. * (YC) = Y-COORDINATE ADVANCED TO NEXT LINE.
  12881. *
  12882. * USES T7, CM - CM+4.
  12883. *
  12884. * CALLS ACA, D4F, PNL.
  12885.  
  12886.  
  12887. DPM SUBR ENTRY/EXIT
  12888. LDD T6
  12889. RJM ACA FETCH DATA FROM CM BUFFER
  12890. CRD T7
  12891. LDC CH03
  12892. OAN CH OUTPUT X-COORDINATE
  12893. LDN 1R(
  12894. OAN CH
  12895. LDD T7 DISPLAY ADDRESS VALUE
  12896. RJM D4D
  12897. LDC 2R)
  12898. OAN CH
  12899. LDC CH11-5*XINC SET X-COORDINATE
  12900. STD T3
  12901. RJM D4F DISPLAY FOUR FIELDS
  12902. AOD T6
  12903. RJM ACA GET NEXT FOUR BYTES
  12904. CRD T7
  12905. RJM D4F DISPLAY FOUR FIELDS
  12906. RJM PNL
  12907. AOD T6
  12908. UJN DPMX RETURN
  12909. DPN SPACE 4,10
  12910. ** DPN - DISPLAY PP NUMBER.
  12911. *
  12912. * ENTRY (T5) = PP NUMBER.
  12913. *
  12914. * USES AB - AB+4, CM - CM+4.
  12915. *
  12916. * CALLS D2D.
  12917.  
  12918.  
  12919. DPN1 LDD T5 DISPLAY PP NUMBER
  12920. RJM D2D
  12921.  
  12922. DPN SUBR ENTRY/EXIT
  12923. LDN PPUL
  12924. CRD CM FETCH PP COUNTS
  12925. LDN PPCP
  12926. CRD AB GET PP COMMUNICATIONS AREA ADDRESS
  12927. AOD CM+3
  12928. LPN 77 PSEUDO PP + CPP COUNT
  12929. ADD CM+2
  12930. SHN 3 CALCULATE LWA+1 OF COMMUNICATION AREA
  12931. ADD AB+4
  12932. SBN 1 LWA OF PSEUDO PP MESSAGE BUFFER
  12933. LMM TDSV+1
  12934. NJN DPN1 IF NOT PSEUDO PP
  12935. LDC 2RPS
  12936. OAN CH+40
  12937. UJN DPNX RETURN
  12938. D4F SPACE 4,10
  12939. ** D4F - DISPLAY FOUR FIELDS.
  12940. *
  12941. * ENTRY (T3) = CURRENT X-COORDINATE.
  12942. * (CM - CM+4) = DATA TO DISPLAY.
  12943. *
  12944. * EXIT (T3) ADVANCED.
  12945. *
  12946. * USES T2.
  12947. *
  12948. * CALLS D4D.
  12949.  
  12950.  
  12951. D4F SUBR ENTRY/EXIT
  12952. LDN CM
  12953. STD T2
  12954. D4F1 LDN 5*XINC ADVANCE X-COORDINATE
  12955. RAD T3
  12956. OAN CH OUTPUT COORDINATE
  12957. LDI T2
  12958. RJM D4D DISPLAY FOUR DIGITS
  12959. AOD T2
  12960. LMN CM+4
  12961. NJN D4F1 IF MORE TO DISPLAY
  12962. UJN D4FX RETURN
  12963. PNL SPACE 4,10
  12964. ** PNL - POSITION DISPLAY TO NEXT LINE.
  12965. *
  12966. * ENTRY (XC) = X-COORDINATE.
  12967. * (YC) = CURRENT Y-COORDINATE.
  12968. *
  12969. * EXIT (YC) = (YC) - YINC.
  12970.  
  12971.  
  12972. PNL SUBR ENTRY/EXIT
  12973. LCN YINC
  12974. RAD YC
  12975. LDN 2 POSITION DISPLAY
  12976. OAM XC,CH
  12977. UJN PNLX RETURN
  12978. SPM SPACE 4,10
  12979. ** SPM - SAVE PP MEMORY.
  12980. *
  12981. * ENTRY (A) = PP MEMORY ADDRESS.
  12982. * (T3) = CM BUFFER INDEX.
  12983. * (CN) = PP MB+5 ADDRESS.
  12984. *
  12985. * EXIT (T3) = (T3) + 1.
  12986. * (T7) = PP MEMORY ADDRESS + 4.
  12987. *
  12988. * USES T1, CM - CM+4.
  12989. *
  12990. * CALLS ACA, CBK.
  12991.  
  12992.  
  12993. SPM2 RJM CBK CHECK REQUEST COMPLETE
  12994. NJN SPM1 IF NOT COMPLETE
  12995. LDD CN
  12996. SBN 1
  12997. CRD CM FETCH DATA FROM PP
  12998. AOD T3
  12999. RJM ACA STORE DATA IN CM BUFFER
  13000. SPMA CWD T7
  13001. * CWD CM (SAVING MB+4 AND MB+5)
  13002. LDN 4
  13003. RAD T7 ADVANCE PP MEMORY ADDRESS
  13004.  
  13005. SPM SUBR ENTRY/EXIT
  13006. STD T7
  13007. STD CM+4
  13008. LDN PBCF PPN.C,XXXX.
  13009. STD CM+3
  13010. STD CM ENSURE NO 7777
  13011. LDD CN
  13012. CWD CM STORE PP REQUEST
  13013. LDN 77
  13014. STD T1 INITIALIZE COUNTER
  13015. SPM1 SOD T1
  13016. PJN SPM2 IF NOT TIMED OUT
  13017. LJM DSVX EXIT - PP LOST
  13018. SPACE 4,10
  13019. DSPEND
  13020. DISPLAY (DISPLAY W - MEMORY ALLOCATION.)
  13021. ENTRY DSWA,DSWA
  13022. SPACE 4,10
  13023. *** *W,A* DISPLAY - MEMORY ALLOCATION.
  13024. *
  13025. * DISPLAY MEMORY ALLOCATION.
  13026. *
  13027. * EXAMPLE -
  13028. *
  13029. * 1 2 3 4 5 6
  13030. * 1234567890123456789012345678901234567890123456789012345678901234
  13031. *
  13032. * CENTRAL MEMORY
  13033. *
  13034. * 40000
  13035. *
  13036. *
  13037. *
  13038. *
  13039. * EXTENDED MEMORY
  13040. *
  13041. * FILE I/O BUFF TRACK USER XM
  13042. * USER XM SPACE SPACE SIZE BLOCK SIZE
  13043. *
  13044. * UEM 2000 0 1000
  13045. * EQ 5 7700 20
  13046.  
  13047.  
  13048. DSWA SUBR ENTRY/EXIT
  13049. DISPHD (W,A. MEMORY ALLOCATION.)
  13050. * LDN 0 PRESET T9
  13051. STD T9
  13052. STD T7 PRESET NUMBER OF CONTROL BLOCK ENTRIES
  13053.  
  13054. * READ INFORMATION FROM LOW CORE.
  13055.  
  13056. LDK ECRL NO. OF *UEBS*-WORD BLOCKS FOR USER ACCESS
  13057. CRD AB
  13058. ADK UEML-ECRL DETERMINE IF UEM PRESENT
  13059. CRD CM
  13060. ADK EXML-UEML GET EST ORDINAL OF EQ WITH CPU PORT
  13061. CRD T2
  13062. ADK BIOL-EXML FWA BUFFERED I/O TABLES
  13063. CRD SR
  13064. ADK MEFL-BIOL GET SHIFT COUNTS
  13065. CRD SH
  13066. LDD SH+2 GET USER EM BLOCK SHIFT COUNT
  13067. SHN -11
  13068. ADD TH
  13069. ERRNZ SHNI-1000
  13070. STM DSWB
  13071. STM DSWD
  13072. STM DSWE
  13073. LDK ESTP GET LAST MS ORDINAL+1
  13074. CRD T1
  13075. ADK MABL-ESTP GET CM SIZE/100B
  13076. CRD SH
  13077. LDD SR+1
  13078. SHN 14
  13079. LMD SR+2
  13080. ZJN DSW1 IF NO I/O BUFFER SPACE DEFINED
  13081. ADK CBTP POINTER TO CONTROL BLOCK TABLES
  13082. CRD T7
  13083.  
  13084. * DISPLAY TITLES, COLUMN HEADERS, AND CENTRAL MEMORY.
  13085.  
  13086. DSW1 LDN DSWFL
  13087. OAM DSWF,CH
  13088. LDD SH+2
  13089. SHN 14
  13090. LMD SH+3
  13091. RJM D6S
  13092. LDC LN19 SET Y-COORDINATE
  13093. STD YC
  13094. OAN CH+40
  13095.  
  13096. * DISPLAY UEM FIRST IF PRESENT AND NO EQ ENTRY FOR IT.
  13097.  
  13098. LDD CM+4
  13099. LPN 2
  13100. ZJN DSW4 IF UEM NOT PRESENT
  13101. LDK NOPE-1 INITIALIZE EST ORDINAL FOR SEARCH
  13102. STD T5
  13103. DSW2 RJM FEM DETERMINE IF UEM HAS AN EQ ENTRY
  13104. ZJN DSW4 IF EQ ENTRY FOR UEM FOUND
  13105. PJN DSW2 IF EM TYPE IS NOT UEM, AND NOT END OF EST
  13106. STD T8 DO NOT DISPLAY *UEM* FLAG
  13107. STD T9 FLAG - UEM PRESENT WITHOUT EQ ENTRY
  13108. DISPLA CH01,,(UEM )
  13109. * LDN 0
  13110. STD T5 EQ ENTRY FOR UEM NOT APPLICABLE
  13111. LJM DSW9 DISPLAY USER EM FOR UEM
  13112.  
  13113. * FIND AND DISPLAY EACH EM EQUIPMENT.
  13114.  
  13115. DSW3 NJN DSW5 IF EST ORDINAL ALREADY INITIALIZED
  13116. DSW4 LDK NOPE-1 INITIALIZE EST ORDINAL FOR SEARCH
  13117. STD T5
  13118. DSW5 RJM FEM FIND EXTENDED MEMORY EQUIPMENT
  13119. MJP DSWAX IF END OF EST
  13120. DISPLA CH01,,(EQ)
  13121. LDD T5
  13122. RJM D4S
  13123.  
  13124. * DISPLAY FILE SPACE ALLOCATED ON EQUIPMENT AND TRACK SIZE.
  13125.  
  13126. LDC CH20
  13127. OAN CH+40
  13128. LDD CM+4 MST ADDRESS/10B
  13129. SHN 3
  13130. ADK TDGL GET NO. OF TRACKS ON DEVICE
  13131. CRD SR
  13132. ADK MDGL-TDGL
  13133. CRD SH SECTOR LIMIT
  13134. LDD SH+4 CREATE TRACK SHIFT FACTOR
  13135. SHN -5
  13136. LMN 4
  13137. ZJN DSW6 IF SHIFT FACTOR .EQ. 4
  13138. ADN 1
  13139. DSW6 LMN 4
  13140. ADD TH
  13141. ERRNZ SHNI-1000
  13142. STM DSWC
  13143. LDD T2+4 EQ WITH CPU PORT
  13144. LPC 777
  13145. LMD T5
  13146. ADD T9
  13147. STD T3
  13148. ZJN DSW7 IF EQ HAS CPU PORT AND UEM HAS EQ ENTRY
  13149. LDN 0
  13150. UJN DSW8 NO USER EM TO SUBTRACT
  13151.  
  13152. DSW7 LDD AB+1 NO. OF *UEBS*-WORD BLOCKS FOR USER ACCESS
  13153. DSWB SHN 0 (*UEBS* = 1000B WORDS)
  13154. * SHN 1 (*UEBS* = 2000B WORDS)
  13155. * SHN 2 (*UEBS* = 4000B WORDS)
  13156. * SHN 3 (*UEBS* = 10000B WORDS)
  13157. * SHN 4 (*UEBS* = 20000B WORDS)
  13158. DSW8 STD AB+4 SAVE USER EM SIZE
  13159. SHN -14
  13160. STD AB+3
  13161. LDD SR NUMBER OF TRACKS ON DEVICE
  13162. DSWC SHN 1 (TRACK SIZE = 20B SECTORS)
  13163. * SHN 2 (TRACK SIZE = 40B SECTORS)
  13164. * SHN 3 (TRACK SIZE = 100B SECTORS)
  13165. * SHN 4 (TRACK SIZE = 200B SECTORS)
  13166. SBD AB+4 SUBTRACT USER EM ON DEVICE
  13167. STD SR+4
  13168. SHN -14
  13169. SBD AB+3
  13170. SHN 14
  13171. LMD SR+4
  13172. RJM D6S DISPLAY FILE SPACE
  13173. LDC CH40
  13174. OAN CH+40
  13175. LDD SH+4
  13176. RJM D4S DISPLAY TRACK SIZE
  13177. LDD T3
  13178. NJN DSW10 IF EQ W/O CPU PORT OR UEM W/O EQ ENTRY
  13179.  
  13180. * DISPLAY USER EM, I/O BUFFER SPACE AND USER EM BLOCK SIZE.
  13181.  
  13182. DSW9 LDC CH11
  13183. OAN CH+40
  13184. LDD AB+1 NO. OF *UEBS*-WORD BLOCKS FOR USER ACCESS
  13185. DSWD SHN 0 (*UEBS* = 1000B WORDS)
  13186. * SHN 1 (*UEBS* = 2000B WORDS)
  13187. * SHN 2 (*UEBS* = 4000B WORDS)
  13188. * SHN 3 (*UEBS* = 10000B WORDS)
  13189. * SHN 4 (*UEBS* = 20000B WORDS)
  13190. RJM D6S
  13191. LDC CH30
  13192. OAN CH+40
  13193. LDD T7 NUMBER OF CBT ENTRIES
  13194. SHN 2 ONE CBT PER 4000-WORD I/O BUFFER
  13195. RJM D6S
  13196. LDD AB+1
  13197. ZJN DSW10 IF NO USER EM DEFINED
  13198. LDC CH50
  13199. OAN CH+40
  13200. LDC 1000 DEFAULT USER EM BLOCK SIZE
  13201. DSWE SHN 0 (*UEBS* = 1000B WORDS)
  13202. * SHN 1 (*UEBS* = 2000B WORDS)
  13203. * SHN 2 (*UEBS* = 4000B WORDS)
  13204. * SHN 3 (*UEBS* = 10000B WORDS)
  13205. * SHN 4 (*UEBS* = 20000B WORDS)
  13206. RJM D6S
  13207.  
  13208. * DISPLAY *UEM* IF THIS EQ IS UEM.
  13209.  
  13210. DSW10 LDD T8
  13211. NJN DSW11 IF THIS EQ IS NOT UEM
  13212. DISPLA CH60,,(UEM )
  13213. DSW11 LCN YINC
  13214. RAD YC
  13215. OAN CH+40
  13216. LDD T5
  13217. LJM DSW3 CHECK NEXT EST ORDINAL
  13218.  
  13219.  
  13220. DSWF CON LN07 CM TITLE
  13221. CON CH26
  13222. DATA H*CENTRAL MEMORY*
  13223. CON LN14 EM TITLE AND COLUMN HEADERS
  13224. CON CH25
  13225. DATA H*EXTENDED MEMORY*
  13226. CON LN16
  13227. CON CH21
  13228. DATA H*FILE*
  13229. CON CH29
  13230. DATA H*I/O BUFF*
  13231. CON CH40
  13232. DATA H*TRACK *
  13233. CON CH49
  13234. DATA H*USER XM *
  13235. CON LN17
  13236. CON CH11
  13237. DATA H*USER XM *
  13238. CON CH21
  13239. DATA H*SPACE *
  13240. CON CH30
  13241. DATA H*SPACE *
  13242. CON CH40
  13243. DATA H*SIZE*
  13244. CON CH48
  13245. DATA H*BLOCK SIZE*
  13246. CON LN09 POSITION FOR CM SIZE
  13247. CON CH29
  13248. DSWFL EQU *-DSWF
  13249. FEM SPACE 4,10
  13250. ** FEM - FIND EXTENDED MEMORY EQUIPMENTS.
  13251. *
  13252. * ENTRY (T4) = LAST MASS STORAGE EST ORDINAL+1.
  13253. * (T5) = EST ORD OF LAST EQ CHECKED.
  13254. *
  13255. * EXIT (A) .GT. 0, IF EM TYPE IS NOT UEM.
  13256. * = 0, IF EM TYPE IS UEM.
  13257. * = -1, IF END OF EST.
  13258. * (T8) .GT. 0, IF EM TYPE IS NOT UEM.
  13259. * = 0, IF EM TYPE IS UEM.
  13260. * (T5) = EST ORDINAL, IF EQ TYPE IS *DE* OR *DP*.
  13261. * (CM+4) = MST ADDRESS/10B.
  13262. *
  13263. * USES T5, T8, CM - CM+4, SR - SR+4.
  13264.  
  13265.  
  13266. FEM3 LCN 1
  13267.  
  13268. FEM SUBR ENTRY/EXIT
  13269. FEM1 AOD T5
  13270. SBD T4
  13271. PJN FEM3 IF END OF LIST
  13272. LDD T5
  13273. SFA EST GET EST FWA
  13274. ADK EQDE
  13275. CRD CM
  13276. LDD CM+3 CHECK DEVICE TYPE
  13277. LMC 2RDE
  13278. ZJN FEM2 IF EM EQUIPMENT
  13279. LMN 2RDE&2RDP
  13280. NJN FEM1 IF NOT EM EQUIPMENT
  13281. FEM2 LDD CM+4 MST ADDRESS/10B
  13282. SHN 3
  13283. ADK DILL GET EM TYPE
  13284. CRD SR
  13285. LDD SR+3
  13286. SHN -6
  13287. LPN 7
  13288. LMN 4 UEM
  13289. STD T8
  13290. UJN FEMX RETURN
  13291. SPACE 4,10
  13292. DSPEND
  13293. DISPLAY (DISPLAY W - CHANNEL STATUS.),,CMR
  13294. ENTRY DSWC,DSWC
  13295. SPACE 4,35
  13296. *** *W,C* DISPLAY - CHANNEL STATUS.
  13297. *
  13298. * DISPLAY CHANNEL STATUS.
  13299. *
  13300. * EXAMPLE (NO CONCURRENT CHANNELS) -
  13301. *
  13302. * 1 2 3 4 5 6
  13303. * 1234567890123456789012345678901234567890123456789012345678901234
  13304. *
  13305. * CHANNEL A REGISTER = 0000
  13306. *
  13307. * CH PP PGM STATUS (170) CH PP PGM STATUS (180)
  13308. *
  13309. * 0 20 11 1MI -CF
  13310. * 1 21 ---
  13311. * 2 3 1SJ FULL 22 D-E
  13312. * 3 22 1TO DOWN FULL 23 7 1AJ ---
  13313. *
  13314. *
  13315. * EXAMPLE (CONCURRENT CHANNELS) -
  13316. *
  13317. * 1 2 3 4 5 6
  13318. * 1234567890123456789012345678901234567890123456789012345678901234
  13319. *
  13320. * CHANNEL A REGISTER = 0000
  13321. *
  13322. * CH PP PGM STATUS CH PP PGM STATUS CCH PP PGM STATUS
  13323. *
  13324. * 0 --- 20 11 1TO -CF 0 ---
  13325. * 1 --- 21 --- 1 C01 1XY ---
  13326. * 2 3 1MB --F 22 D-E 2 DC-
  13327. * 3 22 1XM D-F 23 7 1TA --- 3 C04 1XY -C-
  13328. DIRECT SPACE 4,10
  13329. ** DIRECT CELL ASSIGNMENTS.
  13330.  
  13331.  
  13332. CN EQU AB CHANNEL NUMBER
  13333. CW EQU AB+1 COLUMN WIDTH
  13334. CC EQU AB+2 CONCURRENT CHANNEL COLUMN FLAG
  13335.  
  13336.  
  13337. DSWC SUBR ENTRY/EXIT
  13338. DSWA LJM PRS PRESET OVERLAY
  13339. * UJN DSW1 (AFTER PRESET IS COMPLETE)
  13340. DSW1 DISPHD (W,C. CHANNEL STATUS.)
  13341. * LDN 0
  13342. STD CN CLEAR CHANNEL NUMBER
  13343. STD CW CLEAR COLUMN WIDTH
  13344. STD CC CLEAR CCH COLUMN FLAG
  13345. DSWB LDN ** SET LAST NCH + 1
  13346. STD T7
  13347. LDM CTOS INITIALIZE Y-COORDINATES
  13348. OAN CH+40
  13349. DISPLA CH01,,(CHANNEL A REGISTER = )
  13350. LDD AR
  13351. RJM D4D DISPLAY *A* REGISTER
  13352.  
  13353. * DISPLAY CHANNEL STATUS.
  13354.  
  13355. LDN CTALL CHANNEL STATUS TABLE LENGTH
  13356. STD T2
  13357. DSWD LDC ** FWA OF CHANNEL TABLES
  13358. CRM CHTB,T2
  13359. DSW2 RJM DCH DISPLAY COLUMN HEADER
  13360. DSW3 LCN YINC MOVE TO NEXT LINE
  13361. RAD YC
  13362. LDN 2
  13363. OAM XC,CH
  13364. LDD CN
  13365. LPN 37
  13366. RJM D2Z OUTPUT CHANNEL NUMBER
  13367. LDM DCHD+1 OUTPUT COORDINATE OF ASSIGNED PP
  13368. OAN CH+40
  13369. LDM CHTB,CN CHECK ASSIGNMENT
  13370. LPN 37
  13371. ZJN DSW6 IF NOT ASSIGNED
  13372. STD T2
  13373. SBN 20D
  13374. MJN DSW4 IF THIS IS AN NPP
  13375. STD T0
  13376. LDN 1RC
  13377. OAN CH+40
  13378. LDD T0
  13379. RJM D2D DISPLAY CPP NUMBER
  13380. LDN 0
  13381. OAN CH+40
  13382. UJN DSW5.1 DISPLAY PROGRAM NAME
  13383.  
  13384. DSW4 ADN 10D
  13385. MJN DSW5 IF LOWER BANK
  13386. ADN 6 SET UPPER BANK PP NUMBER
  13387. DSW5 ADN 10D
  13388. RJM D4S DISPLAY NPP NUMBER
  13389. DSW5.1 LDD T2 DISPLAY PROGRAM NAME
  13390. SHN 3
  13391. ADD IA
  13392. SBN 10
  13393. CRD CM
  13394. LDD CM
  13395. ZJN DSW6 IF PP IS NOT ACTIVE
  13396. OAN CH+40
  13397. LDD CM+1
  13398. SCN 77
  13399. OAN CH+40
  13400. DSW6 RJM DCS DISPLAY CHANNEL STATUS
  13401. AOD CN ADVANCE CHANNEL
  13402. LMD T7
  13403. ZJN DSW8 IF NO MORE NCH-S TO DISPLAY
  13404. LDD CN
  13405. LMN 20
  13406. ZJN DSW9 IF CHANNEL 17 JUST PROCESSED
  13407. LPN 7
  13408. NJN DSW7 IF NOT 10 OR 30 CHANNELS
  13409. LCN YINC LEAVE BLANK LINE
  13410. RAD YC
  13411. DSW7 LJM DSW3 CONTINUE DISPLAY
  13412.  
  13413. DSW8 LDN 40 RESET CHANNEL NUMBER
  13414. STD CN
  13415. DSWE LDN ** LAST CHANNEL + 1
  13416. LMD T7
  13417. ZJN DSW10 IF LAST CHANNEL DISPLAYED
  13418. LDN XINC SET UP CCH DISPLAY
  13419. STD CC
  13420. DSWF LDN 40+** SET LAST CCH + 1
  13421. STD T7
  13422. DSW9 LJM DSW2 RESET Y AND CONTINUE DISPLAY
  13423.  
  13424. DSW10 LDC CH01 RESTORE X-COORDINATE
  13425. STD XC
  13426. LJM DSWCX RETURN
  13427. DCH SPACE 4,15
  13428. ** DCH - DISPLAY COLUMN HEADER.
  13429. *
  13430. * ENTRY (XC) = STARTING POSITON OF THE COLUMN.
  13431. * (CW) = WIDTH OF COLUMN.
  13432. * = 0, ON FIRST CALL.
  13433. * (CC) = CCH COLUMN FLAG.
  13434. * = 0 WHEN DISPLAYING NCH COLUMNS.
  13435. * = *XINC* WHEN DISPLAYING CCH COLUMN.
  13436. *
  13437. * EXIT (XC) = STARTING POSITION OF THE NEW COLUMN.
  13438. * (YC) = FIRST LINE OF THE DISPLAY DATA.
  13439. * (CW) = WIDTH OF COLUMN.
  13440. * (A) = 0.
  13441.  
  13442.  
  13443. DCH SUBR ENTRY/EXIT
  13444. LDM CTOS OUTPUT Y-COORDINATE OF COLUMN HEADING
  13445. SBN 2*YINC
  13446. OAN CH+40
  13447. SBN YINC SKIP A LINE
  13448. STD YC
  13449. LDD CW OUTPUT X-COORDINATE OF THE COLUMN HEADING
  13450. RAD XC
  13451. SBD CC BACKSPACE 2 POSITIONS IF CCH COLUMN
  13452. SBD CC
  13453. OAN CH+40
  13454. LDD CC
  13455. ZJN DCH1 IF THIS IS NOT THE CCH COLUMN
  13456. LDN 1RC
  13457. OAN CH+40
  13458. DCH1 LDD XC
  13459. ADK CH05-CH01 SET FIELD COORDINATES
  13460. * ADK CH03-CH01 (CCH-S PRESENT)
  13461. DCHA EQU *-1
  13462. ADD CC
  13463. STM DCHD+1
  13464. ADK CH17-CH05
  13465. * ADK CH14-CH03 (CCH-S PRESENT)
  13466. DCHB EQU *-1
  13467. STM DCHE
  13468. LDC CH33-CH01 SET COLUMN WIDTH
  13469. * LDC CH23-CH01 (CCH-S PRESENT)
  13470. DCHC EQU *-1
  13471. STD CW
  13472. LDN DCHDL DISPLAY COLUMN HEADER
  13473. OAM DCHD,CH
  13474. UJP DCHX RETURN
  13475.  
  13476.  
  13477. * CON CH01
  13478. DCHD CON 2HCH,CH05
  13479. DATA 10H PP PGM
  13480. DCHE CON CH17
  13481. DATA 6HSTATUS
  13482. DCHDL EQU *-DCHD
  13483. DCS SPACE 4,10
  13484. ** DCS - DISPLAY CHANNEL STATUS.
  13485. *
  13486. * ENTRY (CN) = CHANNEL NUMBER.
  13487.  
  13488.  
  13489. DCS SUBR ENTRY/EXIT
  13490. LDM DCHE ADVANCE TO STATUS FIELD
  13491. OAN CH+40
  13492. LDD CN SET CHANNEL INSTRUCTIONS
  13493. LMC AJMI+100000 SET UP JUMP IF CHANNEL FLAG SET
  13494. DCSA STM DCSC
  13495. * STML DCSC (CYBER 180)
  13496. ADD HN
  13497. ERRNZ AJMI+100-IJMI CODE ASSUMES VALUE
  13498. STM DCSD
  13499. STM DCSF
  13500. ADD HN
  13501. ERRNZ IJMI+100-FJMI CODE ASSUMES VALUE
  13502. STM DCSE
  13503. STM DCSG
  13504. LDM CHTB,CN DISPLAY DOWN STATUS
  13505. LPN 40
  13506. DCSB UJN DCS5 CHECK DOWN STATUS ON A CYBER 170
  13507. * ZJN DCS1 (CYBER 180)
  13508. LDN 1RD&1R-
  13509. DCS1 LMN 1R-
  13510. STM DOWN
  13511. LDD CC
  13512. ZJN DCS2 IF NOT A CONCURRENT CHANNEL
  13513. LDN 0
  13514. UJN DCS4 SKIP FULL/EMPTY CHECK
  13515.  
  13516. DCS2 LDN 1RC&1R-
  13517. DCSC AJM DCS3,** IF CHANNEL FLAG SET
  13518. * FSJM DCS3,** (CYBER 180)
  13519. LDN 0
  13520. DCS3 SHN 6
  13521. DCSD IJM DCS4,** IF CHANNEL INACTIVE
  13522. ADN 1RF&1R-
  13523. DCSE FJM DCS4,** IF CHANNEL FULL
  13524. ADN 1RE&1RF
  13525. DCS4 LMC 2R--
  13526. STM DOWN+1
  13527. LDC. DOWN
  13528. UJN DCS7 DISPLAY STATUS
  13529.  
  13530. DCS5 ZJN DCS6 IF NO DOWN STATUS
  13531. LDN DOWNL
  13532. OAM DOWN,CH
  13533. DCS6 LDC. FULL DISPLAY FULL/EMPTY STATUS
  13534. DCSF IJM DCSX,** IF CHANNEL INACTIVE
  13535. DCSG FJM DCS7,** IF CHANNEL FULL
  13536. ADN EMPT-FULL
  13537. DCS7 STM DCSH
  13538. LDN FULLL
  13539. OAM *,CH
  13540. DCSH EQU *-1 TEXT ADDRESS
  13541. UJP DCSX RETURN
  13542.  
  13543.  
  13544. DOWN DATA 6HDOWN
  13545. DOWNL EQU *-DOWN
  13546. FULL DATA 6HFULL
  13547. FULLL EQU *-FULL
  13548. EMPT DATA 6HEMPTY
  13549. ERRNZ *-EMPT-FULLL *FULL* AND *EMPT* MUST BE SAME LENGTH
  13550. REMOTE SPACE 4,10
  13551. DIS HERE FORCE REMOTE CODE HERE
  13552. PRS SPACE 4,10
  13553. ** PRS - PRESET *W,C* DRIVER.
  13554.  
  13555.  
  13556. PRS BSS 0 ENTRY
  13557. LDK NCHL SET NCH COUNT
  13558. CRD CM
  13559. ADK CHTP-NCHL
  13560. CRD CN
  13561. ADK MABL-CHTP
  13562. CRD SP
  13563. LDD CM
  13564. RAM DSWB
  13565. STM DSWE SET LAST CHANNEL NUMBER
  13566. LDD SP+1
  13567. LPC 4100
  13568. LMD HN
  13569. NJN PRS0 IF NOT 180-TYPE CHANNELS
  13570. ISTORE DCSB,(ZJN DCS1)
  13571. LDC. DCSA CONVERT *AJM* TO *FSJM*
  13572. STD T3
  13573. BLI T3
  13574. LDD CM+3 SET CCH COUNT
  13575. ERRNZ CPPL-NCHL CODE ASSUMES THE SAME LOCATION
  13576. LPN 77
  13577. ZJN PRS1 IF NO CCH-S
  13578. RAM DSWF
  13579. STM DSWE SET LAST CHANNEL NUMBER
  13580. LDN 20B
  13581. SBD CM
  13582. PRS0 PJN PRS1 IF ONLY 2 COLUMNS NEED TO BE DISPLAYED
  13583. LDK CH03-CH01-CH05+CH01
  13584. RAM DCHA
  13585. LDK CH14-CH03-CH17+CH05
  13586. RAM DCHB
  13587. LDK CH23-CH01-CH33+CH01
  13588. RAM DCHC
  13589. PRS1 LDD CC SET CHANNEL TABLE ADDRESS
  13590. RAM DSWD
  13591. LDD CN+3
  13592. STM DSWD+1
  13593. ISTORE DSWA,(UJN DSW1) PREVENT PRESET PROCESSING NEXT TIME
  13594. LJM DSW1 RETURN
  13595.  
  13596.  
  13597. CHTB EQU PRS RESERVE SPACE FOR CHANNEL STATUS TABLE
  13598. ERRNG .LDMX-CHTB-5*CTALL CHANNEL TABLE WILL NOT FIT
  13599. SPACE 4,10
  13600. DSPEND
  13601. DISPLAY (DISPLAY W - MISC. PARAMETERS.)
  13602. ENTRY DSWM,DSWM
  13603. SPACE 4,20
  13604. *** *W,M* DISPLAY - MISC. PARAMETERS.
  13605. *
  13606. * DISPLAY MISCELLANEOUS SYSTEM PARAMETERS.
  13607. *
  13608. * EXAMPLE -
  13609. *
  13610. * 1 2 3 4 5 6
  13611. * 1234567890123456789012345678901234567890123456789012345678901234
  13612. * SYSTEM DELAY PARAMETERS
  13613. *
  13614. * OPTION DESCRIPTION
  13615. *
  13616. * JQ = 1234 INPUT FILE SCHEDULING INTERVAL (2**JQ SECONDS)
  13617. * JS = 1234 JOB SCHEDULER DELAY (SECONDS)
  13618. *
  13619. * CR = 1234 CPU PROGRAM RECALL (MILLISECONDS)
  13620. * AR = 1234 PP AUTO RECALL (MILLISECONDS)
  13621. *
  13622. * MP = 1234 MEMORY PAD (BLOCKS)
  13623. *
  13624. * FILE THRESHOLDS
  13625. *
  13626. * OPTION DESCRIPTION
  13627. *
  13628. * CPTT = 1234 CPU TRANSFER THRESHOLD
  13629. * SRST = 1234 SECONDARY ROLLOUT SECTOR THRESHOLD
  13630. * OQSH = LEVEL67 OUTPUT QUEUE SPECIAL HANDLING LEVEL
  13631.  
  13632. DSWM SUBR ENTRY/EXIT
  13633.  
  13634. * DISPLAY HEADERS.
  13635.  
  13636. LDM CTOS SET INITIAL Y-COORDINATES
  13637. STM DSWA+1
  13638. SBK 2*YINC
  13639. STM DSWB+1
  13640. STD YC
  13641. LDN DSWAL
  13642. OAM DSWA,CH
  13643. DISPHD (W,M. MISC. PARAMETERS.)
  13644.  
  13645. * OBTAIN DELAY VALUES.
  13646.  
  13647. LDK JSCL READ SCHEDULER CONTROL
  13648. CRD T5
  13649. LDK MSCL READ MONITOR SCAN
  13650. CRD CM
  13651. LDD T7
  13652. STD CM
  13653. LDD T6
  13654. STD T7
  13655. LDD CM+4
  13656. STD CM+3
  13657. LDN T7 SET DELAY VALUE INDEX
  13658. STD T6
  13659.  
  13660. * DISPLAY EACH LINE.
  13661.  
  13662. DSW1 LCN YINC
  13663. RAD YC
  13664. OAN CH+40
  13665. LDD T6 CHECK IF DOUBLE SPACE NEEDED
  13666. SHN 21-0
  13667. PJN DSW2 IF DOUBLE SPACE NOT NEEDED
  13668. LCN YINC
  13669. RAD YC
  13670. OAN CH+40
  13671. DSW2 LDM TDLN-T7,T6 COMPUTE FWA-1 OF CURRENT MESSAGE
  13672. ADD LA
  13673. STD T1
  13674. DSW3 AOD T1
  13675. LDI T1
  13676. OAN CH+40
  13677. NJN DSW3 IF NOT THROUGH WITH CURRENT MESSAGE
  13678. LDC CH06 REPOSITION X-COORDINATE
  13679. OAN CH+40
  13680. LDI T6
  13681. RJM D4S OUTPUT DATA PORTION
  13682. AOD T6 CHECK IF THERE ARE MORE MESSAGES
  13683. LMN CM+4
  13684. NJN DSW1 IF MORE MESSAGES TO DISPLAY
  13685.  
  13686. * DISPLAY FILE THRESHOLD HEADER.
  13687.  
  13688. LCN YINC*2 DOUBLE SPACE
  13689. RAD YC
  13690. OAN CH+40
  13691. LDN DSWCL
  13692. OAM DSWC,CH
  13693. LCN YINC*2
  13694. RAD YC
  13695. STM DSWB+1 RESET SUBHEADER LINE COORDINATES
  13696. LDN DSWBL
  13697. OAM DSWB,CH
  13698.  
  13699. * DISPLAY CPU TRANSFER THRESHOLD.
  13700.  
  13701. LCN YINC*2
  13702. RAD YC
  13703. OAN CH+40
  13704. DISPLA CH01,,(CPTT = )
  13705. LDK PFNL DISPLAY *CPTT*
  13706. CRD CM
  13707. LDD CM+4
  13708. RJM D4S
  13709. DISPLA CH20,,(CPU TRANSFER THRESHOLD)
  13710.  
  13711. * DISPLAY SECONDARY ROLLOUT SECTOR THRESHOLD.
  13712.  
  13713. LCN YINC
  13714. RAD YC
  13715. OAN CH+40
  13716. DISPLA CH01,,(SRST = )
  13717. LDK IPRL DISPLAY *SRST*
  13718. CRD CM
  13719. LDD CM+1
  13720. RJM D4S
  13721. DISPLA CH20,,(SECONDARY ROLLOUT SECTOR THRESHOLD)
  13722.  
  13723. * DISPLAY OUTPUT QUEUE SPECIAL HANDLING LEVEL.
  13724.  
  13725. LDD SF
  13726. ZJN DSW4 IF UNSECURED SYSTEM
  13727. LCN YINC
  13728. RAD YC
  13729. OAN CH+40
  13730. DISPLA CH01,,(OQSH = )
  13731. LDN SSML DISPLAY *OQSH*
  13732. CRD CM
  13733. LDD CM
  13734. SHN -6 RIGHT JUSTIFY INDEX
  13735. RJM DAL DISPLAY ACCESS LEVEL
  13736. DISPLA CH20,,(OUTPUT QUEUE SPECIAL HANDLING LEVEL)
  13737. DSW4 LJM DSWMX RETURN
  13738.  
  13739.  
  13740. DSWA CON CH01,LN05
  13741. DATA H*SYSTEM DELAY PARAMETERS*
  13742. DSWB CON CH03,LN07
  13743. DATA H*OPTION*
  13744. CON CH27
  13745. DATA H*DESCRIPTION*
  13746. DSWAL EQU *-DSWA LENGTH OF HEADER
  13747. DSWBL EQU *-DSWB LENGTH OF SUBHEADER
  13748. DSWC CON CH01
  13749. DATA H*FILE THRESHOLDS*
  13750. DSWCL EQU *-DSWC LENGTH OF HEADER
  13751.  
  13752.  
  13753.  
  13754. DLINE SPACE 4,10
  13755. ** DLINE - DELAY LINE FOR DISPLAY.
  13756. *
  13757. * DLINE P,D
  13758. *
  13759. * ENTRY *P* = MNEMONIC.
  13760. * *D* = DESCRIPTION OF *P*.
  13761.  
  13762.  
  13763. PURGMAC DLINE
  13764.  
  13765. DLINE MACRO P,D
  13766. LOCAL A
  13767. MACREF DLINE
  13768. DBLK RMT
  13769. A CON CH01
  13770. DATA 2L_P
  13771. DATA 2L =
  13772. CON CH16
  13773. DATA C$D$
  13774. DBLK RMT
  13775. CON A-1
  13776. DLINE ENDM
  13777. TDLN SPACE 4,10
  13778. ** TDLN - TABLE OF DISPLAY LINES.
  13779.  
  13780.  
  13781. TDLN BSS 0
  13782. CHAR 1R[,1R( REPLACE *[* WITH *(*
  13783. CHAR 1R],1R) REPLACE *]* WITH *)*
  13784. CODE O
  13785. LOC 7
  13786. DLINE JQ,(INPUT FILE SCHEDULING INTERVAL [2**JQ SECONDS])
  13787. DLINE JS,(JOB SCHEDULER DELAY [SECONDS])
  13788. DLINE CR,(CPU PROGRAM RECALL [MILLISEONDS])
  13789. DLINE AR,(PP AUTO RECALL [MILLISECONDS])
  13790. DLINE MP,(MEMORY PAD [BLOCKS])
  13791. LOC *O
  13792. DBLK HERE
  13793. CODE *
  13794. SPACE 4,10
  13795. DSPEND
  13796. DISPLAY (DISPLAY W - SYSTEM TABLE ADDRESSES.)
  13797. ENTRY DSWP,DSWP
  13798. SPACE 4,10
  13799. *** *W,P* DISPLAY - SYSTEM TABLE ADDRESSES.
  13800. *
  13801. * DISPLAY THE FWA OF VARIOUS SYSTEM TABLES.
  13802. *
  13803. * EXAMPLE -
  13804. *
  13805. * 1 2 3 4 5 6
  13806. * 1234567890123456789012345678901234567890123456789012345678901234
  13807. *
  13808. * EJT = 25344 EST = 7664 PPC = 7200 RPL = 103657
  13809.  
  13810.  
  13811. XCIN EQU 16D*XINC X-COORDINATE INCREMENT
  13812.  
  13813.  
  13814. DSWP SUBR ENTRY/EXIT
  13815. DISPHD (W,P. SYSTEM TABLE ADDRESSES.)
  13816. LDM CTOS SET Y-COORDINATE FOR TITLE LINE
  13817. OAN CH+40
  13818. SBN 3*YINC INITIALIZE Y-COORDINATE FOR DATA
  13819. STD T6
  13820. DISPLA CH26,,(SYSTEM TABLES)
  13821. LDM DCTY
  13822. ZJN DSW1 IF CONSOLE TYPE CC545
  13823. LCN YINC/2
  13824. DSW1 ADN YINC+YINC/2
  13825. STD T3 SET DECREMENT FOR Y-COORDINATE
  13826. LDC. TSTP
  13827. STD T7 PRESET POINTER TABLE ADDRESS
  13828. LDC CH03
  13829. STD T5 INITIALIZE X-COORDINATE
  13830. OAN CH+40
  13831. LDD T6 OUTPUT Y-COORDINATE
  13832. OAN CH+40
  13833. LDN ZERL CLEAR BASE ADDRESS
  13834. CRD AB
  13835. UJN DSW4 ENTER DISPLAY LOOP
  13836.  
  13837. DSW2 SHN -5 POSITION TO POINTER OFFSET
  13838. STD T0
  13839. LDD AB FORM BASE ADDRESS
  13840. SHN 14
  13841. LMD T0 APPEND OFFSET
  13842. ADD AB+1
  13843. CRD CM READ POINTER WORD
  13844. LMN PPCP
  13845. NJN DSW3 IF NOT PP COMMUNICATIONS AREA
  13846. STD CM+3
  13847. DSW3 RJM DTA DISPLAY TABLE ADDRESS
  13848. DSW4 LDI T7
  13849. NJN DSW2 IF MORE POINTERS
  13850. AOD T7
  13851. LDI T7
  13852. ZJN DSW7 IF END OF DISPLAY
  13853. CRD AB
  13854. AOD T7 ADVANCE TO BYTE ADDRESS
  13855. LDI T7
  13856. STD T1 EXTRACT BYTE ADDRESS
  13857. AOD T7
  13858. LDI T1 SET BASE ADDRESS OF TABLE
  13859. STD AB
  13860. AOD T1 ADVANCE BYTE ADDRESS
  13861. LDI T1
  13862. STD AB+1 CHECK TABLE DEFINED
  13863. ADD AB
  13864. DSW5 ZJN DSW7 IF UNDEFINED
  13865. LCN 3*YINC DISPLAY TITLE
  13866. RAD T6
  13867. OAN CH+40
  13868. DISPLA CH23,,(BUFFERED I/O TABLES)
  13869. LDC CH03
  13870. STD T5 RESET X-COORDINATE
  13871. OAN CH+40
  13872. LCN 3*YINC SELECT DISPLAY LINE
  13873. RAD T6
  13874. OAN CH+40
  13875. UJN DSW4 DISPLAY NEXT BLOCK
  13876.  
  13877. DSW7 LJM DSWPX RETURN
  13878. DTA SPACE 4,15
  13879. ** DTA - DISPLAY TABLE ADDRESS.
  13880. *
  13881. * ENTRY (T3) = DECREMENT FOR Y-COORDINATE.
  13882. * (T5) = X-COORDINATE.
  13883. * (T6) = Y-COORDINATE.
  13884. * (T7) = ADDRESS OF *TSTP* ENTRY.
  13885. *
  13886. * EXIT (T5) = X-COORDINATE FOR NEXT ADDRESS.
  13887. * (T6) = Y-COORDINATE FOR NEXT ADDRESS.
  13888. * (T7) = ADDRESS OF NEXT *TSTP* ENTRY.
  13889. *
  13890. * USES T1, T5 - T7.
  13891. *
  13892. * CALLS D6S.
  13893.  
  13894.  
  13895. DTA3 LDC XCIN ADVANCE X-COORDINATE
  13896. RAD T5
  13897. OAN CH+40 OUTPUT COORDINATE
  13898. SBK CH64
  13899. MJN DTAX IF NOT END OF LINE
  13900. LDD T6
  13901. SBD T3 DECREMENT Y-COORDINATE
  13902. STD T6
  13903. OAN CH+40 ADVANCE TO NEXT LINE
  13904. LDC CH03
  13905. STD T5 RESET X-COORDINATE
  13906. OAN CH+40
  13907.  
  13908. DTA SUBR ENTRY/EXIT
  13909. LDI T7
  13910. LPN 17 EXTRACT BYTE NUMBER
  13911. STD T1
  13912. AOD T7 ADVANCE POINTER TABLE
  13913. LDI T7
  13914. OAN CH+40 DISPLAY TABLE IDENTIFIER
  13915. AOD T7
  13916. LDI T7 DISPLAY TABLE IDENTIFIER
  13917. OAN CH+40
  13918. LDC 2R= DISPLAY SEPARATOR
  13919. OAN CH+40
  13920. LDI T1 FORM TABLE ADDRESS
  13921. LPN 77
  13922. SHN 14
  13923. LMM. 1,T1
  13924. ZJN DTA2 IF TABLE UNDEFINED
  13925. RJM D6S
  13926. DTA2 AOD T7
  13927. LJM DTA3 ADVANCE COORDINATES
  13928. SPACE 4,10
  13929. ** DPTE - MACRO TO DEFINE POINTER TABLE ENTRY.
  13930. *
  13931. * DPTE PO,BN,TID
  13932. *
  13933. * ENTRY *PO* = POINTER ADDRESS / OFFSET.
  13934. * *BN* = BYTE CONTAINING TABLE ADDRESS.
  13935. * *TID* = TABLE IDENTIFIER (DEFAULTS TO *PO* NAME).
  13936.  
  13937.  
  13938. PURGMAC DPTE
  13939.  
  13940. DPTE MACRO PO,BN,TID
  13941. VFD 7/PO
  13942. .B SET BN 0
  13943. VFD 5/CM+_.B
  13944. IFC NE,*TID**
  13945. .T MICRO 1,3, TID
  13946. ELSE 1
  13947. .T MICRO 1,3, PO
  13948. VFD 24/4H".T"
  13949. ENDM
  13950. SPACE 4,10
  13951. ** TSTP - TABLE OF SYSTEM TABLE POINTERS.
  13952. *
  13953. * NOTE - THE POINTERS ARE DISPLAYED IN ALPHABETIC ORDER BY
  13954. * COLUMN, IN FOUR COLUMNS. HOWEVER, DUE TO PROGRAMMING
  13955. * CONSIDERATIONS TABLE *TSTP* IS ORGANIZED BY ROW. CARE MUST
  13956. * EXERCISED IN INSERTING OR DELETING ANY ENTRY TO PRESERVE THE
  13957. * ALPHABETIC ORDER OF THE DISPLAY.
  13958.  
  13959.  
  13960. TSTP BSS 0 TABLE OF SYSTEM TABLE POINTERS
  13961. DPTE BIOL,1 BUFFERED I/O TABLES
  13962. DPTE EPBP,3 EXTENDED MEMORY PP BUFFER
  13963. DPTE LDSP,2 *L* DISPLAY BUFFER
  13964. DPTE PRBP,3 *PROBE* TABLE
  13965. DPTE CMBL,3,BKP BREAKPOINT TABLE
  13966. DPTE EPDP ENTRY POINT DIRECTORY
  13967. DPTE LIDP LOGICAL ID TABLE
  13968. DPTE PSTP,2 PROGRAM STATUS TABLE
  13969. DPTE CMBL,,BNT *CPUMTR* BLOCKS LOADED TABLE
  13970. DPTE ESTP EQUIPMENT STATUS TABLE
  13971. DPTE MCTP MEMORY CONTROL TABLE
  13972. DPTE QFTP QUEUE FILE TABLE
  13973. DPTE CHTP,2 CHANNEL TABLES
  13974. DPTE EVTP EVENT TABLE
  13975. DPTE EFRL,,MFS MAINFRAME STATE TABLE
  13976. DPTE RCLP RESIDENT CENTRAL LIBRARY
  13977. DPTE CLTP COMMON LIBRARIES TABLE
  13978. DPTE FNTP FILE NAME TABLE
  13979. DPTE MSAP MASS STORAGE ALLOCATION TABLE
  13980. DPTE RPLP RESIDENT PERIPHERAL LIBRARY
  13981. DPTE DFPP,2,DDB DAYFILE DUMP BUFFER
  13982. DPTE FOTP FAMILY ORDINAL TABLE
  13983. DPTE BIOL,3,MTR FWA OF *CPUMTR*
  13984. DPTE SABL SYSTEM ATTRIBUTE BLOCK
  13985. DPTE DFPP SYSTEM DAYFILE FET-S
  13986. DPTE INBP,2 INSTALLATION BLOCK
  13987. DPTE PCPP,3 PSEUDO CONTROL POINT AREA
  13988. DPTE SDAP STATISTICAL DATA AREA
  13989. DPTE EDBP EXTENDED MEMORY DISPLAY BUFFER
  13990. DPTE JBCP,,JCB JOB CONTROL BLOCK TABLE
  13991. DPTE PLDP PERIPHERAL LIBRARY DIRECTORY
  13992. DPTE SCRL,,SID *SECDED* ID TABLE
  13993. DPTE EJTP EXECUTING JOB TABLE
  13994. DPTE LBDP,2 USER LIBRARY DIRECTORY
  13995. DPTE PPCP,3 PP COMMUNICATIONS AREA
  13996. DPTE SSCP,2 SUBSYSTEM CONTROL POINT TABLE
  13997. DPTE EMBP,1 ERROR MESSAGE BUFFER
  13998.  
  13999. CON 0,BIOL,AB+1 BUFFERED I/O TABLES
  14000. DPTE CBTP,3 CONTROL BUFFER TABLE
  14001. DPTE FTTP,3 FUNCTION TIMEOUT TABLE
  14002. DPTE IBSP,3 I/O BUFFER STATISTICS TABLE
  14003. DPTE PLTP,3 PP - I/O BUFFER LINK TABLE
  14004. DPTE CCTP,3 CHANNEL CONTROL TABLE
  14005. DPTE HATP,3 HASH TABLE
  14006. DPTE IOSP,3 I/O STATISTICS TABLE
  14007. DPTE PUTP,3 PHYSICAL UNIT TABLE
  14008. CON 0,0
  14009. SPACE 4,10
  14010. DSPEND
  14011. DISPLAY (DISPLAY W - SYSTEM QUEUES.)
  14012. ENTRY DSWQ,DSWQ
  14013. DSW SPACE 4,10
  14014. *** *W,Q* DISPLAY - SYSTEM QUEUES.
  14015. *
  14016. * DISPLAY QUEUES INTERNAL TO *CPUMTR* AND *MTR*.
  14017. *
  14018. * EXAMPLE -
  14019. *
  14020. * 1 2 3 4 5 6
  14021. * 1234567890123456789012345678901234567890123456789012345678901234
  14022. * ---CPU--- -RECALL- ---PP--- PSEUDO-PP -BUFFER-
  14023. * CP CPU CP TYPE CP PP CP CP BUF
  14024. *
  14025. * PSP 0 17 CPU 21 1MI 23 24 147
  14026. * 10 1 33 1IO
  14027. * IDL 1 5 LFM
  14028. * 22 END
  14029.  
  14030.  
  14031. DSWQ SUBR ENTRY/EXIT
  14032. DISPHD (W,Q. SYSTEM QUEUES.)
  14033. LDM CTOS SET UP HEADER COORDINATES
  14034. STM DSWA
  14035. SBN YINC
  14036. STM DSWAA
  14037. SBN YINC SET INITIAL Y-COORDINATE
  14038. STD YC
  14039. STD T3
  14040. LDC DSWAL DISPLAY HEADER
  14041. OAM DSWA,CH
  14042. * LDN 0 SET QUEUE PROCESSOR INDEX
  14043. STD T7
  14044. LDD NC GET NUMBER OF CONTROL POINTS
  14045. STD T6
  14046.  
  14047. * PROCESS CPU WAIT QUEUE.
  14048.  
  14049. LDM DSWC,T7 READ *WQ* POINTER
  14050. CRD CM
  14051. DSW1 LDD CM+3 GET LINK
  14052. LPN 77
  14053. SHN 14
  14054. ADD CM+4
  14055. ZJN DSW5 IF NO *WQ* LINKAGE
  14056. CRD CM READ ENTRY
  14057. SHN -7 CONVERT TO CONTROL POINT NUMBER
  14058. STD T1
  14059. LDD CM
  14060. LMC 2000B
  14061. ZJN DSW5 IF *WQ* TERMINATOR
  14062. RJM CBS CHECK FOR BOTTOM OF SCREEN
  14063. ZJN DSW5 IF BOTTOM OF SCREEN
  14064. LDD T1
  14065. SBD T6
  14066. MJN DSW2 IF BEFORE SYSTEM CONTROL POINT
  14067. RJM DCD DISPLAY CHARACTER DATA
  14068. UJN DSW3 PROCESS CPU
  14069.  
  14070. DSW2 LDD T1
  14071. RJM D2S DISPLAY CONTROL POINT NUMBER
  14072. LDN 0 SKIP TWO SPACES
  14073. OAN CH+40
  14074. DSW3 LDD CM+2 CHECK CPU SELECTION
  14075. LPN 3
  14076. ZJN DSW1 IF NO CPU SELECTION
  14077. SBN 1
  14078. RJM D2Z DISPLAY CPU SELECTION
  14079. LJM DSW1 GET NEXT ENTRY
  14080.  
  14081. DSW5 AOD T6 INCLUDE SYSTEM CP
  14082.  
  14083. * PROCESS ALL OTHER QUEUES.
  14084.  
  14085. DSW6 AOD T7
  14086. LDD YC RESET INITIAL Y-COORDINATE
  14087. STD T3
  14088. LDM DSWC,T7 GET INITIAL QUEUE POINTER
  14089. NJN DSW7 IF NOT END OF QUEUES
  14090. LJM DSWQX RETURN
  14091.  
  14092. DSW7 CRD CM READ ENTRY
  14093. STD T2 SAVE POINTER
  14094. SHN -7 CONVERT TO CONTROL POINT NUMBER
  14095. ZJN DSW9 IF CP 0
  14096. STD T1
  14097. RJM CBS CHECK FOR BOTTOM OF SCREEN
  14098. ZJN DSW6 IF BOTTOM OF SCREEN
  14099. LDD T1
  14100. SBD T6
  14101. DSW8 PJN DSW6 IF SYSTEM CP
  14102. LDD T1
  14103. RJM D2S DISPLAY CONTROL POINT NUMBER
  14104. LDM DSWD,T7
  14105. DSW9 ZJN DSW10 IF NO ADDITIONAL PARAMETERS
  14106. LDN DSWDL-1 CHECK FOR *BQRL* PROCESSING
  14107. SBD T7
  14108. ZJN DSW12 IF PROCESSING *BQRL*
  14109. LDD T2
  14110. LPN 77
  14111. LMN CRCW-100
  14112. ERRNG CRCW-100 *CRCW* MUST BE .GE. 100
  14113. ZJN DSW11 IF CPU RECALL
  14114. LDD T2 DISPLAY PP REQUEST
  14115. ADN RECW-RCCW
  14116. CRD SR
  14117. LDD SR OUTPUT BLANK AND FIRST CHARACTER
  14118. SHN -6
  14119. OAN CH+40
  14120. LDD SR
  14121. LPN 77
  14122. SHN 14
  14123. LMD SR+1 OUTPUT SECOND AND THIRD CHARACTERS
  14124. SCN 77
  14125. SHN 14
  14126. OAN CH+40
  14127. DSW10 LDD CM+4 GET LINK
  14128. ZJN DSW8 IF END OF QUEUE
  14129. LJM DSW7 PROCESS NEXT ENTRY
  14130.  
  14131. DSW11 DISPLA ,,( CPU)
  14132. UJN DSW10 GET NEXT ENTRY
  14133.  
  14134. * PROCESS *BQRL* PARAMETER.
  14135.  
  14136. DSW12 LDD T2 GET BUFFER NUMBER
  14137. CRD SR
  14138. LDD SR+3
  14139. RJM D4S DISPLAY BUFFER NUMBER
  14140. UJN DSW10 GET NEXT ENTRY
  14141. DSW SPACE 4,10
  14142. * DISPLAY HEADER.
  14143.  
  14144. DSWA CON BL01
  14145. CON CH02
  14146. DATA H*---CPU---*
  14147. CON CH16
  14148. DATA H*-RECALL-*
  14149. CON CH29
  14150. DATA H*---PP---*
  14151. CON CH42 (45)
  14152. DATA H*PSEUDO-PP*
  14153. CON CH56
  14154. DATA H*-BUFFER-*
  14155. DSWAA CON BL01-YINC
  14156. CON CH02
  14157. DATA H*CP CPU*
  14158. CON CH16
  14159. DATA H*CP TYPE*
  14160. CON CH29
  14161. DATA H*CP PP*
  14162. CON CH45 (45)
  14163. DATA H*CP*
  14164. CON CH56
  14165. DATA H*CP BUF*
  14166. DSWAL EQU *-DSWA
  14167.  
  14168. * INITIAL X-COORDINATES.
  14169.  
  14170. DSWB BSS 0
  14171. CON CH02 CPU
  14172. CON CH16 RECALL
  14173. CON CH29 PP
  14174. CON CH45 CIO PSEUDO-PP
  14175. CON CH56 CIO BUFFER
  14176.  
  14177. * QUEUE POINTERS.
  14178.  
  14179. DSWC CON WQRL
  14180. CON RQRL
  14181. CON PQRL
  14182. CON CQRL
  14183. CON BQRL
  14184. CON 0 END OF TABLE
  14185.  
  14186. ** PARAMETER TERMINATORS.
  14187. *
  14188. *T 12/ V
  14189. *
  14190. * WHERE V = 0, IF NO MORE PARAMETERS FOR THIS QUEUE TYPE.
  14191.  
  14192. DSWD CON 0 CPU
  14193. CON 1 RECALL
  14194. CON 1 PP
  14195. CON 0 CIO PSEUDO-PP
  14196. CON 1 CIO BUFFER
  14197. DSWDL EQU *-DSWD
  14198. CBS SPACE 4,15
  14199. ** CBS - CHECK FOR BOTTOM OF SCREEN.
  14200. *
  14201. * *CBS* CHECKS FOR THE BOTTOM OF THE DISPLAY SCREEN, AND
  14202. * DISPLAYS *MORE* IF THERE IS NO ROOM FOR ADDITIONAL ENTRIES.
  14203. *
  14204. * ENTRY (T3) = LAST Y-COORDINATE.
  14205. * (T7) = QUEUE PROCESSING INDEX.
  14206. *
  14207. * EXIT (A) = NON-ZERO IF BOTTOM OF SCREEN NOT REACHED.
  14208. * = 0 IF BOTTOM OF SCREEN AND *MORE* DISPLAYED.
  14209. * (T3) = UPDATED Y-COORDINATE.
  14210. * COORDINATES SENT TO DISPLAY CONTROLLER.
  14211. *
  14212. * USES T3.
  14213.  
  14214.  
  14215. CBS1 LDM DSWB,T7 OUTPUT X-COORDINATE
  14216. OAN CH+40
  14217.  
  14218. CBS SUBR ENTRY/EXIT
  14219. LCN YINC
  14220. RAD T3 DECREMENT Y-COORDINATE
  14221. OAN CH+40
  14222. SBM CBOS
  14223. PJN CBS1 IF NOT BOTTOM OF SCREEN
  14224. LDN MOREL
  14225. OAM MORE,CH
  14226. * LDN 0 RETURN BOTTOM OF SCREEN REACHED
  14227. UJN CBSX RETURN
  14228. DCD SPACE 4,10
  14229. ** DCD - DISPLAY CHARACTER DATA FOR SYSTEM CONTROL POINT ENTRY.
  14230. *
  14231. * ENTRY (CM - CM+4) = *WQ* ENTRY.
  14232.  
  14233.  
  14234. DCD SUBR ENTRY/EXIT
  14235. LDD CM+3
  14236. SHN -5
  14237. LPN 16 (EXCHANGE PACKAGE TYPE) * 2
  14238. STD T1
  14239. LDM DCDA,T1 OUTPUT EXCHANGE PACKAGE TYPE
  14240. OAN CH+40
  14241. LDM DCDA+1,T1
  14242. OAN CH+40
  14243. LDN 0 SKIP TWO SPACES
  14244. OAN CH+40
  14245. UJN DCDX RETURN
  14246.  
  14247.  
  14248. DCDA BSS 0
  14249. DATA 4HFTN PROGRAM MODE *CPUMTR* FUNCTIONS
  14250. DATA 4HMVE STORAGE MOVE
  14251. DATA 4HFLV FIELD LENGTH VERIFICATION
  14252. DATA 4HPSP PSEUDO-PP
  14253. DATA 4HIDL CPU 0 IDLE PACKAGE
  14254. DATA 4HIDL CPU 1 IDLE PACKAGE
  14255. SPACE 4,10
  14256. DSPEND
  14257. DISPLAY (DISPLAY W - SYSTEM RESOURCES.)
  14258. ENTRY DSWR,DSWR
  14259. SPACE 4,10
  14260. *** *W,R* DISPLAY - SYSTEM RESOURCES.
  14261. *
  14262. * DISPLAY AVAILABLE SYSTEM RESOURCES.
  14263. *
  14264. * EXAMPLE -
  14265. *
  14266. * 1 2 3 4 5 6
  14267. * 1234567890123456789012345678901234567890123456789012345678901234
  14268. * SYSTEM ACTIVITY
  14269. *
  14270. * JOB IN CPU0 = ASDF NEXT JSN = ASST
  14271. * JOB IN CPU1 = SYS MVE JOBS ROLLED = 123
  14272. *
  14273. * AVAILABLE RESOURCES
  14274. *
  14275. * CM = 13647 UXM = 0
  14276. * PP-S = 20 CPP-S = 7
  14277. *
  14278. * CLD = 0 EJT = 1052
  14279. * FNT = 145 FOT = 6
  14280. * LID = 24 QFT = 612
  14281. *
  14282. * CP-S = 13 PCP-S = 23
  14283.  
  14284.  
  14285. DSWR SUBR ENTRY/EXIT
  14286. LJM PRS EXIT
  14287. DSWA EQU *-1
  14288. * LJM DSW1 (PRESET COMPLETE)
  14289.  
  14290. PRS LDM UESC SET UXM SHIFT COUNT
  14291. RAM DSWC
  14292. LDN PPUL GET NUMBER OF PP-S
  14293. CRD CM
  14294. ADK MABL-PPUL READ HARDWARE OPTIONS
  14295. CRD T5
  14296. LDD CM+3 SET NUMBER OF CPP-S
  14297. LPN 77
  14298. ERRNZ CPPL-PPUL CPP COUNT NOT IN *PPUL*
  14299. RAM DSWD
  14300. LDD T5+1 CHECK CPU-1 AVAILABLE
  14301. LPN 2
  14302. ZJN PRS1 IF SECOND CPU PRESENT
  14303. SOM DSWB
  14304. PRS1 LDN DSW1-PRS CHANGE *PRS* CALL
  14305. RAM DSWA
  14306.  
  14307. DSW1 LDM CTOS SET Y-COORDINATE
  14308. OAN CH+40
  14309. STD YC
  14310.  
  14311. * DISPLAY FIRST TITLE.
  14312.  
  14313. DISPLA CH16,,(SYSTEM ACTIVITY)
  14314. LCN 2*YINC
  14315. RAD YC
  14316. OAN CH+40
  14317.  
  14318. * DISPLAY NEXT JSN.
  14319.  
  14320. DISPLA CH28,,( NEXT JSN = )
  14321. LDK JSNL
  14322. CRD CM
  14323. LDN 2
  14324. OAM CM+3,CH
  14325. DISPHD (W,R. SYSTEM RESOURCES.)
  14326. * LDN 0 CLEAR CPU NUMBER
  14327. STD T3
  14328.  
  14329. * DISPLAY CPU STATUS.
  14330.  
  14331. DSW2 LDN 2 OUTPUT COORDINATES
  14332. OAM XC,CH
  14333. DISPLA ,,(JOB IN CPU)
  14334. LDD T3
  14335. ADN 1R0
  14336. SHN 6
  14337. OAN CH+40
  14338. LDC 2R=
  14339. OAN CH+40
  14340. LDK ACPL GET CPU ON/OFF STATUS
  14341. ADD T3
  14342. CRD CM
  14343. LDD CM
  14344. SHN 21-13
  14345. MJN DSW6 IF CPU OFF
  14346. LDK CPAL GET CPU STATUS
  14347. ADD T3
  14348. CRD CM
  14349. LDD CM+2
  14350. ADK TFSW GET EJT ORDINAL
  14351. CRD AB
  14352. LDD AB
  14353. SFA EJT SET EJT ENTRY ADDRESS
  14354. ADK JSNE GET JSN
  14355. CRD AB
  14356. LDN 2 DISPLAY JSN
  14357. OAM AB,CH
  14358. LDD CM+2
  14359. SHN -7
  14360. LMD NC
  14361. NJN DSW6 IF NOT SYSTEM CONTROL POINT
  14362. LDD CM+1 GET EXCHANGE PACKAGE TYPE
  14363. SHN -6
  14364. SHN 1
  14365. STD T1 SET *DSWF* INDEX
  14366. LDM DSWF,T1 DISPLAY EXCHANGE PACKAGE TYPE
  14367. OAN CH+40
  14368. LDM DSWF+1,T1
  14369. OAN CH+40
  14370. DSW6 LCN YINC DECREMENT Y-COORDINATE
  14371. RAD YC
  14372. AOD T3 ADVANCE CPU NUMBER
  14373. DSWB LMN 2
  14374. NJP DSW2 IF ANOTHER CPU TO PROCESS
  14375.  
  14376. * DISPLAY TITLE.
  14377.  
  14378. DSW7 LCN 5*YINC
  14379. ADM CTOS
  14380. STD YC
  14381. OAN CH+40
  14382. LDN DSWEL
  14383. OAM DSWE,CH
  14384.  
  14385. * DISPLAY AVAILABLE MEMORY.
  14386.  
  14387. LCN 2*YINC DECREMENT Y-COORDINATE
  14388. RAD YC
  14389. OAN CH+40
  14390. DISPLA CH04,,( CM = )
  14391. LDN ACML READ AVAILABLE CM/100B
  14392. CRD CM
  14393. LDD CM DISPLAY AVAILABLE CM/100B
  14394. SHN 14
  14395. LMD CM+1
  14396. RJM D6S
  14397. DISPLA CH34,,(UXM = )
  14398. LDD CM+3 DISPLAY AVAILABLE USER XM/1000B
  14399. DSWC SHN 0
  14400. * SHN UESC (UESC = USER EXTENDED MEMORY SHIFT COUNT)
  14401. RJM D6S
  14402.  
  14403. * DISPLAY PP STATISTICS.
  14404.  
  14405. LDK PPAL GET NUMBER OF FREE PPS/CPPS
  14406. CRD AB
  14407. LDC CH32 PRESET X-COORDINATE
  14408. STD T3
  14409. RJM ODC OUTPUT COORDINATES
  14410. LDC 2R P
  14411. RJM DPS DISPLAY NUMBER OF PP-S
  14412. LDD AB+3
  14413. LPN 77 SET NUMBER OF FREE CPP-S
  14414. STD AB+4
  14415. RJM ODC OUTPUT COORDINATES
  14416. DSWD LDN 0
  14417. ZJN DSW8 IF NO CPP-S
  14418. LDC 2RCP
  14419. RJM DPS DISPLAY NUMBER OF CPP-S
  14420.  
  14421. * DISPLAY MANAGED TABLE STATISTICS.
  14422.  
  14423. DSW8 LDC. TMTP SET POINTER TABLE ADDRESS
  14424. STD T2
  14425. LCN YINC DECREMENT Y-COORDINATE
  14426. RAD YC
  14427. LDI T2
  14428. DSW9 CRD CM READ MANAGED TABLE POINTER
  14429. AOD T2
  14430. RJM ODC OUTPUT DISPLAY COORDINATES
  14431. LDC 2R
  14432. OAN CH+40 OUTPUT LEADING BLANKS
  14433. LDI T2
  14434. OAN CH+40 DISPLAY TABLE IDENTIFIER
  14435. AOD T2
  14436. LDI T2 DISPLAY TABLE IDENTIFIER
  14437. OAN CH+40
  14438. LDC 2R= DISPLAY SEPARATOR
  14439. OAN CH+40
  14440. LDD CM+3 DISPLAY FREE ENTRIES
  14441. RJM D6S
  14442. AOD T2 ADVANCE LIST
  14443. LDI T2
  14444. NJN DSW9 IF MORE MANAGED TABLES
  14445.  
  14446. * DISPLAY CONTROL POINT COUNTS.
  14447.  
  14448. * LDN 0 SET BASE ADDRESS OF CP-S
  14449. STD AB+3
  14450. LDC CPAS
  14451. STD AB+4
  14452. LCN YINC DECREMENT Y-COORDINATE
  14453. RAD YC
  14454. LDC CH32 PRESET X-COORDINATE
  14455. STD T3
  14456. LDC 2R C FIX CP TITLE
  14457. STM DPSA
  14458. LDD NC DISPLAY NUMBER OF CP-S
  14459. SBN 1
  14460. RJM DCP
  14461. LDD NC
  14462. SBD AB+2 SAVE NUMBER OF ACTIVE CP-S
  14463. STD T8
  14464. LDK PCPP FETCH PCP POINTER
  14465. CRD AB
  14466. LDC 2RPC FIX PCP TITLE
  14467. STM DPSA
  14468. SOD AB+2 CHECK PSEUDO CP-S DEFINED
  14469. SBD NC
  14470. STD T9 SAVE NUMBER OF PCP-S
  14471. ZJN DSW13 IF UNDEFINED
  14472. RJM DCP
  14473.  
  14474. * DISPLAY JOBS ROLLED.
  14475.  
  14476. DSW13 LCN 3*YINC RESET Y-COORDINATE
  14477. ADM CTOS
  14478. OAN CH+40
  14479. DISPLA CH26,,(JOBS ROLLED = )
  14480. LDK EJTP
  14481. CRD CM
  14482. LDD T9
  14483. ZJN DSW14 IF NO PCP-S DEFINED
  14484. LDD AB+2 CALCULATE -(NUMBER OF ACTIVE PCP-S)
  14485. SBD T9
  14486. DSW14 ADD CM+2 MAX EJT ENTRIES
  14487. SBD CM+3 ACTIVE EJT ENTRIES
  14488. SBD T8 NON-*EXJS* ACTIVE EJT ENTRIES
  14489. RJM D4S DISPLAY ROLLED EJT ENTRIES
  14490. LJM DSWRX RETURN
  14491.  
  14492.  
  14493. DSWE CON CH14
  14494. DATA H*AVAILABLE RESOURCES*
  14495. DSWEL EQU *-DSWE
  14496.  
  14497. DSWF BSS 0 SYSTEM CP EXCHANGE PACKAGE IDENTIFIERS
  14498. DATA 4H FTN PROGRAM MODE *CPUMTR* FUNCTIONS
  14499. DATA 4H MVE STORAGE MOVE
  14500. DATA 4H FLV FIELD LENGTH VERIFICATION
  14501. DATA 4H PSP PSEUDO-PP
  14502. DATA 4H IDL CPU 0 IDLE PACKAGE
  14503. DATA 4H IDL CPU 1 IDLE PACKAGE
  14504. DCP SPACE 4,10
  14505. ** DCP - DISPLAY CP / PCP COUNT.
  14506. *
  14507. * ENTRY (A) = NUMBER OF CP/PCP-S.
  14508. * (AB+3 - AB+4) = CP/PCP BASE ADDRESS.
  14509. *
  14510. * USES T2, AB+2 - AB+4, CM - CM+4.
  14511. *
  14512. * CALLS ODC.
  14513.  
  14514.  
  14515. DCP SUBR ENTRY/EXIT
  14516. STD AB+2
  14517. STD T2 SET LOOP COUNT
  14518. DCP1 LDD AB+3
  14519. SHN 14 FORM CP/PCP AREA ADDRESS
  14520. LMD AB+4
  14521. ADN TFSW GET CP/PCP ASSIGNMENT STATUS
  14522. CRD CM
  14523. LDD CM
  14524. ZJN DCP2 IF CP/PCP UNASSIGNED
  14525. SOD AB+2
  14526. DCP2 LDC CPAS ADVANCE BASE ADDRESS
  14527. RAD AB+4
  14528. SHN -14
  14529. RAD AB+3 SET NEXT ADDRESS
  14530. SOD T2
  14531. NJN DCP1 IF MORE CP/PCP-S
  14532. RJM ODC
  14533. LDK DPSAL DISPLAY TITLE
  14534. OAM DPSA,CH
  14535. LDD AB+2 DISPLAY NUMBER OF FREE CP/PCP-S
  14536. RJM D6S
  14537. UJP DCPX RETURN
  14538. DPS SPACE 4,10
  14539. ** DPS - DISPLAY PP STATISTICS.
  14540. *
  14541. * ENTRY (A) = FIRST TWO CHARACTERS OF TITLE.
  14542. * (AB+4) = PP / CPP COUNT.
  14543. *
  14544. * CALLS D6S.
  14545.  
  14546.  
  14547. DPS SUBR ENTRY/EXIT
  14548. STM DPSA
  14549. LDN DPSAL OUTPUT TITLE
  14550. OAM DPSA,CH
  14551. LDD AB+4 DISPLAY FREE PP COUNT
  14552. RJM D6S
  14553. UJN DPSX RETURN
  14554.  
  14555.  
  14556. DPSA DATA 8H PP-S =
  14557. DPSAL EQU *-DPSA
  14558. ODC SPACE 4,10
  14559. ** ODC - OUTPUT DISPLAY COORDINATES.
  14560. *
  14561. * ENTRY (T3) = PREVIOUS X-COORDINATE.
  14562. * (YC) = PREVIOUS Y-COORDINATE.
  14563. *
  14564. * EXIT (T3) = CURRENT X-COORDINATE.
  14565. * (YC) = CURRENT Y-COORDINATE.
  14566.  
  14567.  
  14568. ODC SUBR ENTRY/EXIT
  14569. LDD T3
  14570. LMC CH02&CH32 ADVANCE X-COORDINATE
  14571. STD T3
  14572. OAN CH+40 OUTPUT X-COORDINATE
  14573. LMC CH02
  14574. NJN ODCX IF NOT LINE CHANGE
  14575. LCN YINC
  14576. RAD YC DECREMENT AND OUTPUT Y-COORDINATE
  14577. OAN CH+40
  14578. UJN ODCX RETURN
  14579. SPACE 4,10
  14580. ** DPTE - MACRO TO DEFINE POINTER TABLE ENTRY.
  14581. *
  14582. * DPTE PA,TID
  14583. *
  14584. * ENTRY *PA* = POINTER ADDRESS.
  14585. * *TID* = TABLE IDENTIFIER (DEFAULTS TO *PA* NAME).
  14586.  
  14587.  
  14588. PURGMAC DPTE
  14589.  
  14590. DPTE MACRO PA,TID
  14591. VFD 12/PA
  14592. IFC NE,*TID**
  14593. .T MICRO 1,3, TID
  14594. ELSE 1
  14595. .T MICRO 1,3, PA
  14596. VFD 24/4H".T"
  14597. ENDM
  14598. SPACE 4,10
  14599. TMTP BSS 0 TABLE OF MANAGED TABLE POINTERS
  14600. DPTE CLTP COMMON LIBRARIES TABLE
  14601. DPTE EJTP EXECUTING JOB TABLE
  14602. DPTE FNTP FILE NAME TABLE
  14603. DPTE FOTP FAMILY ORDINAL TABLE
  14604. DPTE LIDP LOGICAL ID TABLE
  14605. DPTE QFTP QUEUE FILE TABLE
  14606. CON 0
  14607. SPACE 4,10
  14608. DSPEND
  14609. DISPLAY (DISPLAY Y - MONITOR FUNCTIONS.)
  14610. ENTRY DSY,D
  14611. DSY SPACE 4,10
  14612. *** *Y* DISPLAY.
  14613. *
  14614. * DISPLAY MNEMONICS AND VALUES OF ALL MONITOR FUNCTIONS.
  14615.  
  14616.  
  14617. DSY SUBR ENTRY/EXIT
  14618. DISPHD ("YHDR")
  14619. * LDN 0 CLEAR FUNCTION TABLE INDEX
  14620. STD T7
  14621. LDC 2R. MODIFY *D4S* TO OUTPUT PERIODS
  14622. STM D4SB
  14623. LDC CH01 SET X-COORDINATE
  14624. STD XC
  14625. DSY1 LDM CTOS SET Y-COORDINATE TO (*CTOS*) OR *LN06*
  14626. SBK LN06
  14627. MJN DSY1.1 IF STARTING LINE IS BELOW LINE 6
  14628. LDN 0
  14629. DSY1.1 ADK LN06
  14630. STD YC
  14631. DSY2 LDN 2 OUTPUT COORDINATES
  14632. OAM XC,CH
  14633. LDN 2 ADVANCE TABLE
  14634. RAD T7
  14635. LDM TFTN,T7
  14636. NJN DSY3 IF NOT END OF TABLE
  14637. STM D4SB RESET *D4S* TO OMIT PERIODS
  14638. LDC CH01 RESET X-COORDINATE
  14639. STD XC
  14640. LJM DSYX RETURN
  14641.  
  14642. DSY3 LDD T7 DISPLAY VALUE
  14643. SHN -1
  14644. RJM D4S
  14645. LDM TFTN,T7 DISPLAY FUNCTION NAME
  14646. OAN CH+40
  14647. LDM TFTN+1,T7
  14648. OAN CH+40
  14649. LDD T7
  14650. LPN 37
  14651. NJN DSY4 IF NOT END OF COLUMN
  14652. LDC XINC*14 ADVANCE X-COORDINATE
  14653. RAD XC
  14654. LJM DSY1 LOOP
  14655.  
  14656. DSY4 LPN 17
  14657. ZJN DSY5 IF DOUBLE SPACING
  14658. LDN YINC/2+1 DECREMENT Y-COORDINATE
  14659. SBM DCTY
  14660. SHN -1+22
  14661. DSY5 ADM DCTY
  14662. SBN YINC/2+1
  14663. SHN 2
  14664. RAD YC
  14665. LJM DSY2 LOOP
  14666. TFN SPACE 4,10
  14667. * COMMON DECKS.
  14668.  
  14669.  
  14670. *CALL COMDTFN
  14671. CON 0
  14672. SPACE 4,10
  14673. DSPEND
  14674. DISPLAY (DISPLAY Z - DIRECTORY.)
  14675. ENTRY DSZ,D
  14676. DSZ SPACE 4,10
  14677. *** *Z* DISPLAY.
  14678. *
  14679. *
  14680. * DISPLAY DIRECTORY OF ALL DISPLAYS.
  14681. OVC SPACE 4,10
  14682. ** OVERFLOW CHECK.
  14683. *
  14684. * NOTE - THE *Z* DISPLAY OVERLAY IS NOT CHECKED FOR OVERFLOW
  14685. * DIRECTLY. RATHER, IT IS COMPARED TO THE LARGEST
  14686. * DISPLAY OVERLAY FOUND. IF THE *Z DISPLAY* IS LARGER
  14687. * AN ERROR WILL BE FLAGGED. BECAUSE OF THIS, THE
  14688. * *Z DISPLAY* MUST REMAIN THE LAST OF THE DISPLAY
  14689. * OVERLAYS TO ALLOW NEW OVERLAYS TO REACH THE
  14690. * LARGEST POSSIBLE SIZE.
  14691. DIR SPACE 4,15
  14692. ** DIR - DIRECTORY DATA.
  14693. *
  14694. * *DIR* (WHICH CALLS *DIR.* TO DO ITS WORK) USES THE DISPLAY
  14695. * HEADER MICROS FOR THE CONTENT OF THE DIRECTORY.
  14696. *
  14697. *NAMES DIR (TEXT)
  14698. *
  14699. * ENTRY *NAMES* = THE NAME OR NAMES OF THE DISPLAY(S) BEING
  14700. * DEFINED.
  14701. * *TEXT* = OPTIONAL ADDITIONAL TEXT THAT REPLACES THE
  14702. * *.* AT THE END OF THE MICRO.
  14703.  
  14704.  
  14705. PURGMAC DIR
  14706.  
  14707. MACRO DIR,NAMES,TEXT
  14708. DIR. (TEXT),(NAMES),NAMES
  14709. DIR ENDM
  14710.  
  14711.  
  14712. PURGMAC DIR.
  14713.  
  14714. DIR. MACRO TEXT,NAMES,NAME
  14715. .1 MICRO 5,,$"NAME_HDR"$
  14716. DATA L$NAMES$
  14717. CON CH07
  14718. DATA C$".1"TEXT$
  14719. DIR. ENDM
  14720. DSZ SPACE 4,10
  14721. DSZ SUBR ENTRY/EXIT
  14722. DISPHD ("ZHDR")
  14723. LDM CTOS SET Y-COORDINATE
  14724. STD YC
  14725. LCN 0 CLEAR INDEX
  14726. STD T1
  14727. DSZ1 LDN 2 OUTPUT COORDINATES
  14728. OAM XC,CH
  14729. DSZ2 AOD T1 ADVANCE BYTE
  14730. LDM DSZA,T1 OUTPUT BYTE
  14731. OAN CH+40
  14732. NJN DSZ2 IF NOT END OF MESSAGE
  14733. LDM DCTY DECREMENT Y-COORDINATE
  14734. SHN 1
  14735. SBN YINC+2
  14736. RAD YC
  14737. LDM DSZA+1,T1 CHECK NEXT MESSAGE
  14738. NJN DSZ1 IF NOT EMPTY MESSAGE
  14739. UJN DSZX RETURN
  14740.  
  14741.  
  14742. CHAR 1R[,1R( REPLACE *[* WITH *(*
  14743. CHAR 1R],1R) REPLACE *]* WITH *)*
  14744. CODE OTHER
  14745.  
  14746. DSZA BSS 0
  14747. A DIR ( [A. A,. A,OPERATOR. A,ERROR LOG.)
  14748. CON CH17
  14749. DATA C*A,ACCOUNT FILE. DAYFILE,JSN.]*
  14750. B DIR ( [B,A. B,O.])
  14751. C,D DIR ( 5 GROUPS OF 4.)
  14752. E DIR ( [E,X. X = A, C, E, F, H, M, O, P, S, T.])
  14753. F,G DIR ( 4 GROUPS OF 5.)
  14754. H DIR ( [H. H,JSN.])
  14755. I DIR
  14756. J DIR
  14757. K DIR
  14758. L DIR
  14759. M DIR
  14760. O DIR ( [O,SCP. O,TLD. O,TST.])
  14761. P DIR
  14762. Q DIR ( [Q,. Q,IN. Q,PL. Q,PR. Q,PU. Q,WT.])
  14763. R DIR
  14764. S DIR
  14765. T DIR
  14766. U DIR
  14767. V DIR
  14768. W DIR ( [W,A. W,C. W,M. W,P. W,Q. W,R.])
  14769. Y DIR
  14770.  
  14771. DATA 0 END OF TABLE
  14772. CODE *
  14773. TTL DSD - DYNAMIC SYSTEM DISPLAY.
  14774. TITLE TERMINATE DISPLAY OVERLAYS.
  14775. TERM SPACE 4,10
  14776. * TERMINATE DISPLAY OVERLAYS.
  14777.  
  14778.  
  14779. DSPEND LAST
  14780. RES SPACE 4,10
  14781. * RESET OVERLAY CONSTANTS.
  14782.  
  14783.  
  14784. M. MICRO 1,2,
  14785. RES SPACE 4,10
  14786. * RESTORE INSTRUCTIONS.
  14787.  
  14788. LJM OPSYN LJM.
  14789. RJM OPSYN RJM.
  14790. LDM OPSYN LDM.
  14791. ADM OPSYN ADM.
  14792. SBM OPSYN SBM.
  14793. LMM OPSYN LMM.
  14794. STM OPSYN STM.
  14795. RAM OPSYN RAM.
  14796. AOM OPSYN AOM.
  14797. SOM OPSYN SOM.
  14798. CRM OPSYN CRM.
  14799. CWM OPSYN CWM.
  14800. IJM OPSYN IJM.
  14801. AJM OPSYN AJM.
  14802. EJM OPSYN EJM.
  14803. FJM OPSYN FJM.
  14804. IAM OPSYN IAM.
  14805. OAM OPSYN OAM.
  14806. TITLE COMMAND PROCESSING OVERLAY MACROS.
  14807. COMMAND SPACE 4,15
  14808. ** COMMAND - BEGIN COMMAND OVERLAY.
  14809. *
  14810. * COMMAND GENERATES THE LINKAGE CONSTANTS FOR COMMAND
  14811. * PROCESSING OVERLAYS.
  14812. *
  14813. * COMMAND (SUBTITLE),CMR
  14814. *
  14815. * ENTRY (SUBTITLE) = TEXT OF SUBTITLE.
  14816. * CMR = FORCE OVERLAY TO BE CM RESIDENT, IF NON-BLANK.
  14817. *
  14818. * EXIT (M.) = 2 CHARACTER MICRO FOR OVERLAY NAME.
  14819.  
  14820.  
  14821. .FCOM EQU KBUF+KBUFL+5 SET COMMAND OVERLAY ORIGIN
  14822.  
  14823. COMMAND MACRO SUBTITLE,CMR
  14824. QUAL
  14825. .B IFC EQ,/CMR//
  14826. OVLN
  14827. .B ELSE
  14828. OVLC
  14829. .B ENDIF
  14830. TTL DSD/9"N." - SUBTITLE
  14831. TITLE
  14832. IDENT 9"M.",.FCOM SUBTITLE
  14833. *COMMENT DSD - SUBTITLE
  14834. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  14835. ORG .FCOM
  14836. L.C MAX L.C,L.
  14837. QUAL DSD"M."
  14838. ENDM
  14839. CMDEND SPACE 4,15
  14840. ** CMDEND - END COMMAND OVERLAY.
  14841. *
  14842. * CMDEND ENDS A COMMAND OVERLAY, AND CHECKS FOR OVERFLOW.
  14843. *
  14844. * CMDEND EOC
  14845. *
  14846. * ENTRY EOC = END OF COMMAND OVERLAYS, IF NOT NULL.
  14847. *
  14848. * EXIT (L.NAME) = LENGTH OF OVERLAY (*NAME* IS OVERLAY NAME).
  14849. * (L.C) = MAXIMUM COMMAND OVERLAY LENGTH SO FAR.
  14850.  
  14851.  
  14852. CMDEND MACRO E
  14853. HERE
  14854. USE END DUMP LITERALS BLOCK
  14855. QUAL
  14856. L. SET *-.FCOM
  14857. QUAL LENGTH
  14858. LIST M
  14859.  
  14860. L.9"M." EQU L. LENGTH OF OVERLAY
  14861. ERRNG .LCOM-L.9"M." BYTES UNTIL LONGEST COMMAND OVERLAY
  14862. ERRNG .LCMX-.INSP-L.9"M." BYTES UNTIL MAXIMUM OVERLAY SIZE
  14863.  
  14864. LIST *
  14865. QUAL *
  14866. .A IFC NE,*E** IF END OF COMMAND OVERLAYS
  14867. L.C SET L.C+4
  14868. L.C SET L.C/5*5
  14869. ERRNG L.C-L. *L.C* IS WRONG WHEN LARGEST OVL IS LAST
  14870. .A ENDIF
  14871. ENDM
  14872. COMMAND (SYSTEM SYNTAX TABLE - CHARACTERS A - B.),CMR
  14873. SPACE 4,10
  14874. ** SYSTEM SYNTAX TABLE - CHARACTERS A - B.
  14875.  
  14876.  
  14877. ENTRY SAB
  14878.  
  14879. AAF ENTER (A,ACCOUNT FILE.)
  14880.  
  14881. AEL ENTER (A,ERROR LOG.)
  14882.  
  14883. AOD ENTER (A,OPERATOR.)
  14884.  
  14885. RSA ENTER (A.)
  14886.  
  14887. ADS ENTER (A,.)
  14888.  
  14889. ACN ENTER (ACN,?.),LOCK,SDF,ERL
  14890.  
  14891. AGD ENTER (ASSIGN,',DS.),,SDF
  14892. AGE ENTER (ASSIGN,',NE.),,SDF
  14893. AGN ENTER (ASSIGN,',?.),,SDF
  14894.  
  14895. AUT ENTER (AUTO.),,SDF
  14896.  
  14897. CHB ENTER (B,.)
  14898. CHB ENTER (B,>AO>.)
  14899.  
  14900. BIO ENTER (BIO.),,SDF
  14901.  
  14902. BKA ENTER (BKP.),SLOCK,SDF
  14903. BKB ENTER (BKP,&lt;A9&lt;A9&lt;A9.),SLOCK,SDF
  14904. BKB ENTER (BKP,&lt;A9&lt;A9&lt;A9,?.),SLOCK,SDF
  14905.  
  14906. BKR ENTER (BKSP,?.),,SDF
  14907. BKR ENTER (BKSP,?,?.),,SDF
  14908.  
  14909. BKF ENTER (BKSPF,?.),,SDF
  14910. BKF ENTER (BKSPF,?,?.),,SDF
  14911.  
  14912. BKP ENTER (BKSPRU,?,?.),,SDF
  14913.  
  14914. CON 0 END OF TABLE
  14915. SPACE 4,10
  14916. CMDEND
  14917. COMMAND (SYSTEM SYNTAX TABLE - CHARACTER C.),CMR
  14918. SPACE 4,10
  14919. ** SYSTEM SYNTAX TABLE - CHARACTER C.
  14920.  
  14921.  
  14922. USE CODE
  14923.  
  14924. ENTRY SCC
  14925.  
  14926.  
  14927. CDC ENTER (CDC@),,SDF
  14928.  
  14929. CJM ENTER (CFO,'.@),,SDF
  14930.  
  14931. CFR ENTER (CFR,?.),LOCK,SDF,ERL
  14932.  
  14933. CKP ENTER (CHECK POINT SYSTEM.),LOCK,SDF
  14934.  
  14935. CHK ENTER (CKP,'.),,SDF
  14936.  
  14937. CLA ENTER (CLASS,@),,SDF
  14938.  
  14939. CMD ENTER (COMMENT,'.@),,SDF
  14940.  
  14941. CNT ENTER (CONTINUE,?.),,SDF
  14942.  
  14943. CPB ENTER (CPB,BKP,?.),SLOCK
  14944. CPT ENTER (CPB,BKP,/'/?.),SLOCK
  14945. CPT ENTER (CPB,BKP,//?.),SLOCK
  14946. CPD ENTER (CPB,DSP.),SLOCK
  14947. SPD ENTER (CPB,DSP>+->;),SLOCK
  14948. CPB ENTER (CPB,DSP,?.),SLOCK
  14949. CPT ENTER (CPB,DSP,//?.),SLOCK
  14950. CPT ENTER (CPB,DSP,/'/?.),SLOCK
  14951. CPG ENTER (CPB,GO.),SLOCK
  14952. SPI ENTER (CPB,P>+->;),SLOCK
  14953.  
  14954. CTT ENTER (CPTT=?.),,SDF
  14955.  
  14956. CYB ENTER (CYB@),,SDF
  14957.  
  14958. CON 0 END OF TABLE
  14959. SPD SPACE 4,10
  14960. ENTRY SPD
  14961.  
  14962. CPD ENTER (CPB,DSP>+->),(SLOCK,PBD)
  14963.  
  14964. CON 0 END OF TABLE
  14965.  
  14966.  
  14967. PBD SUBR ENTRY/EXIT
  14968. LDM KBUF-1,KI
  14969. LMN 1R-
  14970. ZJN PBD1 IF *-* (PAGING BACKWARD)
  14971. LDN 20
  14972. PBD1 STD T0 ADJUST DISPLAY ADDRESSES
  14973. SBN 10
  14974. RAM TDSC+7 CHANGE *C3*
  14975. SHN -14
  14976. RAM TDSC+6
  14977. LDD T0
  14978. SBN 10
  14979. RAM TDSC+5 CHANGE *C2*
  14980. SHN -14
  14981. RAM TDSC+4
  14982. LDN 0 REJECT THE PAGING COMMAND
  14983. UJN PBDX RETURN
  14984. SPI SPACE 4,10
  14985. ENTRY SPI
  14986.  
  14987. CPD ENTER (CPB,P>+->),(SLOCK,CBA)
  14988.  
  14989. CON 0 END OF TABLE
  14990.  
  14991.  
  14992. CBA SUBR ENTRY/EXIT
  14993. LDN 60 AUTOMATE *CR*
  14994. STD KE
  14995. UJN CBAX RETURN
  14996. SPACE 4,10
  14997. CMDEND
  14998. COMMAND (SYSTEM SYNTAX TABLE - CHARACTER D.),CMR
  14999. SPACE 4,10
  15000. ** SYSTEM SYNTAX TABLE - CHARACTER D.
  15001. SPACE 4,10
  15002. ** NOTE - THIS OVERLAY SHOULD BE CM RESIDENT (FOR
  15003. * *DCN*, *DCH*, AND *DEBUG*).
  15004.  
  15005. USE CODE FORCE CONDITIONAL SUBROUTINE POINTERS HERE
  15006. ENTRY SDD
  15007.  
  15008.  
  15009. DAT ENTER (DATE.;),LOCK
  15010.  
  15011. DAY ENTER (DAYFILE,'.)
  15012.  
  15013. DCH ENTER (DCH,?.),LOCK,SDF,ERL
  15014.  
  15015. DCN ENTER (DCN,?.),LOCK,SDF,ERL
  15016.  
  15017. DBG ENTER (DEBUG.),SLOCK,SDF,ERL
  15018.  
  15019. DLY ENTER (DELAY,@),,SDF
  15020.  
  15021. DIA ENTER (DIAL,',@),,SDF
  15022. DIB ENTER (DIAL,*,@),LOCK,SDF
  15023.  
  15024. DIS ENTER (DIS,'.),CLS,SDF
  15025.  
  15026. DAP ENTER (DISABLE,&lt;AP;)
  15027. DQZ ENTER (DISABLE,&lt;QZ;)
  15028.  
  15029. CDN ENTER (DOWN,CCH=?.),CCH,SDF,ERL
  15030. CDN ENTER (DOWN,CCH=?,EQ=?.),CCH,SDF,ERL
  15031.  
  15032. DWN ENTER (DOWN,CH=?.),,SDF,ERL
  15033. DWN ENTER (DOWN,CH=?,EQ=?.),,SDF,ERL
  15034.  
  15035. DWE ENTER (DOWN,EQ=?.),,SDF,ERL
  15036.  
  15037. MDN ENTER (DOWN,MCH=?.),,SDF,ERL
  15038. MDN ENTER (DOWN,MCH=?,EQ=?.),,SDF,ERL
  15039.  
  15040. DWM ENTER (DOWN,MID='.),,SDF,ERL
  15041.  
  15042. DRP ENTER (DROP,'.),,SDF
  15043. DRC ENTER (DROP,',@),,SDF
  15044.  
  15045. DVE ENTER (DROPVE.),LOCK,SDF
  15046.  
  15047. CON 0 END OF TABLE
  15048. CCH SPACE 4,10
  15049. ** CCH - CHECK FOR CONCURRENT CHANNELS.
  15050. *
  15051. * EXIT (A) = NUMBER OF CONCURRENT CHANNELS.
  15052. * = 0 = COMMAND NOT ALLOWED.
  15053. *
  15054. * USES AB - AB+4.
  15055.  
  15056.  
  15057. CCH SUBR ENTRY/EXIT
  15058. LDK CPPL
  15059. CRD AB
  15060. LDD AB+3
  15061. LPN 77
  15062. UJN CCHX RETURN
  15063. CLS SPACE 4,10
  15064. ** CLS - CHECK LOCK STATUS IF SECURED SYSTEM.
  15065. *
  15066. * EXIT (A) .NE. 0 IF UNSECURED SYSTEM OR IF SECURITY UNLOCK
  15067. * STATUS SET FOR SECURED SYSTEM.
  15068. * = 0 IF SECURITY UNLOCK STATUS NOT SET FOR
  15069. * SECURED SYSTEM.
  15070.  
  15071.  
  15072. CLS SUBR ENTRY/EXIT
  15073. LDD SF
  15074. LMN 1
  15075. NJN CLSX IF UNSECURED SYSTEM
  15076. LDD LK
  15077. SCN 1
  15078. UJN CLSX RETURN
  15079. SPACE 4,10
  15080. CMDEND
  15081. COMMAND (SYSTEM SYNTAX TABLE - CHARACTERS E - J.),CMR
  15082. SPACE 4,10
  15083. ** SYSTEM SYNTAX TABLE - CHARACTERS E - J.
  15084. SPACE 4,10
  15085. ** NOTE - THIS OVERLAY SHOULD BE CM RESIDENT (FOR
  15086. * *ENGR*).
  15087.  
  15088. ENTRY SEJ
  15089.  
  15090.  
  15091. CHE ENTER (E,.)
  15092.  
  15093. CHE ENTER (E,>ACEFHMOPST>.)
  15094.  
  15095. EAP ENTER (ENABLE,>ACDEFLMP>;)
  15096. EQZ ENTER (ENABLE,&lt;QZ;)
  15097.  
  15098. END ENTER (END,?.),,SDF
  15099. END ENTER (END,?,?.),,SDF
  15100.  
  15101. ECP ENTER (ENPR,',?.),,SDF
  15102. ECP ENTER (ENPR,',*.),,SDF
  15103.  
  15104. ENQ ENTER (ENQP,',?.),,SDF
  15105.  
  15106. EEC ENTER (E?>,+->?.),LOCK,SDF,ERL
  15107. EEC ENTER (E?>,+->,?.),LOCK,SDF,ERL
  15108. EEC ENTER (E?>,+->&lt;04,?.),LOCK,SDF,ERL
  15109. EEC ENTER (E?>,+->D@),LOCK,SDF,ERL
  15110.  
  15111. FCN ENTER (FCN,?.),LOCK,SDF,ERL
  15112. FCN ENTER (FCN,?,?.),LOCK,SDF,ERL
  15113.  
  15114. FRM ENTER (FORM,?,'.),,SDF,ERL
  15115.  
  15116. HLD ENTER (HOLD,?.),,SDF
  15117.  
  15118. ILD ENTER (FOTD@),,SDF
  15119.  
  15120. CLR ENTER (GO,.),,SDF
  15121. GBL ENTER (GO,?.),,SDF
  15122. CLR ENTER (GO,'.),,SDF
  15123.  
  15124. IAF ENTER (IAF@),,SDF
  15125.  
  15126. IAN ENTER (IAN,?.),LOCK,SDF,ERL
  15127.  
  15128. SID ENTER (ID,?,?.),,SDF
  15129.  
  15130. IDL ENTER (IDLE.),,SDF
  15131.  
  15132. IDE ENTER (IDLE,EQ=?.),,SDF,ERL
  15133.  
  15134. IDD ENTER (IDLE,'.),,SDF
  15135.  
  15136. IDF ENTER (IDLEFAMILY,?.),,SDF
  15137.  
  15138. INI ENTER (INITIALIZE,',@),,SDF,ERL
  15139.  
  15140. IN1 ENTER (IN1@),,SDF
  15141. IN2 ENTER (IN2@),,SDF
  15142.  
  15143. CON 0 END OF TABLE
  15144. SPACE 4,10
  15145. CMDEND
  15146. COMMAND (SYSTEM SYNTAX TABLE - CHARACTERS K - N.),CMR
  15147. SPACE 4,10
  15148. ** SYSTEM SYNTAX TABLE - CHARACTERS K - N.
  15149.  
  15150.  
  15151. ENTRY SKN
  15152.  
  15153.  
  15154. ECB ENTER (K.@),,SDF
  15155.  
  15156. KIL ENTER (KILL,'.),,SDF
  15157.  
  15158. ELB ENTER (L.@)
  15159.  
  15160. LDC ENTER (LDC,?.),,SDF,ERL
  15161.  
  15162. ILD ENTER (LDIS@),,SDF
  15163.  
  15164. ILD ENTER (LIDOU@),,SDF
  15165.  
  15166. LOD ENTER (LOAD,?.),,SDF
  15167. LOD ENTER (LOAD,?,?.),,SDF
  15168.  
  15169. LCK ENTER (LOCK.),,SDF
  15170.  
  15171. LOG ENTER (LOG,?.),,SDF,ERL
  15172.  
  15173. MAG ENTER (MAG@),,SDF
  15174.  
  15175. MAI ENTER (MAINTENANCE.),,SDF,ERL
  15176.  
  15177. MAP ENTER (MAP@),,SDF
  15178.  
  15179. MCH ENTER (MCH,?.),LOCK,SDF,ERL
  15180.  
  15181. MCS ENTER (MCS@),,SDF
  15182.  
  15183. MNT ENTER (MOUNT,?.),,SDF
  15184. MNT ENTER (MOUNT,?,>P>.),,SDF
  15185. MTA ENTER (MOUNT,?,'.),,SDF
  15186.  
  15187. AJF ENTER (MSAL,>SBLPDROIT>=@),,SDF
  15188.  
  15189. MSE ENTER (MSE@),,SDF
  15190.  
  15191. MSS ENTER (MSS@),,SDF
  15192.  
  15193. NAM ENTER (NAM@),,SDF
  15194.  
  15195. NVS ENTER (NEXTVSN,?,@),,SDF
  15196.  
  15197. NJF ENTER (NJF@),,SDF
  15198.  
  15199. NVE ENTER (NVE@),,SDF
  15200.  
  15201. CON 0 END OF TABLE
  15202. SPACE 4,10
  15203. CMDEND
  15204. COMMAND (SYSTEM SYNTAX TABLE - CHARACTERS O - P.),CMR
  15205. SPACE 4,10
  15206. ** SYSTEM SYNTAX TABLE - CHARACTERS O - P.
  15207.  
  15208.  
  15209. ENTRY SOP
  15210.  
  15211. SCP ENTER (O,SCP.)
  15212.  
  15213. STL ENTER (O,TLD.)
  15214.  
  15215. STS ENTER (O,TST.)
  15216.  
  15217. OAN ENTER (OAN,?.),LOCK,SDF,ERL
  15218.  
  15219. OFE ENTER (OFF,EQ=?.),,SDF,ERL
  15220.  
  15221. CMD ENTER (OFFSW,',&lt;16.),,SDF
  15222.  
  15223. ONE ENTER (ON,EQ=?.),,SDF,ERL
  15224.  
  15225. CMD ENTER (ONSW,',&lt;16.),,SDF
  15226.  
  15227. OQS ENTER (OQSH='.),,SDF
  15228.  
  15229. OVR ENTER (OVERRIDE,'.),LOCK,SDF,ERL
  15230.  
  15231. CLR ENTER (PAUSE,'.),,SDF
  15232.  
  15233. PCL ENTER (PCLASS,@),,SDF
  15234.  
  15235. PSZ ENTER (PRSIZE,?,>SL>.),,SDF,ERL
  15236.  
  15237. CON 0 END OF TABLE
  15238. SPACE 4,10
  15239. CMDEND
  15240. COMMAND (SYSTEM SYNTAX TABLE - CHARACTERS Q - R.),CMR
  15241. SPACE 4,10
  15242. ** SYSTEM SYNTAX TABLE - CHARACTERS Q - R.
  15243.  
  15244.  
  15245. USE CODE FORCE CONDITIONAL SUBROUTINE POINTERS HERE
  15246. ENTRY SQR
  15247.  
  15248. SQD ENTER (Q,.)
  15249.  
  15250. SQT ENTER (Q,&lt;AZ&lt;AZ.)
  15251.  
  15252. ILD ENTER (QDSPLAY,'.),CLS,SDF
  15253.  
  15254. QUE ENTER (QUEUE,@),,SDF
  15255.  
  15256. RDF ENTER (RDF@),,SDF
  15257.  
  15258. RED ENTER (REDEFINE,?.),,SDF,ERL
  15259.  
  15260. REL ENTER (RELEASE,'.),,SDF
  15261.  
  15262. REP ENTER (REPEAT,'.),,SDF
  15263. REP ENTER (REPEAT,',?.),,SDF
  15264.  
  15265. RRN ENTER (REPRINT,?.),,SDF
  15266. RRN ENTER (REPRINT,?,?.),,SDF
  15267.  
  15268. RRN ENTER (REPUNCH,?.),,SDF
  15269. RRN ENTER (REPUNCH,?,?.),,SDF
  15270.  
  15271. RRJ ENTER (RERUN,'.),,SDF
  15272.  
  15273. RST ENTER (RESTORE,?.),LOCK,SDF,ERL
  15274.  
  15275. RTY ENTER (RETRY,?.),,SDF
  15276.  
  15277. RHF ENTER (RHF@),,SDF
  15278.  
  15279. RIF ENTER (ROLLIN,'.),,SDF
  15280. RIF ENTER (ROLLIN,',L.),,SDF
  15281.  
  15282. ROL ENTER (ROLLOUT,'.),,SDF
  15283. ROL ENTER (ROLLOUT,',?.),,SDF
  15284.  
  15285. CON 0 END OF TABLE
  15286. CLS SPACE 4,10
  15287. ** CLS - CHECK LOCK STATUS IF SECURED SYSTEM.
  15288. *
  15289. * EXIT (A) .NE. 0 IF UNSECURED SYSTEM OR IF SECURITY UNLOCK
  15290. * STATUS SET FOR SECURED SYSTEM.
  15291. * = 0 IF SECURITY UNLOCK STATUS NOT SET FOR
  15292. * SECURED SYSTEM.
  15293.  
  15294.  
  15295. CLS SUBR ENTRY/EXIT
  15296. LDD SF
  15297. LMN 1
  15298. NJN CLSX IF UNSECURED SYSTEM
  15299. LDD LK
  15300. SCN 1
  15301. UJN CLSX RETURN
  15302. SPACE 4,10
  15303. CMDEND
  15304. COMMAND (SYSTEM SYNTAX TABLE - CHARACTER S.),CMR
  15305. SPACE 4,10
  15306. ** SYSTEM SYNTAX TABLE - CHARACTER S.
  15307.  
  15308.  
  15309. ENTRY SSS
  15310.  
  15311. SCH ENTER (SCHEDULE.),,SDF
  15312.  
  15313. SCR ENTER (SCRATCH,?.),,SDF
  15314.  
  15315. ILD ENTER (SCTD@),,SDF
  15316.  
  15317. ILD ENTER (SDSPLAY@),,SDF
  15318.  
  15319. SCQ ENTER (SECUREQ,@),SLOCK,SDF
  15320.  
  15321. SCU ENTER (SECURES,@),SLOCK,SDF
  15322.  
  15323. SER ENTER (SERVICE,@),,SDF
  15324.  
  15325. SET ENTER (SET,\\\\.)
  15326.  
  15327. SFR ENTER (SFR,?.),LOCK,SDF,ERL
  15328.  
  15329. SKR ENTER (SKIP,?.),,SDF
  15330. SKR ENTER (SKIP,?,?.),,SDF
  15331.  
  15332. SKF ENTER (SKIPF,?.),,SDF
  15333. SKF ENTER (SKIPF,?,?.),,SDF
  15334.  
  15335. SKP ENTER (SKIPRU,?,?.),,SDF
  15336.  
  15337. SMF ENTER (SMF@),,SDF
  15338.  
  15339. SDU ENTER (SPINDOWN,?.),LOCK,SDF
  15340.  
  15341. SUU ENTER (SPINUP,?.),,SDF
  15342.  
  15343. SRS ENTER (SRST=?.),,SDF
  15344.  
  15345. SSF ENTER (SSF@),,SDF
  15346.  
  15347. STP ENTER (STEP,@),LOCK
  15348.  
  15349. STM ENTER (STM@),,SDF
  15350.  
  15351. SBL ENTER (STOP,?.),,SDF
  15352. STO ENTER (STOP,'.),LOCK,SDF
  15353.  
  15354. ILD ENTER (SUBSYST@),,SDF
  15355.  
  15356. SUP ENTER (SUPPRESS,?.),,SDF
  15357.  
  15358. CON 0 END OF TABLE
  15359. SPACE 4,10
  15360. CMDEND
  15361. COMMAND (SYSTEM SYNTAX TABLE - CHARACTER T.),CMR
  15362. STT SPACE 4,10
  15363. ** SYSTEM SYNTAX TABLE - CHARACTER T.
  15364.  
  15365. USE CODE FORCE CONDITIONAL SUBROUTINE POINTERS HERE
  15366. ENTRY STT
  15367.  
  15368. TAF ENTER (TAF@),,SDF
  15369.  
  15370. TMP ENTER (TEMP=@),,SDF
  15371.  
  15372. TRM ENTER (TERMINATE,?.),,SDF
  15373.  
  15374. THR ENTER (THRESHOLD,@),,SDF
  15375.  
  15376. TIM ENTER (TIME.;),LOCK
  15377.  
  15378. TLF ENTER (TLF@),,SDF
  15379.  
  15380. ILD ENTER (TMSDIS,@),,SDF
  15381.  
  15382. TCA ENTER (TRACE,SET,ABS,?,?.),(CTB,LOCK),SDF,ERL
  15383. TCC ENTER (TRACE,SET,CPA,?,?.),(CTB,LOCK),SDF,ERL
  15384. TCM ENTER (TRACE,MTR@),(CTB,LOCK),SDF,ERL
  15385. TCP ENTER (TRACE,PPU@),(CTB,LOCK),SDF,ERL
  15386.  
  15387. LPT ENTER (TRAIN,?,?.),,SDF
  15388.  
  15389. TPA ENTER (TRAP.),(CTB,LOCK),SDF,ERL
  15390. TPD ENTER (TRAP,DJB.),(CTB,LOCK),SDF,ERL
  15391. TPJ ENTER (TRAP,EJT.),(CTB,LOCK),SDF,ERL
  15392. TPM ENTER (TRAP,MCT.),(CTB,LOCK),SDF,ERL
  15393. TPN ENTER (TRAP,NFL.),(CTB,LOCK),SDF,ERL
  15394. TPC ENTER (TRAP,CPA,?,@),(CTB,LOCK),SDF,ERL
  15395. TPF ENTER (TRAP,MEM,?,@),(CTB,LOCK),SDF,ERL
  15396.  
  15397. CON 0 END OF TABLE
  15398. CTB SPACE 4,10
  15399. ** CTB - CHECK FOR TRACE BLOCK.
  15400. *
  15401. * EXIT (A) = 0 IF COMMAND NOT ALLOWED.
  15402. *
  15403. * USES AB - AB+4.
  15404.  
  15405.  
  15406. CTB SUBR ENTRY/EXIT
  15407. LDK SSTL
  15408. CRD AB
  15409. LDD AB+2
  15410. LPN 40
  15411. LMN 40
  15412. ZJN CTBX IF SYSTEM DEBUG NOT ENABLED
  15413. LDD AB+3 CHECK FOR TRACE BLOCK ENABLED
  15414. LPN 2
  15415. LMN 2
  15416. UJN CTBX RETURN
  15417. SPACE 4,10
  15418. CMDEND
  15419. COMMAND (SYSTEM SYNTAX TABLE - CHARACTERS U - X.),CMR
  15420. SUX SPACE 4,10
  15421. ** SYSTEM SYNTAX TABLE - CHARACTERS U - X.
  15422. SUX SPACE 4,10
  15423. ** NOTE - THIS OVERLAY SHOULD BE CM RESIDENT (FOR
  15424. * THE *X.* COMMANDS).
  15425.  
  15426. USE CODE FORCE CONDITIONAL SUBROUTINE POINTERS HERE
  15427. ENTRY SUX
  15428.  
  15429.  
  15430. UNL ENTER (UNLOAD,?.),,SDF
  15431.  
  15432. CUP ENTER (UP,CCH=?.),CCH,SDF,ERL
  15433. CUP ENTER (UP,CCH=?,EQ=?.),CCH,SDF,ERL
  15434.  
  15435. UPC ENTER (UP,CH=?.),,SDF,ERL
  15436. UPC ENTER (UP,CH=?,EQ=?.),,SDF,ERL
  15437.  
  15438. MUP ENTER (UP,MCH=?.),,SDF,ERL
  15439. MUP ENTER (UP,MCH=?,EQ=?.),,SDF,ERL
  15440.  
  15441. VHP ENTER (V,HNG.)
  15442. VPS ENTER (V,PS.)
  15443. VPP ENTER (V,?.)
  15444.  
  15445. VMS ENTER (VALIDATE,?.),,SDF
  15446.  
  15447. VSN ENTER (VSN,?,@),,SDF
  15448. VSN ENTER (VSN,?.),,SDF
  15449.  
  15450. SWD ENTER (W,>ACMPQR>.)
  15451.  
  15452. WAR ENTER (WARN.),,SDF
  15453. WAR ENTER (WARN,@),,SDF
  15454.  
  15455. IIF ENTER (X.&lt;AZ'.),,SDF
  15456. IIF ENTER (X.&lt;AZ',?.),,SDF
  15457.  
  15458. *ISJ ENTER (X.<AZ'(@),,SDF
  15459. DATA Z*X.<AZ'(@*
  15460. VFD 4/2,20//COMMAND/ISJ
  15461.  
  15462. CON 0 END OF TABLE
  15463. CCH SPACE 4,10
  15464. ** CCH - CHECK FOR CONCURRENT CHANNELS.
  15465. *
  15466. * EXIT (A) = NUMBER OF CONCURRENT CHANNELS.
  15467. * = 0 = COMMAND NOT ALLOWED.
  15468. *
  15469. * USES AB - AB+4.
  15470.  
  15471.  
  15472. CCH SUBR ENTRY/EXIT
  15473. LDK CPPL
  15474. CRD AB
  15475. LDD AB+3
  15476. LPN 77
  15477. UJN CCHX RETURN
  15478. SPACE 4,10
  15479. CMDEND
  15480. COMMAND (JOB TERMINATION COMMANDS.),CMR
  15481. SPACE 4,10
  15482. *** NOTE -
  15483. * THIS OVERLAY SHOULD BE MADE CM RESIDENT SO THAT
  15484. * THE COMMANDS IN THIS OVERLAY WILL BE AVAILABLE TO
  15485. * THE OPERATOR EVEN IF THE SYSTEM IS HUNG.
  15486. SPACE 4,10
  15487. SPACE 4,10
  15488. *** DROP,JSN.
  15489. *
  15490. * DROP JOB IN EJT WHICH HAS THE SPECIFIED JSN. THE JOB
  15491. * CANNOT BE A SUBSYSTEM.
  15492.  
  15493.  
  15494. ENTRY DRP
  15495. LDC ZJNI+DRP2-DRPA+ODET*10000
  15496. ERRNG 37+DRPA-DRP2 INCORRECT JUMP INSTRUCTION
  15497. ERRNG 37+DRP2-DRPA INCORRECT JUMP INSTRUCTION
  15498. DRP1 STM DRPA
  15499. SHN -14
  15500. STM DRPB
  15501. RJM ASN GET JSN
  15502. LDD AB+2
  15503. NJP DRP2 IF JSN .GT. 4 CHARACTERS
  15504. LDN AB GET EJTO
  15505. RJM GEE
  15506. MJN DRP2 IF EJT ENTRY NOT FOUND
  15507. STD CM+2
  15508. ZJN DRP2 IF JSN = *SYS*
  15509. SFA EJT
  15510. ADN SCLE GET SERVICE CLASS
  15511. CRD SR
  15512. LDD CM SAVE JSN
  15513. STD CM+3
  15514. LDD CM+1
  15515. STD CM+4
  15516. LDD SR
  15517. SHN -6
  15518. LMN SSSC
  15519. DRPA ZJN DRP2 IF SUBSYSTEM SERVICE CLASS
  15520. * NJN DRP2 (NOT SUBSYSTEM SERVICE CLASS)
  15521. * PSN (OVERRIDE)
  15522. LDC ODET
  15523. DRPB EQU *-1 (ERROR FLAG)
  15524. * LDC OKET (KILL)
  15525. * LDC ORET (OVERRIDE)
  15526. ADC 4000
  15527. STD CM+1
  15528. MONITOR CEFM
  15529. LDM DRPB
  15530. SBN OKET
  15531. ZJN KIL1 IF OPERATOR KILL
  15532. DRP1.1 JMP KBR IF NO ERROR
  15533.  
  15534. DRP2 JMP KIE *INCORRECT ENTRY*
  15535. KIL SPACE 4,10
  15536. *** KILL,JSN.
  15537. *
  15538. * TERMINATE JOB IN THE EJT WITHOUT EXIT
  15539. * PROCESSING. THE JOB CANNOT BE A SUBSYSTEM.
  15540.  
  15541.  
  15542. ENTRY KIL
  15543. LDC ZJNI+DRP2-DRPA+OKET*10000 SET NO SUBSYSTEMS, KILL
  15544. ERRNG 37+DRPA-DRP2 INCORRECT JUMP INSTRUCTION
  15545. ERRNG 37+DRP2-DRPA INCORRECT JUMP INSTRUCTION
  15546. JMP DRP1 CONTINUE
  15547.  
  15548. KIL1 SFA EJT,T3 GET JOB STATUS
  15549. ADK JSNE
  15550. CRD CM
  15551. LDD CM+4
  15552. LPN 76
  15553. LMN IOJS*2
  15554. ZJN KIL2 IF *IOJS*
  15555. LMN DOJS*2&IOJS*2
  15556. NJN DRP1.1 IF NEITHER *DOJS* NOR *IOJS*
  15557. KIL2 LDD AB SET JSN FOR *1DS*
  15558. STD AB+3
  15559. LDD AB+1
  15560. STD AB+4
  15561. LDK /1DS/KIJF KILL INTERACTIVE JOB
  15562. STD AB+2
  15563. JMP KAR PROCESS *1DS* CALL
  15564. OVR SPACE 4,10
  15565. *** OVERRIDE,JSN.
  15566. *
  15567. * TERMINATE JOB IN EJT.
  15568.  
  15569.  
  15570. ENTRY OVR
  15571. LDC PSNI+ORET*10000 SET NO SUSBSYSTEM CHECK, OVERRIDE
  15572. JMP DRP1 CONTINUE
  15573. STO SPACE 4,10
  15574. *** STOP,SUBSY.
  15575. *
  15576. * DROP SUBSYSTEM *SUBSY* FROM THE EJT, WHERE
  15577. * *SUBSY* IS ANY LEGAL SUBSYSTEM NAME.
  15578.  
  15579.  
  15580. ENTRY STO
  15581. LDC NJNI+DRP2-DRPA+ODET*10000 SET SUBSYSTEM CHECK, DROP
  15582. ERRNG 37+DRPA-DRP2 INCORRECT JUMP INSTRUCTION
  15583. ERRNG 37+DRP2-DRPA INCORRECT JUMP INSTRUCTION
  15584. JMP DRP1 CONTINUE
  15585. SPACE 4,10
  15586. CMDEND
  15587. COMMAND (SYSTEM CONTROL COMMANDS.),CMR
  15588. SPACE 4,10
  15589. *** NOTE -
  15590. * THIS OVERLAY SHOULD BE MADE CM RESIDENT SO THAT
  15591. * THE COMMANDS IN THIS OVERLAY WILL BE AVAILABLE TO
  15592. * THE OPERATOR EVEN IF THE SYSTEM IS HUNG.
  15593. DBG SPACE 4,10
  15594. *** DEBUG.
  15595. *
  15596. * TOGGLE DEBUG MODE.
  15597.  
  15598.  
  15599. ENTRY DBG
  15600. LDN SSTL READ SYSTEM STATUS
  15601. CRD CM
  15602. LDD CM+3 TOGGLE DEBUG
  15603. LMN 1
  15604. STD CM+3
  15605. LDN SSTL STORE SYSTEM STATUS
  15606. CWD CM
  15607. UJN STE1 SET STATUS
  15608. STM SPACE 4,10
  15609. *** STEP.
  15610. *
  15611. * SET MONITOR IN STEP MODE.
  15612.  
  15613.  
  15614. ENTRY STE
  15615. LDN ZERL SET MONITOR STEP
  15616. CRD CM
  15617. * LDN MSPS
  15618. * STD CM+1
  15619. ERRNZ MSPS
  15620. LDC 2R CLEAR FUNCTION
  15621. STM /DSD/DLSD
  15622. STM /DSD/DLSD+1
  15623. STM /DSD/DLSB CLEAR JSN
  15624. STM /DSD/DLSC
  15625. MONITOR DSRM SET STEP MODE
  15626. STE1 LDN 0 SET NO *1DS* CALL
  15627. UJN LCK2 SET STATUS IN *EICB*
  15628. LCK SPACE 4,10
  15629. *** LOCK.
  15630. *
  15631. * LOCK KEYBOARD INPUT.
  15632.  
  15633.  
  15634. ENTRY LCK
  15635. LDN 0 CLEAR UNLOCK FLAG
  15636. STD LK
  15637. LDN 1
  15638. LCK1 SHN 10D
  15639. STD AB+3
  15640. LDN SSTL SET CONSOLE LOCK STATUS
  15641. CRD CM
  15642. LDD CM
  15643. SHN 12
  15644. SCN 3
  15645. LMD LK
  15646. SHN 10
  15647. STD CM
  15648. LDN SSTL STORE STATUS
  15649. CWD CM
  15650. LDK /1DS/SAMF SET *1DS* CALL
  15651. LCK2 LJM SVF SET STATUS IN *EICB*
  15652. ULK SPACE 4,10
  15653. *** UNLOCK.
  15654. *
  15655. * UNLOCK SPECIAL KEYBOARD INPUT.
  15656.  
  15657.  
  15658. ENTRY ULK
  15659. LDD LK
  15660. NJN UNL1 IF UNLOCKED ALREADY
  15661. LDD SF SET SECURITY UNLOCK BIT IF UNSECURED
  15662. SBN 1
  15663. LPN 4
  15664. SHN -1
  15665. ADN 1 SET UNLOCK BIT
  15666. STD LK
  15667. UNL1 LDN 3
  15668. UJN LCK1 SET CONSOLE UNLOCK STATUS
  15669. SUL SPACE 4,10
  15670. *** UNLOCK,USRNAME,PASSWRD.
  15671. *
  15672. * SECURITY UNLOCK THE CONSOLE.
  15673.  
  15674.  
  15675. ENTRY SUL
  15676. LDN 0 RESET PASS FLAG
  15677. STD T3
  15678. LDD CA SAVE POINTER TO BUFFER
  15679. SBK KBUF
  15680. STD T5
  15681. SUL1 RJM ASN ASSEMBLE STRING
  15682. LDD AB+3
  15683. LPN 77
  15684. NJN SUL2 IF STRING .GT. 7 CHARACTERS
  15685. LDI CA CHECK SEPARATOR
  15686. SBN 1R.
  15687. ZJN SUL3 IF END OF STATEMENT
  15688. LDD T3
  15689. SUL2 NJN SUL6 IF EXTRANEOUS PARAMETER FOUND
  15690. AOD T3 SET PASS FLAG
  15691. AOD CA
  15692. UJN SUL1 ASSEMBLE SECOND PARAMETER
  15693.  
  15694. SUL3 LDD T5 PASS BUFFER POINTER
  15695. STD AB+4
  15696. LDC /1DS/VSAF+/1DS/LOCK
  15697. RJM C1D PROCESS FUNCTION
  15698. LDC SUL4 SET REENTRY ADDRESS
  15699. STM /KEYBOARD/KCRB
  15700. SUL4 LDC /1DS/DSDL
  15701. CRD CM
  15702. LDD CM
  15703. ZJN SUL5 IF *1DS* COMPLETE
  15704. LJM CLP1 REENTER
  15705.  
  15706. SUL5 LDC /1DS/DSDL+1 CHECK RESULTS
  15707. CRD CM
  15708. LDD CM
  15709. NJN SUL6 IF UNSUCCESSFUL
  15710. UJN SVF SET STATUS IN *EICB*
  15711.  
  15712. SUL6 JMP KIE INCORRECT ENTRY
  15713. UNS SPACE 4,10
  15714. *** UNSTEP.
  15715. *
  15716. * CLEAR MONITOR STEP.
  15717.  
  15718.  
  15719. ENTRY UNS
  15720. LDC SCRL
  15721. CRD CM
  15722. LDD CM
  15723. SHN 21-11
  15724. PJN UNS1 IF EMERGENCY STEP NOT REQUESTED
  15725. JMP KIE *INCORRECT ENTRY*
  15726.  
  15727. UNS1 LDN ZERL
  15728. CRD CM
  15729. LDN CSPS SET *DSRM* SUBFUNCTION TO CLEAR STEP
  15730. STD CM+1
  15731. MONITOR DSRM
  15732. * LDN 0 CLEAR STEP FLAG
  15733. STD ST
  15734. * UJN SVF SET STATUS
  15735. SVF SPACE 4,12
  15736. ** SVF - SET STATUS IN *EICB*.
  15737. *
  15738. * ENTRY (A) = *1DS* FUNCTION CODE IF *1DS* CALL REQUIRED.
  15739. * (A) = 0 IF NO CALL TO *1DS* REQUIRED.
  15740. *
  15741. * EXIT TO *KAR*.
  15742. * *D7ST* OF THE *EICB* UPDATED.
  15743. *
  15744. * CALLS FDP.
  15745. *
  15746. * USES T1, CM - CM+4, CN - CN+4.
  15747.  
  15748.  
  15749. SVF BSS 0 ENTRY
  15750. STD T1 SAVE *1DS* FUNCTION CODE
  15751. RJM FDP GET *D7ST* ADDRESS
  15752. ZJN SVF4 IF NO *EICB*
  15753. CRD CN READ CURRENT *D7ST*
  15754. LDD CN
  15755. LPC 777 CLEAR STATUS FLAGS
  15756. STD CN
  15757. LDN SSTL
  15758. CRD CM
  15759. LDD ST
  15760. ZJN SVF1 IF NOT *STEP* MODE
  15761. LDC 1000 SET STEP FLAG
  15762. RAD CN
  15763. SVF1 LDD CM+3
  15764. SHN 21-2
  15765. MJN SVF2 IF *ENGR* DISABLED
  15766. LDC 2000
  15767. RAD CN
  15768. SVF2 LDD CM
  15769. SHN 21-10
  15770. PJN SVF2.1 IF LOCKED
  15771. LDD CM+3
  15772. SHN 21-0
  15773. MJN SVF3 IF *DEBUG*
  15774. SVF2.1 LDC 4000 SET OPERATIONAL MODE
  15775. RAD CN
  15776. SVF3 RJM FDP WRITE NEW STATUS
  15777. CWD CN
  15778. SVF4 LDD T1 ISSUE *1DS* REQUEST
  15779. JMP KAR RETURN
  15780. DVE SPACE 4,10
  15781. *** DROPVE.
  15782. *
  15783. * SIGNAL *NVE* TO DROP.
  15784.  
  15785.  
  15786. ENTRY DVE
  15787. LDN SSTL
  15788. CRD CM
  15789. LDD CM+3
  15790. SHN 21-13
  15791. MJN DVE1 IF *VE=* NOT ENTERED AT DEADSTART
  15792. RJM FDP FETCH *EICB* POINTER
  15793. CRD CN
  15794. LDD CN+1 SET *DROPVE* BIT
  15795. SCN 1
  15796. LMN 1
  15797. STD CN+1
  15798. RJM FDP UPDATE STATUS
  15799. CWD CN
  15800. JMP KBR RETURN
  15801.  
  15802. DVE1 JMP KIE INCORRECT ENTRY
  15803. SPACE 4,10
  15804. CMDEND
  15805. COMMAND (CENTRAL MEMORY CHANGES.),CMR
  15806. SPACE 4,10
  15807. ** NOTE -
  15808. *
  15809. * THIS OVERLAY SHOULD BE MADE CM RESIDENT SO THAT
  15810. * THE COMMANDS IN THIS OVERLAY WILL BE AVAILABLE TO
  15811. * THE OPERATOR EVEN IF THE SYSTEM IS HUNG.
  15812. ENM SPACE 4,10
  15813. *** XXXXXXX,YYY - YYY.
  15814. * XXXXXXX,Y,ZZZZ.
  15815. * XXXXXXX,IP,FFFFF.
  15816. *
  15817. * ENTER YYY - YYY INTO CENTRAL MEMORY LOCATION XXXXXXX.
  15818. * ENTER ZZZZ INTO BYTE Y OF CENTRAL MEMORY LOCATION
  15819. * XXXXXXX.
  15820. * ENTER INSTRUCTION FFFFF INTO PARCEL P OF CENTRAL MEMORY
  15821. * LOCATION XXXXXXX.
  15822. *
  15823. * 0 .LE. Y .LE. 4.
  15824. * 0 .LE. P .LE. 3.
  15825. * 0 .LE. XXXXXXX .LE. 7,777,777B.
  15826.  
  15827.  
  15828. ENTRY ENM
  15829. RJM GCA GET CM ADDRESS
  15830. LDD CM CONVERT RA/100B TO RA
  15831. SHN 6
  15832. STD CM
  15833. LDD CM+1
  15834. SHN 6
  15835. STD CM+1
  15836. SHN -14
  15837. RAD CM
  15838. RJM ASD ASSEMBLE ADDRESS
  15839. LDD AB+3 SAVE ADDRESS
  15840. LPC 7000
  15841. ADD AB+2
  15842. ADD AB+1
  15843. ADD AB
  15844. NJN ENM1 IF ADDRESS .GT. 21 BITS
  15845. LDD CP
  15846. ZJN ENM2 IF ABSOLUTE MEMORY MODIFICATION
  15847. LDD AB+3
  15848. SHN -6
  15849. NJN ENM1 IF RELATIVE ADDRESS .GT. 18 BITS
  15850. LCN 0
  15851. LMD AB+3 SET COMPLEMENT OF RELATIVE ADDRESS
  15852. SHN 14
  15853. LMD AB+4
  15854. MJN ENM2 IF POSITIVE FL CHANGE
  15855.  
  15856. * PROCESS RELATIVE NFL MEMORY CHANGE.
  15857.  
  15858. STD T7 NEGATIVE ADDRESS RELATIVE TO RA-1
  15859. SHN -6
  15860. SBD CM+4
  15861. PJN ENM1 IF ADDRESS NOT IN NFL
  15862. LDD CM
  15863. STD T6
  15864. SOD CM+1 FORM RA-1 - ADDRESS
  15865. SBD T7
  15866. STD T7
  15867. PJN ENM3 IF NO BORROW OCCURRED
  15868. SOD T6 ADJUST FOR BORROW
  15869. AOD T7
  15870. UJN ENM3 CHECK FOR CM EXTENSION
  15871.  
  15872. ENM1 JMP KIE *INCORRECT ENTRY*
  15873.  
  15874. * PROCESS ABSOLUTE MEMORY CHANGE OR
  15875. * PROCESS RELATIVE FL MEMORY CHANGE.
  15876.  
  15877. ENM2 LDD AB+3 COMPARE ADDRESS WITH FL
  15878. STD T6
  15879. LDD AB+4
  15880. STD T7
  15881. SHN -6
  15882. SHN 14
  15883. LMD T6
  15884. SHN 6
  15885. SBD CM+3
  15886. SHN 6
  15887. SBD CM+2
  15888. SHN 14
  15889. PJN ENM1 IF ADDRESS .GT. FL
  15890. LDD CM+1 CALCULATE ABSOLUTE ADDRESS
  15891. RAD T7
  15892. SHN -14
  15893. ADD CM
  15894. RAD T6
  15895. ENM3 LDM CMEI
  15896. ZJN ENM4 IF NOT CM EXTENSION
  15897. LDD T6 SET (R) = UPPER 9 ADDRESS BITS
  15898. SHN 6
  15899. STD T2
  15900. SHN 6
  15901. STD T1
  15902. LRD T1
  15903.  
  15904. * SET (T6 - T7) = LOWER 12 ADDRESS BITS + 400,000B.
  15905.  
  15906. LDN 40
  15907. STD T6
  15908. ENM4 AOD CA SKIP SEPERATOR
  15909. RJM ASD ASSEMBLE DIGITS
  15910. LMN 1R.
  15911. NJN ENM6 IF NOT *.*
  15912. ENM5 LDD T6
  15913. SHN 14
  15914. LMD T7 STORE WORD
  15915. CWD AB
  15916. JMP KBR RETURN
  15917.  
  15918. ENM6 LMN 1RI&1R.
  15919. ERRNG 1R,&1RI-40 ASSUMES *,* WILL PRODUCE A RESULT .GE. 40
  15920. STD T4
  15921. NJN ENM7 IF BYTE CHANGE
  15922. AOD CA
  15923. RJM ASD ASSEMBLE PARCEL NUMBER
  15924. LDN 0
  15925. SBM ENMF,AB+4
  15926. STM ENMB SET MASKS
  15927. SHN -3
  15928. STM ENMD
  15929. ENM7 LDD AB+4 SAVE BYTE ADDRESS
  15930. ADN CM
  15931. STD T5
  15932. SHN 22-2 CALCULATE SHIFT COUNT
  15933. SBD AB+4
  15934. SHN 2
  15935. ADK SHNI+77-3-CM
  15936. STM ENMA
  15937. ADK SHNI+11-SHNI-77+3
  15938. STM ENMC
  15939. AOD CA ASSEMBLE ENTRY
  15940. RJM ASD
  15941. LDD T6 READ WORD
  15942. SHN 14
  15943. LMD T7
  15944. CRD CM
  15945. LDD AB+3 CHANGE BYTE
  15946. LPN 7
  15947. LMD T4
  15948. SHN 14
  15949. LMD AB+4
  15950. MJN ENM8 IF BYTE CHANGE
  15951. ENMA SHN -3-3* PARCEL
  15952. STD AB+3
  15953. LDI T5
  15954. LPC 770000
  15955. ENMB EQU *-1
  15956. LMD AB+3
  15957. STI T5
  15958. AOD T5
  15959. LDD AB+4
  15960. ENMC SHN 11-3* PARCEL
  15961. LMI T5
  15962. LPC 777000
  15963. ENMD EQU *-1
  15964. LMI T5
  15965. ENM8 STI T5 SET BYTE
  15966. LDD T6
  15967. SHN 14
  15968. LMD T7 STORE WORD
  15969. CWD CM
  15970. JMP KBR RETURN
  15971.  
  15972.  
  15973. ENMF CON 7777,777,77,7
  15974. GCA SPACE 4,10
  15975. ** GCA - GET CM DISPLAY ADDRESS.
  15976. *
  15977. * ENTRY (LS) = LEFT DISPLAY INDEX.
  15978. *
  15979. * EXIT (CP) = CP AREA ADDRESS.
  15980. * = 0, IF SYSTEM.
  15981. * (CM - CM+1) = 9/ , 15/ RA/100B.
  15982. * (CM+2 - CM+3) = 9/ , 15/ FL/100B.
  15983. * (CM+4) = NFL/100B, IF DISPLAY ASSIGNED TO JSN.
  15984. *
  15985. * USES CP, T2, T6, T7, CM - CM+4.
  15986. *
  15987. * CALLS GCP, SJT.
  15988.  
  15989.  
  15990. GCA2 AOD T2 GET CPA ADDRESS
  15991. RJM GCP
  15992. ZJN GCA3 IF NO JSN
  15993. ADN FLSW
  15994. CRD T6
  15995. LDD CM+2 MOVE FL/100B
  15996. STD CM+3
  15997. LDN 0
  15998. STD CM+2
  15999. LDD T6 MOVE NFL/100B
  16000. STD CM+4
  16001. UJN GCAX RETURN
  16002.  
  16003. GCA3 STD CP SET SYSTEM CP
  16004. LDC MABL GET CM/100B
  16005. CRD CM
  16006. LDN 0 SET SYSTEM RA
  16007. STD CM
  16008. STD CM+1
  16009.  
  16010. GCA SUBR ENTRY/EXIT
  16011. LDD LS SEARCH JSN TABLE
  16012. RJM SJT
  16013. NJN GCA2 IF DISPLAY FOUND
  16014. GCA1 JMP KIE PROCESS INCORRECT ENTRY
  16015. GCP SPACE 4,10
  16016. ** GCP - GET CPA ADDRESS.
  16017. *
  16018. * ENTRY (A) = JSN ADDRESS IN *TJAZ* TABLE.
  16019. *
  16020. * EXIT (A) = CPA ADDRESS OF JOB WITH DISPLAY-S JSN.
  16021. * = 0, IF NO JSN ASSOCIATED WITH DISPLAY.
  16022. * (CN) = CP NUMBER.
  16023. * (CP) = CPA ADDRESS, IF JSN DISPLAY.
  16024. *
  16025. * USES CN, CP, T3, AB - AB+4, CM - CM+4.
  16026. *
  16027. * CALLS GEE, IEE.
  16028. *
  16029. * MACROS SFA.
  16030.  
  16031.  
  16032. GCP SUBR ENTRY/EXIT
  16033. STD T3
  16034. LDI T3
  16035. ZJN GCPX IF JSN NOT PRESENT
  16036. LDD T3 SET FWA OF JSN TO FIND
  16037. RJM GEE SEARCH EJT
  16038. ZJN GCPX IF JSN = *SYS*
  16039. PJN GCP2 IF EJT ENTRY FOUND
  16040. GCP1 JMP KIE *INCORRECT ENTRY*
  16041.  
  16042. GCP2 RJM IEE INTERLOCK EJT ENTRY
  16043. MJN GCP1 IF INTERLOCK UNAVAILABLE
  16044. SFA EJT
  16045. ADK JSNE GET JOB STATUS
  16046. CRD CM
  16047. ADN SCHE GET CP NUMBER
  16048. CRD AB
  16049. LDD CM+4
  16050. LPN 76
  16051. LMN EXJS*2
  16052. NJN GCP1 IF JOB NOT AT CP
  16053. LDD AB+3 SET CPA ADDRESS
  16054. LPN 37
  16055. STD CN
  16056. SHN 7
  16057. STD CP
  16058. UJN GCPX RETURN
  16059. SPACE 4,10
  16060. CMDEND
  16061. COMMAND (CENTRAL MEMORY CHANGES - MULTIPLE.)
  16062. EMR SPACE 4,10
  16063. *** XXXXXXX+YYY.
  16064. * XXXXXXX-YYY - YYY.
  16065. * XXXXXXX+Y,ZZZZ.
  16066. * XXXXXXX-Y,ZZZZ.
  16067. *
  16068. * ENTER YYY - YYY IN MEMORY LOCATION XXXXXXX.
  16069. * ENTER ZZZZ IN BYTE Y OF MEMORY LOCATION XXXXXXX.
  16070. *
  16071. * 0 .LE. XXXXXXX .LE. 7,777,777B.
  16072. * 0 .LE. Y .LE. 4.
  16073.  
  16074.  
  16075. ENTRY EMR
  16076. RJM ASA ASSEMBLE ADDRESS
  16077. RJM ASD ASSEMBLE ENTRY
  16078. SBN 1R.
  16079. ZJN EMR1 IF *.*
  16080. LDD AB+4 SAVE BYTE NUMBER
  16081. STD T4
  16082. AOD CA ASSEMBLE ENTRY
  16083. RJM ASD
  16084. LDD AB+4 SAVE ENTRY
  16085. STD T1
  16086. LDD T6 READ WORD
  16087. SHN 14
  16088. LMD T7
  16089. CRD AB
  16090. LDD T1 STORE BYTE
  16091. STM AB,T4
  16092. EMR1 LDD T6 STORE WORD
  16093. SHN 14
  16094. LMD T7
  16095. CWD AB
  16096. * UJN ADV ADVANCE ADDRESS
  16097. ADV SPACE 4,10
  16098. ** ADV - ADVANCE/DECREMENT ADDRESS.
  16099. *
  16100. * ENTRY (T5) = SEPARATOR CHARACTER ADDRESS.
  16101. *
  16102. * USES KI, T1, T2, T5.
  16103. *
  16104. * CALLS C1D.
  16105.  
  16106.  
  16107. ADV LDD T5 SET SEPARATOR CHARACTER ADDRESS
  16108. STM ADVA
  16109. LDN 0 CHECK COMMAND LOGGING
  16110. RJM C1D
  16111. LDC *
  16112. ADVA EQU *-1 (SEPARATOR CHARACTER ADDRESS)
  16113. STD T5
  16114. STD T1
  16115. LDI T5 CHECK SEPARATOR
  16116. SBN 1R+
  16117. ZJN ADV3 IF *+*
  16118. SBN 1R--1R+
  16119. NJN ADV1 IF NOT *-*
  16120. LJM ADV8 PROCESS *-*
  16121.  
  16122. ADV1 JMP KBR RETURN
  16123.  
  16124. ADV2 AOI T5 ADVANCE ENTRY
  16125. SBN 1R8
  16126. MJN ADV6 IF NO OVERFLOW
  16127. SOI T5
  16128. LMN 1R.
  16129. ZJN ADV4 IF *.*
  16130. LDN 1R0 RESET DIGIT
  16131. STI T5
  16132. ADV3 SOD T5
  16133. ADC -KBUF
  16134. PJN ADV2 IF NOT PAST START OF BUFFER
  16135. ADV4 LDC KBUF+KBUFL-1
  16136. STD T2
  16137. ADV5 LDI T2 MOVE CONTENTS OF BUFFER
  16138. STM 1,T2
  16139. SOD T2
  16140. SBD T5
  16141. NJN ADV5 IF BUFFER NOT MOVED
  16142. LDN 1R1 SET FIRST CHARACTER OF BUFFER
  16143. STM 1,T2
  16144. AOD KI INCREMENT KEYBOARD INDEX
  16145. AOD T1 SKIP PREVIOUS CHARACTER
  16146. ADV6 UJN ADV9 SET CHARACTER INDEX
  16147.  
  16148. ADV7 SOI T5 DECREMENT ENTRY
  16149. SBN 1R0
  16150. PJN ADV9 IF NO UNDERFLOW
  16151. LDN 1R7 RESET DIGIT
  16152. STI T5
  16153. ADV8 SOD T5
  16154. ADC -KBUF
  16155. PJN ADV7 IF NOT PAST START OF BUFFER
  16156. ADV9 AOD T1 SKIP SEPARATOR
  16157. LDI T1 CHECK NEXT CHARACTER
  16158. SBN 1RD
  16159. NJN ADV10 IF NOT *D*
  16160. AOD T1 SKIP *D*
  16161. ADV10 LDD T1 RETURN TO PARTIAL CLEAR
  16162. ADC -KBUF
  16163. LJM KPC RETURN TO PARTIAL CLEAR
  16164. ASA SPACE 4,10
  16165. ** ASA - ASSEMBLE ADDRESS.
  16166. *
  16167. * ENTRY (CA) = CHARACTER ADDRESS.
  16168. *
  16169. * EXIT (T5) = SEPARATOR CHARACTER INDEX.
  16170. * (T6 - T7) = ADDRESS.
  16171. *
  16172. * USES CA, CM, CM+1, CM+2, CM+3, T5, T6, T7.
  16173. *
  16174. * CALLS ASD, GCA.
  16175.  
  16176.  
  16177. ASA SUBR ENTRY/EXIT
  16178. RJM GCA GET CM ADDRESS
  16179. LDD CM CONVERT RA/100B TO RA
  16180. SHN 6
  16181. STD CM
  16182. LDD CM+1
  16183. SHN 6
  16184. STD CM+1
  16185. SHN -14
  16186. RAD CM
  16187. RJM ASD ASSEMBLE ADDRESS
  16188. LDD AB+3
  16189. LPC 7000
  16190. ADD AB+2
  16191. ADD AB+1
  16192. ADD AB
  16193. NJN ASA1 IF .GT. 21 BITS
  16194. LDD AB+3 COMPARE ENTERED CM LOCATION WITH FL
  16195. STD T6
  16196. LDD AB+4
  16197. STD T7
  16198. SHN -6
  16199. SHN 14
  16200. LMD T6
  16201. SHN 6
  16202. SBD CM+3
  16203. SHN 6
  16204. SBD CM+2
  16205. SHN 14
  16206. MJN ASA2 IF ADDRESS .LE. FL
  16207. ASA1 JMP KIE *INCORRECT ENTRY*
  16208.  
  16209. ASA2 LDD CM+1
  16210. RAD T7
  16211. SHN -14
  16212. ADD CM
  16213. ADD T6
  16214. STD T6
  16215. LDM. CMEI
  16216. ZJN ASA3 IF NOT CME
  16217. LDD T6 SET (R) = UPPER 9 ADDRESS BITS
  16218. SHN 6
  16219. STD CM+3
  16220. SHN 6
  16221. STD CM+2
  16222. LRD CM+2
  16223.  
  16224. * SET (T6 - T7) = LOWER 12 ADDRESS BITS + 400,000B.
  16225.  
  16226. LDN 40
  16227. STD T6
  16228. ASA3 LDD CA SET SEPARATOR ADDRESS
  16229. STD T5
  16230. AOD CA SKIP SEPARATOR
  16231. LJM ASAX EXIT
  16232. GCA SPACE 4,10
  16233. ** GCA - GET CM DISPLAY ADDRESS.
  16234. *
  16235. * ENTRY (LS) = LEFT DISPLAY INDEX.
  16236. *
  16237. * EXIT (CP) = CP AREA ADDRESS.
  16238. * = 0, IF SYSTEM.
  16239. * (CM - CM+1) = 9/ , 15/ RA/100B.
  16240. * (CM+2 - CM+3) = 9/ , 15/ FL/100B.
  16241. *
  16242. * USES CP, T2, T6, T7, CM - CM+4.
  16243. *
  16244. * CALLS SJT.
  16245.  
  16246.  
  16247. GCA3 AOD T2 SET FWA OF JSN
  16248. LDI T2
  16249. NJN GCA2 IF JSN PRESENT
  16250. GCA3.1 STD CP SET SYSTEM CP
  16251. LDC MABL GET CM/100B
  16252. CRD CM
  16253. LDN 0 SET SYSTEM RA
  16254. STD CM
  16255. STD CM+1
  16256.  
  16257. GCA SUBR ENTRY/EXIT
  16258. LDD LS SEARCH JSN TABLE
  16259. RJM SJT
  16260. NJN GCA3 IF DISPLAY FOUND
  16261. GCA1 JMP KIE PROCESS INCORRECT ENTRY
  16262.  
  16263. GCA2 LDD T2 SEARCH EJT
  16264. RJM GEE
  16265. ZJN GCA3.1 IF JSN = *SYS*
  16266. MJN GCA1 IF EJT ENTRY NOT FOUND
  16267. RJM IEE INTERLOCK EJT ENTRY
  16268. MJN GCA1 IF INTERLOCK UNAVAILABLE
  16269. SFA EJT
  16270. ADK JSNE GET JOB STATUS
  16271. CRD CM
  16272. ADN SCHE GET CP NUMBER
  16273. CRD AB
  16274. LDD CM+4
  16275. LPN 76
  16276. LMN EXJS*2
  16277. NJN GCA1 IF JOB NOT AT CP
  16278. LDD AB+3 SET CPA ADDRESS
  16279. LPN 37
  16280. STD CN
  16281. SHN 7
  16282. STD CP
  16283. ADN FLSW
  16284. CRD T6
  16285. LDD CM+2 MOVE FL/100B
  16286. STD CM+3
  16287. LDN 0
  16288. STD CM+2
  16289. LJM GCAX RETURN
  16290. SPACE 4,10
  16291. CMDEND
  16292. COMMAND (CENTRAL MEMORY CHANGES - DISPLAY CODE.)
  16293. EMD SPACE 4,10
  16294. *** XXXXXXX+DCCC - CCC.
  16295. * XXXXXX-DCCC - CCC.
  16296. *
  16297. * 0 .LE. XXXXXXX .LE. 7,777,777B.
  16298. *
  16299. *** XXXXXXX,DCCC - CCC
  16300. *
  16301. * ENTER MEMORY LOCATION XXXXXXX WITH DISPLAY CODE CHARACTERS
  16302. * CCC - CCC. ENTRY WILL BE LEFT-JUSTIFIED.
  16303.  
  16304.  
  16305. ENTRY EMD
  16306. RJM ASA ASSEMBLE ADDRESS
  16307. AOD CA SKIP *D*
  16308. LDN ZERL CLEAR ASSEMBLY
  16309. CRD AB
  16310. LDN AB SET BYTE ADDRESS
  16311. STD T1
  16312. EMD1 LDI CA STORE UPPER
  16313. ZJN EMD2 IF END OF BUFFER
  16314. SHN 6
  16315. STI T1
  16316. AOD CA ADVANCE CHARACTER
  16317. LDI CA STORE LOWER
  16318. ZJN EMD2 IF END OF BUFFER
  16319. RAI T1
  16320. AOD CA ADVANCE CHARACTER
  16321. AOD T1 ADVANCE BYTE
  16322. LMN AB+5
  16323. NJN EMD1 IF NOT END OF WORD
  16324. EMD2 LDD T6 STORE WORD
  16325. SHN 14
  16326. ADD T7
  16327. CWD AB
  16328. * UJN ADV ADVANCE ADDRESS
  16329. ADV SPACE 4,10
  16330. ** ADV - ADVANCE/DECREMENT ADDRESS.
  16331. *
  16332. * ENTRY (T5) = SEPARATOR CHARACTER ADDRESS.
  16333. *
  16334. * USES KI, T1, T2, T5.
  16335. *
  16336. * CALLS C1D.
  16337.  
  16338.  
  16339. ADV LDD T5 SET SEPARATOR CHARACTER ADDRESS
  16340. STM ADVA
  16341. LDN 0 CHECK COMMAND LOGGING
  16342. RJM C1D
  16343. LDC *
  16344. ADVA EQU *-1 (SEPARATOR CHARACTER ADDRESS)
  16345. STD T5
  16346. STD T1
  16347. LDI T5 CHECK SEPARATOR
  16348. SBN 1R+
  16349. ZJN ADV3 IF *+*
  16350. SBN 1R--1R+
  16351. NJN ADV1 IF NOT *-*
  16352. LJM ADV8 PROCESS *-*
  16353.  
  16354. ADV1 JMP KBR RETURN
  16355.  
  16356. ADV2 AOI T5 ADVANCE ENTRY
  16357. SBN 1R8
  16358. MJN ADV6 IF NO OVERFLOW
  16359. SOI T5
  16360. LMN 1R.
  16361. ZJN ADV4 IF *.*
  16362. LDN 1R0 RESET DIGIT
  16363. STI T5
  16364. ADV3 SOD T5
  16365. ADC -KBUF
  16366. PJN ADV2 IF NOT PAST START OF BUFFER
  16367. ADV4 LDC KBUF+KBUFL-1
  16368. STD T2
  16369. ADV5 LDI T2 MOVE CONTENTS OF BUFFER
  16370. STM 1,T2
  16371. SOD T2
  16372. SBD T5
  16373. NJN ADV5 IF BUFFER NOT MOVED
  16374. LDN 1R1 SET FIRST CHARACTER OF BUFFER
  16375. STM 1,T2
  16376. AOD KI INCREMENT KEYBOARD INDEX
  16377. AOD T1 SKIP PREVIOUS CHARACTER
  16378. ADV6 UJN ADV9 SET CHARACTER INDEX
  16379.  
  16380. ADV7 SOI T5 DECREMENT ENTRY
  16381. SBN 1R0
  16382. PJN ADV9 IF NO UNDERFLOW
  16383. LDN 1R7 RESET DIGIT
  16384. STI T5
  16385. ADV8 SOD T5
  16386. ADC -KBUF
  16387. PJN ADV7 IF NOT PAST START OF BUFFER
  16388. ADV9 AOD T1 SKIP SEPARATOR
  16389. LDI T1 CHECK NEXT CHARACTER
  16390. SBN 1RD
  16391. NJN ADV10 IF NOT *D*
  16392. AOD T1 SKIP *D*
  16393. ADV10 LDD T1 RETURN TO PARTIAL CLEAR
  16394. ADC -KBUF
  16395. LJM KPC RETURN TO PARTIAL CLEAR
  16396. ASA SPACE 4,10
  16397. ** ASA - ASSEMBLE ADDRESS.
  16398. *
  16399. * ENTRY (CA) = CHARACTER ADDRESS.
  16400. *
  16401. * EXIT (T5) = SEPARATOR CHARACTER INDEX.
  16402. * (T6 - T7) = ADDRESS.
  16403. *
  16404. * USES CA, CM, CM+1, CM+2, CM+3, T5, T6, T7.
  16405. *
  16406. * CALLS ASD, GCA.
  16407.  
  16408.  
  16409. ASA SUBR ENTRY/EXIT
  16410. RJM GCA GET CM ADDRESS
  16411. LDD CM CONVERT RA/100B TO RA
  16412. SHN 6
  16413. STD CM
  16414. LDD CM+1
  16415. SHN 6
  16416. STD CM+1
  16417. SHN -14
  16418. RAD CM
  16419. RJM ASD ASSEMBLE ADDRESS
  16420. LDD AB+3
  16421. LPC 7000
  16422. ADD AB+2
  16423. ADD AB+1
  16424. ADD AB
  16425. NJN ASA1 IF .GT. 21 BITS
  16426. LDD AB+3 COMPARE ENTERED CM LOCATION WITH FL
  16427. STD T6
  16428. LDD AB+4
  16429. STD T7
  16430. SHN -6
  16431. SHN 14
  16432. LMD T6
  16433. SHN 6
  16434. SBD CM+3
  16435. SHN 6
  16436. SBD CM+2
  16437. SHN 14
  16438. MJN ASA2 IF ADDRESS .LE. FL
  16439. ASA1 JMP KIE *INCORRECT ENTRY*
  16440.  
  16441. ASA2 LDD CM+1
  16442. RAD T7
  16443. SHN -14
  16444. ADD CM
  16445. ADD T6
  16446. STD T6
  16447. LDM. CMEI
  16448. ZJN ASA3 IF NOT CME
  16449. LDD T6 SET (R) = UPPER 9 ADDRESS BITS
  16450. SHN 6
  16451. STD CM+3
  16452. SHN 6
  16453. STD CM+2
  16454. LRD CM+2
  16455.  
  16456. * SET (T6 - T7) = LOWER 12 ADDRESS BITS + 400,000B.
  16457.  
  16458. LDN 40
  16459. STD T6
  16460. ASA3 LDD CA SET SEPARATOR ADDRESS
  16461. STD T5
  16462. AOD CA SKIP SEPARATOR
  16463. LJM ASAX EXIT
  16464. GCA SPACE 4,10
  16465. ** GCA - GET CM DISPLAY ADDRESS.
  16466. *
  16467. * ENTRY (LS) = LEFT DISPLAY INDEX.
  16468. *
  16469. * EXIT (CP) = CP AREA ADDRESS.
  16470. * = 0, IF SYSTEM.
  16471. * (CM - CM+1) = 9/ , 15/ RA/100B.
  16472. * (CM+2 - CM+3) = 9/ , 15/ FL/100B.
  16473. *
  16474. * USES CP, T2, T6, T7, CM - CM+4.
  16475. *
  16476. * CALLS SJT.
  16477.  
  16478.  
  16479. GCA3 AOD T2 SET FWA OF JSN
  16480. LDI T2
  16481. NJN GCA2 IF JSN PRESENT
  16482. GCA3.1 STD CP SET SYSTEM CP
  16483. LDC MABL GET CM/100B
  16484. CRD CM
  16485. LDN 0 SET SYSTEM RA
  16486. STD CM
  16487. STD CM+1
  16488.  
  16489. GCA SUBR ENTRY/EXIT
  16490. LDD LS SEARCH JSN TABLE
  16491. RJM SJT
  16492. NJN GCA3 IF DISPLAY FOUND
  16493. GCA1 JMP KIE PROCESS INCORRECT ENTRY
  16494.  
  16495. GCA2 LDD T2 SEARCH EJT
  16496. RJM GEE
  16497. ZJN GCA3.1 IF JSN = *SYS*
  16498. MJN GCA1 IF EJT ENTRY NOT FOUND
  16499. RJM IEE INTERLOCK EJT ENTRY
  16500. MJN GCA1 IF INTERLOCK UNAVAILABLE
  16501. SFA EJT
  16502. ADK JSNE GET JOB STATUS
  16503. CRD CM
  16504. ADN SCHE GET CP NUMBER
  16505. CRD AB
  16506. LDD CM+4
  16507. LPN 76
  16508. LMN EXJS*2
  16509. NJN GCA1 IF JOB NOT AT CP
  16510. LDD AB+3 SET CPA ADDRESS
  16511. LPN 37
  16512. STD CN
  16513. SHN 7
  16514. STD CP
  16515. ADN FLSW
  16516. CRD T6
  16517. LDD CM+2 MOVE FL/100B
  16518. STD CM+3
  16519. LDN 0
  16520. STD CM+2
  16521. LJM GCAX RETURN
  16522. SPACE 4,10
  16523. CMDEND
  16524. COMMAND (EXTENDED MEMORY CHANGES.)
  16525. EEC SPACE 4,10
  16526. *** EXXXXXXX,YYY - YYY.
  16527. * EXXXXXXX,Y,ZZZZ.
  16528. *
  16529. * ENTER YYY - YYY INTO EXTENDED MEMORY LOCATION XXXXXXX.
  16530. * ENTER ZZZZ INTO BYTE Y OF EXTENDED MEMORY LOCATION XXXXXXX.
  16531. * 0 .LE. Y .LE. 4.
  16532.  
  16533.  
  16534. *** EXXXXXXX,DCCC-CCC
  16535. *
  16536. * ENTER DISPLAY CODE CHARACTERS CCC-CCC IN EXTENDED MEMORY
  16537. * LOCATION XXXXXXX. ENTRY WILL BE LEFT JUSTIFIED.
  16538.  
  16539.  
  16540. *** ALL EXTENDED MEMORY COMMANDS MAY HAVE *+* OR *-* IN PLACE OF
  16541. * THE *,*. THIS FORM WILL ADVANCE/DECREMENT THE EM ADDRESS.
  16542. *
  16543. * PROGRAMMING NOTE - THIS OVERLAY MAKES DIRECT REFERENCES TO
  16544. * *EMRA* AND *EMFL* IN THE *M* DISPLAY LEFT-SCREEN BUFFER.
  16545. * THEREFORE, THE CHECK FOR THE *M*-DISPLAY ON THE LEFT
  16546. * SCREEN MUST NOT BE REMOVED.
  16547.  
  16548.  
  16549. ENTRY EEC
  16550. RJM ASR ASSEMBLE ADDRESS AND READ EXTENDED MEMORY
  16551. LDI CA
  16552. LMN 1RD
  16553. NJN EEC2 IF NOT DISPLAY CODE
  16554. AOD CA SKIP *D*
  16555. LDN AB SET BYTE ADDRESS
  16556. STD T1
  16557. EEC1 LDI CA
  16558. SHN 6
  16559. STI T1
  16560. AOD CA ADVANCE CHARACTER
  16561. LDI CA
  16562. RAI T1
  16563. AOD CA ADVANCE CHARACTER
  16564. AOD T1 ADVANCE BYTE
  16565. LMN AB+5
  16566. ZJN EEC3 IF 10 CHARACTERS PROCESSED
  16567. UJN EEC1 PROCESS NEXT CHARACTER
  16568.  
  16569. EEC2 RJM ASD ASSEMBLE DIGITS
  16570. SBN 1R.
  16571. ZJN EEC3 IF NOT BYTE COMMAND
  16572. LDD AB+4
  16573. STD T4 SAVE BYTE NUMBER
  16574. AOD CA
  16575. RJM ASD ASSEMBLE ENTRY
  16576. LDD AB+4
  16577. STD T3 SAVE ENTRY
  16578. LDD MA FETCH EXTENDED MEMORY WORD
  16579. ADN 1
  16580. CRD AB
  16581. LDD T3
  16582. STM AB,T4 STORE BYTE
  16583. EEC3 LDD MA SET LIST ADDRESS
  16584. STD CM+2
  16585. ADN 1 STORE WORD FOR EXTENDED MEMORY TRANSFER
  16586. CWD AB
  16587. LDD HN SET NUMBER OF LIST ENTRIES = 1
  16588. STD CM+1
  16589. LDD T6
  16590. STD CM+3
  16591. MONITOR ECSM WRITE EXTENDED MEMORY WORD
  16592. * UJN ADV ADVANCE ADDRESS
  16593. ADV SPACE 4,10
  16594. ** ADV - ADVANCE/DECREMENT ADDRESS.
  16595. *
  16596. * ENTRY (SH) = CHARACTER POSITION OF ADDRESS.
  16597. * (SH+1) = SEPARATOR ADDRESS.
  16598. *
  16599. * USES T1, T5.
  16600. *
  16601. * CALLS C1D.
  16602.  
  16603.  
  16604. ADV LDN 0 CHECK COMMAND LOGGING
  16605. RJM C1D
  16606. LDD SH+1
  16607. STD T5
  16608. STD T1
  16609. LDI T5 CHECK SEPARATOR
  16610. SBN 1R+
  16611. ZJN ADV2 IF *+*
  16612. SBN 1R--1R+
  16613. ZJN ADV6 IF *-*
  16614. JMP KBR RETURN
  16615.  
  16616. ADV1 AOI T5 ADVANCE ENTRY
  16617. SBN 1R8
  16618. MJN ADV4 IF NO OVERFLOW
  16619. LDN 1R0 RESET DIGIT
  16620. STI T5
  16621. ADV2 SOD T5
  16622. ADC -KBUF-1
  16623. PJN ADV1 IF NOT PAST START OF BUFFER
  16624. LDN KBUFL-2
  16625. STD T5
  16626. ADV3 LDM KBUF+1,T5 MOVE CONTENTS OF BUFFER
  16627. STM KBUF+2,T5
  16628. SOD T5
  16629. PJN ADV3 IF BUFFER NOT MOVED
  16630. LDN 1R1 SET FIRST CHARACTER OF ADDRESS
  16631. STM KBUF+1
  16632. AOD KI INCREMENT KEYBOARD INDEX
  16633. AOD T1 SKIP PREVIOUS CHARACTER
  16634. ADV4 UJN ADV7 CHECK NEXT CHARACTER
  16635.  
  16636. ADV5 SOI T5 DECREMENT ENTRY
  16637. SBN 1R0
  16638. PJN ADV7 IF NO UNDERFLOW
  16639. LDN 1R7 RESET DIGIT
  16640. STI T5
  16641. ADV6 SOD T5
  16642. ADC -KBUF-1
  16643. PJN ADV5 IF NOT PAST START OF BUFFER
  16644. ADV7 AOD T1 SKIP SEPARATOR
  16645. LDI T1 CHECK NEXT CHARACTER
  16646. SBN 1RD
  16647. NJN ADV8 IF NOT *D*
  16648. AOD T1 SKIP *D*
  16649. ADV8 LDD T1
  16650. ADC -KBUF
  16651. LJM KPC RETURN TO PARTIAL CLEAR
  16652. ASR SPACE 4,10
  16653. ** ASR - ASSEMBLE ADDRESS AND READ EXTENDED MEMORY.
  16654. *
  16655. * ENTRY (CA) = CHARACTER ADDRESS.
  16656. *
  16657. * EXIT (CA) = ADVANCED CHARACTER ADDRESS.
  16658. * (SH+1) = SEPARATOR ADDRESS
  16659. * (T6) = *ECSM* WRITE LIST SUBFUNCTION CODE.
  16660. * (MB) = LIST ENTRY FOR EXTENDED MEMORY TRANSFER.
  16661. *
  16662. * USES CA, SH+1, T6, AB - AB+4, CM - CM+4, SR - SR+4.
  16663. *
  16664. * CALLS ASD.
  16665. *
  16666. * MACROS MONITOR.
  16667.  
  16668.  
  16669. ASR SUBR
  16670. LDD LS CHECK LEFT SCREEN DISPLAY
  16671. LMN 1RM
  16672. ZJN ASR2 IF *M*
  16673. ASR1 JMP KIE *INCORRECT ENTRY*
  16674.  
  16675. ASR2 RJM ASD ASSEMBLE ADDRESS
  16676. LDM .FLFT+EMFL
  16677. SBD AB+3
  16678. MJN ASR1 IF ADDRESS .GT. FLE
  16679. NJN ASR3 IF LEGAL ADDRESS
  16680. LDD AB+4
  16681. SBM .FLFT+EMFL+1
  16682. PJN ASR1 IF ADDRESS .GE. FLE
  16683. ASR3 LDK EDBP
  16684. CRD SR
  16685. LDD SR
  16686. ADD SR+1
  16687. ZJN ASR1 IF EXTENDED MEMORY UNDEFINED
  16688. LDM .FLFT+EMRA
  16689. ADM .FLFT+EMRA+1
  16690. ZJN ASR4 IF ABSOLUTE EXTENDED MEMORY ADDRESS
  16691. LDM .FLFT+EMRA+1 ADD RAE TO EXTENDED MEMORY ADDRESS
  16692. RAD AB+4
  16693. SHN -14
  16694. ADM .FLFT+EMRA
  16695. RAD AB+3
  16696. LDN 2 INDICATE READ FROM USER EM
  16697. ASR4 ADN /CPS/PELS*10 SET *ECSM* READ LIST SUBFUNCTION
  16698. SHN 6
  16699. STD CM+3
  16700. ADC 400 SAVE *ECSM* WRITE LIST SUBFUNCTION
  16701. STD T6
  16702. LDD HN SET NUMBER OF WORDS TO READ = 1
  16703. STD AB+1
  16704. STD CM+1 SET NUMBER OF LIST ENTRIES = 1
  16705. LDD MA WRITE LIST ENTRY
  16706. CWD AB
  16707. STD CM+2 SET LIST ADDRESS
  16708. MONITOR ECSM READ EXTENDED MEMORY WORD
  16709. LDD MA RESET LIST ENTRY FOR WRITE
  16710. CWD AB
  16711. LDD CA SET SEPARATOR ADDRESS
  16712. STD SH+1
  16713. AOD CA SKIP SEPERATOR
  16714. LJM ASRX RETURN
  16715. SPACE 4,10
  16716. CMDEND
  16717. COMMAND (CHANNEL COMMANDS.),CMR
  16718. LDC SPACE 4,10
  16719. *** LDC,XXXX.
  16720. *
  16721. * LOAD CHANNEL A REGISTER WITH XXXX.
  16722.  
  16723.  
  16724. ENTRY LDC
  16725. RJM ASD ASSEMBLE DIGITS
  16726. LDD AB+4 ENTER A REGISTER
  16727. STD AR
  16728. JMP KBR RETURN
  16729. DCH SPACE 4,10
  16730. *** DCH,XX.
  16731. *
  16732. * DROP CHANNEL XX.
  16733.  
  16734.  
  16735. ENTRY DCH
  16736. RJM PSC PRESET CHANNELS
  16737. LDD AB+4 DROP CHANNEL
  16738. STD CM+1
  16739. MONITOR DCHM
  16740. JMP KBR RETURN
  16741. DCN SPACE 4,10
  16742. *** DCN,XX.
  16743. *
  16744. * DISCONNECT CHANNEL XX.
  16745.  
  16746.  
  16747. ENTRY DCN
  16748. RJM PSC PRESET CHANNELS
  16749. DCN1 IJM KMS,** IF CHANNEL INACTIVE
  16750. DCN2 DCN 40 DEACTIVATE CHANNEL
  16751. JMP KBR RETURN
  16752. FCN SPACE 4,10
  16753. *** FCN,XX.
  16754. * FCN,XX,YYYY.
  16755. *
  16756. * FUNCTION CHANNEL XX WITH ZERO.
  16757. * FUNCTION CHANNEL XX WITH YYYY.
  16758.  
  16759.  
  16760. ENTRY FCN
  16761. RJM PSC PRESET CHANNELS
  16762. AOD CA ASSEMBLE FUNCTION
  16763. RJM ASD
  16764. LDN 0 SET NO MESSAGE
  16765. FCN1 AJM KMS,** IF CHANNEL ACTIVE
  16766. LDD AB+4 SET FUNCTION
  16767. STM FCNA
  16768. FCN2 FNC *,40 FUNCTION CHANNEL
  16769. FCNA EQU *-1
  16770. JMP KBR RETURN
  16771. ACN SPACE 4,10
  16772. *** ACN,XX.
  16773. *
  16774. * ACTIVATE CHANNEL XX.
  16775.  
  16776.  
  16777. ENTRY ACN
  16778. RJM PSC PRESET CHANNELS
  16779. ACN1 AJM KMS,** IF CHANNEL ACTIVE
  16780. ACN2 ACN 40 ACTIVATE CHANNEL
  16781. JMP KBR RETURN
  16782. IAN SPACE 4,10
  16783. *** IAN,XX.
  16784. *
  16785. * INPUT TO CHANNEL *A* REGISTER FROM CHANNEL XX.
  16786.  
  16787.  
  16788. ENTRY IAN
  16789. RJM PSC PRESET CHANNELS
  16790. IAN1 EJM KMS,** IF CHANNEL EMPTY
  16791. IAN2 IJM KMS,** IF CHANNEL INACTIVE
  16792. IAN3 IAN 40 INPUT TO *A*
  16793. STD AR
  16794. JMP KBR RETURN
  16795. OAN SPACE 4,10
  16796. *** OAN,XX.
  16797. *
  16798. * OUTPUT FROM CHANNEL *A* REGISTER TO CHANNEL XX.
  16799.  
  16800.  
  16801. ENTRY OAN
  16802. RJM PSC PRESET CHANNELS
  16803. OAN1 FJM KMS,** IF CHANNEL FULL
  16804. OAN2 IJM KMS,** IF CHANNEL INACTIVE
  16805. LDD AR OUTPUT FROM *A*
  16806. OAN3 OAN 40
  16807. JMP KBR RETURN
  16808. MCH SPACE 4,10
  16809. *** MCH,XX.
  16810. *
  16811. * MASTER CLEAR CHANNEL XX.
  16812.  
  16813.  
  16814. ENTRY MCH
  16815. RJM PSC PRESET CHANNELS
  16816. MCH1 AJM KMS,** IF CHANNEL ACTIVE
  16817. MCH2 FNC 2000,40 SELECT 6681
  16818. LDN 77 DELAY
  16819. SBN 1
  16820. NJN *-1 IF MORE DELAY
  16821. MCH3 AJM KBR,** IF CHANNEL IS ACTIVE, ABORT
  16822. MCH4 FNC 1700,40 MASTER CLEAR
  16823. JMP KBR RETURN
  16824. CFR SPACE 4,10
  16825. *** CFR,XX.
  16826. *
  16827. * CLEAR EXTENDED MEMORY FLAG REGISTER BIT XX.
  16828.  
  16829.  
  16830. ENTRY CFR
  16831. LDN CFRS CLEAR FUNCTION
  16832. UJN SFR1 CLEAR BIT
  16833. SFR SPACE 4,10
  16834. *** SFR,XX.
  16835. *
  16836. * SET EXTENDED MEMORY FLAG REGISTER BIT XX.
  16837.  
  16838.  
  16839. ENTRY SFR
  16840. LDN SFRS SET FUNCTION
  16841. SFR1 SHN 11 SAVE FLAG REGISTER FUNCTION
  16842. STD T4
  16843. RJM ASD ASSEMBLE DIGITS
  16844. LDC MMFL
  16845. CRD CM
  16846. LDD CM+4
  16847. ZJN SFR2 IF NOT IN SHARED MODE
  16848. LDD AB
  16849. ADD AB+1
  16850. ADD AB+2
  16851. ADD AB+3
  16852. NJN SFR2 IF BIT NUMBER TOO LARGE
  16853. LDD AB+4
  16854. SBN 22 CHECK BIT NUMBER TOO LARGE
  16855. PJN SFR2 IF BIT NUMBER GREATER THAN 17D
  16856. LDD AB+4
  16857. SHN 6
  16858. STD CM+1
  16859. LDD T4
  16860. STD CM+3
  16861. MONITOR ECSM
  16862. JMP KBR RETURN
  16863.  
  16864. SFR2 JMP KIE INCORRECT ENTRY
  16865. PSC SPACE 4,15
  16866. ** PSC - PRESET CHANNELS.
  16867. *
  16868. * ENTRY (CA) = CHARACTER INDEX.
  16869. * ALL CHANNEL COMMANDS ARE CONSIDERED TO HAVE THREE
  16870. * CHARACTER NAMES.
  16871. *
  16872. * EXIT CHANNEL INSTRUCTIONS MODIFIED.
  16873. * (A) = 0.
  16874. *
  16875. * USES T1, T2.
  16876. *
  16877. * CALLS ASD.
  16878.  
  16879.  
  16880. PSC SUBR ENTRY/EXIT
  16881. RJM ASD ASSEMBLE CHANNEL
  16882. LDD AB+4 CHECK CHANNEL
  16883. SBN 40
  16884. PJN PSC2 IF NOT LEGAL CHANNEL
  16885. LDC TILC-1 SET INCORRECT CHANNEL TABLE
  16886. STD T1
  16887. LDC TPSC-1 SET PRESET CHANNEL TABLE
  16888. STD T2
  16889. PSC1 AOD T1 ADVANCE TABLE
  16890. LDI T1
  16891. ZJN PSC3 IF END OF TABLE
  16892. LMD AB+4 COMPARE CHANNELS
  16893. NJN PSC1 IF NO MATCH
  16894. PSC2 JMP KIE INCORRECT ENTRY
  16895.  
  16896. PSC3 AOD T2 ADVANCE CHANNEL TABLE
  16897. LDI T2
  16898. ZJN PSCX IF END OF TABLE
  16899. STD T1 MODIFY CHANNEL COMMANDS
  16900. LDI T1
  16901. SCN 37
  16902. LMD AB+4
  16903. STI T1
  16904. UJN PSC3 LOOP
  16905. TILC SPACE 4,10
  16906. ** TILC - TABLE OF INCORRECT CHANNELS.
  16907.  
  16908.  
  16909. TILC BSS 0
  16910. CON CH DISPLAY CHANNEL
  16911. CON CHMX CYBER 170-8X5 TWO PORT MUX CHANNEL
  16912. CON CHMR CYBER 170-8X5 MAINTENANCE CHANNEL
  16913. CON 0 END OF TABLE
  16914. TPSC SPACE 4,10
  16915. ** TPSC - TABLE OF CHANNEL INSTRUCTIONS.
  16916.  
  16917.  
  16918. TPSC BSS 0
  16919. CON DCN1
  16920. CON DCN2
  16921. CON FCN1
  16922. CON FCN2
  16923. CON ACN1
  16924. CON ACN2
  16925. CON IAN1
  16926. CON IAN2
  16927. CON IAN3
  16928. CON OAN1
  16929. CON OAN2
  16930. CON OAN3
  16931. CON MCH1
  16932. CON MCH2
  16933. CON MCH3
  16934. CON MCH4
  16935. CON 0 END OF TABLE
  16936. SPACE 4,10
  16937. CMDEND
  16938. COMMAND (K AND L DISPLAY PROCESSING.)
  16939. ECB SPACE 4,10
  16940. *** K.CCC-CCC
  16941. *
  16942. * ENTER CHARACTERS CCC-CCC IN CPU BUFFER FOR CONTROL ON
  16943. * *K* DISPLAY.
  16944. ECB SPACE 4,10
  16945. ENTRY ECB
  16946. LDD KI GET KEYBOARD BUFFER INDEX
  16947. SBN 53D
  16948. MJN ECB1 IF .LE. 50 CHARACTERS ENTERED
  16949. LDC ECBA *LINE TOO LONG*
  16950. LJM KMS REPORT ERROR
  16951.  
  16952. ECB1 LDM KBUF SET DISPLAY INDEX
  16953. STD T1
  16954. LDD LS
  16955. LMN 1RK
  16956. NJN ECB2 IF K DISPLAY NOT UP
  16957. LDC /DSD/TJKK+1
  16958. RJM SJS SEARCH FOR JSN IN EJT
  16959. MJN ECB2 IF JOB NOT AT CP OR NO JSN ASSIGNED
  16960. LDD CP
  16961. ADC DBAW READ DISPLAY POINTER
  16962. CRD CM
  16963. LDD CM CHECK ADDRESS
  16964. SHN 21-10
  16965. PJN ECB1.1 IF NOT SECURE K-DISPLAY
  16966. LDN 0
  16967. STM /KEYBOARD/LKBA CLEAR LOGGING FOR SECURE K-DISPLAY
  16968. ECB1.1 LDD CM CHECK ADDRESS
  16969. LPN 77
  16970. SHN 14
  16971. LMD CM+1
  16972. NJN ECB3 IF BUFFER DEFINED
  16973. ECB2 JMP KIE *INCORRECT ENTRY*
  16974.  
  16975. ECB3 LDN ZERL
  16976. CRD AB
  16977. LDI CA
  16978. NJN ECB4 IF FIRST CHARACTER NOT NULL
  16979. LDN 1R GUARANTEE AT LEAST 1 CHARACTER
  16980. STI CA
  16981. ECB4 LDD CA SAVE KEYBOARD OFFSET
  16982. ADC -KBUF
  16983. SHN 6
  16984. STD AB+4
  16985. LDN 2 SET KEYBOARD PARTIAL CLEAR INDEX
  16986. STM /KEYBOARD/KBCA
  16987. LDD CP SET CP NUMBER
  16988. SHN -7
  16989. RAD AB+4
  16990. LDC /1DS/LOCK+/1DS/ECBF
  16991. STD AB+2
  16992. LMC /1DS/CMOV SET CP MOVE
  16993. JMP KAR CALL *1DS*
  16994.  
  16995.  
  16996. ECBA DATA C*LINE TOO LONG*
  16997. ELB SPACE 4,10
  16998. *** L.CCC-CCC
  16999. *
  17000. * ENTER CHARACTERS CCC-CCC IN CMR *L* DISPLAY BUFFER.
  17001.  
  17002.  
  17003. ENTRY ELB
  17004. LDD LS
  17005. LMN 1RL
  17006. NJP ECB2 IF L DISPLAY NOT UP
  17007. LDN LCOM COMMAND BUFFER LENGTH
  17008. SHN 2
  17009. ADN LCOM+3
  17010. STD T1 STORE MAXIMUM NUMBER OF CHARACTERS
  17011. LDD KI GET KEYBOARD BUFFER INDEX
  17012. SBD T1
  17013. MJN ELB1 IF NUMBER OF CHARACTERS .LE. LIMIT
  17014. LDC ECBA *LINE TOO LONG*
  17015. JMP KMS REPORT ERROR
  17016.  
  17017. * CHECK FOR INCORRECT ENTRY.
  17018.  
  17019. ELB1 LDM /COMDSYS/SYSC READ *L* DISPLAY CONTROL WORD
  17020. LPN 77
  17021. STD CM+3
  17022. SHN 14
  17023. LMM /COMDSYS/SYSC+1
  17024. STD CM+4
  17025. CRD T1
  17026. LDD T1
  17027. ADD T2
  17028. NJN ELB2 IF JSN .NE. 0
  17029. LDC ELBB *L DISPLAY NOT ASSIGNED*
  17030. JMP KMS KEYBOARD ERROR MESSAGE RETURN
  17031.  
  17032. * CHECK IF COMMAND AVAILABLE.
  17033.  
  17034. ELB2 LDD T5
  17035. SHN 21-5
  17036. PJN ELB3 IF COMMAND NOT AVAILABLE
  17037. LDC ELBC *SYSTEM BUSY*
  17038. JMP KMS KEYBOARD ERROR MESSAGE RETURN
  17039.  
  17040. * TRANSFER DATA TO CMR BUFFER.
  17041.  
  17042. ELB3 LDN LCOM STORE MAXIMUM NUMBER OF WORDS
  17043. STD T6
  17044. LDD CM+3 WRITE WORDS TO CMR BUFFER
  17045. SHN 14
  17046. LMD CM+4
  17047. ADN 1
  17048. CWM KBUF+2,T6
  17049.  
  17050. * SET *L* DISPLAY STATUS TO REFLECT INPUT AVAILABLE.
  17051.  
  17052. LDD T1 VERIFY *JSN* .NE. 0
  17053. STM ELBA+3
  17054. LDD T2
  17055. STM ELBA+4
  17056. LDN 0
  17057. STD CM+2
  17058. LDN 3
  17059. STD CM+1 STORE WORD COUNT OF OPTIONS
  17060. LDD MA
  17061. CWM ELBA,CM+1
  17062. MONITOR UTEM SET BITS
  17063. LDD CM+1
  17064. ZJN ELB4 IF VERIFICATION PASSED
  17065. LJM ELB1 CHECK FOR INCORRECT ENTRY
  17066.  
  17067. * INDICATE *L* DISPLAY INPUT AVAILABLE.
  17068.  
  17069. ELB4 LDN ZERL ISSUE *L* DISPLAY INPUT EVENT
  17070. CRD CM
  17071. LDN LINE
  17072. STD CM+4
  17073. MONITOR EATM
  17074.  
  17075. * ENABLE THE NEXT *L.* PROMPT.
  17076.  
  17077. LDC .FLFT
  17078. STD T1
  17079. LDD LS
  17080. LMN 1RL
  17081. ZJN ELB5 IF *L* DISPLAY IS ON THE LEFT SCREEN
  17082. LDC .FRHT
  17083. STD T1
  17084. LDD RS
  17085. LMN 1RL
  17086. NJN ELB6 IF *L* DISPLAY IS NOT ON THE RIGHT SCREEN
  17087. ELB5 STM DSLA,T1
  17088. ELB6 JMP KBR KEYBOARD PROCESSOR
  17089.  
  17090.  
  17091. * *UTEM* MONITOR FUNCTION BUFFER.
  17092.  
  17093. ELBA VFD 1/1,5/0,6/24D,6/36D,6/0 VERIFY *JSN* .NE. 0
  17094. CON 0,0,0
  17095. VFD 1/1,5/0,6/1,6/5,6/0 VERIFY COMMAND NOT ENTERED
  17096. CON 0,0,0
  17097. VFD 1/0,5/0,6/2,6/4,6/0 COMMAND ENTERED/NO INPUT REQUEST
  17098. CON 0,0,2
  17099. ELBB DATA C*L DISPLAY NOT ASSIGNED*
  17100.  
  17101. ELBC DATA C*SYSTEM BUSY*
  17102. SPACE 4,10
  17103. CMDEND
  17104. COMMAND (EJT REQUESTS - PART 1.)
  17105. ECP SPACE 4,10
  17106. *** ENPR,XXXX,NN.
  17107. * ENPR,XXXX,*.
  17108. *
  17109. * SET CPU PRIORITY NN ON JOB WITH JSN = XXXX.
  17110. * IF NN = *, SET CPU PRIORITY FROM SERVICE CLASS VALUE.
  17111. * JOB WITH JSN = XXXX CANNOT BE A SUBSYSTEM.
  17112.  
  17113.  
  17114. ENTRY ECP
  17115. RJM ASN ASSEMBLE JSN
  17116. LDD AB+2
  17117. NJN ECP1 IF JSN .GT. 4 CHARACTERS
  17118. LDD AB+1
  17119. LPN 77
  17120. NJN ECP0 IF JSN .EQ. 4 CHARACTERS
  17121. LDN 1R
  17122. RAD AB+1
  17123. ECP0 LDN AB GET EJT ENTRY
  17124. RJM GEE
  17125. MJN ECP1 IF EJT ENTRY NOT FOUND
  17126. ZJN ECP1 IF SYSTEM CP
  17127. STD T7 SAVE EJT ORDINAL
  17128. SFA EJT GET SERVICE CLASS
  17129. ADN SCLE
  17130. CRD SR
  17131. LDD SR CHECK SERVICE CLASS
  17132. SHN -6
  17133. LMN SSSC
  17134. NJN ECP2 IF NOT SUBSYSTEM
  17135. ECP1 JMP KIE *INCORRECT ENTRY*
  17136.  
  17137. ECP2 LDD AB SAVE JSN FOR *1DS* CALL
  17138. STD SP+3
  17139. LDD AB+1
  17140. STD SP+4
  17141. AOD CA SKIP SEPARATOR
  17142. LDI CA
  17143. LMN 1R*
  17144. NJN ECP3 IF NEXT CHARACTER NOT ASTERISK
  17145. LDN 0 INDICATE SET SERVICE CLASS PRIORITY
  17146. STD AB+4
  17147. UJN ECP4 SET *1DS* CALL
  17148.  
  17149. ECP3 RJM ASD ASSEMBLE CPU PRIORITY
  17150. LDD AB+4
  17151. SBN LJCS
  17152. MJN ECP1 IF BELOW LOWER LIMIT
  17153. SBN LSCS-LJCS
  17154. PJN ECP1 IF REQUESTED PRIORITY TOO LARGE
  17155. ECP4 LDD T7 SET EJT ORDINAL FOR *1DS*
  17156. STD AB+3
  17157. LDC /1DS/LOCK+/1DS/ECPF
  17158. RJM C1D PROCESS FUNCTION
  17159. LDC ECP5
  17160. STM /KEYBOARD/KCRB SET REENTRY ADDRESS
  17161. ECP5 LDC /1DS/DSDL
  17162. CRD CM CHECK IF *1DS* COMPLETE
  17163. ADN 1 CHECK RESULTS
  17164. CRD AB
  17165. LDD CM
  17166. NJP CLP1 IF NOT COMPLETE
  17167. LDD AB
  17168. ZJP KBR IF NO ERROR
  17169. LDM ECPA-1,AB
  17170. JMP KMS DISPLAY ERROR MESSAGE
  17171.  
  17172.  
  17173. ECPA CON =C*EJT ENTRY BUSY.*
  17174. CON =C*CANNOT ACCESS ROLLOUT DEVICE.*
  17175. CON KILE *INCORRECT ENTRY.*
  17176. SPACE 4,10
  17177. USE END DUMP LITERALS BLOCK
  17178. SPACE 4,10
  17179. CMDEND
  17180. COMMAND (EJT REQUESTS - PART 2.)
  17181. CSP SPACE 4,10
  17182. *** RERUN,JSN.
  17183. *
  17184. * RERUN JOB WHICH HAS THE SPECIFIED JSN. JOB CAN BE A
  17185. * SUBSYSTEM.
  17186.  
  17187.  
  17188. ENTRY RRJ
  17189. RJM PJS PROCESS JSN
  17190. SFA EJT FIND ABSOLUTE ADDRESS OF EJT ENTRY
  17191. ADN SCHE GET NO RERUN BIT
  17192. CRD CM
  17193. LDD CM+2 GET NO RERUN BIT
  17194. SHN 21-13
  17195. MJN RRJ1 IF NO RERUN SET
  17196. LDD AB SET JSN
  17197. STD CM+3
  17198. LDD AB+1
  17199. STD CM+4
  17200. LDD T3 SET EJTO
  17201. STD CM+2
  17202. LDC RRET+4000 SET RERUN ERROR
  17203. STD CM+1
  17204. MONITOR CEFM SET ERROR FLAG
  17205. JMP KBR RETURN
  17206.  
  17207. RRJ1 JMP KIE *INCORRECT ENTRY*
  17208. RIF SPACE 4,10
  17209. *** ROLLIN,JSN.
  17210. * ROLLIN,JSN,L.
  17211. *
  17212. * ROLLIN JOB *JSN*. IF *L* IS SPECIFIED, LOCK JOB
  17213. * AT A CONTROL POINT. JOB CAN NOT BE A SUBSYSTEM.
  17214.  
  17215.  
  17216. ENTRY RIF
  17217. RJM PJS PROCESS JSN
  17218. LDD AB+1 SAVE JSN FOR *UTEM* CALL
  17219. STM URB+4
  17220. LDD AB
  17221. STM URB+3
  17222. LDN 2 WORD COUNT FOR *UTEM* REQUEST
  17223. STD CM+1
  17224. LDD CM+4
  17225. SHN -1
  17226. LMK TOJS
  17227. NJN RIF1 IF NOT *TOJS* STATUS
  17228. LDN 5 WORD COUNT FOR *TOJS* STATUS
  17229. STD CM+1
  17230. RIF1 SFA EJT,T3 GET SERVICE CLASS FROM EJT ENTRY
  17231. ADN SCLE
  17232. CRD SR
  17233. SBN SCLE
  17234. STD CM+4
  17235. SHN -14
  17236. STD CM+3
  17237. LDD SR
  17238. SHN -6
  17239. LMN SSSC
  17240. ZJN RIF3 IF SUBSYSTEM SERVICE CLASS
  17241. LDN 0 CLEAR UNUSED BYTE IN *UTEM* REQUEST
  17242. STD CM+2
  17243. LDI CA
  17244. LMN 1R.
  17245. ZJN RIF2 IF LOCK NOT SPECIFIED
  17246. LDN 1 SET FORCED ROLLIN
  17247. RIF2 STM URBA SAVE FORCED ROLLIN STATUS
  17248. LDD MA WRITE *UTEM* REQUEST WORDS
  17249. CWM URB,CM+1
  17250. MONITOR UTEM
  17251. LDD CM+1
  17252. NJN RIF3 IF VERIFICATION FAILED
  17253. JMP KBR RETURN
  17254.  
  17255. RIF3 JMP KIE *INCORRECT ENTRY*
  17256. ROL SPACE 4,10
  17257. *** ROLLOUT,JSN.
  17258. * ROLLOUT,JSN,NNNN.
  17259. *
  17260. * ROLLOUT JOB *JSN* OR ROLLOUT JOB *JSN* FOR NNNN
  17261. * SCHEDULER CYCLES. JOB CAN NOT BE A SUBSYSTEM.
  17262.  
  17263.  
  17264. ENTRY ROL
  17265. RJM PJS PROCESS JSN
  17266. LDD AB+1 SAVE JSN FOR *UTEM* CALL
  17267. STM URB+4
  17268. LDD AB
  17269. STM URB+3
  17270. LDD CM+4 SAVE JOB STATUS
  17271. STD T6
  17272. SFA EJT,T3 GET CP NUMBER
  17273. ADN SCHE
  17274. CRD SH
  17275. ADN SCLE-SCHE GET SERVICE CLASS
  17276. CRD SR
  17277. SBN SCLE
  17278. STD CM+4 SAVE ADDRESS OF EJT ENTRY
  17279. SHN -14
  17280. STD CM+3
  17281. LDD SR
  17282. SHN -6
  17283. LMN SSSC
  17284. ZJN ROL2 IF SUBSYSTEM SERVICE CLASS
  17285. LDD T6 CHECK JOB STATUS
  17286. LPN 76
  17287. SHN -1
  17288. LMK EXJS
  17289. ZJN ROL4 IF JOB AT CP
  17290. LMK PCJS&EXJS
  17291. NJN ROL1 IF JOB NOT AT PCP
  17292. LDD SH+1 SET PCP NUMBER IN *ROCM* REQUEST
  17293. STD CM+2
  17294. UJN ROL6 CONTINUE
  17295.  
  17296. ROL1 LDI CA
  17297. LMN 1R.
  17298. ZJN ROL3 IF TIME NOT ENTERED
  17299. ROL2 JMP KIE *INCORRECT ENTRY*
  17300.  
  17301. * PROCESS ROLLOUT WITH NO TIME SPECIFIED.
  17302.  
  17303. ROL3 STD CM+2
  17304. LDN 2
  17305. STD CM+1
  17306. STM URBA SET FORCED ROLLOUT STATUS
  17307. LDD MA WRITE *UTEM* REQUEST WORDS
  17308. CWM URB,CM+1
  17309. MONITOR UTEM
  17310. LDD CM+1
  17311. NJN ROL2 IF VERIFICATION FAILED
  17312. LJM KBR RETURN
  17313.  
  17314. * PROCESS JOB AT A CP/PCP.
  17315.  
  17316. ROL4 LDD SH+3 SET CONTROL POINT NUMBER
  17317. STD CM+2
  17318. SHN 7 SET CPA ADDRESS
  17319. ADN JCIW GET SUBSYSTEM ID
  17320. CRD AB
  17321. LDD AB+2
  17322. ZJN ROL6 IF ROLLABLE JOB
  17323. LMN ORSI CHECK IF OPERATOR ROLLOUT ALLOWED
  17324. ROL5 NJN ROL2 IF ROLLOUT NOT ALLOWED
  17325. ROL6 LDI CA
  17326. LMN 1R.
  17327. ZJN ROL3 IF TIME NOT ENTERED
  17328. LMN 1R,&1R.
  17329. NJN ROL5 IF INCORRECT SEPARATOR
  17330. AOD CA SKIP SEPERATOR
  17331. RJM ASD ASSEMBLE TIME
  17332. LDD AB
  17333. ADD AB+1
  17334. ADD AB+2
  17335. ADD AB+3
  17336. NJN ROL5 IF TIME .GT. 777B
  17337. LDD AB+4
  17338. STD SP+2 SET ROLLOUT TIME
  17339. SHN -11
  17340. NJN ROL5 IF TIME .GT. 777B
  17341. STD SP+3
  17342. STD SP+4
  17343. LDD MA WRITE *ROCM* PARAMETERS TO MB
  17344. CWD SP
  17345. LDC 4000+ROTE ALTERNATE CP/PCP, TIMED/EVENT OPTIONS
  17346. STD CM+1
  17347. MONITOR ROCM REQUEST ROLLOUT
  17348. LJM KBR RETURN
  17349. URB SPACE 4,10
  17350. * *UTEM* REQUEST BLOCK.
  17351.  
  17352. URB VFD 1/1,5/JSNE,6/24D VERIFY THAT JSN-S MATCH
  17353. VFD 6/36D,6/0
  17354. CON 0
  17355. CON 0
  17356. CON 0
  17357.  
  17358. VFD 1/0,5/SCLE,6/2 CHANGE *ROLLOUT* AND *ROLLIN* BITS
  17359. VFD 6/52D,6/0
  17360. CON 0
  17361. CON 0
  17362. URBA CON 0
  17363.  
  17364. URBB VFD 1/1,5/JSNE,6/5 VERIFY STATUS IS *TOJS*
  17365. VFD 6/1,6/0
  17366. CON 0
  17367. CON 0
  17368. CON TOJS
  17369.  
  17370. URBC VFD 1/0,5/JSNE,6/5 CHANGE *TOJS* STATUS TO *ROJS* STATUS
  17371. VFD 6/1,6/0
  17372. CON 0
  17373. CON 0
  17374. CON ROJS
  17375.  
  17376. URBD VFD 1/0,5/SCHE,6/30D CHANGE SCHEDULING DATA TO ZERO
  17377. VFD 6/0,6/0
  17378. CON 0
  17379. CON 0
  17380. CON 0
  17381. PJS SPACE 4,10
  17382. ** PJS - PROCESS JSN.
  17383. *
  17384. * EXIT (AB - AB+1) = JSN.
  17385. * (CM - CM+4) = WORD *JSNE* OF EJT ENTRY.
  17386. * (A) = (T3) = EJT ORDINAL.
  17387. * TO *KIE* IF ERROR.
  17388. *
  17389. * CALLS ASN, GEE.
  17390.  
  17391.  
  17392. PJS SUBR ENTRY/EXIT
  17393. RJM ASN ASSEMBLE JSN
  17394. LDD AB+2
  17395. NJN PJS2 IF JSN .GT. 4 CHARACTERS
  17396. LDD AB+1 SPACE FILL JSN
  17397. LPN 77
  17398. NJN PJS1 IF JSN .EQ. 4 CHARACTERS
  17399. LDN 1R
  17400. RAD AB+1
  17401. PJS1 LDN AB GET EJT ENTRY
  17402. RJM GEE
  17403. MJN PJS2 IF EJT ENTRY NOT FOUND
  17404. NJN PJSX IF JSN .NE. *SYS*
  17405. PJS2 JMP KIE *INCORRECT ENTRY*
  17406. SPACE 4,10
  17407. CMDEND
  17408. COMMAND (QFT REQUESTS.)
  17409. ENQ SPACE 4,10
  17410. *** ENQP,JSN,XXXX.
  17411. *
  17412. * SET QUEUE PRIORITY XXXX FOR THE QFT ENTRY WITH
  17413. * THE GIVEN JSN. 0 .LE. XXXX .LE. 7777B. IF XXXX = 0,
  17414. * THE ENTRY TIME WILL BE SET TO 0.
  17415.  
  17416.  
  17417. ENTRY ENQ ENTRY
  17418. LDN QFTP GET NUMBER OF QFT ENTRIES
  17419. CRD T3
  17420. RJM ASN ASSEMBLE JSN
  17421. LDD AB+2
  17422. NJN ENQ4 IF JSN .GT. 4 CHARACTERS
  17423. LDD AB+1
  17424. LPN 77
  17425. NJN ENQ1 IF JSN .GT. 3 CHARACTERS
  17426. LDN 1R
  17427. RAD AB+1
  17428. ENQ1 LDN 0 INITIALIZE QFT ORDINAL
  17429. STD T4
  17430. ENQ2 SFA QFT,T4
  17431. ERRNZ JSNQ NOT FIRST WORD OF EJT ENTRY
  17432. CRD CM
  17433. LDD AB
  17434. LMD CM
  17435. NJN ENQ3 IF JSN DOES NOT MATCH
  17436. LDD AB+1
  17437. LMD CM+1
  17438. ZJN ENQ5 IF JSN MATCHES
  17439. ENQ3 AOD T4
  17440. SBD T5
  17441. NJN ENQ2 IF NOT END OF QFT
  17442. ENQ4 JMP KIE *INCORRECT ENTRY*
  17443.  
  17444. ENQ5 LDD CM SET JSN
  17445. STM ENQB+3
  17446. LDD CM+1
  17447. STM ENQB+4
  17448. LDD CM+4
  17449. SHN -11
  17450. SBN /JIO/INQT
  17451. ZJN ENQ6 IF INPUT FILE TYPE
  17452. LDN 2 SET OUTPUT FILE TYPE
  17453. ENQ6 STD T6
  17454. SFA QFT,T4 GET SERVICE CLASS
  17455. ADN SCLQ
  17456. CRD SR
  17457. AOD CA SKIP *,*
  17458. RJM ASD GET QUEUE PRIORITY
  17459. LDD AB
  17460. ADD AB+1
  17461. ADD AB+2
  17462. ADD AB+3
  17463. NJN ENQ4 IF .GT. 7777B
  17464. LDD AB+4
  17465. NJN ENQ7 IF .NE. 0
  17466. STD T1
  17467. STD T2
  17468. UJN ENQ8 SET ENTRY TIME = 0
  17469.  
  17470. ENQ7 STD T1 SET QUEUE PRIORITY
  17471. LDD SR
  17472. SCN 77
  17473. SHN 6
  17474. ADD T6
  17475. RJM CET CALCULATE ENTRY TIME
  17476. ENQ8 LDN ZERL
  17477. CRD CM
  17478. LDN 3 SET NUMBER OF REQUESTS
  17479. STD CM+1
  17480. SFA QFT,T4 GET QFT ENTRY ABSOLUTE ADDRESS
  17481. STD CM+4
  17482. SHN -14
  17483. STD CM+3
  17484. LDD T1
  17485. STM ENQC+3
  17486. LDD T2
  17487. STM ENQC+4
  17488. LDD MA
  17489. CWM ENQA,TR
  17490. MONITOR UTEM SET ENTRY TIME IN QFT ENTRY
  17491. LDD CM+1
  17492. NJN ENQ9 IF OPERATION NOT COMPLETE
  17493. JMP KBR RETURN
  17494.  
  17495. ENQ9 JMP KIE *INCORRECT ENTRY*
  17496.  
  17497.  
  17498. * *UTEM* PARAMETER WORD.
  17499.  
  17500. ENQA VFD 1/1,5/JSNQ,6/6,6/0,42/0 VERIFY ENTRY NOT BUSY
  17501. ENQB VFD 1/1,5/JSNQ,6/24D,6/36D,42/0 VERIFY QFT ENTRY JSN
  17502. ENQC VFD 6/ENTQ,6/24D,6/0,42/0 SET NEW ENTRY TIME
  17503. COMMON SPACE 4,10
  17504. * COMMON DECKS.
  17505.  
  17506.  
  17507. CET$ EQU 1 ASSEMBLE *CET* ROUTINE
  17508. *CALL COMPCPE
  17509. SPACE 4,10
  17510. CMDEND
  17511. COMMAND (EXECUTING JOB REQUESTS - PART 1.)
  17512. CSP SPACE 4,10
  17513. ** CSP - CALL *1DS*.
  17514. *
  17515. * ENTRY (A) = FUNCTION REQUEST.
  17516. * (CN) = CONTROL POINT NUMBER.
  17517. *
  17518. * USES AB+2, AB+4.
  17519.  
  17520.  
  17521. CSP STD AB+2 SAVE *1DS* FUNCTION CODE
  17522. LDD CN SET CONTROL POINT NUMBER
  17523. STD AB+4
  17524. LDD AB+2
  17525. LMC /1DS/CMOV ADD CONTROL POINT MOVE
  17526. JMP KAR PROCESS *1DS* CALL
  17527. AGD SPACE 4,10
  17528. *** ASSIGN,JSN,DS.
  17529. *
  17530. * ASSIGN JOB WITH SPECIFIED JSN TO EST ENTRY 1 (*DS*
  17531. * EQUIPMENT).
  17532.  
  17533.  
  17534. ENTRY AGD
  17535. LDN DSEQ EST ORDINAL OF *DS*
  17536. STM AGNA
  17537. UJN AGN ENTER COMMON PROCESSING
  17538. AGE SPACE 4,10
  17539. *** ASSIGN,JSN,NE.
  17540. *
  17541. * ASSIGN JOB WITH SPECIFIED JSN TO EST ENTRY 1 (*NE*
  17542. * EQUIPMENT).
  17543.  
  17544.  
  17545. ENTRY AGE
  17546. LDN NEEQ EST ORDINAL OF *NE*
  17547. STM AGNA
  17548. UJN AGN ENTER COMMON PROCESSING
  17549. AGN SPACE 4,10
  17550. *** ASSIGN,JSN,XXX.
  17551. *
  17552. * ASSIGN JOB WITH SPECIFIED JSN TO EST ORDINAL XXX. THE JOB
  17553. * MUST BE AT A CONTROL POINT.
  17554.  
  17555.  
  17556. ENTRY AGN ENTRY
  17557. RJM ASN ASSEMBLE JSN
  17558. LDN AB GET EJTO
  17559. RJM GEE
  17560. MJN AGN1 IF JSN NOT FOUND
  17561. STD T7
  17562. LDD AB+2
  17563. NJN AGN1 IF JSN .GT. 4 CHARACTERS
  17564. LDD CM+4
  17565. LPN 76
  17566. LMN EXJS*2
  17567. AGN1 NJN AGN2 IF JOB NOT AT CONTROL POINT
  17568. LDK ZERL
  17569. CRD AB
  17570. LDC 0
  17571. * LDC DSEQ (*DS* EQUIPMENT)
  17572. * LDC NEEQ (*NE* EQUIPMENT)
  17573. AGNA EQU *-1
  17574. STD AB+4 STORE EST ORDINAL (OR ZERO)
  17575. NJN AGN1.1 IF *DS* OR *NE*
  17576. AOD CA SKIP SEPARATOR
  17577. RJM ASD ASSEMBLE EST ORDINAL
  17578. AGN1.1 SFA EJT,T7 GET CP NUMBER
  17579. ADN SCHE
  17580. CRD SR
  17581. LDD SR+3
  17582. STD CN
  17583. LDN ESTP SET EST LENGTH
  17584. CRD SR
  17585. LDD AB+4
  17586. SBD SR+2
  17587. PJN AGN2 IF NON-EXISTENT EQUIPMENT
  17588. SFA EST,AB+4 READ EST ENTRY
  17589. ADK EQDE
  17590. CRD CM
  17591. ADK EQAE-EQDE READ EQUIPMENT ASSIGNMENT
  17592. CRD SR
  17593. LDD SR+4
  17594. ZJN AGN3 IF EQUIPMENT AVAILABLE
  17595. AGN2 JMP KIE *INCORRECT ENTRY*
  17596.  
  17597. AGN3 LDD CM+3
  17598. ZJN AGN4 IF EQUIPMENT UNDEFINED
  17599. LDD CM
  17600. SHN 21-1
  17601. MJN AGN4 IF DEVICE OFF (OR DOWN)
  17602. SHN 2+21-13
  17603. PJN AGN5 IF NOT MASS STORAGE
  17604. SHN 13-10
  17605. MJN AGN4 IF REMOVABLE
  17606. SHN 10-6
  17607. PJN AGN5 IF AVAILABLE
  17608. AGN4 LDC =C*NOT AVAILABLE.*
  17609. JMP KMS DISPLAY MESSAGE
  17610.  
  17611. AGN5 LDC TIET
  17612. STD T1
  17613. LDI T1 SEARCH FOR INCORRECT EQUIPMENT
  17614. AGN6 LMD CM+3
  17615. ZJN AGN2 IF INCORRECT EQUIPMENT ASSIGNMENT
  17616. AOD T1
  17617. LDI T1
  17618. NJN AGN6 IF NOT END OF SEARCH
  17619. LDD AB+4 GET EST ORDINAL
  17620. STD AB+3
  17621. LDN 0
  17622. STD AB+1
  17623. LDN /1DS/AEJF
  17624. JMP CSP CALL *1DS*
  17625. TIET SPACE 4,10
  17626. ** TIET - TABLE OF INCORRECT EQUIPMENTS TO *ASSIGN*.
  17627.  
  17628.  
  17629. TIET BSS 0
  17630. CON 2RCP
  17631. CON 2RCR
  17632. CON 2RLQ
  17633. CON 2RLR
  17634. CON 2RLS
  17635. CON 2RLT
  17636. CON 2RLX
  17637. CON 2RLY
  17638. CON 2RRD
  17639. TIETE CON 0 END OF TABLE
  17640.  
  17641.  
  17642. ERRZR TIETE-TIET REMOVE TABLE AND SEARCH LOOP
  17643. SPACE 4,10
  17644. CMDEND
  17645. COMMAND (EXECUTING JOB REQUESTS - PART 2.)
  17646. CSP SPACE 4,10
  17647. ** CSP - CALL *1DS*.
  17648. *
  17649. * ENTRY (A) = FUNCTION REQUEST.
  17650. * (CN) = CONTROL POINT NUMBER.
  17651. *
  17652. * USES AB+2, AB+4.
  17653.  
  17654.  
  17655. CSP STD AB+2 SAVE *1DS* FUNCTION CODE
  17656. LDD CN SET CONTROL POINT NUMBER
  17657. STD AB+4
  17658. LDD AB+2
  17659. LMC /1DS/CMOV ADD CONTROL POINT MOVE
  17660. JMP KAR PROCESS *1DS* CALL
  17661. CHK SPACE 4,10
  17662. *** CKP,JSN.
  17663. *
  17664. * CHECKPOINT JOB WITH SPECIFIED JSN. THE JOB MUST BE
  17665. * AT A CP. THE JOB CANNOT BE A SUBSYSTEM.
  17666.  
  17667.  
  17668. ENTRY CHK
  17669. RJM ASN ASSEMBLE JSN
  17670. LDD AB+2
  17671. NJN CHK1 IF JSN .GT. 4 CHARACTERS
  17672. RJM GCE GET CP NUMBER
  17673. SHN 7 SAVE CPA ADDRESS
  17674. STD CP
  17675. ADN STSW READ *STSW*
  17676. CRD AB
  17677. ADN JCIW-STSW READ *JCIW*
  17678. CRD SR
  17679. LDD AB+2
  17680. SHN 21-0
  17681. MJN CHK1 IF ROLLOUT SET
  17682. LDD SR+2 CHECK SUBSYSTEM IDENTIFICATION
  17683. ADC -LSSI-1
  17684. MJN CHK2 IF JOB NOT A SUBSYSTEM
  17685. CHK1 JMP KIE *INCORRECT ENTRY*
  17686.  
  17687. CHK2 LDD CP GET CP ADDRESS
  17688. ADC SEPW READ *SEPW*
  17689. CRD SH
  17690. ADN SPCW-SEPW READ *SPCW*
  17691. CRD T1
  17692. ADN DBAW-SPCW READ *DBAW*
  17693. CRD T2
  17694. ADN SSCW-DBAW
  17695. CRD CM
  17696. LDD SR+3
  17697. LPC 600
  17698. NJN CHK1 IF USER FILE PRIVATE
  17699. LDD AB+4
  17700. SHN -4
  17701. NJN CHK1 IF RECALL REQUESTS
  17702. LDD CM
  17703. ADD CM+1
  17704. ADD CM+2
  17705. ADD CM+3
  17706. ADD CM+4
  17707. NJN CHK1 IF *SSCW* BUSY
  17708. LDD SH
  17709. LPN 24
  17710. NJN CHK1 IF *DMP=* OR *SSJ=*
  17711. LDD T1
  17712. NJN CHK1 IF *SPCW* NOT FREE
  17713. LDD T2
  17714. SHN 21-13
  17715. MJP CHK1 IF SECURE SYSTEM MEMORY SET
  17716. LDN ZERL
  17717. CRD AB
  17718. LDC /1DS/CKPF+/1DS/LOCK
  17719. JMP CSP CALL *1DS*
  17720. DIS SPACE 4,10
  17721. *** DIS,JSN.
  17722. *
  17723. * CALL JOB DISPLAY PACKAGE TO JOB JSN.
  17724.  
  17725.  
  17726. ENTRY DIS
  17727. RJM ASN ASSEMBLE JSN
  17728. LDD AB+2
  17729. NJN DIS1 IF JSN .GT. 4 CHARACTERS
  17730. RJM GCE GET CP NUMBER
  17731. LDN ZERL CLEAR *AB* FOR 1DS CALL
  17732. CRD AB
  17733. LDN /1DS/DISF
  17734. JMP CSP CALL *1DS*
  17735.  
  17736. DIS1 JMP KIE *INCORRECT ENTRY*
  17737. SPACE 4,10
  17738. USE END DUMP LITERALS BLOCK
  17739. GCE SPACE 4,10
  17740. *** GCE - GET CONTROL POINT FROM EJT ENTRY.
  17741. *
  17742. * *GCE* GETS THE CONTROL POINT NUMBER FOR THE JSN GIVEN.
  17743. *
  17744. * ENTRY (AB - AB+4) = JSN.
  17745. *
  17746. * EXIT (A) = CONTROL POINT NUMBER.
  17747. * (CN) = CONTROL POINT NUMBER.
  17748. *
  17749. * USES CN, CM - CM+4.
  17750. *
  17751. * CALLS GEE.
  17752. *
  17753. * MACROS SFA.
  17754.  
  17755.  
  17756. GCE SUBR ENTRY/EXIT
  17757. LDN AB
  17758. RJM GEE GET EJT ENTRY
  17759. PJN GCE2 IF EJT ENTRY FOUND
  17760. GCE1 JMP KIE PROCESS INCORRECT ENTRY
  17761.  
  17762. GCE2 LDD CM+4 CHECK JOB STATUS
  17763. LPN 76
  17764. LMN EXJS*2
  17765. NJN GCE1 IF JOB NOT AT CP
  17766. LDD T3
  17767. ZJN GCE1 IF JSN = *SYS*
  17768. SFA EJT
  17769. ADN SCHE
  17770. CRD CM
  17771. LDD CM+3
  17772. STD CN SET CP NUMBER
  17773. UJN GCEX RETURN
  17774. SPACE 4,10
  17775. CMDEND
  17776. COMMAND (SUBSYSTEM REQUESTS.)
  17777. SPACE 4,10
  17778. * MACROS.
  17779.  
  17780.  
  17781. SUBSYST SPACE 4,10
  17782. ** SUBSYST - GENERATE SUBSYSTEM TABLE.
  17783. *
  17784. * SUBSYST NAME,ID,PR,PP,AUTO,DEF,DCP,CP,PROC,ABT
  17785. *
  17786. * ENTRY *NAME* = THREE CHARACTER SUBSYSTEM NAME.
  17787. * *ID* = SUBSYSTEM ID.
  17788. *
  17789. * GENERATE CODE TO INITIATE EACH SUBSYSTEM.
  17790.  
  17791.  
  17792. PURGMAC SUBSYST
  17793.  
  17794. SUBSYST MACRO NM,ID,PT,PP,AU,DF,DC,CP,PR,AB
  17795. .SUB RMT
  17796. .A IFC NE,*NM*RBF*
  17797. .A IFC NE,*NM*ATF*
  17798. ENTRY NM
  17799. LDC ID
  17800. JMP ISS
  17801. .A ENDIF
  17802. .SUB RMT
  17803. SUBSYST ENDM
  17804. SPACE 4,10
  17805. SUB$ EQU 1 ASSEMBLE *SUBSYST* MACRO CALLS
  17806. *CALL COMSSSD
  17807. ISS SPACE 4,10
  17808. ** ISS - INITIATE SUBSYSTEM.
  17809. *
  17810. * ENTRY (A) = SUBSYSTEM ID.
  17811. *
  17812. * USES AB - AB+4.
  17813. *
  17814. * CALLS AST, IEE, PPN.
  17815.  
  17816.  
  17817. ISS BSS 0 ENTRY
  17818. ADC SSCTL*10000 GET SSAT ENTRY
  17819. RJM AST
  17820. ZJN ISS2 IF SUBSYSTEM NOT ACTIVE
  17821. ISS1 JMP KIE *INCORRECT ENTRY*
  17822.  
  17823. ISS2 RJM PPN PACK PROCEDURE NAME
  17824. LDD SP+4
  17825. NJN ISS1 IF KEYWORD TOO LONG
  17826. LDN ZERL
  17827. CRD AB
  17828. LDC /1DS/ISSF+/1DS/LOCK
  17829. JMP KAR PROCESS *1DS* CALL
  17830. SPACE 4,10
  17831. LIST G
  17832. .SUB HERE CODE FOR SUBSYSTEM INITIATION
  17833. LIST *
  17834. PPN SPACE 4,10
  17835. ** PPN - PACK PROCEDURE NAME.
  17836. *
  17837. * EXIT (SP - SP+4) = *1DS* PARAMETER.
  17838. *
  17839. * USES CA, T1, SP - SP+4.
  17840.  
  17841.  
  17842. PPN SUBR ENTRY/EXIT
  17843. LDN ZERL
  17844. CRD SP
  17845. LDN SP
  17846. STD T1
  17847. LDC KBUF
  17848. STD CA
  17849. LDI CA PACK SUBSYSTEM NAME
  17850. SHN 6
  17851. STI T1
  17852. AOD CA
  17853. LDI CA
  17854. RAI T1
  17855. AOD CA
  17856. AOD T1
  17857. LDI CA
  17858. SHN 6
  17859. STI T1
  17860. AOD CA
  17861. AOD T1
  17862. PPN1 LDI CA PACK PROCEDURE FILE NAME
  17863. ZJN PPN3 IF END OF COMMAND
  17864. LMN 1R.
  17865. ZJN PPNX IF *.*
  17866. LMN 1R.
  17867. SBN 1R9+1
  17868. PJN PPN3 IF CHARACTER IS NOT ALPHANUMERIC
  17869. LDI CA
  17870. SHN 6
  17871. STI T1
  17872. AOD CA ADVANCE POINTER
  17873. LDI CA
  17874. LMN 1R.
  17875. ZJN PPN2 IF *.*
  17876. LMN 1R.
  17877. SBN 1R9+1
  17878. PJN PPN3 IF CHARACTER IS NOT ALPHANUMERIC
  17879. LDI CA
  17880. RAI T1
  17881. AOD CA ADVANCE POINTER
  17882. AOD T1
  17883. SBN SP+4+1
  17884. MJN PPN1 IF .LT. 5 CHARACTERS ENTERED
  17885. PPN2 LJM PPNX RETURN
  17886.  
  17887.  
  17888. PPN3 JMP KIE *INCORRECT ENTRY*
  17889. SPACE 4,10
  17890. CMDEND
  17891. COMMAND (INTERACTIVE MESSAGE REQUESTS.)
  17892. DIA SPACE 4,10
  17893. *** DIAL,JSN,CCC - CCC
  17894. * DIAL,*,CCC - CCC
  17895. *
  17896. * SEND MESSAGE CCC - CCC TO THE TERMINAL WITH THE SPECIFIED
  17897. * JSN. IF AN ASTERISK (*) IS SPECIFIED FOR THE JSN, THE
  17898. * MESSAGE IS SENT TO ALL CONNECTED TERMINALS.
  17899.  
  17900.  
  17901. ENTRY DIB
  17902. AOD CA SKIP SEPERATOR
  17903. LCN 0 SET THE DIAL ALL FLAG
  17904. STD AB+3
  17905. LJM DIA3.1 SET UP *1DS* CALL
  17906.  
  17907.  
  17908. DIA5 LJM KIE *INCORRECT ENTRY*
  17909.  
  17910. ENTRY DIA
  17911. RJM CTS CHECK INTERACTIVE STATUS
  17912. RJM ASN ASSEMBLE JSN
  17913. LDD AB+2
  17914. NJN DIA5 IF JSN .GT. 4 CHARACTERS
  17915. * LDN 0 INITIALIZE TERMINAL NUMBER
  17916. * STD AB+3
  17917. LDI CA
  17918. LMN 1R,
  17919. NJN DIA5 IF NOT *,*
  17920. LDN AB GET EJTO
  17921. RJM GEE
  17922. PJN DIA2 IF EJT ENTRY FOUND
  17923. DIA1 LDC =C*USER NOT ACTIVE*
  17924. JMP KMS DISPLAY MESSAGE
  17925.  
  17926. DIA2 SFA EJT CHECK CONNECTION STATUS
  17927. ADK JSNE
  17928. CRD CM
  17929. LDD CM+4
  17930. SHN -7
  17931. LPN 17
  17932. LMN OLCS
  17933. NJN DIA5 IF JOB IS NOT ONLINE CONNECTED
  17934. LDM. CMEI
  17935. ZJN DIA2.1 IF NOT *CME* MACHINE
  17936. STM DIAB
  17937. DIA2.1 LDC /REM/VCPT*200 GET *RA* FOR *IAF*
  17938. DIAB ADN FLSW
  17939. * ADN FLSW+1 (*CME* MACHINE)
  17940. CRD T4
  17941. LRD T4+1 SET R REGISTER
  17942. RJM GTN GET TERMINAL NUMBER
  17943. MJN DIA1 IF JOB NOT FOUND IN TERMINAL TABLE
  17944. LDC LDSP GET *RDF* MESSAGE TERMINAL NUMBER
  17945. CRD SH
  17946. LDD SH+2
  17947. SHN 14
  17948. LMD SH+3
  17949. SBN LODS
  17950. CRD CM
  17951. LDD CM+1
  17952. LMD AB+1
  17953. NJN DIA3 IF JSN DOES NOT MATCH OPERATOR DISPLAY
  17954. LDD CM
  17955. LMD AB
  17956. NJN DIA3 IF JSN DOES NOT MATCH
  17957. LDD CM+2
  17958. ZJN DIA3 IF NOT A MESSAGE FROM *1TM*
  17959. LDN ZERL CLEAR OPERATOR MESSAGE AREA
  17960. CRD CM
  17961. LDN 1
  17962. STD CM
  17963. LDD SH+2
  17964. SHN 14
  17965. LMD SH+3
  17966. SBN LODS
  17967. CWD CM
  17968. LDN 1
  17969. STD CM+1
  17970. LDC OPRL
  17971. STD CM+4
  17972. LDD MA
  17973. CWM DIAA,ON
  17974. MONITOR UTEM
  17975. LRD T4+1 SET R REGISTER
  17976. DIA3 LDD SR+1
  17977. SHN 6
  17978. ADD T7
  17979. SHN 6
  17980. ADD SR+2
  17981. ADN /REM/VDCT GET FIRST POT OF OUTPUT MESSAGE
  17982. CRD SR
  17983. ADN /REM/VSTT-/REM/VDCT GET POT COUNT/COMMAND TABLE INDEX
  17984. CRD SH
  17985. LDD SR+4
  17986. ADD SH+4
  17987. NJN DIA4 IF OUTPUT QUEUED
  17988.  
  17989. * CALL *1DS*.
  17990.  
  17991. DIA3.1 LDK /1DS/DIAF
  17992. STD AB+2
  17993. AOD CA
  17994. UJN PTM PROCESS INTERACTIVE MESSAGE
  17995.  
  17996. DIA4 LDC =C*OUTPUT BUSY*
  17997. JMP KMS DISPLAY MESSAGE
  17998.  
  17999. DIAA VFD 1/0,5/0,6/1,6/59D,42/0 CLEAR BIT
  18000. WAR SPACE 4,10
  18001. *** WARN,CCC - CCC
  18002. * WARN.
  18003. *
  18004. * SEND WARNING MESSAGE CCC - CCC TO ALL TERMINAL USERS.
  18005. * IF CCC - CCC IS NULL, CLEAR PREVIOUS WARNING MESSAGE.
  18006.  
  18007.  
  18008. ENTRY WAR
  18009. LDN /1DS/WARF
  18010. STD AB+2
  18011. LDM KBUF+6
  18012. ZJN PTM1 IF CLEARING PREVIOUS MESSAGE
  18013. LDC KBUF+5 SET START OF BUFFER ADDRESS
  18014. * UJN PTM PROCESS INTERACTIVE MESSAGE
  18015. PTM SPACE 4,10
  18016. ** PTM - PROCESS INTERACTIVE MESSAGE.
  18017. *
  18018. * ENTRY (A) = STARTING KEYBOARD BUFFER ADDRESS.
  18019. * (AB+2) = *1DS* FUNCTION TO CALL.
  18020. * (AB+3) = 0, IF *WARN* OR *MESSAGE*.
  18021. * = TERMINAL NUMBER, IF *DIAL*.
  18022. * = 7777 IF DIALING ALL TERMINALS.
  18023.  
  18024.  
  18025. PTM BSS 0 ENTRY
  18026. SBK KBUF KEYBOARD BUFFER OFFSET
  18027. SHN 6
  18028. PTM1 STD AB+4
  18029. RJM CTS CHECK INTERACTIVE STATUS
  18030. LDN /REM/VCPT SET CP NUMBER
  18031. RAD AB+4
  18032. LDC /1DS/LOCK+/1DS/CMOV
  18033. RAD AB+2
  18034. JMP KAR PROCESS *1DS* CALL
  18035. CTS SPACE 4,10
  18036. ** CTS - CHECK INTERACTIVE STATUS.
  18037. *
  18038. * ERROR TO *KMS*, IF *IAF* NOT ACTIVE.
  18039. *
  18040. * USES T4 - CM.
  18041. *
  18042. * CALLS FSS.
  18043.  
  18044.  
  18045. CTS SUBR ENTRY/EXIT
  18046. LDC IFSI FIND *IAF*
  18047. RJM FSS
  18048. NJN CTSX IF *IAF* ACTIVE
  18049. LDC =C*IAF NOT ACTIVE*
  18050. LJM KMS DISPLAY MESSAGE
  18051. SPACE 4,10
  18052. ** COMMON DECKS.
  18053.  
  18054.  
  18055. *CALL COMPGTN
  18056. SPACE 4,10
  18057. CMDEND
  18058. COMMAND (BATCHIO REQUESTS - PART 1.)
  18059. BKF SPACE 4,10
  18060. *** BKSPF,XXX,YY.
  18061. *
  18062. * BACKSPACE FILE PRINTING ON *BATCHIO* EQUIPMENT XXX, YY FILES.
  18063.  
  18064.  
  18065. ENTRY BKF
  18066. LDN /BIO/BKFO REQUEST BACKSPACE FILES
  18067. UJN SIO SET *BATCHIO* FLAG
  18068. BKP SPACE 4,10
  18069. *** BKSPRU,XXX,YY.
  18070. *
  18071. * BACKSPACE FILE PRINTING ON *BATCHIO* EQUIPMENT XXX, YY PRUS.
  18072.  
  18073.  
  18074. ENTRY BKP
  18075. LDN /BIO/BKPO REQUEST BACKSPACE PRUS
  18076. UJN SIO SET *BATCHIO* FLAG
  18077. BKR SPACE 4,10
  18078. *** BKSP,XXX,YY.
  18079. *
  18080. * BACKSPACE FILE PRINTING ON *BATCHIO* EQUIPMENT XXX, YY
  18081. * RECORDS.
  18082.  
  18083.  
  18084. ENTRY BKR
  18085. LDN /BIO/BKRO REQUEST BACKSPACE RECORDS
  18086. UJN SIO SET *BATCHIO* FLAG
  18087. CNT SPACE 4,10
  18088. *** CONTINUE,XXX.
  18089. *
  18090. * CONTINUE OPERATION ON *BATCHIO* EQUIPMENT XXX.
  18091.  
  18092.  
  18093. ENTRY CNT
  18094. LDN /BIO/CNTM REQUEST CONTINUE
  18095. UJN SIO SET *BATCHIO* FLAG
  18096. END SPACE 4,10
  18097. *** END,XXX.
  18098. * END,XXX,YY.
  18099. *
  18100. * END OPERATION ON *BATCHIO* EQUIPMENT XXX, YY TIMES.
  18101. * (USED TO CLEAR REPEAT COUNT.)
  18102.  
  18103.  
  18104. ENTRY END
  18105. LDN /BIO/ENDM REQUEST END
  18106. UJN SIO SET *BATCHIO* FLAG
  18107. HLD SPACE 4,10
  18108. *** HOLD,XXX.
  18109. *
  18110. * STOP OPERATION ON *BATCHIO* EQUIPMENT XXX.
  18111.  
  18112.  
  18113. ENTRY HLD
  18114. LDN /BIO/HLDM REQUEST HOLD
  18115. UJN SIO SET *BATCHIO* FLAG
  18116. REP SPACE 4,10
  18117. *** REPEAT,XXX.
  18118. * REPEAT,XXX,YY.
  18119. *
  18120. * REPEAT OPERATION ON *BATCHIO* EQUIPMENT XXX, YY TIMES.
  18121.  
  18122.  
  18123. ENTRY REP
  18124. LDN /BIO/REPM REQUEST REPEAT
  18125. UJN SIO SET *BATCHIO* FLAG
  18126. RRN SPACE 4,10
  18127. *** REPRINT,XXX.
  18128. * REPRINT,XXX,YY.
  18129. * REPUNCH,XXX.
  18130. * REPUNCH,XXX,YY.
  18131. *
  18132. * REQUEUE FILE CURRENTLY ON *BATCHIO* EQUIPMENT XXX WITH A
  18133. * PRIORITY OF YY (IF SPECIFIED).
  18134.  
  18135.  
  18136. ENTRY RRN
  18137. LDN /BIO/RRNM REQUEST RERUN
  18138. UJN SIO SET *BATCHIO* FLAG
  18139. SKF SPACE 4,10
  18140. *** SKIPF,XXX,YY.
  18141. *
  18142. * SKIP FILE PRINTING ON *BATCHIO* EQUIPMENT XXX FORWARD,
  18143. * YY FILES.
  18144.  
  18145.  
  18146. ENTRY SKF
  18147. LDN /BIO/SKFO REQUEST SKIP FILES
  18148. UJN SIO SET *BATCHIO* FLAG
  18149. SKP SPACE 4,10
  18150. *** SKIPRU,XXX,YY.
  18151. *
  18152. * SKIP FILE PRINTING ON *BATCHIO* EQUIPMENT XXX, YY PRUS.
  18153.  
  18154.  
  18155. ENTRY SKP
  18156. LDN /BIO/SKPO REQUEST SKIP PRUS
  18157. UJN SIO SET *BATCHIO* FLAG
  18158. SKR SPACE 4,10
  18159. *** SKIP,XXX,YY.
  18160. *
  18161. * SKIP FILE PRINTING ON *BATCHIO* EQUIPMENT XXX FORWARD,
  18162. * YY RECORDS.
  18163.  
  18164.  
  18165. ENTRY SKR
  18166. LDN /BIO/SKRO REQUEST SKIP RECORDS
  18167. UJN SIO SET *BATCHIO* FLAG
  18168. SUP SPACE 4,10
  18169. *** SUPPRESS,XXX.
  18170. *
  18171. * TOGGLE USE OF FORMAT CONTROL ON *BATCHIO* PRINTER XXX.
  18172.  
  18173.  
  18174. ENTRY SUP
  18175. LDN /BIO/SUPM REQUEST SUPPRESS
  18176. * UJN SIO SET *BATCHIO* FLAG
  18177. SIO SPACE 4,10
  18178. ** SIO - SET *BATCHIO* FLAG.
  18179. *
  18180. * ENTRY (A) = *BATCHIO* FLAG.
  18181. *
  18182. * PROGRAMMERS NOTE - *DSD* CHANGES A *RERUN* REQUEST FOR A
  18183. * CARD READER TO AN *END*. *1CD* EXPECTS THIS TO BE DONE.
  18184.  
  18185.  
  18186. SIO BSS 0 ENTRY
  18187. STD SP+4 SAVE REQUEST
  18188. LDC KBUF+3 SET ASSEMBLY STARTING POINT
  18189. STD CA
  18190. RJM ASN POSITION TO END OF REQUEST
  18191. AOD CA SKIP SEPARATOR
  18192. LDN 0 CLEAR PRIORITY FIELD
  18193. STD SP+1
  18194. LDD SP+4
  18195. LMN /BIO/REPM
  18196. STM SIOA
  18197. NJN SIO3 IF NOT *REPEAT*
  18198. RJM ASN
  18199. LDD AB SAVE JSN
  18200. STM REPB+0
  18201. STD SP
  18202. LDD CA
  18203. SBK KBUF+13
  18204. ZJN SIO1 IF JSN 4 CHARACTERS LONG
  18205. ADN 1
  18206. NJN SIO2 IF JSN .GT. 4 OR .LT. 2 CHARACTERS
  18207. LDN 1R SPACE FILL 3 CHARACTER JSN
  18208. SIO1 LMD AB+1
  18209. STM REPB+1
  18210. UJN SIO5 FINISH SAVING JSN
  18211.  
  18212. SIO2 JMP KIE *INCORRECT ENTRY*
  18213.  
  18214. SIO3 RJM ASD ASSEMBLE EST ORDINAL
  18215. LDD SP+4
  18216. LMN /BIO/RRNM
  18217. NJN SIO4 IF NOT *REPRINT* OR *REPUNCH* (RERUN)
  18218. LCN 0 SET DEFAULT PRIORITY
  18219. STD SP+1
  18220. SFA EST,AB+4 READ EST ENTRY
  18221. ADK EQDE
  18222. CRD CM
  18223. LDD CM+3
  18224. LMC 2RCR
  18225. NJN SIO4 IF NOT *CR*
  18226. LDN /BIO/ENDM SET *END* FOR *CR*
  18227. STD SP+4
  18228. SIO4 LDD AB+4 SET EST ORDINAL
  18229. SIO5 STD SP+3
  18230. LDI CA CHECK SEPARATOR
  18231. LMN 1R.
  18232. ZJN SIO8 IF END OF COMMAND
  18233. LMN 1R,&1R.
  18234. SIO6 NJN SIO2 IF NOT *,*
  18235. AOD CA SKIP SEPARATOR
  18236. RJM ASD ASSEMBLE PARAMETER
  18237. LDI CA CHECK SEPARATOR
  18238. LMN 1R.
  18239. NJN SIO6 IF NOT END OF COMMAND
  18240. LDD SP+4 CHECK COMMAND
  18241. LMN /BIO/RRNM
  18242. NJN SIO7 IF NOT *REPRINT* OR *REPUNCH*
  18243. LDD AB+4 SET PRIORITY VALUE
  18244. STD SP+1
  18245. LDN 0
  18246. UJN SIO8 CONTINUE
  18247.  
  18248. SIO7 LDD AB+4 SET PARAMETER
  18249. SIO8 STD SP+2
  18250. SHN -6
  18251. ADD AB+3
  18252. ADD AB+2
  18253. NJN SIO6 IF INCORRECT PARAMETER
  18254. LDD SP+2 CONVERT AND STORE REPEAT COUNT
  18255. SHN 3
  18256. LMD SP+2
  18257. SCN 70
  18258. RAM REPC
  18259. LDC BISI GET SSCT ENTRY
  18260. RJM AST
  18261. SHN 21-13
  18262. PJN SIO9 IF *BATCHIO* NOT ACTIVE
  18263. LDC BISI+SSCTL*10000
  18264. RJM AST
  18265. ZJN SIO9 IF *BATCHIO* INACTIVE
  18266. SFA EJT GET *BATCHIO* JOB STATUS AND CP NUMBER
  18267. ADK JSNE
  18268. CRD SR
  18269. ADN SCHE
  18270. CRD SH
  18271. LDD SR+4
  18272. LPN 76
  18273. LMN EXJS*2
  18274. ZJN SIO10 IF *BATCHIO* AT A CP
  18275. SIO9 UJN SIO12 *BATCHIO* NOT AVAILABLE
  18276.  
  18277. SIO10 LDD SH+3 SET *BATCHIO* CP NUMBER
  18278. LPN 77
  18279. STD AB+4
  18280. LDC /1DS/CMOV+/1DS/LOCK+/1DS/EBRF
  18281. RJM C1D PROCESS FUNCTION
  18282. LDC SIO11 SET REENTRY ADDRESS
  18283. STM /KEYBOARD/KCRB
  18284. SIO11 LDC /1DS/DSDL CHECK IF *1DS* COMPLETE
  18285. CRD T7
  18286. ADN 1 CHECK RESULT
  18287. CRD CM
  18288. LDD T7
  18289. NJP CLP1 IF NOT COMPLETE
  18290. LDD CM
  18291. ZJP KBR IF NO ERROR, RETURN
  18292. LMN 1
  18293. ZJN SIO12 IF PREVIOUS REQUEST PROCESSED
  18294. LDC KBIB *BIO BUSY*
  18295. LJM KMS ISSUE MESSAGE
  18296.  
  18297. * IF *REPEAT*, BUILD *QALTER* COMMAND TO CHANGE REPEAT COUNT.
  18298.  
  18299. SIO12 LDC 1
  18300. * LDC 0 (*REPEAT*)
  18301. SIOA EQU *-1
  18302. NJP KIE IF NOT *REPEAT*
  18303. STD T1
  18304. STD T2
  18305. LDD MA
  18306. CWM REPA,ON
  18307. CRD SP
  18308. SIO13 LDM REPA,T1 REPLACE *REPEAT* WITH *QALTER*
  18309. SHN 14
  18310. STM KBUF,T2
  18311. SHN -14
  18312. STM KBUF+1,T2
  18313. AOD T2
  18314. AOD T2
  18315. AOD T1
  18316. SBN REPAL
  18317. NJN SIO13 IF NOT DONE REPLACING COMMAND
  18318. STD SP+3
  18319. STD SP+4
  18320. STM /KEYBOARD/KBRA DISALLOW *REPEAT ENTRY*
  18321. STD AB+4 SET NO BUFFER OFFSET
  18322. LDC /1DS/ICJF+/1DS/LOCK
  18323. JMP KAR PROCESS *1DS* CALL
  18324.  
  18325.  
  18326. REPA DATA H*QALTER,PO=N,L=0,JSN=*
  18327. REPB DATA H*JSNN, NRC=*
  18328. REPC DATA H*00B.*
  18329. REPAL EQU *-REPA
  18330.  
  18331. KBIB DATA C*BIO BUSY*
  18332. SPACE 4,10
  18333. CMDEND
  18334. COMMAND (BATCHIO REQUESTS - PART 2.)
  18335. SPACE 4,10
  18336. SID SPACE 4,20
  18337. *** ID,XXX,YY.
  18338. *
  18339. * SET *BATCHIO* EQUIPMENT XXX TO HAVE *ID* YY.
  18340.  
  18341.  
  18342. ENTRY SID
  18343. RJM REE READ EST ENTRY
  18344. LDC SIDA-1
  18345. STD T2
  18346. SID1 AOD T2 CHECK EQUIPMENT TYPE
  18347. LDI T2
  18348. ZJN SID4 IF END OF LIST
  18349. LMD CM+3
  18350. NJN SID1 IF NO MATCH
  18351. SID2 AOD CA ASSEMBLE ID
  18352. RJM ASD
  18353. LDD AB+4 ENTER ID
  18354. LPN 77
  18355. STD T1
  18356. SBN IDLM
  18357. PJN SID4 IF ID OUT OF RANGE
  18358. LDN SB4S SET BYTE 4 OF EST
  18359. STD CM+2
  18360. LCN 77 SET MASK
  18361. STD CM+3
  18362. LDD T1 GET ID PARAMETER
  18363. SID3 STD CM+4 SAVE *SEQM* PARAMETER
  18364. LDD T7 SET EST ORDINAL
  18365. STD CM+1
  18366. MONITOR SEQM SET EQUIPMENT
  18367. JMP KBR RETURN
  18368.  
  18369. SID4 JMP KIE INCORRECT ENTRY
  18370.  
  18371. SIDA BSS 0 LIST OF VALID BATCHIO EQUIPMENT TYPES
  18372. CON 2RCP
  18373. CON 2RCR
  18374. CON 2RLQ
  18375. CON 2RLR
  18376. CON 2RLS
  18377. CON 2RLT
  18378. CON 2RLX
  18379. CON 2RLY
  18380. CON 0
  18381. FRM SPACE 4,10
  18382. *** FORM,XXX,FF.
  18383. *
  18384. * SET *BATCHIO* EQUIPMENT XXX TO HAVE FORMS CODE YY.
  18385.  
  18386.  
  18387. ENTRY FRM
  18388. RJM REE READ EST ENTRY
  18389. LDD CM+3 CHECK DEVICE TYPE
  18390. SBK 2RCP
  18391. ZJN FRM1 IF CARD PUNCH
  18392. ADC 2RCP-2RLQ
  18393. MJN FRM2 IF NOT LINE PRINTER
  18394. SHN -6
  18395. NJN FRM2 IF NOT PRINTER
  18396. FRM1 AOD CA ASSEMBLE FORMS CODE
  18397. RJM ASN
  18398. LDD AB ENTER FORMS CODE
  18399. ZJN FRM3 IF NULL
  18400. LPN 77
  18401. NJN FRM3 IF TWO CHARACTERS
  18402. FRM2 JMP KIE INCORRECT ENTRY
  18403.  
  18404. FRM3 LDD T7 SET UP *UTEM* PARAMETERS
  18405. SFA EST
  18406. STD CM+4
  18407. SHN -14
  18408. STD CM+3
  18409. LDN 1
  18410. STD CM+1
  18411. LDD AB
  18412. STM FRMA+4
  18413. LDD MA
  18414. CWM FRMA,CM+1
  18415. MONITOR UTEM
  18416. LJM KBR RETURN
  18417.  
  18418.  
  18419. FRMA VFD 6/1,6/12D,6/24D,42/0
  18420. PSZ SPACE 4,10
  18421. *** PRSIZE,XXX,Y.
  18422. *
  18423. * SET PAPER SIZE Y ON PRINTER XXX.
  18424. *
  18425. * NOTE - ENTRY NOT VALID FOR TYPES *LX* AND *LY*.
  18426.  
  18427.  
  18428. ENTRY PSZ ENTRY/EXIT
  18429. RJM REE READ EST ENTRY
  18430. LDD CM+3 CHECK EQUIPMENT TYPE
  18431. SBK 2RLQ CHECK FOR PRINTER
  18432. MJN FRM2 IF NOT *LQ*
  18433. SBN 1RT+1-1RQ
  18434. PJP FRM2 IF NOT PRINTER
  18435. LDN SB0S SUBFUNCTION FOR BYTE 0
  18436. STD CM+2
  18437. LDC 6777
  18438. STD CM+3 SET MASK FOR BIT 57
  18439. AOD CA
  18440. LDI CA GET PARAMETER
  18441. LMN 1RL
  18442. ZJN PRS1 IF *L*
  18443. LDD TH SET BIT 57 OF EST ENTRY
  18444. PRS1 LJM SID3 PROCESS *SEQM*
  18445. REE SPACE 4,10
  18446. ** REE - READ EST ENTRY.
  18447. *
  18448. * EXIT (T7) = EST ORDINAL.
  18449. * (CM - CM+4) = EST ENTRY.
  18450. *
  18451. * USES T7, CM - CM+4.
  18452. *
  18453. * CALLS ASD.
  18454. *
  18455. * MACROS SFA.
  18456.  
  18457.  
  18458. REE SUBR ENTRY/EXIT
  18459. RJM ASD ASSEMBLE EST ORDINAL
  18460. LDD AB+4 READ EST ENTRY
  18461. STD T7
  18462. SFA EST
  18463. ADK EQDE
  18464. CRD CM
  18465. UJN REEX RETURN
  18466. SPACE 4,10
  18467. CMDEND
  18468. COMMAND (SYSTEM REQUESTS - PART 1.)
  18469. STP SPACE 4,10
  18470. *** STEP,JSN.
  18471. * STEP,JSN,XXX.
  18472. * STEP,JSN,XXX,B,V.
  18473. *
  18474. * SET MONITOR IN STEP MODE FOR THE EXISTING EJT
  18475. * ENTRY WITH THE GIVEN JSN.
  18476. * XXX = OPTIONAL FUNCTION NUMBER ON WHICH TO STEP.
  18477. * B = OPTIONAL BYTE NUMBER. IF SPECIFIED, V IS
  18478. * REQUIRED.
  18479. * V = OPTIONAL BYTE VALUE FOR BYTE B.
  18480. *
  18481. * NOTE - WHEN MAKING THE MONITOR CALL BUT WITHOUT A BYTE AND
  18482. * VALUE, BOTH (CM+3) AND (CM+4) MUST BE SET WITH THE
  18483. * FUNCTION CODE.
  18484. SPACE 4,10
  18485. *** STEP,,XXX.
  18486. * STEP,,XXX,B,V.
  18487. *
  18488. * SET MONITOR IN STEP MODE.
  18489. * XXX = OPTIONAL FUNCTION NUMBER ON WHICH TO STEP.
  18490. * B = OPTIONAL BYTE NUMBER. IF SPECIFIED, V IS
  18491. * REQUIRED.
  18492. * V = OPTIONAL BYTE VALUE FOR BYTE B.
  18493.  
  18494.  
  18495. ENTRY STP
  18496. LDC SCRL CHECK EMERGENCY STEP FLAG
  18497. CRD SH
  18498. LDD SH
  18499. LPC 1400
  18500. NJN STP1 IF EMERGENCY STEP REQUIRED / SET
  18501. RJM ASN GET JSN
  18502. LDD AB
  18503. NJN STP2 IF JSN PRESENT
  18504. STD T3
  18505. LDI CA
  18506. LMN 1R.
  18507. NJN STP3 IF FUNCTION NUMBER NEXT
  18508. STP1 JMP KIE PROCESS INCORRECT ENTRY
  18509.  
  18510. STP2 LDD AB+2
  18511. NJN STP1 IF JSN .GT. 4 CHARACTERS
  18512. LDN AB SET FWA OF JSN
  18513. RJM GEE GET EJT ENTRY
  18514. MJN STP1 IF EJT ENTRY NOT FOUND
  18515. ZJN STP1 IF JSN = *SYS*
  18516. STP3 LDD AB SET JSN
  18517. STM STPA
  18518. LDD AB+1
  18519. STM STPB
  18520. LDN ZERL INITIALIZE PARAMETER BLOCK
  18521. CRD CM
  18522. * LDN MSPS
  18523. * STD CM+1
  18524. ERRNZ MSPS
  18525. LDD T3 SET EJTO
  18526. STD CM+2
  18527. LDI CA CHECK NEXT SEPARATOR
  18528. LMN 1R.
  18529. STD T6
  18530. ZJN STP5 IF FUNCTION STEP
  18531. LMN 1R,&1R.
  18532. NJN STP1 IF INVALID SEPARATOR
  18533. AOD CA SKIP *,*
  18534. RJM ASD ASSEMBLE FUNCTION
  18535. LDI CA
  18536. LMN 1R.
  18537. ZJN STP4 IF END OF COMMAND
  18538. LMN 1R,&1R.
  18539. NJN STP6 IF INVALID SEPARATOR
  18540. STP4 LDD AB+4 SET FUNCTION NUMBER
  18541. STD T6
  18542. STD CM+3
  18543. STD CM+4 PRESET WITH FUNCTION NUMBER
  18544. STP5 ZJN STP8 IF NOT A FUNCTION STEP
  18545. SHN -7
  18546. STP6 NJN STP9 IF FUNCTION .GT. 177B
  18547. LDD AB+4
  18548. SBN CPUM
  18549. MJN STP7 IF NOT *CPUMTR* FUNCTION
  18550. LDD TH FUNCTION + 1000B
  18551. RAD CM+4
  18552. STP7 LDI CA
  18553. LMN 1R.
  18554. STP8 ZJN STP12 IF END OF ASSEMBLY
  18555. AOD CA
  18556. RJM ASD ASSEMBLE BYTE
  18557. LDD AB+4 SET BYTE NUMBER
  18558. PJN STP10 IF VALUE .GT. 0
  18559. STP9 JMP KIE *INCORRECT ENTRY*
  18560.  
  18561. STP10 SBN 5
  18562. PJN STP9 IF VALUE .GT. 4
  18563. LDD AB+4
  18564. SHN 6
  18565. ZJN STP12 IF NOT BYTE VALUE STEP
  18566. STD CM+1
  18567. AOD CA
  18568. RJM ASD
  18569. LDI CA
  18570. LMN 1R.
  18571. ZJN STP11 IF END OF COMMAND
  18572. LMN 1R,&1R.
  18573. NJN STP9 IF INCORRECT VALUE
  18574. STP11 LDD AB+4 SET BYTE VALUE
  18575. STD CM+4
  18576. STP12 MONITOR DSRM
  18577. LDC ** CHECK FOR JSN
  18578. STPA EQU *-1 (JSN)
  18579. NJN STP13 IF JSN PRESENT
  18580. LDC 2R
  18581. STP13 STM /DSD/DLSB SET JSN IN LEFT DISPLAY HEADER
  18582. LDC **
  18583. STPB EQU *-1 (JSN)
  18584. NJN STP14 IF JSN PRESENT
  18585. LDC 2R SET JSN IN LEFT DISPLAY HEADER
  18586. STP14 STM /DSD/DLSC
  18587. LDD T6
  18588. SHN -6
  18589. ZJN STP15 IF FUNCTION .LT. 100B
  18590. LDD T6
  18591. SHN 21-2
  18592. STD T6
  18593. SHN 2-21+6
  18594. ADC 2L00-2L0
  18595. STP15 ADC 2R
  18596. STM /DSD/DLSD+1
  18597. LDD T6 CHECK FUNCTION
  18598. ZJN STP16 IF NO FUNCTION
  18599. SHN 3 CONVERT
  18600. LMD T6
  18601. SCN 70
  18602. ADC 2R00-2R
  18603. STP16 ADC 2R
  18604. STM /DSD/DLSD
  18605. STP17 JMP KBR RETURN
  18606. IDL SPACE 4,10
  18607. *** IDLE.
  18608. *
  18609. * IDLE CONTROL POINTS.
  18610.  
  18611.  
  18612. ENTRY IDL
  18613. LDN 1
  18614. STD CM+1 SET OPTION COUNT
  18615. STD CM+2 DO NOT DROP PPU
  18616. LDD MA
  18617. CWM IDLA,ON
  18618. MONITOR UADM DISABLE JOB SCHEDULING
  18619. LDN JSCL
  18620. CRD CM
  18621. LDD CM
  18622. SHN 21-13
  18623. PJN STP17 IF SCHEDULER NOT ACTIVE
  18624. JMP KIC INCOMPLETE RETURN
  18625.  
  18626.  
  18627. IDLA CON LIOS DECREMENT BY ONE
  18628. CON INWL WORD ADDRESS
  18629. CON 13D*100+1 BIT ADDRESS AND FIELD WIDTH
  18630. LPT SPACE 4,10
  18631. *** TRAIN,XXX,N.
  18632. *
  18633. * DECLARE PRINT TRAIN N IS MOUNTED ON *BATCHIO* PRINTER XXX.
  18634. * N = 0 IF CDC GRAPHIC 64-CHARACTER SET.
  18635. * 1 IF CDC GRAPHIC 64-CHARACTER SET.
  18636. * 4 IF ASCII GRAPHIC 64-CHARACTER SET.
  18637. * 5 IF ASCII GRAPHIC 64-CHARACTER SET.
  18638. * 6 IF ASCII GRAPHIC 95-CHARACTER SET.
  18639. * 7 IF ASCII GRAPHIC 64-CHARACTER SET TO PRINT ON
  18640. * 595-6/596-6.
  18641. *
  18642. * NOTE - ENTRY NOT VALID FOR TYPES *LX* AND *LY*.
  18643.  
  18644.  
  18645. ENTRY LPT
  18646. RJM ASD ASSEMBLE EST ORDINAL
  18647. LDD AB+4 READ EST ENTRY
  18648. STD T7
  18649. SFA EST
  18650. ADK EQDE
  18651. CRD CM
  18652. LDD CM+3 CHECK PRINTER ENTRY
  18653. SBK 2RLQ
  18654. MJN LPT1 IF NOT LINE PRINTER
  18655. SBN 1RT+1-1RQ
  18656. MJN LPT2 IF LINE PRINTER
  18657. LPT1 JMP KIE INCORRECT ENTRY
  18658.  
  18659. LPT2 AOD CA ASSEMBLE TRAIN NUMBER
  18660. RJM ASD
  18661. LDD AB+4
  18662. SCN 7
  18663. NJN LPT1 IF .GT. 7
  18664. LDC 7077 SET MASK FOR TRAIN
  18665. STD CM+3
  18666. LDD AB+4 SET NEW TRAIN NUMBER
  18667. SHN 6
  18668. STD CM+4
  18669. LDN SB4S SET BYTE 4 OF EST
  18670. STD CM+2
  18671. LDD T7 SET EST ORDINAL
  18672. STD CM+1
  18673. MONITOR SEQM
  18674. JMP KBR RETURN
  18675. SPACE 4,10
  18676. CMDEND
  18677. COMMAND (SYSTEM REQUESTS - PART 2.),CMR
  18678. INI SPACE 4,10
  18679. *** INITIALIZE,OP,EQ1,EQ2,EQ3,EQ4,EQ5.
  18680. *
  18681. * INITIALIZE DEVICE.
  18682. * THIS COMMAND WILL TOGGLE *MSI* ACTIVATION TO PROCESS
  18683. * INITIALIZE REQUESTS VIA THE *K* DISPLAY.
  18684. *
  18685. * OP = PF - INITIALIZE PERMANENT FILES.
  18686. * QF - INITIALIZE INACTIVE QUEUED FILES.
  18687. * DF - INITIALIZE INACTIVE SYSTEM DAYFILE.
  18688. * AF - INITIALIZE INACTIVE ACCOUNT FILE.
  18689. * EF - INITIALIZE INACTIVE ERROR LOG FILE.
  18690. * MF - INITIALIZE INACTIVE MAINTENANCE LOG.
  18691. * AL - INITIALIZE ALL PRESERVED FILES.
  18692. * FP - FORMAT PACK.
  18693. * HT - INITIALIZE AS HALF TRACK DEVICE.
  18694. * FT - INITIALIZE AS FULL TRACK DEVICE.
  18695. * EQN = MASS STORAGE EST ORDINAL. A MAXIMUM
  18696. * OF 5 EST ORDINALS MAY BE SPECIFIED.
  18697.  
  18698.  
  18699. ENTRY INI
  18700. LDN ESTP GET EST FWA
  18701. CRD T4
  18702. RJM ASN ASSEMBLE OPTION
  18703. LDD AB+1
  18704. NJN INI2 IF OPTION .GT. 2 CHARACTERS
  18705. LDN ZERL
  18706. CRD SP
  18707. LDN SP SET ADDRESS OF FIRST EST ORDINAL
  18708. STD SR+1
  18709. LDD AB SAVE OPTION
  18710. STD SR
  18711. INI1 RJM CMS CHECK FOR MASS STORAGE EQUIPMENT
  18712. LDI CA
  18713. LMN 1R.
  18714. ZJN INI3 IF END OF COMMAND
  18715. LMN 1R,&1R.
  18716. NJN INI2 IF INCORRECT SEPARATOR
  18717. AOD SR+1
  18718. LMN SP+4+1
  18719. NJN INI1 IF .LT. 5 EQUIPMENTS
  18720. INI2 JMP KIE *INCORRECT ENTRY*
  18721.  
  18722. INI3 LDM IOPT+1,AB+1 SET OPTION
  18723. INI4 STD AB+3
  18724. LDN /1DS/TPSF
  18725. JMP KAR PROCESS *1DS* CALL
  18726. IOPT SPACE 4,10
  18727. * TABLE OF INITIALIZE OPTIONS.
  18728. * NOTE TABLE IS ORDER DEPENDENT.
  18729.  
  18730.  
  18731. IOPT BSS 0 TABLE OF INITIALIZE OPTIONS
  18732. LOC 0
  18733. CON 2RHT,LIHD
  18734. CON 2RFT,LIFD
  18735. NRML EQU * END OF OPTIONS REQUIRING REMOVABLE DEVICE
  18736. CON 2RFP,LFPR
  18737. NLDL EQU * END OF OPTIONS REQUIRING *LDAM* DEVICES
  18738. CON 2RAL,LIAL
  18739. CON 2RMF,LIMF
  18740. CON 2REF,LIEF
  18741. CON 2RAF,LIAF
  18742. CON 2RDF,LIDF
  18743. CON 2RQF,LIQF
  18744. CON 2RPF,LIPF
  18745. LOC *O
  18746. IOPTL EQU *-IOPT
  18747. IDF SPACE 4,10
  18748. *** IDLEFAMILY,XXX.
  18749. *
  18750. * SET/CLEAR FAMILY IDLE DOWN STATUS FOR EST ORDINAL XXX.
  18751.  
  18752.  
  18753. ENTRY IDF
  18754. RJM CME CHECK MS EQUIPMENT
  18755. LDD CM+4
  18756. SHN 3
  18757. ADN PUGL
  18758. CRD CM
  18759. ADN MDGL-PUGL
  18760. CRD AB
  18761. LDD CM+4
  18762. SHN 21-7
  18763. PJN IDF1 IF NOT FAMILY MASTER DEVICE
  18764. LDD AB
  18765. SHN 21-12
  18766. PJN IDF2 IF NOT AUXILIARY DEVICE
  18767. IDF1 JMP KIE INCORRECT ENTRY
  18768.  
  18769. IDF2 LDD T6 TOGGLE FAMILY IDLE DOWN STATUS
  18770. STD CM+1
  18771. LDN TFIS
  18772. STD CM+3
  18773. MONITOR SMDM
  18774. JMP KBR RETURN
  18775. IDD SPACE 4,10
  18776. *** IDLE,SUBSYSTEM.
  18777. *
  18778. * SET SUBSYSTEM IDLEDOWN VIA A *1DS* CALL.
  18779.  
  18780.  
  18781. ENTRY IDD
  18782. RJM ASN GET SUBSYSTEM NAME
  18783. LDD AB+2
  18784. NJN IDD1 IF JSN .GT. 4 CHARACTERS
  18785. LDN AB GET EJTO
  18786. RJM GEE
  18787. MJN IDD1 IF EJT ENTRY NOT FOUND
  18788. STD AB+4
  18789. ZJN IDD1 IF JSN = *SYS*
  18790. SFA EJT
  18791. ADN SCLE CHECK SERVICE CLASS
  18792. CRD SR
  18793. LDD SR
  18794. SHN -6 CHECK FOR SUBSYSTEM SERVICE CLASS
  18795. LMN SSSC
  18796. NJN IDD1 IF NOT SUBSYSTEM SERVICE CLASS
  18797. LDK /1DS/IDLF
  18798. JMP KAR PROCESS *1DS* CALL
  18799.  
  18800. IDD1 JMP KIE *INCORRECT ENTRY*
  18801. CME SPACE 4,10
  18802. ** CME - CHECK MASS STORAGE EQUIPMENT.
  18803. *
  18804. * EXIT (A) = BYTE 0 OF EST ENTRY SHIFTED.
  18805. * (T6) = (AB+4) = EST ORDINAL.
  18806. * (CM - CM+4) = MASS STORAGE EST ENTRY.
  18807. *
  18808. * USES T1, T5 - T7, CM - CM+4.
  18809. *
  18810. * CALLS ASD.
  18811.  
  18812.  
  18813. CME SUBR ENTRY/EXIT
  18814. RJM ASD ASSEMBLE EST ORDINAL
  18815. LDN ESTP GET EST POINTERS
  18816. CRD T5
  18817. LDD AB+4 READ EST ENTRY
  18818. STD T6
  18819. SBD T5+3
  18820. PJN CME1 IF BEYOND LAST MASS STORAGE ORDINAL
  18821. SFA EST,AB+4
  18822. ADK EQDE
  18823. CRD CM
  18824. LDD CM
  18825. SHN 21-13
  18826. MJN CMEX IF MS EQUIPMENT
  18827. CME1 JMP KIE *INCORRECT ENTRY*
  18828. CMS SPACE 4,15
  18829. ** CMS - CHECK FOR MASS STORAGE EQUIPMENT.
  18830. *
  18831. * ENTRY (SR) = OPTION.
  18832. * (SR+1) = ADDRESS WHERE NEXT EST ORDINAL
  18833. * IS TO BE STORED.
  18834. * (T4+3) = LAST MASS STORAGE ORDINAL + 1.
  18835. *
  18836. * EXIT ((CA)) = NEXT PARAMETER SEPARATOR.
  18837. * ((SR+1)) = PROCESSED EST ORDINAL.
  18838. *
  18839. * USES AB+1, CA, CM - CM+4.
  18840. *
  18841. * CALLS ASD.
  18842.  
  18843.  
  18844. CMS SUBR ENTRYEXIT
  18845. AOD CA SKIP*,*
  18846. RJM ASD ASSEMBLE NEXT EST ORDINAL
  18847. LDD AB
  18848. ADD AB+1
  18849. ADD AB+2
  18850. ADD AB+3
  18851. NJN CMS1 IF EST ORDINAL .GT. 7777B
  18852. LDD AB+4 READ EST ENTRY
  18853. STI SR+1 SAVE EST ORDINAL
  18854. SBD T4+3
  18855. PJN CMS1 IF ORDINAL BEYOND MASS STORAGE ORDINALS
  18856. SFA EST,AB+4
  18857. ADK EQDE
  18858. CRD CM
  18859. LDD CM
  18860. SHN 21-13
  18861. MJN CMS2 IF MS EQUIPMENT
  18862. CMS1 JMP KIE *INCORRECT ENTRY*
  18863.  
  18864.  
  18865. CMS2 SHN 13-7
  18866. PJN CMS4 IF NOT *LDAM* EQUIPMENT
  18867. SHN 10+21-10
  18868. PJN CMS3 IF NOT REMOVABLE EQUIPMENT
  18869. SHN 11
  18870. LPN 3 CHECK DEVICE STATE
  18871. LMN 3
  18872. NJN CMS5 IF EQUIPMENT NOT DOWN
  18873. LDC =C*DEVICE DOWN*
  18874. JMP KMS DISPLAY MESSAGE
  18875.  
  18876. CMS3 LDN NRML START AT NON-REMOVABLE EQUIPMENT OPTIONS
  18877. STD AB+1
  18878. UJN CMS5 ENTER SEARCH LOOP
  18879.  
  18880. CMS4 LDN NLDL START AT NON-*LDAM* OPTIONS
  18881. STD AB+1
  18882. CMS5 LDM IOPT,AB+1
  18883. LMD SR
  18884. NJN CMS6 IF OPTION NOT FOUND
  18885. LJM CMSX RETURN
  18886.  
  18887. CMS6 LDN 2
  18888. RAD AB+1
  18889. LMN IOPTL
  18890. ZJN CMS1 IF END OF TABLE
  18891. UJN CMS5 LOOP
  18892. SPACE 4,10
  18893. CMDEND
  18894. COMMAND (JOB CALL REQUESTS.)
  18895. IIF SPACE 4,10
  18896. *** X.CCC.
  18897. * X.CCC,XXXXXX.
  18898. *
  18899. * INITIATE A SYSTEM JOB *CCC* WITH A FIELD LENGTH OF XXXXXX
  18900. * WORDS. *CCC* MUST BE AT LEAST 3 CHARACTERS LONG AND NOT
  18901. * MORE THAN 7 CHARACTERS LONG.
  18902.  
  18903.  
  18904. ENTRY IIF
  18905. RJM ASN ASSEMBLE NAME
  18906. LDD AB+3
  18907. LPN 77
  18908. NJN IIF1 IF MORE THAN 7 CHARACTERS
  18909. LDD AB+1
  18910. NJN IIF2 IF AT LEAST 3 CHARACTERS
  18911. IIF1 JMP KIE *INCORRECT ENTRY*
  18912.  
  18913. IIF2 LDD MA MOVE AB - AB+4 TO SP - SP+4
  18914. CWD AB
  18915. CRD SP
  18916. AOD CA
  18917. RJM ASD ASSEMBLE FIELD LENGTH
  18918. LDD AB+3 ROUND UP FIELD LENGTH
  18919. LPN 37
  18920. SHN 14
  18921. LMD AB+4
  18922. ADN 77
  18923. SHN -6 SET FL
  18924. STD AB+3
  18925. LDN 0 SET KEYBOARD BUFFER OFFSET
  18926. STD AB+4
  18927. LDC /1DS/IJCF+/1DS/LOCK
  18928. UJN RSJ REQUEST SYSTEM JOB
  18929. DFD SPACE 4,10
  18930. *** LOAD,XXX,YY.
  18931. *
  18932. * REQUEST JOB LOAD FROM EST ORDINAL XXX WITH AN ID OF YY.
  18933.  
  18934.  
  18935. ENTRY LOD
  18936. LDN /1DS/LODF
  18937. STD T7 SAVE REQUEST
  18938. RJM ASD ASSEMBLE EST ORDINAL
  18939. LDD AB+4 SAVE NUMBER
  18940. STD T6
  18941. AOD CA ASSEMBLE ID
  18942. RJM ASD
  18943. LDD T6 SET EST ORDINAL
  18944. STD AB+3
  18945. LDD T7 SET JOB REQUEST
  18946. * UJN RSJ CALL *1DS*
  18947. RSJ SPACE 4,10
  18948. ** RSJ - REQUEST SYSTEM JOB.
  18949. *
  18950. * ENTRY (A) = *1DS* FUNCTION CODE.
  18951.  
  18952.  
  18953. RSJ JMP KAR PROCESS *1DS* CALL
  18954. ISJ SPACE 4,10
  18955. *** X.NAME(CCC-CCC)
  18956. *
  18957. * INITIATE SYSTEM JOB *NAME* WITH PARAMETER CCC-CCC.
  18958. * *NAME* MUST BE NO MORE THAN 7 CHARACTERS LONG.
  18959.  
  18960.  
  18961. ENTRY ISJ
  18962. RJM ASN ASSEMBLE NAME
  18963. LDD AB+3
  18964. LPN 77
  18965. ZJN ISJ1 IF NO MORE THAN 7 CHARACTERS
  18966. JMP KIE *INCORRECT ENTRY*
  18967.  
  18968. ISJ1 LDD MA MOVE AB - AB+4 TO SP - SP+4
  18969. CWD AB
  18970. CRD SP
  18971. LDN ZERL
  18972. CRD AB
  18973. LDC 2*100 KEYBOARD BUFFER OFFSET
  18974. STD AB+4
  18975. LDC /1DS/ICJF+/1DS/LOCK
  18976. UJN RSJ REQUEST SYSTEM JOB
  18977. DROP SPACE 4,10
  18978. *** DROP,,PARAMETERS.
  18979. * DROP,JSN,PARAMETERS.
  18980. *
  18981. * *DROP,,PARAMETERS.* IS ONLY PASSED TO CMD IF THE
  18982. * CONSOLE IS UNLOCKED.
  18983. * *DROP,JSN,PARAMETERS.* IS PASSED DIRECTLY TO CMD.
  18984.  
  18985.  
  18986. ENTRY DRC
  18987. LDI CA CHECK FOR DROP COMMA COMMA
  18988. LMN 1R,
  18989. NJN CMD IF NOT COMMA
  18990. LDD LK
  18991. NJN CMD IF CONSOLE UNLOCKED
  18992. JMP KIE *ILLEGAL ENTRY*
  18993. CMD SPACE 4,10
  18994. *** COMMAND,CCC-CCC.
  18995. *
  18996. * SEND COMMAND TO SYSTEM TO PROCESS AS
  18997. * A CONTROL STATEMENT.
  18998.  
  18999.  
  19000. ENTRY CMD
  19001. LDC KBUF RESET KEYBOARD INDEX
  19002. STD CA
  19003. RJM ASN ASSEMBLE NAME
  19004. LDD MA
  19005. CWD AB
  19006. CRD SP
  19007. LDN 0 SET KEYBOARD BUFFER OFFSET
  19008. STD AB+4
  19009. LDC /1DS/ISCF+/1DS/LOCK
  19010. JMP KAR CALL *1DS*
  19011. ILD SPACE 4,10
  19012. *** NAME(CCC-CCC)
  19013. *
  19014. * INITIATE *L* DISPLAY WITH PARAMETERS CCC-CCC.
  19015.  
  19016.  
  19017. ENTRY ILD
  19018. LDC KBUF SET CHARACTER ADDRESS
  19019. STD CA
  19020. RJM ASN ASSEMBLE NAME
  19021. LDD MA SET PARAMETER WORD
  19022. CWD AB
  19023. CRD SP
  19024. LDN 0 SET KEYBOARD BUFFER OFFSET
  19025. STD AB+4
  19026. LDC /1DS/DSPF+/1DS/LOCK
  19027. RJM C1D CALL *1DS*
  19028. LDC ILD2 SET REENTRY ADDRESS
  19029. STM /KEYBOARD/KCRB
  19030. ILD2 LDC /1DS/DSDL
  19031. CRD CM
  19032. ADN 1
  19033. CRD AB
  19034. LDD CM
  19035. ZJN ILD4 IF *1DS* COMPLETE
  19036. ILD3 LJM CLP1 REENTER
  19037.  
  19038. ILD4 LDD AB
  19039. ZJN ILD4.1 IF *L* DISPLAY JOB SUBMITTED
  19040. LDC ILDA *L DISPLAY NOT AVAILABLE*
  19041. LJM KMS ISSUE KEYBOARD MESSAGE
  19042.  
  19043. ILD4.1 LDC ILD5 SET REENTRY ADDRESS
  19044. STM /KEYBOARD/KCRB
  19045. ILD5 LDM /COMDSYS/SYSB GET *L* DISPLAY REQUESTED FLAG
  19046. SHN -1
  19047. ZJN ILD6 IF *L* DISPLAY DRIVER IS ACTIVE
  19048. LPN 10/2
  19049. ZJN ILD3 IF *L* DISPLAY NOT REQUESTED
  19050. LDN 1RL LOAD *L* DISPLAY ON LEFT SCREEN
  19051. SHN 6
  19052. RJM /DSD/LDO LOAD *L* DISPLAY OVERLAY
  19053. ILD6 LJM KBR RETURN
  19054.  
  19055. ILDA DATA C*L DISPLAY NOT AVAILABLE*
  19056. SPACE 4,10
  19057. CMDEND
  19058. COMMAND (SYSTEM REQUESTS - PART 3.),CMR
  19059. AUT SPACE 4,10
  19060. *** AUTO.
  19061. *
  19062. * INITIATE ANY JOB CURRENTLY IN THE INPUT QUEUE.
  19063.  
  19064.  
  19065. ENTRY AUT
  19066. RJM CCP CLEAR CHECKPOINT BITS
  19067. LDC /1DS/LOCK+/1DS/IASF
  19068. JMP KAR CALL *1DS*
  19069. CKP SPACE 4,10
  19070. *** CHECK POINT SYSTEM.
  19071. *
  19072. * IDLE SYSTEM, ROLL OUT ALL JOBS, WRITE TABLES TO DISK.
  19073.  
  19074.  
  19075. ENTRY CKP
  19076. LDN 1 SET CHECKPOINT REQUEST
  19077. STD AB+2
  19078. STD AB+4
  19079. EXECUTE 1CK
  19080. JMP KBR RETURN
  19081. CLR SPACE 4,10
  19082. *** GO,JSN.
  19083. * PAUSE,JSN.
  19084. *
  19085. * CLEAR/SET PAUSE BIT FOR SPECIFIED JSN.
  19086. * IF JSN IS NULL, THE SYSTEM CONTROL POINT IS USED.
  19087.  
  19088.  
  19089. ENTRY CLR
  19090. RJM ASN ASSEMBLE JSN
  19091. LDD MA MOVE JSN TO PARAMETER WORD
  19092. CWD AB
  19093. CRD SP
  19094. LDN ZERL CLEAR OFFSET
  19095. CRD AB
  19096. LDM KBUF CHECK COMMAND
  19097. LMN 1RP
  19098. NJN CLR1 IF NOT *PAUSE*
  19099. AOD AB+3 SET PAUSE STATUS
  19100. CLR1 LDD SP
  19101. ZJN CLR1.1 IF NO JSN SPECIFIED
  19102. LMC 2RSY
  19103. NJN CLR2 IF JSN NOT *SYS*
  19104. LDD SP+1
  19105. LMC 100*1RS
  19106. NJN CLR2 IF JSN NOT *SYS*
  19107. STD SP
  19108. CLR1.1 LDD NC
  19109. SHN 7
  19110. ADN SNSW FETCH SENSE SWITCH WORD AT SYSTEM CP
  19111. CRD CM
  19112. STD T2
  19113. LDD CM+3 SET / CLEAR PAUSE FLAG
  19114. SCN 3
  19115. LMD AB+3
  19116. STD CM+3
  19117. LDD T2 STORE SENSE SWITCH WORD
  19118. CWD CM
  19119. ADN MS2W-SNSW CLEAR MESSAGE
  19120. CWD SP
  19121. JMP KBR RETURN
  19122.  
  19123. CLR2 LDN DSSL FETCH DEADSTART STATUS
  19124. CRD CM
  19125. LDD CM+4 CHECK DEADSTART IN PROGRESS
  19126. LPN 4
  19127. ZJN CLR3 IF SYSTEM OPERATIONAL
  19128. JMP KIE PROCESS INCORRECT ENTRY
  19129.  
  19130. CLR3 LDC /1DS/LOCK+/1DS/CLRF
  19131. JMP KAR PROCESS *1DS* CALL
  19132. DLY SPACE 4,15
  19133. *** DELAY,T1XXX,T2XXX,...TNXXX.
  19134. *
  19135. * SET SCAN VALUE FOR PARAMETER *TN*.
  19136. *
  19137. * TN DELAY
  19138. *
  19139. * CR CPU RECALL DELAY (MILLISECONDS).
  19140. * AR PP/AUTO RECALL DELAY (MILLISECONDS).
  19141. * MP MEMORY PAD FOR *RSTM* (100B WORD BLOCKS).
  19142. * JQ QFT/EJT (INPUT JOB) SCHEDULING DELAY (2**JS).
  19143. * JS JOB SCHEDULER DELAY (SECONDS).
  19144.  
  19145.  
  19146. ENTRY DLY
  19147. DLY1 LDI CA ASSEMBLE TYPE
  19148. SHN 6
  19149. LMM 1,CA
  19150. STD T1
  19151. LDC TDLY-TDLYE SET FWA DELAY PARAMETER TABLE
  19152. STD T7
  19153. DLY2 LDN TDLYE GET NEXT TABLE ENTRY
  19154. RAD T7
  19155. LDI T7
  19156. ZJN DLY3 IF END OF TABLE
  19157. LMD T1
  19158. NJN DLY2 IF NO MATCH FOR ENTRY
  19159. LDN 2 SKIP PARAMETER NAME
  19160. RAD CA
  19161. RJM ASD ASSEMBLE DIGITS
  19162. LMN 1R,
  19163. ZJN DLY4 IF *,*
  19164. LMN 1R.&1R,
  19165. ZJN DLY4 IF *.*
  19166. DLY3 JMP KIE *INCORRECT ENTRY*
  19167.  
  19168. DLY4 LDM 3,T7
  19169. SBD AB+4
  19170. MJN DLY3 IF .GT. MAXIMUM
  19171. LDD AB+4
  19172. SBM 4,T7
  19173. MJN DLY3 IF .LT. MINIMUM
  19174.  
  19175. * CHANGE PARAMETER IN CMR.
  19176.  
  19177. LDN ZERL
  19178. CRD CM
  19179. CRD SH
  19180. LDN 12D SET FIELD SIZE
  19181. STD SH
  19182. LDM 1,T7 SET LOW ORDER BIT OF FIELD
  19183. SHN 6
  19184. STD SH+1
  19185. LDD AB+4 SET VALUE
  19186. STD SH+4
  19187. LDD MA
  19188. CWD SH
  19189. LDN 1 SET NUMBER OF REQUESTS
  19190. STD CM+1
  19191. LDM 2,T7 SET ABSOLUTE ADDRESS OF WORD
  19192. STD CM+4
  19193. MONITOR UTEM
  19194. LDN 2 RESET RECALL CYCLE FLAG
  19195. STD CM+2
  19196. LDI T7
  19197. LMC 2RJS
  19198. ZJN DLY5 IF *JS* PARAMETER CHANGED
  19199. LMN 2RJQ&2RJS
  19200. NJN DLY6 IF NOT *JQ* ENTRY
  19201. DLY5 MONITOR RSJM
  19202. DLY6 LDI CA CHECK SEPARATOR
  19203. LMN 1R.
  19204. ZJN DLY7 IF *.*
  19205. AOD CA SKIP SEPARATOR
  19206. LJM DLY1 LOOP
  19207.  
  19208. DLY7 JMP KBR RETURN
  19209. TDLY SPACE 4,10
  19210. ** TDLY - TABLE OF DELAY ENTRY ADDRESSES.
  19211. *
  19212. * ENTRY = *TDLYE* WORDS LONG.
  19213. *
  19214. * VFD 12/EN ENTRY
  19215. * VFD 12/LB LOW ORDER BIT OF FIELD.
  19216. * VFD 12/ADDR ABSOLUTE ADDRESS OF WORD.
  19217. * VFD 12/MAX MAXIMUM VALUE OF FIELD
  19218. * VFD 12/MIN MINIMUM VALUE OF FIELD
  19219.  
  19220.  
  19221. TDLY BSS 0
  19222.  
  19223. VFD 12/2RCR,12/36D,12/MSCL,12/7777,12/1
  19224. TDLYE EQU *-TDLY TABLE ENTRY LENGTH
  19225. VFD 12/2RAR,12/24D,12/MSCL,12/7777,12/1
  19226. VFD 12/2RMP,12/0,12/MSCL,12/777,12/0
  19227. VFD 12/2RJQ,12/36D,12/JSCL,12/12D,12/0
  19228. VFD 12/2RJS,12/24D,12/JSCL,12/7777,12/1
  19229.  
  19230. CON 0 END OF TABLE
  19231. MAI SPACE 4,10
  19232. *** MAINTENANCE.
  19233. *
  19234. * INITIATE ANY JOBS CURRENTLY IN THE INPUT QUEUE,
  19235. * INITIATE THE CORRECT SET OF MAINTENENACE JOBS FOR
  19236. * THIS MAINFRAME.
  19237.  
  19238.  
  19239. ENTRY MAI
  19240. RJM CCP CLEAR CHECKPOINT BITS
  19241. LDC /1DS/LOCK+/1DS/ITJF
  19242. JMP KAR CALL *1DS*
  19243. CCP SPACE 4,10
  19244. *** CCP - CLEAR CHECKPOINT BITS.
  19245. *
  19246. * EXIT CHECKPOINT BITS IN *EICB* CLEARED.
  19247. * TO *KIE* IF CHECKPOINT IN PROGRESS FLAG SET.
  19248. *
  19249. * USES CN - CN+4.
  19250. *
  19251. * CALLS FDP.
  19252.  
  19253.  
  19254. CCP SUBR ENTRY/EXIT
  19255. LDC INWL CHECK CHECKPOINT IN PROGRESS FLAG
  19256. CRD CN
  19257. LDD CN+4
  19258. LPN 20
  19259. ZJN CCP1 IF NO CHECKPOINT IN PROGRESS
  19260. JMP KIE *INCORRECT ENTRY*
  19261.  
  19262. CCP1 RJM FDP FETCH *EICB* POINTER
  19263. ZJN CCPX IF BLOCK NOT PRESENT
  19264. CRD CN
  19265. LDD CN
  19266. SCN 14
  19267. STD CN
  19268. RJM FDP UPDATE STATUS
  19269. CWD CN
  19270. UJN CCPX RETURN
  19271. SCH SPACE 4,10
  19272. *** SCHEDULE.
  19273. *
  19274. * ENABLE THE SCHEDULING OF JOBS IN THE INPUT QUEUE.
  19275.  
  19276.  
  19277. ENTRY SCH
  19278. RJM CCP CLEAR CHECKPOINT BITS
  19279. LDC /1DS/LOCK+/1DS/SCHF
  19280. JMP KAR CALL *1DS*
  19281. SPACE 4,10
  19282. CMDEND
  19283. COMMAND (SYSTEM MESSAGE REQUESTS.)
  19284. CJM SPACE 4,10
  19285. *** CHECK CFO JSN EQUAL *RDF* MESSAGE JSN AND PROCESS
  19286. * CFO COMMAND.
  19287. *
  19288. *
  19289. * CLEAR OPERATOR DISPLAY MESSAGE BUFFER IF JSN IN
  19290. * DISPLAY BUFFER IS EQUAL TO JSN IN CFO MESSAGE.
  19291.  
  19292.  
  19293. ENTRY CJM
  19294. LDC LDSP
  19295. CRD SR
  19296. LDD SR+2
  19297. SHN 14
  19298. LMD SR+3
  19299. SBN LODS
  19300. CRD CM
  19301. LDD CM+1
  19302. ZJP CJM3 IF NO MESSAGE
  19303. RJM ASN ASSEMBLE JSN
  19304. LDD MA SAVE JSN
  19305. CWD AB
  19306. CRD SP
  19307. AOD CA CHECK FOR MESSAGE
  19308. RJM ASN
  19309. LDD AB
  19310. NJN CJM1 IF A MESSAGE WAS ENTERED
  19311. JMP KIE *INCORRECT ENTRY*
  19312.  
  19313. CJM1 LDD SP+1 CHECK FOR THREE CHARACTER JSN
  19314. LPN 77
  19315. NJN CJM2 IF A FOURTH CHARACTER IS PRESENT
  19316. LDN 1R
  19317. RAD SP+1
  19318. CJM2 LDD CM+1 CHECK IF *CFO* JSN = *OPMSG* JSN
  19319. SBD SP+1
  19320. NJN CJM3 IF JSN NOT EQUAL
  19321. LDD CM
  19322. SBD SP
  19323. NJN CJM3 IF JSNS NOT EQUAL
  19324. LDN ZERL CLEAR OPERATOR MESSAGE BUFFER
  19325. CRD CM
  19326. LDN 1
  19327. STD CM
  19328. LDD SR+2
  19329. SHN 14
  19330. LMD SR+3
  19331. SBN LODS
  19332. CWD CM
  19333. LDN 1 CLEAR BIT IN *OPRL* WORD
  19334. STD CM+1
  19335. LDC OPRL
  19336. STD CM+4
  19337. LDD MA
  19338. CWM LOGC,ON
  19339. MONITOR UTEM
  19340. CJM3 LDN 0 SET FIELD LENGTH
  19341. STD AB+4
  19342. STD AB+3 SET OF SET
  19343. LDC /1DS/ISCF+/1DS/LOCK
  19344. JMP KAR CALL 1DS
  19345.  
  19346. LOG SPACE 4,10
  19347. *** LOG,NN.
  19348. *
  19349. *
  19350. * CLEAR OPERATOR MESSAGE IN LOW CORE WORD *OPRL* AND LOG
  19351. * IN ERROR LOG DAYFILE.
  19352.  
  19353.  
  19354. ENTRY LOG ENTRY
  19355. RJM ASD ASSEMBLE MESSAGE NUMBER
  19356. LDD AB
  19357. ADD AB+1
  19358. ADD AB+2
  19359. ADD AB+3
  19360. ZJN LOG2 IF VALUE .LE. 7777B
  19361. LOG1 JMP KIE *INCORRECT ENTRY*
  19362.  
  19363. LOG2 LDD AB+4
  19364. SBN 60D
  19365. PJN LOG1 IF BIT NUMBER .GT. 59D
  19366. LDD AB+4 SET BIT NUMBER IN REQUEST
  19367. SHN 6
  19368. STM LOGB+1
  19369. STM LOGC+1
  19370. LDN ZERL
  19371. CRD CM
  19372. LDN 2 SET NUMBER OF REQUESTS
  19373. STD CM+1
  19374. STD T7
  19375. LDC OPRL SET WORD ADDRESS
  19376. STD CM+4
  19377. LDD MA
  19378. CWM LOGB,T7
  19379. MONITOR UTEM
  19380. LDD CM+1
  19381. NJN LOG1 IF OPERATION NOT COMPLETE
  19382. LDD AB+4
  19383. SBN ELAE-1
  19384. ZJN LOG4 IF *ERRLOG ALERT*
  19385. LOG3 JMP KBR RETURN
  19386.  
  19387. LOG4 LDK ESTP INITIALIZE FOR EST SEARCH
  19388. CRD AB
  19389. LOG5 SOD AB+3 DECREMENT EST ORDINAL
  19390. ZJN LOG3 IF END OF MASS STORAGE DEVICES
  19391. SFA EST READ EST ENTRY
  19392. ADK EQDE
  19393. CRD SH
  19394. LDD SH
  19395. SHN 21-13
  19396. PJN LOG5 IF NOT MASS STORAGE DEVICE
  19397. LDD SH+4 SET MST ADDRESS
  19398. SHN 3
  19399. STD CM+4
  19400. SHN -14
  19401. STD CM+3
  19402. LDN 2 SET NUMBER OF REQUESTS
  19403. STD CM+1
  19404. LDD MA
  19405. CWM LOGD,T7
  19406. MONITOR UTEM CLEAR UNRECOVERED ERROR COUNT
  19407. LDD SH+4 SET MST ADDRESS
  19408. SHN 3
  19409. STD CM+4
  19410. SHN -14
  19411. STD CM+3
  19412. LDN 2 SET NUMBER OF REQUESTS
  19413. STD CM+1
  19414. LDD MA
  19415. CWM LOGE,T7
  19416. MONITOR UTEM CLEAR RECOVERED ERROR COUNT
  19417. LJM LOG5 PROCESS NEXT EST ENTRY
  19418.  
  19419.  
  19420. * *UTEM* PARAMETER WORDS.
  19421.  
  19422. LOGB VFD 1/1,5/0,6/1,6/0,42/1 VERIFY BIT IS CURRENTLY SET
  19423. LOGC VFD 1/0,5/0,6/1,6/59D,42/0 CLEAR BIT
  19424. LOGD VFD 1/1,5/CTLL,6/1,6/11D,42/1 VERIFY PROCESSED BIT SET
  19425. VFD 1/0,5/CTLL,6/12D,6/0,42/0 CLEAR ERROR COUNT
  19426. LOGE VFD 1/1,5/CTLL,6/1,6/23D,42/1 VERIFY PROCESSED BIT SET
  19427. VFD 1/0,5/CTLL,6/12D,6/12D,42/0 CLEAR ERROR COUNT
  19428. SPACE 4,10
  19429. CMDEND
  19430. COMMAND (ENABLE SYNTAX TABLE - CHARACTERS A - P.),CMR
  19431. EAP SPACE 4,10
  19432. ** ENABLE SYNTAX TABLE - CHARACTERS A - P.
  19433.  
  19434. * NOTE - CHECK THE SYSTEM SYNTAX TABLE ENTRY FOR *ENABLE,A-P*
  19435. * IF ANY NEW *ENABLE* COMMANDS ARE ADDED TO THIS TABLE.
  19436.  
  19437.  
  19438. ENTRY EAP
  19439.  
  19440. EAC ENTER (ENABLE,ACS TAPE PF STAGING.),,SDF
  19441.  
  19442. EAR ENTER (ENABLE,AUTORESTART.),,SDF
  19443.  
  19444. ECS ENTER (ENABLE,CARTRIDGE PF STAGING.),,SDF
  19445.  
  19446. EDP ENTER (ENABLE,DDP ROLLOUT PATH.),,SDF
  19447.  
  19448. ENG ENTER (ENABLE,ENGR.),SLOCK,SDF,ERL
  19449.  
  19450. EFP ENTER (ENABLE,FLEXIBLE PARTITIONS.),,SDF
  19451.  
  19452. EFF ENTER (ENABLE,FORCED FORMATTING.),LOCK,SDF
  19453.  
  19454. EAL ENTER (ENABLE,LOGGING.),,SDF
  19455.  
  19456. EMA ENTER (ENABLE,MASTER MSE.),,SDF
  19457.  
  19458. EMM ENTER (ENABLE,MASTER MSS.),,SDF
  19459.  
  19460. EMV ENTER (ENABLE,MS VALIDATION.),,SDF
  19461.  
  19462. EPF ENTER (ENABLE,PF VALIDATION.),,SDF
  19463.  
  19464. EPA ENTER (ENABLE,PRIVILEGED ANALYST MODE.),LOCK,SDF
  19465.  
  19466. EPR ENTER (ENABLE,PRIVILEGED RDF.),,SDF
  19467.  
  19468. CON 0 END OF TABLE
  19469. SPACE 4,10
  19470. CMDEND
  19471. COMMAND (ENABLE SYNTAX TABLE - CHARACTERS Q - Z.),CMR
  19472. EQZ SPACE 4,10
  19473. ** ENABLE SYNTAX TABLE - CHARACTERS Q - Z.
  19474.  
  19475.  
  19476. ENTRY EQZ
  19477.  
  19478. ERP ENTER (ENABLE,REMOVABLE PACKS.),,SDF
  19479.  
  19480. ERR ENTER (ENABLE,RESIDENT RDF.),,SDF
  19481.  
  19482. ESU ENTER (ENABLE,SECONDARY USER COMMANDS.),LOCK,SDF
  19483.  
  19484. ESD ENTER (ENABLE,SPINDOWN.),,SDF
  19485.  
  19486. ESY ENTER (ENABLE,SYSTEM DEBUG.),LOCK,SDF,ERL
  19487.  
  19488. ETS ENTER (ENABLE,TAPE PF STAGING.),,SDF
  19489.  
  19490. EUE ENTER (ENABLE,USER EXTENDED MEMORY.),,SDF
  19491.  
  19492. CON 0 END OF TABLE
  19493. SPACE 4,10
  19494. CMDEND
  19495. COMMAND (DISABLE SYNTAX TABLE - CHARACTERS A - P.),CMR
  19496. DAP SPACE 4,10
  19497. ** DISABLE SYNTAX TABLE - CHARACTERS A - P.
  19498.  
  19499.  
  19500. ENTRY DAP
  19501.  
  19502. EAC ENTER (DISABLE,ACS TAPE PF STAGING.),,SDF
  19503.  
  19504. EAR ENTER (DISABLE,AUTORESTART.),,SDF
  19505.  
  19506. ECS ENTER (DISABLE,CARTRIDGE PF STAGING.),,SDF
  19507.  
  19508. EDP ENTER (DISABLE,DDP ROLLOUT PATH.),,SDF
  19509.  
  19510. ENG ENTER (DISABLE,ENGR.),LOCK,SDF,ERL
  19511.  
  19512. EFP ENTER (DISABLE,FLEXIBLE PARTITIONS.),,SDF
  19513.  
  19514. EFF ENTER (DISABLE,FORCED FORMATTING.),LOCK,SDF
  19515.  
  19516. EAL ENTER (DISABLE,LOGGING.),,SDF
  19517.  
  19518. EMA ENTER (DISABLE,MASTER MSE.),,SDF
  19519.  
  19520. EMM ENTER (DISABLE,MASTER MSS.),,SDF
  19521.  
  19522. EMV ENTER (DISABLE,MS VALIDATION.),,SDF
  19523.  
  19524. EPF ENTER (DISABLE,PF VALIDATION.),,SDF
  19525.  
  19526. EPA ENTER (DISABLE,PRIVILEGED ANALYST MODE.),LOCK,SDF
  19527.  
  19528. EPR ENTER (DISABLE,PRIVILEGED RDF.),,SDF
  19529.  
  19530. CON 0 END OF TABLE
  19531. SPACE 4,10
  19532. CMDEND
  19533. COMMAND (DISABLE SYNTAX TABLE - CHARACTERS Q - Z.),CMR
  19534. DQZ SPACE 4,10
  19535. ** DISABLE SYNTAX TABLE - CHARACTERS Q - Z.
  19536.  
  19537.  
  19538. ENTRY DQZ
  19539.  
  19540. ERP ENTER (DISABLE,REMOVABLE PACKS.),,SDF
  19541.  
  19542. ERR ENTER (DISABLE,RESIDENT RDF.),,SDF
  19543.  
  19544. ESU ENTER (DISABLE,SECONDARY USER COMMANDS.),LOCK,SDF
  19545.  
  19546. ESD ENTER (DISABLE,SPINDOWN.),,SDF
  19547.  
  19548. ESY ENTER (DISABLE,SYSTEM DEBUG.),LOCK,SDF,ERL
  19549.  
  19550. ETS ENTER (DISABLE,TAPE PF STAGING.),,SDF
  19551.  
  19552. EUE ENTER (DISABLE,USER EXTENDED MEMORY.),,SDF
  19553.  
  19554. CON 0 END OF TABLE
  19555. SPACE 4,10
  19556. CMDEND
  19557. COMMAND (ENABLE/DISABLE SYSTEM ATTRIBUTE REQUESTS.)
  19558. ESB SPACE 4,10
  19559. ** ESB - ENTER STATUS BIT.
  19560. *
  19561. * ENTRY (A) = 6/BYTE,12/BITS.
  19562. * WHERE BYTE = BYTE NUMBER IN *SSTL*.
  19563. * BITS = BIT TO CHANGE.
  19564. *
  19565. *
  19566. * USES T1, T2, CM - CM+4, CN - CN+4.
  19567. *
  19568. * CALLS FDP.
  19569.  
  19570.  
  19571. ESB STD T2 SET BIT
  19572. SHN -14 SET BYTE
  19573. ADN CM
  19574. STD T1
  19575. LCN 0 SET MASK
  19576. LMD T2
  19577. STM ESBA
  19578. LDM KBUF CHECK LEADING CHARACTER
  19579. LMN 1RE
  19580. NJN ESB1 IF NOT *E*
  19581. STD T2 CLEAR BITS
  19582. ESB1 LDN SSTL READ STATUS WORD
  19583. CRD CM
  19584. LDI T1 MASK BYTE
  19585. LPC *
  19586. ESBA EQU *-1
  19587. LMD T2
  19588. STI T1
  19589. LDN SSTL STORE STATUS WORD
  19590. CWD CM
  19591. LDD CM+3 SAVE ENGINEERING STATUS
  19592. STD T1
  19593. RJM FDP
  19594. ZJN ESB3 IF NO *EICB*
  19595. CRD CN
  19596. LDD CN UPDATE ENGINEERING STATUS
  19597. LPC 5777
  19598. STD CN
  19599. LDD T1
  19600. SHN 21-2
  19601. MJN ESB2 IF *ENGR* DISABLED
  19602. LDC 2000
  19603. RAD CN
  19604. ESB2 RJM FDP
  19605. CWD CN
  19606. ESB3 JMP KBR RETURN
  19607. EAC SPACE 4,10
  19608. *** ENABLE,ACS TAPE PF STAGING.
  19609. * DISABLE,ACS TAPE PF STAGING.
  19610. *
  19611. * ENABLE/DISABLE STAGING OF PERMANENT FILES FROM ACS TAPE.
  19612.  
  19613.  
  19614. ENTRY EAC
  19615. LDC 11000
  19616. JMP ESB ENTER STATUS BIT
  19617. EAR SPACE 4,10
  19618. *** ENABLE,AUTORESTART.
  19619. * DISABLE,AUTORESTART.
  19620. *
  19621. * ENABLE/DISABLE AUTORESTART.
  19622.  
  19623.  
  19624. ENTRY EAR ENTRY
  19625. LDC 4000
  19626. JMP ESB ENTER STATUS BIT
  19627. ECS SPACE 4,10
  19628. *** ENABLE,CARTRIDGE PF STAGING.
  19629. * DISABLE,CARTRIDGE PF STAGING.
  19630. *
  19631. * ENABLE/DISABLE STAGING OF *MSS*/*MSE* RESIDENT PFS.
  19632.  
  19633.  
  19634. ENTRY ECS
  19635. LDC 100
  19636. JMP ESB ENTER STATUS BIT
  19637. EDP SPACE 4,10
  19638. *** ENABLE,DDP ROLLOUT PATH.
  19639. * DISABLE,DDP ROLLOUT PATH.
  19640. *
  19641. * ENABLE/DISABLE DDP ROLLOUT PATH.
  19642.  
  19643.  
  19644. ENTRY EDP ENTRY
  19645. LDC 31000
  19646. JMP ESB ENTER STATUS BIT
  19647. ENG SPACE 4,10
  19648. *** ENABLE,ENGR.
  19649. * DISABLE,ENGR.
  19650. *
  19651. * ENABLE/DISABLE ENGINEERING MODE.
  19652.  
  19653.  
  19654. ENTRY ENG ENTRY
  19655. LDC 30004
  19656. JMP ESB ENTER STATUS BIT
  19657. EFP SPACE 4,10
  19658. *** ENABLE,FLEXIBLE PARTITIONS.
  19659. * DISABLE,FLEXIBLE PARTITIONS.
  19660. *
  19661. * ENABLE/DISABLE VIOLATION OF MEMORY USAGE SERVICE CLASS
  19662. * CONSTRAINTS IN THE JOB SCHEDULER.
  19663.  
  19664.  
  19665. ENTRY EFP
  19666. LDC 32000
  19667. JMP ESB ENTER STATUS BIT
  19668. EFF SPACE 4,10
  19669. *** ENABLE,FORCED FORMATTING.
  19670. * DISABLE,FORCED FORMATTING.
  19671. *
  19672. * ENABLE/DISABLE FORCED FORMATTING OF 583X DEVICES.
  19673.  
  19674.  
  19675. ENTRY EFF
  19676. LDC 12000
  19677. JMP ESB ENTER STATUS BIT
  19678. EAL SPACE 4,10
  19679. *** ENABLE,LOGGING.
  19680. * DISABLE,LOGGING.
  19681. *
  19682. * ENABLE/DISABLE LOGGING OF ANALYST DAYFILE MESSAGES.
  19683.  
  19684.  
  19685. ENTRY EAL
  19686. LDC 30020
  19687. JMP ESB ENTER STATUS BIT
  19688. EMA SPACE 4,10
  19689. *** ENABLE,MASTER MSE.
  19690. * DISABLE,MASTER MSE.
  19691. *
  19692. * ENABLE/DISABLE *MSE* EXECUTIVE MASTER MODE.
  19693.  
  19694.  
  19695. ENTRY EMA
  19696. LDN 2
  19697. JMP ESB ENTER STATUS BIT
  19698. EMM SPACE 4,10
  19699. *** ENABLE,MASTER MSS.
  19700. * DISABLE,MASTER MSS.
  19701. *
  19702. * ENABLE/DISABLE *MSSEXEC* MASTER MODE.
  19703.  
  19704.  
  19705. ENTRY EMM
  19706. LDC 200
  19707. JMP ESB ENTER STATUS BIT
  19708. EMV SPACE 4,10
  19709. *** ENABLE,MS VALIDATION.
  19710. * DISABLE,MS VALIDATION.
  19711. *
  19712. * ENABLE/DISABLE MS VALIDATION.
  19713.  
  19714.  
  19715. ENTRY EMV
  19716. LDN SSTL CHECK SYSTEM STATUS
  19717. CRD CM
  19718. LDD CM
  19719. LPN 4
  19720. ZJN EMV1 IF ALREADY PROCESSING ENABLE MS VALIDATION
  19721. JMP KIE *INCORRECT ENTRY*
  19722.  
  19723. EMV1 LDN 10
  19724. JMP ESB
  19725. EPA SPACE 4,10
  19726. *** ENABLE,PRIVILEGED ANALYST MODE.
  19727. * DISABLE,PRIVILEGED ANALYST MODE.
  19728. *
  19729. * ENABLE/DISABLE PRIVILEGED ANALYST MODE.
  19730.  
  19731.  
  19732. ENTRY EPA
  19733. LDD SF
  19734. NJN EPA1 IF SECURED SYSTEM
  19735. LDC 30100
  19736. JMP ESB ENTER STATUS BIT
  19737.  
  19738. EPA1 JMP KIE INCORRECT ENTRY
  19739. EPF SPACE 4,10
  19740. *** ENABLE,PF VALIDATION.
  19741. * DISABLE,PF VALIDATION.
  19742. *
  19743. * ENABLE/DISABLE PRESERVED FILE VALIDATION.
  19744.  
  19745.  
  19746. ENTRY EPF
  19747. LDN 20
  19748. JMP ESB ENTER STATUS BIT
  19749. EPR SPACE 4,10
  19750. *** ENABLE,PRIVILEGED RDF.
  19751. * DISABLE,PRIVILEGED RDF.
  19752. *
  19753. * ENABLE/DISABLE PRIVILEGED RDF ALLOWS CPM
  19754. * TO SET THE *SHELL* PROGRAM CONTROLS.
  19755.  
  19756.  
  19757. ENTRY EPR
  19758. LDC 30200
  19759. JMP ESB ENTER STATUS
  19760. ERP SPACE 4,10
  19761. *** ENABLE,REMOVABLE PACKS.
  19762. * DISABLE,REMOVABLE PACKS.
  19763. *
  19764. * ENABLE/DISABLE LABEL CHECKING FOR REMOVABLE DEVICES.
  19765.  
  19766.  
  19767. ENTRY ERP
  19768. LDC 10100
  19769. JMP ESB ENTER STATUS BIT
  19770. ERR SPACE 4,10
  19771. *** ENABLE,RESIDENT RDF.
  19772. * DISABLE,RESIDENT RDF.
  19773. *
  19774. * ENABLE/DISABLE RESIDENT RDF WILL CONTROL
  19775. * HOW LONG THE SUBSYSTEM WILL STAY ACTIVE
  19776. * WAITING FOR A USER TO LOGIN.
  19777.  
  19778.  
  19779. ENTRY ERR
  19780. LDC 30400
  19781. JMP ESB ENTER STATUS
  19782. ESU SPACE 4,10
  19783. *** ENABLE,SECONDARY USER CARDS.
  19784. * DISABLE,SECONDARY USER CARDS.
  19785. *
  19786. * ENABLE/DISABLE ALLOWING SECONDARY USER STATEMENTS.
  19787.  
  19788.  
  19789. ENTRY ESU
  19790. LDD SF
  19791. NJN ESU1 IF SECURE SYSTEM
  19792. LDC 10020
  19793. JMP ESB ENTER STATUS BIT
  19794.  
  19795. ESU1 JMP KIE INCORRECT ENTRY
  19796. ESD SPACE 4,10
  19797. *** ENABLE,SPINDOWN.
  19798. * DISABLE,SPINDOWN.
  19799. *
  19800. * ENABLE/DISABLE SPINDOWN OF ISMD DRIVES AFTER A
  19801. * *CHECKPOINT,SYSTEM* COMMAND IS ENTERED BY THE OPERATOR.
  19802.  
  19803.  
  19804. ENTRY ESD ENTRY
  19805. LDN 1
  19806. JMP ESB ENTER STATUS BIT
  19807. ESY SPACE 4,10
  19808. *** ENABLE,SYSTEM DEBUG.
  19809. * DISABLE,SYSTEM DEBUG.
  19810. *
  19811. * ENABLE/DISABLE SYSTEM DEBUG WILL CONTROL WHETHER *CHGM*
  19812. * WILL HALT THE ISSUING PP OR ALLOW IT TO CONTINUE.
  19813.  
  19814.  
  19815. ENTRY ESY ENTRY
  19816. LDC 30002
  19817. JMP ESB ENTER STATUS BIT
  19818. ETS SPACE 4,10
  19819. *** ENABLE,TAPE PF STAGING.
  19820. * DISABLE,TAPE PF STAGING.
  19821. *
  19822. * ENABLE/DISABLE STAGING OF PERMANENT FILES FROM NON-ACS TAPE.
  19823.  
  19824.  
  19825. ENTRY ETS
  19826. LDC 10200
  19827. JMP ESB ENTER STATUS BIT
  19828. EUE SPACE 4,10
  19829. *** ENABLE,USER ECS.
  19830. * DISABLE,USER ECS.
  19831. *
  19832. * ENABLE/DISABLE USER ECS.
  19833.  
  19834.  
  19835. ENTRY EUE
  19836. LDN 40
  19837. JMP ESB ENTER STATUS BIT
  19838. SPACE 4,10
  19839. CMDEND
  19840. COMMAND (JOB CONTROL REQUESTS - DEVICES.)
  19841. AJF SPACE 4,10
  19842. *** MSAL,Z=N1,N2....
  19843. *
  19844. * WHERE Z = S FOR SECONDARY ROLLOUT FILES.
  19845. * B FOR LGO FILES.
  19846. * L FOR LOCAL FILES.
  19847. * P FOR PRIMARY FILES.
  19848. * D FOR DAYFILE FILES.
  19849. * R FOR ROLLOUT FILES.
  19850. * O FOR OUTPUT FILES.
  19851. * I FOR INPUT FILES.
  19852. * T FOR TEMP FILES.
  19853. * AND N1,N2... IS A LIST OF EQUIPMENTS ON WHICH
  19854. * TO TOGGLE THE FILE TYPE SPECIFIED.
  19855.  
  19856.  
  19857. AJF4 JMP KIE *INCORRECT ENTRY*
  19858.  
  19859. ENTRY AJF
  19860. LDN MXRS SET INDEX FOR TABLE SEARCH
  19861. STD T6
  19862. AJF1 SOD T6 UPDATE INDEX
  19863. LDM AJFB,T6 GET TABLE ENTRY
  19864. LMM KBUF+5 COMPARE TO KEYBOARD ENTRY
  19865. NJN AJF1 IF NO MATCH
  19866. LDC KBUF+6 SET KEYBOARD INDEX
  19867. AJF2 STD CA
  19868. LDD T6 SET BIT TO SET
  19869. ADD TH SHNI
  19870. STM AJFA
  19871. AJF3 AOD CA UPDATE KEYBOARD INDEX
  19872. RJM ASD ASSEMBLE NEXT EST ORDINAL
  19873. LDD AB+4 CHECK FOR VALID *MSAL* EQUIPMENT
  19874. STD T4
  19875. SBN 47D+1
  19876. PJN AJF4 IF INCORRECT REQUEST
  19877. AJF3.1 SFA EST,AB+4
  19878. ADK EQDE
  19879. CRD CM READ EST ENTRY
  19880. LDD CM
  19881. SHN -6
  19882. LPN 44
  19883. LMN 40
  19884. NJP AJF4 IF NOT MASS STORAGE AND NON-REMOVABLE
  19885. LDD CM SAVE BYTE ZERO OF THE EST ENTRY
  19886. STD T3
  19887. LDD CM+4 GET MST ADDRESS
  19888. SHN 3
  19889. ADN DILL READ MST WORD DILL
  19890. CRD SR
  19891. LDN 1
  19892. AJFA SHN ** SHIFT TO CORRECT BIT
  19893. LMD SR TOGGLE SELECTED FILE TYPE BIT
  19894. STD SR
  19895. LDD CM+4
  19896. SHN 3
  19897. ADN DILL
  19898. CWD SR
  19899. RJM TMB TOGGLE *MSAL* BIT
  19900. LDD T6
  19901. LMK TMPS
  19902. NJN AFJ3.2 IF NOT TEMP SELECTION
  19903. LDD T3
  19904. SHN 21-11
  19905. MJN AFJ3.3 IF SHARED DEVICE
  19906. LDN TNDS SET TEMP-NONSHARED
  19907. STD T6
  19908. ERRNZ TMPS CODE DEPENDS ON VALUE
  19909. RAM AJFA
  19910. LDD T4
  19911. STD AB+4
  19912. LJM AJF3.1 LOOP TO PROCESS TEMP-NONSHARED
  19913.  
  19914. AFJ3.2 LMN TNDS&TMPS
  19915. NJN AFJ3.3 IF NOT TEMP-NONSHARED SELECTION
  19916. * LDN TMPS RESET TO TEMP
  19917. ERRNZ TMPS CODE DEPENDS ON VALUE
  19918. STD T6
  19919. LCN TNDS RESET SHIFT COUNT
  19920. RAM AJFA
  19921. AFJ3.3 LDI CA GET SEPARATOR CHARACTER
  19922. LMN 1R,
  19923. ZJP AJF3 IF COMMA
  19924. JMP KBR NORMAL KEYBOARD RETURN
  19925.  
  19926.  
  19927. AJFB BSS 0
  19928. LOC 0
  19929. TMPS CON 1RT TEMP FILES
  19930. INPS CON 1RI INPUT FILES
  19931. OUTS CON 1RO OUTPUT FILES
  19932. ROLS CON 1RR ROLLOUT FILES
  19933. UDFS CON 1RD DAYFILES
  19934. PRIS CON 1RP PRIMARY FILES
  19935. LCLS CON 1RL LOCAL FILES
  19936. LGOS CON 1RB LGO FILES
  19937. SRSS CON 1RS SECONDARY ROLLOUT FILES
  19938. LOC *O
  19939. TMB SPACE 4,10
  19940. ** TMB - TOGGLE *MSAL* BITS.
  19941. *
  19942. * ENTRY (T6) = ALLOCATION INDEX.
  19943. * (AB+4) = EST ORDINAL.
  19944. *
  19945. * USES T0, AB - AB+4, CM - CM+4.
  19946.  
  19947.  
  19948. TMB SUBR ENTRY/EXIT
  19949. LDN AB SET BYTE POINTER
  19950. STD T0
  19951. TMB1 AOD T0
  19952. LCN 12D DIVIDE BY 12
  19953. RAD AB+4
  19954. PJN TMB1 IF NOT END OF DIVISION
  19955. LMC 777777-SHNI
  19956. SBN 1
  19957. STM TMBA
  19958. LDC MSAP READ ALLOCATION AREA ADDRESS
  19959. CRD CM
  19960. LDD CM
  19961. SHN 14
  19962. ADD CM+1
  19963. ADD T6
  19964. CRD AB
  19965. LDN 1 TOGGLE BIT
  19966. TMBA SHN **
  19967. LMI T0
  19968. STI T0
  19969. LDD CM WRITE ALLOCATION WORD
  19970. SHN 14
  19971. ADD CM+1
  19972. ADD T6
  19973. CWD AB
  19974. CWD AB INSURE *CPUMTR* *RTCM* DOES NOT OVERWRITE
  19975. LJM TMBX RETURN
  19976. CPTT SPACE 4,10
  19977. *** CPTT=NNNN.
  19978. *
  19979. * SET CPU TRANSFER THRESHOLD FOR INDIRECT FILES.
  19980.  
  19981.  
  19982. ENTRY CTT
  19983. RJM ASD ASSEMBLE DIGITS
  19984. LDD AB DETERMINE IF VALUE .LE. 7777B
  19985. ADD AB+1
  19986. ADD AB+2
  19987. ADD AB+3
  19988. ZJN CPT1 IF THRESHOLD .LE. 7777B
  19989. JMP KIE *INCORRECT ENTRY*
  19990.  
  19991. CPT1 LDK PFNL PERMANENT FILE PARAMETER WORD
  19992. CRD CM
  19993. LDD AB+4 *CPTT* VALUE
  19994. STD CM+4
  19995. LDK PFNL
  19996. CWD CM
  19997. JMP KBR RETURN
  19998. SET SPACE 4,10
  19999. *** SET,ABCD.
  20000. *
  20001. * SET LEFT SCREEN TABLE TO DISPLAYS A, B, C, AND D.
  20002. * THE DISPLAYS CAN THEN BE TOGGLED USING THE *RIGHT
  20003. * BLANK* KEY.
  20004.  
  20005.  
  20006. ENTRY SET
  20007. LDN 0 INITIALIZE INDEX
  20008. STD T1
  20009. SET1 LDM KBUF+4,T1 CHECK CHARACTER
  20010. LMN 1R.
  20011. ZJN SET2 IF *.*
  20012. LMN 1R. ENTER CHARACTER
  20013. STM TLSD,T1
  20014. AOD T1 ADVANCE INDEX
  20015. UJN SET1 LOOP
  20016.  
  20017. SET2 JMP KBR RETURN
  20018. TMP SPACE 4,10
  20019. *** TEMP=N1,N2....
  20020. *
  20021. * WHERE N1,N2.... IS A LIST OF EQUIPMENTS ON WHICH
  20022. * TO TOGGLE THE TEMPORARY FILE TYPE.
  20023.  
  20024.  
  20025. ENTRY TMP
  20026. LDN TMPS GET BIT POSITION FOR TEMP
  20027. STD T6
  20028. LDC KBUF+4 SET KEYBOARD INDEX
  20029. LJM AJF2 PROCESS *TEMP* COMMAND
  20030. SRS SPACE 4,10
  20031. *** SRST=NNNN.
  20032. *
  20033. * SET SECONDARY ROLLOUT SECTOR THRESHOLD TO NNNN SECTORS.
  20034.  
  20035.  
  20036. ENTRY SRS
  20037. LDC KBUF+5 SET KEYBOARD INDEX
  20038. STD CA
  20039. RJM ASD ASSEMBLE DIGITS
  20040. LDD AB DETERMINE IF VALUE .LE. 7777B
  20041. ADD AB+1
  20042. ADD AB+2
  20043. ADD AB+3
  20044. ZJN SRS1 IF THRESHOLD .LE. 7777B
  20045. JMP KIE *INCORRECT ENTRY*
  20046.  
  20047. SRS1 LDN IPRL INSTALLATION PARAMETER WORD
  20048. CRD CM
  20049. LDD AB+4 *SRST* VALUE
  20050. STD CM+1
  20051. LDN IPRL
  20052. CWD CM
  20053. JMP KBR RETURN
  20054. SPACE 4,10
  20055. CMDEND
  20056. COMMAND (JOB CONTROL REQUESTS - QUEUE/SERVICE.)
  20057. QUE SPACE 4,10
  20058. *** QUEUE,SC,OT,ILXXXX,IPXXXX,LPXXXX,UPXXXX,WFXXXX.
  20059. *
  20060. * SET QUEUE PARAMETERS FOR QUEUE *QT* OF SERVICE
  20061. * CLASS *SC*.
  20062. *
  20063. * WHERE -
  20064. * QT = QUEUE TYPE.
  20065. * IN = INPUT.
  20066. * EX = EXECUTING.
  20067. * OT = OUTPUT.
  20068. *
  20069. * ILXXXX = LOWER BOUND PRIORITY USED FOR INITIAL
  20070. * SLICE OF JOB (ONLY FOR EXECUTING JOBS).
  20071. * IPXXXX = INITIAL SCHEDULING PRIORITY (ONLY FOR
  20072. * EXECUTING JOBS).
  20073. * LPXXXX = LOWEST PRIORITY AT WHICH A FILE OR JOB
  20074. * CAN ENTER THE SPECIFIED QUEUE.
  20075. * UPXXXX = UPPER PRIORITY A JOB OR QUEUE FILE
  20076. * CAN REACH IN THE SPECIFIED QUEUE.
  20077. * WFXXXX = WEIGHTING FACTOR FOR QUEUE PRIORITY
  20078. * CALCULATION (WF IS A POWER OF 2, RANGING
  20079. * FROM 0 TO 40000).
  20080.  
  20081.  
  20082. ENTRY QUE
  20083. LDM 2,CA CHECK SEPARATORS
  20084. LMN 1R,
  20085. NJN QUE1 IF NOT *,*
  20086. LDM 5,CA
  20087. LMN 1R,
  20088. ZJN QUE2 IF *,* PRESENT
  20089. QUE1 JMP KIE *INCORRECT ENTRY*
  20090.  
  20091. QUE2 LDC TNSC SEARCH FOR SERVICE CLASS
  20092. RJM SPT
  20093. STD T6 SET SERVICE CLASS
  20094. LDN 3 SKIP SERVICE CLASS
  20095. RAD CA
  20096. LDC TQUT SEARCH FOR QUEUE TYPE
  20097. RJM SPT
  20098. STD T7 SAVE QUEUE TYPE
  20099. STD SP
  20100. LDD T6 GET JOB CONTROL AREA FWA FOR SERVICE CLASS
  20101. RJM RJC
  20102. ZJN QUE1 IF NO JCB FOR SPECIFIED SERVICE CLASS
  20103. RAD T7 SET WORD ADDRESS
  20104. CRD CM
  20105. SHN -14
  20106. STD T6
  20107. LDN 2 SKIP QUEUE TYPE
  20108. RAD CA
  20109. LDN 1 INDICATE NOT END OF PARAMETERS
  20110. STD T5
  20111. QUE3 AOD CA SKIP SEPARATOR
  20112. LDC TQPN SEARCH PARAMETER TABLE
  20113. RJM SPT
  20114. ADN CM SET BYTE ADDRESS
  20115. STD T4
  20116. LDN 2 SKIP PARAMETER NAME
  20117. RAD CA
  20118. RJM AOD CONVERT DIGITS
  20119. STI T4
  20120. LJM QUEA-CM,T4 CHECK PARAMETER
  20121.  
  20122. QUEA UJN QUE4 ILXXXX
  20123. UJN QUE8 LPXXXX
  20124. UJN QUE8 UPXXXX
  20125. UJN QUE6 WFXXXX
  20126. UJN QUE4 IPXXXX
  20127.  
  20128. QUE4 LDD SP CHECK QUEUE TYPE
  20129. LMN TQUTA-TQUT
  20130. ZJN QUE8 IF EXECUTING JOB
  20131. QUE5 JMP KIE *INCORRECT ENTRY*
  20132.  
  20133. QUE6 ZJN QUE5 IF NULL WEIGHTING FACTOR
  20134. SBK MXWF+1
  20135. PJN QUE5 IF WEIGHTING FACTOR TOO LARGE
  20136. LCN 0
  20137. STI T4
  20138. QUE7 AOI T4 ADVANCE SHIFT COUNT
  20139. LDD AB+4
  20140. SHN 21
  20141. STD AB+4
  20142. PJN QUE7 IF BIT NOT SET
  20143. LDD AB+4
  20144. NJN QUE5 IF WEIGHTING FACTOR NOT POWER OF 2
  20145. QUE8 LDD T5
  20146. ZJN QUE9 IF END OF PARAMETERS
  20147. LJM QUE3 LOOP
  20148.  
  20149. QUE9 LDD CM+1 CHECK AGING PARAMETERS
  20150. SBD CM+2
  20151. PJN QUE5 IF LOWER BOUND .GE. UPPER BOUND
  20152. LDD T6 STORE QUEUE CONTROL
  20153. SHN 14
  20154. ADD T7
  20155. CWD CM
  20156. JMP KBR RETURN
  20157. TNSC SPACE 4,10
  20158. ** TNSC - TABLE OF TWO-CHARACTER SERVICE CLASS TYPES.
  20159.  
  20160.  
  20161. LIST D,G
  20162. TNSC DATA H+"NMSC"+
  20163. LIST *
  20164. CON 0 END OF TABLE
  20165. SER SPACE 4,25
  20166. *** SERVICE,SC,P1XXXX,P2XXXX,...,PNXXXX.
  20167. *
  20168. * SET SERVICE LIMITS FOR JOB SERVICE CLASS *SC*.
  20169. *
  20170. * CT CONTROL POINT TIME SLICE (SECONDS).
  20171. * CM CM TIME SLICE (SECONDS).
  20172. * NJ MAXIMUM NUMBER OF JOBS.
  20173. * TD TIMEOUT DELAY.
  20174. * CP CONTROL POINT TIME SLICE PRIORITY.
  20175. * TP BASE PRIORITY FOR SCHEDULABLE ON-LINE
  20176. * INTERACTIVE JOBS.
  20177. * FL MAXIMUM FL/100B OF ANY JOB.
  20178. * AM MAXIMUM FL/100B FOR ALL JOBS.
  20179. * EC MAXIMUM FLE/1000B OF ANY JOB.
  20180. * EM MAXIMUM FLE/1000B FOR ALL JOBS.
  20181. * DT SERVICE CLASS TO ASSIGN TO JOB ON A DETACH.
  20182. * PR CPU PRIORITY.
  20183. * IT SYSTEM I/O CPU THRESHOLD.
  20184. * SE CPU SLICE EXTENSION.
  20185. * RS RECALL CPU SLICE.
  20186. * US UNEXTENDED CPU SLICE.
  20187. *
  20188. * THE FOLLOWING ARE INDICES INTO TABLES OF LIMIT VALUES
  20189. * DEFINED IN *COMSPFM*.
  20190. * FC NUMBER OF FILES IN CATALOG (0-7).
  20191. * CS CUMULATIVE SIZE OF INDIRECT ACCESS FILES (0-7).
  20192. * FS INDIVIDUAL SIZE OF INDIRECT ACCESS FILES (0-7).
  20193. * DS INDIVIDUAL SIZE OF INDIRECT ACCESS FILES (0-7).
  20194.  
  20195.  
  20196. ENTRY SER
  20197. LDM 2,CA CHECK SEPARATOR
  20198. LMN 1R,
  20199. ZJN SER2 IF *,*
  20200. SER1 JMP KIE *INCORRECT ENTRY*
  20201.  
  20202. SER2 LDC TNSC SEARCH FOR SERVICE CLASS
  20203. RJM SPT
  20204. STD AB+3 SET SERVICE CLASS FOR *1DS*
  20205. SBN MXJC
  20206. PJN SER1 IF NO JCB FOR SPECIFIED SERVICE CLASS
  20207. LDD CA SAVE BUFFER POINTER FOR RETRY
  20208. SBK KBUF
  20209. STD AB+4
  20210. LDC /1DS/SERF+/1DS/LOCK SET FUNCTION CODE
  20211. RJM C1D PROCESS FUNCTION
  20212. LDC SER3 SET REENTRY ADDRESS
  20213. STM /KEYBOARD/KCRB
  20214. SER3 LDC /1DS/DSDL
  20215. CRD CM
  20216. LDD CM
  20217. ZJN SER4 IF PROCESSING COMPLETE
  20218. LJM CLP1 RETRY
  20219.  
  20220. SER4 LDC /1DS/DSDL+1 CHECK FOR ERROR
  20221. CRD CM
  20222. LDD CM
  20223. NJP SER1 IF ERROR
  20224. LJM KBR RETURN
  20225. TQPN SPACE 4,10
  20226. ** TQPN - TABLE OF *QUEUE* PARAMETERS.
  20227. *
  20228. * NOTE THE INDEX OF AN ENTRY IN *TQPN* IS THE
  20229. * BYTE NUMBER OF WHERE THE VALUE WILL BE
  20230. * STORED IN THE JOB CONTROL AREA WORD.
  20231.  
  20232.  
  20233. TQPN BSS 0
  20234.  
  20235. LOC 0
  20236. CON 2RIL LOWER BOUND PRIORITY
  20237. CON 2RLP LOWER PRIORITY RANGE
  20238. CON 2RUP UPPER PRIORITY RANGE
  20239. CON 2RWF WEIGHTING FACTOR
  20240. CON 2RIP INITIAL SCHEDULING PRIORITY
  20241. LOC *O
  20242.  
  20243. CON 0
  20244. AOD SPACE 4,10
  20245. ** AOD - ASSEMBLE OCTAL DIGITS.
  20246. *
  20247. * ENTRY (CA) = ADDRESS OF NEXT CHARACTER.
  20248. *
  20249. * EXIT (A) = (AB+4) = ASSEMBLED VALUE.
  20250. * (T5) = 0 IF SEPARATOR CHARACTER = *.*.
  20251. *
  20252. * ERROR TO *KIE* IF INCORRECT SEPARATOR OR VALUE .GT. 7777.
  20253. *
  20254. * CALLS ASD.
  20255.  
  20256.  
  20257. AOD2 LDD AB CHECK ASSEMBLY
  20258. ADD AB+1
  20259. ADD AB+2
  20260. ADD AB+3
  20261. NJN AOD1 IF VALUE .GT. 7777
  20262. LDD AB+4
  20263.  
  20264. AOD SUBR ENTRY/EXIT
  20265. RJM ASD ASSEMBLE DIGITS
  20266. LMN 1R,
  20267. ZJN AOD2 IF SEPARATOR = *,*
  20268. LMN 1R.&1R,
  20269. STD T5
  20270. ZJN AOD2 IF SEPARATOR = *.*
  20271. AOD1 JMP KIE *INCORRECT ENTRY*
  20272. SPT SPACE 4,10
  20273. ** SPT - SEARCH PARAMETER TABLE.
  20274. *
  20275. * ENTRY (A) = FWA OF PARAMETER TABLE.
  20276. * (CA) = CHARACTER ADDRESS.
  20277. *
  20278. * EXIT (A) = INDEX OF ENTRY FOUND.
  20279. *
  20280. * USES T1, T2, T3.
  20281.  
  20282.  
  20283. SPT2 LDD T2 RETURN WITH INDEX
  20284. SBD T3
  20285.  
  20286. SPT SUBR ENTRY/EXIT
  20287. STD T3 SET TABLE FWA
  20288. STD T2
  20289. LDI CA ASSEMBLE PARAMETER NAME
  20290. SHN 6
  20291. LMM 1,CA
  20292. STD T1
  20293. LDI T2
  20294. SPT1 LMD T1
  20295. ZJN SPT2 IF MATCH FOUND
  20296. AOD T2 ADVANCE TABLE
  20297. LDI T2
  20298. NJN SPT1 IF NOT END OF TABLE
  20299. JMP KIE *INCORRECT ENTRY*
  20300. TQUT SPACE 4,10
  20301. ** TQUT - TABLE OF QUEUE TYPES.
  20302.  
  20303.  
  20304. TQUT CON 2RIN
  20305. TQUTA CON 2REX
  20306. CON 2ROT
  20307.  
  20308. CON 0 END OF TABLE
  20309. SPACE 4,10
  20310. CMDEND
  20311. COMMAND (DISPLAY CHANGE REQUESTS.),CMR
  20312. RSA SPACE 4,10
  20313. *** A.
  20314. *
  20315. * ROLL SYSTEM DAYFILE.
  20316.  
  20317.  
  20318. DSA EQU /DISPLAY/DSA SET OVERLAY NAME
  20319.  
  20320. ENTRY RSA
  20321. LDN 0 SET MASTER DAYFILE
  20322. RSA1 STM ADSC SET DAYFILE TYPE
  20323. SHN -14
  20324. STD T2
  20325. LCN 0 SET DISPLAY RESET REQUEST
  20326. STM TDSA,T2
  20327. RSA2 LDN 1RA SET DISPLAY NAME
  20328. STD T7
  20329. RJM CJS CLEAR JSN ON SCREEN HEADER
  20330. LDC DSA/10000 OVERLAY NAME
  20331. STM /DSD/TDSO+1RA
  20332. LDN 0 SET SCREEN FULL
  20333. STM ADSC+2
  20334. RSA3 LDN 1RA SET *A* DISPLAY
  20335. STD T1
  20336. LJM SLS1 EXIT
  20337. ADS SPACE 4,10
  20338. *** A,.
  20339. *
  20340. * DISPLAY SYSTEM DAYFILE WITH NO ROLL.
  20341.  
  20342.  
  20343. ENTRY ADS ENTRY
  20344. LDN 0
  20345. STM ADSC
  20346. UJN RSA2 CONTINUE
  20347. AAF SPACE 4,10
  20348. *** A,ACCOUNT FILE.
  20349. *
  20350. * SET *A* DISPLAY TO ACCOUNT FILE.
  20351.  
  20352.  
  20353. ENTRY AAF
  20354. LDN 14 SKIP TO *.*
  20355. RAD CA
  20356. LDC 10000 SET ACCOUNT FILE
  20357. AAF1 ADD NC
  20358. JMP RSA1 SET DISPLAY
  20359. AEL SPACE 4,10
  20360. *** A,ERROR LOG.
  20361. *
  20362. * SET *A* DISPLAY TO ERROR LOG.
  20363.  
  20364.  
  20365. ENTRY AEL
  20366. LDN 11 SKIP TO *.*
  20367. RAD CA
  20368. LDC 20001 SET ERROR LOG
  20369. UJN AAF1 SET DISPLAY
  20370. AOD SPACE 4,10
  20371. *** A,OPERATOR.
  20372. *
  20373. * SET *A* DISPLAY TO OPERATOR STATUS.
  20374.  
  20375.  
  20376. DOD EQU /DISPLAY/DOD OVERLAY NAME
  20377.  
  20378. ENTRY AOD ENTRY
  20379. LDC DOD/10000 SET OVERLAY NAME
  20380. STM /DSD/TDSO+1RA
  20381. JMP RSA3 SET *A* DISPLAY
  20382. DAY SPACE 4,10
  20383. *** DAYFILE,JSN.
  20384. *
  20385. * SET DAYFILE OF JOB SPECIFIED ON LEFT SCREEN.
  20386.  
  20387.  
  20388. ENTRY DAY ENTRY
  20389. LDI CA
  20390. LMN 1R.
  20391. ZJN DAY1 IF NO JSN
  20392. LDN 1 SET JOB DAYFILE
  20393. JMP RSA1 SET *A* DISPLAY
  20394.  
  20395. DAY1 JMP KIE *INCORRECT ENTRY*
  20396. CHB SPACE 4,10
  20397. *** B,TYPE.
  20398. *
  20399. * REQUEST ONE OF THE FOLLOWING SYSTEM STATUS DISPLAYS.
  20400. *
  20401. * B,A. - ANALYST DISPLAY.
  20402. * B,. OR B,O. - OPERATOR DISPLAY.
  20403.  
  20404.  
  20405. ENTRY CHB
  20406. LDM KBUF+2 GET THE TYPE CHARACTER
  20407. LMN 1RA
  20408. ZJN CHB1 IF *B,A*
  20409. LDN 1RO&1RA
  20410. CHB1 STM TDSB SET THE DEFAULT TYPE
  20411. LDN 1RB SET DISPLAY NAME
  20412. LJM SLS SET LEFT SCREEN
  20413. CHE SPACE 4,10
  20414. *** E,TYPE.
  20415. *
  20416. * REQUEST ONE OF THE FOLLOWING EQUIPMENT DISPLAYS.
  20417. *
  20418. * A - ALL EQUIPMENTS.
  20419. * C - MASS STORAGE CONFIGURATION.
  20420. * E - MASS STORAGE ERROR CONDITIONS.
  20421. * F - FAMILY STATUS.
  20422. * H - MASS STORAGE DEVICE THRESHOLDS.
  20423. * M - MASS STORAGE DEVICE STATUS.
  20424. * O - OPTICAL DISK REQUEST PREVIEW.
  20425. * P - MOUNTING PREVIEW.
  20426. * S - OPTICAL DISK STATUS.
  20427. * T - MAGNETIC TAPES.
  20428.  
  20429.  
  20430. ENTRY CHE
  20431. LDM KBUF+2 SET CHARACTER
  20432. STD T1
  20433. LDC TCHE-1 SET TABLE INDEX
  20434. STD T2
  20435. CHE1 AOD T2 ADVANCE TABLE
  20436. LDI T2 COMPARE CHARACTERS
  20437. SHN -6
  20438. ZJN CHE2 IF END OF TABLE
  20439. LMD T1
  20440. NJN CHE1 IF NO MATCH
  20441. CHE2 LDM TCHEL,T2 LOAD OVERLAY NAME
  20442. STM /DSD/TDSO+1RE
  20443. LDN 1RE SET LEFT SCREEN DISPLAY = *E*
  20444. STD T1
  20445. LDN 0 CLEAR LEFT SCREEN INDEX
  20446. STM TDSE
  20447. LJM SLS1 EXIT
  20448.  
  20449.  
  20450. TCHE BSS 0
  20451. QUAL DISPLAY
  20452. VFD 6/1RC,6/DSEC-DSEC/10000*10000
  20453. VFD 6/1RE,6/DSEE-DSEE/10000*10000
  20454. VFD 6/1RF,6/DSEF-DSEF/10000*10000
  20455. VFD 6/1RH,6/DSEH-DSEH/10000*10000
  20456. VFD 6/1RM,6/DSEM-DSEM/10000*10000
  20457. VFD 6/1RO,6/DSEO-DSEO/10000*10000
  20458. VFD 6/1RP,6/DSEP-DSEP/10000*10000
  20459. VFD 6/1RS,6/DSES-DSES/10000*10000
  20460. VFD 6/1RT,6/DSET-DSET/10000*10000
  20461. CON DSE-DSE/10000*10000
  20462. QUAL *
  20463. TCHEL EQU *-TCHE
  20464.  
  20465. QUAL DISPLAY
  20466. CON DSEC/10000
  20467. CON DSEE/10000
  20468. CON DSEF/10000
  20469. CON DSEH/10000
  20470. CON DSEM/10000
  20471. CON DSEO/10000
  20472. CON DSEP/10000
  20473. CON DSES/10000
  20474. CON DSET/10000
  20475. CON DSE/10000
  20476. QUAL *
  20477. SCP SPACE 4,10
  20478. *** O,SCP.
  20479. *
  20480. * DISPLAY SUB CONTROL POINT STATUS.
  20481.  
  20482.  
  20483. ENTRY SCP
  20484. LDC /DISPLAY/DTS/10000
  20485. SCP1 STM /DSD/TDSO+17B SET DISPLAY OVERLAY NAME
  20486. LDN 1RO SET *O* DISPLAY
  20487. STD T1 STORE *O* DISPLAY
  20488. LJM SLS1 EXIT
  20489. STL SPACE 4,10
  20490. *** O,TLD.
  20491. *
  20492. * DISPLAY TASK LIBRARY DIRECTORY.
  20493.  
  20494.  
  20495. ENTRY STL
  20496. LDC /DISPLAY/DTL/10000
  20497. UJN SCP1 SET DISPLAY
  20498. STS SPACE 4,10
  20499. *** O,TST.
  20500. *
  20501. * DISPLAY TRANSACTION STATUS TABLE.
  20502.  
  20503.  
  20504. ENTRY STS
  20505. LDC /DISPLAY/DSO/10000
  20506. UJN SCP1 SET DISPLAY
  20507. SQT SPACE 4,10
  20508. *** Q,QT.
  20509. *
  20510. * SET *Q,QT* DISPLAY ON LEFT SCREEN.
  20511. *
  20512. * QT = IN, INPUT QUEUE FILES.
  20513. * PU, PUNCH QUEUE FILES.
  20514. * PL, PLOT QUEUE FILES.
  20515. * PR, PRINT QUEUE FILES.
  20516. * WT, WAIT QUEUE FILES.
  20517.  
  20518.  
  20519. ENTRY SQT
  20520. RJM ASN ASSEMBLE QUEUE TYPE
  20521. LDD AB+1
  20522. NJN SQT2 IF QUEUE TYPE .GT. 2 CHARACTERS
  20523. LDN TQTYL-TQTYE INITIALIZE TABLE SEARCH
  20524. STD T4
  20525. SQT1 LDM TQTY,T4
  20526. LMD AB
  20527. ZJN SQT3 IF QUEUE TYPE FOUND
  20528. LCN TQTYE
  20529. RAD T4
  20530. PJN SQT1 IF NOT END OF TABLE
  20531. SQT2 JMP KIE *INCORRECT ENTRY*
  20532.  
  20533. SQT3 LDM TQTY+1,T4 SAVE QUEUE TYPE
  20534. SQT4 STM TDSQA
  20535. LDN 1RQ
  20536. STD T1
  20537. LJM SLS1 SET DISPLAY ON LEFT SCREEN
  20538. TQTY SPACE 4,10
  20539. * TQTY - TABLE OF QUEUE TYPES.
  20540.  
  20541.  
  20542. TQTY CON 2RIN,/JIO/INQT
  20543. TQTYE EQU *-TQTY ENTRY LENGTH
  20544. CON 2RPU,/JIO/PHQT
  20545. CON 2RPL,/JIO/PLQT
  20546. CON 2RPR,/JIO/PRQT
  20547. CON 2RWT,/JIO/WTQT
  20548. TQTYL EQU *-TQTY
  20549. SQD SPACE 4,10
  20550. *** Q,.
  20551. *
  20552. * SET *Q* DISPLAY ON LEFT SCREEN.
  20553.  
  20554.  
  20555. ENTRY SQD
  20556. LDC 4000 SET ALL QUEUE TYPES
  20557. UJN SQT4 SET DISPLAY ON LEFT SCREEN
  20558. SWD SPACE 4,10
  20559. *** W,TYPE.
  20560. *
  20561. * REQUEST ONE OF THE FOLLOWING DISPLAYS.
  20562. *
  20563. * TYPE = A, MEMORY ALLOCATION.
  20564. * C, CHANNEL STATUS.
  20565. * M, MISC. PARAMETERS.
  20566. * P, TABLE ADDRESSES.
  20567. * Q, SYSTEM REQUESTS.
  20568. * R, SYSTEM RESOURCES.
  20569.  
  20570.  
  20571. ENTRY SWD
  20572. LDM KBUF+2 SET CHARACTER
  20573. STD T1
  20574. LDC TSWD-1 SET TABLE ADDRESS
  20575. STD T2
  20576. SWD1 AOD T2
  20577. LDI T2 GET VALID CHARACTER
  20578. ZJN SWD2 IF END OF TABLE
  20579. LMD T1
  20580. NJN SWD1 IF NO MATCH
  20581. SWD2 LDM TSWDL,T2 LOAD OVERLAY NAME
  20582. STM /DSD/TDSO+1RW
  20583. LDN 1RW
  20584. STD T1
  20585. LJM SLS1 SET LEFT SCREEN
  20586.  
  20587.  
  20588. TSWD BSS 0 TABLE OF VALID CHARACTERS
  20589. CON 1RA MEMORY ALLOCATION
  20590. CON 1RC CHANNEL STATUS
  20591. CON 1RM MISC. PARAMETERS
  20592. CON 1RP TABLE ADDRESSES
  20593. CON 1RQ SYSTEM REQUESTS
  20594. CON 1RR SYSTEM RESOURCES
  20595. CON 0 END OF TABLE
  20596. TSWDL EQU *-TSWD
  20597.  
  20598. QUAL DISPLAY
  20599. CON DSWA/10000 A
  20600. CON DSWC/10000 C
  20601. CON DSWM/10000 M
  20602. CON DSWP/10000 P
  20603. CON DSWQ/10000 Q
  20604. CON DSWR/10000 R
  20605. CON DSWR/10000 DISPLAY *R* OPTION IF NO MATCH
  20606. QUAL *
  20607. SPACE 4,10
  20608. CMDEND
  20609. COMMAND (RESOURCE CONTROL COMMANDS.)
  20610. MNT SPACE 4,10
  20611. *** MOUNT,XXX.
  20612. * MOUNT,XXX,P.
  20613. *
  20614. * REQUEST PROCESSING OF MASS STORAGE EST ORDINAL XXX. IF *P*
  20615. * IS SPECIFIED, PROCESS INDEPDENDENT SHARED DEVICE.
  20616.  
  20617.  
  20618. ENTRY MNT
  20619. RJM ASD ASSEMBLE EST ORDINAL
  20620. LDI CA CHECK FOR EXTENDED PARAMETER
  20621. SBN 1R,
  20622. NJN MNT2 IF NON-SHARED RMS CALL
  20623. AOD CA INCREMENT TO NEXT CHARACTER
  20624. LDI CA
  20625. SBN 1RP
  20626. ZJN MNT1 IF PRESETTING FOR SHARED RMS
  20627. JMP KIE *INCORRECT ENTRY*
  20628.  
  20629. MNT1 LDC MMFL TEST FOR SHARED RMS
  20630. CRD CM
  20631. LDC 2000 SET FOR PRESET PROCESSING
  20632. RAD AB+4
  20633. LDD CM+1
  20634. SHN 21-13
  20635. MJN MNT2 IF SHARED RMS PRESET
  20636. JMP KIE *INCORRECT ENTRY*
  20637.  
  20638. MNT2 LDC 4000 FLAG MOUNT REQUEST
  20639. STD AB
  20640. UJN UNL1 READ EST POINTER
  20641. UNL SPACE 4,10
  20642. *** UNLOAD,XXX.
  20643. *
  20644. * LOGICALLY REMOVE RESOURCE (MAGNETIC TAPE OR MASS STORAGE)
  20645. * DRIVE FROM ENVIRONMENT WHILE THAT DRIVE IS BEING UNLOADED
  20646. * BY THE OPERATOR.
  20647.  
  20648.  
  20649. ENTRY UNL
  20650. RJM ASD ASSEMBLE EST ORDINAL
  20651.  
  20652. * ENTRY FROM *MOUNT* COMMAND.
  20653.  
  20654. UNL1 LDN ESTP READ EST POINTER
  20655. CRD CM
  20656. LDD AB+4
  20657. LPC 5777 MASK OFF *MOUNT* PRESET BIT
  20658. STD CM
  20659. SBD CM+2
  20660. PJN UNL5 IF BEYOND EST
  20661. SFA EST,CM
  20662. ADK EQDE
  20663. CRD CM READ EST ENTRY
  20664. LDD CM
  20665. SHN 21-13
  20666. MJN UNL3 IF MASS STORAGE
  20667. LJM UNL12 PROCESS NON-MASS STORAGE
  20668.  
  20669. UNL3 SHN 4 CHECK REMOVABLE AND SHARED STATUSES
  20670. LPN 3
  20671. NJN UNL4 IF REMOVABLE AND/OR SHARED DEVICE
  20672. JMP KIE *INCORRECT ENTRY*
  20673.  
  20674. UNL4 LDD AB
  20675. ZJN UNL6 IF UNLOAD REQUEST
  20676. LDD CM
  20677. SHN 21-7
  20678. PJN UNL6 IF NOT *LDAM* TYPE EQUIPMENT
  20679. LDD CM+4 READ UNIT LIST WORD
  20680. SHN 3
  20681. ADN DDLL
  20682. CRD T3
  20683. LDD T3 CHECK NULL LIST BIT
  20684. SHN 21-12
  20685. PJN UNL6 IF NOT NULL EQUIPMENT
  20686. UNL5 LJM UNL13 *INCORRECT EQUIPMENT*
  20687.  
  20688. UNL6 LDD CM
  20689. SHN 21-10
  20690. PJN UNL8 IF DEVICE NOT REMOVABLE
  20691. LDD AB
  20692. ZJN UNL9 IF UNLOAD REQUEST
  20693. LDD CM
  20694. LPN 3 CHECK DEVICE STATE
  20695. LMN 3
  20696. NJN UNL9 IF NOT DOWN
  20697. UNL7 JMP KIE *INCORRECT ENTRY*
  20698.  
  20699. UNL8 LDD LK
  20700. ZJN UNL7 IF CONSOLE LOCKED
  20701. UNL9 LDD CM+4 GET MST STATUS WORD
  20702. SHN 3
  20703. ADN STLL
  20704. CRD T3
  20705. LDD AB
  20706. NJN UNL10 IF MOUNT REQUEST
  20707. LDD T3
  20708. LPN MLIRP
  20709. ZJN UNL10 IF NO INITIALIZATION SCHEDULED
  20710. LDC =C*INITIALIZE PENDING*
  20711. JMP KMS DISPLAY MESSAGE
  20712.  
  20713. UNL10 LDD CM+1
  20714. SHN 0-11 CHECK PRIMARY CHANNEL
  20715. LMN 4
  20716. ZJN UNL11 IF CHANNEL 1 AVAILABLE
  20717. LDD CM+2
  20718. SHN 0-11 CHECK SECONDARY CHANNEL
  20719. LMN 4
  20720. NJN UNL7 IF CHANNEL 2 UNAVAILABLE
  20721. UNL11 LDD AB SET MOUNT / UNLOAD REQUEST
  20722. LMN LUNL
  20723. STD AB+3
  20724. LDN /1DS/TPSF
  20725. JMP KAR PROCESS *1DS* CALL
  20726.  
  20727. * PROCESS NON MASS STORAGE REQUEST.
  20728.  
  20729. UNL12 LDD AB
  20730. NJN UNL13 IF MOUNT COMMAND
  20731. LDD CM+3 CHECK IF TAPE DRIVE
  20732. LMC 2RMT
  20733. ZJN UNL14 IF *MT*
  20734. LMC 2RNT&2RMT
  20735. ZJN UNL14 IF *NT*
  20736. LMC 2RCT&2RNT
  20737. ZJN UNL14 IF *CT*
  20738. LMC 2RAT&2RCT
  20739. ZJN UNL14 IF *AT*
  20740. LMC 2ROD&2RAT
  20741. NJN UNL13 IF NOT *OD*
  20742. LDD CM+4 CHECK FOR JUKEBOX UNIT
  20743. LPN 10
  20744. ZJN UNL11 IF NOT JUKEBOX UNIT
  20745. UNL13 LDC =C*INCORRECT EQUIPMENT*
  20746. JMP KMS DISPLAY MESSAGE
  20747.  
  20748. * PROCESS TAPE EQUIPMENT.
  20749.  
  20750. UNL14 LDN ZERL
  20751. CRD SP
  20752. LDN /MTX/XUU SET UNLOAD REQUEST
  20753. STD SP
  20754. LDD AB+4 SET EST ORDINAL
  20755. STD SP+1
  20756. LDN ZERL
  20757. CRD AB
  20758. LDC MTSI CHECK MAGNET STATUS
  20759. RJM FSS
  20760. NJN UNL15 IF MAGNET ACTIVE
  20761. LDC =C*MAG NOT ACTIVE*
  20762. JMP KMS DISPLAY MESSAGE
  20763.  
  20764. UNL15 STD AB+4 SET MAGNET CP NUMBER
  20765. LDC /1DS/EUFF+/1DS/CMOV+/1DS/LOCK
  20766. RJM C1D
  20767. LDC UNL16 SET REENTRY ADDRESS
  20768. STM /KEYBOARD/KCRB
  20769. UNL16 LDC /1DS/DSDL
  20770. CRD CM
  20771. ADN 1
  20772. CRD AB
  20773. LDD CM
  20774. NJP CLP1 IF *1DS* NOT COMPLETE
  20775. LDD AB
  20776. ZJP KBR IF NO ERROR
  20777. LDC =C*INCORRECT EQUIPMENT*
  20778. JMP KMS DISPLAY ERROR MESSAGE
  20779. SPACE 4,10
  20780. CMDEND
  20781. COMMAND (TAPE EQUIPMENT COMMANDS.)
  20782. SPACE 4,10
  20783. *** GO,XXX.
  20784. *
  20785. * PROCEED WITH ASSIGNMENT OF REEL ON UNIT XXX.
  20786.  
  20787.  
  20788. ENTRY GBL
  20789. LDN /MTX/XUG SET *GO* REQUEST
  20790. UJN PTC PROCESS TAPE EQUIPMENT COMMAND
  20791. SPACE 4,10
  20792. *** STOP,XXX.
  20793. *
  20794. * UNLOAD REEL ON UNIT XXX TO REJECT ASSIGNMENT TO JOB.
  20795.  
  20796.  
  20797. ENTRY SBL
  20798. LDC /MTX/XUS SET *STOP* REQUEST
  20799. UJN PTC PROCESS TAPE EQUIPMENT COMMAND
  20800. SPACE 4,10
  20801. *** RETRY,XXX.
  20802. *
  20803. * RETRY TAPE I/O OPERATION AFTER LOAD POINT ERROR.
  20804.  
  20805.  
  20806. ENTRY RTY
  20807. LDC /MTX/XRT SET *RETRY* REQUEST
  20808. UJN PTC PROCESS TAPE EQUIPMENT COMMAND
  20809. TRM SPACE 4,10
  20810. *** TERMINATE,XXX.
  20811. *
  20812. * TERMINATE TAPE I/O OPERATION AFTER LOAD POINT ERROR.
  20813.  
  20814.  
  20815. ENTRY TRM
  20816. LDN /MTX/XTR SET *TERMINATE* REQUEST
  20817. UJN PTC PROCESS TAPE EQUIPMENT COMMAND
  20818. NVS SPACE 4,10
  20819. *** NEXTVSN,XXX,YYYYYY.
  20820. *
  20821. * SPECIFY NEXT VSN AT END OF REEL.
  20822.  
  20823.  
  20824. ENTRY NVS
  20825. LDN /MTX/XNV SET *NEXTVSN* REQUEST
  20826. UJN PTC PROCESS TAPE EQUIPMENT COMMAND
  20827. MTA SPACE 4,10
  20828. *** MOUNT,XXX,YYYYYY.
  20829. *
  20830. * MOUNT CARTRIDGE WITH VSN YYYYYY ON ACS TAPE UNIT WITH EST
  20831. * ORDINAL XXX.
  20832.  
  20833.  
  20834. ENTRY MTA
  20835. LDN /MTX/XMU SET MOUNT UNIT
  20836. UJN PTC PROCESS TAPE EQUIPMENT COMMAND
  20837. SCR SPACE 4,10
  20838. *** SCRATCH,XXX.
  20839. *
  20840. * DECLARE TAPE EST ORDINAL XXX TO BE AN AVAILABLE SCRATCH TAPE
  20841. * WHICH MAY BE ASSIGNED BY ANY SCRATCH VSN. EXISTING VOL1
  20842. * VSN WILL NOT BE CHANGED.
  20843.  
  20844.  
  20845. ENTRY SCR
  20846. LDN /MTX/XSV SET SCRATCH VSN
  20847. UJN PTC PROCESS TAPE EQUIPMENT COMMAND
  20848. VSN SPACE 4,10
  20849. *** VSN,XXX,YYYYYY.
  20850. *
  20851. * ASSIGN VOLUME SERIAL NUMBER TO TAPE ON EST ORDINAL XXX.
  20852. VSN SPACE 4,10
  20853. *** VSN,XXX,.
  20854. *
  20855. * DECLARE TAPE EST ORDINAL XXX TO BE AN AVAILABLE SCRATCH TAPE.
  20856. VSN SPACE 4,10
  20857. *** VSN,XXX.
  20858. *
  20859. * CLEAR VSN ON EST ORDINAL XXX AND RECHECK FOR LABELS.
  20860.  
  20861.  
  20862. ENTRY VSN
  20863. LDN /MTX/XEV SET ENTER VSN
  20864. * UJN PTC PROCESS TAPE EQUIPMENT COMMAND
  20865. PTC SPACE 4,10
  20866. ** PTC - PROCESS TAPE EQUIPMENT COMMAND.
  20867. *
  20868. * ENTRY (A) = REQUEST CODE.
  20869. *
  20870. * USES T1, AB - AB+4, CM - CM+4, SP - SP+4.
  20871. *
  20872. * CALLS ASD, AVS, C1D, FSS.
  20873.  
  20874.  
  20875. PTC BSS 0 ENTRY
  20876. STD T1 SAVE REQUEST CODE
  20877. LDN ZERL
  20878. CRD SP
  20879. LDD T1 SET REQUEST CODE
  20880. STD SP
  20881. RJM ASD ASSEMBLE EST ORDINAL
  20882. LDD AB+4 SET EST ORDINAL
  20883. STD SP+1
  20884. LDI CA
  20885. LMN 1R.
  20886. ZJN PTC1 IF NO VSN SPECIFIED
  20887. RJM AVS ASSEMBLE VSN
  20888. PTC1 LDN ZERL
  20889. CRD AB
  20890. LDC MTSI CHECK MAGNET STATUS
  20891. RJM FSS
  20892. NJN PTC2 IF MAGNET ACTIVE
  20893. LDC =C*MAG NOT ACTIVE*
  20894. JMP KMS DISPLAY MESSAGE
  20895.  
  20896. PTC2 STD AB+4 SET MAGNET CP NUMBER
  20897. LDC /1DS/EUFF+/1DS/CMOV+/1DS/LOCK
  20898. RJM C1D
  20899. LDC PTC3 SET REENTRY ADDRESS
  20900. STM /KEYBOARD/KCRB
  20901. PTC3 LDC /1DS/DSDL
  20902. CRD CM
  20903. ADN 1
  20904. CRD AB
  20905. LDD CM
  20906. NJP CLP1 IF *1DS* NOT COMPLETE
  20907. LDD AB
  20908. ZJP KBR IF NO ERROR
  20909. LMN 1
  20910. NJN PTC4 IF NOT EQUIPMENT ERROR
  20911. LDC =C*INCORRECT EQUIPMENT*
  20912. JMP KMS DISPLAY MESSAGE
  20913.  
  20914. PTC4 LDC =C*VSN NOT AVAILABLE*
  20915. JMP KMS DISPLAY MESSAGE
  20916. AVS SPACE 4,10
  20917. ** AVS - ASSEMBLE VSN.
  20918. *
  20919. * EXIT (SP+2 - SP+4) = VSN SPACE FILLED.
  20920. *
  20921. * USES CA, T1, T2, SP+2 - SP+4.
  20922.  
  20923.  
  20924. AVS SUBR ENTRY/EXIT
  20925. LDC 2R SPACE FILL VSN
  20926. STD SP+2
  20927. STD SP+3
  20928. STD SP+4
  20929. AOD CA BYPASS PREVIOUS SEPARATOR
  20930. LDN SP+2 ASSEMBLE VSN
  20931. STD T1
  20932. AVS1 LDI CA
  20933. ZJN AVSX IF END OF STRING
  20934. SBN 1R9+1
  20935. PJN AVSX IF SEPARATOR
  20936. ADN 1R9+1
  20937. SHN 6
  20938. STD T2
  20939. LDI T1
  20940. LPN 77
  20941. ADD T2
  20942. STI T1
  20943. AOD CA
  20944. LDI CA
  20945. ZJN AVSX IF END OF STRING
  20946. SBN 1R9+1
  20947. PJN AVSX IF SEPARATOR
  20948. ADN 1R9+1
  20949. STD T2
  20950. LDI T1
  20951. SCN 77
  20952. ADD T2
  20953. STI T1
  20954. AOD CA
  20955. AOD T1
  20956. LMN SP+5
  20957. NJN AVS1 IF MORE CHARACTERS POSSIBLE
  20958. LJM AVSX RETURN
  20959. SPACE 4,10
  20960. CMDEND
  20961. COMMAND (MAINTENANCE COMMANDS.),CMR
  20962. RDF SPACE 4,10
  20963. *** REDEFINE,XXX.
  20964. *
  20965. * SET REDEFINITION REQUESTED BIT IN MST FOR *LDAM* TYPE
  20966. * EQUIPMENT TO BEGIN RECONFIGURATION RUN.
  20967.  
  20968.  
  20969. ENTRY RED
  20970. RJM CMS CHECK FOR MASS STORAGE EQUIPMENT
  20971. SHN 21-7
  20972. PJN RDF1 IF NOT *LDAM* TYPE DEVICE
  20973. SHN 7-4
  20974. MJN RDF1 IF INDEPENDENT SHARED DEVICE
  20975. LDD CM+3 CHECK DEVICE TYPE
  20976. LMC 2RDD
  20977. ZJN RDF1 IF 834
  20978. LMN 2RDG&2RDD
  20979. ZJN RDF1 IF 836
  20980. LDD CM+4 CHECK FOR BUFFERED DEVICE
  20981. SHN 3
  20982. ADN DILL
  20983. CRD CM
  20984. LDD CM+3
  20985. SHN 21-13
  20986. MJN RDF1 IF BUFFERED DEVICE
  20987. SFA EST,AB+4 CHECK IF DEVICE ALREADY ASSIGNED
  20988. ADK EQAE
  20989. CRD CM
  20990. LDD CM+4
  20991. NJN RDF1 IF DEVICE ALREADY ASSIGNED
  20992. LDN GRDR SET REDEFINITION REQUESTED
  20993. STD AB+3
  20994. LDN /1DS/SCAF
  20995. JMP KAR PROCESS *1DS* CALL
  20996.  
  20997. RDF1 JMP KIE *INCORRECT ENTRY*
  20998. RST SPACE 4,10
  20999. *** RESTORE,XXX.
  21000. *
  21001. * RESTORE PARITY PROTECTION FOR DAS DRIVE WITH EST ORDINAL XXX.
  21002.  
  21003.  
  21004. ENTRY RST
  21005. RJM CMS CHECK FOR MASS STORAGE EQUIPMENT
  21006. LDN TRSTL CHECK DEVICE TYPE
  21007. STD T1
  21008. RST1 SOD T1
  21009. MJN RST2 IF DEVICE DOES NOT SUPPORT RESTORE
  21010. LDD CM+3
  21011. LMM TRST,T1
  21012. NJN RST1 IF DEVICE TYPE DOES NOT MATCH
  21013. LDD CM+1
  21014. SHN 0-11 CHECK PRIMARY CHANNEL
  21015. LMN 4
  21016. ZJN RST3 IF CHANNEL 1 AVAILABLE
  21017. LDD CM+2
  21018. SHN 0-11 CHECK SECONDARY CHANNEL
  21019. LMN 4
  21020. ZJN RST3 IF CHANNEL 2 AVAILABLE
  21021. RST2 JMP KIE *INCORRECT ENTRY*
  21022.  
  21023. RST3 LDD CM
  21024. SHN 21-11
  21025. PJN RST4 IF NOT SHARED DEVICE
  21026. SHN 21-6-21+11
  21027. MJN RST2 IF DEVICE UNAVAILABLE (NOT RECOVERED)
  21028. RST4 LDN /1DS/RSTF
  21029. JMP KAR PROCESS *1DS* REQUEST
  21030. TBLM SPACE 4,10
  21031. ** TBLM - GENERATE TABLE OF DEVICES WITH PARITY PROTECTION.
  21032. *
  21033. * TBLM TY
  21034. *
  21035. * ENTRY (TY) = MASS STORAGE EQUIPMENT MNEMONIC.
  21036.  
  21037. PURGMAC TBLM
  21038.  
  21039. TBLM MACRO TY
  21040. TBLM IFEQ /MSP/BF_TY,7,1
  21041. CON 2R_TY
  21042. TBLM ENDIF
  21043. TBLM ENDM
  21044.  
  21045. TRST BSS 0 DEVICES ALLOWED FOR RESTORE
  21046. LIST G
  21047. TBL "MSEQ"
  21048. LIST *
  21049. TRSTL EQU *-TRST LENGTH OF TABLE
  21050.  
  21051. PURGMAC TBLM
  21052. SDU SPACE 4,10
  21053. *** SPINDOWN,XXX.
  21054. *
  21055. * SPIN DOWN DRIVE WITH EST ORDINAL XXX.
  21056.  
  21057.  
  21058. ENTRY SDU
  21059. AOM SUUB
  21060. * UJN SUU PROCESS COMMAND
  21061. SUU SPACE 4,10
  21062. *** SPINUP,XXX.
  21063. *
  21064. * SPIN UP DRIVE WITH EST ORDINAL XXX.
  21065.  
  21066.  
  21067. ENTRY SUU
  21068. RJM CMS CHECK FOR MASS STORAGE EQUIPMENT
  21069. LDN TSUUL CHECK DEVICE TYPE
  21070. STD T1
  21071. SUU1 SOD T1
  21072. MJN SUU3 IF DEVICE DOES NOT SUPPORT SPIN UP/DOWN
  21073. LDD CM+3
  21074. LMM TSUU,T1
  21075. NJN SUU1 IF DEVICE TYPE DOES NOT MATCH
  21076. SUUB LDN 0
  21077. * LDN 1 (SPIN DOWN DRIVE)
  21078. STD AB+3
  21079. ZJN SUU2 IF SPIN UP REQUEST
  21080. LDD CM
  21081. LPN 3 CHECK DEVICE STATE
  21082. LMN 3
  21083. NJN SUU3 IF DEVICE NOT DOWN
  21084. SUU2 LDD CM+1
  21085. SHN 0-11 CHECK PRIMARY CHANNEL
  21086. LMN 4
  21087. ZJN SUU4 IF CHANNEL 1 AVAILABLE
  21088. LDD CM+2
  21089. SHN 0-11 CHECK SECONDARY CHANNEL
  21090. LMN 4
  21091. ZJN SUU4 IF CHANNEL 2 AVAILABLE
  21092. SUU3 JMP KIE *INCORRECT ENTRY*
  21093.  
  21094. SUU4 LDN /1DS/SPNF
  21095. JMP KAR PROCESS *1DS* REQUEST
  21096.  
  21097.  
  21098. TSUU BSS 0 DEVICES ALLOWED FOR SPINUP/SPINDOWN
  21099. CON 2RDD 834
  21100. CON 2RDG 836
  21101. CON 2RDF 887 (4KB SECTOR)
  21102. CON 2RDH 887 (16KB SECTOR)
  21103.  
  21104. TSUUL EQU *-TSUU LENGTH OF TABLE
  21105. SPACE 4,10
  21106. *** VALIDATE,XXX.
  21107. *
  21108. * VALIDATE MST/TRT FOR EST ORDINAL XXX.
  21109.  
  21110.  
  21111. ENTRY VMS
  21112. LDN SSTL
  21113. CRD CM
  21114. LDD CM
  21115. LPN 4
  21116. NJN SUU3 IF MONITOR SEGMENT *VMS* NOT LOADED
  21117. RJM CMS CHECK FOR MASS STORAGE EQUIPMENT
  21118. SHN 21-6
  21119. PJN VMS2 IF AVAILABLE MASS STORAGE DEVICE
  21120. VMS1 LDC =C*ILLEGAL EQUIPMENT.*
  21121. JMP KMS
  21122.  
  21123. VMS2 LDN /1DS/VMSF
  21124. JMP KAR VALIDATE EQUIPMENT
  21125. CMS SPACE 4,15
  21126. ** CMS - CHECK FOR MASS STORAGE EQUIPMENT.
  21127. *
  21128. * ENTRY (CA) = ADDRESS OF NEXT CHARACTER.
  21129. *
  21130. * EXIT (A) = BYTE 0 OF EST ENTRY.
  21131. * (CM - CM+4) = EST ENTRY.
  21132. *
  21133. * CALLS ASD.
  21134. *
  21135. * MACROS SFA.
  21136.  
  21137.  
  21138. CMS2 LDD CM
  21139.  
  21140. CMS SUBR ENTRY/EXIT
  21141. RJM ASD ASSEMBLE EST ORDINAL
  21142. LDK ESTP
  21143. CRD CM
  21144. LDD AB+4
  21145. SBD CM+3
  21146. PJN CMS1 IF ORDINAL BEYOND MASS STORAGE MAXIMUM
  21147. SFA EST,AB+4
  21148. ADK EQDE
  21149. CRD CM
  21150. LDD CM
  21151. SHN 21-13
  21152. MJN CMS2 IF MASS STORAGE DEVICE
  21153. CMS1 JMP KIE *INCORRECT ENTRY*
  21154. SPACE 4,10
  21155. CMDEND
  21156. COMMAND (UP/DOWN CHANNEL COMMANDS.),CMR
  21157. UPC SPACE 4,10
  21158. *** UP,CH=XX.
  21159. * UP,CH=XX,EQ=YYY.
  21160. *
  21161. * UP CHANNEL XX ON EST ORDINAL YYY OR ALL EST ORDINALS.
  21162.  
  21163.  
  21164. ENTRY UPC
  21165. LDN 1 SET *UP* FLAG
  21166. UJN DWN1 PROCESS COMMAND
  21167. MUP SPACE 4,10
  21168. *** UP,MCH=XX.
  21169. * UP,MCH=XX,EQ=YYY.
  21170. *
  21171. * UP MUX CHANNEL XX ON EST ORDINAL YYY OR ALL EST ORDINALS.
  21172.  
  21173.  
  21174. ENTRY MUP
  21175. AOD CA INCREMENT KEYBOARD INDEX
  21176. LDN 3 SET *UP* AND MUX FLAGS
  21177. UJN DWN1 PROCESS COMMAND
  21178. MDN SPACE 4,10
  21179. *** DOWN,MCH=XX.
  21180. * DOWN,MCH=XX,EQ=YYY.
  21181. *
  21182. * DOWN MUX CHANNEL XX ON EST ORDINAL YYY OR ALL EST ORDINALS.
  21183.  
  21184.  
  21185. ENTRY MDN
  21186. AOD CA INCREMENT KEYBOARD INDEX
  21187. LDN 2 SET MUX FLAG
  21188. UJN DWN1 PROCESS COMMAND
  21189. CUP SPACE 4,10
  21190. *** UP,CCH=XX.
  21191. * UP,CCH=XX,EQ=YYY.
  21192. *
  21193. * UP CONCURRENT CHANNEL XX ON ESTO YYY OR ALL EST ORDINALS.
  21194.  
  21195.  
  21196. ENTRY CUP
  21197. AOD CA INCREMENT KEYBOARD INDEX
  21198. LDN 41 SET *UP* FLAG AND CCH FLAG
  21199. UJN DWN1 PROCESS COMMAND
  21200. CDN SPACE 4,10
  21201. *** DOWN,CCH=XX.
  21202. * DOWN,CCH=XX,EQ=YYY.
  21203. *
  21204. * DOWN CONCURRENT CHANNEL XX ON ESTO YYY OR ALL EST ORDINALS.
  21205.  
  21206.  
  21207. ENTRY CDN
  21208. AOD CA INCREMENT KEYBOARD INDEX
  21209. LDN 40 SET CCH FLAG
  21210. UJN DWN1 PROCESS COMMAND
  21211. DWN SPACE 4,10
  21212. *** DOWN,CH=XX.
  21213. * DOWN,CH=XX,EQ=YYY.
  21214. *
  21215. * DOWN CHANNEL XX ON EST ORDINAL YYY OR ALL EST ORDINALS.
  21216.  
  21217.  
  21218. ENTRY DWN
  21219. LDN 0 CLEAR *UP* AND MUX FLAGS
  21220. DWN1 STD SR
  21221. LDN 3 SET KEYBOARD INDEX
  21222. RAD CA
  21223. LDN ESTP READ EST POINTERS
  21224. CRD T4
  21225. RJM ASD ASSEMBLE CHANNEL NUMBER
  21226. LDD AB+4
  21227. SBN 40
  21228. PJN DWN2 IF INCORRECT CHANNEL
  21229. LDD SR
  21230. LPN 40
  21231. LMD AB+4
  21232. STD SR+1 SET CHANNEL NUMBER AND CONCURRENT STATUS
  21233. LDI CA
  21234. LMN 1R.
  21235. STM DWNA
  21236. NJN DWN3 IF EST ORDINAL ENTERED
  21237. STD AB+4
  21238. LDN NOPE-1 SET EST INDEX
  21239. STD T7
  21240. UJN DWN4 READ EST
  21241.  
  21242. DWN2 JMP KIE *INCORRECT ENTRY*
  21243.  
  21244. DWN3 LDN 4
  21245. RAD CA
  21246. RJM ASD ASSEMBLE EQUIPMENT
  21247. LDD AB+4
  21248. SBD T6
  21249. PJN DWN2 IF INCORRECT EST ORDINAL
  21250. LDD AB+4
  21251. SBN 1
  21252. STD T7 SAVE EST INDEX
  21253. ADN 2 SET END OF SEARCH
  21254. STD T6
  21255. DWN4 AOD T7
  21256. LMD T6
  21257. ZJN DWN2 IF END OF EST
  21258. SFA EST,T7 READ EST ENTRY
  21259. ADK EQDE
  21260. CRD CM
  21261. ADK EQAE-EQDE
  21262. CRD SH
  21263. RJM CCH CHECK FOR CHANNEL MATCH
  21264. NJN DWN4 IF NO MATCH
  21265. LDD CM+3
  21266. LMC 2RMT
  21267. ZJN DWN5 IF *MT*
  21268. LMC 2RNT&2RMT
  21269. ZJN DWN5 IF *NT*
  21270. LMC 2RCT&2RNT
  21271. ZJN DWN5 IF *CT*
  21272. LMC 2RAT&2RCT
  21273. NJN DWN6 IF NOT *AT*
  21274. DWN5 LDM DWNA
  21275. NJP DWN2 IF EST ORDINAL ENTERED
  21276. DWN6 LDD SR FORM *1DS* PARAMETER
  21277. LPN 2
  21278. SHN 6-1
  21279. ADD SR+1
  21280. STD AB+3 SET CHANNEL, CONCURRENCY, AND MUX FLAGS
  21281. LDD SR
  21282. LPN 1
  21283. ADK /1DS/DWNF
  21284. ERRNZ /1DS/UPCF-/1DS/DWNF-1 CODE DEPENDS ON VALUE
  21285. JMP KAR PROCESS *1DS* CALL
  21286.  
  21287.  
  21288. DWNA BSSZ 1 FLAG INDICATING EST ORDINAL ENTERED
  21289. CCH SPACE 4,10
  21290. ** CCH - CHECK FOR VALID CHANNEL.
  21291. *
  21292. * ENTRY (SR) = 10/0, 1/M, 1/U.
  21293. * M = 1 IF MUX CHANNEL.
  21294. * U = 1 IF *UP* REQUEST.
  21295. * (SR+1) = CHANNEL NUMBER (AND CONCURRENCY FLAG).
  21296. * (CM - CM+4) = WORD *EQDE* OF EST ENTRY.
  21297. * (SH - SH+4) = WORD *EQAE* OF EST ENTRY.
  21298. *
  21299. * EXIT (A) = 0 IF MATCH.
  21300. * (A) .NE. 0 IF NO MATCH.
  21301. * (CM - CM+4) = ENTRY VALUE.
  21302. *
  21303. * USES T1.
  21304.  
  21305.  
  21306. CCH6 LDD SH+4
  21307. ZJP CCH1 IF DEVICE NOT CURRENTLY ASSIGNED
  21308.  
  21309. CCH SUBR ENTRY/EXIT
  21310. LDD CM
  21311. SHN 21-13
  21312. MJN CCH1 IF MASS STORAGE
  21313. LDD CM GET DOWN/OFF BIT
  21314. LPN 2
  21315. SHN 14
  21316. LMD CM+3 GET DEVICE TYPE
  21317. LMC 2RLX+20000
  21318. ZJN CCH6 IF *LX* AND OFF/DOWN
  21319. LMN 2RLY&2RLX
  21320. ZJN CCH6 IF *LY* AND OFF/DOWN
  21321. LPC 7777 IGNORE DOWN/OFF STATUS
  21322. LMC 2RNT&2RLY
  21323. ZJN CCH1 IF TYPE *NT*
  21324. LMC 2RMT&2RNT
  21325. ZJN CCH1 IF TYPE *MT*
  21326. LMC 2RCT&2RMT
  21327. ZJN CCH1 IF TYPE *CT*
  21328. LMC 2RAT&2RCT
  21329. ZJN CCH1 IF TYPE *AT*
  21330. LMC 2ROD&2RAT
  21331. NJP CCHX IF NOT TYPE *OD*
  21332. CCH1 LDN 1 SET CHANNEL BYTE INDEX
  21333. STD T1
  21334. CCH2 LDD SR
  21335. LPN 1
  21336. SHN 12-0
  21337. LMM CM+1,T1
  21338. LMD SR+1
  21339. LPC 6077
  21340. SHN 21-13
  21341. PJN CCH3 IF CHANNEL NOT PRESENT OR DISABLED
  21342. LPC 207700
  21343. ZJN CCH4 IF CHANNEL, TYPE, STATE MATCH
  21344. CCH3 SOD T1
  21345. PJN CCH2 IF CHANNEL 1 NOT YET CHECKED
  21346. UJN CCH5 RETURN
  21347.  
  21348. CCH4 LDD SR
  21349. LPN 2
  21350. ZJN CCH5 IF NOT A MUX CHANNEL
  21351. LDD CM
  21352. SHN 0-13
  21353. ZJN CCH5 IF NOT MASS STORAGE
  21354. LDD CM
  21355. LPC 200
  21356. CCH5 LJM CCHX RETURN WITH (A) = REPLY STATUS
  21357. SPACE 4,10
  21358. CMDEND
  21359. COMMAND (DOWN/OFF/IDLE/ON EQUIPMENT COMMANDS.),CMR
  21360. DWM SPACE 4,10
  21361. *** DOWN,MID=XX.
  21362. *
  21363. * CONFIRM MACHINE ID XX IS IN THE *DOWN* STATE.
  21364.  
  21365.  
  21366. ENTRY DWM
  21367. LDN 4
  21368. RAD CA
  21369. LDK EFRL READ MAINFRAME STATE TABLE
  21370. CRD CM
  21371. LDN 0
  21372. STD CM+2
  21373. DWM1 LDD CM
  21374. SHN 14
  21375. LMD CM+1
  21376. ZJN DWM2 IF NOT MMF MODE
  21377. ADD CM+2
  21378. CRD AB
  21379. LDI CA
  21380. SHN 6
  21381. ADM 1,CA
  21382. LMD AB
  21383. ZJN DWM3 IF MACHINE ID FOUND
  21384. AOD CM+2
  21385. SBN MXMF
  21386. MJN DWM1 IF NOT ALL MACHINES CHECKED
  21387. DWM2 JMP KIE *INCORRECT ENTRY*
  21388.  
  21389. DWM3 LDD AB+4
  21390. LMN MFD2
  21391. NJN DWM2 IF NOT IN PROPER *DOWN* STATE
  21392. LDM 2,CA
  21393. LMN 1R.
  21394. NJN DWM2 IF INCORRECT TERMINATOR
  21395. LDN MFDA SET *DOWN ACKNOWLEGED* STATE
  21396. STD AB+4
  21397. LDD CM
  21398. SHN 14
  21399. LMD CM+1
  21400. ADD CM+2
  21401. CWD AB
  21402. LJM KBR SET COMMAND COMPLETE
  21403. DWE SPACE 4,10
  21404. *** DOWN,EQ=XXX.
  21405. *
  21406. * SET EST ORDINAL XXX TO THE *DOWN* STATE.
  21407.  
  21408.  
  21409. ENTRY DWE
  21410. LDN DWES CHECK EST ENTRY
  21411. RJM CEN
  21412. MJN DWE1 IF MASS STORAGE DEVICE
  21413. LDD AB+4
  21414. ZJN OFE3 IF EQUIPMENT ZERO
  21415. LDD SR+4
  21416. NJN OFE3 IF DEVICE ASSIGNED
  21417. LDM CENA
  21418. LMC 2RCM
  21419. NJN OFE2 IF NOT CONTROL MODULE
  21420. LDC /1DS/DCMF+/1DS/LOCK
  21421. LJM C1R1 CALL *1DS*
  21422.  
  21423. DWE1 UJN IDE2 CALL *1DS*
  21424. OFE SPACE 4,10
  21425. *** OFF,EQ=XXX.
  21426. *
  21427. * SET EST ORDINAL XXX TO THE *OFF* STATE.
  21428.  
  21429.  
  21430. ENTRY OFE
  21431. LDN OFES CHECK EST ENTRY
  21432. RJM CEN
  21433. OFE1 MJN IDE2 IF MASS STORAGE DEVICE
  21434. LDM CENA
  21435. LMC 2RCM
  21436. OFE2 NJN ONE1 IF NOT CONTROL MODULE
  21437. OFE3 JMP KIE *INCORRECT ENTRY*
  21438. IDE SPACE 4,10
  21439. *** IDLE,EQ=XXX.
  21440. *
  21441. * SET EST ORDINAL XXX TO THE *IDLE* STATE.
  21442.  
  21443.  
  21444. ENTRY IDE
  21445. LDN IDES CHECK EST ENTRY
  21446. RJM CEN
  21447. PJN OFE3 IF NOT MASS STORAGE DEVICE
  21448. LDD CM
  21449. LPN 3 CHECK CURRENT STATE
  21450. * LMN 0
  21451. ZJN ONE1 IF DEVICE *ON*
  21452. IDE2 LJM C1R CALL *1DS*
  21453. ONE SPACE 4,10
  21454. *** ON,EQ=XXX.
  21455. *
  21456. * SET EST ORDINAL XXX TO THE *ON* STATE.
  21457.  
  21458.  
  21459. ENTRY ONE
  21460. LDN ONES CHECK EST ENTRY
  21461. RJM CEN
  21462. PJN ONE1 IF NOT MASS STORAGE DEVICE
  21463. LDD CM
  21464. LPN 3 CHECK CURRENT STATE
  21465. LMN 1
  21466. NJN IDE2 IF DEVICE NOT *IDLE*
  21467. ONE1 LDM CENA
  21468. LMC 2RCM
  21469. NJN ONE2 IF NOT CONTROL MODULE
  21470. LDK /1DS/OCMF
  21471. LJM C1R1 CALL *1DS*
  21472.  
  21473. ONE2 LDD AB+3
  21474. STD CM+2
  21475. LDD AB+4 CHANGE DEVICE STATE
  21476. STD CM+1
  21477. MONITOR SEQM
  21478. JMP KBR RETURN
  21479. CEN SPACE 4,20
  21480. ** CEN - CHECK EST ORDINAL.
  21481. *
  21482. * ENTRY (A) = NEW DEVICE STATE.
  21483. *
  21484. * EXIT (A) = BYTE 0 OF EST ENTRY SHIFTED 21-13.
  21485. * (AB+3) = *SCAF* SUBFUNCTION TO *1DS*.
  21486. * (AB+4) = (CENA) = EST ORDINAL.
  21487. * (CM - CM+4) = EST ENTRY.
  21488. * (SR - SR+4) = *EQAE* WORD OF EST ENTRY.
  21489. * (CENA) = DEVICE MNEMONIC.
  21490. * TO *KIE* IF ERROR.
  21491. *
  21492. * USES CA, T7, AB+3, CM - CM+4, SR - SR+4.
  21493. *
  21494. * CALLS ASD.
  21495. *
  21496. * MACROS SFA.
  21497.  
  21498.  
  21499. CEN SUBR ENTRY/EXIT
  21500. STD T7
  21501. LDN 3 ADVANCE KEYBOARD INDEX
  21502. RAD CA
  21503. RJM ASD ASSEMBLE EST ORDINAL
  21504. LDK ESTP READ EST POINTER
  21505. CRD CM
  21506. LDD AB+4 CHECK ORDINAL
  21507. SBN NOPE
  21508. MJN CEN1 IF PSEUDO-EQUIPMENT
  21509. ADN NOPE
  21510. SBD CM+2
  21511. PJN CEN1 IF ORDINAL BEYOND EST MAXIMUM
  21512. SFA EST,AB+4 READ EST ENTRY
  21513. ADK EQDE
  21514. CRD CM
  21515. ADK EQAE-EQDE READ EQUIPMENT ASSIGNMENT
  21516. CRD SR
  21517. LDD CM+3
  21518. NJN CEN2 IF EQUIPMENT DEFINED
  21519. CEN1 JMP KIE *INCORRECT ENTRY*
  21520.  
  21521. CEN2 STM CENA SAVE DEVICE MNEMONIC
  21522. LDD T7 CHECK CURRENT DEVICE STATE
  21523. STD AB+3
  21524. LMD CM
  21525. ERRNZ ONES-0 CODE DEPENDS ON VALUE
  21526. ERRNZ IDES-1 CODE DEPENDS ON VALUE
  21527. ERRNZ OFES-2 CODE DEPENDS ON VALUE
  21528. ERRNZ DWES-3 CODE DEPENDS ON VALUE
  21529. LPN 3
  21530. ZJN CEN1 IF NO STATE CHANGE
  21531. LMD T7
  21532. LMN 3
  21533. NJN CEN4 IF DEVICE NOT DOWN
  21534. LDD SR+4
  21535. NJN CEN1 IF ASSIGNED
  21536. LDN CM
  21537. STD T0
  21538. CEN3 AOD T0 ADVANCE CHANNEL BYTE INDEX
  21539. LMN CM+3
  21540. ZJN CEN1 IF BOTH POSSIBLE CHANNELS CHECKED
  21541. LDI T0
  21542. SHN -11 POSITION CHANNEL STATUS
  21543. LMN 4
  21544. NJN CEN3 IF NOT UP AND ACCESSIBLE
  21545. CEN4 LDD CM
  21546. SHN 21-13
  21547. LJM CENX RETURN
  21548.  
  21549.  
  21550. CENA CON 0 DEVICE MNEMONIC
  21551. C1R SPACE 4,10
  21552. ** C1R - CALL *1DS* AND REENTER.
  21553. *
  21554. * USES CM - CM+4.
  21555. *
  21556. * CALLS C1D.
  21557.  
  21558.  
  21559. C1R3 JMP KIE INCORRECT ENTRY
  21560.  
  21561. C1R LDC /1DS/SCDF+/1DS/LOCK PROCESS *1DS* CALL
  21562. C1R1 RJM C1D
  21563. LDC C1R2 SET REENTRY ADDRESS
  21564. STM /KEYBOARD/KCRB
  21565. C1R2 LDC /1DS/DSDL
  21566. CRD CM
  21567. LDD CM
  21568. NJP CLP1 IF *1DS* NOT COMPLETE
  21569. LDC /1DS/DSDL+1
  21570. CRD CM
  21571. LDD CM
  21572. NJN C1R3 IF INVALID CALL
  21573. JMP KBR RETURN
  21574. SPACE 4,10
  21575. CMDEND
  21576. COMMAND (ENTER TIME.),CMR
  21577. TIM SPACE 4,10
  21578. ** SYNTAX TABLE.
  21579.  
  21580.  
  21581. ENTRY TIM
  21582.  
  21583. TME ENTER (TIME. &lt;02&lt;09.&lt;05&lt;09.&lt;05&lt;09.),,SDF,ERL
  21584.  
  21585. ENTRY DAT
  21586.  
  21587. DTE ENTER (DATE. &lt;09&lt;09/&lt;01&lt;09/&lt;03&lt;09.),,SDF,ERL
  21588.  
  21589. CON 0 END OF TABLE
  21590. PD SPACE 4,10
  21591. ** DIRECT CELLS.
  21592.  
  21593.  
  21594. PD EQU SR PACKED DATE AND TIME
  21595. TME SPACE 4,10
  21596. *** TIME. HH.MM.SS.
  21597. *
  21598. * ENTER SYSTEM TIME.
  21599.  
  21600.  
  21601. ENTRY TME
  21602. LDK JDAL READ DATE
  21603. CRM JDAT,ON
  21604. LDM KBUF+6 CHECK LEADING HOUR
  21605. LMN 1R2
  21606. NJN TME1 IF NOT *2*
  21607. LDM KBUF+7 CHECK NEXT HOUR
  21608. SBN 1R4
  21609. MJN TME1 IF .LE. 3
  21610. JMP KIE *INCORRECT ENTRY*
  21611.  
  21612. TME1 LDN 4 SET ACCOUNT LOGGING BIT
  21613. RAM /KEYBOARD/LKBA
  21614. LDN 0
  21615. RJM C1D CHECK FOR COMMAND LOGGING
  21616. LDC TME1.1 SET REENTRY ADDRESS
  21617. STM /KEYBOARD/KCRB
  21618. TME1.1 LDC /1DS/DSDL
  21619. CRD CM
  21620. LDD CM
  21621. ZJN TME1.2 IF *1DS* COMPLETE
  21622. LJM CLP1 REENTER
  21623.  
  21624. TME1.2 LDN PDTL READ PACKED DATE AND TIME
  21625. CRD PD
  21626. LDK DTEL READ DATE
  21627. CRD DT
  21628. LDC TMEA ASSEMBLE TIME
  21629. STD T1 SET ASSEMBLY
  21630. LDC KBUF+5 SET CHARACTER ADDRESS
  21631. STD T2
  21632. STD CA
  21633. TME2 LDI T2
  21634. SHN 6
  21635. LMM 1,T2
  21636. STI T1
  21637. AOD T1
  21638. LDN 2
  21639. RAD T2
  21640. LMC KBUF+5+2*5
  21641. NJN TME2 IF MORE CHARACTERS
  21642. LDD PD+3 CLEAR HOURS
  21643. SCN 77
  21644. STD PD+3
  21645. RJM ADD ASSEMBLE HOURS
  21646. RAD PD+3
  21647. AOD CA ASSEMBLE MINUTES
  21648. RJM ADD
  21649. SHN 6
  21650. STD PD+4
  21651. AOD CA ASSEMBLE SECONDS
  21652. RJM ADD
  21653. RAD PD+4
  21654. LDN ZERL
  21655. CRD AB
  21656. CRD CM
  21657. LDD MA
  21658. ADN 1
  21659. STD CM+2
  21660. CWM JDAT,ON WRITE DATE AND TIME WORDS TO BUFFER
  21661. CWD PD
  21662. ADN 1
  21663. CWM TMEA,ON
  21664. CWD DT
  21665. ADN 1 WRITE DAY LIMIT (UNCHANGED)
  21666. CWD AB
  21667. LDN EDTS SET SUBFUNCTION
  21668. STD CM+1
  21669. MONITOR DSRM ENTER DATE/TIME
  21670. JMP KBR RETURN
  21671.  
  21672. TMEA BSS 5 ASSEMBLY BUFFER FOR TIME
  21673. ADD SPACE 4,10
  21674. ** ADD - ASSEMBLE DECIMAL DIGITS.
  21675. *
  21676. * ENTRY (CA) = CHARACTER ADDRESS.
  21677. *
  21678. * EXIT (A) = ASSEMBLY.
  21679. * (CA) ADVANCED.
  21680. *
  21681. * USES CA, T0.
  21682.  
  21683.  
  21684. ADD SUBR ENTRY/EXIT
  21685. AOD CA
  21686. LDI CA UPPER DIGIT * 10
  21687. SBN 1R0
  21688. STD T0
  21689. SHN 2
  21690. ADD T0
  21691. SHN 1
  21692. STD T0
  21693. AOD CA ADD LOWER DIGIT
  21694. LDI CA
  21695. SBN 1R0
  21696. ADD T0
  21697. UJN ADDX RETURN
  21698. SPACE 4,10
  21699. CMDEND
  21700. COMMAND (JOB CONTROL REQUESTS - CLASS.),CMR
  21701. CLA SPACE 4,10
  21702. *** CLASS,OT,C1,C2,...,CN.
  21703. *
  21704. * TOGGLE SERVICE CLASS MASK BIT FOR SPECIFIED ORIGIN TYPE.
  21705. *
  21706. * OT ORIGIN TYPE. (BC, EI, IA, RB, TX)
  21707. * CN TWO CHARACTER SERVICE CLASS MNEMONIC.
  21708. * *ALL* OR *NUL* ARE ALSO ACCEPTED.
  21709.  
  21710.  
  21711. ENTRY CLA
  21712. LDM 2,CA
  21713. LMN 1R,
  21714. ZJN CLA2 IF VALID SEPARATOR
  21715. CLA1 JMP KIE *INCORRECT ENTRY*
  21716.  
  21717. CLA2 RJM SOT SEARCH FOR VALID ORIGIN TYPE
  21718. LDK JBCP GET SCT ADDRESS
  21719. CRD CM
  21720. LDD CM GET CURRENT SCT ENTRY
  21721. SHN 14
  21722. ADD CM+1
  21723. ADD T2
  21724. CRD SR
  21725. LDN 2 GET FIRST SERVICE CLASS
  21726. RAD CA
  21727. LDM 3,CA CHECK FOR *ALL* OR *NUL*
  21728. SHN 6
  21729. LMM 4,CA
  21730. LMC 2RL.
  21731. NJN CLA3 IF NOT *ALL* OR *NUL*
  21732. LDM 1,CA
  21733. SHN 6
  21734. LMM 2,CA
  21735. LMC 2RNU
  21736. ZJP CLA6 IF *NUL* SELECTED
  21737. LMC 2RAL&2RNU
  21738. ZJP CLA7 IF *ALL* SELECTED
  21739.  
  21740. * PROCESS SERVICE CLASS PARAMETERS.
  21741.  
  21742. CLA3 AOD CA SKIP SEPARATOR
  21743. LDC TNSC
  21744. RJM SPT SEARCH FOR VALID SERVICE CLASS
  21745. STD T3
  21746. LDM TSCM,T3 GET SERVICE CLASS VALIDATION BIT
  21747. ZJP CLA1 IF INCORRECT SERVICE CLASS
  21748. STD T5
  21749. LDN SR+5 DETERMINE BYTE TO TOGGLE BIT IN
  21750. STD T1
  21751. CLA4 SOD T1
  21752. LCN 12D
  21753. RAD T3
  21754. PJN CLA4 IF NOT CORRECT BYTE
  21755. LDI T1 TOGGLE VALIDATION BIT
  21756. LMD T5
  21757. STI T1
  21758. LDN 2
  21759. RAD CA
  21760. LDI CA
  21761. LMN 1R,
  21762. ZJN CLA3 IF NOT END OF ENTRY
  21763. LMN 1R.&1R,
  21764. NJP CLA1 IF NOT VALID TERMINATOR
  21765. CLA5 LDD CM STORE SCT ENTRY
  21766. SHN 14
  21767. ADD CM+1
  21768. ADD T2
  21769. CWD SR
  21770. JMP KBR RETURN
  21771.  
  21772. CLA6 STD SR+3
  21773. UJN CLA8 CLEAR ALL MASK BITS
  21774.  
  21775. CLA7 LDK A2MK SET ALL MASK BITS
  21776. STD SR+3
  21777. LDK A1MK
  21778. CLA8 STD SR+4
  21779. UJN CLA5 STORE SCT ENTRY
  21780. SOT SPACE 4,10
  21781. ** SOT - SEARCH FOR VALID ORIGIN TYPE.
  21782. *
  21783. * ENTRY ((CA - CA+1)) = ORIGIN TYPE PARAMETER.
  21784. *
  21785. * EXIT (T2) = ORIGIN TYPE VALUE.
  21786. *
  21787. * ERROR TO *KBR* IF ORIGIN TYPE INCORRECT.
  21788. * ERROR TO *KIE* IF ORIGIN TYPE INVALID.
  21789. *
  21790. * USES T1, T2, T3.
  21791.  
  21792.  
  21793. SOT2 AOD T1 RETURN ORIGIN TYPE VALUE
  21794. LDM TCOT,T1
  21795. STD T2
  21796.  
  21797. SOT SUBR ENTRY/EXIT
  21798. LDN 0 INITIALIZE TABLE INDEX
  21799. STD T1
  21800. LDI CA ASSEMBLE ORIGIN TYPE
  21801. SHN 6
  21802. LMM 1,CA
  21803. STD T3
  21804. LDM TCOT,T1 SEARCH TABLE FOR ORIGIN TYPE
  21805. SOT1 LMD T3
  21806. ZJN SOT2 IF MATCH FOUND
  21807. LDN 2 INCREMENT TABLE INDEX
  21808. RAD T1
  21809. LDM TCOT,T1
  21810. NJN SOT1 IF NOT END OF TABLE
  21811. JMP KIE PROCESS INVALID ENTRY
  21812. SPT SPACE 4,10
  21813. ** SPT - SEARCH PARAMETER TABLE.
  21814. *
  21815. * ENTRY (A) = FWA OF PARAMETER TABLE.
  21816. * (CA) = CHARACTER ADDRESS.
  21817. *
  21818. * EXIT (A) = INDEX OF ENTRY FOUND.
  21819. *
  21820. * USES T1, T3, T5.
  21821.  
  21822.  
  21823. SPT2 LDD T5
  21824. SBD T3
  21825.  
  21826. SPT SUBR ENTRY/EXIT
  21827. STD T3
  21828. STD T5
  21829. LDI CA ASSEMBLE PARAMETER NAME
  21830. SHN 6
  21831. LMM 1,CA
  21832. STD T1
  21833. LDI T5
  21834. SPT1 LMD T1
  21835. ZJN SPT2 IF MATCH FOUND
  21836. AOD T5 INCREMENT TABLE INDEX
  21837. LDI T5
  21838. NJN SPT1 IF NOT END OF TABLE
  21839. JMP KIE *INCORRECT ENTRY*
  21840. TCOT SPACE 4,10
  21841. ** TCOT - TABLE OF *CLASS* ORIGIN TYPES.
  21842.  
  21843.  
  21844. TCOT BSS 0
  21845. CON 2RBC,BCOT LOCAL BATCH
  21846. CON 2RRB,RBOT REMOTE BATCH
  21847. CON 2RIA,IAOT INTERACTIVE
  21848. CON 2REI,EIOT REMOTE BATCH
  21849. CON 2RTX,TXOT INTERACTIVE
  21850. CON 0
  21851. TSCM SPACE 4,10
  21852. ** TSCM - TABLE OF SERVICE CLASS MASK BITS.
  21853. *
  21854. * THIS TABLE IS INDEXED BY SERVICE CLASS VALUES.
  21855. *
  21856. * ONLY SERVICE CLASSES DEFINED IN THIS TABLE ARE
  21857. * ALLOWED ON THE *PCLASS* AND *CLASS* COMMANDS.
  21858.  
  21859.  
  21860. TSCM INDEX
  21861. LIST D
  21862. .SCL HERE
  21863. LIST *
  21864. INDEX MXSC
  21865. TNSC SPACE 4,10
  21866. ** TNSC - TABLE OF TWO-CHARACTER SERVICE CLASS TYPES.
  21867.  
  21868.  
  21869. LIST D,G
  21870. TNSC DATA H+"NMSC"+
  21871. LIST *
  21872. CON 0 END OF TABLE
  21873. SPACE 4,10
  21874. CMDEND
  21875. COMMAND (JOB CONTROL REQUESTS - PCLASS.),CMR
  21876. PCL SPACE 4,10
  21877. ** PCLASS,P0,P1,...,P7.
  21878. *
  21879. * SET PRIORITY ORDERED SERVICE CLASSES.
  21880. *
  21881. * EACH PARAMETER SETS THE SERVICE CLASS FOR THE INDICATED
  21882. * PRIORITY LEVEL. THE DEFAULT FOR EACH NULL PARAMETER IS
  21883. * ZERO.
  21884.  
  21885.  
  21886. PCL4 JMP KIE PROCESS INCORRECT ENTRY
  21887.  
  21888. ENTRY PCL
  21889. ERRNZ SR+5-SH SCRATCH STORAGE NOT CONTIGUOUS
  21890. LDN ZERL INITIALIZE SERVICE CLASSES
  21891. CRD SR
  21892. CRD SH
  21893. LDN 0 INITIALIZE PRIORITY INDEX
  21894. STD T2
  21895. LDI CA
  21896. LMN 1R.
  21897. ZJN PCL3 IF TERMINATOR
  21898. PCL1 LDI CA
  21899. LMN 1R,
  21900. ZJN PCL2 IF NULL PARAMETER
  21901. LDC TNSC
  21902. RJM SPT SEARCH FOR VALID SERVICE CLASS
  21903. STD T3
  21904. LDM TSCM,T3
  21905. ZJN PCL4 IF SERVICE CLASS NOT ALLOWED
  21906. LDD T1 SET SERVICE CLASS INTO SCT
  21907. STM SR,T2
  21908. LDN 2
  21909. RAD CA
  21910. LDI CA
  21911. LMN 1R.
  21912. ZJN PCL3 IF TERMINATOR
  21913. PCL2 AOD CA
  21914. LDI CA
  21915. LMN 1R.
  21916. ZJN PCL3 IF END OF ENTRY
  21917. AOD T2
  21918. SBN 10
  21919. NJN PCL1 IF NOT MAXIMUM PRIORITIES
  21920. LJM PCL4 PROCESS INCORRECT ENTRY
  21921.  
  21922. PCL3 LDK JBCP SET PRIORITY LEVEL SERVICE CLASSES
  21923. CRD CM
  21924. LDD CM
  21925. SHN 14
  21926. ADD CM+1
  21927. ADN PLSC
  21928. CWD SR
  21929. ADN 1
  21930. CWD SH
  21931. JMP KBR RETURN
  21932. SPT SPACE 4,10
  21933. ** SPT - SEARCH PARAMETER TABLE.
  21934. *
  21935. * ENTRY (A) = FWA OF PARAMETER TABLE.
  21936. * (CA) = CHARACTER ADDRESS.
  21937. *
  21938. * EXIT (A) = INDEX OF ENTRY FOUND.
  21939. *
  21940. * USES T1, T3, T5.
  21941.  
  21942.  
  21943. SPT2 LDD T5
  21944. SBD T3
  21945.  
  21946. SPT SUBR ENTRY/EXIT
  21947. STD T3
  21948. STD T5
  21949. LDI CA ASSEMBLE PARAMETER NAME
  21950. SHN 6
  21951. LMM 1,CA
  21952. STD T1
  21953. LDI T5
  21954. SPT1 LMD T1
  21955. ZJN SPT2 IF MATCH FOUND
  21956. AOD T5 INCREMENT TABLE INDEX
  21957. LDI T5
  21958. NJN SPT1 IF NOT END OF TABLE
  21959. JMP KIE *INCORRECT ENTRY*
  21960. TSCM SPACE 4,10
  21961. ** TSCM - TABLE OF SERVICE CLASS MASK BITS.
  21962. *
  21963. * THIS TABLE IS INDEXED BY SERVICE CLASS VALUES.
  21964. *
  21965. * ONLY SERVICE CLASSES DEFINED IN THIS TABLE ARE
  21966. * ALLOWED ON THE *PCLASS* AND *CLASS* COMMANDS.
  21967.  
  21968.  
  21969. *CALL COMSSCD
  21970.  
  21971. TSCM INDEX
  21972. LIST D
  21973. .SCL HERE
  21974. LIST *
  21975. INDEX MXSC
  21976. TNSC SPACE 4,10
  21977. ** TNSC - TABLE OF TWO-CHARACTER SERVICE CLASS TYPES.
  21978.  
  21979.  
  21980. LIST D,G
  21981. TNSC DATA H+"NMSC"+
  21982. LIST *
  21983. CON 0 END OF TABLE
  21984. SPACE 4,10
  21985. CMDEND
  21986. COMMAND (PROCESS THRESHOLDS.)
  21987. THR SPACE 4,10
  21988. *** THRESHOLD,TH=XXXX,E1,E2,...,EN.
  21989. *
  21990. * TH = VF - SET VALIDATION FAILURE THRESHOLD.
  21991. * RA - SET RESTRICTED ACTIVITY THRESHOLD.
  21992. * LS - SET LOW SPACE THRESHOLD.
  21993. * RE - SET RECOVERED ERROR THRESHOLD.
  21994. * UE - SET UNRECOVERED ERROR THRESHOLD.
  21995. * XXXX = THRESHOLD VALUE.
  21996. * = * TO SET DEFAULT VALUES.
  21997. * EN = EST ORDINAL ON WHICH TO SET THRESHOLD.
  21998.  
  21999.  
  22000. ENTRY THR
  22001. LDN 0 CHECK THRESHOLD TYPE
  22002. STD T6
  22003. LDI CA
  22004. SHN 6
  22005. ADM 1,CA
  22006. STD T1
  22007. LDM TTHR,T6
  22008. THR1 LMD T1
  22009. ZJN THR3 IF MATCH FOUND
  22010. AOD T6
  22011. LDM TTHR,T6
  22012. NJN THR1 IF MORE ENTRIES TO COMPARE
  22013. THR2 JMP KIE *INCORRECT ENTRY*
  22014.  
  22015. THR3 LDN 2 ADVANCE KEYBOARD INDEX
  22016. RAD CA
  22017. LDI CA
  22018. LMN 1R=
  22019. NJN THR2 IF INCORRECT SEPARATOR
  22020. AOD CA
  22021. LDI CA
  22022. LMN 1R*
  22023. STD T7
  22024. NJN THR4 IF NOT DEFAULT
  22025. AOD CA
  22026. UJN THR5 PROCESS EQUIPMENT LIST
  22027.  
  22028. THR4 RJM ASD GET THRESHOLD VALUE
  22029. LDD AB+4
  22030. LPC 3777
  22031. STM TDTV,T6
  22032. THR5 LDI CA CHECK SEPARATOR CHARACTER
  22033. LMN 1R,
  22034. ZJN THR7 IF VALID SEPARATOR
  22035. THR6 JMP KIE *INCORRECT ENTRY*
  22036.  
  22037. THR7 LDN 5
  22038. SBD T6
  22039. SHN 2
  22040. STD T0 SET BIT NUMBER OF OPERATOR NOTIFIED FLAG
  22041. SHN 1
  22042. ADD T0
  22043. SBN 1
  22044. SHN 6
  22045. STM THRA+1
  22046. LDK ESTP
  22047. CRD T1
  22048. THR8 AOD CA GET NEXT EQUIPMENT NUMBER
  22049. RJM ASD
  22050. LDD AB
  22051. ADD AB+1
  22052. ADD AB+2
  22053. ADD AB+3
  22054. NJN THR6 IF ORDINAL IS TOO LARGE
  22055. LDD AB+4
  22056. SBD T1+3
  22057. THR9 PJN THR6 IF ORDINAL BEYOND MASS STORAGE LIMIT
  22058. SFA EST,AB+4
  22059. ADK EQDE
  22060. CRD CM
  22061. LDD CM
  22062. SHN 21-13
  22063. PJN THR9 IF NOT MASS STORAGE DEVICE
  22064. LDI CA
  22065. LMN 1R.
  22066. ZJN THR10 IF VALID TERMINATOR
  22067. LMN 1R,&1R.
  22068. NJN THR9 IF NOT VALID SEPARATOR
  22069. THR10 LDD CM+4
  22070. SHN 3
  22071. ADK TDGL
  22072. CRD SH
  22073. ADN THLL-TDGL READ MST THRESHOLD WORD
  22074. CRD SR
  22075. LDD T7
  22076. NJN THR11 IF NOT ENTERING DEFAULT VALUE
  22077. LDD SH
  22078. SHN -3
  22079. STM TDTV+1 SET DEFAULT VALUES FOR TRACK THRESHOLDS
  22080. SHN -1
  22081. STM TDTV+2
  22082. THR11 LDM TDTV,T6 STORE NEW THRESHOLD
  22083. STM SR,T6
  22084. LDD CM+4 WRITE MST THRESHOLD WORD
  22085. SHN 3
  22086. ADN THLL
  22087. CWD SR
  22088. ADN CTLL-THLL CLEAR OPERATOR NOTIFIED FLAG
  22089. STD CM+4
  22090. SHN -14
  22091. STD CM+3
  22092. LDN 1
  22093. STD CM+1
  22094. LDD MA
  22095. CWM THRA,CM+1
  22096. MONITOR UTEM
  22097. LDI CA CHECK NEXT CHARACTER
  22098. LMN 1R,
  22099. ZJP THR8 IF MORE EST ORDINALS
  22100. JMP KBR RETURN
  22101.  
  22102.  
  22103. THRA VFD 1/0,5/0,6/1,6/0,42/0
  22104. TTHR SPACE 4,10
  22105. ** TTHR - TABLE OF THRESHOLDS.
  22106.  
  22107.  
  22108. TTHR BSS 0
  22109.  
  22110. LOC 0
  22111. CON 2RVF VERIFICATION FAILURES
  22112. CON 2RRA RESTRICT ACTIVITY
  22113. CON 2RLS LOW SPACE
  22114. CON 2RRE RECOVERED ERRORS
  22115. CON 2RUE UNRECOVERED ERRORS
  22116. LOC *O
  22117.  
  22118. CON 0
  22119.  
  22120. TDTV CON 1 VERIFICATION FAILURES
  22121. CON 0 RESTRICT ACTIVITY (=SIZE/8)
  22122. CON 0 LOW SPACE (=SIZE/16)
  22123. CON 50 RECOVERED ERRORS
  22124. CON 1 UNRECOVERED ERRORS
  22125. SPACE 4,10
  22126. CMDEND
  22127. COMMAND (SECURITY FUNCTIONS - QUEUES.),CMR
  22128. OQSH SPACE 4,10
  22129. *** OQSH=NNNNNNN.
  22130. * SELECTS OUTPUT SPECIAL HANDLING LEVEL.
  22131. * NNNNNNN OUTPUT QUEUE SPECIAL HANDLING LEVEL.
  22132.  
  22133.  
  22134. ENTRY OQS
  22135. RJM ASN ASSEMBLE PARAMETER
  22136. LDN AB SET POINTER TO PARAMETER
  22137. RJM VAL SEARCH TABLE FOR PARAMETER
  22138. MJN OQS1 IF PARAMETER NOT FOUND
  22139. STD T3
  22140. LDN SSML CLEAR OQSH
  22141. CRD CM
  22142. LDD CM
  22143. SHN 14
  22144. SCN 77
  22145. LMD T3 SET NEW OQSH
  22146. SHN 6
  22147. STD CM
  22148. LDN SSML
  22149. CWD CM
  22150. JMP KBR RETURN
  22151.  
  22152. OQS1 JMP KIE INCORRECT ENTRY
  22153. REL SPACE 4,10
  22154. *** RELEASE,JSN.
  22155. *
  22156. * SETS THE OPERATOR RELEASE BIT FOR THE QFT ENTRY.
  22157.  
  22158.  
  22159. ENTRY REL
  22160. RJM ASN ASSEMBLE JSN
  22161. LDD AB+2
  22162. NJN REL3 IF JSN .GT. 4 CHARACTERS
  22163. STD T1 INITIALIZE QFT ORDINAL
  22164. LDK QFTP GET MAXIMUM NUMBER OF QFT ENTRIES
  22165. CRD CM
  22166. LDD CM+2
  22167. STD T2
  22168. REL1 SFA QFT,T1 GET QFT ENTRY
  22169. CRD CM
  22170. LDD CM COMPARE JSN TO REQUESTED JSN
  22171. LMD AB
  22172. NJN REL2 IF NO MATCH
  22173. LDD CM+1
  22174. LMD AB+1
  22175. ZJN REL4 IF MATCH
  22176. REL2 AOD T1 INCREMENT QFT ORDINAL
  22177. SBD T2
  22178. NJN REL1 IF MORE ENTRIES TO CHECK
  22179. REL3 JMP KIE *INCORRECT ENTRY*
  22180.  
  22181. REL4 SFA QFT,T1 SET UP *UTEM* PARAMETERS
  22182. STD CM+4
  22183. SHN -14
  22184. STD CM+3
  22185. LDN 0
  22186. STD CM+2
  22187. LDN 1 NUMBER OF REQUESTS TO BE PROCESSED
  22188. STD CM+1
  22189. LDD MA WRITE *UTEM* REQUEST WORD
  22190. CWM RELA,ON
  22191. MONITOR UTEM
  22192. LDD CM+1
  22193. NJN REL3 IF FUNCTION FAILED
  22194. LJM KBR RETURN
  22195.  
  22196. RELA VFD 1/0,5/INSQ,6/1,6/18D,42/1
  22197. SPACE 4,10
  22198. * COMMON DECKS.
  22199.  
  22200.  
  22201. QUAL
  22202. SCH$ SET 1
  22203. QUAL *
  22204. *CALL COMPVLC
  22205. SPACE 4,10
  22206. CMDEND
  22207. COMMAND (SECURITY FUNCTIONS - SECUREQ.),CMR
  22208. SECUREQ SPACE 4,10
  22209. *** SECUREQ,EQ,LA=XXXXXXX,UA=YYYYYYY.
  22210. *
  22211. * SET EQUIPMENT ACCESS LIMITS.
  22212. *
  22213. * EQ EST ORDINAL OF EQUIPMENT.
  22214. * XXXXXXX LOWER BOUND.
  22215. * YYYYYYY UPPER BOUND.
  22216.  
  22217.  
  22218. ENTRY SCQ
  22219. LDN 3 RESET BOUNDS FLAG
  22220. STD T8
  22221. RJM ASD ASSEMBLE EST ORDINAL
  22222. LDN ESTP
  22223. CRD SH
  22224. LDD AB+4 CHECK EST ORDINAL
  22225. STD CM+1
  22226. SBD SH+2
  22227. PJN SCQ1 IF INCORRECT EST ORDINAL
  22228. SFA EST,AB+4 GET EST ENTRY
  22229. ADK EQDE
  22230. CRD SH
  22231. LDC TURE FWA OF UNIT RECORD EQUIPMENT MNEMONICS
  22232. STD T3
  22233. LDD SH+3
  22234. ZJN SCQ1 IF NULL ENTRY
  22235. RJM SST CHECK IF UNIT RECORD EQUIPMENT
  22236. LDI CA
  22237. LMN 1R,
  22238. ZJN SCQ2 IF SEPARATOR A COMMA
  22239. SCQ1 LJM KIE INCORRECT COMMAND
  22240.  
  22241. SCQ2 AOD CA CHECK PREFIX
  22242. LDC TBDP
  22243. STD T3
  22244. LDN 0
  22245. RJM SST
  22246. STD T5
  22247. LDN 2
  22248. RAD CA
  22249. LDI CA CHECK SEPARATOR
  22250. LMN 1R=
  22251. NJN SCQ1 IF SEPARATOR NOT AN =
  22252. AOD CA
  22253. RJM ASN ASSEMBLE PARAMETER
  22254. LDN AB SET POINTER TO PARAMETER
  22255. RJM VAL SEARCH TABLE FOR PARAMETER
  22256. MJN SCQ1 IF MATCH NOT FOUND
  22257. STD T3
  22258. LDD T5
  22259. ZJN SCQ3 IF PARAMETER NOT AN UPPER BOUND
  22260. LDD T3 SET UPPER BOUND
  22261. STD SP+1
  22262. LDD T8 UPDATE BOUNDS FLAG
  22263. SCN 2
  22264. STD T8
  22265. UJN SCQ4 CHECK FOR ADDITIONAL PARAMETERS
  22266.  
  22267. SCQ3 LDD T3 SET LOWER BOUND
  22268. STD SP
  22269. LDD T8 UPDATE BOUNDS FLAG
  22270. SCN 1
  22271. STD T8
  22272. SCQ4 LDI CA
  22273. LMN 1R.
  22274. ZJN SCQ5 IF END OF STATEMENT
  22275. LJM SCQ2 PROCESS NEXT PARAMETER
  22276.  
  22277. SCQ5 LDD T8
  22278. ZJN SCQ7 IF BOTH LOWER AND UPPER BOUNDS PRESENT
  22279. SCQ6 JMP KIE INCORRECT PARAMETER
  22280.  
  22281. SCQ7 LDD SP+1
  22282. SBD SP
  22283. MJN SCQ6 IF LOWER .GT. UPPER BOUND
  22284. LDD SP INSERT LIMITS INTO *SEQM* CALL
  22285. SHN 3
  22286. LMD SP+1
  22287. LMC 4000 SET *MSEQ* ACCOUNT FILE MESSAGE FLAG
  22288. STD AB+3
  22289. LPN 77
  22290. STM SCQA+4
  22291. LDD CM+1 SET EST ORDINAL
  22292. STD AB+4
  22293. SFA EST STORE EST ENTRY ADDRESS
  22294. STD CM+4
  22295. SHN -14
  22296. STD CM+3
  22297. LDN 1 STORE REQUEST COUNT
  22298. STD CM+1
  22299. LDD MA PLACE REQUEST IN MESSAGE BUFFER
  22300. CWM SCQA,ON
  22301. MONITOR UTEM SET LIMITS IN EST ENTRY
  22302. LDK /1DS/SAMF
  22303. JMP KAR PROCESS *1DS* REQUEST
  22304.  
  22305.  
  22306. SCQA VFD 1/0,5/EQAE,6/6,6/12D,42/0 *UTEM* REQUEST
  22307. SPACE 4,10
  22308. ** SST - SEARCH STRING TABLE.
  22309. *
  22310. * ENTRY (A) = 2 CHARACTERS, RIGHT JUSTIFIED.
  22311. * = 0, IF CHARACTERS IN (CA).
  22312. * (T3) = FWA PARAMETER TABLE.
  22313. * (CA) = CHARACTER ADDRESS.
  22314. *
  22315. * EXIT (A) = INDEX OF ENTRY FOUND.
  22316. *
  22317. * USES T1, T2.
  22318.  
  22319.  
  22320. SST3 LDD T2 RETURN WITH INDEX
  22321. SBD T3
  22322.  
  22323. SST SUBR ENTRY/EXIT
  22324. NJN SST1 IF CHARACTER IN ACCUMULATOR
  22325. LDI CA ASSEMBLE PARAMETER NAME
  22326. SHN 6
  22327. LMM 1,CA
  22328. SST1 STD T1
  22329. LDD T3 SET TABLE FWA
  22330. STD T2
  22331. LDI T2
  22332. SST2 LMD T1
  22333. ZJN SST3 IF MATCH FOUND
  22334. AOD T2 ADVANCE TABLE
  22335. LDI T2
  22336. NJN SST2 IF NOT END OF TABLE
  22337. JMP KIE *INCORRECT ENTRY*
  22338. TBDP SPACE 4,10
  22339. ** TBDP - TABLE OF BOUNDS PARAMETERS.
  22340.  
  22341.  
  22342. TBDP BSS 0
  22343. CON 2RLA
  22344. CON 2RUA
  22345. CON 0
  22346. SPACE 4,10
  22347. ** TURE - UNIT RECORD EQUIPMENT MNEMONICS.
  22348.  
  22349.  
  22350. TURE BSS 0
  22351. DATA 2RCP
  22352. DATA 2RCR
  22353. DATA 2RLQ
  22354. DATA 2RLR
  22355. DATA 2RLS
  22356. DATA 2RLT
  22357. DATA 2RLX
  22358. DATA 2RLY
  22359. CON 0
  22360. SPACE 4,10
  22361. * COMMON DECKS.
  22362.  
  22363.  
  22364. QUAL
  22365. SCH$ SET 1
  22366. QUAL *
  22367. *CALL COMPVLC
  22368. SPACE 4,10
  22369. CMDEND
  22370. COMMAND (SECURITY FUNCTIONS - SECURES.),CMR
  22371. SECURES SPACE 4,10
  22372. *** SECURES,OT,LA=XXXXXXX,UA=YYYYYYY.
  22373. * SET THE SYSTEM ACCESS LEVEL LIMITS (OT = SY).
  22374. * SET ORIGIN TYPE ACCESS LEVEL LIMITS (OT = BC, RB, IA).
  22375. * XXXXXXX LOWER BOUND.
  22376. * YYYYYYY UPPER BOUND.
  22377.  
  22378.  
  22379. ENTRY SCU
  22380. LDK INWL CHECK SYSTEM ACCESS LIMITS CHANGE STATUS
  22381. CRD CM
  22382. LDD CM+3
  22383. SHN 21-2
  22384. MJN SCU1 IF CHANGE IN PROGRESS
  22385. LDN 10 SET INITIAL VALUES
  22386. STD SP
  22387. STD SP+1
  22388. LDC TJOT CHECK ORIGIN TYPE
  22389. RJM SPT
  22390. SHN -1
  22391. STD T5
  22392. RAM SCUA
  22393. LDN 2
  22394. RAD CA
  22395. LDI CA
  22396. LMN 1R,
  22397. ZJN SCU2 IF SEPARATOR A COMMA
  22398. SCU1 LJM KIE INCORRECT COMMAND
  22399.  
  22400. SCU2 AOD CA CHECK PREFIX
  22401. LDC TBDP
  22402. RJM SPT
  22403. STD T9
  22404. LDN 2
  22405. RAD CA
  22406. LDI CA
  22407. LMN 1R=
  22408. NJN SCU1 IF SEPARATOR NOT AN *=*
  22409. AOD CA
  22410. RJM ASN
  22411. LDN AB SET POINTER TO PARAMETER
  22412. RJM VAL SEARCH TABLE FOR PARAMETER
  22413. MJN SCU1 IF PARAMETER NOT FOUND
  22414. STM SP,T9 SET BOUND
  22415. LDI CA
  22416. LMN 1R.
  22417. NJN SCU2 IF NOT END OF COMMAND
  22418. STD T7 ASSUME ONE ORIGIN TYPE TO BE CHANGED
  22419. LDD SP+1
  22420. SBD SP
  22421. MJN SCU6 IF LOWER BOUND .GT. UPPER BOUND
  22422. LDN 0 GET CURRENT SYSTEM ACCESS LIMITS
  22423. RJM RJC
  22424. CRD AB
  22425. LDD AB+1
  22426. LPN 77
  22427. SHN -3+22
  22428. STD T3
  22429. SHN -22+3
  22430. STD T4
  22431. LDD T5
  22432. LMK SYOT
  22433. ZJN SCU7 IF SYSTEM ORIGIN TYPE
  22434. LDD T4
  22435. SBD SP+1
  22436. MJN SCU6 IF UPPER BOUND .GT. SYSTEM UPPER BOUND
  22437. LDD T3
  22438. SBD SP
  22439. MJN SCU9 IF LOWER BOUND .GE. SYSTEM LOWER BOUND
  22440. ZJN SCU9 IF LOWER BOUND .GE. SYSTEM LOWER BOUND
  22441. SCU6 JMP KIE INCORRECT PARAMETER
  22442.  
  22443. SCU7 LDD SP CHECK BOTH *LA* AND *UA* ENTERED
  22444. SCN 7
  22445. ADD SP+1
  22446. SCN 7
  22447. NJN SCU6 IF BOTH PARAMETERS NOT ENTERED
  22448. LDD SF
  22449. ZJN SCU8 IF UNSECURE SYSTEM
  22450. SBN 1
  22451. ZJN SCU8 IF VALID TO RAISE OR LOWER LIMITS
  22452. SBN 3-1
  22453. ZJN SCU6 IF INCORRECT TO RAISE OR LOWER LIMITS
  22454. LDD SP+1
  22455. SBD T4
  22456. MJN SCU6 IF LOWERING LIMITS
  22457. LDD SP
  22458. SBD T3
  22459. MJN SCU6 IF LOWERING LIMITS
  22460. SCU8 LDN IAOT SET TO FIX ALL ORIGIN TYPE BOUNDS
  22461. STD T7
  22462. SCU9 LDD SP
  22463. SHN 3
  22464. RAD SP+1
  22465. SCU10 LDN 0 GET SERVICE CONTROL TABLE ADDRESS
  22466. RJM RJC
  22467. ADD T5 GET SERVICE CONTROL WORD
  22468. CRD AB
  22469. LDD AB+1 SET BOUND IN WORD
  22470. SCN 77
  22471. LMD SP+1
  22472. STD AB+1
  22473. LDN 0 GET SERVICE CONTROL TABLE ADDRESS
  22474. RJM RJC
  22475. ADD T5 WRITE SERVICE CONTROL WORD
  22476. CWD AB
  22477. AOD T5
  22478. SOD T7
  22479. PJN SCU10 IF MORE BOUNDS TO SET (OT = *SY* ONLY)
  22480. LDD SF
  22481. ZJN SCU11 IF UNSECURED SYSTEM
  22482. LDN 1
  22483. STD CM+1 SET OPTION COUNT
  22484. STD CM+2 DO NOT DROP PP
  22485. LDD MA
  22486. CWM SCUB,ON
  22487. MONITOR UADM SET ACCESS LIMITS CHANGED FLAG
  22488. SCU11 LDD SP+1 NEW ACCESS LEVEL LIMITS
  22489. STD AB+3
  22490. LDN 0 ORIGIN TYPE
  22491. SCUA EQU *-1
  22492. STD AB+4
  22493. LDK /1DS/SAMF
  22494. JMP KAR PROCESS *1DS* REQUEST
  22495.  
  22496.  
  22497. SCUB CON LIOS INCREMENT BY ONE
  22498. CON INWL
  22499. CON 14D*100+1 BIT ADDRESS AND FIELD WIDTH
  22500. SPACE 4,10
  22501. ** SPT - SEARCH PARAMETER TABLE.
  22502. *
  22503. * ENTRY (A) = FWA PARAMETER TABLE.
  22504. * (CA) = CHARACTER ADDRESS.
  22505. *
  22506. * EXIT (A) = INDEX OF ENTRY FOUND.
  22507. *
  22508. * USES T1, T2, T3.
  22509.  
  22510.  
  22511. SPT2 LDD T2 RETURN WITH INDEX
  22512. SBD T3
  22513.  
  22514. SPT SUBR ENTRY/EXIT
  22515. STD T2 SET TABLE FWA
  22516. STD T3
  22517. LDI CA ASSEMBLE PARAMETER NAME
  22518. SHN 6
  22519. LMM 1,CA
  22520. STD T1
  22521. LDI T2
  22522. SPT1 LMD T1
  22523. ZJN SPT2 IF MATCH FOUND
  22524. AOD T2
  22525. LDI T2
  22526. NJN SPT1 IF NOT END OF TABLE
  22527. JMP KIE *INCORRECT ENTRY*
  22528. TBDP SPACE 4,10
  22529. ** TBDP - TABLE OF BOUNDS PARAMETERS.
  22530.  
  22531.  
  22532. TBDP BSS 0
  22533. CON 2RLA
  22534. CON 2RUA
  22535. CON 0
  22536. TJOT SPACE 4,10
  22537. ** TJOT - TABLE OF JOB ORIGIN TYPES.
  22538.  
  22539. TJOT BSS 0
  22540. CON 2RSY,6060
  22541. CON 2RBC,6060
  22542. CON 2REI,2RRB
  22543. CON 2RTX,2RIA
  22544. CON 0
  22545. SPACE 4,10
  22546. * COMMON DECKS.
  22547.  
  22548.  
  22549. QUAL
  22550. SCH$ SET 1
  22551. QUAL *
  22552. *CALL COMPVLC
  22553. SPACE 4,10
  22554. CMDEND
  22555. COMMAND (TRAP/TRACE COMMANDS - PART 1.),CMR
  22556. SPACE 4,10
  22557. *** THIS COMMAND OVERLAY WORKS IN CONJUNCTION WITH THE *TRACE*
  22558. * BLOCK IN *CPUMTR*. THE TRAP AND TRACE COMMANDS ARE AVAILABLE
  22559. * WHEN THE *TRACE* BLOCK IS ENABLED AT DEADSTART AND WHEN
  22560. * SYSTEM DEBUG IS ENABLED.
  22561. TPF SPACE 4,10
  22562. *** TRAP,NFL.
  22563. * TRAP,MCT.
  22564. * TRAP,EJT.
  22565. * TRAP,DJB.
  22566. *
  22567. * CHECK FOR IRREGULARITIES IN NFL, THE MEMORY CONTROL TABLE
  22568. * (MCT), IN THE EJT AND PCPA ENTRIES, OR FOR DEAD JOBS,
  22569. * RESPECTIVELY. THE CHECK IS MADE IN *CPUMTR* WHEN EXITING
  22570. * MONITOR MODE.
  22571.  
  22572. *** TRAP,MEM,W,V,H,L.
  22573. * TRAP,CPA,W,V,H,L.
  22574. *
  22575. * SET A TRAP ON THE CM WORD WITH ABSOLUTE ADDRESS (*TRAP,MEM*)
  22576. * OR CPA ADDRESS (*TRAP,CPA*) W FOR VALUE V. H AND L
  22577. * (OPTIONAL - DEFAULTS ARE 59 AND 0) ARE THE HIGH AND LOW BIT
  22578. * POSITIONS, IN DECIMAL, OF THE FIELD IN THE WORD TO CHECK.
  22579. * IF V IS *N*, THE TRAP IS FOR ANY NON-ZERO VALUE IN THE FIELD.
  22580. * THE TRAP CHECK IS MADE IN *CPUMTR* WHEN EXITING MONITOR MODE.
  22581. * FOR *TRAP,CPA*, ALL OF THE CPA-S AND PCPA-S ARE CHECKED FOR
  22582. * WORD W HAVING VALUE V.
  22583.  
  22584. *** TRAP.
  22585. *
  22586. * CLEAR TRAP.
  22587.  
  22588. *** TRACE,SET,ABS,ADD1,ADD2.
  22589. * TRACE,SET,CPA,ADD1,ADD2.
  22590. *
  22591. * SET THE ADDRESSES OF THE ABSOLUTE OR CPA WORDS TO CAPTURE
  22592. * WHEN TRACE IS ENABLED. ADD1 AND ADD2 MUST BE ENTERED AS
  22593. * OCTAL DIGITS. *TRACE,MTR* OR *TRACE,PPU* ARE USED TO SELECT
  22594. * THE FUNCTIONS TO TRACE. TRACE DATA IS COLLECTED BY *CPUMTR*
  22595. * IMMEDIATELY BEFORE THE SELECTED FUNCTION IS PROCESSED.
  22596.  
  22597.  
  22598. ENTRY TCA *TRACE,SET,ABS*
  22599. LDN 2 ASSEMBLE ABSOLUTE ADDRESS
  22600. UJN TCC1 CONTINUE
  22601.  
  22602. ENTRY TCC *TRACE,SET,CPA*
  22603. LDN 1
  22604. TCC1 STD T8
  22605. LDC KBUF+16
  22606. STD CA
  22607. RJM AVA ASSEMBLE FIRST ADDRESS
  22608. LDD MA SAVE ADDRESS
  22609. CWD AB
  22610. CRD CM
  22611. AOD CA
  22612. RJM AVA ASSEMBLE SECOND ADDRESS
  22613. LDD MA
  22614. CWD AB
  22615. CRD CM-2
  22616. CWD CM
  22617. LDD T8
  22618. SHN 1
  22619. UJN TPF2 SEND MONITOR FUNCTION
  22620.  
  22621. ENTRY TPN
  22622. LDN 10
  22623. UJN TPF1 SET NFL CHECK
  22624.  
  22625. ENTRY TPM
  22626. LDN 4
  22627. UJN TPF1 SET MCT CHECK
  22628.  
  22629. ENTRY TPD
  22630. LDN 2
  22631. UJN TPF1 SET DEAD JOB CHECK
  22632.  
  22633. ENTRY TPJ
  22634. LDN 1
  22635. UJN TPF1 SET EJT/PCPA CHECK
  22636.  
  22637. ENTRY TPA
  22638. LDN 0 CLEAR TRAP
  22639. TPF1 SHN 6
  22640. TPF2 STD CM+1 SET/CLEAR TRAP/TRACE FLAGS
  22641. LJM TPF8 SEND MONITOR FUNCTION
  22642.  
  22643. ENTRY TPC
  22644. LDN 1
  22645. UJN TPF3 SET CPA TRAP
  22646.  
  22647. ENTRY TPF
  22648. LDN 2 SET CM TRAP
  22649. TPF3 STD T8
  22650. LDC KBUF+11
  22651. STD CA
  22652. RJM AVA ASSEMBLE AND VALIDATE ADDRESS
  22653. LDD MA SAVE ADDRESS FOR MONITOR FUNCTION
  22654. CWD AB
  22655. CRD CM
  22656. AOD CA ASSEMBLE VALUE
  22657. RJM ASD
  22658. * LDI CA
  22659. LMN 1RN
  22660. NJN TPF4 IF NOT *N*
  22661. AOD CA ADVANCE PAST *N*
  22662. LDN 40 SET TRAP-ON-ANY-NON-ZERO-VALUE FLAG
  22663. STD CM+1
  22664. LDK ZERL ENSURE MB+1 CLEAR
  22665. CRD AB
  22666. TPF4 LDD MA SAVE VALUE IN MB+1
  22667. ADN 1
  22668. CWD AB
  22669. LDK ZERL PRESET FIELD DELIMITER WORD
  22670. CRD AB
  22671. LDN 59D
  22672. STD AB+2
  22673. LDI CA
  22674. LMN 1R.
  22675. ZJN TPF7 IF TRAP ON WHOLE WORD
  22676. RJM ADD ASSEMBLE HIGH BIT
  22677. STD T7 SAVE HIGH BIT
  22678. SBN 60D
  22679. MJN TPF6 IF HIGH BIT .LT. 60D
  22680. TPF5 JMP KIE *INCORRECT ENTRY.*
  22681.  
  22682. TPF6 RJM ADD ASSEMBLE LOW BIT
  22683. STD AB+4 SAVE LOW BIT
  22684. LDD T7
  22685. SBD T1
  22686. MJN TPF5 IF LOW .GT. HIGH
  22687. STD AB+2 SAVE DIFFERENCE
  22688. TPF7 LDD MA SAVE FIELD DELIMITERS IN MB+0
  22689. CWD AB
  22690. LDD T8 SET TRAP TYPE
  22691. SHN 12
  22692. RAD CM+1
  22693. TPF8 MONITOR TRCM SEND MONITOR FUNCTION
  22694. JMP KBR RETURN
  22695. ADD SPACE 4,10
  22696. ** ADD - ASSEMBLE TWO DECIMAL DIGITS.
  22697. *
  22698. * EXIT (A) = (T1) = ASSEMBLED DIGIT(S).
  22699. * TO *KIE* IF ASSEMBLY ERROR.
  22700. *
  22701. * USES T1 - T3.
  22702.  
  22703.  
  22704. ADD2 JMP KIE *INCORRECT ENTRY.*
  22705.  
  22706. ADD3 LDD T1 RETURN ASSEMBLED DIGIT(S)
  22707.  
  22708. ADD SUBR ENTRY/EXIT
  22709. LDN 0
  22710. STD T1 ASSEMBLED DIGITS
  22711. STD T2 DIGIT COUNTER
  22712. ADD1 AOD CA ADVANCE CHARACTER
  22713. LDI CA
  22714. ZJN ADD3 IF END OF STRING
  22715. SBN 1R9+1
  22716. PJN ADD3 IF SEPARATOR
  22717. ADN 1R9+1-1R0
  22718. MJN ADD2 IF LETTER
  22719. STD T3 SAVE DIGIT
  22720. AOD T2
  22721. SBN 3
  22722. PJN ADD2 IF MORE THAN TWO DIGITS
  22723. LDD T1 MULTIPLY TOP DIGIT BY 10D
  22724. SHN 2
  22725. RAD T1
  22726. SHN 1
  22727. ADD T3 ADD SECOND DIGIT
  22728. STD T1
  22729. UJN ADD1 CHECK NEXT DIGIT
  22730. AVA SPACE 4,10
  22731. ** AVA - ASSEMBLE AND VALIDATE ADDRESS.
  22732. *
  22733. * ENTRY (T8) = 2 IF VALIDATE ABSOLUTE ADDRESS.
  22734. * = 1 IF VALIDATE CPA ADDRESS.
  22735. * (CA) POSITIONED TO FIRST DIGIT.
  22736. *
  22737. * EXIT (AB+3 - AB+4) = ASSEMBLED ADDRESS.
  22738. * (CA) ADVANCED TO SEPARATOR.
  22739. * TO *KIE* IF ADDRESS OUT OF RANGE.
  22740. *
  22741. * USES T1 - T1+4.
  22742.  
  22743.  
  22744. AVA1 JMP KIE *INCORRECT ENTRY.*
  22745.  
  22746. AVA2 LDD AB+3
  22747. NJN AVA1 IF ADDRESS TOO BIG
  22748. LDD AB+4
  22749. SBK CPAS
  22750. AVA3 PJN AVA1 IF ADDRESS OUT OF RANGE
  22751.  
  22752. AVA SUBR ENTRY/EXIT
  22753. RJM ASD
  22754. LDD AB
  22755. ADD AB+1
  22756. ADD AB+2
  22757. NJN AVA1 IF OVER EIGHT DIGITS
  22758. LDD T8
  22759. LMN 2
  22760. NJN AVA2 IF NOT VALIDATING ABSOLUTE ADDRESS
  22761. LDK MABL CHECK ADDRESS AGAINST CM FL
  22762. CRD T1
  22763. LDD AB+4
  22764. SHN -6
  22765. SHN 14
  22766. LMD AB+3
  22767. SHN 6
  22768. SBD T1+3
  22769. SHN 6
  22770. SBD T1+2
  22771. SHN 14
  22772. UJN AVA3 CHECK IF ADDRESS TOO BIG
  22773. SPACE 4,10
  22774. CMDEND
  22775. COMMAND (TRAP/TRACE COMMANDS - PART 2.),CMR
  22776. SPACE 4,10
  22777. *** THIS COMMAND OVERLAY WORKS IN CONJUNCTION WITH THE *TRACE*
  22778. * BLOCK IN *CPUMTR*. THE TRAP AND TRACE COMMANDS ARE AVAILABLE
  22779. * WHEN THE *TRACE* BLOCK IS ENABLED AT DEADSTART AND WHEN
  22780. * SYSTEM DEBUG IS ENABLED.
  22781. TRA SPACE 4,10
  22782. *** TRACE,PPU,FCN1,FCN2,FCN3,FCN4,FCN5.
  22783. *
  22784. * TRACE THE SPECIFIED MONITOR FUNCTIONS. UP TO FIVE FUNCTIONS
  22785. * MAY BE SELECTED. *MTR* MONITOR FUNCTIONS MAY NOT BE
  22786. * SELECTED. TRACE DATA IS COLLECTED BY *CPUMTR* IMMEDIATELY
  22787. * BEFORE THE SELECTED FUNCTION IS PROCESSED. EACH TRACE BUFFER
  22788. * ENTRY CONSISTS OF THE FOLLOWING WORDS:
  22789. *
  22790. * TIME STAMP
  22791. * IR
  22792. * OR
  22793. * MB
  22794. * ABS1 (DEFAULT = SMRL)
  22795. * ABS2 (DEFAULT = CMCL)
  22796. *
  22797. * THE FORMAT OF THE TIME STAMP WORD IS: +***DHMSLLL+ WHERE
  22798. * DHMS IS BITS 23-0 OF PDTL AND LLL IS BITS 17-0 OF RTCL.
  22799. *
  22800. * WORDS ABS1 AND ABS2 CAN BE CHANGED BY THE *TRACE,SET,ABS*
  22801. * COMMAND.
  22802.  
  22803. *** TRACE,MTR,FCN1,FCN2,FCN3,FCN4,FCN5.
  22804. *
  22805. * TRACE THE SPECIFIED MTR REQUESTS TO CPUMTR. UP TO FIVE
  22806. * REQUESTS MAYBE SELECTED. TRACE DATA IS COLLECTED BY *CPUMTR*
  22807. * IMMEDIATELY BEFORE THE SELECTED FUNCTION IS PROCESSED. EACH
  22808. * TRACE BUFFER ENTRY CONSISTS OF THE FOLLOWING WORDS:
  22809. *
  22810. * TIME STAMP
  22811. * REQUEST
  22812. * ABS1 (DEFAULT = SMRL)
  22813. * ABS2 (DEFAULT = CMCL)
  22814. * *MCT*
  22815. *
  22816. * *MCT* EXPANDS TO THE FOLLOWING:
  22817. * MCT WORD 1
  22818. * MCT WORD 2
  22819. * CPA1 (DEFAULT = STSW)
  22820. * CPA2 (DEFAULT = FLSW)
  22821. * TFSW
  22822. * JSNE
  22823. * ONE FOR EACH ENTRY IN THE MEMORY CONTROL TABLE (MCT).
  22824. *
  22825. * WORDS CPA1 AND CPA2 CAN BE CHANGED BY THE *TRACE,SET,CPA*
  22826. * COMMAND.
  22827.  
  22828. *** TRACE,PPU,*.
  22829. * TRACE,MTR,*.
  22830. *
  22831. * TRACE ALL PPU OR MTR FUNCTIONS.
  22832.  
  22833. *** TRACE,PPU.
  22834. * TRACE,MTR.
  22835. *
  22836. * CLEAR PPU OR MTR TRACE.
  22837.  
  22838.  
  22839. ENTRY TCM
  22840. LDN 20 SET TRACE ON PPU FUNCTIONS
  22841. STD CM+1
  22842. LDN MXPF SET MAXIMUM REQUEST ORDINAL
  22843. STD T5
  22844. LDC TFTN+MXFM-CPUM-1
  22845. STM TRAA
  22846. LDN 0 SET NO BIAS
  22847. UJN TRA1 ENTER LOOP
  22848.  
  22849. ENTRY TCP
  22850. LDN 10 SET TRACE ON MTR FUNCTIONS
  22851. STD CM+1
  22852. LDK MXFM-CPUM+1 SET MAXIMUM REQUEST ORDINAL
  22853. STD T5
  22854. LDN CPUM-1 PPU REQUEST BIAS
  22855. TRA1 STD T4
  22856. LDK ZERL CLEAR FUNCTION LIST
  22857. CRD SR
  22858. LDC KBUF+11
  22859. STD CA
  22860. LDN 5 INITIALIZE BYTE POINTER
  22861. STD T3
  22862. TRA2 LDI CA
  22863. LMN 1R.
  22864. NJN TRA4 IF NOT END OF COMMAND
  22865. TRA3 LDD MA WRITE PARAMETER WORD TO MESSAGE BUFFER
  22866. CWD SR
  22867. MONITOR TRCM
  22868. JMP KBR RETURN
  22869.  
  22870. TRA4 SOD T3
  22871. PJN TRA6 IF .LE. 5 FUNCTIONS REQUESTED
  22872. TRA5 JMP KIE *INCORRECT ENTRY.*
  22873.  
  22874. TRA6 AOD CA SKIP SEPERATOR
  22875. RJM ASN ASSEMBLE FUNCTION NAME
  22876. LDI CA
  22877. LMN 1R*
  22878. NJN TRA7 IF NOT TRACING ALL FUNCTIONS
  22879. LDC 1S11 SET TRACE ON ALL FUNCTIONS
  22880. STD SR
  22881. UJN TRA3 WRITE PARAMETER WORD
  22882.  
  22883. TRA7 LDD AB+2
  22884. NJN TRA5 IF OVER 4 CHARACTERS
  22885. STD T2 INITIALIZE ORDINAL
  22886. LDD AB+1 HASH FUNCTION
  22887. SHN -11
  22888. STD T1
  22889. LDD AB
  22890. LPN 37
  22891. SHN 2
  22892. RAD T1
  22893. LDD AB
  22894. SHN -6
  22895. SHN 7
  22896. RAD T1
  22897. TRA8 AOD T2
  22898. SBD T5
  22899. ZJN TRA5 IF END OF TABLE AND NO MATCH
  22900. LDM TFTN-1,T2
  22901. * LDM TFTN+MXFM-CPUM-1,T2 (TRACE,MTR)
  22902. TRAA EQU *-1
  22903. LMD T1
  22904. NJN TRA8 IF NO MATCH
  22905. LDD T2
  22906. ADD T4 ADD BIAS
  22907. STM SR,T3 SAVE FUNCTION NUMBER
  22908. JMP TRA2 CHECK NEXT FUNCTION
  22909.  
  22910.  
  22911. MNF$ EQU 1 SET NON-STANDARD *MNF* FOR *COMDTFN*
  22912. MTF$ EQU 1 ASSEMBLE MTR FUNCTIONS
  22913. MNF SPACE 4,10
  22914. ** MNF - PP REQUEST HASHING MACRO.
  22915.  
  22916. PURGMAC MNF
  22917.  
  22918. MNF MACRO MF
  22919. NOREF .1,.A,.B,.C,.D
  22920. .1 IFGE MF,CPUM
  22921. .A MICRO 1,1,/MF/
  22922. .B MICRO 2,1,/MF/
  22923. .C MICRO 3,1,/MF/
  22924. .A SET 1R".A"
  22925. .B SET 1R".B"
  22926. .C SET 1R".C"
  22927. .C SET .C/10B
  22928. ORG TFTN+MF-CPUM
  22929. LOC MF
  22930. VFD 5/.A,5/.B,2/.C
  22931. .D SET .A*200B+.B*4+.C
  22932. .D OCTMIC .D
  22933. X".D" EQU 0
  22934. .1 ENDIF
  22935. ENDM
  22936. MTF SPACE 4,10
  22937. ** MTF - MONITOR REQUEST HASHING MACRO.
  22938.  
  22939. PURGMAC MTF
  22940.  
  22941. MTF MACRO MF
  22942. NOREF .A,.B,.C,.D
  22943. .A MICRO 1,1,/MF/
  22944. .B MICRO 2,1,/MF/
  22945. .C MICRO 3,1,/MF/
  22946. .A SET 1R".A"
  22947. .B SET 1R".B"
  22948. .C SET 1R".C"
  22949. .C SET .C/10B
  22950. ORG TFTN+MXFM-CPUM+MF-1
  22951. LOC MF
  22952. VFD 5/.A,5/.B,2/.C
  22953. .D SET .A*200B+.B*4+.C
  22954. .D OCTMIC .D
  22955. X".D" EQU 0
  22956. ENDM
  22957. LIST X,D
  22958. *CALL COMDTFN
  22959. LIST *
  22960.  
  22961. ORG TFTN+MXFM-CPUM+MXPF
  22962. SPACE 4,10
  22963. CMDEND
  22964. COMMAND (CPUMTR BREAKPOINT.),CMR
  22965. SPACE 4,10
  22966. *** THIS COMMAND OVERLAY WORKS IN CONJUNCTION WITH THE *CPB*
  22967. * BLOCK IN *CPUMTR*. WHEN A *CPB,DSP....* COMMAND IS ENTERED,
  22968. * IT SETS UP THE *C* DISPLAY ADDRESSES AND THEN CHANGES THE
  22969. * LEFT SCREEN TO THE *C* DISPLAY. DATA COMMUNICATION BETWEEN
  22970. * THE ROUTINES IS THROUGH DATA BLOCKS WHOSE POINTERS ARE IN
  22971. * *CMBL* IN CMR.
  22972. CPB SPACE 4,10
  22973. *** CPB,BKP,N. SET A *CPUMTR* BREAKPOINT ADDRESS AT *N*.
  22974. * CPB,DSP,N. SET UP *C* DISPLAY FOR *N*.
  22975. * *N* IS AN ABSOLUTE ADDRESS.
  22976.  
  22977.  
  22978. ENTRY CPB
  22979. LDC KBUF+8D-1 SET START OF KEYBOARD BUFFER
  22980. STD CA
  22981. LDN ZERL
  22982. CRD CM
  22983. ADN CMBL-ZERL FETCH BREAKPOINT ADDRESSES
  22984. CRD T2
  22985. LJM CPT6 USE *CPT* PROCESSOR
  22986. CPD SPACE 4,10
  22987. *** CPB,DSP. BRING UP *C* DISPLAY AT CURRENT BKP.
  22988. * CPB,P+ INCREMENT THE BREAKPOINT ADDRESS BY 1.
  22989. * CPB,P- DECREMENT THE BREAKPOINT ADDRESS BY 1.
  22990.  
  22991.  
  22992. ENTRY CPD
  22993. LDK CMBL GET ADDRESSES
  22994. CRD T2
  22995. RJM AAD FETCH *P* REGISTER
  22996. CRD CM
  22997. LDD CM MOVE *P* REGISTER TO *AB*
  22998. STD AB+3
  22999. LDD CM+1
  23000. STD AB+4
  23001. LDN 1RS CHECK COMMAND
  23002. SBM KBUF+5
  23003. ZJN CPD1 IF *CPB,DSP.* COMMAND
  23004. ADN 1R+-1RS
  23005. LMN 1 SET +/- 1 (TWOS COMPLEMENT)
  23006. STD CM+4
  23007. SHN -6
  23008. STD CM+3
  23009. LJM CPT7 INCREMENT OR DECREMENT THE ADDRESS
  23010.  
  23011. CPD1 LDC TDSC *C* DISPLAY ADDRESS
  23012. STD T2
  23013. RJM AAD SET *C0* ADDRESS
  23014. RJM SDA
  23015. RJM AAD SET *C1* ADDRESS
  23016. ADN 10
  23017. RJM SDA
  23018. LDD AB+3 SET *C2* ADDRESS
  23019. SHN 14
  23020. ADD AB+4
  23021. RJM SDA
  23022. LDD AB+3 SET *C3* ADDRESS
  23023. SHN 14
  23024. ADD AB+4
  23025. ADN 10
  23026. RJM SDA
  23027. LDN 7 LEAVE *CPB,DSP*
  23028. STM /KEYBOARD/KBCA
  23029. LDC KBUF+7 SET END OF COMMAND FOR *CJS*
  23030. STD CA
  23031. LDN 1RC
  23032. LJM /RES/DJS1 COMPLETE *C* DISPLAY SELECT
  23033. CPG SPACE 4,10
  23034. *** CPB,GO.
  23035. *
  23036. * GIVE A GO TO A *CPUMTR* BREAKPOINT HALT.
  23037. *
  23038. * THE *CPFG* WORD IN THE BREAKPOINT TABLE IS SET TO ZERO.
  23039.  
  23040.  
  23041. ENTRY CPG
  23042. LDN ZERL
  23043. CRD AB
  23044. ADN CMBL-ZERL *CPUMTR* BREAKPOINT POINTER
  23045. CRD T2
  23046. LJM CPT10 CLEAR EXISTING BREAKPOINT
  23047. CPT SPACE 4,20
  23048. *** CPB,BKP,/NAME/N. SET *CPUMTR* BREAKPOINT.
  23049. * CPB,DSP,/NAME/N. DISPLAY *CPUMTR* ADDRESS.
  23050. *
  23051. * *N* IS AN ADDRESS RELATIVE TO BLOCK *NAME*. IF NAME IS
  23052. * NULL, THEN THE BASE ADDRESS FOR *CPUMTR* IS USED.
  23053. *
  23054. * ANY EXISTING BREAKPOINT IS CLEARED BEFORE THE NEW ONE
  23055. * IS SET.
  23056. *
  23057. * IF THERE IS AN EXISTING BREAKPOINT ADDRESS, THE BREAKPOINT
  23058. * WORD IN THE BREAKPOINT TABLE IS REWRITTEN TO THAT ADDRESS.
  23059. * *DSD* MOVES THE WORD FROM *CPUMTR* AT THE ADDRESS DETERMINED
  23060. * BY THE COMMAND, AND SAVES IT IN THE BREAKPOINT TABLE. THEN
  23061. * THE *RJ BKP* IS STORED IN ITS PLACE IN *CPUMTR*. THE NEW
  23062. * BREAKPOINT ADDRESS IS SAVED IN THE BREAKPOINT TABLE. EXIT IS
  23063. * THRU *CPG1* TO LET *CPUMTR* GO IF CURRENTLY BREAKPOINTED.
  23064.  
  23065.  
  23066. ENTRY CPT
  23067. LDC KBUF+8D+1 SET STRING POINTER TO BEGINNING OF NAME
  23068. STD CA
  23069. RJM ASN ASSEMBLE NAME
  23070. LDK CMBL
  23071. CRD T2 FETCH BREAKPOINT ADDRESSES
  23072.  
  23073. * SEARCH BLOCK ORIGIN TABLE FOR BLOCK NAME.
  23074.  
  23075. LDD T2 GET ENTRY FROM BLOCKS LOADED TABLE
  23076. CPT1 SHN 14
  23077. LMD T3
  23078. CRD CM
  23079. LDD CM+3 CHECK ENTRY
  23080. ADD CM+4
  23081. ZJN CPT4 IF END OF TABLE
  23082.  
  23083. * COMPARE NAMES.
  23084.  
  23085. LDD CM
  23086. LMD AB
  23087. NJN CPT3 IF NO MATCH ON 1ST TWO CHARACTERS
  23088. LDD CM+1
  23089. LMD AB+1
  23090. NJN CPT3 IF NO MATCH ON 2ND TWO CHARACTERS
  23091. LDD CM+2
  23092. LMD AB+2
  23093. NJN CPT3 IF NO MATCH ON 3RD TWO CHARACTERS
  23094. LDD CM+3
  23095. LMD AB+3 CHECK LAST CHARACTER
  23096. SCN 77
  23097. ZJN CPT5 IF MATCHING BLOCK NAME
  23098. CPT3 AOD T3
  23099. SHN -14 INCREMENT TO NEXT WORD
  23100. RAD T2
  23101. UJN CPT1 CHECK NEXT ENTRY
  23102.  
  23103. CPT4 JMP KIE INCORRECT ENTRY
  23104.  
  23105. * A MATCH WAS FOUND (BASE ADDRESS IS IN CM+3 - CM+4).
  23106.  
  23107. CPT5 LDD CM+3
  23108. LPN 77
  23109. STD CM+3
  23110.  
  23111. * ASSEMBLE NUMERIC DELTA AND ADD TO BASE ADDRESS.
  23112.  
  23113. CPT6 AOD CA
  23114. RJM ASD
  23115. CPT7 LDD CM+4 ADD BASE ADDRESS
  23116. RAD AB+4
  23117. SHN -14
  23118. ADD CM+3
  23119. RAD AB+3
  23120. LDM KBUF+4 CHECK COMMAND
  23121. LMN 1RD
  23122. NJN CPT8 IF *CPB,BKP,...* OR *CPB,P+/-* COMMAND
  23123. LJM CPD1 PROCESS *CPB,DSP,...* COMMAND
  23124.  
  23125. * CHECK THAT ADDRESS IS WITHIN *CPUMTR*.
  23126.  
  23127. CPT8 LDC BIOL FETCH FWA OF *CPUMTR*
  23128. CRD SR
  23129. SBN BIOL-RPLP GET RPL POINTER
  23130. CRD CM
  23131. LDD AB+3 VERIFY ADDRESS
  23132. SBD SR+3
  23133. SHN 14
  23134. ADD AB+4
  23135. SBD SR+4
  23136. CPT9 MJN CPT4 IF ADDRESS BELOW *CPUMTR*
  23137. LDD CM
  23138. SBD AB+3
  23139. SHN 14
  23140. ADD CM+1
  23141. SBD AB+4
  23142. SBN PPIL+1
  23143. MJN CPT9 IF ADDRESS ABOVE *CPUMTR*
  23144.  
  23145. * CLEAR EXISTING BREAKPOINT AND SET NEW BREAKPOINT ADDRESS.
  23146.  
  23147. CPT10 RJM AAD READ ADDRESS OF PENDING BREAKPOINT
  23148. ADN /CPB/CPBA
  23149. CRD CM
  23150. CWD AB SET NEW BREAKPOINT ADDRESS
  23151. ADN /CPB/CPBW-/CPB/CPBA
  23152. CRD AB OLD BREAKPOINT WORD
  23153. LDD CM+3
  23154. SHN 14 ASSEMBLE BREAKPOINT ADDRESS
  23155. LMD CM+4
  23156. ZJN CPT11 IF NO BREAKPOINT PENDING
  23157. CWD AB REPLACE BREAKPOINT WORD
  23158.  
  23159. * SAVE WORD AT NEW BREAKPOINT AND REPLACE IT WITH A *RJ BKP*.
  23160.  
  23161. CPT11 RJM AAD
  23162. ADN /CPB/CPBA
  23163. CRD AB READ BREAKPOINT ADDRESS
  23164. ADN /CPB/CPBP-/CPB/CPBA
  23165. CRD CM READ UP BREAKPOINT PROTOTYPE
  23166. LDD AB+3
  23167. SHN 14 ASSEMBLE CM ADDRESS
  23168. LMD AB+4
  23169. ZJN CPT12 IF NO BREAKPOINT
  23170. CRD AB READ WORD AT BREAKPOINT ADDRESS
  23171. CWD CM STORE BREAKPOINT PROTOTYPE IN ITS PLACE
  23172. RJM AAD
  23173. ADN /CPB/CPBW
  23174. CWD AB SAVE BREAKPOINT WORD IN TABLE
  23175. CPT12 LDN ZERL
  23176. CRD CM
  23177. RJM AAD LET *CPUMTR* GO IF STOPPED
  23178. ADN /CPB/CPFG
  23179. CWD CM
  23180. LDN 4 LEAVE *CPB,*
  23181. STM /KEYBOARD/KBCA
  23182. JMP KBR RETURN
  23183. AAD SPACE 4,10
  23184. ** AAD - ASSEMBLE ADDRESS OF *CPUMTR* BREAKPOINT PARAMETERS.
  23185. *
  23186. * ENTRY (T2 - T6) = *CMBL* WORD.
  23187. *
  23188. * EXIT (A) = ABSOLUTE CM ADDRESS.
  23189.  
  23190.  
  23191. AAD SUBR ENTRY/EXIT
  23192. LDD T5
  23193. SHN 14
  23194. LMD T6
  23195. NJN AADX IF BREAKPOINT ENABLED
  23196. JMP KIE INCORRECT ENTRY
  23197. SAD SPACE 4,10
  23198. ** SDA - SET *C* DISPLAY ADDRESS.
  23199. *
  23200. * ENTRY (A) = ADDRESS.
  23201. * (T2) = DESTINATION OF ADDRESS.
  23202. *
  23203. * EXIT (T2) = (T2) + 2.
  23204.  
  23205.  
  23206. SDA SUBR ENTRY/EXIT
  23207. STM 1,T2
  23208. SHN -14
  23209. STI T2
  23210. LDN 2
  23211. RAD T2
  23212. UJN SDAX RETURN
  23213. SPACE 4,10
  23214. CMDEND
  23215. COMMAND (PP BREAKPOINT COMMANDS.),CMR
  23216. SPACE 4,10
  23217. ** PP BREAKPOINT COMMANDS.
  23218.  
  23219.  
  23220. ENTRY PPC
  23221.  
  23222. PBJ ENTER (PP?.SX.),SLOCK STEP (DON-T FOLLOW RJM-S)
  23223. PBS ENTER (PP?.S.),SLOCK STEP
  23224. PP1 ENTER (PP?.G.),SLOCK GO
  23225. PP2 ENTER (PP?.G,?.),SLOCK SET BREAKPOINT AND GO
  23226. PP3 ENTER (PP?.&lt;CD,?.),SLOCK DISPLAY PP MEMORY
  23227. PP4 ENTER (PP?.&lt;CD,?,?.),SLOCK CHANGE PP MEMORY
  23228. PP5 ENTER (PP?.A,?.),SLOCK SET *A* REGISTER
  23229. PP6 ENTER (PP?.P,?.),SLOCK SET *P* REGISTER
  23230. PP7 ENTER (PP?.EXR.),SLOCK BREAKPOINT OVERLAY LOAD
  23231. PP8 ENTER (PP?.FTN.),SLOCK BREAKPOINT NEXT FUNCTION
  23232.  
  23233. CON 0 END OF TABLE
  23234. BKP SPACE 4,10
  23235. *** BKP.
  23236. *
  23237. * CLEAR PP BREAKPOINT REQUEST.
  23238.  
  23239.  
  23240. ENTRY BKA
  23241. LDC PPFW RESET DISPLAY AT C ADDRESS
  23242. STM TDSV+2
  23243. LDN 0 RESET DISPLAY AT D ADDRESS
  23244. STM TDSV+3
  23245. LDN CBKS
  23246. UJN BKB3 CLEAR BREAKPOINT
  23247. BKP SPACE 4,10
  23248. *** BKP,XXX.
  23249. *
  23250. * INITIATE BREAKPOINT FOR PP ROUTINE *XXX*.
  23251.  
  23252. *** BKP,XXX,NN.
  23253. *
  23254. * INITIATE BREAKPOINT FOR PP ROUTINE *XXX* AT CP *NN*.
  23255.  
  23256.  
  23257. ENTRY BKB
  23258. RJM ASN ASSEMBLE NAME
  23259. LDD AB+1
  23260. STD CM+3
  23261. LDD AB
  23262. STD CM+2
  23263. SHN -6
  23264. LMN 1R7
  23265. NJN BKB2 IF NOT MASS STORAGE OVERLAY
  23266. BKB1 JMP KIE INCORRECT ENTRY
  23267.  
  23268. BKB2 AOD CA ASSEMBLE POSSIBLE CP NUMBER
  23269. RJM ASD
  23270. LDD AB+4 SET CP NUMBER
  23271. STD CM+4
  23272. SBD NC
  23273. PJN BKB1 IF ILLEGAL CP
  23274. LDN SBKS
  23275. BKB3 STD CM+1
  23276. MONITOR SJCM SET PP BREAKPOINT
  23277. LDD CM+1
  23278. NJN BKB1 IF REJECT
  23279. JMP KBR RETURN
  23280. SPACE 4,10
  23281. CMDEND
  23282. COMMAND (PP BREAKPOINT PROCESSORS.),CMR
  23283. PP7 SPACE 4,10
  23284. *** PPN.EXR.
  23285. *
  23286. * TRAP OVERLAY LOAD.
  23287.  
  23288.  
  23289. ENTRY PP7
  23290. LDC PBKE
  23291. UJN PP81 SET *EXR* TRAP ADDRESS
  23292. PP8 SPACE 4,10
  23293. *** PPN.FTN.
  23294. *
  23295. * TRAP NEXT MONITOR FUNCTION.
  23296.  
  23297.  
  23298. ENTRY PP8
  23299. LDC PBKF *FTN* TRAP ADDRESS
  23300. PP81 STD CM+4
  23301. UJN PP20 CONTINUE
  23302. PP1 SPACE 4,10
  23303. *** PPN,G.
  23304. *
  23305. * RESUME PP EXECUTION WITH NO BREAKPOINT.
  23306.  
  23307.  
  23308. ENTRY PP1
  23309. LDN PBRF
  23310. UJN PBC ENTER BREAKPOINT COMMAND
  23311. PP2 SPACE 4,10
  23312. *** PPN,G,XXXX.
  23313. *
  23314. * SET BREAKPOINT AT XXXX AND RESUME EXECUTION.
  23315.  
  23316.  
  23317. ENTRY PP2
  23318. PP20 LDN PBGF
  23319. UJN PBC ENTER BREAKPOINT COMMAND
  23320. PP3 SPACE 4,10
  23321. *** PPN,C,XXXX.
  23322. *
  23323. * DISPLAY PP MEMORY AT XXXX.
  23324.  
  23325.  
  23326. ENTRY PP3
  23327. LDN PBCF
  23328. UJN PBC ENTER BREAKPOINT COMMAND
  23329. PP4 SPACE 4,10
  23330. *** PPN,C,XXXX,YYYY.
  23331. *
  23332. * ENTRY DATA WORD YYYY IN PP AT ADDRESS XXXX.
  23333.  
  23334.  
  23335. ENTRY PP4
  23336. LDN PBSF
  23337. UJN PBC ENTER BREAKPOINT COMMAND
  23338. PP5 SPACE 4,10
  23339. *** PPN,A,XXXXXX.
  23340. *
  23341. * SET PP *A* REGISTER TO XXXXXX.
  23342.  
  23343.  
  23344. ENTRY PP5
  23345. LDN PBAF
  23346. UJN PBC ENTER BREAKPOINT COMMAND
  23347. PP6 SPACE 4,10
  23348. *** PPN,P,XXXX.
  23349. *
  23350. * RESET PP *P* REGISTER TO XXXX.
  23351.  
  23352.  
  23353. ENTRY PP6
  23354. LDN PBPF
  23355. UJN PBC ENTER BREAKPOINT COMMAND
  23356. VPP SPACE 4,10
  23357. *** V,N.
  23358. *
  23359. * SET *V* DISPLAY TO PP NN.
  23360.  
  23361.  
  23362. ENTRY VPP
  23363. LDN PBFM
  23364. UJN PBC ENTER BREAKPOINT COMMAND
  23365. PBC SPACE 4,10
  23366. ** PBC - PROCESS PP BREAKPOINT COMMANDS.
  23367. *
  23368. * ENTRY (A) = COMMAND ORDINAL.
  23369. *
  23370. * EXIT COMMAND WRITTEN TO PP MB+5.
  23371.  
  23372.  
  23373. PBCX JMP KIE INCORRECT ENTRY
  23374.  
  23375. PBC BSS 0 ENTRY
  23376. STD CM+3
  23377. LDC KBUF+2 START OF PP NUMBER
  23378. STD CA
  23379. RJM ASD DECODE PP NUMBER
  23380. LDN PPCP
  23381. CRD T1 READ PP COMMUNICATIONS ADDRESS
  23382. SBN PPCP-PPUL
  23383. CRD T0 FETCH CONCURRENT PP STATUS
  23384. LDD AB+4
  23385. SBN 12
  23386. MJN PBC2 IF NPP 0 - 11
  23387. SBN 20-12
  23388. MJN PBCX IF INVALID PP NUMBER
  23389. SBN 32-20
  23390. MJN PBC1 IF NPP 20 - 31
  23391. SBN 40-32
  23392. MJN PBCX IF INVALID PP NUMBER
  23393. LDD T0+3
  23394. LPN 77
  23395. ZJN PBCX IF NO CONCURRENT PP-S
  23396. ADN 40-1
  23397. SBD AB+4
  23398. MJN PBCX IF INVALID CPP NUMBER
  23399. LDD AB+4
  23400. SBN 40 SET CPP CALCULATION
  23401. PBC1 ADN 12
  23402. PBC2 ADN 12 CALCULATE SEQUENTIAL PP NUMBER
  23403. SHN 3
  23404. ADD T1+4 CALCULATE ADDRESS OF PP MB+5
  23405. ADN 7
  23406. STD T7 SAVE PP MB+5 ADDRESS
  23407. STM TDSV+1
  23408. LDD AB+4 SAVE PP NUMBER OF DISPLAY
  23409. ADD HN FORCE DISPLAY UPDATE
  23410. STM TDSV
  23411. LDD CM+3 CHECK FOR SCREEN CHANGE
  23412. LMN PBFM
  23413. NJN PBC3 IF NOT *V,NN.*
  23414. LDN 1RV
  23415. LJM SLS LOAD *V* DISPLAY
  23416.  
  23417. PBC3 LDD CA SAVE POINTER TO END OF COMMAND
  23418. ADC 1-KBUF
  23419. STM /KEYBOARD/KBCA RESET KEYBOARD POINTER
  23420. LDM 1,CA
  23421. STD T4 SAVE COMMAND CHARACTER
  23422. LDM 2,CA
  23423. LMN 1R,
  23424. NJN PBC6 IF END OF COMMAND
  23425. LDN 3
  23426. RAD CA
  23427. RJM ASD ASSEMBLE FIRST PARAMETER
  23428. LDD AB+4
  23429. STD CM+4 STORE IN COMMAND
  23430. LDD AB+3
  23431. STD CM+2 (18 BITS IF *A* REGISTER RESET)
  23432. LDI CA
  23433. LMN 1R.
  23434. ZJN PBC6 IF END OF COMMAND
  23435. LMN 1R,&1R.
  23436. ZJN PBC5 IF ANOTHER PARAMETER
  23437. PBC4 JMP KIE INCORRECT ENTRY
  23438.  
  23439. PBC5 AOD CA ASSEMBLE DATA WORD
  23440. RJM ASD
  23441. LDD AB+4 SAVE DATA WORD FOR PP
  23442. STD CM+2
  23443. PBC6 LDD T7 CHECK PP ACTIVITY
  23444. CRD AB
  23445. LDD AB
  23446. ADD AB+1 TEST FOR 7777 7777 STATUS FROM *7BK*
  23447. LMC 2*7777
  23448. NJN PBC9 IF NOT READY FOR COMMAND
  23449. PBC7 LDD T7
  23450. CWD CM
  23451. LDD CM+3 CHECK FOR *C*
  23452. SBN PBCF
  23453. NJN PBC8 IF NOT *C*
  23454. LDD CM+4 SET NEW C ADDRESS
  23455. STM TDSV+2-1RC,T4
  23456. PBC8 JMP KBR RETURN
  23457.  
  23458. PBC9 LDN 0 CLEAR KEYBOARD READY
  23459. STM /KEYBOARD/KBRA
  23460. LDC PBCA * NOT AT BREAK*
  23461. LJM /KEYBOARD/KMS RETURN
  23462.  
  23463.  
  23464. PBCA DATA C* NOT AT BREAK*
  23465. VHP SPACE 4,10
  23466. *** V,HNG.
  23467. *
  23468. * SET *V* DISPLAY TO HUNG PP.
  23469.  
  23470.  
  23471. ENTRY VHP
  23472. RJM SCA SET PP COMMUNICATION AREA ADDRESSES
  23473. STD T6
  23474. LDM TDSV+1
  23475. ZJN VHP2 IF NO PP ON *V* DISPLAY
  23476. STD T5
  23477. VHP1 LDN 10 ADVANCE COMMUNICATION AREA ADDRESS
  23478. RAD T5
  23479. SBN 7 CONVERT TO INPUT REGISTER ADDRESS
  23480. LMD T6
  23481. NJN VHP3 IF NOT END OF COMMUNICATION AREA
  23482. VHP2 LDD AB+4
  23483. ADN 7 SET FIRST PP (MTR) ADDRESS
  23484. STD T5
  23485. VHP3 SOD T7
  23486. ZJN VHP7 IF ALL PP-S CHECKED
  23487. LDD T5
  23488. CRD CM READ LAST WORD OF PP MESSAGE BUFFER
  23489. LDD CM
  23490. LMC 2RHN
  23491. NJN VHP1 IF PP NOT HUNG
  23492. LDD CM+1
  23493. LMC 2RG/
  23494. NJN VHP1 IF PP NOT HUNG
  23495. LDD T5
  23496. VHP4 STM TDSV+1 SAVE PP MESSAGE BUFFER ADDRESS
  23497. SBD AB+4
  23498. SHN -3 CALCULATE PP NUMBER
  23499. SBN 12
  23500. MJN VHP6 IF PP IN LOWER BANK
  23501. SBN 24-12
  23502. MJN VHP5 IF NOT CONCURRENT PP
  23503. ADN 40-32
  23504. VHP5 ADN 20-12+12 PP IN UPPER BANK
  23505. VHP6 ADN 12
  23506. STM TDSV SAVE PP NUMBER
  23507. VHP7 LDN 1RV
  23508. LJM SLS LOAD *V* DISPLAY
  23509. VPS SPACE 4,10
  23510. *** V,PS.
  23511. *
  23512. * SET *V* DISPLAY TO PSEUDO PP.
  23513.  
  23514.  
  23515. ENTRY VPS
  23516. RJM SCA SET PP COMMUNICATION AREA ADDRESSES
  23517. SBN 1
  23518. JMP VHP4 SAVE PSEUDO PP MESSAGE BUFFER ADDRESS
  23519. SCA SPACE 4,10
  23520. ** SCA - SET PP COMMUNICATION AREA ADDRESSES.
  23521. *
  23522. * EXIT (A) = LWA+1 OF PP COMMUNICATION AREA.
  23523. * (T7) = PP COUNT (INCLUDING PSEUDO AND CPP-S).
  23524. * (AB - AB+4) = *PPCP* POINTER WORD.
  23525. *
  23526. * USES T5, CM - CM+1.
  23527.  
  23528.  
  23529. SCA SUBR ENTRY/EXIT
  23530. LDN PPUL
  23531. CRD T5 FETCH PP COUNTS
  23532. LDN PPCP
  23533. CRD AB GET PP COMMUNICATIONS AREA ADDRESS
  23534. AOD CM
  23535. LPN 77 PSEUDO PP + CPP COUNT
  23536. RAD T7
  23537. SHN 3 CALCULATE LWA+1 OF COMMUNICATION AREA
  23538. ADD AB+4
  23539. UJN SCAX RETURN
  23540. SPACE 4,10
  23541. CMDEND
  23542. COMMAND (PP BREAKPOINT PROCESSORS - STEP.),CMR
  23543. PBJ SPACE 4,10
  23544. *** PPN.SX.
  23545. *
  23546. * STEP, BUT DONT FOLLOW RJM-S.
  23547.  
  23548.  
  23549. ENTRY PBJ
  23550. LDC PBS9 SET TRANSFER
  23551. STM PBSA
  23552. UJN PBS1 CONTINUE
  23553. PBS SPACE 4,20
  23554. *** PPN.S.
  23555. *
  23556. * PROCESS PP STEP COMMAND.
  23557.  
  23558.  
  23559. PBSX JMP KIE INCORRECT ENTRY
  23560.  
  23561. ENTRY PBS
  23562. PBS1 LDC KBUF+2 START OF PP NUMBER
  23563. STD CA
  23564. RJM ASD DECODE PP NUMBER
  23565. LDN PPCP
  23566. CRD T1 READ PP COMMUNICATIONS ADDRESS
  23567. SBN PPCP-PPUL
  23568. CRD T0 FETCH CONCURRENT PP STATUS
  23569. LDD AB+4
  23570. SBN 12
  23571. MJN PBS3 IF NPP 0 - 11
  23572. SBN 20-12
  23573. MJN PBSX IF INVALID PP NUMBER
  23574. SBN 32-20
  23575. MJN PBS2 IF NPP 20 - 31
  23576. SBN 40-32
  23577. MJN PBSX IF INVALID PP NUMBER
  23578. LDD T0+3
  23579. LPN 77
  23580. ZJN PBSX IF NO CONCURRENT PP-S
  23581. ADN 40-2
  23582. SBD AB+4
  23583. PJN PBSX IF INVALID CPP NUMBER
  23584. LDD AB+4
  23585. SBN 40 SET CPP CALCULATION
  23586. PBS2 ADN 12
  23587. PBS3 ADN 12 CALCULATE SEQUENTIAL PP NUMBER
  23588. SHN 3
  23589. ADD T1+4 CALCULATE ADDRESS OF PP MB+5
  23590. ADN 7
  23591. STD T7 SAVE PP MB+5 ADDRESS
  23592. STM TDSV+1
  23593. LDD AB+4 SAVE PP NUMBER OF DISPLAY
  23594. ADD HN FORCE DISPLAY UPDATE
  23595. STM TDSV
  23596. LDD CA SAVE POINTER TO END OF COMMAND
  23597. ADC 1-KBUF
  23598. STM /KEYBOARD/KBCA RESET KEYBOARD POINTER
  23599.  
  23600. * ENSURE PP AT BREAKPOINT.
  23601.  
  23602. RJM CKB CHECK PP ACTIVITY
  23603.  
  23604. * READ CURRENT INSTRUCTION.
  23605.  
  23606. LDN PBCF READ PP MEMORY
  23607. STD T5
  23608. LDD T7 STORE PP REQUEST
  23609. CWD T2
  23610. RJM CKB READ 5 BYTES BEGINNING AT (P)
  23611. LDD T6
  23612. STD CM+4 SET VALUE OF P REGISTER
  23613. LDD AB
  23614. SHN -6
  23615. STD T1 SAVE INSTRUCTION FOR JUMP TEST
  23616. SHN -3
  23617. NJN PBS7 IF NOT JUMP INSTRUCTION
  23618. LDD T1
  23619. RAD T1
  23620. LDD T4 USE PP-S (A) FOR JUMP TESTS
  23621. SHN 14
  23622. LMD T5
  23623. LJM PBS4,T1 EXECUTE JUMP TEST
  23624.  
  23625. PBS4 LJM PBS10 PSN
  23626.  
  23627. LJM PBS19 LJM
  23628.  
  23629. LJM PBS18 RJM
  23630. * LJM PBS9 (NOT FOLLOWING RJM-S)
  23631. PBSA EQU *-1
  23632.  
  23633. PBS5 LJM PBS12 UJN
  23634.  
  23635. ZJN PBS12 ZJN
  23636. UJN PBS10
  23637.  
  23638. NJN PBS12 NJN
  23639. UJN PBS10
  23640.  
  23641. PJN PBS12 PJN
  23642. UJN PBS10
  23643.  
  23644. MJN PBS12 MJN
  23645. UJN PBS10
  23646.  
  23647. * NON JUMP INSTRUCTIONS.
  23648.  
  23649. PBS7 LMN 5
  23650. ZJN PBS9 IF 5XXX INSTRUCTION
  23651. LDD T1
  23652. SCN 3 TEST FOR 64XX - 67XX INSTRUCTION
  23653. LMN 64
  23654. ZJN PBS13 IF CHANNEL INSTRUCTION
  23655.  
  23656. * SEARCH TABLE OF TWO BYTE INSTRUCTIONS.
  23657.  
  23658. PBS8 AOD T3 ADVANCE INDEX
  23659. LDM PBSC,T3
  23660. ZJN PBS10 IF INSTRUCTION NOT IN TABLE
  23661. LMD AB
  23662. SCN 77
  23663. NJN PBS8 IF NOT TWO BYTE INSTRUCTION
  23664. PBS9 AOD CM+4
  23665. PBS10 AOD CM+4
  23666. PBS11 LDN PBGF G,XXXX FUNCTION
  23667. STD CM+3
  23668. STD CM INSURE NO 7777
  23669. LDD T7
  23670. CWD CM
  23671. JMP KBR RETURN
  23672.  
  23673. * PROCESS SHORT JUMPS.
  23674.  
  23675. PBS12 LDD AB EXTRACT VARIABLE FILED
  23676. LPN 77
  23677. STD T1 CHECK JUMP DIRECTION
  23678. LPN 40
  23679. ZJN PBS15 IF POSITIVE JUMP
  23680. LDD T1
  23681. LMN 76
  23682. NJN PBS14 IF NOT JUMP TO *-1
  23683. PBS13 LDC PBSB
  23684. LJM CKB2 SET ERROR MESSAGE
  23685.  
  23686. PBS14 LCN 77 CONVERT NEGATIVE ADVANCE
  23687. PBS15 LMD T1
  23688. PBS16 RAD CM+4
  23689. PBS17 UJN PBS11 ISSUE REQUEST TO PP
  23690.  
  23691. * RETURN JUMP.
  23692.  
  23693. PBS18 AOD AB+1 FIRST INSTRUCTION PAST ENTRY
  23694.  
  23695. * LONG JUMP.
  23696.  
  23697. PBS19 LDD AB+1 SET JUMP ADDRESS
  23698. STD CM+4
  23699. LDD AB CHECK FOR INDEXED JUMP
  23700. LPN 77
  23701. ZJN PBS17 IF NOT INDEXED
  23702. STD T6
  23703. LDN PBCF SET READ PP MEMORY FUNCTION
  23704. STD T5
  23705. LDD T7 STORE PP REQUEST
  23706. CWD T2
  23707. RJM CKB READ 5 BYTES BEGINNING AT INDEX VALUE
  23708. LDD AB
  23709. UJN PBS16 ADVANCE BREAKPOINT ADDRESS
  23710.  
  23711.  
  23712. PBSB DATA C*CAN-T STEP.*
  23713.  
  23714.  
  23715. * TABLE OF SELECTED TWO BYTE INSTRUCTIONS.
  23716.  
  23717.  
  23718. PBSC CON LDCI,ADCI,LPCI,LMCI,CRMI,CWMI,IAMI,OAMI,FNCI
  23719. CON 0
  23720. CKB SPACE 4,15
  23721. ** CKB - CHECK PP AT BREAKPOINT.
  23722. *
  23723. * ENTRY (T7) = ADDRESS OF PP-S MB+5.
  23724. *
  23725. * EXIT (A) = (T2) = 0.
  23726. * (AB - AB+4) = PP MB+4.
  23727. * (T3 - T3+3) = BYTES 1 THRU 4 OF PP MB+5.
  23728. *
  23729. * ERROR TO *KMS* IF PP NOT RESPONDING.
  23730. *
  23731. * USES KM, T1.
  23732.  
  23733.  
  23734. CKB3 LDD T7 CHECK PP ACTIVITY
  23735. CRD T2
  23736. SBN 1 GET PARAMETER WORD
  23737. CRD AB
  23738. LDD T2
  23739. ADD T3 TEST FOR 7777 7777 STATUS FROM *7BK*
  23740. LMC 2*7777
  23741. NJN CKB1 IF PP NOT AT BREAKPOINT
  23742. STD T2
  23743.  
  23744. CKB SUBR ENTRY/EXIT
  23745. LDD HN
  23746. STD T1 SET RETRY LIMIT
  23747. CKB1 SOD T1
  23748. PJN CKB3 IF NOT TIMEOUT
  23749. LDC CKBA
  23750. CKB2 STD KM SET ERROR MESSAGE
  23751. LDN 0
  23752. STM /KEYBOARD/KBRA CLEAR REPEAT ENTRY
  23753. LDD KM
  23754. LJM /KEYBOARD/KMS EXIT
  23755.  
  23756.  
  23757. CKBA DATA C*NOT AT BREAK.*
  23758. SPACE 4,10
  23759. CMDEND
  23760. COMMAND (ENTER DATE.)
  23761. DTE SPACE 4,10
  23762. ** DIRECT CELLS.
  23763.  
  23764.  
  23765. PD EQU SR PACKED DATE AND TIME
  23766. DTE SPACE 4,10
  23767. ** OVERFLOW CHECK.
  23768. *
  23769. * THE ENTER DATE OVERLAY IS NOT CHECKED FOR OVERFLOW
  23770. * DIRECTLY. RATHER, IT IS COMPARED TO THE LARGEST
  23771. * COMMAND OVERLAY FOUND. IF THE ENTER DATE OVERLAY
  23772. * IS LARGER, AN ERROR WILL BE FLAGGED. BECAUSE OF
  23773. * THIS, THE ENTER DATE OVERLAY MUST REMAIN THE
  23774. * LAST OF THE COMMAND OVERLAYS TO ALLOW NEW OVERLAYS
  23775. * TO REACH THE LARGEST POSSIBLE SIZE.
  23776. DTE SPACE 4,10
  23777. *** DATE. YY/MM/DD.
  23778. *
  23779. * ENTER SYSTEM DATE.
  23780.  
  23781.  
  23782. ENTRY DTE
  23783. LDN TIML READ DATE AND TIME WORDS
  23784. CRM DTEB,ON
  23785. RJM ADD ASSEMBLE YEAR
  23786. STD T7
  23787. LPN 3
  23788. NJN DTE1 IF NOT LEAP YEAR
  23789. AOM DTEA+2 ADVANCE FEBUARY
  23790. DTE1 AOD CA ASSEMBLE MONTH
  23791. RJM ADD
  23792. STD T6
  23793. ZJN DTE2 IF MONTH = 0
  23794. SBN 13D
  23795. PJN DTE2 IF INCORRECT MONTH
  23796. AOD CA ASSEMBLE DAY
  23797. RJM ADD
  23798. SHN 6
  23799. STD T5
  23800. ZJN DTE2 IF DAY = 0
  23801. SHN -6 CHECK DAY COUNT FOR MONTH
  23802. SBN 1
  23803. SBM DTEA,T6
  23804. MJN DTE3 IF LEGAL DAY COUNT
  23805. DTE2 JMP KIE *INCORRECT ENTRY*
  23806.  
  23807. DTE3 LDN 4 SET ACCOUNT LOGGING BIT
  23808. RAM /KEYBOARD/LKBA
  23809. LDN 0
  23810. RJM C1D CHECK FOR COMMAND LOGGING
  23811. LDN PDTL READ PACKED DATE AND TIME
  23812. CRD PD
  23813. LCN 8D RESET KEYBOARD INDEX
  23814. RAD CA
  23815. RJM ADD REASSEMBLE YEAR
  23816. STD T7
  23817. AOD CA
  23818. RJM ADD REASSEMBLE MONTH
  23819. STD T6
  23820. AOD CA
  23821. RJM ADD REASSEMBLE DAY
  23822. SHN 6
  23823. STD T5
  23824. LDD T7 ENTER PACKED DATE
  23825. ADC -70D
  23826. PJN DTE4 IF 70 .LE. YEAR .LE. 99
  23827. ADC 100D
  23828. DTE4 SHN 6
  23829. LMD T6
  23830. STD PD+2
  23831. LDD PD+3
  23832. LPN 77
  23833. LMD T5
  23834. STD PD+3
  23835. LDM DTEA,T6 SET DAY LIMIT
  23836. ADN 1
  23837. STD AB
  23838. LDN DT ASSEMBLE DATE
  23839. STD T1 SET ASSEMBLY
  23840. LDC KBUF+5 SET CHARACTER ADDRESS
  23841. STD T2
  23842. DTE5 LDI T2 ASSEMBLE BYTE
  23843. SHN 6
  23844. LMM 1,T2
  23845. STI T1
  23846. AOD T1
  23847. LDN 2
  23848. RAD T2
  23849. LMC KBUF+5+2*5
  23850. NJN DTE5 IF MORE CHARACTERS
  23851. LDD DT SET JULIAN YEAR
  23852. LPN 77
  23853. STM JDAT+2
  23854. LDD DT+1
  23855. SCN 77
  23856. ADN 1R0
  23857. STM JDAT+3
  23858. LDC 2R00
  23859. STM JDAT+4
  23860. LDD PD+3 SET CURRENT DAY
  23861. SHN -6
  23862. STD T2
  23863. LDD PD+2 CALCULATE JULIAN DAY
  23864. LPN 77
  23865. STD T1
  23866. UJN DTE7 COUNT DAYS
  23867.  
  23868. DTE6 LDM DTEA,T1 ACCUMULATE DAYS
  23869. RAD T2
  23870. DTE7 SOD T1
  23871. NJN DTE6 IF MORE MONTHS TO PROCESS
  23872. DTE8 LDC -100D COUNT 100-S OF DAYS
  23873. RAD T2
  23874. MJN DTE9 IF .LT. 100 LEFT IN SUM
  23875. AOM JDAT+3
  23876. UJN DTE8 CHECK FOR ANOTHER 100
  23877.  
  23878. DTE9 ADC 100D
  23879. STD T2
  23880. DTE10 LCN 10D COUNT 10-S OF DAYS
  23881. RAD T2
  23882. MJN DTE11 IF .LT. 10 LEFT IN SUM
  23883. LDD HN
  23884. RAM JDAT+4
  23885. UJN DTE10 CHECK FOR ANOTHER 10
  23886.  
  23887. DTE11 ADN 10D
  23888. RAM JDAT+4
  23889. LDN ZERL
  23890. CRD CM
  23891. LDD MA
  23892. ADN 1
  23893. STD CM+2
  23894. CWM JDAT,ON WRITE DATE AND TIME WORDS TO BUFFER
  23895. CWD PD
  23896. ADN 1
  23897. CWM DTEB,ON
  23898. CWD DT
  23899. ADN 1
  23900. CWD AB
  23901. LDN EDTS SET SUBFUNCTION
  23902. STD CM+1
  23903. MONITOR DSRM ENTER DATE AND TIME
  23904. JMP KBR RETURN
  23905. ADD SPACE 4,10
  23906. ** ADD - ASSEMBLE DECIMAL DIGITS.
  23907. *
  23908. * EXIT (A) = ASSEMBLY.
  23909. *
  23910. * USES CA, T1.
  23911.  
  23912.  
  23913. ADD SUBR ENTRY/EXIT
  23914. AOD CA
  23915. LDI CA
  23916. SBN 1R0
  23917. STD T1
  23918. SHN 2
  23919. ADD T1
  23920. SHN 1
  23921. STD T1
  23922. AOD CA
  23923. LDI CA
  23924. SBN 1R0
  23925. ADD T1
  23926. UJN ADDX RETURN
  23927. DTEA SPACE 4,10
  23928. ** DTEA - DAY LIMITS FOR MONTH.
  23929.  
  23930.  
  23931. DTEA EQU *-1
  23932. BASE D
  23933. LOC 1
  23934. CON 31
  23935. CON 28
  23936. CON 31
  23937. CON 30
  23938. CON 31
  23939. CON 30
  23940. CON 31
  23941. CON 31
  23942. CON 30
  23943. CON 31
  23944. CON 30
  23945. CON 31
  23946. BASE *
  23947. LOC *O
  23948.  
  23949. DTEB BSS 5 BUFFER FOR TIME
  23950. TTL DSD - DYNAMIC SYSTEM DISPLAY.
  23951. TITLE TERMINATE OVERLAYS.
  23952. ** TERMINATE OVERLAYS.
  23953.  
  23954.  
  23955. CMDEND LAST
  23956.  
  23957.  
  23958. .LCOM EQU L.C LENGTH OF LONGEST COMMAND OVERLAY
  23959. .LDIS EQU L.D LENGTH OF LONGEST DISPLAY OVERLAY
  23960. .FLFT EQU .FCOM+.LCOM+1 LEFT DISPLAY OVERLAY ORIGIN
  23961. .FRHT EQU .FLFT+.LDIS+1 RIGHT DISPLAY OVERLAY ORIGIN
  23962. .LAST EQU .FRHT+.LDIS+1 LAST LOCATION USED
  23963.  
  23964. ERRNG 7776-.LAST OVERLAY OVERFLOW WITH ACTUAL LENGTHS
  23965.  
  23966. .LCMX EQU 353 MAXIMUM LENGTH FOR COMMAND OVERLAY
  23967. .LDMX EQU 656 MAXIMUM LENGTH FOR DISPLAY OVERLAY
  23968. .LAMX EQU .FCOM+.LCMX+.LDMX+.LDMX+3 LAST WITH MAXIMUM LENGTHS
  23969.  
  23970. ERRNG 7776-.LAMX OVERLAY OVERFLOW WITH MAXIMUM LENGTHS
  23971.  
  23972. INSP$ IF DEF,INSP$
  23973. .INSP EQU 10 SPACE RESERVED FOR INSTALLATION USE
  23974. INSP$ ELSE
  23975. .INSP EQU 0 SPACE RESERVED FOR INSTALLATION USE
  23976. INSP$ ENDIF
  23977.  
  23978. ERRNG .LDMX-.LDIS-.INSP LARGEST DISPLAY OVERLAY OVERFLOWS
  23979. ERRNG .LCMX-.LCOM-.INSP LARGEST COMMAND OVERLAY OVERFLOWS
  23980.  
  23981. END