Table of Contents

TLX

Table Of Contents

  • [00007] TLX - TERMINAL ACTION PROCESSOR.
  • [00009] TERMINAL ACTION PROCESSOR.
  • [00082] MACRO DEFINITIONS.
  • [00084] FCNP - FUNCTION TABLE MACRO.
  • [00130] ABORT - ERROR PROCESSOR MACRO.
  • [00144] ERROR - TRANSFER FILE ERROR PROCESSING MACRO.
  • [00185] MAIN PROGRAM.
  • [00187] MAIN PROGRAM.
  • [00212] TFCN - TABLE OF FUNCTION CODE PROCESSORS.
  • [00253] FUNCTION PROCESSORS.
  • [01232] SUBROUTINES.
  • [01234] CCP - CLEAR ALTERNATE CONTROL POINT ASSIGNMENT.
  • [01249] CKA - CHECK ADDRESS.
  • [01279] CLF - CREATE LOCAL FNT ENTRY.
  • [01321] CPR - CHECK PREMATURE RECALL.
  • [01382] CSP - SET ALTERNATE CONTROL POINT ASIGNMENT TO SUBSYSTEM.
  • [01435] ERR - PROCESS ERROR.
  • [01465] GPA - GET PARAMETER ADDRESS.
  • [01492] GSC - GET SUBSYSTEM CONTROL POINT NUMBER.
  • [01518] ITF - ISSUE *TSEM* FUNCTION.
  • [01552] RCF - REINSTATE CALLER FNT.
  • [01578] RCL - RECALL PPU.
  • [01595] RTE - REQUEST TIMED EVENT ROLLOUT.
  • [01621] SDT - SET DEVICE TYPE.
  • [01664] SFN - SET FILE NOT BUSY.
  • [01688] SNI - SET NETWORK IDENTIFICATION.
  • [01726] SPJ - SUSPEND JOB.
  • [01743] SRS - SET RETURN STATUS.
  • [01769] STI - SET TERMINAL IDENTIFICATION.
  • [01833] TWR - TRANSFER WORKFILE FUNCTION RECALL.
  • [01846] URW - UPDATE RECOVERY WORD.
  • [01895] PRESET AND BUFFERS.
  • [01903] PRS - PRESET PROGRAM.

Source Code

