User Tools

Site Tools


cdc:nos2.source:opl871:1ma

Table of Contents

1MA

Table Of Contents

  • [00007] 1MA - MONITOR AUXILIARY PROCESSOR.
  • [00187] MACRO DEFINITIONS.
  • [00189] ABORT - ERROR PROCESSING MACRO.
  • [00213] OVERLAY - GENERATE OVERLAY CONSTANTS.
  • [00238] SCLASS - DEFINE SERVICE CLASS TABLE.
  • [00266] TABLE - GENERATE OVERLAY TABLE.
  • [00299] MTA - MAIN PROGRAM.
  • [00301] MTA - MAIN PROGRAM.
  • [00349] CHG - CONDITIONALLY HANG PP.
  • [00365] ERR - ERROR PROCESSOR.
  • [00380] SUBROUTINES.
  • [00382] CAA - CALCULATE ABSOLUTE ADDRESS.
  • [00398] RCL - ENTER PP RECALL.
  • [00435] SRA - SET REQUEST ADDRESS.
  • [00452] DPP - DROP PP.
  • [00483] TFCN - FUNCTION CODE TABLE.
  • [00507] FUNCTION PROCESSORS.
  • [00616] TEJT - TABLE OF EJT REQUEST PROCESSORS.
  • [00634] FUNCTION PROCESSORS.
  • [00903] CKE - CHECK FOR EXTENDED MEMORY ASSIGNED.
  • [00926] MRER - MAINTENANCE REGISTER ERROR HANDLER.
  • [00941] CLM - CLEAR MEMORY (CM).
  • [01104] TERM - TABLE OF ERROR FLAGS AND MESSAGES.
  • [01117] SCP FUNCTION PROCESSORS.
  • [01119] SDM - SEND DAYFILE MESSAGE AND/OR ABORT JOB. (SF.REGR)
  • [01178] TEFG - TABLE OF ERROR FLAGS.
  • [01192] SWO - SWAP OUT USER CONTROL POINT. (SF.SWPO)
  • [01230] SXT - PROCESS EXIT FROM SCP STATUS. (SF.EXIT)
  • [01254] SUBROUTINES.
  • [01256] DLY - DELAY.
  • [01270] SCB - SET COMPLETION BIT.
  • [01409] SFP - SEND FILE TO PARTNER.
  • [01503] DLF - DELETE LOCAL FNT.
  • [01521] SRC - SET REPLY CODE.
  • [01547] GFP - GET FILE FROM PARTNER.
  • [01652] CCP - CHANGE CONTROL POINT.
  • [01734] CLF - CREATE LOCAL FNT ENTRY.
  • [01794] PJI - PROCESS JOB INTERLOCK.
  • [01821] RTC - RETURN TO CALLER.
  • [02176] DTC - DETACH JOB FROM CALLER.
  • [02356] TAMR - TABLE OF ACCOUNTING MESSAGE REASONS.
  • [02369] GTN - GET TERMINAL NAME.
  • [02410] PTN - PUT TERMINAL NAME.
  • [02466] REC - RECOVER DETACHED JOB.
  • [02678] RRJ - RESTART RECOVERED JOB.
  • [02765] RST - RESET TIMEOUT.
  • [02826] TRM - TERMINATE JOB.
  • [02907] EJT SYSTEM REQUEST SUBROUTINES.
  • [02909] GRE - GET REQUIRED EJT ENTRY.
  • [03046] PES - PROCESS I/O ERROR STATUS.
  • [03067] RRF - READ ROLLOUT FILE.
  • [03115] SAM - SEND ACCOUNTING MESSAGE.
  • [03184] SEA - SET ENTRY ADDRESS.
  • [03203] SES - SET UP EJT SEARCH.
  • [03223] STO - SET TIMEOUT.
  • [03275] TAS - TRANSFER ACCUMULATED SRU-S.
  • [03300] VSC - VALIDATE SERVICE CLASS.
  • [03379] VUD - VALIDATE USER DETACH.
  • [03441] WCE - WRITE CHANGES TO EJT.
  • [03494] FTJ - FREEZE TERMINAL JOB.
  • [03607] SUB - SET USER BREAK IN EJT ENTRY.
  • [03640] EJT SYSTEM REQUEST SUBROUTINES.
  • [03641] USER BREAK SUBROUTINES.
  • [03643] IUT - ISSUE *UTEM* MONITOR FUNCTION.
  • [03701] SUBROUTINES.
  • [03703] CRF - CLEAR CTI CLOCK UPDATE ACTIVE FLAG.
  • [03727] FDR - FORMAT *DFT* REQUEST.
  • [03798] PDT - PACK DATE AND TIME.
  • [03861] SDA - SET NOS REQUEST HEADER ADDRESS.
  • [03870] WDC - WAIT FOR DEADSTART COMPLETE.
  • [03888] WIB - WAIT FOR INACTIVE NOS REQUEST AREA.
  • [03909] WMR - WAIT FOR MINUTE ROLLOVER.
  • [03926] PRESET PROGRAM.
  • [03928] PRS - PRESET PROGRAM.
  • [04115] CPP - CONCURRENT PP PROCESSOR.
  • [04236] DPL - DEADSTART PP AND LOAD *PPR*.
  • [04357] DPLA - FAILURE CODE BUFFER.
  • [04372] AIC - ATTEMPT TO IDLE THE CPP.
  • [04389] IEM - ISSUE ERROR MESSAGE TO BML AND SYSTEM CONTROL POINT.
  • [04429] IPP - IDLE PP.
  • [04516] LOV - LOAD CPP OVERLAY.
  • [04615] SPB - SET PP BOUNDS BIT.
  • [04671] AMA - ACQUIRE MULTIPLEXER ACCESS.
  • [04691] RMA - RELEASE MULTIPLEXER ACCESS.
  • [04700] IBM - ISSUE BINARY MAINTENANCE LOG MESSAGE.
  • [04734] NEC - NORMALIZE EC REGISTER.
  • [04769] SCU - SET CPP UNAVAILABLE.

Source Code

