1
0
mirror of https://github.com/livingcomputermuseum/cpus-pdp8.git synced 2026-01-12 00:12:44 +00:00
2016-01-02 16:39:18 +00:00

6239 lines
257 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/TSS-8.25 CONFIGURATION FOR UWM Page 1
1 /TSS-8.25 CONFIGURATION FOR UWM
2 /CONFIGURATION PARAMETERS FOR THE TSS/8 MONITOR
3 /COPYRIGHT 1971 - DIGITAL EQUIPMENT CORPORATION; MAYNARD, MASS.
4 /
5 /TSS-8 SYSTEM PARAMETERS AND OPTIONS. FOR EACH PARAMETER,
6 /THE COMMENT INIDCATES THE POSSIBLE RESPONSES.
7
8 0000 DEBUG= 0 /SYSTEM DEBUGGING CONTROL:
9 / =0, PRODUCTION SYSTEM (AUTO-RESTARTS & ERROR FIXUP)
10 / =1, SYSTEM RELIABILITY (JUST AUTO-RESTARTS)
11 / =2, SYSTEM DEBUGGING (SYSTEM HALTS ON ERROR)
12 / =3, FULL CHECKING (THOROUGH 'RETB' CHECK)
13 /BITS 0-8, AVAILABLE FOR LOCAL SWITCHES:
14 / 4000 - ENABLE MQ MEMORY DISPLAY (IN TIMER)
15
16 0002 CPU= 2 /0 IF CPU IS PDP-8/I; 1 IF PDP-8
17 / 2 IF PDP-8/E; 3 IF PDP-12; 4 IF PDP-8/A
18
19 0000 EAE= 0 /20 IF CPU INCLUDES EAE; 0 IF NOT
20
21 0070 CORMEM= 70 /HIGHEST DATA FIELD SELECT; FOR 12K SYS,
22 / RESPOND 20; FOR 16K, RESPOND 30; FOR 32K, 70
23
24 0000 D680= 0 /2 IF TTY INTERFACING IS 680 OR DC08;
25 / 0 IF TTY INTERFACING IS PT08'S
26
27 0000 PHONES= 0 /1 IF 680 OR DC08 INCLUDES 689 OR DC08F;
28 / 0 IF IT DOESN'T OR TTY INTERFACING IS PT08'S
29
30 0000 RF08= 0 /40 IF SYSTEM DISC IS DF32; 0 IF RF08
31
32 0001 RS08= 1 /# OF DISCS IN SYSTEM, WHETHER RF08 OR DF32
33
34 0001 RK05= 1 /# OF NONSYSTEM RK05 DRIVES
35
36 0000 RK8E= 0 /# OF RK8E DRIVES; ONLY FIRST IS USED FOR SYSTEM
37 / THE REMAINDER ARE TREATED AS PERIPHERALS
38
39 0001 READER= 1 /1 IF SYSTEM INCLUDES HIGH-SPEED READER; 0 IF NOT
40
41 0001 PUNCH= 1 /1 IF SYS HAS HSP, 0 IF NOT
42
43 0001 TC01= 1 /1 IF SYS HAS DECTAPES; 0 IF NOT
44
45
46 0000 TD8E= 0 /1 IF TD8E DECTAPES AVAILABLE FOR LOADING & DUMPING
47 / 0 IF NOT; NOTE THAT TD8E TAPES CANNOT BE USED UNDER
48 / TSS/8, THEY REQUIRE CONTINUOUS CPU ATTENTION
49
50 0003 LPT= 3 /0 IF NO PRINTER ON SYS; 1 IF LP08; 2 IF LS8E; 3 IF NONSTANDARD
51
52 0000 CDR= 0 /NO SYS CAN HAVE CARD READER
53 /
54 /MONITOR OPTIONS
55 /FILL IN THE FOLLOWING LINES TO INDICATE THE
56 /MONITOR CAPACITY FOR THIS SYSTEM
57
/TSS-8.25 CONFIGURATION FOR UWM Page 2
58 DECIMAL
59 0024 JOBMAX= 20 /NUMBER OF SIMULTANEOUS USERS (.LE. 20)
60
61 0001 CONTTY= 1 / (ALWAYS HAVE A CONSOLE)
62
63 0000 DC08A= 0 /NUMBER OF TERMINALS VIA DC08A (PDP-8/I ONLY, 19 MAX)
64
65 0000 DC08LO= 0 /LOWEST LINE-NUMBER USED ON DC08A
66
67 0000 PT08= 0 /NUMBER OF TERMINALS VIA PT08 (PDP-8 & PDP-8/I ONLY)
68
69 0017 KL8= 15 /NUMBER OF TERMINALS VIA KL8E (PDP-8/E ONLY, 19 MAX)
70
71 0003 CDVIN= 3 /NONSTANDARD INPUT CHARACTER DEVICES (HIGHEST USED)
72 / 1 = R2; 2 = X0; 3 = X1; 4 = X2; 5 = X3
73
74 0004 CDVOUT= 4 /NONSTANDARD OUTPUT CHARACTER DEVICES (HIGHEST USED)
75 / 1 = P2; 2 = L2; 3 = Y0; 4 = Y1; 5 = Y2; 6 = Y3
76
77 0012 TRUKBD= 10 /NUMBER OF ACTUAL KEYBOARDS ON SYSTEM (NOT COUNTING
78 / CONSOLE TTY). THIS MUST BE .LE. NULINE; NULINE
79 / MAY INCLUDE DUMMY TERMINALS, THIS MAY NOT.
80
81 0012 FRCMAX= TRUKBD /THE HIGHEST KEYBOARD # A '00XX' ACCT # MAY FORCE
82 / NOTE THAT A '000X' ACCOUNT MAY FORCE UP TO 'NULINE'
83
84 0012 TLKMAX= TRUKBD /THE HIGHEST KEYBOARD # WHICH MAY BE 'TALK'ED TO
85
86 0012 BRDMAX= TRUKBD /THE HIGHEST KEYBOARD WHICH WILL RECEIVE BROADCASTS
87 OCTAL
88
89 0002 DTAMIN= 2 /THE FIRST DECTAPE DRIVE WHICH WILL BE ASSIGNED
90 / FOR 'ASSIGN D' COMMAND; NORMALLY =0, BUT MAY
91 / VARY FOR SLIGHTLY RESTRICTED DRIVE USE.
92
93 0007 BILLNG= 7 /THE ACCOUNT NUMBER OF THE BILLING SYSTEM
94 / 0, IF NO BILLING SYSTEM USED
95 /
96 /SYSTEM CONSTANTS
97
98 0020 INFLD= 20 /FIELD SELECT THAT 'INIT' SHOULD BE BOOTED INTO
99 / MAKING IT 20 AVOIDS PROBLEMS SHOULD A
100 / FIELD NEED REPAIR & SYSTEM IS RUN ON 12K
101 0001 TTYEVEN=1 /1 INDICATES PARITY TTY MAY BE USED WITH SYS
102 / 0 ALLOWS ONLY DEC MODIFIED TTYS
103
104 /// END OF SYSTEM CONFIGURATION PARAMETERS
/TSS-8.25 CONFIGURATION FOR UWM Page 3
105
106 /PARAMETERS - UWM VERSION 25
107 /
108 /COPYRIGHT 1971 DIGITAL EQUIPMENT CORPORATION
109 / MAYNARD, MASSACHUSETTS
110 /
111 /EXTENSIVELY MODIFIED AND CORRECTED BY
112 / RICHARD BARTLEIN, 1974, 1976
113 / UNIVERSITY OF WISCONSIN - MILWAUKEE
114 /
115 0031 VERNUM= 31 /SYSTEM VERSION NUMBER
116 /
117 0000 IFZERO DC08A <D689=0>
118 IFNZRO DC08A <
119 IFNZRO PHONES <D689=4>
120 IFZERO PHONES <D689=0>>
121
122 0017 NULINE= DC08A+PT08+KL8 /NUMBER OF TERMINALS LESS CONSOLE
123 37777777772 QUANT= -6 /NUMBER OF SYSTEM TICKS PER TIME SLICE
124 0000 PLT= 0
125 0005 STOMIN= 5 /MINIMUM # FREE STORAGE BLOCKS FOR NEW JOB
126 0005 SWDEX= 5 /DISC TRACK OF FIRST SWAP AREA
127 0024 TICSPS= 24 /NUMBER OF SYSTEM TICKS PER SECOND
128
129 IFZERO RK8E <
130 IFZERO RF08-40 <
131 DSKSIZ= RS08^10
132 >
133 IFZERO RF08 <
134 0100 DSKSIZ= RS08^100 /# OF 4K DISC TRACKS
135 >>
136 IFNZRO RK8E <
137 DSKSIZ= 400 /# OF 4K DISC TRACKS
138 >
139 0062 CLOCKR= TICSPS%2+1750%TICSPS /MILLISECONDS PER SYSTEM TICK
140 0645 INCLK2= 0645 /1,728,000 TICKS PER DAY
141 17000 INCLK1= 600^TICSPS / (LOW 12 BITS OF 86,400 SECS/DAY * TICKS/SEC)
142 2260 TICMIN= 74^TICSPS /SYSTEM TICKS PER MINUTE
143
144 0010 INIDEX= 10 /INIT DISC EXTENSION
145 0030 TS8DEX= 30 /FIELD 0 DISC EXTENSION*2^3
146 0000 ERPDEX= 0 /ERP DISC EXTENSION*4
147 0000 ERPWC= 0 /ERP WORD COUNT
148 0004 FIPDEX= 4 /FIP DISC EXTENSION*4
149 0000 FIPWC= 0 /FIP WORD COUNT
150 0000 SIDEX= ERPDEX /SI DISC EXTENSION*4
151 0000 SIWC= ERPWC /SI WORD COUNT
152 0002 LIBACT= 2 /LIBRARY ACCOUNT #
153 4000 BRKINI= 4000 /INITIAL USER BREAK MASK
154 0400 WRDSEG= 400 /#WORDS PER DISC SEGMENT
155
156 /IOT DEFINITIONS
157
158 IFZERO D680-2 <
159 TTINCR= 6401 /INCREMENT LINE REGISTER
160 TTI= 6402 /TELETYPE INPUT COMMAND
161 TTO= 6404 /TELETYPE OUTPUT COMMAND
/TSS-8.25 CONFIGURATION FOR UWM Page 4
162 TTCL= 6411 /CLEAR LINE REGISTER
163 TTSL= 6412 /SET LINE REGISTER, CLEAR AC
164 TTRL= 6414 /READ LINE REGISTER
165 T8SKP= 6421 /SKIP ON CLOCK FLAG
166 T8OFF= 6422 /TURN CLOCK OFF
167 TT8ON= 6424 /TURN CLOCK ON
168 TTRINC= 6461 /INCREMENT THE R REG.
169 TT8CLR= 6473 /CLEAR AND LOAD THE R REG.
170 >
/TSS-8.25 CONFIGURATION FOR UWM Page 5
171 /EXTENDED MEMORY
172
173 6201 CDF= 6201 /CHANGE TO DATA FIELD 0
174 6202 CIF= 6202 /CHANGE TO INSTRUCTION FIELD 0
175 6203 CDI= 6203 /CHANGE DATA & INSTRUCTION FIELDS
176 6204 CINT= 6204 /CLEAR USER IOT
177
178 6214 RDF= 6214 /READ DATA FIELD
179 6224 RIF= 6224 /READ INSTRUCTION FIELD
180 6234 RIB= 6234 /READ INTERRUPT BUFFER
181 6244 RMF= 6244 /RESTORE MEMORY FIELD
182 6254 SINT= 6254 /SKIP ON USER IOT
183 6264 CUF= 6264 /USER FLAG OFF
184 6274 SUF= 6274 /USER FLAG ON
185
186 /EAE
187 IFZERO EAE-20 <
188 MUY= 7405 /MULTIPLY
189 DVI= 7407 /DIVIDE
190 NMI= 7411 /NORMALIZE
191 SHL= 7413 /SHIFT ARITHMETIC LEFT
192 ASR= 7415 /ARITHMETIC SHIFT RIGHT
193 LSR= 7417 /LOGICAL SHIFT RIGHT
194 MQL= 7421 /LOAD MQ
195 SCL= 7403 /STEP COUNTER LOAD FROM MEMORY
196 SCA= 7441 /STEP COUNTER TO AC
197 MQA= 7501 /MQ TO AC
198
199 IFZERO CPU-2 <
200 DPSZ= 7451 /SKIP IF AC=MQ=0 (MODE B ONLY)
201 SAM= 7453 /SUBTRACT AC FROM MQ
202 SKB= 7671 /SKIP IF MODE B (MESSES UP AC AND MQ)
203 SWBA= 7447 /CHANGE MODE TO A
204 SWAB= 7431 /CHANGE MODE TO B (ALSO DOES MQL)
205 ACS= 7403 /AC(7:11) TO SC; AC CLEARED
206 >>
207 IFZERO CPU-2 <
208 6003 SRQ= 6003 /SKIP ON INTERRUPT REQUEST
209 6004 GTF= 6004 /LINK TO AC0, GT FLAG TO AC1
210 6005 RTF= 6005 /AC0 TO LINK, AC1 TO GT FLAG
211 6006 SGT= 6006 /SKIP ON GT FLAG
212 6007 CAF= 6007 /CLEAR ALL FLAGS
213 6102 SPL= 6102 /SKIP ON POWER LOW
214 >
215
216 IFZERO CPU-4 <
217 SPL= 6102 /SKIP ON POWER LOW
218 CAL= 6133 /CLEAR POWER LOW FLAG
219 >
220
221 /LINE PRINTER IOTS
222 6661 LSF= 6661 /SKIP ON CHAR FLAG SET
223 6662 LCF= 6662 /CLEAR CHAR FLAG
224 6663 LSRP= 6663 /SKIP ON NOT READY OR ON ERROR
225 6664 LLC= 6664 /TRANSMIT CHAR TO PRINTER
226 6665 LIE= 6665 /AC11 TO INTERRUPT ENABLE (LS08/LS8E)
227 6665 LSP= 6665 /SET PROGRAM INTERRUPT (LP08/LE8)
/TSS-8.25 CONFIGURATION FOR UWM Page 6
228 6666 LPC= 6666 /TRANSMIT CHAR & CLEAR FLAG
229 6667 LCP= 6667 /CLEAR PROGRAM INTERRUPT
/TSS-8.25 CONFIGURATION FOR UWM Page 7
230 /CTY
231
232 6044 TPC= 6044 /LOAD TELEPRINTER AND PRINT
233
234 /DISC (DF32)
235
236 6601 DCMA= 6601 /CLEAR
237 6603 DMAR= 6603 /READ
238 6605 DMAW= 6605 /WRITE
239 6611 DCEA= 6611 /CLEAR DISC EXTENDED ADDRESS
240 6615 DEAL= 6615 /LOAD EXTENDED ADDRESS
241 6621 DFSE= 6621 /SKIP ON ERROR
242 6622 DFSC= 6622 /SKIP ON COMPLETION
243 6616 DEAC= 6616 /READ EXTENDED ADDRESS
244
245 /DISC (RF08)
246
247 6615 DIML= 6615
248 6616 DIMA= 6616
249 6643 DXAL= 6643
250
251 /RK05 DISC IOTS
252 6740 IFZERO PHONES <RKDV=6740>
253 IFNZRO PHONES <RKDV=6750>
254 6741 DSKP= RKDV+1 /SKIP IF DONE OR ERROR
255 6742 DCLR= RKDV+2 /CLEAR THE CONTROLLER
256 6743 DLAG= RKDV+3 /LOAD DISC ADDRESS & GO
257 6744 DLCA= RKDV+4 /LOAD CURRENT CORE ADDRESS
258 6745 DRST= RKDV+5 /READ THE STATUS
259 6746 DLDC= RKDV+6 /LOAD THE COMMAND REGISTER
260 6747 DMAINT= RKDV+7 /MAINTENANCE ONLY
261
262 /
263 /TC08 DECTAPE CONTROLLER IOTS
264 6761 DTRA= 6761 /READ A-REGISTER
265 6762 DTCA= 6762 /CLEAR A-REGISTER
266 6764 DTXA= 6764 /XOR INTO A-REGISTER
267 6771 DTSF= 6771 /SKIP ON DECTAPE FLAG
268 6772 DTRB= 6772 /READ STATUS-REGISTER (B)
269 6774 DTLB= 6774 /LOAD STATUS-REGISTER (B)
270
271 /CARD READER IOTS
272 6631 RCSF= 6631 /SKIP ON DATA READY
273 6632 RCRA= 6632 /READ ALPHANUMERIC
274 6634 RCRB= 6634 /READ BINARY
275 6635 RCNO= 6635 /READ CONDITIONS OUT TO CARD READER (8/E ONLY)
276 6636 RCRC= 6636 /READ COMPRESSED (8/E ONLY)
277 6637 RCNI= 6637 /READ CONDITION IN FROM CARD READER (8/E ONLY)
278 6671 RCSD= 6671 /SKIP ON CARD DONE FLAG
279 6672 RCSE= 6672 /SELECT CARD READER AND SKIP IF READY
280 6674 RCRD= 6674 /CLEAR CARD DONE FLAG
281 6675 RCSI= 6675 /SKIP IF INTERRUPT BEING GENERATED (8/E ONLY)
282 6677 RCTF= 6677 /CLEAR TRANSITION FLAGS (8/E ONLY)
283
284 IFZERO CPU <
285 /KW8I REAL TIME CLOCK
286
/TSS-8.25 CONFIGURATION FOR UWM Page 8
287 CECI= 6137 /CLEAR AND ENABLE CLOCK AND INTERRUPT
288 CSCF= 6133 /SKIP AND CLEAR FLAG IF FLAG
289 >
290
291 IFZERO CPU-1 <
292 CECI= 6315 /CLOCK ENABLE
293 CSCF= 6301 /SKIP ON CLOCK FLAG
294 CCF= 6302 /CLEAR CLOCK FLAG, CLEAR ENABLE AND CLEAR BUFFER
295 CLB= 6304 /LOAD BUFFER FROM AC
296 >
297
298 IFZERO CPU-2 <
299 6131 CECI= 6131 /CLOCK ENABLE
300 6133 CSCF= 6133 /SKIP AND CLEAR FLAG IF FLAG
301 >
302
303 IFZERO CPU-3 <
304 CLAB= 6133
305 CLLR= 6132
306 CLEN= 6134
307 CLSA= 6135
308 CLSK= 6131
309
310 MTPF= 6113
311 MINT= 6115
312 MTON= 6117
313 MKTF= 6123
314 MINS= 6125
315 MTRS= 6127
316
317 MKSF= 6111
318 MKCC= 6112
319 MKRS= 6114
320 MKRB= 6116
321
322 MTSF= 6121
323 MTCF= 6122
324 MTPC= 6124
325 MTLS= 6126
326 >
327
328 IFZERO CPU-4 <
329 CLLE= 6135 /AC11 TO CLOCK INTERRUPT ENABLE
330 CLCL= 6136 /CLEAR CLOCK FLAG
331 CLSK= 6137 /SKIP ON CLOCK FLAG
332 >
333
334 IFNZRO DC08A <
335 /689AG
336
337 SRF= 6701 /SKIP IF RING FLAG
338 SCF= 6711 /SKIP IF CARRIER FLAG
339 DFCRF= 6742 /CLEAR RING FLAG
340 CTG= 6721 /CLEAR GROUP COUNTER
341 RRS= 6702 /READ RING STATUS
342 ITG= 6731 /INCREMENT GROUP COUNTER
343 STR= 6722 /SET TERMINAL READY
/TSS-8.25 CONFIGURATION FOR UWM Page 9
344 EDF= 6704 /ENABLE DATAPHONE FEATURES
345 DDF= 6714 /DISABLE DATAPHONE FEATURES
346 CTR= 6724 /CLEAR TERMINAL FLAG
347 CCF= 6741 /CLEAR CARRIER FLAG
348 RCS= 6712 /READ CARRIER STATUS
349 >
/TSS-8.25 CONFIGURATION FOR UWM Page 10
350 /FIP IOTS (AS USED INTERNALLY)
351
352 0040 ASD= 0040 /ASSIGN DEVICE
353 0042 REL= 0042 /RELEASE DEVICE
354 0200 REN= 0200 /RENAME FILE
355 6601 OPEN= 6601 /OPEN FILE
356 0202 CLOS= 0202 /CLOSE
357 6603 RFILE= 6603 /READ FILE
358 0204 PROT= 0204 /PROTECT
359 6605 WFILE= 6605 /WRITE FILE
360 6606 XOPEN= 6606 /OPEN FILE WITH EXCLUSIVE USE
361 0207 CPASS= 0207 /CHANGE A USER'S PASSWORD
362 0210 CRF= 0210 /CREATE
363 0211 EXT= 0211 /EXTEND
364 0212 RED= 0212 /REDUCE
365 6613 FINF= 6613 /FILE INFORMATION
366 0214 LIN= 0214 /LOGIN
367 0215 LOUT= 0215 /LOGOUT
368 0220 BCLR= 0220 /CLEAR MFD BILLING INFORMATION
369
370
371 /DEVICE DATA BLOCK
372
373 0000 DDBSTS= 0 /WORD 1. STATUS AND UNIT NUMBER
374 2000 DXON= 2000 /XOFF SENT FLAG - SEND 'XON' WHEN NEEDED
375 1000 DSI= 1000 /DESTINATION IS S.I. FLAG
376 0400 DFULL= 400 /INDICATES BUFFER IS FULL
377 0200 DUPL= 200 /CONSOLE IN DUPLEX MODE
378 0100 SICOM= 100 /COMMAND WAITING
379 0040 CTRLC= 40 /USER TYPED CTRL/C
380 0020 DECHO= 20 /CAUSE 'SI' TO ECHO INPUT BUFFER
381 0010 DHALF= 10 /KEYBOARD IS HALF-DUPLEX (HARDWARE)
382 0004 DFORC= 4 /KEYBOARD WAS JUST FORCED
383 0002 CTRLB= 2 /COMMAND PRECEDED BY EXPLICIT CTRL/B
384
385 /OUTPUT SIDE:
386
387 4000 CTRLS= 4000 /CTRL-S ENTERED (OUTPUT FROZEN)
388 3000 DXOFF= 3000 /JAM 'XOFF' INTO OUTPUT
389 1000 DBELL= 1000 /JAM 'BELL' INTO OUTPUT
390 0001 DTALK= 1 /LOCK KEYBOARD AGAINST TALKS
391
392 /OUTPUT REGISTER:
393
394 / 4000 - BUFFER CHECKING REQUESTED
395 / 2000 - DEVICE INTERRUPT EXPECTED
396 / 1000 - 5-SECOND TIMEOUT FLAG
397 / 400-2 - NEXT BUFFERED CHARACTER
398 / 0001 - BUFFERED CHARACTER WAITING
399
400 0001 DDBJN= 1 /WORD 2. JOB NUMBER IN 7-11; DEVICE NUMBER IN 0-6
401 0002 DDBBRK= 2 /BREAK MASK
402 0204 SIBRKM= 204 /SI BREAK MASK
403 0003 DDBTIM= 3 /TIME THAT DEVICE WAS ASSIGNED
404 0004 DDBINP= 4 /BUFFER FILL POINTER
405 0005 DDBINC= 5 /BUFFER FILL COUNT
406 0006 DDBOUC= 6 /BUFFER EMPTY COUNT
/TSS-8.25 CONFIGURATION FOR UWM Page 11
407 0007 DDBOUP= 7 /BUFFER EMPTY POINTER
408
409 /FILE CONTROL BLOCK - POINTED TO BY JOBFX, X=0,1,2,3
410
411 0000 FILWPT= 0 /POINTER TO FILE RETRIEVAL WINDOW
412 0001 FILSCT= 1 /SEGMENT NUMBER OF FIRST WINDOW ENTRY
413 0002 FILPRO= 2 /FILE READ-ONLY (BIT 9), FILE PRIVILEGED (BIT 11)
414 0003 FILPAR= 3 /POINTER TO RFILE OR WFILE PARAMETER BLOCK
415 0004 FILDA= 4 /DISC ADDRESS OF RFILE OR WFILE
416 0006 FILWC= 6 /-WORD COUNT OF RFILE OR WFILE
417 0007 FILRES= 7 /POINTER TO FILPIF IN USER AREA
418
419 /FILE RETRIEVAL WINDOW
420 /WORD 0: UFD LINK TO NEXT GROUP OF 7 SEGMENT POINTERS
421 /WORDS 1-7: SEVEN SEGMENT ADDRESSES
422
423 /RFILE OR WFILE PARAMETER BLOCK - POINTED AT BY FILPAR
424
425 0000 FILPFN= 0 /FUNCTION: 0603 OR 0605
426 0001 FILPDX= 1 /DISC EXTENSION
427 0002 FILPIF= 2 /INTERNAL FILE # (BITS 10-11) AND FIELD # (BITS 7-9)
428 0003 FILPWC= 3 /-WORD COUNT FOR THIS TRANSFER
429 0004 FILPCA= 4 /CORE ADDRESS FOR THIS TRANSFER
430 0005 FILPDA= 5 /DISC ADDRESS
431 0006 FILPRA= 6 /EXEC RETURN ADDRESS FOR THIS TRANSFER
432 0007 FILPCT= 7 /POINTER TO FILE CONTROL BLOCK
/TSS-8.25 CONFIGURATION FOR UWM Page 12
433 /JOB DATA AREA
434
435 0000 JOBSTS= 0 /STATUS
436 /STR0
437 4000 JSRUN= 4000 /RUN BIT
438 2000 JSEREN= 2000 /USER ERROR ENABLE
439 1000 JCOMBD= 1000 /LAST TIME THE JOB RAN AS COMPUTE BOUND
440 0400 JSPRIV= 400 /LIBRARY PROGRAM (HAS PRIVILEGES)
441 0200 JSHLT= 200 /PROGRAM EXECUTED 'HLT'
442 0100 JSIOT= 100 /NON-RESIDENT IOT
443 0040 JSIOTC= 40 /COPY IOT RESULT TO USER
444 0020 JSRSEN= 20 /PROGRAMMATIC CTRL/C ENABLE
445 0010 JSINER= 10 /INHIBIT SI ERROR UNTIL NEXT COMMAND
446
447 0200 JSACC= 200
448 0100 JSBAT= 100 /BATCH-MODE
449
450 /BITS 9-11 ARE SYSTEM ERROR CODE
451
452 0001 UUOERF= 1 /IOT ERROR
453 0002 SWPRER= 2 /SWAP READ ERROR
454 0003 SWPWER= 3 /SWAP WRITE ERROR
455 0005 DSKERR= 5 /DISC ERROR
456 0006 HUNGDV= 6 /HUNG DEVICE
457
458 /STR1
459 4000 JSTIME= 4000 /TIME IS UP
460 2000 JSF0= 2000 /FILE 0 NOT BUSY
461 1000 JSF1= 1000 /FILE 1 IS NOT BUSY
462 0400 JSF2= 400 /FILE 2 IS NOT BUSY
463 0200 JSF3= 200 /FILE 3 IS NOT BUSY
464 0100 JSDEL= 100 /DELIMITER SEEN
465 0040 JSLPT= 40 /LPT BUFFER IN USE BUT NOT FULL
466 0020 JSTEL= 20 /OUTPUT BUFFER NOT FULL
467 0010 JSPTR= 10 /CHARACTER IN READER BUFFER
468 0004 JSPTP= 4 /PUNCH BUFFER IS NOT FULL
469 0002 JSERR= 2 /SYSTEM ERROR DETECTED
470 0001 JSWAIT= 1 /JOB NOT IN WAIT STATE
471
472 0002 JOBSTB= 2 /DEVICE STATUS REGISTER (RK05, DECTAPE, & CARD READER)
473 0003 JOBWMK= JOBSTB+1 /WAIT MASK
474 0004 JOBDWT= JOBWMK+1 /JOB DEVICE-WAIT
475 0005 JOBSRA= JOBDWT+1 /JOB RESTART ADDRESS
476 0006 JOBERR= JOBSRA+1 /JOB ERROR RESTART ADDRESS
477 0007 JOBLNK= JOBERR+1 /IOT LINKAGE
478 0010 JOBSWR= JOBLNK+1 /SWITCH REGISTER
479 0011 JOBREG= JOBSWR+1 /PC, AC, & LINK (W/MODE, GT, & SC)
480 0014 JOBEAE= JOBREG+3 /MQ REGISTER
481 0015 JOBACT= JOBEAE+1 /USER'S ACCOUNT #
482 0016 JOBRTM= JOBACT+1 /LOW ORDER RUN TIME
483 0017 JOBRTH= JOBRTM+1 /HIGH ORDER RUN TIME
484 0020 JOBF0= JOBRTH+1 /POINTER TO FILE 0 CONTROL
485 0021 JOBF1= JOBF0+1 /POINTER TO FILE 1 CONTROL
486 0022 JOBF2= JOBF1+1 /POINTER TO FILE 2 CONTROL
487 0023 JOBF3= JOBF2+1 /POINTER TO FILE 3 CONTROL
488 0024 JOBSCH= JOBF3+1 /SCHEDULING CONTROL-WORD
489
/TSS-8.25 CONFIGURATION FOR UWM Page 13
490
491 /CORE TABLE CONTROL FLAGS
492
493 4000 FSWP= 4000 /SWAP REQUEST
494 2000 LOCK= 2000 /LOCK IN CORE
495 1000 NOTRUN= 1000 /HAS NOT BEEN SCHEDULED TO RUN
496 0400 FIP= 400 /FILE PHANTOM (NOTE: FIP HAS BEEN ASSUMED EQUAL TO WRDSEG)
497 0200 SI= 200 /SYSTEM COMMAND INTERPRETER PHANTOM
498 0140 NOHOLD= 140 /DISC COMPLETION PRIORITY (SKIPPED EVERY 4 TRANSFERS)
499 0037 CJOB= 37 /MASK FOR JOB NUMBER
/TSS-8.25 CONFIGURATION FOR UWM Page 14
500 /FIP TABLE DEFINITIONS
501
502 0530 SATSIZ= 530
503 5600 ENTABL= 5600
504 6040 UTABLE= JOBMAX^10+ENTABL
505 6160 RTABLE= JOBMAX^4+UTABLE /*** CHANGE TO ^10 LATER ***
506
507 /TS8 TABLE DEFINITIONS
508
509 7001 CORTBL= 7001
510 7010 L2QTB= CORTBL+7
511
512 /TS8II TABLE DEFINITIONS
513 0003 IFNZRO CDVIN <CDVGAP=3> /ROOM FOR HSR, ?, AND CDR
514 IFZERO CDVIN <CDVGAP=0>
515 0000 IFZERO DC08A <DCSIZE=0>
516 IFNZRO DC08A <DCSIZE=400> /DC08A & 689AG CODE
517
518 0200 OUTREG= 200 /ACTIVE OUTPUT REGISTERS
519 0226 SKPTBL= OUTREG+NULINE+CONTTY+CDVOUT+2 /START OF IOT SKIP TABLE
520 0275 SKPTP= SKPTBL+NULINE+NULINE+CONTTY+CONTTY+CDVIN+CDVGAP+1
521 0304 RINGIN= SKPTP+CDVOUT+3 /INPUT RING BUFFER
522 0400 ENDBUF= OUTREG+200 /END OF KEYBOARD INPUT BUFFER
523 0036 INPUTS= ENDBUF-RINGIN%2 /NUMBER OF POSSIBLE RING-BUFFER ENTRIES
524 6211 DATFLD= CDF 10 /DATA FIELD SELECT
525
526 2400 DATA1= 2400+DCSIZE /START OF DATA AREA (ALMOST)
527 2600 DEVTBL= DATA1+200 /ACTUAL START OF DATA AREA
528 2640 DEVTBE= DEVTBL+NULINE+NULINE+2
529 2675 JOBTBL= DEVTBE+35
530 2722 CLKTBL= JOBTBL+JOBMAX+1
531 2747 TTYTBL= CLKTBL+JOBMAX+1
532 2774 PRGTBL= TTYTBL+JOBMAX+1
533 3061 DSUTBL= PRGTBL+JOBMAX+JOBMAX+JOBMAX-7
534 2200 OUTDIF= -OUTREG^2+DEVTBL /FOR LINKING BETWEEN OUTREG & DEVTBL
535
536 IFZERO EAE-20 <MQREG=1>
537 0001 IFZERO EAE <IFZERO CPU-2 <MQREG=1>
538 IFNZRO CPU-2 <MQREG=0>>
539
540 /// END OF SELF-DEFINING PARAMETERS -- START OF MONITOR LINKAGES ///
541
542 /A VERY FEW SELDOM CHANGED POINTERS
543
544 4201 AUTOST= 4201 /AUTOMATIC SYSTEM RESTART ENTRANCE TO 'INIT'
545 7720 FIPBLK= 7720 /THE I/O TRANSFER BLOCK FOR 'FIP'
546
547 /FREQUENTLY CHANGED POINTERS IN TS8 & TS8II; THESE ARE UPDATED
548 /BY THE 'LINK.TE' TECO MACRO. IN THE SOURCE, THEY ARE FLAGGED
549 /FOR THE MACRO TO FIND BY '/*'.
550
/TSS-8.25 CONFIGURATION FOR UWM Page 15
551
552 5200 BLT0= 5200 /BLOCK TRANSFER
553 0033 CLK1= 0033 /SYSTEM DAYCLOCK (LOW)
554 0034 CLK2= 0034 / (HIGH)
555 0030 CONDBA= 0030 /POINTER TO DEVTBL ENTRY IN USE
556 0031 CONDDB= 0031 /POINTER TO DDB IN USE
557 1317 CORSRC= 1317 /CORTBL SEARCH
558 7001 CORTBL= 7001 /CORE ALLOCATION TABLE (FIXED)
559 0035 DATE= 0035
560 7045 DEVCHK= 7045 /CHECK DEVICE OWNERSHIP
561 0036 DSBUSY= 0036 /DISC BUSY COUNT
562 0535 DTDEF0= 0535 /DECTAPE ERROR REGISTRATION
563 0541 DTDSF0= 0541 /DECTAPE BUFFER TO SWAP AREA
564 0527 DTDSK= 0527 /DECTAPE DISC COMPLETION
565 0551 DTL20= 0551 /DECTAPE LEVEL-2 DISPATCH
566 3671 DTRKHG= 3671 /ERROR SETTING FROM FIELD 1
567 5333 ENDIOT= 5333 /JMP TO EXIT HANDLER
568 0277 F1RTN= 0277 /RETURN FROM FIELD 1 INTERRUPT HANDLERS
569 0057 FIPJOB= 0057 /JOB REQUESTING 'FIP'
570 0040 FRECNT= 0040 /AVAILABLE FREE-CORE BLOCKS
571 0037 FREE= 0037 /LINK TO FIRST FREE-CORE BLOCK
572 1400 GETB= 1400 /GET A FREE-BLOCK
573 1440 GETDB0= 1440 /GET DDB BLOCK
574 7200 GETJTB= 7200 /GET ADDRESS OF LINKED ENTRY
575 6200 GIR00= 6200 /GENERAL INPUT ROUTINE
576 0062 JOB= 0062 /CURRENTLY ACTIVE JOB
577 4051 L2EXIT= 4051 /LEVEL-2 EXIT ROUTINE
578 0041 L2SF= 0041 /LEVEL 2: SAVED FIELD AND MODE
579 0042 L2SV0= 0042 /LEVEL 2: SAVED PC
580 2631 L2TIM3= 2631 /RETURN FROM 'TIMER' ROUTINE
581 5533 NFSEGS= 5533 /NUMBER OF FREE DISC SEGMENTS
582 2340 OUTIOT= 2340 /INCREMENT 'ACFLG' TO SIGNAL OUTPUT
583 5764 OVERL1= 5764
584 2364 OVERLA= 2364 /DISC TERMINATION FOR OVERLAYS
585 0572 OVRLA1= 0572 /SYSTEM OVERLAY COMPLETION DISPATCHER
586 1203 PRINT0= 1203 /TYPE CHARACTER
587 1473 QUEUE0= 1473 /REGISTER LEVEL-2 FOR FIELD 1
588 3652 READFI= 3652 /SI FILE-LOADER
589 4172 REDO0= 4172 /'REDO' AND IOT
590 3600 RELOAD= 3600 /AUTO-RESTART STARTUP
591 0600 RETB= 0600 /FREE A CORE-BLOCK
592 3676 RKL20= 3676 /LEVEL-2 DISPATCH FOR RK05
593 3640 SCHED0= 3640 /'RSCHED' ENTRY
594 4400 SICLR= 4400 /BUFFER CLEAR ROUTINE
595 0020 SIDATA= 0020 /SI CONTROL WORDS
596 2357 SLEEP= 2357 /PUT THE JOB TO SLEEP
597 2621 TIMCDR= 2621 /CARD READ TIMER
598 0032 TTCHAR= 0032 /CHARACTER FOR FEED ROUTINES
599 0172 UUDF= 0172 /USER FIELD SELECT
600 4404 UUOERR= 4404 /USER IOT ERROR
601 0336 UUOEX1= 0336 /IOT EXIT ROUTINE
602 3006 WSCHED= 3006 /'WAIT' ENTRY
603 1720 CDL11= 1720 /LEVEL-1 INTERRUPT FOR CARD READER
604 1704 CDL21= 1704 /LEVEL-2 HANDLER FOR CARD READER
605 0020 CJOBDA= 0020 /CURRENT JOB DATA POINTER
606 0027 DTJOB= 0027 /JOB HOLDING DECTAPE CONTROLLER
607 0601 DTL11= 0601 /LEVEL-1 INTERRUPT FOR DECTAPE
/TSS-8.25 CONFIGURATION FOR UWM Page 16
608 1004 DTL21= 1004 /DECTAPE LEVEL-2 COMPLETION
609 0177 F1BUF= 0177 /DDB EMPTY BLOCK
610 2512 F1DTST= 2512 /DECTAPE STOP ROUTINE
611 0176 F1ECNT= 0176 /DDB EMPTY COUNT
612 0036 F1OFFJ= 0036 /SYSTEM OFF/ON COMMAND FLAG
613 0175 F1TCNT= 0175 /DDB CHARACTER COUNT
614 0045 RKJOB= 0045 /JOB HOLDING RK05 CONTROLLER
615 2000 RKL11= 2000 /LEVEL-1 INTERRUPT FOR RK05
616 1615 RKL21= 1615 /LEVEL-2 HANDLER FOR RK05
617 2200 TIMER0= 2200 /FIELD 1 TIMER ROUTINE
618 2445 UPEEK1= 2445 /FIELD 1 PEEK IOT CODE
619 0174 UPTIM1= 0174 /SYSTEM UPTIME
620 0173 UPTIM2= 0173
621 1735 UUCDR= 1735 /UUO ENTRY FOR CARD READER
622 1415 UUDTRK= 1415 /UUO ENTRY FOR DECTAPE & RK05
623 7730 WINBAS= 7730 /BASIC RETRIEVAL WINDOW
/TSS-8.25 CONFIGURATION FOR UWM Page 17
624
625 /SI - UWM VERSION 25
626 /
627 /COPYRIGHT 1971, 1975 DIGITAL EQUIPMENT CORPORATION
628 / MAYNARD, MASSACHUSETTS
629 /
630 /EXTENSIVELY MODIFIED AND CORRECTED BY:
631 / RICHARD BARTLEIN, 1974, 1976
632 / UNIVERSITY OF WISCONSIN, MILWAUKEE
633 /
634 0000 *0
635 00000 7300 CLA CLL
636 00001 6201 C6201, CDF /CHANGE TO FIELD ZERO
637 00002 5403 JMP I .+1
638 00003 0200 SI1, COM
639 4404 SKIP= JMS I .
640 00004 1667 SKIPS
641
642 0010 *10
643 00010 0000 IX1, 0 /SI AUTO-INDEX REGISTERS
644 00011 0000 IX2, 0
645 00012 0000 IX3, 0
646 00013 0000 IX4, 0
647
648 00014 0002 C0002, 2
649 00015 0003 C0003, 3
650 00016 0004 C0004, 4
651 00017 0005 C0005, 5
652 00020 0006 C0006, 6
653 00021 0007 C0007, 7
654 00022 0010 C0010, 10
655 00023 0037 C0037, 37
656 00024 0100 C0100, 100
657 00025 0200 C0200, 200
658 00026 0400 C0400, 400
659 00027 1000 C1000, 1000
660 00030 4000 C4000, 4000
661 00031 7637 C7637, 7637 /MASK FOR CLEANING THE PROTECTION-CODE
662 00032 7700 C7700, 7700
663 00033 7770 C7770, 7770
664 00034 7777 P7777, -1
665
666 /WORDS USED BY 'SI' IN FIELD 0
667 00035 0020 COMCNT, SIDATA
668 00036 0021 COMDSP, SIDATA+1
669 00037 0022 COMPTR, SIDATA+2 /LAST DDB EXAMINED
670 00040 0023 SICHAR, SIDATA+3
671 00041 0024 SIFLG, SIDATA+4
672 00042 0025 SIREG, SIDATA+5
673 0025 SIREGA= SIDATA+5
674
675 00043 0030 CONDVA, CONDBA
676 00044 0032 TTYCHR, TTCHAR
677
678 00045 0177 SIBUF, F1BUF /SAVED FETCH POINTERS
679 00046 0176 SIECNT, F1ECNT
680 00047 0175 SITCNT, F1TCNT
/TSS-8.25 CONFIGURATION FOR UWM Page 18
681 00050 0000 SIJOB, 0
682 00051 0000 SIKBD, 0
683 00052 0000 CHDFA, 0 /TEMP LOC USED BY MANY ROUTINES
684 6221 CHDF= 6221
685 00053 0000 COMDB0, 0 /ADDRESS OF COMMAND DDB
686 00054 0000 COMDBT, 0 /SET TO POINT TO CHARACTER TOTAL IN INPUT DDB
687 00055 0000 COMRDB, 0 /RESPONSE DDB ADDRESS
688 00056 6204 COMBFA, COMBUF-1
689 00057 0000 COMTBE, 0 /COMMAND TABLE ENTRY ADDRESS
690 00060 0000 COMFLG, 0 /COMMAND CONTROL FLAGS
691 00061 0040 FRECTA, FRECNT
692 00062 0062 IOTPAR, . /IOT PARAMETER BLOCK
693 00063 0000 IOTP0, 0
694 00064 0000 IOTP1, 0
695 00065 0000 IOTP2, 0
696 00066 0000 IOTP3, 0
697 00067 0000 IOTP4, 0
698 00070 0000 IOTP5, 0
699 00071 0000 IOTP6, 0
700 00072 0000 IOTP7, 0
701
702 /***** CHAR & NUMHO MUST REMAIN ADJACENT FOR 'ASCOUT' *****
703 00073 0000 CHAR, 0 /CURRENT SCAN CHARACTER
704 00074 0000 NUMHO, 0 /HIGH ORDER FOR NUMBIN
705 00075 0000 0
706 00076 0000 0
707
708 4477 ACCTIN= JMS I .
709 00077 2676 ACC0
710 4500 ASCOUT= JMS I .
711 00100 2143 ASCOU0 /ASCII OUTPUT
712 4501 ASCSIX= JMS I .
713 00101 2337 ASCSI0 /ASCII TO SIXBIT
714 4502 ASSCOR= JMS I .
715 00102 2465 ASSCO0
716 4503 BLT= JMS I .
717 00103 5200 BLT0 /BLOCK TRANSFER
718 4504 BUFDEL= JMS I .
719 00104 2256 BUFDE0 /BUFFER DELETE
720 5505 CALFIP= JMP I .
721 00105 1113 CALFI0 /FIP OVERLAY
722 4506 CHKACT= JMS I .
723 00106 2506 CHKAC0 /CHECK TYPE OF USER
724 4507 CHKIO= JMS I .
725 00107 2666 CHKIO0 /CHECK IF I/O IS ACTIVE
726 4510 CLRPRV= JMS I .
727 00110 0651 CLRPV0 /CLEAR JOB'S PRIVILEGE BIT
728 4511 COMGET= JMS I .
729 00111 1707 COMGE0 /GET COMMAND STRING CHARACTER
730 5512 COMWAT= JMP I .
731 00112 0240 COMWT0 /COMMAND WAIT
732 4513 CORE= JMS I .
733 00113 1317 CORSRC /FIELD 0 CORE-SEARCH
734 4514 CORES= JMS I .
735 00114 2220 CORSER
736 4515 DECRCT= JMS I .
737 00115 2244 DECRC0 /DECREMENT COMCNT
/TSS-8.25 CONFIGURATION FOR UWM Page 19
738 4516 ENDTST= JMS I .
739 00116 2400 ENDTS0 /TEST FOR END OF COMMAND
740 5517 EXIT= JMP I .
741 00117 0240 EXITA, COMEXT
742 4520 GETBLK= JMS I .
743 00120 1400 GETB /GET A BLOCK FROM FREE-CORE
744 4521 GETDDB= JMS I .
745 00121 1440 GETDB0 /GET A DEVICE DATA-BLOCK
746 4522 GETFBL= JMS I .
747 00122 1763 GETFB0 /GET FREE BLOCK
748 4523 GETJTA= JMS I .
749 00123 7200 GETJTB /GET ADDRESS OF LINKED ENTRY
750 4524 GETNAM= JMS I .
751 00124 3563 NULLNA /GET A PROGRAM NAME
752 4525 GETTBA= JMS I .
753 00125 2200 GETTB0 /GET JOB TABLE ADDRESS
754 4526 GETWRD= JMS I .
755 00126 2452 GETWR0 /GET STATUS WORD
756 4527 NUMBIN= JMS I .
757 00127 2012 NUMBI0 /NUMBER CONVERT
758 4530 OCTASC= JMS I .
759 00130 2424 OCTAS0 /OCTAL TO ASCII
760 4531 PRINT= JMS I .
761 00131 1203 PRINT0 /QUEUE A CHARACTER FOR PRINTING
762 4532 REBOOT= JMS I .
763 00132 0730 RBOOT /INITIATE AUTOMATIC RESTART
764 4533 RELCOR= JMS I .
765 00133 2476 RELCO0
766 4534 RESDDB= JMS I .
767 00134 2226 RESPDB /GET RESPONSE DDB
768 4535 RETBKS= JMS I .
769 00135 5172 RETBK0 /RETURN BLOCKS
770 4536 RETBLK= JMS I .
771 00136 0600 RETB /FIELD 0 ROUTINE TO RETURN A BLOCK
772 4537 RETDBL= JMS I .
773 00137 5162 RETDB0 /RETURN BLOCK
774 4540 RETPAR= JMS I .
775 00140 2600 RETPA0 /RETURN PARAMETERS
776 4541 SETJOB= JMS I .
777 00141 6072 SETJB0 /SET UP 'JOBDAT'
778 4542 SIERR= JMS I .
779 00142 7110 SYSER0
780 4543 TEXTS= JMS I .
781 00143 1604 CTEXT /ASCII READ
782 5544 WAIT= JMP I .
783 00144 3006 WSCHED /RESCHEDULE
784
785 00145 1211 COMERA, COMERR /ERROR RETURN
786 00146 6120 COMES1, COMLGM
787
788 /***** CRITICAL!!! THESE TWO WORDS MUST NOT BE MOVED!!! *****
789 IFNZRO 147-.&4000 <GLITCH>
790 0147 *147 /MUST BE AT 0147 FOR BOOTSTRAP!!!
791 00147 0150 150 / THIS OVERLAYS 7750 & 7751 DURING
792 00150 0150 150 / BOOTSTRAP READ!!
793
794 00151 1225 COMEXA, COMRET /OK RETURN
/TSS-8.25 CONFIGURATION FOR UWM Page 20
795 00152 1225 COMEXP, COMRET /FOR RESETTING COMEXA
796 00153 2625 COMSET, RESTBP
797 00154 7000 CORTBA, CORTBL-1
798 00155 2600 DEVTBA, DEVTBL
799 00156 5141 DEVTND, -DEVTBE+1 /ADDRESS OF LAST KEYBOARD ENTRY
800 00157 3061 DSUTBA, DSUTBL
801 00160 7246 IOTEND, FIPEND
802 00161 0062 JOBA, JOB
803 00162 0020 JOBDAT, CJOBDA /POINTER TO JOB STATUS ENTRY
804 00163 2675 JOBTBA, JOBTBL
805 00164 3620 LNGIOT, FOPEN1 /LONG IOT
806 00165 7754 MJBMAX, -JOBMAX
807 00166 3454 SHTIOT, ACSET /SHORT IOT
808 00167 0005 SWBASE, SWDEX /START OF SWAPPING TRACKS
809 00170 2747 TTYTBA, TTYTBL /START OF TTY TABLE
810 00171 0000 CORJOB, 0 /JOB-WORD FOR SPECIAL CORE-ASSIGNS
811 00172 0000 ERRFLG, 0 /NON-ZERO IF A COMMAND ENDED IN ERROR
812 00173 6164 ILLMSG, ILLREQ /"ILLEGAL REQUEST" MESSAGE
813
814 /COMMAND CONTROL FLAGS
815
816 4000 NOLOG= 4000 /LOGIN NOT REQUIRED
817 2000 USERM= 2000 /REFERENCES USER MEMORY
818 1000 USAVE= 1000 /SAVE USER REGISTERS
819 0400 UREST= 400 /RESTORE USER REGISTERS
820 0200 PRBUF= 200 /PRINT BUFFER
821 0100 PRQM= 100 /PRINT ?
822 0020 PRCRLF= 20 /PRINT CRLF
823 0010 NOMESS= 10 /PRINT NO MESSAGE (CURRENTLY UNUSED)
824 /
825 /BITS 9-11 CONTAIN # FREE BLOCKS REQUIRED
/TSS-8.25 CONFIGURATION FOR UWM Page 21
826 PAGE
827
828 /SI IS ENTERED HERE FOR EACH COMMAND PROCESSED. WE SCAN
829 /ALL THE INPUT DDB'S FOR COMMANDS TO PROCESS. WHEN
830 /WE CAN FIND NOTHING ELSE TO DO, WE ZERO 'COMCNT' IN
831 /FIELD 0 & EXIT.
832
833 00200 3172 COM, DCA ERRFLG /CLEAR THE ERROR-FLAG
834 00201 3060 DCA COMFLG
835 00202 3171 DCA CORJOB
836 00203 1561 TAD I JOBA
837 00204 0023 AND C0037
838 00205 3050 DCA SIJOB
839 00206 1050 TAD SIJOB
840 00207 7640 SZA CLA /DO WE ALREADY HAVE A JOB #?
841 00210 5344 JMP COMFIP /YES - WE HAVE AN ERROR OR ARE RETURNING FROM FIP
842 00211 1437 TAD I COMPTR
843 00212 3010 DCA IX1
844 00213 1010 TAD IX1
845 00214 3063 DCA IOTP0
846 00215 6211 DATFLD
847 00216 3055 COM1, DCA COMRDB
848 00217 1156 TAD DEVTND
849 00220 1010 TAD IX1
850 00221 7640 SZA CLA /END OF TABLE?
851 00222 5226 JMP COM2 /NO
852 00223 7240 STA
853 00224 1155 TAD DEVTBA /YES. RESET TO BEGIN OF TABLE
854 00225 3010 DCA IX1
855 00226 1410 COM2, TAD I IX1 /GET TABLE ENTRY
856 00227 7440 SZA
857 00230 5245 JMP COM3
858 00231 1010 COM4, TAD IX1
859 00232 7041 CIA
860 00233 1063 TAD IOTP0
861 00234 7640 SZA CLA /SCANNED ENTIRE TABLE?
862 00235 5216 JMP COM1 /NO
863 00236 6201 CDF
864 00237 3435 DCA I COMCNT /YES - CLEAR THE COMMAND COUNT
865 COMWT0,
866 00240 4533 COMEXT, RELCOR /RELEASE COR
867 00241 6201 CDF
868 00242 3436 DCA I COMDSP
869 00243 6202 CIF
870 00244 5544 WAIT /RESCHEDULE
871
872 00245 3053 COM3, DCA COMDB0 /SAVE THE INPUT-DDB LOC.
873 00246 1453 TAD I COMDB0 /GET THE DDB STATUS-BITS
874 00247 0027 AND COMDSI
875 00250 7650 SNA CLA /IS HE IN COMMAND MODE?
876 00251 5231 JMP COM4 /NO
877 00252 1155 TAD DEVTBA
878 00253 7041 CIA
879 00254 1010 TAD IX1
880 00255 7110 CLL RAR
881 00256 3051 DCA SIKBD /SAVE HIS KEYBOARD NUMBER
882 00257 1053 TAD COMDB0
/TSS-8.25 CONFIGURATION FOR UWM Page 22
883 00260 3011 DCA IX2
884 00261 1411 TAD I IX2 /YES - GET OWNER'S JOB NUMBER
885 00262 0023 AND C0037
886 00263 3050 DCA SIJOB
887 00264 6201 CDF
888 00265 1010 TAD IX1
889 00266 3437 DCA I COMPTR / & SAVE THE COMMAND POINTER
890 00267 4534 RESDDB /SET UP 'COMRDB' FOR EVERYONE
891 00270 7200 CLA
892 00271 6211 DATFLD
893 00272 1050 TAD SIJOB
894 00273 7450 SNA /IS HE LOGGED IN?
895 00274 5300 JMP COM31 /NO
896 00275 1163 TAD JOBTBA /YES - SET UP HIS JOB-DATA POINTER
897 00276 3052 DCA CHDFA
898 00277 1452 TAD I CHDFA
899 00300 3562 COM31, DCA I JOBDAT
900 00301 1562 TAD I JOBDAT
901 00302 6221 CHDF
902 00303 7650 SNA CLA /IS HE LOGGED IN?
903 00304 5312 JMP .+6 /NO
904 00305 4526 GETWRD /YES - CHECK THE 'HLT' BIT
905 00306 0000 JOBSTS
906 00307 0025 AND COMSTP
907 00310 7640 SZA CLA /IS THIS A 'HLT' CALL?
908 00311 5742 JMP I COMHLT /YES
909 00312 6211 DATFLD
910 00313 1453 TAD I COMDB0 /NO - GET THE DDB STATUS-BITS
911 00314 0340 AND COMBIT
912 00315 7650 SNA CLA /IS THERE A COMMAND OR A CTRL/C WAITING?
913 00316 5231 JMP COM4 /NO
914 00317 1472 TAD I IOTP7
915 00320 0343 AND COMINH
916 00321 3472 DCA I IOTP7 /TURN OFF HIS ERROR-INHIBIT FLAG
917 00322 4553 JMS I COMSET /SET THE BUFFER POINTERS FOR 'COMGET'
918 00323 1050 TAD SIJOB
919 00324 6201 CDF
920 00325 1561 TAD I JOBA
921 00326 3561 DCA I JOBA
922 00327 6211 DATFLD
923 00330 1453 TAD I COMDB0
924 00331 6221 CHDF
925 00332 0341 AND COMCOM
926 00333 7650 SNA CLA /IS THERE A COMMAND WAITING?
927 00334 5736 JMP I .+2 /NO - MUST BE A CTRL/C
928 00335 5737 JMP I .+2 /YES - GO SCAN IT
929 00336 1207 SICTLC
930 00337 0400 COM41
931
932 00340 0160 COMBIT, SICOM+CTRLC+DECHO
933 00341 0120 COMCOM, SICOM+DECHO
934 00342 3644 COMHLT, PRGHLT
935 00343 7767 COMINH, -JSINER-1
936 IFNZRO JSHLT-200 <GLITCH>
937 0025 COMSTP= C0200 /JSHLT
938 IFNZRO DSI-1000 <GLITCH>
939 0027 COMDSI= C1000 /DSI
/TSS-8.25 CONFIGURATION FOR UWM Page 23
940 IFNZRO SICOM-100 <GLITCH>
941 0024 COMSIC= C0100 /SICOM
942 0072 COMFND= IOTP7 /COUNT OF SEARCH MATCHES
943 0070 COMLNK= IOTP5
944 0071 COMNXT= IOTP6
/TSS-8.25 CONFIGURATION FOR UWM Page 24
945 00344 1436 COMFIP, TAD I COMDSP
946 00345 7450 SNA /RETURNING FROM SI CALL?
947 00346 5376 JMP COMFI2 /NO - MUST BE ERROR
948 00347 3063 DCA IOTP0 /YES - SAVE DISPATCH ADDRESS
949 00350 3436 DCA I COMDSP
950 00351 1441 TAD I SIFLG /RESTORE CONTROL FLAGS
951 00352 3060 DCA COMFLG
952 00353 1440 TAD I SICHAR
953 00354 3073 DCA CHAR
954 00355 1437 TAD I COMPTR
955 00356 3053 DCA COMDB0
956 00357 6211 DATFLD
957 00360 1453 TAD I COMDB0
958 00361 3053 DCA COMDB0
959 00362 1562 TAD I JOBDAT
960 00363 7450 SNA /JOB LOGGED-IN?
961 IFNZRO DEBUG <
962 REBOOT /NO - ERROR *****
963 >
964 IFZERO DEBUG <
965 00364 5372 JMP COMFI1 /NO - IN A PRODUCTION SYSTEM, KEEP GOING
966 >
967 00365 7001 IAC
968 00366 3052 DCA CHDFA
969 00367 1452 TAD I CHDFA
970 00370 0021 AND C0007
971 00371 7650 SNA CLA /WAS THERE A SYSTEM ERROR?
972 00372 2063 COMFI1, ISZ IOTP0 /NO - SET TO NORMAL ADDRESS
973 00373 4534 RESDDB /SET UP 'COMRDB' FOR EVERYONE
974 00374 7200 CLA
975 00375 5463 JMP I IOTP0 /NOW DISPATCH
976 00376 5777 COMFI2, JMP I .+1
977 00377 7032 SYSERR
/TSS-8.25 CONFIGURATION FOR UWM Page 25
978 PAGE
979
980 00400 6211 COM41, DATFLD
981 00401 1453 TAD I COMDB0
982 00402 0333 AND COMECH
983 00403 7450 SNA /IS AN ECHO OF THE LINE WANTED?
984 00404 5227 JMP COM43 /NO
985 00405 7040 CMA
986 00406 0453 AND I COMDB0 /YES - CLEAR THE BIT
987 00407 3453 DCA I COMDB0
988 00410 4511 COMGET /IS THE BUFFER EMPTY?
989 00411 5551 JMP I COMEXA /YES - JUST EXIT (ECHOING CR-LF AND MAYBE '.')
990 00412 4515 DECRCT /DECREMENT THE 'BREAK' COUNT
991 00413 1050 TAD SIJOB
992 00414 7650 SNA CLA /IS HE LOGGED-IN?
993 00415 5235 JMP COM44 /NO - DON'T ECHO HIS LOGIN
994 00416 4500 ASCOUT /THEN TYPE "="
995 00417 0536 COMEQU
996 00420 7000 NOP
997 00421 4735 JMS I COMPB /NOW PRINT THE CURRENT LINE
998 00422 4553 JMS I COMSET / & RESET THE BUFFER POINTERS
999 00423 7326 CLA CLL CML RTL
1000 00424 4516 ENDTST /LAST CHARACTER A LINE TERMINATOR?
1001 00425 5237 JMP COM45 /YES - SCAN THE LINE
1002 00426 5235 JMP COM44 /NO - JUST EXIT
1003 00427 4511 COM43, COMGET /GET A CHARACTER
1004 00430 5235 JMP COM44 /NONE LEFT - JUST EXIT
1005 00431 7326 CLA CLL CML RTL
1006 00432 4516 ENDTST /END-OF-LINE?
1007 00433 5237 JMP COM45 /YES - PROCESS THE COMMAND
1008 00434 5227 JMP COM43 /NO - KEEP CHECKING
1009 00435 4320 COM44, JMS CLRSI /COMMAND INCOMPLETE - CLEAR THE FLAG
1010 00436 5512 COMWAT / AND WAIT FOR THE REST
1011
1012 00437 4553 COM45, JMS I COMSET /RESET THE POINTERS
1013 00440 3073 DCA CHAR
1014 00441 1056 TAD COMBFA /GET COMMAND NAME
1015 00442 4543 TEXTS
1016 00443 7041 CIA
1017 00444 1056 TAD COMBFA
1018 00445 7650 SNA CLA /NULL STRING?
1019 00446 5310 JMP COM60 /YES
1020 00447 3072 DCA COMFND /CLEAR 'PARTIAL FIND' COUNTER
1021 00450 1327 TAD COMTBA
1022 00451 3070 COM6, DCA COMLNK
1023 00452 1470 TAD I COMLNK
1024 00453 7450 SNA
1025 00454 5731 JMP I COM9A /END OF TABLE
1026 00455 3071 DCA COMNXT
1027 00456 1070 TAD COMLNK
1028 00457 1015 TAD C0003
1029 00460 3011 DCA IX2
1030 00461 1056 TAD COMBFA
1031 00462 3012 DCA IX3
1032 00463 1011 COM5, TAD IX2
1033 00464 7040 CMA
1034 00465 1071 TAD COMNXT
/TSS-8.25 CONFIGURATION FOR UWM Page 26
1035 00466 7650 SNA CLA /HAVE WE REACHED THE END OF THIS ENTRY?
1036 00467 5304 JMP COM99 /YES - WE MAY HAVE AN EXACT MATCH
1037 00470 1412 TAD I IX3 /NO - GET THE NEXT COMMAND CHARACTER
1038 00471 7450 SNA /END OF COMMAND?
1039 00472 5277 JMP COM8 /YES - WE HAVE A PARTIAL MATCH
1040 00473 1411 TAD I IX2
1041 00474 7650 SNA CLA
1042 00475 5263 JMP COM5
1043 00476 5302 JMP COM7
1044 00477 2072 COM8, ISZ COMFND /PARTIAL MATCH
1045 00500 1070 TAD COMLNK
1046 00501 3057 DCA COMTBE
1047 00502 1071 COM7, TAD COMNXT
1048 00503 5251 JMP COM6
1049
1050 00504 1412 COM99, TAD I IX3
1051 00505 7650 SNA CLA /IS THERE ANY MORE TO THE COMMAND?
1052 00506 5732 JMP I COM91A /NO - WE HAVE AN EXACT MATCH
1053 00507 5302 JMP COM7 /YES - THEN WE HAVE NO MATCH AT ALL
1054
1055 /GETS HERE IF COMMAND IS NULL STRING.
1056 00510 7344 COM60, CLA CLL CMA RAL
1057 00511 4516 ENDTST /END OF COMMAND REACHED?
1058 00512 5730 JMP I COM64A /YES - JUST EXIT
1059 00513 3060 COM12, DCA COMFLG /NO - CLEAR ANY OLD COMMAND FLAGS
1060 00514 1050 TAD SIJOB
1061 00515 7650 SNA CLA /NO - IS HE LOGGED IN?
1062 00516 1146 TAD COMES1 /NO - TYPE "LOGIN PLEASE"
1063 00517 5545 JMP I COMERA /YES - JUST ECHO THE COMMAND
1064
1065 /ROUTINE TO CLEAR THE 'SICOM' IN THIS JOB'S DDB.
1066
1067 00520 0000 CLRSI, 0
1068 00521 6211 DATFLD
1069 00522 1453 TAD I COMDB0 /GET THE CONTROL-WORD
1070 00523 0334 AND COMMSI / & CLEAR THE BIT
1071 00524 3453 DCA I COMDB0
1072 00525 6221 CHDF
1073 00526 5720 JMP I CLRSI /THEN RETURN
1074
1075 00527 6221 COMTBA, COMTBL
1076 00530 1224 COM64A, COM64
1077 00531 1002 COM9A, COM9
1078 00532 1010 COM91A, COM91
1079 00533 0020 COMECH, DECHO
1080 00534 7611 COMMSI, -SICOM-CTRLC-DFORC-DECHO-CTRLB-1
1081 00535 1323 COMPB, COMPBF
1082 00536 0215 COMEQU, 215;215;"=;0
00537 0215
00540 0275
00541 0000
1083 00542 0323 LOGE4, "S;"Y;"S;"T;"E;"M;" ;"R;"E;"S;"T;"R;"I;"C;"T;"E;"D;0
00543 0331
00544 0323
00545 0324
00546 0305
00547 0315
/TSS-8.25 CONFIGURATION FOR UWM Page 27
00550 0240
00551 0322
00552 0305
00553 0323
00554 0324
00555 0322
00556 0311
00557 0303
00560 0324
00561 0305
00562 0304
00563 0000
1084 00564 0215 TALKM1, 215;212;207;"*;"*;" ;"K;0
00565 0212
00566 0207
00567 0252
00570 0252
00571 0240
00572 0313
00573 0000
1085 00574 0257 TALKM2, "/;0
00575 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 28
1086 PAGE
1087
1088 /ROUTINE TO SEE IF JOB IS RUNNING WHEN COMMAND REQUIRING FIP IS ISSUED.
1089 /IF SO, WE CAN'T HONOR COMMAND
1090 /THE MESSAGE "TYPE ^BS FIRST" IS GIVEN
1091
1092 /CALL TAD IOT ENTRY FROM COMMAND TABLE
1093 / JMS FIPCHK
1094 / RETURN IF OK TO PROCEED [OTHERWISE RETURN IS TO COMERR]
1095
1096 00600 0000 FIPCHK, 0
1097 00601 3063 DCA IOTP0 /SAVE THE IOT
1098 00602 1063 TAD IOTP0
1099 00603 1243 TAD FIPCDR
1100 00604 7440 SZA /IS IT AN 'EXAM'?
1101 00605 1244 TAD FIPCDW
1102 00606 7640 SZA CLA /OR A 'DEPOSIT'? (WE CAN DO THOSE)
1103 00607 1050 TAD SIJOB /NO - GET THE JOB NUMBER
1104 00610 7650 SNA CLA /IS HE LOGGED-IN?
1105 00611 5600 JMP I FIPCHK /NO - THEN HE CAN'T BE ACTIVE
1106 00612 4526 GETWRD /YES - IS HIS PROGRAM RUNNING?
1107 00613 0000 JOBSTS / IF SO HIS RUN BIT IS ON
1108 00614 7500 SMA /IS HE ACTUALLY RUNNING?
1109 00615 0245 AND FIPMSK
1110 00616 7640 SZA CLA /NO - IS FIP STILL BUSY FOR HIM?
1111 00617 5235 JMP FIPCH2 /YES - CAN'T HANDLE THE COMMAND NOW
1112 00620 2072 ISZ IOTP7
1113 00621 6211 DATFLD
1114 00622 1472 TAD I IOTP7 /GET 'STR1'
1115 00623 7010 RAR
1116 00624 7044 CMA RAL /CHECK THE WAIT-MASK FOR EVERYTHING BUT 'JSWAIT'
1117 00625 2072 ISZ IOTP7
1118 00626 2072 ISZ IOTP7
1119 00627 0472 AND I IOTP7 /ANY BITS IN THE MASK NOT SET IN STR1?
1120 00630 0250 AND FLBITS / IN PARTICULAR, FILE I/O BITS
1121 00631 6221 CHDF
1122 00632 7110 CLL RAR
1123 00633 7670 SNA SZL CLA /ANYTHING ACTIVE THAT WOULD INTERFERE?
1124 00634 5600 JMP I FIPCHK /NO - JUST RETURN NORMALLY
1125
1126 00635 7200 FIPCH2, CLA
1127 00636 1060 TAD COMFLG
1128 00637 0247 AND FIMRST /DON'T RESTORE UNSAVED REGISTERS
1129 00640 3060 DCA COMFLG
1130 00641 1246 TAD FIPTCB
1131 00642 5545 JMP I COMERA /"TYPE ^BS FIRST"
1132
1133 00643 1175 FIPCDR, -DMAR
1134 00644 7776 FIPCDW, DMAR-DMAW
1135 00645 0140 FIPMSK, JSIOT+JSIOTC
1136 00646 7505 FIPTCB, TYCRLB
1137 00647 7377 FIMRST, -UREST-1
1138 00650 3601 FLBITS, JSF0+JSF1+JSF2+JSF3+JSWAIT
1139
1140 /
1141 /ROUTINE TO CLEAR THE 'PRIVILEGE' BIT FOR THIS JOB
1142 00651 0000 CLRPV0, 0
/TSS-8.25 CONFIGURATION FOR UWM Page 29
1143 00652 4526 GETWRD /GET HIS STATUS-WORD
1144 00653 0000 JOBSTS
1145 00654 0261 AND CLRPV1 / AND ZAP THE BIT
1146 00655 6211 DATFLD
1147 00656 3472 DCA I IOTP7
1148 00657 6221 CHDF
1149 00660 5651 JMP I CLRPV0 /THEN RETURN
1150
1151 00661 7377 CLRPV1, -JSPRIV-1
/TSS-8.25 CONFIGURATION FOR UWM Page 30
1152 /
1153 /THIS HANDLES THE 'PROTECT' COMMAND. WE ALTER
1154 /THE PROTECTION CODE OF A FILE; THIS ALSO
1155 /ALTERS THE FILE EXTENSION.
1156 00662 4542 SIERR
1157 00663 5560 JMP I IOTEND
1158 00664 4527 PROTEC, NUMBIN /FILE #
1159 00665 7511 -"7
1160 00666 5545 JMP I COMERA
1161 00667 0015 AND C0003
1162 00670 7106 CLL RTL
1163 00671 7006 RTL
1164 00672 7004 RAL
1165 00673 3064 DCA IOTP1
1166 00674 4527 NUMBIN
1167 00675 7511 -"7
1168 00676 5545 JMP I COMERA
1169 00677 0031 AND C7637
1170 00700 1064 TAD IOTP1
1171 00701 5566 JMP I SHTIOT
1172
1173 /
1174 /TYPE OUT THE WORDS EXAMINED BY THE 'EXAM' COMMAND
1175 00702 6221 EXAMI1, CHDF
1176 00703 4500 ASCOUT
1177 00704 6161 CRLF
1178 00705 5727 JMP I EXAMI5
1179 00706 1066 TAD IOTP3
1180 00707 3074 DCA NUMHO
1181 00710 1056 TAD COMBFA
1182 00711 3011 DCA IX2 /SET POINTER TO THE BUFFER
1183 00712 1411 EXAMI3, TAD I IX2 /GET A WORD
1184 00713 4530 OCTASC / CONVERT IT TO ASCII
1185 00714 0062 IOTPAR
1186 00715 4500 ASCOUT / AND TYPE IT
1187 00716 0063 IOTP0
1188 00717 5727 JMP I EXAMI5
1189 00720 2074 ISZ NUMHO
1190 00721 7410 SKP
1191 00722 5727 JMP I EXAMI5 /ALL DONE
1192 00723 4500 ASCOUT
1193 00724 3576 SPACE
1194 00725 5727 JMP I EXAMI5
1195 00726 5312 JMP EXAMI3
1196
1197 00727 5264 EXAMI5, DEPOS3
1198
1199 /
1200 /CODE TO INITIATE THE AUTOMATIC SYSTEM REBOOT
1201 00730 0000 RBOOT, 0
1202 00731 6002 IOF
1203 00732 7200 CLA
1204 00733 1330 TAD RBOOT
1205 00734 6202 CIF
1206 00735 5736 JMP I .+1 /OFF TO FIELD 0 FOR BOOTSTRAP
1207 00736 3600 RELOAD
/TSS-8.25 CONFIGURATION FOR UWM Page 31
1208 00737 4542 SIERR
1209 00740 5560 JMP I IOTEND /GOOD RETURN FROM FIP
1210 00741 4527 CLOSE, NUMBIN /GET THE INTERNAL FILE INDEX
1211 00742 7511 -"7
1212 00743 5362 JMP CLOSE2 /NO MORE NUMBERS - DO THE CLOSE
1213 00744 0015 AND C0003
1214 00745 7040 CMA
1215 00746 3065 DCA IOTP2
1216 00747 7320 CLA CLL CML
1217 00750 7010 RAR /NOW POSITION THE PROPER BIT
1218 00751 2065 ISZ IOTP2
1219 00752 5350 JMP .-2
1220 00753 3065 DCA IOTP2
1221 00754 1065 TAD IOTP2
1222 00755 7040 CMA
1223 00756 0064 AND IOTP1 /ZAP THE BIT
1224 00757 1065 TAD IOTP2 / AND THEN SET IT
1225 00760 3064 DCA IOTP1
1226 00761 5341 JMP CLOSE /GO SEE IF THIS IS A MULTIPLE CLOSE
1227
1228 00762 1064 CLOSE2, TAD IOTP1
1229 00763 7450 SNA /WERE WE GIVEN ANYTHING TO CLOSE?
1230 00764 7240 CLA CMA /NO - THEN JUST CLOSE EVERYTHING
1231 00765 5566 JMP I SHTIOT
1232
1233 00766 0301 ASSIND, "A;"S;"S;"I;"G;"N;"E;"D;0
00767 0323
00770 0323
00771 0311
00772 0307
00773 0316
00774 0305
00775 0304
00776 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 32
1234 PAGE
1235
1236 01000 4200 CSWAP, FSWP+SI
1237 7332 CUSERM= CLA CLL CML RTR /AC =2000
1238 01001 0600 FIPCOM, FIPCHK
1239
1240 /WE FOUND ONE OR MORE PARTIAL MATCHES ON OUR COMMAND.
1241 01002 7240 COM9, STA
1242 01003 1072 TAD COMFND
1243 01004 7650 SNA CLA /WAS THERE EXACTLY ONE MATCH?
1244 01005 5212 JMP COM92 /YES
1245 01006 1307 TAD AUTOPK /NO - ASSUME "R" COMMAND
1246 01007 7410 SKP
1247
1248 /WE FOUND AN EXACT MATCH ON THE COMMAND.
1249 01010 1070 COM91, TAD COMLNK
1250 01011 3057 DCA COMTBE
1251 01012 2057 COM92, ISZ COMTBE /GET COMMAND FLAGS
1252 01013 1457 TAD I COMTBE
1253 01014 3060 DCA COMFLG
1254 01015 1060 TAD COMFLG
1255 01016 0021 AND C0007 /GET THE # FREE BLOCKS REQUIRED
1256 01017 7041 CIA
1257 01020 6201 CDF
1258 01021 1461 TAD I FRECTA
1259 01022 6221 CHDF
1260 01023 7710 SPA CLA /ENOUGH FREE-CORE AVAILABLE?
1261 01024 5512 COMWAT /NO
1262 01025 7332 CUSERM /AC=2000
1263 01026 0060 AND COMFLG /USER MEMORY REFERENCE?
1264 01027 7650 SNA CLA
1265 01030 5236 JMP COM16 /NO
1266 01031 1050 TAD SIJOB
1267 01032 1200 TAD CSWAP
1268 01033 4514 CORES
1269 01034 7640 SZA CLA /YES - IS HE BEING SWAPPED?
1270 01035 5512 COMWAT /YES - RE-TRY LATER
1271 01036 2057 COM16, ISZ COMTBE
1272 01037 1062 TAD IOTPAR
1273 01040 3010 DCA IX1
1274 01041 1033 TAD C7770
1275 01042 3052 DCA CHDFA
1276 01043 3410 DCA I IX1
1277 01044 2052 ISZ CHDFA
1278 01045 5243 JMP .-2
1279 01046 1457 TAD I COMTBE /STORE IOT
1280 01047 7440 SZA /NON RESIDENT IOT?
1281 01050 4601 JMS I FIPCOM /YES--IS HE RUNNING A PROGRAM?
1282 01051 3072 DCA IOTP7 /GETWRD IN FIPCHK MESSES UP IOTP7
1283 01052 2057 ISZ COMTBE
1284 01053 1457 TAD I COMTBE
1285 01054 3057 DCA COMTBE
1286 01055 1060 TAD COMFLG
1287 01056 7710 SPA CLA /LOGIN REQUIRED?
1288 01057 5457 JMP I COMTBE /NO. DISPATCH
1289 01060 1050 TAD SIJOB
1290 01061 7650 SNA CLA /NULL JOB?
/TSS-8.25 CONFIGURATION FOR UWM Page 33
1291 01062 5706 JMP I COM12A /YES - TYPE "LOGIN PLEASE"
1292 01063 1060 TAD COMFLG /SAVE REGISTERS?
1293 01064 0027 AND C1000
1294 01065 7650 SNA CLA
1295 01066 5457 JMP I COMTBE /NO. DISPATCH
1296 01067 4525 GETTBA
1297 01070 0011 JOBREG
1298 01071 3275 DCA COMREG
1299 01072 6202 CIF
1300 01073 4503 BLT
1301 01074 6211 DATFLD
1302 01075 0000 COMREG, 0
1303 01076 6201 CDF
1304 01077 0025 SIREGA
1305 01100 7775 -3
1306 01101 6211 DATFLD /PC:=-1
1307 01102 7240 STA
1308 01103 3675 DCA I COMREG
1309 01104 6221 CHDF
1310 01105 5457 JMP I COMTBE
1311
1312 01106 0513 COM12A, COM12
1313
1314 /DUMMY COMMAND PACKET FOR THE AUTOMATIC "R" COMMAND
1315 01107 1107 AUTOPK, .
1316 01110 2002 USERM+2
1317 01111 6601 OPEN
1318 01112 4615 AUTOR
/TSS-8.25 CONFIGURATION FOR UWM Page 34
1319 /WE COME HERE TO SET THE PARAMETERS FOR FIP AND START THE
1320 /DISC ACCESS TO SWAP FIP IN. FIP IS THEN STARTED WHEN
1321 /THE OVERLAY IS COMPLETE.
1322
1323 01113 7344 CALFI0, STA CLL RAL /SAVE RETURN ADDRESS
1324 01114 1057 TAD COMTBE
1325 01115 6201 CDF
1326 01116 3436 DCA I COMDSP
1327 01117 1060 TAD COMFLG /SAVE FLAGS
1328 01120 3441 DCA I SIFLG
1329 01121 1073 TAD CHAR
1330 01122 3440 DCA I SICHAR
1331 01123 1353 TAD CALFBA
1332 01124 3336 LOADUS, DCA CALFI2
1333 01125 4502 ASSCOR /ASSIGN CORE
1334 01126 1356 TAD CALFI4
1335 01127 1157 TAD DSUTBA
1336 01130 4522 GETFBL
1337 01131 5512 COMWAT
1338 01132 3340 DCA CALFI1
1339 01133 6202 CIF
1340 01134 4503 BLT
1341 01135 6221 CHDF /SOURCE FIELD
1342 01136 0000 CALFI2, 0 /SOURCE ADDR
1343 01137 6211 DATFLD /DESTINATION FLD
1344 01140 0000 CALFI1, 0 /DESTINATION ADDR
1345 01141 7770 OFF1, -10
1346 01142 6203 CIF CDF
1347 01143 2752 ISZ I DSBSYA /DISC ALREADY BUSY?
1348 01144 5544 WAIT /YES - JUST WAIT
1349 01145 5746 JMP I .+1 /NO - START UP THE TRANSFER
1350 01146 0572 OVRLA1
1351 01147 1351 DEPEXA, TAD CALFI5
1352 01150 5324 JMP LOADUS
1353
1354 01151 0063 CALFI5, IOTP0
1355 01152 0036 DSBSYA, DSBUSY
1356
1357 01153 1154 CALFBA, .+1
1358 01154 6603 DMAR
1359 01155 0004 FIPDEX
1360 01156 0010 CALFI4, 10 /MEMORY EXT IN 7-9
1361 01157 0000 -FIPWC
1362 01160 7777 -1
1363 01161 0000 0
1364 01162 2364 OVERLA
1365 01163 0000 0
/TSS-8.25 CONFIGURATION FOR UWM Page 35
1366 /'OFFLINE' COMMAND - RESTRICTS NEW LOGINS TO MANAGERS.
1367 /CAN ONLY BE USED BY SYSTEM MANAGER (ACCOUNT # 000X)
1368 /** MUST ** BE IN EFFECT FOR MANAGER #1 TO LOGIN!
1369 /THIS EFFECTIVELY REQUIRES 2 PASSWORDS FOR ACCOUNT 1.
1370 /
1371 /'ONLINE' COMMAND - RESTORES NORMAL LOGINS.
1372 /THEREBY RE-ENABLING SYSTEM. CAN ONLY BE DONE BY MANAGER.
1373 /
1374 01164 1341 OFFLIN, TAD OFF1 /SET MASK TO 7770
1375 01165 3340 ONLIN, DCA ON1 /CLEAR ACCOUNT MASK
1376 01166 4506 CHKACT /CHECK USER'S ACCOUNT #
1377 01167 5545 JMP I COMERA /ORDINARY USER - BAD!!
1378 01170 5545 JMP I COMERA /MERE SYSTEMS PERSONNEL
1379 01171 1340 TAD ON1 /MANAGER - GET ACCOUNT MASK
1380 01172 6211 DATFLD
1381 01173 3775 DCA I OFFJOB /SET THE MASK INTO FIELD 1
1382 01174 5551 JMP I COMEXA
1383
1384 01175 0036 OFFJOB, F1OFFJ /POINTER TO LOGIN ACCOUNT-MASK
1385 1140 ON1= CALFI1
/TSS-8.25 CONFIGURATION FOR UWM Page 36
1386 PAGE
1387
1388 01200 0020 COMCRF, PRCRLF
1389 1200 COMFLE= COMCRF /FLAG FOR ERROR RETURN
1390 01201 0100 COMQM, PRQM
1391 01202 0400 COMURE, UREST
1392 01203 0300 COPBQM, PRBUF+PRQM /MORE FLAGS IF NO ERROR MSG
1393 01204 0200 COPRBF, PRBUF
1394 01205 7505 MSEMI, -";
1395 01206 7563 MCR, -215
1396
1397 /HANDLES THE CTRL/C TYPED WHEN A KEYBOARD IS IN 'SI' MODE
1398 /JUST SET 'ERRFLG' SO THE BUFFER IS RE-CLEARED AND EXIT.
1399 01207 2172 SICTLC, ISZ ERRFLG
1400 01210 5225 JMP COMRET
1401
1402 01211 3254 COMERR, DCA COMESA
1403 01212 2172 ISZ ERRFLG /INDICATE WE RETURNED IN ERROR
1404 01213 1060 TAD COMFLG
1405 01214 0032 AND C7700
1406 01215 1200 TAD COMFLE /SET FLAGS FOR ERROR MESSAGE
1407 01216 3060 DCA COMFLG
1408 01217 1254 TAD COMESA
1409 01220 7640 SZA CLA /ANY MESSAGE TO PRINT?
1410 01221 5226 JMP COMRET+1 /YES
1411 01222 1203 TAD COPBQM /NO - ECHO THE COMMAND W/ "?"
1412 01223 1060 TAD COMFLG
1413 01224 3060 COM64, DCA COMFLG /GETS HERE ON 'NULL' COMMAND
1414
1415 01225 3254 COMRET, DCA COMESA
1416 01226 6221 CHDF
1417 01227 1060 TAD COMFLG
1418 01230 0202 AND COMURE
1419 01231 7650 SNA CLA /RESTORE REGISTERS?
1420 01232 5245 JMP COMRE0 /NO
1421 01233 4525 GETTBA
1422 01234 0011 JOBREG
1423 01235 3243 DCA COMRES
1424 01236 6202 CIF
1425 01237 4503 BLT /RESTORE USER'S REGISTERS
1426 01240 6201 CDF
1427 01241 0025 SIREGA
1428 01242 6211 DATFLD
1429 01243 0000 COMRES, 0
1430 01244 7775 -3
1431 01245 4500 COMRE0, ASCOUT /START BY TYPING <CR-LF>
1432 01246 6161 CRLF
1433 01247 5262 JMP COMRE3
1434 01250 1254 TAD COMESA
1435 01251 7650 SNA CLA /ANY MESSAGE TO PRINT?
1436 01252 5256 JMP .+4 /NO
1437 01253 4500 ASCOUT /OUTPUT MESSAGE
1438 01254 0000 COMESA, 0
1439 01255 5262 JMP COMRE3 /WON'T FIT
1440 01256 1060 TAD COMFLG
1441 01257 0204 AND COPRBF
1442 01260 7640 SZA CLA /ECHO-PRINT THE BUFFER?
/TSS-8.25 CONFIGURATION FOR UWM Page 37
1443 01261 4323 JMS COMPBF /YES - PRINT THE WHOLE LINE
1444 01262 7200 COMRE3, CLA
1445 01263 1172 TAD ERRFLG
1446 01264 7640 SZA CLA /DID WE HAVE AN ERROR?
1447 01265 7326 CLA CLL CML RTL /YES - THEN ZAP THE WHOLE BUFFER
1448 01266 4516 ENDTST /IS THIS THE LAST CHARACTER IN THE COMMAND?
1449 01267 5273 JMP COMRE4 /YES
1450 01270 4511 COMGET /NO - GET THE NEXT CHARACTER
1451 01271 7410 SKP /NONE THERE
1452 01272 5262 JMP COMRE3 / OR CHECK AGAIN
1453 01273 4504 COMRE4, BUFDEL /DELETE TO CURRENT POINTER
1454 01274 1060 TAD COMFLG
1455 01275 0201 AND COMQM
1456 01276 7650 SNA CLA /PRINT "?" ?
1457 01277 5303 JMP COM13 /NO
1458 01300 4500 ASCOUT
1459 01301 5771 QEST
1460 01302 5314 JMP COM10
1461 01303 1060 COM13, TAD COMFLG
1462 01304 0200 AND COMCRF
1463 01305 7450 SNA /PRINT <CR-LF>?
1464 01306 1254 TAD COMESA
1465 01307 7650 SNA CLA /DID WE JUST PRINT A MESSAGE?
1466 01310 5314 JMP COM10 /NO
1467 01311 4500 ASCOUT
1468 01312 6161 CRLF
1469 01313 7000 NOP
1470 01314 1073 COM10, TAD CHAR
1471 01315 1205 TAD MSEMI
1472 01316 7650 SNA CLA /LAST CHAR A SEMI?
1473 01317 5721 JMP I .+2 /YES
1474 01320 5722 JMP I .+2 /NO
1475 01321 1474 COM26
1476 01322 1400 COM20
1477
1478 /ROUTINE TO PRINT THE CURRENT COMMAND BUFFER.
1479
1480 01323 0000 COMPBF, 0
1481 01324 3243 DCA COMRES /CLEAR THE 'FULL' FLAG
1482 01325 3074 DCA CHAR+1 / *** CHAR+1 MUST BE SCRATCH ***
1483 01326 4553 JMS I COMSET /RE-SET THE BUFFER POINTERS
1484 01327 4511 COMPB1, COMGET /GET A CHARACTER
1485 01330 5723 JMP I COMPBF /NONE - RETURN
1486 01331 1206 TAD MCR
1487 01332 7650 SNA CLA /IS IT <CR>?
1488 01333 5723 JMP I COMPBF /YES - RETURN
1489 01334 1243 TAD COMRES
1490 01335 7640 SZA CLA /HAS 'ASCOUT' FAILED?
1491 01336 5342 JMP .+4 /YES - SAVE TIME LOOKING FOR TERMINATOR
1492 01337 4500 ASCOUT /NO - TYPE IT
1493 01340 0073 CHAR
1494 01341 2243 ISZ COMRES /WON'T FIT - SET 'FULL' FLAG
1495 01342 7326 CLA CLL CML RTL
1496 01343 4516 ENDTST /IS IT A LINE TERMINATOR?
1497 01344 5723 JMP I COMPBF /YES - RETURN
1498 01345 5327 JMP COMPB1 /NO - GET NEXT CHARACTER
1499
/TSS-8.25 CONFIGURATION FOR UWM Page 38
1500 01346 0323 LOGE1, "S;"Y;"S;"T;"E;"M;" ;"F;"U;"L;"L;0
01347 0331
01350 0323
01351 0324
01352 0305
01353 0315
01354 0240
01355 0306
01356 0325
01357 0314
01360 0314
01361 0000
1501 01362 0312 JOBNO, "J;"O;"B;" ;0
01363 0317
01364 0302
01365 0240
01366 0000
1502 01367 0272 TALKM3, ":;" ;0
01370 0240
01371 0000
1503 01372 0240 WHERAC, " ;"A;"C;"=;0
01373 0301
01374 0303
01375 0275
01376 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 39
1504 PAGE
1505
1506 /WE GET HERE WHEN THE LAST CHARACTER OF A COMMAND HAS BEEN REACHED.
1507
1508 01400 1073 COM20, TAD CHAR
1509 01401 1307 TAD COMCLN
1510 01402 7640 SZA CLA /LAST CHAR A COLON?
1511 01403 5216 JMP COM22 /NO
1512 01404 1050 TAD SIJOB
1513 01405 7640 SZA CLA /USER LOGGED IN?
1514 01406 4315 JMS JOBATV /YES - IS A PROGRAM RUNNING?
1515 01407 5301 JMP COM28 /NO - THEN COLON ISN'T LEGAL
1516 01410 6211 DATFLD /YES - SET 'JSDEL' TO INDICATE
1517 01411 2072 ISZ IOTP7 / A DELIMITER WAS FOUND
1518 01412 1472 TAD I IOTP7
1519 01413 0313 AND COMKEY
1520 01414 1024 TAD COMKEF
1521 01415 3472 DCA I IOTP7
1522 01416 6221 COM22, CHDF
1523 01417 1053 TAD COMDB0
1524 01420 7650 SNA CLA /IS THERE AN INPUT DDB?
1525 01421 5273 JMP COM25 /NOPE - JUST TYPE "."
1526 01422 1050 TAD SIJOB
1527 01423 7650 SNA CLA /IS HE LOGGED IN?
1528 01424 5253 JMP COM23 /NO - DELETE THE DDB IF EMPTY
1529 01425 4315 JMS JOBATV /IS A PROGRAM RUNNING?
1530 01426 5267 JMP COM24 /NO - JUST TYPE "."
1531 01427 6211 DATFLD /YES - CLEAR 'DSI'
1532 01430 1453 TAD I COMDB0
1533 01431 0314 AND COMSIF
1534 01432 3453 DCA I COMDB0
1535 01433 2072 ISZ IOTP7 /NOW POINTS TO STR0
1536 01434 7326 CLA CLL CML RTL
1537 01435 1072 TAD IOTP7
1538 01436 3074 DCA NUMHO /SAVE POINTER TO WAIT-MASK
1539 01437 7201 CLA IAC
1540 01440 1074 TAD NUMHO
1541 01441 3075 DCA NUMHO+1 / AND TO THE DEVICE WAIT STATUS
1542 01442 1474 TAD I NUMHO
1543 01443 7450 SNA
1544 01444 1475 TAD I NUMHO+1
1545 01445 7640 SZA CLA /IS HE IN A NORMAL WAIT?
1546 01446 5251 JMP .+3 /YES
1547 01447 1472 TAD I IOTP7
1548 01450 3474 DCA I NUMHO /NO - SET THE WAIT-MASK = STR1
1549 01451 4515 DECRCT /DECREMENT THE COMMAND COUNT
1550 01452 5517 EXIT /ALL DONE - JUST EXIT
1551 01453 1073 COM23, TAD CHAR
1552 01454 7640 SZA CLA /LAST CHARACTER NULL?
1553 01455 5274 JMP COM26 /NO
1554 01456 6201 CDF /YES - END-OF-BUFFER REACHED
1555 01457 1437 TAD I COMPTR /GET THE DEVTBL POINTER
1556 01460 3052 DCA CHDFA
1557 01461 6211 DATFLD
1558 01462 3452 DCA I CHDFA /ZERO THE DEVTBL ENTRY
1559 01463 6221 CHDF
1560 01464 1053 TAD COMDB0
/TSS-8.25 CONFIGURATION FOR UWM Page 40
1561 01465 4537 RETDBL /THEN RELEASE THE DDB
1562 01466 5273 JMP COM25 /NO STATUS-BIT LEFT TO CLEAR
1563
1564 01467 1073 COM24, TAD CHAR
1565 01470 7640 SZA CLA /WAS THE END OF THE BUFFER REACHED?
1566 01471 5274 JMP COM26 /NO
1567 01472 4706 JMS I CLRSIA /YES - CLEAR 'SICOM' BIT
1568 01473 4515 COM25, DECRCT / AND DECREMENT THE COMMAND COUNT
1569 01474 7200 COM26, CLA
1570 01475 4500 ASCOUT /FINALLY, TYPE "."
1571 01476 2576 PERIOD
1572 01477 7000 NOP
1573 01500 5517 EXIT / AND EXIT
1574
1575 /HERE WE FUDGE UP SOME FLAGS SO WE CAN PRINT A REASONABLE
1576 /ERROR MESSAGE WHEN A COLON IS USED TO END A COMMAND
1577 /AND THERE IS NO PROGRAM ACTIVE TO READ THE REMAINDER
1578 /OF THE BUFFER.
1579 01501 1305 COM28, TAD CLNFLG
1580 01502 3060 DCA COMFLG /SET SPECIAL FLAGS FOR ERROR MESSAGE
1581 01503 1310 TAD COMCMS
1582 01504 5545 JMP I COMERA /THEN TAKE ERROR EXIT
1583
1584 01505 0320 CLNFLG, PRBUF+PRCRLF+PRQM
1585 01506 0520 CLRSIA, CLRSI
1586 01507 7506 COMCLN, -":
1587 01510 1511 COMCMS, .+1;":;0
01511 0272
01512 0000
1588 01513 7677 COMKEY, -JSDEL-1
1589 IFNZRO JSDEL-100 <GLITCH>
1590 0024 COMKEF= C0100 /JSDEL
1591 01514 6637 COMSIF, -DSI-SICOM-CTRLC-1
1592
1593 /ROUTINE TO SEE IF THE CURRENT JOB IS ACTIVE AND
1594 /SKIP IF IT IS.
1595
1596 01515 0000 JOBATV, 0
1597 01516 4526 GETWRD /GET THE RUN-BIT
1598 01517 0000 JOBSTS
1599 01520 7710 SPA CLA /IS IT SET?
1600 01521 2315 ISZ JOBATV /YES - SKIP NEXT INSTRUCTION
1601 01522 5715 JMP I JOBATV
/TSS-8.25 CONFIGURATION FOR UWM Page 41
1602 /
1603 /END-CODE FOR 'ASSIGN'.
1604 01523 4500 ASSIG9, ASCOUT /TELL USER WHAT HE GOT
1605 01524 6161 CRLF
1606 01525 7000 NOP
1607 01526 4342 JMS ASSUNI
1608 01527 4500 ASCOUT
1609 01530 0766 ASSIND /TYPE "ASSIGNED"
1610 01531 7000 NOP
1611 01532 5551 JMP I COMEXA /AND LEAVE
1612
1613 01533 0000 ASSOUT, 0 /TYPE CHARACTER IN AC OUT;
1614 01534 7041 CIA /FOLLOWED BY SPACE
1615 01535 3373 DCA ASSBUF /CALLED WITH - CHAR IN AC
1616 01536 4500 ASCOUT
1617 01537 1573 ASSBUF /TYPE STRING
1618 01540 7000 NOP
1619 01541 5733 JMP I ASSOUT
1620
1621 01542 0000 ASSUNI, 0 /ROUTINE TO TYPE OUT UNIT NAME
1622 01543 4526 GETWRD /FIRST FIGURE OUT WHAT HE WANTED
1623 01544 0011 JOBREG /PC CONTAINS ORIGINAL REQUEST
1624 01545 0023 AND C0037
1625 01546 3063 DCA IOTP0 /DEVICE #
1626 01547 1063 TAD IOTP0 /WHAT KIND OF DEVICE
1627 01550 1371 TAD C7760
1628 01551 7510 SPA /DEVICE #'S .GE. 20 ARE DTA
1629 01552 5363 JMP ASSG10 /NOT DTA
1630 01553 3063 DCA IOTP0 /UNIT #
1631 01554 1367 TAD ASSDD
1632 01555 4333 JMS ASSOUT /TYPE "D SPACE"
1633 01556 1063 TAD IOTP0
1634 01557 1370 TAD C0260
1635 01560 7041 CIA
1636 01561 4333 ASSG11, JMS ASSOUT /TYPE "N SPACE"; N=0,1,...,7
1637 01562 5742 JMP I ASSUNI /RETURN
1638
1639 01563 1372 ASSG10, TAD ASSTBZ /END OF ASSIGNMENT TABLE
1640 01564 3063 DCA IOTP0 / +UNIT # -5 = PTR TO ASSTBL
1641 01565 1463 TAD I IOTP0
1642 01566 5361 JMP ASSG11 /TYPE OUT DEVICE ASSIGNED
1643
1644 01567 7474 ASSDD, -304 /-D
1645 01570 0260 C0260, 260
1646 01571 7760 C7760, -20
1647 01572 3421 ASSTBZ, ASSTBL+1+20
1648 01573 0000 ASSBUF, 0
1649 01574 0240 240
1650 01575 0000 0
/TSS-8.25 CONFIGURATION FOR UWM Page 42
1651 PAGE
1652
1653 /GET A TEXT STRING
1654 /CALL TAD ADDRESS OF BUFFER -1
1655 / TEXTS
1656 / RETURN WITH POINTER TO LAST CHAR IN AC
1657
1658 01600 7537 CTEXA, -"!
1659 01601 7441 CTEXZ, -"_
1660 01602 7506 CTEXCN, -":
1661 01603 7772 CTEX6, -6 /MAXIMUM LENGTH OF STRING
1662
1663 01604 0000 CTEXT, 0
1664 01605 3010 DCA IX1 /INITIALIZE INDEX
1665 01606 4404 SKIP /SKIP SPACES AND TABS
1666 01607 5241 JMP CTEXT2 /NOTHING LEFT - EXIT
1667 01610 3267 DCA CTEXNU
1668 01611 1073 TAD CHAR
1669 01612 4245 CTEXT1, JMS FIXLC /CONVERT IT TO UPPER-CASE
1670 01613 1202 TAD CTEXCN /BLAME DOUG DYMENT FOR THIS ALTERATION
1671 01614 7110 CLL RAR
1672 01615 7650 SNA CLA /COLON OR SEMICOLON?
1673 01616 5241 JMP CTEXT2 /YES - END OF STRING
1674 01617 1073 TAD CHAR
1675 01620 1200 TAD CTEXA
1676 01621 7710 SPA CLA /NO - IS IT A LEGAL NON-BLANK CHARACTER?
1677 01622 5241 JMP CTEXT2 /NO
1678 01623 1073 TAD CHAR
1679 01624 1201 TAD CTEXZ
1680 01625 7740 SMA SZA CLA /IS IT .GE. "!" AND .LE. "_"?
1681 01626 5241 JMP CTEXT2 /NO - THEN IT'S THE END OF THE STRING
1682 01627 1267 TAD CTEXNU
1683 01630 1203 TAD CTEX6
1684 01631 7700 SMA CLA /YES - DO WE ALREADY HAVE 6 CHARACTERS?
1685 01632 5235 JMP .+3 /YES - THEN JUST IGNORE THIS
1686 01633 1073 TAD CHAR
1687 01634 3410 DCA I IX1 /NO - STORE THE CHARACTER
1688 01635 2267 ISZ CTEXNU / & INCREMENT THE CHARACTER COUNT
1689 01636 4511 COMGET /GET ANOTHER CHAR
1690 01637 7410 SKP /NONE THERE - WE'RE DONE
1691 01640 5212 JMP CTEXT1
1692 01641 3410 CTEXT2, DCA I IX1 /STORE A ZERO TO INDICATE END
1693 01642 7240 CLA CMA
1694 01643 1010 TAD IX1 /NOW RETURN WITH AC = END OF STRING BUFFER
1695 01644 5604 JMP I CTEXT
/TSS-8.25 CONFIGURATION FOR UWM Page 43
1696 /SUBROUTINE TO CONVERT THE CHARACTER IN THE AC TO UPPER-CASE.
1697
1698 01645 0000 FIXLC, 0
1699 01646 3073 DCA CHAR /SAVE THE CHARACTER
1700 01647 1073 TAD CHAR
1701 01650 1264 TAD MLCA
1702 01651 7510 SPA /IS IT LOWER-CASE?
1703 01652 5260 JMP FIXLC1 /NO
1704 01653 1265 TAD MLCZ
1705 01654 7540 SKISPA, SMA SZA / (ALSO -240)
1706 01655 5260 JMP FIXLC1 /NO
1707 01656 1263 TAD KLCFIX /YES - CONVERT IT TO UPPER
1708 01657 3073 DCA CHAR
1709 01660 7300 FIXLC1, CLA CLL
1710 01661 1073 TAD CHAR
1711 01662 5645 JMP I FIXLC /RETURN W/ AC= CHARACTER
1712
1713 01663 0332 KLCFIX, 372-40
1714 01664 7437 MLCA, -341 /LOWER-CASE "A"
1715 01665 7747 MLCZ, 341-372 / AND "Z"
1716
1717 /SKIP LEADING SPACES AND TABS
1718 /CALL JMS SKIPS
1719 / BUFFER EMPTY
1720 / NORMAL RETURN
1721
1722 01666 0027 SKITAB, 240-211
1723
1724 CTEXNU,
1725 01667 0000 SKIPS, 0
1726 01670 1073 TAD CHAR
1727 01671 5274 JMP .+3
1728 01672 4511 SKIPS1, COMGET
1729 01673 5667 JMP I SKIPS /NONE LEFT
1730 01674 7440 SZA /NULL CHARACTER?
1731 01675 1254 TAD SKISPA
1732 01676 7440 SZA /NO - SPACE?
1733 01677 1266 TAD SKITAB
1734 01700 7650 SNA CLA /NO - TAB?
1735 01701 5272 JMP SKIPS1 /YES - IGNORE IT
1736 01702 2267 ISZ SKIPS
1737 01703 5667 JMP I SKIPS
/TSS-8.25 CONFIGURATION FOR UWM Page 44
1738 /GET A CHARACTER FROM COMMAND STRING
1739 /CALL COMGET (AC=0 FOR NON-DESTRUCTIVE READ)
1740 / NONE
1741 / RETURN WITH CHARACTER IN 'CHAR' & AC
1742
1743 01704 0377 CG0377, 377
1744 01705 7400 CG7400, 7400
1745 01706 7766 CG7766, -12
1746
1747 01707 0000 COMGE0, 0
1748 01710 7200 CLA
1749 01711 6211 DATFLD
1750 01712 1447 TAD I SITCNT /GET THE TOTAL CHARACTER COUNT
1751 01713 7041 CIA
1752 01714 1454 TAD I COMDBT
1753 01715 7750 SPA SNA CLA /ANYTHING LEFT TO FETCH?
1754 01716 5357 JMP COMGE3 /NO
1755 01717 2307 ISZ COMGE0 /YES - SKIP ON RETURN
1756 01720 2447 ISZ I SITCNT /INCREMENT THE FETCH COUNT
1757 01721 2446 ISZ I SIECNT / AND INCREMENT THE EMPTY COUNT
1758 01722 5331 JMP COMGE1 /THEN GO FETCH THE CHARACTER
1759 01723 1306 TAD CG7766
1760 01724 3446 DCA I SIECNT /OOPS, HIT THE END OF THIS BLOCK
1761 01725 1445 TAD I SIBUF
1762 01726 3363 DCA COMGT1
1763 01727 1763 TAD I COMGT1 /GET THE POINTER TO THE NEXT BLOCK
1764 01730 3445 DCA I SIBUF
1765 01731 1446 COMGE1, TAD I SIECNT
1766 01732 1015 TAD C0003
1767 01733 7500 SMA /ARE WE FETCHING THE FRAGMENTED CHARACTERS?
1768 01734 7124 STL RAL /YES
1769 01735 7510 SPA
1770 01736 7161 STL CIA
1771 01737 1445 TAD I SIBUF
1772 01740 3363 DCA COMGT1 /SAVE THE WORD POINTER
1773 01741 1763 TAD I COMGT1
1774 01742 7430 SZL /IS THIS JUST A PIECE?
1775 01743 5356 JMP COMGE2 /NO
1776 01744 0305 AND CG7400 /YES - ZAP THE OTHER BITS
1777 01745 3073 DCA CHAR
1778 01746 2363 ISZ COMGT1
1779 01747 1763 TAD I COMGT1
1780 01750 0305 AND CG7400 /NOW GET THE OTHER HALF-CHARACTER
1781 01751 7112 CLL RTR
1782 01752 7012 RTR
1783 01753 1073 TAD CHAR /COMBINE THE TWO HALVES
1784 01754 7012 RTR
1785 01755 7012 RTR
1786 01756 0304 COMGE2, AND CG0377
1787 01757 3073 COMGE3, DCA CHAR /SAVE THE FINAL CHARACTER
1788 01760 1073 TAD CHAR / AND RETURN WITH IT
1789 01761 6221 CHDF
1790 01762 5707 JMP I COMGE0
/TSS-8.25 CONFIGURATION FOR UWM Page 45
1791 /GET A FREE BLOCK AND RETURN ITS ADDRESS
1792 /CALL TAD FIELD 0 LINK
1793 / GETFBL
1794 / NONE AVAILABLE
1795 / ADDR IN AC
1796
1797 COMGT1,
1798 01763 0000 GETFB0, 0
1799 01764 3052 DCA CHDFA
1800 01765 1052 TAD CHDFA
1801 01766 6202 CIF
1802 01767 4520 GETBLK
1803 01770 5763 JMP I GETFB0
1804 01771 6211 DATFLD
1805 01772 1452 TAD I CHDFA
1806 01773 6221 CHDF
1807 01774 2363 ISZ GETFB0
1808 01775 5763 JMP I GETFB0
/TSS-8.25 CONFIGURATION FOR UWM Page 46
1809 PAGE
1810
1811 /NUMBER INPUT
1812 /CALL NUMBIN
1813 / -N N=7,9 IN ASCII
1814 / NOT A NUMBER
1815 / # IN AC
1816
1817 02000 0177 C0177, 177
1818 0075 NUMAGN= NUMHO+1 /MAGNITUDE
1819 02001 0017 NUMB17, 17
1820 02002 0000 NUMCNT, 0 /DIGIT COUNT
1821 02003 7764 NUMCOM, " -",
1822 IFNZRO NUMOCT-NUMDEC-10 <GLITCH>
1823 0022 NUMDIF= C0010 /NUMOCT-NUMDEC
1824 02004 5303 NUMDSP, JMP NUMDEC
1825 02005 7776 NUMINU, "+-"-
1826 02006 7773 NUMM5, -5
1827 02007 7525 NUMPLS, -"+
1828 02010 7540 NUMSPC, -240
1829 02011 7520 NUMZER, -"0
1830
1831 02012 0000 NUMBI0, 0
1832 02013 1612 TAD I NUMBI0 /SET CONVERSION DISPATCH
1833 02014 0014 AND C0002
1834 02015 7650 SNA CLA /IS THE PARM A "7" OR "9"?
1835 02016 1022 TAD NUMDIF /"7" - OCTAL
1836 02017 1204 TAD NUMDSP /"9" - DECIMAL
1837 02020 3302 DCA NUMDEC-1
1838 02021 7240 CLA CMA
1839 02022 3343 DCA NUMSGN /INITIALIZE
1840 02023 3075 DCA NUMAGN
1841 02024 3074 DCA NUMHO
1842 02025 3202 DCA NUMCNT
1843 02026 4404 SKIP /SKIP SPACES AND TABS
1844 02027 5341 JMP NUMBI4 /BUFFER EMPTY
1845 02030 1073 TAD CHAR
1846 02031 1207 TAD NUMPLS
1847 02032 7450 SNA /"+"?
1848 02033 5240 JMP NUMBI1 /YES
1849 02034 1205 TAD NUMINU
1850 02035 7640 SZA CLA /"-"?
1851 02036 5243 JMP NUMBI2 /NO
1852 02037 3343 DCA NUMSGN /YES - SET (-) INDICATOR
1853 02040 4511 NUMBI1, COMGET /GET A CHARACTER
1854 02041 5321 JMP NUMBI3
1855 02042 7410 SKP
1856 02043 1073 NUMBI2, TAD CHAR
1857 02044 1211 TAD NUMZER
1858 02045 7710 SPA CLA /DIGIT?
1859 02046 5321 JMP NUMBI3 /NO
1860 02047 1073 TAD CHAR
1861 02050 1612 TAD I NUMBI0
1862 02051 7740 SMA SZA CLA /CHAR <= PARAMETER?
1863 02052 5321 JMP NUMBI3
1864 02053 1073 TAD CHAR
1865 02054 0201 AND NUMB17
/TSS-8.25 CONFIGURATION FOR UWM Page 47
1866 02055 3052 DCA CHDFA
1867 02056 2202 ISZ NUMCNT
1868 02057 1202 TAD NUMCNT /MORE THAT 4 DIGITS?
1869 02060 1206 TAD NUMM5
1870 02061 7710 SPA CLA
1871 02062 5276 JMP NUMBI5 /NO
1872 02063 1074 TAD NUMHO /SHIFT HIGH ORDER
1873 02064 7106 CLL RTL
1874 02065 7004 RAL
1875 02066 0033 AND C7770
1876 02067 3074 DCA NUMHO
1877 02070 1075 TAD NUMAGN
1878 02071 7106 CLL RTL
1879 02072 7006 RTL
1880 02073 0021 AND C0007
1881 02074 1074 TAD NUMHO
1882 02075 3074 DCA NUMHO
1883 02076 1075 NUMBI5, TAD NUMAGN
1884 02077 7106 CLL RTL
1885 02100 7004 RAL
1886 02101 0033 AND C7770
1887 02102 7402 HLT
1888 02103 7100 NUMDEC, CLL
1889 02104 1075 TAD NUMAGN
1890 02105 7430 SZL
1891 02106 2074 ISZ NUMHO
1892 02107 7100 CLL
1893 02110 1075 TAD NUMAGN
1894 02111 7430 SZL
1895 02112 2074 ISZ NUMHO
1896 02113 7100 NUMOCT, CLL
1897 02114 1052 TAD CHDFA
1898 02115 7430 SZL
1899 02116 2074 ISZ NUMHO
1900 02117 3075 DCA NUMAGN
1901 02120 5240 JMP NUMBI1
1902
1903 02121 1073 NUMBI3, TAD CHAR
1904 02122 1210 TAD NUMSPC
1905 02123 7440 SZA /WAS TERMINATOR A SPACE?
1906 02124 1203 TAD NUMCOM
1907 02125 7650 SNA CLA / OR A COMMA?
1908 02126 5332 JMP NUMBI6 /YES - IT'S OK THEN
1909 02127 4516 ENDTST /NO--WAS IT AN ACCEPTABLE END CHAR?
1910 02130 7410 SKP /YES, OK
1911 02131 5341 JMP NUMBI4 /NO, COMPLAIN
1912
1913 02132 1202 NUMBI6, TAD NUMCNT /ANY VALID DIGITS IN STRING?
1914 02133 7650 SNA CLA
1915 02134 5341 JMP NUMBI4 /NOPE
1916 02135 2212 ISZ NUMBI0 /YES, IT WAS A VALID STRING.
1917 02136 1075 TAD NUMAGN
1918 02137 2343 ISZ NUMSGN /NEGATIVE NUMBER?
1919 02140 7041 CIA /YES - NEGATE IT
1920 02141 2212 NUMBI4, ISZ NUMBI0
1921 02142 5612 JMP I NUMBI0
/TSS-8.25 CONFIGURATION FOR UWM Page 48
1922 /OUTPUT ASCII MESSAGE
1923 /CALL TAD ADDR OF DDB OR 0 IF RESPONSE DDB
1924 / ASCOUT
1925 / POINTER TO MESSAGE (TERMINATED BY 0)
1926 / WON'T FIT
1927 / OK
1928
1929 2012 ASCOT1= NUMBI0
1930
1931 NUMSGN,
1932 02143 0000 ASCOU0, 0
1933 02144 7450 SNA
1934 02145 4534 RESDDB /GET THIS USER'S OUTPUT DDB
1935 02146 6201 CDF
1936 02147 3443 DCA I CONDVA /SET IN FIELD 0 FOR 'PRINT'
1937 02150 6221 CHDF
1938 02151 1743 TAD I ASCOU0
1939 02152 3212 DCA ASCOT1
1940 02153 2343 ISZ ASCOU0
1941 02154 1612 ASCOU1, TAD I ASCOT1 /GET NEXT CHAR
1942 02155 7450 SNA /END OF STRING?
1943 02156 5364 JMP ASCOU2 /YES
1944 02157 6202 CIF
1945 02160 4531 PRINT / AND STORE THE CHARACTER
1946 02161 5743 JMP I ASCOU0 /WON'T FIT
1947 02162 2212 ISZ ASCOT1
1948 02163 5354 JMP ASCOU1
1949 02164 2343 ASCOU2, ISZ ASCOU0 /SKIP THE PARAMETER
1950 02165 5743 JMP I ASCOU0 / AND RETURN
1951
1952 02166 0240 WHERMQ, " ;"M;"Q;"=;0
02167 0315
02170 0321
02171 0275
02172 0000
1953 02173 0240 WHERSC, " ;"S;"C;"=;0
02174 0323
02175 0303
02176 0275
02177 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 49
1954 PAGE
1955
1956 /GET JOB TABLE ADDRESS
1957 /CALL GETTBA
1958 / RELATIVE ADDRESS
1959 / RETURN
1960
1961 02200 0000 GETTB0, 0
1962 02201 6211 DATFLD
1963 02202 1562 TAD I JOBDAT
1964 02203 6221 CHDF
1965 02204 7650 SNA CLA /IS 'JOBDAT' DEFINED?
1966 IFNZRO DEBUG <
1967 REBOOT /NO - ERROR *****
1968 >
1969 IFZERO DEBUG <
1970 02205 5216 JMP GETTB2 /NO - MAYBE IT WON'T BE FATAL
1971 >
1972 02206 1600 TAD I GETTB0
1973 02207 3213 DCA GETTB1
1974 02210 1162 TAD JOBDAT
1975 02211 6202 CIF
1976 02212 4523 GETJTA
1977 02213 0000 GETTB1, 0
1978 02214 7450 SNA /REASONABLE ADDRESS?
1979 IFNZRO DEBUG <
1980 REBOOT /NO - ERROR *****
1981 >
1982 IFZERO DEBUG <
1983 02215 7000 NOP /NO - HOPE THIS GETS BY ALSO
1984 >
1985 02216 2200 GETTB2, ISZ GETTB0
1986 02217 5600 JMP I GETTB0
1987
1988
1989 /SEARCH FOR JOB IN CORE
1990 /CALL TAD SEARCH ITEM
1991 / CORES
1992 / RETURN WITH CORE ARG IN AC
1993
1994 02220 0000 CORSER, 0
1995 02221 6202 CIF
1996 02222 4513 CORE
1997 02223 4237 FSWP+SI+CJOB
1998 02224 7200 CLA
1999 02225 5620 JMP I CORSER
/TSS-8.25 CONFIGURATION FOR UWM Page 50
2000 /GET RESPONSE DDB ADDRESS
2001 /CALL RESDDB
2002 / ADDR IN AC AND COMRDB
2003
2004 IFNZRO DDBINC-5 <GLITCH>
2005 0017 RESPCT= C0005 /DDBINC
2006
2007 02226 0000 RESPDB, 0
2008 02227 1055 TAD COMRDB
2009 02230 7640 SZA CLA /DDB ALREADY SET UP?
2010 02231 5241 JMP RESPD3 /YES
2011 02232 6201 CDF
2012 02233 1053 TAD COMDB0
2013 02234 1017 TAD RESPCT
2014 02235 3054 DCA COMDBT /SET A POINTER TO THE TOTAL CHARACTER COUNT
2015 02236 7001 IAC
2016 02237 1437 TAD I COMPTR
2017 02240 3055 DCA COMRDB /SET POINTER TO OUTPUT DEVTBL ENTRY
2018 02241 6221 RESPD3, CHDF
2019 02242 1055 TAD COMRDB
2020 02243 5626 JMP I RESPDB
2021
2022 /
2023 /DECREMENT COMCNT
2024 /CALL DECRCT
2025 / RETURN
2026
2027 02244 0000 DECRC0, 0
2028 02245 6201 CDF
2029 02246 7240 STA
2030 02247 1435 TAD I COMCNT /BACK UP THE COMMAND COUNTER
2031 02250 7510 SPA / BUT IT CAN'T GO NEGATIVE
2032 02251 7200 CLA
2033 02252 3435 DCA I COMCNT
2034 02253 6221 CHDF
2035 02254 5644 JMP I DECRC0
/TSS-8.25 CONFIGURATION FOR UWM Page 51
2036 /DELETE BUFFER TO CURRRENT POINTER
2037 /CALL JMS BUFDEL
2038 / RETURN
2039
2040 IFNZRO DDBOUP-7 <GLITCH>
2041 0021 BUFOUP= C0007 /DDBOUP
2042 IFNZRO DDBINP-4 <GLITCH>
2043 0016 BUFINP= C0004 /DDBINP
2044 0015 BUFIM1= C0003 /DDBINP-1
2045 IFNZRO DDBINC-5 <GLITCH>
2046 0017 BUFTCT= C0005
2047 02255 0000 BUFDT0, 0
2048
2049 02256 0000 BUFDE0, 0
2050 02257 1053 TAD COMDB0
2051 02260 7450 SNA /DOES IT EXIST?
2052 02261 5333 JMP BUFDE4 /NO - NOTHING TO DELETE
2053 02262 1016 TAD BUFINP
2054 02263 3255 DCA BUFDT0 /POINTER TO FILL-POINTER
2055 02264 6211 DATFLD
2056 02265 1655 TAD I BUFDT0
2057 02266 7650 SNA CLA /ANYTHING IN BUFFER?
2058 02267 5333 JMP BUFDE4 /NO - JUST EXIT
2059 02270 1053 TAD COMDB0
2060 02271 1021 TAD BUFOUP
2061 02272 3255 DCA BUFDT0 /NOW POINTS TO EMPTY-POINTER
2062 02273 1445 BUFDE1, TAD I SIBUF
2063 02274 7041 CIA
2064 02275 1655 TAD I BUFDT0
2065 02276 7650 SNA CLA /ARE WE CAUGHT UP ON BLOCKS?
2066 02277 5306 JMP BUFDE2 /YES - JUST UPDATE THE COUNTERS
2067 02300 1655 TAD I BUFDT0
2068 02301 6221 CHDF
2069 02302 4537 RETDBL /NO - RETURN A BLOCK
2070 02303 6211 DATFLD
2071 02304 3655 DCA I BUFDT0 / AND UPDATE THE POINTER
2072 02305 5273 JMP BUFDE1 /THEN CHECK AGAIN
2073 02306 1015 BUFDE2, TAD BUFIM1
2074 02307 1053 TAD COMDB0
2075 02310 3010 DCA IX1 /SET POINTER TO CONTROL-WORDS
2076 02311 1447 TAD I SITCNT
2077 02312 7041 CIA
2078 02313 1454 TAD I COMDBT
2079 02314 7450 SNA /ANY CHARACTERS LEFT?
2080 02315 5323 JMP BUFDE3 /NO
2081 02316 2010 ISZ IX1
2082 02317 3410 DCA I IX1 /YES - SET THE NEW TOTAL COUNT
2083 02320 1446 TAD I SIECNT
2084 02321 3410 DCA I IX1 / AND THE EMPTY COUNTER
2085 02322 5334 JMP BUFDE5
2086 /
2087 02323 1655 BUFDE3, TAD I BUFDT0
2088 02324 6221 CHDF
2089 02325 4535 RETBKS /RETURN ALL THE FREE BLOCKS
2090 02326 6211 DATFLD
2091 02327 3410 DCA I IX1
2092 02330 3410 DCA I IX1
/TSS-8.25 CONFIGURATION FOR UWM Page 52
2093 02331 3410 DCA I IX1
2094 02332 3410 DCA I IX1
2095 02333 3073 BUFDE4, DCA CHAR /ZERO SO EVERYONE KNOWS IT'S EMPTY
2096 02334 6221 BUFDE5, CHDF
2097 02335 5656 JMP I BUFDE0 /THEN RETURN
/TSS-8.25 CONFIGURATION FOR UWM Page 53
2098
2099 /ASCII TO SIXBIT CONVERT
2100 /CALL ASCSIX
2101 / SOURCE-1 (TERMINATED BY 0)
2102 / DESTINATION-1
2103 / RETURN
2104
2105 02336 7540 ASC240, -240
2106
2107 02337 0000 ASCSI0, 0
2108 02340 1737 TAD I ASCSI0
2109 02341 3010 DCA IX1
2110 02342 2337 ISZ ASCSI0
2111 02343 1737 TAD I ASCSI0
2112 02344 3011 DCA IX2
2113 02345 2337 ISZ ASCSI0
2114 02346 1410 ASCSI1, TAD I IX1
2115 02347 7450 SNA
2116 02350 5737 JMP I ASCSI0 /THAT'S ALL
2117 02351 1336 TAD ASC240 /CONVERT TO SIXBIT
2118 02352 7106 CLL RTL
2119 02353 7006 RTL
2120 02354 7006 RTL
2121 02355 3052 DCA CHDFA
2122 02356 1410 TAD I IX1
2123 02357 7450 SNA /END OF STRING?
2124 02360 5365 JMP ASCSI2 /YES - STORE THE LAST PIECE
2125 02361 1336 TAD ASC240
2126 02362 1052 TAD CHDFA
2127 02363 3411 DCA I IX2
2128 02364 5346 JMP ASCSI1
2129 02365 1052 ASCSI2, TAD CHDFA
2130 02366 3411 DCA I IX2
2131 02367 5737 JMP I ASCSI0
2132
2133 02370 4525 IOTSET, GETTBA /GET THE IOT LINKAGE POINTER
2134 02371 0007 JOBLNK
2135 02372 3052 DCA CHDFA
2136 02373 1063 TAD IOTP0
2137 02374 6211 DATFLD
2138 02375 3452 DCA I CHDFA /STORE THE IOT
2139 02376 5505 CALFIP / AND OFF TO FIP
/TSS-8.25 CONFIGURATION FOR UWM Page 54
2140 PAGE
2141 /TEST FOR END OF COMMAND STRING
2142 /CALL ENDTST WITH CHARACTER IN CHAR
2143 / END RETURN
2144 / NOT END
2145
2146 02400 0000 ENDTS0, 0
2147 02401 1214 TAD ENDTBA
2148 02402 3012 DCA IX3
2149 02403 1412 TAD I IX3
2150 02404 7450 SNA /AND END OF LIST?
2151 02405 5212 JMP .+5 /YES - THEN CHAR ISN'T A BREAK CHAR
2152 02406 1073 TAD CHAR
2153 02407 7640 SZA CLA /IS THIS EQUAL TO CHAR?
2154 02410 5203 JMP .-5 /NO - CONTINUE CHECKING
2155 02411 7410 SKP
2156 02412 2200 ISZ ENDTS0
2157 02413 5600 JMP I ENDTS0
2158
2159 02414 2414 ENDTBA, .
2160 02415 7505 -273 /; (FIRST CHARACTER NORMALLY CHECKED)
2161 02416 7506 -272 /:
2162 02417 7563 -215 /CR
2163 02420 7566 -212 /LF
2164 02421 7565 -213 /VT
2165 02422 7564 -214 /FF
2166 02423 0000 0
2167
2168 /OCTAL TO ASCII CONVERT
2169 /CALL TAD OCTAL #
2170 / OCTASC
2171 / BUFFER ADDR-1
2172 / RETURN
2173
2174 02424 0000 OCTAS0, 0
2175 02425 7104 CLL RAL
2176 02426 3252 DCA OCTASN /SAVE THE NUMBER
2177 02427 1250 TAD OCTM4
2178 02430 3257 DCA OCTACT /SET THE DIGIT COUNTER
2179 02431 1624 TAD I OCTAS0
2180 02432 3010 DCA IX1 / & THE BUFFER POINTER
2181 02433 2224 ISZ OCTAS0
2182 02434 1252 OCTAS1, TAD OCTASN
2183 02435 7006 RTL
2184 02436 7004 RAL
2185 02437 3252 DCA OCTASN
2186 02440 1252 TAD OCTASN
2187 02441 0021 AND C0007 /GET THE NEXT OCTAL DIGIT
2188 02442 1251 TAD OCTZER / & MAKE IT ASCII
2189 02443 3410 DCA I IX1
2190 02444 2257 ISZ OCTACT
2191 02445 5234 JMP OCTAS1
2192 02446 3410 DCA I IX1 /SET ZERO AS TERMINATOR
2193 02447 5624 JMP I OCTAS0
2194
2195 02450 7774 OCTM4, -4
2196 02451 0260 OCTZER, "0
/TSS-8.25 CONFIGURATION FOR UWM Page 55
2197
2198 /GET USER STATE WORD
2199 /CALL GETWRD
2200 / RELATIVE ADDRESS
2201 / RETURN WITH USER WORD IN AC, ADDRESS IN IOTP7
2202
2203 02452 0000 GETWR0, 0
2204 02453 1652 TAD I GETWR0
2205 02454 3257 DCA GETWR1
2206 02455 2252 ISZ GETWR0
2207 02456 4525 GETTBA
2208 02457 0000 GETWR1, 0
2209 02460 3072 DCA IOTP7
2210 02461 6211 DATFLD
2211 02462 1472 TAD I IOTP7
2212 02463 6221 CHDF
2213 02464 5652 JMP I GETWR0
2214 /
2215 2452 OCTASN= GETWR0
2216 2457 OCTACT= GETWR1
2217
2218 /ASSIGN THIS FIELD TO JOB
2219 /CALL ASSCOR
2220
2221 02465 0000 ASSCO0, 0
2222 02466 6201 CDF
2223 02467 1171 TAD CORJOB
2224 02470 7450 SNA /SPECIAL FIELD ASSIGNMENT?
2225 02471 1561 TAD I JOBA /NO - SET FOR THIS JOB
2226 02472 3705 DCA I FANFLD
2227 02473 6221 CHDF
2228 02474 5665 JMP I ASSCO0
2229
2230 /RELEASE THIS FIELD
2231 /CALL RELCOR
2232
2233 02475 5600 RELCOM, FSWP+NOTRUN+FIP+SI
2234
2235 02476 0000 RELCO0, 0
2236 02477 6201 CDF
2237 02500 1705 TAD I FANFLD
2238 02501 0275 AND RELCOM
2239 02502 3705 DCA I FANFLD
2240 02503 6221 CHDF
2241 02504 5676 JMP I RELCO0
2242 /
2243 02505 7002 FANFLD, CORTBL+1 /POINTS TO PHANTOM ENTRY
2244
2245 /ROUTINE TO CHECK THE TYPE OF ACCOUNT THIS USER HAS
2246 /CALL: CHKACT
2247 / -- /IF ORDINARY USER
2248 / -- /IF SYSTEM OPERATOR (I.E. 00XX)
2249 / -- /IF SYSTEM MANAGER (I.E. 000X)
2250
2251 02506 0000 CHKAC0, 0
2252 02507 4526 GETWRD /GET HIS ACCOUNT NUMBER
2253 02510 0015 JOBACT
/TSS-8.25 CONFIGURATION FOR UWM Page 56
2254 02511 0033 AND C7770
2255 02512 7450 SNA /MANAGER'S ACCOUNT?
2256 02513 5323 JMP CHKAC1 /YES
2257 02514 0032 AND C7700
2258 02515 7640 SZA CLA /NO - OPERATOR'S ACCOUNT?
2259 02516 5706 JMP I CHKAC0 /NO - JUST A NORMAL USER
2260 02517 1051 TAD SIKBD
2261 02520 7640 SZA CLA /IS HE ON K00?
2262 02521 5706 JMP I CHKAC0 /NO - THEN HE CAN'T BE OPERATING NOW
2263 02522 7410 SKP
2264 02523 2306 CHKAC1, ISZ CHKAC0
2265 02524 2306 ISZ CHKAC0
2266 02525 5706 JMP I CHKAC0 /RETURN
/TSS-8.25 CONFIGURATION FOR UWM Page 57
2267
2268 /SIXBIT TO ASCII CONVERT
2269 /CALL JMS SIXASC
2270 / SIXBIT ADDR (TERMINATED BY 0 OR SIXTH CHAR)
2271 / ASCII BUFFER-1
2272 / RETURN
2273
2274 2465 SIXADR= ASSCO0
2275 2476 SIXCNT= RELCO0
2276 02526 0077 C0077, 77
2277
2278 02527 0000 SIXASC, 0
2279 02530 7450 SNA
2280 02531 7346 CLA CLL CMA RTL /AC = -3 (WORD-COUNT)
2281 02532 3276 DCA SIXCNT
2282 02533 1727 TAD I SIXASC
2283 02534 3265 DCA SIXADR
2284 02535 2327 ISZ SIXASC
2285 02536 1727 TAD I SIXASC
2286 02537 3011 DCA IX2
2287 02540 2327 ISZ SIXASC
2288 02541 1665 SIXAS2, TAD I SIXADR
2289 02542 0032 AND C7700
2290 02543 7450 SNA
2291 02544 5363 JMP SIXAS1
2292 02545 7112 CLL RTR
2293 02546 7012 RTR
2294 02547 7012 RTR
2295 02550 1365 TAD SIX240
2296 02551 3411 DCA I IX2
2297 02552 1665 TAD I SIXADR
2298 02553 0326 AND C0077
2299 02554 7450 SNA
2300 02555 5363 JMP SIXAS1
2301 02556 1365 TAD SIX240
2302 02557 3411 DCA I IX2
2303 02560 2265 ISZ SIXADR
2304 02561 2276 ISZ SIXCNT
2305 02562 5341 JMP SIXAS2
2306 02563 3411 SIXAS1, DCA I IX2 /CLEAR LAST WORD
2307 02564 5727 JMP I SIXASC
2308
2309 2565 SIX240= .
2310 02565 0240 HASITM, " ;"H;"A;"S;" ;0
02566 0310
02567 0301
02570 0323
02571 0240
02572 0000
2311 02573 0207 BELMSG, 207;207;0
02574 0207
02575 0000
2312 02576 0256 PERIOD, ".;0
02577 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 58
2313 PAGE
2314 /RETURN PARAMETERS
2315 /CALL RETPAR
2316 / RETURN
2317
2318
2319 02600 0000 RETPA0, 0
2320 02601 4526 GETWRD
2321 02602 0007 JOBLNK
2322 02603 7001 IAC
2323 02604 3210 DCA RETPA1
2324 02605 6202 CIF
2325 02606 4503 BLT
2326 02607 6211 DATFLD /SOURCE FLD
2327 02610 0000 RETPA1, 0 /SOURCE ADDR
2328 02611 6221 CHDF /DESTINATION FIELD
2329 02612 0063 IOTP0 /DEST ADDR
2330 02613 7771 -7 /-COUNT
2331 02614 7240 STA /RETURN PARAMETER LBLOCK TO FREE STORAGE
2332 02615 1210 TAD RETPA1
2333 02616 6202 CIF
2334 02617 4536 RETBLK
2335 02620 7200 CLA
2336 02621 6211 DATFLD
2337 02622 3472 DCA I IOTP7 /JOBLNK:=0
2338 02623 6221 CHDF
2339 02624 5600 JMP I RETPA0
/TSS-8.25 CONFIGURATION FOR UWM Page 59
2340 /RESTORE BUFFER POINTERS
2341 /CALL JMS RESTBP
2342 / RETURN
2343
2344 IFNZRO DDBOUC-6 <GLITCH>
2345 0017 RESTEC= C0005 /DDBOUC-1
2346
2347 02625 0000 RESTBP, 0
2348 02626 1053 TAD COMDB0
2349 02627 7450 SNA /DO WE HAVE A DDB?
2350 IFNZRO DEBUG <
2351 REBOOT /NO - ERROR *****
2352 >
2353 IFZERO DEBUG <
2354 02630 7000 NOP /NO - BUT CONTINUE IN A PRODUCTION SYSTEM
2355 >
2356 02631 1017 TAD RESTEC
2357 02632 3010 DCA IX1 /POINTS TO THE EMPTY COUNT
2358 02633 6211 DATFLD
2359 02634 3447 DCA I SITCNT /CLEAR THE FETCH COUNT
2360 02635 1410 TAD I IX1
2361 02636 3446 DCA I SIECNT / AND THE EMPTY COUNT
2362 02637 1410 TAD I IX1
2363 02640 3445 DCA I SIBUF / AND THE FIRST BLOCK POINTER
2364 02641 6221 CHDF
2365 02642 5625 JMP I RESTBP
2366
2367 /
2368 /CODE TO STORE THE 'PRGTBL' ENTRY BEFORE OPENING A FILE.
2369 02643 4507 SAVNAM, CHKIO /CHECK FOR ACTIVE DTA AND RK05 I/O
2370 02644 4510 CLRPRV /CLEAR JOB'S "PRIVILEGE"
2371 02645 1050 TAD SIJOB /PRGTBL INDEX=3*JOB
2372 02646 1050 TAD SIJOB
2373 02647 1050 TAD SIJOB
2374 02650 1265 TAD PRGTBA /START OF PRGTBL-3 (NO ENTRY FOR JOB 0)
2375 02651 3010 DCA IX1
2376 02652 6211 DATFLD
2377 02653 1066 TAD IOTP3 /TRANSFER 3 WORD BLOCK
2378 02654 3410 DCA I IX1
2379 02655 1067 TAD IOTP4
2380 02656 3410 DCA I IX1
2381 02657 1070 TAD IOTP5
2382 02660 3410 DCA I IX1
2383 02661 6221 CHDF
2384 02662 1015 TAD C0003 /FILE 3
2385 02663 3064 DCA IOTP1
2386 02664 5564 JMP I LNGIOT /GO DO OPEN
2387
2388 02665 2770 PRGTBA, PRGTBL-3-1
2389
2390 /ROUTINE TO CHECK FOR RK05 OR DECTAPE I/O ACTIVITY.
2391
2392 02666 0000 CHKIO0, 0
2393 02667 4526 GETWRD /GET THE DEVICE WAIT WORD
2394 02670 0004 JOBDWT
2395 02671 7650 SNA CLA /ANYTHING GOING?
2396 02672 5666 JMP I CHKIO0 /NO
/TSS-8.25 CONFIGURATION FOR UWM Page 60
2397 02673 1275 TAD .+2
2398 02674 5545 JMP I COMERA /YES - TYPE "WAIT FOR I/O"
2399 02675 7604 WAITIO
/TSS-8.25 CONFIGURATION FOR UWM Page 61
2400
2401 /ROUTINE TO GET USER'S ACCOUNT # IN FORM M,N OR M
2402 /CALL
2403 / ACCTIN
2404 / ILLEGAL CHARACTER IN STRING
2405 / RETURN WITH ACCOUNT # IN AC
2406
2407 02676 0000 ACC0, 0
2408 02677 3225 DCA ACC1 /CLEAR #
2409 02700 4527 ACC3, NUMBIN /GET ONE COMPONENT
2410 02701 7511 -"7
2411 02702 5313 JMP ACC4 /COULDN'T DO IT
2412 02703 1225 TAD ACC1 /ACCUMULATE INTO TOTAL
2413 02704 3225 DCA ACC1
2414 02705 1073 TAD CHAR /TERMINATOR A COMMA
2415 02706 1325 TAD ACCOMA
2416 02707 7650 SNA CLA
2417 02710 5314 JMP ACC2 /YES-- SO SHIFT NUMBER THUS FAR INTO LEFT HALF OF WORD
2418 02711 1225 TAD ACC1 /NO- RETURN WHOLE #
2419 02712 2276 ISZ ACC0 /SKIP TO INDICATE GOODNESS
2420 02713 5676 ACC4, JMP I ACC0
2421
2422 02714 1225 ACC2, TAD ACC1 /SHIFT IT LEFT 6 PLACES
2423 02715 7106 CLL RTL
2424 02716 7006 RTL
2425 02717 7006 RTL
2426 02720 3225 DCA ACC1 /SAVE IT
2427 02721 4511 COMGET /GET PAST THE OFFENDING COMMA
2428 02722 5313 JMP ACC4 /NONE LEFT, BUT WE NEED ONE--ERROR
2429 02723 7200 CLA
2430 02724 5300 JMP ACC3 /GET NEXT PART OF NUMBER
2431
2432 2625 ACC1= RESTBP
2433 02725 7524 ACCOMA, -",
/TSS-8.25 CONFIGURATION FOR UWM Page 62
2434 /ROUTINE TO TYPE A MESSAGE ON EVERYBODY'S CONSOLE AT ONCE
2435 /THE USER MUST BE LOGGED-IN ON A SYSTEM ACCOUNT.
2436
2437 02726 4506 BROAD, CHKACT /CHECK THE TYPE OF USER
2438 02727 5545 JMP I COMERA /MERE MORTAL - ERROR!!
2439 02730 7000 NOP /OPERATOR ACCOUNT
2440 02731 1367 TAD BROBRK
2441 02732 3064 DCA IOTP1 /POINTS TO END OF BUFFER
2442 02733 4404 SKIP
2443 02734 5350 JMP BROAD2 /NO CHARACTERS LEFT
2444 02735 1073 TAD CHAR /SAVE CHARACTER IN BUFFER
2445 02736 3464 BROAD1, DCA I IOTP1
2446 02737 2064 ISZ IOTP1 /READY FOR NEXT CHARACTER
2447 02740 7410 SKP
2448 IFNZRO DEBUG <
2449 REBOOT /ERROR - 'VERBRK' BUFFER NOT LARGE ENOUGH *****
2450 >
2451 IFZERO DEBUG <
2452 02741 5545 JMP I COMERA /PRODUCTION SYSTEM - BUT HOW COULD HE TYPE SO MUCH?
2453 >
2454 02742 7326 STL CLA RTL /AC=2
2455 02743 4516 ENDTST /LOOK FOR CR, LF, FF, VT
2456 02744 5350 JMP BROAD2 /FOUND ONE OF THE ABOVE
2457 02745 4511 COMGET /GET ANOTHER CHARACTER
2458 02746 5350 JMP BROAD2 /NONE
2459 02747 5336 JMP BROAD1 /AND LOOK AT IT
2460
2461 02750 3464 BROAD2, DCA I IOTP1 /END THE STRING
2462 02751 1376 TAD BROLN /INITIALIZE FOR ALL CONSOLES
2463 02752 3066 DCA IOTP3
2464 02753 1155 TAD DEVTBA /GET POINTER TO FIRST OUTPUT DDB
2465 02754 3010 DCA IX1
2466
2467 02755 6211 BROAD3, DATFLD
2468 02756 1410 TAD I IX1 /GET DDB ADDRESS
2469 02757 6221 CHDF
2470 02760 7650 SNA CLA /DOES IT EXIST
2471 02761 5372 JMP BROAD4 /NO; SO DON'T BOTHER
2472 02762 1010 TAD IX1
2473 02763 3065 DCA IOTP2 /SAVE DEVTBL ENTRY ADDRESS FOR TALK5
2474 02764 4777 JMS I BROTAK /PUSH STRING CR-LF STARS THRU
2475 02765 5760 STARS
2476 02766 4777 JMS I BROTAK /OUTPUT MESSAGE
2477 02767 7650 BROBRK, VERBRK
2478 02770 4777 JMS I BROTAK /CR-LF
2479 02771 6161 CRLF
2480 02772 2010 BROAD4, ISZ IX1 /ON TO NEXT CONSOLE
2481 02773 2066 ISZ IOTP3 /ARE WE DONE?
2482 02774 5355 JMP BROAD3 /NO, CONTINUE
2483 02775 5551 JMP I COMEXA /YES, GO AWAY
2484
2485 02776 7765 BROLN, -BRDMAX-1 /ONLY BROADCAST TO EXISTING TTY'S
2486 02777 5565 BROTAK, TALK5
/TSS-8.25 CONFIGURATION FOR UWM Page 63
2487 PAGE
2488 /
2489 /HANDLER FOR THE 'LOGIN' COMMAND - WE PICK UP THE ACCOUNT
2490 /NUMBER & PASSWORD AND BUILD THE JOB STATUS-BLOCKS; THEN
2491 /WE CALL FIP TO CHECK THE ACCOUNT/PASSWORD COMBINATION.
2492 /IF THE USER SPECIFIES A JOB NUMBER AFTER HIS PASSWORD,
2493 /WE'LL LET HIM LOG IN AS A PARTICULAR JOB IF WE CAN;
2494 /IF HE SPECIFIES A JOB NUMBER & WE CAN'T LET HIM HAVE IT,
2495 /WE GIVE HIM A MESSAGE AND DON'T LET HIM IN AT ALL.
2496
2497 03000 3245 LOGIEA, LOGINE
2498 03001 3311 LOGIFA, LOGINF
2499
2500 03002 5600 JMP I LOGIEA /FIP ERROR RETURN
2501 03003 5601 JMP I LOGIFA /OK RETURN
2502 03004 1050 LOGIN, TAD SIJOB
2503 03005 7640 SZA CLA /ALREADY HAVE A JOB #?
2504 03006 5274 JMP LOGER1 /YES - "ALREADY LOGGED IN"
2505 03007 4477 ACCTIN /NO - FETCH HIS ACCOUNT NUMBER
2506 03010 5275 JMP LOGER3 /BAD NUMBER - SAY "ILLEGAL REQUEST"
2507 03011 3065 DCA IOTP2
2508 03012 1056 TAD COMBFA
2509 03013 4543 TEXTS /GET HIS PASSWORD IN ASCII
2510 03014 7200 CLA
2511 03015 4501 ASCSIX / AND CONVERT IT TO TSS/8 6-BIT
2512 03016 6204 COMBUF-1
2513 03017 0065 IOTP3-1
2514 03020 6211 DATFLD
2515 03021 1453 TAD I COMDB0
2516 03022 0014 AND LOGCTB
2517 03023 7650 SNA CLA /WAS THE COMMAND PRECEDED BY CTRL/B?
2518 03024 5313 JMP LOGER5 /NO - THIS IS FOR HIS OWN GOOD!
2519 03025 7240 CLA CMA
2520 03026 1065 TAD IOTP2
2521 03027 7640 SZA CLA /IS THIS MANAGER #1 LOGGING IN?
2522 03030 5235 JMP .+5 /NO
2523 03031 1772 TAD I LOGMSK
2524 03032 7650 SNA CLA /YES - IS THE SYSTEM RESTRICTED BY 'OFF'?
2525 03033 5312 JMP LOGER4 /NO - THAT MEANS IT IS FOR MGR1
2526 03034 7610 SKP CLA /YES - HE CAN LOGIN, BUT NOT WITHOUT A PASSWORD
2527 03035 1453 TAD I COMDB0 /CHECK THE 'FORCED' BIT
2528 03036 0016 AND LOGFRC
2529 03037 7450 SNA /WAS THIS LOGIN FORCED BY A MANAGER?
2530 03040 5244 JMP .+4
2531 03041 3067 DCA IOTP4 /YES - SET THE SECOND WORD NON-ZERO
2532 03042 3066 DCA IOTP3 / AND ZERO THE FIRST WORD OF PASSWORD
2533 03043 7610 SKP CLA / ALSO ALLOW THE FORCED ACCOUNT PAST ANY LOCK
2534 03044 1065 TAD IOTP2
2535 03045 0772 AND I LOGMSK
2536 03046 6221 CHDF
2537 03047 7640 SZA CLA /IS THIS USER ALLOWED IN?
2538 03050 5312 JMP LOGER4 /NO - SYSTEM LOCKED UP BY MANAGER
2539 03051 4527 NUMBIN /PICK UP ANY JOB # SPECIFIED
2540 03052 7511 -"7
2541 03053 5277 JMP LOGIN1 /BAD JOB # - PICK ONE FOR HIM
2542 03054 7450 SNA /TRYING TO GET JOB 0?
2543 03055 5275 JMP LOGER3 /YES - SHOOT HIM DOWN
/TSS-8.25 CONFIGURATION FOR UWM Page 64
2544 03056 3072 DCA IOTP7
2545 03057 7320 CLA CLL CML
2546 03060 1072 TAD IOTP7
2547 03061 6211 DATFLD
2548 03062 1165 TAD MJBMAX
2549 03063 7660 SZA SNL CLA /IS IT A LEGAL JOB #?
2550 03064 5275 JMP LOGER3 /NO - "ILLEGAL REQUEST"
2551 03065 7240 CLA CMA
2552 03066 1072 TAD IOTP7
2553 03067 1163 TAD JOBTBA
2554 03070 3013 DCA IX4 /YES - GET THE 'JOBTBL' ENTRY
2555 03071 1413 TAD I IX4
2556 03072 7650 SNA CLA /IS THERE ALREADY A JOB THERE?
2557 03073 5321 JMP LOGIN4 /NO - HE CAN HAVE THE SLOT
2558
2559 03074 1373 LOGER1, TAD LOGME0 /"ALREADY LOGGED IN"
2560 03075 1173 LOGER3, TAD ILLMSG /"ILLEGAL REQUEST"
2561 03076 5545 JMP I COMERA
2562 /
2563 /HE DIDN'T SPECIFY A JOB # IN HIS LOGIN COMMAND SO
2564 /WE USE THE FIRST AVAILABLE JOB SLOT.
2565 03077 1163 LOGIN1, TAD JOBTBA
2566 03100 3013 DCA IX4 /SET POINTER TO 'JOBTBL'
2567 03101 6211 DATFLD
2568 03102 1165 TAD MJBMAX
2569 03103 3052 DCA CHDFA / & THE NUMBER OF SLOTS
2570 03104 1413 LOGIN2, TAD I IX4
2571 03105 7650 SNA CLA /IS THIS JOB SLOT EMPTY?
2572 03106 5315 JMP LOGIN3 /YES - WE HAVE A JOB NUMBER
2573 03107 2052 ISZ CHDFA /NO - DECREMENT COUNTER
2574 03110 5304 JMP LOGIN2
2575 03111 1374 LOGER2, TAD LOGME1 /TYPE "SYSTEM FULL"
2576 03112 1375 LOGER4, TAD LOGME4 / OR "SYSTEM ACCESS RESTRICTED"
2577 03113 1376 LOGER5, TAD LOGME5 / OR "PRECEDE LOGIN BY ^B"
2578 03114 5545 JMP I COMERA
2579
2580 03115 1163 LOGIN3, TAD JOBTBA
2581 03116 7041 CIA
2582 03117 1013 TAD IX4
2583 03120 3072 DCA IOTP7 /SAVE THE JOB #
2584 /
2585 /AT THIS POINT, WE HAVE A JOB NUMBER IN 'IOTP7'.
2586 /IF WE HAVE SUFFICIENT FREE-CORE TO BUILD HIS TABLES,
2587 /THE ONLY THING THAT CAN STOP HIM NOW IS A BAD
2588 /ACCOUNT NUMBER / PASSWORD COMBINATION.
2589 03121 6201 LOGIN4, CDF
2590 03122 1461 TAD I FRECTA /GET THE NUMBER OF FREE-CORE BLOCKS
2591 03123 1377 TAD LOGMIN
2592 03124 7710 SPA CLA /ENOUGH AVAILABLE TO LOG IN?
2593 03125 5311 JMP LOGER2 /NO - SAY "SYSTEM FULL"
2594 03126 1072 TAD IOTP7
2595 03127 3050 DCA SIJOB /SET OUR JOB NUMBER
2596 03130 1050 TAD SIJOB
2597 03131 1561 TAD I JOBA
2598 03132 3561 DCA I JOBA
2599 03133 1053 TAD COMDB0
2600 03134 7001 IAC
/TSS-8.25 CONFIGURATION FOR UWM Page 65
2601 03135 3052 DCA CHDFA /POINTS TO JOB # IN DDB
2602 03136 6211 DATFLD
2603 03137 1452 TAD I CHDFA
2604 03140 0032 AND C7700
2605 03141 1050 TAD SIJOB
2606 03142 3452 DCA I CHDFA /SET THE JOB # IN THE INPUT DDB
2607 03143 6211 DATFLD
2608 03144 1050 TAD SIJOB /PUT ENTRY IN TTYTBL
2609 03145 1170 TAD TTYTBA
2610 03146 3052 DCA CHDFA
2611 03147 1051 TAD SIKBD
2612 03150 3452 DCA I CHDFA /STORE UNIT # IN TTYTBL
2613 03151 1455 TAD I COMRDB
2614 03152 7440 SZA /ALREADY HAVE AN OUTPUT DDB?
2615 03153 5360 JMP LOGN4A /YES
2616 03154 1055 TAD COMRDB
2617 03155 6221 CHDF
2618 03156 4522 GETFBL /NO - GET A FREE BLOCK
2619 03157 4532 REBOOT /OOPS *****
2620 03160 3010 LOGN4A, DCA IX1
2621 03161 1050 TAD SIJOB
2622 03162 6211 DATFLD
2623 03163 3410 DCA I IX1 /SET THE JOB NUMBER INTO IT
2624 03164 6221 CHDF
2625 03165 1013 TAD IX4
2626 03166 4522 GETFBL /GET JOB STATUS BLOCK #0
2627 03167 4532 REBOOT /BUT WE ALREADY CHECKED 'FRECNT' - ERROR *****
2628 03170 5771 JMP I .+1 /ON TO THE NEXT PAGE
2629 03171 3200 LOGIN5
2630
2631 IFNZRO CTRLB-2 <GLITCH>
2632 0014 LOGCTB= C0002 /CTRLB
2633 IFNZRO DFORC-4 <GLITCH>
2634 0016 LOGFRC= C0004 /DFORC
2635 03172 0036 LOGMSK, F1OFFJ /ACCOUNT NUMBER MASK
2636 03173 1265 LOGME0, LOGE0-ILLREQ
2637 03174 0604 LOGME1, LOGE1-LOGE4
2638 03175 4171 LOGME4, LOGE4-LOGE5
2639 03176 4351 LOGME5, LOGE5
2640 03177 7773 LOGMIN, -STOMIN /MINIMUM FREE STORAGE FOR NEW JOB
/TSS-8.25 CONFIGURATION FOR UWM Page 66
2641 PAGE
2642 /
2643 /COMPLETION OF THE 'PRE-FIP' LOGIN HANDLING
2644 03200 3233 LOGIN5, DCA LOGST0 /SAVE THE POINTER TO STATUS BLOCK #0
2645 03201 1233 TAD LOGST0
2646 03202 4522 GETFBL /GET JOB STATUS BLOCK #1
2647 03203 4532 REBOOT
2648 03204 4522 GETFBL /GET JOB STATUS BLOCK #2
2649 03205 4532 REBOOT / ***** SHOULD NOT HAPPEN!! *****
2650 03206 7200 CLA
2651 03207 1233 TAD LOGST0 /GET THE LOCATION OF STATUS BLK #0
2652 03210 6211 DATFLD
2653 03211 3562 DCA I JOBDAT / AND SET 'JOBDAT'
2654 03212 4525 GETTBA /NOW STORE HIS ACCOUNT #
2655 03213 0015 JOBACT
2656 03214 3072 DCA IOTP7 /GET THE POINTER
2657 03215 1065 TAD IOTP2 / & HIS ACCOUNT #
2658 03216 6211 DATFLD
2659 03217 3472 DCA I IOTP7 /THEN STORE IT
2660 03220 4525 GETTBA
2661 03221 0007 JOBLNK
2662 03222 4522 GETFBL /GET AN IOT LINKAGE BLOCK
2663 03223 4532 REBOOT / ***** SHOULD NOT HAPPEN!! *****
2664 03224 3242 DCA LOGPMA
2665 03225 2233 ISZ LOGST0
2666 03226 6202 CIF
2667 03227 4503 BLT /NOW INITIALIZE JSB #0
2668 03230 6221 CHDF /SOURCE FLD
2669 03231 4071 LOGSR0 /SOURCE ADDR
2670 03232 6211 DATFLD /DEST FLD
2671 03233 0000 LOGST0, 0 /DEST ADDR
2672 03234 7773 -5
2673 03235 6202 CIF
2674 03236 4503 BLT /SET UP THE IOT LINKAGE
2675 03237 6221 CHDF /SOURCE FLD
2676 03240 0063 IOTPAR+1 /SOURCE ADDR
2677 03241 6211 DATFLD /DEST FLD
2678 03242 0000 LOGPMA, 0 /DEST ADDR
2679 03243 7770 -10 /-COUNT
2680 03244 5505 CALFIP /GO CHECK HIS ACCOUNT # AND PASSWORD
/TSS-8.25 CONFIGURATION FOR UWM Page 67
2681 /
2682 /ERROR RETURN FROM LOGIN IOT IN FIP - UNDO ALL OUR TABLES
2683 03245 4250 LOGINE, JMS LOGIE0
2684 03246 4542 SIERR
2685 03247 5545 JMP I COMERA
2686
2687 03250 0000 LOGIE0, 0
2688 03251 6211 DATFLD
2689 03252 1053 TAD COMDB0
2690 03253 7450 SNA
2691 03254 5262 JMP LOGIE1
2692 03255 7001 IAC
2693 03256 3063 DCA IOTP0
2694 03257 1463 TAD I IOTP0
2695 03260 0032 AND C7700
2696 03261 3463 DCA I IOTP0
2697 03262 1455 LOGIE1, TAD I COMRDB
2698 03263 7450 SNA /ANY OUTPUT DDB NOW?
2699 03264 5267 JMP LOGIE2 /NO
2700 03265 3010 DCA IX1
2701 03266 3410 DCA I IX1 /YES - CLEAR THE JOB NUMBER
2702 03267 6201 LOGIE2, CDF
2703 03270 1561 TAD I JOBA /SET JOB = 0
2704 03271 0032 AND C7700
2705 03272 3561 DCA I JOBA
2706 03273 1050 TAD SIJOB
2707 03274 1163 TAD JOBTBA /SET JOBTBL ENTRY=0
2708 03275 3052 DCA CHDFA
2709 03276 6211 DATFLD
2710 03277 3452 DCA I CHDFA
2711 03300 1562 TAD I JOBDAT /RETURN JOB STATUS BLOCKS
2712 03301 6221 CHDF
2713 03302 4535 RETBKS
2714 03303 6211 DATFLD
2715 03304 3562 DCA I JOBDAT
2716 03305 6221 CHDF
2717 03306 3050 DCA SIJOB
2718 03307 5650 JMP I LOGIE0
2719
2720 03310 6135 LOGUNA, UNACCT
2721
2722 /
2723 /NORMAL RETURN FOR FIP LOGIN - CHECK THE AC STATUS AND
2724 /TYPE THE SYSTEM INTRO MESSAGE.
2725 03311 4526 LOGINF, GETWRD
2726 03312 0013 JOBREG+2
2727 03313 7650 SNA CLA /ANY PROBLEM?
2728 03314 5320 JMP LOGIF1 /NO
2729 03315 4250 JMS LOGIE0 /YES - UN-BUILD OUR TABLES
2730 03316 1310 TAD LOGUNA
2731 03317 5545 JMP I COMERA /"UNAUTHORIZED ACCOUNT"
2732
2733 03320 4500 LOGIF1, ASCOUT /FINISH TYPING MESSAGES ON LOGIN
2734 03321 7621 VERSMA, VERSIM /FIRST OUTPUT VERSION #
2735 03322 7000 NOP
2736 03323 1050 TAD SIJOB /NOW OUTPUT JOB#
2737 03324 4760 JMS I LOGUSR / AND THE 'USER' INFO
/TSS-8.25 CONFIGURATION FOR UWM Page 68
2738 03325 7000 NOP
2739 03326 4500 ASCOUT /A FEW SPACES
2740 03327 3573 SPACES
2741 03330 7000 NOP
2742 03331 1361 TAD LOGFA2 /FUDGE COMRET TO GO TO LOGIF2 ON COMPLETION
2743 03332 3151 DCA COMEXA / OF TIME EVALUATION
2744 03333 1050 TAD SIJOB /PUT "LOGIN" IN PRGTBL FOR THIS JOB
2745 03334 1050 TAD SIJOB
2746 03335 1050 TAD SIJOB /PRGTBL INDEX IS 3*JOB#
2747 03336 1352 TAD LOGPRG /START OF PRGTBL-3-1
2748 03337 3010 DCA IX1
2749 03340 6211 DATFLD
2750 03341 1353 TAD LOGN5A /LO
2751 03342 3410 DCA I IX1
2752 03343 1354 TAD LOGN5B /GI
2753 03344 3410 DCA I IX1
2754 03345 1355 TAD LOGN5C /N
2755 03346 3410 DCA I IX1
2756 03347 6221 CHDF
2757 03350 5751 JMP I .+1 /NOW GO DO TIME EVALUATION
2758 03351 5651 TIME3
2759
2760 03352 2770 LOGPRG, PRGTBL-3-1
2761 03353 5457 LOGN5A, 5457 /LO
2762 03354 4751 LOGN5B, 4751 /GI
2763 03355 5600 LOGN5C, 5600 /N
2764
2765 03356 1321 VERSIN, TAD VERSMA /TYPE OUT VERSION #
2766 03357 5551 JMP I COMEXA
2767
2768 03360 4515 LOGUSR, USER0 /PRINT USER # LINE
2769 03361 4740 LOGFA2, LOGIF2
2770
2771 /THIS HANDLES THE 'EXTEND' AND 'REDUCE' COMMANDS
2772 03362 4542 SIERR
2773 03363 5560 JMP I IOTEND
2774 EXTEND, /SAME AS REDUCE EXCEPT FOR IOT
2775 03364 4527 REDUCE, NUMBIN /GET THE FILE #
2776 03365 7511 -"7
2777 03366 5545 JMP I COMERA /BAD NUMBER
2778 03367 0015 AND C0003
2779 03370 3064 DCA IOTP1 /STORE THE FILE I.D.
2780 03371 4527 NUMBIN
2781 03372 7507 -"9
2782 03373 5545 JMP I COMERA
2783 03374 3065 DCA IOTP2 / AND THE NUMBER OF SEGMENTS TO ADD/DELETE
2784 03375 5564 JMP I LNGIOT /THEN OFF TO FIP
/TSS-8.25 CONFIGURATION FOR UWM Page 69
2785 PAGE
2786
2787 03400 3400 ASSTBL, .
2788 03401 7456 -"R
2789 03402 7460 -"P
2790 03403 7467 -"I
2791 03404 7464 -"L
2792 03405 7475 -"C
2793 03406 7474 ASSD, -"D
2794 03407 0000 0
2795 03410 2370 ASSCAL, IOTSET
2796 03411 7765 ASGOFF, ASSD-ASSTBL-1-20 /OFFSET TO GET DECTAPE DEVICE CODE
2797
2798 03412 4542 SIERR
2799 03413 5312 JMP ASSIGF
2800 03414 4507 ASSIGN, CHKIO
2801 03415 4510 CLRPRV /MAKE SURE HE CAN'T GET 'PRIVILEGED' DEVICES
2802 03416 4404 SKIP /GET TO THE NEXT NON-BLANK CHARACTER
2803 03417 5545 JMP I COMERA /NONE - ERROR
2804 03420 1200 TAD ASSTBL
2805 03421 3065 DCA IOTP2
2806 03422 2065 ASSIG2, ISZ IOTP2
2807 03423 1465 TAD I IOTP2
2808 03424 7450 SNA
2809 03425 5361 JMP ASSIG4
2810 03426 1073 TAD CHAR
2811 03427 7640 SZA CLA /MATCH?
2812 03430 5222 JMP ASSIG2 /NO
2813 03431 1073 TAD CHAR /YES. DECTAPE?
2814 03432 1206 TAD ASSD
2815 03433 7640 SZA CLA
2816 03434 5247 JMP ASSIG3 /NO
2817 03435 3073 DCA CHAR / (CLEAR SO NUMBIN WILL 'SKIP')
2818 03436 4527 NUMBIN /YES. GET UNIT #
2819 03437 7511 -"7
2820 03440 5271 JMP ASSIG6 /HE WANTS US TO CHOOSE FOR HIM
2821 03441 3064 ASSIG7, DCA IOTP1
2822 03442 1064 TAD IOTP1
2823 03443 0033 AND C7770
2824 03444 7640 SZA CLA /IS UNIT # .LE. 7?
2825 03445 5361 JMP ASSIG4 /NO...ERROR
2826 03446 1211 TAD ASGOFF /APPLY AN OFFSET TO GET THE DEVICE CODE
2827 03447 1200 ASSIG3, TAD ASSTBL
2828 03450 7040 CMA
2829 03451 1065 TAD IOTP2
2830 03452 1064 TAD IOTP1
2831 03453 1030 TAD C4000
2832
2833 03454 3064 ACSET, DCA IOTP1 /SAVE AC IN BOTH USER'S AC AND PC
2834 03455 4525 GETTBA
2835 03456 0011 JOBREG
2836 03457 3052 DCA CHDFA
2837 03460 1064 TAD IOTP1
2838 03461 6211 DATFLD
2839 03462 3452 DCA I CHDFA
2840 03463 2052 ISZ CHDFA
2841 03464 2052 ISZ CHDFA /NOW POINTS TO USERS AC
/TSS-8.25 CONFIGURATION FOR UWM Page 70
2842 03465 1064 TAD IOTP1
2843 03466 3452 DCA I CHDFA
2844 03467 6221 CHDF
2845 03470 5610 JMP I ASSCAL
2846
2847 03471 1350 ASSIG6, TAD ASSDTA /POSITION OF DTA IN DEVTBL-1
2848 03472 3011 DCA IX2
2849 03473 1351 TAD ASSCNT /(-) NUMBER OF DRIVES TO CHECK
2850 03474 3010 DCA IX1
2851 03475 6211 DATFLD
2852 03476 1411 TAD I IX2 /PICK UP DEVTBL ENTRY
2853 03477 7650 SNA CLA /AVAILABLE?
2854 03500 5306 JMP ASSG60 /YES
2855 03501 2010 ISZ IX1 /NO...TRY THE NEXT ONE
2856 03502 5276 JMP .-4
2857 03503 7200 ASSIG8, CLA
2858 03504 1346 TAD ASSNON
2859 03505 5545 JMP I COMERA /"NO SUCH DEVICE"
2860
2861 03506 6221 ASSG60, CHDF
2862 03507 1010 TAD IX1 /GOT ONE; UNIT # IN BITS 8-11 OF IX1
2863 03510 0021 AND C0007
2864 03511 5241 JMP ASSIG7
2865
2866
2867 03512 4526 ASSIGF, GETWRD /HOW DID WE FARE IN FIP
2868 03513 0013 JOBREG+2
2869 03514 7450 SNA
2870 03515 5747 JMP I ASSG9A /WE GOT IT; NOW TELL USER
2871 03516 7510 SPA
2872 03517 5303 JMP ASSIG8 /ASSIGNMENT FAILED. TOUGH!
2873 03520 3063 DCA IOTP0
2874 03521 1063 TAD IOTP0
2875 03522 1344 TAD C7701
2876 03523 7650 SNA CLA /IS THE OWNER JOB "77"?
2877 03524 5303 JMP ASSIG8 /YES; IT REALLY DOESN'T EXIST
2878 03525 4500 ASCOUT
2879 03526 6161 CRLF
2880 03527 7000 NOP
2881 03530 1063 TAD IOTP0 /NO; SOMEONE REAL OWNS IT
2882 03531 4743 JMS I ASSUPN / SO TYPE INFO ABOUT HIM
2883 03532 7000 NOP
2884 03533 4500 ASCOUT
2885 03534 2565 HASITM
2886 03535 7000 NOP
2887 03536 4745 JMS I ASSUNA /TYPE OUT DEVICE NAME
2888 03537 4500 ASCOUT
2889 03540 6161 CRLF
2890 03541 7000 NOP
2891 03542 5551 JMP I COMEXA
2892
2893 03543 4515 ASSUPN, USER0
2894
2895 03544 7701 C7701, 7701 /-77
2896 03545 1542 ASSUNA, ASSUNI
2897 03546 7007 ASSNON, NONSUC /NO SUCH DEVICE
2898 03547 1523 ASSG9A, ASSIG9
/TSS-8.25 CONFIGURATION FOR UWM Page 71
2899 03550 2661 ASSDTA, DEVTBE+20-1+DTAMIN
2900 03551 7772 ASSCNT, -10+DTAMIN
/TSS-8.25 CONFIGURATION FOR UWM Page 72
2901
2902 03552 4542 SIERR
2903 03553 5355 JMP RELF
2904 03554 5214 RELEAS, JMP ASSIGN
2905
2906 03555 4526 RELF, GETWRD
2907 03556 0013 JOBREG+2
2908 03557 7650 SNA CLA
2909 03560 5551 JMP I COMEXA
2910 03561 1173 ASSIG4, TAD ILLMSG /"ILLEGAL REQUEST"
2911 03562 5545 JMP I COMERA
2912
2913 /ROUTINE TO GET A FILENAME AND CHECK FOR A NULL NAME
2914 03563 0000 NULLNA, 0
2915 03564 1056 TAD COMBFA
2916 03565 4543 TEXTS /GET THE NAME
2917 03566 7041 CIA
2918 03567 1056 TAD COMBFA
2919 03570 7650 SNA CLA /WAS ANYTHING FOUND?
2920 03571 5545 JMP I COMERA /NO - ERROR!
2921 03572 5763 JMP I NULLNA
2922
2923 03573 0240 SPACES, 240;240;240
03574 0240
03575 0240
2924 03576 0240 SPACE, 240;0
03577 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 73
2925 PAGE
2926
2927 03600 4542 SIERR
2928 03601 5560 JMP I IOTEND
2929 03602 4527 FOPEN, NUMBIN /FILE #
2930 03603 7511 -"7
2931 03604 5545 JMP I COMERA
2932 03605 0015 AND C0003
2933 03606 3064 DCA IOTP1
2934 03607 4524 GETNAM /GET THE FILENAME AND CHECK FOR A NULL NAME
2935 03610 4501 ASCSIX
2936 03611 6204 COMBUF-1
2937 03612 0065 IOTP3-1
2938 03613 4516 ENDTST
2939 03614 5220 JMP FOPEN1
2940 03615 4477 ACCTIN /ACCOUNT #
2941 03616 7410 SKP
2942 03617 3065 DCA IOTP2
2943 03620 4525 FOPEN1, GETTBA
2944 03621 0007 JOBLNK
2945 03622 4522 GETFBL
2946 03623 5512 COMWAT /NONE. TRY LATER
2947 03624 3232 DCA FOPEN2
2948 03625 6202 CIF
2949 03626 4503 BLT
2950 03627 6221 CHDF /SOURCE FLD
2951 03630 0063 IOTPAR+1 /SOURCE ADDR
2952 03631 6211 DATFLD /DEST FLD
2953 03632 0000 FOPEN2, 0 /DEST ADDR
2954 03633 7770 -10 /-COUNT
2955 03634 5505 CALFIP
2956
2957 03635 4542 SIERR
2958 03636 5560 JMP I IOTEND
2959 03637 4524 CREATE, GETNAM /GET THE FILENAME
2960 03640 4501 ASCSIX
2961 03641 6204 COMBUF-1
2962 03642 0063 IOTP1-1
2963 03643 5564 JMP I LNGIOT
/TSS-8.25 CONFIGURATION FOR UWM Page 74
2964
2965 /THIS HANDLES THE PROGRAMMATIC 'HLT'. WE JUST CALL
2966 /THE SUBROUTINE TO EXECUTE THE 'S' COMMAND & CLEAR
2967 /THE 'JSHLT' BIT IN HIS JOB STATUS WORD.
2968 03644 4251 PRGHLT, JMS SCOMND /STOP HIS PROGRAM
2969 /? DECRCT /JUST DECREMENT THE COUNT (IF HLT CLEARS INPUT)
2970 03645 7000 NOP
2971 03646 5517 EXIT / AND EXIT
2972
2973 /
2974 /THIS HANDLES THE 'S' COMMAND. WE SIMPLY STOP THE
2975 /EXECUTION OF THE CURRENTLY RUNNING PROGRAM.
2976 03647 4251 S, JMS SCOMND /JUST CALL OUR 'S' SUBROUTINE
2977 03650 5551 JMP I COMEXA /THEN EXIT
2978
2979 03651 0000 SCOMND, 0
2980 03652 4526 GETWRD /OK, IS HE ACTIVE ALREADY?
2981 03653 0000 JOBSTS
2982 03654 0326 AND SBIT1 /TURN OFF HIS RUN BITS
2983 03655 6211 DATFLD
2984 03656 3472 DCA I IOTP7
2985 03657 1072 TAD IOTP7
2986 03660 3071 DCA STEMP
2987 03661 6221 CHDF
2988 03662 4526 GETWRD /GET HIS DEVICE-WAIT WORD
2989 03663 0004 JOBDWT
2990 03664 6211 DATFLD
2991 03665 0021 AND C0007
2992 03666 1271 TAD .+3 /FORM THE APPROPRIATE DISPATCH
2993 03667 3270 DCA .+1
2994 03670 0000 .-.
2995 03671 5672 JMP I .+1 /NORMAL EXIT IF NO DEVICE WAITS
2996 03672 3702 SEXIT
2997 IFNZRO TC01 <
2998 03673 3731 WAIT1
2999 03674 3760 WAIT2 >
3000 IFZERO TC01 <
3001 SEXIT
3002 SEXIT >
3003 IFNZRO RK05+RK8E <
3004 03675 3736 WAIT3 >
3005 IFZERO RK05+RK8E <
3006 SEXIT >
3007 IFNZRO CDR <
3008 SEXIT > /NOTHING SPECIAL FOR THE CARD-READER NOW
3009 IFZERO CDR <
3010 03676 3702 SEXIT >
3011 03677 3702 SEXIT /CATCH ANY STRANGE STUFF THAT FLOATS BY
3012 03700 3702 SEXIT
3013 03701 3702 SEXIT
3014 03702 6211 SEXIT, DATFLD
3015 03703 1471 TAD I STEMP
3016 03704 0327 AND SBIT2 /CLEAR THE REST OF THE BITS IN STR0
3017 03705 3471 DCA I STEMP
3018 03706 1730 TAD I SDVRK5
3019 03707 7450 SNA /ANYONE HAVE THE RK05?
3020 03710 5651 JMP I SCOMND /NO - JUST EXIT
/TSS-8.25 CONFIGURATION FOR UWM Page 75
3021 03711 3010 DCA IX1
3022 03712 1410 TAD I IX1
3023 03713 7041 CIA
3024 03714 1050 TAD SIJOB
3025 03715 7640 SZA CLA /YES - DO WE HAVE IT?
3026 03716 5651 JMP I SCOMND /NO - RETURN
3027 03717 1730 TAD I SDVRK5
3028 03720 6221 CHDF
3029 03721 4537 RETDBL /YES - FREE IT
3030 03722 7200 CLA
3031 03723 6211 DATFLD
3032 03724 3730 DCA I SDVRK5 / AND CLEAR THE DEVTBL ENTRY
3033 03725 5651 JMP I SCOMND /RETURN
3034
3035 03726 3777 SBIT1, -JSRUN-1
3036 03727 3177 SBIT2, -JSRUN-JSHLT-JSPRIV-1
3037 03730 2670 SDVRK5, DEVTBE+30 /POINTER TO RK05 (DRIVE 0) ENTRY
3038 0071 STEMP= IOTP6
3039
3040 /CHECK TO SEE IF THE JOB HAS EITHER CONTROLLER
3041 03731 1765 WAIT1, TAD I DTJOBA
3042 03732 7041 CIA
3043 03733 1050 TAD SIJOB
3044 03734 7650 SNA CLA /DOES THIS JOB CURRENTLY HAVE THE CONTROLLER?
3045 03735 5302 JMP SEXIT /YES - LEAVE IT ALONE
3046 03736 1767 WAIT3, TAD I RKJOBA
3047 03737 7041 CIA
3048 03740 1050 TAD SIJOB
3049 03741 7650 SNA CLA /DOES THIS JOB HAVE THE CONTROLLER?
3050 03742 5512 COMWAT /YES - HAVE TO WAIT FOR IT TO FINISH
3051 03743 3472 DCA I IOTP7 /CLEAR THE DEVICE WAIT WORD
3052 03744 7344 CLA CLL CMA RAL
3053 03745 1072 TAD IOTP7
3054 03746 3072 DCA IOTP7 /NOW POINTS TO DEVICE STATUS
3055 03747 7240 CLA CMA
3056 03750 3472 DCA I IOTP7 /SET STATUS OF -1 TO SHOW TRANSFER INTERRUPTED
3057 03751 6221 WAIT2A, CHDF
3058 03752 4526 GETWRD /NOW GET HIS AC LOCATION
3059 03753 0013 JOBREG+2
3060 03754 6211 DATFLD
3061 03755 7200 CLA
3062 03756 3472 DCA I IOTP7 / AND CLEAR HIS AC
3063 03757 5302 JMP SEXIT
3064
3065 /STOP THE TIMER
3066 03760 1050 WAIT2, TAD SIJOB
3067 03761 6221 CHDF
3068 03762 6212 CIF 10
3069 03763 4766 JMS I DTSTP /USE FIELD 1 ROUTINE TO STOP THE TIMER
3070 03764 5351 JMP WAIT2A /DEVICE-WAIT AND STATUS ALREADY SET, GO CLEAR HIS AC
3071
3072 03765 0027 DTJOBA, DTJOB
3073 03766 2512 DTSTP, F1DTST
3074 03767 0045 RKJOBA, RKJOB
/TSS-8.25 CONFIGURATION FOR UWM Page 76
3075 PAGE
3076
3077 04000 3560 STBITS, -JSRUN-JSHLT-JSINER-7-1
3078 04001 0400 STCLR, JSPRIV
3079 04002 7774 STERF, -JSWAIT-JSERR-1
3080
3081 04003 4507 START, CHKIO /CAN'T START IF RK05 OR DTA ACTIVE
3082 04004 4525 GETTBA /GET PC LOCATION
3083 04005 0011 JOBREG
3084 04006 3065 DCA IOTP2
3085 04007 4510 CLRPRV /CLEAR 'PRIVILEGE' HERE (NOT FOR 'R' OR 'RUN')
3086 04010 4516 ENDTST /IS THERE ANY MORE TO COMMAND?
3087 04011 5246 JMP START1 /NO - JUST RE-START PROGRAM AT SAME LOCATION
3088 04012 4527 NUMBIN /YES - GET THE STARTING ADDRESS
3089 04013 7511 -"7
3090 04014 5545 JMP I COMERA /NOT A NUMBER - ERROR!
3091 04015 6211 START2, DATFLD
3092 04016 3465 DCA I IOTP2 /SET NEW PC
3093 04017 2065 ISZ IOTP2
3094 04020 3465 DCA I IOTP2 /ZERO LINK, MODE 'B', GT, & SC
3095 04021 2065 ISZ IOTP2
3096 04022 3465 DCA I IOTP2 / AND THE AC
3097 04023 2065 ISZ IOTP2
3098 04024 3465 DCA I IOTP2 / AND THE MQ
3099 04025 6221 CHDF
3100 04026 4525 GETTBA /GET START OF JSB #0
3101 04027 0000 JOBSTS
3102 04030 3244 DCA START3
3103 04031 6211 DATFLD
3104 04032 1644 TAD I START3 /GET 'STR0'
3105 04033 0201 AND STCLR / AND CLEAR EVERYTHING EXCEPT THE PRIVILEGE BIT
3106 04034 3644 DCA I START3
3107 04035 2244 ISZ START3 /THEN SET POINTER TO 'STR1'
3108 04036 6221 CHDF
3109 04037 6202 CIF
3110 04040 4503 BLT /RESET STATUS REGISTERS
3111 04041 6221 CHDF /SOURCE FLD
3112 04042 4072 LOGSR0+1
3113 04043 6211 DATFLD /DEST FLD
3114 04044 0000 START3, 0 /DEST ADDR
3115 04045 7774 -4
3116 04046 4526 START1, GETWRD /GET STATUS REGISTERS
3117 04047 0000 JOBSTS
3118 04050 0200 AND STBITS /CLEAR THE ERROR CODE
3119 04051 1030 TAD C4000 / & SET THE 'RUN' BIT
3120 04052 6211 DATFLD
3121 04053 3472 DCA I IOTP7 / AND PUT IT BACK
3122 04054 2072 ISZ IOTP7
3123 04055 1472 TAD I IOTP7 /GET STR1
3124 04056 0202 AND STERF /CLEAR THE 'ERROR' BIT
3125 04057 7001 IAC / & SET THE 'JSWAIT'
3126 04060 3472 DCA I IOTP7
3127 04061 2072 ISZ IOTP7
3128 04062 2072 ISZ IOTP7
3129 04063 7344 CLL CLA CMA RAL /JUST BE SURE THE 'JSWAIT'
3130 04064 0472 AND I IOTP7 / IS SET IN WAIT MASK #1
3131 04065 7001 IAC
/TSS-8.25 CONFIGURATION FOR UWM Page 77
3132 04066 3472 DCA I IOTP7
3133 04067 6221 CHDF
3134 04070 5551 JMP I COMEXA /THEN JUST EXIT
3135
3136 /THIS IS USED SIMPLY TO INITIALIZE THE STATUS REGISTERS
3137 /AND WAIT MASKS IN JOB STATUS BLOCK #0.
3138 04071 0000 LOGSR0, 0 /STR0
3139 04072 0001 JSWAIT /STR1
3140 04073 0000 0 /DEVICE STATUS
3141 04074 0001 JSWAIT /WAIT MASK 1
3142 04075 0000 0 /DEVICE WAIT MASK
/TSS-8.25 CONFIGURATION FOR UWM Page 78
3143 / SOMEDAY 8/E VERSION SHOULD PRINT OUT EAE MODE AS A OR B
3144 / AND ALSO THE GT FLAG. FOR NOW MODE IS BIT 0 OF SC.
3145 / 0-MODE A AND 1-MODE B.
3146 /
3147 04076 4500 WHERE, ASCOUT
3148 04077 6161 CRLF
3149 04100 5551 JMP I COMEXA
3150 04101 4303 JMS WHEPRT
3151 04102 5551 JMP I COMEXA
3152
3153 04103 0000 WHEPRT, 0
3154 04104 1347 TAD WHEVEC
3155 04105 3011 DCA IX2
3156 04106 1411 WHERE1, TAD I IX2 /GET NEXT ITEM
3157 04107 7450 SNA /END OF LIST?
3158 04110 5703 JMP I WHEPRT /YES - RETURN
3159 04111 3315 DCA WHERE2
3160 04112 1411 TAD I IX2
3161 04113 3320 DCA WHERE3
3162 04114 4500 ASCOUT /TYPE THE LABEL
3163 04115 0000 WHERE2, 0
3164 04116 5703 JMP I WHEPRT /NO ROOM - JUST RETURN
3165 04117 4526 GETWRD /NOW GET THE WORD
3166 04120 0000 WHERE3, 0
3167 04121 3320 DCA WHERE3
3168 04122 1315 TAD WHERE2
3169 04123 7041 CIA
3170 04124 1354 TAD WHEVL
3171 04125 7640 SZA CLA /IS IT THE LINK?
3172 04126 5340 JMP WHERE5 /NO
3173 04127 1320 TAD WHERE3 /YES - JUST GET ONE BIT
3174 04130 7106 CLL RTL / AWAY FROM MODE, GT, & SC
3175 04131 7204 CLA RAL
3176 04132 4530 OCTASC /CONVERT IT TO ASCII
3177 04133 6204 COMBUF-1
3178 04134 4500 ASCOUT / AND TYPE IT
3179 04135 6210 COMBUF+3
3180 04136 5703 JMP I WHEPRT /NO ROOM
3181 04137 5306 JMP WHERE1 /THEN GO GET THE NEXT
3182 04140 1320 WHERE5, TAD WHERE3 /RE-GET THE VALUE
3183 04141 4530 OCTASC / AND CONVERT IT TO ASCII
3184 04142 6204 COMBUF-1
3185 04143 4500 ASCOUT / AND TYPE IT
3186 04144 6205 COMBUF
3187 04145 5703 JMP I WHEPRT
3188 04146 5306 JMP WHERE1 /THEN CONTINUE
3189
3190 04147 4147 WHEVEC, .
3191 04150 5773 WHERPC
3192 04151 0011 JOBREG
3193 04152 1372 WHERAC
3194 04153 0013 JOBREG+2
3195 04154 5444 WHEVL, WHERLK
3196 04155 0012 JOBREG+1
3197 04156 5450 WHERSW
3198 04157 0010 JOBSWR
3199 IFNZRO MQREG <
/TSS-8.25 CONFIGURATION FOR UWM Page 79
3200 04160 2166 WHERMQ
3201 04161 0014 JOBEAE >
3202 IFNZRO EAE <
3203 WHERSC
3204 JOBREG+1 >
3205 04162 0000 0
/TSS-8.25 CONFIGURATION FOR UWM Page 80
3206
3207 /ROUTINE TO HANDLE THE 'RENAME' COMMAND.
3208
3209 04163 4542 SIERR
3210 04164 5560 JMP I IOTEND
3211 04165 4527 RENAME, NUMBIN /GET THE FILE I.D.
3212 04166 7511 -"7
3213 04167 5545 JMP I COMERA
3214 04170 0015 AND C0003
3215 04171 3064 DCA IOTP1
3216 04172 4524 GETNAM /NOW GET THE NEW NAME
3217 04173 4501 ASCSIX / AND CONVERT IT TO 6-BIT
3218 04174 6204 COMBUF-1
3219 04175 0064 IOTP2-1
3220 04176 5564 JMP I LNGIOT /THEN OFF TO FIP
/TSS-8.25 CONFIGURATION FOR UWM Page 81
3221 PAGE
3222 /
3223 /ROUTINE TO FORCE A STRING INTO AN INPUT BUFFER
3224 /USER MUST BE LOGGED-IN ON A SYSTEM ACCOUNT.
3225
3226 04200 4506 FORSE, CHKACT /CHECK TYPE OF USER
3227 04201 5545 JMP I COMERA /ORDINARY USER - ERROR!
3228 04202 1334 TAD FORDIF /SYSTEM OPERATOR - ALLOW ONLY ACTUAL TTY'S
3229 04203 1156 TAD DEVTND /MANAGER - ALLOW ANY CONFIGURED LINE
3230 04204 3064 DCA FORMX /SAVE THE MAXIMUM ALLOWED LINE #
3231 04205 4527 NUMBIN /GET CONSOLE #
3232 04206 7511 -"7
3233 04207 5545 JMP I COMERA /BAD CONVERSION, QUIT
3234 04210 3321 DCA FORDEV
3235 04211 1321 TAD FORDEV
3236 04212 7710 SPA CLA /IS IT CLOSE?
3237 04213 5545 JMP I COMERA /NO - ERROR!!
3238 04214 1321 TAD FORDEV
3239 04215 7104 CLL RAL
3240 04216 1155 TAD DEVTBA /GET THE DEVTBL POINTER
3241 04217 3321 DCA FORDEV / FOR THE INPUT DDB
3242 04220 1321 TAD FORDEV
3243 04221 1064 TAD FORMX
3244 04222 7700 SMA CLA /IS IT A LEGAL KEYBOARD # ?
3245 04223 5545 JMP I COMERA /NO
3246 04224 6211 DATFLD
3247 04225 1721 TAD I FORDEV
3248 04226 6221 CHDF
3249 04227 7640 SZA CLA /DOES IT ALREADY HAVE AN INPUT DDB?
3250 04230 5244 JMP FOR1 /YES
3251 04231 1321 TAD FORDEV /NO; GET ONE
3252 04232 6202 CIF
3253 04233 4521 GETDDB
3254 04234 5545 JMP I COMERA /NONE TO GET- NEVER HAPPENS
3255 04235 6211 DATFLD
3256 04236 1721 TAD I FORDEV /GET THE DDB LOCATION
3257 04237 3052 DCA CHDFA
3258 04240 1452 TAD I CHDFA
3259 04241 1027 TAD COMDSI / & SET THE 'DSI' BIT
3260 04242 3452 DCA I CHDFA
3261 04243 6221 CHDF
3262 /
3263 /HERE WE CHECK TO PREVENT A MERE OPERATOR FROM FORCING
3264 /A MANAGER'S ACCOUNT NUMBER.
3265 04244 4506 FOR1, CHKACT /CHECK OUR OWN ACCOUNT FIRST
3266 04245 4532 REBOOT
3267 04246 7410 SKP /OPERATOR - CHECK THE FORCEE
3268 04247 5271 JMP FOR3 /MANAGER - HE CAN FORCE ANYONE
3269 04250 6211 DATFLD
3270 04251 1721 TAD I FORDEV /GET THE DDB
3271 04252 3010 DCA IX1
3272 04253 1410 TAD I IX1 /GET THE JOB NUMBER
3273 04254 7440 SZA
3274 04255 4541 SETJOB / AND SET UP FOR OUR CHECK
3275 04256 5262 JMP .+4 /NO JOB ACTIVE - CAN'T FORCE
3276 04257 4506 CHKACT /NOW CHECK THE OWNER'S ACCOUNT
3277 04260 7000 NOP
/TSS-8.25 CONFIGURATION FOR UWM Page 82
3278 04261 5267 JMP FOR2 /OK - HE'S MERELY MORTAL
3279 04262 4541 SETJOB /BAD - RESET 'JOBDAT'
3280 04263 4532 REBOOT
3281 04264 1266 TAD .+2
3282 04265 5545 JMP I COMERA /HE'S TRYING TO FORCE A MANAGER
3283 04266 7524 FORMSG
3284
3285 04267 4541 FOR2, SETJOB /RESTORE 'JOBDAT'
3286 04270 4532 REBOOT
3287 04271 4404 FOR3, SKIP /IGNORE ANY SPACES
3288 04272 5551 JMP I COMEXA
3289 04273 6211 DATFLD
3290 04274 1721 TAD I FORDEV
3291 04275 3052 DCA CHDFA /POINTS TO DDB WORD 0
3292 04276 1452 TAD I CHDFA
3293 04277 0331 AND FORCLR /CLEAR THE 'FORCED' FLAG
3294 04300 1332 TAD FORFLG / AND THEN SET IT
3295 04301 3452 DCA I CHDFA
3296 04302 1073 TAD CHAR
3297 04303 1336 FOR4, TAD FORMSL
3298 04304 7640 SZA CLA /IS IT A SLASH (INDICATING CTRL)?
3299 04305 5313 JMP FOR5 /NO
3300 04306 4511 COMGET /YES - GET THE NEXT CHARACTER
3301 04307 5551 JMP I COMEXA / (ALSO SHOULD NEVER HAPPEN)
3302 04310 4735 JMS I FORFLC /CONVERT THIS TO UPPER-CASE
3303 04311 0333 AND FORCTL / AND MAKE IT A CTRL-CHARACTER
3304 04312 7410 SKP
3305 04313 1073 FOR5, TAD CHAR
3306 04314 6201 CDF
3307 04315 3444 DCA I TTYCHR /STORE THE CHARACTER FOR GIR
3308 04316 6221 CHDF
3309 04317 6202 CIF
3310 04320 4737 GIR /NOW PROCESS THE CHARACTER
3311 04321 0000 FORDEV, 0
3312 04322 5545 JMP I COMERA /NO ROOM - TAKE ERROR EXIT
3313 04323 7326 CLA CLL CML RTL
3314 04324 4516 ENDTST /LINE TERMINATOR?
3315 04325 5551 JMP I COMEXA /YES - WE'RE DONE
3316 04326 4511 COMGET /NO - GET THE NEXT CHARACTER
3317 04327 5551 JMP I COMEXA / (SHOULD NEVER HAPPEN)
3318 04330 5303 JMP FOR4
3319
3320 04331 7773 FORCLR, -DFORC-1
3321 04332 0000 FORFLG, 0 /CHANGE TO 'DFORC' (4) AND MGR CAN FORCE A LOGIN W/O PASSWORD
3322 04333 7677 FORCTL, -100-1
3323 04334 0012 FORDIF, NULINE+NULINE-FRCMAX-FRCMAX /FUDGE FACTOR FOR ACTUAL TTY'S
3324 04335 1645 FORFLC, FIXLC
3325 04336 7521 FORMSL, -"/ /INDICATES NEXT CHARACTER SHOULD BE CTRL
3326 0064 FORMX= IOTP1
3327 4737 GIR= JMS I .
3328 04337 6200 GIR00
3329
3330 04340 5457 LOGOMA, 5457 /LO
3331 04341 4757 4757 /GO
3332 04342 6564 6564 /UT
3333 04343 5744 ODTMA, 5744 /OD
3334 04344 6450 6450 /TH
/TSS-8.25 CONFIGURATION FOR UWM Page 83
3335 04345 5100 5100 /I
3336 04346 6371 SYSMA, 6371 /SY
3337 04347 6364 6364 /ST
3338 04350 4164 4164 /AT
3339
3340 04351 0320 LOGE5, "P;"R;"E;"C;"E;"D;"E;" ;"L;"O;"G;"I;"N;" ;"B;"Y;" ;"^;"B;0
04352 0322
04353 0305
04354 0303
04355 0305
04356 0304
04357 0305
04360 0240
04361 0314
04362 0317
04363 0307
04364 0311
04365 0316
04366 0240
04367 0302
04370 0331
04371 0240
04372 0336
04373 0302
04374 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 84
3341 PAGE
3342
3343 /THIS HANDLES THE 'F' COMMAND - WE PRINT OUT SOME
3344 /INFORMATION ABOUT THE FILE OPEN ON AN INTERNAL FILE #.
3345 04400 4542 SIERR
3346 04401 5210 JMP F2
3347 04402 4527 F, NUMBIN /INTERNAL FILE #
3348 04403 7511 -"7
3349 04404 5545 JMP I COMERA /NO NUMBER - ERROR!
3350 04405 0015 AND C0003
3351 04406 3064 DCA IOTP1
3352 04407 5564 JMP I LNGIOT
3353
3354 04410 4540 F2, RETPAR
3355 04411 4500 ASCOUT
3356 04412 6161 CRLF
3357 04413 7000 NOP
3358 04414 1064 TAD IOTP1 /ACCT #
3359 04415 7450 SNA
3360 04416 5551 JMP I COMEXA /FILE NOT OPEN
3361 04417 1034 TAD P7777
3362 04420 7640 SZA CLA /IS THIS A UFD?
3363 04421 5225 JMP F3 /NOPE
3364 04422 1065 TAD IOTP2 /YES - TYPE "NNNN <UFD>"
3365 04423 3064 DCA IOTP1
3366 04424 1272 TAD FMSGAD
3367 04425 1271 F3, TAD FIOT2 /SET SIXBIT MESSAGE ADDRESS
3368 04426 3242 DCA F4
3369 04427 1063 TAD IOTP0 /GET THE FIRST 'FINF' WORD
3370 04430 7700 SMA CLA /WAS THE FILE EXCLUSIVELY ASSIGNED?
3371 04431 5235 JMP .+4 /NO
3372 04432 4500 ASCOUT /YES - PRINT "X "
3373 04433 4477 FXMSG
3374 04434 7000 NOP
3375 04435 1064 TAD IOTP1
3376 04436 4530 OCTASC
3377 04437 6204 COMBUF-1
3378 04440 4260 JMS FOUT /TYPE THE ACCOUNT NUMBER
3379 04441 4673 JMS I FSIXAS /FILE NAME OR "<UFD>"
3380 04442 0000 F4, 0 / (6-BIT MESSAGE ADDRESS)
3381 04443 6204 COMBUF-1
3382 04444 4260 JMS FOUT / & TYPE IT
3383 04445 1070 TAD IOTP5
3384 04446 4530 OCTASC
3385 04447 6204 COMBUF-1
3386 04450 4260 JMS FOUT /TYPE THE EXTENSION & PROTECTION
3387 04451 1071 TAD IOTP6
3388 04452 4670 JMS I FDECOU /CONVERT THE SIZE TO DECIMAL ASCII
3389 04453 6204 COMBUF-1
3390 04454 4500 ASCOUT / AND TYPE IT
3391 04455 6205 COMBUF
3392 04456 5551 JMP I COMEXA
3393 04457 5551 JMP I COMEXA / & EXIT
3394
3395 /ROUTINE TO TYPE 'COMBUF' FOLLOWED BY A SPACE.
3396 04460 0000 FOUT, 0
3397 04461 4500 ASCOUT
/TSS-8.25 CONFIGURATION FOR UWM Page 85
3398 04462 6205 COMBUF
3399 04463 5660 JMP I FOUT
3400 04464 4500 ASCOUT
3401 04465 3576 SPACE
3402 04466 5660 JMP I FOUT
3403 04467 5660 JMP I FOUT
3404
3405 04470 6020 FDECOU, DECOUT
3406 04471 0065 FIOT2, IOTP2
3407 04472 4407 FMSGAD, FMSG-IOTP2
3408 04473 2527 FSIXAS, SIXASC
3409 04474 3465 FMSG, 3465; 4644; 3600 / "<UFD>" IN SIX-BIT
04475 4644
04476 3600
3410 04477 0330 FXMSG, "X;" ;0
04500 0240
04501 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 86
3411 /'USER' COMMAND - WE TYPE OUT THIS (OR ANY) JOB'S
3412 /JOB NUMBER AND ITS KEYBOARD NUMBER.
3413
3414 4460 USEJOB= FOUT
3415
3416 04502 4500 USER, ASCOUT /TELL USER WHERE HE IS
3417 04503 6161 CRLF
3418 04504 5551 JMP I COMEXA /NO ROOM, SO SKIP IT
3419 04505 4516 ENDTST /ANY MORE TO COMMAND?
3420 04506 5312 JMP .+4 /NO - ASSUME THIS JOB
3421 04507 4527 NUMBIN /NO; WHAT JOB THEN?
3422 04510 7511 -"7 /OCTAL JOB #
3423 04511 5545 JMP I COMERA /ILLEGAL NUMBER - ERROR!
3424 04512 4315 JMS USER0 /PRINT THE INFO
3425 04513 5545 JMP I COMERA /BAD NUMBER - ERROR
3426 04514 5551 JMP I COMEXA / AND EXIT
3427
3428 /ROUTINE TO PRINT THE 'USER' COMMAND INFO.
3429 04515 0000 USER0, 0
3430 04516 3260 DCA USEJOB
3431 04517 1260 TAD USEJOB
3432 04520 1165 TAD MJBMAX /-HIGHEST JOB #
3433 04521 7740 SMA SZA CLA /LEGAL JOB NUMBER?
3434 04522 5715 JMP I USER0 /NO - TAKE ERROR RETURN
3435 04523 2315 ISZ USER0
3436 04524 1260 TAD USEJOB
3437 04525 4541 SETJOB /SET UP 'JOBDAT'
3438 04526 5362 JMP USER1 /NOT LOGGED IN - SAY NOTHING
3439 04527 1072 TAD IOTP7 /GET THE JOB # SET BY 'SETJOB'
3440 04530 3260 DCA USEJOB / AND MAKE SURE WE USE THE SAME ONE
3441 04531 4500 ASCOUT /TYPE "JOB "
3442 04532 1362 JOBNO
3443 04533 5362 JMP USER1 /NO ROOM - JUST EXIT
3444 04534 1260 TAD USEJOB
3445 04535 4365 JMS USRPR /PRINT 2 OCTAL DIGITS
3446 04536 4500 ASCOUT
3447 04537 7473 LBRACK
3448 04540 5362 JMP USER1
3449 04541 4526 GETWRD /GET THE ACCOUNT NUMBER
3450 04542 0015 JOBACT
3451 04543 4530 OCTASC / CONVERT IT TO ASCII
3452 04544 6204 COMBUF-1
3453 04545 4500 ASCOUT / AND TYPE IT
3454 04546 6205 COMBUF
3455 04547 5362 JMP USER1
3456 04550 4500 ASCOUT
3457 04551 7476 RBRACK
3458 04552 5362 JMP USER1
3459 04553 1260 TAD USEJOB
3460 04554 1170 TAD TTYTBA /POINTS TO ENTRY IN TTYTBL
3461 04555 3064 DCA IOTP1
3462 04556 6211 DATFLD
3463 04557 1464 TAD I IOTP1 /GET TTY #
3464 04560 6221 CHDF
3465 04561 4365 JMS USRPR /TYPE THE 2 DIGIT KEYBOARD NUMBER
3466 04562 4541 USER1, SETJOB /RESTORE 'JOBDAT'
3467 04563 7000 NOP
/TSS-8.25 CONFIGURATION FOR UWM Page 87
3468 04564 5715 JMP I USER0 / & RETURN
3469
3470 /ROUTINE TO TYPE 2-DIGIT OCTAL NUMBER FROM THE AC.
3471 04565 0000 USRPR, 0
3472 04566 0023 AND C0037
3473 04567 4530 OCTASC
3474 04570 6204 COMBUF-1 /SNEAKY WAY TO SUPPRESS LEADING 00
3475 04571 4500 ASCOUT
3476 04572 6207 COMBUF+2
3477 04573 7000 NOP
3478 04574 5765 JMP I USRPR
/TSS-8.25 CONFIGURATION FOR UWM Page 88
3479 PAGE
3480
3481 /THIS CODE HANDLES THE 'R' AND 'RUN' COMMANDS.
3482 /CAUTION SHOULD BE EXERCISED WHEN CHANGING THIS CODE AS
3483 /IT IS ENTERED BY THOSE COMMANDS WHICH LOAD AND START
3484 /PARTICULAR SYSTEM PROGRAMS. ALSO, THIS CODE IS TIED CLOSELY
3485 /TO THE 'LOAD', 'SAVE', AND 'START' COMMAND HANDLERS.
3486
3487 IFNZRO LIBACT-2 <GLITCH>
3488
3489 04600 4542 RERR, SIERR
3490 04601 5545 JMP I COMERA
3491
3492 /THIS HANDLES THE "RUN" COMMAND.
3493 04602 5200 JMP RERR
3494 04603 5225 JMP R1
3495 04604 5605 RUN, JMP I .+1
3496 04605 5010 LOAD
3497
3498 /THIS HANDLES THE "R" COMMAND.
3499 04606 5200 JMP RERR
3500 04607 5225 JMP R1
3501 04610 7326 R, CLA CLL CML RTL /AC = 2 (SYSTEM LIBRARY ACCOUNT)
3502 04611 5612 JMP I .+1
3503 04612 5012 SAVE1
3504
3505 /THIS HANDLES THE AUTOMATIC "R" PERFORMED FOR
3506 /AN UNRECOGNIZED SYSTEM COMMAND.
3507 04613 5200 JMP RERR
3508 04614 5221 JMP AUTOR2
3509 04615 7326 AUTOR, CLA CLL CML RTL /AC = 2 (SYSTEM LIBRARY ACCOUNT)
3510 04616 3065 DCA IOTP2 /SET FOR THE SYSTEM LIBRARY
3511 04617 5620 JMP I .+1 / AND GO OPEN THE FILE
3512 04620 5020 AUTOR1
3513
3514 04621 4526 AUTOR2, GETWRD /GET THE RETURNED AC
3515 04622 0013 JOBREG+2
3516 04623 7640 SZA CLA /GOOD 'OPEN'?
3517 04624 5545 JMP I COMERA /NO - JUST ECHO THE COMMAND
3518
3519 04625 3344 R1, DCA RSTART /SAVE START-ADDRESS (USUALLY ZERO)
3520 04626 4526 GETWRD /RETURN FROM OPEN
3521 04627 0013 JOBREG+2
3522 04630 7640 SZA CLA /GOOD 'OPEN' STATUS?
3523 04631 5560 JMP I IOTEND /NO - PRINT ERROR MESSAGE
3524 04632 4525 GETTBA
3525 04633 0005 JOBSRA
3526 04634 3072 DCA IOTP7 /SET A POINTER TO THE RESTART-ADDRESS
3527 04635 1344 TAD RSTART
3528 04636 6211 DATFLD
3529 04637 3472 DCA I IOTP7 / AND INITIALIZE IT TO THE START-ADDR.
3530 04640 6221 CHDF
3531 04641 4525 GETTBA
3532 04642 0007 JOBLNK
3533 04643 4522 GETFBL /NOW LINK ON A PARAMETER BLOCK
3534 04644 5512 COMWAT
3535 04645 3713 DCA I R4A
/TSS-8.25 CONFIGURATION FOR UWM Page 89
3536 04646 4525 GETTBA
3537 04647 0011 JOBREG
3538 04650 3065 DCA IOTP2 /SET THE POINTER FOR 'START' CODE
3539 04651 1314 TAD R6A
3540 04652 3117 DCA EXITA /FUDGE EXIT ADDRESS
3541 04653 1344 TAD RSTART /NOW GET THE PROGRAM START-ADDRESS
3542 04654 5655 JMP I .+1 / AND RUN THROUGH 'START' CODE
3543 04655 4015 START2
3544
3545 /WE RETURN FROM 'START' CODE HERE - JOB STATUS AND WAIT
3546 /REGISTERS HAVE BEEN SET, ALONG WITH THE AC, PC, & MQ.
3547 04656 4526 R6, GETWRD /GET THE STR1 STATUS WORD
3548 04657 0001 JOBSTS+1
3549 04660 0024 AND RJSDEL / AND SAVE THE 'JSDEL' FLAG
3550 04661 6211 DATFLD /BUT CLEAR JSWAIT SO WE WON'T START RUNNING
3551 04662 3472 DCA I IOTP7 / IF WE HAVE TO LOAD HIS SWAP AREA
3552 04663 1015 TAD C0003 /SET THE FILE NUMBER
3553 04664 1030 TAD C4000 / AND THE BIT TO SHOW THIS IS FROM 'SI'
3554 04665 3065 DCA IOTP2
3555 04666 7240 STA
3556 04667 1344 TAD RSTART
3557 04670 3067 DCA IOTP4 /CORE ADDRESS - 1
3558 04671 1316 TAD RRFILE
3559 04672 3063 DCA IOTP0 /SET THE 'RFILE' IOT
3560 04673 1344 TAD RSTART
3561 04674 7640 SZA CLA /IS THE START-ADDRESS ZERO?
3562 04675 5717 JMP I RLOAD4 /NO - GO LOAD HIS SWAP-AREA IF NEEDED
3563 04676 4720 JMS I RLSA /GO BUILD FILE-TRANSFER BLOCK
3564 04677 1050 TAD SIJOB
3565 04700 4514 CORES /SEARCH FOR THE JOB IN CORE
3566 04701 7640 SZA CLA /IS THIS JOB ALREADY IN CORE?
3567 04702 5307 JMP R8 /YES
3568 04703 4502 ASSCOR /NO - ASSIGN IT OUR FIELD
3569 04704 6203 R7, CIF CDF
3570 04705 5706 JMP I .+1 /NOW GO TO FIELD 0 TO READ IN THE FILE
3571 04706 3652 READFI
3572
3573 04707 1315 R8, TAD R6B /RESTORE EXIT
3574 04710 3117 DCA EXITA
3575 04711 4533 RELCOR
3576 04712 5304 JMP R7
3577
3578 04713 5156 R4A, R4
3579 04714 4656 R6A, R6
3580 04715 0240 R6B, COMEXT
3581 IFNZRO JSDEL-100 <GLITCH>
3582 0024 RJSDEL= C0100 /JSDEL
3583 04716 6603 RRFILE, RFILE
3584 04717 5077 RLOAD4, LOAD4
3585 04720 5131 RLSA, RLS
/TSS-8.25 CONFIGURATION FOR UWM Page 90
3586 /'SYSTAT' COMMAND - SAME AS TYPING 'R SYSTAT'.
3587
3588 04721 5200 JMP RERR
3589 04722 5225 JMP R1
3590 04723 1337 SYSTAT, TAD SYSM /SYSTAT COMMAND
3591 04724 3010 DCA IX1 /POINTER TO FILE NAME
3592 04725 1410 TAD I IX1 /PUT "SYSTAT" OR "LOGOUT" IN IOTP3,4,5
3593 04726 3066 DCA IOTP3
3594 04727 1410 TAD I IX1
3595 04730 3067 DCA IOTP4
3596 04731 1410 TAD I IX1
3597 04732 3070 DCA IOTP5
3598 04733 7326 CLA CLL CML RTL /SET THE SYSTEM LIBRARY ACCOUNT
3599 04734 3065 DCA IOTP2
3600 04735 5736 JMP I .+1
3601 04736 2643 SAVNAM /GO SAVE NAME; THEN OPEN FILE
3602
3603 04737 4345 SYSM, SYSMA-1
3604
3605 /WE COME HERE TO FINISH UP THE 'LOGIN' - PRINT THE LAST
3606 /OF THE SYSTEM INTRODUCTION & PREPARE TO START
3607 /THE PROGRAM 'LOGIN' TO PRINT A MESSAGE-OF-THE-DAY.
3608 04740 3344 LOGIF2, DCA .+4 /SAVE THE POINTER TO THE TIME MESSAGE
3609 04741 1152 TAD COMEXP
3610 04742 3151 DCA COMEXA / AND RESTORE THE 'COMRET' POINTER
3611 04743 4500 ASCOUT /TYPE THE TIME
3612 04744 0000 RSTART, 0
3613 04745 7000 C7000, NOP
3614 04746 1073 TAD CHAR
3615 04747 1362 TAD NSEMI
3616 04750 7650 SNA CLA /DID THE COMMAND END WITH A SEMI-COLON?
3617 04751 5551 JMP I COMEXA /YES - JUST EXIT
3618
3619 /CODE TO FUDGE POINTERS TO START PROGRAM 'LOGIN'.
3620 /WE SET UP 'SI' POINTERS TO THINK IT'S DOING 'SYSTAT'
3621 04752 1361 TAD LOGPTR
3622 04753 3337 DCA SYSM /STORE POINTER TO 'LOGIN'
3623 04754 1360 TAD CL40A /FUDGE 'COMLNK'
3624 04755 3070 DCA COMLNK
3625 04756 5757 JMP I .+1 /THEN RE-ENTER 'SI'
3626 04757 1010 COM91
3627
3628 04760 6643 CL40A, CL40 /COMMAND PACKET FOR 'SYSTAT'
3629 04761 3352 LOGPTR, LOGN5A-1 /POINTER TO "LOGIN"
3630 04762 7505 NSEMI, -";
3631
3632 /THIS HANDLES THE 'LOGOUT' COMMAND - ALL WE DO
3633 /IS LOAD AND START THE LIBRARY PROGRAM 'LOGOUT'. IT
3634 /DELETES THE USER'S TEMPORARY FILES & THEN LOGS HIM
3635 /OUT USING THE 'LOGOUT' IOT.
3636
3637 04763 5200 JMP RERR /SYSTEM ERROR DURING 'OPEN'
3638 04764 5225 JMP R1
3639 04765 1367 LOGOUT, TAD LOGMA /GET THE POINTER TO "LOGOUT" STRING
3640 04766 5324 JMP SYSTAT+1 / & SHARE 'SYSTAT' CODE
3641
3642 04767 4337 LOGMA, LOGOMA-1
/TSS-8.25 CONFIGURATION FOR UWM Page 91
3643
3644 /THIS HANDLES THE 'ODT' COMMAND; WE LOAD "ODTHI" AND START
3645 /IT AT LOCATION 7000.
3646 04770 5200 JMP RERR
3647 04771 5375 JMP ODT1
3648 04772 1374 ODT, TAD .+2
3649 04773 5324 JMP SYSTAT+1 /GO OPEN THE "ODTHI"
3650 04774 4342 ODTMA-1
3651
3652 04775 1345 ODT1, TAD C7000 /GET 'ODTHI'S START-ADDRESS
3653 04776 5225 JMP R1 / AND START IT
/TSS-8.25 CONFIGURATION FOR UWM Page 92
3654 PAGE
3655 /THIS HANDLES THE 'SAVE' COMMAND; NOTE THAT THIS COMMAND
3656 /SHARES MUCH OF THE 'LOAD' COMMAND HANDLER.
3657 05000 5713 JMP I LOADER /ERROR DURING 'OPEN'
3658 05001 5203 JMP SAVE2 /'OPEN' WORKED
3659 05002 5210 SAVE, JMP SAVE3 /GO PICK UP FILENAME & DO 'OPEN'
3660
3661 05003 1205 SAVE2, TAD SWFILE /PICK UP THE 'WFILE' IOT
3662 05004 5226 JMP LOAD2 / AND SHARE MORE 'LOAD' CODE
3663 05005 6605 SWFILE, WFILE
3664
3665 /THIS HANDLES THE 'LOAD' COMMAND; NOTE THAT MUCH OF THIS
3666 /CODE IS SHARED BY OTHER COMMANDS.
3667 05006 5713 JMP I LOADER
3668 05007 5225 JMP LOAD1
3669 LOAD,
3670 05010 4477 SAVE3, ACCTIN
3671 05011 7410 SKP
3672 05012 3065 SAVE1, DCA IOTP2 /ACCOUNT #
3673 05013 4516 ENDTST /ANY MORE TO COMMAND?
3674 05014 5545 JMP I COMERA /NO - ERROR
3675 05015 1056 TAD COMBFA
3676 05016 4543 TEXTS /READ IN THE FILENAME
3677 05017 7200 CLA
3678 05020 4501 AUTOR1, ASCSIX /CONVERT THE FILENAME TO SIX-BIT
3679 05021 6204 COMBUF-1
3680 05022 0065 IOTP3-1
3681 05023 5624 JMP I .+1 / AND SAVE THE PROGRAM NAME IN PRGTBL
3682 05024 2643 SAVNAM
3683
3684 05025 1315 LOAD1, TAD LRFILE
3685 05026 3063 LOAD2, DCA IOTP0
3686 05027 4526 GETWRD /ERROR?
3687 05030 0013 JOBREG+2
3688 05031 7640 SZA CLA
3689 05032 5560 JMP I IOTEND /YES
3690 05033 4525 GETTBA /NO. SET UP RFILE OR WFILE
3691 05034 0007 JOBLNK
3692 05035 4522 GETFBL
3693 05036 5512 COMWAT
3694 05037 3356 DCA R4
3695 05040 7132 CLL CML RTR /AC=2000
3696 05041 1015 TAD C0003 /FILE #
3697 05042 3065 DCA IOTP2
3698 05043 7240 STA /DEFAULT CORE ADDRESS
3699 05044 3067 DCA IOTP4
3700 05045 4516 ENDTST /ANY PARAMETERS?
3701 05046 5274 JMP LOAD3 /NO
3702 05047 4527 NUMBIN /YES. FILE ADDRESS O2 CAN BE 6 DIGITS!
3703 05050 7511 -"7
3704 05051 5274 JMP LOAD3
3705 05052 3070 DCA IOTP5 /LEAST SIGN. 12 BITS
3706 05053 1074 TAD NUMHO
3707 05054 3064 DCA IOTP1 /HIGH ORDER
3708 05055 4516 ENDTST
3709 05056 5274 JMP LOAD3
3710 05057 4527 NUMBIN /STARTING CORE ADDRESS
/TSS-8.25 CONFIGURATION FOR UWM Page 93
3711 05060 7511 -"7
3712 05061 5274 JMP LOAD3
3713 05062 1067 TAD IOTP4
3714 05063 3067 DCA IOTP4
3715 05064 4516 ENDTST
3716 05065 5274 JMP LOAD3
3717 05066 4527 NUMBIN /LAST CORE ADDRESS
3718 05067 7511 -"7
3719 05070 7240 CLA CMA
3720 05071 7041 CIA
3721 05072 1067 TAD IOTP4
3722 05073 3066 DCA IOTP3 /WORD COUNT
3723 05074 1316 LOAD3, TAD LOAD4A
3724 05075 3117 DCA EXITA
3725 05076 5551 JMP I COMEXA
3726
3727 05077 4331 LOAD4, JMS RLS
3728 05100 1050 TAD SIJOB /SET UP XFER BLOCK TO LOAD USER AREA
3729 05101 1325 TAD LOADM1
3730 05102 1167 TAD SWBASE
3731 05103 7106 CLL RTL
3732 05104 3322 DCA LOADEX
3733 05105 1050 TAD SIJOB
3734 05106 4514 CORES
3735 05107 7640 SZA CLA
3736 05110 5717 JMP I LOAD6A /JOB IS IN CORE
3737 05111 1320 TAD LOADUB
3738 05112 5714 JMP I LOADUA
3739
3740 05113 4600 LOADER, RERR
3741 05114 1124 LOADUA, LOADUS
3742 05115 6603 LRFILE, RFILE
3743 05116 5077 LOAD4A, LOAD4
3744 05117 4707 LOAD6A, R8
3745 05120 5121 LOADUB, .+1
3746 05121 6603 DMAR
3747 05122 0000 LOADEX, 0 /DISC EXTENSION
3748 05123 0010 10
3749 05124 0000 0 /DISC ADDRESS
3750 05125 7777 LOADM1, -1 /CORE ADDRESS - 1
3751 05126 0000 0 / (-) WORD COUNT
3752 05127 2364 OVERLA
3753 05130 3652 READFI
/TSS-8.25 CONFIGURATION FOR UWM Page 94
3754 /SUBROUTINE CALLED BY "R", "RUN", "LOAD", & "SAVE" TO
3755 /SET UP THE FILE TRANSFER BLOCK POINTED TO BY 'JOBLNK'.
3756
3757 RETTMP,
3758 05131 0000 RLS, 0
3759 05132 6221 CHDF
3760 05133 4525 GETTBA /GET JOB'S WAIT-MASK ADDRESS
3761 05134 0003 JOBWMK
3762 05135 3072 DCA IOTP7
3763 05136 1361 TAD RJSF3
3764 05137 6211 DATFLD
3765 05140 3472 DCA I IOTP7 /SET WAIT FOR FILE # 3
3766 05141 2072 ISZ IOTP7
3767 05142 3472 DCA I IOTP7 / AND CLEAR WAIT-MASK 2
3768 05143 1050 TAD SIJOB
3769 05144 6201 CDF
3770 05145 3442 DCA I SIREG /SAVE JOB # FOR 'READFI' IN FIELD 0
3771 05146 6221 CHDF
3772 05147 1050 TAD SIJOB
3773 05150 3171 DCA CORJOB /SET FOR CORE-ASSIGNMENT
3774 05151 6202 CIF
3775 05152 4503 BLT /COPY OVER THE 'RFILE' OR 'WFILE' PARAMETERS
3776 05153 6221 CHDF
3777 05154 0063 IOTP0
3778 05155 6211 DATFLD
3779 05156 0000 R4, 0
3780 05157 7772 -6
3781 05160 5731 JMP I RLS /THEN JUST RETURN
3782
3783 05161 0201 RJSF3, JSF3+JSWAIT
3784
3785 /
3786 /RETURN BLOCK TO FREE STORAGE
3787 /CALL: TAD ADDR OF BLOCK
3788 / RETDBL
3789 / RETURN
3790
3791 05162 0000 RETDB0, 0
3792 05163 7450 SNA /IS IT A REASONABLE ADDRESS?
3793 IFNZRO DEBUG <
3794 REBOOT /NO - ERROR *****
3795 >
3796 IFZERO DEBUG <
3797 05164 5762 JMP I RETDB0 /JUST RETURN IF IN A PRODUCTION SYSTEM
3798 >
3799 05165 3331 DCA RETTMP
3800 05166 1331 TAD RETTMP
3801 05167 6202 CIF
3802 05170 4536 RETBLK /USE FIELD 0 ROUTINE TO RELEASE IT
3803 05171 5762 JMP I RETDB0
3804
3805 /RETURN LINKED BLOCKS TO FREE STORAGE
3806 /CALL: TAD ADDRESS OF LINKED LIST
3807 / RETBKS
3808 / RETURN
3809
3810 05172 0000 RETBK0, 0
/TSS-8.25 CONFIGURATION FOR UWM Page 95
3811 05173 7450 SNA /REACHED END OF LIST?
3812 05174 5772 JMP I RETBK0 /YES - RETURN
3813 05175 4537 RETDBL /NO - RETURN THE BLOCK
3814 05176 5373 JMP .-3 / AND CHECK AGAIN
/TSS-8.25 CONFIGURATION FOR UWM Page 96
3815 PAGE
3816
3817 05200 7766 C7766, 7766
3818 05201 5264 DEPO3A, DEPOS3
3819
3820 05202 4507 DEPOSI, CHKIO /CHECK FOR RK05 OR DECTAPE ACTIVITY
3821 05203 4527 NUMBIN /STARTING ADDRESS
3822 05204 7511 -"7
3823 05205 5545 JMP I COMERA
3824 05206 3070 DCA IOTP5 /LOW ORDER DISC ADDRESS
3825 05207 1200 TAD C7766
3826 05210 3064 DCA IOTP1
3827 05211 1056 TAD COMBFA
3828 05212 3010 DCA IX1
3829 05213 4527 DEPOS2, NUMBIN /CONVERT ARGUMENT LIST
3830 05214 7511 -"7
3831 05215 5221 JMP DEPOS1
3832 05216 3410 DCA I IX1
3833 05217 2064 ISZ IOTP1
3834 05220 5213 JMP DEPOS2
3835 05221 1010 DEPOS1, TAD IX1
3836 05222 7041 CIA
3837 05223 1056 TAD COMBFA
3838 05224 7450 SNA
3839 05225 5545 JMP I COMERA /NOTHING TO DEPOSIT
3840 05226 3066 DCA IOTP3 /-WORD COUNT
3841 05227 4510 CLRPRV /HE'S CHANGING CORE, CLEAR HIS 'PRIVILEGE'
3842 05230 1050 TAD SIJOB
3843 05231 4514 CORES
3844 05232 7440 SZA
3845 05233 5271 JMP DEPOS4
3846 05234 1201 TAD DEPO3A
3847
3848 05235 3003 EXAMI2, DCA SI1 /RETURN ADDRESS
3849 05236 1056 TAD COMBFA
3850 05237 3067 DCA IOTP4 /CORE ADDRESS-1
3851 05240 7240 CLA CMA /-1 IN AC
3852 05241 1050 TAD SIJOB
3853 05242 1167 TAD SWBASE
3854 05243 7106 CLL RTL
3855 05244 3064 DCA IOTP1 /DISC EXTENSION
3856 05245 1022 TAD C0010
3857 05246 3065 DCA IOTP2
3858 05247 1263 TAD DEPEX2
3859 05250 3071 DCA IOTP6
3860 05251 3072 DCA IOTP7
3861 05252 1066 TAD IOTP3 /ARE WE GOING INTO NEXT JOB'S DISC IMAGE?
3862 05253 7140 CLL CMA /WORD COUNT -1
3863 05254 1070 TAD IOTP5 /WC+ADDRESS>7777?
3864 05255 7620 SNL CLA
3865 05256 5662 JMP I DEPEX /NO - OK TO PROCEED
3866 05257 1070 TAD IOTP5
3867 05260 3066 DCA IOTP3 /YES - FIX IT TO STOP AT 7777
3868 05261 5662 JMP I DEPEX
3869 05262 1147 DEPEX, DEPEXA
3870 05263 2364 DEPEX2, OVERLA
3871
/TSS-8.25 CONFIGURATION FOR UWM Page 97
3872 /RETURN AFTER READING OR WRITING USER AREA
3873
3874 05264 1025 DEPOS3, TAD COMA
3875 05265 3003 DCA SI1
3876 05266 5551 JMP I COMEXA
3877
3878 05267 6221 COMF, CHDF
3879
3880 IFNZRO COM-200 <GLITCH>
3881 0025 COMA= C0200
3882 05270 0070 C0070, 70
3883
3884 05271 0270 DEPOS4, AND C0070
3885 05272 1001 TAD C6201
3886 05273 3313 DCA DEDEF
3887 05274 1070 TAD IOTP5
3888 05275 3314 DCA DEDEA
3889 05276 1267 TAD COMF
3890 05277 3311 DCA DESRF
3891 05300 1350 TAD BUFFER
3892 05301 3312 DCA DESRA
3893 05302 4304 JMS DEMOVE
3894 05303 5551 JMP I COMEXA
3895
3896 05304 0000 DEMOVE, 0
3897 05305 1066 TAD IOTP3
3898 05306 3315 DCA DECNT
3899 05307 6202 CIF
3900 05310 4503 BLT
3901 05311 0000 DESRF, 0 /FROM FLD
3902 05312 0000 DESRA, 0 /FROM ADDR
3903 05313 0000 DEDEF, 0 /TO FLD
3904 05314 0000 DEDEA, 0 /TO ADDR
3905 05315 0000 DECNT, 0 /-COUNT
3906 05316 5704 JMP I DEMOVE
/TSS-8.25 CONFIGURATION FOR UWM Page 98
3907 05317 4527 EXAMIN, NUMBIN /STARTING ADDRESS
3908 05320 7511 -"7
3909 05321 5545 JMP I COMERA
3910 05322 3070 DCA IOTP5
3911 05323 4527 NUMBIN
3912 05324 7507 -"9
3913 05325 7001 IAC
3914 05326 7450 SNA
3915 05327 7001 IAC
3916 05330 7041 CIA
3917 05331 3066 DCA IOTP3
3918 05332 1066 TAD IOTP3 /GET (-) THE COUNT
3919 05333 7161 CLL CMA CML IAC
3920 05334 1200 TAD C7766
3921 05335 7670 SNA SZL CLA /IS THE COUNT TOO LARGE?
3922 05336 5341 JMP .+3
3923 05337 1200 TAD C7766 /YES - BRING IT INTO LINE
3924 05340 3066 DCA IOTP3
3925 05341 1050 TAD SIJOB
3926 05342 4514 CORES
3927 05343 7440 SZA
3928 05344 5351 JMP EXAMI4
3929 05345 1347 TAD EXAM1A
3930 05346 5235 JMP EXAMI2
3931
3932 05347 0702 EXAM1A, EXAMI1
3933 05350 6205 BUFFER, COMBUF
3934
3935 05351 0270 EXAMI4, AND C0070
3936 05352 1001 TAD C6201
3937 05353 3311 DCA DESRF
3938 05354 1070 TAD IOTP5
3939 05355 3312 DCA DESRA
3940 05356 1267 TAD COMF
3941 05357 3313 DCA DEDEF
3942 05360 1350 TAD BUFFER
3943 05361 3314 DCA DEDEA
3944 05362 4304 JMS DEMOVE
3945 05363 5747 JMP I EXAM1A
3946
3947 05364 0240 FORJOB, " ;"F;"O;"R;" ;"J;"O;"B;" ;0
05365 0306
05366 0317
05367 0322
05370 0240
05371 0312
05372 0317
05373 0302
05374 0240
05375 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 99
3948 PAGE
3949 /THIS HANDLES THE 'SWITCH', 'RESTART', & 'BREAK' COMMANDS.
3950 /THEY SET THE REGISTERS OR, IF NO PARAMETER IS GIVEN, THEY
3951 /SIMPLY PRINT OUT THEIR CURRENT VALUES.
3952
3953 IFNZRO DDBBRK-2 <GLITCH>
3954
3955 05400 4510 RESTRT, CLRPRV /CLEAR HIS 'PRIVILEGE' BIT
3956 05401 4526 GETWRD /GET THE STR0 WORD
3957 05402 0000 JOBSTS
3958 05403 0242 AND RESJSC
3959 05404 1243 TAD RESJSR /SET THE 'JSRSEN' BIT TO ENABLE CTRL/C
3960 05405 6211 DATFLD
3961 05406 3472 DCA I IOTP7
3962 05407 1240 TAD JBSRA /GET THE RESTART-ADDRESS
3963 05410 1241 SWITCH, TAD JBSWR /GET THE SWITCH-REGISTER
3964 05411 3213 DCA .+2
3965 05412 4525 GETTBA /GET THE REGISTER ADDRESS
3966 05413 0000 0
3967 05414 5217 JMP BRK1 /THEN SHARE THE BREAK CODE
3968 05415 7326 BREAK, CLA CLL CML RTL
3969 05416 1053 TAD COMDB0 /GET THE BREAK-MASK LOCATION
3970 05417 3064 BRK1, DCA IOTP1
3971 05420 4516 ENDTST /IS THERE A PARAMETER?
3972 05421 5230 JMP BRK2 /NO - PRINT THE CURRENT VALUE
3973 05422 4527 NUMBIN /YES - GET THE NEW VALUE
3974 05423 7511 -"7
3975 05424 5545 JMP I COMERA /INVALID CHARACTER IN NUMBER
3976 05425 6211 DATFLD
3977 05426 3464 DCA I IOTP1 /SET THE NEW VALUE
3978 05427 5551 JMP I COMEXA / AND EXIT
3979 05430 6211 BRK2, DATFLD
3980 05431 1464 TAD I IOTP1 /GET THE CURRENT VALUE
3981 05432 6221 CHDF
3982 05433 4530 OCTASC /CONVERT IT TO ASCII
3983 05434 0065 IOTP3-1 / IN IOTP3 - IOTP7
3984 05435 1237 TAD .+2
3985 05436 5551 JMP I COMEXA /THEN EXIT
3986 05437 0066 IOTP3
3987
3988 05440 7775 JBSRA, JOBSRA-JOBSWR
3989 05441 0010 JBSWR, JOBSWR
3990 05442 7757 RESJSC, -JSRSEN-1
3991 05443 0020 RESJSR, JSRSEN
3992
3993 05444 0240 WHERLK, " ;"L;"=;0
05445 0314
05446 0275
05447 0000
3994 05450 0240 WHERSW, " ;"S;"W;"=;0
05451 0323
05452 0327
05453 0275
05454 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 100
3995 /THIS HANDLES THE 'TALK' COMMAND. "TALK NN ...MSG..."
3996 /CAUSES THE MESSAGE '...MSG...' TO BE SENT TO KEYBOARD 'NN'.
3997
3998 IFNZRO DTALK-1 <GLITCH>
3999
4000 05455 4527 TALK, NUMBIN /GET THE CONSOLE #
4001 05456 7511 -"7
4002 05457 5545 JMP I COMERA /BAD CHARACTER - ERROR!!
4003 05460 3063 DCA IOTP0
4004 05461 1063 TAD IOTP0
4005 05462 7510 SPA /NEGATIVE KEYBOARD? (USED FOR FORCING PAST LOCKS)
4006 05463 7041 CIA
4007 05464 7124 CLL CML RAL / *2+1
4008 05465 1155 TAD DEVTBA
4009 05466 3065 DCA IOTP2 /POINTS TO OUTPUT DEVTBL ENTRY
4010 05467 6211 DATFLD
4011 05470 1465 TAD I IOTP2
4012 05471 3365 DCA TALK5
4013 05472 1765 TAD I TALK5 /GET THE DDB STATUS WORD
4014 05473 6221 CHDF
4015 05474 7110 CLL RAR
4016 05475 7620 SNL CLA /ARE TALKS TO THIS TERMINAL INHIBITED?
4017 05476 5307 JMP TALK1 /NO
4018 05477 4506 CHKACT /YES - CHECK OUR ACCOUNT NUMBER
4019 05500 5361 JMP TALKER /NORMAL USER - TELL HIM "NO TALKS"
4020 05501 7000 NOP
4021 05502 1063 TAD IOTP0
4022 05503 7500 SMA /OPERATOR OR MANAGER - IS HE OVERRIDING THE LOCK?
4023 05504 5361 JMP TALKER /NO
4024 05505 7041 CIA
4025 05506 3063 DCA IOTP0 /YES - FIX THE KEYBOARD NUMBER
4026 05507 7320 TALK1, CLA CLL CML
4027 05510 1063 TAD IOTP0
4028 05511 1377 TAD TALKMX
4029 05512 7620 SNL CLA /IS THIS A LEGAL KEYBOARD?
4030 05513 5545 JMP I COMERA /NO - ERROR!!
4031 05514 1051 TALK2, TAD SIKBD /GET NUMBER OF CALLING CONSOLE
4032 05515 4530 OCTASC /CONVERT IT TO ASCII
4033 05516 6204 COMBUF-1 / AND PUT IN COMBUF
4034 05517 4365 JMS TALK5 /"CRLF** K"
4035 05520 0564 TALKM1
4036 05521 4365 JMS TALK5 /"MM"
4037 05522 6207 COMBUF+2
4038 05523 4526 GETWRD /GET THE SENDER'S ACCOUNT NUMBER
4039 05524 0015 JOBACT
4040 05525 4530 OCTASC / & CONVERT IT TO ASCII
4041 05526 6204 COMBUF-1
4042 05527 4365 JMS TALK5 /NOW TYPE "/"
4043 05530 0574 TALKM2
4044 05531 4365 JMS TALK5 / & THE ACCOUNT NUMBER
4045 05532 6205 COMBUF
4046 05533 4365 JMS TALK5 / AND ": "
4047 05534 1367 TALKM3
4048 05535 3074 DCA CHAR+1 / *** CHAR+1 MUST BE SCRATCHABLE ***
4049 05536 7326 CLA CLL CML RTL
4050 05537 4516 ENDTST /END-OF-LINE BEFORE WE START?
4051 05540 5355 JMP TALK4 /YES
/TSS-8.25 CONFIGURATION FOR UWM Page 101
4052 05541 4511 TALK3, COMGET /GET MESSAGE CHARACTER
4053 05542 5355 JMP TALK4 /NONE LEFT; SHOULDN'T HAPPEN
4054 05543 7326 CLA CLL CML RTL /ALLOW ':' AND ';' IN MESSAGE
4055 05544 4516 ENDTST /TERMINATING MESSAGE?
4056 05545 5355 JMP TALK4 /YES - SEND CRLF
4057 05546 1073 TAD CHAR
4058 05547 0376 AND C0140
4059 05550 7650 SNA CLA /IS IT A CONTROL CHARACTER?
4060 05551 5341 JMP TALK3 /YES - JUST IGNORE IT
4061 05552 4365 JMS TALK5 /NO - SEND THE CHARACTER
4062 05553 0073 CHAR
4063 05554 5341 JMP TALK3 / AND GO FETCH THE NEXT
4064 05555 4365 TALK4, JMS TALK5 /SEND THE <CR-LF>
4065 05556 6161 CRLF
4066 05557 5760 JMP I .+1 /THEN FORCE HIS OWN 'SETQ'
4067 05560 7327 SETQ
4068
4069 05561 7200 TALKER, CLA
4070 05562 1364 TAD .+2
4071 05563 5545 JMP I COMERA /ERROR RETURN TYPING "NO TALKS"
4072 05564 7561 TALKLM
4073
4074 /ROUTINE TO TYPE A MESSAGE ON THE TELETYPE WHOSE DDB
4075 /ADDRESS IS IN IOTP2.
4076 05565 0000 TALK5, 0 /OUTPUT A CHARACTER
4077 05566 1765 TAD I TALK5 /BUFFER ADDRESS
4078 05567 3372 DCA .+3
4079 05570 1065 TAD IOTP2 /DEVTBL ENTRY ADDRESS
4080 05571 4500 ASCOUT
4081 05572 0000 0
4082 05573 5545 JMP I COMERA /NO ROOM - JUST TREAT AS ERROR
4083 05574 2365 ISZ TALK5 /SKIP ARGUMENT
4084 05575 5765 JMP I TALK5
4085
4086 05576 0140 C0140, 140
4087 05577 7765 TALKMX, -TLKMAX-1 /(-) FIRST ILLEGAL KEYBOARD
/TSS-8.25 CONFIGURATION FOR UWM Page 102
4088 PAGE
4089
4090 05600 0033 CLK1A, CLK1
4091 05601 0034 CLK2A, CLK2
4092 05602 0645 TICLK2, INCLK2
4093 05603 7000 TICLK1, INCLK1
4094
4095 05604 4516 TIME, ENDTST /ARGUMENT?
4096 05605 5246 JMP TIME1 /NO - ASSUME THIS JOB
4097 05606 4527 NUMBIN
4098 05607 7511 -"7
4099 05610 5545 JMP I COMERA /ILLEGAL PARAMETER - ERROR!
4100 05611 3063 DCA IOTP0
4101 05612 7320 CLA CLL CML
4102 05613 1063 TAD IOTP0
4103 05614 1165 TAD MJBMAX
4104 05615 7660 SZA SNL CLA /LEGAL JOB #?
4105 05616 5545 JMP I COMERA /NO
4106 05617 1063 TAD IOTP0
4107 05620 7450 SNA /JOB 0?
4108 05621 5251 JMP TIME3 /YES - TYPE TIME OF DAY
4109 05622 4541 SETJOB /NO - SET UP 'JOBDAT'
4110 05623 7410 SKP /NO JOB - JUST EXIT
4111 05624 5230 JMP TIME2
4112 05625 4541 SETJOB /RESTORE 'JOBDAT'
4113 05626 7000 NOP
4114 05627 5244 JMP TIME5 / AND EXIT
4115
4116 05630 6221 TIME2, CHDF
4117 05631 4526 GETWRD
4118 05632 0016 JOBRTM
4119 05633 3075 DCA NUMHO+1
4120 05634 4526 GETWRD
4121 05635 0017 JOBRTH /HI ORDER TIME
4122 05636 3074 TIME4, DCA NUMHO
4123 05637 4263 JMS PTIME
4124 05640 4541 SETJOB /RESTORE 'JOBDAT' IF ALTERED
4125 05641 7000 NOP /NO MATTER IF NOT LOGGED IN
4126 05642 1056 TAD COMBFA
4127 05643 7001 IAC
4128 05644 6221 TIME5, CHDF
4129 05645 5551 JMP I COMEXA
4130
4131 05646 1050 TIME1, TAD SIJOB
4132 05647 7640 SZA CLA /IS HE LOGGED IN?
4133 05650 5230 JMP TIME2 /YES - TYPE HIS CPU TIME
4134
4135 05651 6201 TIME3, CDF
4136 05652 1600 TAD I CLK1A
4137 05653 7100 CLL
4138 05654 1203 TAD TICLK1
4139 05655 3075 DCA NUMHO+1
4140 05656 7004 RAL
4141 05657 1601 TAD I CLK2A
4142 05660 1202 TAD TICLK2
4143 05661 6221 CHDF
4144 05662 5236 JMP TIME4
/TSS-8.25 CONFIGURATION FOR UWM Page 103
4145 /ROUTINE TO CONVERT VALUE IN NUMHO AND NUMHO+1 (IN TICKS)
4146 /TO HOURS, MINUTES AND SECONDS.
4147 /THE RESULT IS STORED IN COMBUF AS HH:MM:SS
4148
4149 05663 0000 PTIME, 0 /ENTER WITH AC=0
4150 05664 1056 TAD COMBFA /START OF OUTPUT BUFFER
4151 05665 3010 DCA IX1
4152 05666 1335 TAD PTABX /SET UP TABLE FETCH (LOW)
4153 05667 3300 DCA PTIMX
4154 05670 1336 TAD PTABX1 /SET UP TABLE FETCH (HIGH)
4155 05671 3304 DCA PTIMX1
4156 05672 1337 TAD PTFORM /FORMAT MASK
4157 05673 3343 DCA PTCONT
4158
4159 05674 1340 PTLOOP, TAD PT0260 /INITIALIZE DIGIT COUNTER
4160 05675 3342 DCA PTDIGI
4161 05676 7100 CLL /DIVIDE LOOP
4162 05677 1075 TAD NUMHO+1 /DOUBLE PRECISION ADD
4163 05700 7000 PTIMX, NOP /(TAD PTAB1+N)
4164 05701 3076 DCA NUMHO+2 /SAVE LOW ORDER REMAINDER
4165 05702 7004 RAL /GET OVERFLOW
4166 05703 1074 TAD NUMHO /ADD HIGH ORDER
4167 05704 7000 PTIMX1, NOP /(TAD PTAB+N)
4168 05705 7420 SNL
4169 05706 5314 JMP PTIMA /DIVIDE OVERFLOW
4170 05707 3074 DCA NUMHO /RESTORE REMAINDER
4171 05710 1076 TAD NUMHO+2 /LOW ORDER RESTORE
4172 05711 3075 DCA NUMHO+1
4173 05712 2342 ISZ PTDIGI /COUNT THIS SUBTRACTION
4174 05713 5276 JMP PTIMX-2 /CONTINUE LOOP
4175
4176 05714 2300 PTIMA, ISZ PTIMX /ADVANCE TABLE FETCH
4177 05715 2304 ISZ PTIMX1 /ADVANCE TABLE FETCH
4178 05716 7200 CLA /CLEAR OUT REMAINDER
4179 05717 1342 TAD PTDIGI
4180 05720 3410 DCA I IX1 /STORE ASCII DIGIT
4181 05721 1343 TAD PTCONT
4182 05722 7440 SZA /ARE WE ALL DONE?
4183 05723 5326 JMP .+3 /NO
4184 05724 3410 DCA I IX1 /YES - STORE A ZERO
4185 05725 5663 JMP I PTIME / AND RETURN
4186 05726 7104 RAL CLL /TEST FOR COLON PRINT
4187 05727 3343 DCA PTCONT /RESTORE FORMAT
4188 05730 7430 SZL /PRINT COLON?
4189 05731 5274 JMP PTLOOP /CONTINUE LOOP
4190 05732 1341 TAD PTCOLN /ADD COLON TO OUTPUT
4191 05733 3410 DCA I IX1
4192 05734 5274 JMP PTLOOP /CONTINUE LOOP
4193
4194 05735 1352 PTABX, TAD PTAB1 /TABLE FETCH LOW
4195 05736 1344 PTABX1, TAD PTAB /TABLE FETCH HIGH
4196 05737 5200 PTFORM, 5200 /FORMAT FOR OUTPUT
4197 05740 0260 PT0260, 260
4198 05741 0272 PTCOLN, 272 /ASCII COLON
4199
4200 05742 0000 PTDIGI, 0 /ASCII DIGIT BUILT HERE
4201 05743 0000 PTCONT, 0 /LOOP CONTROL
/TSS-8.25 CONFIGURATION FOR UWM Page 104
4202
4203 IFNZRO TICSPS-24 <GLITCH>
4204 /DOUBLE PRECISION WORDS...HIGH ORDER BITS
4205 05744 7520 PTAB, 7520 /-TICKS PER 10 HRS
4206 05745 7756 7756 /-TICKS PER 1 HR
4207 05746 7775 7775 /-TICKS PER 10 MIN
4208 05747 7777 7777 /-TICKS PER 1 MIN
4209 05750 7777 7777 /-TICKS PER 10 SEC
4210 05751 7777 7777 /-TICKS PER 1 SEC
4211
4212 /DOUBLE PRECISION WORDS...LOW ORDER BITS
4213 05752 1600 PTAB1, 1600 /-TICKS PER 10 HRS
4214 05753 3300 3300 /-TICKS PER 1 HR
4215 05754 0440 0440 /-TICKS PER 10 MIN
4216 05755 5520 5520 /-TICKS PER 1 MIN
4217 05756 7470 7470 /-TICKS PER 10 SEC
4218 05757 7754 7754 /-TICKS PER 1 SEC
4219
4220 05760 0215 STARS, 215;212;207;"*;"*;"*;" ;0
05761 0212
05762 0207
05763 0252
05764 0252
05765 0252
05766 0240
05767 0000
4221 05770 0277 QQEST, "?
4222 05771 0277 QEST, "?;0
05772 0000
4223 05773 0320 WHERPC, "P;"C;"=;0
05774 0303
05775 0275
05776 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 105
4224 PAGE
4225 /'SEGS' COMMAND - TYPE THE NUMBER OF FREE DISC SEGMENTS
4226
4227 06000 4500 SEGS0, ASCOUT
4228 06001 6161 CRLF
4229 06002 5551 JMP I COMEXA
4230 06003 6201 CDF
4231 06004 1617 TAD I SEGCNT /GET THE NUMBER FROM FIELD 0
4232 06005 6221 CHDF
4233 06006 4220 JMS DECOUT / CONVERT IT TO DECIMAL
4234 06007 6204 COMBUF-1
4235 06010 4500 ASCOUT / AND TYPE IT
4236 06011 6205 COMBUF
4237 06012 5551 JMP I COMEXA
4238 06013 4500 ASCOUT
4239 06014 7542 FSEGMS
4240 06015 5551 JMP I COMEXA
4241 06016 5551 JMP I COMEXA /THEN EXIT
4242 /
4243 06017 5533 SEGCNT, NFSEGS
/TSS-8.25 CONFIGURATION FOR UWM Page 106
4244 /ROUTINE TO CONVERT CONTENTS OF AC INTO DECIMAL ASCII
4245 /CALL: TAD (VALUE)
4246 / JMS I (DECOUT
4247 / BUFFER-1
4248 /
4249 06020 0000 DECOUT, 0
4250 06021 3265 DCA DECNUM /SAVE THE VALUE
4251 06022 1620 TAD I DECOUT
4252 06023 3010 DCA IX1 /SET THE BUFFER POINTER
4253 06024 2220 ISZ DECOUT
4254 06025 1266 TAD DECTAD
4255 06026 3233 DCA DECOT2 /SET TABLE FETCH
4256 06027 7146 CLL CMA RTL /AC:=-3
4257 06030 3074 DCA NUMHO /SET DIGIT COUNTER
4258 06031 3272 DCA DECPRT /CLEAR OUTPUT FLAG
4259 06032 3264 DECOT1, DCA DECDIG /ZERO THE DIGIT
4260 06033 1267 DECOT2, TAD DECTAD+1
4261 06034 7120 CLL CML
4262 06035 1265 TAD DECNUM /13-BIT SUBTRACT
4263 06036 7430 SZL /HAS IT GONE NEGATIVE?
4264 06037 5244 JMP .+5 /YES - WE WENT TOO FAR
4265 06040 3265 DCA DECNUM
4266 06041 2264 ISZ DECDIG /INCREMENT THE DIGIT
4267 06042 2272 ISZ DECPRT / & SET THE 'PRINT' FLAG
4268 06043 5233 JMP DECOT2
4269 06044 7200 CLA
4270 06045 1272 TAD DECPRT
4271 06046 7650 SNA CLA /ARE WE PRINTING?
4272 06047 5253 JMP .+4 /NO - NO NON-ZERO YET
4273 06050 1264 TAD DECDIG
4274 06051 1263 TAD DEC260
4275 06052 3410 DCA I IX1 /YES - STORE THE DIGIT
4276 06053 2233 ISZ DECOT2 /INCREMENT THE TABLE-FETCH
4277 06054 2074 ISZ NUMHO
4278 06055 5232 JMP DECOT1 /DO THE NEXT DIGIT
4279 06056 1265 TAD DECNUM
4280 06057 1263 TAD DEC260
4281 06060 3410 DCA I IX1 /ALWAYS DO THE LAST DIGIT
4282 06061 3410 DCA I IX1 / AND STORE A ZERO TERMINATOR
4283 06062 5620 JMP I DECOUT
4284
4285 06063 0260 DEC260, 260
4286 06064 0000 DECDIG, 0
4287 06065 0000 DECNUM, 0
4288 06066 1267 DECTAD, TAD .+1
4289 06067 6030 -1750 /1000
4290 06070 7634 -144 /100
4291 06071 7766 -12 /10
/TSS-8.25 CONFIGURATION FOR UWM Page 107
4292 /ROUTINE TO SET UP 'JOBDAT' FOR DIFFERENT JOB NUMBERS
4293
4294 DECPRT,
4295 06072 0000 SETJB0, 0
4296 06073 6211 DATFLD
4297 06074 0023 AND C0037
4298 06075 7450 SNA /ANY PARAMETER PASSED?
4299 06076 1050 TAD SIJOB /NO - SET CURRENT JOB
4300 06077 3072 DCA IOTP7
4301 06100 7320 CLA CLL CML
4302 06101 1072 TAD IOTP7
4303 06102 7450 SNA /IS HE LOGGED IN?
4304 06103 5315 JMP SETJB1 /NO - CLEAR JOBDAT
4305 06104 1165 TAD MJBMAX
4306 06105 7660 SZA SNL CLA /LEGAL JOB #?
4307 06106 5315 JMP SETJB1 /NO - JUST CLEAR 'JOBDAT'
4308 06107 1072 TAD IOTP7
4309 06110 1163 TAD JOBTBA /START OF JOBTBL
4310 06111 3220 DCA DECOUT
4311 06112 1620 TAD I DECOUT
4312 06113 7440 SZA /IS THE JOB ACTIVE?
4313 06114 2272 ISZ SETJB0 /YES - SKIP NEXT INSTRUCTION
4314 06115 3562 SETJB1, DCA I JOBDAT
4315 06116 6221 CHDF
4316 06117 5672 JMP I SETJB0 /RETURN
/TSS-8.25 CONFIGURATION FOR UWM Page 108
4317 06120 0314 COMLGM, "L;"O;"G;"I;"N;240;"P;"L;"E;"A;"S;"E;0
06121 0317
06122 0307
06123 0311
06124 0316
06125 0240
06126 0320
06127 0314
06130 0305
06131 0301
06132 0323
06133 0305
06134 0000
4318 06135 0325 UNACCT, "U;"N;"A;"U;"T;"H;"O;"R;"I;"Z;"E;"D;240
06136 0316
06137 0301
06140 0325
06141 0324
06142 0310
06143 0317
06144 0322
06145 0311
06146 0332
06147 0305
06150 0304
06151 0240
4319 06152 0301 "A;"C;"C;"O;"U;"N;"T
06153 0303
06154 0303
06155 0317
06156 0325
06157 0316
06160 0324
4320 06161 0215 CRLF, 215
4321 06162 0212 LINE, 212
4322 06163 0000 0
4323 06164 0311 ILLREQ, "I;"L;"L;"E;"G;"A;"L;240;"R;"E;"Q;"U;"E;"S;"T;0
06165 0314
06166 0314
06167 0305
06170 0307
06171 0301
06172 0314
06173 0240
06174 0322
06175 0305
06176 0321
06177 0325
06200 0305
06201 0323
06202 0324
06203 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 109
4324 /
4325 /COMMAND BUFFER AND ASCII OUTPUT BUFFER
4326 06204 0000 0
4327 06205 0000 COMBUF, 0
4328 06206 0000 0
4329 06207 0000 0
4330 06210 0000 0
4331 06211 0000 0
4332 06212 0000 0
4333 06213 0000 0
4334 06214 0000 0
4335 06215 0000 0
4336 06216 0000 0
4337 06217 0000 0
4338 06220 0000 0
4339
4340 1400 FIPFLS= USAVE+UREST /CONTROL-BITS FOR 'FIP' COMMANDS
4341
4342 06221 6232 COMTBL, CL1 /LOGIN O1 S1;
4343 06222 4020 NOLOG+PRCRLF /IOTP2:=O1 ACCOUNT #
4344 06223 0214 LIN /IOTP3-4:=S1 PASSWORD
4345 06224 3004 LOGIN /RESP: VERSION # HR:MIN
4346 06225 7464 -"L /.
4347 06226 7461 -"O
4348 06227 7471 -"G
4349 06230 7467 -"I
4350 06231 7462 -"N
4351 06232 6244 CL1, CL2 /LOGOUT;
4352 06233 2002 USERM+2 /RESP: .
4353 06234 6601 OPEN /.
4354 06235 4765 LOGOUT
4355 06236 7464 -"L
4356 06237 7461 -"O
4357 06240 7471 -"G
4358 06241 7461 -"O
4359 06242 7453 -"U
4360 06243 7454 -"T
4361 06244 6254 CL2, CL3 /TIME;
4362 06245 4000 NOLOG /RESP: HR:MIN
4363 06246 0000 0 /.
4364 06247 5604 TIME
4365 06250 7454 -"T
4366 06251 7467 -"I
4367 06252 7463 -"M
4368 06253 7473 -"E
4369 06254 6266 CL3, CL4 /ASSIGN L1 O1;
4370 06255 1402 FIPFLS+2 /AC0-5:=DEVICE # OF L1
4371 06256 0040 ASD /AC6-11:=O1 UNIT #
4372 06257 3414 ASSIGN /ERROR: AC NOT 0
4373 06260 7477 -"A /RESP: .
4374 06261 7455 -"S
4375 06262 7455 -"S
4376 06263 7467 -"I
4377 06264 7471 -"G
4378 06265 7462 -"N
4379 06266 6300 CL4, CL5 /RELEAS L1 O1;
4380 06267 1402 FIPFLS+2 /SAME AS ASSIGN
/TSS-8.25 CONFIGURATION FOR UWM Page 110
4381 06270 0042 REL
4382 06271 3554 RELEAS
4383 06272 7456 -"R
4384 06273 7473 -"E
4385 06274 7464 -"L
4386 06275 7473 -"E
4387 06276 7477 -"A
4388 06277 7455 -"S
4389 06300 6310 CL5, CL7 /TALK C1 S1
4390 06301 0000 0 /C1=CONSOLE TO TALK TO
4391 06302 0000 0 /S1=MESAGE TO TRANSMIT
4392 06303 5455 TALK /RESP: CR-LF .
4393 06304 7454 -"T /ON RECEIVERS TTY: ** KXX/NNNN: S1
4394 06305 7477 -"A / WHERE KXX IS SENDER'S TTY
4395 06306 7464 -"L / AND NNNN IS SENDER'S ACCOUNT #
4396 06307 7465 -"K
4397 06310 6320 CL7, CL8 /OPEN O1 S1 O2;
4398 06311 1402 FIPFLS+2 /IOTP1:=O1 INTERNAL FILE #
4399 06312 6601 OPEN /IOTP2:=O2 ACCOUNT #
4400 06313 3602 FOPEN /IOTP3-5:=S1 FILE NAME
4401 06314 7461 -"O /ERROR: AC NOT 0
4402 06315 7460 -"P /RESP: .
4403 06316 7473 -"E
4404 06317 7462 -"N
4405 06320 6331 CL8, CL9 /CLOSE S1;
4406 06321 1402 FIPFLS+2 /ACI:=1 I=0,1,2,3
4407 06322 0202 CLOS /ERROR: AC NOT 0
4408 06323 0741 CLOSE /RESP:
4409 06324 7475 -"C /.
4410 06325 7464 -"L
4411 06326 7461 -"O
4412 06327 7455 -"S
4413 06330 7473 -"E
4414 06331 6343 CL9, CL10 /CREATE S1;
4415 06332 1402 FIPFLS+2 /IOTP1-3:=S1 FILE NAME
4416 06333 0210 CRF /ERROR: AC NOT 0
4417 06334 3637 CREATE /RESP:
4418 06335 7475 -"C /.
4419 06336 7456 -"R
4420 06337 7473 -"E
4421 06340 7477 -"A
4422 06341 7454 -"T
4423 06342 7473 -"E
4424 06343 6355 CL10, CL11 /RENAME O1 S1;
4425 06344 1402 FIPFLS+2 /IOTP1:=O1 INTERNAL FILE #
4426 06345 0200 REN /IOTP2-4:=S1 NEW NAME
4427 06346 4165 RENAME /ERROR: AC NOT 0
4428 06347 7456 -"R /RESP: .
4429 06350 7473 -"E
4430 06351 7462 -"N
4431 06352 7477 -"A
4432 06353 7463 -"M
4433 06354 7473 -"E
4434 06355 6366 CL11, CL12 /XOPEN O1 S1 O2
4435 06356 1402 FIPFLS+2 /OPEN FILE WITH EXCLUSIVE USE
4436 06357 6606 XOPEN
4437 06360 3602 FOPEN
/TSS-8.25 CONFIGURATION FOR UWM Page 111
4438 06361 7450 -"X
4439 06362 7461 -"O
4440 06363 7460 -"P
4441 06364 7473 -"E
4442 06365 7462 -"N
4443 06366 6400 CL12, CL13 /REDUCE O1 D1;
4444 06367 1402 FIPFLS+2 /IOTP1:=O1 INTERNAL FILE #
4445 06370 0212 RED /IOTP2:=D1 # SEGMENTS TO REMOVE
4446 06371 3364 REDUCE /ERROR: AC NOT 0
4447 06372 7456 -"R /RESP: .
4448 06373 7473 -"E
4449 06374 7474 -"D
4450 06375 7453 -"U
4451 06376 7475 -"C
4452 06377 7473 -"E
4453 06400 6412 CL13, CL14 /EXTEND O1 D1;
4454 06401 1402 FIPFLS+2 /SAME AS REDUCE
4455 06402 0211 EXT
4456 06403 3364 EXTEND
4457 06404 7473 -"E
4458 06405 7450 -"X
4459 06406 7454 -"T
4460 06407 7473 -"E
4461 06410 7462 -"N
4462 06411 7474 -"D
4463 06412 6424 CL14, CL16 /PROTECT O1 O2;
4464 06413 1402 FIPFLS+2 /AC5-6:=O1 INTERNAL FILE #
4465 06414 0204 PROT /AC7-11:=O2 NEW PROTECTION
4466 06415 0664 PROTEC /ERROR: AC NOT 0
4467 06416 7460 -"P /RESP: .
4468 06417 7456 -"R
4469 06420 7461 -"O
4470 06421 7454 -"T
4471 06422 7473 -"E
4472 06423 7475 -"C
4473 06424 6431 CL16, CL17 /F O1;
4474 06425 1403 FIPFLS+3 /IOTP1:=O1 INTERNAL FILE #
4475 06426 6613 FINF /ERROR: AC NOT 0
4476 06427 4402 F /RESP: ACCT-# FILE-NAME PROT SIZE
4477 06430 7472 -"F /.
4478 06431 6441 CL17, CL18 /SAVE S1 O1 O2 O3;
4479 06432 3402 USAVE+UREST+USERM+2
4480 06433 6606 XOPEN
4481 06434 5002 SAVE
4482 06435 7455 -"S
4483 06436 7477 -"A
4484 06437 7452 -"V
4485 06440 7473 -"E
/TSS-8.25 CONFIGURATION FOR UWM Page 112
4486 06441 6451 CL18, CL19 /LOAD O1 S1 O2 O3 O4;
4487 06442 3402 USAVE+UREST+USERM+2
4488 06443 6601 OPEN
4489 06444 5010 LOAD
4490 06445 7464 -"L
4491 06446 7461 -"O
4492 06447 7477 -"A
4493 06450 7474 -"D
4494 06451 6462 CL19, CL20 /START O1;
4495 06452 0000 0
4496 06453 0000 0
4497 06454 4003 START
4498 06455 7455 -"S
4499 06456 7454 -"T
4500 06457 7477 -"A
4501 06460 7456 -"R
4502 06461 7454 -"T
4503 06462 6467 CL20, CL21 /S;
4504 06463 0000 0
4505 06464 0000 0
4506 06465 3647 S
4507 06466 7455 -"S
4508 06467 6500 CL21, CL22 /WHERE;
4509 06470 0003 3
4510 06471 0000 0
4511 06472 4076 WHERE
4512 06473 7451 -"W
4513 06474 7470 -"H
4514 06475 7473 -"E
4515 06476 7456 -"R
4516 06477 7473 -"E
4517 06500 6510 CL22, CL23 /USER O1;
4518 06501 4001 NOLOG+1
4519 06502 0000 0
4520 06503 4502 USER
4521 06504 7453 -"U
4522 06505 7455 -"S
4523 06506 7473 -"E
4524 06507 7456 -"R
4525 06510 6522 CL23, CL29 /SWITCH 01;
4526 06511 0000 0
4527 06512 0000 0
4528 06513 5410 SWITCH
4529 06514 7455 -"S
4530 06515 7451 -"W
4531 06516 7467 -"I
4532 06517 7454 -"T
4533 06520 7475 -"C
4534 06521 7470 -"H
4535 06522 6534 CL29, CL32 /DUPLEX;
4536 06523 0000 0
4537 06524 0000 0
4538 06525 7313 DUPLEX
4539 06526 7474 -"D
4540 06527 7453 -"U
4541 06530 7460 -"P
4542 06531 7464 -"L
/TSS-8.25 CONFIGURATION FOR UWM Page 113
4543 06532 7473 -"E
4544 06533 7450 -"X
/TSS-8.25 CONFIGURATION FOR UWM Page 114
4545 06534 6541 CL32, CL33 /R S1
4546 06535 2002 USERM+2 /S1=FILE NAME
4547 06536 6601 OPEN
4548 06537 4610 R
4549 06540 7456 -"R
4550 06541 6550 CL33, CL34 /RUN C1 S1
4551 06542 2002 USERM+2 /C1=ACCOUNT OF FILE OWNER (OPTIONAL)
4552 06543 6601 OPEN /S1=FILE NAME
4553 06544 4604 RUN
4554 06545 7456 -"R
4555 06546 7453 -"U
4556 06547 7462 -"N
4557 06550 6562 CL34, CL35 /EXAMINE C1 D1
4558 06551 2001 USERM+1 /C1=STARTING ADDRESS
4559 06552 6603 DMAR
4560 06553 5317 EXAMIN /D1=#OF LOCATIONS TO EXAMINE
4561 06554 7473 -"E
4562 06555 7450 -"X
4563 06556 7477 -"A
4564 06557 7463 -"M
4565 06560 7467 -"I
4566 06561 7462 -"N
4567 06562 6574 CL35, CL36 /DEPOSIT C1 C2 C3 ... C13
4568 06563 2001 USERM+1 /C1=STARTING ADDRESS
4569 06564 6605 DMAW /C2,...,C13=NEW VALUES
4570 06565 5202 DEPOSI
4571 06566 7474 -"D
4572 06567 7473 -"E
4573 06570 7460 -"P
4574 06571 7461 -"O
4575 06572 7455 -"S
4576 06573 7467 -"I
4577 06574 6606 CL36, CL37 /VERSION
4578 06575 4000 NOLOG /RESP: TSS/8.C1
4579 06576 0000 0
4580 06577 3356 VERSIN /C1=VERSION #
4581 06600 7452 -"V
4582 06601 7473 -"E
4583 06602 7456 -"R
4584 06603 7455 -"S
4585 06604 7467 -"I
4586 06605 7461 -"O
4587 06606 6617 CL37, CL38 /BREAK O1
4588 06607 0000 0
4589 06610 0000 0
4590 06611 5415 BREAK
4591 06612 7476 -"B
4592 06613 7456 -"R
4593 06614 7473 -"E
4594 06615 7477 -"A
4595 06616 7465 -"K
4596
4597 06617 6631 CL38, CL39 /RESTART O1
4598 06620 0000 0
4599 06621 0000 0
4600 06622 5400 RESTRT
4601 06623 7456 -"R
/TSS-8.25 CONFIGURATION FOR UWM Page 115
4602 06624 7473 -"E
4603 06625 7455 -"S
4604 06626 7454 -"T
4605 06627 7477 -"A
4606 06630 7456 -"R
4607 06631 6643 CL39, CL40 /UNDUPLEX
4608 06632 0000 0
4609 06633 0000 0
4610 06634 7312 UNDUPL
4611 06635 7453 -"U
4612 06636 7462 -"N
4613 06637 7474 -"D
4614 06640 7453 -"U
4615 06641 7460 -"P
4616 06642 7464 -"L
4617 06643 6655 CL40, CL41 /SYSTAT
4618 06644 2002 USERM+2
4619 06645 6601 OPEN
4620 06646 4723 SYSTAT
4621 06647 7455 -"S
4622 06650 7447 -"Y
4623 06651 7455 -"S
4624 06652 7454 -"T
4625 06653 7477 -"A
4626 06654 7454 -"T
4627 06655 6665 CL41, CL42 /KJOB
4628 06656 2002 USERM+2 /EQUIVALENT TO .R LOGOUT
4629 06657 6601 OPEN
4630 06660 4765 LOGOUT
4631 06661 7465 -"K
4632 06662 7466 -"J
4633 06663 7461 -"O
4634 06664 7476 -"B
4635 06665 6677 CL42, CL43 /BROADCAST S1
4636 06666 0000 0 /SEND MESSAGE S1 TO ALL LOGGED IN CONSOLES
4637 06667 0000 0 /MUST BE LOGGED-IN ON SYSTEM ACCOUNT
4638 06670 2726 BROAD
4639 06671 7476 -"B
4640 06672 7456 -"R
4641 06673 7461 -"O
4642 06674 7477 -"A
4643 06675 7474 -"D
4644 06676 7475 -"C
4645 06677 6710 CL43, CL44 /FORCE C1 ^ S1
4646 06700 0000 0 /FORCE STRING S1 INTO INPUT BUFFER OF CONSOLE C1
4647 06701 0000 0 /MUST BE LOGGED-IN ON SYSTEM ACCT
4648 06702 4200 FORSE /IF S1 BEGINS WITH ^, IT IS PRECEEDED BY ^B
4649 06703 7472 -"F
4650 06704 7461 -"O
4651 06705 7456 -"R
4652 06706 7475 -"C
4653 06707 7473 -"E
4654 06710 6716 CL44, CL45 /ONLINE
4655 06711 0000 0 /RE-ENABLES SYSTEM STOPPED BY OFFLINE
4656 06712 0000 0
4657 06713 1165 ONLIN
4658 06714 7461 -"O
/TSS-8.25 CONFIGURATION FOR UWM Page 116
4659 06715 7462 -"N
4660 06716 6725 CL45, CL46 /OFFLINE
4661 06717 0000 0 /GRACEFULLY STOPS THE SYSTEM BY
4662 06720 0000 0 / DISALLOWING MORE LOGINS
4663 06721 1164 OFFLIN
4664 06722 7461 -"O /USER MUST BE SYSTEM MANAGER
4665 06723 7472 -"F
4666 06724 7472 -"F
4667 06725 6736 CL46, CL47 /ODT
4668 06726 2002 USERM+2 /LOADS & STARTS 'ODTHI'
4669 06727 6601 OPEN
4670 06730 4772 ODT
4671 06731 7461 -"O
4672 06732 7474 -"D
4673 06733 7454 -"T
4674 06734 7470 -"H
4675 06735 7467 -"I
4676 06736 6746 CL47, CL48 /SEGS
4677 06737 4002 NOLOG+2 /TYPE THE NUMBER OF FREE SEGMENTS
4678 06740 0000 0
4679 06741 6000 SEGS0
4680 06742 7455 -"S
4681 06743 7473 -"E
4682 06744 7471 -"G
4683 06745 7455 -"S
/TSS-8.25 CONFIGURATION FOR UWM Page 117
4684 06746 6756 CL48, CL49 /HALF-DUPLEX HARDWARE (IGNORE 'DUP' IOTS)
4685 06747 0000 0
4686 06750 0000 0
4687 06751 7311 SETH
4688 06752 7455 -"S
4689 06753 7473 -"E
4690 06754 7454 -"T
4691 06755 7470 -"H
4692 06756 6766 CL49, CL50 /FULL-DUPLEX HARDWARE (SAME AS 'DUPLEX')
4693 06757 0000 0
4694 06760 0000 0
4695 06761 7313 DUPLEX
4696 06762 7455 -"S
4697 06763 7473 -"E
4698 06764 7454 -"T
4699 06765 7472 -"F
4700 06766 6776 CL50, CL51 /INHIBIT TALKS TO THIS TERMINAL
4701 06767 0000 0
4702 06770 0000 0
4703 06771 7323 SETS
4704 06772 7455 -"S
4705 06773 7473 -"E
4706 06774 7454 -"T
4707 06775 7455 -"S
4708 06776 7006 CL51, CL52 /REENABLE TALKS TO THIS TERMINAL AFTER 'SETS'
4709 06777 0000 0
4710 07000 0000 0
4711 07001 7327 SETQ
4712 07002 7455 -"S
4713 07003 7473 -"E
4714 07004 7454 -"T
4715 07005 7457 -"Q
4716 07006 0000 CL52, 0
/TSS-8.25 CONFIGURATION FOR UWM Page 118
4717 07007 0316 NONSUC, "N;"O;"T;" ;"A;"V;"A;"I;"L;"A;"B;"L;"E;0
07010 0317
07011 0324
07012 0240
07013 0301
07014 0326
07015 0301
07016 0311
07017 0314
07020 0301
07021 0302
07022 0314
07023 0305
07024 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 119
4718
4719 07025 4400 SYBCLR, SICLR
4720 07026 7775 SYJSER, -JSERR-1
4721 07027 3160 SYSCLE, -JSRUN-JSHLT-JSPRIV-JSINER-7-1
4722 IFNZRO DSI-1000 <GLITCH>
4723 0027 SYSDSI= C1000 /DSI
4724 07030 4565 SYSEJN, USRPR
4725 IFNZRO JSINER-10 <GLITCH>
4726 0022 SYSINH= C0010 /JSINER
4727 07031 4103 SYSPRT, WHEPRT
4728
4729 07032 1050 SYSERR, TAD SIJOB
4730 07033 1170 TAD TTYTBA
4731 07034 3053 DCA COMDB0 /POINTER TO TTYTBL
4732 07035 6211 DATFLD
4733 07036 1453 TAD I COMDB0
4734 07037 7104 CLL RAL /UNIT*2= POSITION IN DEVTBL
4735 07040 1155 TAD DEVTBA
4736 07041 3053 DCA COMDB0
4737 07042 1053 TAD COMDB0
4738 07043 6201 CDF
4739 07044 3437 DCA I COMPTR /SET SO 'RESDDB' WILL WORK
4740 07045 3055 DCA COMRDB
4741 07046 6211 DATFLD
4742 07047 1453 TAD I COMDB0 /GET THE DDB ADDRESS
4743 07050 7450 SNA /IS THERE ONE?
4744 IFNZRO DEBUG <
4745 REBOOT /NO - ERROR *****
4746 >
4747 IFZERO DEBUG <
4748 07051 5260 JMP SYSRR1
4749 >
4750 07052 3053 DCA COMDB0
4751 07053 1027 TAD SYSDSI
4752 07054 7040 CMA
4753 07055 0453 AND I COMDB0
4754 07056 1027 TAD SYSDSI
4755 07057 3453 DCA I COMDB0 /SET JOB INTO 'SI' MODE
4756 07060 6221 SYSRR1, CHDF
4757 07061 4310 JMS SYSER0
4758 07062 4500 ASCOUT /RING-A-DING
4759 07063 2573 BELMSG
4760 07064 7000 NOP
4761 07065 1071 TAD IOTP6
4762 07066 0022 AND SYSINH
4763 07067 7640 SZA CLA /IS THE FULL ERROR-MESSAGE INHIBITED?
4764 07070 5517 EXIT /YES - JUST EXIT NOW
4765 07071 1071 TAD IOTP6
4766 07072 7700 SMA CLA /WAS HIS PROGRAM ACTIVE?
4767 07073 5301 JMP SYSRR2 /NO
4768 07074 1053 TAD COMDB0
4769 07075 6211 DATFLD
4770 07076 6202 CIF
4771 07077 4625 JMS I SYBCLR /OFF TO FIELD 0 TO CLEAR HIS INPUT BUFFER
4772 07100 4631 JMS I SYSPRT /PRINT THE 'WHERE' INFO
4773 07101 4500 SYSRR2, ASCOUT
4774 07102 6161 CRLF
/TSS-8.25 CONFIGURATION FOR UWM Page 120
4775 07103 7000 NOP
4776 07104 4500 ASCOUT
4777 07105 2576 PERIOD
4778 07106 7000 NOP
4779 07107 5517 EXIT
4780
4781 07110 0000 SYSER0, 0
4782 07111 4526 GETWRD /GET THE JOB STATUS WORD
4783 07112 0000 JOBSTS
4784 07113 3071 DCA IOTP6
4785 07114 6211 DATFLD
4786 07115 1071 TAD IOTP6
4787 07116 0021 AND C0007
4788 07117 1357 TAD SYSETB
4789 07120 3344 DCA SYSER1 /SAVE THE POINTER TO THE ERROR MESSAGE
4790 07121 1071 TAD IOTP6
4791 07122 0227 AND SYSCLE /CLEAR THE ERROR-CODE
4792 07123 1022 TAD SYSINH / AND SET 'ERROR INHIBIT' NOW
4793 07124 3472 DCA I IOTP7
4794 07125 2072 ISZ IOTP7
4795 07126 1472 TAD I IOTP7
4796 07127 0226 AND SYJSER / AND CLEAR JSERR IN STR1
4797 07130 3472 DCA I IOTP7
4798 07131 6221 CHDF
4799 07132 1071 TAD IOTP6
4800 07133 0022 AND SYSINH
4801 07134 7640 SZA CLA /WAS 'INHIBIT' ALREADY SET?
4802 07135 5710 JMP I SYSER0 /YES - DON'T PRINT ANYTHING
4803 07136 1744 TAD I SYSER1
4804 07137 3344 DCA SYSER1
4805 07140 4500 ASCOUT
4806 07141 6161 CRLF
4807 07142 5346 JMP SYSER2
4808 07143 4500 ASCOUT /NOW TYPE THE ERROR MESSAGE
4809 07144 0000 SYSER1, 0
4810 07145 7000 NOP
4811 07146 4500 SYSER2, ASCOUT / "FOR JOB"
4812 07147 5364 FORJOB
4813 07150 5356 JMP SYSER4
4814 07151 1050 TAD SIJOB
4815 07152 4630 JMS I SYSEJN / AND THE 2-DIGIT JOB #
4816 07153 4500 ASCOUT
4817 07154 6161 CRLF
4818 07155 7000 NOP
4819 07156 5710 SYSER4, JMP I SYSER0
4820
4821 07157 7160 SYSETB, .+1
4822 07160 5770 QQEST
4823 07161 7170 SYSET1
4824 07162 7204 SYSET2
4825 07163 7204 SYSET3
4826 07164 5770 QQEST
4827 07165 7217 SYSET5
4828 07166 7232 SYSET6
4829 07167 5770 QQEST
4830
4831 07170 0311 SYSET1, "I;"L;"L;"E;"G;"A;"L;" ;"I;"O;"T;0
/TSS-8.25 CONFIGURATION FOR UWM Page 121
07171 0314
07172 0314
07173 0305
07174 0307
07175 0301
07176 0314
07177 0240
07200 0311
07201 0317
07202 0324
07203 0000
4832 SYSET2,
4833 07204 0323 SYSET3, "S;"W;"A;"P;" ;"E;"R;"R;"O;"R;0
07205 0327
07206 0301
07207 0320
07210 0240
07211 0305
07212 0322
07213 0322
07214 0317
07215 0322
07216 0000
4834 07217 0304 SYSET5, "D;"I;"S;"C;" ;"E;"R;"R;"O;"R;0
07220 0311
07221 0323
07222 0303
07223 0240
07224 0305
07225 0322
07226 0322
07227 0317
07230 0322
07231 0000
4835 07232 0310 SYSET6, "H;"U;"N;"G;" ;"D;"E;"V;"I;"C;"E;0
07233 0325
07234 0316
07235 0307
07236 0240
07237 0304
07240 0305
07241 0326
07242 0311
07243 0303
07244 0305
07245 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 122
4836 /RETURN FOR FILE COMMANDS
4837
4838 07246 4526 FIPEND, GETWRD
4839 07247 0013 JOBREG+2
4840 07250 7450 SNA /ANY ERROR CODE RETURNED?
4841 07251 5551 JMP I COMEXA /NO - JUST EXIT
4842 07252 3064 DCA IOTP1
4843 07253 1344 TAD FIPETB
4844 07254 3010 DCA IX1
4845 07255 1410 FIPEN1, TAD I IX1
4846 07256 7450 SNA /REACHED END OF TABLE?
4847 07257 5270 JMP FIPEN2 /YES - MUST BE 'EXTEND' FAILURE
4848 07260 1064 TAD IOTP1
4849 07261 7640 SZA CLA /THIS CODE?
4850 07262 5255 JMP FIPEN1 /NO - KEEP LOOKING
4851 07263 1010 TAD IX1 /GET MESSAGE ADDRESS
4852 07264 1356 TAD FIPMTB
4853 07265 3064 DCA IOTP1
4854 07266 1464 TAD I IOTP1
4855 07267 5545 JMP I COMERA
4856
4857 07270 4500 FIPEN2, ASCOUT
4858 07271 6161 CRLF
4859 07272 7000 NOP
4860 07273 4500 ASCOUT / "FAILED BY N SEGMENTS"
4861 07274 7650 FAILBY
4862 07275 7000 NOP
4863 07276 1064 TAD IOTP1
4864 07277 4710 JMS I FIPDEC /CONVERT THE NUMBER TO DECIMAL
4865 07300 6204 COMBUF-1
4866 07301 4500 ASCOUT / AND TYPE IT
4867 07302 6205 COMBUF
4868 07303 7000 NOP
4869 07304 4500 ASCOUT
4870 07305 7547 SEGMTA
4871 07306 7000 NOP
4872 07307 5551 JMP I COMEXA
4873
4874 07310 6020 FIPDEC, DECOUT
4875
4876 IFNZRO DHALF-10 <GLITCH>
4877 IFNZRO DUPL-200 <GLITCH>
4878
4879 07311 1022 SETH, TAD C0010 /HALF-DUPLEX HARDWARE FLAG
4880 07312 1025 UNDUPL, TAD C0200 /UNDUPLEX BIT
4881 07313 3063 DUPLEX, DCA IOTP0
4882 07314 6211 DATFLD
4883 07315 1453 TAD I COMDB0 /WORD 1 OF DDB
4884 07316 0322 AND MDUPL /CLEAR BIT
4885 07317 1063 TAD IOTP0
4886 07320 3453 DCA I COMDB0 /SET NEW BITS
4887 07321 5551 JMP I COMEXA
4888 07322 7567 MDUPL, -DUPL-DHALF-1
4889
4890 /COMMAND HANDLER TO INHIBIT/REENABLE TALKS TO A TERMINAL
4891 IFNZRO DTALK-1 <GLITCH>
4892
/TSS-8.25 CONFIGURATION FOR UWM Page 123
4893 07323 1051 SETS, TAD SIKBD
4894 07324 7650 SNA CLA /IS HE TRYING TO LOCK OUT TALKS ON K00?
4895 07325 5545 JMP I COMERA /YES - BUT THAT'S THE CONSOLE!!
4896 07326 7201 CLA IAC
4897 07327 3063 SETQ, DCA IOTP0 /SAVE THE FLAG TO SET
4898 07330 4534 RESDDB /GET THE OUTPUT DDB ADDRESS
4899 07331 3064 DCA IOTP1
4900 07332 6211 DATFLD
4901 07333 1464 TAD I IOTP1
4902 07334 7450 SNA /IS THERE ONE?
4903 07335 5545 JMP I COMERA /NO - ERROR
4904 07336 3064 DCA IOTP1
4905 07337 7344 CLA CLL CMA RAL
4906 07340 0464 AND I IOTP1
4907 07341 1063 TAD IOTP0 /NOW SET (OR CLEAR) THE TALK-INHIBIT
4908 07342 3464 DCA I IOTP1
4909 07343 5551 JMP I COMEXA
4910
4911 07344 7344 FIPETB, .
4912 07345 4000 -4000 /FILE NOT OPEN
4913 07346 3400 -4400 /FILE IN USE
4914 07347 3000 -5000 /DIRECTORY FULL
4915 07350 2400 -5400 /BAD DIRECTORY
4916 07351 2000 -6000 /PROTECTION VIOLATION
4917 07352 1400 -6400 /BAD FILE NAME FOR RENAME
4918 07353 1000 -7000 /FILE NOT FOUND
4919 07354 0400 -7400 /DISC FULL
4920 07355 0000 0
4921 07356 0012 FIPMTB, .-FIPETB
4922 07357 7367 FM4000
4923 07360 7663 FM4400
4924 07361 7677 FM5000
4925 07362 7217 SYSET5
4926 07363 7405 FM6000
4927 07364 7716 FM6400
4928 07365 7432 FM7000
4929 07366 7733 FM7400
4930
4931 07367 0306 FM4000, "F;"I;"L;"E;" ;"N;"O;"T;" ;"O;"P;"E;"N;0
07370 0311
07371 0314
07372 0305
07373 0240
07374 0316
07375 0317
07376 0324
07377 0240
07400 0317
07401 0320
07402 0305
07403 0316
07404 0000
4932 07405 0320 FM6000, "P;"R;"O;"T;"E;"C;"T;"I;"O;"N;" ;"V;"I;"O;"L;"A;"T;"I;"O;"N;0
07406 0322
07407 0317
07410 0324
07411 0305
/TSS-8.25 CONFIGURATION FOR UWM Page 124
07412 0303
07413 0324
07414 0311
07415 0317
07416 0316
07417 0240
07420 0326
07421 0311
07422 0317
07423 0314
07424 0301
07425 0324
07426 0311
07427 0317
07430 0316
07431 0000
4933 07432 0306 FM7000, "F;"I;"L;"E;" ;"N;"O;"T;" ;"F;"O;"U;"N;"D;0
07433 0311
07434 0314
07435 0305
07436 0240
07437 0316
07440 0317
07441 0324
07442 0240
07443 0306
07444 0317
07445 0325
07446 0316
07447 0304
07450 0000
4934 07451 0301 LOGE0, "A;"L;"R;"E;"A;"D;"Y;" ;"L;"O;"G;"G;"E;"D;" ;"I;"N;0
07452 0314
07453 0322
07454 0305
07455 0301
07456 0304
07457 0331
07460 0240
07461 0314
07462 0317
07463 0307
07464 0307
07465 0305
07466 0304
07467 0240
07470 0311
07471 0316
07472 0000
4935 07473 0240 LBRACK, " ;"[;0
07474 0333
07475 0000
4936 07476 0335 RBRACK, "];" ;"O;"N;" ;"K;0
07477 0240
07500 0317
07501 0316
07502 0240
/TSS-8.25 CONFIGURATION FOR UWM Page 125
07503 0313
07504 0000
4937 07505 0324 TYCRLB, "T;"Y;"P;"E;" ;"^;"B;"S;" ;"F;"I;"R;"S;"T;0
07506 0331
07507 0320
07510 0305
07511 0240
07512 0336
07513 0302
07514 0323
07515 0240
07516 0306
07517 0311
07520 0322
07521 0323
07522 0324
07523 0000
4938 07524 0311 FORMSG, "I;"L;"L;"E;"G;"A;"L;" ;"F;"O;"R;"C;"E;0
07525 0314
07526 0314
07527 0305
07530 0307
07531 0301
07532 0314
07533 0240
07534 0306
07535 0317
07536 0322
07537 0303
07540 0305
07541 0000
4939 07542 0240 FSEGMS, " ;"F;"R;"E;"E
07543 0306
07544 0322
07545 0305
07546 0305
4940 07547 0240 SEGMTA, " ;"S;"E;"G;"M;"E;"N;"T;"S;0
07550 0323
07551 0305
07552 0307
07553 0315
07554 0305
07555 0316
07556 0324
07557 0323
07560 0000
4941 07561 0316 TALKLM, "N;"O;" ;"T;"A;"L;"K;"S;";;" ;"U;"S;"E;" ;"M;"A;"I;"L;0
07562 0317
07563 0240
07564 0324
07565 0301
07566 0314
07567 0313
07570 0323
07571 0273
07572 0240
07573 0325
/TSS-8.25 CONFIGURATION FOR UWM Page 126
07574 0323
07575 0305
07576 0240
07577 0315
07600 0301
07601 0311
07602 0314
07603 0000
4942 07604 0327 WAITIO, "W;"A;"I;"T;" ;"F;"O;"R;" ;"I;"/;"O;0
07605 0301
07606 0311
07607 0324
07610 0240
07611 0306
07612 0317
07613 0322
07614 0240
07615 0311
07616 0257
07617 0317
07620 0000
4943
4944 0002 VERDG1= VERNUM%12
4945 0005 VERDG2= -VERDG1^12+VERNUM
4946 07621 0215 VERSIM, 215;212;"U;"W;"M;"';"S;" ;"T;"S;"S;"-
07622 0212
07623 0325
07624 0327
07625 0315
07626 0247
07627 0323
07630 0240
07631 0324
07632 0323
07633 0323
07634 0255
4947 IFNZRO CPU-3 <
4948 07635 0270 "8
4949 IFZERO CPU <"/;"I>
4950 07636 0257 IFZERO CPU-2 <"/;"E>
07637 0305
4951 IFZERO CPU-4 <"/;"A>
4952 >
4953 IFZERO CPU-3 <"1;"2>
4954 07640 0256 ".;"0+VERDG1;"0+VERDG2
07641 0262
07642 0265
4955 07643 0240 " ;" ;" ;0
07644 0240
07645 0240
07646 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 127
4956 37777777650 VERBRK= -130 /SPACE FOR 'BROADCAST' TEXT (87 CHARACTERS)
4957 IFNZRO VERBRK-.&4000 <GLITCH>
4958 7650 *VERBRK
4959 /NOTE THAT THE 'VERBRK' BUFFER CAN OVERLAY
4960 /ANYTHING FROM HERE TO THE END OF THIS FIELD.
4961 /ANYTHING PLACED HERE SHOULD ONLY BE USED
4962 /IMMEDIATELY AFTER SI IS LOADED. FOR EXAMPLE,
4963 /THE 'FAILED BY N SEGMENTS' MESSAGE IS ONLY TYPED
4964 /AFTER A RETURN FROM FIP, IT DOESN'T MATTER IF IT IS
4965 /CLOBBERED, THEREFORE.
4966
4967 07650 0306 FAILBY, "F;"A;"I;"L;"E;"D;" ;"B;"Y;" ;0
07651 0301
07652 0311
07653 0314
07654 0305
07655 0304
07656 0240
07657 0302
07660 0331
07661 0240
07662 0000
4968 07663 0306 FM4400, "F;"I;"L;"E;" ;"I;"N;" ;"U;"S;"E;0
07664 0311
07665 0314
07666 0305
07667 0240
07670 0311
07671 0316
07672 0240
07673 0325
07674 0323
07675 0305
07676 0000
4969 07677 0304 FM5000, "D;"I;"R;"E;"C;"T;"O;"R;"Y;" ;"F;"U;"L;"L;0
07700 0311
07701 0322
07702 0305
07703 0303
07704 0324
07705 0317
07706 0322
07707 0331
07710 0240
07711 0306
07712 0325
07713 0314
07714 0314
07715 0000
4970 07716 0302 FM6400, "B;"A;"D;" ;"F;"I;"L;"E;"N;"A;"M;"E;0
07717 0301
07720 0304
07721 0240
07722 0306
07723 0311
07724 0314
07725 0305
/TSS-8.25 CONFIGURATION FOR UWM Page 128
07726 0316
07727 0301
07730 0315
07731 0305
07732 0000
4971 07733 0304 FM7400, "D;"I;"S;"C;" ;"F;"U;"L;"L;0
07734 0311
07735 0323
07736 0303
07737 0240
07740 0306
07741 0325
07742 0314
07743 0314
07744 0000
/TSS-8.25 CONFIGURATION FOR UWM Page 129
4972 IFNZRO 7745-.&4000 <GLITCH>
4973 7745 *7745
4974 /
4975 /SUPER-SHORT HAND-KEYABLE BOOTSTRAP FOR TSS/8!!
4976 /KEYIN (IN FIELD 0):
4977 / 7750 - 6603
4978 / 7751 - 7600
4979 / 7752 - 5352
4980 /
4981 /THEN LOAD ADDRESS 7750 AND START (OR 'CLEAR' & 'CONT').
4982 /IF DISC COPY OF TSS/8 IS INTACT, SYSTEM WILL RESTART.
4983 /
4984 /NOTE THAT WE SET THE DATA-BREAK CONTROL WORDS INDIRECTLY;
4985 /THIS ALLOWS THIS BOOTSTRAP TO BE USED IF IT HAPPENS TO BE
4986 /IN ANOTHER FIELD ALREADY.
4987 /
4988 07745 6622 BOOT1, DFSC /WAIT FOR TRANSFER TO COMPLETE
4989 07746 5345 JMP .-1
4990 07747 5353 JMP BOOT /THEN GO LOAD 'INIT'
4991 /
4992 07750 7751 7751 /THESE MUST BE HERE BECAUSE THEY
4993 07751 7751 7751 / OVERLAY CORE!!!
4994 07752 5345 JMP BOOT1 /THIS OVERLAYS 'JMP .'
4995 /
4996 07753 6201 BOOT, CDF
4997 IFNZRO CPU-2 <IOF>
4998 07754 6007 IFZERO CPU-2 <CAF>
4999 07755 7340 CLA CLL CMA /SET UP TO READ 'INIT'
5000 07756 3774 DCA I K7751
5001 07757 3773 DCA I K7750 /SET (-) WORD-COUNT
5002 07760 1372 TAD BTFLD
5003
5004 IFZERO RF08 <
5005 07761 6615 DIML /SET MEMORY FIELD
5006 07762 7326 CLA CLL CML RTL
5007 07763 6643 DXAL /SET DISC TRACK #
5008 >
5009 IFZERO RF08-40 <
5010 DEAL
5011 CLA
5012 >
5013 07764 6603 DMAR / AND READ THE TRACK
5014 07765 6622 DFSC
5015 07766 5365 JMP .-1 /WAIT FOR COMPLETION
5016 07767 6223 CIF CDF INFLD
5017 07770 5771 JMP I .+1 /THEN ENTER 'INIT'
5018 07771 4200 4200
5019
5020 IFZERO RF08 <
5021 07772 0020 BTFLD, INFLD /FIELD TO PUT 'INIT' INTO
5022 >
5023 IFZERO RF08-40 <
5024 BTFLD, 200+INFLD /'INIT' TRACK & IT'S FIELD
5025 >
5026 07773 7750 K7750, 7750
5027 07774 7751 K7751, 7751
5028
/TSS-8.25 CONFIGURATION FOR UWM Page 130
5029 ///// $$$$$
No detected errors
/TSS-8.25 CONFIGURATION FOR UWM Page 131
Symbol Table
1 ACC0 02676 BLT 4503 CALFBA 01153 CL42 06665 COM7 00502
2 ACC1 2625 BLT0 5200 CALFI0 01113 CL43 06677 COM8 00477
3 ACC2 02714 BOOT 07753 CALFI1 01140 CL44 06710 COM9 01002
4 ACC3 02700 BOOT1 07745 CALFI2 01136 CL45 06716 COM91 01010
5 ACC4 02713 BRDMAX 0012 CALFI4 01156 CL46 06725 COM91A 00532
6 ACCOMA 02725 BREAK 05415 CALFI5 01151 CL47 06736 COM92 01012
7 ACCTIN 4477 BRK1 05417 CALFIP 5505 CL48 06746 COM99 00504
8 ACSET 03454 BRK2 05430 CDL11 1720 CL49 06756 COM9A 00531
9 ASC240 02336 BRKINI 4000 CDL21 1704 CL5 06300 COMA 0025
10 ASCOT1 2012 BROAD 02726 CDR 0000 CL50 06766 COMBFA 00056
11 ASCOU0 02143 BROAD1 02736 CDVGAP 0003 CL51 06776 COMBIT 00340
12 ASCOU1 02154 BROAD2 02750 CDVIN 0003 CL52 07006 COMBUF 06205
13 ASCOU2 02164 BROAD3 02755 CDVOUT 0004 CL7 06310 COMCLN 01507
14 ASCOUT 4500 BROAD4 02772 CECI 6131 CL8 06320 COMCMS 01510
15 ASCSI0 02337 BROBRK 02767 CG0377 01704 CL9 06331 COMCNT 00035
16 ASCSI1 02346 BROLN 02776 CG7400 01705 CLK1 0033 COMCOM 00341
17 ASCSI2 02365 BROTAK 02777 CG7766 01706 CLK1A 05600 COMCRF 01200
18 ASCSIX 4501 BTFLD 07772 CHAR 00073 CLK2 0034 COMDB0 00053
19 ASD 0040 BUFDE0 02256 CHDF 6221 CLK2A 05601 COMDBT 00054
20 ASGOFF 03411 BUFDE1 02273 CHDFA 00052 CLKTBL 2722 COMDSI 0027
21 ASSBUF 01573 BUFDE2 02306 CHKAC0 02506 CLNFLG 01505 COMDSP 00036
22 ASSCAL 03410 BUFDE3 02323 CHKAC1 02523 CLOCKR 0062 COMECH 00533
23 ASSCNT 03551 BUFDE4 02333 CHKACT 4506 CLOS 0202 COMEQU 00536
24 ASSCO0 02465 BUFDE5 02334 CHKIO 4507 CLOSE 00741 COMERA 00145
25 ASSCOR 4502 BUFDEL 4504 CHKIO0 02666 CLOSE2 00762 COMERR 01211
26 ASSD 03406 BUFDT0 02255 CINT 6204 CLRPRV 4510 COMES1 00146
27 ASSDD 01567 BUFFER 05350 CJOB 0037 CLRPV0 00651 COMESA 01254
28 ASSDTA 03550 BUFIM1 0015 CJOBDA 0020 CLRPV1 00661 COMEXA 00151
29 ASSG10 01563 BUFINP 0016 CL1 06232 CLRSI 00520 COMEXP 00152
30 ASSG11 01561 BUFOUP 0021 CL10 06343 CLRSIA 01506 COMEXT 00240
31 ASSG60 03506 BUFTCT 0017 CL11 06355 COM 00200 COMF 05267
32 ASSG9A 03547 C0002 00014 CL12 06366 COM1 00216 COMFI1 00372
33 ASSIG2 03422 C0003 00015 CL13 06400 COM10 01314 COMFI2 00376
34 ASSIG3 03447 C0004 00016 CL14 06412 COM12 00513 COMFIP 00344
35 ASSIG4 03561 C0005 00017 CL16 06424 COM12A 01106 COMFLE 1200
36 ASSIG6 03471 C0006 00020 CL17 06431 COM13 01303 COMFLG 00060
37 ASSIG7 03441 C0007 00021 CL18 06441 COM16 01036 COMFND 0072
38 ASSIG8 03503 C0010 00022 CL19 06451 COM2 00226 COMGE0 01707
39 ASSIG9 01523 C0037 00023 CL2 06244 COM20 01400 COMGE1 01731
40 ASSIGF 03512 C0070 05270 CL20 06462 COM22 01416 COMGE2 01756
41 ASSIGN 03414 C0077 02526 CL21 06467 COM23 01453 COMGE3 01757
42 ASSIND 00766 C0100 00024 CL22 06500 COM24 01467 COMGET 4511
43 ASSNON 03546 C0140 05576 CL23 06510 COM25 01473 COMGT1 01763
44 ASSOUT 01533 C0177 02000 CL29 06522 COM26 01474 COMHLT 00342
45 ASSTBL 03400 C0200 00025 CL3 06254 COM28 01501 COMINH 00343
46 ASSTBZ 01572 C0260 01570 CL32 06534 COM3 00245 COMKEF 0024
47 ASSUNA 03545 C0400 00026 CL33 06541 COM31 00300 COMKEY 01513
48 ASSUNI 01542 C1000 00027 CL34 06550 COM4 00231 COMLGM 06120
49 ASSUPN 03543 C4000 00030 CL35 06562 COM41 00400 COMLNK 0070
50 AUTOPK 01107 C6201 00001 CL36 06574 COM43 00427 COMMSI 00534
51 AUTOR 04615 C7000 04745 CL37 06606 COM44 00435 COMNXT 0071
52 AUTOR1 05020 C7637 00031 CL38 06617 COM45 00437 COMPB 00535
53 AUTOR2 04621 C7700 00032 CL39 06631 COM5 00463 COMPB1 01327
54 AUTOST 4201 C7701 03544 CL4 06266 COM6 00451 COMPBF 01323
55 BCLR 0220 C7760 01571 CL40 06643 COM60 00510 COMPTR 00037
56 BELMSG 02573 C7766 05200 CL40A 04760 COM64 01224 COMQM 01201
57 BILLNG 0007 C7770 00033 CL41 06655 COM64A 00530 COMRDB 00055
/TSS-8.25 CONFIGURATION FOR UWM Page 132
Symbol Table
58 COMRE0 01245 DC08LO 0000 DSUTBA 00157 FILPDX 0001 FORFLG 04332
59 COMRE3 01262 DCLR 6742 DSUTBL 3061 FILPFN 0000 FORJOB 05364
60 COMRE4 01273 DCSIZE 0000 DTALK 0001 FILPIF 0002 FORMSG 07524
61 COMREG 01075 DDBBRK 0002 DTAMIN 0002 FILPRA 0006 FORMSL 04336
62 COMRES 01243 DDBINC 0005 DTDEF0 0535 FILPRO 0002 FORMX 0064
63 COMRET 01225 DDBINP 0004 DTDSF0 0541 FILPWC 0003 FORSE 04200
64 COMSET 00153 DDBJN 0001 DTDSK 0527 FILRES 0007 FOUT 04460
65 COMSIC 0024 DDBOUC 0006 DTJOB 0027 FILSCT 0001 FRCMAX 0012
66 COMSIF 01514 DDBOUP 0007 DTJOBA 03765 FILWC 0006 FRECNT 0040
67 COMSTP 0025 DDBSTS 0000 DTL11 0601 FILWPT 0000 FRECTA 00061
68 COMTBA 00527 DDBTIM 0003 DTL20 0551 FIMRST 00647 FREE 0037
69 COMTBE 00057 DEBUG 0000 DTL21 1004 FINF 6613 FSEGMS 07542
70 COMTBL 06221 DEC260 06063 DTRKHG 3671 FIOT2 04471 FSIXAS 04473
71 COMURE 01202 DECDIG 06064 DTSTP 03766 FIP 0400 FSWP 4000
72 COMWAT 5512 DECHO 0020 DUPL 0200 FIPBLK 7720 FXMSG 04477
73 COMWT0 00240 DECNT 05315 DUPLEX 07313 FIPCDR 00643 GETB 1400
74 CONDBA 0030 DECNUM 06065 DXOFF 3000 FIPCDW 00644 GETBLK 4520
75 CONDDB 0031 DECOT1 06032 DXON 2000 FIPCH2 00635 GETDB0 1440
76 CONDVA 00043 DECOT2 06033 EAE 0000 FIPCHK 00600 GETDDB 4521
77 CONTTY 0001 DECOUT 06020 ENDBUF 0400 FIPCOM 01001 GETFB0 01763
78 COPBQM 01203 DECPRT 06072 ENDIOT 5333 FIPDEC 07310 GETFBL 4522
79 COPRBF 01204 DECRC0 02244 ENDTBA 02414 FIPDEX 0004 GETJTA 4523
80 CORE 4513 DECRCT 4515 ENDTS0 02400 FIPEN1 07255 GETJTB 7200
81 CORES 4514 DECTAD 06066 ENDTST 4516 FIPEN2 07270 GETNAM 4524
82 CORJOB 00171 DEDEA 05314 ENTABL 5600 FIPEND 07246 GETTB0 02200
83 CORMEM 0070 DEDEF 05313 ERPDEX 0000 FIPETB 07344 GETTB1 02213
84 CORSER 02220 DEMOVE 05304 ERPWC 0000 FIPFLS 1400 GETTB2 02216
85 CORSRC 1317 DEPEX 05262 ERRFLG 00172 FIPJOB 0057 GETTBA 4525
86 CORTBA 00154 DEPEX2 05263 EXAM1A 05347 FIPMSK 00645 GETWR0 02452
87 CORTBL 7001 DEPEXA 01147 EXAMI1 00702 FIPMTB 07356 GETWR1 02457
88 CPASS 0207 DEPO3A 05201 EXAMI2 05235 FIPTCB 00646 GETWRD 4526
89 CPU 0002 DEPOS1 05221 EXAMI3 00712 FIPWC 0000 GIR 4737
90 CREATE 03637 DEPOS2 05213 EXAMI4 05351 FIXLC 01645 GIR00 6200
91 CRF 0210 DEPOS3 05264 EXAMI5 00727 FIXLC1 01660 HASITM 02565
92 CRLF 06161 DEPOS4 05271 EXAMIN 05317 FLBITS 00650 HUNGDV 0006
93 CSCF 6133 DEPOSI 05202 EXIT 5517 FM4000 07367 ILLMSG 00173
94 CSWAP 01000 DESRA 05312 EXITA 00117 FM4400 07663 ILLREQ 06164
95 CTEX6 01603 DESRF 05311 EXT 0211 FM5000 07677 INCLK1 7000
96 CTEXA 01600 DEVCHK 7045 EXTEND 03364 FM6000 07405 INCLK2 0645
97 CTEXCN 01602 DEVTBA 00155 F 04402 FM6400 07716 INFLD 0020
98 CTEXNU 01667 DEVTBE 2640 F1BUF 0177 FM7000 07432 INIDEX 0010
99 CTEXT 01604 DEVTBL 2600 F1DTST 2512 FM7400 07733 INPUTS 0036
100 CTEXT1 01612 DEVTND 00156 F1ECNT 0176 FMSG 04474 IOTEND 00160
101 CTEXT2 01641 DFORC 0004 F1OFFJ 0036 FMSGAD 04472 IOTP0 00063
102 CTEXZ 01601 DFULL 0400 F1RTN 0277 FOPEN 03602 IOTP1 00064
103 CTRLB 0002 DHALF 0010 F1TCNT 0175 FOPEN1 03620 IOTP2 00065
104 CTRLC 0040 DLAG 6743 F2 04410 FOPEN2 03632 IOTP3 00066
105 CTRLS 4000 DLCA 6744 F3 04425 FOR1 04244 IOTP4 00067
106 CUF 6264 DLDC 6746 F4 04442 FOR2 04267 IOTP5 00070
107 CUSERM 7332 DMAINT 6747 FAILBY 07650 FOR3 04271 IOTP6 00071
108 D680 0000 DRST 6745 FANFLD 02505 FOR4 04303 IOTP7 00072
109 D689 0000 DSBSYA 01152 FDECOU 04470 FOR5 04313 IOTPAR 00062
110 DATA1 2400 DSBUSY 0036 FILDA 0004 FORCLR 04331 IOTSET 02370
111 DATE 0035 DSI 1000 FILPAR 0003 FORCTL 04333 IX1 00010
112 DATFLD 6211 DSKERR 0005 FILPCA 0004 FORDEV 04321 IX2 00011
113 DBELL 1000 DSKP 6741 FILPCT 0007 FORDIF 04334 IX3 00012
114 DC08A 0000 DSKSIZ 0100 FILPDA 0005 FORFLC 04335 IX4 00013
/TSS-8.25 CONFIGURATION FOR UWM Page 133
Symbol Table
115 JBSRA 05440 L2SF 0041 LOGME5 03176 NUMOCT 02113 QEST 05771
116 JBSWR 05441 L2SV0 0042 LOGMIN 03177 NUMPLS 02007 QQEST 05770
117 JCOMBD 1000 L2TIM3 2631 LOGMSK 03172 NUMSGN 02143 QUANT 7772
118 JOB 0062 LBRACK 07473 LOGN4A 03160 NUMSPC 02010 QUEUE0 1473
119 JOBA 00161 LCF 6662 LOGN5A 03353 NUMZER 02011 R 04610
120 JOBACT 0015 LCP 6667 LOGN5B 03354 OCTACT 2457 R1 04625
121 JOBATV 01515 LIBACT 0002 LOGN5C 03355 OCTAS0 02424 R4 05156
122 JOBDAT 00162 LIE 6665 LOGOMA 04340 OCTAS1 02434 R4A 04713
123 JOBDWT 0004 LIN 0214 LOGOUT 04765 OCTASC 4530 R6 04656
124 JOBEAE 0014 LINE 06162 LOGPMA 03242 OCTASN 2452 R6A 04714
125 JOBERR 0006 LLC 6664 LOGPRG 03352 OCTM4 02450 R6B 04715
126 JOBF0 0020 LNGIOT 00164 LOGPTR 04761 OCTZER 02451 R7 04704
127 JOBF1 0021 LOAD 05010 LOGSR0 04071 ODT 04772 R8 04707
128 JOBF2 0022 LOAD1 05025 LOGST0 03233 ODT1 04775 RBOOT 00730
129 JOBF3 0023 LOAD2 05026 LOGUNA 03310 ODTMA 04343 RBRACK 07476
130 JOBLNK 0007 LOAD3 05074 LOGUSR 03360 OFF1 01141 RCNI 6637
131 JOBMAX 0024 LOAD4 05077 LOUT 0215 OFFJOB 01175 RCNO 6635
132 JOBNO 01362 LOAD4A 05116 LPC 6666 OFFLIN 01164 RCRA 6632
133 JOBREG 0011 LOAD6A 05117 LPT 0003 ON1 1140 RCRB 6634
134 JOBRTH 0017 LOADER 05113 LRFILE 05115 ONLIN 01165 RCRC 6636
135 JOBRTM 0016 LOADEX 05122 LSF 6661 OPEN 6601 RCRD 6674
136 JOBSCH 0024 LOADM1 05125 LSP 6665 OUTDIF 2200 RCSD 6671
137 JOBSRA 0005 LOADUA 05114 LSRP 6663 OUTIOT 2340 RCSE 6672
138 JOBSTB 0002 LOADUB 05120 MCR 01206 OUTREG 0200 RCSF 6631
139 JOBSTS 0000 LOADUS 01124 MDUPL 07322 OVERL1 5764 RCSI 6675
140 JOBSWR 0010 LOCK 2000 MJBMAX 00165 OVERLA 2364 RCTF 6677
141 JOBTBA 00163 LOGCTB 0014 MLCA 01664 OVRLA1 0572 READER 0001
142 JOBTBL 2675 LOGE0 07451 MLCZ 01665 P7777 00034 READFI 3652
143 JOBWMK 0003 LOGE1 01346 MQREG 0001 PERIOD 02576 REBOOT 4532
144 JSACC 0200 LOGE4 00542 MSEMI 01205 PHONES 0000 RED 0212
145 JSBAT 0100 LOGE5 04351 NFSEGS 5533 PLT 0000 REDO0 4172
146 JSDEL 0100 LOGER1 03074 NOHOLD 0140 PRBUF 0200 REDUCE 03364
147 JSEREN 2000 LOGER2 03111 NOLOG 4000 PRCRLF 0020 REL 0042
148 JSERR 0002 LOGER3 03075 NOMESS 0010 PRGHLT 03644 RELCO0 02476
149 JSF0 2000 LOGER4 03112 NONSUC 07007 PRGTBA 02665 RELCOM 02475
150 JSF1 1000 LOGER5 03113 NOTRUN 1000 PRGTBL 2774 RELCOR 4533
151 JSF2 0400 LOGFA2 03361 NSEMI 04762 PRINT 4531 RELEAS 03554
152 JSF3 0200 LOGFRC 0016 NULINE 0017 PRINT0 1203 RELF 03555
153 JSHLT 0200 LOGIE0 03250 NULLNA 03563 PROT 0204 RELOAD 3600
154 JSINER 0010 LOGIE1 03262 NUMAGN 0075 PROTEC 00664 REN 0200
155 JSIOT 0100 LOGIE2 03267 NUMB17 02001 PRQM 0100 RENAME 04165
156 JSIOTC 0040 LOGIEA 03000 NUMBI0 02012 PT0260 05740 RERR 04600
157 JSLPT 0040 LOGIF1 03320 NUMBI1 02040 PT08 0000 RESDDB 4534
158 JSPRIV 0400 LOGIF2 04740 NUMBI2 02043 PTAB 05744 RESJSC 05442
159 JSPTP 0004 LOGIFA 03001 NUMBI3 02121 PTAB1 05752 RESJSR 05443
160 JSPTR 0010 LOGIN 03004 NUMBI4 02141 PTABX 05735 RESPCT 0017
161 JSRSEN 0020 LOGIN1 03077 NUMBI5 02076 PTABX1 05736 RESPD3 02241
162 JSRUN 4000 LOGIN2 03104 NUMBI6 02132 PTCOLN 05741 RESPDB 02226
163 JSTEL 0020 LOGIN3 03115 NUMBIN 4527 PTCONT 05743 RESTBP 02625
164 JSTIME 4000 LOGIN4 03121 NUMCNT 02002 PTDIGI 05742 RESTEC 0017
165 JSWAIT 0001 LOGIN5 03200 NUMCOM 02003 PTFORM 05737 RESTRT 05400
166 K7750 07773 LOGINE 03245 NUMDEC 02103 PTIMA 05714 RETB 0600
167 K7751 07774 LOGINF 03311 NUMDIF 0022 PTIME 05663 RETBK0 05172
168 KL8 0017 LOGMA 04767 NUMDSP 02004 PTIMX 05700 RETBKS 4535
169 KLCFIX 01663 LOGME0 03173 NUMHO 00074 PTIMX1 05704 RETBLK 4536
170 L2EXIT 4051 LOGME1 03174 NUMINU 02005 PTLOOP 05674 RETDB0 05162
171 L2QTB 7010 LOGME4 03175 NUMM5 02006 PUNCH 0001 RETDBL 4537
/TSS-8.25 CONFIGURATION FOR UWM Page 134
Symbol Table
172 RETPA0 02600 SIDEX 0000 SYSET3 07204 USER1 04562
173 RETPA1 02610 SIECNT 00046 SYSET5 07217 USERM 2000
174 RETPAR 4540 SIERR 4542 SYSET6 07232 USRPR 04565
175 RETTMP 05131 SIFLG 00041 SYSETB 07157 UTABLE 6040
176 RF08 0000 SIJOB 00050 SYSINH 0022 UUCDR 1735
177 RFILE 6603 SIKBD 00051 SYSM 04737 UUDF 0172
178 RINGIN 0304 SINT 6254 SYSMA 04346 UUDTRK 1415
179 RJSDEL 0024 SIREG 00042 SYSPRT 07031 UUOERF 0001
180 RJSF3 05161 SIREGA 0025 SYSRR1 07060 UUOERR 4404
181 RK05 0001 SITCNT 00047 SYSRR2 07101 UUOEX1 0336
182 RK8E 0000 SIWC 0000 SYSTAT 04723 VERBRK 7650
183 RKDV 6740 SIX240 2565 TALK 05455 VERDG1 0002
184 RKJOB 0045 SIXADR 2465 TALK1 05507 VERDG2 0005
185 RKJOBA 03767 SIXAS1 02563 TALK2 05514 VERNUM 0031
186 RKL11 2000 SIXAS2 02541 TALK3 05541 VERSIM 07621
187 RKL20 3676 SIXASC 02527 TALK4 05555 VERSIN 03356
188 RKL21 1615 SIXCNT 2476 TALK5 05565 VERSMA 03321
189 RLOAD4 04717 SKIP 4404 TALKER 05561 WAIT 5544
190 RLS 05131 SKIPS 01667 TALKLM 07561 WAIT1 03731
191 RLSA 04720 SKIPS1 01672 TALKM1 00564 WAIT2 03760
192 RRFILE 04716 SKISPA 01654 TALKM2 00574 WAIT2A 03751
193 RS08 0001 SKITAB 01666 TALKM3 01367 WAIT3 03736
194 RSTART 04744 SKPTBL 0226 TALKMX 05577 WAITIO 07604
195 RTABLE 6160 SKPTP 0275 TC01 0001 WFILE 6605
196 RUN 04604 SLEEP 2357 TD8E 0000 WHEPRT 04103
197 S 03647 SPACE 03576 TEXTS 4543 WHERAC 01372
198 SATSIZ 0530 SPACES 03573 TICLK1 05603 WHERE 04076
199 SAVE 05002 SPL 6102 TICLK2 05602 WHERE1 04106
200 SAVE1 05012 STARS 05760 TICMIN 2260 WHERE2 04115
201 SAVE2 05003 START 04003 TICSPS 0024 WHERE3 04120
202 SAVE3 05010 START1 04046 TIMCDR 2621 WHERE5 04140
203 SAVNAM 02643 START2 04015 TIME 05604 WHERLK 05444
204 SBIT1 03726 START3 04044 TIME1 05646 WHERMQ 02166
205 SBIT2 03727 STBITS 04000 TIME2 05630 WHERPC 05773
206 SCHED0 3640 STCLR 04001 TIME3 05651 WHERSC 02173
207 SCOMND 03651 STEMP 0071 TIME4 05636 WHERSW 05450
208 SDVRK5 03730 STERF 04002 TIME5 05644 WHEVEC 04147
209 SEGCNT 06017 STOMIN 0005 TIMER0 2200 WHEVL 04154
210 SEGMTA 07547 SUF 6274 TLKMAX 0012 WINBAS 7730
211 SEGS0 06000 SWBASE 00167 TRUKBD 0012 WRDSEG 0400
212 SETH 07311 SWDEX 0005 TS8DEX 0030 WSCHED 3006
213 SETJB0 06072 SWFILE 05005 TTCHAR 0032 XOPEN 6606
214 SETJB1 06115 SWITCH 05410 TTYCHR 00044
215 SETJOB 4541 SWPRER 0002 TTYEVE 0001
216 SETQ 07327 SWPWER 0003 TTYTBA 00170
217 SETS 07323 SYBCLR 07025 TTYTBL 2747
218 SEXIT 03702 SYJSER 07026 TYCRLB 07505
219 SHTIOT 00166 SYSCLE 07027 UNACCT 06135
220 SI 0200 SYSDSI 0027 UNDUPL 07312
221 SI1 00003 SYSEJN 07030 UPEEK1 2445
222 SIBRKM 0204 SYSER0 07110 UPTIM1 0174
223 SIBUF 00045 SYSER1 07144 UPTIM2 0173
224 SICHAR 00040 SYSER2 07146 UREST 0400
225 SICLR 4400 SYSER4 07156 USAVE 1000
226 SICOM 0100 SYSERR 07032 USEJOB 4460
227 SICTLC 01207 SYSET1 07170 USER 04502
228 SIDATA 0020 SYSET2 07204 USER0 04515