TLX.txt
  1. IDENT TLX,TLX
  2. PERIPH
  3. BASE MIXED
  4. SST
  5. *COMMENT TLX - TERMINAL ACTION PROCESSOR.
  6. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  7. TITLE TLX - TERMINAL ACTION PROCESSOR.
  8. SPACE 4,10
  9. *** TLX - TERMINAL ACTION PROCESSOR.
  10. * G. R. MANSFIELD 72/02/08.
  11. * L. K. TUTTLE 79/04/19. (RESEQUENCED).
  12. SPACE 4,10
  13. ** *TLX* MAY BE CALLED BY A CPU PROGRAM TO ALTER
  14. * TERMINAL CONTROL IN IAF.
  15. SPACE 4,10
  16. *** CALL.
  17. *
  18. *
  19. *T 18/ *TLX*,6/ AR,12/ CODE,6/ SF,18/ PAR
  20. * AR AUTO RECALL
  21. * CODE FUNCTION CODE
  22. * SF SUBFUNCTION (FUNCTIONS 12 AND 15)
  23. * PAR PARAMETER FOR FUNCTION
  24. SPACE 4,10
  25. *** DAYFILE MESSAGES.
  26. *
  27. *
  28. * * INCORRECT TERMINAL REQUEST.* = AN UNKNOWN FUNCTION CODE,
  29. * OR A REQUEST THAT REQUIRES *SSJ=* FROM A NON-*SSJ=*
  30. * PROGRAM.
  31. *
  32. * * TLX - ARGUMENT ERROR.* = PARAMETER ADDRESS OUT OF RANGE.
  33. *
  34. * * TLX - RPV ALREADY SET.* = FUNCTION 0, EXTENDED REPRIEVE
  35. * BIT ALREADY SET.
  36. *
  37. * * REQUEST IS VALID ONLY FROM A NETWORK TERMINAL.* =
  38. * THE TERMINAL IS NOT A NETWORK TERMINAL OR THE CONNECTION
  39. * IS NOT ONLINE.
  40. *
  41. * * USER CANNOT SWITCH FROM A SECONDARY APPLICATION.* =
  42. * A TERMINAL CANNOT REQUEST TO SWITCH TO ANOTHER APPLICATION
  43. * IF IT IS ALREADY CONNECTED TO A SECONDARY APPLICATION (IAF).
  44. *
  45. * * APPLICATION NAME IS REQUIRED.* = WHEN SWITCHING
  46. * APPLICATIONS, AN APPLICATION NAME MUST BE SPECIFIED IF THE
  47. * JOB IS CURRENTLY CONNECTED TO A PRIMARY APPLICATION (IAF).
  48. *
  49. * * THIS CONNECTION IS ALREADY LOANED.* = THIS CONNECTION IS
  50. * ALREADY LOANED, SO ANOTHER SWITCH IS NOT POSSIBLE UNTIL
  51. * THE CONNECTION RETURNS TO IAF. (THIS SHOULD NEVER OCCUR)
  52. SPACE 4,10
  53. *** ACCOUNT FILE MESSAGES.
  54. *
  55. *
  56. * *ACAB.* = SECONDARY APPLICATION ABORTED CONNECTION.
  57. *
  58. * *ACAE.* = IAF INTERNAL ERROR DURING APPLICATION SWITCH.
  59. *
  60. * *ACAF.* = SECONDARY APPLICATION NETTED OFF OR FAILED.
  61. *
  62. * *ACAI.* = USER NOT VALIDATED FOR SECONDARY APPLICATION.
  63. *
  64. * *ACAR.* = SECONDARY APPLICATION TERMINATED CONNECTION.
  65. *
  66. * *ACAS, APLNAME.* = APPLICATION SWITCH TO *APLNAME*.
  67. *
  68. * *ACAU.* = SECONDARY APPLICATION REFUSED CONNECTION, NOT
  69. * AVAILABLE, OR AT CONNECTION LIMIT.
  70. SPACE 4,10
  71. * COMMON DECKS.
  72.  
  73.  
  74. *CALL COMPMAC
  75. *CALL COMSCPS
  76. *CALL COMSJCE
  77. *CALL COMSPIM
  78. *CALL COMSREM
  79. *CALL COMSEJT
  80. *CALL COMSEVT
  81. *CALL COMSSSD
  82. TITLE MACRO DEFINITIONS.
  83. FCNP SPACE 4,25
  84. ** FCNP - FUNCTION TABLE MACRO.
  85. *
  86. * FCNP PROC,CODE,NI,DT
  87. *
  88. * PROC = FUNCTION PROCESSOR ENTRY POINT.
  89. * CODE = IAF FUNCTION CODE.
  90. * NI = ACTION WHEN NOT INTERACTIVE CONNECTION STATUS (*NICS*).
  91. * IGN = IGNORE REQUEST.
  92. * PRO = PROCESS REQUEST.
  93. * DT = ACTION WHEN DETACHED CONNECTION STATUS (*DTCS*).
  94. * IGN = IGNORE REQUEST.
  95. * PRO = PROCESS REQUEST.
  96. * SUS = SUSPEND JOB.
  97. *
  98. * TABLE ENTRY GENERATED.
  99. *
  100. *T 12/ PROC ADR,12/ CODE,6/ NI,6/ DT
  101. *
  102. * NI AND DT FIELDS ARE DEFINED AS FOLLOWS
  103. * 0 = IGNORE REQUEST.
  104. * 1 = PROCESS REQUEST.
  105. * 2 = SUSPEND JOB.
  106.  
  107.  
  108. PURGMAC FCNP
  109.  
  110. FCNP MACRO P,C,N,D
  111. MACREF FCNP
  112. CON P,C
  113. .1 SET 7777B
  114. .2 SET 7777B
  115. ECHO 3,A=(IGN,PRO),B=(0,1)
  116. IFC EQ,$N$A$,2
  117. STOPDUP
  118. .1 SET B
  119. IFEQ .1,7777B,1
  120. ERR INCORRECT *NI* PARAMETER
  121. ECHO 3,A=(IGN,PRO,SUS),B=(0,1,2)
  122. IFC EQ,$D$A$,2
  123. STOPDUP
  124. .2 SET B
  125. IFEQ .2,7777B,1
  126. ERR INCORRECT *DI* PARAMETER
  127. VFD 6/.1,6/.2
  128. ENDM
  129. ABORT SPACE 4,10
  130. ** ABORT - ERROR PROCESSOR MACRO.
  131. *
  132. * ABORT ADDR
  133. *
  134. * ADDR = FWA OF ERROR MESSAGE FOR DAYFILE.
  135.  
  136.  
  137. PURGMAC ABORT
  138. ABORT MACRO A
  139. MACREF ABORT
  140. LDC A
  141. LJM ERR PROCESS ERROR EXIT
  142. ENDM
  143. ERROR SPACE 4,10
  144. ** ERROR - TRANSFER FILE ERROR PROCESSING MACRO.
  145. *
  146. * ERROR CODE,X
  147. *
  148. * CODE = RETURN STATUS CODE.
  149. * X = PREPROCESSING OPTION.
  150. * = R, REINSTATE CALLER-S FNT.
  151. * = B, CHANGE BACK TO CALLER-S CP AND REINSTATE CALLER-S FNT.
  152. *
  153. * CALLS CCP, RCF, SRS.
  154.  
  155.  
  156. PURGMAC ERROR
  157.  
  158. ERROR MACRO C,X
  159. MACREF ERROR
  160. .A IFC NE,$X$$
  161. .B IFC EQ,$X$B$
  162. RJM CCP CHANGE BACK TO CALLER-S CP
  163. .B ENDIF
  164. RJM RCF REINSTATE CALLER-S FNT
  165. .A ENDIF
  166. LDN C
  167. LJM SRS SET RETURN STATUS
  168. ERROR ENDM
  169. SPACE 4,10
  170. ** DIRECT LOCATION ASSIGNMENTS.
  171.  
  172.  
  173. CN EQU 20 - 24 CM WORD BUFFER (5 LOCATIONS)
  174. TT EQU 25 - 26 TERMINAL TABLE ADDRESS (2 LOCATIONS)
  175. TA EQU 27 IAF CONTROL POINT ADDRESS (RA).
  176. TW EQU 30 - 34 TERMINAL REQUEST WORD (5 LOCATIONS)
  177. TN EQU TW+4 TERMINAL NUMBER
  178. CS EQU 35 CONNECTION STATUS
  179. FN EQU 36 - 42 FNT ENTRY
  180. FS EQU 43 - 47 FST ENTRY
  181. FA EQU 60 ADDRESS OF FNT ENTRY IN CALLER-S NFL
  182. PP EQU 61 POT POINTER
  183. PA EQU 62 - 63 POT ADDRESS
  184. RC EQU 64 - 65 RECALL COUNTERS
  185. TITLE MAIN PROGRAM.
  186. SPACE 4,10
  187. ** TLX - MAIN PROGRAM.
  188. *
  189. * EXIT TO FUNCTION PROCESSOR.
  190. * (TA) = IAF RA.
  191. * (TW) = FUNCTION CODE.
  192. * (TW+1 - TW+3) = ZERO.
  193. * (TW+4) = (TN) = TERMINAL NUMBER.
  194. * (CS) = CONNECTION STATUS.
  195.  
  196.  
  197. ORG PPFW
  198.  
  199. TLX RJM PRS PRESET PROGRAM
  200. LJM * PROCESS REQUEST
  201. TLXA EQU *-1
  202.  
  203. * FUNCTION REQUEST EXIT.
  204. *
  205. * ENTRY (TW - TW+4) = FORMATTED *TSEM* REQUEST.
  206.  
  207. TLXX LDN 10D ALLOW RECALL IF *TSEM* QUEUE FULL
  208. RJM ITF ISSUE *TSEM* FUNCTION
  209. DPP MONITOR DPPM DROP PP
  210. LJM PPR EXIT TO PP RESIDENT
  211. TFCN SPACE 4,10
  212. ** TFCN - TABLE OF FUNCTION CODE PROCESSORS.
  213. *
  214. * ENTRY = 3 WORDS.
  215. *
  216. *T 12/ ADDR,12/ CODE,6/ NI,6/ DT
  217. * ADDR ADDRESS OF FUNCTION PROCESSOR
  218. * CODE FUNCTION CODE FOR *TSEM* REQUEST.
  219. * NI ACTION WHEN CONNECTION STATUS IS *NICS*.
  220. * 0 = IGNORE REQUEST.
  221. * 1 = PROCESS REQUEST.
  222. * DT ACTION WHEN CONNECTION STATUS IS *DTCS*.
  223. * 0 = IGNORE REQUEST.
  224. * 1 = PROCESS REQUEST.
  225. * 2 = SUSPEND JOB.
  226.  
  227.  
  228. TFCN BSS 0
  229. LOC 0
  230. FCNP SIA,VSDT,IGN,PRO SET INTERRUPT ADDRESS
  231. FCNP CIA,VCDT,IGN,PRO CLEAR INTERRUPT ADDRESS
  232. FCNP CCR,VCDT,IGN,SUS CLEAR CHARGE REQUIRED
  233. FCNP SCS,VSCS,IGN,PRO SET CHARACTER SET
  234. FCNP PAR,VPTY,IGN,SUS SET PARITY
  235. FCNP STS,0000,PRO,PRO RETURN STATUS
  236. FCNP SPM,VSDT,IGN,PRO SET PROMPT OFF
  237. FCNP SPM,VCDT,IGN,PRO SET PROMPT ON
  238. FCNP PSF,VSDT,IGN,SUS PROCESS SORT FLAG CHANGE
  239. FCNP REC,VREC,IGN,SUS RECOVER JOB
  240. FCNP TWF,VCSM,PRO,PRO TRANSFER WORKFILE
  241. FCNP SSM,VSDT,IGN,SUS SET SCREEN MODE
  242. FCNP SSM,VCDT,IGN,SUS CLEAR SCREEN MODE
  243. FCNP SWS,0000,IGN,PRO SET NFL WORD *SLMN*
  244. FCNP LTI,0000,PRO,PRO LOOK FOR TYPED AHEAD INPUT
  245. FCNP PDT,VDTJ,PRO,PRO DETACH JOB
  246. FCNP SEM,VSDT,IGN,PRO SET USER EFFECT MODE
  247. FCNP SEM,VCDT,IGN,PRO CLEAR USER EFFECT MODE
  248. FCNP APS,VTLF,IGN,PRO SWITCH APPLICATIONS
  249. FCNP RLC,0000,IGN,PRO RESTART LOANED CONNECTION
  250.  
  251. TFCNL BSS 0 TABLE LWA+1
  252. LOC *O
  253. TITLE FUNCTION PROCESSORS.
  254. SIA SPACE 4,10
  255. *** FUNCTION 0.
  256. *
  257. * SET PROGRAM TERMINAL CONTROL.
  258. * SET INTERRUPT ADDRESS = PAR.
  259.  
  260.  
  261. SIA LDD CP READ ENTRY/EXIT CONTROL WORD
  262. ADN TIAW
  263. CRD CM
  264. ADN EECW-TIAW
  265. CRD CN
  266. LDD IR+3 VALIDATE REQUEST ADDRESS
  267. LPN 77
  268. SHN 14
  269. PJN SIA1 IF FLAG ADDRESS
  270. ADN 21 ADD EXCHANGE PACKAGE
  271. SIA1 LPC 377777
  272. ADD IR+4
  273. SHN -6
  274. SBD FL
  275. MJN SIA2 IF VALID
  276. ABORT ERIR * INCORRECT TERMINAL REQUEST.*
  277.  
  278. SIA2 LDD IR+3 ENTER INTERRUPT ADDRESS
  279. LPN 77
  280. STM SIAB+3
  281. LDD IR+4
  282. STM SIAB+4
  283. LDD CN CHECK EXTENDED REPRIEVE SET
  284. SHN 21-12
  285. PJN SIA3 IF EXTENDED REPRIEVE NOT SET
  286. ABORT ERRA * TLX - RPV ALREADY SET.*
  287.  
  288. SIA3 LDD MA ENTER *UADM* SUB-FUNCTION
  289. CWM SIAB,ON
  290. LDN 1
  291. STD CM+1 *UADM* WORD COUNT
  292. STD CM+2 SPECIFY NO DROP OF PP
  293. MONITOR UADM
  294. LDD HN SET MASK FOR RECOVERY WORD
  295. RJM URW UPDATE RECOVERY WORD
  296. NJP DPP IF NOT ON-LINE JOB
  297.  
  298. * COMMON ENTRY TO SET *VSTT*.
  299.  
  300. SIA4 LDN VSTT SET WORD NUMBER
  301. STD TW+2
  302. SIAA LDN 59D SET BIT NUMBER
  303. * LDN 57D (CHARGE REQUIRED)
  304. * LDN 55D (SET/CLEAR USER EFFECT MODE)
  305. * LDN 53D (SET/CLEAR PROMPT MODE)
  306. * LDN 52D (SET/CLEAR SORT FLAG)
  307. * LDN 49D (SET/CLEAR SCREEN MODE)
  308. STD TW+3
  309. LJM TLXX EXIT
  310.  
  311. * *UADM* FUNCTION TO SET/CLEAR TERMINAL INTERRUPT ADDRESS.
  312.  
  313. SIAB CON CSFS SET VARIABLE FIELD
  314. CON TIAW WORD TO SET
  315. CON 18D*100+18D FIELD TO SET AND WIDTH
  316. CON 0,0 VALUE FIELD
  317. CIA SPACE 4,10
  318. *** FUNCTION 1.
  319. *
  320. * CLEAR TERMINAL CONTROL.
  321. * CLEAR INTERRUPT ADDRESS.
  322.  
  323.  
  324. CIA LDD CP READ ENTRY/EXIT CONTROL WORD
  325. ADN TIAW
  326. CRD CM
  327. ADN EECW-TIAW
  328. CRD CN
  329. LJM SIA3 CLEAR ENTRY/EXIT WORD
  330. CCR SPACE 4,10
  331. *** FUNCTION 2.
  332. *
  333. * CLEAR *CHARGE* REQUIRED.
  334.  
  335.  
  336. CCR LCN 59D-57D SET BIT NUMBER
  337. RAM SIAA
  338. UJN SIA4 PROCESS REQUEST
  339. SCS SPACE 4,10
  340. *** FUNCTION 3.
  341. *
  342. * SET CHARACTER SET MODE.
  343. * SETS OR CLEARS EXTENDED CHARACTER SET MODE.
  344. *
  345. * ENTRY PAR = (IR+4) = 0, SET NORMAL MODE.
  346. * = 1, SET EXTENDED MODE.
  347. * = 2, RESTORE ENTRY MODE.
  348. * = 10, SET NORMAL MODE, RESET ENTRY MODE.
  349. * = 11, SET EXTENDED MODE,RESET ENTRY MODE.
  350.  
  351.  
  352. SCS LDD IR+4 SET ARGUMENT
  353. STD TW+2
  354. SBN 3
  355. MJN SCS3 IF VALID ARGUMENT
  356. SBN 10-3
  357. MJN SCS1 IF INCORRECT ARGUMENT
  358. SBN 12-10
  359. MJN SCS2 IF VALID ARGUMENT
  360. SCS1 ABORT ERIR * INCORRECT TERMINAL REQUEST.*
  361.  
  362. SCS2 AOM SCSA INDICATE RESET ENTRY MODE
  363. SCS3 LDD CS
  364. LMK OLCS
  365. ZJP TLXX IF ON-LINE JOB, ENTER REQUEST
  366. NFA RC1N READ RECOVERY WORD FROM NFL
  367. CRD CM
  368. LDD CM+3 CLEAR CURRENT CHARACTER SET
  369. SCN 7
  370. STD CM+3
  371. SHN -3 SAVE INITIAL CHARACTER SET
  372. LPN 7
  373. STD T1
  374. LDD IR+4
  375. LPN 7
  376. LMN 2
  377. ZJN SCS4 IF RESTORE ENTRY MODE
  378. LMN 2
  379. STD T1
  380. SCS4 LDD T1 SET NEW CURRENT CHARACTER SET
  381. RAD CM+3
  382. SCSA LDN 0
  383. * LDN 1 (RESET ENTRY MODE)
  384. ZJN SCS5 IF NO RESET NEEDED
  385. LDD CM+3 RESET ENTRY MODE
  386. SHN -3+22
  387. SCN 7
  388. LMD T1
  389. SHN 3
  390. STD CM+3
  391. SCS5 NFA RC1N REWRITE RECOVERY WORD
  392. CWD CM
  393. LJM DPP DROP PP
  394. PAR SPACE 4,10
  395. *** FUNCTION 4.
  396. *
  397. * SET TERMINAL PARITY.
  398. *
  399. * ENTRY PAR = (IR+4) = 0, SET EVEN PARITY.
  400. * = 1, SET ODD PARITY.
  401.  
  402.  
  403. PAR LDD IR+4 CHECK ARGUMENT
  404. STD TW+3
  405. SBN 2
  406. MJP TLXX IF VALID ARGUMENT, ENTER REQUEST
  407. ABORT ERIR * INCORRECT TERMINAL REQUEST.*
  408. STS SPACE 4,30
  409. *** FUNCTION 5.
  410. *
  411. * RETURN TERMINAL STATUS.
  412. *
  413. * ENTRY (IR+3 - IR+4) = 6/ L,18/ PAR
  414. *
  415. * L = LENGTH OF RETURN BUFFER (2 IF NOT SPECIFIED).
  416. * PAR = ADDRESS OF PARAMETER WORD.
  417. *
  418. * EXIT TERMINAL STATUS RETURNED TO USER.
  419. *
  420. *T PAR 42/TERMINAL ID, 6/SUB, 12/TN
  421. *T, PAR+1 3/ ,3/ NT,6/ CS,4/,8/ NDT,18/ INT,6/ TC,12/ STATUS
  422. *T, PAR+2 42/TERMINAL NAME, 18/0 (IF *L* .GT. 2)
  423. *
  424. * SUB = SUBSYSTEM.
  425. * TN = TERMINAL NUMBER.
  426. * NT = NETWORK TYPE.
  427. * CS = CONNECTION STATUS.
  428. * NDT = NETWORK TERMINAL DEVICE TYPE.
  429. * INT = INTERRUPT ADDRESS IF SET.
  430. * TC = TRANSMISSION CODE.
  431. * 0 = ASCII.
  432. * 1 = CORRESPONDENCE.
  433. * 2 = NIXDORF.
  434. * 3 = NETWORK.
  435. *
  436. * STATUS - BIT
  437. *
  438. * USER FORMAT EFFECTORS 6
  439. * BRIEF MODE 5
  440. * TAPE MODE 4
  441. * FULL DUPLEX 3
  442. * CURRENT CHARACTER SET 2 (EXTENDED IF SET)
  443. * ENTRY CHARACTER SET 1 (EXTENDED IF SET)
  444. * PARITY 0 (ODD IF SET)
  445. *
  446. * IF CONNECTION STATUS IS NOT ONLINE, STATUS WILL BE RETURNED
  447. * BUT THE ONLY VALID FIELD WILL BE *CS*. ALL OTHER FIELDS
  448. * WILL BE ZERO EXCEPT *TERMINAL ID* WHICH WILL BE BLANK.
  449. *
  450. * CALLS GPA, RRR, SDT, SNI, SRR, STA, STI.
  451. *
  452. * MACROS ABORT.
  453.  
  454.  
  455. STS4 ABORT ERIR * INCORRECT TERMINAL REQUEST.*
  456.  
  457. STS LDD IR+3 VALIDATE RETURN ADDRESS
  458. SHN 14
  459. STD T7 SAVE RETURN BUFFER LENGTH
  460. ADD IR+4
  461. SHN -6
  462. SBD FL
  463. PJN STS4 IF INVALID ADDRESS
  464. LDD T7
  465. SBN 3
  466. MJN STS0 IF NOT EXTENDED STATUS
  467. LDN ZERL PRESET TERMINAL NAME
  468. CRD FN
  469. LDN PSNI
  470. STM STSB
  471. STS0 LDD CS
  472. LMN OLCS
  473. NJP STS3 IF NOT ON LINE
  474. LDN VTTL READ TERMINAL TABLE
  475. STD T1
  476. RJM SRR SET R-REGISTER TO IAF RA
  477. RJM STA
  478. CRM TTTA,T1
  479. RJM RRR RESTORE R-REGISTER
  480.  
  481. * SET TERMINAL IDENTIFICATION.
  482.  
  483. RJM SNI SET NETWORK IDENTIFICATION
  484. STD T2
  485. NJN STS1 IF NETWORK TERMINAL
  486. RJM STI SET MUX TERMINAL IDENTIFICATION
  487.  
  488. * FORMAT TERMINAL PARAMETERS.
  489.  
  490. STS1 LDD CP SET INTERRUPT ADDRESS
  491. ADN TIAW
  492. CRD CN
  493. LDN 0
  494. STD CN
  495. STD CN+1
  496. LDD CN+3
  497. SCN 77
  498. STD CN+3
  499. LDM TTTA+VDPT*5+3
  500. STD T1
  501. LPN 1 SET PARITY BIT
  502. STD CN+4
  503. LDD T1 SET DUPLEX BIT
  504. SHN 3-6
  505. LPN 10
  506. RAD CN+4
  507. LDM TTTA+VDCT*5+0
  508. STD T1
  509. SHN 4-0 SET TAPE MODE BIT
  510. LPN 20
  511. RAD CN+4
  512. LDD T1 SET BRIEF MODE FLAG
  513. SHN 5-7
  514. LPN 40
  515. RAD CN+4
  516. LDD T1 SET CHARACTER SET MODE
  517. SHN 2-3
  518. LPN 4
  519. RAD CN+4
  520. LDD CM+4 SET TRANSMISSION CODE
  521. LPN 77
  522. RAD CN+3
  523. LDD TN SET TERMINAL NUMBER
  524. STD CM+4
  525. LDM TTTA+VSTT*5+3 SET SUBSYSTEM
  526. STD T1
  527. LMD CM+3
  528. SCN 77
  529. LMD T1
  530. STD CM+3
  531. LDD T1 SET ENTRY CHARACTER SET MODE
  532. SHN 1-6
  533. LPN 2
  534. RAD CN+4
  535. LDM TTTA+VSTT*5
  536. SHN 6-7
  537. LPC 100 SET FORMAT EFFECTOR BIT
  538. RAD CN+4
  539. LDD T2 CHECK IF NETWORK TERMINAL
  540. ZJP STS2 IF NOT NETWORK TERMINAL
  541. LDD T7
  542. SBN 3
  543. MJN STS1.1 IF NOT EXTENDED STATUS
  544. RJM SRR SET R-REGISTER TO IAF RA
  545. LDD TA GET TERMINAL NAME TABLE POINTERS
  546. SHN 6
  547. ADN VTNP
  548. CRD FN
  549. LDD FN+1
  550. LPN 77B
  551. SHN 6
  552. ADD TA
  553. SHN 6
  554. ADD FN+2
  555. ADD TN ADD TERMINAL NUMBER
  556. CRD FN READ NETWORK TERMINAL NAME
  557. RJM RRR RESTORE R-REGISTER
  558. LDN 0 CLEAR UNUSED BITS
  559. STD FN+4
  560. LDD FN+3
  561. SCN 77
  562. STD FN+3
  563. STS1.1 RJM SDT SET DEVICE TYPE AND TRANSMISSION CODE
  564. LDD T0 SET NETWORK TYPE
  565. SHN 6-12
  566. LPC 100
  567. ADD HN
  568. STS2 LMD CS SET CONNECTION STATUS
  569. STD CN
  570.  
  571. * WRITE STATUS INTO USER BUFFER.
  572.  
  573. RJM GPA GET PARAMETER WORD ADDRESS
  574. CWD CM
  575. ADN 1
  576. CWD CN
  577. STSB UJN STS2.1 DROP PP
  578. * PSN (IF EXTENDED STATUS)
  579. ADN 1
  580. CWD FN
  581. STS2.1 LJM DPP DROP PP
  582.  
  583. * PROCESS SPECIAL STATUS.
  584.  
  585. STS3 LDD MA
  586. CWM STSA,ON
  587. SBN 1
  588. CRD CM
  589. LDN ZERL
  590. CRD CN
  591. LDN 0
  592. UJN STS2 WRITE STATUS
  593.  
  594. STSA VFD 42/1H ,18/0
  595. SPM SPACE 4,10
  596. *** FUNCTIONS 6 AND 7.
  597. *
  598. * SET/CLEAR PROMPT MODE BIT IN *VSTT*
  599.  
  600.  
  601. SPM LCN 59D-53D SET BIT 53 *VSTT*
  602. RAM SIAA
  603. LDN 1 SET MASK FOR RECOVERY WORD
  604. RJM URW UPDATE RECOVERY WORD
  605. NJP DPP IF NOT ON-LINE JOB
  606. LJM SIA4 PROCESS REQUEST
  607. PSF SPACE 4,10
  608. *** FUNCTION 10B.
  609. *
  610. * SET OR CLEAR SORT FLAG.
  611. *
  612. * ENTRY PAR = SUBFUNCTION CODE, SORT FLAG VALUE TO SET.
  613. * = 0, CLEAR SORT FLAG, FILE SORTED.
  614. * = 1, SET SORT FLAG, FILE UNSORTED.
  615.  
  616.  
  617. PSF LDD IR+4 CHECK FUNCTION CODE
  618. ZJN PSF1 IF ONE, SET FLAG
  619. SBN 1
  620. ZJN PSF2 IF ZERO, CLEAR FLAG
  621. ABORT ERIR * TLX - INCORRECT TERMINAL REQUEST.*
  622.  
  623. PSF1 AOD TW
  624. PSF2 LCN 59D-52D SET BIT NUMBER
  625. RAM SIAA
  626. LJM SIA4 PROCESS REQUEST
  627. REC SPACE 4,10
  628. ** FUNCTION 11B.
  629. *
  630. * RECOVER JOB.
  631. *
  632. * JSN IS FOUND IN BITS 23-0 OF THE REQUEST.
  633.  
  634.  
  635. REC LDD IR+3 TRANSFER JSN
  636. STD TW+1
  637. LDD IR+4
  638. STD TW+2
  639. LDN ZERL
  640. CRD CM
  641. LDD CP CLEAR MESSAGE
  642. ADK MS1W
  643. CWD CM
  644. LDN RODS SET TO ROLLOUT AND DISABLE
  645. STD CM+1
  646. MONITOR ROCM
  647. LJM TLXX EXIT
  648. SPACE 4,35
  649. ** FUNCTION 12B.
  650. *
  651. * TRANSFER WORKFILE.
  652. *
  653. * ENTRY (IR+3 - IR+4) = 6/ TF,18/ ADDR
  654. *
  655. * TF = TRANSFER FUNCTION.
  656. * 0 = TRANSFER TO SUBSYSTEM.
  657. * 1 = TRANSFER FROM SUBSYSTEM.
  658. *
  659. * ADDR = ADDRESS OF PARAMETER WORD.
  660. *
  661. *T ADDR 12/ FNTR,12/ FNTS,12/ SSID,12/0,11/ ST,1/ C
  662. *
  663. * FNTR = FNT OFFSET IN RECEIVER-S NFL.
  664. * FNTS = FNT OFFSET IN SOURCE-S NFL.
  665. * SSID = RECEIVER-S SUBSYSTEM ID.
  666. * ST = RETURN STATUS CODE (SEE *COMSREM*)
  667. * C = COMPLETION BIT.
  668. *
  669. * EXIT SUBFUNCTION 0 - TO *TWR*.
  670. * SUBFUNCTION 1 - TO *SRS*.
  671. *
  672. * CALLS AST, CCP, CSP, CLF, CPR, GPA, GSC, RCF, RTE, SPJ, SRS,
  673. * TWR.
  674. *
  675. * MACROS ABORT, ERROR, NFA.
  676.  
  677.  
  678. TWF LDD CP GET NFL FL
  679. ADN FLSW
  680. CRD CM
  681. ADN SEPW-FLSW GET SPECIAL ENTRY POINTS
  682. CRD T1
  683. RJM GPA GET PARAMETER WORD ADDRESS
  684. CRD CN
  685. LDD T1
  686. SHN 21-2
  687. MJN TWF2 IF SSJ=
  688. TWF1 ERROR RSSI RETURN SUBSYSTEM INACCESSIBLE STATUS
  689.  
  690. TWF2 LDD IR+3
  691. SHN -6
  692. NJN TWF3 IF TRANSFER FROM SUBSYSTEM
  693. LDD CS
  694. LMN OLCS
  695. NJN TWF1 IF NOT ON LINE
  696. TWF3 LDD CN+1 VALIDATE SOURCE FNT OFFSET
  697. STD FA
  698. ADC -FNTN
  699. PJN TWF5 IF NOT TOO SMALL
  700. TWF4 ERROR RSFN RETURN FILE NOT FOUND STATUS
  701.  
  702. TWF5 LDD CM
  703. SHN 6 NFL FL
  704. SBD CN+1
  705. MJN TWF4 IF SOURCE NFL OFFSET TOO LARGE
  706. NFA CN+1,R GET FNT/FUT
  707. CRD FN
  708. CRD FS
  709. ADN FUTL-FNTL
  710. CRM TWFB,ON
  711. LDD IR+3 CHECK TRANSFER FUNCTION
  712. SHN -6
  713. ZJN TWF7 IF TRANSFER TO SUBSYSTEM
  714. SBN 1
  715. NJN TWF6 IF INCORRECT TRANSFER FUNCTION
  716. LJM TWF17 PROCESS TRANSFER FROM SUBSYSTEM
  717.  
  718. TWF6 ABORT ERIR * TLX - INCORRECT TERMINAL REQUEST.*
  719.  
  720. * TRANSFER WORKFILE TO SUBSYSTEM.
  721.  
  722. TWF7 RJM SFB SET FILE BUSY
  723. ZJN TWF8 IF FILE NOT PREVIOUSLY BUSY
  724. ERROR RSFB RETURN FILE BUSY STATUS
  725.  
  726. TWF8 LDD FN+4 CHECK FILE TYPE
  727. SHN -6
  728. SBN LOFT
  729. ZJN TWF10 IF LOCAL FILE TYPE
  730. TWF9 ERROR RSIT RETURN INCORRECT FILE TYPE STATUS
  731.  
  732. TWF10 LDD FN+3 CHECK ACCESS MODE
  733. LPN 1
  734. NJN TWF9 IF READ ONLY
  735. LDD FS+1 VERIFY TRACK CHAIN EXISTS
  736. ZJN TWF9 IF NO TRACK CHAIN
  737. LDD CN+2 CHECK *SSID*
  738. ADC -SMSI
  739. ZJN TWF11 IF *SMF* *SSID*
  740. ERROR RSSK RETURN UNKNOWN *SSID* STATUS
  741.  
  742. TWF11 LDC FECF*10000B GET SUBSYSTEM *SSCT* ENTRY
  743. ADD CN+2
  744. RJM AST
  745. SHN 21-13
  746. MJN TWF12 IF SUBSYSTEM ACCESSIBLE
  747. ERROR RSSI RETURN SUBSYSTEM INACCESSIBLE STATUS
  748.  
  749. TWF12 RJM GSC GET SUBSYSTEM CP NUMBER
  750.  
  751. * CHANGE FILE TYPE, ACCESS MODE IN SOURCE-S FNT ENTRY.
  752.  
  753. LDD FN+4 SET *LIBRARY* FILE TYPE
  754. LPN 77
  755. ADC LIFT*100
  756. STD FN+4
  757. AOD FN+3 SET WRITE LOCKOUT BIT
  758. NFA CN+1,R
  759. CWD FN
  760.  
  761. * WRITE FNT/FST INTO SUBSYSTEM NFL.
  762.  
  763. RJM CSP CHANGE TO SUBSYSTEM CONTROL POINT
  764. NJN TWF13 IF CHANGE MADE
  765. ERROR RSSI,R RETURN SUBSYSTEM INACCESSIBLE STATUS
  766.  
  767. TWF13 LDM CSPB
  768. ZJN TWF14 IF CP CHANGED AND *SMF* THERE
  769. ERROR RSSI,B RETURN SUBSYSTEM INACCESSIBLE STATUS
  770.  
  771. TWF14 RJM CLF CREATE LOCAL FNT ENTRY
  772. LDN 30 SET ALTER ONLY MODE
  773. RAD T4
  774. LDD FN+4 SET *LIBRARY* FILE TYPE
  775. STD T5
  776. LDD FS+4 CLEAR FILE BUSY STATUS
  777. LMN 1
  778. STD FS+4
  779. NFA CN,R
  780. CWD T1
  781. ADN FSTL-FNTL
  782. CWD FS
  783. ADN FUTL-FSTL
  784. CWM TWFB,ON
  785.  
  786. * CHANGE BACK TO CALLER CONTROL POINT.
  787.  
  788. RJM CCP CLEAR ALTERNATE CP ASSIGNMENT
  789. RJM GPA GET PARAMETER WORD ADDRESS
  790. CWD CN WRITE FUNCTION PARAMETER WORD
  791. * LDN 0 INDICATE CONNECTION
  792. * STD TW+3
  793. LDN 0
  794. RJM ITF ISSUE *TSEM* FUNCTION
  795. LDN 77 LOOP UNTIL CONNECTION SET
  796. STD T1
  797. TWF15 DELAY
  798. LDD TT GET *VFST*
  799. SHN 14
  800. LMD TT+1
  801. ADN VFST
  802. CRD CM
  803. LDD CM+3 CHECK CONNECT CODE
  804. SHN -6
  805. NJN TWF16 IF CONNECTION SET
  806. SOD T1
  807. NJN TWF15 IF NOT TIMEOUT
  808.  
  809. * SET TIMED EVENT ROLLOUT AND PP RECALL.
  810.  
  811. TWF16 RJM RTE REQUEST TIMED/EVENT ROLLOUT
  812. LJM TWR TRANSFER WORKFILE FUNCTION RECALL
  813.  
  814. * TRANSFER WORKFILE FROM SUBSYSTEM.
  815.  
  816. TWF17 RJM CPR CHECK PREMATURE RECALL
  817. NJN TWF16 IF PREMATURE
  818. RJM RCF REINSTATE CALLER-S FNT ENTRY
  819. RJM SFN SET FILE NOT BUSY
  820. LDD CS CHECK CONNECTION STATUS
  821. LMN OLCS
  822. ZJN TWF18 IF ON LINE
  823. LMN NICS&OLCS
  824. ZJN TWF19 IF NOT INTERACTIVE
  825. LJM SPJ SUSPEND JOB
  826.  
  827. TWF18 LDN 1 INDICATE DISCONNECTION
  828. STD TW+3
  829. LDN 0
  830. RJM ITF ISSUE *TSEM* FUNCTION
  831. TWF19 LDN RSSN SET SWITCH NORMAL RETURN STATUS
  832. LJM SRS SET RETURN STATUS
  833.  
  834. TWFA CON 0 CALLER EJT ORDINAL
  835. TWFB VFD 60/0 WORKFILE FUT ENTRY
  836. SSM SPACE 4,10
  837. *** FUNCTIONS 13B AND 14B.
  838. *
  839. * SET/CLEAR SCREEN MODE BIT IN *VSTT*.
  840.  
  841.  
  842. SSM LCN 59D-49D SET BIT 49 *VSTT*
  843. RAM SIAA
  844. LJM SIA4 PROCESS REQUEST
  845. SWS SPACE 4,25
  846. *** FUNCTION 15B.
  847. *
  848. * SET WORD *SLMN*.
  849. *
  850. * ENTRY (IR+3 - IR+4) = 6/ W,18/ ADDR
  851. *
  852. * W = READ OR WRITE NFL WORD *SLMN*.
  853. * 0 = READ.
  854. * 1 = WRITE.
  855. * ADDR = ADDRESS OF PARAMETER WORD.
  856. *
  857. * PARAMETER WORD FORMAT -
  858. *
  859. *T 53/ 0,1/ SM,6/ TM
  860. * SM = SCREEN MODE FLAG.
  861. * 0 = LINE MODE.
  862. * 1 = SCREEN MODE.
  863. * TM = TERMINAL MODEL. AN ORDINAL FROM 1 TO 63 DECIMAL.
  864. * ZERO MEANS TYPE UNKNOWN. SEE TABLE OF CORRESPONDING
  865. * TERMINAL ORDINALS, *TCTO*, IN *COMCGTO* FOR MORE
  866. * INFORMATION.
  867. *
  868. * EXIT TERMINAL WORD *SLMN* READ OR WRITTEN.
  869.  
  870.  
  871. SWS LDD IR+3 CHECK READ OR WRITE
  872. SHN -6
  873. ZJN SWS2 IF READ *SLMN*
  874. SBN 1
  875. ZJN SWS4 IF WRITE
  876. SWS1 ABORT ERIR * INCORRECT TERMINAL REQUEST.*
  877.  
  878. SWS2 NFA SLMN GET WORD *SLMN*
  879. CRD T2
  880. RJM GPA GET PARAMETER WORD ADDRESS
  881. CWD T2
  882. SWS3 LJM DPP DROP PP
  883.  
  884. SWS4 RJM GPA GET PARAMETER WORD ADDRESS
  885. CRD T2
  886. LDD T6
  887. LPC 177
  888. STD T6
  889. NFA SLMN GET *SLMN*
  890. CRD T1
  891. LDD T5
  892. LPC 7600
  893. LMD T6
  894. STD T5
  895. NFA SLMN WRITE *SLMN*
  896. CWD T1
  897. UJN SWS3 RETURN
  898. LTI SPACE 4,10
  899. *** FUNCTION 16B.
  900. *
  901. * LOOK FOR TYPED AHEAD INPUT.
  902. *
  903. * ENTRY PAR = ADDRESS FOR RETURN DATA.
  904. *
  905. * EXIT (PAR) = 0 IF NO DATA TYPED AHEAD.
  906. *
  907. * CALLS GPA, RRR, SRR, STA.
  908.  
  909.  
  910. LTI LDN ZERL PRESET ZERO RETURN
  911. CRD CN
  912. LDD CS
  913. LMK OLCS
  914. NJP LTI2 IF NOT ONLINE
  915. RJM SRR SET R-REGISTER TO IAF RA
  916. RJM STA SET TERMINAL TABLE ADDRESS
  917. ADN VROT CHECK FOR PREPROCESSED INPUT
  918. CRD CM
  919. LDD CM+1
  920. STD CN+4
  921. NJN LTI1 IF INPUT PRESENT
  922. LDD TA TIMESHARING REFERENCE ADDRESS
  923. SHN 6
  924. ADN VNTP TERMINAL TABLE POINTER
  925. CRD CM
  926. LDD CM+2
  927. ZJN LTI1 IF NO NETWORK TERMINALS DEFINED
  928. SBN 1 (A) = HIGHEST MUX TERMINAL NUMBER
  929. SBD TN
  930. PJN LTI1 IF A MUX TERMINAL
  931. LDD TA IAF REFERENCE ADDRESS
  932. SHN 6
  933. ADN VMST TERMINAL STATUS MESSAGE WORD
  934. CRD CM
  935. LDD CM+1
  936. SHN 6
  937. ADD TA
  938. SHN 6
  939. ADD CM+2
  940. ADD TN
  941. CRD CM READ TERMINAL MESSAGE WORD
  942. LDD CM+4 INPUT TYPEAHEAD QUEUE POINTER
  943. STD CN+4
  944. LTI1 RJM RRR RESTORE R-REGISTER
  945. LTI2 RJM GPA GET PARAMETER WORD ADDRESS
  946. CWD CN
  947. LJM DPP EXIT
  948. PDT SPACE 4,10
  949. *** FUNCTION 17B.
  950. *
  951. * DETACH JOB FROM TERMINAL.
  952.  
  953.  
  954. PDT LDD CS CHECK CONNECTION STATUS
  955. LMK OLCS
  956. NJP DPP IF NOT ONLINE
  957. LDN PDRC SET PROGRAM INITIATED DETACH REASON CODE
  958. STD TW+2
  959. LJM TLXX SEND *TSEM* REQUEST
  960. SEM SPACE 4,10
  961. ** FUNCTION 20 AND 21B.
  962. *
  963. * SET/CLEAR USER EFFECT MODE BIT IN *VSTT*.
  964.  
  965. SEM LCN 59D-55D SET BIT 55 IN *VSTT*
  966. RAM SIAA
  967. LDC 400 SET MASK FOR RECOVERY WORD
  968. RJM URW UPDATE RECOVERY WORD
  969. NJP DPP IF NOT ON-LINE JOB
  970. LJM SIA4 PROCESS REQUEST
  971. APS SPACE 4,10
  972. *** FUNCTION 22B.
  973. *
  974. * PROCESS APPLICATION SWITCH.
  975. *
  976. * ENTRY (IR+3 - IR+4) = PARAMETER WORD ADDRESS.
  977. * (TN) = TERMINAL NUMBER.
  978. * (TA) = IAF REFERENCE ADDRESS.
  979. * (TW) = *TSEM* REQUEST VALUE.
  980. * (CS) = CONNECTION STATUS.
  981. *
  982. *T,PAR 42/ANAME, 18/0
  983. *T,PAR+1 - PAR+5 REMAINDER OF COMMAND LINE.
  984. *
  985. * ANAME = NEXT APPLICATION NAME.
  986. *
  987. * EXIT TO *TLXX* TO MAKE *TSEM* REQUEST FOR SWITCH.
  988. *
  989. * CALLS CKA, DFM, RRR, SNI, SPA, SRR, STA.
  990. *
  991. * MACROS ABORT, DELAY, MONITOR.
  992.  
  993.  
  994. APS LDN 6 SET WORD COUNT
  995. STD T1
  996. RJM CKA CHECK APPLICATION NAME ADDRESS
  997. CRM APSC,T1
  998. LDD CS CHECK CONNECTION STATUS
  999. LMN OLCS
  1000. NJP APS7 IF NOT ONLINE CONNECTION STATUS
  1001. RJM SNI CHECK IF NETWORK TERMINAL
  1002. ZJP APS7 IF NOT A NETWORK TERMINAL
  1003. RJM SRR SET R-REGISTER TO IAF RA
  1004. RJM STA SET TERMINAL TABLE ADDRESS
  1005. ADK VDCT
  1006. CRD CM READ UP *VDCT*
  1007. RJM RRR RESTORE R-REGISTER
  1008. LDD CM+1
  1009. SHN 21-13 CHECK PRIMARY CONNECTION BIT
  1010. MJP APS10 IF CONNECTION ALREADY LOANED
  1011. SHN 1 CHECK SECONDARY CONNECTION BIT
  1012. PJN APS1 IF IAF NOT SECONDARY APPLICATION
  1013. LDM APSC
  1014. ZJN APS0 IF NO APPLICATION SPECIFIED
  1015. LMC 2RAB CHECK FOR *ABORT*
  1016. NJP APS8 IF NOT ABORT APPLICATION
  1017. LDM APSC+1
  1018. LMC 2ROR
  1019. NJP APS8 IF NOT ABORT APPLICATION
  1020. LDM APSC+2
  1021. LMC 1RT*100
  1022. NJP APS8 IF NOT ABORT APPLICATION
  1023. APS0 UJN APS2 CONTINUE
  1024.  
  1025. APS1 LDM APSC GET APPLICATION NAME
  1026. ZJP APS9 IF NO NAME SPECIFIED
  1027. LMC 2RIA
  1028. NJN APS2 IF NOT *APPSW,IAF*
  1029. LDM APSC+1
  1030. SHN -6
  1031. LMN 1RF
  1032. ZJP APS11 IF *APPSW,IAF*
  1033. APS2 LDN ZERL
  1034. CRD CM
  1035. APS3 LDN 1 SET POTS REQUIRED
  1036. STD CM+1
  1037. MONITOR TGPM MAKE POT REQUEST
  1038. LDD CM+1
  1039. ZJP APS6 IF IAF NOT ACTIVE
  1040. LMC 7777
  1041. NJN APS5 IF POTS AVAILABLE
  1042. LDC 600 SET DELAY
  1043. STD T1
  1044. APS4 DELAY
  1045. SOD T1
  1046. NJN APS4 IF DELAY NOT COMPLETE
  1047. UJN APS3 REISSUE REQUEST
  1048.  
  1049. APS5 LDD CM+1 SET POT POINTER
  1050. STD PP
  1051. STD TW+3 SAVE POINTER IN REQUEST
  1052. LDC 1 SET LOGOUT TYPE IN REQUEST
  1053. STD TW+2
  1054. LDN VCPC-1
  1055. STD T1
  1056. RJM SRR SET R-REGISTER TO IAF RA
  1057. RJM SPA SET POT ADDRESS
  1058. ADN 1
  1059. CWM APSC,T1 WRITE NAME AND TEXT TO POT
  1060. RJM RRR RESTORE R-REGISTER
  1061.  
  1062. * TERMINATE ACCOUNT FILE MESSAGE.
  1063.  
  1064. LCN 0 INITIALIZE MESSAGE INDEX
  1065. STD T1
  1066. APS5.1 AOD T1 INCREMENT MESSAGE INDEX
  1067. LDM APSC,T1
  1068. ZJN APS5.2 IF END OF NAME
  1069. LPN 77
  1070. NJN APS5.1 IF NOT END OF NAME
  1071. LDM APSC,T1 ADD PERIOD TERMINATOR TO MESSAGE
  1072. LMN 1R.
  1073. STM APSC,T1
  1074. UJN APS5.3 STORE END OF LINE IN MESSAGE
  1075.  
  1076. APS5.2 LDC 1R.*100 ADD PERIOD TERMINATOR TO MESSAGE
  1077. STM APSC,T1
  1078. APS5.3 LDN 0 STORE END OF LINE IN MESSAGE
  1079. STM APSC+1,T1
  1080. LDC APSB+ACFN
  1081. RJM DFM ISSUE ACCOUNT MESSAGE
  1082. LDN RODS SET DISABLE OPTION
  1083. STD CM+1
  1084. MONITOR ROCM
  1085. APS6 LJM TLXX EXIT
  1086.  
  1087. APS7 ABORT ERNT NETWORK TERMINAL COMMAND ONLY
  1088.  
  1089. APS8 ABORT ERSA INCORRECT SECONDARY APPLICATION SWITCH
  1090.  
  1091. APS9 ABORT ERNR APPLICATION NAME REQUIRED
  1092.  
  1093. APS10 ABORT ERAL CONNECTION ALREADY LOANED
  1094.  
  1095. APS11 ABORT ERCS CANNOT SWITCH TO CURRENT APPLICATION (IAF)
  1096.  
  1097.  
  1098. APSB DATA 6LACAS, ACCOUNT MESSAGE HEADER
  1099. APSC BSSZ 6*5 APPLICATION NAME AND Z PARAMETER
  1100. BSSZ 2*5 TERMINATOR WORDS
  1101. RLC SPACE 4,20
  1102. *** FUNCTION 23B.
  1103. *
  1104. * RESTART LOANED CONNECTION.
  1105. *
  1106. * ISSUE APPROPRIATE ACCOUNTING AND DAYFILE MESSAGES AND
  1107. * RESTART, DETACH, OR TERMINATE THE RETURNED JOB.
  1108. *
  1109. * ENTRY (TN) = TERMINAL NUMBER.
  1110. * (TA) = IAF REFERENCE ADDRESS.
  1111. * (TW) = *TSEM* REQUEST VALUE.
  1112. * *VROT*, BYTE 2 CONTAINS THE LOAN STATUS VALUE.
  1113. *
  1114. * EXIT TO *DPP* IF CONTROL POINT NOT TO BE ABORTED.
  1115. * TO *ERR1* IF CONTROL POINT TO BE ABORTED.
  1116. *
  1117. * CALLS DFM, ITF, RRR, SRR, STA.
  1118. *
  1119. * MACROS MONITOR.
  1120.  
  1121.  
  1122. RLC BSS 0 ENTRY
  1123. RJM SRR SET R-REGISTER TO IAF RA
  1124. RJM STA SET TERMINAL TABLE ADDRESS
  1125. ADK VROT
  1126. CRD CN READ *VROT*
  1127. RJM RRR RESTORE R-REGISTER
  1128. LDD CN+2 GET LOAN STATUS VALUE
  1129. NJN RLC0 IF A VALUE DEFINED
  1130. LDN ERLS SET ERROR STATUS
  1131. STD CN+2
  1132. RLC0 LDM TACM,CN+2
  1133. ZJN RLC1 IF NO ACCOUNTING MESSAGE
  1134. STM RLCA+1
  1135. LDC RLCA+ACFN ISSUE ACCOUNT MESSAGE
  1136. RJM DFM
  1137. RLC1 LDM TLSM,CN+2 GET APPROPRIATE DAYFILE MESSAGE
  1138. ZJP RLC2 IF NO DAYFILE MESSAGE
  1139. RJM DFM ISSUE DAYFILE MESSAGE
  1140. RLC2 LDD CN+2
  1141. STD T1 SAVE LOAN STATUS VALUE
  1142. SBN LDLS
  1143. ZJN RLC2.1 IF LINE DISCONNECT IN SECONDARY
  1144. LDN 0 CLEAR LOAN STATUS VALUE IN *VROT*
  1145. STD CN+2
  1146. RJM SRR SET R-REGISTER TO IAF RA
  1147. RJM STA
  1148. ADK VROT
  1149. CWD CN REWRITE *VROT*
  1150. RJM RRR RESTORE R-REGISTER
  1151. RLC2.1 LDM TPSR,T1 GET SPECIAL PROCESSOR ADDRESS
  1152. ZJP DPP IF NO SPECIAL PROCESSING NECESSARY
  1153. STM RLCB
  1154. LJM * JUMP TO PROCESSOR
  1155. RLCB EQU *-1
  1156.  
  1157. RLC3 LDN PIDL SET DETACH VALUE IN EJT PARAMETER BLOCK
  1158. STD TW+2
  1159. LDC VDTJ *TSEM* REQUEST TYPE
  1160. STD TW
  1161. UJN RLC5 CONTINUE
  1162.  
  1163. RLC4 LCN SARC SET FORCE LOGOFF VALUE IN EJT PARAM. BLOCK
  1164. STD TW+2
  1165. LDC VTLF *TSEM* REQUEST TYPE
  1166. STD TW
  1167. RLC5 LDN 0 CLEAR MESSAGE FROM MESSAGE BUFFER
  1168. STD CM
  1169. LDD CP
  1170. ADK MS1W
  1171. CWD CM
  1172. LDN 0
  1173. RJM ITF ISSUE *TSEM* REQUEST
  1174. LJM ERR1 ABORT
  1175.  
  1176.  
  1177. RLCA DATA 5LACXX.
  1178. CON 0 END OF BUFFER
  1179. TACM SPACE 4,10
  1180. ** TABLE OF ACCOUNT MESSAGES.
  1181. *
  1182. * INDEXED BY LOAN STATUS VALUE (DEFINED IN *COMSREM*).
  1183.  
  1184. TACM INDEX
  1185. INDEX SCLS,2RAB
  1186. INDEX SVLS,2RAI
  1187. INDEX SOLS,2RAF
  1188. INDEX SFLS,2RAF
  1189. INDEX SULS,2RAI
  1190. INDEX STLS,2RAR
  1191. INDEX SRLS,2RAU
  1192. INDEX SALS,2RAU
  1193. INDEX SLLS,2RAU
  1194. INDEX ERLS,2RAE
  1195. INDEX MXLS
  1196. TLSM SPACE 4,10
  1197. ** TABLE OF LOAN STATUS MESSAGES.
  1198. *
  1199. * INDEXED BY LOAN STATUS VALUE (DEFINED IN *COMSREM*).
  1200.  
  1201. TLSM INDEX
  1202. INDEX SCLS,(=C* SECONDARY APPLICATION ABORTED CONNECTION.*)
  1203. INDEX SVLS,(=C* USER NOT VALIDATED FOR SECONDARY APPLICATION.
  1204. ,*)
  1205. INDEX SOLS,(=C* SECONDARY APPLICATION NETTED OFF.*)
  1206. INDEX SFLS,(=C* SECONDARY APPLICATION FAILED.*)
  1207. INDEX SULS,(=C* UNKNOWN SECONDARY APPLICATION.*)
  1208. INDEX STLS,(=C* SECONDARY APPLICATION PROCESSING COMPLETE.*)
  1209. INDEX SRLS,(=C* SECONDARY APPLICATION REFUSED CONNECTION.*)
  1210. INDEX SALS,(=C* SECONDARY APPLICATION NOT AVAILABLE.*)
  1211. INDEX SLLS,(=C* SECONDARY APPLICATION CONNECTION LIMIT.*)
  1212. INDEX ERLS,(=C* RETRY APPLICATION SWITCH.*)
  1213. INDEX LDLS,(=C* LINE WAS DISCONNECTED WHILE LOANED.*)
  1214. INDEX MXLS
  1215. TPSR SPACE 4,10
  1216. ** TABLE OF PROCESSORS FOR SECONDARY CONNECTION RETURN.
  1217. *
  1218. * INDEXED BY LOAN STATUS VALUE (DEFINED IN *COMSREM*).
  1219.  
  1220. TPSR INDEX
  1221. INDEX SCLS,RLC4
  1222. INDEX SVLS,ERR1
  1223. INDEX SOLS,ERR1
  1224. INDEX SFLS,ERR1
  1225. INDEX SULS,ERR1
  1226. INDEX SRLS,ERR1
  1227. INDEX SALS,ERR1
  1228. INDEX SLLS,ERR1
  1229. INDEX ERLS,RLC3
  1230. INDEX LDLS,RLC3
  1231. INDEX MXLS
  1232. TITLE SUBROUTINES.
  1233. CCP SPACE 4,10
  1234. ** CCP - CLEAR ALTERNATE CONTROL POINT ASSIGNMENT.
  1235. *
  1236. * EXIT ALTERNATE CONTROL POINT ASSIGNMENT CLEARED.
  1237. *
  1238. * USES CM+1.
  1239. *
  1240. * MACROS MONITOR.
  1241.  
  1242.  
  1243. CCP SUBR ENTRY/EXIT
  1244. LDC ALCS SET ALTERNATE CP FLAG
  1245. STD CM+1
  1246. MONITOR CCAM CLEAR ALTERNATE CP ASSIGNMENT
  1247. UJN CCPX RETURN
  1248. CKA SPACE 4,10
  1249. ** CKA - CHECK ADDRESS.
  1250. *
  1251. * THIS ROUTINE CALCULATES THE ABSOLUTE ADDRESS FROM THE
  1252. * RELATIVE ADDRESS IN IR+3 - IR+4.
  1253. *
  1254. * ENTRY (IR+3 - IR+4) = ADDRESS.
  1255. * (T1) = WORD COUNT MINUS ONE.
  1256. *
  1257. * EXIT (A) = ABSOLUTE ADDRESS.
  1258.  
  1259.  
  1260. CKA2 LDD IR+3 LOAD ABSOLUTE ADDRESS
  1261. SHN 6
  1262. ADD RA
  1263. SHN 6
  1264. ADD IR+4
  1265.  
  1266. CKA SUBR ENTRY/EXIT
  1267. LDD IR+3
  1268. SCN 37
  1269. NJN CKA1 IF OUT OF RANGE
  1270. LDD IR+3
  1271. SHN 14
  1272. LMD IR+4
  1273. ADD T1
  1274. SHN -6
  1275. SBD FL
  1276. MJN CKA2 IF < FL - WORD COUNT
  1277. CKA1 ABORT ERAE *TLX - ARGUMENT ERROR*
  1278. CLF SPACE 4,15
  1279. ** CLF - CREATE LOCAL FNT ENTRY.
  1280. *
  1281. * ENTRY (TWFA) = CALLER EJT ORDINAL.
  1282. *
  1283. * EXIT (CN) = FNT ORDINAL IF ENTRY CREATED.
  1284. * (T1 - T4) = FILE NAME.
  1285. * TO ERROR PROCESSOR IF NO NFL AVAILABLE OR
  1286. * FILE LIMIT.
  1287. *
  1288. * USES T1 - T6, CM - CM+4.
  1289. *
  1290. * MACROS ERROR, MONITOR, SFA.
  1291.  
  1292.  
  1293. CLF SUBR ENTRY/EXIT
  1294. LDC 2RWK SET FILE NAME
  1295. STD T1
  1296. LDM TWFA GET JSN
  1297. SFA EJT
  1298. ADK JSNE
  1299. CRD T2
  1300. LDN 0
  1301. STD T4
  1302. STD T5
  1303. LDD MA SET FILE NAME IN MB
  1304. CWD T1
  1305. LDN CRFS CREATE LOCAL FNT ENTRY
  1306. STD CM+1
  1307. MONITOR PLFM
  1308. LDD CM+1 SAVE FNT ORDINAL
  1309. STD CN
  1310. LDD CM+4
  1311. ZJN CLFX IF FILE CREATED
  1312.  
  1313. * FILE NOT CREATED, PROCESS ERROR STATUS.
  1314.  
  1315. SHN 21-2
  1316. PJN CLF1 IF NOT NFL INCREASE NEEDED
  1317. ERROR RSNP,B RETURN NO SPACE IN NFL STATUS
  1318.  
  1319. CLF1 ERROR RSFL,B RETURN FILE LIMIT STATUS
  1320. CPR SPACE 4,20
  1321. ** CPR - CHECK PREMATURE RECALL.
  1322. *
  1323. * ENTRY (CS) = CONNECTION STATUS.
  1324. * (CN - CN+4) = FUNCTION PARAMETER WORD.
  1325. * (TWFA) = CALLER EJT ORDINAL.
  1326. *
  1327. * EXIT (A) = 0 IF DISCONNECT STATUS.
  1328. * (A) .NE. 0 IF ONE OF THE FOLLOWING IS TRUE -
  1329. * 1. CONNECTION STATUS IS ON LINE AND *SMF* FIELD
  1330. * OF *VFST* .NE. 0.
  1331. * 2. WORKFILE FNT ENTRY STILL EXISTS IN
  1332. * SUBSYSTEM NFL.
  1333. *
  1334. * USES T2 - T6, CM - CM+4.
  1335. *
  1336. * CALLS CCP, CSP, GSC, RRR, SRR, STA.
  1337. *
  1338. * MACROS NFA, SFA.
  1339.  
  1340.  
  1341. CPR SUBR ENTRY/EXIT
  1342. LDD CS CHECK CONNECTION STATUS
  1343. LMN OLCS
  1344. NJN CPR1 IF NOT ON LINE
  1345. RJM SRR SET R-REGISTER TO IAF RA
  1346. RJM STA READ TERMINAL TABLE WORD *VFST*
  1347. ADN VFST
  1348. CRD CM
  1349. RJM RRR RESTORE R-REGISTER
  1350. LDD CM+3 CHECK *SMF* FIELD
  1351. SHN -6
  1352. NJN CPRX IF *SMF* CONNECTED
  1353. CPR1 RJM GSC GET SUBSYSTEM CP NUMBER
  1354. ZJN CPRX IF *SMF* GONE
  1355. RJM CSP SET ALTERNATE CP ASSIGNMENT TO SUBSYSTEM
  1356. ZJN CPRX IF *SMF* GONE AND CP NOT CHANGED
  1357. LDM CSPB
  1358. NJN CPR1.1 IF CP CHANGED BUT *SMF* NOT THERE
  1359. NFA CN,R CHECK FOR FNT ENTRY IN SUBSYSTEM NFL
  1360. CRD T2
  1361. RJM CCP CLEAR ALTERNATE CP ASSIGNMENT
  1362. LDC 2RWK CHECK FOR WORKFILE
  1363. LMD T2
  1364. NJN CPR2 IF NOT WORKFILE
  1365. LDM TWFA GET JSN
  1366. SFA EJT
  1367. ADK JSNE
  1368. CRD CM
  1369. LDD CM
  1370. LMD T3
  1371. NJN CPR2 IF NOT WORKFILE
  1372. LDD CM+1
  1373. LMD T4
  1374. NJN CPR2 IF NOT WORKFILE
  1375. LDN 1
  1376. UJN CPR3 RETURN PREMATURE STATUS
  1377.  
  1378. CPR1.1 RJM CCP CLEAR ALTERNATE CP ASSIGNMENT
  1379. CPR2 LDN 0 RETURN DISCONNECT STATUS
  1380. CPR3 UJP CPRX RETURN
  1381. CSP SPACE 4,15
  1382. ** CSP - SET ALTERNATE CONTROL POINT ASIGNMENT TO SUBSYSTEM.
  1383. *
  1384. * ENTRY (CSPA) = SUBSYSTEM CONTROL POINT NUMBER.
  1385. * (CN+2) = SUBSYSTEM ID.
  1386. *
  1387. * EXIT (A) = 0 IF *SMF* GONE AND CONTROL POINT NOT CHANGED.
  1388. * .NE. 0 IF CONTROL POINT CHANGED.
  1389. * (CSPB) .NE. 0 IF *SMF* GONE AND CONTROL POINT CHANGED.
  1390. *
  1391. * USES T2, CM - CM+4.
  1392. *
  1393. * CALLS AST.
  1394. *
  1395. * MACROS DELAY, MONITOR, PAUSE.
  1396.  
  1397.  
  1398. CSP3 LDD CP CHECK SUBSYSTEM ID
  1399. ADK JCIW
  1400. CRD CM
  1401. LDD CN+2
  1402. LMD CM+2
  1403. STM CSPB SET *SMF* FLAG
  1404. LDN 1 SET CONTROL POINT CHANGE MADE
  1405.  
  1406. CSP SUBR ENTRY/EXIT
  1407. CSP1 LDM CSPA GET SUBSYSTEM CP NUMBER
  1408. LMC ALCS SET ALTERNATE CP FLAG
  1409. STD CM+1
  1410. MONITOR CCAM SET ALTERNATE CP ASSIGNMENT
  1411. LDD CM+1
  1412. ZJP CSP3 IF CHANGE MADE
  1413. PAUSE ST
  1414. LDC 3600
  1415. STD T2
  1416. CSP2 DELAY
  1417. SOD T2
  1418. NJN CSP2 IF STILL DELAYING
  1419. LDC FEAF*10000B GET *SSAT* ENTRY
  1420. ADD CN+2
  1421. RJM AST
  1422. ZJN CSPX IF *SMF* NOT PRESENT
  1423. SFA EJT GET EJT ADDRESS
  1424. ADN SCHE GET SCHEDULING DATA
  1425. CRD CM
  1426. LDD CM+3 GET CP NUMBER
  1427. LPN 77
  1428. STM CSPA RESET SUBSYSTEM CP NUMBER
  1429. UJP CSP1 TRY AGAIN
  1430.  
  1431.  
  1432. CSPA CON 0 *SMF* CONTROL POINT NUMBER
  1433. CSPB CON 0 *SMF* FLAG
  1434. ERR SPACE 4,10
  1435. ** ERR - PROCESS ERROR.
  1436. *
  1437. * ENTRY (A) = FWA OF ERROR MESSAGE FOR DAYFILE.
  1438. *
  1439. * EXIT TO *PPR*.
  1440. * DAYFILE MESSAGE ISSUED.
  1441. * CONTROL POINT ABORTED.
  1442. *
  1443. * CALLS DFM.
  1444. *
  1445. * MACROS MONITOR.
  1446.  
  1447.  
  1448. ERR RJM DFM ISSUE DAYFILE MESSAGE
  1449. ERR1 MONITOR ABTM ABORT CONTROL POINT
  1450. LJM PPR EXIT TO PP RESIDENT
  1451.  
  1452.  
  1453. * ERROR MESSAGES.
  1454.  
  1455.  
  1456. ERAE DATA C* TLX - ARGUMENT ERROR.*
  1457. ERIR DATA C* INCORRECT TERMINAL REQUEST.*
  1458. ERRA DATA C* TLX - RPV ALREADY SET.*
  1459. ERNT DATA C* REQUEST IS VALID ONLY FROM A NETWORK TERMINAL.*
  1460. ERSA DATA C* USER CANNOT SWITCH FROM A SECONDARY APPLICATION.*
  1461. ERNR DATA C* APPLICATION NAME IS REQUIRED.*
  1462. ERAL DATA C* THIS CONNECTION IS ALREADY LOANED.*
  1463. ERCS DATA C* USER CANNOT SWITCH TO CURRENT APPLICATION.*
  1464. GPA SPACE 4,10
  1465. ** GPA - GET PARAMETER ADDRESS.
  1466. *
  1467. * ENTRY (IR+3 - IR+4) = ADDRESS.
  1468. *
  1469. * EXIT (A) = ABSOLUTE ADDRESS.
  1470. * TO *ERR* IF ADDRESS OUT OF RANGE.
  1471. *
  1472. * MACROS ABORT.
  1473.  
  1474.  
  1475. GPA1 LDD IR+3
  1476. LPN 77
  1477. SHN 6
  1478. ADD RA
  1479. SHN 6
  1480. ADD IR+4
  1481.  
  1482. GPA SUBR ENTRY/EXIT
  1483. LDD IR+3 VALIDATE ADDRESS
  1484. LPN 77
  1485. SHN 14
  1486. ADD IR+4
  1487. SHN -6
  1488. SBD FL
  1489. MJN GPA1 IF NOT OUT OF RANGE
  1490. ABORT ERAE * TLX - ARGUMENT ERROR.*
  1491. GSC SPACE 4,15
  1492. ** GSC - GET SUBSYSTEM CONTROL POINT NUMBER.
  1493. *
  1494. * ENTRY (CN+2) = SUBSYSTEM *SSID*.
  1495. *
  1496. * EXIT (CSPA) = SUBSYSTEM CP NUMBER.
  1497. *
  1498. * USES T1 - T5.
  1499. *
  1500. * CALLS AST.
  1501. *
  1502. * MACROS SFA.
  1503.  
  1504.  
  1505. GSC SUBR ENTRY/EXIT
  1506. LDC FEAF*10000B GET *SSAT* ENTRY
  1507. ADD CN+2
  1508. RJM AST
  1509. ZJN GSCX IF *SMF* GONE
  1510. SFA EJT GET EJT ADDRESS
  1511. ADN SCHE GET SCHEDULING DATA
  1512. CRD T1
  1513. LDD T4 GET CP NUMBER
  1514. LPN 77
  1515. STM CSPA SAVE SUBSYSTEM CP NUMBER
  1516. UJN GSCX RETURN
  1517. ITF SPACE 4,10
  1518. ** ITF - ISSUE *TSEM* FUNCTION.
  1519. *
  1520. * ENTRY (TW - TW+4) = *TSEM* REQUEST.
  1521. * (A) = NUMBER OF RECALLS TO TRY IF *TSEM* QUEUE FULL.
  1522. *
  1523. * USES CM - CM+4, RC - RC+1.
  1524. *
  1525. * MACROS DELAY, MONITOR, PAUSE.
  1526.  
  1527.  
  1528. ITF SUBR ENTRY/EXIT
  1529. STD RC RECALL FLAG
  1530. STD RC+1 RECALL COUNTER
  1531. LDD MA
  1532. CWD TW
  1533. ITF1 LDK ZERL
  1534. CRD CM
  1535. MONITOR TSEM
  1536. LDD CM+1
  1537. ZJN ITFX IF *IAF* INACCESSIBLE OR ERROR
  1538. LMC 7777
  1539. NJN ITFX IF REQUEST COMPLETE
  1540. PAUSE ST
  1541. LDC 3600 *TSEM* QUEUE FULL - DELAY AND RETRY
  1542. STD T1
  1543. ITF2 DELAY
  1544. SOD T1
  1545. NJN ITF2 IF STILL DELAYING
  1546. SOD RC+1
  1547. NJN ITF1 IF TIME TO REISSUE REQUEST
  1548. LDD RC
  1549. ZJN ITF1 IF NO RECALL
  1550. UJP RCL RECALL PP
  1551. RCF SPACE 4,10
  1552. ** RCF - REINSTATE CALLER FNT.
  1553. *
  1554. * ENTRY (CN+1) = CALLER FNT ORDINAL.
  1555. *
  1556. * EXIT CALLER WORKFILE FNT REWRITTEN WITH THE WRITE
  1557. * LOCKOUT BIT CLEARED AND FILE TYPE = *LOFT*.
  1558. *
  1559. * USES CM - CM+4.
  1560. *
  1561. * MACROS NFA.
  1562.  
  1563.  
  1564. RCF SUBR ENTRY/EXIT
  1565. NFA CN+1,R GET FNT ENTRY
  1566. CRD CM
  1567. LDD CM+3 CLEAR WRITE LOCKOUT BIT
  1568. SCN 1
  1569. STD CM+3
  1570. LDD CM+4 SET *LOCAL* FILE TYPE
  1571. LPN 77
  1572. ADC LOFT*100
  1573. STD CM+4
  1574. NFA CN+1,R
  1575. CWD CM
  1576. UJN RCFX RETURN
  1577. RCL SPACE 4,10
  1578. ** RCL - RECALL PPU.
  1579. *
  1580. * EXIT TO *PPR*.
  1581. *
  1582. * MACROS MONITOR.
  1583.  
  1584.  
  1585. RCL BSS 0 ENTRY
  1586. LDD MA WRITE *TLX* CALL
  1587. CWD IR
  1588. LDN ZERL
  1589. CRD CM
  1590. LDN PTMF SET TIMED RECALL
  1591. STD CM+1
  1592. MONITOR RECM
  1593. LJM PPR EXIT TO PP RESIDENT
  1594. RTE SPACE 4,10
  1595. ** RTE - REQUEST TIMED EVENT ROLLOUT.
  1596. *
  1597. * EXIT TIMED/EVENT ROLLOUT REQUESTED.
  1598. *
  1599. * USES CM - CM+4.
  1600. *
  1601. * MACROS MONITOR.
  1602.  
  1603.  
  1604. RTE SUBR ENTRY/EXIT
  1605. LDD CP READ TIMED EVENT ROLLOUT WORD
  1606. ADN TERW
  1607. CRD CM
  1608. LDD CM SET EJT ORDINAL
  1609. STD CM+4
  1610. LDK WRKE/10000 SET EVENT
  1611. STD CM+3
  1612. LDC 777 SET TIME
  1613. STD CM+2
  1614. LDD MA WRITE *ROCM* PARAMETERS TO MB
  1615. CWD CM
  1616. LDN ROTE SET TIMED/EVENT ROLLOUT
  1617. STD CM+1
  1618. MONITOR ROCM
  1619. UJN RTEX RETURN
  1620. SDT SPACE 4,15
  1621. ** SDT - SET DEVICE TYPE.
  1622. *
  1623. * ENTRY (TN) = TERMINAL NUMBER.
  1624. * (TA) = IAF RA.
  1625. *
  1626. * EXIT (CN+1) = DEVICE TYPE.
  1627. * (CN+3) = TRANSMISSION CODE.
  1628. * (T0)-(T4) = VMST ENTRY.
  1629. *
  1630. * USES T0 - T4.
  1631. *
  1632. * CALLS RRR, SRR.
  1633.  
  1634.  
  1635. SDT SUBR ENTRY/EXIT
  1636. RJM SRR SET R-REGISTER TO IAF RA
  1637. LDD TA GET FWA OF MESSAGE STATUS TABLE
  1638. SHN 6
  1639. ADN VMST
  1640. CRD T0
  1641. LDD T0+1 SET TABLE ADDRESS OF TERMINAL
  1642. SHN 6
  1643. ADD TA
  1644. SHN 6
  1645. ADD T0+2
  1646. ADD TN
  1647. CRD T0 READ TABLE ENTRY
  1648. LDD T0+1 SET DEVICE TYPE
  1649. LPC 377
  1650. STD CN+1
  1651. LDD CN+3 SET TRANSMISSION CODE
  1652. SCN 77
  1653. ADN 3
  1654. STD CN+3
  1655. LDD T0 SAVE (T0)
  1656. STM SDTA
  1657. RJM RRR RESTORE R-REGISTER
  1658. LDM SDTA RESTORE (T0)
  1659. STD T0
  1660. UJN SDTX RETURN
  1661.  
  1662. SDTA BSS 1 (T0)
  1663. SFN SPACE 4,10
  1664. ** SFN - SET FILE NOT BUSY.
  1665. *
  1666. * ENTRY (CN+1) = CALLER FNT ORDINAL.
  1667. *
  1668. * EXIT CALLER-S WORKFILE SET NOT BUSY.
  1669. *
  1670. * USES CM - CM+4.
  1671. *
  1672. * MACROS NFA.
  1673.  
  1674.  
  1675. SFN SUBR ENTRY/EXIT
  1676. NFA CN+1,R GET FST ENTRY
  1677. ADN FSTL
  1678. CRD CM
  1679. LDD CM+4 CLEAR FILE BUSY STATUS
  1680. SCN 1
  1681. LMN 1
  1682. STD CM+4
  1683. NFA CN+1,R WRITE FST
  1684. ADN FSTL
  1685. CWD CM
  1686. UJN SFNX RETURN
  1687. SNI SPACE 4,10
  1688. ** SNI - SET NETWORK IDENTIFICATION.
  1689. *
  1690. * ENTRY (TN) = TERMINAL NUMBER.
  1691. * (TA) = IAF RA.
  1692. *
  1693. * EXIT (A) = ZERO IF NOT NETWORK TERMINAL.
  1694. * (CM - CM+4) = *NAMIAF * IF A NETWORK TERMINAL.
  1695. *
  1696. * USES CM - CM+4.
  1697. *
  1698. * CALLS RRR, SRR.
  1699.  
  1700.  
  1701. SNI SUBR ENTRY/EXIT
  1702. RJM SRR SET R-REGISTER TO IAF RA
  1703. LDD TA READ NETWORK TERMINAL POINTERS
  1704. SHN 6
  1705. ADN VNTP
  1706. CRD CM
  1707. RJM RRR RESTORE R-REGISTER
  1708. LDD CM+2 GET FIRST NETWORK TERMINAL NUMBER
  1709. ZJN SNIX IF NO NETWORK TERMINALS
  1710. SBN 1
  1711. SBD TN
  1712. MJN SNI1 IF NETWORK TERMINAL
  1713. LDN 0
  1714. UJN SNIX RETURN
  1715.  
  1716. * SET NETWORK TERMINAL IDENTIFICATION.
  1717.  
  1718. SNI1 LDD MA MOVE TERMINAL NAME TO (CM - CM+4)
  1719. CWM SNIA,ON
  1720. SBN 1
  1721. CRD CM
  1722. UJN SNIX RETURN
  1723.  
  1724. SNIA DATA 10LNAMIAF
  1725. SPJ SPACE 4,10
  1726. ** SPJ - SUSPEND JOB.
  1727. *
  1728. * EXIT TO *RCL*.
  1729. *
  1730. * USES CM - CM+4.
  1731. *
  1732. * MACROS MONITOR.
  1733.  
  1734.  
  1735. SPJ BSS 0 ENTRY
  1736. LDN ZERL
  1737. CRD CM
  1738. LDN ROSU JOB SUSPENSION OPTION
  1739. STD CM+1
  1740. MONITOR ROCM
  1741. LJM RCL RECALL PP
  1742. SRS SPACE 4,10
  1743. ** SRS - SET RETURN STATUS.
  1744. *
  1745. * ENTRY (A) = RETURN STATUS CODE.
  1746. * (CN - CN+4) = TRANSFER FUNCTION PARAMETER WORD.
  1747. *
  1748. * EXIT TO *DPP*.
  1749. * RETURN STATUS, COMPLETE BIT SET IN TRANSFER FUNCTION
  1750. * PARAMETER WORD.
  1751. *
  1752. * CALLS GPA, SFN.
  1753.  
  1754.  
  1755. SRS SHN 1
  1756. LMN 1 SET COMPLETE BIT
  1757. STD CN+4
  1758. SHN -1
  1759. ZJN SRS1 IF NORMAL RETURN STATUS
  1760. SBN RSFB
  1761. ZJN SRS1 IF FILE BUSY RETURN STATUS
  1762. SBN RSFN&RSFB
  1763. ZJN SRS1 IF FILE NOT FOUND STATUS
  1764. RJM SFN SET FILE NOT BUSY
  1765. SRS1 RJM GPA GET PARAMETER WORD ADDRESS
  1766. CWD CN WRITE FUNCTION PARAMETER WORD
  1767. LJM DPP DROP PP
  1768. STI SPACE 4,10
  1769. ** STI - SET TERMINAL IDENTIFICATION.
  1770. *
  1771. *
  1772. * ENTRY (TA) = IAF RA.
  1773. * (TTTA) = USER TERMINAL TABLE.
  1774. *
  1775. * EXIT (CM - CM+4) = TERMINAL IDENTIFICATION CODE.
  1776. * = *TTY* IF UNDEFINED.
  1777. *
  1778. * USES T1, T3, CM - CM+4.
  1779. *
  1780. * CALLS RRR, SRR.
  1781.  
  1782.  
  1783. STI SUBR ENTRY/EXIT
  1784. LDM TTTA+VDPT*5+3 SET TRANSLATION TABLE INDEX
  1785. SHN 0-7
  1786. LPN 37
  1787. STD T1
  1788. LDN 0
  1789. STD T3
  1790. RJM SRR SET R-REGISTER TO IAF RA
  1791. STI1 LDD T3
  1792. SBN VTSR-VDRL-1
  1793. ZJN STI2 IF THROUGH TESTING ALL DRIVERS
  1794. LDD TA READ DRIVER STACK POINTER
  1795. SHN 6
  1796. ADN VDRL
  1797. ADD T3
  1798. CRD CM
  1799. AOD T3 INCREMENT DRIVER STACK POINTER INDEX
  1800. LDD CM+4 GET DRIVER FIRST TERMINAL NUMBER
  1801. ADD CM+3 CALCULATE DRIVER LAST TERMINAL NUMBER
  1802. SBN 1
  1803. SBD TN
  1804. MJN STI1 IF NOT THIS DRIVER
  1805. LDD CM+1 SET DRIVER STACK ADDRESS
  1806. LPN 37
  1807. SHN 6
  1808. ADD TA
  1809. SHN 6
  1810. ADD CM+2
  1811. ADN 4 READ STACK *LIMIT* POINTER
  1812. CRD CM
  1813. LDD CM+3 SET IDENTIFICATION TABLE ADDRESS
  1814. LPN 77
  1815. SHN 6
  1816. ADD TA
  1817. SHN 6
  1818. ADD CM+4
  1819. ADD T1 ADD TRANSLATION TABLE INDEX
  1820. CRD CM READ TRANSLATION TABLE ID WORD
  1821. LDD CM CHECK TERMINAL ID
  1822. NJN STI3 IF DEFINED
  1823. STI2 LDD MA SET DEFAULT
  1824. CWM STIA,ON
  1825. SBN 1
  1826. CRD CM
  1827. STI3 RJM RRR RESTORE R-REGISTER
  1828. LJM STIX RETURN
  1829.  
  1830.  
  1831. STIA DATA 10LTTY
  1832. TWR SPACE 4,10
  1833. ** TWR - TRANSFER WORKFILE FUNCTION RECALL.
  1834. *
  1835. * EXIT TO *RCL*.
  1836. * RECALL SET FOR TRANSFER WORKFILE FROM SUBSYSTEM.
  1837.  
  1838.  
  1839. TWR BSS 0 ENTRY
  1840. LDD IR+3 SET TRANSFER FROM SUBSYSTEM
  1841. LPN 77
  1842. LMC 100
  1843. STD IR+3
  1844. LJM RCL RECALL PP
  1845. URW SPACE 4,15
  1846. ** URW - UPDATE RECOVERY WORD.
  1847. *
  1848. * ENTRY (A) = MASK TO UPDATE NFL RECOVERY WORD (*RC1N*).
  1849. *
  1850. * EXIT (A) = 0, IF ON-LINE JOB.
  1851. * .NE. 0, IF NOT ON-LINE.
  1852. * (RC1N) UPDATED IF NOT ON-LINE.
  1853. *
  1854. * USES CN, CM - CM+4.
  1855. *
  1856. * MACROS NFA.
  1857.  
  1858.  
  1859. URW SUBR ENTRY/EXIT
  1860. STD CN
  1861. LMC -0
  1862. STM URWA
  1863. LDD CS
  1864. LMK OLCS
  1865. ZJN URWX IF ON-LINE JOB
  1866.  
  1867. * UPDATE RECOVERY WORD IN NFL.
  1868.  
  1869. NFA RC1N READ RECOVERY WORD
  1870. CRD CM
  1871. LDD CM+4 CLEAR BIT IN RECOVERY WORD
  1872. LPC **
  1873. URWA EQU *-1 (RECOVERY WORD MASK)
  1874. STD CM+4
  1875. LDD TW
  1876. LMC VCDT
  1877. ZJN URW1 IF CLEAR BIT FUNCTION
  1878. LDD CN SET BIT IN RECOVERY WORD
  1879. RAD CM+4
  1880. URW1 NFA RC1N REWRITE RECOVERY WORD
  1881. CWD CM
  1882. UJN URWX RETURN
  1883. SPACE 4,10
  1884. * COMMON DECKS.
  1885.  
  1886.  
  1887. *CALL COMPAST
  1888. PIR$ EQU 1 SELECT ASSEMBLY OF *PIR* FOR IAF R-REG
  1889. *CALL COMPSRR
  1890. *CALL COMPSFB
  1891. *CALL COMPSTA
  1892. SPACE 4
  1893. *CALL COMPSPA
  1894. USE PRESET
  1895. TITLE PRESET AND BUFFERS.
  1896. ** THE FOLLOWING CODE MAY BE OVERLAID.
  1897.  
  1898.  
  1899. * TTTA - TERMINAL TABLE BUFFER.
  1900.  
  1901. TTTA EQU *
  1902. PRS SPACE 4,15
  1903. ** PRS - PRESET PROGRAM.
  1904. *
  1905. * EXIT (TW+1 - TW+3) = ZERO.
  1906. * (TA) = IAF RA.
  1907. * (CS) = CONNECTION STATUS.
  1908. * (TWFA) = EJT ORDINAL OF CALLER.
  1909. * IF (CS) IS NOT *OLCS*, TW AND TA EXIT CONDITIONS
  1910. * ARE NOT ESTABLISHED.
  1911. *
  1912. * USES CS, TN, T7, CM - CM+4, CN - CN+4, TW - TW+3.
  1913. *
  1914. * CALLS AST, CRS, PIR.
  1915. *
  1916. * MACROS ABORT, SFA.
  1917.  
  1918.  
  1919. PRS SUBR ENTRY/EXIT
  1920. RJM CRS CHECK RECALL STATUS
  1921. ZJN PRS1 IF NOT AUTO RECALL
  1922. RJM PIR PRESET WITH IAF R-REGISTER
  1923. LDD IR+2 CHECK FUNCTION CODE
  1924. SHN 1
  1925. ADD IR+2
  1926. STD T7
  1927. SBK TFCNL
  1928. PJN PRS1 IF INCORRECT CODE
  1929. LDM TFCN,T7 SET ADDRESS PROCESSOR
  1930. STM TLXA
  1931. ZJN PRS1 IF UNDEFINED FUNCTION
  1932. LDD CP
  1933. ADK SEPW
  1934. CRD CM
  1935. LDD CM
  1936. SHN 21-2
  1937. MJN PRS2 IF CALLER IS *SSJ=* PROGRAM
  1938. LDD IR+2 CHECK FUNCTION CODE
  1939. LMN 11B
  1940. NJN PRS2 IF NOT *RECOVER* REQUEST
  1941. PRS1 ABORT ERIR * INCORRECT TERMINAL REQUEST.*
  1942.  
  1943. PRS2 LDM TFCN+1,T7 SET *TSEM* FUNCTION
  1944. STD TW
  1945. LDD CP READ EJT ORDINAL
  1946. ADN TFSW
  1947. CRD CM
  1948. LDD CM
  1949. STM TWFA SAVE EJT ORDINAL
  1950. SFA EJT READ EJT ENTRY
  1951. ADK JSNE
  1952. CRD CM
  1953. LDD CM+4 GET CONNECTION STATUS
  1954. SHN -7
  1955. LPN 17
  1956. STD CS
  1957. LMN OLCS
  1958. NJN PRS5 IF NOT ON LINE
  1959. STD TW+1 CLEAR REQUEST BUFFER
  1960. STD TW+2
  1961. STD TW+3
  1962. LDD CP GET THE TERMINAL NUMBER
  1963. ADK TTNW
  1964. CRD CM
  1965. LDD CM+1
  1966. STD TN
  1967. LDC FECF*10000B+IFSI FETCH IAF *SSET* ENTRY
  1968. RJM AST
  1969. SHN 21-13
  1970. PJN PRS9 IF IAF NOT ACCESSIBLE
  1971. * RJM PIR (CALL SHOULD BE HERE)
  1972. PRS4 LJM PRSX RETURN
  1973.  
  1974. * PROCESS OFF-LINE STATUS.
  1975.  
  1976. PRS5 LDM TFCN+2,T7
  1977. STD CM+1
  1978. LDD CS
  1979. LMN DTCS
  1980. ZJN PRS7 IF DETACHED
  1981. LDD CM+1
  1982. SHN -6
  1983. STD CM+1
  1984. PRS7 LDD CM+1
  1985. LPN 77
  1986. LMN 1
  1987. ZJN PRS4 IF TO PROCESS WITHOUT IAF
  1988. LMN 2&1
  1989. ZJN PRS9 IF TO SUSPEND
  1990. PRS8 LJM DPP IGNORE REQUEST
  1991.  
  1992. * SUSPEND JOB.
  1993.  
  1994. PRS9 LDD CP
  1995. ADK EOJW
  1996. CRD CN
  1997. LDD CN
  1998. SHN -11
  1999. LMK SUJT
  2000. NJN PRS8 IF NOT SUSPEND TERMINATION OPTION
  2001. LJM SPJ SUSPEND JOB
  2002. SPACE 4,10
  2003. * COMMON DECKS WHICH MAY BE OVERLAID.
  2004.  
  2005. *CALL COMPCRS
  2006. EJT$ EQU 0
  2007. *CALL,COMPGFP
  2008. SPACE 4,10
  2009. OVERFLOW
  2010. SPACE 4,10
  2011. END