1MA.txt
  1. IDENT 1MA,MTA
  2. PERIPH
  3. BASE MIXED
  4. SST
  5. *COMMENT 1MA - MONITOR AUXILIARY PROCESSOR.
  6. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  7. TITLE 1MA - MONITOR AUXILIARY PROCESSOR.
  8. SPACE 4,10
  9. ***** 1MA - MONITOR AUXILIARY PROCESSOR.
  10. * G. R. MANSFIELD. 70/08/04.
  11. * A. J. KOMOR. 76/03/15.
  12. SPACE 4,10
  13. *** *1MA* IS CALLED BY THE SYSTEM MONITOR TO PERFORM
  14. * FUNCTIONS WHICH CAN NOT BE PROCESSED IMMEDIATELY BY THE
  15. * MONITOR.
  16. SPACE 4,10
  17. *** CALL.
  18. *
  19. *
  20. *T IR 18/ *1MA*,1/,5/ CP,12/ CODE,24/ ARG
  21. * CP CONTROL POINT NUMBER
  22. * CODE FUNCTION CODE
  23. * 0 = REQUEST STORAGE
  24. * 1 = DAYFILE MESSAGE
  25. * 2 = SCP FUNCTION ON UCP
  26. * 3 = FILE SWITCHING FUNCTION.
  27. * 4 = EXIT FROM SCP STATUS
  28. * 5 = EJT SYSTEM REQUEST
  29. * 6 = PROCESS CLOCK UPDATE.
  30. * 7 = LOG SOFTWARE ERROR.
  31. * 10 = LOAD CPP RESIDENT
  32. * 11 = LOAD OVERLAY FOR CPP.
  33. * 12 = IDLE CPP
  34. * ARG ARGUMENT(S)
  35. SPACE 4,10
  36. *** DAYFILE MESSAGES.
  37. *
  38. *
  39. * * FL REQUEST BEYOND MFL (CM).* = CM FL REQUEST EXCEEDS MFL.
  40. *
  41. * * FL REQUEST BEYOND MFL (EXTENDED MEMORY).* = EXTENDED MEMORY
  42. * FL REQUEST EXCEEDS MFL.
  43. *
  44. * * MFL LESS THAN EXTENDED MEMORY MINIMUM CM FL.* = A REQUEST
  45. * FOR EXTENDED MEMORY HAS BEEN MADE WHILE AN MFL OF LESS THAN
  46. * *MCMX* IS IN EFFECT.
  47. *
  48. * * INCORRECT COMMON MEMORY MANAGER REQUEST.* = A NON CMM TYPE
  49. * MEMORY REQUEST WAS MADE WHILE THE JOB STEP WAS IN CMM MODE.
  50. *
  51. * * INCORRECT REQUEST.* = PARAMETER ADDRESS OUTSIDE JOB FL.
  52. *
  53. * * USER ACCESS NOT VALID.* = UCP NOT QUALIFIED TO ACCESS SCP.
  54. SPACE 4,10
  55. *** ACCOUNT DAYFILE MESSAGES.
  56. *
  57. *
  58. * *ARUN, USERNAME, FAMILYNAME, TERMINALNAME.* = RECOVERY OF
  59. * AN INTERACTIVE JOB WITH A USER NAME OF USERNAME, A FAMILY
  60. * OF FAMILYNAME, AND A TERMINAL NAME OF TERMINALNAME.
  61. *
  62. * *ASTD, USERNAME, FAMILYNAME.* = INTERACTIVE JOB WITH USER
  63. * NAME USERNAME AND FAMILY FAMILYNAME WAS SUSPENDED DUE TO A
  64. * USER DETACH.
  65. *
  66. * *ASTH, USERNAME, FAMILYNAME.* = INTERACTIVE JOB WITH USER
  67. * NAME USERNAME AND FAMILY FAMILYNAME WAS SUSPENDED DUE TO A
  68. * LINE DISCONNECT.
  69. *
  70. * *ASTP, USERNAME, FAMILYNAME.* = INTERACTIVE JOB WITH USER
  71. * NAME USERNAME AND FAMILY FAMILYNAME WAS SUSPENDED DUE TO A
  72. * PROGRAM REQUEST.
  73. *
  74. * *ASTR, USERNAME, FAMILYNAME.* = INTERACTIVE JOB WITH USER
  75. * NAME USERNAME AND FAMILY FAMILYNAME WAS SUSPENDED DUE TO THE
  76. * RECOVERY OF THE INTERACTIVE SUBSYSTEM.
  77. *
  78. * *ASTT, USERNAME, FAMILYNAME.* = INTERACTIVE JOB WITH USER
  79. * USERNAME AND FAMILY FAMILYNAME WAS SUSPENDED DUE TO A
  80. * SESSION TIMEOUT.
  81. SPACE 4,10
  82. *** OPERATOR MESSAGES.
  83. *
  84. *
  85. * *WAITING FOR STORAGE (CM).* = JOB IS WAITING FOR ADDITIONAL
  86. * CENTRAL MEMORY TO BE MADE AVAILABLE.
  87. *
  88. * *WAITING FOR STORAGE (EM).* = JOB IS WAITING FOR
  89. * ADDITIONAL EXTENDED CORE STORAGE TO BE MADE AVAILABLE.
  90. *
  91. * * CPP NOT RESPONDING* = A CPP HAS NOT BEGUN TO INPUT *PPR*
  92. * FROM CHANNEL 15 DURING A DEADSTART OPERATION.
  93. *
  94. * * LAST BYTE NOT TAKEN BY CPP* = THE LAST BYTE OF *PPR* HAS
  95. * BEEN INPUTTED BY THE CPP BEING DEADSTARTED.
  96. *
  97. * * CHANNEL 15 PARITY ERROR* = DURING CPP DEADSTART, A PARITY
  98. * ERROR WAS ENCOUNTERED ON CHANNEL 15.
  99. *
  100. * * PPR PRESET TIMEOUT* = AFTER BEING LOADED INTO A DEADSTARTED
  101. * CPP, *PPR* HUNG IN ITS PRESET CODE.
  102. SPACE 4,10
  103. *** ERROR LOG MESSAGE.
  104. *
  105. * * PPN P1234 SYSTEM ERROR.* = A PP WITH THE NAME OF PPN
  106. * DETECTED A SYSTEM ERROR AT ADDRESS 1234 WITHIN THE PP.
  107. * THE ADDRESS IS NOT VALID IF IT IS ZERO.
  108. SPACE 4,10
  109. *** HANG CONDITIONS.
  110. *
  111. *
  112. * 1. *1MA* IS CALLED WITH AN INCORRECT FUNCTION CODE.
  113. * 2. EJT REQUEST MADE WITH INCORRECT FUNCTION CODE.
  114. SPACE 4,10
  115. ** DIRECT LOCATION ASSIGNMENTS.
  116.  
  117.  
  118. FN EQU 20 - 24 FNT ENTRY
  119. FS EQU 25 - 31 FST ENTRY
  120. SP EQU 32 - 36 SUBSYSTEM PARAMETER WORD 1
  121. SQ EQU 37 - 43 JOB IDENTIFIER
  122. SF EQU 44 SUBFUNCTION CODE FOR FUNCTION 0
  123. RC EQU 44 REPLY CODE FOR FUNCTION 3
  124. OT EQU 44 ORIGIN TYPE
  125. EF EQU 46 ERROR FLAG
  126. FA EQU 57 FNT ORDINAL
  127. CN EQU 60 - 64 SCRATCH
  128. SC EQU 67 SCP CONNECTION ACTIVITY, SERVICE CLASS
  129. W3 EQU 15 - 21 PARAMETER BLOCK
  130. W4 EQU 22 - 26
  131. W5 EQU W4
  132. TN EQU W5+1 TERMINAL NUMBER
  133. W0 EQU 27 - 33
  134. W1 EQU 34 - 40
  135. W2 EQU 41 - 45
  136. EJ EQU 46 - 47 EJT ENTRY ADDRESS
  137. TT EQU EJ TERMINAL TABLE ADDRESS
  138. TA EQU 57 INTERACTIVE SUBSYSTEM *RA*
  139. JS EQU 57 JOB STATUS
  140. EL EQU 57 ENTRY LENGTH
  141. SPACE 4,10
  142. ** CONSTANTS.
  143.  
  144.  
  145. DETI EQU 1 DETACH ALLOWED IF INVOLUNTARY
  146. EJWD MAX JSNE,SCHE,SCLE HIGHEST WORD NEEDED FROM EJT
  147. SPACE 4,10
  148. ** COMMON DECKS.
  149.  
  150.  
  151. *CALL COMPMAC
  152. *CALL COMSACC
  153. *CALL COMSDFS
  154. *CALL COMSEVT
  155. QUAL DFT
  156. *CALL COMSDFT
  157. QUAL *
  158. *CALL COMSDST
  159.  
  160. QUAL IOU
  161. *CALL COMSIOU
  162. QUAL *
  163.  
  164. * UNQUALIFIED *COMSIOU* SYMBOLS.
  165.  
  166. MR EQU /IOU/MR
  167. MX EQU /IOU/MX
  168. MXDM EQU /IOU/MXDM
  169. MXPT EQU /IOU/MXPT
  170.  
  171. *CALL COMSEJT
  172. *CALL COMSJCE
  173. *CALL COMSMSC
  174. *CALL COMSMTR
  175. *CALL COMSREM
  176. *CALL COMSSSJ
  177. *CALL COMSMSP
  178. *CALL COMSJRO
  179. *CALL COMSPIM
  180. *CALL COMSSSE
  181. *CALL COMSCPS
  182. *CALL COMSSCP
  183. *CALL COMSSRU
  184. *CALL COMSSSD
  185. *CALL COMSZOL
  186. SPACE 4,10
  187. TITLE MACRO DEFINITIONS.
  188. ABORT SPACE 4,10
  189. ** ABORT - ERROR PROCESSING MACRO.
  190. *
  191. * ABORT ADDR
  192. *
  193. * ADDR = FWA OF ERROR MESSAGE FOR DAYFILE.
  194. *
  195. * CALLS ERR.
  196.  
  197.  
  198. PURGMAC ABORT
  199.  
  200. ABORT MACRO A
  201. MACREF ABORT
  202. LDC A
  203. LJM ERR PROCESS ERROR
  204. ABORT ENDM
  205. SPACE 4,10
  206. ** OVERLAY CONTROL.
  207. *
  208. * THIS FEATURE IS INCLUDED FOR FUTURE MODULARITY.
  209.  
  210. .N SET 0
  211. OVLB MICRO 1,, 2M BASE OVERLAY NAME
  212. OVERLAY SPACE 4,10
  213. ** OVERLAY - GENERATE OVERLAY CONSTANTS.
  214. *
  215. * OVERLAY (TEXT),LADDR.
  216. *
  217. * ENTRY *TEXT* = TEXT OF SUBTITLES.
  218. * *LADDR* = LOAD ADDRESS FOR OVERLAY, DEFAULT E1MA.
  219.  
  220.  
  221. PURGMAC OVERLAY
  222.  
  223. OVERLAY MACRO TEXT,E1MA
  224. MACREF OVERLAY
  225. QUAL
  226. .N SET .N+1
  227. .M MICRO .N,1, ABCDFGHIJKLM
  228. .O MICRO 1,3, "OVLB"".M"
  229. QUAL ".O"
  230. TTL 1MA/".O" - TEXT
  231. TITLE
  232. IDENT ".O",E1MA TEXT
  233. *COMMENT 1MA - TEXT
  234. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  235. ORG E1MA
  236. ENDM
  237. SCLASS SPACE 4,15
  238. ** SCLASS - DEFINE SERVICE CLASS TABLE.
  239. *
  240. * SCLASS NM,MN,DF,ST,TX
  241. *
  242. * ENTRY *NM* = SERVICE CLASS NAME.
  243. * *MN* = TWO CHARACTER MNEMONIC.
  244. * *DF* = DAYFILE MESSAGE CHARACTER.
  245. * *ST* = SHORT TEXT FOR *QFTLIST*.
  246. * *TX* = TEXT OF SERVICE CLASS NAME FOR BANNER PAGE.
  247. *
  248. * NOTE - THE CALL TO *COMSSCD* MUST FOLLOW THE DEFINITION OF
  249. * THIS MACRO.
  250.  
  251.  
  252. PURGMAC SCLASS
  253.  
  254. SCLASS MACRO NM,MN,DF,ST,TX
  255. .A IFC NE,$NM$SSSC$
  256. .SCLVSP RMT
  257. INDEX NM,MN_MK TX
  258. .SCLVSP RMT
  259. .A ENDIF
  260. SCLASS ENDM
  261.  
  262.  
  263. SCL$ EQU 0 ONLY PROCESS CLASSES WITH JCB-S
  264. *CALL COMSSCD
  265. TABLE SPACE 4,10
  266. ** TABLE - GENERATE OVERLAY TABLE.
  267. *
  268. * GENERATES 2-BYTE TABLE ENTRIES IN THE FORMAT
  269. *
  270. *T 12/ OVL,12/ ADDR
  271. *
  272. * OVL = LAST CHARACTER OF OVERLAY TO BE LOADED.
  273. * ADDR = ADDRESS OF FUNCTION PROCESSOR IN THE OVERLAY.
  274.  
  275.  
  276. PURGMAC TABLE
  277.  
  278. MACRO TABLE,NAME,OFFSET,ADDR
  279. LOCAL MC,TAG1,TAG2,TAG3
  280. TAG1 IFC NE,$NAME$$ SET *NAME* TO BEGINNING OF TABLE
  281. NAME BSS 0
  282. .2 SET NAME
  283. TAG1 ELSE
  284. ORG .2+OFFSET*2-2
  285. TAG2 IFC NE,$ADDR$$ IF ACTUAL TABLE ENTRY
  286. MC MICRO 1,1, ADDR
  287. IFC NE,$"MC"$/$,1
  288. ERR TABLE ADDRESSES MUST BE QUALIFIED.
  289. MC MICRO 1,2, ADDR
  290. TAG3 IFC EQ,$"MC"$//$ IF NO OVERLAY TO LOAD
  291. CON 0,ADDR
  292. TAG3 ELSE STORE LAST CHARACTER OF OVERLAY NAME
  293. MC MICRO 4,1, ADDR
  294. CON 1R_"MC",ADDR
  295. TAG3 ENDIF
  296. TAG2 ENDIF
  297. TAG1 ENDIF
  298. ENDM
  299. TITLE MTA - MAIN PROGRAM.
  300. MTA SPACE 4,10
  301. ** MTA - MAIN PROGRAM.
  302.  
  303.  
  304. ORG PPFW
  305. MTA LDD IR+2 CHECK FUNCTION
  306. SBN TFCNL
  307. MJN MTA1 IF LEGAL REQUEST
  308. LDN 0
  309. RJM CHG CONDITIONALLY HANG PP
  310. LJM DPP DROP PP
  311.  
  312. MTA1 RJM IFP
  313. LDD IR+3
  314. LPN 37
  315. SHN 14
  316. LMD IR+4
  317. STM SRAB+1
  318. SHN -6
  319. STM SRAA+1
  320. SHN -6
  321. RAM SRAB
  322. LDM TFCN,IR+2 SET PROCESSOR
  323. STD T1
  324. LMC 4000
  325. ZJN MTA2 IF OVERLAY LOAD REQUIRED
  326. LJM 0,T1 ENTER PROCESSOR
  327.  
  328. MTA2 LDN MESL READ MESSAGE DATA FROM MESSAGE BUFFER
  329. STD T1
  330. LDD MP+3 ASSEMBLE BUFFER ADDRESS
  331. SHN 14
  332. LMD MP+4
  333. ADN 1
  334. CRD SP
  335. ADN 1 READ JOB IDENTIFIER
  336. CRD SQ
  337. CRM BUF,T1 READ REST OF MESSAGE BUFFER
  338. LDN ZERL CLEAR BUFFER INTERLOCK
  339. CRD CN
  340. LDD MP+3 ASSEMBLE BUFFER ADDRESS
  341. SHN 14
  342. LMD MP+4
  343. CWD CN
  344. EXECUTE 2MA
  345. LDN 0
  346. RJM CHG CONDITIONALLY HANG PP
  347. LJM DPP DROP PP
  348. CHG SPACE 4,10
  349. ** CHG - CONDITIONALLY HANG PP.
  350. *
  351. * ENTRY (A) = ERROR FLAG TO SET.
  352. *
  353. * USES CM - CM+4.
  354. *
  355. * MACROS MONITOR.
  356.  
  357.  
  358. CHG SUBR ENTRY/EXIT
  359. STD CM+2 SET ERROR FLAG
  360. LDM CHG P-ADDRESS
  361. STD CM+1
  362. MONITOR CHGM CONDITIONALLY HANG PP
  363. UJN CHGX RETURN
  364. ERR SPACE 4,10
  365. ** ERR - ERROR PROCESSOR.
  366. *
  367. * ENTRY (A) = FWA OF ERROR MESSAGE FOR DAYFILE.
  368. *
  369. * EXIT DAYFILE MESSAGE ISSUED.
  370. * CONTROL POINT ABORTED.
  371. *
  372. * CALLS DFM.
  373. *
  374. * MACROS MONITOR.
  375.  
  376.  
  377. ERR RJM DFM
  378. MONITOR ABTM ABORT JOB
  379. ERR1 LJM PPR EXIT TO PP RESIDENT
  380. TITLE SUBROUTINES.
  381. CAA SPACE 4,10
  382. ** CAA - CALCULATE ABSOLUTE ADDRESS.
  383. *
  384. * ENTRY (IR+3 - IR+4) = RELATIVE ADDRESS.
  385. *
  386. * EXIT (A) = ABSOLUTE ADDRESS.
  387.  
  388.  
  389. CAA SUBR ENTRY/EXIT
  390. LDD IR+3 CALCULATE ABSOLUTE ADDRESS
  391. LPN 37
  392. SHN 6
  393. ADD RA
  394. SHN 6
  395. ADD IR+4
  396. UJN CAAX RETURN
  397. RCL SPACE 4,10
  398. ** RCL - ENTER PP RECALL.
  399. * ENTRY SET TO RECALL FOR 250 MILLISECONDS.
  400. *
  401. * ENTRY (IR - IR+4) = RECALL PARAMETERS.
  402. * (SF) = SUBFUNCTION.
  403. * (A) = RECALL STACK REASON CODE.
  404. *
  405. * USES CM - CM+4, CN - CN+4.
  406. *
  407. * MACROS MONITOR.
  408.  
  409.  
  410. RCL SHN 6 SAVE RECALL STACK REASON CODE
  411. STD CM
  412. LDN ZERL
  413. CRD CM+1
  414. LDD CP CHECK FOR *ORET*
  415. ADK STSW
  416. CRD CN
  417. LDD CN+1
  418. LMN ORET
  419. ZJN DPP IF SET, DROP PP
  420. LDD SF
  421. ZJN RCL1 IF RFL REQUEST
  422. LDD HN RESTORE SUBFUNCTION
  423. RAD IR+3
  424. RCL1 LDD MA STORE PP CALL IN MESSAGE BUFFER
  425. CWD IR
  426. ADN 1 WRITE RECALL STACK REASON CODE
  427. CWD CM
  428. LDN PTMF REQUEST TIMED RECALL
  429. STD CM+1
  430. LDC 250D SET RECALL TIME
  431. STD CM+4
  432. MONITOR RECM ENTER DEFAULT TIMED RECALL
  433. UJN DPP1 EXIT
  434. SRA SPACE 4,10
  435. ** SRA - SET REQUEST ADDRESS.
  436. *
  437. * EXIT (A) = ABSOLUTE ADDRESS OF REQUEST WORD.
  438. * (A) = 0 IF ADDRESS OUTSIDE USER-S FL.
  439.  
  440.  
  441. SRA1 LDN 0 INDICATE INCORRECT ADDRESS
  442.  
  443. SRA SUBR ENTRY/EXIT
  444. SRAA LDC * (REQUEST ADDRESS/100)
  445. SBD FL
  446. PJN SRA1 IF ADDRESS OUTSIDE FL
  447. LDD RA
  448. SHN 6
  449. SRAB ADC * (REQUEST ADDRESS)
  450. UJN SRAX RETURN
  451. DPP SPACE 4,10
  452. ** DPP - DROP PP.
  453. *
  454. * USES CM+1 - CM+2.
  455. *
  456. * MACROS MONITOR.
  457.  
  458.  
  459. DPP MONITOR DPPM DROP PPU
  460. DPP1 LJM PPR ENTER PP RESIDENT
  461.  
  462. DPP2 LDN 2 DECREMENT DAYFILE MESSAGE LIMIT
  463. STD CM+1
  464. LDN 0
  465. STD CM+2
  466. LDD MA
  467. CWM DPPA,CM+1
  468. MONITOR UADM UPDATE ACCOUNTING
  469. UJN DPP1 UPDATE ACCOUNTING AND DROP PPU
  470.  
  471. * MESSAGE BUFFER STRUCTURE FOR UADM FORMAT.
  472.  
  473. DPPA CON CDOS
  474. CON ACLW
  475. CON 36D*100+12D
  476. CON 0,0
  477.  
  478. CON AISS SUBFUNCTION
  479. CON IOAW CP AREA WORD TO UPDATE
  480. CON 40D*100+20D MS ACCUMULATOR FIELD
  481. VFD 6/,18/IMMS INCREMENT VALUE
  482. TFCN SPACE 4,10
  483. ** TFCN - FUNCTION CODE TABLE.
  484. *
  485. * ENTRY = 1 WORD.
  486. * INDEXED BY FUNCTION CODE.
  487. *
  488. *T, 12/ ADDR
  489. * ADDR ADDRESS OF FUNCTION PROCESSOR
  490.  
  491.  
  492. TFCN BSS 0
  493. LOC 0
  494. CON RFL 0 = REQUEST STORAGE
  495. CON DMS 1 = DAYFILE MESSAGE
  496. CON 4000 2 = SCP FUNCTION ON UCP
  497. CON 4000 3 = FILE SWITCHING FUNCTION
  498. CON 4000 4 = EXIT FROM SCP STATUS
  499. CON PER 5 = PROCESS EJT REQUEST
  500. CON PCU 6 = PROCESS CLOCK UPDATE
  501. CON LCE 7 = LOG SOFTWARE ERROR
  502. CON CPP 10 = LOAD CPP RESIDENT
  503. CON CPP 11 = LOAD OVERLAY FOR CPP
  504. CON CPP 12 = IDLE CPP
  505. TFCNL BSS 0 TABLE LENGTH
  506. LOC *O
  507. TITLE FUNCTION PROCESSORS.
  508. PER SPACE 4,50
  509. ** FUNCTION 5.
  510. * PROCESS EJT REQUEST.
  511. *
  512. * ENTRY
  513. *T IR 18/ *1MA*,6/ AR,12/ CP,6/ 0,18/ ADDR
  514. * AR = AUTO RECALL FLAG.
  515. * CP = CONTROL POINT NUMBER.
  516. * ADDR ADDRESS OF PARAMETER BLOCK.
  517. *
  518. *ADDR 24/ JSN,12/ FLAGS,6/ PPI,8/ ERR,9/ FCN,1/C
  519. * 42/ NAME,6/ ERF,12/ EJTO
  520. * 3/RES,3/JAL,6/ OT,6/ RC,18/ MSG BUF,24/ RES
  521. * 60/ REC WD 1
  522. * 60/ REC WD 2
  523. * 12/ INST,12/ TN,36/ CDC RES
  524. * 42/ TNAME, 18/ RESERVED
  525. *
  526. * JSN = JOB SEQUENCE NUMBER.
  527. * FLAGS = ENEJ, BIT 0 = SELECT EJT ENTRIES BY ORIGIN TYPE.
  528. * RTEJ - BIT 0 = SELECT EJT ENTRIES BY ORIGIN TYPE.
  529. * BIT 1 = DEFAULT TIMEOUT (CLEAR = 0 TIMEOUT).
  530. * PPI = PREPROCESSOR INDEX.
  531. * ERR = ERROR RETURN (0 ON CALL).
  532. * FCN = FUNCTION CODE.
  533. * C = COMPLETE BIT (0 ON CALL).
  534. * NAME = ENEJ - ENTRY POINT NAME.
  535. * DTEJ, RCEJ, RSEJ - USER NAME.
  536. * ERF = ERROR FLAG TO SET.
  537. * EJTO = EXECUTING JOB TABLE ORDINAL.
  538. * RES = RESERVED FOR CDC.
  539. * JAL = JOB ACCESS LEVEL LIMIT (RETURNED ON *DTEJ*; 0 ON CALL).
  540. * OT = ORIGIN TYPE.
  541. * RC = REASON CODE.
  542. * MSG BUF = RELATIVE ADDRESS OF BUFFER TO RETURN *MS1W*.
  543. * REC WD 1 = RECOVERY WORD 1 (NFL WORD RC1N - SEE *PPCOM*).
  544. * REC WD 2 = RECOVERY WORD 2 (NFL WORD RC2N - SEE *PPCOM*).
  545. * INST = RESERVED FOR INSTALLATIONS.
  546. * TN = TERMINAL NUMBER.
  547. * CDC RES = RESERVED FOR CDC.
  548. * TNAME = TERMINAL NAME (RETURNED BY *DTEJ* AND *TJEJ*;
  549. * SPECIFIED ON CALL FOR *RCEJ*).
  550. *
  551. * NOTE - ANY CHANGES TO THIS PARAMETER BLOCK SHOULD ALSO
  552. * BE DOCUMENTED IN *CPUMTR* AND *IAFEX*.
  553. *
  554. * CALLS CHG, DPP, EXR, SFI, FUNCTION PROCESSORS.
  555. *
  556. * MACROS EXECUTE.
  557.  
  558.  
  559. PER BSS 0 ENTRY
  560. LDD MP+3 ASSEMBLE BUFFER ADDRESS
  561. SHN 14
  562. LMD MP+4
  563. ADN 1
  564. CRM W0,TR
  565. LDN ZERL CLEAR BUFFER INTERLOCK
  566. CRD CN
  567. LDD MP+3 ASSEMBLE BUFFER ADDRESS
  568. SHN 14
  569. LMD MP+4
  570. CWD CN
  571. LDK EJWD+1
  572. STD EL
  573. LDD W0+4
  574. LPN 76
  575. STD CN
  576. ZJN PER2 IF NO FUNCTION CODE
  577. SBN MXEJ*2
  578. PJN PER2 IF INCORRECT FUNCTION CODE
  579. LDM TEJT-1,CN SET LOAD ADDRESS
  580. STM PERA
  581. ZJN PER2 IF NO PROCESSOR ADDRESS
  582. LDM TEJT-2,CN SET OVERLAY TO LOAD
  583. ZJN PER1 IF NO OVERLAY TO LOAD
  584. LMC 2L2M
  585. RJM EXR LOAD OVERLAY
  586. PER1 LJM * PROCESS EJT SYSTEM REQUEST
  587. PERA EQU *-1
  588.  
  589. * PROCESS INCORRECT FUNCTION CODE.
  590.  
  591. PER2 LDN 0
  592. RJM CHG CONDITIONALLY HANG PP
  593. LDN SSER SYSTEM SOFTWARE ERROR
  594. * UJN PERX RETURN
  595.  
  596. * EXIT FOR FUNCTION PROCESSORS.
  597. * (A) = ERROR CODE TO PUT INTO RETURN BLOCK.
  598.  
  599. PERX BSS 0 ENTRY
  600. SHN 12 POSITION ERROR CODE
  601. RAD W0+4
  602. SHN -14
  603. RAD W0+3
  604. AOD W0+4 SET COMPLETE BIT
  605. RJM CAA CALCULATE ABSOLUTE ADDRESS
  606. CWM W0,TR WRITE PARAMETER BLOCK
  607. LDN CEIN
  608. STD T1
  609. LDC 0 CHECK EJTO
  610. PERB EQU *-1 EJT ORDINAL
  611. ZJN PER3 IF NO INTERLOCK TO CLEAR
  612. SFA EJT
  613. RJM SFI CLEAR INTERLOCK
  614. PER3 LJM DPP DROP PP
  615. TEJT SPACE 4,20
  616. ** TEJT - TABLE OF EJT REQUEST PROCESSORS.
  617. *
  618. *T 12/ OVL,12/ ADDR
  619. *
  620. * OVL = LAST LETTER OF OVERLAY TO LOAD.
  621. * ADDR = ADDRESS OF FUNCTION PROCESSOR.
  622.  
  623.  
  624. TEJT TABLE
  625. TABLE DTEJ,/2MC/DTC DTEJ - DETACH JOB
  626. TABLE ENEJ,//PER2 ENEJ - (PROCESSED BY CPUMTR)
  627. TABLE FJEJ,/2MD/FTJ FJEJ - FREEZE JOB
  628. TABLE RCEJ,/2MC/REC RCEJ - RECOVER JOB
  629. TABLE RSEJ,/2MC/RRJ RSEJ - RESTART RECOVERED JOB
  630. TABLE RTEJ,/2MC/RST RTEJ - RESET TIMEOUT
  631. TABLE SAEJ,/2MD/SUB SAEJ - SET USER BREAK ERROR FLAG
  632. TABLE TJEJ,/2MC/TRM TJEJ - TERMINATE JOB
  633. TABLE MXEJ MAXIMUM EJT REQUEST +1
  634. TITLE FUNCTION PROCESSORS.
  635. RFL SPACE 4,25
  636. *** FUNCTION 0.
  637. * REQUEST STORAGE.
  638. *
  639. * ENTRY
  640. *T ARG 6/SUB,18/FL
  641. *
  642. * SUB = 0 RFL REQUEST (NO STATUS WORD).
  643. * = 1 IF CM, ABORT IF NOT AVAILABLE.
  644. * = 2 IF EXTENDED MEMORY, ABORT IF NOT AVAILABLE.
  645. * = 3 IF CM, NO ABORT IF NOT AVAILABLE.
  646. * = 4 IF EXTENDED MEMORY, NO ABORT IF NOT AVAILABLE.
  647. *
  648. * FL = STORAGE REQUESTED IF SUBFUNCTION 0.
  649. * = ADDRESS OF STATUS WORD IF NOT SUBFUNCTION 0.
  650. *
  651. * IF SUBFUNCTION AND FL ARE BOTH ZERO, A CMM ERROR IS BEING
  652. * REQUESTED.
  653. *
  654. * USES SC, CM - CM+4, T3 - T7.
  655. *
  656. * CALLS CKE, CLM, RSI, SRA.
  657. *
  658. * MACROS EXECUTE, MONITOR.
  659.  
  660.  
  661. RFL LDD IR+3 SAVE SUBFUNCTION CODE
  662. SHN -6
  663. STD SF
  664. ZJN RFL3 IF RFL REQUEST
  665. LDC -100
  666. RAD IR+3
  667. RJM SRA SET REQUEST WORD ADDRESS
  668. ZJN RFL2 IF INCORRECT ADDRESS
  669. CRD FN
  670. LDD IR+3
  671. SHN 21-6
  672. MJN RFL6 IF EXTENDED MEMORY REQUEST
  673. LDD FN+2
  674. SCN 77
  675. SHN 6
  676. LMD FN+1
  677. SHN 6
  678. UJN RFL4 ROUND MEMORY REQUEST
  679.  
  680. RFL1 LDC =C* INCORRECT COMMON MEMORY MANAGER REQUEST.*
  681. LJM ERR PROCESS ERROR
  682.  
  683. RFL2 LDC =C* INCORRECT REQUEST.*
  684. LJM ERR PROCESS ERROR
  685.  
  686. RFL3 LDD IR+3
  687. SHN 14
  688. LMD IR+4
  689. ZJN RFL1 IF CMM CONFLICT
  690. RFL4 LPC 377777 MASK OUT NO REDUCE OVERRIDE
  691. ADN 77 ROUND UP MEMORY REQUEST
  692. MJN RFL5 IF TOO MUCH MEMORY REQUESTED
  693. SHN -6
  694. STD T3 SET NEW FL
  695. RJM CKE CHECK FOR EXTENDED MEMORY ASSIGNED
  696. LJM RFL16 CHECK FL .LE. MFL
  697.  
  698. RFL5 LJM RFL17 PROCESS ERROR
  699.  
  700. * PROCESS EXTENDED MEMORY.
  701.  
  702. RFL6 LDC -200+100 CHANGE CMM BIT TO CLEAR
  703. RAM RFLB
  704. LDK MEFL PRESET SHIFT INSTRUCTION
  705. CRD CM
  706. LDD CM+2
  707. SHN -11
  708. ADC SHNI+3
  709. STM RFLA
  710. LDD FN
  711. ADD FN+1
  712. ZJN RFL10 IF POSSIBLE EXTENDED MEMORY STATUS
  713. RFL7 ADC -2*7777
  714. NJN RFL8 IF NOT EXTENDED MEMORY MFL REQUEST
  715. LDD FN+2
  716. SHN -6
  717. LMN 76
  718. ZJN RFL9 IF EXTENDED MEMORY MFL REQUEST
  719. LMN 77&76
  720. NJN RFL8 IF NOT SET EXTENDED MEMORY FL TO ZERO
  721. LDN ZERL
  722. CRD FN-2
  723. RFL8 LJM RFL12 PROCESS EXTENDED MEMORY STORAGE REQUEST
  724.  
  725. RFL9 LDN SSTL CHECK EXTENDED MEMORY CONTROL
  726. CRD FS
  727. LDN ZERL
  728. CRD CM PRESET EXTENDED MEMORY MFL = 0
  729. LDD FS
  730. SHN 21-5
  731. MJN RFL13 IF USER EXTENDED MEMORY NOT AVAILABLE
  732. LDD CP
  733. ADN ELCW
  734. CRD FS
  735. LDD FS
  736. UJN RFL11 SET MFL(EC) IN REPLY WORD
  737.  
  738. RFL10 LDD FN+2
  739. SHN -6
  740. NJN RFL12 IF NOT EXTENDED MEMORY STATUS REQUEST
  741. LDN ZERL
  742. CRD CM
  743. LDD CP RETURN EXTENDED MEMORY FL
  744. ADN ECSW
  745. CRD FS
  746. LDD FS+4
  747. RFL11 SHN 3
  748. * SHN 3+UESC (ADJUST FOR BLOCKING FACTOR)
  749. RFLA EQU *-1
  750. STD CM+1
  751. SHN -14
  752. STD CM
  753. UJN RFL13 PROCESS COMPLETION STATUS
  754.  
  755. RFL12 EXECUTE 2MB PROCESS EXTENDED MEMORY STORAGE REQUEST
  756.  
  757. * RETURN COMPLETION STATUS.
  758.  
  759. RFL13 LDD SF
  760. ZJN RFL15 IF NO COMPETION INFORMATION REQUESTED
  761. LDN 1 SET COMPLETION FLAG
  762. STD CM+4
  763. RJM SRA SET REQUEST ADDRESS
  764. ZJN RFL14 IF INCORRECT ADDRESS
  765. CWD CM
  766. RFL14 LDD FN+4
  767. LPN 14
  768. LMN 14
  769. NJN RFL15 IF NOT CLEAR CMM JOB STEP STATUS
  770. LDD CP CLEAR CMM JOB STEP STATUS
  771. ADC DBAW
  772. CRD CM
  773. STD T1
  774. LDD CM
  775. LPC 7677 (CM)
  776. * LPC 7577 (EXTENDED MEMORY)
  777. RFLB EQU *-1
  778. STD CM
  779. LDD T1
  780. CWD CM
  781. RFL15 LJM DPP DROP PPU
  782.  
  783. * CHECK IF FL .LE. MFL.
  784.  
  785. RFL16 LDD CP
  786. ADN FLCW
  787. CRD T7
  788. LDN ZERL
  789. CRD CM
  790. LDD FL
  791. STD CM+1
  792. LDD T7
  793. SBD T3
  794. PJN RFL18 IF FL .LE. MFL
  795. LDD IR+3
  796. SHN 21-7
  797. PJN RFL17 IF NOT *NO ABORT*
  798. LJM RFL13 RETURN STATUS ON NO ABORT REQUESTS
  799.  
  800. RFL17 LDC =C* FL REQUEST BEYOND MFL (CM).*
  801. LJM ERR PROCESS ERROR ABORT
  802.  
  803. * REQUEST STORAGE.
  804.  
  805. RFL18 LDD FL SAVE CURRENT FL
  806. STD T4
  807. ZJN RFL19 IF NO FL CURRENTLY ASSIGNED
  808. LDD T3 REQUESTED FL
  809. RJM RSI REQUEST STORAGE INCREASE
  810. NJN RFL20 IF FL NOT ASSIGNED
  811. RJM CLM CLEAR ADDITIONAL MEMORY
  812. LJM RFL13 COMPLETE PROCESSING
  813.  
  814. RFL19 LJM RFL2 * INCORRECT REQUEST.*
  815.  
  816. * STORAGE NOT AVAILABLE.
  817.  
  818. RFL20 PJN RFL21 IF WAITING FOR REPLY FROM *1SJ*
  819. LDD CP CHECK IF JOB ROLLABLE
  820. ADN JCIW
  821. CRD CM
  822. ADK TFSW-JCIW
  823. CRD FN
  824. LDD CM+3 CHECK FOR *DIS* JOB
  825. LPC 1000
  826. ADD CM+2 CHECK FOR NON-ROLLABLE JOB
  827. NJN RFL21 IF JOB NOT ROLLABLE
  828. SFA EJT,FN READ *SCLE* EJT WORD
  829. ADK SCLE
  830. CRD FN
  831. LDD FN
  832. LPN 20
  833. NJN RFL21 IF FORCED ROLLIN, JOB NOT ROLLABLE
  834. STD CM+1 ROLLOUT CONTROL POINT
  835. MONITOR ROCM
  836. UJN RFL22 ENTER PP RECALL
  837.  
  838. * STORAGE AVAILABLE BUT NOT ASSIGNED.
  839.  
  840. RFL21 LDD CP SET WAITING FOR STORAGE INCREASE
  841. ADN MS2W
  842. CWM =C*WAITING FOR STORAGE (CM). *,TR
  843. RFL22 LDN CFIR SET CM FL INCREASE PENDING REASON CODE
  844. LJM RCL ENTER PP RECALL STACK
  845. DMS SPACE 4,15
  846. *** FUNCTION 1.
  847. * ENTER DAYFILE MESSAGE.
  848. *
  849. * ENTRY
  850. *T ARG 6/ 0,18/ MSG
  851. * MSG ADDRESS OF MESSAGE.
  852. *
  853. * USES CM - CM+4, T2.
  854. *
  855. * CALLS DFM, SRA.
  856. *
  857. * NOTE THIS FUNCTION SHOULD BE USED ONLY BY SUBSYSTEMS THAT
  858. * CANNOT GIVE UP THE CPU DURING NORMAL *MSG* PROCESSING.
  859.  
  860.  
  861. DMS LDN 5 SET WORD COUNT
  862. STD T2
  863. RJM SRA SET REQUEST ADDRESS
  864. ZJN DMS1 IF INCORRECT ADDRESS
  865. CRM BUF,T2
  866. SBN 1
  867. SHN -6
  868. SBD RA
  869. SBD FL
  870. PJN DMS1 IF INCORRECT ADDRESS
  871. LDN 0 TERMINATE MESSAGE
  872. STM BUF+5*5
  873. LDC BUF
  874. RJM DFM ISSUE DAYFILE MESSAGE
  875. LJM DPP DROP PPU
  876.  
  877. DMS1 LDC =C* INCORRECT REQUEST.*
  878. LJM ERR PROCESS ERROR
  879. CPP SPACE 4,10
  880. ** FUNCTIONS 10, 11, 12.
  881. * CPP PROCESSOR.
  882.  
  883.  
  884. CPP LDD MA SAVE OVERLAY LOAD PARAMETERS
  885. CRD CN
  886. EXECUTE 2MH PROCESS CPP REQUEST
  887. LJM DPP DROP PP
  888. PCU SPACE 4,10
  889. ** FUNCTION 6.
  890. * PROCESS CLOCK UPDATE.
  891.  
  892.  
  893. PCU EXECUTE 2MF PROCESS CLOCK UPDATE
  894. LJM DPP DROP PP
  895. LCE SPACE 4,10
  896. ** FUNCTION 7.
  897. * LOG SOFTWARE ERROR.
  898.  
  899.  
  900. LCE EXECUTE 2MG LOG SOFTWARE ERROR
  901. LJM DPP DROP PP
  902. CKE SPACE 4,10
  903. ** CKE - CHECK FOR EXTENDED MEMORY ASSIGNED.
  904. *
  905. * ENTRY (T3) = NEW FL/100B REQUESTED.
  906. *
  907. * EXIT (T3) ADJUSTED IF EXTENDED MEMORY IS ASSIGNED AND
  908. * (T3) IS .LT. MCMX.
  909. *
  910. * USES T3, CM - CM+4.
  911.  
  912.  
  913. CKE SUBR ENTRY/EXIT
  914. LDD CP CHECK FOR EXTENDED MEMORY ASSIGNED
  915. ADN ECSW
  916. CRD CM
  917. LDD CM+4
  918. ZJN CKEX IF NO EXTENDED MEMORY ASSIGNED
  919. LDD T3
  920. ADC -MCMX/100
  921. PJN CKEX IF FL .GE. MCMX
  922. LDC MCMX/100 SET TO MINIMUM FL
  923. STD T3
  924. UJN CKEX RETURN
  925. MRER SPACE 4,10
  926. ** MRER - MAINTENANCE REGISTER ERROR HANDLER.
  927. *
  928. * ENTRY FATAL MAINTENANCE REGISTER ERROR.
  929. *
  930. * EXIT TO *ERR* VIA *ABORT* MACRO.
  931. *
  932. * MACROS ABORT.
  933.  
  934.  
  935. MRER ABORT ERMR * 1MA - FATAL MAINTENANCE REGISTER ERROR.*
  936.  
  937.  
  938. CHFL CON 0 CHANNEL RESERVED FLAG
  939. ERMR DATA C* 1MA - FATAL MAINTENANCE REGISTER ERROR.*
  940. CLM SPACE 4,15
  941. ** CLM - CLEAR MEMORY (CM).
  942. *
  943. * ENTRY (T4) = OLD FL.
  944. *
  945. * EXIT ADDITIONAL CM CLEARED.
  946. * CONSOLE MESSAGE CLEARED.
  947. * (CM+1) = CURRENT FL.
  948. *
  949. * USES CM - CM+4.
  950. *
  951. * MACROS MONITOR.
  952.  
  953.  
  954. CLM SUBR ENTRY/EXIT
  955. LDK SSTL
  956. CRD CM
  957. LDD CM
  958. SHN 21-12
  959. PJN CLM0 IF MEMORY CLEARING ENABLED
  960. LDD CP READ SEPW WORD FROM CP AREA
  961. ADC SEPW
  962. CRD CM
  963. LDD CM CHECK ENTRY POINTS
  964. LPN 1
  965. NJN CLM1 IF SSM= ENTRY POINT PRESENT
  966. CLM0 LDD FL CHECK FL CHANGE
  967. SBD T4
  968. MJN CLM1 IF DECREASE
  969. ZJN CLM1 IF NO CHANGE
  970. SHN 6
  971. STD CM+2
  972. SHN -14
  973. STD CM+1
  974. LDD HN SET RELATIVE ADDRESS OPTION
  975. RAD CM+1
  976. LDD T4 SET ADDRESS FOR CLEAR
  977. SHN 6
  978. STD CM+4
  979. SHN -14
  980. STD CM+3
  981. MONITOR CSTM CLEAR ADDED FL
  982. CLM1 LDN 0
  983. STD CM CLEAR CONSOLE MESSAGE
  984. STD CM+1
  985. LDD CP
  986. ADN MS2W
  987. CWD CM
  988. LDN ZERL RETURN STATUS
  989. CRD CM
  990. LDD FL
  991. STD CM+1
  992. LJM CLMX RETURN
  993. SPACE 4,10
  994. ** COMMON DECKS.
  995.  
  996.  
  997. EJT$ EQU 1 SELECT EJT PROCESSOR
  998. IFP$ EQU 1
  999. QFT$ EQU 1 SELECT QFT PROCESSOR
  1000. *CALL COMPGFP
  1001. *CALL COMPRSI
  1002. SFI$ EQU 1 SELECT IMMEDIATE RETURN FROM *SFI*
  1003. *CALL COMPSFI
  1004. SPACE 4,10
  1005. ** BUFFER.
  1006.  
  1007.  
  1008. USE BUFFER
  1009. BUF BSS 0
  1010. SPACE 4,10
  1011. ** OVERLAY ORIGIN.
  1012.  
  1013.  
  1014. E1MA EQU BUF+MESL*5+5
  1015. ERRNG BFMS-*
  1016. IFP HERE
  1017. OVERFLOW
  1018. TTL 1MA/2MA - SYSTEM CP FACILITY PROCESSOR.
  1019. TITLE
  1020. OVERLAY (SYSTEM CP FACILITY FUNCTION.),E1MA
  1021. SPACE 4,10
  1022. ***** 2MA - FUNCTION PROCESSOR FOR SYSTEM CP FACILITY.
  1023. *
  1024. * *2MA* PERFORMS VARIOUS TIME CONSUMING FUNCTIONS USED
  1025. * IN THE SYSTEM CP (SCP) FACILITY.
  1026. SCP SPACE 4,30
  1027. *** SYSTEM CONTROL POINT FUNCTIONS. (SEE *CPUMTR*).
  1028. *
  1029. * ENTRY
  1030. *T ARG 6/INDX ,18/ ADDR
  1031. * INDX SUBSYSTEM INDEX OF CALLER, OR *TERM* TABLE
  1032. * MESSAGE INDEX/2 IF *CPUMTR* REQUESTING ABORT.
  1033. * ADDR ADDRESS OF FUNCTION PARAMETERS.
  1034. * ADDR = 0, IF *CPUMTR* REQUESTING ABORT.
  1035. *
  1036. * FOR *1MA* FUNCTION 2 (SCP FUNCTION ON UCP), ADDITIONAL
  1037. * INFORMATION IS TRANSFERRED FROM THE MESSAGE BUFFER.
  1038. * (SP - SP+4) = 6/ RC,12/ FP, 18/ UCPA, 18/SCPA,6/ FC
  1039. * (SQ - SQ+4) = 24/ JSEQ,24/,12/ JEJT (SF.SWPO)
  1040. * = MESSAGE (SF.REGR)
  1041. * (BUF - BUF+MESL-1) = MESSAGE (SF.REGR)
  1042. * FC FUNCTION CODES VALID FOR 1MA ARE -
  1043. * 02 SEND DAYFILE MESSAGE AND/OR ABORT USER.
  1044. * 24 SWAP OUT USER JOB.
  1045. * FP A PARAMETER MEANINGFUL TO A PARTICULAR FUNCTION.
  1046. * JEJT JOB EJT ORDINAL.
  1047. * JSEQ JOB SEQUENCE NUMBER.
  1048. * RC SYSTEM REPLY CODE - (SEE *COMSSCP*).
  1049. * SCPA A DATA ADDRESS WITHIN THE SUBSYSTEM MEMORY.
  1050. * UCPA A DATA ADDRESS WITHIN A USER JOB MEMORY.
  1051. *
  1052. * CALLS CHG, DFM, SDM, SWO, SWP, SWT, SXT.
  1053. *
  1054. * MACROS MONITOR.
  1055.  
  1056.  
  1057. SCP SUBR ENTRY
  1058. LDD IR+3 CHECK ABORT REQUESTED
  1059. LPN 77
  1060. ADD IR+4
  1061. ZJN SCP4 IF ABORT REQUESTED FROM CPUMTR
  1062. LDD IR+2
  1063. SBN 3
  1064. MJN SCP2 IF SCP FUNCTION ON UCP
  1065. ZJN SCP1 IF FILE SWITCHING FUNCTION
  1066. RJM SXT PROCESS SF.EXIT
  1067. UJN SCP3 DROP PP
  1068.  
  1069. SCP1 LJM SWT PROCESS FILE SWITCHING FUNCTION
  1070.  
  1071. SCP2 LDD SP+4 GET SCP FUNCTION ON UCP
  1072. LPN 37
  1073. LMN REGR
  1074. NJN SCP6 IF NOT ISSUE DAYFILE MESSAGE
  1075. RJM SDM SEND DAYFILE MESSAGE AND/OR ABORT USER
  1076. SCP3 LJM DPP EXIT
  1077.  
  1078. SCP4 LDD IR+3 GET MESSAGE INDEX/2
  1079. SHN -6+1
  1080. SCN 1
  1081. STD T4
  1082. SBN TERML
  1083. PJN SCP7 IF NOT LEGAL MESSAGE INDEX
  1084. LDM TERM,T4 GET DAYFILE MESSAGE ADDRESS
  1085. ZJN SCP5 IF NO DAYFILE MESSAGE
  1086. RJM DFM ISSUE MESSAGE TO DAYFILE
  1087. SCP5 LDM TERM+1,T4 GET ERROR FLAG
  1088. STD CM+1
  1089. MONITOR CEFM SET ERROR FLAG
  1090. UJN SCP3 EXIT
  1091.  
  1092. SCP6 LMN SWPO&REGR
  1093. NJN SCP9 IF NOT VALID SUBFUNCTION CODE
  1094. RJM SWO SWAP OUT USER JOB
  1095. UJN SCP3 EXIT
  1096.  
  1097. SCP7 LDK FSET SET FORCED ERROR
  1098. SCP8 RJM CHG CONDITIONALLY HANG PP
  1099. UJN SCP3 DROP PP
  1100.  
  1101. SCP9 LDN 0
  1102. UJN SCP8 CONDITIONALLY HANG
  1103. TERM SPACE 4,10
  1104. ** TERM - TABLE OF ERROR FLAGS AND MESSAGES.
  1105. *
  1106. *T 12/ ERMA, 12/ ERFL
  1107. * ERMA ERROR MESSAGE ADDRESS
  1108. * ERFL ERROR FLAG
  1109.  
  1110.  
  1111. TERM BSS 0
  1112. LOC 0
  1113. CON 0,ITET SCP *SSCR* PARAMETERS INCORRECT
  1114. CON =C* USER ACCESS NOT VALID.*,SYET
  1115. TERML EQU *
  1116. LOC *O
  1117. TITLE SCP FUNCTION PROCESSORS.
  1118. SDM SPACE 4,10
  1119. ** SDM - SEND DAYFILE MESSAGE AND/OR ABORT JOB. (SF.REGR)
  1120. *
  1121. * ENTRY (BUF - BUF+MESL-1) = MESSAGE BUFFER DATA.
  1122. *
  1123. * USES CM - CM+4, T0 - T6, BUF - BUF+5*5.
  1124. *
  1125. * CALLS DFM, SCB.
  1126. *
  1127. * MACROS MONITOR.
  1128.  
  1129.  
  1130. SDM SUBR ENTRY/EXIT
  1131.  
  1132. * SEND MESSAGE TO SPECIFIED DAYFILE.
  1133.  
  1134. LDD SP+4 CHECK MESSAGE DESIRED
  1135. SCN 77
  1136. ADD SP+3
  1137. ZJN SDM3 IF NO MESSAGE SPECIFIED
  1138. LDD SP CHECK SPECIFIED DAYFILE OPTION
  1139. LPN 77
  1140. SHN 14
  1141. ADD SP+1
  1142. SHN -6
  1143. SBN MXDF
  1144. MJN SDM2 IF VALID DAYFILE OPTION
  1145. LDN RC66 * INCORRECT DAYFILE PROCESSING FLAG.*
  1146. SDM1 RJM SCB SET COMPLETION BIT, REPLY CODE
  1147. UJN SDMX RETURN
  1148.  
  1149. SDM2 RAM SDMA SET DAYFILE OPTION
  1150. LDN MESL EXTRACT MESSAGE TO BE ISSUED
  1151. STD T2
  1152. LDN 0 TERMINATE MESSAGE
  1153. STM BUF+MESL*5
  1154. LDC BUF+MXDF*10000
  1155. SDMA EQU *-2 (DAYFILE OPTION)
  1156. RJM DFM
  1157.  
  1158. * SET ERROR FLAG ON USER JOB IF DESIRED.
  1159.  
  1160. SDM3 LDD SP+1 CHECK USER ABORT DESIRED
  1161. LPN 77
  1162. SHN 14
  1163. ADD SP+2
  1164. ZJN SDM1 IF NO ABORT SPECIFIED
  1165. SBN 1
  1166. STD T1
  1167. SBN TEFGL
  1168. MJN SDM5 IF VALID ERROR FLAG SPECIFIED
  1169. LDN RC65 * ATTEMPT TO SET INCORRECT ERROR FLAG.*
  1170. SDM4 UJN SDM1 SET COMPLETION BIT, REPLY CODE
  1171.  
  1172. SDM5 LDM TEFG,T1 SET ERROR FLAG
  1173. STD CM+1
  1174. MONITOR CEFM
  1175. LDN 0
  1176. UJN SDM4 SET COMPLETION BIT
  1177. SPACE 4,10
  1178. ** TEFG - TABLE OF ERROR FLAGS.
  1179. *
  1180. * INDEXED BY VALUE SPECIFIED IN *FP* FIELD OF SF.REGR REQUEST.
  1181.  
  1182.  
  1183. TEFG BSS 0
  1184. LOC 0
  1185.  
  1186. CON PPET GENERAL SUBSYSTEM ERROR
  1187. CON SYET HOSTILE USER ERROR
  1188.  
  1189. TEFGL BSS 0
  1190. LOC *O
  1191. SWO SPACE 4,10
  1192. ** SWO - SWAP OUT USER CONTROL POINT. (SF.SWPO)
  1193. *
  1194. * USES CM - CM+4.
  1195. *
  1196. * CALL CHG, SCB.
  1197. *
  1198. * MACROS MONITOR.
  1199.  
  1200.  
  1201. SWO SUBR ENTRY/EXIT
  1202. LDD CP CHECK IF JOB ROLLABLE
  1203. ADN JCIW
  1204. CRD CM
  1205. LDD CM+3 CHECK FOR *DIS* JOB
  1206. LPC 1000
  1207. ADD CM+2 CHECK FOR NON-ROLLABLE JOB
  1208. NJN SWO2 IF JOB NOT ROLLABLE
  1209. STD CM+1 ROLLOUT CONTROL POINT
  1210. MONITOR ROCM
  1211. SWO1 LDN 0 INDICATE NO ERRORS
  1212. RJM SCB SET COMPLETION BIT, NO ERRORS
  1213. UJN SWOX RETURN
  1214.  
  1215. SWO2 LDD MA CLEAR SCP ROLLOUT REQUESTED FLAG
  1216. CWM SWOA,ON
  1217. LDN 1
  1218. STD CM+1
  1219. STD CM+2
  1220. MONITOR UADM
  1221. LDD CM+1
  1222. ZJN SWO1 IF BIT SUCCESSFULLY CLEARED
  1223. LDN 0
  1224. RJM CHG CONDITIONALLY HANG PP
  1225. UJN SWO1 SET COMPLETION BIT AND RETURN
  1226.  
  1227.  
  1228. SWOA VFD 12/CDOS,12/STSW,6/29D,6/1
  1229. SXT SPACE 4,10
  1230. ** SXT - PROCESS EXIT FROM SCP STATUS. (SF.EXIT)
  1231. *
  1232. * USES EF, SC.
  1233. *
  1234. * CALLS SCB, *0ST*.
  1235. *
  1236. * MACROS EXECUTE.
  1237.  
  1238.  
  1239. SXT SUBR ENTRY/EXIT
  1240. LDN 0 INDICATE NO ERROR FLAG
  1241. STD EF
  1242. LDN 6 INDICATE CONNECTED UCP-S FOR SF.EXIT
  1243. STD SC
  1244. EXECUTE 0ST,OSTL
  1245. RJM CAA GET *SF.EXIT* PARAMETER WORD
  1246. CRD CM
  1247. AOD CM+4 SET COMPLETE BIT
  1248. LDD CM CLEAR REPLY CODE (NO ERROR)
  1249. LPN 77
  1250. STD CM
  1251. RJM CAA
  1252. CWD CM
  1253. UJN SXTX RETURN
  1254. TITLE SUBROUTINES.
  1255. DLY SPACE 4,10
  1256. ** DLY - DELAY.
  1257. *
  1258. * EXIT (A) = 0 IF OPERATOR INTERVENTION.
  1259. *
  1260. * MACROS DELAY, PAUSE.
  1261.  
  1262.  
  1263. DLY SUBR ENTRY/EXIT
  1264. PAUSE
  1265. DELAY
  1266. LDD CM+1 CHECK FOR OPERATOR OVERRIDE
  1267. LMN ORET
  1268. UJN DLYX RETURN
  1269. SCB SPACE 4,15
  1270. ** SCB - SET COMPLETION BIT.
  1271. *
  1272. * SCB SETS SETS THE COMPLETION BIT FOR A PARTICULAR
  1273. * SF.XXXX FUNCTION ALONG WITH THE REPLY CODE.
  1274. *
  1275. * ENTRY (A) = REPLY CODE.
  1276. *
  1277. * EXIT (T7) = REPLY CODE.
  1278. *
  1279. * USES T1, CM - CM+4.
  1280. *
  1281. * CALLS DLY.
  1282. *
  1283. * MACROS MONITOR.
  1284.  
  1285.  
  1286. SCB SUBR ENTRY/EXIT
  1287. STD T7 SAVE ERROR STATUS
  1288. LDD IR+4 ADDRESS OF FUNCTION PARAMETER WORD
  1289. STM SCBA
  1290. LDD IR+3
  1291. LPN 77
  1292. SHN 14
  1293. ADD T7 SET ERROR STATUS IN CALL
  1294. SHN 6
  1295. STM SCBB
  1296. LDD IR+3 EXTRACT SUBSYSTEM INDEX
  1297. SHN -6
  1298. ADC LSSI
  1299. STM SCBC SUBSYSTEM QUEUE PRIORITY
  1300. SCB1 LDC *
  1301. SCBA EQU *-1 (ADDRESS OF FUNCTION REQUEST)
  1302. STD CM+4
  1303. LDC *
  1304. SCBB EQU *-1
  1305. STD CM+3 ADDRESS OF PARAMETER AND ERROR STATUS
  1306. LDC *
  1307. SCBC EQU *-1
  1308. STD CM+2 SUBSYSTEM QUEUE PRIORITY
  1309. LDN 2 FUNCTION CODE
  1310. STD CM+1
  1311. MONITOR TDAM SET REPLY CODE, COMPLETION BIT
  1312. LDD CM+1
  1313. ZJN SCB2 RETURN IF ACCEPTED
  1314. SBN 4
  1315. ZJN SCB2 RETURN IF SUBSYSTEM INACTIVE
  1316. PJN SCB3 IF INCORRECT COMPLETION ADDRESS
  1317. RJM DLY DELAY
  1318. NJN SCB1 IF NOT OPERATOR OVERRIDE
  1319. SCB2 LJM SCBX RETURN
  1320.  
  1321. SCB3 LDD MA SAVE SCP ORDINAL AND JOB SEQUENCE NUMBER
  1322. CWD CM
  1323. SCB4 LDD MA GET SCP ORDINAL AND JOB SEQUENCE NUMBER
  1324. CRD CM
  1325. LDC 4000+ITET SCP INCORRECT TRANSFER ADDRESS
  1326. STD CM+1
  1327. MONITOR CEFM SET ERROR ON SCP
  1328. LDD CM+1
  1329. LMN 1 CHECK FOR SCP MOVING STATUS
  1330. NJN SCB2 IF OPERATION COMPLETE OR SCP NOT FOUND
  1331. RJM DLY DELAY
  1332. ZJN SCB2 IF OPERATOR INTERVENTION
  1333. LDD T1 RESET SCP CONTROL POINT NUMBER
  1334. STD CM+2
  1335. UJN SCB4 REISSUE REQUEST
  1336. SWT TITLE FILE SWITCHING FUNCTION PROCESSOR.
  1337. SWT SPACE 4,40
  1338. *** FUNCTION 3.
  1339. * FILE SWITCHING PROCESSOR.
  1340. *
  1341. * THIS PROCESSOR IS CALLED BY *CPUMTR* TO PROCESS AN *SST*
  1342. * SYSTEM REQUEST AFTER ALL PARAMETERS HAVE BEEN VALIDATED.
  1343. *
  1344. * ENTRY
  1345. *
  1346. *T,ARG 6/0,18/ ADDR
  1347. * ADDR RELATIVE ADDRESS OF FUNCTION PARAMETERS.
  1348. *
  1349. * (SP - SP+4) = 12/ FNTR,12/ FNTS,18/ RSV,6/ FCN,11/ ST,1/ C
  1350. * (SQ - SQ+4) = 24/ JSN,24/0,12/ JEJT
  1351. * C COMPLETION BIT.
  1352. * FCN SUBFUNCTION CODE -
  1353. * CUSU = 1 CALLER UCP - SCP TO UCP SWITCH.
  1354. * CUUS = 2 CALLER UCP - UCP TO SCP SWITCH.
  1355. * CSUS = 3 CALLER SCP - UCP TO SCP SWITCH.
  1356. * CSSU = 4 CALLER SCP - SCP TO UCP SWITCH.
  1357. * FNTR FNT ORDINAL IN RECEIVER-S FNT (RETURNED PARAMETER).
  1358. * (SET TO PARTNER-S CPA BY *CPUMTR* FOR *1MA*.)
  1359. * FNTS FNT ORDINAL IN SOURCE-S FNT.
  1360. * JEJT PARTNER JOB EJT ORDINAL (FCN = 3 OR 4).
  1361. * (SET BY *CPUMTR* FOR *1MA* FOR FCN = 1 OR 2.)
  1362. * JSN JOB SEQUENCE NUMBER FOR PARTNER (FCN = 3 OR 4).
  1363. * RSV RESERVED FOR CDC.
  1364. * ST RETURN STATUS CODE -
  1365. * 00 SWITCH COMPLETED NORMALLY.
  1366. * 01 FILE BUSY.
  1367. * 02 PARTNER ROLLED OUT.
  1368. * 03 INCORRECT FILE TYPE.
  1369. * 04 PARTNER-S IDENTIFICATION NOT KNOWN.
  1370. * 05 NO SPACE IN RECEIVER-S NFL.
  1371. * 06 FILE LIMIT.
  1372. * 07 FILE *FNTS* NOT FOUND.
  1373.  
  1374.  
  1375. SWT BSS 0 ENTRY
  1376. LDN 0 INITIALIZE
  1377. STD FA
  1378. STD RC
  1379. LDN SFIN SET JOB INTERLOCK
  1380. RJM PJI
  1381. ZJN SWT1 IF INTERLOCK SET
  1382. LDN RC02 * JOB ROLLED OUT.*
  1383. STD RC
  1384. NFA SP+1,R SET UP FOR EXIT
  1385. CRD FN
  1386. ADN FSTL
  1387. CRM FS,ON
  1388. CRM FBUF,ON
  1389. LDD SP+3
  1390. LPN 1
  1391. ZJP SFP3.1 IF SF = 2 OR 4
  1392. LJM SRC SET REPLY CODE
  1393.  
  1394. SWT1 LDD SP+3 GET SUB FUNCTION
  1395. ZJN SWT2 IF ZERO
  1396. SBN 5
  1397. PJN SWT2 IF OUT OF RANGE
  1398. LDD SP+3
  1399. LPN 1
  1400. ZJN SFP IF SF = 2 OR 4 (SEND FILE TO PARTNER)
  1401. LJM GFP SF = 1 OR 3 (GET FILE FROM PARTNER)
  1402.  
  1403. SWT2 LDN 0
  1404. RJM CHG CONDITIONALLY HANG PP
  1405. LDK RC10 * INCORRECT SUBFUNCTION.*
  1406. STD RC
  1407. LJM SFP3 CLEAR JOB INTERLOCK
  1408. SFP SPACE 4,15
  1409. ** SFP - SEND FILE TO PARTNER.
  1410. *
  1411. * ENTRY (SP+1) = SOURCE FNT ORDINAL.
  1412. *
  1413. * EXIT (FA) = NEW ADDRESS OF FNT.
  1414. * (RC) = REPLY CODE.
  1415. *
  1416. * USES T1, CM - CM+4.
  1417. *
  1418. * CALLS CCP, CLF, PJI, RTC, UIE.
  1419. *
  1420. * MACROS NFA.
  1421.  
  1422.  
  1423. SFP BSS 0 ENTRY
  1424. NFA SP+1,R GET FNT/FST
  1425. CRD FN
  1426. CRD CM
  1427. ADN FSTL
  1428. CRM FS,ON
  1429. CRM FBUF,ON
  1430.  
  1431. * CHANGE FILE TYPE.
  1432.  
  1433. LDD CM+4
  1434. LPN 77
  1435. ADC LIFT*100 SET *LIBRARY* FILE TYPE
  1436. STD CM+4
  1437. NFA SP+1,R
  1438. CWD CM
  1439.  
  1440. * CHANGE TO RECEIVER-S CP.
  1441.  
  1442. LDD SP SET PARTNER CP
  1443. STM CCPA
  1444. LDN 0 CHANGE TO PARTNER
  1445. RJM CCP
  1446. ZJN SFP1 IF SUCCESSFUL
  1447. STD T1 SAVE REPLY
  1448. LDN RC02 * JOB ROLLED OUT.*
  1449. STD RC
  1450. LDD T1 GET REPLY
  1451. SBN 1
  1452. NJN SFP2 IF WRONG JOB
  1453. UJN SFP3 CLEAR JOB INTERLOCK
  1454.  
  1455. * CREATE LOCAL FNT IN RECEIVER-S NFL.
  1456.  
  1457. SFP1 RJM CLF CREATE LOCAL FNT
  1458. NJN SFP2 IF FILE NOT CREATED
  1459.  
  1460. * WRITE FNT/FST INTO RECEIVER-S NFL.
  1461.  
  1462. LDM CCPB GET EJT ORDINAL OF CALLER
  1463. RJM UIE UPDATE QFT ENTRY
  1464. LDD FS+4 SET FST NOT BUSY
  1465. SCN 1
  1466. ADN 1
  1467. STD FS+4
  1468. NFA FA,R COMPUTE NFL ADDRESS
  1469. CWD FN WRITE FNT
  1470. ADN FSTL
  1471. CWM FS,ON WRITE FST
  1472. CWM FBUF,ON WRITE UTILITY WORD OF FST
  1473.  
  1474. * RETURN TO CALLING JOB.
  1475.  
  1476. SFP2 RJM RTC RETURN TO CALLER
  1477.  
  1478. * CLEAR JOB INTERLOCK.
  1479.  
  1480. SFP3 LDN CFIN CLEAR JOB INTERLOCK
  1481. RJM PJI
  1482.  
  1483. * TERMINATION PROCESSING - CHECK FOR ERROR.
  1484.  
  1485. LDD RC
  1486. ZJN SFP4 IF NO ERROR
  1487.  
  1488. * CLEAR *LIBRARY* FILE TYPE IN FNT (FILE NOT SWITCHED).
  1489.  
  1490. SFP3.1 LDD FS+4 SET FILE NOT BUSY
  1491. SCN 1
  1492. ADN 1
  1493. STD FS+4
  1494. NFA SP+1,R UPDATE FNT
  1495. CWD FN
  1496. ADN FSTL UPDATE FST
  1497. CWD FS
  1498. UJN SRC SET REPLY CODE
  1499.  
  1500. SFP4 LDD SP+1 FNT ORDINAL OF SOURCE FNT
  1501. * LJM DLF DELETE LOCAL FNT
  1502. DLF SPACE 4,10
  1503. ** DLF - DELETE LOCAL FNT.
  1504. *
  1505. * ENTRY (A) = FNT ORDINAL.
  1506. *
  1507. * USES CM - CM+4.
  1508. *
  1509. * EXIT TO *SRC*.
  1510. *
  1511. * MACROS MONITOR.
  1512.  
  1513.  
  1514. DLF BSS 0 ENTRY
  1515. STD CM+4 SET FNT ORDINAL
  1516. LDN DLFS DELETE FNT
  1517. STD CM+1
  1518. MONITOR PLFM
  1519. * LJM SRC SET REPLY CODE
  1520. SRC SPACE 4,10
  1521. ** SRC - SET REPLY CODE.
  1522. *
  1523. * ENTRY (IR+3 - IR+4) = RELATIVE ADDRESS OF PARAMETER BLOCK.
  1524. * (FA) = FNT ORDINAL.
  1525. * (RC) = REPLY CODE.
  1526. *
  1527. * EXIT TO *DPP*.
  1528. * TO *ERR* IF INCORRECT REQUEST ADDRESS.
  1529. *
  1530. * CALLS SRA.
  1531.  
  1532.  
  1533. SRC LDD FA GET FNT ORDINAL
  1534. STD SP
  1535. LDD RC GET REPLY CODE
  1536. SHN 1
  1537. ADN 1 SET COMPLETION BIT
  1538. STD SP+4
  1539. RJM SRA SET REQUEST ADDRESS
  1540. ZJN SRC1 IF INCORRECT ADDRESS
  1541. CWD SP UPDATE *ADDR*
  1542. LJM DPP DROP PP
  1543.  
  1544. SRC1 LDC =C* INCORRECT REQUEST.*
  1545. LJM ERR PROCESS ERROR
  1546. GFP SPACE 4,15
  1547. ** GFP - GET FILE FROM PARTNER.
  1548. *
  1549. * ENTRY (SP+1) = FNT ORDINAL OF FILE TO BE SWITCHED.
  1550. *
  1551. * EXIT (FA) = NEW ADDRESS OF FNT.
  1552. * (RC) = REPLY CODE.
  1553. *
  1554. * USES T1, CM - CM+4.
  1555. *
  1556. * CALLS CCP, CLF, PJI, RTC, UIE.
  1557. *
  1558. * MACROS MONITOR, NFA.
  1559.  
  1560.  
  1561. GFP BSS 0 ENTRY
  1562.  
  1563. * CREATE LOCAL FNT IN CALLER-S NFL.
  1564.  
  1565. RJM CLF CREATE LOCAL FNT
  1566. NJN GFP1 IF FILE NOT CREATED
  1567.  
  1568. * CHANGE TO PARTNER CP.
  1569.  
  1570. LDD SP SET CP ADDRESS
  1571. STM CCPA
  1572. LDN 0 CHANGE TO PARTNER
  1573. RJM CCP
  1574. ZJN GFP2 IF SUCCESSFUL
  1575. STD T1 SAVE REPLY CODE
  1576. LDN RC02 * JOB ROLLED OUT.*
  1577. STD RC SET ERROR CODE
  1578. LDD T1 REPLY CODE
  1579. SBN 1
  1580. NJN GFP3 IF WRONG JOB
  1581. GFP1 LJM GFP6 CLEAR JOB INTERLOCK
  1582.  
  1583. * SET FILE BUSY.
  1584.  
  1585. GFP2 NFA SP+1,R COMPUTE NFL ADDRESS
  1586. CRD FN READ FNT
  1587. LDN ZERL
  1588. CRD CM
  1589. LDD SP+1 FNT ORDINAL
  1590. STD CM+4
  1591. LDD MA FILE NAME
  1592. CWD FN
  1593. MONITOR SFBM
  1594. LDD CM+1
  1595. ZJN GFP4 IF FILE NOT BUSY
  1596. LDN RC01 * FILE BUSY.*
  1597. STD RC SET ERROR CODE
  1598. GFP3 UJN GFP5 RETURN TO CALLER
  1599.  
  1600. * GET FNT/FST OF FILE TO BE SWITCHED.
  1601.  
  1602. GFP4 NFA SP+1,R COMPUTE NFL ADDRESS
  1603. CRD FN READ FNT
  1604. ADN FSTL
  1605. CRM FS,ON
  1606. CRM FBUF,ON
  1607.  
  1608. * DELETE OLD FNT.
  1609.  
  1610. LDD SP+1 FNT ORDINAL
  1611. STD CM+4
  1612. LDN DLFS DELETE FNT
  1613. STD CM+1
  1614. MONITOR PLFM
  1615.  
  1616. * CHANGE BACK TO CALLING CP.
  1617.  
  1618. GFP5 RJM RTC RETURN TO CALLER
  1619.  
  1620. * CLEAR JOB INTERLOCK.
  1621.  
  1622. GFP6 LDN CFIN CLEAR JOB INTERLOCK
  1623. RJM PJI
  1624.  
  1625. * TERMINATION PROCESSING - CHECK FOR ERROR CODE.
  1626.  
  1627. LDD RC
  1628. ZJN GFP7 IF NO ERROR
  1629. LDD FA
  1630. ZJN GFP8 IF NO NEW FNT CREATED
  1631. STD T1 SAVE ORDINAL
  1632. LDN 0 CLEAR FNT ORDINAL
  1633. STD FA
  1634. LDD T1
  1635. LJM DLF DELETE LOCAL FNT
  1636.  
  1637. * WRITE FNT INTO RECEIVER-S NFL.
  1638.  
  1639. GFP7 LDD SQ+4 GET EJT ORDINAL OF PARTNER
  1640. RJM UIE UPDATE QFT ENTRY
  1641. LDD FS+4 SET FST NOT BUSY
  1642. SCN 1
  1643. ADN 1
  1644. STD FS+4
  1645. NFA FA,R COMPUTE NFL ADDRESS
  1646. CWD FN WRITE FNT
  1647. ADN FSTL
  1648. CWM FS,ON WRITE FST
  1649. CWM FBUF,ON WRITE UTILITY WORD OF FST
  1650. GFP8 LJM SRC SET REPLY CODE
  1651. CCP SPACE 4,20
  1652. ** CCP - CHANGE CONTROL POINT.
  1653. *
  1654. * *CCP* CHANGES TO THE SPECIFIED CONTROL POINT, TRYING 5 TIMES
  1655. * BEFORE GIVING UP. IF CHANGE IS MADE, THE EJT ORDINAL IS
  1656. * VERIFIED TO ENSURE THE JOB IS THE CORRECT ONE.
  1657. *
  1658. * ENTRY (A) = 0 CHANGE TO PARTNER CP.
  1659. * (A) .NE. 0 CHANGE BACK TO CALLER CP.
  1660. * (CCPA) = NEW CP ADDRESS IF A=0.
  1661. *
  1662. * EXIT (A) = 0 IF CHANGE MADE SUCCESSFULLY.
  1663. * (A) = 1 IF CHANGE NOT POSSIBLE.
  1664. * (A) = 2 IF CHANGE MADE, BUT WRONG EJT ORDINAL.
  1665. *
  1666. * USES T1, CM - CM+4.
  1667. *
  1668. * CALLS DLY.
  1669. *
  1670. * MACROS MONITOR.
  1671.  
  1672.  
  1673. CCP SUBR ENTRY/EXIT
  1674. NJN CCP1 IF CHANGING BACK TO CALLER
  1675.  
  1676. * PRESET FOR CHANGE TO PARTNER.
  1677.  
  1678. LDD CP GET CALLER EJT ORDINAL
  1679. ADN TFSW
  1680. CRD CM
  1681. LDD CM
  1682. STM CCPB
  1683. LDD SQ+4 SET EJT ORDINAL FOR VERIFY
  1684. UJN CCP2 PROCESS CALL
  1685.  
  1686. * PRESET FOR CHANGE BACK TO CALLER.
  1687.  
  1688. CCP1 LDM CCPC GET CALLING CP ADDRESS
  1689. STM CCPA NEW CPA
  1690. LDM CCPB SET EJT ORDINAL FOR VERIFY
  1691. CCP2 STD T1
  1692. LDD CP SAVE OLD CP
  1693. STM CCPC
  1694.  
  1695. * CHANGE TO NEW CP, TRYING 5 TIMES.
  1696.  
  1697. LDN 5 INITIALIZE RETRY COUNT
  1698. STM CCPD
  1699. CCP3 LDC **
  1700. CCPA EQU *-1 NEW CPA
  1701. SHN -7
  1702. STD CM+1
  1703. MONITOR CCAM CHANGE CP
  1704. LDD CM+1
  1705. ZJN CCP6 IF CHANGE MADE
  1706. SOM CCPD DECREMENT RETRY COUNT
  1707. ZJN CCP4 IF 5 TIMES
  1708. RJM DLY DELAY
  1709. UJN CCP3 TRY AGAIN
  1710.  
  1711. * CHANGE REJECTED, RETURN ERROR.
  1712.  
  1713. CCP4 LDM CCPC RESET TO OLD CP
  1714. STD CP
  1715. LDN 1 CHANGE NOT POSSIBLE
  1716. CCP5 LJM CCPX RETURN
  1717.  
  1718. * CHANGE MADE, VERIFY JOB EJT ORDINAL.
  1719.  
  1720. CCP6 LDD CP
  1721. ADN TFSW GET JOB EJT ORDINAL
  1722. CRD CM
  1723. LDD T1 VERIFY JOB EJT ORDINAL
  1724. LMD CM
  1725. ZJN CCP5 IF EJT ORDINAL MATCHES
  1726. LDN 2 WRONG JOB
  1727. UJN CCP5 RETURN
  1728.  
  1729.  
  1730. CCPB BSS 1 CALLER EJT ORDINAL
  1731. CCPC BSS 1 CALLER CPA
  1732. CCPD CON 5 RETRY COUNT
  1733. CLF SPACE 4,15
  1734. ** CLF - CREATE LOCAL FNT ENTRY.
  1735. *
  1736. * *CLF* CREATES A LOCAL FNT ENTRY FOR THE JOB TO WHICH THE
  1737. * PP IS ASSIGNED.
  1738. *
  1739. * EXIT (A) = 0 IF FILE CREATED.
  1740. * (A) = (RC) = *RC05*, IF NO NFL AVAILABLE.
  1741. * (A) = (RC) = *RC06*, IF LOCAL FILE LIMIT.
  1742. * (FA) = FNT ORDINAL IF A=0.
  1743. *
  1744. * USES CM - CM+4.
  1745. *
  1746. * CALLS NFL.
  1747. *
  1748. * MACROS MONITOR.
  1749.  
  1750.  
  1751. CLF3 LDD CP REQUEST ADDITIONAL 100B WORDS OF NFL
  1752. ADN FLSW
  1753. CRD CM
  1754. AOD CM
  1755. RJM NFL
  1756. ZJN CLF1 IF NFL ASSIGNED
  1757. LDN RC05 * NOT ENOUGH NFL.*
  1758. CLF4 STD RC
  1759.  
  1760. CLF SUBR ENTRY/EXIT
  1761.  
  1762. * CREATE FNT IN RECEIVER-S NFL.
  1763.  
  1764. CLF1 LDD MA SET FILE NAME IN MB
  1765. CWM CLFA,ON
  1766. LDN CRFS CREATE LOCAL FNT ENTRY
  1767. STD CM+1
  1768. MONITOR PLFM
  1769. LDD CM+1 SAVE FNT ORDINAL
  1770. STD FA
  1771. LDD CM+4
  1772. ZJN CLFX IF FILE CREATED, RETURN
  1773.  
  1774. * FNT NOT CREATED, PROCESS REJECT.
  1775.  
  1776. SHN 21-1
  1777. MJN CLF2 IF LOCAL FILE LIMIT
  1778. SHN 21-2-21+1+22
  1779. MJN CLF3 IF MORE NFL NEEDED
  1780.  
  1781. * DUPLICATE FILE NAME, CHANGE NAME AND TRY AGAIN.
  1782.  
  1783. LDD HN CHANGE FILE NAME
  1784. RAM CLFA+3
  1785. SHN -6
  1786. SBN 1R+
  1787. MJN CLF1 IF FILE NAME STILL VALID
  1788. CLF2 LDN RC06 * LOCAL FILE LIMIT.*
  1789. UJN CLF4 SET ERROR CODE
  1790.  
  1791.  
  1792. CLFA VFD 42/0LZZZZZGA,18/0 SCRATCH FILE NAME
  1793. PJI SPACE 4,20
  1794. ** PJI - PROCESS JOB INTERLOCK.
  1795. *
  1796. * *PJI* CLEARS OR SETS THE JOB INTERLOCK ON THE JOB
  1797. * TO WHICH THE PP IS CURRENTLY ASSIGNED.
  1798. *
  1799. * ENTRY (A) = CFIN CLEAR INTERLOCK.
  1800. * (A) = SFIN SET INTERLOCK.
  1801. *
  1802. * EXIT (A) = 0 INTERLOCK SET/CLEAR.
  1803. * (A) = 1 INTERLOCK ALREADY SET (*SFIN* OPTION).
  1804. *
  1805. * USES T1, CM - CM+4.
  1806. *
  1807. * CALLS SFI.
  1808. *
  1809. * MACROS SFA.
  1810.  
  1811.  
  1812. PJI SUBR ENTRY/EXIT
  1813. STD T1 SAVE SET/CLEAR OPTION
  1814. LDD CP GET JOB FNT ORDINAL
  1815. ADN TFSW
  1816. CRD CM
  1817. SFA EJT,CM CALCULATE ABSOLUTE ADDRESS OF EJT ENTRY
  1818. RJM SFI SET/CLEAR JOB INTERLOCK
  1819. UJN PJIX RETURN
  1820. RTC SPACE 4,15
  1821. ** RTC - RETURN TO CALLER.
  1822. *
  1823. * *RTC* CHANGES CONTROL POINTS BACK TO THE CALLER JOB.
  1824. *
  1825. * ENTRY JOB AT PARTNER CP.
  1826. * *CCP* ALREADY CALLED WITH A=0.
  1827. *
  1828. * EXIT JOB AT CALLER CP.
  1829. *
  1830. * CALLS CCP, CHG.
  1831.  
  1832.  
  1833. RTC SUBR ENTRY/EXIT
  1834. RTC1 LDN 1 CHANGE BACK TO CALLER CONTROL POINT
  1835. RJM CCP
  1836. ZJN RTCX IF CHANGE SUCCESSFUL
  1837. LDN 0
  1838. RJM CHG CONDITIONALLY HANG PP
  1839. LDD CP CHECK ERROR FLAG
  1840. ADK STSW
  1841. CRD CM
  1842. LDD CM+1
  1843. SBK ORET
  1844. PJN RTC2 IF *ORET* OR HIGHER ERROR
  1845. UJN RTC1 RETRY REQUEST
  1846.  
  1847. RTC2 LJM DPP DROP PP
  1848. UIE SPACE 4,15
  1849. * UIE - UPDATE QFT ENTRY.
  1850. *
  1851. * *UIE* CHANGES THE JOB EJT ORDINAL ASSIGNMENT IN THE
  1852. * QFT ENTRY IF THE LOCAL FILE TYPE IS *QFFT*.
  1853. *
  1854. * ENTRY (A) = EJT ORDINAL OF JOB WITH QFT ENTRY ASSIGNED.
  1855. * (FN - FN+4) = LOCAL FNT ENTRY.
  1856. * (FS - FS+4) = LOCAL FST ENTRY.
  1857. *
  1858. * USES T1, T2, T3, CM - CM+4, CN - CN+4.
  1859. *
  1860. * CALLS SFI.
  1861. *
  1862. * MACROS MONITOR, SFA.
  1863.  
  1864.  
  1865. UIE SUBR ENTRY/EXIT
  1866. STM UIEB SAVE OLD JOB EJT ORDINAL
  1867. LDD FN+4 CHECK LOCAL FILE TYPE
  1868. SHN -6
  1869. LMN QFFT
  1870. NJN UIEX IF NOT QUEUED INPUT/OUTPUT FILE
  1871. LDD CP GET NEW JOB EJT ORDINAL
  1872. ADN TFSW
  1873. CRD CM
  1874. LDD CM
  1875. STM UIEC
  1876. LDN 0 INITIALIZE QFT ORDINAL
  1877. STD T3
  1878. LDK QFTP GET MAXIMUM ENTRIES IN QFT
  1879. CRD CM
  1880. LDD CM+2
  1881. STD T2
  1882. UIE1 AOD T3 INCREMENT TO NEXT QFT ENTRY
  1883. SBD T2
  1884. PJN UIE2 IF END OF QFT
  1885. SFA QFT,T3 GET QFT ENTRY
  1886. CRD CM
  1887. ADN ENTQ-JSNQ
  1888. CRD CN
  1889. LDD CN CHECK FOR SAME EQUIPMENT
  1890. LMD FS
  1891. LPC 777
  1892. NJN UIE1 IF NOT CORRECT ENTRY
  1893. LDD CN+1 CHECK FOR SAME FIRST TRACK
  1894. LMD FS+1
  1895. NJN UIE1 IF NOT CORRECT ENTRY
  1896. LDN 3 SET NUMBER OF REQUESTS FOR *UADM*
  1897. STD T1
  1898. LDD MA WRITE *UADM* REQUESTS TO MESSAGE BUFFER
  1899. CWM UIEA,T1
  1900. SFA QFT,T3 CALCULATE ABSOLUTE ADDRESS OF QFT ENTRY
  1901. RJM SFI ISSUE *UTEM* TO CHANGE JOB EJT ORDINAL
  1902. NJN UIE2 IF EJT ORDINAL VERIFY FAILED
  1903. LJM UIEX RETURN
  1904.  
  1905. UIE2 MONITOR HNGM HANG PP
  1906. UJN UIE2 UNCONDITIONALLY HANG
  1907.  
  1908.  
  1909. UIEA VFD 1/1,5/JSNQ,6/1,6/1,42/1 CHECK FILE ASSIGNED
  1910. VFD 1/1,5/ENTQ,6/12D,6/0,42/0 VERIFY OLD EJT ORDINAL
  1911. UIEB EQU *-1
  1912. VFD 1/0,5/ENTQ,6/12D,6/0,42/0 SET NEW EJT ORDINAL
  1913. UIEC EQU *-1
  1914. SPACE 4,10
  1915. ** COMMON DECKS.
  1916.  
  1917.  
  1918. *CALL COMPNFL
  1919. SPACE 4,10
  1920. ** BUFFER FOR UTILITY FNT WORD.
  1921.  
  1922.  
  1923. FBUF BSS LENF*5-2*5 REMAINDER OF FNT
  1924. ERRNZ LENF-3 CHANGE BUFFER SIZE AND ALL *FBUF* ACCESS
  1925. SPACE 4,10
  1926. USE OVERLAY
  1927.  
  1928. OSTL EQU *+5 *0ST* LOAD ADDRESS
  1929.  
  1930. ERRNG BFMS-OSTL-ZSTL CHECK *0ST* LENGTH
  1931. OVERFLOW E1MA
  1932. TTL 1MA/2MB - EXTENDED MEMORY STORAGE REQUEST PROCESSING.
  1933. TITLE
  1934. OVERLAY (EXTENDED MEMORY STORAGE REQUEST.),E1MA
  1935. SPACE 4,10
  1936. ***** 2MB - EXTENDED MEMORY STORAGE REQUEST PROCESSING.
  1937. *
  1938. * *2MB* PERFORMS ALL ECS RELATED STORAGE REQUESTS FOR
  1939. * THE SYSTEM MONITOR. *2MB* WILL INSURE THAT AT LEAST
  1940. * *MCMX* WORDS OF CM IS ASSIGNED TO THE CONTROL POINT
  1941. * BEFORE REQUESTING EXTENDED MEMORY FOR THE CONTROL POINT.
  1942. * IF THE CONTROL POINT HAS AN *MFL* OF LESS THAN *MCMX* AT THE
  1943. * TIME EXTENDED MEMORY IS REQUESTED, THE JOB WILL BE ABORTED.
  1944. RFE SPACE 4,25
  1945. *** FUNCTION 0 (SUBFUNCTIONS 2 AND 4).
  1946. * REQUEST EXTENDED CORE STORAGE.
  1947. *
  1948. * ENTRY
  1949. *T ARG 6/SUB,18/FL
  1950. *
  1951. * SUB = 2 EXTENDED MEMORY REQUEST, ABORT IF NOT AVAILABLE.
  1952. * = 4 EXTENDED MEMORY REQUEST, NO ABORT IF NOT AVAILABLE.
  1953. *
  1954. *T FL 30/VAL,24/,1/R,1/C,1/,3/0
  1955. *
  1956. * VAL POSITIVE NON-ZERO VALUE INDICATING THE AMOUNT OF
  1957. * EXTENDED MEMORY BEING REQUESTED.
  1958. * R CLEAR *CMM* STATUS.
  1959. * C THIS IS A *CMM* TYPE REQUEST.
  1960. *
  1961. * EXIT TO *ERR* IF ERRORS ENCOUNTERED.
  1962. * TO *RCL* TO ENTER PP RECALL.
  1963. *
  1964. * USES T3 - T5, T7, CM - CM+4, FS - FS+4, SP - SP+4.
  1965. *
  1966. * CALLS CLM, REI, RSI.
  1967. *
  1968. * MACROS MONITOR.
  1969.  
  1970.  
  1971. RFE SUBR ENTRY/EXIT
  1972. LDK MEFL GET USER EM SHIFT COUNT (UESC)
  1973. CRD CM
  1974. LDD CM+2
  1975. SHN -11
  1976. STD CM+2
  1977. SBN 4
  1978. LPN 77
  1979. ADD TH
  1980. ERRNZ SHNI-1000
  1981. STM RFEA
  1982. LDC SHNI+77
  1983. SBD CM+2
  1984. STM RFEB
  1985. LDC SHNI+3
  1986. ADD CM+2
  1987. STM RFEC
  1988. STM RFEE
  1989. LDD IR+3 RESTORE DIRECT CELL HIT DURING LOADING
  1990. SHN -6
  1991. ADN 1
  1992. STD T5
  1993. LDD FN+2 FETCH REQUEST
  1994. ADC 7700 ROUND UP
  1995. SHN -14
  1996. ADD FN+1
  1997. ADN 7
  1998. SCN 7
  1999. SHN 6
  2000. ADD FN
  2001. SHN 11
  2002. STD T3 SET NEW FLE
  2003. SHN -14
  2004. STD T0
  2005. LDN 17 ROUND VALUE TO BLOCKING SIZE
  2006. RFEA SHN -4
  2007. * SHN UESC-4
  2008. RAD T3
  2009. SHN -14
  2010. ADD T0
  2011. SHN 14
  2012. LMD T3
  2013. RFEB SHN 0
  2014. * SHN -UESC
  2015. STD T3
  2016. SHN -14
  2017. ZJN RFE1 IF REQUEST .LE. 7777B *UEBS* BLOCKS
  2018. LDN PSNI
  2019. STM RFED
  2020.  
  2021. * RE-ENTER AT *RFE1* FOLLOWING CLEAR OF CM WHEN
  2022. * CM INCREASE REQUIRED PRIOR TO EXTENDED MEMORY REQUEST.
  2023.  
  2024. RFE1 LDD CP FETCH STATUS AND CONTROL WORDS
  2025. ADN ECSW
  2026. CRD FS
  2027. ADN ELCW-ECSW
  2028. CRD T7
  2029. LDN ZERL
  2030. CRD CM
  2031. LDD FS+4
  2032. RFEC SHN 3
  2033. * SHN 3+UESC
  2034. STD CM+1
  2035. SHN -14
  2036. STD CM
  2037. LDD T7
  2038. SBD T3
  2039. RFED PJN RFE3 IF FLE .LE. MFL (EXTENDED MEMORY)
  2040. * PSN (IF FLE .GT. 12 BITS)
  2041. LDD IR+3
  2042. SHN 21-7
  2043. PJN RFE2 IF NOT *NO ABORT*
  2044. LJM RFEX COMPLETE PROCESSING
  2045.  
  2046. RFE2 LDC =C* FL REQUEST BEYOND MFL (EXTENDED MEMORY).*
  2047. LJM ERR PROCESS ERROR ABORT
  2048.  
  2049. * CHECK FOR AT LEAST MINIMUM CM FL AVAILABLE.
  2050.  
  2051. RFE3 LDD FL CHECK CM FL
  2052. ADC -MCMX/100
  2053. PJN RFE4 IF FL .GE. MINIMUM FL WITH EXTENDED MEMORY
  2054. LJM RFE12 GET ENOUGH CM BEFORE REQUESTING ECS
  2055.  
  2056. * REQUEST EXTENDED MEMORY.
  2057.  
  2058. RFE4 LDD CP CHECK IF JOB ROLLABLE
  2059. ADN JCIW
  2060. CRD CM
  2061. LDD CM+3 CHECK FOR *DIS* JOB
  2062. LPC 1000
  2063. ADD CM+2 CHECK FOR NON-ROLLABLE JOB
  2064. NJN RFE5 IF JOB NOT ROLLABLE
  2065. LDN SSTL CHECK EXTENDED MEMORY CONTROL
  2066. CRD CM
  2067. LDD CM
  2068. SHN 21-5
  2069. MJN RFE6 IF USER EXTENDED MEMORY DISABLED
  2070. RFE5 LDD FS+4 SAVE CURRENT FLE
  2071. STD T4
  2072. LDD T3
  2073. RJM REI REQUEST EXTENDED MEMORY INCREASE
  2074. ZJN RFE7 IF ASSIGNED
  2075. RFE6 LJM RFE9 IF REQUEST PENDING
  2076.  
  2077. * EXTENDED MEMORY ASSIGNED.
  2078.  
  2079. RFE7 LDD CP READ ECSW AND SEPW WORDS
  2080. ADN ECSW
  2081. CRD FS
  2082. ADN SEPW-ECSW
  2083. CRD CM
  2084. LDD CM CHECK ENTRY POINTS
  2085. LPN 1
  2086. NJN RFE8 IF SSM= ENTRY POINT PRESENT
  2087. STD CM+1
  2088. STD CM+3
  2089. LDD FS+4
  2090. SBD T4
  2091. MJN RFE8 IF DECREASE
  2092. ZJN RFE8 IF NO CHANGE
  2093. STD CM+2
  2094. LDC 300 SET ECS RELATIVE ADDRESS OPTION
  2095. RAD CM+1
  2096. LDD T4 SET ADDRESS FOR CLEAR
  2097. STD CM+4
  2098. MONITOR CSTM CLEAR ADDED STORAGE
  2099. RFE8 LDN 0
  2100. STD CM
  2101. LDD CP
  2102. ADN MS2W
  2103. CWD CM CLEAR CONSOLE MESSAGE
  2104. LDN ZERL RETURN STATUS
  2105. CRD CM
  2106. LDD FS+4
  2107. RFEE SHN 3
  2108. * SHN 3+UESC
  2109. STD CM+1
  2110. SHN -14
  2111. STD CM
  2112. LJM RFEX RETURN
  2113.  
  2114. * EXTENDED MEMORY NOT AVAILABLE.
  2115.  
  2116. RFE9 PJN RFE10 IF STORAGE UNASSIGNED WAITING FOR *1SJ*
  2117. LDD CP CHECK IF JOB ROLLABLE
  2118. ADN JCIW
  2119. CRD SP
  2120. LDD SP+3 CHECK FOR *DIS* JOB
  2121. LPC 1000
  2122. ADD SP+2 CHECK FOR NON-ROLLABLE JOB
  2123. NJN RFE10 IF JOB NOT ROLLABLE
  2124. STD CM+1 ROLLOUT CONTROL POINT
  2125. MONITOR ROCM
  2126. UJN RFE11 ENTER RECALL
  2127.  
  2128. * EXTENDED MEMORY AVAILABLE BUT NOT ASSIGNED.
  2129.  
  2130. RFE10 LDD CP SET WAITING MESSAGE
  2131. ADN MS2W
  2132. CWM =C*WAITING FOR STORAGE (EM). *,TR
  2133. RFE11 LDN EFIR SET ECS FL INCREASE PENDING REASON CODE
  2134. LJM RCL ENTER PP RECALL
  2135.  
  2136. * INSURE JOB CAN BE INCREASED TO AT LEAST MINIMUM CM.
  2137.  
  2138. RFE12 LDD CP GET CM CONTROL WORD
  2139. ADN FLCW
  2140. CRD CM
  2141. LDD CM
  2142. ADC -MCMX/100
  2143. MJN RFE14 IF MFL .LT. MINIMUM FL WITH ECS
  2144.  
  2145. * REQUEST MINIMUM CM FOR JOB.
  2146.  
  2147. LDD FL SAVE CURRENT CM FL
  2148. STD T4
  2149. LDC MCMX/100 REQUEST MINIMUM CM FL
  2150. RJM RSI
  2151. ZJN RFE13 IF ASSIGNED
  2152. LJM RFL20 WAIT FOR CM STORAGE
  2153.  
  2154. * CLEAR CM FL INCREASE WHEN ASSIGNED.
  2155.  
  2156. RFE13 RJM CLM CLEAR ADDITION MEMORY
  2157. LJM RFE1 PROCESS EXTENDED MEMORY REQUEST
  2158.  
  2159. RFE14 LDC =C* MFL LESS THAN EXTENDED MEMORY MINIMUM CM FL.*
  2160. LJM ERR PROCESS ERROR
  2161. SPACE 4,10
  2162. ** COMMON DECKS.
  2163.  
  2164.  
  2165. *CALL COMPREI
  2166. OVERFLOW E1MA
  2167. TTL 1MA/2MZ - EJT SYSTEM REQUEST FUNCTION PROCESSORS.
  2168. OVERLAY (EJT SYSTEM REQUEST PROCESSORS.),E1MA
  2169. 2MC SPACE 4,10
  2170. ***** *2MC* - EJT SYSTEM REQUEST PROCESSORS.
  2171.  
  2172.  
  2173. PRS SUBR ENTRY/EXIT
  2174. UJN PRSX EXIT
  2175. DTC SPACE 4,10
  2176. ** DTC - DETACH JOB FROM CALLER.
  2177. *
  2178. * CALLS CAA, GTN, PES, RRF, SAM, SEA, STO, TAS, VSC, VUD, WCE,
  2179. * WDS.
  2180. *
  2181. * MACROS ENDMS, SETMS.
  2182.  
  2183.  
  2184. DTC BSS 0 ENTRY
  2185. LDD W1+4 SET TO CLEAR INTERLOCK
  2186. STM PERB
  2187. RJM CAA READ OTHER PARAMETER BLOCK WORDS
  2188. ADN 3
  2189. CRD W3
  2190. ADN 1
  2191. CRD W4
  2192. RJM SEA SET ENTRY ADDRESS
  2193. CRM EJEN,EL READ EJT ENTRY WORDS
  2194.  
  2195. * CHECK JOB STATUS, CONNECTION STATUS AND SERVICE CLASS.
  2196. * JOB STATUS MUST BE EITHER *DOJS* OR *IOJS* BECAUSE A
  2197. * *FJEJ* MONITOR FUNCTION IS ALWAYS ISSUED BEFORE *DTEJ*.
  2198.  
  2199. LDM EJEN+JSNE*5+4
  2200. SHN -7
  2201. LPN 17
  2202. SBK NICS
  2203. NJN DTC0 IF SOME SORT OF CONNECTED STATUS
  2204. ERRNZ MXCS-3 ERROR IN CONNECTION STATUS CHECK
  2205. LDN JOER JOB NOT ONLINE
  2206. LJM PERX ERROR EXIT
  2207.  
  2208. DTC0 LDM EJEN+JSNE*5+4 CHECK CURRENT JOB STATUS
  2209. LPN 76
  2210. SBN IOJS*2
  2211. ZJN DTC1 IF *IOJS* STATUS
  2212. SBN DOJS*2-IOJS*2
  2213. ZJN DTC1 IF *DOJS* STATUS
  2214. SBN SUJS*2-DOJS*2
  2215. NJN DTC2 IF NOT *SUJS* STATUS
  2216. DTC1 STD SC PRESET NO SERVICE CLASS CHANGE
  2217.  
  2218. * CHECK DETACH REASON CODE.
  2219.  
  2220. LDD W2+1
  2221. SHN -6
  2222. ZJN DTC2 IF NO REASON CODE
  2223. STD T1
  2224. SBN TAMRL+1
  2225. MJN DTC3 IF VALID REASON CODE
  2226. DTC2 LDN JDER JOB CANNOT BE DETACHED
  2227. LJM PERX ERROR EXIT
  2228.  
  2229. DTC3 LDM TAMR-1,T1 MOVE REASON CODE
  2230. STM SAMB+1
  2231.  
  2232. * READ DISK AND VALIDATE USER DETACH.
  2233.  
  2234. LDN 0
  2235. RJM RRF READ ROLLOUT FILE
  2236. RJM VSC VALIDATE SERVICE CLASS
  2237. RJM VUD VALIDATE USER DETACH
  2238.  
  2239. * MAKE JOB STATUS AND CONNECTION STATUS CHANGES.
  2240. * JOB STATUS MUST BE OBTAINED FROM THE SYSTEM SECTOR COPY
  2241. * OF THE EJT BECAUSE THE *FJEJ* FUNCTION REQUEST SETS
  2242. * *DOJS* JOB STATUS IN THE EJT TO KEEP THE JOB ROLLED
  2243. * OUT UNTIL IAF CAN ISSUE THE *DTEJ* FUNCTION. THE
  2244. * SYSTEM SECTOR COPY CONTAINS THE JOB STATUS PRESENT
  2245. * AT LAST ROLLOUT.
  2246.  
  2247. LDM EJEN+SCLE*5 SAVE CURRENT SERVICE CLASS FOR RECOVERY
  2248. SHN -6
  2249. STD W3+2
  2250. LDM EJSS+JSNE*5+4 GET JOB STATUS FROM SYSTEM SECTOR
  2251. LPN 76
  2252. SBN IOJS*2
  2253. ZJN DTC3.2 IF TERMINAL I/O JOB STATE
  2254. SBN DOJS*2-IOJS*2
  2255. ZJN DTC3.2 IF DISABLED JOB STATE
  2256. SBN SUJS*2-DOJS*2
  2257. ZJN DTC4 IF SUSPENDED (IAF MISSING)
  2258. DTC3.1 SOM STOD DISABLE EJT TIMEOUT UPDATE
  2259. LJM DTC6 MAKE CHANGE
  2260.  
  2261. DTC3.2 LDM CBUF+EOJW*5 CHECK JOB TERMINATION OPTION
  2262. SHN 0-11
  2263. LMN TJJT
  2264. ZJN DTC3.1 IF TERMINATE JOB OPTION
  2265. DTC4 LDD EJ SAVE JOB STATUS AND SCHEDULE FIELD
  2266. SHN 14
  2267. LMD EJ+1
  2268. ADK JSNE
  2269. CRM EJSS,ON
  2270. ADK SCHE-JSNE-1
  2271. CRM EJSS+SCHE*5,ON
  2272. ADK SCLE-SCHE-1
  2273. CRD CN
  2274. LDD W3+2
  2275. SBD SC
  2276. NJN DTC4.1 IF CHANGE IN SERVICE CLASS
  2277. STD SC INDICATE NO SERVICE CLASS CHANGE
  2278. DTC4.1 LDD SC
  2279. ZJN DTC5 IF NO SERVICE CLASS CHANGE
  2280. STM DTCC+4
  2281. SHN 6
  2282. STD CN
  2283. AOM DTCA INCREMENT REQUEST COUNT
  2284. DTC5 LDK SUJS SUSPEND DIRECTLY
  2285. STM DTCB+11B
  2286. LDN 1
  2287. RAM STOB SET TO LEAVE INTERLOCKED
  2288. LDN 1
  2289. RAM STOA SET TO EXTEND TIMEOUT
  2290. DTC6 LDD SC CHANGE SERVICE CLASS
  2291. STM CSSS ADD CHANGE TO SYSTEM SECTOR
  2292.  
  2293. * SET UP RECOVERY TABLE.
  2294.  
  2295. LDD CP READ SUBSYSTEM IDENTIFICATION
  2296. ADN JCIW
  2297. CRD CM
  2298. LDD CM+2 SET SSID FIELD
  2299. STD W3
  2300.  
  2301. * PUT RECOVERY TABLE INTO SYSTEM SECTOR.
  2302.  
  2303. LDD MA TRANSFER RECOVERY WORDS
  2304. CWD W3
  2305. CRM R1SS,ON
  2306. CWD W4
  2307. CRM R2SS,ON
  2308. CWM CBUF+SRUW*5,ON TRANSFER SRU-S
  2309. SBN 1
  2310. CRD W3
  2311. LDM EJEN+SCHE*5 RESET DISK ADDRESS
  2312. STD T5
  2313. LDM EJEN+SCHE*5+1
  2314. STD T6
  2315. LDN 0
  2316. STD T7
  2317. STD FA
  2318. SETMS IO,RW
  2319. LDC BFMS SET BUFFER ADDRESS
  2320. RJM WDS WRITE SYSTEM SECTOR
  2321. RJM PES PROCESS ERROR STATUS
  2322. ENDMS
  2323. RJM GTN SET TERMINAL NAME IN PARAMETER BLOCK
  2324. LDN W3
  2325. RJM TAS TRANSFER ACCUMULATED SRU-S
  2326. RJM STO SET TIMEOUT
  2327. LDN 2
  2328. * LDN 3 (IF SERVICE CLASS CHANGE)
  2329. DTCA EQU *-1 REQUEST COUNT
  2330. STD CM+1
  2331. LDD MA PLACE REQUEST(S) IN MESSAGE BUFFER
  2332. CWM DTCB,CM+1 PLACE REQUEST
  2333. RJM WCE WRITE CHANGE TO EJT
  2334.  
  2335. * SEND ACCOUNTING MESSAGES.
  2336.  
  2337. LDC 2RAS SET UP MESSAGE
  2338. STM SAMB
  2339. AOM SAMJ
  2340. RJM SAM SEND DETACH MESSAGE
  2341.  
  2342. * RETURN JOB ACCESS LEVEL LIMIT OF DETACHED JOB.
  2343.  
  2344. LDM EJEN+PRFE*5+2 GET JOB ACCESS LEVEL LIMIT
  2345. LPN 7
  2346. SHN 6
  2347. RAD W2+0
  2348. LDN 0
  2349. LJM PERX EXIT
  2350.  
  2351.  
  2352. DTCB VFD 6/JSNE,6/4,6/7,42/DTCS
  2353. VFD 6/JSNE,6/5,6/1,42/ROJS
  2354. DTCC VFD 6/SCLE,6/6,6/54D,42/0 SERVICE CLASS CHANGE
  2355. TAMR SPACE 4,10
  2356. ** TAMR - TABLE OF ACCOUNTING MESSAGE REASONS.
  2357.  
  2358.  
  2359. TAMR BSS 0
  2360. DATA 2LTH HANG UP PHONE
  2361. DATA 2LTT TIMEOUT
  2362. DATA 2LTR SUBSYSTEM ABORT
  2363. DATA 2LTD USER DETACH
  2364. DATA 2LTP PROGRAM INITIATED DETACH
  2365. DATA 2LTU PROGRAM INITIATED DETACH AND LOGOUT
  2366.  
  2367. TAMRL EQU *-TAMR
  2368. GTN SPACE 4,15
  2369. ** GTN - GET TERMINAL NAME.
  2370. *
  2371. * EXIT TERMINAL NAME WRITTEN TO PARAMETER BLOCK.
  2372. *
  2373. * ERROR TO *PERX* IF ERROR ON READ.
  2374. *
  2375. * USES T5, T6, CM - CM+4.
  2376. *
  2377. * CALLS CAA, PES, RSS.
  2378. *
  2379. * MACROS ENDMS, SETMS.
  2380.  
  2381.  
  2382. GTN SUBR
  2383. LDM IFSS INPUT FILE FST WORD
  2384. STD T5
  2385. LDM IFSS+1
  2386. STD T6
  2387. SETMS IO
  2388. LDN 0
  2389. RJM RSS READ SYSTEM SECTOR
  2390. RJM PES PROCESS ERROR STATUS
  2391. NJN GTN1 IF ERROR ENCOUNTERED
  2392. ENDMS
  2393. LDD MA PICK UP TERMINAL NAME
  2394. CWM TNSS,ON
  2395. SBN 1
  2396. CRD CM
  2397. LDN 0
  2398. STD CM+4
  2399. LDD CM+3
  2400. SCN 77
  2401. STD CM+3
  2402. RJM CAA GET PARAMETER NAME BLOCK ADDRESS
  2403. ADN 6
  2404. CWD CM ADD TERMINAL TO PARAMETER BLOCK
  2405. UJP GTNX RETURN
  2406.  
  2407. GTN1 LDN ERER ERROR ON READ ERROR CODE
  2408. LJM PERX ERROR EXIT
  2409. PTN SPACE 4,15
  2410. ** PTN - PUT TERMINAL NAME.
  2411. *
  2412. * EXIT TERMINAL NAME UPDATED IN SYSTEM SECTOR.
  2413. * (SAMD) = TERMINAL NAME.
  2414. *
  2415. * ERROR TO *PERX* IF I/O ERROR ENCOUNTERED.
  2416. *
  2417. * USES T5, T6, T7, CM - CM+4.
  2418. *
  2419. * CALLS CAA, PES, RDS, WDS.
  2420. *
  2421. * MACROS ENDMS, SETMS.
  2422.  
  2423.  
  2424. PTN SUBR
  2425. RJM CAA GET PARAMETER NAME BLOCK ADDRESS
  2426. ADN 6
  2427. CRM SAMD,ON GET TERMINAL FROM PARAMETER BLOCK
  2428. LDM IFSS INPUT FILE FST WORD
  2429. STD T5
  2430. LDM IFSS+1
  2431. STD T6
  2432. LDN 0
  2433. STD T7
  2434. SETMS IO
  2435. LDC SBUF
  2436. RJM RDS READ INPUT FILE SYSTEM SECTOR
  2437. RJM PES PROCESS ERROR STATUS
  2438. ENDMS
  2439.  
  2440. * UPDATE TERMINAL NAME IN SYSTEM SECTOR.
  2441.  
  2442. LDD MA PICK UP TERMINAL NAME
  2443. CWM SBUF+TNSS-BFMS,ON
  2444. SBN 1
  2445. CRD CM
  2446. LDD CM+3
  2447. LMM SAMD+3
  2448. SCN 77
  2449. LMD CM+3
  2450. STM SAMD+3
  2451. LDD CM+4
  2452. STM SAMD+4
  2453. LDD MA PUT TERMINAL NAME IN SYSTEM SECTOR
  2454. CWM SAMD,ON
  2455. SBN 1
  2456. CRM SBUF+TNSS-BFMS,ON
  2457. LDN 0
  2458. STD T7
  2459. SETMS IO,RW
  2460. LDC SBUF
  2461. RJM WDS WRITE SYSTEM SECTOR
  2462. RJM PES PROCESS ERROR STATUS
  2463. ENDMS
  2464. LJM PTNX RETURN
  2465. REC SPACE 4,10
  2466. ** REC - RECOVER DETACHED JOB.
  2467. *
  2468. * CALLS CAA, GRE, PES, RRF, SES, SFI, TAS, WCE, WDS.
  2469. *
  2470. * MACROS ENDMS, MONITOR, SETMS.
  2471.  
  2472.  
  2473. REC BSS 0 ENTRY
  2474. LDN 0
  2475. STD W1+4 INITIALIZE EJT ORDINAL
  2476. LDD W2+1 VALIDATE MESSAGE BUFFER ADDRESS
  2477. LPN 77
  2478. SHN 14
  2479. ADD W2+2
  2480. ZJN REC1 IF INCORRECT ADDRESS
  2481. ADN EJPB
  2482. SHN -6
  2483. SBD FL
  2484. MJN REC2 IF IN RANGE
  2485. REC1 LDN MAER ADDRESS ERROR
  2486. UJN REC4 ERROR EXIT
  2487.  
  2488. REC2 LDD W0 TRANSFER JSN TO REQUEST
  2489. ZJN REC3 IF NO JSN
  2490. STM GREC+3
  2491. LDD W0+1
  2492. ZJN REC3 IF NO JSN
  2493. STM GREC+4
  2494. RJM SES SET UP EJT SEARCH
  2495. RJM GRE GET REQUIRED EJT ENTRY
  2496. ZJN REC5 IF DETACHED
  2497. LDN NTER&JFER JOB NOT DETACHED ERROR CODE
  2498. REC3 LMN JFER JOB NOT FOUND ERROR CODE
  2499. REC4 LJM PERX ERROR EXIT
  2500.  
  2501. REC5 LDD EJ READ EJT ENTRY
  2502. SHN 14
  2503. ADD EJ+1
  2504. CRM EJEN,EL
  2505. LDM EJEN+JSNE*5+4
  2506. LPN 76
  2507. STD JS
  2508. SHN -1
  2509. LMK EXJS
  2510. ZJN REC5.1 IF JOB IN CM
  2511. LMK PCJS&EXJS
  2512. NJN REC6 IF JOB NOT IN CM
  2513. LCN 2
  2514. RAM RECF
  2515.  
  2516. * ROLL OUT AND SUSPEND JOB.
  2517.  
  2518. REC5.1 LDK CEIN CLEAR INTERLOCK
  2519. STD T1
  2520. LDD EJ
  2521. SHN 14
  2522. LMD EJ+1
  2523. RJM SFI CLEAR INTERLOCK
  2524. LDM EJEN+SCHE*5+3 SET CONTROL POINT NUMBER
  2525. * LDM EJEN+SCHE*5+1 (JOB ASSIGNED TO PCP)
  2526. RECF EQU *-1
  2527. STD CM+2
  2528. LDC ROSU+4000
  2529. STD CM+1
  2530. MONITOR ROCM
  2531. LDN RTER SET RETRY
  2532. UJP REC4 EXIT
  2533.  
  2534. * SUSPEND JOB IF NOT ALEADY SUSPENDED.
  2535.  
  2536. REC6 LDD W1+4
  2537. STM PERB SET TO CLEAR WHEN COMPLETE
  2538. LDN 1
  2539. STD CM+1
  2540. LDD JS
  2541. SBN SUJS*2
  2542. ZJN REC7 IF SUSPENDED
  2543. LDC RTCL
  2544. CRM RECC+3,ON
  2545. LDC 600D SET TIMEOUT FOR TEN MINUTES
  2546. RAM RECC+4
  2547. SHN -14
  2548. RAM RECC+3
  2549.  
  2550. * GATHER INFORMATION FOR RETURN PARAMETER BLOCK.
  2551.  
  2552. REC7 RJM CAA READ TERMINAL NUMBER
  2553. ADN 5
  2554. CRD W5
  2555. LDN 0 SET TO READ SYSTEM SECTOR
  2556. RJM RRF READ ROLLOUT FILE
  2557. LDM CSSS
  2558. ZJN REC7.0 IF PREVIOUS SERVICE CLASS CHANGE COMPLETE
  2559. LDN 0
  2560. STD SC CLEAR SERVICE CLASS
  2561. LDM R1SS+2 GET PRE-DETACH SERVICE CLASS
  2562. LPN 77
  2563. STM DTCC+4 SET SERVICE CLASS IN REQUEST
  2564. AOM RECE
  2565. UJN REC7.1 CONTINUE WITH RECOVERY PROCESSING
  2566.  
  2567. REC7.0 LDM R1SS+2 GET PRE-DETACH SERVICE CLASS
  2568. LPN 77
  2569. STD SC
  2570. LDM EJEN+SCLE*5 GET CURRENT SERVICE CLASS
  2571. SHN -6
  2572. SBD SC
  2573. NJN REC7.1 IF SERVICE CLASS TO BE CHANGED
  2574. STD SC INDICATE NO SERVICE CLASS CHANGE
  2575. REC7.1 LDD SC
  2576. STM CSSS
  2577. LDD TN
  2578. STM CBUF+TTNW*5+1
  2579. LDN 0
  2580. STD T7
  2581. SETMS IO,RW
  2582. LDC BFMS
  2583. RJM WDS WRITE SYSTEM SECTOR
  2584. RJM PES PROCESS ERROR STATUS
  2585. LDN CPAI
  2586. STD T7
  2587. LDC SBUF
  2588. RJM WDS REWRITE CPA SECTOR
  2589. RJM PES PROCESS ERROR STATUS
  2590. ENDMS
  2591.  
  2592. * PROCESS RECOVERY.
  2593.  
  2594. LDN 3
  2595. STD CM+1
  2596. LDD MA
  2597. CWM RECA,CM+1
  2598. RJM WCE WRITE CHANGES TO EJT
  2599. RECE LDN 0
  2600. ZJN REC8.2 IF NO EJT SERVICE CLASS UPDATE REQUIRED
  2601. STD CM+1 NUMBER OF EJT CHANGES TO MAKE (FOR *WCE*)
  2602. LDD MA
  2603. CWM DTCC,CM+1 PLACE REQUEST
  2604. RJM WCE WRITE CHANGE TO EJT
  2605. REC8.2 LDM CBUF+TFSW*5+1
  2606. NJN REC9 IF PRIMARY FILE EXISTS
  2607. LDK ZERL
  2608. UJN REC10 ZERO PRIMARY FILE NAME
  2609.  
  2610. REC9 LDD MA TRANSFER PRIMARY FILE FNT
  2611. CWM PFSS,ON
  2612. SBN 1
  2613. REC10 CRD W0
  2614. LDN RCEJ*2 RESTORE FCN FIELD
  2615. STD W0+4
  2616. LDD W0+3 SAVE MODES FIELD
  2617. LPN 77
  2618. SHN 6
  2619. STD W2+4
  2620. SHN -6
  2621. LMD W0+3
  2622. STD W0+3
  2623. RJM CAA WRITE RECOVERY WORDS TO RETURN BLOCK
  2624. ADN 3
  2625. CWM R1SS,ON TRANSFER RECOVERY TABLE
  2626. CWM R2SS,ON
  2627. LDM EJSS+4
  2628. LPN 76
  2629. SHN -1
  2630. SBN IOJS
  2631. ZJN REC11 IF INPUT OR OUTPUT
  2632. SBN DOJS-IOJS
  2633. ZJN REC11 IF NOT ACTIVE JOB
  2634. LDN 1S5 SET ACTIVE JOB FLAG
  2635. RAD W2+4
  2636. REC11 LDC CBUF+MS1W*5-1
  2637. STD T1
  2638. REC12 AOD T1
  2639. STM RECD
  2640. LDI T1
  2641. NJN REC12 IF NOT END OF LINE
  2642. LDN ZERL ADD ZERO WORD FOR CM EOL
  2643. CRM *,ON
  2644. RECD EQU *-1
  2645. LDN 5
  2646. STD T1
  2647. LDD W2+1
  2648. LPN 77
  2649. SHN 6
  2650. ADD RA
  2651. SHN 6
  2652. ADD W2+2
  2653. CWM CBUF+MS1W*5,T1
  2654. LDC CBUF+SRUW*5
  2655. RJM TAS TRANSFER ACCUMULATED SRU-S
  2656. LDM CBUF+ACTW*5
  2657. SHN -7
  2658. STD JS
  2659. LPN 10 TIME LIMIT
  2660. RAD W2+4
  2661. LDD JS SRU LIMIT
  2662. LPN 2
  2663. SHN 3
  2664. RAD W2+4
  2665. LDM CBUF+TXSW*5
  2666. SHN -6 TIME SHARING SUBSYSTEM
  2667. LPN 7
  2668. RAD W2+4
  2669. LDN 0
  2670. LJM PERX NORMAL EXIT
  2671.  
  2672.  
  2673. RECA VFD 6/JSNE,6/4,6/7,42/OLCS
  2674. RECB VFD 6/JSNE,6/5,6/1,42/SUJS
  2675. RECC VFD 6/SCHE,6/24D,6/0,42/0
  2676. VFD 36/0 SCRATCH FOR RTCL
  2677. RRJ SPACE 4,10
  2678. ** RRJ - RESTART RECOVERED JOB.
  2679. *
  2680. * EXIT (A) = ERROR CODE, IF ANY.
  2681. * TO *PERX*.
  2682. *
  2683. * CALLS CET, PTN, RJC, RRF, SAM, SEA, WCE.
  2684. *
  2685. * MACROS ENDMS, SETMS.
  2686.  
  2687.  
  2688. RRJ BSS 0 ENTRY
  2689. LDD W1+4 SET TO CLEAR INTERLOCK WHEN COMPLETE
  2690. STM PERB
  2691. RJM SEA SET ENTRY ADDRESS
  2692. CRD CM
  2693. ADN SCHE
  2694. CRD T5
  2695. LDD EJ READ EJT ENTRY
  2696. SHN 14
  2697. LMD EJ+1
  2698. CRM EJEN,EL READ EJT ENTRY WORDS
  2699. LDD CM+4
  2700. LPC 3676
  2701. LMC OLCS*200+SUJS*2
  2702. ZJN RRJ2 IF ONLINE AND SUSPENDED
  2703. LDN NRER NOT RECOVERABLE ERROR CODE
  2704. RRJ1.1 LJM PERX EXIT
  2705.  
  2706. * RESTORE JOB STATUS AND SCHEDULE FIELD.
  2707.  
  2708. RRJ2 LDN 0
  2709. RJM RRF READ ROLLOUT FILE
  2710. ENDMS
  2711. RJM PTN PUT TERMINAL NAME IN SYSTEM SECTOR
  2712. RJM SAM ISSUE RECOVERY ACCOUNTING MESSAGE
  2713. LDM EJSS+JSNE*5+4
  2714. LPN 76 JOB STATUS FIELD
  2715. ADN 1 LEAVE INTERLOCK SET
  2716. STM EJSS+JSNE*5+4
  2717. SBN IOJS*2+1
  2718. ZJN RRJ3 IF *IOJS*
  2719. SBN DOJS*2+1-IOJS*2-1
  2720. ZJN RRJ3 IF DISABLED
  2721. LDN ROJS*2+1
  2722. STM EJSS+JSNE*5+4
  2723. LDM R1SS+2 GET INITIAL PRIORITY FOR SERVICE CLASS
  2724. LPN 77
  2725. STD T2
  2726. RJM RJC
  2727. ADN EXQT
  2728. CRD CM
  2729. LDD CM+4 SET INITIAL PRIORITY
  2730. STD T1
  2731. LDD T2
  2732. SHN 14
  2733. LMN EXQT
  2734. RJM CET
  2735. LDD T1 SET ENTRY TIME
  2736. STM EJSS+SCHE*5+3
  2737. LDD T2
  2738. STM EJSS+SCHE*5+4
  2739. RRJ3 LDM RRJA SET UP REQUEST
  2740. STM EJSS+JSNE*5
  2741. LDM RRJA+1
  2742. STM EJSS+JSNE*5+1
  2743. LDM RRJB
  2744. STM EJSS+SCHE*5
  2745. LDM RRJB+1
  2746. STM EJSS+SCHE*5+1
  2747. LDM R1SS+2 SET SERVICE CLASS
  2748. LPN 77
  2749. STM RRJC+4
  2750. LDN 2
  2751. STD CM+1
  2752. ERRNZ SCHE-JSNE-1 CODE DEPENDS ON CONSECUTIVE WORDS
  2753. LDD MA
  2754. CWM EJSS+JSNE*5,CM+1
  2755. CWM RRJC,ON
  2756. AOD CM+1
  2757. RJM WCE WRITE CHANGES TO EJT
  2758. LJM PERX EXIT
  2759.  
  2760.  
  2761. RRJA VFD 6/JSNE,6/6,6/0,6/0
  2762. RRJB VFD 6/SCHE,6/30D,6/0,6/0
  2763. RRJC VFD 6/SCLE,6/6,6/54D,6/0,36/0
  2764. RST SPACE 4,10
  2765. ** RST - RESET TIMEOUT.
  2766. *
  2767. * USES CM - CM+4, CN - CN+4.
  2768. *
  2769. * CALLS GRE, SEA, SES, STO.
  2770.  
  2771.  
  2772. RST BSS 0 ENTRY
  2773. LDD W0+2 CHECK TIMEOUT DELAY FLAG
  2774. LPN 2
  2775. RAM STOA
  2776. LDD W0+2 CHECK FLAGS FIELD
  2777. SHN 21-0
  2778. MJN RST2 IF SELECT BY ORIGIN TYPE
  2779. LDD W1+4
  2780. ZJN RST1 IF NO EJTO
  2781. STM PERB SET TO CLEAR INTERLOCK WHEN COMPLETE
  2782. LJM RST8 RESET ONE TIMEOUT
  2783.  
  2784. RST1 LDN IEER INCORRECT EJT ORDINAL
  2785. UJN RST6 ERROR EXIT
  2786.  
  2787. RST2 LDD W2 VALIDATE ORIGIN TYPE
  2788. LPN 77
  2789. STM GRED+4
  2790. SBN MXOT
  2791. MJN RST3 IF VALID ORIGIN TYPE
  2792. LDN IOER INCORRECT ORIGIN TYPE
  2793. UJN RST6 EXIT
  2794.  
  2795. RST3 RJM SES SET UP EJT SEARCH
  2796. LDC GRED SET REQUEST ADDRESS
  2797. STM GREB
  2798. LDN PSNI
  2799. STM GREA
  2800. STM GREA+1
  2801. RST4 RJM GRE GET EJT ENTRY BY ORIGIN TYPE
  2802. ZJN RST7 IF ENTRY FOUND
  2803. RST5 LDN 0 SET COMPLETE
  2804. STM PERB SET INTERLOCK ALREADY CLEAR
  2805. RST6 LJM PERX EXIT
  2806.  
  2807. RST7 RJM STO SET TIMEOUT
  2808. UJN RST4 LOOP FOR NEXT ENTRY
  2809.  
  2810. * PROCESS SINGLE ENTRY RESET.
  2811.  
  2812. RST8 RJM SEA SET ENTRY ADDRESS
  2813. CRD CM READ EJT ENTRY
  2814. ADN SCLE
  2815. CRD CN
  2816. LDD CM+4
  2817. LPN 77
  2818. SBN SUJS*2+1
  2819. ZJN RST9 IF SUSPENDED AND INTERLOCKED
  2820. LDN NSER NOT SUSPENDED ERROR CODE
  2821. UJN RST6 ERROR EXIT
  2822.  
  2823. RST9 RJM STO SET TIMEOUT
  2824. UJN RST5 SET NORMAL EXIT
  2825. TRM SPACE 4,10
  2826. ** TRM - TERMINATE JOB.
  2827. *
  2828. * EXIT TO *PERX*.
  2829. *
  2830. * USES CM - CM+4, CN - CN+4, T0 - T7.
  2831. *
  2832. * CALLS CAA, GTN, PES, RRF, SEA, TAS, WCE, WDS.
  2833. *
  2834. * MACROS ENDMS, SETMS.
  2835.  
  2836.  
  2837. TRM BSS 0 ENTRY
  2838. LDD W1+4 SET EJTO TO CLEAR INTERLOCK
  2839. STM PERB
  2840. RJM SEA SET ENTRY ADDRESS
  2841. CRM EJEN,EL READ EJT ENTRY WORDS
  2842. SBD EL
  2843. ADK JSNE
  2844. CRD T0
  2845. ADN SCHE-JSNE
  2846. CRD T5
  2847. ADN SCLE-SCHE
  2848. CRD CN
  2849. LDD T0+4
  2850. LPN 76
  2851. LMN IOJS*2
  2852. ZJN TRM1 IF *IOJS* JOB STATUS
  2853. LMN DOJS*2&IOJS*2
  2854. ZJN TRM1 IF *DOJS* JOB STATUS
  2855. LDN NDER SET JOB NOT DISABLED ERROR
  2856. LJM PERX EXIT
  2857.  
  2858. TRM1 LDD CN SET SCHEDULING PRIORITY
  2859. SHN -6
  2860. STD T2
  2861. RJM RJC
  2862. ADN EXQT
  2863. CRD CM
  2864. LDD CM+2 SET UPPER PRIORITY
  2865. STD T1
  2866. LDD T2
  2867. SHN 14
  2868. LMN EXQT
  2869. RJM CET
  2870. LDD T1 SET ENTRY TIME
  2871. STM TRMB+3
  2872. LDD T2
  2873. STM TRMB+4
  2874. LDN 0 SET TO READ CPA AND SYSTEM SECTOR
  2875. RJM RRF READ ROLLOUT FILE
  2876. ENDMS
  2877. RJM CAA READ RECOVERY WORDS
  2878. ADN 3
  2879. CRM R1SS,ON
  2880. CRM R2SS,ON
  2881. LDD CP SET SUBSYSTEM IDENTIFIER
  2882. ADN JCIW
  2883. CRD CM
  2884. LDD CM+2
  2885. STM R1SS
  2886. LDN 0
  2887. STD T7
  2888. SETMS IO,RW
  2889. LDC BFMS SET BUFFER ADDRESS
  2890. RJM WDS WRITE SYSTEM SECTOR
  2891. RJM PES PROCESS ERROR STATUS
  2892. ENDMS
  2893. RJM GTN SET TERMINAL NAME IN PARAMETER BLOCK
  2894. LDC CBUF+SRUW*5 TRANSFER SRU-S TO PARAMETER BLOCK
  2895. RJM TAS TRANSFER ACCUMULATED SRU-S
  2896. LDN 3 SET WORD COUNT
  2897. STD CM+1
  2898. LDD MA SET EJT STATUS CHANGES
  2899. CWM TRMA,CM+1
  2900. RJM WCE WRITE CHANGES TO EJT ENTRY
  2901. * LDN 0 SET NO ERROR
  2902. LJM PERX EXIT
  2903.  
  2904. TRMA VFD 6/JSNE,6/4,6/7,42/NICS
  2905. VFD 6/JSNE,6/5,6/1,42/ROJS
  2906. TRMB VFD 6/SCHE,6/24,6/0,42/0
  2907. TITLE EJT SYSTEM REQUEST SUBROUTINES.
  2908. GRE SPACE 4,20
  2909. ** GRE - GET REQUIRED EJT ENTRY.
  2910. *
  2911. * ENTRY (T4) = NUMBER OF ENTRIES LEFT TO SCAN.
  2912. * (EJ - EJ+1) = ADDRESS OF LAST ENTRY FOUND.
  2913. *
  2914. * EXIT (A) = 0 IF ENTRY FOUND.
  2915. * (EJ - EJ+1) = ADVANCED TO CURRENT EJT ENTRY ADDRESS.
  2916. * *OLCS* CHANGED TO *NICS* IN EJT ENTRY IF RESET
  2917. * TIMEOUT REQUEST.
  2918. * EJT ENTRY INTERLOCKED IF FOUND.
  2919. * TO *PERX* IF RETRY NECESSARY.
  2920. *
  2921. * USES T1, T4, CM - CM+4, CN - CN+4, EJ - EJ+1, W3 - W3+4.
  2922. *
  2923. * CALLS WCE.
  2924. *
  2925. * MACROS MONITOR.
  2926.  
  2927.  
  2928. GRE SUBR ENTRY/EXIT
  2929. LDN 2
  2930. STD T1
  2931. GRE1 AOD W1+4 INCREMENT EJT ORDINAL
  2932. SOD T4 DECREMENT ENTRIES TO SCAN
  2933. MJN GREX IF AT END OF TABLE
  2934. LDN EJTE GET NEXT ENTRY ADDRESS
  2935. RAD EJ+1
  2936. SHN -14
  2937. RAD EJ
  2938. GRE1.1 SHN 14
  2939. LMD EJ+1
  2940. ADK JSNE
  2941. CRD W3 READ EJT ENTRY
  2942. ADK SCLE-JSNE
  2943. CRD CN
  2944. LDD W3
  2945. ZJN GRE1 IF NO EJT ENTRY
  2946. LJM GRE3 PROCESS *RCEJ* REQUEST
  2947. * PSN (PROCESS *RTEJ* REQUEST)
  2948. * PSN
  2949. GREA EQU *-2
  2950.  
  2951. * PSN (PROCESS *RTEJ* REQUEST)
  2952.  
  2953. * PROCESS RESET TIMEOUT REQUEST.
  2954.  
  2955. LDD W3+4 COMPARE CONNECTION STATUS
  2956. SHN 0-7
  2957. LPN 17
  2958. LMN OLCS
  2959. NJP GRE1.4 IF NOT ON-LINE CONNECTION STATUS
  2960. LDD W3+4 GET JOB STATUS
  2961. SHN -1
  2962. LPN 37
  2963. STM GREF+4
  2964. LMK PRJS
  2965. ZJN GRE1.2 IF PRE-INITIAL JOB STEP
  2966. LMK EXJS&PRJS
  2967. ZJN GRE1.2 IF EXECUTING JOB
  2968. LMK ERJS&EXJS
  2969. ZJN GRE1.2 IF ERROR IN ROLLOUT FILE
  2970. LMK PCJS&ERJS
  2971. ZJN GRE1.2 IF PCP JOB
  2972. LDN 1
  2973. GRE1.2 ADN 3
  2974. STD CM+1 NUMBER OF CHANGES TO MAKE
  2975. LDD MA
  2976. CWM GREE,CM+1
  2977. RJM WCE CHANGE EJT CONNECTION STATUS
  2978. LDD CM+1
  2979. ZJN GRE1.3 IF REQUEST COMPLETED SUCCESSFULLY
  2980. LDD EJ
  2981. UJP GRE1.1 RETRY THE REQUEST
  2982.  
  2983. GRE1.3 LDC 4000+SYET ALTERNATE EJT FLAG AND ERROR
  2984. STD CM+1
  2985. LDD W1+4 EJT ORDINAL
  2986. STD CM+2
  2987. LDD W3 SET JSN
  2988. STD CM+3
  2989. LDD W3+1
  2990. STD CM+4
  2991. MONITOR CEFM
  2992. GRE1.4 LDD CN COMPARE ORIGIN TYPE
  2993. LPN 17
  2994. LMM GRED+4
  2995. NJN GRE2 IF NOT FOUND
  2996. LDD W3+4 COMPARE JOB STATUS
  2997. LPN 77
  2998. LMN SUJS*2
  2999. ZJN GRE4 IF ENTRY FOUND
  3000. GRE2 LJM GRE1 CHECK NEXT ENTRY
  3001.  
  3002. * PROCESS RECOVER JOB REQUEST.
  3003.  
  3004. GRE3 LDD W0 COMPARE JSN
  3005. LMD W3
  3006. NJN GRE2 IF NOT FOUND
  3007. LDD W0+1
  3008. LMD W3+1
  3009. NJN GRE2 IF NOT FOUND
  3010. LDD W3+4 COMPARE CONNECTION STATUS
  3011. SHN -7
  3012. LPN 17
  3013. LMN DTCS
  3014. NJN GRE2 IF NOT DETACHED
  3015. GRE4 LDN 42B SET INTERLOCK AFTER TWO VERIFICATIONS
  3016. STD CM+1
  3017. LDD EJ SET ADDRESS OF EJT ENTRY
  3018. STD CM+3
  3019. LDD EJ+1
  3020. STD CM+4
  3021. LDD MA
  3022. CWM GREC,T1
  3023. GREB EQU *-1 ADDRESS OF REQUESTS
  3024. MONITOR UTEM
  3025. LDD CM+1
  3026. SBN 1
  3027. ZJN GRE5 IF INTERLOCK SET
  3028. SBN 3-1
  3029. ZJN GRE5 IF INTERLOCK SET
  3030. LDD CM+1
  3031. LJM GREX RETURN
  3032.  
  3033. GRE5 LDN RTER RETRY ERROR CODE
  3034. LJM PERX EXIT
  3035.  
  3036.  
  3037. GREC VFD 1/1,5/JSNE,6/24D,6/36D,42/0 JSN (RCEJ)
  3038. VFD 1/1,5/JSNE,6/4,6/7,42/DTCS CONNECTION STATUS (RCEJ)
  3039. GRED VFD 1/1,5/SCLE,6/4,6/48D,42/0 ORIGIN TYPE (RTEJ)
  3040. VFD 1/1,5/JSNE,6/5,6/1,42/SUJS JOB STATUS (RTEJ)
  3041. GREE VFD 1/1,5/JSNE,6/4,6/7,42/OLCS CONNECTION STATUS (RTEJ)
  3042. GREF VFD 1/1,5/JSNE,6/5,6/1,42/** CONNECTION STATUS (RTEJ)
  3043. VFD 6/JSNE,6/4,6/7,42/NICS CONNECTION STATUS (RTEJ)
  3044. VFD 6/JSNE,6/5,6/1,42/ROJS JOB STATUS (RTEJ)
  3045. PES SPACE 4,10
  3046. ** PES - PROCESS I/O ERROR STATUS.
  3047. *
  3048. * ENTRY (RDCT) = DRIVER STATUS.
  3049. *
  3050. * EXIT TO *PERX* WITH (A) = *REER* IF RECOVERABLE DRIVER
  3051. * ERROR.
  3052. * TO *PERX* WITH (A) = *ERER* IF UNRECOVERABLE DRIVER
  3053. * ERROR.
  3054.  
  3055.  
  3056. PES SUBR ENTRY/EXIT
  3057. PJN PESX IF NO DRIVER ERROR
  3058. LDM RDCT CHECK DRIVER STATUS
  3059. SHN 21-12
  3060. PJN PES1 IF RECOVERABLE ERROR
  3061. LDN ERER UNRECOVERABLE I/O ERROR ON DEVICE
  3062. UJN PES2 SET ERROR CODE
  3063.  
  3064. PES1 LDN REER RECOVERABLE DISK ERROR
  3065. PES2 LJM PERX EXIT
  3066. RRF SPACE 4,15
  3067. ** RRF - READ ROLLOUT FILE.
  3068. *
  3069. * ENTRY (A) = 0, IF SYSTEM SECTOR READ NEEDED.
  3070. * (EJEN) = EJT ENTRY.
  3071. * = 1, IF ONLY CPA SECTOR NEEDED.
  3072. * (T5 - T6) = ROLLOUT INFORMATION, SETMS DONE.
  3073. *
  3074. * ERROR TO *PERX* IF ERROR ON READ.
  3075. *
  3076. * USES T5, T6, T7.
  3077. *
  3078. * CALLS PES, RDS, RSS.
  3079. *
  3080. * MACROS SETMS, ENDMS.
  3081.  
  3082.  
  3083. RRF SUBR ENTRY/EXIT
  3084. NJN RRF1 IF CPA SECTOR REQUEST
  3085. LDM EJEN+SCHE*5
  3086. STD T5
  3087. LDM EJEN+SCHE*5+1
  3088. STD T6
  3089. SETMS IO
  3090. LDN 0
  3091. RJM RSS READ SYSTEM SECTOR
  3092. RJM PES PROCESS ERROR STATUS
  3093. NJN RRF2 IF ERROR ENCOUNTERED
  3094. LDM FNSS+4
  3095. SHN -6
  3096. LMN ROFT
  3097. ZJN RRF1 IF ROLLOUT FILE TYPE
  3098. ENDMS
  3099. UJN RRF2 PROCESS ROLLOUT FILE ERROR
  3100.  
  3101. RRF1 LDN CPAI READ CONTROL POINT AREA
  3102. STD T7
  3103. LDC SBUF
  3104. RJM RDS READ CPA
  3105. RJM PES PROCESS ERROR STATUS
  3106. ENDMS
  3107. LDM SBUF CHECK LINKAGE
  3108. ZJN RRF2 IF NO LINK
  3109. LDM SBUF+1
  3110. LMD HN
  3111. ZJP RRFX IF FULL SECTOR READ
  3112. RRF2 LDN ERER ERROR ENCOUNTERED ON DEVICE
  3113. LJM PERX ERROR EXIT
  3114. SAM SPACE 4,10
  3115. ** SAM - SEND ACCOUNTING MESSAGE.
  3116. *
  3117. * ENTRY (EJEN) = EJT ENTRY.
  3118. *
  3119. * USES T1, CM - CM+4.
  3120. *
  3121. * CALLS ACS, CAA, DFM.
  3122.  
  3123.  
  3124. SAM SUBR ENTRY/EXIT
  3125. LDM EJEN+SCLE*5 SET SERVICE CLASS IN MESSAGE
  3126. SHN -6
  3127. STM SAMA+4
  3128. RJM CAA READ USER NAME
  3129. ADN 1
  3130. CRD CN
  3131. LDD CN+3
  3132. SCN 77
  3133. STD CN+3
  3134. LDC FOTP MOVE FAMILY NAME
  3135. CRD CM
  3136. LDM EJEN+JSNE*5+2
  3137. SHN -6
  3138. STD T1
  3139. LDD CM
  3140. SHN 14
  3141. ADD CM+1
  3142. ADD T1
  3143. CRD CM READ FOT ENTRY
  3144. LDD W0
  3145. STM SAMA MOVE JSN
  3146. LDD W0+1
  3147. STM SAMA+1
  3148.  
  3149. * BUILD ACCOUNTING MESSAGE BUFFER.
  3150.  
  3151. LDC SAMC SET BUFFER LOCATION
  3152. STD T1
  3153. LDN CN ADD USER NAME
  3154. RJM ACS
  3155. LDC SAME ADD COMMA
  3156. RJM ACS
  3157. LDN CM ADD FAMILY NAME
  3158. RJM ACS
  3159. LDC 0
  3160. SAMJ EQU *-1 DTEJ=1, RSEJ=0 (SET BY *DTC*)
  3161. NJN SAM1 IF DETACH OF JOB
  3162. LDC SAME ADD COMMA
  3163. RJM ACS
  3164. LDM SAMD+3 ENSURE VALID TERMINAL NAME
  3165. SCN 77
  3166. STM SAMD+3
  3167. LDC SAMD ADD TERMINAL NAME
  3168. RJM ACS
  3169. SAM1 LDC SAMF ADD PERIOD
  3170. RJM ACS
  3171. LDC SAMA+AJNN
  3172. RJM DFM SEND DAYFILE MESSAGE
  3173. LJM SAMX RETURN
  3174.  
  3175. SAMA DATA 10LJSNA SC
  3176. SAMB DATA 6LARUN,
  3177. SAMC BSSZ 17D MESSAGE BUFFER
  3178. SAMD DATA 9LTERMNAM
  3179. SAME DATA 2L, COMMA AND SPACE
  3180. CON 0 TERMINATOR
  3181. SAMF DATA 1L. PERIOD
  3182. CON 0 TERMINATOR
  3183. SEA SPACE 4,10
  3184. ** SEA - SET ENTRY ADDRESS.
  3185. *
  3186. * ENTRY (W1+4) = EJT ORDINAL.
  3187. *
  3188. * EXIT (A) = ADDRESS OF EJT ENTRY.
  3189. * (EJ - EJ+1) = ADDRESS OF EJT ENTRY.
  3190. *
  3191. * MACROS SFA.
  3192.  
  3193.  
  3194. SEA SUBR ENTRY/EXIT
  3195. SFA EJT,W1+4 READ EJT ENTRY
  3196. STD EJ+1 SAVE ADDRESS
  3197. SHN -14
  3198. STD EJ
  3199. SHN 14
  3200. LMD EJ+1
  3201. UJN SEAX RETURN
  3202. SES SPACE 4,10
  3203. ** SES - SET UP EJT SEARCH.
  3204. *
  3205. * EXIT (T4) = NUMBER OF POSSIBLE EJT ENTRIES.
  3206. * (EJ - EJ+1) = ADDRESS OF EJT ENTRY 0.
  3207. *
  3208. * USES T2 - T6, EJ - EJ+1.
  3209. *
  3210. * MACROS SFA.
  3211.  
  3212.  
  3213. SES SUBR ENTRY/EXIT
  3214. LDN EJTP
  3215. CRD T2 SET T4
  3216. SOD T4
  3217. LDD T3 SET ADDRESS OF EJT 0
  3218. STD EJ+1
  3219. LDD T2
  3220. STD EJ
  3221. UJN SESX RETURN
  3222. STO SPACE 4,15
  3223. ** STO - SET TIMEOUT.
  3224. *
  3225. * ENTRY (EJ - EJ+1) = CM ADDRESS OF EJT ENTRY TO UPDATE.
  3226. * (CN - CN+4) = WORD *SCLE* OF EJT ENTRY.
  3227. * (STOA) = TIMEOUT FLAG, 0 = ZERO TIMEOUT.
  3228. * (STOB) = INTERLOCK CLEAR FLAG, 0 = CLEAR.
  3229. * (STOD) = DISABLE TIMEOUT UPDATE FLAG, 0 = DO NOT
  3230. * UPDATE TIMEOUT IN EJT ENTRY.
  3231. *
  3232. * EXIT SCHEDULE FIELD UPDATED IN EJT ENTRY, IF SO DESIRED.
  3233. *
  3234. * USES CM - CM+4.
  3235. *
  3236. * CALLS RJC, SFI, WCE.
  3237.  
  3238.  
  3239. STO SUBR ENTRY/EXIT
  3240. STOD LDN 1
  3241. ZJN STOX IF NOT UPDATING TIMEOUT IN EJT
  3242. LDC RTCL GET CLOCK TIME
  3243. CRM STOC+3,ON
  3244. STOA LDN 0 TIMEOUT DELAY FLAG
  3245. ZJN STO1 IF NO DELAY DESIRED
  3246. LDD CN
  3247. SHN -6
  3248. RJM RJC GET JOB CONTROL AREA ADDRESS
  3249. ADN SVJT
  3250. CRD CM
  3251. LDD CM+4 TIME DELAY
  3252. SHN 3 *10B
  3253. RAM STOC+4
  3254. SHN -14
  3255. RAM STOC+3
  3256. STO1 LDN 1 SET NUMBER OF REQUESTS
  3257. STD CM+1
  3258. LDD MA
  3259. CWM STOC,CM+1 SET REQUEST
  3260. RJM WCE WRITE CHANGE TO EJT
  3261. STOB LDN 0
  3262. NJN STOX IF INTERLOCK CLEAR NOT REQUESTED
  3263. LDN CEIN CLEAR INTERLOCK
  3264. STD T1
  3265. LDD EJ
  3266. SHN 14
  3267. ADD EJ+1
  3268. RJM SFI CLEAR INTERLOCK
  3269. LJM STOX RETURN
  3270.  
  3271.  
  3272. STOC VFD 6/SCHE,6/24D,6/0,42/0
  3273. VFD 36/0 SCRATCH FOR RTCL
  3274. TAS SPACE 4,10
  3275. ** TAS - TRANSFER ACCUMULATED SRU-S.
  3276. *
  3277. * ENTRY (A) = ADDRESS OF SRU ACCUMULATOR.
  3278. *
  3279. * EXIT (W1 - W1+3) = ACCUMULATED SRU-S.
  3280. *
  3281. * USES T7.
  3282.  
  3283.  
  3284. TAS SUBR ENTRY/EXIT
  3285. STM TASA
  3286. LDD W1-1
  3287. STD T7
  3288. LDD MA SET SRU ACCUMULATOR
  3289. CWM *,ON
  3290. TASA EQU *-1
  3291. SBN 1
  3292. CRD W1-1
  3293. LDD W1
  3294. LPN 77
  3295. STD W1
  3296. LDD T7 SET OVERWRITTEN CELL
  3297. STD W1-1
  3298. UJN TASX RETURN
  3299. VSC SPACE 4,10
  3300. ** VSC - VALIDATE SERVICE CLASS.
  3301. *
  3302. * ENTRY (EJEN+SCLE*5) = CURRENT SERVICE CLASS OF JOB.
  3303. * (SC) = 0.
  3304. *
  3305. * EXIT (SC) = SERVICE CLASS TO ASSIGN TO JOB.
  3306. * (SC) = 0, IF NO SERVICE CLASS CHANGE.
  3307. *
  3308. * ERROR (A) = ERROR CODE. EXIT TO *PERX*.
  3309. *
  3310. * USES OT, SC, T1, T2, T3, CM - CM+4, CN - CN+4.
  3311. *
  3312. * CALLS RJC, VSP.
  3313.  
  3314.  
  3315. VSC SUBR ENTRY/EXIT
  3316. LDM EJEN+SCLE*5
  3317. SHN -6
  3318. STD T1
  3319. RJM RJC
  3320. ZJN VSCX IF NO JCB DEFINED FOR SERVICE CLASS
  3321. ADN PFCT GET SERVICE CLASS TO ASSIGN ON DETACH
  3322. CRD CM
  3323.  
  3324. * CHECK FOR IMMEDIATE TIMEOUT. ON AN INVOLUNTARY DETACH WHEN
  3325. * THE SERVICE CLASS TIMEOUT DELAY IS ZERO, THE JOB WILL BE
  3326. * ABORTED IMMEDIATELY.
  3327.  
  3328. SBN PFCT-SVJT CHECK SUSPENSION TIMEOUT DELAY
  3329. CRD CN
  3330. LDD W2+1
  3331. SHN -6
  3332. SBN UDRC
  3333. ZJN VSC2 IF USER DETACH
  3334. LDD CN+4
  3335. ZJN VSC1 IF INVOLUNTARY DETACH W/O TIMEOUT DELAY
  3336. LDD CM+4
  3337. STD SC CHANGE SERVICE CLASS UNCONDITIONALLY
  3338. UJN VSCX RETURN
  3339.  
  3340. VSC1 LDC 4000+STET ABORT JOB WITH *STET* ERROR
  3341. STD CM+1
  3342. LDD W1+4 EJT ORDINAL
  3343. STD CM+2
  3344. LDD W0 SET JSN
  3345. STD CM+3
  3346. LDD W0+1
  3347. STD CM+4
  3348. MONITOR CEFM
  3349. LDN 0
  3350. UJN VSC4 RETURN ERROR STATUS
  3351.  
  3352. VSC2 LDD T1
  3353. SBD CM+4
  3354. ZJP VSCX IF NO CHANGE NECESSARY
  3355.  
  3356. * VALIDATE SERVICE CLASS.
  3357.  
  3358. LDN IAOT SET ORIGIN TYPE
  3359. STD OT
  3360. LDN 0 INDICATE NON-SUBSYSTEM AND NON-SSJ= JOB
  3361. STD T3
  3362. LDD MA GET SERVICE CLASS VALIDATION MASK
  3363. CWM VMSS-2,ON
  3364. SBN 1
  3365. CRD CN
  3366. LDD CM+4 SET SERVICE CLASS
  3367. RJM VSP VALIDATE SERVICE CLASS
  3368. NJN VSC3 IF ERROR
  3369. LDD T2 SET SERVICE CLASS CHANGE
  3370. STD SC
  3371. UJP VSCX RETURN
  3372.  
  3373. VSC3 SBN 2
  3374. ZJN VSC4 IF SERVICE CLASS NOT VALID FOR USER
  3375. LDN ISER&SFER
  3376. VSC4 LMN ISER SET ERROR STATUS
  3377. LJM PERX PROCESS ERROR
  3378. VUD SPACE 4,15
  3379. ** VUD - VALIDATE USER DETACH.
  3380. *
  3381. * ENTRY (CBUF) = CPA FROM ROLLOUT FILE.
  3382. * (EJ - EJ+1) = ADDRESS OF EJT ENTRY.
  3383. * (EJEN) = EJT ENTRY.
  3384. *
  3385. * ERROR (A) = ERROR CODE - EXIT TO *PERX*.
  3386. *
  3387. * USES T0 - T7, CM - CM+4, CN.
  3388. *
  3389. * CALLS DTI.
  3390.  
  3391.  
  3392. VUD SUBR ENTRY/EXIT
  3393. LDD W2+1
  3394. SHN -6
  3395. SBN UDRC
  3396. MJN VUDX IF NOT USER DETACH, DO NOT VALIDATE
  3397. LDM CBUF+ACLW*5+3
  3398. RJM DTI GET DETACH LIMIT
  3399. MJN VUDX IF UNLIMITED
  3400. ZJN VUD2 IF DETACH NOT ALLOWED
  3401. STD CN STORE DETACH COUNT
  3402.  
  3403. * SET UP FAMILY ORDINAL AND USER INDEX.
  3404.  
  3405. LDD EJ
  3406. SHN 14
  3407. LMD EJ+1
  3408. CRD T0 (T2-T3) = FAMILY ORDINAL AND USER INDEX
  3409. LDN EJTP
  3410. CRD T4 (T4-T5) = EJT ADDRESS, (T6) = ENTRY COUNT
  3411.  
  3412. * COUNT DETACHED JOBS FOR THIS FO/UI.
  3413.  
  3414. VUD1 LDN EJTE
  3415. RAD T5
  3416. SHN -14
  3417. RAD T4
  3418. SHN 14
  3419. LMD T5
  3420. CRD CM READ *JSNE* OF NEXT ENTRY
  3421. LDD CM+2
  3422. LMD T2
  3423. NJN VUD3 IF NO MATCH
  3424. LDD CM+3
  3425. LMD T3
  3426. NJN VUD3 IF NO MATCH
  3427. LDD CM+4 CHECK CONNECTION STATUS
  3428. SHN -7
  3429. LPN 17
  3430. LMN DTCS
  3431. NJN VUD3 IF NOT DETACHED
  3432. SOD CN
  3433. VUD2 ZJN VUD4 IF LIMIT EXCEEDED
  3434. VUD3 SOD T6 DECREMENT EJT ENTRY COUNT
  3435. NJN VUD1 IF SCAN NOT COMPLETE
  3436. LJM VUDX RETURN IF VALIDATED
  3437.  
  3438. VUD4 LDN DLER DETACH LIMIT EXCEEDED ERROR CODE
  3439. LJM PERX ERROR EXIT
  3440. WCE SPACE 4,10
  3441. ** WCE - WRITE CHANGES TO EJT.
  3442. *
  3443. * ENTRY (CM+1) = NUMBER OF CHANGES TO MAKE.
  3444. * (EJ - EJ+1) = ADDRESS OF EJT ENTRY TO CHANGE.
  3445. *
  3446. * EXIT (A) = 0.
  3447. *
  3448. * USES CM - CM+4.
  3449. *
  3450. * MACROS MONITOR.
  3451.  
  3452.  
  3453. WCE SUBR ENTRY/EXIT
  3454. LDN 0
  3455. STD CM+2
  3456. LDD EJ
  3457. STD CM+3
  3458. LDD EJ+1
  3459. STD CM+4
  3460. MONITOR UTEM UPDATE SCHEDULE FIELD AND JOB STATUS
  3461. * LDN 0
  3462. UJN WCEX EXIT
  3463. SPACE 4,10
  3464. ** COMMON DECKS.
  3465.  
  3466.  
  3467. AST$ SET 1 ASSEMBLE SSCT/SSAT UPDATE FUNCTIONS
  3468. *CALL COMPACS
  3469. *CALL COMPAST
  3470. QUAL$ SET 0
  3471. DTI$ SET 1
  3472. CET$ EQU 1 DEFINE *CET* ASSEMBLY
  3473. *CALL COMPCPE
  3474. *CALL COMPCVI
  3475. *CALL COMPRJC
  3476. *CALL COMPRSS
  3477. CJL$ EQU 1 CHECK SERVICE CLASS AT JOB LIMIT
  3478. CUV$ EQU 1 CHECK SERVICE CLASS VALID FOR USER
  3479. *CALL COMPVSP
  3480. SPACE 4,10
  3481. EJEN EQU *
  3482. SBUF EQU BFMS-506B SECTOR BUFFER
  3483. CBUF EQU SBUF+2 CPA BUFFER
  3484. ERRNG SBUF-EJEN-5*EJTE EJT ENTRY OVERFLOWS SECTOR BUFFER
  3485. OVERFLOW E1MA
  3486. OVERLAY (HIGH USAGE EJT SYSTEM REQUEST PROCESSORS.),E1MA
  3487. 2MD SPACE 4,10
  3488. **** *2MD* - HIGH USAGE EJT SYSTEM REQUEST PROCESSORS.
  3489.  
  3490.  
  3491. PRS SUBR ENTRY/EXIT
  3492. UJN PRSX EXIT
  3493. FTJ SPACE 4,10
  3494. ** FTJ - FREEZE TERMINAL JOB.
  3495. *
  3496. * *FTJ* FREEZES THE JOB BY ROLLING IT OUT AND SETTING *DOJS*
  3497. * IN THE EJT ENTRY TO KEEP IT ROLLED OUT. *FTJ* THEN ISSUES
  3498. * A NULL *TSEM* REQUEST TO INFORM IAF THAT THE SYSTEM NO
  3499. * LONGER HAS CONTROL OF THE JOB. THE JOB STATUS
  3500. * CONTAINED IN THE EJT IN THE SYSTEM SECTOR IS THE STATUS
  3501. * AT THE TIME THE JOB LAST ROLLED OUT.
  3502. *
  3503. * ENTRY (W1+4) = EJT ORDINAL.
  3504. *
  3505. * USES T1, W5, CM - CM+4, CN - CN+4.
  3506. *
  3507. * CALLS CAA, IUT.
  3508. *
  3509. * MACROS DELAY, MONITOR, PAUSE.
  3510.  
  3511.  
  3512. FTJ BSS 0 ENTRY
  3513. LDK 10000+FTJB
  3514. RJM IUT SET FORCED ROLLOUT AND CLEAR FORCED ROLLIN
  3515. SFA EJT,W1+4 CHECK FOR *EXJS* JOB STATUS
  3516. ADK JSNE
  3517. CRD CM
  3518. ADK SCHE-JSNE
  3519. CRD CN
  3520. LDD CM+4 CHECK CONNECTION STATUS
  3521. SHN -7
  3522. LPN 17
  3523. SBN OLCS
  3524. NJP FTJ3 IF NOT ONLINE
  3525. LDD CM+4
  3526. LPN 76
  3527. SHN -1
  3528. LMN EXJS
  3529. ZJN FTJ0 IF JOB IN CM
  3530. LMN PCJS&EXJS
  3531. NJN FTJ1 IF JOB NOT AT PCP
  3532. LCN 2
  3533. RAM FTJD
  3534.  
  3535. * CLEAR INTERLOCK IN ORDER TO ISSUE THE *ROCM*.
  3536. * REQUEST ROLLOUT AND THEN RETURN THE RETRY ERROR CODE TO
  3537. * GIVE THE JOB TIME TO ROLL.
  3538.  
  3539. FTJ0 LDC 400000 CLEAR INTERLOCK
  3540. RJM IUT
  3541. LDN ZERL
  3542. CRD CM
  3543. LDC 4000+ROSR SELECT SCHEDULER ROLLOUT OPTION
  3544. STD CM+1
  3545. LDD CN+3 SET CONTROL POINT
  3546. * LDD CN+1 (PCP JOB)
  3547. FTJD EQU *-1
  3548. STD CM+2
  3549. MONITOR ROCM
  3550. LDK RTER RETURN RETRY ERROR CODE
  3551. LJM PERX CLEAR INTERLOCK AND DROP
  3552.  
  3553. * IF ROLLED JOB IS NOT IN *IOJS* NOR *DOJS* STATUS,
  3554. * THEN SEND A NULL *TSEM* REQUEST TO SET *VROT* COMPLETE
  3555. * AND SET *DOJS* JOB STATUS IN THE EJT.
  3556.  
  3557. FTJ1 LMK DOJS&PCJS
  3558. ZJN FTJ2 IF *DOJS* JOB STATUS
  3559. LMK IOJS&DOJS
  3560. ZJN FTJ2 IF *IOJS* JOB STATUS
  3561. AOM FTJA SET *DOJS* JOB STATUS
  3562. LDD CM+4
  3563. LPN 76
  3564. SBN SUJS*2
  3565. FTJ2 ZJP FTJ3 IF SUSPENDED
  3566. RJM CAA LOAD WORD 5 FROM PARAMETER BLOCK
  3567. ADN 5 GET THE TERMINAL NUMBER
  3568. CRD W5
  3569. LDK ZERL ISSUE *VASO* *TSEM* REQUEST
  3570. CRD CM
  3571. LDD TN
  3572. STD CM+4
  3573. LDK VASO
  3574. STD CM
  3575. LDD MA
  3576. CWD CM
  3577. FTJ2.1 LDK ZERL
  3578. CRD CM
  3579. MONITOR TSEM
  3580. LDD CM+1
  3581. ZJN FTJ3 IF *IAF* INACCESSIBLE OR ERROR
  3582. LMC 7777
  3583. NJN FTJ3 IF REQUEST COMPLETE
  3584. PAUSE ST
  3585. LDC 3600 *TSEM* QUEUE FULL - DELAY AND RETRY
  3586. STD T1
  3587. FTJ2.2 DELAY
  3588. SOD T1
  3589. ZJN FTJ2.1 IF TIME TO REISSUE REQUEST
  3590. UJN FTJ2.2 CONTINUE TO DELAY
  3591.  
  3592. * CLEAR FORCED ROLLOUT AND EXIT.
  3593.  
  3594. FTJ3 LDC 1*10000+FTJC CLEAR FORCED ROLLOUT
  3595. * LDC 2*10000+FTJC SET *DOJS* STATUS ALSO
  3596. FTJA EQU *-2
  3597. RJM IUT
  3598. LDD W1+4 MUST CLEAR INTERLOCK BEFORE DROPPING
  3599. STM PERB
  3600. LDN 0 INDICATE NO ERRORS
  3601. LJM PERX CLEAR INTERLOCK AND DROP
  3602.  
  3603. FTJB VFD 1/0,5/SCLE,6/2,6/52D,42/2 SET ROLLOUT, CLEAR ROLLIN
  3604. FTJC VFD 1/0,5/SCLE,6/1,6/53D,42/0 CLEAR FORCED ROLLOUT
  3605. VFD 1/0,5/JSNE,6/5,6/1,42/DOJS SET *DOJS* JOB STATUS
  3606. SUB SPACE 4,10
  3607. ** SUB - SET USER BREAK IN EJT ENTRY.
  3608. *
  3609. * ENTRY (W1+3) = USER BREAK ERROR FLAG.
  3610. * (W1+4) = EJT ORDINAL.
  3611. *
  3612. * CALLS IUT.
  3613.  
  3614.  
  3615. SUB BSS 0 ENTRY
  3616.  
  3617. * WHEN SETTING A USER BREAK ERROR FLAG ON A JOB RECENTLY
  3618. * RECOVERED, THE JOB STATUS COULD BE *SUJS*. IF SO, CHANGE
  3619. * THE STATUS TO *DOJS* SO THAT THE JOB CAN BE ENABLED TO
  3620. * PROCESS THE ERROR FLAG.
  3621.  
  3622. SFA EJT,W1+4 CHECK FOR *SUJS* STATUS
  3623. ADK JSNE
  3624. CRD CM
  3625. LDD CM+4
  3626. LPN 76
  3627. SBN SUJS*2
  3628. NJN SUB1 IF NOT *SUJS* STATUS
  3629. AOM SUBA SET *DOJS* STATUS
  3630. SUB1 LDD W1+3
  3631. STM SUBB+4
  3632. LDC 1*10000+SUBB SET USER BREAK ERROR FLAG
  3633. * LDC 2*10000+SUBB SET *DOJS* STATUS ALSO
  3634. SUBA EQU *-2
  3635. RJM IUT ISSUE *UTEM*
  3636. LJM PERX DROP
  3637.  
  3638. SUBB VFD 1/0,5/PRFE,6/12D,6/36D,42/0 SET USER BREAK ERROR FLAG
  3639. VFD 1/0,5/JSNE,6/5,6/1,42/DOJS SET *DOJS* JOB STATUS
  3640. TITLE EJT SYSTEM REQUEST SUBROUTINES.
  3641. TITLE USER BREAK SUBROUTINES.
  3642. IUT SPACE 4,15
  3643. ** IUT - ISSUE *UTEM* MONITOR FUNCTION.
  3644. *
  3645. * ENTRY (A) = 1/I, 2/, 3/C, 12/P
  3646. * I = 0 IF INTERLOCK SHOULD BE SET.
  3647. * = 1 IF INTERLOCK SHOULD BE CLEARED.
  3648. * C = NUMBER OF *UTEM* PARAMETER WORDS.
  3649. * = 0 IF INTERLOCK REQUEST.
  3650. * P = PARAMETER LIST ADDRESS.
  3651. * (W1+4) = EJT ORDINAL.
  3652. *
  3653. * EXIT (A) = 0 IF *UTEM* FUNCTION WAS SUCCESSFUL.
  3654. *
  3655. * USES CM - CM+4.
  3656. *
  3657. * MACROS MONITOR.
  3658.  
  3659.  
  3660. IUT SUBR ENTRY/EXIT
  3661. STM IUTA PARAMETER LIST ADDRESS
  3662. SHN -14
  3663. STD CM+1
  3664. LPN 7 NUMBER OF PARAMETER WORDS
  3665. ZJN IUT1 IF NO PARAMETER WORDS
  3666. STD CM+2
  3667. LDD MA WRITE PARAMETERS TO MESSAGE BUFFER
  3668. CWM **,CM+2
  3669. IUTA EQU *-1
  3670. LDN 0
  3671. IUT1 STD CM+2
  3672. SFA EJT,W1+4 SET UP EJT ADDRESS
  3673. STD CM+4
  3674. SHN -14
  3675. STD CM+3
  3676. MONITOR UTEM
  3677. LDD CM+1
  3678. UJN IUTX RETURN
  3679. SPACE 4,10
  3680. OVERFLOW E1MA
  3681. OVERLAY (PROCESS CLOCK UPDATE.),E1MA
  3682. PCU SPACE 4,10
  3683. *** *PCU* - PROCESS CLOCK UPDATE.
  3684. *
  3685. * *PCU* WILL DELAY INTERNALLY UNTIL *PDTL* INDICATES THAT A
  3686. * MINUTE ROLLOVER OCCURS (DUE TO THE HARDWARE CHARACTERISTICS
  3687. * OF THE WALL CLOCK CHIP HARDWARE IN SOME CYBER 180 MODELS)
  3688. * AND THEN WRITE A REQUEST INTO THE *DFT/OS BUFFER* SO THAT
  3689. * *1MB* WILL BE CALLED BY *MTR* TO UPDATE THE WALL CLOCK CHIP
  3690. * (IF PRESENT) AND/OR CTI-MAINTAINED CLOCK VIA *DFT*.
  3691.  
  3692.  
  3693. PCU SUBR ENTRY/EXIT
  3694. RJM PRS PRESET PROGRAM
  3695. RJM WDC WAIT FOR DEADSTART COMPLETE
  3696. RJM WIB WAIT FOR INACTIVE NOS REQUEST AREA
  3697. RJM WMR WAIT FOR MINUTE ROLLOVER
  3698. RJM FDR FORMAT *DFT* REQUEST ENTRY
  3699. RJM CRF CLEAR CTI CLOCK UPDATE ACTIVE FLAG
  3700. UJN PCUX RETURN
  3701. TITLE SUBROUTINES.
  3702. CRF SPACE 4,10
  3703. ** CRF - CLEAR CTI CLOCK UPDATE ACTIVE FLAG.
  3704. *
  3705. * EXIT CTI CLOCK UPDATE ACTIVE FLAG CLEARED IN CMR.
  3706. *
  3707. * USES CM - CM+4.
  3708. *
  3709. * MACROS MONITOR.
  3710.  
  3711.  
  3712. CRF SUBR ENTRY/EXIT
  3713. LDN ZERL SET UP *UADM* CALL
  3714. CRD CM
  3715. AOD CM+1 SET OPTION COUNT
  3716. STD CM+2 SET *NODROP* FLAG
  3717. LDD MA WRITE *UADM* PARAMETERS
  3718. CWM CRFA,ON
  3719. MONITOR UADM CLEAR CTI CLOCK UPDATE ACTIVE FLAG
  3720. UJN CRFX RETURN
  3721.  
  3722.  
  3723. * *UADM* PARAMETERS TO CLEAR CTI CLOCK UPDATE ACTIVE FLAG.
  3724.  
  3725. CRFA VFD 12/LDOS,12/INWL,12/3*100+1,24/0
  3726. FDR SPACE 4,10
  3727. ** FDR - FORMAT *DFT* REQUEST.
  3728. *
  3729. * EXIT FORMATTED REQUEST WRITTEN TO NOS REQUEST AREA.
  3730. *
  3731. * USES T1, CM - CM+4, CN - CN+4.
  3732. *
  3733. * CALLS PDT, SDA.
  3734. *
  3735. * MACROS DELAY, MONITOR.
  3736.  
  3737.  
  3738. FDR SUBR ENTRY/EXIT
  3739.  
  3740. * OBTAIN INTERLOCK ON NOS REQUEST AREA.
  3741.  
  3742. FDR1 RJM SDA SET ADDRESS OF NOS REQUEST HEADER
  3743. STD CM+4 SAVE ADDRESS FOR *UTEM*
  3744. SHN -14
  3745. STD CM+3
  3746. LDN 2 SET NUMBER OF REQUESTS
  3747. STD CM+1
  3748. LDD MA WRITE REQUESTS TO MESSAGE BUFFER
  3749. CWM FDRB,CM+1
  3750. MONITOR UTEM ATTEMPT TO GET INTERLOCK
  3751. LDD CM+1 CHECK STATUS
  3752. ZJN FDR2 IF INTERLOCK OBTAINED
  3753. DELAY
  3754. UJN FDR1 RETRY INTERLOCK ATTEMPT
  3755.  
  3756. * FORMAT REQUEST.
  3757.  
  3758. FDR2 LDN /DFT/RQDT SET TASKID FOR CLOCK UPDATE
  3759. STD T1
  3760. RJM PDT PACK DATE AND TIME
  3761. LDN ACPL CHECK CPU-0 *OFF* STATUS
  3762. CRD CM
  3763. LDD CM
  3764. SHN 21-13
  3765. PJN FDR3 IF CPU-0 *ON*
  3766. AOM FDRA CHANGE TO READ *FRC* FOR CPU-1
  3767. FDR3 LDC CMTP
  3768. CRD CM
  3769. LDD CM+3 SET FWA OF *CPUMTR*
  3770. SHN 14
  3771. LMD CM+4
  3772. FDRA ADN CPBT READ *FRC* FOR CPU-0
  3773. * ADN CPBT+1 (CPU-0 *OFF*)
  3774. CRD CM
  3775.  
  3776. * THE FOLLOWING CODE ASSUMES THERE IS ONLY ONE REQUEST BUFFER
  3777. * WHICH IMMEDIATELY FOLLOWS THE REQUEST HEADER.
  3778.  
  3779. RJM SDA SET ADDRESS OF NOS REQUEST HEADER
  3780. ADN 1
  3781. CWD T1 WRITE REQUEST TO BUFFER
  3782. ADN 1
  3783. CWD CM
  3784. SBN 2 READ NOS REQUEST HEADER
  3785. CRD CN
  3786. LDN /DFT/STRY SET STATUS = *READY*
  3787. STD CN+4
  3788. RJM SDA SET ADDRESS OF NOS REQUEST HEADER
  3789. CWD CN
  3790. LJM FDRX RETURN
  3791.  
  3792.  
  3793. * *UTEM* REQUEST PARAMETERS.
  3794.  
  3795. FDRB VFD 1/1,5/0,6/12D,6/0,42//DFT/STIN VERIFY INACTIVE
  3796. VFD 1/0,5/0,6/12D,6/0,42//DFT/STIK SET INTERLOCK
  3797. PDT SPACE 4,10
  3798. ** PDT - PACK DATE AND TIME.
  3799. *
  3800. * EXIT (T1+1 - T1+4) = PACKED DATE AND TIME IN *DFT* FORMAT.
  3801. *
  3802. * USES CM - CM+4.
  3803.  
  3804.  
  3805. PDT SUBR ENTRY/EXIT
  3806. LDN DTEL READ DISPLAY DATE
  3807. CRD CM
  3808. LDD CM PROCESS YEAR FIELD
  3809. LPN 77
  3810. SBN 1R0
  3811. SHN 10
  3812. STD T1+1
  3813. LDD CM+1
  3814. SHN -6
  3815. SBN 1R0
  3816. SHN 4
  3817. RAD T1+1
  3818. LDD CM+2 PROCESS MONTH FIELD
  3819. SHN -6
  3820. SBN 1R0
  3821. RAD T1+1
  3822. LDD CM+2
  3823. LPN 77
  3824. SBN 1R0
  3825. SHN 10
  3826. STD T1+2
  3827. LDD CM+3 PROCESS DAY FIELD
  3828. LPN 77
  3829. SBN 1R0
  3830. SHN 4
  3831. RAD T1+2
  3832. LDD CM+4
  3833. SHN -6
  3834. SBN 1R0
  3835. RAD T1+2
  3836. LDN TIML READ DISPLAY TIME
  3837. CRD CM
  3838. LDD CM PROCESS HOUR FIELD
  3839. LPN 77
  3840. SBN 1R0
  3841. SHN 10
  3842. STD T1+3
  3843. LDD CM+1
  3844. SHN -6
  3845. SBN 1R0
  3846. SHN 4
  3847. RAD T1+3
  3848. LDD CM+2 PROCESS MINUTES FIELD
  3849. SHN -6
  3850. SBN 1R0
  3851. RAD T1+3
  3852. LDD CM+2
  3853. LPN 77
  3854. SBN 1R0
  3855. SHN 10
  3856. STD T1+4
  3857. * LDN 0 PROCESS SECONDS FIELD
  3858. * RAD T1+4
  3859. LJM PDTX RETURN
  3860. SDA SPACE 4,10
  3861. ** SDA - SET NOS REQUEST HEADER ADDRESS.
  3862. *
  3863. * EXIT (A) = ADDRESS OF NOS REQUEST HEADER.
  3864.  
  3865.  
  3866. SDA SUBR ENTRY/EXIT
  3867. SDAA LDC ** (ADDRESS OF NOS REQUEST HEADER)
  3868. UJN SDAX RETURN
  3869. WDC SPACE 4,10
  3870. ** WDC - WAIT FOR DEADSTART COMPLETE.
  3871. *
  3872. * EXIT DEADSTART COMPLETED.
  3873. *
  3874. * USES CM - CM+4.
  3875. *
  3876. * MACROS DELAY.
  3877.  
  3878.  
  3879. WDC SUBR ENTRY/EXIT
  3880. WDC1 LDK INWL READ INTERLOCK WORD
  3881. CRD CM
  3882. LDD CM+3
  3883. SHN 21-3
  3884. PJN WDCX IF DEADSTART SEQUENCING COMPLETE
  3885. DELAY 1*10 DELAY FOR ONE MILLISECOND
  3886. UJN WDC1 RECHECK DEADSTART IN PROGRESS
  3887. WIB SPACE 4,10
  3888. ** WIB - WAIT FOR INACTIVE NOS REQUEST AREA.
  3889. *
  3890. * THIS ROUTINE IS NEEDED TO AVOID A LARGE TIME ERROR WHEN
  3891. * *1MA* IS CALLED DURING DEADSTART, SINCE THE REQUEST BUFFER
  3892. * WILL INITIALLY CONTAIN THE *SET*-SUPPLIED ERROR THRESHOLDS.
  3893. *
  3894. * CALLS SDA.
  3895. *
  3896. * USES CM - CM+4.
  3897. *
  3898. * MACROS DELAY.
  3899.  
  3900.  
  3901. WIB SUBR ENTRY/EXIT
  3902. WIB1 RJM SDA READ NOS REQUEST HEADER
  3903. CRD CM
  3904. LDD CM+4
  3905. ZJN WIBX IF NO REQUEST PRESENT
  3906. DELAY
  3907. UJN WIB1 LOOP TILL REQUEST CLEARS
  3908. WMR SPACE 4,10
  3909. ** WMR - WAIT FOR MINUTE ROLLOVER.
  3910. *
  3911. * EXIT MINUTE ROLLOVER HAS JUST OCCURRED.
  3912. *
  3913. * USES CM - CM+4.
  3914. *
  3915. * MACROS DELAY.
  3916.  
  3917.  
  3918. WMR SUBR ENTRY/EXIT
  3919. WMR1 LDN PDTL READ PACKED DATE AND TIME
  3920. CRD CM
  3921. LDD CM+4 GET SECONDS
  3922. LPN 77
  3923. ZJN WMRX IF MINUTE JUST ROLLED OVER
  3924. DELAY 1*10 DELAY FOR ONE MILLISECOND
  3925. UJN WMR1 RECHECK TIME
  3926. TITLE PRESET PROGRAM.
  3927. PRS SPACE 4,10
  3928. ** PRS - PRESET PROGRAM.
  3929. *
  3930. * EXIT (SDAA) = ADDRESS OF NOS REQUEST HEADER.
  3931.  
  3932.  
  3933. PRS SUBR ENTRY/EXIT
  3934. LDN EIBP LOCATE DFT/OS BUFFER
  3935. CRD CM
  3936. LDD CM+3
  3937. SHN 14
  3938. LMD CM+4
  3939. ADN DSCM+3
  3940. CRD CM
  3941. LDD CM+2 READ *DFT* CONTROL WORD
  3942. SHN 14
  3943. LMD CM+3
  3944. SHN -4
  3945. SHN 6
  3946. LMD CM
  3947. ADN /DFT/DFRQ READ NOS REQUEST AREA POINTER
  3948. CRD CM
  3949. LDD CM+2 SET ADDRESS OF NOS REQUEST HEADER
  3950. SHN 14
  3951. LMD CM+3
  3952. SHN -4
  3953. SHN 6
  3954. LMD CM
  3955. STM SDAA+1 SAVE ADDRESS
  3956. SHN -14
  3957. RAM SDAA
  3958. UJN PRSX RETURN
  3959.  
  3960. OVERFLOW E1MA
  3961. OVERLAY (LOG SOFTWARE ERROR.),E1MA
  3962. SPACE 4,10
  3963. **** *2MG* - LOG SOFTWARE ERROR.
  3964. *
  3965. * *2MG* LOGS A SOFTWARE ERROR. AN ERROR LOG MESSAGE IS
  3966. * ISSUED INDICATING THE NAME OF THE PP PROGRAM AND
  3967. * THE ADDRESS WITHIN THE PP PROGRAM WHERE THE ERROR
  3968. * WAS DETECTED. AN OPERATOR ERROR LOG EVENT IS ISSUED
  3969. * TO ALERT THE OPERATOR THAT THE ERROR LOG MESSAGE WAS ISSUED.
  3970. * A BML MESSAGE IS ALSO ISSUED.
  3971. LCE SPACE 4,10
  3972. *** LCE - LOG SOFTWARE ERROR.
  3973. *
  3974. * ENTRY
  3975. *T IR 18/ *1MA*, 1/, 5/CP, 12/7, 24/ADDR
  3976. * CP CONTROL POINT NUMBER.
  3977. * ADDR ABSOLUTE ADDRESS OF ARGUMENTS.
  3978. *
  3979. *T ADDR 60/IL
  3980. *T,ADDR+1 6/, 6/AF, 12/PA, 24/JSN, 12/SC
  3981. *T,ADDR+2 60/IR
  3982. *T,ADDR+3 60/OR
  3983. *T,ADDR+4 60/MB
  3984. * IL INTERLOCK, SET BY *CPUMTR*, CLEARED BY *1MA*.
  3985. * AF ABORT FLAG.
  3986. * 0 - NO USER JOB IMPACT.
  3987. * 1 - JOB STEP ABORTED.
  3988. * 2 - JOB ABORTED.
  3989. * 3 - PP HUNG.
  3990. * PA ADDRESS IN PP PROGRAM WHERE ERROR DETECTED.
  3991. * JSN JSN OF JOB PP ASSIGNED TO OR ZERO.
  3992. * SC JOB SERVICE CLASS.(ONE DISPLAY CHARACTER SERVICE CODE)
  3993. * IR INPUT REGISTER OF PP THAT DETECTED ERROR.
  3994. * OR OUTPUT REGISTER OF PP THAT DETECTED ERROR.
  3995. * MB FIRST WORD OF MESSAGE BUFFER OF PP THAT
  3996. * DETECTED ERROR.
  3997. *
  3998. * USES CM - CM+4, CN - CN+4.
  3999. *
  4000. * CALLS C2D, DFM.
  4001. *
  4002. * MACROS MONITOR.
  4003.  
  4004.  
  4005. LCE SUBR ENTRY/EXIT
  4006. LDN ZERL
  4007. CRD CM
  4008. LDD IR+3 GET ADDRESS OF ARGUMENTS
  4009. SHN 14
  4010. LMD IR+4
  4011. ADN 1
  4012. CRD CN GET ARGUMENTS
  4013. CRM LCEB+5,ON
  4014. CRM LCEB+2*5,TR
  4015. SBN 5
  4016. CWD CM CLEAR BUFFER INTERLOCK
  4017.  
  4018. * FORM *ERRLOG* MESSAGE.
  4019.  
  4020. LDM LCEB+2*5+1 STORE PP PROGRAM NAME
  4021. SCN 77
  4022. SHN 6
  4023. ADM LCEB+2*5
  4024. SHN 6
  4025. STM LCEA+1*5+1
  4026. SHN -14
  4027. LMC 5500
  4028. STM LCEA+5
  4029. LDD CN+1 STORE P ADDRESS
  4030. SHN -6
  4031. RJM C2D CONVERT TO DISPLAY CODE
  4032. STM LCEA+1*5+3
  4033. LDD CN+1
  4034. RJM C2D CONVERT TO DISPLAY CODE
  4035. STM LCEA+1*5+4
  4036. LDD CN+2
  4037. ZJN LCE1 IF NO JSN SUPPLIED
  4038. STM LCEA STORE JSN IN ERROR LOG MESSAGE
  4039. LDD CN+3
  4040. STM LCEA+1
  4041. LDD CN+4 STORE SERVICE CLASS
  4042. STM LCEA+4
  4043. LCE1 LDC LCEA+EJNN
  4044. RJM DFM ISSUE DAYFILE MESSAGE TO ERROR LOG
  4045. * LDN 0 ISSUE ERROR LOG EVENT
  4046. STD CM+1
  4047. STD CM+3
  4048. LDN ELAE
  4049. STD CM+4
  4050. MONITOR EATM
  4051. LDN LCEBL SET LENGTH OF BML MESSAGE
  4052. STD CM+1
  4053. LDC LCEB+BMLN
  4054. RJM DFM ISSUE MESSAGE TO BML
  4055. LJM LCEX RETURN
  4056.  
  4057. LCEA VFD 24/4L"SJSN",24/-0,12/SYSC
  4058. DATA C* PPN P0000 SYSTEM ERROR.*
  4059.  
  4060. LCEB CON /COMSDFS/SM0411 BML MESSAGE BUFFER
  4061. CON /COMSDFS/SS0100
  4062. CON 0,0,0
  4063. BSS 5 ARGUMENTS
  4064. BSS 5 *IR* OF PP THAT DETECTED ERROR
  4065. BSS 5 *OR* OF PP THAT DETECTED ERROR
  4066. BSS 5 FIRST WORD OF MESSAGE BUFFER
  4067. LCEBL EQU *-LCEB LENGTH OF BML MESSAGE
  4068. SPACE 4,10
  4069. ** COMMON DECKS.
  4070.  
  4071.  
  4072.  
  4073. *CALL COMPC2D
  4074.  
  4075. SPACE 4,15
  4076. OVERLAY (CPP REQUEST PROCESSORS.),E1MA
  4077. SPACE 4,10
  4078. **** *2MH* - CPP REQUEST PROCESSORS.
  4079. *
  4080. * *2MH* PROCESSES THE *1MA* FUNCTIONS FOR CONCURRENT PP-S.
  4081. *
  4082. * ENTRY
  4083. *T IR 18/ *1MA*,1/,5/ CP,12/ FUNC,12/,12/ IA
  4084. * CP SYSTEM CONTROL POINT NUMBER.
  4085. * FUNC FUNCTION CODE.
  4086. * 10 = LOAD CPP RESIDENT.
  4087. * 11 = LOAD OVERLAY FOR CPP.
  4088. * 12 = IDLE CPP.
  4089. * IA CPP INPUT REGISTER ADDRESS.
  4090. DIRECT SPACE 4,10
  4091. ** DIRECT CELLS.
  4092.  
  4093.  
  4094. CC EQU FN CPP-S CONTROL POINT ADDRESS
  4095. DA EQU FN+1 TEMPORARY USED BY *LPR*
  4096. DB EQU FN+2 TEMPORARY USED BY *LPR*
  4097. EC EQU FN+3 C180 IOU CONNECT CODE
  4098. NC EQU FN+4 NUMBER OF CPP-S
  4099. NP EQU FS NUMBER OF NPP-S
  4100. PC EQU FS+1 FWA OF PP COMMUNICATION AREA FOR CPP 0
  4101. PN EQU FS+2 THE NUMBER OF THE CPP
  4102. PP EQU FS+3 FWA OF PP COMMUNICATION AREA
  4103. RN EQU FS+4 C180 REGISTER NUMBER
  4104. COMMON SPACE 4,10
  4105. * COMMON DECKS.
  4106.  
  4107.  
  4108. QUAL$ EQU 1 DO NOT QUALIFY COMMON DECKS
  4109.  
  4110. *CALL COMPIOU
  4111. *CALL COMPMRM
  4112. *CALL COMSDFS
  4113. *CALL COMSIOU
  4114. CPP SPACE 4,30
  4115. ** CPP - CONCURRENT PP PROCESSOR.
  4116. *
  4117. * *CPP* VERIFIES THE REQUEST, INITIALIZES MEMORY CELLS, AND
  4118. * CALLS THE APPROPRIATE PROCESSOR.
  4119. *
  4120. * ENTRY (IR - IR+4) = REQUEST.
  4121. * (CN - CN+4) = OVERLAY LOAD PARAMETERS.
  4122. *
  4123. * EXIT - TO CORRECT CPP SUBPROCESSOR.
  4124. * (CC) = CONTROL POINT AREA ADDRESS OF CALLER.
  4125. * (EC) = IOU CONNECT CODE.
  4126. * (NC) = NUMBER OF CIO PP-S.
  4127. * (NP) = NUMBER OF NIO PP-S.
  4128. * (PC) = PP COMMUNICATION AREA ADDRESS FOR FIRST CIO PP.
  4129. * (PN) = CIO PP NUMBER.
  4130. * (PP) = PP COMMUNICATION AREA ADDRESS FOR FIRST NIO PP.
  4131. * (CPPA) = ENVIRONMENTAL CONTROL REGISTER NUMBER.
  4132. * (CPPB) = STATUS REGISTER NUMBER.
  4133. * (CPPC) = BIASED CIO PP NUMBER.
  4134. * (CPPD) = IOU MODEL NUMBER.
  4135. *
  4136. * ERROR TO *CHG* TO HANG THE PP IF INCORRECT CPP FIELD.
  4137. *
  4138. * USES CC, EC, NC, NP, PC, PN, PP, CM - CM+4, CN - CN+4.
  4139. *
  4140. * CALLS AIC, CHG, DPL, SPB.
  4141.  
  4142.  
  4143. CPP SUBR ENTRY/EXIT
  4144. LDD MA SAVE LOAD PARAMETERS
  4145. CWD CN
  4146. LDN PPCP GET PP COMMUNICATION AREA ADDRESS
  4147. CRD CM
  4148. ADK EABL+IOEI-PPCP GET IOU CONNECT CODE
  4149. CRD CN
  4150. LDD CM+4
  4151. STD PP SET PP COMMUNICATION AREA ADDRESS
  4152. LDD CN+3
  4153. STD EC SET IOU CONNECT CODE
  4154. LDN PPUL GET NUMBER OF PP-S AND CPP-S
  4155. CRD CM
  4156. LDD CM+3 VALIDATE THAT CPP-S ARE PRESENT
  4157. LPN 77
  4158. ZJN CPP1 IF NO CPP-S
  4159. STD NC SET NUMBER OF CPPS
  4160. LDD CM+2
  4161. STD NP
  4162. SHN 3
  4163. ADD PP
  4164. STD PC SET ADDRESS OF FIRST CPP
  4165. LDD IR+4
  4166. CRD CM READ CPP-S INPUT REGISTER
  4167. SBD PC
  4168. MJN CPP1 IF NOT A CPP INPUT REGISTER ADDRESS
  4169. SHN -3
  4170. STD PN SET THE CPP NUMBER
  4171. SBD NC
  4172. MJN CPP1.1 IF A VALID CPP
  4173. CPP1 LJM CPP3 CONDITIONALLY HANG PP
  4174.  
  4175. CPP1.1 LDD CM+1 SET CONTROL POINT ADDRESS
  4176. LPN 37
  4177. SHN 7
  4178. STD CC
  4179. LDK ECCR SET ENVIRONMENTAL CONTROL REGISTER NUMBER
  4180. STM CPPA
  4181. ADK SRCR-ECCR SET STATUS REGISTER NUMBER
  4182. STM CPPB
  4183. LDD PN SET CIO PP NUMBER
  4184. STM CPPC
  4185. LDD CN+1
  4186. SCN 77
  4187. SHN 6
  4188. LMD CN
  4189. SHN 6
  4190. CRD CN GET IOU MODEL NUMBER
  4191. LDD CN+2
  4192. SHN -4
  4193. STM CPPD
  4194. LMC 0#42
  4195. NJN CPP1.2 IF NOT MODEL 42 IOU
  4196. LDK DEMR SET ENVIRONMENTAL CONTROL REGISTER NUMBER
  4197. STM CPPA
  4198. ADK ISTR-DEMR SET STATUS REGISTER NUMBER
  4199. STM CPPB
  4200. LDN 30 BIAS CIO PP NUMBER
  4201. RAM CPPC
  4202.  
  4203. * CALCULATE CPP SUBFUNCTION AND PROCESS IT.
  4204.  
  4205. CPP1.2 LDD IR+2
  4206. SBN 11B
  4207. PJN CPP2 IF NOT DEADSTART A CPP AND LOAD *PPR*
  4208. LDD PN PP NUMBER
  4209. LMC 10000
  4210. RJM SPB SET LOWER PP BIT
  4211. RJM DPL DEADSTART PP AND LOAD *PPR*
  4212. UJN CPP4 RETURN
  4213.  
  4214. CPP2 NJN CPP5 IF NOT LOAD CPP OVERLAY REQUEST
  4215. RJM LOV LOAD CPP OVERLAY
  4216. UJN CPP4 RETURN
  4217.  
  4218. CPP3 RJM CHG CONDITIONALLY HANG THE PP
  4219. CPP4 LJM CPPX RETURN
  4220.  
  4221. CPP5 RJM AIC ATTEMPT TO IDLE THE CPP
  4222. NJN CPP3 IF PP NOT IDLED
  4223. LDN ZERL CLEAR INPUT AND OUTPUT REGISTERS
  4224. CRD CN
  4225. LDD IR+4
  4226. CWM CN,ON
  4227. CWD CN
  4228. UJN CPP4 RETURN
  4229.  
  4230.  
  4231. CPPA CON 0 ENVIRONMENTAL CONTROL REGISTER NUMBER
  4232. CPPB CON 0 STATUS REGISTER NUMBER
  4233. CPPC CON 0 BIASED CIO PP NUMBER
  4234. CPPD CON 0 IOU MODEL NUMBER
  4235. DPL SPACE 4,20
  4236. ** DPL - DEADSTART PP AND LOAD *PPR*.
  4237. *
  4238. * ENTRY (IR+4) = ADDRESS OF CPP COMMUNICATION AREA.
  4239. * (CPPA) = ENVIRONMENTAL CONTROL REGISTER NUMBER.
  4240. * (CPPC) = BIASED PP NUMBER.
  4241. * (EC) = ELEMENT CONNECT CODE.
  4242. * (PP) = PP COMMUNICATION AREA ADDRESS.
  4243. * *PPR* AT PBUF.
  4244. *
  4245. * EXIT IF UNABLE TO COMPLETE DEADSTART/LOAD, THE CPP IS IDLED
  4246. * AND ITS INPUT REGISTER SET TO ***. ALSO A BML MESSAGE
  4247. * ISSUED WITH THE CPP NUMBER AND THE REASON FOR THE
  4248. * FAILURE.
  4249. *
  4250. * USES DA, RN, T6, CM - CM+4, CN - CN+4.
  4251. *
  4252. * CALLS AIC, AMA, IEM, NEC, RMA, SCU.
  4253. *
  4254. * MACROS DELAY, LOCKMR, PAUSE, READMR, WRITMR.
  4255.  
  4256.  
  4257. DPL6 RJM RMA RELEASE MULTIPLEXER ACCESS
  4258. LDN 0 CLEAR CHANNEL ASSIGNED FLAG
  4259. STM CHFL
  4260.  
  4261. DPL SUBR ENTRY/EXIT
  4262. LDN 0
  4263. STD DA INITIALIZE DEADSTART/LOAD ATTEMPT COUNT
  4264. LDD IR+4
  4265. STM PBUF+IA SET UP *IA*, *OA*, *MA*, *CP* FOR THIS PP
  4266. ADN 1
  4267. STM PBUF+OA
  4268. ADN 1
  4269. STM PBUF+MA
  4270. LDD CC SET CONTROL POINT ADDRESS
  4271. STM PBUF+CP
  4272. DPL1 RJM AMA ACCESS MULTIPLEXER CHANNEL
  4273.  
  4274. * DEADSTART PP.
  4275.  
  4276. LOCKMR SET SET LONG TERM INTERLOCK
  4277. LDM CPPA SET EC REGISTER NUMBER
  4278. STD RN
  4279. READMR RBUF READ EC REGISTER
  4280. LDM RBUF+4 SET PP NUMBER
  4281. SCN 37
  4282. LMM CPPC
  4283. STM RBUF+4
  4284. LDM RBUF+5 SET CHANNEL NUMBER
  4285. SCN 37
  4286. LMN MX
  4287. STM RBUF+5
  4288. LDM RBUF+6 SET LOAD MODE BIT
  4289. SCN 37
  4290. LMN 20
  4291. STM RBUF+6
  4292. LDM RBUF+7 SET ENABLE BIT
  4293. SCN 40
  4294. LMN 40
  4295. STM RBUF+7
  4296. WRITMR RBUF WRITE EC REGISTER
  4297. LOCKMR CLEAR
  4298. RJM NEC NORMALIZE EC REGISTER
  4299.  
  4300. * LOAD *PPR*.
  4301.  
  4302. LDC MSFW+1 OUTPUT START ADDRESS
  4303. OAN MX+40
  4304. DELAY
  4305. LDN 1 *CPP NOT RESPONDING*
  4306. FJM DPL4,MX IF WORD NOT ACCEPTED ON CHANNEL
  4307.  
  4308. LDK .BLI-1 OUTPUT UP TO *.BLI* ENTRY POINT
  4309. OAM PBUF+1,MX
  4310.  
  4311. LDM PBUF+.BLI MAKE (*.BLI*) A LONG INSTRUCTION
  4312. LMC 1S15
  4313. OAN MX+40
  4314.  
  4315. LDK PBUFL-.BLI-1 OUTPUT THE REST OF *PPR*
  4316. OAM PBUF+.BLI+1,MX
  4317. DELAY
  4318. LDN 2 *CPP HUNG ON INPUT*
  4319. FJM DPL4,MX IF CHANNEL STILL FULL
  4320. LDN 3 *CHANNEL 15 PARITY ERROR*
  4321. SFM DPL4,MX IF PARITY ERRORS
  4322. DCN MX+40 DISCONNECT CHANNEL TO START PP
  4323.  
  4324. * WAIT FOR PP TO INITIALIZE.
  4325. *
  4326. * NOTE - THE DELAY MUST BE LONG ENOUGH TO ALLOW *PPR*
  4327. * PRESET TO COMPLETE.
  4328.  
  4329. LDD TH SET DELAY LOOP COUNT
  4330. STD T6
  4331. DPL2 PAUSE NE
  4332. DELAY
  4333. SOD T6
  4334. ZJN DPL3 IF TIME OUT
  4335. LDD IR+4 CHECK PP OUTPUT REGISTER
  4336. ADN 1
  4337. CRD CN
  4338. SOD CN
  4339. ZJN DPL2 IF *PLL* HAS NOT RUN
  4340. LJM DPL6 RETURN
  4341.  
  4342. * PROCESS DEADSTART ERROR CONDITIONS.
  4343.  
  4344. DPL3 LDN 4 *PPR PRESET TIMEOUT*
  4345. DPL4 STM DPLA+2,DA SAVE THE ERROR CODE
  4346. RJM AIC ATTEMPT TO IDLE THE CPP
  4347. RAD DA INHIBIT RETRY IF IDLE FAILED
  4348. RJM RMA RELEASE MULTIPLEXER ACCESS
  4349. AOD DA INCREMENT RETRY COUNT
  4350. SBN 10
  4351. MJP DPL1 IF DEADSTART IS TO BE RETRIED
  4352. NJN DPL5 IF IDLE FAILED
  4353. RJM SCU SET CPP UNAVAILABLE
  4354. DPL5 RJM IEM ISSUE ERROR MESSAGE
  4355. LJM DPLX RETURN
  4356. DPLA SPACE 4,15
  4357. ** DPLA - FAILURE CODE BUFFER.
  4358. *
  4359. * EACH TIME THAT A DEADSTART ATTEMPT FAILS, THE FAILURE CODE IS
  4360. * SAVED IN *DPLA*. IF THE RETRY COUNT IS EXCEEDED AND A BML
  4361. * MESSAGE IS WRITTEN, THE FAILURE CODES WILL BE INCLUDED IN THE
  4362. * MESSAGE. THE CODES HAVE THE FOLLOWING MEANINGS.
  4363. *
  4364. * 1 CPP NOT RESPONDING. IT IS NOT READING PP RESIDENT.
  4365. * 2 CPP HUNG ON INPUT. IT HAS NOT FINISHED READING.
  4366. * 3 CHANNEL 15 PARITY ERROR.
  4367. * 4 PPR PRESET TIMEOUT. PP RESIDENT IS HUNG IN PRESET.
  4368.  
  4369.  
  4370. DPLA BSSZ 2+10B FAILURE CODE BUFFER
  4371. AIC SPACE 4,10
  4372. ** AIC - ATTEMPT TO IDLE THE CPP.
  4373. *
  4374. * ENTRY (CPPC) = BIASED PP NUMBER.
  4375. *
  4376. * EXIT (A) = 0 IF PP IDLED.
  4377. * (A) .LT. 0 IF UNABLE TO IDLE PP.
  4378. *
  4379. * CALLS IPP.
  4380.  
  4381.  
  4382. AIC SUBR ENTRY/EXIT
  4383. LDN 6 IDLE AND K REGISTER BITS
  4384. RJM IPP IDLE PP
  4385. LDN 16 DUMP, IDLE AND K REGISTER BITS
  4386. RJM IPP IDLE PP WITH DUMP BIT SET
  4387. UJN AICX RETURN
  4388. IEM SPACE 4,10
  4389. ** IEM - ISSUE ERROR MESSAGE TO BML AND SYSTEM CONTROL POINT.
  4390. *
  4391. * ENTRY (PN) = CPP NUMBER.
  4392. *
  4393. * EXIT BML MESSAGE ISSUED WITH PP NUMBER.
  4394. *
  4395. * USES T1, CN - CN+4.
  4396. *
  4397. * CALLS C2D, IBM.
  4398.  
  4399.  
  4400. IEM SUBR ENTRY/EXIT
  4401. LDN 2 ENTER FAILURE CODES IN BML MESSAGE
  4402. STD T1
  4403. LDD MA
  4404. CWM DPLA,T1
  4405. SBN 2
  4406. CRM IBMA,T1
  4407. LDC /COMSDFS/HS0125 SET SYMPTOM CODE
  4408. STD T1
  4409. LDN ZERL CLEAR DATA WORD
  4410. CRD CN
  4411. LDD PN SET CPP NUMBER
  4412. STD CN+4
  4413. LDC /COMSDFS/HM0240 SET MESSAGE ID
  4414. RJM IBM ISSUE BML MESSAGE
  4415. LDD PN CONVERT CPP NUMBER TO DISPLAY CODE
  4416. RJM C2D
  4417. STM IEMA+11 STORE CPP NUMBER
  4418. LDN NCPL ISSUE MESSAGE TO SYSTEM CONTROL POINT
  4419. CRD CN
  4420. AOD CN+1
  4421. SHN 7
  4422. ADK MS2W
  4423. CWM IEMA,TR
  4424. UJP IEMX RETURN
  4425.  
  4426.  
  4427. IEMA DATA C* DEADSTART OF CPP XX FAILED*
  4428. IPP SPACE 4,20
  4429. ** IPP - IDLE PP.
  4430. *
  4431. * ENTRY (A) = BIT SETTING FOR CORRECT IDLE PROCESSING.
  4432. * (CPPA) = ENVIRONMENTAL CONTROL REGISTER NUMBER.
  4433. * (CPPB) = STATUS REGISTER NUMBER.
  4434. * (CPPC) = BIASED CPP NUMBER.
  4435. *
  4436. * EXIT (A) = 0 IF CPP IDLED.
  4437. * (A) .LT. 0 IF UNABLE TO IDLE CPP.
  4438. * BML MESSAGE ISSUED IF UNABLE TO IDLE.
  4439. *
  4440. * USES RN, T1, T4, CN - CN+4.
  4441. *
  4442. * CALLS IBM, NEC, SCU.
  4443. *
  4444. * MACROS DELAY, LOCKMR, MONITOR, PAUSE, READMR, WRITMR.
  4445.  
  4446.  
  4447. IPP SUBR ENTRY/EXIT
  4448. STD CN SAVE IDLE BIT SETTING
  4449. STD CN+1
  4450. LDN 10 INITIALIZE TIME OUT COUNT
  4451. STD T4
  4452. IPP1 LOCKMR SET GET LONG TERM INTERLOCK
  4453. LDM CPPA SET EC REGISTER NUMBER
  4454. STD RN
  4455. READMR RBUF READ EC REGISTER
  4456. LDM RBUF+4 SET PP NUMBER
  4457. SCN 37
  4458. LMM CPPC
  4459. STM RBUF+4
  4460. LDM RBUF+5 SET CHANNEL FOR DUMP
  4461. SCN 37
  4462. ADN 16 NON-EXISTANT CHANNEL NUMBER
  4463. STM RBUF+5
  4464. LDM RBUF+6 SET DUMP AND IDLE MODE BITS, K REGISTER
  4465. SCN 37
  4466. ADD CN IDLE BIT SETTING
  4467. STM RBUF+6
  4468. LDM RBUF+7 SET ENABLE BIT
  4469. SCN 40
  4470. ADN 40
  4471. STM RBUF+7
  4472. WRITMR RBUF WRITE EC REGISTER
  4473. LDM CPPB SET STATUS REGISTER NUMBER
  4474. STD RN
  4475. READMR IBUF READ INPUT STATUS REGISTER
  4476. LOCKMR CLEAR CLEAR LONG TERM INTERLOCK
  4477. LDM IBUF+4 CHECK IF PP IN IDLE MODE
  4478. LPN 3
  4479. SHN 10
  4480. ADM IBUF+5
  4481. SHN 10
  4482. ADM IBUF+6
  4483. LMC 107700
  4484. ZJN IPP2 IF PP IDLING
  4485. SOD T4
  4486. ZJN IPP3 IF TIME OUT
  4487. PAUSE NE
  4488. LDN 2 SET READ K REGISTER ONLY
  4489. STD CN
  4490. LJM IPP1 LOOP
  4491.  
  4492. * COMPLETE NORMALIZATION OF *EC* REGISTER.
  4493.  
  4494. IPP2 RJM NEC NORMALIZE EC REGISTER
  4495. LDN 0
  4496. UJN IPP4 RETURN
  4497.  
  4498. * PROCESS IDLING ERROR.
  4499.  
  4500. IPP3 RJM NEC NORMALIZE EC REGISTER
  4501. LDD CN+1
  4502. LPN 10
  4503. ZJN IPP4 IF NOT DUMP MODE
  4504. LDC /COMSDFS/HS0122 SET SYMPTOM CODE
  4505. STD T1
  4506. LDN ZERL CLEAR DATA WORD
  4507. CRD CN
  4508. LDD PN SET PP NUMBER
  4509. STD CN+4
  4510. LDC /COMSDFS/HM0240 SET MESSAGE ID
  4511. RJM IBM ISSUE BML MESSAGE
  4512. RJM SCU SET CPP UNAVAILABLE
  4513. LCN 1 SET ERROR FLAG
  4514. IPP4 LJM IPPX RETURN
  4515. LOV SPACE 4,30
  4516. ** LOV - LOAD CPP OVERLAY.
  4517. *
  4518. * OVERLAY IS PASSED TO THE CPP VIA THE CPP-S MESSAGE BUFFER.
  4519. * THE LOAD PARAMETERS INDICATE WHERE TO FIND THE OVERLAY.
  4520. *
  4521. *T MB 12/ , 12/ EQ, 12/ TK, 12/ SC, 12/ MBA
  4522. *
  4523. * EQ = EQUIPMENT TO LOAD FROM.
  4524. * TK = TRACK.
  4525. * SC = SECTOR.
  4526. * MBA = CPP MB+1 ADDRESS.
  4527. *
  4528. * BYTE 0 OF MBA IS THE CONTROL BYTE.
  4529. * 0 = 6DD READY FOR DATA.
  4530. * N = WORDS IN MB+2 - MB+5 TO COPY.
  4531. * 2000 = EOR.
  4532. * 4000 = ERROR ON OVERLAY READ.
  4533. *
  4534. * ENTRY (MB) = LOAD PARAMETERS.
  4535. *
  4536. * USES DA, PP, T1, CM - CM+4, T4 - T7.
  4537. *
  4538. * CALLS DFM, RNS.
  4539. *
  4540. * MACROS DELAY, ENDMS, SETMS.
  4541.  
  4542.  
  4543. LOV SUBR ENTRY/EXIT
  4544. LDD MA READ LOAD PARAMETERS
  4545. CRD T4
  4546. LDD CM SAVE CPP MESSAGE BUFFER ADDRESS
  4547. STD PP
  4548. LOV1 SETMS READSYS
  4549. LDC BFMS+2 SET DATA ADDRESS
  4550. STM LOVA
  4551. SBN 2
  4552. RJM RNS READ NEXT SECTOR
  4553. MJP LOV5 IF READ ERROR
  4554. STD DA SAVE THE WORD COUNT
  4555. ENDMS
  4556. LOV2 LDC 2000
  4557. STD T1
  4558. LDD DA
  4559. NJN LOV2.1 IF NOT END OF SECTOR
  4560. LDM BFMS+1
  4561. SBD HN
  4562. ZJN LOV1 IF FULL SECTOR OF DATA
  4563. LJM LOV6 SEND EOR RESPONSE TO THE CPP
  4564.  
  4565. LOV2.1 LDN 4
  4566. STD CM
  4567. LCN 4
  4568. RAD DA
  4569. PJN LOV3 IF FULL BLOCK TO COPY
  4570. RAD CM
  4571. LOV3 LDD PP COPY BLOCK TO CPP
  4572. ADN 1
  4573. CWM **,CM
  4574. LOVA EQU *-1
  4575. LDD PP
  4576. CWD CM
  4577. LDN 4*5 ADVANCE THE WRITE ADDRESS
  4578. RAM LOVA
  4579. LDD CM
  4580. SBN 4
  4581. MJN LOV6 IF NOT A FULL BLOCK
  4582. LOV4 DELAY WAIT FOR CPP READY
  4583. PAUSE NE
  4584. LDD PP
  4585. CRD CM
  4586. LDD CM
  4587. NJN LOV4 IF CPP NOT READY FOR NEXT BLOCK
  4588. LJM LOV2 COPY NEXT BLOCK
  4589.  
  4590. LOV5 LDC 4000 FLAG READ ERROR
  4591. STD T1
  4592. LOV6 DELAY WAIT FOR CPP READY
  4593. PAUSE NE
  4594. LDD PP
  4595. CRD CM
  4596. LDD CM
  4597. NJN LOV6 IF CPP NOT READY FOR NEXT BLOCK
  4598. LDD T1 SET RESPONSE
  4599. STD CM
  4600. LDD PP
  4601. CWD CM
  4602. LDD T1 CHECK FOR ERROR
  4603. SHN 21-13
  4604. PJN LOV7 IF NO ERRORS
  4605. LDD CP DISPLAY ERROR MESSAGE
  4606. ADK MS2W
  4607. CWM LOVB,TR
  4608. LDC LOVB
  4609. RJM DFM
  4610. LOV7 LJM LOVX RETURN
  4611.  
  4612.  
  4613. LOVB DATA C* CPP OVERLAY LOAD FAILED.*
  4614. SPB SPACE 4,15
  4615. ** SPB - SET PP BOUNDS BIT.
  4616. *
  4617. * ENTRY (A) = 6/BIT VALUE, 12/PP NUMBER.
  4618. * BIT VALUE = 1 TO SET LOWER PP.
  4619. * = 0 TO SET UPPER PP.
  4620. * (EC) = IOU CONNECT CODE.
  4621. *
  4622. * EXIT PP OS BOUNDS REGISTER SET FOR GIVEN PP.
  4623. *
  4624. * USES RN, T2, T7.
  4625. *
  4626. * MACROS LOCKMR, READMR, WRITMR.
  4627.  
  4628.  
  4629. SPB SUBR ENTRY/EXIT
  4630. STD T7 SAVE LOGICAL PP NUMBER
  4631. SHN -14
  4632. STM SPBC SAVE BOUNDS BIT VALUE
  4633. LDN 4 DETERMINE BARREL
  4634. SBD T7
  4635. SHN -21
  4636. STD T2
  4637. ZJN SPB1 IF IN LOWER 5 PP-S
  4638. LCN 5
  4639. RAD T7 SET PHYSICAL PP WITHIN THE BARREL
  4640. SPB1 LDC SHNI SET BIT SHIFT INSTRUCTION
  4641. ADD T7
  4642. STM SPBA
  4643. STM SPBD
  4644. LOCKMR SET
  4645. LDK OBCR SET OS BOUNDS REGISTER NUMBER
  4646. STD RN
  4647. LDM CPPD
  4648. LMK 0#42
  4649. NJN SPB2 IF NOT MODEL 42 IOU
  4650. LDK IOSB SET OS BOUNDS REGISTER NUMBER
  4651. STD RN
  4652. LDN 3 SET BYTE OFFSET
  4653. STD T2
  4654. SPB2 READMR RBUF READ CURRENT OS BOUNDS DATA
  4655. LDM RBUF,T2
  4656. STM SPBB
  4657. LCN 1
  4658. SPBA SHN **
  4659. LPC **
  4660. SPBB EQU *-1
  4661. STM RBUF,T2
  4662. LDC **
  4663. SPBC EQU *-1
  4664. SPBD SHN **
  4665. LMM RBUF,T2 ADD NEW BIT TO REGISTER DATA
  4666. STM RBUF,T2
  4667. WRITMR RBUF SET NEW OS BOUNDS REGISTER
  4668. LOCKMR CLEAR
  4669. LJM SPBX RETURN
  4670. AMA SPACE 4,10
  4671. ** AMA - ACQUIRE MULTIPLEXER ACCESS.
  4672. *
  4673. * EXIT MULTIPLEXER ACCESS OBTAINED.
  4674. *
  4675. * XREF COMSIOU.
  4676.  
  4677.  
  4678. AMA SUBR ENTRY/EXIT
  4679. AMA1 LOCKMR SET GET ACCESS TO MAINTENANCE CHANNEL
  4680. SCF AMA3,MX GET ACCESS TO TWO-PORT MULTIPLEXER
  4681. LOCKMR CLEAR
  4682. ACN MX+40
  4683. UJN AMAX RETURN
  4684.  
  4685. AMA3 LOCKMR CLEAR CLEAR MAINTENANCE CHANNEL INTERLOCK
  4686. LDN 7 BRIEF DELAY
  4687. SBN 1
  4688. PJN *-1 IF DELAY NOT COMPLETE
  4689. UJN AMA1 TRY TO RESERVE PORT AGAIN
  4690. RMA SPACE 4,10
  4691. ** RMA - RELEASE MULTIPLEXER ACCESS.
  4692. *
  4693.  
  4694.  
  4695. RMA SUBR ENTRY/EXIT
  4696. DCN MX+40
  4697. CCF *,MX RELEASE CHANNEL INTERLOCK
  4698. UJN RMAX RETURN
  4699. IBM SPACE 4,10
  4700. ** IBM - ISSUE BINARY MAINTENANCE LOG MESSAGE.
  4701. *
  4702. * ENTRY (A) = MESSAGE ID.
  4703. * (T1) = SYMPTOM CODE.
  4704. * (CN - CN+4) = DATA WORD.
  4705. *
  4706. * USES CM - CM+4.
  4707. *
  4708. * CALLS DFM.
  4709.  
  4710.  
  4711. IBM SUBR ENTRY/EXIT
  4712. STM IBMA SET MESSAGE ID
  4713. LDD T1 SET SYMPTOM CODE
  4714. STM IBMA+1
  4715. LDD MA MOVE DATA WORD TO BUFFER
  4716. CWD CN
  4717. CRM IBMB,ON
  4718. LDN ZERL
  4719. CRD CM
  4720. LDN IBML SET MESSAGE LENGTH
  4721. STD CM+1
  4722. LDC IBMA+BMLN ISSUE DAYFILE MESSAGE
  4723. RJM DFM
  4724. UJN IBMX RETURN
  4725.  
  4726.  
  4727. * MESSAGE BUFFER.
  4728.  
  4729. IBMA VFD 12/0,12/0,36/0 MESSAGE ID, SYMPTOM CODE
  4730. VFD 60/0 RESERVED
  4731. IBMB VFD 60/0 MESSAGE
  4732. IBML EQU *-IBMA
  4733. NEC SPACE 4,15
  4734. ** NEC - NORMALIZE EC REGISTER.
  4735. *
  4736. * ENTRY (CPPA) = EC REGISTER NUMBER.
  4737. *
  4738. * EXIT (RBUF - RBUF+7) = NORMALIZED EC REGISTER.
  4739. * NORMALIZED EC REGISTER REWRITTEN.
  4740. * BITS 35-39, 43-47, 51-55, 58 = 0.
  4741. * ALL OTHER BITS ARE UNCHANGED.
  4742. *
  4743. * USES RN.
  4744. *
  4745. * MACROS LOCKMR, READMR, WRITMR.
  4746.  
  4747.  
  4748. NEC SUBR ENTRY/EXIT
  4749. LOCKMR SET SET LONG TERM INTERLOCK
  4750. LDM CPPA SET EC REGISTER NUMBER
  4751. STD RN
  4752. READMR RBUF READ EC REGISTER
  4753. LDM RBUF+4 CLEAR 35-39 (PP NUMBER)
  4754. SCN 37
  4755. STM RBUF+4
  4756. LDM RBUF+5 CLEAR 43-47 (CHANNEL NUMBER)
  4757. SCN 37
  4758. STM RBUF+5
  4759. LDM RBUF+6 CLEAR BITS 51-55
  4760. SCN 37
  4761. STM RBUF+6
  4762. LDM RBUF+7 CLEAR BIT 58
  4763. SCN 40
  4764. STM RBUF+7
  4765. WRITMR RBUF UPDATE EC REGISTER
  4766. LOCKMR CLEAR CLEAR LONG TERM INTERLOCK
  4767. LJM NECX RETURN
  4768. SCU SPACE 4,10
  4769. ** SCU - SET CPP UNAVAILABLE.
  4770. *
  4771. * *SCU* SETS 3 ASTERISKS IN THE CPP-S INPUT REGISTER AND
  4772. * DECREMENTS THE NUMBER OF AVAILABLE CPPS IN *PPAL*.
  4773. *
  4774. * ENTRY (IR+4) = CPP-S INPUT REGISTER ADDRESS.
  4775. *
  4776. * USES CM - CM+4, CN - CN+4.
  4777. *
  4778. * MACROS MONITOR.
  4779.  
  4780.  
  4781. SCU SUBR ENTRY/EXIT
  4782. LDD IR+4 READ CPP-S INPUT REGISTER
  4783. CRD CM
  4784. LDD CM+1
  4785. SCN 77
  4786. SHN 6
  4787. LMD CM
  4788. LMC 3R***
  4789. ZJN SCUX IF ALREADY UNAVAILABLE
  4790. LDD IR+4 SET *** IN INPUT REGISTER
  4791. CWM SCUA,ON
  4792. LDD IR+2
  4793. SBN 12
  4794. NJN SCU1 IF IDLE CPP
  4795. LDN 1
  4796. STD CM+1 DECREMENT CPP-S AVAILABLE COUNT
  4797. STD CM+2 DO NOT DROP THE PP
  4798. LDD MA
  4799. CWM SCUB,CM+1
  4800. MONITOR UADM
  4801. LDD CM+1
  4802. ZJN SCU1 IF NO UNDERFLOW
  4803. RJM CHG CONDITIONALLY HANG
  4804.  
  4805. * DECREMENT THE NUMBER OF PP-S ASSIGNED TO THE CONTROL POINT.
  4806.  
  4807. SCU1 LDD IR+2
  4808. SBN 10
  4809. NJP SCUX IF NOT AN ASSIGN AND LOAD REQUEST
  4810. SCU2 LDD CC GET CPP-S CONTROL POINT ADDRESS
  4811. ZJN SCU3 IF NOT ASSIGNED
  4812. ADK STSW
  4813. STD CM+4
  4814. CRD CN GET THE NUMBER OF PP-S ASSIGNED
  4815. LDD CN
  4816. LPN 37
  4817. ZJN SCU3 IF NO PP-S ASSIGNED
  4818. STM SCUC+4 SET UP *UTEM* REQUEST
  4819. SBN 1
  4820. STM SCUC+1*5+4
  4821. LDN 2
  4822. STD CM+1
  4823. LDD MA
  4824. CWM SCUC,CM+1
  4825. MONITOR UTEM
  4826. LDD CM+1
  4827. NJN SCU2 IF REQUEST WAS REJECTED
  4828. SCU3 UJP SCUX RETURN
  4829.  
  4830.  
  4831. SCUA VFD 18/3R***,42/0 INPUT REGISTER OF UNUSABLE PP
  4832.  
  4833. * MESSAGE BUFFER STRUCTURE FOR *UADM* FORMAT.
  4834.  
  4835. SCUB CON LDOS SUBFUNCTION
  4836. CON PPAL LOW CORE WORD TO UPDATE
  4837. CON 12D*100+6 FIELD LOCATION AND SIZE
  4838. VFD 6/,18/1 DECREMENT VALUE
  4839.  
  4840. * MESSAGE BUFFER STRUCTURE FOR *UTEM*.
  4841.  
  4842. SCUC VFD 1/1,5/0,6/5,6/48D,42/** VERIFY NUMBER OF PP-S
  4843. VFD 1/0,5/0,6/5,6/48D,42/** REDUCE NUMBER OF PP-S
  4844. COMMON SPACE 4,10
  4845. * COMMON DECKS.
  4846.  
  4847.  
  4848. *CALL COMPC2D
  4849. *CALL COMPMRA
  4850. *CALL COMPRNS
  4851. SPACE 4,10
  4852. ** BUFFER DEFINITIONS.
  4853. *
  4854. * *PBUF* CONTAINS A COPY OF PP RESIDENT FOR A CPP.
  4855. *
  4856. * *RBUF* AND *IBUF* ARE USED TO READ AND CHECK THE ENVIRONMENT
  4857. * CONTROL REGISTER.
  4858.  
  4859.  
  4860. PBUF BSS 0 CPP RESIDENT BUFFER
  4861. CPP$ EQU 1 GENERATE CPP RESIDENT
  4862. LIST X,F
  4863. *CALL COMPPPR
  4864. LIST *
  4865. PBUFL EQU *-PBUF
  4866.  
  4867. RBUF EQU * *EC* REGISTER BUFFER
  4868. IBUF EQU RBUF+12B INPUT STATUS REGISTER BUFFER
  4869.  
  4870. ERRNG EPFW-IBUF-12B OVERFLOW INTO EPFW
  4871.  
  4872.  
  4873. OVERFLOW E1MA,EPFW
  4874. TTL 1MA - MONITOR AUXILIARY PROCESSOR.
  4875. END
cdc/nos2.source/opl871/1ma.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator