Table of Contents

TFU

Table Of Contents

  • [00007] TFU - TAPE FILE UTILITY.
  • [00009] TAPE FILE UTILITY.
  • [00041] COMMON DECKS.
  • [00060] PROGRAM MACROS AND EQUIVALENCES.
  • [00062] ABORT - ERROR PROCESSING MACRO.
  • [00082] ENTRY - DEFINE OVERLAY ENTRY POINT.
  • [00102] FCN - DEFINE FUNCTION PROCESSOR.
  • [00131] OVERLAY - GENERATE OVERLAY CONSTANTS.
  • [00169] MAIN PROGRAM.
  • [00173] MAIN PROGRAM.
  • [00194] ERROR PROCESSOR.
  • [00196] ERR - ERROR PROCESSOR.
  • [00212] RESIDENT ROUTINES.
  • [00214] CKA - CHECK ADDRESS.
  • [00258] FUNCTION PROCESSORS.
  • [00492] PRESET AREA.
  • [00494] PRS - PRESET TAPE FILE UTILITY.
  • [00577] TFCN - TABLE OF FUNCTION CODE PROCESSORS.
  • [00609] ERR - PROCESS ERROR.

Source Code

TFU.txt
  1. IDENT TFU,TFU
  2. PERIPH
  3. BASE MIXED
  4. SST
  5. *COMMENT TFU - TAPE FILE UTILITY.
  6. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  7. TITLE TFU - TAPE FILE UTILITY.
  8. TFU SPACE 4,10
  9. *** TFU - TAPE FILE UTILITY.
  10. *
  11. * J. D. HOLMBECK 85/02/15.
  12. TFU SPACE 4,10
  13. *** *TFU* CONTAINS FUNCTIONS FOR THE *TAPE MANAGEMENT SYSTEM*
  14. * (*TMS*) THAT DO NOT REQUIRE ACCESS TO THE TAPE CATALOG FILES.
  15. * THE PROGRAM *TFM* IS USED TO ACCESS THE TAPE CATALOG FILES.
  16. TFU SPACE 4,10
  17. *** *TFU* CALL FORMAT.
  18. *
  19. *T 18/*TFU* ,6/AR, 12/CODE, 24/PARAM
  20. *
  21. * AR AUTO RECALL.
  22. * CODE FUNCTION CODE.
  23. * PARAM PARAMETER FOR FUNCTION.
  24. DAYFILE SPACE 4,10
  25. *** DAYFILE MESSAGES.
  26. *
  27. * * TFU - ARGUMENT ERROR.*
  28. * THE PARAMETER SPECIFIED IN THE LOWER 24 BITS OF THE
  29. * REQUEST IS NOT IN THE CORRECT FORMAT FOR THE FUNCTION.
  30. * FOR EXAMPLE, A PARAMETER BLOCK ADDRESS MAY BE OUTSIDE
  31. * THE FIELD LENGTH OF THE CALLING PROGRAM.
  32. *
  33. * * TFU - INCORRECT REQUEST.*
  34. * THE FUNCTION NUMBER SPECIFIED IS NOT RECOGNIZED BY
  35. * *TFU*.
  36. *
  37. * * TFU - USER ACCESS NOT VALID.*
  38. * THE FUNCTION REQUESTED REQUIRES SPECIAL PRIVILEGES
  39. * THAT THE CALLING PROGRAM DOES NOT HAVE. FOR EXAMPLE,
  40. * THE FUNCTION MAY REQUIRE AN *SSJ=* ENTRY POINT.
  41. TITLE COMMON DECKS.
  42. COMMON SPACE 4,10
  43. ** COMMON DECKS.
  44.  
  45.  
  46. *CALL COMPMAC
  47. *CALL COMSEJT
  48. QUAL MTX
  49. *CALL COMSMTX
  50. QUAL *
  51. *CALL COMSPIM
  52. *CALL COMSPRD
  53. *CALL COMSSSD
  54. QUAL TFM
  55. *CALL COMSTFM
  56. QUAL *
  57. LIST X
  58. *CALL COMSTFU
  59. LIST *
  60. TITLE PROGRAM MACROS AND EQUIVALENCES.
  61. ABORT SPACE 4,10
  62. ** ABORT - ERROR PROCESSING MACRO.
  63. *
  64. * ABORT PARAM
  65. *
  66. * ENTRY PARAM = DAYFILE MESSAGE ADDRESS.
  67. *
  68. * EXIT DAYFILE MESSAGE ISSUED TO SYSTEM AND USER DAYFILES.
  69. * PP ABORTED.
  70. *
  71. * CALLS ERR.
  72.  
  73.  
  74. PURGMAC ABORT
  75.  
  76. ABORT MACRO A
  77. MACREF ABORT
  78. LDC A
  79. LJM //ERR
  80. ABORT ENDM
  81. ENTRY SPACE 4,10
  82. ** ENTRY - DEFINE OVERLAY ENTRY POINT.
  83. *
  84. * ENTRY NAME
  85. *
  86. * ENTRY NAME = ENTRY ADDRESS.
  87.  
  88.  
  89. PURGMAC ENTRY
  90.  
  91. MACRO ENTRY,NAME
  92. MACREF ENTRY
  93. IF -MIC,.M
  94. NAME EQU *
  95. ELSE
  96. QUAL
  97. NAME EQU *+1R".M"*10000
  98. QUAL ".O"
  99. ENDIF
  100. ENTRY ENDM
  101. FCN SPACE 4,15
  102. ** FCN - DEFINE FUNCTION PROCESSOR.
  103. *
  104. * FUNC FCN NAME,(JOB CODES),SSJ
  105. *
  106. * ENTRY FUNC = FUNCTION CODE FROM *COMSTFU*.
  107. * NAME = NAME OF FUNCTION PROCESSOR.
  108. * JOB CODES = IF USED, FUNCTION IS ALLOWED BY ONLY
  109. * THOSE JOB TYPES.
  110. * SSJ = IF USED, FUNCTION IS ALLOWED BY ONLY THOSE
  111. * JOBS WITH *SSJ=* ENTRY POINTS OR
  112. * SUBSYSTEM ID-S.
  113.  
  114.  
  115. .3 SET 0
  116.  
  117. PURGMAC FCN
  118.  
  119. MACRO FCN,FN,A,B,C
  120. LOC .3/3
  121. FN CON A/10000B,A-A/10000B*10000B
  122. .1 SET 0
  123. IFC NE,$B$$,1
  124. .1 BITSET (B)
  125. IFC NE,$C$$,1
  126. .1 SET .1+4000
  127. CON .1
  128. .3 SET .3+3
  129. FCN ENDM
  130. OVERLAY SPACE 4,10
  131. ** OVERLAY - GENERATE OVERLAY CONSTANTS.
  132. *
  133. * OVERLAY (TEXT)
  134. *
  135. * ENTRY TEXT = TEXT OF SUBTITLE.
  136.  
  137.  
  138. .N SET 0
  139. OVLB MICRO 1,, 4T BASE OVERLAY NAME
  140.  
  141. PURGMAC OVERLAY
  142.  
  143. OVERLAY MACRO TEXT
  144. QUAL
  145. .N SET .N+1
  146. .M MICRO .N,1, ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
  147. .O MICRO 1,3, "OVLB"".M"
  148. QUAL ".O"
  149. TTL TFU/".O" - TEXT
  150. TITLE
  151. IDENT ".O",OVL TEXT
  152. *COMMENT TFU - TEXT
  153. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  154. ORG OVL
  155. LJM *
  156. UJN *-2
  157. OVERLAY ENDM
  158. DIRECT SPACE 4,10
  159. **** DIRECT LOCATION ASSIGNMENTS.
  160.  
  161.  
  162. CN EQU 20 - 24 CM WORD BUFFER (5 LOCATIONS)
  163. OT EQU 25 JOB ORIGIN TYPE
  164. FN EQU 30 - 34 FAMILY NAME (5 LOCATIONS)
  165. UN EQU 40 - 44 USER NAME (5 LOCATIONS)
  166. EP EQU 57 ENTRY POINTS
  167. SC EQU 60 - 64 SCRATCH
  168. ****
  169. TITLE MAIN PROGRAM.
  170. SPACE 4
  171. ORG PPFW
  172. TFU SPACE 4,10
  173. ** TFU - MAIN PROGRAM.
  174.  
  175.  
  176. TFU RJM PRS PRESET TAPE FILE UTILITY
  177. LDC 0
  178. TFUA EQU *-1 (OVERLAY NAME)
  179. ZJN TFU1 IF NO OVERLAY NAME
  180. LMC 2L"OVLB" LOAD OVERLAY
  181. RJM EXR EXECUTE ROUTINE
  182. TFU1 LDN 0 CLEAR ADDRESS WORD COUNT
  183. STD T1
  184. LJM * ENTER PROCESSOR
  185. TFUB EQU *-1 (ENTRY ADDRESS FOR FUNCTION)
  186.  
  187. TFUX MONITOR DPPM DROP PP
  188. LJM PPR EXIT TO PP RESIDENT
  189. SPACE 4,10
  190. ** PROGRAMMING NOTE.
  191. *
  192. * (T1) = 0, ON ENTRY TO ALL FUNCTION PROCESSORS TO ASSURE
  193. * THE ROUTINE *CKA* WILL CHECK THE PROPER CM ADDRESSES.
  194. TITLE ERROR PROCESSOR.
  195. ERR SPACE 4,10
  196. ** ERR - ERROR PROCESSOR.
  197. *
  198. * ENTRY (A) = ADDRESS OF DAYFILE MESSAGE.
  199. *
  200. * EXIT DAYFILE MESSAGE ISSUED TO SYSTEM AND USER DAYFILES.
  201. * PP ABORTED.
  202. *
  203. * USES CN.
  204. *
  205. * CALLS /4TA/ERR.
  206.  
  207.  
  208. ERR BSS 0 ENTRY
  209. STD CN SET ERROR MESSAGE ADDRESS
  210. EXECUTE 4TA
  211. LJM /4TA/ERR PROCESS ERROR
  212. TITLE RESIDENT ROUTINES.
  213. CKA SPACE 4,15
  214. ** CKA - CHECK ADDRESS.
  215. *
  216. * ENTRY (IR+3 - IR+4) = ADDRESS.
  217. * (T1) = WORD COUNT MINUS ONE.
  218. *
  219. * EXIT (A) = ABSOLUTE ADDRESS.
  220. *
  221. * ERROR ABORT WITH * TFU - ARGUMENT ERROR* IF ADDRESS IS NOT
  222. * WITHIN FIELD LENGTH OF CALLING PROGRAM.
  223. *
  224. * MACROS ABORT.
  225.  
  226.  
  227. CKA2 LDD IR+3 LOAD ABSOLUTE ADDRESS
  228. SHN 6
  229. ADD RA
  230. SHN 6
  231. ADD IR+4
  232.  
  233. CKA SUBR ENTRY/EXIT
  234. LDD IR+3
  235. SCN 37
  236. NJN CKA1 IF OUT OF RANGE
  237. LDD IR+3
  238. SHN 14
  239. LMD IR+4
  240. ADD T1
  241. SHN -6
  242. SBD FL
  243. MJN CKA2 IF WITHIN FIELD LENGTH
  244. CKA1 ABORT ERAE * TFU - ARGUMENT ERROR.*
  245. COMMON SPACE 4,10
  246. ** COMMON DECKS NOT TO BE OVERLAYED.
  247.  
  248.  
  249. EJT$ EQU 1 DEFINE EJT PROCESSOR
  250. IFP$ EQU 1 DEFINE INITIALIZATION PROCESSOR
  251. *CALL COMPGFP
  252. OVERLAY SPACE 4,10
  253. ** OVERLAY DEFINITIONS.
  254.  
  255.  
  256. USE OVERLAY
  257. OVL EQU *+5 OVERLAY LOAD ADDRESS
  258. TITLE FUNCTION PROCESSORS.
  259. AEJ SPACE 4,25
  260. *** FUNCTION *AEJF* - ASSIGN EST ORDINAL TO JOB.
  261. *
  262. * ENTRY (IR+3 - IR+4) = PARAMETER BLOCK ADDRESS.
  263. *
  264. *T,ADDR 36/ , 12/ EJT, 12/ EST
  265. *
  266. * EJT = EJT ORDINAL OF JOB.
  267. * EST = EST ORDINAL TO ASSIGN TO JOB.
  268. *
  269. * EXIT PARAMETER BLOCK RESET.
  270. *
  271. *T,ADDR 12/ RET, 24/ , 12/ EJT, 12/ EST
  272. *
  273. * RET = 0 IF EST ASSIGNED.
  274. * = 1 IF JOB NOT AT A CONTROL POINT.
  275. * = 2 IF JOB NOT REQUESTING A RESOURCE.
  276. *
  277. * USES CM - CM+4, CN - CN+4, FN - FN+4.
  278. *
  279. * CALLS CKA.
  280. *
  281. * MACROS MONITOR, SFA.
  282.  
  283.  
  284. AEJ ENTRY ENTRY
  285. RJM CKA CHECK ADDRESS
  286. CRD FN GET PARAMETER BLOCK
  287. LDD FN+4 SET EST
  288. STM AEJC
  289. SFA EJT,FN+3 GET EJT ADDRESS
  290. ERRNZ JSNE
  291. CRD CM GET JOB STATUS
  292. ADN SCHE-JSNE GET CONTROL POINT NUMBER
  293. CRD CN
  294. LDD CM+4
  295. LPN 76
  296. SBN EXJS*2
  297. NJN AEJ1 IF JOB NOT AT CONTROL POINT
  298. LDN ZERL SET MONITOR CALL
  299. CRD CM
  300. LDN 4 SET REQUEST COUNT
  301. STD CM+1
  302. LDD CN+3 SET CPA ADDRESS
  303. LPN 77
  304. SHN 7
  305. ADN JCIW
  306. STD CM+4
  307. LDD MA SET VERIFY/UPDATE BLOCK
  308. CWM AEJB,CM+1
  309. MONITOR UTEM UPDATE TABLE ENTRY
  310. LDD CM+1
  311. ZJN AEJ2 IF OPERATION COMPLETE
  312. AEJ1 BSS 0
  313. AEJA LDN 1 FLAG USER NOT AT CONTROL POINT
  314. * LDN 2 (FLAG USER NOT REQUESTING RESOURCE)
  315. AEJ2 STD FN+0
  316. RJM CKA CHECK ADDRESS
  317. CWD FN RETURN STATUS TO USER
  318. LJM TFUX RETURN
  319.  
  320. AEJB BSS 0 VERIFY/UPDATE BLOCK FOR *UTEM*
  321. VFD 1/1,5/JCIW-JCIW,6/11D,6/49D
  322. VFD 42/RXCS VERIFY *RESEX* CPU PRIORITY
  323. VFD 1/1,5/JCIW-JCIW,6/12D,6/24D
  324. VFD 42/ORSI VERIFY ALLOW OPERATOR ROLLOUT SUBSYSTEM ID
  325. VFD 1/1,5/SNSW-JCIW,6/01D,6/12D
  326. VFD 42/1 VERIFY PP PAUSE FLAG SET
  327. VFD 1/0,5/OAEW-JCIW,6/12D,6/00D,30/0
  328. AEJC VFD 12/ UPDATE ASSIGNED EST ORDINAL
  329. IXM SPACE 4,25
  330. *** FUNCTION *IXMF* - ISSUE EXTERNAL *MAGNET* REQUEST.
  331. *
  332. * ENTRY (IR+3 - IR+4) = PARAMETER BLOCK ADDRESS.
  333. *
  334. *T,ADDR 6/ 0, 6/ FNC, 12/ UDT, 36/ PAR
  335. *
  336. * FNC = FUNCTION CODE.
  337. * UDT = *UDT* ORDINAL.
  338. * PAR = PARAMETER FOR FUNCTION.
  339. *
  340. * EXIT PARAMETER BLOCK RESET.
  341. *
  342. *T,ADDR 12/ RET, 12/ UDT, 36/ PAR
  343. *
  344. * RET = 0 IF REQUEST ACCEPTED.
  345. * = 1 IF MAGNET NOT ACTIVE.
  346. * = 2 IF REQUEST NOT ACCEPTED.
  347. *
  348. * USES CM - CM+4, CN - CN+4.
  349. *
  350. * CALLS CKA.
  351. *
  352. * MACROS DELAY, MONITOR, PAUSE.
  353.  
  354.  
  355. IXM ENTRY ENTRY
  356. RJM CKA CHECK ADDRESS
  357. CRD CN
  358. LDD MA WRITE VSN ASSIGNMENT DATA
  359. CWD CN
  360. IXM1 LDN 1 SET WRITE
  361. STD CM+1
  362. LDC MTSI *MAGNET* SUBSYSTEM ID
  363. STD CM+2
  364. LDD HN SET WORD COUNT
  365. STD CM+3
  366. LDN /MTX/XREQ
  367. STD CM+4
  368. MONITOR TDAM
  369. LDD CM+1
  370. ZJN IXM4 IF CALL COMPLETED
  371. SBN 4
  372. ZJN IXM3 IF MAGNET NOT ACTIVE
  373. PAUSE
  374. DELAY
  375. LDD CM+1
  376. NJN IXM2 IF ERROR
  377. SOM IXMB
  378. PJP IXM1 IF RETRY COUNT NOT EXHAUSTED
  379. IXM2 AOM IXMA
  380. IXM3 AOM IXMA
  381. IXM4 BSS 0
  382. IXMA LDN 0 FLAG REQUEST ACCEPTED
  383. * LDN 1 (FLAG *MAGNET* NOT ACTIVE)
  384. * LDN 2 (FLAG REQUEST NOT ACCEPTED)
  385. STD CN
  386. RJM CKA CHECK ADDRESS
  387. CWD CN
  388. LJM TFUX RETURN
  389.  
  390.  
  391. IXMB CON 10D RETRY COUNT
  392. STO SPACE 4,20
  393. *** FUNCTION *STOF* - SET DEFAULT *TO* OPTION FOR USER.
  394. *
  395. * ENTRY (IR+3 - IR+4) = PARAMETER BLOCK ADDRESS.
  396. *
  397. *T,ADDR 58/ , 1/ ETD, 1/ UTD
  398. *
  399. * ETD = 0 IF DEFAULT USER TAPE OPTION TO BE *TO=E*.
  400. * = 1 IF DEFAULT USER TAPE OPTION TO BE *TO=C*.
  401. * UTD = 0 IF DEFAULT USER TAPE OPTION TO BE *TO=F*.
  402. * = 1 IF DEFAULT USER TAPE OPTION TO BE *TO=T*.
  403. *
  404. * EXIT DEFAULT USER TAPE OPTION RESET.
  405. *
  406. * USES CM - CM+4, CN - CN+4.
  407. *
  408. * CALLS CKA.
  409. *
  410. * MACROS DELAY, MONITOR, PAUSE.
  411.  
  412.  
  413. STO ENTRY ENTRY
  414. RJM CKA CHECK ADDRESS
  415. CRD FN GET USER REQUEST
  416. NFA TMSN GET TMS CONTROL WORD
  417. CRD CM
  418. LDD CM+4 SET USER DEFINED TAPE OPTIONS FLAG
  419. LPC 777
  420. LMC 4000
  421. STD CM+4
  422. LDD FN+4 SET USER DEFINED TAPE OPTIONS
  423. LPN 3
  424. SHN 12-1
  425. RAD CM+4
  426. NFA TMSN REWRITE TMS CONTROL WORD
  427. CWD CM
  428. LJM TFUX RETURN
  429. STS SPACE 4,20
  430. *** FUNCTION *STSF* - SET *TMS* STATUS FOR SYSTEM.
  431. *
  432. * ENTRY (IR+3 - IR+4) = PARAMETER BLOCK ADDRESS.
  433. *
  434. *T,ADDR 1/ TMS, 1/ NTD, 1/STD, 1/ NTE, 1/ STE, 55/
  435. *
  436. * TMS = 1 IF *TMS* TO BE ENABLED.
  437. * NTD = 0 IF DEFAULT NON-SYOT TAPE OPTION TO BE *TO=F*.
  438. * = 1 IF DEFAULT NON-SYOT TAPE OPTION TO BE *TO=T*.
  439. * STD = 0 IF DEFAULT SYOT TAPE OPTION TO BE *TO=F*.
  440. * = 1 IF DEFAULT SYOT TAPE OPTION TO BE *TO=T*.
  441. * NTE = 0 IF DEFAULT NON-SYOT TAPE OPTION TO BE *TO=E*.
  442. * = 1 IF DEFAULT NON-SYOT TAPE OPTION TO BE *TO=C*.
  443. * STE = 0 IF DEFAULT NON-SYOT TAPE OPTION TO BE *TO=E*.
  444. * = 1 IF DEFAULT NON-SYOT TAPE OPTION TO BE *TO=C*.
  445. *
  446. * EXIT SYSTEM *TMS* STATUS RESET.
  447. *
  448. * USES T1, CM - CM+4.
  449. *
  450. * CALLS CKA.
  451. *
  452. * MACROS MONITOR.
  453.  
  454.  
  455. STS ENTRY ENTRY
  456. RJM CKA CHECK ADDRESS
  457. CRD CM SET REQUESTED *TMS* STATUS
  458. LDD CM
  459. SHN 0-7
  460. STM STSA+4
  461. LDN 1 SET REQUEST COUNT
  462. STD CM+1
  463. LDN 0
  464. STD CM+2
  465. STD CM+3
  466. LDK TFML SET ADDRESS
  467. STD CM+4
  468. LDD MA SET REQUEST IN MESSAGE BUFFER
  469. CWM STSA,ON
  470. MONITOR UTEM UPDATE TABLE
  471. LDN 0 SET ADDRESS WORD COUNT
  472. STD T1
  473. RJM CKA GET PARAMETER WORD
  474. CRD CM
  475. LDD CM
  476. SHN 21-13
  477. PJN STS1 IF *TMS* NOT TO BE ENABLED
  478. LDN ZERL CLEAR REQUEST WORD
  479. CRD CM
  480. LDN 1 SET REQUEST COUNT
  481. STD CM+1
  482. LDK SSTL SET ADDRESS
  483. STD CM+4
  484. LDD MA
  485. CWM STSB,ON
  486. MONITOR UTEM UPDATE TABLE
  487. STS1 LJM TFUX RETURN
  488.  
  489. STSA VFD 1/0,5/0,6/4,6/7,42/0 *UTEM* REQUEST BLOCK
  490.  
  491. STSB VFD 1/0,5/0,6/1,6/24D,42/0 *UTEM* REQUEST BLOCK
  492. TITLE PRESET AREA.
  493. PRS SPACE 4,15
  494. ** PRS - PRESET TAPE FILE UTILITY.
  495. *
  496. * EXIT (EP) = SPECIAL ENTRY POINT FLAGS.
  497. * (OT) = JOB ORIGIN TYPE.
  498. *
  499. * ERROR ABORT WITH * TFU - INCORRECT REQUEST* IF FUNCTION
  500. * NUMBER NOT RECOGNIZED OR IF THE CALLING PROGRAM DOES
  501. * NOT HAVE THE CORRECT PRIVILEGES.
  502. *
  503. * USES CM - CM+4, CN - CN+4.
  504. *
  505. * CALLS CRS, IFP.
  506. *
  507. * MACROS ABORT, SFA.
  508.  
  509.  
  510. PRS SUBR ENTRY/EXIT
  511. LDD CP READ SPECIAL ENTRY POINT WORD
  512. ADN STSW CHECK ERROR FLAG
  513. CRD CM
  514. ADN SEPW-STSW
  515. CRD CN
  516. LDD CM+1
  517. SBN SPET
  518. MJN PRS1 IF NOT SPECIAL ERROR FLAG
  519. LJM TFUX EXIT *TFU*
  520.  
  521. PRS1 LDD CN SAVE ENTRY POINTS
  522. STD EP
  523. RJM CRS CHECK RECALL STATUS
  524. ZJN PRS2 IF NO AUTO RECALL
  525. RJM IFP INITIALIZE MANAGED TABLE PROCESSORS
  526. LDD CP FETCH EJT ORDINAL
  527. ADN TFSW
  528. CRD CM
  529. SFA EJT,CM CALCULATE EJT ENTRY ABSOLUTE ADDRESS
  530. ADN SCLE GET JOB ORIGIN TYPE
  531. CRD CM
  532. LDD CM
  533. LPN 17
  534. STD OT
  535. LDD IR+2 CHECK FUNCTION CODE
  536. SHN 1
  537. ADD IR+2
  538. STD T7
  539. ADC -TFCNL
  540. MJN PRS3 IF LEGAL CODE
  541. PRS2 ABORT ERIR * TFU - INCORRECT REQUEST.*
  542.  
  543. PRS3 LDM TFCN+1,T7
  544. ZJN PRS2 IF UNDEFINED FUNCTION CODE
  545. STM TFUB SAVE THE ADDRESS OF FUNCTION
  546. LDD CP READ JOB CONTROL INFORMATION
  547. ADK JCIW
  548. CRD CN
  549. LDM TFCN+2,T7 CHECK ORIGIN CONTROL
  550. LPC 3777
  551. ZJN PRS4 IF NO CONTROL BITS
  552. STD T1
  553. LCN 0 SET BIT SHIFT
  554. LMD OT
  555. RAM PRSA
  556. LDD T1 CHECK BITS
  557. PRSA SHN 21
  558. MJN PRS6 IF LEGAL FUNCTION FOR JOB ORIGIN TYPE
  559. LDM TFCN+2,T7 GET FUNCTION PROCESSOR ADDRESS
  560. SHN 21-13
  561. MJN PRS5 IF *SSJ=* REQUIRED
  562. UJN PRS2 ABORT
  563.  
  564. PRS4 LDM TFCN+2,T7 GET FUNCTION PROCESSOR ADDRESS
  565. SHN 21-13
  566. PJN PRS6 IF SSJ= NOT REQUIRED
  567. PRS5 LDD EP CHECK *SSJ=* ENTRY POINT
  568. SHN 21-2
  569. MJN PRS6 IF *SSJ=*
  570. LDD CN+2
  571. ADK -LSSI
  572. MJP PRS2 IF NOT SUBSYSTEM
  573. PRS6 LDM TFCN,T7 SET OVERLAY NAME
  574. STM TFUA
  575. LJM PRSX RETURN
  576. TFCN SPACE 4,15
  577. ** TFCN - TABLE OF FUNCTION CODE PROCESSORS.
  578. * ENTRY = 3 WORDS.
  579. *
  580. *T, 12/ NAME , 12/ ADDR , 12/ BITS
  581. *
  582. * NAME OVERLAY NAME
  583. * ADDR ADDRESS OF FUNCTION PROCESSOR
  584. * BITS BITS FOR JOB ORIGIN CONTROL
  585. * BIT MEANING
  586. * 11 SET IF SSJ= ENTRY POINT REQUIRED.
  587. * 10 - 0 SET IF CORRESPONDING ORIGIN TYPE REQUIRED.
  588.  
  589.  
  590. TFCN BSS 0 TABLE OF FUNCTION CODE PROCESSORS
  591. AEJF FCN AEJ,,SSJ ASSIGN *EST* ORDINAL TO JOB
  592. IXMF FCN IXM,,SSJ ISSUE EXTERNAL *MAGNET* REQUEST
  593. FCN PRS2 RESERVED
  594. STOF FCN STO SET DEFAULT *TO* FOR USER
  595. STSF FCN STS,,SSJ SET *TMS* STATUS FOR SYSTEM
  596. LOC *O
  597. TFCNL EQU *-TFCN
  598. SPACE 4
  599. IFP HERE GLOBAL FNT PROCESSORS INITIALIZATION CODE
  600. SPACE 4,10
  601. ** COMMON DECKS.
  602.  
  603.  
  604. *CALL COMPCRS
  605. SPACE 4,10
  606. OVERFLOW
  607. OVERLAY (ERROR PROCESSOR.)
  608. ERR SPACE 4,10
  609. ** ERR - PROCESS ERROR.
  610. *
  611. * ENTRY (CN) = ERROR MESSAGE ADDRESS.
  612. *
  613. * EXIT ERROR MESSAGE ISSUED TO SYSTEM AND USER DAYFILES.
  614. * PP ABORTED.
  615. *
  616. * CALLS DFM.
  617. *
  618. * MACROS MONITOR.
  619.  
  620.  
  621. ERR BSS 0 ENTRY
  622. LDD CN GET DAYFILE MESSAGE ADDRESS
  623. RJM DFM ISSUE DAYFILE MESSAGE
  624. MONITOR ABTM
  625. LJM PPR EXIT
  626. ERRMSG SPACE 4,10
  627. * ERROR MESSAGES.
  628.  
  629.  
  630. QUAL
  631. ERAE DATA C* TFU - ARGUMENT ERROR.*
  632. ERIR DATA C* TFU - INCORRECT REQUEST.*
  633. ERIU DATA C* TFU - USER ACCESS NOT VALID.*
  634. QUAL *
  635. SPACE 4,10
  636. OVERFLOW OVL
  637. TTL TFU - TAPE FILE UTILITY.
  638. SPACE 4,10
  639. END