Table of Contents

1RI

Table Of Contents

  • [00009] 1RI - ROLLIN JOB.
  • [00011] ROLLIN JOB.
  • [00122] MACROS.
  • [00126] RESTOR - SET CONTROL POINT AREAS TO RESTORE.
  • [00180] MAIN PROGRAM.
  • [00182] RIJ - MAIN PROGRAM.
  • [00314] ROLLOUT FILE READ ROUTINES.
  • [00316] CPA - READ CONTROL POINT AREA.
  • [00345] HNG - HANG PP.
  • [00352] JFL - READ JOB CM FIELD LENGTH.
  • [00407] JEC - READ JOB EXTENDED MEMORY FIELD LENGTH.
  • [00523] SUBROUTINES.
  • [00525] AFL - ADJUST RA AND FL.
  • [00598] CHG - CONDITIONAL HANG.
  • [00614] CJS - CHANGE JOB STATUS.
  • [00713] CSM - CLEAR SECURE MEMORY.
  • [00762] DRF - DROP ROLLOUT FILE.
  • [00790] ERS - ENTER RECALL STACK ENTRIES.
  • [00941] MSR - PROCESS ROLLOUT FILE ERROR.
  • [00978] PCS - PROCESS CPU SELECTION.
  • [00993] PEF - PROCESS ERROR FLAG.
  • [01036] PLI - PROCESS LIMIT INCREASE.
  • [01056] RCP - RESTORE CONTROL POINT AREA.
  • [01222] RIM - ROLLIN MEMORY.
  • [01260] RPC - RELEASE PSEUDO-CONTROL POINT.
  • [01276] SNS - SEND NOTIFICATION OF ROLLIN TO SCP.
  • [01354] SYS - READ SYSTEM SECTOR.
  • [01386] TCP - TRANSFER PCPA TO CPA.
  • [01400] UEP - UPDATE EXCHANGE PACKAGE.
  • [01499] PRESET.
  • [01501] PRS - PRESET.
  • [01718] RID - ROLLIN USING DIRECT TRANSFER TO CM.
  • [01793] PGA - PROCESS DELAYED *ALTER* FUNCTIONS.
  • [01944] TGAP - TABLE OF DELAYED *ALTER* FUNCTION PROCESSORS.
  • [01975] PSC - PROCESS SERVICE CLASS CHANGE.
  • [02021] MAIN ROUTINES.
  • [02027] 3RH - PROCESS ON-LINE INTERACTIVE JOBS.
  • [02033] EDA - ENTER JOB COMMAND.
  • [02128] TOP - SKIP TERMINAL OUTPUT.
  • [02145] SUBROUTINES.
  • [02147] EJP - ENTER JOB PARAMETERS.
  • [02272] TCL - TRANSFER COMMAND LINE.
  • [02357] INITIALIZATION.
  • [02359] PRS - PRESET.
  • [02507] TPPI - TABLE OF PREPROCESSOR INDICES.
  • [02520] TPPS - TABLE OF PREPROCESSOR COMMANDS.
  • [02556] 3RG - PROCESS DMP= JOBS.
  • [02563] RCP - RESTORE CONTROL POINT AREA.
  • [02743] UCA - UPDATE CONTROL POINT AREA.
  • [02842] TRCU - TABLE OF RESTART CPA UPDATES.
  • [02880] TDCU - TABLE OF DMP= CPA UPDATES.
  • [02925] 1RI/3RF - PROCESS ERROR.
  • [02934] PRE - PROCESS ERROR.

Source Code

1RI.txt
  1. IDENT 1RI,RIJ
  2. PERIPH
  3. BASE MIXED
  4. LIST F
  5. SST
  6. SYSCOM
  7. *COMMENT 1RI - ROLLIN JOB.
  8. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  9. TITLE 1RI - ROLLIN JOB.
  10. SPACE 4,10
  11. *** 1RI - ROLLIN JOB.
  12. * G. R. MANSFIELD. 70/09/03.
  13. * R. E. TATE. 70/09/28.
  14. * L. C. HAAS. 75/03/25. RESEQUENCE.
  15. SPACE 4,10
  16. *** 1RI PERFORMS JOB ROLLIN. IT IS CALLED BY *1SJ*.
  17. SPACE 4,10
  18. *** CALL.
  19. *
  20. *
  21. *T 18/ *1RI*,1/ ,5/CP,12/FN,12/ 12/FA
  22. * CP CONTROL POINT NUMBER.
  23. * FN = 0, ROLLIN JOB.
  24. * = 1, SELECTIVE ROLLIN ACCORDING TO SPECIAL ENTRY POINTS.
  25. * FA DM* FILE FNT ADDRESS/OFFSET (DMP= CALL).
  26. SPACE 4,10
  27. *** DAYFILE MESSAGES.
  28. *
  29. *
  30. * NONE.
  31. SPACE 4,10
  32. *** ACCOUNT DAYFILE MESSAGES.
  33. *
  34. *
  35. * *ACSC, SC, NEWJSN, SRUUNITS.* = SERVICE CLASS HAS BEEN
  36. * CHANGED TO SC. NEWJSN IS PRESENT IF THE CHANGE WAS FROM
  37. * SUBSYSTEM SERVICE CLASS. SRUUNITS IS THE SRU ACCUMULATOR
  38. * AT THE TIME OF THE SERVICE CLASS CHANGE.
  39. SPACE 4,10
  40. ** ROUTINES USED.
  41. *
  42. *
  43. * *0DF* - DROP FILE.
  44. SPACE 4,10
  45. ** PROGRAMS CALLED.
  46. *
  47. *
  48. * *1AJ* - CONTINUE DMP= PROCESSING / PROCESS ERROR FLAG.
  49. SPACE 4,10
  50. ** COMMON DECKS.
  51.  
  52.  
  53. *CALL COMPMAC
  54. QUAL CPS
  55. *CALL COMSCPS
  56. QUAL *
  57. SSPS EQU /CPS/SSPS
  58. *CALL COMSEJT
  59. *CALL COMSEVT
  60. *CALL COMSJIO
  61. *CALL COMSJRO
  62. *CALL COMSLFD
  63. *CALL COMSMSC
  64. *CALL,COMSMSP
  65. *CALL COMSPIM
  66. *CALL COMSPRD
  67. QUAL REM
  68. *CALL COMSREM
  69. QUAL *
  70. *CALL COMSSCD
  71. *CALL COMSSSD
  72. *CALL COMSSSE
  73. *CALL COMSSSJ
  74. *CALL COMSSCP
  75. *CALL COMSZOL
  76. 1RI SPACE 4
  77. **** ASSEMBLY CONSTANTS.
  78.  
  79.  
  80. IFLS EQU /CPS/IFLS *PIOM* REPLY STATUS
  81. RDDS EQU /CPS/RDDS *PIOM* DIRECT READ
  82. WDDS EQU /CPS/WDDS *PIOM* DIRECT WRITE
  83. SPACE 4,10
  84. ** DIRECT LOCATION ASSIGNMENTS.
  85.  
  86.  
  87. T8 EQU 16 SCRATCH
  88. T9 EQU 17 SCRATCH
  89. FS EQU 20 - 24 SCRATCH (5 CELLS)
  90. EP EQU 25 SPECIAL ENTRY POINT FLAGS FROM *SEPW*
  91. PR EQU 26 0 IF PSEUDO-ROLLIN
  92. DS EQU 27 DRIVER STATUS
  93. CN EQU 30 - 34 SCRATCH (5 CELLS)
  94. CI EQU 35 ROLLOUT FILE INDEX
  95. TW EQU 36 CONSTANT 2
  96. EO EQU 37 EJT ORDINAL
  97. TN EQU 40 TERMINAL NUMBER
  98. TT EQU 41 - 42 TERMINAL TABLE ADDRESS (2 CELLS)
  99. PP EQU 43 POT POINTER
  100. PA EQU 44 - 45 POT ADDRESS (2 CELLS)
  101. TA EQU 46 *IAF* RA
  102. FA EQU 57 DM* FILE FNT ADDRESS
  103. ZR EQU 60 - 64 CM ZERO WORD (5 CELLS)
  104. EF EQU 65 ERROR FLAG
  105. DI EQU 66 *UJNI*+2 (USED TO DISABLE PROCESSING)
  106. LW EQU 67 ADDRESS OF LAST CM WORD ROLLED IN
  107.  
  108.  
  109. ****
  110. SPACE 4,10
  111. ** SYSTEM SECTOR LOCATIONS RELATIVE TO START OF SECTOR.
  112.  
  113. TYSS EQU FNSS-BFMS-2 FILE TYPE
  114. DMFA EQU FASS-BFMS-2 DM* FILE LOCAL FNT ADDRESS
  115. SSSS EQU SJSS-BFMS-2 SSJ= JOB FLAG
  116. DPFL EQU DPSS-BFMS-2 *DMP=* FL CONTROL
  117. SCCS EQU CSSS-BFMS-2 SERVICE CLASS CHANGE
  118. RRSS EQU R1SS-BFMS-2 RECOVER TABLE
  119. QBSS EQU QASS-BFMS-2 DELAYED *ALTER* FLAGS
  120. EJRO EQU EJSS-BFMS-2 EJT ENTRY AT ROLLOUT
  121. SCPC EQU COSS-BFMS-2 SCP CONNECTIONS FROM CPA WORD *SSCW*
  122. TITLE MACROS.
  123. SPACE 4,10
  124. ** MACRO DEFINITIONS.
  125. RESTOR SPACE 4,25
  126. ** RESTOR - SET CONTROL POINT AREAS TO RESTORE.
  127. *
  128. * RESTOR WORD,BYTE,MASK
  129. *
  130. * ENTRY *WORD* = CONTROL POINT AREA WORD OFFSET.
  131. * = BLANK, IF TABLE TERMINATOR.
  132. * *BYTE* = BYTE OFFSET WITHIN WORD.
  133. * = *, IF ENTIRE CM WORD TO BE RESET.
  134. * *MASK* = BYTE MASK OF AREAS TO BE RESET.
  135. * = *, IF ENTIRE BYTE TO BE RESET.
  136. *
  137. * EXIT TABLE ENTRY SET UP.
  138. *T 1/W,11/OFFSET (IF W=1, ENTIRE CM WORD TO MOVE)
  139. *T, 1/W,11/OFFSET,12/MASK (IF W=0, ONE BYTE TO MOVE)
  140. *
  141. * DEFINE .1 = CPA SEGMENT FLAG.
  142. * = 0, IF FIRST HALF OF CPA.
  143. * = 1, IF SECOND HALF OF CPA.
  144. * .2 = WORD OFFSET IN CPA SEGMENT.
  145. * = *WORD*, IF *WORD* .LT. 100.
  146. * = *WORD*-100, IF *WORD* .GE. 100.
  147.  
  148.  
  149. PURGMAC RESTOR
  150.  
  151. MACRO RESTOR,LABEL,WORD,BYTE,MASK
  152. IFC NE,$LABEL$$,2
  153. .1 SET 0
  154. LABEL BSS 0
  155. .A IFC EQ,$WORD$$
  156. CON 0
  157. .A ELSE
  158. .2 SET WORD
  159. .B IFGE WORD,100
  160. .2 SET .2-100
  161. .C IFNE .1,1
  162. CON 0
  163. .1 SET 1
  164. .C ENDIF
  165. .B ELSE
  166. .D IFEQ .1,1
  167. ERR - TABLE SEQUENCE ERROR.
  168. .D ENDIF
  169. .B ENDIF
  170. .E IFC EQ,$BYTE$*$
  171. CON 4000+.2*5
  172. .E ELSE
  173. CON .2*5+BYTE
  174. .F IFC EQ,$MASK$*$
  175. CON 7777
  176. .F ELSE
  177. CON MASK
  178. ENDIF
  179. RESTOR ENDM
  180. TITLE MAIN PROGRAM.
  181. RIJ SPACE 4,10
  182. ** RIJ - MAIN PROGRAM.
  183.  
  184.  
  185. ORG PPFW
  186.  
  187. RIJ BSS 0
  188. RJM PRS PRESET
  189. RIJG EQU *
  190. SETMS READSTR,NS REQUEST STREAMED DATA ON BUFFERED DEVICE
  191. * UJN RIJ1 (PSEUDO-ROLLIN)
  192.  
  193. * READ ROLLOUT FILE.
  194.  
  195. RJM SYS READ SYSTEM SECTOR
  196.  
  197. SEQ EQU *-2
  198. RIJ1 SEQUENCE CPAI,CPA READ CONTROL POINT AREA
  199. * UJN *+2 (NO CONTROL POINT)
  200. * RJM TCP (PSEUDO-ROLLIN)
  201. SEQUENCE TOPI,/3RH/TOP SKIP TERMINAL OUTPUT
  202. * UJN *+2 (NON-INTERACTIVE/DETACHED INTERACTIVE JOB)
  203. * UJN RIJ2.1 (PSEUDO-ROLLIN)
  204. SEQUENCE JFLI,JFL READ JOB CM FIELD LENGTH
  205. * UJN *+2 (NO CM FL)
  206. SEQUENCE JECI,JEC READ JOB EXTENDED MEMORY FIELD LENGTH
  207. * UJN *+2 (NO EXTENDED MEMORY FL)
  208.  
  209. ENDMS
  210.  
  211. * CLEAR ADDITIONAL NFL IF INCREASE WAS REQUESTED. ADJUST RA AND
  212. * FL BY NFL SIZE.
  213.  
  214. RIJ2 BSS 0 REENTRY AFTER PROCESSING ERROR
  215. RJM AFL CLEAR INCREASED NFL, ADJUST RA AND FL
  216. * UJN *+2 (DMP= CALL)
  217. RIJA EQU *-2
  218. PAUSE ST RESET *RA* AND *FL*
  219.  
  220. * INITIATE JOB STEP FOR ON-LINE INTERACTIVE JOBS.
  221.  
  222. RJM /3RH/PRS PRESET FOR ON-LINE INTERACTIVE JOB
  223. * UJN *+2 (NOT ON-LINE INTERACTIVE ROLLIN)
  224. RIJB EQU *-2
  225.  
  226. RJM /3RH/EDA INITIATE JOB STEP
  227. * UJN *+2 (NOT ON-LINE INTERACTIVE ROLLIN)
  228. RIJC EQU *-2
  229.  
  230. * UPDATE EXCHANGE PACKAGE, RESTORE FIRST SECTOR OF CONTROL
  231. * POINT AREA, CLEAR SECURE MEMORY.
  232.  
  233. RIJ2.1 RJM RCP RESTORE CPA
  234. * RJM /3RG/RCP (DMP= CALL)
  235. RIJD EQU *-1
  236.  
  237. * PROCESS POSSIBLE ERROR FLAG FROM EJT ENTRY. CHECK FOR CPU
  238. * TIME LIMIT OR SRU LIMIT.
  239.  
  240. RJM PEF PROCESS ERROR FLAG
  241. * UJN RIJ3 (PSEUDO-ROLLIN)
  242. RIJJ EQU *-2
  243. MJN RIJ3 IF AN ERROR FLAG IS SET
  244. RJM PLI PROCESS LIMIT INCREASE
  245. * UJN *+2 (NOT ROLLIN OF ON-LINE INTERACTIVE JOB)
  246. RIJE EQU *-2
  247. RIJ3 RJM CJS CHANGE JOB STATUS
  248.  
  249. * MOVE ERROR FLAG TO CONTROL POINT AREA.
  250.  
  251. LDD EF
  252. ZJN RIJ4 IF NO ERROR FLAG
  253. STD CM+1
  254. SHN 21-13
  255. MJN RIJ4 IF INTERNAL ERROR FLAG
  256. MONITOR CEFM
  257. RIJ4 LDM CBUF+5*STSW+2
  258. NJP RIJ8 IF ROLLOUT STATUS PRESENT
  259. LDM ERSF
  260. ZJN RIJ5 IF PP RECALL QUEUE EMPTY
  261. LDM RIJF
  262. ZJN RIJ5 IF NO CPU ACTIVITY
  263. LDC UJNI+ERS9-ERSE
  264. ERRPL ERS9-ERSE-40 RANGE ERROR
  265. STM ERSE
  266. RIJ5 RJM ERS PROCESS PP RECALL QUEUE
  267. LDC **
  268. RIJF EQU *-1 (CPU ACTIVITY FLAG)
  269. ZJP RIJ12 IF NO CPU ACTIVITY
  270. LDD EF
  271. NJP RIJ12 IF ERROR FLAG SET
  272. LDM ERSJ
  273. NJN RIJ7 IF AUTO-RECALL ENTRY FOUND
  274. LDN /CPS/CRCS SET TO START CPU
  275. RAM RIJH
  276. RIJ7 LDC /CPS/DPPS
  277. * LDC /CPS/DPPS+/CPS/CRCS (ALSO RESTART CPU)
  278. RIJH EQU *-1
  279. STD CM+1
  280. MONITOR JACM
  281. UJN RIJ11 EXIT TO PP RESIDENT
  282.  
  283. * CALL *1AJ*.
  284.  
  285. RIJ8 LDM ERSF RESET PP RECALL COUNT
  286. SHN 4
  287. ADM ERSF SET CURRENT QUEUE POINTER
  288. ADN 1
  289. STM CBUF+5*STSW+4
  290. LDD CP
  291. ADN STSW
  292. CWM CBUF+5*STSW,ON
  293. LDN 0
  294. RIJ9 STD IR+2
  295. * UJN RIJ7 (DMP= ROLLIN)
  296. RIJI EQU *-1
  297. STD IR+4
  298. EXECUTE 1AJ,= CALL *1AJ* INTO THIS PP
  299. LCN 1RR-1RA
  300. RAD IR
  301. LDD HN
  302. RAD IR+1
  303. RIJ10 LDD IA WRITE *1AJ* CALL TO PP INPUT REGISTER
  304. CWD IR
  305. RIJ11 LJM PPR CALL *1AJ*
  306.  
  307. RIJ12 LDM ERSF
  308. ZJN RIJ9 IF NO PP ACTIVITY
  309. SBN 1
  310. NJN RIJ13 IF MORE THAN *1AJ* IN RECALL QUEUE
  311. LDD CI
  312. NJN RIJ10 IF ONLY *1AJ* IN RECALL QUEUE
  313. RIJ13 LJM RIJ7 CLEAR JOB ADVANCE AND DROP PP
  314. TITLE ROLLOUT FILE READ ROUTINES.
  315. CPA SPACE 4,10
  316. ** CPA - READ CONTROL POINT AREA.
  317. *
  318. * CALLS MSR, RNS.
  319.  
  320.  
  321. CPA SUBR ENTRY/EXIT
  322. LDC CBUF-2 READ FIRST SECTOR OF CPA
  323. RJM RNS READ NEXT SECTOR
  324. SHN -6
  325. ZJN CPA1 IF SHORT SECTOR
  326. LDC BFMS
  327. * LDC /3RG/RBFF (DMP= CALL)
  328. CPAA EQU *-1
  329. RJM RNS READ NEXT SECTOR
  330. SHN -6
  331. NJN CPA2 IF NOT SHORT SECTOR
  332. CPA1 RJM MSR PROCESS ERROR - NO RETURN
  333. RJM HNG HANG PP
  334.  
  335. CPA2 LDD IR+2
  336. STM CPAB SET CPA ROLLED IN FLAG IF DMP= CALL
  337. NJN CPAX IF DMP= CALL
  338. LDD CP WRITE SECOND SECTOR IN CPA
  339. ADD HN
  340. CWM BFMS+2,HN
  341. UJN CPAX RETURN
  342.  
  343. CPAB CON 0 NON-ZERO IF CPA ROLLED IN AND DMP= CALL
  344. HNG SPACE 4,10
  345. ** HNG - HANG PP.
  346.  
  347.  
  348. HNG CON 0 ENTRY
  349. HNG1 MONITOR HNGM
  350. UJN HNG1 DO NOT ALLOW OPERATOR TO CLEAR THE HANG
  351. JFL SPACE 4,15
  352. ** JFL - READ JOB CM FIELD LENGTH.
  353. *
  354. * ENTRY (JFLB) = 1 IF NON-RESTART *DMP=* CALL.
  355. * (DI) = *UJNI*+2.
  356. *
  357. * EXIT (LW) = LWA+1 OF CM FL ROLLED IN (USED AS ECS ROLLIN
  358. * BUFFER ADDRESS).
  359. *
  360. * USES T8, CI, LW.
  361. *
  362. * CALLS RIM.
  363. *
  364. * MACROS ENDMS.
  365.  
  366.  
  367. JFL4 LDD DI DISABLE EXTENDED MEMORY ROLLIN
  368. STM JECI*2+SEQ
  369. LDN 0 SET NFL ONLY ROLLIN
  370. STM AFLB
  371. LDM CBUF+5*FLSW ROLLIN NFL ONLY
  372. RJM RIM ROLLIN MEMORY
  373.  
  374. JFL SUBR ENTRY/EXIT
  375. UJN *+2
  376. * ENDMS (ROLLOUT DEVICE IS EXTENDED MEMORY)
  377. JFLA EQU *-1
  378. CON .EMS
  379. LDM CBUF+FLIW*5+2 INITIALIZE ROLLIN INDEX
  380. STD CI
  381. LDM EJBF+SCLE*5+4
  382. ZJN JFL4 IF ONLY NFL SHOULD BE ASSIGNED
  383. LDM CBUF+5*FLSW+4
  384. ZJN JFL4 IF NO CM FL TO ROLLIN
  385. SBN MCMX/100/2 PRESET AMOUNT OF CM TO ROLLIN
  386. STD T8
  387. LDN 0
  388. * LDN 1 (NON-RESTART DMP= CALL)
  389. JFLB EQU *-1
  390. ZJN JFL1 IF NOT RESTART DMP= CALL
  391. LDM SBUF+DPFL
  392. NJN JFL2 IF NOT FULL DUMP
  393. JFL1 LDM CBUF+5*ECSW+4
  394. NJN JFL3 IF EXTENDED MEMORY ASSIGNED
  395. LDM CBUF+5*FLSW+4
  396. JFL2 STD T8 SET AMOUNT OF CM TO ROLLIN
  397. LDD DI DISABLE EXTENDED MEMORY ROLLIN
  398. STM JECI*2+SEQ
  399. JFL3 LDD T8 SET ROLLIN LWA
  400. ADD CI ADD NFL INCREASE AMOUNT
  401. * PSN (DMP= CALL)
  402. JFLC EQU *-1
  403. STD LW SET EXTENDED MEMORY BUFFER ADDRESS
  404. RJM RIM ROLLIN MEMORY
  405. LJM JFLX RETURN
  406. JEC SPACE 4,10
  407. ** JEC - READ JOB EXTENDED MEMORY FIELD LENGTH.
  408. *
  409. * ENTRY (LW) = LWA+1 OF CM FL ROLLED IN.
  410. *
  411. * USES CM - CM+4, T8, CN - CN+2, CI.
  412. *
  413. * CALLS MSR, RIM.
  414. *
  415. * ERROR TO *MSR* IF ECS/ESM ERROR OCCURS.
  416. * TO *HNG* IF TO HANG PP ON ERROR.
  417.  
  418.  
  419. JEC SUBR ENTRY/EXIT
  420. LDN MCMX/100/4 SET EXTENDED MEMORY BUFFER SIZE
  421. STD T8
  422. LDM CBUF+ECSW*5+4
  423. JECC SHN 0
  424. * SHN UESC (CONVERT TO 1000B-WORD BLOCKS)
  425. STD CN+2
  426. SHN -14
  427. STD CN+1
  428. NJN JEC1 IF FULL BUFFER PRESENT
  429. LDD CN+2
  430. SHN 3
  431. SBD T8
  432. PJN JEC1 IF FULL BUFFER PRESENT
  433. RAD T8 ADJUST BUFFER SIZE
  434. JEC1 LDD CP
  435. CWD ZR
  436.  
  437. * ROLLIN EXTENDED MEMORY.
  438.  
  439. LDD LW SET BUFFER ADDRESS
  440. STD CN
  441. ADN MCMX/100/4
  442. LMD CN SET TOGGLE CONSTANT
  443. STM JECA
  444. LDD CN READ BUFFER FULL
  445. STD CI
  446. ADD T8
  447. JEC2 RJM RIM
  448. LDD CN
  449. STM JECB+1*5+2
  450. LMC *
  451. JECA EQU *-1
  452. * LMC N (TOGGLE CONSTANT)
  453. STD CI
  454. STD CN
  455. JEC3 LDD OA WAIT *OR* CLEAR
  456. CRD CM
  457. LDD CM
  458. NJN JEC3 IF *RCXM*/*ECXM* INCOMPLETE
  459. JEC4 LDD CP READ STATUS WORD
  460. CRD CM
  461. LDD CM
  462. NJN JEC4 IF TRANSFER NOT COMPLETE
  463. LDD T8 SET *RCXM*/*ECXM* WORD COUNT
  464. SHN 6
  465. STM JECB+5
  466. LDD CM+1
  467. NJP JEC8 IF ERROR
  468. LDD CP SET INTERLOCK BUSY
  469. CWD ON
  470. LDD OA WRITE *MTR* REQUEST
  471. CWM JECB,TW
  472. LDN MCMX/4/1000 ADVANCE EXTENDED MEMORY ADDRESS
  473. RAM JECB+1*5+4
  474. SHN -14
  475. RAM JECB+1*5+3
  476. SBD CN+1
  477. MJN JEC5 IF NOT DONE
  478. LDM JECB+1*5+4
  479. SBD CN+2
  480. PJN JEC6 IF DONE
  481. SHN 3
  482. ADD T8
  483. MJN JEC5 IF FULL BUFFER REMAINS
  484. STD T8
  485. LDN MCMX/100/4
  486. SBD T8
  487. STD T8
  488. JEC5 LDD T8
  489. ADD CI
  490. UJP JEC2 CONTINUE ROLLIN
  491.  
  492. JEC6 LDD OA WAIT OR CLEAR
  493. CRD CM
  494. LDD CM
  495. NJN JEC6 IF *RCXM/ECXM* INCOMPLETE
  496. JEC7 LDD CP
  497. CRD CM
  498. LDD CM
  499. NJN JEC7 IF TRANSFER NOT COMPLETE
  500. LDD CM+1
  501. JEC8 ZJN JEC9 IF NO ERROR
  502. RJM MSR PROCESS ERROR - NO RETURN
  503. RJM HNG HANG PP
  504.  
  505. * ROLLIN LAST PART OF CM.
  506.  
  507. JEC9 LDD LW SET FWA TO ROLL IN
  508. STD CI
  509. ADN MCMX/100/2 SET AMOUNT TO ROLLIN
  510. RJM RIM
  511. LJM JECX RETURN
  512.  
  513.  
  514. JECB VFD 12/RCXM EM TRANSFER FUNCTION PROCESSED BY *MTR*
  515. VFD 29/0
  516. VFD 1/1 FUNCTION TYPE = WRITE
  517. VFD 18/0 ALTERNATE RESPONSE ADDRESS
  518.  
  519. VFD 12/MCMX/4 WORD COUNT
  520. VFD 12/0
  521. VFD 12/0 CM ADDRESS/100B (RELATIVE)
  522. VFD 24/0 EXTENDED MEMORY ADDRESS/1000B (RELATIVE)
  523. TITLE SUBROUTINES.
  524. AFL SPACE 4,10
  525. ** AFL - ADJUST RA AND FL.
  526. *
  527. * USES T0, CM - CM+4.
  528. *
  529. * MACROS MONITOR.
  530.  
  531.  
  532. AFL SUBR ENTRY/EXIT
  533.  
  534. * CLEAR ADDITIONAL NFL, IF ANY.
  535.  
  536. LDN ZERL
  537. CRD CM
  538. LDN 1
  539. * LDN 0 (MEMORY CLEARING ENABLED)
  540. AFLA EQU *-1
  541. ZJN AFL1 IF MEMORY CLEARING ENABLED
  542. LDM CBUF+5*FLIW+2
  543. ZJN AFL1 IF NO NFL INCREASE
  544. SHN 6 SET WORD COUNT
  545. STD CM+2
  546. LDD HN SET RELATIVE FLAG
  547. STD CM+1
  548. MONITOR CSTM
  549.  
  550. * ADJUST RA AND FL BY NFL SIZE.
  551.  
  552. AFL1 LDM CBUF+5*FLSW+4 SAVE PREVIOUS CM FL SIZE
  553. SBM CBUF+5*FLSW
  554. STM RCPA
  555. STM CSMA
  556. LDM CBUF+5*FLSW SAVE NEW NFL SIZE
  557. RAM CBUF+5*FLIW+2
  558. LDM CBUF+5*ECSW+4 SAVE PREVIOUS ECS FL SIZE
  559. STM CSMB
  560. LDD CP GET *FLSW*, *FLSW+1* AND *ECSW* FROM CPA
  561. ADN FLSW
  562. CRM CBUF+5*FLSW,TW
  563. ADK ECSW-FLSW-2
  564. CRM CBUF+5*ECSW,ON
  565. LDM CBUF+5*FLIW+2 SET NFL
  566. STM CBUF+5*FLSW
  567. STD T0
  568. LDM CBUF+5*FLSW+2 SET RA - NFL IN *FLSW+1*
  569. STM CBUF+5*FLSW+5*1+1
  570. LDM CBUF+5*FLSW+3
  571. STM CBUF+5*FLSW+5*1+2
  572. LDD T0
  573. RAM CBUF+5*FLSW+3 SET ADJUSTED RA (RA + NFL)
  574. SHN -14
  575. RAM CBUF+5*FLSW+2
  576. LCN 0 ADJUST FL (FL - NFL)
  577. LMD T0
  578. RAM CBUF+5*FLSW+4
  579. STM CBUF+5*FLSW+5*1+4
  580. LDD T0 STORE NFL + 4000 IN *FLSW+1*
  581. LMC 4000
  582. STM CBUF+5*FLSW+5*1+3
  583. LDD CP UPDATE *FLSW* AND *FLSW+1* IN CM
  584. ADN FLSW
  585. CWM CBUF+5*FLSW,TW
  586. LDD EF
  587. ZJN AFL2 IF NO ERROR FLAG PRESENT
  588. LDC *
  589. * LDC 0 (NFL ONLY ROLLIN)
  590. AFLB EQU *-1
  591. NJN AFL2 IF NOT A NFL ONLY ROLLIN
  592. STD CM+1 RELEASE EXTRA FL
  593. LDN 0
  594. STD CM+2
  595. MONITOR RSTM
  596. AFL2 LJM AFLX RETURN
  597. CHG SPACE 4,10
  598. ** CHG - CONDITIONAL HANG.
  599. *
  600. * ENTRY (A) = ERROR FLAG TO SET.
  601. *
  602. * USES CM - CM+4.
  603. *
  604. * MACROS MONITOR.
  605.  
  606.  
  607. CHG SUBR ENTRY/EXIT
  608. STD CM+2 SET ERROR FLAG
  609. LDM CHG P-ADDRESS
  610. STD CM+1
  611. MONITOR CHGM CONDITIONAL HANG
  612. UJN CHGX RETURN
  613. CJS SPACE 4,10
  614. ** CJS - CHANGE JOB STATUS.
  615. *
  616. * ENTRY (EO) = EJT ORDINAL (NON-DMP= CALL).
  617. * (PR) = 0 IF PSEUDO-ROLLIN.
  618. *
  619. * USES CM - CM+4, CN - CN+4, FS - FS+4, T1 - T5.
  620. *
  621. * CALLS DRF, RPC, SNS, 3RI, 3RJ.
  622. *
  623. * MACROS EXECUTE, SFA.
  624.  
  625.  
  626. CJS SUBR ENTRY/EXIT
  627. LDN 0
  628. * LDN 1 (*DMP=* CALL)
  629. CJSA EQU *-1
  630. ZJN CJS1 IF NOT DMP= CALL
  631. LJM CJS5 DROP DM* FILE
  632.  
  633. * CHECK FOR SERVICE CLASS CHANGE.
  634.  
  635. CJS1 LDD PR
  636. ZJN CJS4 IF PSEUDO-ROLLIN
  637. LDM SBUF+SCCS
  638. ZJN CJS2 IF NO SERVICE CLASS CHANGE
  639. STD CN SAVE SERVICE CLASS FOR *3RI*
  640. EXECUTE 3RI PERFORM SERVICE CLASS CHANGE
  641.  
  642. * CHECK FOR DELAYED *ALTER* FUNCTIONS.
  643.  
  644. CJS2 LDM SBUF+QBSS
  645. ZJN CJS3 IF NO DELAYED *ALTER* FUNCTIONS
  646. EXECUTE 3RJ PROCESS DELAYED *ALTER* FUNCTIONS
  647.  
  648. * CHECK FOR SCP NOTIFICATION REQUIRED.
  649.  
  650. CJS3 LDM EJBF+5*JSNE+4
  651. LPN 76
  652. LMN SIJS*2
  653. NJN CJS4 IF NOT *SIJS* JOB STATE
  654. RJM SNS SEND NOTIFICATION OF ROLLIN TO SCP
  655.  
  656. * UPDATE THE EJT ENTRY AS FOLLOWS -
  657. * UPDATE CONNECTION STATUS.
  658. * CHANGE JOB STATUS TO *EXJS*.
  659. * CLEAR ROLLOUT FILE ADDRESS.
  660. * CLEAR ERROR FLAG.
  661. * CLEAR FORCED ROLLOUT FLAG.
  662.  
  663. CJS4 SFA EJT,EO
  664. ADK JSNE
  665. CRD T1
  666. ADK SCHE-JSNE
  667. CRD CM
  668. ADK PRFE-SCHE
  669. CRD CN
  670. ADK SCLE-PRFE
  671. CRD FS
  672. LDD T1+4 UPDATE JOB STATUS AND CONNECTION STATUS
  673. LPC 4000 PRESERVE SCP/UCP CONNECTION STATUS
  674. LMM CJSD
  675. STD T1+4
  676. LDN 0 CLEAR ROLLOUT FILE ADDRESS
  677. STD CM
  678. STD CM+1
  679. STD CN+1 CLEAR ERROR FLAG
  680. LDD FS CLEAR FORCED ROLLOUT FLAG
  681. SCN 40
  682. STD FS
  683. SFA EJT,EO
  684. ADK JSNE
  685. CWD T1
  686. ADK SCHE-JSNE
  687. CWD CM
  688. ADK PRFE-SCHE
  689. CWD CN
  690. ADK SCLE-PRFE
  691. CWD FS
  692.  
  693. * RELEASE ROLLOUT FILE / DM* FILE (DMP= CALL) MASS STORAGE
  694. * SPACE. IF DMP= CALL, DROP DM* FILE FNT/FST ENTRY. IF
  695. * PSEUDO-ROLLIN, RELEASE PSEUDO-CONTROL POINT.
  696.  
  697. CJS5 RJM DRF DROP ROLLOUT FILE
  698. * RJM RPC (PSEUDO-ROLLIN)
  699. CJSB EQU *-1
  700. LJM CJSX RETURN
  701.  
  702. CJSC BSS 5 PARAMETERS PASSED BY *1SJ* VIA CPA WORD 0
  703.  
  704.  
  705. * EJT DATA BLOCK.
  706.  
  707. CJSD VFD 1/0 UCP/SCP CONNECTION STATUS
  708. VFD 4/0 INTERACTIVE CONNECTION STATUS
  709. VFD 1/1 JOB ADVANCE FLAG
  710. VFD 5/EXJS JOB STATUS
  711. VFD 1/1 JOB INTERLOCK FLAG
  712. CSM SPACE 4,10
  713. ** CSM - CLEAR SECURE MEMORY.
  714. *
  715. * ENTRY (EP) = ENTRY POINT FLAGS FROM *SEPW*.
  716. *
  717. * USES CM - CM+4.
  718. *
  719. * MACROS MONITOR.
  720.  
  721.  
  722. CSM SUBR ENTRY/EXIT
  723. LDN 1
  724. * LDN 0 (MEMORY CLEARING ENABLED)
  725. CSMC EQU *-1
  726. ZJN CSMX IF MEMORY CLEARING ENABLED
  727. LDD EP
  728. LPN 1
  729. NJN CSM1 IF *SSM=* ENTRY POINT PRESENT
  730. LDC **
  731. CSMA EQU *-1 (OLD CM FL SIZE)
  732. ZJN CSM1 IF NO CM FL TO BE CLEARED
  733. SHN 6 SET FWA TO CLEAR
  734. STD CM+4
  735. SHN -14
  736. STD CM+3
  737. LDD FL COMPARE NEW CM FL WITH OLD
  738. SBM CSMA
  739. ZJN CSM1 IF NO CHANGE
  740. MJN CSM1 IF DECREASE
  741. SHN 6 SET WORD COUNT
  742. STD CM+2
  743. SHN -14
  744. LMD HN SET CM RELATIVE ADDRESSING FLAGS
  745. STD CM+1
  746. MONITOR CSTM CLEAR MEMORY
  747. CSM1 LDC **
  748. CSMB EQU *-1 (OLD EXTENDED MEMORY FL SIZE)
  749. STD CM+4 SET FWA TO CLEAR
  750. LDM CBUF+5*ECSW+4 COMPARE NEW EXTENDED MEMORY FL WITH OLD
  751. SBM CSMB
  752. ZJN CSM2 IF NO CHANGE
  753. MJN CSM2 IF DECREASE
  754. STD CM+2 SET WORD COUNT
  755. LDN 0
  756. STD CM+3
  757. LDC 300 SET ECS RELATIVE ADDRESSING FLAGS
  758. STD CM+1
  759. MONITOR CSTM CLEAR MEMORY
  760. CSM2 LJM CSMX RETURN
  761. DRF SPACE 4,10
  762. ** DRF - DROP ROLLOUT FILE.
  763. *
  764. * ENTRY (FA) = DM* FILE FNT ADDRESS/OFFSET (DMP= CALL).
  765. * (EJBF+5*SCHE) = ROLLOUT/DM* FILE EQUIPMENT.
  766. * (EJBF+5*SCHE+1) = ROLLOUT/DM* FILE FIRST TRACK.
  767. *
  768. * USES CM+1, CM+2, CM+4.
  769. *
  770. * MACROS MONITOR.
  771.  
  772.  
  773. DRF2 LDD FA CLEAR DM* FILE FNT/FST ENTRY
  774. STD CM+4
  775. LDN /CPS/DLFS
  776. STD CM+1
  777. MONITOR PLFM
  778.  
  779. DRF SUBR ENTRY/EXIT
  780. LDM EJBF+5*SCHE RELEASE MASS STORAGE SPACE
  781. LMD TH SET RETURN-ON-INACCESSIBLE BIT
  782. STD CM+1 SET EQUIPMENT
  783. LDM EJBF+5*SCHE+1 SET FIRST TRACK
  784. STD CM+2
  785. MONITOR DTKM
  786. UJN DRFX RETURN
  787. * UJN DRF2 (DMP= CALL)
  788. DRFB EQU *-1
  789. ERS SPACE 4,15
  790. ** ERS - ENTER RECALL STACK ENTRIES.
  791. *
  792. * EXIT (A) = 0, IF *1AJ* NOT FOUND.
  793. * (IR - IR+4) = *1AJ* CALL IF PRESENT.
  794. * RECALL STACK REACTIVATED.
  795. * (ERSJ) = COUNT OF AUTO-RECALL ENTRIES FOUND.
  796. *
  797. * USES CI, EF, T1, T2, CM - CM+4, CN - CN+4, FS - FS+4,
  798. * IR - IR+4.
  799. *
  800. * CALLS CHG.
  801. *
  802. * MACROS MONITOR.
  803.  
  804.  
  805. ERS SUBR ENTRY/EXIT
  806. LDN ZERL CLEAR RECALL LINKS
  807. CRD CM
  808. AOD CM+4
  809. ERS1 AOD CM+4
  810. ADC RCCW-2
  811. ADD CP
  812. CWD CM
  813. LDD CM+4
  814. LMN LREC
  815. NJN ERS1 IF NOT END OF LINKS
  816. STD CM+4
  817. LDD CP
  818. ADC RCCW+LREC-1
  819. CWD CM
  820. ADN RECW-RCCW-LREC+1
  821. STD T1
  822. ADN LREC
  823. STM ERSD
  824. LDM ERSF
  825. ZJN ERSX IF RECALL QUEUE EMPTY AND NO TAPE ACTIVITY
  826. LDN 0 CLEAR ENTRY COUNT
  827. STD T2
  828. STD CI
  829. ERS2 LDD T1 CHECK ENTRY
  830. CRD FS
  831. CWD ZR CLEAR ENTRY
  832. ADN REPW-RECW
  833. CRD CN
  834. CWD ZR
  835. LDD MA MOVE REQUEST TO MESSAGE BUFFER
  836. CWD FS
  837. ADN 1
  838. CWD CN
  839. LDD FS+1
  840. SCN 77
  841. SHN 6
  842. LMD FS
  843. ZJN ERS6 IF EMPTY RECALL ENTRY
  844. LMC 3RJ1A
  845. ZJN ERS7 IF *1AJ* RECALL ENTRY
  846. AOD T2 INCREMENT PP RECALL ENTRY COUNT
  847. UJN ERS4 CONTINUE
  848. * LDD FS (RESTART)
  849. ERSC EQU *-1
  850. SHN -6
  851. SBN 1R0
  852. PJN ERS6 IF INCORRECT PP NAME
  853. ERS4 LDD FS+1 CHECK FOR AUTO-RECALL
  854. LPN 40
  855. ZJN ERS5 IF NOT AUTO-RECALL REQUEST
  856. LDD MA SAVE AUTO-RECALL REQUEST
  857. CRM BFMS,TW
  858. AOM ERSJ SET AUTO-RECALL FLAG
  859. UJN ERS6 ADVANCE QUEUE POINTER
  860.  
  861. ERS5 LDN ZERL CLEAR *RPPM* PARAMETERS
  862. CRD CM
  863. MONITOR RPPM
  864. ERS6 AOD T1 ADVANCE STACK POINTER
  865. LMC **
  866. ERSD EQU *-1
  867. ZJN ERS10 IF END OF RECALL QUEUE
  868. LJM ERS2 LOOP ON RECALL PROCESSING
  869.  
  870. ERS7 LDD MA MOVE *1AJ* CALL TO INPUT REGISTER
  871. CRD IR
  872. AOD T2 INCREMENT PP RECALL ENTRY COUNT
  873. AOD CI SET *1AJ* FLAG
  874. SBN 1
  875. NJN ERS8 IF MULTIPLE *1AJ* ENTRIES
  876. LDD CP STORE CP NUMBER IN *1AJ* CALL
  877. SHN -7
  878. LMD IR+1
  879. LPN 37
  880. LMD IR+1
  881. STD IR+1
  882. UJN ERS6 LOOP FOR NEXT ENTRY
  883. * UJN ERS9 (CPU STATUS AT TIME OF *1AJ* CALL)
  884. ERSE EQU *-1
  885.  
  886. ERS8 LDN 0
  887. RJM CHG CONDITIONAL HANG
  888. UJN ERS6 PROCESS NEXT ENTRY
  889.  
  890. ERS9 LDK SWET
  891. STD EF
  892. RJM CHG CONDITIONAL HANG
  893. LJM ERSX RETURN
  894.  
  895. ERS10 LDC ** CHECK TAPE ACTIVITY
  896. ERSF EQU *-1
  897. SBD T2
  898. STM ERSG+4
  899. ZJN ERS13 IF NO TAPE ACTIVITY
  900. PJN ERS12 IF VALID RECALL COUNT
  901. ERS11 MONITOR HNGM
  902. UJN ERS13 CONTINUE
  903.  
  904. ERS12 LDN 1
  905. STD CM+1
  906. STD CM+2
  907. LDD MA
  908. CWM ERSG,ON
  909. MONITOR UADM UPDATE TAPE ACTIVITY
  910.  
  911. * IF AUTO-RECALL PP WAS FOUND IN QUEUE AND NO ERROR FLAG IS
  912. * SET, SET *I* STATUS. REACTIVATE THE AUTO-RECALL PP.
  913.  
  914. ERS13 LDC 0
  915. * LDC 1 (AUTO-RECALL ENTRY FOUND)
  916. ERSJ EQU *-1
  917. ZJN ERS15 IF NO AUTO-RECALL PP WAS FOUND
  918. SBN 1
  919. NJN ERS11 IF MULTIPLE AUTO-RECALL PP-S
  920. LDD EF
  921. NJN ERS14 IF ERROR FLAG SET
  922. STD CM+3
  923. LDD CP SET CP ADDRESS
  924. STD CM+4
  925. LDN 2 SET REQUEST COUNT
  926. STD CM+1
  927. LDD MA SET *UTEM* REQUESTS
  928. CWM ERSH,CM+1
  929. MONITOR UTEM SET *I* STATUS
  930. ERS14 LDD MA REACTIVATE PP
  931. CWM BFMS,TW
  932. LDN ZERL
  933. CRD CM
  934. MONITOR RPPM
  935. ERS15 LJM ERSX RETURN
  936.  
  937. ERSG VFD 12//CPS/CICS,12/STSW,6/4,6/4,24/0
  938. ERSH VFD 1/1,5/STSW,6/12D,6/36D,42/0 VERIFY NO ERROR FLAG
  939. VFD 1/0,5/STSW,6/3,6/57D,42//CPS/ICPS SET *I* STATUS
  940. MSR SPACE 4,15
  941. ** MSR - PROCESS ROLLOUT FILE ERROR.
  942. *
  943. * THIS ROUTINE IS CALLED WHEN ANY OF THE FOLLOWING CONDITIONS
  944. * OCCUR -
  945. * 1. SUBROUTINE *RNS* OR *RID* DETECTS A MASS STORAGE ERROR.
  946. * 2. AN ERROR IS DETECTED IN THE ROLLOUT FILE SYSTEM SECTOR.
  947. * 3. AN ERROR IS DETECTED IN THE CONTROL POINT AREA SECTOR
  948. * LINKAGE BYTES.
  949. * 4. AN ECS/ESM ERROR OCCURS WHILE ROLLING IN EXTENDED
  950. * MEMORY.
  951. *
  952. * OVERLAY *3RF* IS CALLED TO PROCESS THE ERROR. *3RF* WILL
  953. * RETURN CONTROL TO *MSR* ONLY IF THE ROLLIN PROCESS SHOULD
  954. * CONTINUE.
  955. *
  956. * EXIT TO CALLER IF I/O MAY CONTINUE.
  957. * TO *RIJ2* IF THE REST OF THE ROLLOUT FILE WILL
  958. * BE SKIPPED.
  959. *
  960. * USES DS, CN - CN+4.
  961. *
  962. * CALLS 3RF.
  963. *
  964. * MACROS ENDMS, EXECUTE.
  965.  
  966.  
  967. MSR SUBR ENTRY
  968. ENDMS
  969. LDM RDCT SAVE DRIVER STATUS
  970. STD DS
  971. LDD MA SAVE MASS STORAGE PARAMETERS
  972. CWD T3
  973. CRD CN
  974. EXECUTE 3RF PROCESS ERROR
  975. ZJN MSRX IF I/O SHOULD CONTINUE
  976. UJP RIJ2 CONTINUE WITHOUT READING ROLLOUT FILE
  977. PCS SPACE 4,10
  978. ** PCS - PROCESS CPU SELECTION.
  979. *
  980. * EXIT CPU SELECTION CLEARED IF TWO CPU-S NOT AVAILABLE.
  981.  
  982.  
  983. PCS SUBR ENTRY/EXIT
  984. PCSA LDM CBUF+5*CWQW+2 CLEAR CPU SELECTION
  985. * UJN PCSX (TWO CPU-S AVAILABLE)
  986. SCN 3
  987. STM CBUF+5*CWQW+2
  988. LDM CBUF+5*JCIW+1
  989. SCN 3
  990. STM CBUF+5*JCIW+1
  991. UJN PCSX RETURN
  992. PEF SPACE 4,15
  993. ** PEF - PROCESS ERROR FLAG.
  994. *
  995. * ENTRY (EF) = ERROR FLAG FROM EJT ENTRY.
  996. *
  997. * EXIT (A) .GE. 0 IF NO ERROR.
  998. * .LT. 0 IF ERROR FLAG SET.
  999. *
  1000. * USES EF, CM - CM+4.
  1001.  
  1002.  
  1003. PEF SUBR ENTRY/EXIT
  1004. LDD EF
  1005. SHN 21-13
  1006. MJN PEFX IF DUMMY ERROR FLAG IS SET
  1007. NJN PEF2.1 IF ERROR FLAG IS SET
  1008.  
  1009. * CHECK FOR CPU TIME LIMIT/SRU LIMIT.
  1010.  
  1011. LDM CBUF+5*SRUW
  1012. SHN 21-12
  1013. MJN PEF1 IF CPU TIME LIMIT
  1014. SHN 2
  1015. PJN PEFX IF NOT SRU LIMIT
  1016. LDN SRET
  1017. UJN PEF2 SET *SRET* ERROR FLAG
  1018.  
  1019. PEF1 LDN TLET SET *TLET* ERROR FLAG
  1020. PEF2 STD EF SAVE ERROR FLAG
  1021. PEF2.1 LDM EJBF+JSNE*5+4
  1022. LPN 76
  1023. LMN SUJS*2
  1024. NJN PEF3 IF NOT A SUSPENDED JOB
  1025.  
  1026. * CHANGE CONNECTION STATUS TO *NICS* TO PREVENT SUSPENDING THIS
  1027. * JOB AGAIN.
  1028.  
  1029. LDM CJSD
  1030. LPC 4177
  1031. LMK NICS*200
  1032. STM CJSD
  1033. PEF3 LCN 0 INDICATE ERROR FLAG SET
  1034. LJM PEFX RETURN
  1035. PLI SPACE 4,10
  1036. ** PLI - PROCESS LIMIT INCREASE.
  1037. *
  1038. * USES CM+1, CM+3, CM+4.
  1039. *
  1040. * MACROS MONITOR.
  1041.  
  1042.  
  1043. PLI SUBR ENTRY/EXIT
  1044. LDM SBUF-2+SRSS-BFMS+3
  1045. SHN -6
  1046. ZJN PLIX IF NOT LIMIT INCREASE NEEDED
  1047. STD CM+1 SAVE FUNCTION CODE (*RLIT* OR *RLIS*)
  1048. LDM SBUF-2+SRSS-BFMS+4
  1049. STD CM+4
  1050. LDM SBUF-2+SRSS-BFMS+3
  1051. LPN 77
  1052. STD CM+3
  1053. MONITOR RLMM INCREMENT LIMIT
  1054. UJN PLIX RETURN
  1055. RCP SPACE 4,10
  1056. ** RCP - RESTORE CONTROL POINT AREA.
  1057. *
  1058. * USES CM - CM+4, CN - CN+4, FS - FS+4.
  1059. *
  1060. * CALLS CSM, PCS, UEP.
  1061. *
  1062. * MACROS DELAY, MONITOR, NFA.
  1063.  
  1064.  
  1065. RCP SUBR ENTRY/EXIT
  1066.  
  1067. * WARNING - MODIFICATION OF THE FIELD LENGTH CONTROL WORDS IN
  1068. * CM MUST BE INHIBITED FROM BEFORE THE TIME *UEP* READS THEM
  1069. * UNTIL AFTER THE FIRST HALF OF THE CONTROL POINT AREA IS
  1070. * WRITTEN TO CM. THEREFORE, NO MONITOR FUNCTIONS WHICH COULD
  1071. * RESULT IN A STORAGE MOVE SHOULD BE ISSUED DURING THAT TIME.
  1072.  
  1073. RJM UEP UPDATE EXCHANGE PACKAGE
  1074. RJM PCS PROCESS CPU SELECTION
  1075. LDK RTCL
  1076. CRD FS
  1077. LDD CP
  1078. ADK TSCW
  1079. CRD CN
  1080. LDD PR
  1081. ZJP RCP4 IF PSEUDO-ROLLIN
  1082.  
  1083. * UPDATE RECOVERY TABLE AND SCP CONNECTIONS FROM SYSTEM SECTOR.
  1084.  
  1085. NFA RC1N
  1086. CWM SBUF+RRSS,TW
  1087.  
  1088. ERRNZ RC1N-RC2N-1 *RC1N*/*RC2N* MUST BE CONTIGUOUS
  1089. ERRNZ R2SS-R1SS-5 *R1SS*/*R2SS* MUST BE CONTIGUOUS
  1090.  
  1091. LDD CP UPDATE SCP CONNECTIONS
  1092. ADK SSCW
  1093. CWM SBUF+SCPC,ON
  1094. ADK DBAW-SSCW-1
  1095. CRD CM
  1096. LDD CM+1
  1097. ADD CM+2
  1098. ADD CM+3
  1099. ADD CM+4
  1100. NJN RCP2 IF K-DISPLAY ACTIVE
  1101. LDN ZERL CLEAR *MS2W*
  1102. CRM CBUF+5*MS2W,ON
  1103. RCP2 LDD CN+2
  1104. LPC 7777 DO NOT CLEAR SLICE FLAG
  1105. * LPC 7677 (CLEAR SLICE FLAG FOR ON-LINE INTERACTIVE)
  1106. RCPG EQU *-1
  1107. STD CN+2
  1108. LDN 0
  1109. STM CBUF+5*FLIW+2 CLEAR NFL INCREASE FIELD
  1110. STM CBUF+5*FLIW+3 CLEAR EXTENDED MEMORY INCREASE FIELD
  1111. STM CBUF+5*FLIW+4 CLEAR CM INCREASE FIELD
  1112. LDM CBUF+5*FLIW+1 CLEAR SCHEDULER REJECT FLAGS
  1113. SCN 3
  1114. STM CBUF+5*FLIW+1
  1115. LDM SBUF+EJRO+JSNE*5+4
  1116. LPN 76
  1117. LMN TOJS*2
  1118. ZJN RCP3 IF ROLLIN AFTER TIMED/EVENT ROLLOUT
  1119. LDM CBUF+5*STSW+2
  1120. LPK 10*/CPS/ROTE
  1121. RAM RCPD SET UNPROCESSED TIMED/EVENT ROLLOUT STATUS
  1122. RCP3 LDC **
  1123. RCPA EQU *-1 (OLD CM FL SIZE)
  1124. NJN RCP4 IF CM FL WAS PREVIOUSLY ASSIGNED
  1125. * LDN 0 (ON-LINE INTERACTIVE JOB STEP INITIATION)
  1126. RCPB EQU *-1
  1127. STM CBUF+5*EECW+1 CLEAR REPRIEVE OPTIONS
  1128. STM CBUF+5*EECW+4 CLEAR ERROR EXIT ADDRESS
  1129. LDM CBUF+5*EECW+3
  1130. SCN 77
  1131. STM CBUF+5*EECW+3
  1132. LDM CBUF+5*CSPW CLEAR SUPPRESS ERROR MESSAGE FLAG
  1133. SCN 40
  1134. STM CBUF+5*CSPW
  1135. RCP4 LDM RCPF+1 COMPUTE CM SLICE TIME
  1136. ADD FS+1
  1137. STD CN+1
  1138. SHN -14
  1139. ADD FS
  1140. STD CN
  1141. LDD FS+1 COMPUTE CP SLICE TIME
  1142. ADM RCPF+4
  1143. STD CN+4
  1144. SHN -14
  1145. ADD FS
  1146. STD CN+3
  1147. LDD CP
  1148. ADK TSCW
  1149. CWD CN
  1150. LDM CBUF+5*STSW+2 SAVE CPU STATUS FLAG
  1151. LPN 2
  1152. RAM RIJF
  1153. LDM CBUF+5*STSW+4 SAVE PP RECALL COUNT
  1154. SHN -4
  1155. LPN 17
  1156. STM ERSF
  1157.  
  1158. * UPDATE STATUS WORD.
  1159.  
  1160. LDN 0
  1161. STM CBUF+5*STSW+1
  1162. STM CBUF+5*STSW+3
  1163. LDN 1 SET PP ACTIVITY
  1164. STM CBUF+5*STSW
  1165. STM CBUF+5*STSW+4 SET RECALL COUNT
  1166. LDC 0
  1167. RCPD EQU *-1 (ROLLOUT CONTROL FLAGS TO BE SET)
  1168. ZJN RCP4.1 IF NO ROLLOUT FLAGS TO SET
  1169. LDM CBUF+5*STSW+2
  1170. LPN 2 PRESERVE ROLLOUT CPU STATUS
  1171. LMN 1 SET ROLLOUT REQUESTED
  1172. LMM RCPD MERGE ROLLOUT FLAGS
  1173. RCP4.1 STM CBUF+5*STSW+2
  1174.  
  1175. * WRITE FIRST HALF OF CONTROL POINT AREA.
  1176.  
  1177. RCP5 LDD CP ENSURE *1SJ* *CCAM* IS COMPLETE
  1178. ADK STSW
  1179. CRD CM
  1180. SOD CM
  1181. ZJN RCP6 IF NO OTHER PP-S ASSIGNED
  1182. DELAY
  1183. UJN RCP5 CHECK FOR COMPLETION OF *1SJ* *CCAM*
  1184.  
  1185. RCP6 LDD CP
  1186. CWM CBUF,HN
  1187. LDD PR
  1188. ZJN RCP8 IF PSEUDO-ROLLIN
  1189.  
  1190. * UPDATE MASS STORAGE PRU LIMIT.
  1191.  
  1192. LDM RCPE+3
  1193. ADM RCPE+4
  1194. ZJN RCP7 IF NO PRU-S RELEASED
  1195. LDD MA STORE REQUEST IN MESSAGE BUFFER
  1196. CWM RCPE,ON
  1197. LDN 1 SET NUMBER OF REQUESTS AND NO DROP FLAG
  1198. STD CM+1
  1199. STD CM+2
  1200. MONITOR UADM
  1201.  
  1202. * CLEAR SECURE MEMORY IF NECESSARY.
  1203.  
  1204. RCP7 RJM CSM CLEAR SECURE MEMORY
  1205.  
  1206. * FORCE SRU MULTIPLIER CALCULATION.
  1207.  
  1208. LDN /CPS/ABSF
  1209. STD CM+1
  1210. MONITOR ACTM
  1211. RCP8 LJM RCPX RETURN
  1212.  
  1213. * *UADM* PARAMETER BLOCK.
  1214.  
  1215. RCPE CON /CPS/CICS
  1216. CON ACLW
  1217. CON 0*100+18D
  1218. CON 0,0
  1219.  
  1220. RCPF BSS 5 *TSCW* BUFFER
  1221. RIM SPACE 4,15
  1222. ** RIM - ROLLIN MEMORY.
  1223. *
  1224. * ENTRY (A) = LWA TO ROLLIN.
  1225. * (CI) = FWA TO ROLLIN.
  1226. * (T5) = EQUIPMENT.
  1227. * (T6) = CURRENT TRACK.
  1228. * (T7) = CURRENT SECTOR.
  1229. *
  1230. * USES CI.
  1231. *
  1232. * CALLS RNS.
  1233. *
  1234. * NOTE ROUTINE *RIM* IS OVERWRITTEN WITH ROUTINE *RID*
  1235. * IF THE ROLLOUT DEVICE SUPPORTS DIRECT DISK TRANSFERS.
  1236.  
  1237.  
  1238. RIM SUBR ENTRY/EXIT
  1239. STM RIMA
  1240. SBD FL
  1241. MJN RIM1 IF LWA .LT. FL
  1242. LDD FL OVERRIDE ROLLIN FL
  1243. STM RIMA
  1244. RIM1 LDC BFMS READ A SECTOR
  1245. RS1. RJM RNS
  1246. ZJN RIM2 IF EOF
  1247. LDD RA SET CM ADDRESS
  1248. ADD CI
  1249. SHN 6
  1250. CWM BFMS+2,HN
  1251. AOD CI
  1252. LMC *
  1253. RIMA EQU *-1
  1254. NJN RIM1 IF LWA NOT REACHED
  1255. RIM2 STM RNS CLEAR *RNS* SO *3RF* WILL NOT BE CONFUSED
  1256. UJN RIMX RETURN
  1257.  
  1258. RIML EQU *-RIMX LENGTH OF *RIM*
  1259. RPC SPACE 4,10
  1260. ** RPC - RELEASE PSEUDO-CONTROL POINT.
  1261. *
  1262. * USES CM - CM+4.
  1263.  
  1264.  
  1265. RPC SUBR ENTRY/EXIT
  1266. TLDC TFSW,PCAD
  1267. CRD CM
  1268. LDN 0 CLEAR PCP ASSIGNMENT
  1269. STD CM
  1270. TLDC STSW,PCAD
  1271. CWD ZR CLEAR PP/PCP ASSIGNMENT
  1272. ADK TFSW-STSW
  1273. CWD CM
  1274. UJP RPCX RETURN
  1275. SNS SPACE 4,20
  1276. ** SNS - SEND NOTIFICATION OF ROLLIN TO SCP.
  1277. *
  1278. * *SNS* NOTIFIES A PARTICULAR SCP TYPE SUBSYSTEM THAT A USER
  1279. * JOB (UCP) HAS ROLLED IN. THIS RESPONSE OCCURS AS A RESULT
  1280. * OF A PREVIOUS *SF.SWPI* FUNCTION ISSUED FROM A SYSTEM
  1281. * CONTROL POINT (SCP).
  1282. *
  1283. * ENTRY (A) = REPLY CODE.
  1284. * (CJSC - CJSC+4) = SUBSYSTEM PARAMETERS.
  1285. * *SCHE* FORMAT IS 30/,18/ ADDR,12/ SSID
  1286. * ADDR = ADDRESS OF COMPLETION BIT WORD
  1287. * SSID = SUBSYSTEM IDENTIFICATION NUMBER.
  1288. * (EO) = EJT ORDINAL.
  1289. *
  1290. * USES T1, EF, CM - CM+4.
  1291. *
  1292. * MACROS DELAY, MONITOR PAUSE, SFA.
  1293.  
  1294.  
  1295. SNS SUBR ENTRY/EXIT
  1296. SHN 6 SAVE REPLY CODE
  1297. STM SNSA
  1298. NJN SNS1 IF ERROR RESPONSE
  1299. LDD CP READ SCP CONTROL WORD
  1300. ADK SSCW
  1301. CRD CM
  1302. LDN 5 INITIALIZE BYTE INDEX
  1303. STD T1
  1304. SNS0.1 SOD T1
  1305. MJN SNSX IF SUBSYSTEM NOT FOUND
  1306. LDM CM,T1 CHECK NEXT BYTE
  1307. SHN -6
  1308. ADC LSSI CALCULATE SUBSYSTEM ID
  1309. LMM CJSC+4
  1310. NJN SNS0.1 IF NOT THIS SUBSYSTEM
  1311. LDM CM,T1 CLEAR ROLLOUT ALLOWABLE FLAG
  1312. SCN 20
  1313. STM CM,T1
  1314. LDD CP
  1315. ADC SSCW
  1316. CWD CM
  1317.  
  1318. * ISSUE *TDAM* FUNCTION TO SET COMPLETION BIT.
  1319.  
  1320. SNS1 LDM CJSC+4 SET SUBSYSTEM ID FOR *TDAM*
  1321. STD CM+2
  1322. LDM CJSC+3 SET COMPLETION BIT ADDRESS FOR *TDAM*
  1323. STD CM+4
  1324. LDM CJSC+2
  1325. LPN 77
  1326. LMC **
  1327. SNSA EQU *-1
  1328. STD CM+3
  1329. LDN 2 SET *TDAM* SUBFUNCTION
  1330. STD CM+1
  1331. MONITOR TDAM
  1332. LDD CM+1
  1333. ZJN SNS3 IF NO REJECT
  1334. SBN 4
  1335. ZJN SNS3 IF SCP INACTIVE
  1336. PJN SNS2 IF INCORRECT COMPLETION ADDRESS
  1337. PAUSE ST
  1338. DELAY
  1339. SFA EJT,EO READ ERROR FLAG WORD OF EJT ENTRY
  1340. ADN PRFE
  1341. CRD CM
  1342. LDD CM+1
  1343. LMN ORET
  1344. ZJN SNS3 IF OPERATOR INTERVENTION
  1345. LJM SNS1 REISSUE REQUEST
  1346.  
  1347. SNS2 LDN ITET SET INCORRECT TRANSFER ADDRESS ERROR FLAG
  1348. SBD EF
  1349. MJN SNS3 IF LARGER ERROR FLAG ALREADY SET
  1350. LDN ITET SET INCORRECT TRANSFER ADDRESS ERROR FLAG
  1351. STD EF
  1352. SNS3 LJM SNSX RETURN
  1353. SYS SPACE 4,10
  1354. ** SYS - READ SYSTEM SECTOR.
  1355. *
  1356. * ENTRY I/O SEQUENCE INITIATED.
  1357. *
  1358. * USES T7.
  1359. *
  1360. * CALLS MSR, RNS.
  1361. *
  1362. * ERROR TO *MSR* IF INVALID SYSTEM SECTOR.
  1363.  
  1364.  
  1365. SYS SUBR ENTRY
  1366. LDC SBUF-2 READ SYSTEM SECTOR
  1367. RJM RNS
  1368. LDN FSMS SET FIRST SECTOR
  1369. STD T7
  1370. LDD T1 CHECK WORD COUNT
  1371. LMN 77
  1372. NJN SYS1 IF NOT SYSTEM SECTOR
  1373. LDI T3
  1374. LMC 3777
  1375. NJN SYS1 IF NOT VALID SYSTEM SECTOR
  1376. LDM SBUF+TYSS*5+4
  1377. SHN -6
  1378. LMN ROFT
  1379. NJN SYS1 IF NOT ROLLOUT FILE
  1380. LDM SBUF+DMFA
  1381. SYSA ZJN SYSX IF NOT DM* ROLLOUT FILE (NORMAL ROLLIN)
  1382. * NJN SYSX IF DM* ROLLOUT FILE (*DMP=* ROLLIN)
  1383. SYS1 RJM MSR PROCESS ERROR - NO RETURN
  1384. RJM HNG HANG PP
  1385. TCP SPACE 4,10
  1386. ** TCP - TRANSFER PCPA TO CPA.
  1387. *
  1388. * EXIT CONTROL POINT AREA SET FROM PCP.
  1389.  
  1390.  
  1391. TCP SUBR ENTRY/EXIT
  1392. TLDC 0,PCAD COMPUTE PCPA ADDRESS
  1393. CRM CBUF,HN READ FIRST HALF OF PCPA
  1394. CRM BFMS+2,HN READ SECOND HALF OF PCPA
  1395. LDD CP WRITE SECOND HALF OF PCPA TO CPA
  1396. ADD HN
  1397. CWM BFMS+2,HN
  1398. UJN TCPX RETURN
  1399. UEP SPACE 4,10
  1400. ** UEP - UPDATE EXCHANGE PACKAGE.
  1401. *
  1402. * ENTRY (RA) = ADJUSTED RA.
  1403. * (FL) = ADJUSTED CM FL.
  1404.  
  1405.  
  1406. UEP SUBR ENTRY/EXIT
  1407. LDD CP READ FIELD LENGTH CONTROL WORDS
  1408. ADK FLSW
  1409. CRM CBUF+5*FLSW,TR
  1410. ERRNZ ECSW-FLSW-2 CODE DEPENDS ON VALUE
  1411. LDM CBUF+5*FLSW+3 SET RA IN EXCHANGE PACKAGE
  1412. SHN 6
  1413. STM CBUF+5*1+1
  1414. LMM CBUF+5*FLSW+2
  1415. SHN 6
  1416. STM CBUF+5*1
  1417. LDD FL STORE FL IN EXCHANGE PACKAGE
  1418. SHN 6
  1419. STM CBUF+5*2+1
  1420. SHN -14
  1421. STM CBUF+5*2
  1422. LDM CBUF+5*3 ENSURE MONITOR MODE NOT SET (CYBER 176)
  1423. LPC 7627
  1424. STM CBUF+5*3
  1425. LDM CBUF+5*ECSW+4
  1426. ZJP UEP3 IF NO EXTENDED MEMORY ASSIGNED
  1427. LDK UEML READ UEM BASE ADDRESS/1000B
  1428. CRD CM
  1429. LDD CM+4
  1430. LPN 2
  1431. ZJN UEP1 IF NO UEM
  1432. LDD CM
  1433. UEP1 STD T0
  1434. LDM CBUF+5*ECSW+2 SET RAE
  1435. SHN 14
  1436. ADM CBUF+5*ECSW+3
  1437. UEPA SHN 0
  1438. * SHN UESC (CONVERT TO 1000B-WORD BLOCKS)
  1439. ADD T0
  1440. SHN 17
  1441. STM CBUF+5*4
  1442. SHN -6
  1443. SCN 77
  1444. STM CBUF+5*4+1
  1445. LDM CBUF+5*ECSW+4 SET FLE
  1446. UEPB SHN 17
  1447. * SHN 17+UESC (ALLOW FOR USER EM SHIFT)
  1448. STM CBUF+5*5
  1449. SHN -6
  1450. SCN 77
  1451. STM CBUF+5*5+1
  1452. UEPC UJN UEP3 CONTINUE (STANDARD ADDRESSING)
  1453. * PSN (IF EXPANDED ADDRESSING MODE)
  1454.  
  1455. LDM CBUF+5*4 RESET RAE
  1456. SHN 14
  1457. STM CBUF+5*4
  1458. SCN 77
  1459. ADM CBUF+5*4+1
  1460. SHN -6
  1461. STM CBUF+5*4+1
  1462. LDM CBUF+5*5 RESET FLE
  1463. SHN 14
  1464. STM CBUF+5*5
  1465. SCN 77
  1466. ADM CBUF+5*5+1
  1467. SHN -6
  1468. STM CBUF+5*5+1
  1469. UEP3 LDD CP STORE MA IN EXCHANGE PACKAGE
  1470. STM CBUF+5*6+1
  1471. STM CBUF+5*7+1 STORE EA IN EXCHANGE PACKAGE
  1472. SHN -14
  1473. STM CBUF+5*6
  1474. STM CBUF+5*7
  1475. LJM UEPX RETURN
  1476. SPACE 4,10
  1477. * COMMON DECKS.
  1478.  
  1479.  
  1480. EOR$ EQU 0 SET TO POSITION AFTER EOR,S ON READ
  1481. MSR$ EQU 0 SET FOR PROCESSSING MASS STORAGE ERRORS
  1482. LIST X
  1483. *CALL COMPDDT
  1484. LIST *
  1485. EJT$ EQU 1 ASSEMBLE EJT ADDRESSING (COMPGFP)
  1486. IFP$ EQU 1 ASSEMBLE REMOTE INITIALIZATION (COMPGFP)
  1487. *CALL COMPGFP
  1488. *CALL COMPRNS
  1489. USE OVERLAY
  1490. SPACE 4,10
  1491. ** BUFFER ASIGNMENTS.
  1492.  
  1493.  
  1494. SBUF EQU *+2 SYSTEM SECTOR
  1495. CBUF EQU SBUF+502 FIRST PART OF CONTROL POINT AREA
  1496. EJBF EQU CBUF+502 EJT ENTRY
  1497. EBUF EQU EJBF+5*EJTE
  1498. E1RI EQU EBUF+5 OVERLAYS ORIGIN
  1499. TITLE PRESET.
  1500. PRS SPACE 4,25
  1501. ** PRS - PRESET.
  1502. *
  1503. * EXIT (T5) = ROLLOUT/DM* FILE EQUIPMENT.
  1504. * (T6) = ROLLOUT/DM* FILE FIRST TRACK.
  1505. * (T7) = 0.
  1506. * (DI) = *UJNI*+2.
  1507. * (PR) = 0 IF PSEUDO-ROLLIN.
  1508. * (TW) = 2.
  1509. * (ZR - ZR+4) = 0.
  1510. * (EO) = EJT ORDINAL (NON-DMP= CALL).
  1511. * (EJBF - EJBF+5*EJTE-1) = EJT ENTRY (NON-DMP= CALL).
  1512. * (EF) = ERROR FLAG FROM EJT (NON-DMP= CALL) / CPA
  1513. * (DMP= CALL).
  1514. * (EP) = SPECIAL ENTRY POINT FLAGS.
  1515. * (FA) = DM* FILE FNT ADDRESS/OFFSET (DMP= CALL).
  1516. *
  1517. * USES T1, T5 - T7, CM - CM+4, CN - CN+4, FS - FS+4, EO, DI,
  1518. * EF, EP, FA, ZR - ZR+4.
  1519. *
  1520. * CALLS IFP, SIC, 3RG, 3RH.
  1521. *
  1522. * MACROS CFI, DELAY, EXECUTE, ISTORE, NFA, SFA, SIC.
  1523.  
  1524.  
  1525. PRS SUBR ENTRY/EXIT
  1526. RJM IFP INITIALIZE ROUTINE *CEA* OF *COMPGFP*
  1527. LDC UJNI+2
  1528. STD DI
  1529. LDN 2 SET CONSTANT 2
  1530. STD TW
  1531. LDN ZERL CLEAR CM ZERO WORD
  1532. CRD ZR
  1533. LDD CP
  1534. ADK TFSW GET EJT ORDINAL
  1535. CRD CM
  1536. ADK SEPW-TFSW
  1537. CRD CN
  1538. ADK TSCW-SEPW SAVE *TSCW*
  1539. CRM RCPF,ON
  1540. LDN EJTE
  1541. STD T1
  1542. LDD CM SAVE EJT ORDINAL
  1543. STD EO
  1544. SFA EJT,EO READ EJT ENTRY
  1545. CRM EJBF,T1
  1546. LDM EJBF+5*JSNE+4 SET PSEUDO-ROLLIN FLAG
  1547. LPN 76
  1548. LMK PCJS*2
  1549. STD PR
  1550. NJN PRS0.1 IF NOT PSEUDO-ROLLIN
  1551. LDK NCPL GET NUMBER OF CONTROL POINTS
  1552. CRD T1
  1553. ADK PCPP-NCPL GET PCP AREA POINTER
  1554. CRD CM
  1555. LDM EJBF+5*SCHE+1 PCP NUMBER
  1556. SBD T1+1
  1557. SBN 2
  1558. SHN 7 PCP AREA OFFSET
  1559. RAD CM+4 SET PCP ADDRESS
  1560. SHN -14
  1561. RAD CM+3
  1562. LDC TSIC SET INSTRUCTION RELOCATION TABLE ADDRESS
  1563. RJM SIC RELOCATE INSTRUCTIONS
  1564. PRS0.1 LDM EJBF+5*PRFE+1 SAVE ERROR FLAG
  1565. STD EF
  1566. LDK MEFL
  1567. CRD CM
  1568. LDD CM+2 GET USER EM SHIFT COUNT (UESC)
  1569. SHN -11
  1570. RAM JECC
  1571. STM UEPA
  1572. ADN 17
  1573. STM UEPB
  1574. LDD CM+2
  1575. SHN 21-7
  1576. PJN PRS1 IF STANDARD ADDRESSING MODE
  1577. LDN PSNI
  1578. STM UEPC ENABLE EXPANDED ADDRESSING MODE
  1579. PRS1 LDD CN SAVE SPECIAL ENTRY POINT FLAGS
  1580. STD EP
  1581. LDN ACPL CHECK DUAL CPU AVAILABILITY
  1582. CRD CM
  1583. ADN 1
  1584. CRD FS
  1585. LDD CM
  1586. LMD FS
  1587. SHN 6
  1588. MJN PRS1.1 IF ONLY ONE CPU AVAILABLE
  1589. ISTORE PCSA,(UJN PCSX) SET TO PRESERVE CPU SELECTION
  1590. PRS1.1 LDD IR+2
  1591. ZJN PRS2 IF NOT *DMP=* CALL
  1592. AOM CJSA SET *DMP=* FLAG
  1593. LDD IR+4 SAVE DM* FILE FNT ADDRESS/OFFSET
  1594. STD FA
  1595. NFA FA,R READ DM* FILE FST ENTRY
  1596. ADN FSTL
  1597. CRM EJBF+5*SCHE,ON
  1598. ISTORE SYSA,(NJN SYSX) SET DM* FILE TEST
  1599. LJM PRS4 CONTINUE
  1600.  
  1601. PRS2 LDD CP
  1602. CRM CJSC,ON READ *SIJS* PARAMETERS
  1603. LDM EJBF+5*JSNE+4 SAVE CONNECTION STATUS
  1604. LPC 3600
  1605. RAM CJSD
  1606. LDD PR
  1607. NJP PRS3 IF NOT PSEUDO-ROLLIN
  1608. ISTORE RIJG,(UJN RIJ1)
  1609. LDC TCP
  1610. STM CPAI*2+SEQ+1
  1611. ISTORE TOPI*2+SEQ,(UJN RIJ2.1)
  1612. LDC RPC
  1613. STM CJSB
  1614. ISTORE RIJJ,(UJN RIJ3)
  1615. LJM PRSX EXIT
  1616.  
  1617. PRS3 LDM EJBF+5*SCLE
  1618. LPN 17
  1619. LMN TXOT
  1620. NJN PRS4 IF NON-INTERACTIVE JOB
  1621. EXECUTE 3RH LOAD INTERACTIVE JOB PROCESSING OVERLAY
  1622. LDM EJBF+5*JSNE+4 CHECK CONNECTION STATUS
  1623. SHN 0-7
  1624. LPN 17
  1625. LMN OLCS
  1626. ZJN PRS6 IF ON-LINE INTERACTIVE JOB
  1627. LDD DI
  1628. UJN PRS5 DISABLE ON-LINE INTERACTIVE ROUTINES
  1629.  
  1630. PRS4 LDD DI DISABLE ON-LINE INTERACTIVE ROUTINES
  1631. STM TOPI*2+SEQ
  1632. PRS5 STM RIJC
  1633. STM RIJB
  1634. STM RIJE
  1635. LDD IR+2
  1636. NJN PRS7 IF *DMP=* CALL
  1637. PRS6 LJM PRS8 SET MASS STORAGE ADDRESS
  1638.  
  1639. PRS7 EXECUTE 3RG
  1640. LDC /3RG/RBFF CHANGE BUFFER ADDRESS
  1641. STM CPAA
  1642. LDC **
  1643. ORG *-1
  1644. LOC DRFB
  1645. UJN DRF2
  1646.  
  1647. LOC *O
  1648. STM DRFB
  1649. LDC /3RG/RCP
  1650. STM RIJD
  1651. LDD DI DISABLE RA/FL ADJUSTMENT
  1652. STM RIJA
  1653. LDN PSNI AVOID INCLUDING NFL INCREASE ON ROLLIN
  1654. STM JFLC
  1655. LDD CP
  1656. ADN STSW
  1657. CRD CM
  1658. LDD CM+1 SAVE ERROR FLAG
  1659. STD EF
  1660. LDD CN+2
  1661. SHN 21-13
  1662. MJN PRS8 IF RESTART CALL
  1663. AOM JFLB SET DMP= FLAG
  1664.  
  1665. * SET ROLLOUT/DM* FILE MASS STORAGE ADDRESS.
  1666.  
  1667. PRS8 LDN 0 CLEAR ROLLOUT FILE SECTOR
  1668. STD T7
  1669. LDM EJBF+5*SCHE+1 SET ROLLOUT FILE FIRST TRACK
  1670. STD T6
  1671. LDM EJBF+5*SCHE SET ROLLOUT FILE EQUIPMENT
  1672. STD T5
  1673. SFA EST READ EST ENTRY
  1674. ADK EQDE
  1675. CRD CM
  1676. LDD CM+4 READ WORD *DILL* OF MST ENTRY
  1677. SHN 3
  1678. ADN DILL
  1679. CRD CM
  1680. LDD CM+3
  1681. SHN 21-13
  1682. PJN PRS12 IF NOT A BUFFERED DEVICE
  1683. SHN 13-21-6 CHECK FOR UEM
  1684. LPN 7
  1685. LMN 4
  1686. ZJN PRS9 IF UEM
  1687. LDD CM+3
  1688. LPN 7
  1689. ZJN PRS10 IF NO DDP PATH
  1690. PRS9 LDK SSTL
  1691. CRD CN
  1692. LDD CN+3
  1693. SHN 21-11
  1694. PJN PRS12 IF DDP PATH ENABLED
  1695. PRS10 LDN RIDL-1 MOVE *RID* TO *RIM*
  1696. STD T1 INITIALIZE INDEX
  1697. PRS11 LDM RIDA,T1
  1698. STM RIMX,T1
  1699. SOD T1 DECREMENT INDEX
  1700. PJN PRS11 IF MOVE INCOMPLETE
  1701. LDD CM+3
  1702. SHN 21-12
  1703. MJN PRS12 IF BUFFERED DEVICE
  1704. LDC RJMI ENABLE *ENDMS* IN *JFL*
  1705. STM JFLA
  1706. PRS12 LDD CP PRESET ALTERNATE RESPONSE ADDRESS
  1707. STM JECB+4
  1708. LDN SSTL SET MEMORY CLEARING STATUS
  1709. CRD CM
  1710. LDD CM
  1711. SHN 0-12
  1712. LPN 1
  1713. ADC LDNI
  1714. STM AFLA
  1715. STM CSMC
  1716. LJM PRSX RETURN
  1717. RID SPACE 4,15
  1718. ** RID - ROLLIN USING DIRECT TRANSFER TO CM.
  1719. *
  1720. * ENTRY (A) = LWA TO ROLLIN.
  1721. * (CI) = FWA TO ROLLIN.
  1722. * (T4) = CHANNEL.
  1723. * (T5) = EQUIPMENT.
  1724. * (T6) = CURRENT TRACK.
  1725. * (T7) = CURRENT SECTOR.
  1726. *
  1727. * EXIT TO *MSR* IF MASS STORAGE ERROR
  1728. *
  1729. * USES CM - CM+4.
  1730. *
  1731. * CALLS DDT.
  1732.  
  1733.  
  1734. RIDA EQU *
  1735. LOC RIMX
  1736.  
  1737. RID SUBR ENTRY/EXIT
  1738. STD CM
  1739. SBD FL
  1740. MJN RID1 IF LWA .LT. FL
  1741. LDD FL SET LWA .EQ. FL
  1742. STD CM
  1743. RID1 LDD CI SET RELATIVE CM ADDRESS
  1744. SHN 6
  1745. STD CM+4
  1746. SHN -14
  1747. STD CM+3
  1748. LDD CM SET SECTOR COUNT
  1749. SBD CI
  1750. LMC /CPS/RDDS*10000 SET READ FUNCTION
  1751. RJM DDT READ DIRECT TO CM
  1752. PJN RIDX IF NO READ ERRORS
  1753. RJM MSR PROCESS ERROR - NO RETURN
  1754. RJM HNG HANG PP
  1755.  
  1756. LOC *O
  1757. RIDL EQU *-RIDA LENGTH OF *RID*
  1758.  
  1759. ERRNG RIML-RIDL ROUTINE *RID* OVERFLOWS *RIM*
  1760. SPACE 4,10
  1761. ** PRESET COMMON DECKS.
  1762.  
  1763.  
  1764. *CALL COMPSIC
  1765. SPACE 4,10
  1766. IFP HERE
  1767. TSIC SPACE 4,10
  1768. ** INSTRUCTION RELOCATION TABLE AND ASSOCIATED DATA.
  1769.  
  1770.  
  1771. PCAD EQU CM+3 PCP ADDRESS
  1772.  
  1773. TSIC BSS 0 INSTRUCTION RELOCATION TABLE
  1774. LIST D
  1775. SIC HERE
  1776. LIST *
  1777. CON 0 TERMINATE ENTRIES
  1778. SPACE 4,10
  1779. * CHECK FOR OVERFLOW.
  1780.  
  1781.  
  1782. OVERFLOW PPFW,EPFW
  1783. TTL 1RI/3RJ - PROCESS DELAYED *ALTER* FUNCTIONS.
  1784. TITLE
  1785. QUAL 3RJ
  1786. IDENT 3RJ,E1RI PROCESS DELAYED *ALTER* FUNCTIONS.
  1787. BASE M
  1788. SST
  1789. *COMMENT 1RI - PROCESS DELAYED *ALTER* FUNCTIONS.
  1790. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  1791. ORG E1RI
  1792. 3RJ SPACE 4,15
  1793. ** PGA - PROCESS DELAYED *ALTER* FUNCTIONS.
  1794. *
  1795. * ENTRY (ZR - ZR+4) = 0.
  1796. *
  1797. * USES T4 - T7, CM - CM+4, CN - CN+4.
  1798. *
  1799. * CALLS CHG, DFM.
  1800. *
  1801. * MACROS MONITOR.
  1802.  
  1803.  
  1804. PGA SUBR ENTRY/EXIT
  1805. LDM SBUF+QBSS
  1806. STD T7
  1807. LDN 5
  1808. STD T4
  1809. LCN 0 INITIALIZE FUNCTION INDEX
  1810. STD T5
  1811. PGA1 AOD T5 INCREMENT FUNCTION INDEX
  1812. LDD T7
  1813. ZJN PGAX IF ALL FUNCTIONS WERE PROCESSED
  1814. SHN 21-0
  1815. STD T7
  1816. PJN PGA1 IF FUNCTION NOT SELECTED
  1817. LDM TGAP,T5 SET PROCESSOR ADDRESS
  1818. NJN PGA2 IF PROCESSOR EXISTS FOR FUNCTION
  1819. RJM CHG CONDITIONAL HANG
  1820. UJN PGA1 PROCESS NEXT FUNCTION
  1821.  
  1822. PGA2 STD T6
  1823. LJM 0,T6 ENTER FUNCTION PROCESSOR
  1824.  
  1825. * DAYFILE MESSAGE PROCESSOR.
  1826.  
  1827. PGA3 LDC SBUF+QBSS+1*5 ISSUE MESSAGE
  1828. RJM DFM
  1829. PGA4 UJN PGA1 CONTINUE
  1830.  
  1831. * *JSN,CFO* PROCESSOR.
  1832.  
  1833. PGA5 LDD FL
  1834. ZJN PGA4 IF NO CM FL ASSIGNED
  1835. LDD RA
  1836. SHN 6
  1837. CRD CN
  1838. LDD CN+3
  1839. LPN 4
  1840. ZJN PGA4 IF JOB IS NOT READY FOR DATA
  1841. LDC SBUF+QBSS+1*5 ISSUE MESSAGE
  1842. RJM DFM
  1843. LDD MA REMOVE PREFIX
  1844. CWM SBUF+QBSS+1*5+3,T4
  1845. SBD T4
  1846. CRM SBUF+QBSS+1*5,T4
  1847. LDN 0
  1848. STM SBUF+QBSS+5*5+2
  1849. STM SBUF+QBSS+5*5+3
  1850. STM SBUF+QBSS+5*5+4
  1851. LDD RA MOVE DATA TO JOB CM FL
  1852. SHN 6
  1853. ADN 70
  1854. CWM SBUF+QBSS+1*5,T4
  1855. LDD CN+3 CLEAR CFO AND PAUSE FLAGS IN RA+0
  1856. SCN 5
  1857. STD CN+3
  1858. LDD RA
  1859. SHN 6
  1860. CWD CN
  1861. PGA6 UJP PGA4 CONTINUE
  1862.  
  1863. * *JSN,GO* PROCESSOR.
  1864.  
  1865. PGA7 LDC =C* GO.* SET DAYFILE MESSAGE ADDRESS
  1866. STM PGAA
  1867. LDN 0
  1868. UJN PGA9 CAUSE PAUSE FLAG NOT TO BE SET
  1869.  
  1870. * *JSN,PAUSE* PROCESSOR.
  1871.  
  1872. PGA8 LDN 1 CAUSE PAUSE FLAG TO BE SET
  1873. PGA9 STD T6
  1874. LDC =C* PAUSE.* ISSUE DAYFILE MESSAGE
  1875. * LDC =C* GO.* (PROCESSING *JSN,GO*)
  1876. PGAA EQU *-1
  1877. RJM DFM
  1878. LDD CP CLEAR NOGO AND/OR PAUSE FLAG
  1879. ADN SNSW
  1880. CRD CM
  1881. LDD CM+3
  1882. SCN 3
  1883. LMD T6
  1884. STD CM+3
  1885. LDD CP
  1886. ADN SNSW
  1887. CWD CM
  1888. ADN MS2W-SNSW CLEAR MESSAGE AT *MS2W*
  1889. CWD ZR
  1890. LDD FL
  1891. ZJN PGA10 IF NO CM FL ASSIGNED
  1892. LDD RA SET/CLEAR *PAUSE* FLAG IN RA+0
  1893. SHN 6
  1894. CRD CM
  1895. LDD CM+3
  1896. SCN 3
  1897. LMD T6
  1898. STD CM+3
  1899. LDD RA
  1900. SHN 6
  1901. CWD CM
  1902. PGA10 LJM PGA1 CONTINUE
  1903.  
  1904. * *JSN,ONSW* PROCESSOR.
  1905.  
  1906. PGA11 LDM SBUF+QBSS+2
  1907. SHN 6
  1908. UJN PGA13 CONTINUE
  1909.  
  1910. * *JSN,OFFSW* PROCESSOR.
  1911.  
  1912. PGA12 LDN 0 BUILD SETTING MASK
  1913. PGA13 STD T6
  1914. LCN 0 BUILD CLEARING MASK
  1915. LMM SBUF+QBSS+2
  1916. SHN 6
  1917. STM PGAC
  1918. LDD CP READ SENSE SWITCH WORD
  1919. ADK SNSW
  1920. CRD CN
  1921. LDD CN+4 SET/CLEAR SENSE SWITCHES
  1922. LPC **
  1923. PGAC EQU *-1
  1924. LMD T6
  1925. STD CN+4
  1926. LDD CP
  1927. ADN SNSW
  1928. CWD CN
  1929. LDD FL
  1930. ZJN PGA14 IF NO CM FL ASSIGNED
  1931. LDD RA SET/CLEAR SWITCH IN RA+0
  1932. SHN 6
  1933. CRD CM
  1934. LDD CM+4
  1935. LMD CN+4
  1936. LPN 77
  1937. LMD CN+4
  1938. STD CM+4
  1939. LDD RA
  1940. SHN 6
  1941. CWD CM
  1942. PGA14 LJM PGA1 CONTINUE
  1943. TGAP SPACE 4,10
  1944. ** TGAP - TABLE OF DELAYED *ALTER* FUNCTION PROCESSORS.
  1945. *
  1946. * EACH ENTRY CONTAINS THE ADDRESS OF THE PROCESSOR ASSOCIATED
  1947. * WITH THE FUNCTION.
  1948.  
  1949.  
  1950. TGAP INDEX
  1951. INDEX SSSF,PGA11 SET SENSE SWITCHES
  1952. INDEX CSSF,PGA12 CLEAR SENSE SWITCHES
  1953. INDEX GOSF,PGA7 PROCESS *GO* COMMAND
  1954. INDEX DYSF,PGA3 PROCESS *COMMENT* COMMAND
  1955. INDEX CFSF,PGA5 PROCESS *CFO* COMMAND
  1956. INDEX EMSF,PGA3 ISSUE ERROR MESSAGE
  1957. INDEX PASF,PGA8 PROCESS *PAUSE* COMMAND
  1958. INDEX 14
  1959. SPACE 4,10
  1960. * CHECK FOR OVERFLOW.
  1961.  
  1962.  
  1963. OVERFLOW E1RI,EPFW
  1964. TTL 1RI/3RI - PROCESS SERVICE CLASS CHANGE.
  1965. TITLE
  1966. QUAL 3RI
  1967. IDENT 3RI,E1RI PROCESS SERVICE CLASS CHANGE.
  1968. BASE M
  1969. SST
  1970. *COMMENT 1RI - PROCESS SERVICE CLASS CHANGE.
  1971. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  1972. ORG E1RI
  1973. QUAL$ SET 1
  1974. 3RI SPACE 4,10
  1975. ** PSC - PROCESS SERVICE CLASS CHANGE.
  1976. *
  1977. * ENTRY (CN) = NEW SERVICE CLASS.
  1978. *
  1979. * CALLS CSC.
  1980.  
  1981.  
  1982. PSC SUBR ENTRY/EXIT
  1983. LDD CN
  1984. RJM CSC CHANGE SERVICE CLASS
  1985. UJN PSCX RETURN
  1986. SPACE 4,10
  1987. * COMMON DECKS.
  1988.  
  1989.  
  1990. VCPT EQU /REM/VCPT
  1991. VCHT EQU /REM/VCHT
  1992. CPRS EQU /CPS/CPRS
  1993. ABSR EQU /CPS/ABSR
  1994. ABCP EQU /CPS/ABCP
  1995. ABMS EQU /CPS/ABMS
  1996. ABMT EQU /CPS/ABMT
  1997. ABPF EQU /CPS/ABPF
  1998. ABAD EQU /CPS/ABAD
  1999. ABNA EQU /CPS/ABNA
  2000. ABCS EQU /CPS/ABCS
  2001. ABCF EQU /CPS/ABCF
  2002. ABVF EQU /CPS/ABVF
  2003. ABNB EQU /CPS/ABNB
  2004. ABMP EQU /CPS/ABMP
  2005. ABAC EQU /CPS/ABAC
  2006. ABOF EQU /CPS/ABOF
  2007. SSIS EQU /CPS/SSIS SET SUBSYSTEM IDENTIFICATION FIELD
  2008. AST$ SET 1 ASSEMBLE SSCT/SSAT UPDATE FUNCTIONS
  2009. *CALL COMPAST
  2010. *CALL COMPCSC
  2011. *CALL COMPRJC
  2012. *CALL COMPSTA
  2013. SPACE 4,10
  2014. * CHECK FOR OVERFLOW.
  2015.  
  2016.  
  2017. OVERFLOW E1RI,EPFW
  2018. SPACE 4,10
  2019. QUAL
  2020. TTL 1RI/3RH - PROCESS ON-LINE INTERACTIVE JOBS.
  2021. TITLE MAIN ROUTINES.
  2022. QUAL 3RH
  2023. IDENT 3RH,PRHX
  2024. *COMMENT 1RI - PROCESS INTERACTIVE JOBS.
  2025. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  2026. SPACE 4,10
  2027. ** 3RH - PROCESS ON-LINE INTERACTIVE JOBS.
  2028. SPACE 4,10
  2029. ORG E1RI
  2030. PRH SUBR ENTRY/EXIT
  2031. UJN PRHX RETURN
  2032. EDA SPACE 4,10
  2033. ** EDA - ENTER JOB COMMAND.
  2034. *
  2035. * EXIT JOB INITIATION COMMAND MOVED TO THE COMMAND BUFFER.
  2036. * *1MI* TERMINAL I/O DRIVER IS INHIBITED FROM
  2037. * RECIEVING INPUT AHEAD ON COMPLETION OF ROLLIN
  2038. * IF USER BREAK AND EXTENDED REPRIEVE PROCESSING
  2039. * ARE CURRENT. *1AJ* WILL REISSUE THE INPUT REQUEST
  2040. * SUBSEQUENT TO ERROR FLAG PROCESSING.
  2041. *
  2042. * USES PP, T1, CM - CM+4, CN - CN+4.
  2043. *
  2044. * CALLS EJP, RRR, SRR.
  2045. *
  2046. * MACROS DELAY, MONITOR, PAUSE.
  2047.  
  2048.  
  2049. EDA SUBR ENTRY/EXIT
  2050. RJM SRR SET R-REGISTER TO IAF RA
  2051. LDD TT
  2052. SHN 14
  2053. LMD TT+1
  2054. ADN /REM/VROT
  2055. CRD CN
  2056. RJM RRR RESTORE R-REGISTER
  2057. LDD CN+1 SET COMMAND POT MEMORY POINTER
  2058. STD PP
  2059. LDD CN+4 CLEAR JOB CONTINUATION
  2060. SCN 4
  2061. STD CN+4
  2062.  
  2063. * ENTER COMMAND AND PARAMETERS.
  2064.  
  2065. LDC **
  2066. EDAA EQU *-1 (ZERO IF JOB STEP INITIATION)
  2067. ZJN EDA2 IF JOB STEP INITIATION
  2068.  
  2069. * INHIBIT *1MI* TERMINAL I/O DRIVER INPUT AHEAD PROCESSING
  2070. * ON USER BREAK AND EXTENDED REPRIEVE PROCESSING.
  2071.  
  2072. LDD EF OUTSTANDING ERROR FLAG
  2073. LMN TIET
  2074. ZJN EDA1 IF USER BREAK ONE
  2075. LMN TIET&TAET
  2076. NJP EDA4 IF NOT USER BREAK TWO
  2077. EDA1 LDM CBUF+EECW*5
  2078. SHN 21-12
  2079. MJN EDA3 IF EXTENDED REPRIEVE PROCESSING
  2080. LJM EDA4 COMPLETE *EDA* PROCESS
  2081.  
  2082. * SET COMMAND BUFFER.
  2083.  
  2084. EDA2 RJM EJP ENTER JOB PARAMETERS
  2085.  
  2086. * RELEASE COMMAND POT MEMORY AND COMPLETE.
  2087.  
  2088. EDA3 LDN 0 CLEAR POT MEMORY POINTER
  2089. STD CN+1
  2090. LDD PP COMMAND POT POINTER
  2091. ZJP EDA4 IF NO COMMAND
  2092. LDN ZERL DROP POT MEMORY
  2093. CRD CM
  2094. LDC /REM/VDPO DROP POT MEMORY REQUEST
  2095. STD CM
  2096. LDD PP
  2097. STD CM+3 SET TO DROP ENTIRE POT CHAIN
  2098. LDD TN TERMINAL CONNECTION NUMBER TO REQUEST
  2099. STD CM+4
  2100. LDD MA
  2101. CWD CM
  2102. EDA3.1 LDK ZERL
  2103. CRD CM
  2104. MONITOR TSEM
  2105. LDD CM+1
  2106. ZJN EDA4 IF *IAF* INACCESSIBLE OR ERROR
  2107. LMC 7777
  2108. NJN EDA4 IF REQUEST COMPLETE
  2109. PAUSE ST
  2110. LDC 3600 *TSEM* QUEUE FULL - DELAY AND RETRY
  2111. STD T1
  2112. EDA3.2 DELAY
  2113. SOD T1
  2114. ZJN EDA3.1 IF TIME TO REISSUE REQUEST
  2115. UJN EDA3.2 CONTINUE TO DELAY
  2116.  
  2117. * COMPLETE *EDA* PROCESS.
  2118.  
  2119. EDA4 RJM SRR SET R-REGISTER TO IAF RA
  2120. LDD TT TERMINAL TABLE ADDRESS
  2121. SHN 14
  2122. LMD TT+1
  2123. ADN /REM/VROT
  2124. CWD CN REWRITE *VROT*
  2125. RJM RRR RESTORE R-REGISTER
  2126. UJP EDAX RETURN
  2127. TOP SPACE 4,10
  2128. ** TOP - SKIP TERMINAL OUTPUT.
  2129. *
  2130. * CALLS RNS.
  2131.  
  2132.  
  2133. TOP SUBR
  2134. LDM SBUF+EJRO+JSNE*5+4
  2135. SHN -7
  2136. LPN 17
  2137. LMK NICS
  2138. ZJN TOPX IF NOT INTERACTIVE STATUS AT ROLLOUT
  2139. TOP1 LDC BFMS+DTSF
  2140. RS2. RJM RNS
  2141. SHN -6
  2142. NJN TOP1 IF NOT EOR
  2143. STM RNS CLEAR *RNS* SO *3RF* WILL NOT BE CONFUSED
  2144. UJN TOPX RETURN
  2145. TITLE SUBROUTINES.
  2146. EJP SPACE 4,10
  2147. ** EJP - ENTER JOB PARAMETERS.
  2148. *
  2149. * ENTRY (PP) = POT POINTER OF TERMINAL COMMAND.
  2150. *
  2151. * USES T1, T2, T7, T8, CM - CM+4, PP.
  2152. *
  2153. * CALLS RRR, SPA, SRR, TCL, UPP.
  2154. *
  2155. * MACROS MONITOR, NFA.
  2156.  
  2157.  
  2158. EJP SUBR
  2159. LDN 0
  2160. STM CBUF+CSPW*5+2 CLEAR COMMAND COUNT
  2161. LDM CBUF+SRUW*5 CLEAR TIME AND SRU LIMITS
  2162. LPC 301
  2163. STM CBUF+SRUW*5
  2164. LDC 4000 SET EOR ON INPUT
  2165. STM CBUF+CSPW*5+1
  2166. LDD CP READ *CCL* DATA
  2167. ADC JCDW
  2168. CRD CM
  2169. STD T8 SAVE ADDRESS OF *JCDW*
  2170. LDD CM+2 CLEAR PROCEDURE NESTING LEVEL
  2171. LPC 6000
  2172. STD CM+2
  2173. LDD T8
  2174. CWD CM
  2175. LDM CBUF+TXSW*5 SET SUBSYSTEM
  2176. LPN 77
  2177. SHN 14
  2178. EJPA LMN 0
  2179. * LMN XX (SUBSYSTEM CODE)
  2180. SHN 6
  2181. STM CBUF+TXSW*5
  2182. LDC ** CHECK FOR PREPROCESSOR
  2183. EJPB EQU *-1 (PREPROCESSOR COMMAND WORD COUNT)
  2184. STD T1
  2185. ZJN EJP1 IF NO COMMAND TO TRANSFER
  2186. NFA CSBN
  2187. CWM EJPC,T1 TRANSFER PREPROCESSOR COMMAND
  2188. EJP1 LDD PP
  2189. NJN EJP2 IF DATA TO TRANSFER
  2190. STD T1
  2191. LJM EJP5 NO DATA TO TRANSFER, CONTINUE
  2192.  
  2193. EJP2 LDN /REM/VCPC READ COMMAND BUFFER
  2194. STD T1
  2195. RJM SRR SET R-REGISTER TO IAF RA
  2196. RJM SPA
  2197. CRM CLBF,T1
  2198. RJM RRR RESTORE R-REGISTER
  2199. NFA CSBN
  2200. ADM EJPB
  2201. CWM CLBF,T1
  2202. LDC CLBF+/REM/VCPC*5-5 FIND COMMAND LENGTH
  2203. STD T2
  2204. EJP3 LDI T2
  2205. NJN EJP4 IF LAST WORD FOUND
  2206. LCN 5
  2207. RAD T2
  2208. SOD T1
  2209. NJN EJP3 IF NOT AT MAXIMUM
  2210. EJP4 LDM 4,T2
  2211. ZJN EJP5 IF TERMINATOR WORD
  2212. AOD T1
  2213. EJP5 LDC CSBN SET FWA OF COMMAND BUFFER
  2214. STM CBUF+CSPW*5+3
  2215. SBD T1 SET LWA+1
  2216. SBM EJPB
  2217. STM CBUF+CSPW*5+4
  2218.  
  2219. * IF A PROCEDURE FILE EXISTS, DROP TRACKS.
  2220.  
  2221. LDM CBUF+CSSW*5
  2222. SHN 21-13
  2223. MJN EJP6 IF NO PROCEDURE FILE
  2224. LDM CBUF+CSSW*5+1
  2225. ZJN EJP6 IF NO TRACK
  2226. STD CM+2
  2227. LDM CBUF+CSSW*5
  2228. LPC 777
  2229. LMD TH SET RETURN-ON-INACCESSIBLE BIT
  2230. STD CM+1 SET EQUIPMENT
  2231. MONITOR DTKM
  2232. LDD CM+1
  2233. ZJN EJP5.1 IF DEVICE ACCESSIBLE
  2234. LDK ZERL IGNORE PRU COUNT
  2235. CRD CM
  2236. UJN EJP6 CONTINUE
  2237.  
  2238. EJP5.1 LDD CM+3 SAVE PRU COUNT
  2239. STM RCPE+3
  2240. LDD CM+4
  2241. STM RCPE+4
  2242. EJP6 LDN ZERL
  2243. CRD CM
  2244. CRM CBUF+CSSW*5,ON
  2245. LDD FL
  2246. ZJN EJP8 IF NO FL
  2247. ADD RA PRESET WORD COUNT = 0 FOR *CLB=*
  2248. SBN 1
  2249. SHN 6
  2250. CWD CM
  2251.  
  2252. * CHECK FOR CHAINED POT WHICH IMPLIES *IEDIT* COMMAND LINE.
  2253. * TO BE TRANSFERRED TO FL-100B.
  2254.  
  2255. LDD PP
  2256. ZJN EJP8 IF NO COMMAND POT POINTER
  2257. STD T7
  2258. RJM SRR SET R-REGISTER TO IAF RA
  2259. RJM UPP CHECK FOR CHAIN
  2260. RJM RRR RESTORE R-REGISTER
  2261. LDD PP
  2262. ZJN EJP7 IF NO MORE POTS
  2263. RJM TCL TRANSFER COMMAND LINE
  2264. EJP7 LDD T7
  2265. STD PP
  2266. EJP8 LJM EJPX RETURN
  2267.  
  2268.  
  2269. EJPC VFD 60/0
  2270. VFD 60/0
  2271. TCL SPACE 4,10
  2272. ** TCL - TRANSFER COMMAND LINE.
  2273. *
  2274. * ENTRY (PP) = POT POINTER OF COMMAND LINE.
  2275. *
  2276. * USES T1 - T5, CM - CM+4.
  2277. *
  2278. * CALLS RRR, SPA, SRR, UPP.
  2279.  
  2280.  
  2281. TCL SUBR ENTRY/EXIT
  2282. LDD FL
  2283. ADD RA SET ADDRESS OF FL-100
  2284. SBN 1
  2285. SHN 6
  2286. ADN 1
  2287. STD T5
  2288. SHN -14
  2289. STD T4
  2290. LDN 0
  2291. STD T3 INITIALIZE WORD COUNT
  2292. LDN /REM/VCPC
  2293. STD T2
  2294. TCL1 RJM SRR SET R-REGISTER TO IAF RA
  2295. RJM SPA SET POT ADDRESS
  2296. CRM CLBF,T2 READ ONE POT
  2297. RJM UPP
  2298. RJM RRR RESTORE R-REGISTER
  2299. LDD PP
  2300. ZJN TCL2 IF NO MORE POTS
  2301. LDN /REM/VCPC INCREMENT WORD COUNT
  2302. RAD T3
  2303. SBN 76
  2304. PJN TCL2 IF OVERFLOW, TRUNCATE
  2305. LDD T4
  2306. SHN 14
  2307. ADD T5
  2308. CWM CLBF,T2
  2309. STD T5
  2310. SHN -14
  2311. STD T4
  2312. UJN TCL1 CONTINUE PROCESSING
  2313.  
  2314. TCL2 LDN 1 SET LAST POT WORD COUNT
  2315. STD T2
  2316. LDC CLBF+4 SET BUFFER POINTER
  2317. STD T1
  2318. TCL3 LDI T1
  2319. ZJN TCL4 IF EOL IN BUFFER
  2320. LDD T2 CHECK WORD COUNT
  2321. SBN /REM/VCPC
  2322. ZJN TCL4 IF END OF BUFFER
  2323. AOD T2
  2324. LDN 5
  2325. RAD T1
  2326. UJN TCL3 CHECK NEXT WORD
  2327.  
  2328. TCL4 LDN ZERL CLEAR CM - CM+4
  2329. CRD CM
  2330. LDD T2 SET COMPOSITE WORD COUNT
  2331. ADD T3
  2332. STD CM+4
  2333. LDD T4 WRITE LAST POT
  2334. SHN 14
  2335. ADD T5
  2336. CWM CLBF,T2
  2337. SBD CM+4 WRITE WORD COUNT
  2338. SBN 1
  2339. CWD CM
  2340. LJM TCLX EXIT
  2341. SPACE 4,10
  2342. * COMMON DECKS.
  2343.  
  2344.  
  2345. QUAL
  2346. PIR$ EQU 1 SELECT ASSEMBLY OF *PIR* FOR IAF R-REG
  2347. QUAL *
  2348. *CALL COMPSRR
  2349. *CALL COMPSPA
  2350. *CALL COMPUPP
  2351.  
  2352. SPACE 4,10
  2353. CLBF EQU * COMMAND LINE BUFFER
  2354.  
  2355.  
  2356. ERRNG BFMS-*
  2357. TITLE INITIALIZATION.
  2358. PRS SPACE 4,15
  2359. ** PRS - PRESET.
  2360. *
  2361. * ENTRY (DI) = *UJNI*+2.
  2362. * (EF) = ERROR FLAG FROM EJT ENTRY.
  2363. *
  2364. * EXIT (TT - TT+1) = TERMINAL TABLE ADDRESS.
  2365. * (EF) = 7777 IF *IAF* INACCESSIBLE.
  2366. *
  2367. * USES EF, EP, TN, CM - CM+4, CN - CN+4, FS - FS+4, T1 - T7.
  2368. *
  2369. * CALLS AST, CHG, PIR, RRR, SRR, STA.
  2370. *
  2371. * MACROS MONITOR.
  2372.  
  2373.  
  2374.  
  2375. PRS SUBR ENTRY/EXIT
  2376.  
  2377. * CHECK ACCESSIBILITY OF *IAF*.
  2378.  
  2379. LDC IFSI+FECF*10000
  2380. RJM AST GET SSCT ENTRY
  2381. SHN 21-13
  2382. MJN PRS1 IF *IAF* ACCESSIBLE
  2383. PRS0 LDD DI DISABLE ON-LINE INTERACTIVE PROCESSING
  2384. STM RIJC
  2385. STM RIJE
  2386. LDD EF
  2387. NJN PRSX IF ERROR FLAG IS SET
  2388. LDK 10*/CPS/ROSU SET ROLLOUT FLAG TO SUSPEND JOB
  2389. RAM RCPD
  2390. LCN 0 DISABLE PP AND CPU RESTART
  2391. STD EF
  2392. UJN PRSX RETURN
  2393.  
  2394. * SET TERMINAL TABLE ADDRESS.
  2395.  
  2396. PRS1 RJM PIR PRESET WITH IAF R-REGISTER
  2397. LDM CBUF+5*TTNW+1 SET CONNECTION NUMBER
  2398. STD TN
  2399. RJM SRR SET R-REGISTER TO IAF RA
  2400. RJM STA SET TERMINAL TABLE ADDRESS
  2401. ADN /REM/VFNT
  2402. CRD T3
  2403. ADN /REM/VROT-/REM/VFNT
  2404. CRD CN
  2405. ADN /REM/VSTT-/REM/VROT
  2406. CRD FS
  2407. RJM RRR RESTORE R-REGISTER
  2408. LDD CN+4 MAKE SURE *VROT* BIT ZERO IS NOT SET
  2409. LPN 1
  2410. ZJN PRS1.1 IF INTERLOCK IS CLEAR
  2411. LDK SWET SET ERROR FLAG
  2412. STD EF
  2413. RJM CHG CONDITIONAL HANG
  2414. LJM PRS0 DISABLE INTERACTIVE PROCESSING
  2415.  
  2416. PRS1.1 LDD T3+3 TERMINATE PRIMARY FILE NAME
  2417. SCN 77
  2418. STD T3+3
  2419. LDD CN+4
  2420. LPN 4
  2421. STM EDAA
  2422. ZJN PRS3 IF NOT CONTINUATION
  2423. PRS2 LJM PRSX RETURN
  2424.  
  2425. PRS3 LDD EP SIMULATE *SSM=* ON NEW STEP
  2426. SCN 1
  2427. LMN 1
  2428. STD EP
  2429. LDD CP SET JOB STEP INITIATION
  2430. ADC DBAW
  2431. CRD CM
  2432. LDD CM
  2433. LPC 2777
  2434. LMC 1000
  2435. STD CM
  2436. LDD CP
  2437. ADC DBAW
  2438. CWD CM
  2439. LDC LDNI+0
  2440. STM RCPB
  2441. LDC 7677 MASK TO CLEAR SLICE FLAG
  2442. STM RCPG
  2443. LDD FS+3 SET SUBSYSTEM CODE
  2444. LPN 77
  2445. RAM EJPA
  2446. LDD CN CHECK FOR PREPROCESSOR INDEX
  2447. LPN 77
  2448. ZJP PRS2 IF NO PREPROCESSOR INDEX PRESENT
  2449. STD T1
  2450. LDD CN CLEAR PREPROCESSOR INDEX
  2451. SCN 77
  2452. STD CN
  2453. RJM SRR SET R-REGISTER TO IAF RA
  2454. LDD TT
  2455. SHN 14
  2456. LMD TT+1
  2457. ADN /REM/VROT
  2458. CWD CN
  2459. RJM RRR RESTORE R-REGISTER
  2460. LDD T1
  2461. SBN TPPIL+1
  2462. MJN PRS4 IF VALID PREPROCESSOR INDEX
  2463. LDN 0 SET NO ERROR FLAG
  2464. RJM CHG CONDITIONAL HANG
  2465. LJM PRSX RETURN
  2466.  
  2467. PRS4 LDM TPPI-1,T1
  2468. SHN 6
  2469. STD CM SAVE FILE FLAG
  2470. SHN -14
  2471. STD T2
  2472. LDN 0 PRESET TRANSFERRED BYTE COUNT
  2473. STD T1
  2474. PRS5 AOD T2
  2475. AOD T1
  2476. LDM TPPS-1,T2 TRANSFER PREPROCESSOR COMMAND
  2477. STM EJPC-1,T1
  2478. NJN PRS5 IF TRANSFER NOT COMPLETE
  2479. LDD CM
  2480. ZJN PRS9 IF NO FILE NAME REQUIRED
  2481.  
  2482. * MOVE FILE NAME.
  2483.  
  2484. LDN T3 SET FILE NAME ADDRESS
  2485. STD T2
  2486. PRS6 LDI T2 MOVE BYTE
  2487. STM EJPC-1,T1
  2488. ZJN PRS7 IF NO CHARACTERS IN BYTE
  2489. LPN 77
  2490. ZJN PRS8 IF ONE CHARACTER IN BYTE
  2491. AOD T1
  2492. AOD T2
  2493. UJN PRS6 CONTINUE TRANSFER
  2494.  
  2495. PRS7 LDC 2R..
  2496. PRS8 LMN 1R.
  2497. RAM EJPC-1,T1 STORE TERMINATOR
  2498.  
  2499. * CALCULATE CM WORD COUNT.
  2500.  
  2501. PRS9 AOM EJPB INCREMENT CM WORD COUNT
  2502. LCN 5 DIVIDE BY 5
  2503. RAD T1
  2504. PJN PRS9 IF DIVISION NOT COMPLETE
  2505. LJM PRSX RETURN
  2506. TPPI SPACE 4,10
  2507. ** TPPI - TABLE OF PREPROCESSOR INDICES.
  2508. *
  2509. * 6/ INDEX,6/ FLAG
  2510. * INDEX OFFSET INTO *TPPS* TABLE OF FIRST BYTE OF
  2511. * PREPROCESSOR COMMAND.
  2512. * FLAG 1 IF PRIMARY FILE NAME IS REQUIRED.
  2513. * 0 OTHERWISE.
  2514.  
  2515.  
  2516. TPPI VFD 6/PP1-TPPS,6/1
  2517. VFD 6/PP2-TPPS,6/1
  2518. TPPIL EQU *-TPPI
  2519. TPPS SPACE 4,10
  2520. ** TPPS - TABLE OF PREPROCESSOR COMMANDS.
  2521. *
  2522. * THESE ENTRIES MUST BE BLANK PADDED TO GUARANTEE AN EVEN
  2523. * NUMBER OF CHARACTERS IN EACH COMMAND. IF NO PRIMARY FILE
  2524. * IS REQUIRED, THE COMMAND TERMINATOR MUST APPEAR IN THE
  2525. * ENTRY. THE TOTAL LENGTH OF A PREPROCESSOR COMMAND MUST
  2526. * NOT EXCEED SPACE RESERVED AT *EJPC*.
  2527.  
  2528.  
  2529. TPPS BSS 0
  2530. PP1 DATA C*$SORT,*
  2531. CON 0
  2532. PP2 DATA C*$PACK,*
  2533. CON 0
  2534. SPACE 4,10
  2535. * COMMON DECKS.
  2536.  
  2537.  
  2538. *CALL COMPAST
  2539. *CALL COMPSTA
  2540. SPACE 4,10
  2541. * CHECK FOR OVERFLOW.
  2542.  
  2543.  
  2544. USE OVERFLOW
  2545.  
  2546. E3RH EQU * LWA+1 OF *3RH* OVERLAY
  2547. SPACE 4,10
  2548. OVERFLOW E1RI,EPFW
  2549. TTL 1RI/3RG - PROCESS DMP= JOBS.
  2550. TITLE
  2551. QUAL 3RG
  2552. IDENT 3RG,PRGX
  2553. *COMMENT 1RI - PROCESS SPECIAL ENTRY POINT JOBS.
  2554. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  2555. SPACE 4,10
  2556. ** 3RG - PROCESS DMP= JOBS.
  2557.  
  2558.  
  2559. ORG E1RI
  2560. PRG SUBR ENTRY/EXIT
  2561. UJN PRGX RETURN
  2562. RCP SPACE 4,10
  2563. ** RCP - RESTORE CONTROL POINT AREA.
  2564. *
  2565. * USES T1, T3, CM - CM+4, CN - CN+4.
  2566. *
  2567. * CALLS PCS, UCA, UEP.
  2568. *
  2569. * MACROS MONITOR, NFA, SFA.
  2570.  
  2571.  
  2572. RCP SUBR ENTRY/EXIT
  2573. RJM UEP UPDATE EXCHANGE PACKAGE
  2574. RJM PCS PROCESS CPU SELECTION
  2575. LDN DMPL-1 STORE EXCHANGE PACKAGE
  2576. ERRNZ DMPL-21 ADJUST CODE IF VALUE CHANGES
  2577. STD T1
  2578. LDD CP
  2579. CWM CBUF,T1
  2580.  
  2581. * UPDATE CONTROL AREAS.
  2582.  
  2583. LDM CBUF+STSW*5+4 SAVE ACTIVITY COUNT
  2584. SHN -4
  2585. LPN 17
  2586. STM ERSF
  2587. LDM CBUF+STSW*5+2 SAVE CPU STATUS
  2588. STM RCPA
  2589. LDD CP
  2590. ADN STSW
  2591. CRM CBUF+STSW*5,ON
  2592. ADN SEPW-STSW-1
  2593. CRD CM READ SPECIAL FLAG WORD
  2594. LDN 1 RESET PP QUEUE POINTER
  2595. STM CBUF+STSW*5+4
  2596. LDD CM+2
  2597. STD T3
  2598. LDD CP
  2599. ADN STSW RESTORE *STSW*
  2600. CWM CBUF+STSW*5,ON
  2601. ADN SPCW-STSW-1
  2602. CRD CM
  2603. LDD CM+1 SAVE CALL TYPE
  2604. STM RCPB
  2605. SHN 21-3
  2606. MJN RCP1 IF NO BLOCK TO MOVE
  2607. LDD CM+3
  2608. LPN 37
  2609. ADD CM+4
  2610. ZJN RCP1 IF NO BLOCK TO MOVE
  2611. LDD FL
  2612. ZJN RCP1 IF NO FL
  2613. * LDN DMPL-1 (T1) PREVIOUSLY SET UP CORRECTLY
  2614. * STD T1
  2615. NFA DMPN+1 MOVE *DMP=* BLOCK
  2616. CRM BFMS,T1
  2617. LDD CM+3
  2618. LPN 37
  2619. SHN 6
  2620. ADD RA
  2621. SHN 6
  2622. ADD CM+4
  2623. CWM BFMS,T1
  2624. RCP1 LDD CP
  2625. ADK RFCW
  2626. CRD CM
  2627. LDN 0 CLEAR DM* FILE POINTERS
  2628. STD CM
  2629. STD CM+1
  2630. LDD CP UPDATE *RFCW*
  2631. ADK RFCW
  2632. CWD CM
  2633. ADK SSCW-RFCW RESTORE SCP CONNECTIONS
  2634. CWM SBUF+SCPC,ON
  2635. SFA EJT,EO
  2636. ADK SCHE
  2637. CRD CM
  2638. LDD CM+2
  2639. LPC 7377 CLEAR *DMP=* ROLLOUT COMPLETE FLAG
  2640. STD CM+2
  2641. SFA EJT,EO
  2642. ADK SCHE
  2643. CWD CM
  2644. LDD T3 CHECK FOR RESTART
  2645. SHN 21-13
  2646. MJN RCP2 IF RESTART
  2647. NFA DMPN UPDATE *SPCW*
  2648. CRD CN
  2649. LDD CN+1 CLEAR *1RO* CALLED FLAG AND SSJ= FLAG
  2650. SCN 3
  2651. STD CN+1
  2652. LDN 0 CLEAR REQUEST
  2653. STD CN
  2654. LDD CP
  2655. ADC SPCW
  2656. CWD CN
  2657. LJM RCP8 PROCESS DMP= ROLLIN
  2658.  
  2659. * PROCESS RESTART ROLLIN.
  2660.  
  2661. RCP2 LDD CP CLEAR *SPCW*
  2662. ADC SPCW
  2663. CWD ZR
  2664. LDC LDDI+FS
  2665. STM ERSC
  2666. LDM CBUF+TIAW*5 VALIDATE SUBSYSTEM
  2667. SHN -6
  2668. SBN /REM/MSYS
  2669. MJN RCP3 IF VALID SUBSYSTEM
  2670. LDM CBUF+TIAW*5 CLEAR INCORRECT SUBSYSTEM
  2671. LPN 77
  2672. STM CBUF+TIAW*5
  2673. RCP3 LDD CP VALIDATE FIELD LENGTH PARAMETERS
  2674. ADN FLCW
  2675. CRD CM
  2676. ADN ELCW-FLCW
  2677. CRD CN
  2678. ADN SEPW-ELCW CLEAR SPECIAL ENTRY POINT WORD
  2679. CWD ZR
  2680. LDN 0 CLEAR LAST FILE EXECUTED
  2681. STM RBUF+EOCW*5+0
  2682. LDD CM+2
  2683. SBM CBUF+FLCW*5
  2684. MJN RCP4 IF LAST MFL VALID
  2685. LDD CM+2
  2686. SBM CBUF+FLCW*5+1
  2687. PJN RCP5 IF LAST CM RFL VALID
  2688. RCP4 LDD CP RESET CURRENT CM FL PARAMETERS
  2689. ADN FLCW
  2690. CRM CBUF+FLCW*5,ON
  2691. RCP5 LDD CN+2
  2692. SBM CBUF+ELCW*5
  2693. MJN RCP6 IF EXTENDED MEMORY MFL INCORRECT
  2694. LDD CN+2
  2695. SBM CBUF+ELCW*5+1
  2696. PJN RCP7 IF LAST EXTENDED MEMORY RFL VALID
  2697. RCP6 LDD CP RESET CURRENT ECS FL PARAMETERS
  2698. ADN ELCW
  2699. CRM CBUF+ELCW*5,ON
  2700. RCP7 LDC TRCU UPDATE CONTROL POINT AREA
  2701. RJM UCA
  2702. UJN RCP9 CONTINUE
  2703.  
  2704. * PROCESS DMP= ROLLIN.
  2705.  
  2706. RCP8 LDC TDCU UPDATE CONTROL POINT AREA
  2707. RJM UCA
  2708.  
  2709. * RESTORE CPU PRIORITY IF JOB IS NOT A SUBSYSTEM.
  2710.  
  2711. LDM EJBF+SCLE*5
  2712. SHN -6
  2713. LMN SSSC
  2714. ZJN RCP9 IF JOB IS A SUBSYSTEM
  2715. LDM CBUF+CWQW*5+1
  2716. SHN -11
  2717. LPN 1
  2718. ZJN RCP8.1 IF SET CPU PRIORITY TO SERVICE CLASS VALUE
  2719. LDM CBUF+CWQW*5 GET PRE-ROLLOUT CPU PRIORITY
  2720. LPC 1770
  2721. SHN -3
  2722. RCP8.1 STD CM+4 SET CPU PRIORITY
  2723. LDN /CPS/CPRS SET CPU PRIORITY SUBFUNCTION
  2724. STD CM+1
  2725. MONITOR SJCM
  2726. RCP9 LDC **
  2727. RCPA EQU *-1 (CPU STATUS BYTE OF *STSW*)
  2728. LPN 2
  2729. NJN RCP10 IF CPU ACTIVE
  2730. LDC **
  2731. RCPB EQU *-1 (*SPCW* BYTE 1)
  2732. LPN 4
  2733. LMN 4
  2734. RCP10 STM RIJF
  2735. LDC * DISABLE *1AJ* CALL
  2736. ORG *-1
  2737. LOC RIJI
  2738. UJN RIJ7
  2739. LOC *O
  2740. STM RIJI
  2741. LJM RCPX RETURN
  2742. UCA SPACE 4,10
  2743. ** UCA - UPDATE CONTROL POINT AREA.
  2744. *
  2745. * ENTRY (A) = *RESTOR* TABLE ADDRESS.
  2746. * (CBUF - CBUF+500) = FIRST HALF OF CPA.
  2747. * (RBUF - RBUF+500) = SECOND HALF OF CPA.
  2748. *
  2749. * EXIT CPA RESTORED.
  2750. *
  2751. * USES T1, T2, T3, BFMS - BFMS+500.
  2752.  
  2753.  
  2754. UCA SUBR ENTRY/EXIT
  2755. STM UCAA SET TABLE ADDRESS
  2756. ADN 1
  2757. STM UCAB
  2758. LDD CP PRESET CONTROL POINT AREA
  2759. CRM BFMS,HN
  2760. LDN 0 INITIALIZE TABLE OFFSET
  2761. STD T1
  2762. UCA1 LDM *,T1 SET CPA WORD OFFSET
  2763. * LDM (TABLE),T1
  2764. UCAA EQU *-1
  2765. NJN UCA2 IF NOT TERMINATOR
  2766. LJM UCA6 PROCESS TABLE TERMINATOR
  2767.  
  2768. UCA2 STD T2
  2769. SHN 21-13
  2770. MJN UCA4 IF ENTIRE CM WORD TO MOVE
  2771. LDM *,T1 SET BYTE MASK
  2772. * LDM (TABLE)+1,T1
  2773. UCAB EQU *-1
  2774. STM UCAE
  2775. LMC 7777
  2776. STM UCAC
  2777. LDM BFMS,T2 MASK OLD CPA BYTE
  2778. LPC *
  2779. * LPC -(MASK)
  2780. UCAC EQU *-1
  2781. STD T3
  2782. LDM CBUF,T2
  2783. * LDM RBUF,T2
  2784. UCAD EQU *-1
  2785. LPC *
  2786. * LPC (MASK)
  2787. UCAE EQU *-1
  2788. LMD T3
  2789. STM BFMS,T2
  2790. LDN 2 INCREMENT TABLE OFFSET
  2791. RAD T1
  2792. UCA3 UJN UCA1 LOOP
  2793.  
  2794. UCA4 LDC -4000 MOVE ENTIRE CM WORD
  2795. RAD T2 SET WORD OFFSET
  2796. ADC CBUF
  2797. * ADC RBUF (SECOND HALF OF CPA)
  2798. UCAF EQU *-1
  2799. STM UCAH
  2800. ADC BFMS-CBUF
  2801. * ADC BFMS-RBUF (SECOND HALF OF CPA)
  2802. UCAG EQU *-1
  2803. STM UCAI
  2804. LDD MA
  2805. CWM *,ON
  2806. * CWM (CBUF+(T2)),ON (FIRST HALF OF CPA)
  2807. * CWM (RBUF+(T2)),ON (SECOND HALF OF CPA)
  2808. UCAH EQU *-1
  2809. SBN 1
  2810. CRM *,ON
  2811. * CRM (BFMS+(T2)),ON
  2812. UCAI EQU *-1
  2813. AOD T1 INCREMENT TABLE OFFSET
  2814. UCA5 UJN UCA3 LOOP
  2815.  
  2816. UCA6 LDN 0 CHECK CPA SEGMENT
  2817. * LDN 1 (SECOND HALF OF CPA)
  2818. UCAJ EQU *-1
  2819. NJN UCA7 IF SECOND HALF OF CPA PROCESSED
  2820. AOM UCAJ SET SECOND HALF PROCESSED
  2821. LDD CP REWRITE FIRST HALF OF CPA
  2822. CWM BFMS,HN
  2823. CRM BFMS,HN READ SECOND HALF OF CPA
  2824. LDC RBUF
  2825. STM UCAD
  2826. STM UCAF
  2827. LDC BFMS-RBUF
  2828. STM UCAG
  2829. AOD T1 INCREMENT TABLE OFFSET
  2830. UJN UCA5 LOOP
  2831.  
  2832. UCA7 LDD CP UPDATE SECOND HALF OF CPA
  2833. ADD HN
  2834. CWM BFMS,HN
  2835. LDN LREC*2 RESTORE PP RECALL STACK
  2836. STD T1
  2837. LDD CP
  2838. ADC RECW
  2839. CWM RBUF+RECW*5-100*5,T1
  2840. LJM UCAX EXIT
  2841. TRCU SPACE 4,10
  2842. ** TRCU - TABLE OF RESTART CPA UPDATES.
  2843.  
  2844.  
  2845. TRCU RESTOR ECSW,0,0007
  2846. RESTOR SNSW,0,2000
  2847. RESTOR SNSW,4,7700
  2848. RESTOR MS1W,*
  2849. RESTOR MS1W+1,*
  2850. RESTOR MS1W+2,*
  2851. RESTOR MS1W+3,*
  2852. RESTOR MS1W+4,*
  2853. RESTOR MS2W,*
  2854. RESTOR MS2W+1,*
  2855. RESTOR MS2W+2,*
  2856. RESTOR FLCW,0,*
  2857. RESTOR FLCW,1,*
  2858. RESTOR ELCW,0,*
  2859. RESTOR ELCW,1,*
  2860. RESTOR TIAW,0,7700
  2861. RESTOR TIAW,2,*
  2862. RESTOR TIAW,3,*
  2863. RESTOR TIAW,4,*
  2864. RESTOR EECW,2,*
  2865. RESTOR EECW,3,7737
  2866. RESTOR EECW,*
  2867. RESTOR SEPW,0,0050
  2868. RESTOR JCDW,*
  2869. RESTOR JCRW,*
  2870. RESTOR DBAW,*
  2871. RESTOR LB1W,*
  2872. RESTOR LB2W,*
  2873. RESTOR LB3W,*
  2874. RESTOR EOCW,*
  2875. RESTOR LOFW,0,*
  2876. RESTOR LOFW,1,*
  2877. RESTOR LOFW,2,*
  2878. RESTOR
  2879. TDCU SPACE 4,10
  2880. ** TDCU - TABLE OF DMP= CPA UPDATES.
  2881.  
  2882.  
  2883. TDCU RESTOR SNSW,0,1000
  2884. RESTOR FLCW,*
  2885. RESTOR ELCW,*
  2886. RESTOR TIAW,2,*
  2887. RESTOR TIAW,3,*
  2888. RESTOR TIAW,4,*
  2889. RESTOR PFCW,*
  2890. RESTOR UIDW,*
  2891. RESTOR EECW,*
  2892. RESTOR ALMW,*
  2893. RESTOR ACLW,*
  2894. RESTOR AACW,*
  2895. RESTOR SEPW,*
  2896. RESTOR JCDW,*
  2897. RESTOR JCRW,*
  2898. RESTOR DBAW,*
  2899. RESTOR LOFW,0,*
  2900. RESTOR LOFW,1,*
  2901. RESTOR LOFW,2,*
  2902. RESTOR LB1W,*
  2903. RESTOR
  2904. SPACE 4,10
  2905. * BUFFERS.
  2906.  
  2907.  
  2908. USE BUFFERS
  2909.  
  2910. RBFF EQU *
  2911. RBUF EQU RBFF+2 CONTROL POINT AREA BUFFER (2ND PART)
  2912. BUFL EQU RBUF+500 BUFFER LENGTH
  2913. SPACE 4,10
  2914. * CHECK FOR OVERFLOW.
  2915.  
  2916.  
  2917. ERRNG BFMS-BUFL OVERFLOW INTO *BFMS*
  2918.  
  2919.  
  2920. OVERFLOW E1RI,EPFW
  2921. SPACE 4,10
  2922. QUAL *
  2923. SPACE 4,10
  2924. TTL 1RI/3RF - PROCESS TERMINATION ERRORS.
  2925. TITLE 1RI/3RF - PROCESS ERROR.
  2926. QUAL 3RF
  2927. IDENT 3RF,PREX
  2928. *COMMENT 1RI - PROCESS ERROR.
  2929. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  2930. SPACE 4,10
  2931. O3RF MAX /3RG/BUFL,/3RH/E3RH
  2932. ORG O3RF+5
  2933. PRE SPACE 4,30
  2934. ** PRE - PROCESS ERROR.
  2935. *
  2936. * THIS ROUTINE IS CALLED WHENEVER AN ERROR OCCURS THAT MAY
  2937. * PREVENT NORMAL COMPLETION OF THE ROLLIN. REFER TO ROUTINE
  2938. * *MSR* IN THE RESIDENT OVERLAY FOR A DESCRIPTION OF THE
  2939. * CIRCUMSTANCES LEADING TO A CALL OF *3RF*.
  2940. *
  2941. * ENTRY (CI) = SECTOR COUNT.
  2942. * (DS) = DRIVER STATUS FROM CELL *RDCT*.
  2943. * (EF) = ERROR FLAG FROM EJT.
  2944. * (EO) = EJT ORDINAL.
  2945. * (CN - CN+4) = MASS STORAGE PARAMETERS.
  2946. *
  2947. * EXIT THIS ROUTINE WILL RETURN TO *MSR* ONLY IF THE ROLLIN
  2948. * CAN BE CONTINUED. EXIT CONDITIONS UPON RETURN TO
  2949. * *MSR* ARE AS FOLLOWS -
  2950. * (A) = 0 IF I/O ON THE ROLLOUT FILE SHOULD CONTINUE.
  2951. * = NON-ZERO IF THE ROLLIN SHOULD CONTINUE
  2952. * WITHOUT READING THE ROLLOUT FILE.
  2953. * (EF) = NEW ERROR FLAG.
  2954. *
  2955. * USES EF, T1, CM - CM+4, IR - IR+4, T4 - T7.
  2956. *
  2957. * CALLS SNS, 1RJ.
  2958. *
  2959. * MACROS EXECUTE, MONITOR, NFA, SETMS, SFA.
  2960.  
  2961.  
  2962. PRE SUBR ENTRY
  2963. LDD MA RESTORE MASS STORAGE PARAMETERS
  2964. CWD CN
  2965. CRD T3
  2966. SETMS IO,NS LOAD DRIVER IN CASE I/O TO CONTINUE
  2967. LDD IR+2
  2968. NJP PRE6 IF DMP= CALL
  2969. STD CM+2
  2970. LDM RNS
  2971. SBN 2
  2972. LMC RS1.
  2973. NJN PRE0 IF NFL NOT ROLLED IN
  2974. LDD CI
  2975. SBM CBUF+FLIW*5+2
  2976. SBM CBUF+FLSW*5
  2977. MJN PRE1 IF NFL NOT ROLLED IN
  2978. LJM PRE3 CHECK ERROR FLAG
  2979.  
  2980. PRE0 LMC /3RH/RS2.&RS1.
  2981. NJN PRE1 IF NOT POSITIONED AT TERMINAL OUTPUT
  2982. LDD DS
  2983. SHN 0-13
  2984. ZJP PREX IF SECTOR LINKAGE IS CORRECT
  2985. PRE1 SFA EJT,EO SET EJT ENTRY ADDRESS IN *UTEM* CALL
  2986. STD CM+4
  2987. SHN -14
  2988. STD CM+3
  2989. LDN PREAL SET *UTEM* PARAMETER COUNT
  2990. STD CM+1
  2991. LDD T5 STORE EST ORDINAL IN *UTEM* CALL
  2992. RAM PREA+1*5+3
  2993. LDD MA
  2994. CWM PREA,CM+1
  2995. MONITOR UTEM
  2996. LDN /CPS/CCPS&/CPS/DPPS CLEAR CONTROL POINT AND DROP PP
  2997. PRE2 STM PREB SAVE *JACM* FUNCTION
  2998. LDD CP
  2999. ADN FLSW
  3000. CRD CM
  3001. LDD CM
  3002. ZJN PRE2.1 IF NO NFL ASSIGNED
  3003. LDN 0 RELEASE NFL
  3004. RJM NFL
  3005. PRE2.1 RJM RLS RELEASE MEMORY
  3006. LDM EJBF+5*JSNE+4
  3007. LPN 76
  3008. LMN SIJS*2
  3009. NJN PRE2.2 IF NOT SUBSYSTEM SWAP IN REQUEST
  3010. LDN RC46 INDICATE SWAP IN NOT POSSIBLE
  3011. RJM SNS
  3012. PRE2.2 LDC **
  3013. PREB EQU *-1
  3014. STD CM+1
  3015. MONITOR JACM
  3016. LJM PPR EXIT TO PP RESIDENT
  3017.  
  3018. PRE3 LDD EF
  3019. ZJP PRE1 IF NO ERROR FLAG IS SET
  3020. PRE4 LDK JSET SET JOB STEP ABORT ERROR FLAG
  3021. SBD EF
  3022. MJN PRE5 IF EXISTING ERROR FLAG .GT. *JSET*
  3023. RAD EF SET *JSET* ERROR FLAG
  3024. PRE5 LJM PREX RETURN, CONTINUE ROLLIN
  3025.  
  3026. PRE6 LDM CPAB
  3027. ZJP PRE7 IF CONTROL POINT AREA NOT ROLLED IN
  3028. LDD DS
  3029. SHN 21-12
  3030. MJN PRE4 IF NOT RECOVERABLE FAILURE
  3031. LDD EF
  3032. NJN PRE4 IF ERROR FLAG IS SET
  3033. STD CM+1 CLEAR JOB ADVANCE
  3034. LDN DMPL RESTORE DMP= BLOCK TO ORIGINAL STATE
  3035. STD T1
  3036. LDD RA
  3037. SHN 6
  3038. ADN SPPR
  3039. CRM BFMS,T1
  3040. NFA DMPN
  3041. CWM BFMS,T1
  3042. MONITOR JACM
  3043. LDK ZERL PLACE *1AJ* CALL IN INPUT REGISTER
  3044. CRD IR
  3045. LDC 3RJ1A
  3046. STD IR
  3047. SHN -6
  3048. SCN 77
  3049. STD IR+1
  3050. LDD IA
  3051. CWD IR
  3052. EXECUTE 1AJ,=
  3053. LDD T5 SET EST ORDINAL FOR *1RJ*
  3054. STD IR+4
  3055. EXECUTE 1RJ ROLLOUT JOB
  3056.  
  3057. PRE7 LDD CP CLEAN UP CONTROL POINT AREA
  3058. ADN UIDW
  3059. CWD ZR
  3060. ADN CSSW-UIDW CLEAR INPUT FILE POINTERS
  3061. CWD ZR
  3062. LDN FPFW-SRUW CLEAR ACCOUNTING WORDS
  3063. STD CM
  3064. PRE8 LDD CP
  3065. ADN SRUW
  3066. ADD CM
  3067. CWD ZR
  3068. SOD CM
  3069. PJN PRE8 IF NOT END OF ACCOUNTING WORDS
  3070. LDD CP CLEAR SECOND BLOCK OF ACCOUNTING WORDS
  3071. ADK MPAW
  3072. CWD ZR
  3073. ADN AUCW-MPAW
  3074. CWD ZR
  3075. AOD ZR+4 SET FST OF DM* FILE NOT BUSY
  3076. NFA FA,R
  3077. ADN FSTL
  3078. CWD ZR
  3079. LDN SYET SET *SYET* ERROR FLAG
  3080. STD CM+1
  3081. MONITOR CEFM
  3082. LDN /CPS/DPPS
  3083. LJM PRE2 CLEAR JOB ADVANCE AND DROP PP
  3084.  
  3085. * *UTEM* PARAMETER BLOCK.
  3086.  
  3087. PREA VFD 1/0,5/JSNE,6/5 *ERJS* JOB STATUS
  3088. VFD 6/1,6/0
  3089. CON 0,0,ERJS
  3090. VFD 1/0,5/SCHE,6/30D *WISE* EVENT
  3091. VFD 6/0,6/0
  3092. VFD 6/0,6/77
  3093. VFD 3/7,9/0
  3094. CON WISE
  3095.  
  3096. VFD 1/0,5/SCLE,6/1 CLEAR FORCED ROLLIN
  3097. VFD 6/52D,6/0
  3098. CON 0,0,0
  3099.  
  3100. PREAL EQU */5-PREA/5 *UTEM* PARAMETER COUNT
  3101. SPACE 4,10
  3102. ** COMMON DECKS.
  3103.  
  3104.  
  3105. *CALL COMPNFL
  3106. *CALL COMPRLS
  3107. SPACE 4,10
  3108. * CHECK FOR OVERFLOW.
  3109.  
  3110.  
  3111. USE OVERFLOW
  3112.  
  3113. ERRNG BFMS-* OVERFLOW INTO BUFFER
  3114. SPACE 4,10
  3115. OVERFLOW PREX,EPFW
  3116. SPACE 4,10
  3117. QUAL *
  3118. TTL 1RI - ROLLIN JOB.
  3119. SPACE 4,10
  3120. END