1
0
mirror of https://github.com/rcornwell/ctss.git synced 2026-01-12 00:02:48 +00:00
Richard Cornwell c610c1cfe3 Added start of IBSYS build system.
Added original listing files for reference.
2016-09-27 22:42:50 -04:00

18131 lines
1.6 MiB

LOADTS BCD 02/22/71 1734.2 17632 00000
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 1
EXTERN ATTACH,OPEN,BUFFER,RDFILE,RDWAIT,WRFILE,CLOSE,IOFINI
EXTERN IORSET,RESETF
EXTERN PRNTER,UPDMFD,ALLOT,CHFILE
EXTERN DELFIL,SETIO,GETIME,TPWAIT,PRINT
AINST MACRO OPN,SYM MACRO USED TO GENERATE INSTRUCTIONS
ACORE .. WHICH REFER TO CORE 'A'
SEA .. PRECEDE INSTRUCTION(S) WITH SEA
SYM SYN * ..
IRP OPN .. ASSEMBLE INSTRUCTION(S)
OPN ..
IRP ..
SEB .. FOLLOW INSTRUCTION(S) WITH SEB
BCORE ..
AINST END ..
AINSTB MACRO OPN,SYM TO STORE LOADING INFORMATION IN TABLE
SYM SYN * ..
IRP OPN ..
OPN ..
IRP ..
AINSTB END ..
3 00001 1 60000 PAR OPSYN PTH USED TO SPECIFY PARAMETER TO FILE SYSTEM
00000 216363212330 ATTACH
00001 464725456060 OPEN
00002 226426262551 BUFFER
00003 512426314325 RDFILE
00004 512466213163 RDWAIT
00005 665126314325 WRFILE
00006 234346622560 CLOSE
00007 314626314531 IOFINI
00010 314651622563 IORSET
00011 512562256326 RESETF
00012 475145632551 PRNTER
00013 644724442624 UPDMFD
00014 214343466360 ALLOT
00015 233026314325 CHFILE
00016 242543263143 DELFIL
00017 622563314660 SETIO
00020 272563314425 GETIME
00021 634766213163 TPWAIT
00022 475131456360 PRINT
00023 236331442560 CTIME
00024 262551516345 FERRTN
00025 633143462342 TILOCK
01203 U TAPENO A3 OUTPUT TAPE FOR STORAGE MAP
00660 BSIZ EQU 432 BUFFER SIZE NEEDED BY I/O FILE SYSTEM
00007 EVNREC EQU 7 NO. OF RECORDS CONTAINING EVEN BSS IMAGE
00000 IM EQU 0 FOR RELATIVE ADDRESSING OF BUFFER
00034 BUFSIZ EQU 28 LENGTH OF BSS CARD IMAGE
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 2
05720 EVNBUF EQU EVNREC*BSIZ LENGTH OF BSS CARD IMAGE BUFFER
23420 LFLN EQU 10000 LENGTH OF 'LFILES' VECTOR
00024 LMNT EQU 20 LENGTH OF MISSING NAME TABLE
000061 HITRAP BOOL 61 HIGHEST TRAP OR INTERRUPT LOCATION
00062 ACORLD SYN HITRAP+1 LOADING ORIGIN IN A CORE
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 3
BEGINNING OF MODULAR CTSS LOADER ..........
00026 0760 00 0 00016 LMTM INSURE 7-TAG (7094) MODE
00027 0774 00 4 77777 AXT -1,4
00030 -0761 00 0 00041 SEA CLEAR MEMORY 'A'
00031 0600 00 4 77777 STZ -1,4 ..
00032 2 00001 4 00031 TIX *-1,4,1 ..
00033 0600 00 0 77777 STZ -1 .. CLEAR LAST WORD OF MEMORY 'A'
00034 -0761 00 0 00042 SEB RESET ECC FOR MEMORY 'B'
BCORE
INITIALIZE FILE SYSTEM, PICK UP DATE AND TIME
00035 0074 00 4 00017 TSX SETIO,4 INITIALIZE FILE SYSTEM AND IOPACK
00036 3 00000 0 34075 PAR =0 .. NULL AUTHOR NUMBER
00037 -0500 00 0 00203 CAL PANIC INTITIALIZE FOR CRASH DURING LOADING
00040 AINST ((SLW 0),(SLW 28)) PREPARE 0 AND 34(8)
00044 0074 00 4 00020 TSX GETIME,4 PICK UP CURRENT DATE AND TIME
00045 -0600 00 0 00224 STQ DATE ..
00046 -0130 00 0 00000 XCL TIME OF DAY TO MQ
00047 0074 00 4 00023 TSX $CTIME,4 CONVERT TIME TO TENTHS OF MINUTES IN BCD
00050 0602 00 0 00225 SLW TIME ..
*
00051 0074 00 4 00024 TSX $FERRTN,4 SETUP FILE ERROR RETURN
00052 0 00000 0 01212 PZE FERRT
00053 0074 00 4 00025 TSX $TILOCK,4
00054 0 00000 0 01220 PZE FLOCK FILE INTERLOCK RETURN
READ CARD FROM CARD READER
FILE NAME IN COLS.1-6
IF NO CARD IN CARD READER, STOP AND READ KEYS
00055 0074 00 4 02131 TSX RDCARD,4 READ CARD FROM ON LINE CARD READER
00056 0 00060 0 02101 PBUFF,,STP ..
00057 0020 00 0 00064 TRA DECOD SKIP IF CARD READ
00060 0000 00 0 00061 STP HTR *+1 HERE IF NO CARD IN READER (EOF)
00061 0760 00 0 00004 ENK START PUSHED AFTER BCD NAME IN KEYS
00062 -0600 00 0 00211 STQ TSFIL SAVE LOAD FILE NAME FROM KEYS
00063 0020 00 0 00066 TRA INITD
00064 -0500 00 0 02101 DECOD CAL PBUFF PICK UP LOAD FILE NAME FROM CARD
00065 0602 00 0 00211 SLW TSFIL
00066 0074 00 4 00000 INITD TSX ATTACH,4 ATTACH TO M1416 COMMON FILE 1
00067 3 00000 0 34112 PAR =H M1416 ..
00070 3 00000 0 34106 PAR =HCMFL01 ..
00071 0074 00 4 00001 TSX OPEN,4 OPEN LOAD FILE FOR READING
00072 3 00000 0 34111 PAR =HREAD ..
00073 3 00000 0 00211 PAR TSFIL ..
00074 3 00000 0 00212 PAR TSFIL+1 ..
00075 3 00000 0 34110 PAR =-0 ..
00076 3 00000 0 34110 PAR =-0 ..
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 4
00077 3 00000 0 00177 PAR INITBD ..
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 5
ENTER ALL FILE NAMES IN BLOCK NAMED 'LFILES'
00100 0074 00 4 00003 TSX RDFILE,4 READ A CARD FROM LOAD FILE
00101 3 00000 0 00211 PAR TSFIL ..
00102 3 00000 0 00212 PAR TSFIL+1 ..
00103 3 00000 0 34075 PAR =0 ..
00104 3 23420 0 10455 PAR LFILES,,LFLN READ 'CTSSLD' FILE IN ONE GULP
00105 3 00000 0 00107 PAR *+2 .. EOF RETURN
00106 3 00000 0 00216 PAR LFLN. .. MODIFY READ COUNT
00107 -0774 00 1 00016 AXC 14,1 ..
00110 -0774 00 2 00001 AXC 1,2 ..
00111 0074 00 4 00006 TSX CLOSE,4 HERE FOR END OF FILE, CLOSE OUT FILE
00112 3 00000 0 00211 PAR TSFIL ..
00113 3 00000 0 00212 PAR TSFIL+1 ..
00114 0534 00 4 00216 LXA LFLN.,4 GET LENGTH OF 'CTSSLD' FILE
00115 -2 00016 4 00122 RLOOP TNX NDLPF,4,14 TEST END OF BUFFER
00116 -0500 00 1 10455 CAL LFILES,1 GET LIST OF FILE NAMES
00117 0602 00 2 10455 SLW LFILES,2 PUT IN VECTOR
00120 1 77762 1 00121 TXI *+1,1,-14 MOVE THROUGH FILE
00121 1 77777 2 00115 TXI RLOOP,2,-1 MOVE THROUGH LIST
INITIALIZE FOR '(LOAD FILE)' TABLE OF PROGRAM CARDS ETC.
00122 0756 00 2 00000 NDLPF PCA 0,2 NAMES OF ALL LOADING FILES READ
00123 0734 00 1 00000 PAX 0,1
00124 0400 00 0 00215 ADD LFLESA
00125 0621 00 0 01364 STA BSST
00126 0621 00 0 00136 STA LL+1
00127 0734 00 4 00000 PAX 0,4
00130 1 00012 4 00131 TXI *+1,4,10
00131 0634 00 4 01355 SXA SA,4
00132 0634 00 4 01340 SXA PCPNTR,4
00133 -0634 00 4 01340 SXD PCPNTR,4
* AXT ACORLD,4
* SXA S,4
READ EACH BSS FILE AND PROCESS SUBPROGRAMS.
.. WHEN ALL FILES READ, GO TO PASS2 TO PROCESS TRA. VECT.
00134 0634 00 1 00135 LLA SXA *+1,1 PICK UP NEXT FILE NAME
00135 0774 00 1 00000 LL AXT **,1 .. SAVE ITS INDEX
00136 -0500 00 1 00000 CAL **,1 ..
00137 0602 00 0 00213 SLW BSFIL ..
00140 0074 00 4 00001 TSX OPEN,4 OPEN THIS FILE FOR READING
00141 3 00000 0 34111 PAR =HREAD ..
00142 3 00000 0 00213 PAR BSFIL ..
00143 3 00000 0 00214 PAR BSFIL+1 ..
00144 3 00000 0 34110 PAR =-0 ..
00145 3 00000 0 34110 PAR =-0 ..
00146 3 00000 0 00174 PAR N.FND ERROR
00147 0774 00 4 05720 AXT EVNBUF,4 INITIALIZE TRANSMISSION COUNT
00150 0634 00 4 00217 SXA EOFCT,4 ..
00151 0074 00 4 00004 RDMOR. TSX RDWAIT,4 ENTRY TO READ FIRST OR NEXT BUFFER FULL
00152 3 00000 0 00213 PAR BSFIL ..
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 6
00153 3 00000 0 00214 PAR BSFIL+1 ..
00154 3 00000 0 34075 PAR =0 (RELATIVE ADDRESS)
00155 3 05720 0 02535 PAR DBUFF,,EVNBUF BUFFER,,COUNT
00156 3 00000 0 00160 PAR BS.EOF E.O.F. RETURN
00157 3 00000 0 00217 PAR EOFCT ..
00160 -0500 00 0 00220 BS.EOF CAL RB. INITALIZE WINDOW AND POINTER
00161 0602 00 0 00221 SLW R. FOR FIRST RECORD
00162 0361 00 0 00217 ACL EOFCT CALCULATE END OF BUFFER
00163 0602 00 0 00222 SLW RE. ..
00164 0520 00 0 00217 ZET EOFCT CHECK FOR NO TRANSMISSION
00165 0020 00 0 00234 TRA PRCS JUMP INTO LOOP
00166 0074 00 4 00006 TSX CLOSE,4 HERE FOR END OF FILE, CLOSE OUT BSS FILE
00167 3 00000 0 00213 PAR BSFIL ..
00170 3 00000 0 00214 PAR BSFIL+1 ..
00171 0534 00 1 00135 FNRET LXA LL,1 RESTORE FILE NAME INDEX
00172 2 00001 1 00134 TIX LLA,1,1 GO BACK TO READ NEXT FILE IF ANY
00173 0020 00 0 00563 TRA PASS2 OTHERWISE, GO TO 'PASS2'
00174 0074 00 4 00012 N.FND TSX PRNTER,4
00175 3 00000 0 34105 PAR =O77777
00176 0020 00 0 00171 TRA FNRET ..
00177 0074 00 4 00012 INITBD TSX PRNTER,4 ..
00200 3 00000 0 34105 PAR =O77777
00201 0020 00 0 00060 TRA STP READ FILE NAME FROM KEYS
00202 AINST ((TIB *+1)),PANIC IN CASE OF FIRE
('ECC' WAS RESET BY 'SEB' IN 'AINST')
00205 0074 00 4 00010 TSX IORSET,4 TELL FILE SYSTEM
00206 0074 00 4 00011 TSX RESETF,4 UNLOAD ACTIVE FILES
00207 0074 00 4 00007 TSX IOFINI,4 UPDATE FILE SYSTEM
00210 0000 00 0 00210 HTR * STOP
************************************************************************
00211 000000000000 TSFIL BCI 2,000000CTSSLD
00213 000000000000 BSFIL BCI 2,000000 BSS
00215 0 00000 0 10455 LFLESA PZE LFILES
00216 0 00000 0 23420 LFLN. PZE LFLN BUFFER LENGTH
00217 0 00000 0 05720 EOFCT PZE EVNBUF WORD COUNT FOR END OF FILE
00220 0 00000 0 02535 RB. PZE DBUFF
00221 0 00000 0 02535 R. PZE DBUFF **
00222 0 00000 0 10455 RE. PZE DBUFF+EVNBUF **
00223 0 00000 0 00034 CRDF PZE BUFSIZ ..
00224 0 00000 0 00000 DATE PZE 0
00225 0 00000 0 00000 TIME PZE 0
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 7
PROCESS FIRST OR NEXT BINARY CARD FROM BUFFER 'IM'
00226 -0500 00 0 00221 L CAL R. MOVE TO NEXT CARD
00227 0361 00 0 00223 ACL CRDF ..
00230 0602 00 0 00221 SLW R. UPDATE POINTER
00231 -0340 00 0 00222 LAS RE. CHECK FOR END OF BUFFER
00232 0000 00 0 00232 HTR * NON-CONCURRENCE ERROR
00233 0020 00 0 00151 TRA RDMOR. EMPTY, GET NEXT BUFFER FULL
00234 0535 00 1 00221 PRCS LAC R.,1 GET WINDOW FROM INPUT BUFFER
00235 0441 00 1 00000 LDI IM,1
00236 -0057 00 000500 RIL 500 REMOVE COLUMN BINARY BITS
00237 0604 00 0 01343 STI WDCNT
00240 -0534 00 2 01343 LXD WDCNT,2
00241 -3 00000 2 00475 TXL ABSTC,2,0 IGNORE FLIP CARD
00242 3 00040 2 01572 TXH ILLCD,2,32 SELF LOADER MAYBE
00243 -0054 00 400000 LFT 400000 IS IT PROGRAM CARD
00244 0020 00 0 00261 TRA TSTPC PROBABLY
00245 0600 00 0 01344 STZ MULPC NO
00246 -0056 00 200000 LNT 200000 IS IT REL. CARD
00247 0020 00 0 00271 TRA SUM ABSOLUTE CARD
00250 -0056 00 000040 LNT 40 IS IT CONTROL CARD
00251 1 00002 2 00267 TXI TSTSK,2,2 NO
00252 0500 00 1 00000 CLA IM,1 YES
00253 0621 00 0 01335 STA T 9L
00254 0400 00 0 01334 ADD S
00255 0621 00 0 01334 STA S
00256 0500 00 1 00001 CLA IM+1,1 9R
00257 0621 00 0 01336 STA COMN SET COMMON BREAK
00260 0020 00 0 00226 TRA L GET NEXT CARD
00261 0520 00 0 01344 TSTPC ZET MULPC IS IT CONTINUATION PROGRAM CARD
00262 0020 00 0 00267 TRA TSTSK YES
00263 0600 00 0 01345 STZ SKIP
00264 0441 00 1 00000 LDI IM,1
00265 0500 00 1 00004 CLA IM+4,1
00266 0601 00 0 01611 STO SNAME
00267 0520 00 0 01345 TSTSK ZET SKIP IS SIGNAL SET TO SKIP
00270 0020 00 0 00226 TRA L YES. GET NEXT CARD
CHECK CHECKSUM
00271 0520 00 1 00001 SUM ZET IM+1,1 9R
00272 -0054 00 100000 LFT 100000 SHOULD CHECKSUM BE IGNORED
00273 0020 00 0 00303 TRA SUMOK
00274 -0500 00 1 00000 CAL IM,1
00275 0361 00 1 00002 ACL IM+2,1
00276 1 77777 1 00277 TXI *+1,1,-1
00277 2 00001 2 00275 TIX *-2,2,1
00300 0535 00 1 00221 LAC R.,1
00301 0322 00 1 00001 ERA IM+1,1
00302 -0100 00 0 01612 TNZ SUMNG ..
00303 -0534 00 2 01343 SUMOK LXD WDCNT,2
00304 -0054 00 400000 LFT 400000
00305 0020 00 0 00510 TRA PRCD GO TO PROGRAM CARD PROCESSING
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 8
00306 -0056 00 200000 LNT 200000
00307 0020 00 0 00460 TRA ABSCD ABSOLUTE CARD
TEST FOR FIRST RELOCATABLE CARD.
IF FIRST CARD, SET PROGRAM BREAK AND MAKE OVERLAP TESTS.
00310 0520 00 0 01346 ZET FSTCD
00311 0020 00 0 00363 TRA RELCD
00312 -0625 00 0 01346 STL FSTCD SET SWITCH FOR NON-FIRST CARD
00313 -0535 00 4 01340 LDC PCPNTR,4
00314 AINSTB ((CLA 1,4)) 8L. ADDR. OF PRGM CARD HAS PROG. LENGTH
00315 0621 00 0 01335 STA T STORE PROGRAM LENGTH
00316 0756 00 4 00000 PCA 0,4 GET ORIGIN OF PROGRAM CARD
00317 0601 00 0 01350 STO TEMP1
00320 AINSTB ((CLA 0,4))
00321 0734 00 2 00000 PAX 0,2 ADDR. = NO. OF WORDS ON PROGRAM CARD
00322 0400 00 0 01350 ADD TEMP1 COMPUTE LAST LOCATION OF PROGRAM CARD
00323 0400 00 0 01423 ADD Q2 PLUS 2
00324 0621 00 0 00327 STA UPD1
00325 0621 00 0 00331 STA UPD2
00326 0020 00 0 00332 TRA UPD3
00327 UPD AINSTB ((CAL **,2)),UPD1
00330 0400 00 0 01334 ADD S
00331 AINSTB ((STA **,2)),UPD2
00332 2 00002 2 00327 UPD3 TIX UPD,2,2
00333 0500 00 0 01334 CLA S UPDATE PROGRAM BREAK
00334 0400 00 0 01335 ADD T
00335 0621 00 0 01334 STA S PROGRAM BREAK
00336 -0320 00 0 01420 ANA KEPTG KEEP TAG ONLY
00337 -0100 00 0 01647 TNZ PTOVL PROGRAM TOO LARGE
00340 AINSTB ((CAL 2,4)) LOWEST COMMON IN 8R
00341 0100 00 0 00346 TZE LPF
00342 0400 00 0 01336 ADD COMN AMT. OF COMMON RELOCATION
00343 0734 00 2 00000 PAX 0,2
00344 0754 00 2 00000 PXA 0,2
00345 0340 00 0 01337 CAS LCOMN
00346 0500 00 0 01337 LPF CLA LCOMN
00347 0761 00 0 00000 NOP
00350 0621 00 0 01337 STA LCOMN
00351 0402 00 0 01334 SUB S
00352 -0120 00 0 01660 TMI PDOVL PROGRAM AND DATA OVERLAP
00353 0500 00 0 01334 CLA S PROGRAM BREAK
00354 0402 00 0 01335 SUB T - PROGRAM LENGTH
00355 0767 00 0 00022 ALS 18 = PROGRAM ORIGIN
00356 AINSTB ((STD 2,4)) STORE IN UNUSED PART OF 8R PROG. CARD
SET FOR POSSIBLY STORING REL. BITS IN CORE B
00357 0500 00 0 01355 CLA SA
00360 0621 00 0 01353 STA RELBO ORIGIN FOR SAVING REL. BITS
00361 0600 00 0 01354 STZ NRBTS INITIALIZE NO. OF REGISTERS FOR RELBTS
00362 0600 00 0 01344 STZ MULPC
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 9
RELCD ...... LOAD RELOCATABLE BINARY CARD ..........
00363 -0534 00 2 01343 RELCD LXD WDCNT,2
00364 0535 00 1 00221 LAC R.,1
00365 0500 00 1 00000 CLA IM,1
00366 0621 00 0 01333 STA R
00367 0074 00 4 01543 TSX LT,4 DETERMINE ABSOLUTE
00370 0621 00 0 01347 STA TMPR LOADING ADDRESS
00371 0560 00 1 00003 LDQ IM+3,1 8R REL. BITS
00372 0500 00 1 00002 CLA IM+2,1 8L
00373 0601 00 0 01560 STO LLB
00374 0500 00 0 01560 LRD CLA LLB
00375 -0763 00 0 00001 LGL 1
00376 0602 00 0 01560 SLW LLB
00377 0120 00 0 00405 TPL LRE
00400 0500 00 1 00004 CLA IM+4,1
00401 0771 00 0 00022 ARS 18
00402 0074 00 4 01536 TSX CB,4
00403 0767 00 0 00022 ALS 18
00404 0622 00 1 00004 STD IM+4,1
00405 0500 00 0 01560 LRE CLA LLB CHECK FOR ADDRESS RELOCATION
00406 -0763 00 0 00001 LGL 1
00407 0602 00 0 01560 SLW LLB
00410 0120 00 0 00414 TPL LRF
00411 0500 00 1 00004 CLA IM+4,1
00412 0074 00 4 01536 TSX CB,4
00413 0621 00 1 00004 STA IM+4,1
00414 1 77777 1 00415 LRF TXI *+1,1,-1
00415 2 00001 2 00374 TIX LRD,2,1
00416 -0534 00 2 01343 LXD WDCNT,2 RESTORE WORD COUNT
00417 0754 00 2 00000 PXA 0,2
00420 0401 00 0 01347 ADM TMPR
00421 0621 00 0 00425 STA LRG
00422 0535 00 1 00221 LAC R.,1 MOVE RELOCATED INSTRUCTIONS TO CORE 'A'
00423 0500 00 1 00004 LRFF CLA IM+4,1
00424 AINST ((STO **,2)),LRG
00427 1 77777 1 00430 TXI *+1,1,-1
00430 2 00001 2 00423 TIX LRFF,2,1
SAVE RELOCATION BITS IN LOADING TABLE
00431 0774 00 4 00000 AXT 0,4
00432 0535 00 1 00221 LAC R.,1 RETRIEVE WINDOW
00433 -0500 00 0 01343 CAL WDCNT REL LOAD ADDRESS
00434 AINSTB ((STA* RELBO),(STD* RELBO))
00436 1 77777 4 00437 TXI *+1,4,-1
00437 0500 00 1 00002 CLA IM+2,1
00440 AINSTB ((STO* RELBO))
00441 1 77777 4 00442 TXI *+1,4,-1
00442 0500 00 1 00003 CLA IM+3,1
00443 AINSTB ((STO* RELBO))
00444 1 77777 4 00445 TXI *+1,4,-1
00445 0756 00 4 00000 PCA 0,4
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 10
00446 0601 00 0 01350 STO TEMP1
00447 -0500 00 0 01353 CAL RELBO
00450 -0320 00 0 01417 ANA ADMSK
00451 0400 00 0 01350 ADD TEMP1
00452 0074 00 4 02464 TSX OVLPCR,4 TST FOR EXCEEDING CORE RANGE
00453 0621 00 0 01353 STA RELBO UPDATE ORIGIN OF REL. BITS
00454 0500 00 0 01354 CLA NRBTS
00455 0400 00 0 01350 ADD TEMP1 INCREASE NO. OF REGISTERS
00456 0601 00 0 01354 STO NRBTS USED FOR REL. BITS
00457 0020 00 0 00226 TRA L READ ANOTHER CARD
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 11
ABSCD ...... PROCESS ABSOLUTE BINARY CARD ..........
00460 3 00026 2 01572 ABSCD TXH ILLCD,2,22 PROCESS ABSOLUTE CARD
00461 0500 00 1 00000 CLA IM,1
00462 0621 00 0 01347 STA TMPR
00463 0754 00 2 00000 PXA 0,2
00464 0401 00 0 01347 ADM TMPR
00465 0621 00 0 00470 STA ABSCD2
00466 0500 00 1 00002 ABSCD1 CLA IM+2,1
00467 AINST ((STO **,2)),ABSCD2
00472 1 77777 1 00473 TXI *+1,1,-1
00473 2 00001 2 00466 TIX ABSCD1,2,1
00474 0020 00 0 00226 TRA L READ IN NEXT CARD
ABSTC ....... TRANSFER CARD OR FLIP CARD ENCOUNTERED.
00475 -0054 00 677777 ABSTC LFT 677777 IS IT ABSOLUTE TRA CARD
00476 0020 00 0 00505 TRA TRACD
00477 0054 00 077777 RFT 77777 IS IT ABS TRA CARD OR FLIP CARD
00500 0020 00 0 00502 TRA *+2 ABS. TRA CARD... ADDRESS WAS NON-ZERO
00501 0020 00 0 00226 TRA L FLIP CARD... ADDRESS WAS ZERO
00502 0500 00 1 00000 CLA IM,1 ABSOLUTE TRANSFER CARD FOUND
00503 0621 00 0 01210 STA PROG
00504 0020 00 0 01163 TRA PRG
00505 -0056 00 100000 TRACD LNT 100000 IS IT FORTRAN TRA CARD
00506 0020 00 0 00226 TRA L IGNORE REL. TRA CARD
00507 0020 00 0 00563 TRA PASS2 YES
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 12
PRCD ..... HERE TO PROCESS PROGRAM CARD .......
00510 0520 00 0 01344 PRCD ZET MULPC
00511 0020 00 0 00540 TRA CONTCD CONTINUATION CARD
00512 0441 00 1 00003 LDI IM+3,1 PICK UP 8-ROW RIGHT
00513 -0056 00 400000 LNT 400000 IS THIS PROGRAM TO BE LOADED EVEN
00514 0020 00 0 00524 TRA PRCD1 NO, SKIP
00515 -0057 00 400000 RIL 400000 YES, RESET SIGN OF 8-ROW RIGHT
00516 0604 00 1 00003 STI IM+3,1 ..
00517 -0500 00 0 01334 CAL S INSURE THIS PROGRAM
00520 0760 00 0 00001 LBT .. IS LOADED STARTING AT AN EVEN LOCATION
00521 0020 00 0 00524 TRA PRCD1 .. IN MEMORY 'B'
00522 0361 00 0 34076 ACL =1 ..
00523 0621 00 0 01334 STA S ..
00524 0500 00 0 01354 PRCD1 CLA NRBTS
00525 0400 00 0 01355 ADD SA
00526 0621 00 0 01355 STA SA
00527 0600 60 0 01355 STZ* SA CLEAR NEXT POINTER WORD
00530 0534 00 4 01355 LXA SA,4
00531 -0754 00 4 00000 PXD 0,4 S IN DECR. OF AC
00532 -0535 00 4 01340 LDC PCPNTR,4
00533 AINSTB ((STD 0,4)) STORE POINTER IN OLD WORD AND
00534 0622 00 0 01340 STD PCPNTR IN POINTER CONTROL WORD
00535 -0500 00 0 01355 CAL SA
00536 0400 00 0 01422 ADD Q1
00537 0621 00 0 01355 STA SA
00540 -0534 00 2 01343 CONTCD LXD WDCNT,2
00541 -3 00000 2 00563 TXL PASS2,2,0 GO TO PASS2 ON FORTRAN TRA CARD
00542 0754 00 2 00000 PXA 0,2
00543 -0535 00 4 01340 LDC PCPNTR,4
00544 AINSTB ((ADD 0,4),(STA 0,4))
00546 0754 00 2 00000 PXA 0,2 WORD COUNT
00547 0400 00 0 01355 ADD SA UPDATE SA
00550 0621 00 0 01355 STA SA
00551 0074 00 4 02464 TSX OVLPCR,4 TEST FOR EXCEEDING CORE RANGE
00552 0621 00 0 00555 STA MVCDP
00553 0535 00 1 00221 LAC R.,1
00554 0500 00 1 00002 MVCP1 CLA IM+2,1 MOVE PROGRAM CARD
00555 AINSTB ((STO **,2)),MVCDP
00556 1 77777 1 00557 TXI *+1,1,-1
00557 2 00001 2 00554 TIX MVCP1,2,1
00560 0600 00 0 01346 STZ FSTCD
00561 -0625 00 0 01344 STL MULPC
00562 0020 00 0 00226 TRA L READ IN NEXT CARD
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 13
PASS2 ..... PROCESS TRANSFER VECTORS .........
SEARCH POINTERED BSS TABLE TO CONVERT ALL TRA. VECTORS.
00563 0600 00 0 01342 PASS2 STZ MAINSW
00564 0500 00 0 01354 CLA NRBTS
00565 0400 00 0 01355 ADD SA
00566 0621 00 0 01355 STA SA
00567 0600 00 0 01365 STZ MLIST-LMNT ZERO ORIGIN OF MISSING-NAME TABLE
00570 0535 00 4 01340 LAC PCPNTR,4 GET LOCATION OF FIRST POINTER
00571 MLOOP AINSTB ((CAL 0,4)) FIRST POINTER
00572 0622 00 0 00650 STD XR4
00573 AINSTB ((CAL 2,4))
00574 0771 00 0 00022 ARS 18 GET ORIGIN OF PROGRAM
00575 0621 00 0 01351 STA TMP2 LOCATION OF END OF PROGRAM CARD
00576 AINSTB ((CLA 1,4))
00577 -0734 00 2 00000 PDX 0,2 NO. IN TRANSFER VECTOR
00600 -3 00000 2 00645 TXL EMLOOP,2,0 NO TRANSFER VECTOR
00601 0754 00 2 00000 PXA 0,2
00602 0400 00 0 01351 ADD TMP2
00603 0621 00 0 00622 STA TVE LOCATION OF END OF T.V.
00604 0535 00 4 01340 LOOP LAC PCPNTR,4
00605 LP1 AINSTB ((CAL 0,4))
00606 0622 00 0 01341 STD SVPNTR
00607 0734 00 1 00000 PAX 0,1 NO. ON PROGRAM CARD
00610 2 00002 1 00611 TIX *+1,1,2
00611 LP2 AINSTB ((CAL 3,4))
00612 -0100 00 0 00620 TNZ TVD
00613 0520 00 0 01342 ZET MAINSW
00614 0020 00 0 00620 TRA TVD
00615 AINSTB ((CAL 4,4)) ENTRY POINT OF MAIN PROGRAM
00616 0621 00 0 01210 STA PROG MAIN PROGRAM
00617 -0625 00 0 01342 STL MAINSW
00620 TVD AINSTB ((CAL 3,4))
00621 AINST ((LAS **,2),(TTR *+2),(TRA FIX)),TVE
00626 1 77776 4 00627 TXI *+1,4,-2
00627 2 00002 1 00611 TIX LP2,1,2
00630 -0535 00 4 01341 LDC SVPNTR,4 ENTRY NOT ON THAT CARD
00631 -3 00000 4 01301 TXL NONME,4,0 END OF PROGRAM CARDS
00632 0020 00 0 00605 TRA LP1
NAME FOUND. CHANGE TO TTR
00633 FIX SYN *
ACORE
00633 -0761 00 0 00042 SEB
00634 -0500 00 0 00651 CAL TTR SET T V BCD ANME TO TTR
00635 AINST ((SLW* TVE))
00640 AINSTB ((CAL 4,4))
00641 AINST ((STA* TVE))
00644 2 00001 2 00604 NXVEC TIX LOOP,2,1
00645 -0535 00 4 00650 EMLOOP LDC XR4,4
00646 -3 00000 4 00652 TXL ENDP2,4,0
00647 0020 00 0 00571 TRA MLOOP RETURN TO GET NEXT NAME IN TV
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 14
00650 0 00000 0 00000 XR4 PZE 0,0,**
00651 0021 00 0 00000 TTR TTR 0
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 15
END OF PASS 2 OF LOADER. CHECK IF A OK.
00652 -0520 00 0 01342 ENDP2 NZT MAINSW
00653 0020 00 0 01523 TRA NOMAIN
00654 0520 00 0 01365 ZET MLIST-LMNT ARE THERE ANY MISSING ROUTINES
00655 0020 00 0 01432 TRA MSNGN YES.
ALL OK OR USER HAS ELECTED TO GO ANYWAY.
PRINT HEADING OF STORAGE MAP
00656 0074 00 4 02070 RESTT TSX TPE,4
00657 0 00003 0 01414 EJECT,,3
00660 0074 00 4 02070 TSX TPE,4
00661 0 00006 0 02013 BRK,,BK1
00662 -0500 00 0 00224 CAL DATE
00663 0602 00 0 02031 SLW SHDD
00664 -0500 00 0 00225 CAL TIME
00665 0602 00 0 02032 SLW SHDT
00666 -0500 00 0 00211 CAL TSFIL
00667 0602 00 0 02024 SLW SHD
00670 0074 00 4 02070 TSX TPE,4
00671 0 00012 0 02021 SHED,,SHD1
00672 0074 00 4 02070 TSX TPE,4
00673 0 00015 0 01764 HEAD,,H1
00674 -0500 00 0 01334 CAL S
00675 0074 00 4 01561 TSX CVRT,4
00676 0602 00 0 02004 SLW PB
00677 0074 00 4 02070 TSX TPE,4
00700 0 00004 0 02001 SEN1,,S1
00701 -0500 00 0 01337 CAL LCOMN
00702 0074 00 4 01561 TSX CVRT,4
00703 0602 00 0 02012 SLW LCM
00704 0074 00 4 02070 TSX TPE,4
00705 0 00006 0 02005 SEN2,,S2
00706 0074 00 4 02070 TSX TPE,4
00707 0 00006 0 02013 BRK,,BK1
00710 0074 00 4 02070 TSX TPE,4
00711 0 00004 0 02037 HEAD2,,H2
00712 0535 00 1 01340 LAC PCPNTR,1 PRINT STORAGE MAP ON OUTPUT TAPE
00713 PLOOP AINSTB ((CAL 0,1))
00714 0622 00 0 01357 STD NEXT
00715 0734 00 2 00000 PAX 0,2 NO. OF WORDS ON PROGRAM CARD
00716 AINSTB ((CAL 2,1)) GET ORIGIN OF PROGRAM
00717 0771 00 0 00022 ARS 18
00720 0074 00 4 01561 TSX CVRT,4
00721 0602 00 0 01360 SLW LORG LEAD ZERO CAUSES DOUBLE SPACE
00722 2 00002 2 00723 TIX *+1,2,2
00723 PLP AINSTB ((CAL 3,1)) NAME
00724 0602 00 0 01361 SLW NAME
00725 AINSTB ((CAL 4,1)) ENTRY POINT
00726 0074 00 4 01561 TSX CVRT,4
00727 -0501 00 0 01431 ORA 1BLK
00730 0602 00 0 01362 SLW ENTRY
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 16
00731 0074 00 4 02043 TSX STAPE,4
00732 0 00000 0 01360 LORG
00733 0 00000 0 01361 NAME
00734 0 00000 0 01362 ENTRY
00735 -0500 00 0 01761 CAL BLANKS
00736 0602 00 0 01360 SLW LORG
00737 1 77776 1 00740 TXI *+1,1,-2
00740 2 00002 2 00723 TIX PLP,2,2
00741 -0535 00 1 01357 LDC NEXT,1
00742 3 00000 1 00713 TXH PLOOP,1,0
00743 0074 00 4 02070 TSX TPE,4
00744 0 00003 0 01414 EJECT,,3
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 17
READ CORRECTION CARDS ON-LINE AND LOG OFF-LINE.
CORRECTION CARDS, IF ANY, TERMINATED BY EOF
00745 0074 00 4 02070 TSX TPE,4
00746 0 00003 0 01761 BLANKS,,3
00747 0600 00 0 01300 STZ ILOCT
00750 0074 00 4 02131 RDCD TSX RDCARD,4 READ NEXT CARD IF ANY
00751 0 01005 0 02101 PBUFF,,ENDCA .. GO TO 'ENDCA' ON EOF
00752 -0754 00 0 00000 ZAC
00753 0560 00 0 02101 LDQ PBUFF DELETE TRAILING BLANK
00754 -0765 00 0 00006 LGR 6
00755 -0600 00 0 02101 STQ PBUFF
00756 0774 00 1 00003 AXT 3,1
00757 0441 00 1 02104 LDI PBUFF+3,1
00760 0444 00 0 01277 OFT ILLOCT
00761 0020 00 0 01255 TRA ILLEGL ILLEGAL CODE FOUND.
00762 2 00001 1 00757 TIX *-3,1,1 OK
00763 0774 00 2 00003 AXT 3,2
00764 0774 00 1 00006 CLP AXT 6,1
00765 0560 00 2 02104 LDQ PBUFF+3,2
00766 -0754 00 0 00000 ZAC
00767 -0773 00 0 00003 RQL 3
00770 -0763 00 0 00003 LGL 3
00771 2 00001 1 00767 TIX *-2,1,1
00772 0602 00 2 01414 SLW CCD+3,2
00773 2 00001 2 00764 TIX CLP,2,1
00774 -0500 00 0 01412 CAL CCD+1
00775 0767 00 0 00022 ALS 18
00776 -0501 00 0 01413 ORA CCD+2
00777 AINST ((SLW* CCD))
01002 0074 00 4 02070 TSX TPE,4 PRINT CARD WITH LEAD BLANKS
01003 0 00017 0 02100 PBUFB,,15
01004 0020 00 0 00750 TRA RDCD READ ANOTHER CARD
01005 0520 00 0 01300 ENDCA ZET ILOCT EOF, WERE THERE ANY ILLEGAL OCTAL CARDS
01006 0000 00 0 01007 HTR *+1 YES, WAIT FOR CORRECTIONS
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 18
WRITE PROGRAM CARDS AND RELOCATION BITS ON DISK
AS FILE NAMED '(LOAD FILE)'
01007 0600 00 0 01356 STZ ORGT
01010 0600 00 0 01357 STZ NEXT
01011 -0500 00 0 01364 CAL BSST
01012 0621 00 0 01122 STA DWR
01013 0621 00 0 01023 STA BSX
01014 -0500 00 0 01355 CAL SA COMPUTE LENGTH OF
01015 0400 00 0 01422 ADD Q1 TABLE TO WRITE ON DISK
01016 0402 00 0 01364 SUB BSST
01017 0767 00 0 00022 ALS 18
01020 0622 00 0 01122 STD DWR
01021 0774 00 1 00000 AXT 0,1 ..
01022 -0500 00 0 01337 CAL LCOMN
01023 0602 00 1 00000 BSX SLW **,1
01024 1 77777 1 01025 TXI *+1,1,-1
01025 0760 00 0 00006 COM
01026 -0320 00 0 01417 ANA ADMSK
01027 0522 00 0 01023 XEC BSX
01030 1 77777 1 01031 TXI *+1,1,-1
01031 -0500 00 0 01363 CAL FRSTPT
01032 0522 00 0 01023 XEC BSX
01033 1 77777 1 01034 TXI *+1,1,-1
01034 -0500 00 0 01334 CAL S
01035 0522 00 0 01023 XEC BSX
01036 1 77777 1 01037 TXI *+1,1,-1
01037 -0500 00 0 00211 CAL TSFIL
01040 0522 00 0 01023 XEC BSX
01041 0535 00 4 01340 LAC PCPNTR,4
01042 PLPX AINSTB ((CAL 0,4))
01043 0622 00 0 01357 STD NEXT
01044 -0756 00 4 00000 PCD 0,4
01045 0601 00 0 01356 STO ORGT
01046 0402 00 0 01357 SUB NEXT
01047 AINSTB ((STD 0,4))
01050 -0535 00 4 01357 LDC NEXT,4
01051 3 00000 4 01042 TXH PLPX,4,0
01052 -0500 00 0 01355 CAL SA END OF TABLE
01053 0767 00 0 00022 ALS 18
01054 0402 00 0 01356 SUB ORGT
01055 -0535 00 4 01340 LDC PCPNTR,4 LAST POINTER
01056 AINSTB ((STD 0,4))
01057 0600 60 0 01355 STZ* SA SET LAST POINTER TO ZERO
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 19
HERE TO WRITE OUT LOADING INFORMATION ON DISK,
.. AS THE FILE '(LOAD FILE)'.
01060 0074 00 4 00013 TSX UPDMFD,4
01061 3 00000 0 34112 PAR =H M1416
01062 3 00000 0 34107 PAR =HCMFL02
01063 3 00000 0 01321 PAR CKUFD
01064 3 00000 0 01332 PAR CKUFD.
01065 0074 00 4 00000 WRLDFL TSX ATTACH,4 ATTACH TO M1416 COMMON FILE '2'
01066 3 00000 0 34112 PAR =H M1416 ..
01067 3 00000 0 34107 PAR =HCMFL02 ..
01070 -0520 00 0 01332 NZT CKUFD. TEST IF RECOGNIZED ERROR
01071 0074 00 4 00014 TSX ALLOT,4 NOT PREVIOUSLY THERE, GIVE IT QUOTA
01072 3 00000 0 34077 PAR =2 DISK
01073 3 00000 0 34104 PAR =2000 TRY THAT FOR SIZE
01074 0074 00 4 00015 TSX CHFILE,4 NOW UNDO (LOAD FILE)
01075 3 00000 0 01425 PAR FNM
01076 3 00000 0 01426 PAR FNM+1
01077 3 00000 0 34076 PAR =1 CHANGE TO TEMPORARY
01100 3 00000 0 34110 PAR =-0
01101 3 00000 0 34110 PAR =-0 SKIP RENAME
01102 3 00000 0 01103 PAR *+1 IGNORE ERROR RETURN
01103 0074 00 4 00016 TSX DELFIL,4 DELETE ANY PREVIOUS COPIES OF (LOAD FILE)
01104 3 00000 0 01425 PAR FNM ..
01105 3 00000 0 01426 PAR FNM+1 ..
01106 3 00000 0 01107 PAR *+1 .. IGNORE ANY ERROR RETURNS
01107 0074 00 4 00001 TSX OPEN,4 OPEN NEW '(LOAD FILE)' FOR WRITING
01110 3 00000 0 34113 PAR =HW ..
01111 3 00000 0 01425 PAR FNM ..
01112 3 00000 0 01426 PAR FNM+1 ..
01113 3 00000 0 34102 PAR =O104 'READ-ONLY, PROTECTED'
01114 3 00000 0 34077 PAR =2 ON DISK
01115 3 00000 0 01245 PAR CLOAD DON'T DIE IF ERROR.
01116 0074 00 4 00005 TSX WRFILE,4 WRITE LOADING DATA INTO FILE
01117 3 00000 0 01425 PAR FNM ..
01120 3 00000 0 01426 PAR FNM+1 ..
01121 3 00000 0 34075 PAR =0 ..
01122 3 00000 0 00000 DWR PAR **,,** ..
01123 3 00000 0 34110 PAR =-0
01124 3 00000 0 34110 PAR =-0
01125 3 00000 0 01245 PAR CLOAD
01126 0074 00 4 00006 CLOAD1 TSX CLOSE,4 CLOSE OUT FILE
01127 3 00000 0 01425 PAR FNM ..
01130 3 00000 0 01426 PAR FNM+1 ..
01131 3 00000 0 01247 PAR TRYLOG
NOW WRITE SYSTEM LOG
01132 0074 00 4 00001 LOG TSX OPEN,4 OPEN SYSTEM LOG
01133 3 00000 0 34113 PAR =HW FOR WRITING
01134 3 00000 0 01427 PAR CTSS 'CTSS'
01135 3 00000 0 01430 PAR CTSS+1 'LOG'
01136 3 00000 0 34103 PAR =O110 'PROTECTED, WRITE-ONLY'
01137 3 00000 0 34077 PAR =2
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 20
01140 3 00000 0 01251 PAR CLOG DON'T DIE ON ERROR
01141 0074 00 4 00002 TSX BUFFER,4 GIVE OUT A BUFFER
01142 3 00000 0 01427 PAR CTSS ..
01143 3 00000 0 01430 PAR CTSS+1 ..
01144 3 00660 0 02535 PAR DBUFF,,BSIZ UNUSED AREA
01145 3 00000 0 01251 PAR CLOG
01146 0074 00 4 00005 TSX WRFILE,4 OUTPUT LOG LINE
01147 3 00000 0 01427 PAR CTSS ..
01150 3 00000 0 01430 PAR CTSS+1 ..
01151 3 00000 0 34075 PAR =0 APPEND TO THE END
01152 3 00016 0 02021 PAR SHED,,14 MAKE A CARD-IMAGE LINE
01153 3 00000 0 34110 PAR =-0
01154 3 00000 0 34110 PAR =-0
01155 3 00000 0 01251 PAR CLOG
01156 0074 00 4 00006 CLOG1 TSX CLOSE,4 THAT'S ALL OF THE LOG
01157 3 00000 0 01427 PAR CTSS ..
01160 3 00000 0 01430 PAR CTSS+1 ..
01161 3 00000 0 01253 PAR NOLOG
01162 0074 00 4 00007 ALLDON TSX IOFINI,4 UPDATE ALL I/O FILE INFORMATION
01163 0074 00 4 00022 PRG TSX PRINT,4 READY TO GO, MESSAGE TO PRINTER
01164 1 00007 0 02024 PON SHD,,SHD1-3 PFX = EJECT PRINTER PAGE
01165 0564 00 0 34075 ENB =0 DISABLE CLOCK, RANDOM TRAPS
01166 AINST ((STZ 5),(STZ 0)) CLEAR CELL 5 CLOCK COMPLETELY
01172 -0754 00 0 00000 ZAC RESET MACHINE CONDITIONS
01173 0044 00 0 00000 PAI .. SI
01174 -0130 00 0 00000 XCL .. MQ
01175 -0500 00 0 00211 CAL TSFIL ENTER WITH NAME IN AC
01176 0774 00 1 00000 AXT 0,1 .. IRS (1-4 ONLY)
01177 0774 00 2 00000 AXT 0,2 ..
01200 0774 00 3 00000 AXT 0,3 ..
01201 0774 00 4 00000 AXT 0,4 ..
01202 0760 00 0 00012 DCT .. DIVIDE CHECK
01203 0761 00 0 00000 NOP ..
01204 0760 00 0 00005 IOT .. I/O CHECK
01205 0761 00 0 00000 NOP ..
01206 0140 00 0 01207 TOV *+1 .. AC OVERFLOW
01207 AINST ((TIA **)),PROG TRANSFER CONTROL TO CTSS
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 21
SUBROUTINES, ERROR SECTIONS, AND CONSTANTS FOLLOW
01212 0634 00 4 01216 FERRT SXA FERXR4,4 FUNCTION ERROR RETURN
01213 0074 00 4 00022 TSX PRINT,4 SAY OUR PIECE
01214 0 00004 0 01241 PZE FRMESS,,4
01215 0074 00 4 00012 TSX PRNTER,4
01216 0774 00 4 00000 FERXR4 AXT **,4
01217 0020 00 4 00001 TRA 1,4 SKIP OVER CALL
01220 0634 00 4 01227 FLOCK SXA FLXR4,4 FILE INTERLOCK RETURN
01221 -0500 60 4 00002 CAL* 2,4 GET FILE NAME1
01222 0602 00 0 01232 SLW FLMESS+1 AND STORE IN MESSAGE
01223 -0500 60 4 00003 CAL* 3,4 DO THE SAME FOR NAME2
01224 0602 00 0 01233 SLW FLMESS+2 ..
01225 0074 00 4 00022 TSX PRINT,4 PRINT MESSAGE
01226 3 00010 0 01231 PAR FLMESS,,8
01227 0774 00 4 00000 FLXR4 AXT **,4 RESTORE IR4
01230 0020 00 4 00001 TRA 1,4
01231 606060606060 FLMESS BCI 8, ************ IS LOCKED, IGNORING CALL.
01241 606445256747 FRMESS BCI 4, UNEXPECTED ERROR RETURN.
01245 0074 00 4 00012 CLOAD TSX PRNTER,4
01246 0020 00 0 01126 TRA CLOAD1
01247 0074 00 4 00012 TRYLOG TSX PRNTER,4
01250 0020 00 0 01132 TRA LOG
01251 0074 00 4 00012 CLOG TSX PRNTER,4
01252 0020 00 0 01156 TRA CLOG1
01253 0074 00 4 00012 NOLOG TSX PRNTER,4
01254 0020 00 0 01162 TRA ALLDON
01255 0074 00 4 00022 ILLEGL TSX PRINT,4 ILLEGAL OCTAL CORRECTION CARD
01256 0 00006 0 01271 BOC,,BC1
01257 0074 00 4 00022 TSX PRINT,4
01260 0 00014 0 02101 PBUFF,,12
01261 -0625 00 0 01300 STL ILOCT
01262 -0500 00 0 01424 CAL ASTSK
01263 0560 00 0 02101 LDQ PBUFF
01264 -0765 00 0 00006 LGR 6
01265 -0600 00 0 02101 STQ PBUFF
01266 0074 00 4 02070 TSX TPE,4
01267 0 00014 0 02101 PBUFF,,12
01270 0020 00 0 00750 TRA RDCD
01271 603143432527 BOC BCI 6, ILLEGAL OCTAL CORRECTION CARD.
00006 BC1 SYN *-BOC
01277 -307070707070 ILLOCT OCT 707070707070
01300 0 00000 0 00000 ILOCT PZE ** SWITCH FOR ILLEGAL OCTAL CARD
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 22
NAME NOT FOUND ON PROGRAM CARDS.
ENTER IN MISSING NAME TABLE
01301 NONME AINST ((CAL* TVE))
01304 0602 00 0 01352 SLW TMP1 SAVE MISSING NAME
01305 -0534 00 4 01311 LXD LNMNT,4
01306 -0500 00 4 01411 CKMLST CAL MLIST,4 HAS NAME ALREADY
01307 0100 00 0 01315 TZE STOMN BEEN ENTERED.
01310 -0340 00 0 01352 LAS TMP1
01311 1 00024 0 01313 LNMNT TXI *+2,,LMNT NO
01312 0020 00 0 00644 TRA NXVEC YES
01313 2 00001 4 01306 TIX CKMLST,4,1
01314 0020 00 0 01477 TRA MTFUL TABLE FULL
01315 -0500 00 0 01352 STOMN CAL TMP1 ENTER NAME OF MISSING ROUTINE
01316 0602 00 4 01411 SLW MLIST,4
01317 0600 00 4 01412 STZ MLIST+1,4 SET NRXT ENTRY TO ZERO
01320 0020 00 0 00644 TRA NXVEC
01321 -0500 00 0 01332 CKUFD CAL CKUFD. ERROR ON 'UPDMFD'
01322 0402 00 0 34100 SUB =3
01323 0100 00 0 01065 TZE WRLDFL
01324 0636 00 4 01327 SCA CKSTOP,4 SAVE IR4
01325 0074 00 4 00012 TSX PRNTER,4
01326 0000 00 0 01327 HTR *+1
01327 -0774 00 4 00000 CKSTOP AXC **,4
01330 0600 00 0 01332 STZ CKUFD.
01331 0020 00 4 00000 TRA 0,4
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 23
CONSTANT AND VARIABLE STORAGE
01332 0 00000 0 00000 CKUFD. PZE 0 ERROR FLAG LOCATION
01333 0 00000 0 00000 R PZE
01334 0 00000 0 00062 S PZE ACORLD (**) INITIAL LOADING ADDRESS OF NEXT PROGRAM
01335 0 00000 0 00000 T PZE PROGRAM LENGTH
01336 0 00000 0 00000 COMN PZE
01337 0 00000 0 77777 LCOMN PZE -1 LOWEST COMMON USED
01340 0 00000 0 00000 PCPNTR
01341 0 00000 0 00000 SVPNTR
01342 0 00000 0 00000 MAINSW PZE NON-ZERO AFTER A MAIN PROGRAM FOUND
01343 0 00000 0 00000 WDCNT
01344 0 00000 0 00000 MULPC
01345 0 00000 0 00000 SKIP
01346 0 00000 0 00000 FSTCD
01347 0 00000 0 00000 TMPR
01350 0 00000 0 00000 TEMP1
01351 0 00000 0 00000 TMP2
01352 0 00000 0 00000 TMP1
01353 0 00000 4 00000 RELBO PZE **,4 OROGIN OF RELOCATION BITS
01354 0 00000 0 00000 NRBTS PZE ** NUMBER OF REGISTERS USED
01355 0 00000 0 00000 SA PZE ** ORIGIN OF POINTERS FOR PGM. CARD AND RELBTS
01356 0 00000 0 00000 ORGT
01357 0 00000 0 00000 NEXT
01360 0 00000 0 00000 LORG
01361 0 00000 0 00000 NAME
01362 0 00000 0 00000 ENTRY
01363 0 00000 0 00062 FRSTPT ACORLD INITIAL LOADING ORIGIN OF TEXT
01364 0 00000 0 00000 BSST
01411 MLIST BES LMNT
01411 CCD BSS 3
CONSTANTS
01414 016060606060 EJECT BCI 3,1
01417 0 00000 0 77777 ADMSK PZE -1
01420 0 00000 7 00000 KEPTG PZE 0,7
01421 -3 00000 0 00000 PRFX SVN
01422 0 00000 0 00001 Q1 PZE 1
01423 0 00000 0 00002 Q2 PZE 2
01424 546060606060 ASTSK BCI 1,*
01425 607443462124 FNM BCI 2, (LOAD FILE)
01427 606023636262 CTSS BCI 2, CTSS LOG
01431 600000000000 1BLK BCI 1, 00000
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 24
MSNGN ....... MISSING SUBPROGRAMS, PRINT NAMES
01432 0074 00 4 00022 MSNGN TSX PRINT,4 PRINT HEADER
01433 0 00012 0 01465 ERC,,ERC1-ERC ..
01434 0074 00 4 01706 TSX PNAMES,4
01435 0000 00 0 01436 HTR *+1
.......... UPON DECISION TO GO ANYWAY, ...........
SET ALL UNPROCESSED TRANSFER VECTORS TO ZERO
01436 0535 00 4 01340 LAC PCPNTR,4
01437 .MLP AINSTB ((CLA 1,4))
01440 -0734 00 2 00000 PDX 0,2
01441 -3 00000 2 01461 TXL .EMLP,2,0 NO T.V. FOR THIS SUBPROGRAM
01442 AINSTB ((CAL 2,4))
01443 0771 00 0 00022 ARS 18
01444 0621 00 0 01351 STA TMP2 ORIGIN OF PROGRAM
01445 0754 00 2 00000 PXA 0,2
01446 0400 00 0 01351 ADD TMP2 COMPUTE EXCURSION OF T. V.
01447 0621 00 0 01451 STA .TVB
01450 .TVL AINST ((CAL **,2)),.TVB
01453 -0320 00 0 01421 ANA PRFX
01454 0100 00 0 01460 TZE .TIX T.V. IS A TTR
01455 AINST ((STZ* .TVB)) SET BCD NAME TO ZERO
01460 2 00001 2 01450 .TIX TIX .TVL,2,1
01461 -0500 00 4 00000 .EMLP CAL 0,4
01462 -0737 00 4 00000 PDC 0,4
01463 3 00000 4 01437 TXH .MLP,4,0
01464 0020 00 0 00656 TRA RESTT
01465 606330256026 ERC BCI , THE FOLLOWING SUBPROGRAMS ARE MISSING. PRESS START TO GO.
01477 ERC1 SYN *
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 25
MISSING NAME TABLE IS FULL, PRINT ERROR AND STOP
01477 0074 00 4 00022 MTFUL TSX PRINT,4
01500 0 00012 0 01505 ERRA,,ERRA1-ERRA
01501 0074 00 4 00022 TSX PRINT,4
01502 0 00004 0 01517 ERD,,ERD1-ERD
01503 0074 00 4 01706 TSX PNAMES,4
01504 0000 00 0 01504 HTR * STOP
01505 606346466044 ERRA BCI , TOO MANY MISSING ROUTINES. TABLE FULL. CANNOT RESTART.
01517 ERRA1 SYN *
01517 604431626231 ERD BCI 4, MISSING ROUTINES ARE..
01523 ERD1 SYN *
MAIN PROGRAM MISSING, PRINT ERROR AND STOP
01523 0074 00 4 00022 NOMAIN TSX PRINT,4
01524 0 00006 0 01530 ERMA,,ERMA1-ERMA
01525 0520 00 0 01365 ZET MLIST-LMNT ARE THERE ALSO MISSING ROUTINES
01526 0020 00 0 01432 TRA MSNGN YES
01527 0000 00 0 01527 HTR *
01530 604431626231 ERMA BCI 6, MISSING MAIN PROGRAM. RERUN.
01536 ERMA1 SYN *
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 26
LT AND CB ....... RELOCATION ROUTINES ............
USE THE RELOCATION BITS TO ADJUST THE FIELDS OF CARDS
01536 0621 00 0 01333 CB STA R
01537 0500 00 0 01560 CLA LLB
01540 -0763 00 0 00001 LGL 1
01541 0602 00 0 01560 SLW LLB
01542 -0120 00 0 01544 TMI LTA
01543 0760 00 0 00141 LT SLN 1
01544 0502 00 0 01333 LTA CLS R
01545 0400 00 0 01335 ADD T
01546 0120 00 0 01554 TPL ADDS
01547 -0760 00 0 00141 SLT 1
01550 0020 00 0 01556 TRA PROGRM
01551 0500 00 0 01333 LDATA CLA R
01552 0401 00 0 01336 ADM COMN
01553 0020 00 4 00001 TRA 1,4
01554 -0760 00 0 00141 ADDS SLT 1
01555 0020 00 0 01551 TRA LDATA
01556 0402 00 0 01334 PROGRM SUB S
01557 0020 00 4 00001 TRA 1,4
01560 0 00000 0 00000 LLB PZE
CVRT ..... CONVERT BINARY TO OCTAL (IN BCD)
01561 0634 00 4 01570 CVRT SXA IX4,4
01562 -0765 00 0 00017 LGR 15
01563 -0754 00 0 00000 ZAC
01564 0774 00 4 00005 AXT 5,4
01565 0767 00 0 00003 ALS 3
01566 -0763 00 0 00003 LGL 3
01567 2 00001 4 01565 TIX *-2,4,1
01570 0774 00 4 00000 IX4 AXT **,4
01571 0020 00 4 00001 TRA 1,4
ILLCD ...... ILLEGAL CARD FOUND IN BINARY DECK .....
01572 -0500 00 0 01611 ILLCD CAL SNAME
01573 0602 00 0 01604 SLW ERLA
01574 0074 00 4 00022 TSX PRINT,4
01575 0 00012 0 01577 ERL,,ERL1-ERL
01576 0000 00 0 00226 HTR L
01577 603143432527 ERL BCI 5, ILLEGAL CARD IN BINARY DECK
01604 000000000000 ERLA BCI 1,000000
01605 334751256262 BCI 4,.PRESS START TO IGNORE.
01611 ERL1 SYN *
01611 000000000000 SNAME BCI 1,000000
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 27
CHECKSUM BAD, STOP, PRESS START TO IGNORE
01612 -0500 00 0 01611 SUMNG CAL SNAME
01613 0602 00 0 01633 SLW ERSA
01614 -0500 00 0 00213 CAL BSFIL INCLUDE FILE NAME
01615 0602 00 0 01625 SLW ERSF ..
01616 0500 00 1 00000 CLA IM,1
01617 0074 00 4 01561 TSX CVRT,4
01620 0602 00 0 01637 SLW ERSB
01621 0074 00 4 00022 TSX PRINT,4
01622 0 00023 0 01624 ERS,,ERS1-ERS
01623 0000 00 0 00303 HTR SUMOK
01624 602631432560 ERS BCI 1, FILE
01625 000000000000 ERSF BCI 1,000000
01626 736023302523 BCI 5,, CHECKSUM BAD IN SUBPROGRAM
01633 000000000000 ERSA BCI 1,000000
01634 336060232151 BCI 3,. CARD ORIGIN
01637 000000000000 ERSB BCI 1,000000
01640 604623632143 BCI 7, OCTAL. PRESS START TO IGNORE BAD CKSUM.
01647 ERS1 SYN *
PTOVL ...... PROGRAM EXCEEDS CORE ..........
01647 0074 00 4 00022 PTOVL TSX PRINT,4 PRINT ERROR MESSAGE
01650 0 00006 0 01652 ERPT,,ERPT1-ERPT
01651 0000 00 0 01651 HTR * AND STOP
01652 604751462751 ERPT BCI 6, PROGRAM TOO LARGE FOR CORE. RERUN.
01660 ERPT1 SYN *
PDOVL ...... PROGRAM AND COMMON OVERLAP ..........
01660 0074 00 4 01561 PDOVL TSX CVRT,4
01661 0602 00 0 01674 SLW ERPD2
01662 -0500 00 0 01611 CAL SNAME
01663 0602 00 0 01703 SLW ERPD3
01664 0074 00 4 00022 TSX PRINT,4
01665 0 00017 0 01667 ERPD,,ERPD1-ERPD
01666 0000 00 0 01666 HTR *
01667 604751462751 ERPD BCI 5, PROGRAM AND DATA OVERLAP BY
01674 000000000000 ERPD2 BCI 1,000000
01675 604623632143 BCI 6, OCTAL DURING LOADING OF SUBPROGRAM
01703 000000000000 ERPD3 BCI 1,000000
01704 336051255164 BCI 2,. RERUN.
01706 ERPD1 SYN *
PNAMES ...... PRINT NAMES OF MISSING ROUTINES
01706 0634 00 1 01735 PNAMES SXA PN4,1
01707 0634 00 2 01736 SXA PN5,2
01710 0634 00 4 01737 SXA PN6,4
01711 -0534 00 4 01311 LXD LNMNT,4
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 28
01712 0774 00 2 00003 AXT D/DPR,2
01713 0774 00 1 00020 PN1 AXT SECL,1
01714 -0500 00 0 01761 CAL BLANKS
01715 0602 00 1 01761 SLW SECBUF,1
01716 2 00001 1 01715 TIX *-1,1,1
01717 0774 00 1 00020 AXT SECL,1
01720 -0500 00 4 01411 PN2 CAL MLIST,4
01721 0100 00 0 01733 TZE PN3
01722 0602 00 1 01762 SLW SECBUF+1,1
01723 -2 00001 4 01733 TNX PN3,4,1
01724 2 00002 1 01720 TIX PN2,1,2
01725 0634 00 4 01730 SXA *+3,4
01726 0074 00 4 00022 TSX PRINT,4
01727 0 00020 0 01741 SECBUF-SECL,,SECL
01730 0774 00 4 00000 AXT **,4
01731 2 00001 2 01713 TIX PN1,2,1
01732 0020 00 0 01735 TRA PN4
01733 0074 00 4 00022 PN3 TSX PRINT,4
01734 0 00020 0 01741 SECBUF-SECL,,SECL
01735 0774 00 1 00000 PN4 AXT **,1
01736 0774 00 2 00000 PN5 AXT **,2
01737 0774 00 4 00000 PN6 AXT **,4
01740 0020 00 4 00001 TRA 1,4
00020 SECL EQU 16
01761 SECBUF BES SECL
01761 606060606060 BLANKS BCI 3,
00010 DPR EQU SECL/2
00033 D EQU LMNT+DPR-1
************************************************************************
01764 606263465121 HEAD BCI 9, STORAGE MAP OF CTSS MODULAR SYSTEM. RETAIN FOR CT
01775 626260475146 BCI 4,SS PROGRAMING STAFF.
00015 H1 SYN *-HEAD
02001 604751462751 SEN1 BCI 3, PROGRAM BREAK IS
02004 000000000000 PB BCI 1,000000
00004 S1 SYN *-SEN1
02005 604346662562 SEN2 BCI 5, LOWEST COMMON LOCATION USED
02012 000000000000 LCM BCI 1,000000
00006 S2 SYN *-SEN2
02013 605454545454 BRK BCI 6, ************************************
00006 BK1 SYN *-BRK
02021 006330256043 SHED BCI 3,0THE LOAD FILE IS
02024 000000000000 SHD BCI 1,000000
02025 404063302560 BCI 4,--THE DATE AND TIME ARE
02031 000000000000 SHDD BCI 1,000000
02032 000000000000 SHDT BCI 1,000000
00012 SHD1 SYN *-SHED
02033 606060606060 BCI 4,
02037 604651312731 HEAD2 BCI 4, ORIGIN NAME ENTRY
00004 H2 SYN *-HEAD2
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 29
STAPE ...... SUBROUTINE TO FORMAT STORAGE MAP PRINT
TSX STAPE,4
PZE ORIGIN
PZE NAME
PZE ENTRY
02043 0634 00 4 02062 STAPE SXA ST4,4
02044 -0500 60 4 00001 CAL* 1,4
02045 0602 00 0 02064 SLW TR1
02046 0560 60 4 00002 LDQ* 2,4
02047 -0500 00 0 01761 CAL BLANKS
02050 -0763 00 0 00022 LGL 18
02051 0602 00 0 02065 SLW TR2
02052 -0763 00 0 00022 LGL 18
02053 0560 00 0 01761 LDQ BLANKS
02054 -0763 00 0 00022 LGL 18
02055 0602 00 0 02066 SLW TR3
02056 -0500 60 4 00003 CAL* 3,4
02057 0602 00 0 02067 SLW TR4
02060 0074 00 4 02070 TSX TPE,4
02061 0 00004 0 02064 TR1,,4
02062 0774 00 4 00000 ST4 AXT **,4
02063 0020 00 4 00004 TRA 4,4
02064 0 00000 0 00000 TR1
02065 0 00000 0 00000 TR2
02066 0 00000 0 00000 TR3
02067 0 00000 0 00000 TR4
TPE ..... WRITE BCD LINE ON SYSTEM OUTPUT TAPE (S)
TSX TPE,4
PZE BUF,,N
02070 -0500 00 4 00001 TPE CAL 1,4
02071 0621 00 0 02077 STA WS
02072 0622 00 0 02077 STD WS
02073 0766 00 0 01203 WTDU
02074 0540 00 0 02077 RCHU WS
02075 0060 00 0 02075 TCOU *
02076 0020 00 4 00002 TRA 2,4
02077 3 00000 1 00000 WS IORT **,,**
************************************************************************
02100 606060606060 PBUFB BCI 1,
02101 PBUFF BSS 24
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 30
RDCARD ..... READ ONE CARD FROM ON LINE CARD READER
TSX RDCARD,4
BUF,,EOFRTN
02131 0634 00 4 02260 RDCARD SXA X4,4
02132 0634 00 2 02257 SXA X2,2
02133 -0500 00 4 00001 CAL 1,4 PICK UP ADDRESS OF CALLER'S BUFFER
02134 0361 00 0 34101 ACL =12 .. BUFF+12
02135 0621 00 0 02255 STA CTX
02136 0074 00 4 00021 TSX TPWAIT,4 WAIT ON CHANNEL 'A'
02137 3 00000 0 00001 PAR 1 ..
02140 0761 00 0 00000 NOP .. IGNORE TAPE CHECK
02141 0761 00 0 00000 NOP .. AND EOF RETURNS
02142 0774 00 1 00014 AXT 12,1 CLEAR BCD RECORD AREA
02143 0600 00 1 02453 STZ REC+12,1 ..
02144 2 00001 1 02143 TIX *-1,1,1 ..
02145 0762 00 0 01321 RCDA READ A CARD FROM ON LINE READER
02146 0540 00 0 02273 RCHA CTB ..
02147 0074 00 4 00021 TSX TPWAIT,4 WAIT UNTIL CARD IS READ
02150 0 00000 0 00001 1 ..
02151 0761 00 0 00000 NOP .. TAPE CHECK, SHOULD NEVER HAPPEN
02152 0020 00 0 02262 TRA EOF .. END OF FILE RETURN
02153 0774 00 4 00004 AXT 4,4 INITIALIZE LEFT HALF
02154 -0774 00 2 00015 CT9 AXC 13,2
02155 0441 00 0 02313 LDI CTG CLEAR SENSE IND
02156 -0500 60 4 02307 CT10 CAL* CTD+4,4
02157 1 00002 2 02160 TXI *+1,2,2
02160 -0501 60 4 02307 ORA* CTD+4,4
02161 0602 00 0 02315 SLW CTH
02162 1 77764 2 02163 TXI *+1,2,-12
02163 0441 60 4 02307 LDI* CTD+4,4
02164 1 00002 2 02165 TXI *+1,2,2
02165 0444 60 4 02307 OFT* CTD+4,4
02166 0020 00 0 02267 CT11 TRA ERR
02167 0442 60 4 02307 OSI* CTD+4,4
02170 0604 00 0 02317 STI CTI
02171 1 00024 2 02172 TXI *+1,2,20
02172 0441 60 4 02307 LDI* CTD+4,4
02173 1 77760 2 02174 TXI *+1,2,-16
02174 0774 00 1 00007 AXT 7,1
02175 0444 60 4 02307 CT12 OFT* CTD+4,4
02176 0020 00 0 02267 CT13 TRA ERR
02177 0442 60 4 02307 OSI* CTD+4,4
02200 1 00002 2 02201 TXI *+1,2,2
02201 2 00001 1 02175 TIX CT12,1,1
02202 0440 00 0 02315 IIS CTH
02203 0444 60 4 02307 OFT* CTD+4,4
02204 0020 00 0 02267 TRA ERR
02205 0442 60 4 02307 OSI* CTD+4,4
02206 0442 00 0 02315 OSI CTH
02207 1 77760 2 02210 TXI *+1,2,-16
02210 -0046 00 0 00000 PIA
02211 -0320 60 4 02307 ANA* CTD+4,4
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 31
02212 0602 00 0 02315 SLW CTH
02213 -0320 00 0 02317 ANA CTI
02214 -0100 00 0 02267 TNZ ERR
02215 -0500 60 4 02307 CAL* CTD+4,4
02216 0043 00 0 00000 OAI
02217 0442 00 0 02317 OSI CTI
02220 -0320 00 0 02317 ANA CTI
02221 0602 60 4 02307 SLW* CTD+4,4
02222 -0046 00 0 00000 PIA
02223 0760 00 0 00006 COM
02224 -0501 00 0 02315 ORA CTH
02225 1 77772 2 02226 TXI *+1,2,-6
02226 0602 60 4 02307 SLW* CTD+4,4
02227 0774 00 1 00006 CT20 AXT 6,1
02230 -0500 60 4 02307 CAL* CTD+4,4
02231 0602 00 0 02315 SLW CTH
02232 0560 00 0 02315 CT21 LDQ CTH
02233 0634 00 1 02240 SXA X1,1
02234 0774 00 1 00006 AXT 6,1
02235 0767 00 0 00005 CT22 ALS 5
02236 -0763 00 0 00001 LGL 1
02237 2 00001 1 02235 TIX CT22,1,1
02240 0774 00 1 00000 X1 AXT **,1
02241 -0600 00 0 02315 STQ CTH
02242 -0130 00 0 00000 XCL
02243 0200 00 2 02271 PCT23 MPY CTA-1,2
02244 0763 00 0 00043 LLS 35
02245 0361 60 4 02313 ACL* CTE+4,4
02246 0602 60 4 02313 SLW* CTE+4,4
02247 2 00001 1 02232 TIX CT21,1,1
02250 3 77775 2 02252 CT24 TXH CT25,2,-3
02251 1 00002 2 02227 TXI CT20,2,2
02252 2 00002 4 02154 CT25 TIX CT9,4,2
02253 0774 00 4 00014 AXT 12,4
02254 -0500 00 4 02453 CAL REC+12,4
02255 0602 00 4 00000 CTX SLW **,4
02256 2 00001 4 02254 TIX *-2,4,1
02257 0774 00 2 00000 X2 AXT **,2
02260 0774 00 4 00000 X4 AXT **,4
02261 0020 00 4 00002 TRA 2,4
02262 0534 00 2 02257 EOF LXA X2,2 HERE ON EOF FROM CARD READER
02263 0534 00 4 02260 LXA X4,4 .. RESTORE CALLER'S IRS
02264 -0500 00 4 00001 CAL 1,4 PICK UP EOF RETURN
02265 -0737 00 5 00000 PDC 0,5 TAKE CALLER'S EOF RETURN
02266 0020 00 5 00000 TRA 0,5 ..
02267 0074 00 4 00022 ERR TSX PRINT,4 HERE FOR ILLEGAL BCD IN CARD, PRINT ERROR
02270 0 00011 0 02453 CHS,,CHS1 ..
02271 0000 00 0 00750 HTR RDCD
02272 +000000000011 CTA OCT 11
02273 0 00030 1 02323 CTB IOCD 9ROWL,,24
02274 +000000000010 OCT 10
02275 0 00000 0 00000 PZE
02276 +000000000007 OCT 7
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 32
02277 0 00000 0 00000 PZE
02300 +000000000006 OCT 6
02301 0 00000 0 00000 PZE
02302 +000000000005 OCT 5
02303 0 00000 2 02322 CTD PZE 9ROWL-1,2
02304 +000000000004 OCT 4
02305 0 00000 2 02323 PZE 9ROWL,2
02306 +000000000003 OCT 3
02307 0 00000 1 02445 CTE PZE REC+6,1
02310 +000000000002 OCT 2
02311 0 00000 1 02453 PZE REC+12,1
02312 +000000000001 CTF OCT 1
02313 0 00000 0 00000 CTG PZE
02314 +000000000012 OCT 12
02315 0 00000 0 00000 CTH PZE
02316 +000000000040 OCT 40
02317 0 00000 0 00000 CTI PZE
02320 +000000000020 OCT 20
02321 0 00000 0 00000 CTJ PZE
02322 +000000000060 OCT 60
02323 9ROWL BSS 76
02437 REC BSS 12
02453 602362306026 CHS BCI 9, CSH FOUND ILLEGAL BCD CARD. PUSH START TO IGNORE CARD
00011 CHS1 SYN *-CHS
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 33
OVLPCR ..... TEST FOR CORE OVERLAP .............
02464 -0340 00 0 02470 OVLPCR LAS HICOR
02465 0020 00 0 02471 TRA OVLER
02466 0020 00 0 02471 TRA OVLER
02467 0020 00 4 00001 TRA 1,4
02470 0 00000 0 34075 HICOR PZE TOPMEM
02471 0634 00 4 02501 OVLER SXA OVL4,4
02472 0756 00 4 00000 PCA 0,4
02473 0074 00 4 01561 TSX CVRT,4
02474 0602 00 0 02532 SLW ERC1.
02475 0074 00 4 00022 TSX PRINT,4
02476 0 00017 0 02503 OVLR,,OVLR1
02477 0074 00 4 00022 TSX PRINT,4
02500 0 00013 0 02522 ERLOC,,ERLCO
02501 0774 00 4 00000 OVL4 AXT **,4
02502 0000 00 0 02502 HTR *
02503 602567632545 OVLR BCI 9, EXTENT OF CORE AVAILABLE EXCEEDED DURING STORAGE OF P
02514 514627512144 BCI 6,ROGRAM CARD OR RELOCATION BITS.
00017 OVLR1 SYN *-OVLR
02522 604665255143 ERLOC BCI 8, OVERLAP OCCURRED IN BSS LOADER AT LOCATION
02532 000000000000 ERC1. BCI 1,000000
02533 604623632143 BCI 2, OCTAL.
00013 ERLCO SYN *-ERLOC
* * * * * * * * * * * * * * * * * * * * * * * *
02535 DBUFF BSS EVNBUF INPUT BUFFER FOR CURRENT BSS FILE
10455 LFILES BSS LFLN VECTOR FOR INPUT NAMES + '(LOAD FILE)'
34075 TOPMEM SYN *
END
LITERALS
34075 000000000000
34076 000000000001
34077 000000000002
34100 000000000003
34101 000000000014
34102 000000000104
34103 000000000110
34104 000000003720
34105 000000077777
34106 234426430001
34107 234426430002
34110 400000000000
34111 512521246060
34112 604401040106
34113 666060606060
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 1
POST PROCESSOR ASSEMBLY DATA
34114 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
33 D 1712, 1764
226 L 260, 270, 457, 474, 501, 506, 562, 1576
1333 R 366, 1536, 1544, 1551
1334 S 254, 255, 330, 333, 335, 351, 353, 517, 523, 674, 1034, 1556
1335 T 253, 315, 334, 354, 1545
1203 U 26, 2073, 2074, 2075
1536 CB 402, 412
15 H1 673, 2001
4 H2 711, 2043
0 IM 26, 235, 252, 256, 264, 265, 271, 274, 275, 301, 365, 371, 372, 400, 404, 411, 413
423, 437, 442, 461, 466, 502, 512, 516, 554, 1616
135 LL 126, 171
1543 LT 367
2004 PB 676
1422 Q1 536, 1015
1423 Q2 323
221 R. 161, 226, 230, 234, 300, 364, 422, 432, 553
4 S1 700, 2005
6 S2 705, 2013
1355 SA 131, 357, 525, 526, 527, 530, 535, 537, 547, 550, 565, 566, 1014, 1052, 1057
2077 WS 2071, 2072, 2074
2240 X1 2233
2257 X2 2132, 2262
2260 X4 2131, 2263
6 BC1 1256, 1277
6 BK1 661, 707, 2021
1271 BOC 1256, 1277
2013 BRK 661, 707, 2021
1023 BSX 1013, 1027, 1032, 1035, 1040
1411 CCD 772, 774, 776, 1000
2453 CHS 2270, 2464
764 CLP 773
2154 CT9 2252
2272 CTA 2243
2273 CTB 2146
2303 CTD 2156, 2160, 2163, 2165, 2167, 2172, 2175, 2177, 2203, 2205, 2211, 2215, 2221, 2226, 2230
2307 CTE 2245, 2246
2312 CTF
2313 CTG 2155
2315 CTH 2161, 2202, 2206, 2212, 2224, 2231, 2232, 2241
2317 CTI 2170, 2213, 2217, 2220
2321 CTJ
2255 CTX 2135
10 DPR 1712, 1764
1122 DWR 1012, 1020
2262 EOF 2152
1465 ERC 1433
1517 ERD 1502
1577 ERL 1575
2267 ERR 2166, 2176, 2204, 2214
1624 ERS 1622
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 2
POST PROCESSOR ASSEMBLY DATA
633 FIX 624, 633
1425 FNM 1075, 1076, 1104, 1105, 1111, 1112, 1117, 1120, 1127, 1130
1570 IX4 1561
2012 LCM 703
134 LLA 172
1560 LLB 373, 374, 376, 405, 407, 1537, 1541
1132 LOG 1250
605 LP1 632
611 LP2 627
346 LPF 341
374 LRD 415
405 LRE 377
414 LRF 410
425 LRG 421, 425
1544 LTA 1542
723 PLP 740
1713 PN1 1731
1720 PN2 1724
1733 PN3 1721, 1723
1735 PN4 1706, 1732
1736 PN5 1707
1737 PN6 1710
1163 PRG 504
220 RB. 160
2437 REC 2143, 2254, 2307, 2311
222 RE. 163, 231
2024 SHD 667, 1164
2062 ST4 2043
60 STP 56, 201
271 SUM 247
2070 TPE 656, 660, 670, 672, 677, 704, 706, 710, 743, 745, 1002, 1266, 2060
2064 TR1 2045, 2061
2065 TR2 2051
2066 TR3 2055
2067 TR4 2057
651 TTR 634
620 TVD 612, 614
622 TVE 603, 622, 636, 642, 1302
327 UPD 332
650 XR4 572, 645
1431 1BLK 727
1554 ADDS 1546
660 BSIZ 26, 1144
1364 BSST 125, 1011, 1016
11 CHS1 2270, 2464
1251 CLOG 1140, 1145, 1155
1336 COMN 257, 342, 1552
223 CRDF 227
2156 CT10
2166 CT11
2175 CT12 2201
2176 CT13
2227 CT20 2251
2232 CT21 2247
2235 CT22 2237
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 3
POST PROCESSOR ASSEMBLY DATA
2250 CT24
2252 CT25 2250
1427 CTSS 1134, 1135, 1142, 1143, 1147, 1150, 1157, 1160
1561 CVRT 675, 702, 720, 726, 1617, 1660, 2473
224 DATE 45, 662
1477 ERC1 1433, 1477
1523 ERD1 1502, 1523
1611 ERL1 1575, 1611
1604 ERLA 1573
1530 ERMA 1524
1667 ERPD 1665
1652 ERPT 1650
1505 ERRA 1500
1647 ERS1 1622, 1647
1633 ERSA 1613
1637 ERSB 1620
1625 ERSF 1615
1764 HEAD 673, 2001
1437 .MLP 1463
1460 .TIX 1454
1451 .TVB 1447, 1451, 1456
1450 .TVL 1460
23420 LFLN 26, 104, 216,10455
24 LMNT 26, 567, 654, 1311, 1365, 1525, 1764
604 LOOP 644
1360 LORG 721, 732, 736
423 LRFF 430
1361 NAME 724, 733
1357 NEXT 714, 741, 1010, 1043, 1046, 1050
1 OPEN 71, 140, 1107, 1132
1356 ORGT 1007, 1045, 1054
2501 OVL4 2471
2503 OVLR 2476, 2522
1042 PLPX 1051
510 PRCD 305
234 PRCS 165
1421 PRFX 1453
1210 PROG 503, 616, 1210
750 RDCD 1004, 1270, 2271
20 SECL 1713, 1717, 1727, 1734, 1741, 1764
2001 SEN1 700, 2005
2005 SEN2 705, 2013
12 SHD1 671, 1164, 2033
2031 SHDD 663
2032 SHDT 665
2021 SHED 671, 1152, 2033
1345 SKIP 263, 267
225 TIME 50, 664
1352 TMP1 1304, 1310, 1315
1351 TMP2 575, 602, 1444, 1446
1347 TMPR 370, 420, 462, 464
327 UPD1 324, 327
331 UPD2 325, 331
332 UPD3 326
2323 9ROWL 2273, 2303, 2305
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 4
POST PROCESSOR ASSEMBLY DATA
460 ABSCD 307
475 ABSTC 241
1417 ADMSK 450, 1026
14 ALLOT 1071
1424 ASTSK 1262
213 BSFIL 137, 142, 143, 152, 153, 167, 170, 1614
1321 CKUFD 1063
1245 CLOAD 1115, 1125
1156 CLOG1 1252
6 CLOSE 111, 166, 1126, 1156
23 CTIME 47
2535 DBUFF 155, 220, 221, 222, 1144
64 DECOD 57
1414 EJECT 657, 744
1005 ENDCA 751
652 ENDP2 646
1362 ENTRY 730, 734
217 EOFCT 150, 157, 162, 164
2532 ERC1. 2474
13 ERLCO 2500, 2535
2522 ERLOC 2500, 2535
1536 ERMA1 1524, 1536
1706 ERPD1 1665, 1706
1674 ERPD2 1661
1703 ERPD3 1663
1660 ERPT1 1650, 1660
1517 ERRA1 1500, 1517
1212 FERRT 52
1220 FLOCK 54
1227 FLXR4 1220
171 FNRET 176
1346 FSTCD 310, 312, 560
2037 HEAD2 711, 2043
2470 HICOR 2464
1572 ILLCD 242, 460
1300 ILOCT 747, 1005, 1261
66 INITD 63
1461 .EMLP 1441
41 ..001 41
314 ..002 314
320 ..003 320
340 ..004 340
356 ..005 356
434 ..006 434
440 ..007 440
443 ..008 443
533 ..009 533
544 ..010 544
571 ..011 571
573 ..012 573
576 ..013 576
605 ..014 605
611 ..015 611
615 ..016 615
620 ..017 620
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 5
POST PROCESSOR ASSEMBLY DATA
636 ..018 636
640 ..019 640
642 ..020 642
713 ..021 713
716 ..022 716
723 ..023 723
725 ..024 725
1000 ..025 1000
1042 ..026 1042
1047 ..027 1047
1056 ..028 1056
1167 ..029 1167
1302 ..030 1302
1437 ..031 1437
1442 ..032 1442
1456 ..033 1456
1420 KEPTG 336
1337 LCOMN 345, 346, 350, 701, 1022
1551 LDATA 1555
216 LFLN. 106, 114
1311 LNMNT 1305, 1711
1411 MLIST 567, 654, 1306, 1316, 1317, 1525, 1720
571 MLOOP 647
1432 MSNGN 655, 1526
1477 MTFUL 1314
1344 MULPC 245, 261, 362, 510, 561
555 MVCDP 552, 555
554 MVCP1 557
122 NDLPF 115
174 N.FND 146
1253 NOLOG 1161
1301 NONME 631
1354 NRBTS 361, 454, 456, 524, 564
644 NXVEC 1312, 1320
2471 OVLER 2465, 2466
17 OVLR1 2476, 2522
203 PANIC 37, 203
563 PASS2 173, 507, 541
2100 PBUFB 1003
2101 PBUFF 56, 64, 751, 753, 755, 757, 765, 1260, 1263, 1265, 1267
2243 PCT23
1660 PDOVL 352
713 PLOOP 742
524 PRCD1 514, 521
22 PRINT 1163, 1213, 1225, 1255, 1257, 1432, 1477, 1501, 1523, 1574, 1621, 1647, 1664, 1726, 1733, 2267, 2475
2477
1647 PTOVL 337
1353 RELBO 360, 434, 435, 440, 443, 447, 453
363 RELCD 311
656 RESTT 1464
115 RLOOP 121
17 SETIO 35
1611 SNAME 266, 1572, 1612, 1662
2043 STAPE 731
1315 STOMN 1307
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 6
POST PROCESSOR ASSEMBLY DATA
1612 SUMNG 302
303 SUMOK 273, 1623
1350 TEMP1 317, 322, 446, 451, 455
505 TRACD 476
211 TSFIL 62, 65, 73, 74, 101, 102, 112, 113, 666, 1037, 1175
261 TSTPC 244
267 TSTSK 251, 262
1343 WDCNT 237, 240, 303, 363, 416, 433, 540
466 ABSCD1 473
470 ABSCD2 465, 470
62 ACORLD 26, 1334, 1363
1162 ALLDON 1254
0 ATTACH 66, 1065
1761 BLANKS 735, 746, 1714, 2047, 2053
160 BS.EOF 156
2 BUFFER 1141
34 BUFSIZ 26, 223
15 CHFILE 1074
1306 CKMLST 1313
1327 CKSTOP 1324
1332 CKUFD. 1064, 1070, 1321, 1330
1126 CLOAD1 1246
540 CONTCD 511
16 DELFIL 1103
645 EMLOOP 600
5720 EVNBUF 26, 147, 155, 217, 222, 2535
7 EVNREC 26
24 FERRTN 51
1216 FERXR4 1212
1231 FLMESS 1222, 1224, 1226
1241 FRMESS 1214
1363 FRSTPT 1031
20 GETIME 44
61 HITRAP 26
1255 ILLEGL 761
1277 ILLOCT 760
177 INITBD 77
7 IOFINI 207, 1162
10 IORSET 205
10455 LFILES 104, 116, 117, 215
215 LFLESA 124
1342 MAINSW 563, 613, 617, 652
1523 NOMAIN 653
2464 OVLPCR 452, 551
1340 PCPNTR 132, 133, 313, 532, 534, 543, 570, 604, 712, 1041, 1055, 1436
1706 PNAMES 1434, 1503
12 PRNTER 174, 177, 1215, 1245, 1247, 1251, 1253, 1325
1556 PROGRM 1550
2131 RDCARD 55, 750
3 RDFILE 100
151 RDMOR. 233
4 RDWAIT 151
11 RESETF 206
1761 SECBUF 1715, 1722, 1727, 1734
1341 SVPNTR 606, 630
1 BSS LOADER FOR MODULAR CTSS, (MODIFIED FOR USE WITH NEW FILE SYSTEM) 02/22/71 1731.4 PAGE 7
POST PROCESSOR ASSEMBLY DATA
25 TILOCK 53
34075 TOPMEM 2470,34075
21 TPWAIT 2136, 2147
1247 TRYLOG 1131
13 UPDMFD 1060
5 WRFILE 1116, 1146
1065 WRLDFL 1323
0 NO ERROR IN ABOVE ASSEMBLY.
FCORB BCD 02/22/71 1718.0 80934 00000
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 1
00067 ENTRY UPDMFD TO ADD ENTRY TO MASTER FILE DIRECTORY FCOR0004
00145 ENTRY DELMFD TO DELETE ENTRY FROM MASTER FILE DIRECTORY FCOR0005
00210 ENTRY ATTACH TO ATTACH TO A USER FILE DIRECTORY FCOR0006
00256 ENTRY ATTNAM FIND NAME OF DIRECTORY ATTACHED TO FCOR0007
00301 ENTRY UPDATE TO UPDATE USER FILE DIRECTORY FCOR0008
00312 ENTRY SETPRI TO SET FILE PRIORITY WITHIN A USER FCOR0009
00324 ENTRY OPEN TO PLACE A FILE IN ACTIVE STATUS FCOR0010
00742 ENTRY BUFFER TO ASSIGN A BUFFER TO AN ACTIVE FILE FCOR0011
00774 ENTRY RDFILE TO READ FROM AN ACTIVE FILE FCOR0012
01010 ENTRY RDWAIT TO READ AND WAIT UNTIL I/O COMPLETED FCOR0013
01116 ENTRY WRFILE TO WRITE INTO AN ACTIVE FILE FCOR0014
01132 ENTRY WRWAIT TO WRITE AND WAIT UNTIL I/O COMPLETED FCOR0015
01313 ENTRY TRFILE TO TRUNCATE AN ACTIVE FILE FCOR0016
01410 ENTRY FCHECK TO CHECK I/O STATUS OF AN ACTIVE FILE FCOR0017
01434 ENTRY FWAIT TO WAIT UNTIL I/O DONE ON ACTIVE FILE FCOR0018
01457 ENTRY CLOSE TO REMOVE A FILE FROM ACTIVE STATUS FCOR0019
01550 ENTRY RESETF TO RESET ALL ACTIVE FILES FCOR0020
01606 ENTRY CHFILE TO CHANGE THE NAME AND/OR MODE OF A FILE FCOR0021
02020 ENTRY RSFILE TO UNLOCK INTERLOCKED FILE FCOR0022
02063 ENTRY DELFIL TO DELETE A FILE FCOR0023
02164 ENTRY FSTATE TO RETURN FILE STATUS INFORMATION FCOR0024
02271 ENTRY MOVFIL TO MOVE A FILE FROM UFD TO UFD FCOR0025
02436 ENTRY SETFIL TO CREATE A FILE ENTRY FOR LOAD ROUTINE FCOR0026
02535 ENTRY LINK TO CREATE A LINK TO A FILE FCOR0027
02634 ENTRY UNLINK TO DELETE A LINK TO A FILE FCOR0028
02663 ENTRY ALLOT TO ALLOT SECONDARY STORAGE QUOTAS FCOR0029
02720 ENTRY STORGE TO RETURN SECONDARY STORAGE INFO. TO USER FCOR0030
02774 ENTRY MOUNT TO MOUNT A TAPE FCOR0031
03016 ENTRY UMOUNT TO UNMOUNT A TAPE FCOR0032
03047 ENTRY VERIFY TO VERIFY A TAPE LABEL (FOLLOWS MOUNT) FCOR0033
03073 ENTRY LABEL TO WRITE A TAPE LABEL (FOLLOWS MOUNT) FCOR0034
03115 ENTRY TAPFIL TO DECLARE A FILE TO EXIST ON A TAPE FCOR0035
03205 ENTRY IODIAG TO RETURN ERROR DIAGNOSTIC INFORMATION FCOR0036
FCOR0037
..... THE FOLLOWING ENTRIES ARE AVAILABLE TO CTSS ONLY FCOR0038
FCOR0039
03241 ENTRY SETUSR TO SET UP I/O USER STATUS TABLE FCOR0040
03313 ENTRY CHNGUS TO CHANGE TO NEW USER OF FILE SYSTEM FCOR0041
03321 ENTRY SETRAP TO SET SUPERVISORY INTERRUPT PROCEDURE FCOR0042
03324 ENTRY USTAT TO SET A.F.S.T. AND QUEUE STORAGE FCOR0043
03362 ENTRY USAVE TO SAVE STATUS OF ALL ACTIVE FILES FCOR0044
03465 ENTRY SETAB TO SET MEMORY SWITCHES FCOR0045
03477 ENTRY GETUSR TO GET SLOTNO AND MEMORY SWITCHES FCOR0046
03516 ENTRY IOSTOP TO HALT INPUT/OUTPUT FCOR0047
03532 ENTRY IOSTRT TO RESTART INPUT/OUTPUT FCOR0048
03546 ENTRY IORSET TO INFORM FILE SYSTEM OF MACHINE RESET FCOR0049
03555 ENTRY IOFINI TO FINISH ALL QUEUED I/O REQUESTS FCOR0050
03573 ENTRY IOINIT TO INITIALIZE I/O SYSTEM FCOR0051
FCOR0052
..... ENTRIES TO FILE COORDINATOR UTILITY ROUTINES ......FCOR0053
FCOR0054
04256 ENTRY GTDYTM TO PICK UP CURRENT DATE/TIME, RETURN IN AC FCOR0055
04317 ENTRY GETDAY TO PICK UP DATE ONLY IN AC (IN BCD) FCOR0056
04371 ENTRY STAFIL TO ENTER ACTIVE FILE FOR SLOT '0' FCOR0057
04444 ENTRY GTAFIL TO FIND ACTIVE FILE FOR SLOT '0' FCOR0058
04554 ENTRY RELEAS TO RELEASE FILE FROM ACTIVE STATUS FCOR0059
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 2
05170 ENTRY MOVE TO MOVE WORDS BETWEEN MEMORIES A AND B FCOR0060
05311 ENTRY RCHECK TO RELOCATE AND CHECK ADDRESSES FCOR0061
05362 ENTRY RECADR TO COMPUTE LINEAR ADDRESS FROM RECORD COUNTFCOR0062
05355 ENTRY GETEFA TO COMPUTE EFFECTIVE ADDRESS OF WORD IN AC FCOR0063
04210 ENTRY SSTRAP TO INTERRUPT SUPERVISORY SYSTEM FCOR0064
FCOR0065
..... ENTRIES TO FILE COORDINATOR STATUS INFORMATION ....FCOR0066
FCOR0067
05436 ENTRY UTABLE POINTER TO CURRENT USER STATUS TABLE FCOR0068
05437 ENTRY USRTBL TABLE OF POINTERS TO USER A.F.S.T. TABLES FCOR0069
05442 ENTRY PRIORT SORTED USER PRIORITY TABLE FCOR0070
05445 ENTRY SLOTNO CURRENT I/O SLOT NO. OF CURRENT USER FCOR0071
FCOR0072
05435 ENTRY FS.TST SPECIAL PRIVILEGES SWITCH (DAEMON) FCOR0073
FCOR0074
..... ENTRIES TO BUFFER CONTROL MODULE ..................FCOR0075
FCOR0076
EXTERN BOPEN,BASIGN,BREAD,BWRITE,BTRUNC,BCHECK,BSAVE,BCLOSE FCOR0077
FCOR0078
..... ENTRIES TO I/O CONTROL MODULE .................. FCOR0079
FCOR0080
EXTERN IOHALT,IOBEGN,IORST,DRAIN FCOR0081
FCOR0082
..... ENTRIES TO UFD AND MFD SEARCH MODULE ..............FCOR0083
FCOR0084
EXTERN SEARCH,UPDFIL,ADDFIL,REMOVE,REWRIT,GETQU,SETQU,IFILES FCOR0085
FCOR0086
..... ENTRIES TO TAPE MOUNT AND UNMOUNT MODULE ..........FCOR0087
FCOR0088
EXTERN MNTTAP,UMTTAP,UMTALL,VERTAP,LBLTAP FCOR0089
FCOR0090
..... ENTRIES TO EXTERNAL UTILITY ROUTINES ........... FCOR0091
FCOR0092
EXTERN FILXIT,IDRUMS,IDISKS,UPDRUM,UPDISK FCOR0093
FCOR0094
FCOR0095
FCOR0097
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 3
INSERT IOEQU INSERT I/O SYSTEM EQUIVALENCE PACKAGE FCOR0099
IOEQ0001
..... FILE INPUT/OUTPUT SYSTEM EQUIVALENCE PACKAGE ..... IOEQ0002
IOEQ0003
00000 224647254560 BOPEN
00001 222162312745 BASIGN
00002 225125212460 BREAD
00003 226651316325 BWRITE
00004 226351644523 BTRUNC
00005 222330252342 BCHECK
00006 226221652560 BSAVE
00007 222343466225 BCLOSE
00010 314630214363 IOHALT
00011 314622252745 IOBEGN
00012 314651626360 IORST
00013 245121314560 DRAIN
00014 622521512330 SEARCH
00015 644724263143 UPDFIL
00016 212424263143 ADDFIL
00017 512544466525 REMOVE
00020 512566513163 REWRIT
00021 272563506460 GETQU
00022 622563506460 SETQU
00023 312631432562 IFILES
00024 444563632147 MNTTAP
00025 644463632147 UMTTAP
00026 644463214343 UMTALL
00027 652551632147 VERTAP
00030 432243632147 LBLTAP
00031 263143673163 FILXIT
00032 312451644462 IDRUMS
00033 312431624262 IDISKS
00034 644724516444 UPDRUM
00035 644724316242 UPDISK
00036 242631432501 DFILE1
00037 242631432502 DFILE2
00040 242631432503 DFILE3
00041 622351214701 SCRAP1
00042 622351214702 SCRAP2
00043 622351214703 SCRAP3
00044 623145316301 SINIT1
00045 623145316302 SINIT2
00046 623145316303 SINIT3
00002 DUSERS EQU 2 MAX. NO. OF USERS OF I/O SYSTEM IOEQ0004
00003 FMAX EQU 3 MAX. NO. OF DEVICES AVAILABLE IN I/O SYSTEMIOEQ0005
00002 IOSMEM EQU 2 MEMORY WHERE I/O SYSTEM RESIDES (1=A, 2=B) IOEQ0006
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 4
00000 .REL. SET 0 INITIALIZE RELATIVE A.F.S.T. ADDRESS IOEQ0008
IOEQ0009
SETWRD MACRO SYMBOL TO SET UP ACTIVE FILE ENTRIES IOEQ0010
IRP SYMBOL .. IOEQ0011
PMC ON .. IOEQ0012
SYMBOL SYN .REL. .. IOEQ0013
PMC OFF .. IOEQ0014
IRP .. IOEQ0015
.REL. SET .REL.+1 .. BUMP RELATIVE ADDRESS IOEQ0016
SETWRD END .. IOEQ0017
IOEQ0018
00047 SETWRD (RPROBN) IOEQ0019
00000 RPROBN SYN .REL. IOEQ0019.001
00047 SETWRD (RPROGN) IOEQ0020
00001 RPROGN SYN .REL. IOEQ0020.001
00047 SETWRD (RNAME1) IOEQ0021
00002 RNAME1 SYN .REL. IOEQ0021.001
00047 SETWRD (RNAME2) IOEQ0022
00003 RNAME2 SYN .REL. IOEQ0022.001
00047 SETWRD (RMODE) IOEQ0023
00004 RMODE SYN .REL. IOEQ0023.001
00047 SETWRD (FPROBN) IOEQ0024
00005 FPROBN SYN .REL. IOEQ0024.001
00047 SETWRD (FPROGN) IOEQ0025
00006 FPROGN SYN .REL. IOEQ0025.001
00047 SETWRD (FNAME1) IOEQ0026
00007 FNAME1 SYN .REL. IOEQ0026.001
00047 SETWRD (FNAME2) IOEQ0027
00010 FNAME2 SYN .REL. IOEQ0027.001
00047 SETWRD (DAYTIM,LPROBN) IOEQ0028
00011 DAYTIM SYN .REL. IOEQ0028.001
00011 LPROBN SYN .REL. IOEQ0028.001
00047 SETWRD (DATELU,AUTHOR,LPROGN) IOEQ0029
00012 DATELU SYN .REL. IOEQ0029.001
00012 AUTHOR SYN .REL. IOEQ0029.001
00012 LPROGN SYN .REL. IOEQ0029.001
00047 SETWRD (MODE,ILOCK,F,RCOUNT) IOEQ0030
00013 MODE SYN .REL. IOEQ0030.001
00013 ILOCK SYN .REL. IOEQ0030.001
00013 F SYN .REL. IOEQ0030.001
00013 RCOUNT SYN .REL. IOEQ0030.001
00047 SETWRD (RWSTAT,S,W,R,NORECS,P,LCOUNT,LNAME1) IOEQ0031
00014 RWSTAT SYN .REL. IOEQ0031.001
00014 S SYN .REL. IOEQ0031.001
00014 W SYN .REL. IOEQ0031.001
00014 R SYN .REL. IOEQ0031.001
00014 NORECS SYN .REL. IOEQ0031.001
00014 P SYN .REL. IOEQ0031.001
00014 LCOUNT SYN .REL. IOEQ0031.001
00014 LNAME1 SYN .REL. IOEQ0031.001
00047 SETWRD (POINTR,LNAME2) IOEQ0032
00015 POINTR SYN .REL. IOEQ0032.001
00015 LNAME2 SYN .REL. IOEQ0032.001
00047 SETWRD (ASGNSW,REDREC,REDWRD) IOEQ0033
00016 ASGNSW SYN .REL. IOEQ0033.001
00016 REDREC SYN .REL. IOEQ0033.001
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 5
00016 REDWRD SYN .REL. IOEQ0033.001
00047 SETWRD (WRTREC,WRTWRD) IOEQ0034
00017 WRTREC SYN .REL. IOEQ0034.001
00017 WRTWRD SYN .REL. IOEQ0034.001
00047 SETWRD (CHNG,PRIME,BUFREC,BUFADR) IOEQ0035
00020 CHNG SYN .REL. IOEQ0035.001
00020 PRIME SYN .REL. IOEQ0035.001
00020 BUFREC SYN .REL. IOEQ0035.001
00020 BUFADR SYN .REL. IOEQ0035.001
00047 SETWRD (WINDEX,DINDEX) IOEQ0036
00021 WINDEX SYN .REL. IOEQ0036.001
00021 DINDEX SYN .REL. IOEQ0036.001
00047 SETWRD (DR,DW,DCOUNT,DADDRS) IOEQ0037
00022 DR SYN .REL. IOEQ0037.001
00022 DW SYN .REL. IOEQ0037.001
00022 DCOUNT SYN .REL. IOEQ0037.001
00022 DADDRS SYN .REL. IOEQ0037.001
00047 SETWRD (PRIOR,IOTASK,EFLAG,CURREC) IOEQ0038
00023 PRIOR SYN .REL. IOEQ0038.001
00023 IOTASK SYN .REL. IOEQ0038.001
00023 EFLAG SYN .REL. IOEQ0038.001
00023 CURREC SYN .REL. IOEQ0038.001
00047 SETWRD (SMTMP1) IOEQ0039
00024 SMTMP1 SYN .REL. IOEQ0039.001
00047 SETWRD (SMTMP2) IOEQ0040
00025 SMTMP2 SYN .REL. IOEQ0040.001
IOEQ0041
00047 SETWRD (ACTLNG) LENGTH OF SINGLE ACTIVE FILE ENTRY IOEQ0042
00026 ACTLNG SYN .REL. IOEQ0042.001
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 6
MACRO TO ASSIGN CONSECUTIVE STORAGE LOCATIONS IOEQ0044
SYMBOL ASTORE BLOCK,NWORDS .. WITHIN A BLOCK IOEQ0045
PMC ON .. IOEQ0046
SYMBOL SYN BLOCK .. IOEQ0047
PMC OFF .. IOEQ0048
TMP SET NWORDS .. IOEQ0049
BLOCK SET BLOCK+TMP .. IOEQ0050
ASTORE END .. IOEQ0051
IOEQ0052
00000 AFST SET 0 DEFINE ENTRIES IN ACTIVE FILE STATUS TABLE IOEQ0053
IOEQ0054
PROBNO ASTORE AFST,1 USER'S PROBLEM NUMBER IN BCD IOEQ0055
00000 PROBNO SYN AFST IOEQ0055.001
PROGNO ASTORE AFST,1 USER'S PROGRAMMER NUMBER IN BCD IOEQ0056
00001 PROGNO SYN AFST IOEQ0056.001
AUTHNO ASTORE AFST,1 USER'S 'AUTHOR' NUMBER IN BINARY IOEQ0057
00002 AUTHNO SYN AFST IOEQ0057.001
URCODE ASTORE AFST,1 USER'S RESTRICTION CODE IOEQ0058
00003 URCODE SYN AFST IOEQ0058.001
LIMITS ASTORE AFST,1 USER'S CORE LIMITS PZE LOWADR,,HIADR IOEQ0059
00004 LIMITS SYN AFST IOEQ0059.001
RELOC ASTORE AFST,1 USER'S RELOCATION IOEQ0060
00005 RELOC SYN AFST IOEQ0060.001
FPRIOR ASTORE AFST,1 USER'S FILE PRIORITY SETTING IOEQ0061
00006 FPRIOR SYN AFST IOEQ0061.001
ERRILC ASTORE AFST,1 LOCATION OF CALL RESULTING IN LAST ERROR IOEQ0062
00007 ERRILC SYN AFST IOEQ0062.001
ERNAME ASTORE AFST,1 NAME OF ENTRY IN WHICH ERROR WAS DISCOVEREDIOEQ0063
00010 ERNAME SYN AFST IOEQ0063.001
ERCODE ASTORE AFST,1 ERROR CODE OF LAST ERROR IOEQ0064
00011 ERCODE SYN AFST IOEQ0064.001
IOCODE ASTORE AFST,1 I/O ERROR CODE IF ANY OF LAST ERROR IOEQ0065
00012 IOCODE SYN AFST IOEQ0065.001
ENAME1 ASTORE AFST,1 FILE NAME(1) OF FILE INVOLVED IN LAST ERRORIOEQ0066
00013 ENAME1 SYN AFST IOEQ0066.001
ENAME2 ASTORE AFST,1 FILE NAME(2) OF FILE INVOLVED IN LAST ERRORIOEQ0067
00014 ENAME2 SYN AFST IOEQ0067.001
ERCALL ASTORE AFST,1 LOCATION OF LAST CALL TO ERROR OR IOERR IOEQ0068
00015 ERCALL SYN AFST IOEQ0068.001
QUEUE1 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(1) IOEQ0069
00016 QUEUE1 SYN AFST IOEQ0069.001
QUEUE2 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(2) IOEQ0070
00017 QUEUE2 SYN AFST IOEQ0070.001
QUEUE3 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(3) IOEQ0071
00020 QUEUE3 SYN AFST IOEQ0071.001
QUEUE4 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(4) IOEQ0072
00021 QUEUE4 SYN AFST IOEQ0072.001
QUEUE5 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(5) IOEQ0073
00022 QUEUE5 SYN AFST IOEQ0073.001
QUEUE6 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(6) IOEQ0074
00023 QUEUE6 SYN AFST IOEQ0074.001
QUEUE7 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(7) IOEQ0075
00024 QUEUE7 SYN AFST IOEQ0075.001
IOEQ0076
AFENTY ASTORE AFST,ACTLNG STORAGE FOR A SINGLE ACTIVE FILE ENTRY IOEQ0077
00025 AFENTY SYN AFST IOEQ0077.001
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 7
IOEQ0078
TBLMIN ASTORE AFST,0 MINIMUM LENGTH FOR USER I/O STATUS TABLE IOEQ0079
00053 TBLMIN SYN AFST IOEQ0079.001
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 8
0761 01 1 60000 EFA OPSYN NOP EFFECTIVE ADDRESS PARAMETER FLAG IOEQ0081
3 00001 1 60000 PAR OPSYN PTH NORMAL PARAMETER FLAG IOEQ0082
IOEQ0083
1 00001 1 60000 ION OPSYN PON I/O NON-TRANSMIT AND PROCEED IOEQ0084
2 00001 1 60000 IOP OPSYN PTW I/O TRANSMIT AND PROCEED IOEQ0085
0 00001 1 60000 IOD OPSYN PZE I/O DISCONNECT IOEQ0086
IOEQ0087
HOMOP MACRO GENERATE INSTRUCTION TO RESET ECC TO 'HOME'IOEQ0088
IFF IOSMEM-1,0,1 IOEQ0089
SEA HOME INSTRUCTION FOR MEMORY A IOEQ0090
IFF IOSMEM-2,0,1 IOEQ0091
SEB HOME INSTRUCTION FOR MEMORY B IOEQ0092
IFF IOSMEM-3,0,1 IOEQ0093
SEC HOME INSTRUCTION FOR MEMORY C IOEQ0094
HOMOP END IOEQ0095
* ASSEMBLY FOR CORE B IOEQ0099
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 9
............ PARAMETER DEFINITIONS .............. FCOR0101
FCOR0102
00001 PMAX EQU 1 MAX. NUMBER OF FILE POINTER WORDS FCOR0103
00005 SFILES EQU 5 NUMBER OF ACTIVE FILES FOR FILE SYSTEM FCOR0104
00002 LDEPTH EQU 2 MAX. LEVEL OF FILE LINKING ALLOWED FCOR0105
00010 SVWRDS EQU 8 NO. OF WORDS/ACTIVE FILE ON 'SAVE' COMMANDSFCOR0106
00120 RGRACE EQU 80 NO. OF RECORDS USER MAY EXCEED QUOTA FCOR0107
FCOR0108
00035 1QL EQU 1+7*4 QUEUE STORAGE FOR DEVICE 1 FCOR0109
00000 2QL EQU 0 .. 2 FCOR0110
FCOR0111
MODE AND STATUS BIT DEFINITIONS FCOR0112
FCOR0113
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0114
FCOR0115
FILE- AND REFERENCE-MODES FCOR0116
FCOR0117
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0118
FCOR0119
400000 M.M BOOL 400000 DAEMON RE-LOAD (MICK'S MODE) FCOR0120
200000 P.M BOOL 200000 PROTECTED FCOR0121
100000 L.M BOOL 100000 SYSTEM-TRAP (LINKABLE) FCOR0122
040000 V.M BOOL 040000 PRIVATE FCOR0123
020000 W.M BOOL 020000 WRITE-ONLY FCOR0124
010000 R.M BOOL 010000 READ-ONLY FCOR0125
004000 S.M BOOL 004000 DATE-REMOVE (SECONDARY) FCOR0126
002000 T.M BOOL 002000 TEMPORARY FCOR0127
FCOR0128
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0129
FCOR0130
FILE REFERENCE STATUS FCOR0131
FCOR0132
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0133
FCOR0134
400000 S.S BOOL 400000 'SAVED' (USAVE) FCOR0135
200000 W.S BOOL 200000 OPEN/WRITING FCOR0136
100000 R.S BOOL 100000 OPEN/READING FCOR0137
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 10
................ MACRO DEFINTIONS .......................FCOR0139
FCOR0140
SEARCH MACRO DIR,FILNAM,NOFILE SEARCH USER OR MASTER FILE DIRECTORY FCOR0141
TSX SEARCH,4 CALL SEARCH MODULE FCOR0142
IFF 1,DIR,UFD IS DIR .E. 'UFD' FCOR0143
EFA PROBNO,1 IF SO SET TO SEARCH CURRENT UFD FCOR0144
IFF 0,DIR,UFD OTHERWISE FCOR0145
EFA DIR SET TO SEARCH SPECIFIED DIRECTORY FCOR0146
EFA FILNAM POINTER TO FILE NAME FCOR0147
EFA FPROBN,2 POINTER TO SLOT IN A.F.S.T. FCOR0148
PAR NOFILE,,UFDERR ERROR RETURNS FCOR0149
SEARCH END FCOR0150
FCOR0151
UPDFIL MACRO DIR,FILNAM,NOFILE UPDATE USER OR MASTER FILE DIRECTORY FCOR0152
TSX UPDFIL,4 CALL SEARCH MODULE FCOR0153
IFF 1,DIR,UFD IS DIR .E. 'UFD' FCOR0154
EFA FPROBN,2 IF SO UPDATE UFD OF THIS FILE FCOR0155
IFF 0,DIR,UFD OTHERWISE FCOR0156
EFA DIR UPDATE SPECIFIED DIRECTORY FCOR0157
EFA FILNAM POINTER TO FILE NAME FCOR0158
EFA FPROBN,2 POINTER TO FILE ENTRY IN A.F.S.T. FCOR0159
PAR NOFILE,,UFDERR ERROR RETURNS FCOR0160
UPDFIL END FCOR0161
FCOR0162
ADDFIL MACRO DIR,NOROOM ADD FILE TO USER OR MASTER FILE DIRECTORY FCOR0163
TSX ADDFIL,4 CALL SEARCH MODULE FCOR0164
IFF 1,DIR,UFD IS DIR .E. 'UFD' FCOR0165
EFA FPROBN,2 IF SO ADD FILE TO CURRENT USER'S UFD FCOR0166
IFF 0,DIR,UFD OTHERWISE FCOR0167
EFA DIR ADD FILE TO SPECIFIED DIRECTORY FCOR0168
EFA FPROBN,2 POINTER TO FILE ENTRY FCOR0169
PAR NOROOM,,UFDERR ERROR RETURNS FCOR0170
ADDFIL END FCOR0171
FCOR0172
REMOVE MACRO DIR,FILNAM,NOFILE DELETE FILE FROM UFD OR MFD FCOR0173
TSX REMOVE,4 CALL SEARCH MODULE FCOR0174
IFF 1,DIR,UFD IS DIR .E. 'UFD' FCOR0175
EFA FPROBN,2 IF SO DELETE FROM CURRENT USER'S UFD FCOR0176
IFF 0,DIR,UFD OTHERWISE FCOR0177
EFA DIR DELETE FROM SPECIFIED DIRECTORY FCOR0178
EFA FILNAM POINTER TO FILE NAME FCOR0179
PAR NOFILE,,UFDERR ERROR RETURNS FCOR0180
REMOVE END FCOR0181
FCOR0182
REWRIT MACRO DIR,NOFILE UPDATE UFD OR MFD STATUS FCOR0183
TSX REWRIT,4 CALL SEARCH MODULE FCOR0184
IFF 1,DIR,UFD IS DIR .E. 'UFD' FCOR0185
EFA PROBNO,1 IF SO UPDATE CURRENT USER FILE DIRECTORY FCOR0186
IFF 0,DIR,UFD OTHERWISE FCOR0187
EFA DIR UPDATE SPECIFIED DIRECTORY FCOR0188
PAR NOFILE,,UFDERR ERROR RETURNS FCOR0189
REWRIT END FCOR0190
FCOR0191
GETQU MACRO DIR GET RECORD QUOTA,,USED FROM UFD FCOR0192
TSX GETQU,4 CALL SEARCH MODULE FCOR0193
EFA DIR POINTER TO USER MFD ENTRY FCOR0194
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 11
EFA 0,3 DEVICE NUMBER FCOR0195
PAR QUMERR,,UFDERR ERROR RETURNS FCOR0196
GETQU END FCOR0197
FCOR0198
SETQU MACRO DIR SET RECORD QUOTA,,USED IN UFD FCOR0199
TSX SETQU,4 CALL SEARCH MODULE FCOR0200
EFA DIR POINTER TO USER MFD ENTRY FCOR0201
EFA 0,3 DEVICE NUMBER FCOR0202
PAR QUMERR,,UFDERR ERROR RETURNS FCOR0203
SETQU END FCOR0204
FCOR0205
CHKUFD MACRO DIR,NODIR CHECK FOR SPECIFIED FILE DIRECTORY FCOR0206
TSX SEARCH,4 SEARCH M.F.D. (FILE) FOR UFD FCOR0207
EFA MFD .. FCOR0208
EFA DIR POINTER TO UFD FCOR0209
EFA CHKTMP SCRAP RETURN INFO FCOR0210
PAR NODIR,,UFDERR ERROR RETURNS FCOR0211
CHKUFD END FCOR0212
FCOR0213
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0214
FCOR0215
MOVE1 MACRO FMEM,FROM,TMEM,TO,ERRTN MOVE WORD BETWEEN HOME AND USER FCOR0216
TSX MOVE,4 CALL MOVE ROUTINE FCOR0217
PAR FMEM,,TMEM .. FCOR0218
EFA FROM .. FCOR0219
EFA TO .. FCOR0220
EFA 1 .. MOVE ONE WORD FCOR0221
PAR ERRTN .. FCOR0222
MOVE1 END FCOR0223
FCOR0224
GETPAR MACRO EFA PICK UP PARAMETER FROM USER CALL FCOR0225
XEC PARMEM SET ECC FOR USER'S MEMORY FCOR0226
CAL EFA PICK UP PARAMETER FCOR0227
HOMOP RESET ECC TO 'HOME' FCOR0228
GETPAR END FCOR0229
FCOR0230
MACRO USER SAVE MACRO FCOR0231
M NAME SAVE UCODE,SFLAG,PLIST .. FCOR0232
NAME SXA IR4,4 SAVE IR4 FIRST FCOR0233
TSX SAVE,4 CALL USER SAVE ROUTINE FCOR0234
PAR =H'NAME ENTRY NAME FCOR0235
PAR =O'UCODE' RESTRICTION CODE FCOR0236
IFF 1,SFLAG,S IS SFLAG .E. S FCOR0237
PAR =O77777 IF SO SET FLAG TO INSURE USER SIGNED ON FCOR0238
IFF 0,SFLAG,S OTHERWISE FCOR0239
PAR =0 SET TO SKIP SIGNED-ON TEST FCOR0240
IRP PLIST FCOR0241
PAR PLIST PARAMETER LIST PROTOTYPE FCOR0242
IRP FCOR0243
SAVE END FCOR0244
FCOR0245
MACRO SUPERVISOR SAVE MACRO FCOR0246
NAME SSAVE PLIST .. FCOR0247
NAME SXA IR4,4 SAVE IR4 FIRST FCOR0248
TSX SSAVE,4 CALL SUPERVISOR SAVE ROUTINE FCOR0249
PAR =H'NAME ENTRY NAME FCOR0250
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 12
PAR =0 NULL RESTRICTION CODE FCOR0251
PAR =0 SKIP SIGNED-ON TEST FCOR0252
IRP PLIST FCOR0253
PAR PLIST PARAMETER LIST PROTOTYPE FCOR0254
IRP FCOR0255
SSAVE END FCOR0256
FCOR0257
ERROR MACRO N STANDARD ERROR PROCEDURE FCOR0258
XEC ERR'N EXECUTE ERROR PROCEDURE FCOR0259
RMT DEFINE (ERR'N) IF NECESSARY FCOR0260
IFF ERR'N,0,1 .. FCOR0261
DFINE ERR'N,ERROR,N .. FCOR0262
RMT .. FCOR0263
ERROR END FCOR0264
FCOR0265
IOERR MACRO N STANDARD I/O ERROR PROCEDURE FCOR0266
XEC IOE'N EXECUTE I/O ERROR PROCEDURE FCOR0267
RMT DEFINE (IOE'N) IF NECESSARY FCOR0268
IFF IOE'N,0,1 .. FCOR0269
DFINE IOE'N,IOERR,N .. FCOR0270
RMT .. FCOR0271
IOERR END FCOR0272
FCOR0273
DFINE MACRO LOC,NAME,N DEFINE ERROR PROCEDURE FCOR0274
LOC TSX NAME,4 GO TO ERROR ROUTINE FCOR0275
PAR N .. ERROR CODE FCOR0276
DFINE END FCOR0277
FCOR0278
GTSTAT MACRO NAME,ERRTN GET ACTIVE FILE STATUS FROM A.F.S.T. FCOR0279
TSX GTSTAT,4 PICK UP ACTIVE FILE STATUS FCOR0280
PAR NAME,,ERRTN .. FCOR0281
GTSTAT END FCOR0282
FCOR0283
RELEAS MACRO RPROB RELEASE FILE FROM ACTIVE STATUS FCOR0284
STZ RPROB .. FCOR0285
RELEAS END FCOR0286
FCOR0287
RTNFIL MACRO ERRTN NORMAL CLOSE OUT OF ACTIVE FILE FCOR0288
TSX RTNFIL,4 .. CALLS RELEAS FCOR0289
PAR ERRTN .. POSSIBLE ERROR RETURN FCOR0290
RTNFIL END FCOR0291
FCOR0292
USTORE MACRO PARAM,ENDRTN MOVE WORD TO USER ARRAY AND BUMP ADDRESS FCOR0293
TSX USTORE,4 .. FCOR0294
PAR PARAM,,ENDRTN .. RETURN TO ENDRTN AT END OF ARRAY FCOR0295
USTORE END FCOR0296
FCOR0297
SSTRAP MACRO ICODE,IR4,ILC,INFO,COUNT INTERRUPT SUPERVISOR FCOR0298
TSX SSTRAP,4 CALL SUPERVISOR INTERRUPT PROCEDURE FCOR0299
PAR SLOTNO .. FCOR0300
PAR =ICODE .. FCOR0301
PAR IR4 .. FCOR0302
PAR ILC .. FCOR0303
PAR INFO,,COUNT .. FCOR0304
SSTRAP END FCOR0305
FCOR0306
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 13
LXTC MACRO WORD,TAG LOAD INDEX FROM TAG COMPLEMENTED FCOR0307
CAL WORD GET WORD FCOR0308
ARS 15 TAG TO ADDRESS FCOR0309
ANA =O7 MODULO 2.P.3 FCOR0310
PAC 0,TAG -TAG TO INDEX REGISTER FCOR0311
LXTC END FCOR0312
FCOR0313
EXIT MACRO IR4SAV,RTNLOC COMMON EXIT FROM I/O SYSTEM FCOR0314
TSX FILXIT,4 EXIT THROUGH SUPERVISOR EXIT ROUTINE FCOR0315
LXA IR4SAV,4 .. FCOR0316
RTNLOC .. FCOR0317
EXIT END FCOR0318
FCOR0319
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0320
FCOR0321
...... ERROR RETURNS FROM SEARCH MODULE ............. FCOR0322
FCOR0323
00047 UFDERR ERROR 100 ERROR(100), I/O ERROR UFD OR MFD FCOR0324
FCOR0325
00050 QUMERR ERROR 101 ERROR(101), UFD UNKNOWN MACHINE ERROR FCOR0326
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 14
FCOR0328
MACRO MACRO TO GENERATE CALLS TO STRATEGY MODULESFCOR0329
SYMBOL GNCALL NAME .. FCOR0330
PMC ON .. FCOR0331
SYMBOL SYN *-1 .. DEFINE SYMBOL FOR TABLE REFERENCE FCOR0332
PMC OFF .. FCOR0333
SERNAM NAME,FMAX,(1,2,3,4,5,6,7) .. GENERATE CALLS FCOR0334
GNCALL END FCOR0335
FCOR0336
SERNAM MACRO NAME,MAX,LIST,SYM GENERATE STRATEGY MODULE CALLS FCOR0337
IRP LIST .. FCOR0338
SYM SET LIST-1 .. FCOR0339
IFF SYM/MAX,1,0 .. FCOR0340
CONC NAME,LIST .. FCOR0341
IRP .. FCOR0342
SERNAM END FCOR0343
FCOR0344
CONC MACRO NAME,NO GENERATE A SINGLE CALL FCOR0345
EXTERN NAME'NO' .. FCOR0346
PMC ON .. FCOR0347
TSX NAME'NO,4 .. CALL TO STRATEGY MODULE FCOR0348
PMC OFF .. FCOR0349
CONC END FCOR0350
FCOR0351
..... CONSTRUCT STRATEGY MODULE CALLING VECTORS .........FCOR0352
FCOR0353
DFILEF GNCALL DFILE CALL TO DELETE A FILE FCOR0354
00050 DFILEF SYN *-1 FCOR0354.001
00051 0074 00 4 00036 TSX DFILE1,4 FCOR0354.003
00052 0074 00 4 00037 TSX DFILE2,4 FCOR0354.003
00053 0074 00 4 00040 TSX DFILE3,4 FCOR0354.003
FCOR0355
SCRAPF GNCALL SCRAP CALL TO SCRAP PREVIOUSLY REQUESTED I/O FCOR0356
00053 SCRAPF SYN *-1 FCOR0356.001
00054 0074 00 4 00041 TSX SCRAP1,4 FCOR0356.003
00055 0074 00 4 00042 TSX SCRAP2,4 FCOR0356.003
00056 0074 00 4 00043 TSX SCRAP3,4 FCOR0356.003
FCOR0357
SINITF GNCALL SINIT CALL TO INITIALIZE STRATEGY MODULE FCOR0358
00056 SINITF SYN *-1 FCOR0358.001
00057 0074 00 4 00044 TSX SINIT1,4 FCOR0358.003
00060 0074 00 4 00045 TSX SINIT2,4 FCOR0358.003
00061 0074 00 4 00046 TSX SINIT3,4 FCOR0358.003
FCOR0359
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0360
FCOR0361
..... INITIALIZE OTHER MODULES IN THIS ORDER ............FCOR0362
FCOR0363
00061 SETMOD SYN *-1 OTHER MODULES THAT MUST BE INITIALIZED FCOR0364
00062 0074 00 4 00023 TSX IFILES,4 .. INITIALIZE SEARCH MODULE FCOR0365
00063 0074 00 4 00032 TSX IDRUMS,4 .. INITIALIZE DRUM TRACK MODULE FCOR0366
00064 0074 00 4 00033 TSX IDISKS,4 .. INITIALIZE DISK TRACK MODULES FCOR0367
00003 NINIT SYN *-SETMOD-1 .. COUNT OF ENTRIES TO BE INITIALIZED FCOR0368
FCOR0369
..... MODULES TO BE CALLED BY UPDATE ....................FCOR0370
FCOR0371
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 15
00064 UPDMOD SYN *-1 MODULES THAT SHOULD BE UPDATED FCOR0372
00065 0074 00 4 00034 TSX UPDRUM,4 .. UPDATE DRUM TRACK USAGE MODULE FCOR0373
00066 0074 00 4 00035 TSX UPDISK,4 .. UPDATE DISK TRACK USAGE MODULE FCOR0374
00002 NUPDAT SYN *-UPDMOD-1 COUNT OF ENTRIES TO BE UPDATED FCOR0375
FCOR0376
FCOR0378
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 16
FCOR0380
UPDMFD.($PROBNO$,$PROGNO$) FCOR0381
FCOR0382
UPDMFD SAVE 002,N,(FN) FCOR0383
FCOR0384
00075 -0774 00 2 05603 AXC FILTMP,2 FCOR0385
00076 SEARCH MFD,FILNAM,UPDM1 CHECK IF USER ALREADY IN MFD FCOR0386
00103 ERROR 3 UPDMFD ERROR(3), USER ALREADY IN MFD FCOR0387
FCOR0388
00104 0500 00 0 05454 UPDM1 CLA FILNAM USER NOT IN MFD, CONSTRUCT NEW MFD ENTRY FCOR0389
00105 0100 00 0 00144 TZE UMFDE5 ZERO PROBN IS USED FOR OTHER TESTS FCOR0390
00106 0560 00 0 05455 LDQ FILNAM+1 NAME 2 OF ATTACHED DIRECTORY FCOR0391
00107 -0603 00 2 00007 DST FNAME1,2 PUT IN NEW ENTRY FCOR0392
00110 0074 00 4 04256 TSX GTDYTM,4 .. FCOR0393
00111 0602 00 2 00011 SLW DAYTIM,2 .. DATE + TIME CREATED FCOR0394
00112 -0320 00 0 06333 ANA =O777777000000 .. FCOR0395
00113 -0501 00 1 00002 ORA AUTHNO,1 ADD AUTHOR NUMBER FROM USER'S AFST FCOR0396
00114 0602 00 2 00012 SLW DATELU,2 .. DATE LAST USED FCOR0397
00115 0500 00 0 06253 CLA =O210000100000 .. READ-ONLY, PROTECTED MODE FCOR0398
00116 0560 00 0 06125 LDQ TGPMAX .. PMAX IN TAG FCOR0399
00117 -0603 00 2 00013 DST MODE,2 PUT IN MODE, DEVICE, PMAX, ETC FCOR0400
00120 ADDFIL MFD,UMFDME ADD THIS ENTRY TO THE MFD FCOR0401
00124 -0774 00 3 00001 AXC 1,3 FCOR0402
00125 -0754 00 0 00000 UPDM2 ZAC SET RECORD QUOTAS TO ZERO FCOR0403
00126 SETQU (FNAME1,2) .. FCOR0404
00132 -3 77775 3 00134 TXL *+2,3,-FMAX .. FCOR0405
00133 1 77777 3 00125 TXI UPDM2,3,-1 .. FCOR0406
00134 REWRIT FILNAM,UMFDME UPDATE USER FILE DIRECTORY FCOR0407
00137 REWRIT MFD,UMFDME UPDATE MASTER FILE DIRECTORY FCOR0408
00142 0020 00 0 04137 TRA RETURN RETURN TO CALLER FCOR0409
FCOR0410
00143 UMFDME ERROR 4 UPDMFD ERROR(4), MACHINE OR SYSTEM ERROR FCOR0411
FCOR0412
00144 UMFDE5 ERROR 5 UPDMFD ERROR(5), ZERO PROBLEM NUMBER FCOR0413
FCOR0414
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 17
FCOR0416
DELMFD.($PROBNO$,$PROGNO$) FCOR0417
FCOR0418
DELMFD SAVE 002,N,(FN) FCOR0419
FCOR0420
00153 -0774 00 2 05603 AXC FILTMP,2 FCOR0421
00154 SEARCH MFD,FILNAM,DMFDME FIND THIS MFD ENTRY FCOR0422
00161 -0774 00 3 00001 AXC 1,3 FCOR0423
00162 DMFD1 GETQU FILNAM INSURE NO RECORDS USED FCOR0424
00166 -0734 00 4 00000 PDX 0,4 .. FCOR0425
00167 3 00000 4 00207 TXH DMFDE4,4,0 .. ERROR IF ALL FILES NOT DELETED FCOR0426
00170 -3 77775 3 00172 TXL *+2,3,-FMAX .. FCOR0427
00171 1 77777 3 00162 TXI DMFD1,3,-1 .. FCOR0428
00172 REWRIT FILNAM,DMFDME INSURE THIS DIRECTORY IS CLOSED FCOR0429
00175 0074 00 4 05027 TSX DFILE,4 TRY TO DELETE THIS FILE FCOR0430
00176 REMOVE MFD,FILNAM,DMFDME REMOVE USER FROM MFD FCOR0431
00202 REWRIT MFD,DMFDME UPDATE MASTER FILE DIRECTORY FCOR0432
00205 0020 00 0 04137 TRA RETURN RETURN TO CALLER FCOR0433
FCOR0434
00206 DMFDME ERROR 3 DELMFD ERROR(3), USER NOT FOUND IN MFD FCOR0435
FCOR0436
00207 DMFDE4 ERROR 4 DELMFD ERROR(4), UFD STILL IN USE FCOR0437
FCOR0438
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 18
FCOR0440
ATTACH.($PROBNO$,$PROGNO$) FCOR0441
FCOR0442
ATTACH SAVE 002,N,(FN) FCOR0443
FCOR0444
00216 -0520 00 1 00000 NZT PROBNO,1 IS ANYONE CURRENTLY IN THIS SLOT FCOR0445
00217 0020 00 0 00223 TRA ATTCH1 NO, SKIP FCOR0446
00220 REWRIT UFD,ATTMER YES, UPDATE HIS FILE DIRECTORY FCOR0447
00223 -0520 00 0 05454 ATTCH1 NZT FILNAM FCOR0448
00224 0020 00 0 00250 TRA ATTCH2 ATTACH.(0,X), AFST DE-ACTIVATED FCOR0449
00225 -0500 00 0 05455 CAL FILNAM+1 CHECK FOR USAGE TABLE ENTRIES FCOR0450
00226 0322 00 0 06117 ERA UTFNAM GENERIC SECOND NAME FCOR0451
00227 -0100 00 0 00236 TNZ ATTCH3 NOT RESTRICTED NAME FCOR0452
00230 -0500 00 0 05454 CAL FILNAM CHECK FIRST NAME FCOR0453
00231 0322 00 0 06120 ERA DRMNAM IS IT DRUM USAGE FCOR0454
00232 0100 00 0 00254 TZE ATTERR YES, CANNOT BE 'EXECUTED' FCOR0455
00233 -0500 00 0 05454 CAL FILNAM .. FCOR0456
00234 0322 00 0 06121 ERA DSKNAM OR DISK USAGE FCOR0457
00235 0100 00 0 00254 TZE ATTERR .. FCOR0458
00236 -0774 00 2 05603 ATTCH3 AXC FILTMP,2 TEMPORARY SLOT FOR MFD SEARCH FCOR0459
00237 SEARCH MFD,FILNAM,ATTERR FIND USER IN MFD FCOR0460
00244 0441 00 2 00013 LDI F,2 MAKE SURE THERE'S NOT A LINK THERE SOMEHOW FCOR0461
00245 0054 00 700000 RFT 700000 TEST DEVICE FIELD FCOR0462
00246 0020 00 0 00250 TRA *+2 OK FCOR0463
00247 0020 00 0 00255 TRA ATTMER RE-USE ERROR CODE FCOR0464
00250 0500 00 0 05454 ATTCH2 CLA FILNAM GET USER PROBLEM NO. FCOR0465
00251 0560 00 0 05455 LDQ FILNAM+1 AND PROGRAMMER NO. FCOR0466
00252 -0603 00 1 00000 DST PROBNO,1 SAVE IN AFST FCOR0467
00253 0020 00 0 04137 TRA RETURN RETURN TO CALLER FCOR0468
FCOR0469
00254 ATTERR ERROR 3 ATTACH ERROR(3), USER NOT IN MFD FCOR0470
FCOR0471
00255 ATTMER ERROR 4 ATTACH ERROR(4), MACHINE OR SYSTEM ERROR FCOR0472
FCOR0473
ATTNAM.(A(N)...N) FCOR0474
FCOR0475
ATTNAM SAVE 0,N,(ARY) FCOR0476
FCOR0477
00264 -0500 00 1 00000 CAL PROBNO,1 RETURN NAME OF DIRECTORY TO WHICH FCOR0478
00265 USTORE P1,RETURN USER IS ATTACHED FCOR0479
00267 -0500 00 1 00001 CAL PROGNO,1 PROBN, PROGN FCOR0480
00270 USTORE P1,RETURN .. FCOR0481
00272 -0500 00 1 00002 CAL AUTHNO,1 BINARY VALUE OF AUTHOR NUMBER FCOR0482
00273 USTORE P1,RETURN .. FCOR0483
00275 -0500 00 1 00006 CAL FPRIOR,1 USER FILE-PRIORITY SETTING FCOR0484
00276 USTORE P1,RETURN .. FCOR0485
00300 0020 00 0 04137 TRA RETURN FCOR0486
FCOR0487
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0488
FCOR0489
UPDATE. FCOR0490
FCOR0491
UPDATE SAVE 0,N,() FCOR0492
FCOR0493
00306 0074 00 4 05004 TSX UPDSYS,4 UPDATE ALL NECESSARY INFORMATION FCOR0494
00307 3 00000 0 00311 PAR UPDMER .. POSSIBLE ERROR RETURN FCOR0495
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 19
00310 0020 00 0 04137 TRA RETURN RETURN TO CALLER FCOR0496
FCOR0497
00311 UPDMER ERROR 3 UPDATE ERROR(3), MACHINE OR SYSTEM ERROR FCOR0498
FCOR0499
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0500
FCOR0501
SETPRI.(PRIOR) FCOR0502
FCOR0503
SETPRI SAVE 0,S,(SPM) FCOR0504
FCOR0505
00320 -0500 00 0 05461 CAL P1 PICK UP USER FILE PRIORITY FCOR0506
00321 -0320 00 0 06226 ANA =O7 INSURE 3-BIT PRIORITY FCOR0507
00322 0602 00 1 00006 SLW FPRIOR,1 .. SAVE FILE PRIORITY FCOR0508
00323 0020 00 0 04137 TRA RETURN AND RETURN FCOR0509
FCOR0510
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 20
FCOR0512
OPEN.($STATUS$,$NAME1$,$NAME2$,MODE,DEVICE) FCOR0513
FCOR0514
OPEN SAVE 0,S,(SPM,FN,SP,SP) FCOR0515
FCOR0516
00335 GTSTAT FILNAM,OPN CHECK IF THIS FILE IS ALREADY ACTIVE FCOR0517
00337 ERROR 3 OPEN ERROR (3), FILE ALREADY ACTIVE FCOR0518
FCOR0519
00340 0074 00 4 04431 OPN TSX CKSTAT,4 FIND ROOM IN ACTIVE FILE STATUS TABLE FCOR0520
00341 3 00000 0 00727 PAR OPNER4 .. POSSIBLE ERROR RETURN (NO ROOM) FCOR0521
00342 0737 00 2 00000 PAC 0,2 -BASE OF ENTRY IN A.F.S.T. TO IR2 FCOR0522
00343 0500 00 0 05454 CLA FILNAM SET UP FILE NAME IN A.F.S.T. FCOR0523
00344 0560 00 0 05455 LDQ FILNAM+1 .. FCOR0524
00345 -0603 00 2 00002 DST RNAME1,2 .. FCOR0525
00346 0500 00 1 00000 CLA PROBNO,1 SET UP PROBNO-PROGNO AS RPROBN-RPROGN FCOR0526
00347 0560 00 1 00001 LDQ PROGNO,1 .. FCOR0527
00350 -0603 00 2 00000 DST RPROBN,2 .. FCOR0528
FCOR0529
00351 0560 00 0 05461 LDQ P1 $STATUS$ TO MQ FCOR0530
00352 0441 00 0 06217 LDI =0 SET UP FILE STATUS FCOR0531
00353 0774 00 4 00006 AXT 6,4 .. (READ, WRITE OR READ/WRITE) FCOR0532
00354 -0754 00 0 00000 OPN1 ZAC .. FCOR0533
00355 -0763 00 0 00006 LGL 6 .. FCOR0534
00356 -0340 00 0 06233 LAS =H00000R .. FCOR0535
00357 0020 00 0 00361 TRA *+2 .. FCOR0536
00360 -0055 00 100000 SIL 100000 .. SET READ STATUS FOR 'R' FCOR0537
00361 0402 00 0 06234 SUB =H00000W .. FCOR0538
00362 -0100 00 0 00365 TNZ *+3 .. FCOR0539
00363 -0055 00 200000 SIL 200000 .. HERE FOR 'W' SET WRITE STATUS FCOR0540
00364 0020 00 0 00366 TRA OPN2 .. AND SKIP OUT FCOR0541
00365 2 00001 4 00354 TIX OPN1,4,1 .. FCOR0542
FCOR0543
00366 -0054 00 300000 OPN2 LFT 300000 DID USER SPECIFY EITHER READ OR WRITE FCOR0544
00367 0020 00 0 00372 TRA OPN3 YES, SKIP TO SAVE FILE STATUS (R, W OR RW) FCOR0545
00370 RELEAS (RPROBN,2) NO, REMOVE FILE FROM A.F.S.T. FCOR0546
00371 ERROR 5 OPEN ERROR(5), ILLEGAL STATUS FCOR0547
FCOR0548
00372 0604 00 0 05474 OPN3 STI STATUS SAVE FILE STATUS FCOR0549
00373 SEARCH UFD,FILNAM,OPN4 TRY TO FIND FILE IN UFD FILE FCOR0550
00400 0074 00 4 04322 TSX CKLINK,4 CHECK FOR 'LINKED' FILE FCOR0551
00401 3 00736 0 00545 PAR OPN4.1,,OPNER7 .. LINK NOT FOUND RETURN FCOR0552
00402 0074 00 4 04523 TSX CHKACT,4 CHECK IF THIS FILE ALREADY ACTIVE FCOR0553
00403 3 00000 0 00725 PAR OPNER3 .. ERROR IF THIS FILE ALREADY ACTIVE FCOR0554
FCOR0555
00404 0441 00 1 00003 LDI URCODE,1 FILE FOUND, GET USER RESTRICTION CODE FCOR0556
00405 -0054 00 000030 LFT 000030 IS USER PRIVELEGED COMMAND OR DAEMON FCOR0557
00406 0020 00 0 00454 TRA OPN3.3 YES, IGNORE ALL MODE CHECKS FCOR0558
00407 0441 00 2 00013 LDI MODE,2 NO, PICK UP FILE MODE FCOR0559
00410 -0056 00 400000 LNT 400000 IS THIS FILE CURRENTLY BEING LOADED FCOR0560
00411 0020 00 0 00414 TRA OPN3A NO, SKIP FCOR0561
00412 RELEAS (RPROBN,2) YES, REMOVE FILE FROM ACTIVE STATUS FCOR0562
00413 ERROR 16 OPEN ERROR(16), FILE BEING LOADED FCOR0563
FCOR0564
00414 -0056 00 004000 OPN3A LNT 004000 HAS FILE BEEN 'REMOVED' FCOR0565
00415 0020 00 0 00420 TRA OPN3B NO, SKIP THIS SECTION FCOR0566
00416 RELEAS (RPROBN,2) REMOVE FROM ACTIVE STATUS FCOR0567
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 21
00417 ERROR 20 OPEN ERROR(20), FILE HAS BEEN 'REMOVED' FCOR0568
FCOR0569
00420 OPN3B SYN * .. FCOR0570
FCOR0571
* LNT 100000 TEST IF FILE IS TO BE 'TRAPPED' FCOR0572
* TRA OPN3C NO, CONTINUE FCOR0573
* HTR * ADD NECESSARY CODE HERE FCOR0574
FCOR0575
*OPN3C SYN * .. FCOR0576
FCOR0577
00420 0441 00 2 00004 LDI RMODE,2 RELOAD FILE MODE FCOR0578
00421 -0056 00 040000 LNT 040000 IS FILE IN PRIVATE MODE FCOR0579
00422 0020 00 0 00434 TRA OPN3.1 NO, SKIP FCOR0580
00423 0441 00 1 00003 LDI URCODE,1 YES, GET USER RESTRICTION CODE FCOR0581
00424 0054 00 000010 RFT 10 IS USER ALLOWED TO READ PRIVATE FILES FCOR0582
00425 0020 00 0 00434 TRA OPN3.1 YES, SKIP FCOR0583
00426 -0500 00 2 00012 CAL AUTHOR,2 NO, GET AUTHOR FCOR0584
00427 -0320 00 0 06241 ANA =O777777 .. FCOR0585
00430 0402 00 1 00002 SUB AUTHNO,1 IS THIS USER THE 'AUTHOR' OF THIS FILE FCOR0586
00431 0100 00 0 00434 TZE OPN3.1 YES, SKIP TO OPEN THIS FILE FCOR0587
00432 RELEAS (RPROBN,2) NO, REMOVE FILE FROM ACTIVE FILE TABLE FCOR0588
00433 ERROR 8 USER MAY NOT READ FILE ERROR(8) FCOR0589
FCOR0590
00434 0441 00 2 00004 OPN3.1 LDI RMODE,2 IS FILE IN READ-ONLY MODE FCOR0591
00435 -0056 00 010000 LNT 010000 .. FCOR0592
00436 0020 00 0 00444 TRA OPN3.2 NO, SKIP FCOR0593
00437 0441 00 0 05474 LDI STATUS YES, IS USER TRYING TO WRITE THIS FILE FCOR0594
00440 -0056 00 200000 LNT 200000 .. FCOR0595
00441 0020 00 0 00444 TRA OPN3.2 NO, SKIP FCOR0596
00442 RELEAS (RPROBN,2) YES, REMOVE FILE FROM ACTIVE FILE TABLE FCOR0597
00443 ERROR 9 OPEN ERROR(9), CANNOT WRITE READ-ONLY FILE FCOR0598
FCOR0599
00444 0441 00 2 00004 OPN3.2 LDI RMODE,2 IS FILE IN WRITE-ONLY MODE FCOR0600
00445 -0056 00 020000 LNT 020000 .. FCOR0601
00446 0020 00 0 00454 TRA OPN3.3 NO, SKIP FCOR0602
00447 0441 00 0 05474 LDI STATUS YES, IS USER TRYING TO READ THIS FILE FCOR0603
00450 -0056 00 100000 LNT 100000 .. FCOR0604
00451 0020 00 0 00454 TRA OPN3.3 NO, SKIP FCOR0605
00452 RELEAS (RPROBN,2) YES, REMOVE FILE FROM ACTIVE FILE TABLE FCOR0606
00453 ERROR 10 OPEN ERROR(10), CANNOT READ WRITE-ONLY FILEFCOR0607
FCOR0608
00454 0441 00 2 00013 OPN3.3 LDI ILOCK,2 IS THIS FILE CURRENTLY INTERLOCKED FCOR0609
00455 -0056 00 001000 LNT 001000 .. FCOR0610
00456 0020 00 0 00464 TRA OPN3.4 NO, SKIP FCOR0611
00457 OPNBSY RELEAS (RPROBN,2) YES, REMOVE FILE FROM A.F.S.T. FCOR0612
00460 0074 00 4 04741 TSX LOCK,4 TELL SUPERVISOR OF INTERLOCKED FILE FCOR0613
00461 EXIT IR4,ILC AND RETURN TO USER AT 0,4 FCOR0614
FCOR0615
00464 0441 00 0 05474 OPN3.4 LDI STATUS SET FILE STATUS IN ACTIVE TABLE FCOR0616
00465 -0500 00 2 00014 CAL RWSTAT,2 .. FCOR0617
00466 0043 00 0 00000 OAI .. FCOR0618
00467 0604 00 2 00014 STI RWSTAT,2 .. FCOR0619
00470 -0056 00 200000 LNT 200000 DOES THIS USER INTEND TO MODIFY THIS FILE FCOR0620
00471 0020 00 0 00504 TRA OPN3.5 NO, SKIP FCOR0621
00472 0441 00 2 00013 LDI ILOCK,2 YES, IS ANYONE CURRENTLY READING THIS FILE FCOR0622
00473 -0054 00 000777 LFT 000777 .. FCOR0623
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 22
00474 0020 00 0 00457 TRA OPNBSY YES, THIS USER WILL HAVE TO WAIT FCOR0624
00475 -0055 00 001000 SIL 001000 NO, INTERLOCK THIS FILE FCOR0625
00476 0604 00 2 00013 STI ILOCK,2 .. AND LET THIS USER MODIFY IT FCOR0626
00477 0074 00 4 05043 TSX REFMFD,4 BUT LETS FIRST MAKE SURE FCOR0627
00500 0761 00 2 00005 EFA FPROBN,2 THAT IT ISN'T IN M.F.D. FCOR0628
00501 0520 00 0 05435 ZET FS.TST SEE IF HE IS ALLOWED FCOR0629
00502 0020 00 0 00520 TRA OPN3.6 OK, IF YOU SAY SO FCOR0630
00503 0020 00 0 00607 TRA OPNR18 NASTY, NASTY FCOR0631
FCOR0632
00504 0441 00 2 00013 OPN3.5 LDI MODE,2 HERE IF USER ONLY INTENDS TO READ FILE FCOR0633
00505 -0056 00 002000 LNT 002000 IS FILE IN TEMPORARY MODE FCOR0634
00506 0020 00 0 00512 TRA OPN35A NO, SKIP FCOR0635
00507 0441 00 2 00013 LDI ILOCK,2 YES, PICK UP INTERLOCK FLAGS FCOR0636
00510 -0054 00 000777 LFT 000777 IS ANYONE ELSE USING THIS FILE FCOR0637
00511 0020 00 0 00457 TRA OPNBSY ONLY ONE USER AT A TIME ON TEMP. FILE FCOR0638
FCOR0639
00512 -0500 00 2 00013 OPN35A CAL ILOCK,2 INCREASE NO. OF USERS READING THIS FILE FCOR0640
00513 0361 00 0 06242 ACL =1B17 .. FCOR0641
00514 0602 00 2 00013 SLW ILOCK,2 .. FCOR0642
00515 0074 00 4 05043 TSX REFMFD,4 NEW RULES, IF FS.TST IS SET FCOR0643
00516 0761 00 2 00005 EFA FPROBN,2 AND READ IS FROM MFD FCOR0644
00517 0520 00 0 05435 ZET FS.TST LET UPDFIL GO THROUGH FCOR0645
00520 OPN3.6 UPDFIL UFD,(FNAME1,2),OPNMER UPDATE FILE ENTRY IN UFD FCOR0646
00525 0020 00 0 00664 TRA OPN5 SKIP TO CALL STRATEGY MODULE FCOR0647
FCOR0648
00526 OPNMER RELEAS (RPROBN,2) HERE IF FILE NOT FOUND ON UPDFIL FCOR0649
00527 ERROR 11 OPEN ERROR(11), MACHINE ERROR FCOR0650
FCOR0651
00530 0500 00 2 00000 OPN4 CLA RPROBN,2 HERE IF FILE DOES NOT YET EXIST FCOR0652
00531 0560 00 2 00001 LDQ RPROGN,2 .. FCOR0653
00532 -0603 00 2 00005 DST FPROBN,2 .. TRY TO CREATE NEW FILE ENTRY FCOR0654
00533 0500 00 2 00002 CLA RNAME1,2 .. FILE NAME(1) FCOR0655
00534 0560 00 2 00003 LDQ RNAME2,2 .. FCOR0656
00535 -0603 00 2 00007 DST FNAME1,2 .. FCOR0657
00536 0600 00 2 00004 STZ RMODE,2 SET MODE TO 0 FCOR0658
00537 CHKUFD (FPROBN,2),OPER19 CHECK FOR AVAILABLE U.F.D. FCOR0659
00544 0020 00 0 00576 TRA OPN4.A FCOR0660
FCOR0661
00545 0500 00 2 00011 OPN4.1 CLA LPROBN,2 HERE IF 'LINKED' FILE DOES NOT EXIST FCOR0662
00546 0560 00 2 00012 LDQ LPROGN,2 .. FCOR0663
00547 -0603 00 2 00005 DST FPROBN,2 .. TRY TO CREATE NEW FILE ENTRY FCOR0664
00550 0500 00 2 00014 CLA LNAME1,2 .. FILE NAME(1) FCOR0665
00551 0560 00 2 00015 LDQ LNAME2,2 .. (2) FCOR0666
00552 -0603 00 2 00007 DST FNAME1,2 .. FCOR0667
FCOR0668
00553 0441 00 1 00003 LDI URCODE,1 GET USER RESTRICTION CODE FCOR0669
00554 -0054 00 000030 LFT 30 IGNORE MODE CHECKS FOR DAEMON FCOR0670
00555 0020 00 0 00576 TRA OPN4.A .. OR PRIVILEGED COMMAND FCOR0671
00556 0441 00 2 00004 LDI RMODE,2 PICK UP MODE OF LINK FCOR0672
00557 -0056 00 010000 LNT 010000 IS FILE READ-ONLY TO THIS USER FCOR0673
00560 0020 00 0 00566 TRA OPN41A .. NO, SKIP FCOR0674
00561 0441 00 0 05474 LDI STATUS .. YES, IS USER TRYING TO WRITE THIS FILE FCOR0675
00562 -0056 00 200000 LNT 200000 .. FCOR0676
00563 0020 00 0 00566 TRA OPN41A .. NO, SKIP FCOR0677
00564 RELEAS (RPROBN,2) .. YES, REMOVE FILE FROM A.F.S.T. FCOR0678
00565 ERROR 9 .. OPEN ERROR(9), ATTEMPT TO WRITE R/O FILEFCOR0679
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 23
FCOR0680
00566 0441 00 2 00004 OPN41A LDI RMODE,2 RELOAD EFFECTIVE FILE MODE FCOR0681
00567 -0056 00 020000 LNT 020000 IS FILE WRITE-ONLY TO THIS USER FCOR0682
00570 0020 00 0 00576 TRA OPN4.A .. NO, SKIP FCOR0683
00571 0441 00 0 05474 LDI STATUS .. YES, IS USER TRYING TO READ FILE FCOR0684
00572 -0056 00 100000 LNT 100000 .. FCOR0685
00573 0020 00 0 00576 TRA OPN4.A .. NO, SKIP FCOR0686
00574 RELEAS (RPROBN,2) .. YES, REMOVE FILE FROM A.F.S.T. FCOR0687
00575 ERROR 10 .. OPEN ERROR(10), CANNOT READ WRITE-ONLY FFCOR0688
FCOR0689
00576 0441 00 0 05474 OPN4.A LDI STATUS PICK UP FILE ACTIVE STATUS (RW BITS) FCOR0690
00577 -0054 00 200000 LFT 200000 IS THIS FILE TO BE WRITTEN FCOR0691
00600 0020 00 0 00603 TRA OPN4.B YES, SKIP TO SET UP NEW FILE FCOR0692
00601 RELEAS (RPROBN,2) NO, REMOVE ENTRY FROM A.F.S.T. FCOR0693
00602 ERROR 12 OPEN ERROR(12), FILE NOT FOUND FCOR0694
FCOR0695
00603 0074 00 4 05043 OPN4.B TSX REFMFD,4 SEE IF USER ATTACHED TO 'M.F.D. (FILE)' FCOR0696
00604 0761 00 2 00005 EFA FPROBN,2 .. FCOR0697
00605 0520 00 0 05435 ZET FS.TST CHECK SWITCH FCOR0698
00606 0020 00 0 00611 TRA OPN4.C IT'S ALRIGHT ANYWAY FCOR0699
00607 OPNR18 RELEAS (RPROBN,2) USER TRIED TO WRITE FILE IN MFD FCOR0700
00610 ERROR 18 OPEN ERROR(18), ILLEGAL USE OF MFD FCOR0701
FCOR0702
00611 0074 00 4 04256 OPN4.C TSX GTDYTM,4 .. SET UP DATE AND TIME FILE CREATED FCOR0703
00612 0602 00 2 00011 SLW DAYTIM,2 .. FCOR0704
00613 -0320 00 0 06333 ANA =O777777000000 .. GET DATE ALONE FCOR0705
00614 -0501 00 1 00002 ORA AUTHNO,1 .. + AUTHOR OF FILE FCOR0706
00615 0602 00 2 00012 SLW DATELU,2 .. FCOR0707
00616 0441 00 0 06126 LDI M.IL.F .. SET UP MODE,ILOCK,F,RCOUNT FCOR0708
00617 -0055 00 001000 SIL 001000 .. INTERLOCK THIS FILE WHILE WRITING FCOR0709
00620 0604 00 2 00013 STI MODE,2 .. FCOR0710
00621 -0500 00 0 05474 CAL STATUS .. SET UP RWSTAT,NORECS,P,LCOUNT FCOR0711
00622 -0501 00 0 06125 ORA TGPMAX .. PMAX IN TAG FCOR0712
00623 0602 00 2 00014 SLW RWSTAT,2 .. FCOR0713
FCOR0714
00624 0500 00 0 05464 CLA P4 MODE OF FILE IF SPECIFIED FCOR0715
00625 -0120 00 0 00630 TMI OPN4.2 SKIP IF NOT SPECIFIED FCOR0716
00626 0767 00 0 00034 ALS 28 SAVE AS HIGH ORDER 8 BITS FCOR0717
00627 -0602 00 2 00013 ORS MODE,2 .. FCOR0718
FCOR0719
00630 -0500 00 2 00013 OPN4.2 CAL MODE,2 SET UP RMODE TO BE THE SAME AS MODE FCOR0720
00631 -0320 00 0 06331 ANA =O776000000000 MASK ALL BUT MODE BITS FCOR0721
00632 -0602 00 2 00004 ORS RMODE,2 .. FCOR0722
00633 0500 00 0 05465 CLA P5 DID USER SPECIFY A DEVICE FCOR0723
00634 -0120 00 0 00644 TMI OPN4.3 NO, SKIP FCOR0724
00635 0734 00 5 00000 PAX 0,5 YES, DEVICE TO IR5 FCOR0725
00636 0767 00 0 00017 ALS 15 DEVICE NUMBER TO AC TAG FCOR0726
00637 0625 00 2 00013 STT F,2 SAVE IT IN ACTIVE FILE STATUS TABLE FCOR0727
00640 -3 00000 5 00642 TXL *+2,5,0 ERROR IF DEVICE .E. 0 FCOR0728
00641 -3 00003 5 00644 TXL OPN4.3,5,FMAX OK IF DEVICE .E. 1-FMAX FCOR0729
00642 RELEAS (RPROBN,2) HERE FOR ILLEGAL DEVICE SPECIFICATION FCOR0730
00643 ERROR 13 OPEN ERROR(13), ILLEGAL DEVICE FCOR0731
FCOR0732
00644 OPN4.3 LXTC (F,2),3 -DEVICE TO IR3 FCOR0733
00650 GETQU (FPROBN,2) GET QUOTA FOR THIS DEVICE FCOR0734
00654 0734 00 4 00000 PAX 0,4 .. INTO IR4 FCOR0735
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 24
00655 3 00000 4 00660 TXH OPN4.4,4,0 SKIP IF USER ALLOTTED SPACE ON THIS DEVICE FCOR0736
00656 RELEAS (RPROBN,2) HERE IF NO SPACE, CLEAR THIS ENTRY FCOR0737
00657 ERROR 14 OPEN ERROR(14), NO SPACE ALLOTTED FCOR0738
FCOR0739
00660 OPN4.4 ADDFIL UFD,OPNMER ADD NEW FILE TO USER FILE DIRECTORY FCOR0740
FCOR0741
00664 0441 00 2 00013 OPN5 LDI MODE,2 RELOAD FILE MODE FCOR0742
00665 -0054 00 002000 LFT 002000 IS FILE IN TEMPORARY MODE FCOR0743
00666 0020 00 0 00715 TRA OPN5.1 YES, SKIP TO OPEN FILE FCOR0744
00667 0441 00 2 00014 LDI RWSTAT,2 NO, CHECK FILE ACTIVE STATUS FCOR0745
00670 -0056 00 200000 LNT 200000 IS FILE OPEN FOR WRITING FCOR0746
00671 0020 00 0 00715 TRA OPN5.1 NO, SKIP FCOR0747
00672 -0500 00 2 00014 CAL NORECS,2 WAS ENTRY CREATED BY 'TAPFIL' FCOR0748
00673 -0734 00 5 00000 PDX ,5 TEST RECORD LENGTH FCOR0749
00674 -3 77776 5 00677 TXL *+3,5,-2 IF = 32767, CAME FROM 'TAPFIL' FCOR0750
00675 -0754 00 0 00000 PXD ,0 CLEAR AC FCOR0751
00676 0622 00 2 00014 STD NORECS,2 MUST HAVE NORECS 0 SO 'BUCM' WON'T SCREAM FCOR0752
00677 0441 00 1 00003 LDI URCODE,1 PICK UP USER RESTRICTION CODE FCOR0753
00700 -0054 00 000030 LFT 30 IGNORE RECORD QUOTA FOR DAEMON/PRIV. COMD. FCOR0754
00701 0020 00 0 00715 TRA OPN5.1 .. FCOR0755
00702 LXTC (F,2),3 GET RECORD QUOTA,,USED FOR THIS DEVICE FCOR0756
00706 GETQU (FPROBN,2) .. FCOR0757
00712 0074 00 4 05057 TSX ADDREC,4 CHECK FOR RECORD QUOTA OVERFLOW FCOR0758
00713 3 00000 0 06217 PAR =0 .. FCOR0759
00714 3 00000 0 00730 PAR OPER15 .. FCOR0760
00715 -0500 00 1 00006 OPN5.1 CAL FPRIOR,1 SET UP USER FILE PRIORITY FCOR0761
00716 -0100 00 0 00720 TNZ *+2 .. SKIP IF USER HAS SET A FILE PRIORITY FCOR0762
00717 -0500 00 0 06220 CAL =1 .. OTHERWISE FORCE FILE PRIORITY OF '1' FCOR0763
00720 0602 00 0 05475 SLW TEMP SAVE PRIORITY ASSIGNED TO THIS FILE FCOR0764
00721 0074 00 4 00000 TSX BOPEN,4 TELL BUFFER CONTROL MODULE OF OPEN FILE FCOR0765
00722 0761 00 2 00000 EFA 0,2 .. FCOR0766
00723 3 00733 0 05475 PAR TEMP,,OPNERR .. FCOR0767
00724 0020 00 0 04137 TRA RETURN AND RETURN TO USER FCOR0768
FCOR0769
00725 OPNER3 RELEAS (RPROBN,2) OPEN ERROR(3), FILE ALREADY ACTIVE FCOR0770
00726 ERROR 3 .. FCOR0771
FCOR0772
00727 OPNER4 ERROR 4 OPEN ERROR(4), NO ROOM IN A.F.S.T. FCOR0773
FCOR0774
00730 OPER15 RTNFIL OPNMER RECORD QUOTA OVERFLOW, REMOVE ACTIVE FILE FCOR0775
00732 ERROR 15 OPEN ERROR(15), RECORD QUOTA OVERFLOW FCOR0776
FCOR0777
00733 OPNERR RTNFIL OPNMER HERE FOR INPUT OR OUTPUT ERROR FCOR0778
00735 IOERR 17 OPEN ERROR(17), I/O ERROR FCOR0779
FCOR0780
00736 OPNER7 RELEAS (RPROBN,2) LINKAGE DEPTH EXCEEDED FCOR0781
00737 ERROR 7 OPEN ERROR(7), TOO MANY LINKS FCOR0782
FCOR0783
00740 OPER19 RELEAS (RPROBN,2) REMOVE ACTIVE FILE FCOR0784
00741 ERROR 19 OPEN ERROR(19), U.F.D. NOT FOUND FCOR0785
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 25
FCOR0787
BUFFER.($NAME1$,$NAME2$,BUFFER(RCOUNT)...RCOUNT) FCOR0788
FCOR0789
BUFFER SAVE 0,N,(FN,BARY) FCOR0790
FCOR0791
00751 GTSTAT FILNAM,ASNER3 FIND ACTIVE FILE STATUS FCOR0792
00753 0737 00 2 00000 PAC 0,2 -BASE OF THIS ENTRY TO IR2 FCOR0793
FCOR0794
00754 -0500 00 2 00020 ASN1 CAL BUFADR,2 PICK UP OLD BUFFER ADDRESS IF ANY FCOR0795
00755 -0320 00 0 06237 ANA =O77777 .. FCOR0796
00756 0100 00 0 00764 TZE ASN2 SKIP IF NO PREVIOUSLY ASSIGNED BUFFER FCOR0797
00757 0074 00 4 00006 TSX BSAVE,4 OTHERWISE, NORMALIZE ACTIVE FILE STATUS FCOR0798
00760 0761 00 2 00000 EFA 0,2 .. FCOR0799
00761 3 05506 0 05505 PAR MEM,,BUF .. FCOR0800
00762 3 04143 0 00770 PAR ASIOER,,QWAIT .. FCOR0801
00763 3 00000 0 00772 PAR ASNER4 .. FCOR0802
00764 0074 00 4 00001 ASN2 TSX BASIGN,4 TELL B.C.M. OF NEW BUFFER FCOR0803
00765 0761 00 2 00000 EFA 0,2 .. FCOR0804
00766 3 00773 0 05463 PAR P3,,ASNER5 .. FCOR0805
00767 0020 00 0 04137 TRA RETURN RETURN TO USER FCOR0806
FCOR0807
00770 ASIOER IOERR 6 BUFFER ERROR(6), INPUT/OUTPUT ERROR FCOR0808
FCOR0809
00771 ASNER3 ERROR 3 BUFFER ERROR(3), NOT AN ACTIVE FILE FCOR0810
FCOR0811
00772 ASNER4 ERROR 4 BUFFER ERROR(4), PREVIOUS I/O OUT OF BOUNDSFCOR0812
FCOR0813
00773 ASNER5 ERROR 5 BUFFER ERROR(5), NEW BUFFER TOO SMALL FCOR0814
FCOR0815
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 26
FCOR0817
RDFILE.($NAME1$,$NAME2$,RELLOC,A(N)...N,EOF,EOFCT) FCOR0818
FCOR0819
RDFILE SAVE 0,N,(FN,SPM,MARY,ADR,ADR) FCOR0820
FCOR0821
01006 0600 00 0 05477 STZ WAITSW SET SWITCH FOR NO WAITING FCOR0822
01007 0020 00 0 01023 TRA READ1 AND GO TO COMMON READ SECTION FCOR0823
FCOR0824
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0825
FCOR0826
RDWAIT.($NAME1$,$NAME2$,RELLOC,A(N)...N,EOF,EOFCT) FCOR0827
FCOR0828
RDWAIT SAVE 0,N,(FN,SPM,MARY,ADR,ADR) FCOR0829
FCOR0830
01022 -0625 00 0 05477 STL WAITSW SET SWITCH TO WAIT UNTIL I/O DONE FCOR0831
FCOR0832
01023 READ1 GTSTAT FILNAM,RDFER3 PICK UP ACTIVE FILE STATUS FCOR0833
01025 0737 00 2 00000 PAC 0,2 -BASE OF THIS ENTRY TO IR2 FCOR0834
01026 0441 00 2 00014 LDI RWSTAT,2 GET READ-WRITE STATUS OF FILE FCOR0835
01027 -0056 00 100000 LNT 100000 IS FILE IN READ STATUS FCOR0836
01030 0020 00 0 01111 TRA RDFER4 NO, ERROR FCOR0837
01031 0074 00 4 05043 TSX REFMFD,4 SEE IF EFFECTIVE DIRECTORY IS MFD FCOR0838
01032 0761 00 2 00005 EFA FPROBN,2 .. FCOR0839
01033 0520 00 0 05435 ZET FS.TST IF SUPER-PRIVILEGED USER ON MFD, FCOR0840
01034 0020 00 0 01036 TRA *+2 OR ORDINARY USER ON ORD. FILE FCOR0841
01035 0020 00 0 01057 TRA RDFMFD .. SKIP FOR READ OUT OF MFD FCOR0842
01036 0074 00 4 00002 TSX BREAD,4 CALL BCM TO EXECUTE FILE READ REQUEST FCOR0843
01037 0761 00 2 00000 EFA 0,2 .. FCOR0844
01040 3 05506 0 05505 PAR MEM,,BUF .. FCOR0845
01041 3 01046 0 05463 PAR P3,,RDEOF1 .. FCOR0846
01042 3 04143 0 05464 PAR P4,,QWAIT .. FCOR0847
01043 3 01113 0 01114 PAR RDIOER,,RDFER6 .. FCOR0848
01044 3 00000 0 01112 PAR RDFER5 .. FCOR0849
01045 0020 00 0 01047 TRA RDF2 SKIP TO RETURN SECTION FCOR0850
FCOR0851
01046 0074 00 4 04166 RDEOF1 TSX SETEOF,4 SET UP EOF RETURN ON EOF FCOR0852
01047 -0520 00 0 05477 RDF2 NZT WAITSW WAS THIS CALL TO 'RDWAIT' FCOR0853
01050 0020 00 0 04137 TRA RETURN NO, RETURN TO USER FCOR0854
01051 0074 00 4 00005 RDF3 TSX BCHECK,4 YES, WAIT UNTIL I/O COMPLETE FCOR0855
01052 0761 00 2 00000 EFA 0,2 .. FCOR0856
01053 3 05506 0 05505 PAR MEM,,BUF .. FCOR0857
01054 3 04137 0 01114 PAR RDIOER,,RETURN .. FCOR0858
01055 3 00000 0 01113 PAR RDFER6 .. FCOR0859
01056 0020 00 0 01051 TRA RDF3 LOOP UNTIL I/O IS COMPLETED FCOR0860
FCOR0861
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 27
FCOR0863
RDFMFD ..... SPECIAL READ SECTION FOR FILE FROM MFD FCOR0864
FCOR0865
01057 RDFMFD REWRIT (FNAME1,2),RDFER8 REWRITE THIS FILE DIRECTORY FCOR0866
01062 SEARCH MFD,(FNAME1,2),RDFER8 GET FRESH COPY OF UFD FCOR0867
01067 0441 00 2 00014 LDI RWSTAT,2 SET NEW COPY OF FILE IN READ STATUS FCOR0868
01070 -0055 00 100000 SIL 100000 .. FCOR0869
01071 0604 00 2 00014 STI RWSTAT,2 .. FCOR0870
01072 0074 00 4 00002 TSX BREAD,4 CALL BCM TO EXECUTE FILE READ REQUEST FCOR0871
01073 0761 00 2 00000 EFA 0,2 .. FCOR0872
01074 3 05506 0 05505 PAR MEM,,BUF .. FCOR0873
01075 3 01103 0 05463 PAR P3,,RDEOF2 .. FCOR0874
01076 3 01072 0 05464 PAR P4,,*-4 .. FCOR0875
01077 3 01113 0 01114 PAR RDIOER,,RDFER6 .. FCOR0876
01100 3 00000 0 01112 PAR RDFER5 .. FCOR0877
01101 -0774 00 3 04137 AXC RETURN,3 SET FOR NORMAL RETURN FCOR0878
01102 0020 00 0 01104 TRA RDFM1 SKIP ON NORMAL RETURN, (NO EOF) FCOR0879
FCOR0880
01103 0074 00 4 04166 RDEOF2 TSX SETEOF,4 SET UP EOF RETURN ON EOF FCOR0881
01104 -0500 00 2 00023 RDFM1 CAL IOTASK,2 WAIT UNTIL ALL I/O IS COMPLETED FCOR0882
01105 -0734 00 5 00000 PDX 0,5 .. FCOR0883
01106 3 00000 5 01104 TXH RDFM1,5,0 .. LOOP UNTIL I/O FINISHED FCOR0884
01107 0020 00 0 01047 TRA RDF2 GO TO MAIN READ SECTION FOR RETURN FCOR0885
FCOR0886
01110 RDFER3 ERROR 3 RDFILE ERROR(3), NOT AN ACTIVE FILE FCOR0887
FCOR0888
01111 RDFER4 ERROR 4 RDFILE ERROR(4), FILE NOT IN READ STATUS FCOR0889
FCOR0890
01112 RDFER5 ERROR 5 RDFILE ERROR(5), NO BUFFER ASSIGNED FCOR0891
FCOR0892
01113 RDFER6 ERROR 6 RDFILE ERROR(6), I/O REQUEST OUT OF BOUNDS FCOR0893
FCOR0894
01114 RDIOER IOERR 7 RDFILE ERROR(7), INPUT/OUTPUT ERROR FCOR0895
FCOR0896
01115 RDFER8 ERROR 8 RDFILE ERROR(8), UFD HAS BEEN DELETED FCOR0897
FCOR0898
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 28
FCOR0900
WRFILE.($NAME1$,$NAME2$,RELLOC,A(N)...N,EOF,EOFCT) FCOR0901
FCOR0902
WRFILE SAVE 0,N,(FN,SPM,MARY,ADR,ADR) FCOR0903
FCOR0904
01130 0600 00 0 05477 STZ WAITSW SET SWITCH FOR NO WAITING FCOR0905
01131 0020 00 0 01145 TRA WRITE1 AND GO TO COMMON WRITE SECTION FCOR0906
FCOR0907
* * * * * * * * * * * * * * * * * * * * * * * * FCOR0908
FCOR0909
WRWAIT.($NAME1$,$NAME2$,RELLOC,A(N)...N,EOF,EOFCT) FCOR0910
FCOR0911
WRWAIT SAVE 0,N,(FN,SPM,MARY,ADR,ADR) FCOR0912
FCOR0913
01144 -0625 00 0 05477 STL WAITSW SET SWITCH TO WAIT UNTIL I/O DONE FCOR0914
FCOR0915
01145 WRITE1 GTSTAT FILNAM,WRFER3 PICK UP ACTIVE FILE STATUS FCOR0916
01147 0737 00 2 00000 PAC 0,2 -BASE OF THIS ENTRY TO IR2 FCOR0917
01150 0441 00 2 00014 LDI RWSTAT,2 GET READ-WRITE STATUS OF FILE FCOR0918
01151 -0056 00 200000 LNT 200000 IS FILE IN WRITE STATUS FCOR0919
01152 0020 00 0 01305 TRA WRFER4 NO, ERROR FCOR0920
01153 0441 00 1 00003 LDI URCODE,1 YES, PICK UP USER RESTRICTION CODE FCOR0921
01154 -0054 00 000030 LFT 000030 IS USER PRIVELEGED COMMAND OR DAEMON FCOR0922
01155 0020 00 0 01163 TRA WRFA YES, IGNORE QUOTA, CHECK ON WRITE-ONLY FCOR0923
01156 -0520 00 0 05463 NZT P3 NO, DID USER SPECIFY A RELATIVE ADDRESS FCOR0924
01157 0020 00 0 01163 TRA WRFA NO, SKIP FCOR0925
01160 0441 00 2 00004 LDI RMODE,2 YES, PICK UP RMODE FCOR0926
01161 -0054 00 020000 LFT 020000 IS FILE IN WRITE ONLY MODE TO THIS USER FCOR0927
01162 0020 00 0 01311 TRA WRFER9 IF SO, ERROR FCOR0928
01163 -0500 00 2 00014 WRFA CAL NORECS,2 PICK UP NO. OF RECORDS TO THIS FILE FCOR0929
01164 -0734 00 5 00000 PDX 0,5 .. INTO IR5 FCOR0930
01165 3 77660 5 01312 TXH WFER10,5,-RGRACE ERROR IF NORECS.G.32767-RGRACE FCOR0931
01166 LXTC (F,2),3 -F TO IR3 FCOR0932
01172 GETQU (FPROBN,2) GET RECORD QUOTA FOR THIS DEVICE FCOR0933
01176 0602 00 0 05476 SLW SAVEQU .. SAVE IT FCOR0934
01177 0441 00 1 00003 LDI URCODE,1 RELOAD USER RESTRICTION CODE FCOR0935
01200 -0054 00 000030 LFT 30 IS USER DAEMON OR PRIV. COMMAND FCOR0936
01201 0020 00 0 01224 TRA WRF1 YES, IGNORE RECORD QUOTA FCOR0937
01202 0441 00 2 00013 LDI MODE,2 CHECK MODE OF FILE FCOR0938
01203 -0054 00 002000 LFT 002000 CHECK FOR 'T' MODE FCOR0939
01204 0020 00 0 01211 TRA WRF6 IF 'T', NOT LONGER THAN QUOTA FCOR0940
01205 0074 00 4 05061 TSX SUBREC,4 CHECK FOR USED.G.ALLOT+EXTEND FCOR0941
01206 3 00000 0 06122 PAR EXTEND .. FCOR0942
01207 3 00000 0 01307 PAR WRFER6 .. ERROR RETURN, EXTENSION EXHAUSTED FCOR0943
01210 0020 00 0 01224 TRA WRF1 FCOR0944
FCOR0945
01211 -0500 00 2 00014 WRF6 CAL NORECS,2 'T', GET NO. OF RECORDS IN THIS FILE FCOR0946
01212 -0320 00 0 06247 ANA =O77777000000 .. FCOR0947
01213 0771 00 0 00002 ARS 2 DIVIDE BY 4 FCOR0948
01214 -0734 00 7 00000 PDX ,7 AND PLACE IN XR7 FCOR0949
01215 2 00024 7 01217 TIX *+2,7,RGRACE/4 IF .G. RGRACE/4, THEN DECREASE FCOR0950
01216 0774 00 7 00000 AXT 0,7 OTHERWISE, MAKE IT ZERO FCOR0951
01217 -0634 00 7 05476 SXD SAVEQU,7 PLACE IN DECREMENT WITH RECORD QUOTA FCOR0952
01220 -0500 00 0 05476 CAL SAVEQU RESTORE USER RECORD QUOTA FCOR0953
01221 0074 00 4 05057 TSX ADDREC,4 INSURE TEMP FILE LENGTH .L. 4*QUOTA+RGRACE FCOR0954
01222 3 00000 0 06217 PAR =0 .. FCOR0955
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 29
01223 3 00000 0 01307 PAR WRFER6 .. IF SO, ERROR FCOR0956
01224 -0500 00 2 00014 WRF1 CAL NORECS,2 SAVE NO. OF RECORDS USED FOR THIS FILE FCOR0957
01225 -0734 00 5 00000 PDX 0,5 .. NORECS TO ADDRESS OF AC FCOR0958
01226 0754 00 5 00000 PXA 0,5 .. FCOR0959
01227 0602 00 0 05475 SLW TEMP SAVE RECORDS USED FOR THIS FILE FCOR0960
01230 0074 00 4 00003 TSX BWRITE,4 CALL B.C.M. TO EXECUTE WRITE REQUEST FCOR0961
01231 0761 00 2 00000 EFA 0,2 .. FCOR0962
01232 3 05506 0 05505 PAR MEM,,BUF .. FCOR0963
01233 3 01261 0 05463 PAR P3,,WREOF .. FCOR0964
01234 3 04143 0 05464 PAR P4,,QWAIT .. FCOR0965
01235 3 01310 0 01303 PAR WRIOER,,WRFER7 .. FCOR0966
01236 3 00000 0 01306 PAR WRFER5 .. FCOR0967
01237 0441 00 2 00013 LDI MODE,2 RELOAD FILE MODE FCOR0968
01240 -0054 00 002000 LFT 002000 IS IT TEMPORARY FCOR0969
01241 0020 00 0 01262 TRA WRF2 YES, SKIP FCOR0970
01242 -0500 00 2 00014 CAL NORECS,2 NO, PICK UP NO. OF RECORDS IN THIS FILE FCOR0971
01243 -0734 00 5 00000 PDX 0,5 .. NORECS TO ADDRESS OF AC FCOR0972
01244 0754 00 5 00000 PXA 0,5 .. FCOR0973
01245 0402 00 0 05475 SUB TEMP CHECK IF FILE INCREASED IN LENGTH FCOR0974
01246 0100 00 0 01262 TZE WRF2 SKIP IF NO CHANGE IN FILE LENGTH FCOR0975
01247 0601 00 0 05475 STO TEMP OTHERWISE SAVE DIFFERENCE FCOR0976
01250 -0500 00 0 05476 CAL SAVEQU NO, RESTORE USER QUOTA,,USED FCOR0977
01251 0074 00 4 05057 TSX ADDREC,4 AND UPDATE USER RECORD COUNT FCOR0978
01252 3 00000 0 05475 PAR TEMP .. WITH NO. OF RECORDS ADDED TO FILE FCOR0979
01253 3 00000 0 01254 PAR *+1 .. IGNORE ERROR RETURN FCOR0980
01254 SETQU (FPROBN,2) REPLACE RECORD QUOTA,,USED IN UFD FCOR0981
01260 0020 00 0 01262 TRA WRF2 SKIP TO CHECK WAITSW FCOR0982
FCOR0983
01261 0074 00 4 04166 WREOF TSX SETEOF,4 SET UP EOF RETURN ON EOF FCOR0984
01262 -0520 00 0 05477 WRF2 NZT WAITSW WAS THIS CALL TO 'WRWAIT' FCOR0985
01263 0020 00 0 01272 TRA WRF4 NO, SKIP FCOR0986
01264 0074 00 4 00005 WRF3 TSX BCHECK,4 YES, WAIT UNTIL I/O COMPLETED FCOR0987
01265 0761 00 2 00000 EFA 0,2 .. FCOR0988
01266 3 05506 0 05505 PAR MEM,,BUF .. FCOR0989
01267 3 01272 0 01303 PAR WRIOER,,WRF4 .. FCOR0990
01270 3 00000 0 01310 PAR WRFER7 .. FCOR0991
01271 0020 00 0 01264 TRA WRF3 LOOP UNTIL I/O IS COMPLETED FCOR0992
FCOR0993
01272 0441 00 2 00004 WRF4 LDI RMODE,2 RELOAD FILE MODE FCOR0994
01273 -0056 00 020000 LNT 020000 IS FILE 'APPEND-ONLY' FCOR0995
01274 0020 00 0 04137 TRA RETURN NO, RETURN FCOR0996
01275 0074 00 4 00006 WRF5 TSX BSAVE,4 YES, INSURE ALL I/O IS COMPLETED FCOR0997
01276 0761 00 2 00000 EFA 0,2 .. FCOR0998
01277 3 05506 0 05505 PAR MEM,,BUF .. FCOR0999
01300 3 01275 0 01303 PAR WRIOER,,WRF5 .. FCOR1000
01301 3 00000 0 01310 PAR WRFER7 .. FCOR1001
01302 0020 00 0 04137 TRA RETURN RETURN TO USER FCOR1002
FCOR1003
01303 WRIOER IOERR 8 WRFILE ERROR(8), INPUT/OUTPUT ERROR FCOR1004
FCOR1005
01304 WRFER3 ERROR 3 WRFILE ERROR(3), NOT AN ACTIVE FILE FCOR1006
FCOR1007
01305 WRFER4 ERROR 4 WRFILE ERROR(4), FILE NOT IN WRITE STATUS FCOR1008
FCOR1009
01306 WRFER5 ERROR 5 WRFILE ERROR(5), NO BUFFER ASSIGNED FCOR1010
FCOR1011
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 30
01307 WRFER6 ERROR 6 WRFILE ERROR(6), RECORD QUOTA EXHAUSTED FCOR1012
FCOR1013
01310 WRFER7 ERROR 7 WRFILE ERROR(7), I/O REQUEST OUT OF BOUNDS FCOR1014
FCOR1015
01311 WRFER9 ERROR 9 WRFILE ERROR(9), ILLEGAL USE OF W-O FILE FCOR1016
FCOR1017
01312 WFER10 ERROR 10 WRFILE ERROR(10), MAX. FILE LENGTH EXCEEDEDFCOR1018
FCOR1019
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 31
FCOR1021
TRFILE.($NAME1$,$NAME2$,RELLOC) FCOR1022
FCOR1023
TRFILE SAVE 0,N,(FN,SPM) FCOR1024
FCOR1025
01322 GTSTAT FILNAM,TRFER3 PICK UP ACTIVE FILE STATUS FCOR1026
01324 0737 00 2 00000 PAC 0,2 -BASE OF THIS ENTRY TO IR2 FCOR1027
01325 0441 00 2 00014 LDI RWSTAT,2 GET READ-WRITE STATUS OF FILE FCOR1028
01326 -0056 00 200000 LNT 200000 IS FILE IN WRITE STATUS FCOR1029
01327 0020 00 0 01404 TRA TRFER4 NO, ERROR FCOR1030
01330 0441 00 1 00003 LDI URCODE,1 PICK UP USER RESTRICTION CODE FCOR1031
01331 -0054 00 000030 LFT 30 IS THIS NORMAL USER FCOR1032
01332 0020 00 0 01336 TRA TRF0 IGNORE CHECK ON WRITE-ONLY FOR DAEMON FCOR1033
01333 0441 00 2 00004 LDI RMODE,2 YES, PICK MODE FOR THIS USER FCOR1034
01334 -0054 00 020000 LFT 020000 IS FILE WRITE-ONLY TO THIS USER FCOR1035
01335 0020 00 0 01407 TRA TRFER9 IF SO, ERROR FCOR1036
01336 -0500 00 2 00014 TRF0 CAL NORECS,2 PICK UP NO. OF RECORDS IN THIS FILE FCOR1037
01337 -0734 00 5 00000 PDX 0,5 .. NORECS TO ADDRESS FCOR1038
01340 0754 00 5 00000 PXA 0,5 .. FCOR1039
01341 0602 00 0 05475 SLW TEMP .. FCOR1040
01342 0074 00 4 00004 TSX BTRUNC,4 CALL B.C.M. TO TRUNCATE FILE FCOR1041
01343 0761 00 2 00000 EFA 0,2 .. FCOR1042
01344 3 05506 0 05505 PAR MEM,,BUF .. FCOR1043
01345 3 01401 0 05463 PAR P3,,TREOF .. FCOR1044
01346 3 04143 0 01402 PAR TRIOER,,QWAIT .. FCOR1045
01347 3 01405 0 01406 PAR TRFER6,,TRFER5 .. FCOR1046
01350 0441 00 2 00013 LDI MODE,2 GET FILE MODE FCOR1047
01351 -0054 00 002000 LFT 002000 IS FILE IN TEMPORARY MODE FCOR1048
01352 0020 00 0 01400 TRA TRF1 YES, SKIP FCOR1049
01353 -0500 00 2 00014 CAL NORECS,2 NO, PICK UP NEW NO. OF RECORDS IN FILE FCOR1050
01354 -0734 00 5 00000 PDX 0,5 .. NORECS TO ADDRESS FCOR1051
01355 0754 00 5 00000 PXA 0,5 .. FCOR1052
01356 0402 00 0 05475 SUB TEMP CHECK IF FILE LENGTH CHANGED FCOR1053
01357 0100 00 0 01400 TZE TRF1 SKIP IF NORECS IS STILL THE SAME FCOR1054
01360 0601 00 0 05475 STO TEMP OTHERWISE SAVE THE DIFFERENCE FCOR1055
01361 LXTC (F,2),3 -F TO IR3 FCOR1056
01365 GETQU (FPROBN,2) GET RECORDS ALLOTTED,,USED FCOR1057
01371 0074 00 4 05057 TSX ADDREC,4 AND REDUCE USER RECORDS USED FCOR1058
01372 3 00000 0 05475 PAR TEMP .. BY NO. OF RECORDS DELETED FCOR1059
01373 3 00000 0 01374 PAR *+1 .. IGNORE ERROR RETURN FCOR1060
01374 SETQU (FPROBN,2) REPLACE QUOTA,,USED IN UFD FCOR1061
01400 0020 00 0 04137 TRF1 TRA RETURN RETURN TO USER FCOR1062
FCOR1063
01401 TREOF ERROR 7 TRFILE ERROR(7), RELLOC TOO LARGE FOR FILE FCOR1064
FCOR1065
01402 TRIOER IOERR 8 TRFILE ERROR(8), INPUT/OUTPUT ERROR FCOR1066
FCOR1067
01403 TRFER3 ERROR 3 TRFILE ERROR(3), NOT AN ACTIVE FILE FCOR1068
FCOR1069
01404 TRFER4 ERROR 4 TRFILE ERROR(4), FILE NOT IN WRITE STATUS FCOR1070
FCOR1071
01405 TRFER5 ERROR 5 TRFILE ERROR(5), NO BUFFER ASSIGNED FCOR1072
FCOR1073
01406 TRFER6 ERROR 6 TRFILE ERROR(6), I/O REQUEST OUT OF BOUNDS FCOR1074
FCOR1075
01407 TRFER9 ERROR 9 TRFILE ERROR(9), ILLEGAL USE OF W-O FILE FCOR1076
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 32
FCOR1077
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 33
FCOR1079
FCHECK.($NAME1$,$NAME2$,FINISH) FCOR1080
FCOR1081
FCHECK SAVE 0,N,(FN,ADR) FCOR1082
FCOR1083
01417 GTSTAT FILNAM,CHKER3 PICK UP ACTIVE FILE STATUS FCOR1084
01421 0737 00 2 00000 PAC 0,2 -BASE OF ENTRY TO IR2 FCOR1085
01422 0074 00 4 00005 TSX BCHECK,4 CALL B.C.M. TO CHECK IF FILE BUSY FCOR1086
01423 0761 00 2 00000 EFA 0,2 .. FCOR1087
01424 3 05506 0 05505 PAR MEM,,BUF .. FCOR1088
01425 3 01430 0 01454 PAR CKIOER,,CKFIN .. FCOR1089
01426 3 00000 0 01456 PAR CHKER4 .. FCOR1090
01427 0020 00 0 04137 TRA RETURN RETURN TO USER FCOR1091
FCOR1092
01430 0500 00 0 05463 CKFIN CLA P3 HERE WHEN I/O FINISHED, GET USER RETURN FCOR1093
01431 -0120 00 0 04137 TMI RETURN EXIT IF NO RETURN SPECIFIED FCOR1094
01432 0621 00 0 05513 STA RTNILC OTHERWISE SET UP 'FINISH' RETURN TO USER FCOR1095
01433 0020 00 0 04137 TRA RETURN AND RETURN FCOR1096
FCOR1097
* * * * * * * * * * * * * * * * * * * * * * * * FCOR1098
FCOR1099
FWAIT.($NAME1$,$NAME2$) FCOR1100
FCOR1101
FWAIT SAVE 0,N,(FN) FCOR1102
FCOR1103
01442 GTSTAT FILNAM,CHKER3 PICK UP ACTIVE FILE STATUS FCOR1104
01444 0737 00 2 00000 PAC 0,2 -BASE OF ENTRY TO IR2 FCOR1105
01445 0074 00 4 00005 FWAT1 TSX BCHECK,4 CALL B.C.M. TO WAIT UNTIL I/O FINISHED FCOR1106
01446 0761 00 2 00000 EFA 0,2 .. FCOR1107
01447 3 05506 0 05505 PAR MEM,,BUF .. FCOR1108
01450 3 01453 0 01454 PAR CKIOER,,FWAT2 .. FCOR1109
01451 3 00000 0 01456 PAR CHKER4 .. FCOR1110
01452 0020 00 0 04143 TRA QWAIT LET USER LOOP ON HIS OWN TIME FCOR1111
FCOR1112
01453 0020 00 0 04137 FWAT2 TRA RETURN RETURN WHEN I/O DONE FOR THIS FILE FCOR1113
FCOR1114
01454 CKIOER IOERR 5 FCHECK ERROR(5), INPUT/OUTPUT ERROR FCOR1115
FCOR1116
01455 CHKER3 ERROR 3 FCHECK ERROR(3), NOT AN ACTIVE FILE FCOR1117
FCOR1118
01456 CHKER4 ERROR 4 FCHECK ERROR(4), I/O REQUEST OUT OF BOUNDS FCOR1119
FCOR1120
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 34
FCOR1122
CLOSE.($NAME1$,$NAME2$) FCOR1123
FCOR1124
CLOSE SAVE 0,N,(SPM,SP) FCOR1125
FCOR1126
01466 -0500 00 0 05461 CAL P1 GET FIRST FILE NAME FCOR1127
01467 0602 00 0 05454 SLW FILNAM .. FCOR1128
01470 -0500 00 0 05462 CAL P2 GET SECOND FILE NAME IF SPECIFIED FCOR1129
01471 0602 00 0 05455 SLW FILNAM+1 .. FCOR1130
01472 0322 00 0 06124 ERA NULPAR WAS A SECOND FILE NAME SPECIFIED FCOR1131
01473 0100 00 0 01502 TZE CLSALL NO, CHECK FOR CLOSE.($ALL$) FCOR1132
01474 GTSTAT FILNAM,CLSER3 YES, PICK UP ACTIVE FILE STATUS FCOR1133
01476 0737 00 2 00000 PAC ,2 PUT INTO INDEX FCOR1134
01477 0074 00 4 01521 TSX FCLOSE,4 CLOSE OUT THIS FILE FCOR1135
01500 0020 00 0 04137 TRA RETURN AND RETURN FCOR1136
FCOR1137
01501 CLSER3 ERROR 3 CLOSE ERROR(3), NOT AN ACTIVE FILE FCOR1138
FCOR1139
01502 0500 00 0 05454 CLSALL CLA FILNAM HERE IF NO SECOND FILE NAME GIVEN FCOR1140
01503 0402 00 0 06255 SUB =HALL CHECK FOR CLOSE.($ALL$) FCOR1141
01504 0100 00 0 01510 TZE CLSAL1 .. FOUND, CLOSE OUT ALL FILES FCOR1142
01505 0500 00 0 05454 CLA FILNAM .. LOOK FOR RIGHT ADJUSTED VERSION FCOR1143
01506 0402 00 0 06312 SUB =H ALL .. FCOR1144
01507 -0100 00 0 01537 TNZ SEQERR .. SEQUENCE ERROR IF NOT 'ALL' FCOR1145
01510 0600 00 0 05457 CLSAL1 STZ ANYFIL+1 INITIALIZE SEARCH THRU A.F.S.T. FCOR1146
01511 CLSGET GTSTAT ANYFIL,RETURN GET ANY ACTIVE FILE ENTRY FCOR1147
01513 0737 00 2 00000 PAC ,2 BASE TO X7 FCOR1148
01514 0500 00 2 00002 CLA RNAME1,2 GET NAME1 FCOR1149
01515 0560 00 2 00003 LDQ RNAME2,2 NAME2 OF FILE REFERENCE FCOR1150
01516 -0603 00 0 05454 DST FILNAM SAVE FOR DIAGNOSTICS FCOR1151
01517 0074 00 4 01521 TSX FCLOSE,4 AND CLOSE OUT THE FILE FCOR1152
01520 0020 00 0 01511 TRA CLSGET GET NEXT ACTIVE FILE ENTRY OR RETURN FCOR1153
FCOR1154
01521 0634 00 4 05500 FCLOSE SXA FCLIR4,4 HERE TO CLOSE OUT FILE FCOR1155
01522 LXTC (F,2),3 -F TO IR3 FCOR1156
01526 0074 00 4 00007 TSX BCLOSE,4 CALL B.C.M. TO CLOSE OUT THIS FILE FCOR1157
01527 0761 00 2 00000 EFA 0,2 .. FCOR1158
01530 3 05506 0 05505 PAR MEM,,BUF .. FCOR1159
01531 3 04143 0 01546 PAR CLIOER,,QWAIT .. FCOR1160
01532 3 00000 0 01540 PAR CLSER4 .. FCOR1161
01533 RTNFIL CLSMER RETURN FILE TO INACTIVE STATUS FCOR1162
01535 0534 00 4 05500 LXA FCLIR4,4 AND RETURN FCOR1163
01536 0020 00 4 00001 TRA 1,4 .. FCOR1164
FCOR1165
01537 SEQERR ERROR 1 ERROR(1), ILLEGAL CALLING SEQUENCE FCOR1166
FCOR1167
01540 0522 00 3 00053 CLSER4 XEC SCRAPF,3 HERE FOR BUFFER OUT OF BOUNDS, SCRAP FILE FCOR1168
01541 0761 00 2 00000 EFA 0,2 .. DIRECTLY THROUGH STRATEGY MODULE FCOR1169
01542 3 00000 0 04143 PAR QWAIT .. FCOR1170
01543 RTNFIL CLSMER RETURN FILE TO INACTIVE STATUS FCOR1171
01545 ERROR 4 CLOSE ERROR(4), I/O REQUEST OUT OF BOUNDS FCOR1172
FCOR1173
01546 CLIOER IOERR 5 CLOSE ERROR(5), INPUT/OUTPUT ERROR FCOR1174
FCOR1175
01547 CLSMER ERROR 6 CLOSE ERROR(6), MACHINE OR SYSTEM ERROR FCOR1176
FCOR1177
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 35
FCOR1179
RESETF. FCOR1180
FCOR1181
RESETF SAVE 0,N,() FCOR1182
FCOR1183
01555 0600 00 0 05457 STZ ANYFIL+1 INITIALIZE SEARCH THRU A.F.S.T. FCOR1184
01556 RSTF1 GTSTAT ANYFIL,RETURN GET ANY ACTIVE FILE ENTRY FCOR1185
01560 0737 00 2 00000 PAC 0,2 -BASE OF ENTRY TO IR2 FCOR1186
01561 0500 00 2 00002 CLA RNAME1,2 .. (AS AT CLOSE) FCOR1187
01562 0560 00 2 00003 LDQ RNAME2,2 .. FCOR1188
01563 -0603 00 0 05454 DST FILNAM .. FCOR1189
01564 LXTC (F,2),3 -F TO IR3 FCOR1190
01570 0074 00 4 00010 TSX IOHALT,4 STOP I/O FCOR1191
01571 3 00000 0 06217 PAR =0 STOP ALL I/O FCOR1192
01572 0522 00 3 00053 XEC SCRAPF,3 SCRAP ALL PENDING I/O FOR THIS FILE FCOR1193
01573 0761 00 2 00000 EFA 0,2 .. THROUGH STRATEGY MODULE FCOR1194
01574 3 00000 0 01602 PAR RSTBSY .. FCOR1195
01575 0074 00 4 00011 TSX IOBEGN,4 RESTART I/O NOW FCOR1196
01576 3 00000 0 06217 PAR =0 RATHER THAN WORRY ABOUT ERROR LATER FCOR1197
01577 RTNFIL RSTER3 RETURN FILE TO INACTIVE STATUS FCOR1198
01601 0020 00 0 01556 TRA RSTF1 GET NEXT ACTIVE FILE OR RETURN FCOR1199
FCOR1200
01602 0074 00 4 00011 RSTBSY TSX IOBEGN,4 RESTART BLOCKED I/O FCOR1201
01603 3 00000 0 06217 PAR =0 FOR ALL (NON-BLOCKED) USERS FCOR1202
01604 0020 00 0 04143 TRA QWAIT RETURN TO USER AT (0,4) FCOR1203
FCOR1204
01605 RSTER3 ERROR 3 RESETF ERROR(3), MACHINE OR SYSTEM ERROR FCOR1205
FCOR1206
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 36
FCOR1208
CHFILE.($OLDNM1$,$OLDNM2$,NEWMOD,$NEWNM1$,$NEWNM2$) FCOR1209
FCOR1210
CHFILE SAVE 0,S,(FN,SP,SP,SP) FCOR1211
FCOR1212
01617 -0774 00 2 05603 AXC FILTMP,2 TRY TO FIND FILE IN U.F.D.(FILE) FCOR1213
01620 SEARCH UFD,FILNAM,CHFER4 .. FCOR1214
01625 0074 00 4 04322 TSX CKLINK,4 CHECK FOR 'LINKED' FILE FCOR1215
01626 3 02017 0 02014 PAR CHFER5,,CHFER6 .. ERROR IF 'LINKED' FILE NOT FOUND FCOR1216
01627 0074 00 4 05043 TSX REFMFD,4 BUT HE CAN'T CHANGE ANYTHING IN M.F.D FCOR1217
01630 0761 00 2 00005 EFA FPROBN,2 .. FCOR1218
01631 0520 00 0 05435 ZET FS.TST ERROR RETURN FROM 'REFMFD', FCOR1219
01632 0020 00 0 01634 TRA *+2 CHECK FOR SPECIAL 'MICK'EY MOUSE FCOR1220
01633 0020 00 0 02012 TRA CHFER3 HOO-HAH FCOR1221
01634 0500 00 2 00007 CLA FNAME1,2 GET NAME1 FCOR1222
01635 0560 00 2 00010 LDQ FNAME2,2 .. FCOR1223
01636 -0603 00 2 00002 DST RNAME1,2 PUT BOTH IN AFENTRY FCOR1224
01637 0074 00 4 04523 TSX CHKACT,4 CHECK IF THIS FILE IS ALREADY ACTIVE FCOR1225
01640 3 00000 0 02016 PAR CHER12 .. ERROR IF THIS FILE IS ACTIVE FCOR1226
FCOR1227
01641 -0500 00 2 00012 CAL AUTHOR,2 IS THIS USER THE AUTHOR OF THIS FILE FCOR1228
01642 -0320 00 0 06241 ANA =O777777 .. FCOR1229
01643 0402 00 1 00002 SUB AUTHNO,1 .. FCOR1230
01644 0100 00 0 01663 TZE CHF3 .. YES, HE MAY CHANGE OWN FILES FCOR1231
FCOR1232
01645 0441 00 2 00004 LDI RMODE,2 FILE FOUND, GET FILE MODE FCOR1233
01646 -0056 00 040000 LNT 040000 IS FILE IN PRIVATE MODE FCOR1234
01647 0020 00 0 01654 TRA CHF2 NO, SKIP FCOR1235
01650 0441 00 1 00003 LDI URCODE,1 YES, GET USER RESTRICTION CODE FCOR1236
01651 0054 00 000010 RFT 10 IS USER ALLOWED TO REFERENCE PRIVATE FILES FCOR1237
01652 0020 00 0 01654 TRA CHF2 YES, SKIP FCOR1238
01653 ERROR 7 NO, CHFILE ERROR(7), PRIVATE FILE FCOR1239
FCOR1240
01654 0441 00 2 00004 CHF2 LDI RMODE,2 RELOAD FILE MODE FCOR1241
01655 -0056 00 200000 LNT 200000 IS FILE IN PROTECTED MODE FCOR1242
01656 0020 00 0 01663 TRA CHF3 NO, SKIP FCOR1243
01657 0441 00 1 00003 LDI URCODE,1 YES, GET USER RESTRICTION CODE FCOR1244
01660 0054 00 000004 RFT 04 MAY USER MODIFY PROTECTED FILES FCOR1245
01661 0020 00 0 01663 TRA CHF3 YES, SKIP FCOR1246
01662 ERROR 8 CHFILE ERROR(8), PROTECTED FILE FCOR1247
FCOR1248
01663 0441 00 2 00013 CHF3 LDI ILOCK,2 GET FILE INTERLOCK SWITCH FCOR1249
01664 -0054 00 001777 LFT 001777 IS FILE CURRENTLY IN USE FCOR1250
01665 0020 00 0 02005 TRA CHFBSY YES, SKIP TO INTERRUPT SUPERVISOR FCOR1251
01666 0600 00 0 05475 STZ TEMP NO, CLEAR TEMP (RECORDS TO CHARGE) FCOR1252
01667 0500 00 0 05463 CLA P3 GET NEW MODE IF SPECIFIED FCOR1253
01670 -0120 00 0 01711 TMI CHF4 SKIP IF MODE UNCHANGED FCOR1254
01671 0767 00 0 00034 ALS 28 TO HIGH ORDER 8 BITS OF AC FCOR1255
01672 0602 00 0 05501 SLW NEWMOD SAVE NEW FILE MODE FCOR1256
01673 0441 00 2 00013 LDI MODE,2 PICK UP OLD FILE MODE FCOR1257
01674 -0500 00 2 00014 CAL NORECS,2 COMPUTE NO. RECORDS CHARGED TO FILE FCOR1258
01675 -0734 00 5 00000 PDX ,5 .. FCOR1259
01676 0754 00 5 00000 PXA ,5 .. FCOR1260
01677 -0760 00 0 00003 SSM .. SET TO REDUCE NO. OF RECORDS FCOR1261
01700 -0056 00 002000 LNT 002000 IS FILE IN TEMPORARY MODE FCOR1262
01701 0601 00 0 05475 STO TEMP .. NO, SAVE NO. RECORDS CHARGED TO FILE FCOR1263
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 37
01702 -0057 00 776000 RIL 776000 RESET OLD FILE MODE FCOR1264
01703 0442 00 0 05501 OSI NEWMOD ADD NEW FILE MODE FROM CALL FCOR1265
01704 0604 00 2 00013 STI MODE,2 SAVE AS NEW FILE MODE FCOR1266
01705 0754 00 5 00000 PXA ,5 RELOAD NO. RECORDS IN FILE FCOR1267
01706 0400 00 0 05475 ADD TEMP COMPUTE DIFFERENCE FCOR1268
01707 -0056 00 002000 LNT 002000 IS FILE NOW IN TEMPORARY MODE FCOR1269
01710 0601 00 0 05475 STO TEMP .. NO, SAVE DIFFERENCE FCOR1270
FCOR1271
01711 -0500 00 0 05464 CHF4 CAL P4 NEW FILE NAME 1 IF SPECIFIED FCOR1272
01712 0600 00 0 05502 STZ NAMESW RESET FILE NAME CHANGED SWITCH FCOR1273
01713 -0340 00 0 06124 LAS NULPAR IS NEW NAME1 SPECIFIED FCOR1274
01714 0020 00 0 01716 TRA *+2 YES FCOR1275
01715 0020 00 0 01720 TRA CHF5 NO, SKIP FCOR1276
01716 0602 00 2 00007 SLW FNAME1,2 YES, STORE NEW FNAME1 FCOR1277
01717 -0625 00 0 05502 STL NAMESW AND INDICATE THAT FILE NAME HAS CHANGED FCOR1278
FCOR1279
01720 -0500 00 0 05465 CHF5 CAL P5 NEW FILE NAME 2 IF SPECIFIED FCOR1280
01721 -0340 00 0 06124 LAS NULPAR IS NEW NAME2 SPECIFIED FCOR1281
01722 0020 00 0 01724 TRA *+2 YES FCOR1282
01723 0020 00 0 01726 TRA CHF6 NO, SKIP FCOR1283
01724 0602 00 2 00010 SLW FNAME2,2 YES, STORE NEW FNAME2 FCOR1284
01725 -0625 00 0 05502 STL NAMESW AND INDICATE THAT FILE NAME HAS CHANGED FCOR1285
FCOR1286
01726 -0520 00 0 05502 CHF6 NZT NAMESW HAS FILE NAME CHANGED FCOR1287
01727 0020 00 0 01744 TRA CHF7 NO, SKIP TO ENTER CHANGES FCOR1288
01730 0520 00 2 00007 ZET FNAME1,2 CHECK THAT BOTH NEW FCOR1289
01731 0020 00 0 01734 TRA *+3 FILE NAMES FCOR1290
01732 -0520 00 2 00010 NZT FNAME2,2 ARE NOT FCOR1291
01733 0020 00 0 01537 TRA SEQERR COMPLETELY ZERO FCOR1292
01734 0074 00 4 04256 TSX GTDYTM,4 YES, PICK UP DATE AND TIME OF DAY FCOR1293
01735 0602 00 2 00011 SLW DAYTIM,2 AND UPDATE DATE/TIME LAST MODIFIED FCOR1294
01736 SEARCH (FPROBN,2),(FNAME1,2),CHF7 SEE IF FILE ALREADY EXISTS FCOR1295
01743 ERROR 10 CHFILE ERROR(10), FILE NAME CONFLICT FCOR1296
FCOR1297
01744 -0520 00 0 05475 CHF7 NZT TEMP SHOULD USER RECORDS USED BE UPDATED FCOR1298
01745 0020 00 0 01773 TRA CHF9 NO, SKIP FCOR1299
01746 LXTC (F,2),3 YES, -F TO IR3 FCOR1300
01752 GETQU (FPROBN,2) PICK UP RECORD QUOTA,,USED FCOR1301
01756 0074 00 4 05057 TSX ADDREC,4 UPDATE USER NO. OF RECORDS USED FCOR1302
01757 3 00000 0 05475 PAR TEMP .. BY + OR - C(TEMP) FCOR1303
01760 3 00000 0 01762 PAR *+2 .. SKIP ON RECORD QUOTA OVERFLOW FCOR1304
01761 0020 00 0 01767 TRA CHF8 .. OTHERWISE GO UPDATE UFD FCOR1305
01762 0441 00 1 00003 LDI URCODE,1 PICK UP USER RESTRICTION CODE FCOR1306
01763 -0054 00 000030 LFT 30 IGNORE RECORD QUOTA OVERFLOW FCOR1307
01764 0020 00 0 01767 TRA CHF8 .. FOR DAEMON OR PRIVILEGED COMMAND FCOR1308
01765 0560 00 0 05475 LDQ TEMP PICK UP AMOUNT OF CHANGE FCOR1309
01766 0162 00 0 02015 TQP CHFER9 .. ERROR IF RECORD USAGE INCREASE FCOR1310
01767 CHF8 SETQU (FPROBN,2) UPDATE RECORD QUOTA,,USED IN UFD FCOR1311
FCOR1312
01773 -0500 00 1 00002 CHF9 CAL AUTHNO,1 CHANGE FILE 'AUTHOR' NUMBER FCOR1313
01774 0100 00 0 01777 TZE *+3 .. SKIP IF NO 'AUTHOR' SPECIFIED FCOR1314
01775 0625 00 2 00012 STT AUTHOR,2 .. FCOR1315
01776 0621 00 2 00012 STA AUTHOR,2 .. FCOR1316
01777 UPDFIL UFD,(RNAME1,2),CHFMER UPDATE CHANGED FILE ENTRY IN UFD FCOR1317
02004 0020 00 0 04137 TRA RETURN AND RETURN FCOR1318
FCOR1319
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 38
02005 0074 00 4 04741 CHFBSY TSX LOCK,4 TELL SUPERVISOR OF INTERLOCKED FILE FCOR1320
02006 EXIT IR4,ILC AND RETURN TO USER AT 0,4 FCOR1321
FCOR1322
02011 CHFMER ERROR 11 CHFILE ERROR(11), MACHINE ERROR FCOR1323
FCOR1324
02012 CHFER3 ERROR 3 CHFILE ERROR(3), RESTRICTED FILE NAME FCOR1325
FCOR1326
02013 CHFER4 ERROR 4 CHFILE ERROR(4), FILE NOT FOUND FCOR1327
FCOR1328
02014 CHFER5 ERROR 5 CHFILE ERROR(5), LINK NOT FOUND FCOR1329
FCOR1330
02015 CHFER9 ERROR 9 CHFILE ERROR(9), RECORD QUOTA OVERFLOW FCOR1331
FCOR1332
02016 CHER12 ERROR 12 CHFILE ERROR(12), FILE ALREADY ACTIVE FCOR1333
FCOR1334
02017 CHFER6 ERROR 6 CHFILE ERROR(6), LINKAGE DEPTH EXCEEDED FCOR1335
FCOR1336
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 39
FCOR1338
RSFILE.($NAME1$,$NAME2$) FCOR1339
FCOR1340
RSFILE SAVE 22,S,(FN) FCOR1341
FCOR1342
02026 0760 00 0 00004 ENK GET CONSOLE ENTRY KEYS FCOR1343
02027 -0773 00 0 00026 RQL 22 ALLOW CALL ONLY IF FCOR1344
02030 0162 00 0 02055 TQP RSFER2 .. KEY 22 DOWN FCOR1345
FCOR1346
02031 -0774 00 2 05603 AXC FILTMP,2 TRY TO FIND FILE IN U.F.D. FCOR1347
02032 SEARCH UFD,FILNAM,RSFER3 .. FCOR1348
02037 0074 00 4 04322 TSX CKLINK,4 SEE IF 'LINKED' FILE FCOR1349
02040 3 02060 0 02057 PAR RSFER4,,RSFER5 .. ERROR, LINKED FILE NOT FOUND FCOR1350
02041 0074 00 4 04523 TSX CHKACT,4 SEE IF THIS FILE IS ACTIVE FCOR1351
02042 3 00000 0 02061 PAR RSFER6 .. ERROR IF ACTIVE FILE FCOR1352
FCOR1353
02043 0441 00 2 00014 LDI RWSTAT,2 RESET READ/WRITE STATUS FLAGS FCOR1354
02044 -0057 00 700000 RIL 700000 .. OF THIS FILE FCOR1355
02045 0604 00 2 00014 STI RWSTAT,2 .. FCOR1356
02046 0074 00 4 04761 TSX UNLOCK,4 RESET INTERLOCK, TELL SUPERVISOR FCOR1357
02047 UPDFIL UFD,(FNAME1,2),RSFMER AND UPDATE FILE ENTRY FCOR1358
02054 0020 00 0 04137 TRA RETURN EXIT FCOR1359
FCOR1360
02055 RSFER2 ERROR 2 RSFILE ERROR(2), UNAUTHORIZED USE OF CALL FCOR1361
FCOR1362
02056 RSFER3 ERROR 3 RSFILE ERROR(3), FILE NOT FOUND FCOR1363
FCOR1364
02057 RSFER4 ERROR 4 RSFILE ERROR(4), LINK NOT FOUND FCOR1365
FCOR1366
02060 RSFER5 ERROR 5 RSFILE ERROR(5), LINK DEPTH EXCEEDED FCOR1367
FCOR1368
02061 RSFER6 ERROR 6 RSFILE ERROR(6), ATTEMPT TO RESET ACTIVE FIFCOR1369
FCOR1370
02062 RSFMER ERROR 7 RSFILE ERROR(7), SYSTEM OR MACHINE ERROR FCOR1371
FCOR1372
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 40
FCOR1374
DELFIL.($NAME1$,$NAME2$) FCOR1375
FCOR1376
DELFIL SAVE 0,S,(FN) FCOR1377
FCOR1378
02071 -0774 00 2 05603 AXC FILTMP,2 TRY TO FIND THIS FILE IN UFD FCOR1379
02072 SEARCH UFD,FILNAM,DELER3 .. FCOR1380
02077 0074 00 4 04322 TSX CKLINK,4 CHECK FOR 'LINKED' FILE FCOR1381
02100 3 02163 0 02160 PAR DELER4,,DELER5 .. ERROR, LINK NOT FOUND FCOR1382
02101 0074 00 4 05043 TSX REFMFD,4 HE DOESN'T EVEN GET TO TRY FCOR1383
02102 0761 00 2 00005 EFA FPROBN,2 TO REMOVE AN ENTRY FROM M.F.D. FCOR1384
02103 0520 00 0 05435 ZET FS.TST BUT SINCE 'DELMFD' CROAKS, FCOR1385
02104 0020 00 0 02106 TRA *+2 GOTTA LET HIM REMOVE AN UN-LOADED ENTRY FCOR1386
02105 0020 00 0 02161 TRA DELER6 SAY THAT IT IS PROTECTED FCOR1387
02106 0074 00 4 04523 TSX CHKACT,4 CHECK IF THIS FILE IS ALREADY ACTIVE FCOR1388
02107 3 00000 0 02162 PAR DELER8 .. ERROR IF THIS FILE IS ACTIVE FCOR1389
FCOR1390
02110 0441 00 2 00004 LDI RMODE,2 FILE FOUND, GET FILE MODE FCOR1391
02111 -0054 00 270000 LFT 270000 IS FILE P,V,R OR W FCOR1392
02112 0020 00 0 02161 TRA DELER6 MODE MUST BE CHANGED FCOR1393
02113 0441 00 2 00013 LDI ILOCK,2 GET FILE INTERLOCK SWITCH FCOR1394
02114 -0054 00 001777 LFT 001777 IS FILE CURRENTLY IN USE FCOR1395
02115 0020 00 0 02152 TRA DELBSY YES, SKIP TO INTERRUPT SUPERVISOR FCOR1396
02116 0074 00 4 05027 TSX DFILE,4 NO, TRY TO DELETE THIS FILE FCOR1397
02117 0441 00 2 00013 LDI MODE,2 RELOAD FILE MODE FCOR1398
02120 -0054 00 002000 LFT 002000 WAS FILE IN TEMPORARY MODE FCOR1399
02121 0020 00 0 02145 TRA DEL2 YES, SKIP IGNORING RECORD QUOTA FCOR1400
02122 -0500 00 2 00014 CAL NORECS,2 NO, GET NO. OF RECORDS IN THIS FILE FCOR1401
02123 0771 00 0 00022 ARS 18 .. FCOR1402
02124 -0320 00 0 06237 ANA =O77777 .. FCOR1403
02125 0602 00 0 05475 SLW TEMP SAVE NO. OF RECORDS IN THIS FILE FCOR1404
02126 LXTC (F,2),3 PICK UP -DEVICE(F) IN IR3 FCOR1405
02132 GETQU (FPROBN,2) PICK UP RECORD QUOTA,,USED FCOR1406
02136 0074 00 4 05061 TSX SUBREC,4 REDUCE USED BY NO, OF RECORDS IN THIS FILE FCOR1407
02137 3 00000 0 05475 PAR TEMP .. FCOR1408
02140 3 00000 0 02141 PAR *+1 .. IGNORE ERROR RETURN FCOR1409
02141 SETQU (FPROBN,2) UPDATE QUOTA,,USED FCOR1410
FCOR1411
02145 DEL2 REMOVE UFD,(FNAME1,2),DELMER REMOVE THIS FILE FROM UFD FCOR1412
02151 0020 00 0 04137 TRA RETURN AND RETURN FCOR1413
FCOR1414
02152 0074 00 4 04741 DELBSY TSX LOCK,4 TELL SUPERVISOR OF INTERLOCKED FILE FCOR1415
02153 EXIT IR4,ILC AND RETURN TO USER AT 0,4 FCOR1416
FCOR1417
02156 DELMER ERROR 7 DELFIL ERROR(7), MACHINE ERROR FCOR1418
FCOR1419
02157 DELER3 ERROR 3 DELFIL ERROR(3), FILE NOT FOUND FCOR1420
FCOR1421
02160 DELER4 ERROR 4 DELFIL ERROR(4), LINK NOT FOUND FCOR1422
FCOR1423
02161 DELER6 ERROR 6 DELFIL ERROR(6), FILE IS PROTECTED FCOR1424
FCOR1425
02162 DELER8 ERROR 8 DELFIL ERROR(8), FILE ALREADY ACTIVE FCOR1426
FCOR1427
02163 DELER5 ERROR 5 DELFIL ERROR(5), LINK DEPTH EXCEEDED FCOR1428
FCOR1429
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 41
FCOR1431
FSTATE.($NAME1$,$NAME2$,A(N)...N) FCOR1432
FCOR1433
FSTATE SAVE 0,N,(FN,ARY) FCOR1434
FCOR1435
02173 GTSTAT FILNAM,FSTAT1 CHECK IF THIS FILE IS ACTIVE FCOR1436
02175 0737 00 2 00000 PAC 0,2 HERE IF FILE IS ACTIVE, GET BASE OF ENTRY FCOR1437
02176 0020 00 0 02221 TRA FSTAT2 AND RETURN STATUS OF ACTIVE FILE FCOR1438
FCOR1439
02177 -0520 00 1 00000 FSTAT1 NZT PROBNO,1 IS USER ATTACHED FCOR1440
02200 0020 00 0 02265 TRA FSTER2 NO, ERROR FCOR1441
02201 -0774 00 2 05603 AXC FILTMP,2 HERE IF FILE NOT ACTIVE, LOOK IN UFD FCOR1442
02202 SEARCH UFD,FILNAM,FSTER3 .. FCOR1443
02207 0074 00 4 04322 TSX CKLINK,4 CHECK FOR 'LINKED' FILE FCOR1444
02210 3 02270 0 02267 PAR FSTER4,,FSTER5 .. ERROR, LINK NOT FOUND FCOR1445
02211 -0500 00 0 06243 CAL =O1000001 FUDGE UP DUMMY READ/WRITE POINTERS FCOR1446
02212 0602 00 2 00016 SLW REDWRD,2 .. READ POINTER AT WORD 1 FCOR1447
02213 -0500 00 2 00014 CAL LCOUNT,2 .. FCOR1448
02214 -0734 00 7 00000 PDX ,7 CHECK NORECS OF THIS FILE FCOR1449
02215 3 00000 7 02217 TXH *+2,7,0 SKIP IF NON-ZERO LENGTH FCOR1450
02216 0500 00 0 06242 CLA =1B17 ELSE, FUDGE UP A FILE SIZE FCOR1451
02217 0400 00 0 06220 ADD =1 PUT WRITE POINTER AFTER END OF FILE FCOR1452
02220 0602 00 2 00017 SLW WRTWRD,2 .. WRITE POINTER AFTER END OF FILE FCOR1453
FCOR1454
02221 -0500 00 2 00014 FSTAT2 CAL LCOUNT,2 PZE LCOUNT,,NORECS FCOR1455
02222 0074 00 4 05362 TSX RECADR,4 COMPUTE RECORD ADDRESS FROM LCOUNT,,NORECS FCOR1456
02223 USTORE P3,RETURN SAVE LENGTH OF FILE IN USER'S MEMORY FCOR1457
02225 0560 00 2 00004 LDQ RMODE,2 GET FILE MODE FCOR1458
02226 -0773 00 0 00010 RQL 8 MOVE LINK BIT TO SIGN FCOR1459
02227 -0130 00 0 00000 XCL .. FCOR1460
02230 -0320 00 0 06276 ANA =O-377 REMOVE EXCESS BITS FCOR1461
02231 USTORE P3,RETURN SAVE MODE IN USER'S MEMORY FCOR1462
02233 -0500 00 2 00014 CAL RWSTAT,2 GET FILE STATUS (0-3) FCOR1463
02234 0771 00 0 00041 ARS 33 .. RIGHT ADJUST IN AC FCOR1464
02235 -0320 00 0 06222 ANA =3 .. 2-BIT STATUS FCOR1465
02236 0400 00 0 06220 ADD =1 CHANGE STATUS (0-3) TO (1-4) FCOR1466
02237 USTORE P3,RETURN SAVE STATUS IN USER'S MEMORY FCOR1467
02241 -0500 00 2 00013 CAL F,2 GET DEVICE ON WHICH FILE RESIDES FCOR1468
02242 0771 00 0 00017 ARS 15 .. RIGHT ADJUST IN AC FCOR1469
02243 -0320 00 0 06226 ANA =7 .. 3-BIT DEVICE FCOR1470
02244 USTORE P3,RETURN SAVE DEVICE IN USER'S MEMORY FCOR1471
02246 -0500 00 2 00016 CAL REDWRD,2 GET READ POINTER PZE REDWRD,,REDREC FCOR1472
02247 0074 00 4 05362 TSX RECADR,4 COMPUTE ADDRESS OF NEXT RECORD TO BE READ FCOR1473
02250 USTORE P3,RETURN SAVE NEXT READ ADDRESS IN USER'S MEMORY FCOR1474
02252 -0500 00 2 00017 CAL WRTWRD,2 PZE WRTWRD,,WRTREC FCOR1475
02253 0074 00 4 05362 TSX RECADR,4 COMPUTE ADDRESS OF NEXT WORD TO BE WRITTEN FCOR1476
02254 USTORE P3,RETURN SAVE NEXT WRITE ADDRESS IN USER'S MEMORY FCOR1477
02256 -0500 00 2 00011 CAL DAYTIM,2 DATE AND TIME FILE WAS CREATED OR FCOR1478
02257 USTORE P3,RETURN .. LAST MODIFIED TO USER FCOR1479
02261 -0500 00 2 00012 CAL DATELU,2 DATE FILE WAS LAST USED AND FCOR1480
02262 USTORE P3,RETURN .. AUTHOR OF FILE TO USER FCOR1481
02264 0020 00 0 04137 TRA RETURN RETURN TO USER FCOR1482
FCOR1483
02265 FSTER2 ERROR 2 FSTATE ERROR(2), ILLEGAL USE OF CALL FCOR1484
FCOR1485
02266 FSTER3 ERROR 3 FSTATE ERROR(3), FILE NOT FOUND FCOR1486
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 42
FCOR1487
02267 FSTER4 ERROR 4 FSTATE ERROR(4), LINK NOT FOUND FCOR1488
FCOR1489
02270 FSTER5 ERROR 5 FSTATE ERROR (5), LINK DEPTH EXCEEDED FCOR1490
FCOR1491
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 43
FCOR1493
MOVFIL.($NAME1$,$NAME2$,$PROBNO$,$PROGNO$) FCOR1494
FCOR1495
MOVFIL SAVE 002,S,(FN,SPM,SPM) FCOR1496
FCOR1497
02301 -0774 00 2 05603 AXC FILTMP,2 TRY TO FIND THIS FILE IN UFD FCOR1498
02302 SEARCH UFD,FILNAM,MOVER3 .. FCOR1499
02307 -0500 00 2 00013 CAL F,2 PICK UP DEVICE NO. FCOR1500
02310 -0320 00 0 06240 ANA =O700000 .. FROM TAG FCOR1501
02311 0602 00 0 05475 SLW TEMP SAVE FOR LATER CHECKING FCOR1502
02312 0100 00 0 02323 TZE MOV0 SEE IF THIS IS A 'LINKED' FILE FCOR1503
02313 0074 00 4 04523 TSX CHKACT,4 CHECK IF THIS IS IN ACTIVE STATUS FCOR1504
02314 3 00000 0 02433 PAR MOVER8 .. ERROR IF FILE IS ACTIVE FCOR1505
FCOR1506
02315 0441 00 2 00013 LDI MODE,2 PICK UP FILE MODE FCOR1507
02316 -0054 00 200000 LFT 200000 IS FILE PROTECTED FCOR1508
02317 0020 00 0 02431 TRA MOVER5 YES, ERROR FCOR1509
02320 0441 00 2 00013 LDI ILOCK,2 NO, PICK UP FILE INTERLOCK SWITCH FCOR1510
02321 -0054 00 001777 LFT 001777 IS FILE CURRENTLY IN USE FCOR1511
02322 0020 00 0 02424 TRA MOVBSY YES, SKIP TO INTERRUPT SUPERVISOR FCOR1512
02323 0500 00 0 05463 MOV0 CLA P3 NO, SET UP NEW PROBLEM FCOR1513
02324 0560 00 0 05464 LDQ P4 AND PROGRAMMER FCOR1514
02325 -0603 00 2 00005 DST FPROBN,2 SAVE A CYCLE HERE AND THERE FCOR1515
02326 0074 00 4 05043 TSX REFMFD,4 BUT NO MOVING TO M.F.D. FCOR1516
02327 0761 00 2 00005 EFA FPROBN,2 .. FCOR1517
02330 0020 00 0 02435 TRA MOVR10 .. FCOR1518
02331 CHKUFD (FPROBN,2),MOVER9 SEE IF TARGET DIRECTORY IS IN M.F.D. FCOR1519
02336 SEARCH (FPROBN,2),FILNAM,MOV1 CHECK IF FILE ALREADY EXISTS FCOR1520
02343 ERROR 6 MOVFIL ERROR(6), FILE ALREADY EXISTS FCOR1521
FCOR1522
02344 -0520 00 0 05475 MOV1 NZT TEMP CHECK FOR LINKED FILE FCOR1523
02345 0020 00 0 02350 TRA MOV3 FILE IS A LINK, SKIP DATE UPDATE FCOR1524
02346 0074 00 4 04256 TSX GTDYTM,4 UPDATE CREATION TIME FOR FILE FCOR1525
02347 0602 00 2 00011 SLW DAYTIM,2 .. FCOR1526
02350 MOV3 ADDFIL (FPROBN,2),MOVMER ADD FILE TO UFD OF FPROBN-FPROGN FCOR1527
02354 REMOVE (PROBNO,1),(FNAME1,2),MOVMER REMOVE FROM CURRENT UFD FCOR1528
02360 -0520 00 0 05475 NZT TEMP CHECK FOR LINKED FILE FCOR1529
02361 0020 00 0 02423 TRA MOV2 NO RECORD USAGE TO BE UPDATED IF A LINK FCOR1530
02362 0441 00 2 00013 LDI MODE,2 PICK UP FILE MODE FCOR1531
02363 -0054 00 002000 LFT 002000 IS FILE IN TEMPORARY MODE FCOR1532
02364 0020 00 0 02423 TRA MOV2 YES, SKIP FCOR1533
02365 -0500 00 2 00014 CAL NORECS,2 NO, PICK UP NO. OF RECORDS USED BY FILE FCOR1534
02366 0771 00 0 00022 ARS 18 .. INTO ADDRESS FCOR1535
02367 -0320 00 0 06237 ANA =O77777 .. FCOR1536
02370 0602 00 0 05475 SLW TEMP .. SAVE NO. OF RECORDS IN THIS FILE FCOR1537
02371 LXTC (F,2),3 -DEVICE TO IR3 FCOR1538
02375 GETQU (PROBNO,1) REDUCE RECORDS USED FOR CURRENT USER FCOR1539
02401 0074 00 4 05061 TSX SUBREC,4 .. FCOR1540
02402 3 00000 0 05475 PAR TEMP .. FCOR1541
02403 3 00000 0 02404 PAR *+1 .. IGNORE ERROR RETURN FCOR1542
02404 SETQU (PROBNO,1) .. FCOR1543
02410 GETQU (FPROBN,2) UPDATE RECORDS USED FOR U.F.D. FCOR1544
02414 0074 00 4 05057 TSX ADDREC,4 .. TO WHICH FILE WAS MOVED FCOR1545
02415 3 00000 0 05475 PAR TEMP .. FCOR1546
02416 3 00000 0 02417 PAR *+1 .. IGNORE ERROR RETURN FCOR1547
02417 SETQU (FPROBN,2) .. FCOR1548
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 44
02423 0020 00 0 04137 MOV2 TRA RETURN RETURN TO USER FCOR1549
FCOR1550
02424 0074 00 4 04741 MOVBSY TSX LOCK,4 TELL SUPERVISOR OF INTERLOCKED FILE FCOR1551
02425 EXIT IR4,ILC AND RETURN TO USER AT 0,4 FCOR1552
FCOR1553
02430 MOVER3 ERROR 3 MOVFIL ERROR(3), FILE NOT FOUND FCOR1554
FCOR1555
02431 MOVER5 ERROR 5 MOVFIL ERROR(5), FILE PROTECTED FCOR1556
FCOR1557
02432 MOVMER ERROR 7 MOVFIL ERROR(7), MACHINE OR SYSTEM ERROR FCOR1558
FCOR1559
02433 MOVER8 ERROR 8 MOVFIL ERROR(8), FILE IN ACTIVE STATUS FCOR1560
FCOR1561
02434 MOVER9 ERROR 9 MOVFIL ERROR(9), U.F.D. NOT FOUND FCOR1562
FCOR1563
02435 MOVR10 ERROR 10 MOVFIL ERROR(10), MOVING TO M.F.D. (FILE) FCOR1564
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 45
FCOR1566
SETFIL.($NAME1$,$NAME2$,DAYTIM,DATELU,MODE,DEVICE) FCOR1567
FCOR1568
SETFIL SAVE 016,S,(FN,SPM,SPM,SP,SP) FCOR1569
FCOR1570
02450 -0774 00 2 05603 AXC FILTMP,2 SEE IF FILE ALREADY EXISTS FCOR1571
02451 SEARCH UFD,FILNAM,SETFL1 .. FCOR1572
02456 -0500 00 2 00013 CAL F,2 FIND DEVICE NO. FCOR1573
02457 -0320 00 0 06240 ANA =O700000 CHECK FOR 'LINK' FCOR1574
02460 0100 00 0 02534 TZE STFER5 ERROR, FILE IS LINK FCOR1575
02461 0500 00 0 05463 CLA P3 HERE IF FILE ALREADY EXISTS, FCOR1576
02462 0560 00 0 05464 LDQ P4 SET DAYTIM, DLU, AUTH DIRECTLY FCOR1577
02463 -0603 00 2 00011 DST DAYTIM,2 .. SET NEW DATE AND TIME CREATED FCOR1578
02464 0074 00 4 05043 TSX REFMFD,4 .. FCOR1579
02465 0761 00 2 00005 EFA FPROBN,2 .. FCOR1580
02466 0520 00 0 05435 ZET FS.TST NOTE FALLING INTO MACRO CODE... FCOR1581
02467 UPDFIL UFD,FILNAM,SETFME REPLACE OLD ENTRY IN UFD FCOR1582
02474 0020 00 0 04137 TRA RETURN AND RETURN FCOR1583
FCOR1584
02475 0500 00 1 00000 SETFL1 CLA PROBNO,1 HERE TO CREATE NEW FILE ENTRY FCOR1585
02476 0560 00 1 00001 LDQ PROGNO,1 .. FCOR1586
02477 -0603 00 2 00005 DST FPROBN,2 .. FCOR1587
02500 0500 00 0 05454 CLA FILNAM .. FILE NAME(1) FCOR1588
02501 0560 00 0 05455 LDQ FILNAM+1 .. (2) FCOR1589
02502 -0603 00 2 00007 DST FNAME1,2 .. FCOR1590
02503 0500 00 0 05463 CLA P3 .. DATE AND TIME CREATED FROM CALLER FCOR1591
02504 0560 00 0 05464 LDQ P4 .. DATE LAST USED, AUTHOR FCOR1592
02505 -0603 00 2 00011 DST DAYTIM,2 .. FCOR1593
02506 0500 00 0 06126 CLA M.IL.F .. NORMAL MODE AND DEVICE FCOR1594
02507 0560 00 0 06125 LDQ TGPMAX .. PMAX IN TAG FCOR1595
02510 -0603 00 2 00013 DST MODE,2 .. FCOR1596
02511 0600 00 2 00015 STZ POINTR,2 .. RESET POINTR FCOR1597
02512 0500 00 0 05465 CLA P5 PICK UP MODE IF SPECIFIED FCOR1598
02513 -0120 00 0 02516 TMI SETFL2 SKIP IF MODE NOT PROVIDED FCOR1599
02514 0767 00 0 00034 ALS 28 SAVE AS HIGH ORDER 8 BITS FCOR1600
02515 -0602 00 2 00013 ORS MODE,2 SET NEW FILE MODE FCOR1601
02516 0500 00 0 05466 SETFL2 CLA P6 PICK UP DEVICE IF SPECIFIED FCOR1602
02517 -0120 00 0 02525 TMI SETFL3 SKIP IF NOT PROVIDED FCOR1603
02520 0734 00 4 00000 PAX 0,4 NEW DEVICE TO IR4 FCOR1604
02521 -3 00000 4 02532 TXL STFER3,4,0 ERROR IF DEVICE .E. 0 FCOR1605
02522 3 00003 4 02532 TXH STFER3,4,FMAX ERROR IF DIVICE .G. FMAX FCOR1606
02523 0767 00 0 00017 ALS 15 DEVICE TO TAG FCOR1607
02524 0625 00 2 00013 STT F,2 SET NEW FILE DEVICE FCOR1608
02525 SETFL3 ADDFIL UFD,SETFME ADD NEW FILE ENTRY TO UFD FCOR1609
02531 0020 00 0 04137 TRA RETURN AND RETURN FCOR1610
FCOR1611
02532 STFER3 ERROR 3 SETFIL ERROR(3), ILLEGAL DEVICE NUMBER FCOR1612
FCOR1613
02533 SETFME ERROR 4 SETFIL ERROR(4), MACHINE OR SYSTEM ERROR FCOR1614
FCOR1615
02534 STFER5 ERROR 5 SETFIL ERROR(5), FILE IS A 'LINK' FCOR1616
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 46
FCOR1618
LINK.(RNAME1,RNAME2,LPROBN,LPROGN,LNAME1,LNAME2,MODE) FCOR1619
FCOR1620
LINK SAVE 002,S,(FN,SPM,SPM,SP,SP,SP) FCOR1621
FCOR1622
02550 0074 00 4 05043 TSX REFMFD,4 NO LINKS IN MFD, PLEASE FCOR1623
02551 0761 00 1 00000 EFA PROBNO,1 ATTACHED DIRECTORY FCOR1624
02552 0020 00 0 02633 TRA LNKER6 .. ERROR FCOR1625
02553 -0774 00 2 05603 AXC FILTMP,2 FCOR1626
02554 SEARCH UFD,FILNAM,LNK1 CHECK IF FILE ALREADY IN UFD FCOR1627
02561 ERROR 3 LINK ERROR(3), FILE ALREADY IN UFD FCOR1628
FCOR1629
02562 0500 00 1 00000 LNK1 CLA PROBNO,1 CONSTRUCT 'LINKED' FILE ENTRY FCOR1630
02563 0560 00 1 00001 LDQ PROGNO,1 .. FCOR1631
02564 -0603 00 2 00005 DST FPROBN,2 .. FCOR1632
02565 0500 00 0 05454 CLA FILNAM NAME1 FCOR1633
02566 0560 00 0 05455 LDQ FILNAM+1 NAME2 OF LINK FCOR1634
02567 -0603 00 2 00007 DST FNAME1,2 .. FCOR1635
02570 -0603 00 2 00014 DST LNAME1,2 AND NAME OF LINKEE FCOR1636
02571 0500 00 0 05463 CLA P3 PROBN, FCOR1637
02572 0560 00 0 05464 LDQ P4 PROGN OF LINKEE FCOR1638
02573 -0603 00 2 00011 DST LPROBN,2 .. FCOR1639
02574 0600 00 2 00013 STZ F,2 .. DEVICE .E. 0 INDICATES 'LINKED' FILE FCOR1640
02575 -0500 00 0 05465 CAL P5 CHECK IF LNAME1 PROVIDED FCOR1641
02576 0322 00 0 06124 ERA NULPAR .. FCOR1642
02577 0100 00 0 02602 TZE LNK2 .. SKIP IF LNAME1 NOT GIVEN FCOR1643
02600 -0500 00 0 05465 CAL P5 OTHERWISE USE THIS AS LNAME1 FCOR1644
02601 0602 00 2 00014 SLW LNAME1,2 .. FCOR1645
02602 -0500 00 0 05466 LNK2 CAL P6 CHECK IF LNAME2 IS PROVIDED FCOR1646
02603 0322 00 0 06124 ERA NULPAR .. FCOR1647
02604 0100 00 0 02607 TZE LNK3 .. SKIP IF LNAME2 NOT GIVEN FCOR1648
02605 -0500 00 0 05466 CAL P6 OTHERWISE USE THIS AS LNAME2 FCOR1649
02606 0602 00 2 00015 SLW LNAME2,2 .. FCOR1650
02607 0500 00 0 05467 LNK3 CLA P7 PICK UP MODE IF PROVIDED FCOR1651
02610 -0120 00 0 02613 TMI LNK4 .. SKIP IF MODE NOT GIVEN FCOR1652
02611 0767 00 0 00034 ALS 28 .. MODE TO HIGH ORDER 8 BITS FCOR1653
02612 -0602 00 2 00013 ORS MODE,2 .. SAVE 'LINKED' FILE MODE FCOR1654
02613 0520 00 2 00014 LNK4 ZET LNAME1,2 AS AT 'CHFILE' FCOR1655
02614 0020 00 0 02617 TRA *+3 CHECK THAT FCOR1656
02615 -0520 00 2 00015 NZT LNAME2,2 BOTH FILE NAMES FOR LINK FCOR1657
02616 0020 00 0 01537 TRA SEQERR ARE NOT ZERO FCOR1658
02617 ADDFIL UFD,LNKMER ADD NEW 'LINKED' FILE TO UFD FCOR1659
02623 CHKUFD (LPROBN,2),LNKER5 CHECK IF $PROBNO$,$PROGNO$ IN MFD FCOR1660
02630 0020 00 0 04137 TRA RETURN AND RETURN FCOR1661
FCOR1662
02631 LNKMER ERROR 4 LINK ERROR(4), MACHINE ERROR FCOR1663
FCOR1664
02632 LNKER5 ERROR 5 LINK ERROR(5), PROBNO-PROGNO NOT IN MFD FCOR1665
FCOR1666
02633 LNKER6 ERROR 6 LINK ERROR(6), USER ATTACHED TO MFD FCOR1667
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 47
FCOR1669
UNLINK.($LNAME1$,$LNAME2$) FCOR1670
FCOR1671
UNLINK SAVE 002,S,(FN) FCOR1672
FCOR1673
02642 -0774 00 2 05603 AXC FILTMP,2 FCOR1674
02643 SEARCH UFD,FILNAM,ULKER3 FIND FILE IN UFD FCOR1675
02650 -0500 00 2 00013 CAL F,2 PICK UP DEVICE NO. FCOR1676
02651 -0320 00 0 06240 ANA =O700000 .. FROM TAG FCOR1677
02652 -0100 00 0 02661 TNZ ULKER4 .. 'LINKED' FILE MUST HAVE F=0 FCOR1678
02653 REMOVE UFD,(FNAME1,2),ULKMER REMOVE LINKED FILE FROM UFD FCOR1679
02657 0020 00 0 04137 TRA RETURN AND RETURN FCOR1680
FCOR1681
02660 ULKER3 ERROR 3 UNLINK ERROR(3), FILE NOT FOUND FCOR1682
FCOR1683
02661 ULKER4 ERROR 4 UNLINK ERROR(4), NOT A 'LINKED' FILE FCOR1684
FCOR1685
02662 ULKMER ERROR 5 UNLINK ERROR(5), MACHINE ERROR FCOR1686
FCOR1687
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 48
FCOR1689
ALLOT.(DEVICE,ALLOT,USED) FCOR1690
FCOR1691
ALLOT SAVE 002,S,(SPM,SPM,SP) FCOR1692
FCOR1693
02673 0535 00 3 05461 LAC P1,3 -DEVICE NUMBER TO IR3 FCOR1694
02674 -3 00000 3 02717 TXL ALTER3,3,0 ERROR IF DEVICE=0 FCOR1695
02675 -3 77774 3 02717 TXL ALTER3,3,-FMAX-1 OR DEVICE .G. FMAX FCOR1696
02676 GETQU (PROBNO,1) GET QUOTA,,USED FROM UFD FCOR1697
02702 0602 00 0 05476 SLW SAVEQU .. SAVE IT FCOR1698
02703 -0500 00 0 05462 CAL P2 SET UP NEW RECORD QUOTA FCOR1699
02704 0621 00 0 05476 STA SAVEQU .. FCOR1700
02705 0500 00 0 05463 CLA P3 GET NEW RECORDS USED FCOR1701
02706 -0120 00 0 02711 TMI ALT1 SKIP IF NOT SPECIFIED FCOR1702
02707 0767 00 0 00022 ALS 18 SET NEW RECORDS USED FCOR1703
02710 0622 00 0 05476 STD SAVEQU .. FOR THIS DEVICE FCOR1704
02711 -0500 00 0 05476 ALT1 CAL SAVEQU SAVE NEW QUOTA,,USED IN UFD FCOR1705
02712 SETQU (PROBNO,1) .. FCOR1706
02716 0020 00 0 04137 TRA RETURN AND RETURN FCOR1707
FCOR1708
02717 ALTER3 ERROR 3 ALLOT ERROR(3), ILLEGAL DEVICE NO. FCOR1709
FCOR1710
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 49
FCOR1712
STORGE.(DEVICE,ALLOT,USED) FCOR1713
FCOR1714
STORGE SAVE 0,S,(SPM,ADR,ADR) FCOR1715
FCOR1716
02730 0535 00 3 05461 LAC P1,3 -DEVICE NUMBER TO IR3 FCOR1717
02731 -3 00000 3 02772 TXL STRER3,3,0 ERROR IF DEVICE ZERO FCOR1718
02732 -3 77774 3 02772 TXL STRER3,3,-FMAX-1 OR DEVICE .G. FMAX FCOR1719
02733 GETQU (PROBNO,1) GET QUOTA,,USED FROM UFD FCOR1720
02737 0602 00 0 05476 SLW SAVEQU .. SAVE IT FCOR1721
02740 0500 00 0 05462 CLA P2 ADDRESS USED TO STORE NO. OF WORDS ALLOTED FCOR1722
02741 -0120 00 0 02754 TMI STR1 SKIP IF NOT SPECIFIED FCOR1723
02742 0737 00 2 00000 PAC 0,2 -ADDRESS TO IR2 FCOR1724
02743 -0500 00 0 05476 CAL SAVEQU PICK UP NO. OF WORDS ALLOTTED FCOR1725
02744 -0320 00 0 06237 ANA =O77777 .. FCOR1726
02745 0602 00 0 05475 SLW TEMP .. SAVE IT FCOR1727
02746 MOVE1 HOME,TEMP,CALL,(0,2),STRER4 MOVE TO USER'S MEMORY FCOR1728
02754 0500 00 0 05463 STR1 CLA P3 ADDRESS USED TO STORE NO. OF WORDS USED FCOR1729
02755 -0120 00 0 02771 TMI STR2 SKIP IF NOT SPECIFIED FCOR1730
02756 0737 00 2 00000 PAC 0,2 -ADDRESS TO IR2 FCOR1731
02757 -0500 00 0 05476 CAL SAVEQU PICK UP ALLOT,,USED FCOR1732
02760 0771 00 0 00022 ARS 18 .. GET NO. OF WORDS USED FCOR1733
02761 -0320 00 0 06237 ANA =O77777 .. FCOR1734
02762 0602 00 0 05475 SLW TEMP .. SAVE IT FCOR1735
02763 MOVE1 HOME,TEMP,CALL,(0,2),STRER4 MOVE TO USER'S MEMORY FCOR1736
02771 0020 00 0 04137 STR2 TRA RETURN AND RETURN TO USER FCOR1737
FCOR1738
02772 STRER3 ERROR 3 STORGE ERROR(3), ILLEGAL DEVICE NO. FCOR1739
FCOR1740
02773 STRER4 ERROR 4 STORGE ERROR(4), MACHINE OR SYSTEM ERROR FCOR1741
FCOR1742
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 50
FCOR1744
THE FOLLOWING CALLS REFER TO TAPE FILES ONLY .......... FCOR1745
FCOR1746
MOUNT.(CHANNO,UNITNO,MESSAG(N)...N) FCOR1747
FCOR1748
MOUNT SAVE 0,N,(SP,SPM,ARY) FCOR1749
FCOR1750
03004 0074 00 4 05142 TSX MVHOME,4 MOVE MESSAGE TO HOME MEMORY FCOR1751
03005 3 00000 0 05463 PAR P3 .. FCOR1752
03006 0074 00 4 00024 TSX MNTTAP,4 CALL TAPE STRATEGY MODULE TO MOUNT TAPE FCOR1753
03007 0761 00 1 00000 EFA 0,1 .. FCOR1754
03010 3 05461 0 05462 PAR P2,,P1 .. (PUT UNITNO FIRST IN CALL, FOR SYMMETRY)FCOR1755
03011 3 04143 0 05463 PAR P3,,QWAIT .. FCOR1756
03012 3 03015 0 03014 PAR MNTER3,,MNTER4 .. FCOR1757
03013 0020 00 0 04137 TRA RETURN AND RETURN FCOR1758
FCOR1759
03014 MNTER3 ERROR 3 MOUNT ERROR(3), NO TAPE AVAILABLE FCOR1760
FCOR1761
03015 MNTER4 ERROR 4 MOUNT ERROR(4), AUTHOR-UNIT CONFLICT FCOR1762
FCOR1763
* * * * * * * * * * * * * * * * * * * * * * * * FCOR1764
FCOR1765
UMOUNT.(UNITNO,MESSAG(N)...N) FCOR1766
FCOR1767
UMOUNT SAVE 0,N,(SPM,ARY) FCOR1768
FCOR1769
03025 0074 00 4 05142 TSX MVHOME,4 MOVE MESSAGE TO HOME MEMORY FCOR1770
03026 3 00000 0 05462 PAR P2 .. FCOR1771
FCOR1772
03027 -0500 00 0 05461 CAL P1 CHECK 'UNITNO' FCOR1773
03030 0322 00 0 06255 ERA =HALL IS IT 'ALL' (LJ) FCOR1774
03031 0100 00 0 03042 TZE UMT1 YES FCOR1775
03032 -0500 00 0 05461 CAL P1 .. FCOR1776
03033 0322 00 0 06312 ERA =H ALL OR (RJ) FCOR1777
03034 0100 00 0 03042 TZE UMT1 .. FCOR1778
FCOR1779
03035 0074 00 4 00025 TSX UMTTAP,4 CALL TAPE STRATEGY TO UNMOUNT TAPE FCOR1780
03036 0761 00 1 00000 EFA 0,1 .. FCOR1781
03037 3 04143 0 05461 PAR P1,,QWAIT .. FCOR1782
03040 3 03046 0 05462 PAR P2,,UMTER3 .. FCOR1783
03041 0020 00 0 04137 TRA RETURN AND RETURN FCOR1784
FCOR1785
03042 0074 00 4 00026 UMT1 TSX UMTALL,4 UNMOUNT ALL TAPES FOR THIS LOSER FCOR1786
03043 0761 00 1 00000 EFA 0,1 BASE OF AFST,FOR 'AUTHOR' FCOR1787
03044 3 03046 0 05462 PAR P2,,UMTER3 P2 = MESSAG,,N FCOR1788
03045 0020 00 0 04137 TRA RETURN FCOR1789
FCOR1790
03046 UMTER3 ERROR 3 UMOUNT ERROR(3), TAPE CURRENTLY IN USE FCOR1791
FCOR1792
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 51
FCOR1794
VERIFY.(UNITNO,LABEL(N)...N) FCOR1795
FCOR1796
VERIFY SAVE 0,N,(SPM,ARY) FCOR1797
FCOR1798
03056 0074 00 4 00027 TSX VERTAP,4 CALL TAPE STRATEGY TO VERIFY LABEL FCOR1799
03057 0761 00 1 00000 EFA 0,1 .. FCOR1800
03060 3 04143 0 05461 PAR P1,,QWAIT .. FCOR1801
03061 3 05505 0 05462 PAR P2,,MEM .. FCOR1802
03062 3 03067 0 03066 PAR VERR3,,VERR4 .. FCOR1803
03063 3 03071 0 03070 PAR VERR5,,VERR6 .. FCOR1804
03064 3 00000 0 03072 PAR VERR7 .. FCOR1805
03065 0020 00 0 04137 TRA RETURN AND RETURN FCOR1806
FCOR1807
03066 VERR3 ERROR 3 ERROR(3), TAPE FILE DOES NOT EXIST FCOR1808
FCOR1809
03067 VERR4 ERROR 4 ERROR(4), MACHINE ERROR OR BAD STATUS FCOR1810
FCOR1811
03070 VERR5 ERROR 5 ERROR(5), MOUNT FAILED, ILLEGAL OPERATION FCOR1812
FCOR1813
03071 VERR6 ERROR 6 ERROR(6), MOUNT FAILED, OPNS. DIFFICULTIES FCOR1814
FCOR1815
03072 VERR7 ERROR 7 ERROR(7), LABEL DOES NOT MATCH FCOR1816
FCOR1817
* * * * * * * * * * * * * * * * * * * * * * * * FCOR1818
FCOR1819
LABEL.(UNITNO,LABEL(N)...N) FCOR1820
FCOR1821
LABEL SAVE 0,N,(SPM,ARY) FCOR1822
FCOR1823
03102 0074 00 4 00030 TSX LBLTAP,4 CALL TAPE STRATEGY TO WRITE LABEL FCOR1824
03103 0761 00 1 00000 EFA 0,1 .. FCOR1825
03104 3 04143 0 05461 PAR P1,,QWAIT .. FCOR1826
03105 3 05505 0 05462 PAR P2,,MEM .. FCOR1827
03106 3 03112 0 03111 PAR LBER3,,LBER4 .. FCOR1828
03107 3 03114 0 03113 PAR LBER5,,LBER6 .. FCOR1829
03110 0020 00 0 04137 TRA RETURN AND RETURN FCOR1830
FCOR1831
03111 LBER3 ERROR 3 ERROR(3), TAPE FILE DOES NOT EXIST FCOR1832
FCOR1833
03112 LBER4 ERROR 4 ERROR(4), MACHINE ERROR OR BAD STATUS FCOR1834
FCOR1835
03113 LBER5 ERROR 5 ERROR(5), MOUNT FAILED, ILLEGAL OPERATION FCOR1836
FCOR1837
03114 LBER6 ERROR 6 ERROR(6), MOUNT FAILED, OPNS. DIFFICULTIES FCOR1838
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 52
FCOR1840
TAPFIL.($NAME1$,$NAME2$,UNITNO,FILENO) FCOR1841
FCOR1842
TAPFIL SAVE 0,S,(FN,SPM,SP) FCOR1843
FCOR1844
03125 0074 00 4 05043 TSX REFMFD,4 RATHER STICKY WICKET IF FCOR1845
03126 0761 00 1 00000 EFA PROBNO,1 U.F.D. IS ON A TAPE FCOR1846
03127 0020 00 0 03204 TRA TAPER6 I SAY THERE FCOR1847
FCOR1848
03130 -0774 00 2 05603 AXC FILTMP,2 CHECK IF FILE ALREADY EXISTS FCOR1849
03131 SEARCH UFD,FILNAM,TAP1 .. FCOR1850
03136 ERROR 3 TAPFIL ERROR(3), FILE ALREADY EXISTS FCOR1851
FCOR1852
03137 -0774 00 3 00003 TAP1 AXC 3,3 GET QUOTA FOR DEVICE 3 (TAPE) FCOR1853
03140 GETQU (PROBNO,1) .. FCOR1854
03144 -0320 00 0 06237 ANA =O77777 MASK OFF THE QUOTA FCOR1855
03145 0100 00 0 03203 TZE TAPER5 ERROR IF NO TAPE QUOTA FCOR1856
FCOR1857
03146 0500 00 1 00000 CLA PROBNO,1 CONSTRUCT FILE ENTRY FCOR1858
03147 0560 00 1 00001 LDQ PROGNO,1 .. FCOR1859
03150 -0603 00 2 00005 DST FPROBN,2 .. FCOR1860
03151 0500 00 0 05454 CLA FILNAM .. FILE NAME(1) FCOR1861
03152 0560 00 0 05455 LDQ FILNAM+1 .. (2) FCOR1862
03153 -0603 00 2 00007 DST FNAME1,2 .. FCOR1863
03154 0074 00 4 04256 TSX GTDYTM,4 .. SET UP DATE AND TIME FILE CREATED FCOR1864
03155 0602 00 2 00011 SLW DAYTIM,2 .. FCOR1865
03156 -0320 00 0 06333 ANA =O777777000000 .. GET DATE ALONE FCOR1866
03157 -0501 00 1 00002 ORA AUTHNO,1 .. + AUTHOR OF FILE FCOR1867
03160 0602 00 2 00012 SLW DATELU,2 .. FCOR1868
03161 -0500 00 0 06127 CAL TPUNIT .. MODE AND DEVICE FOR TAPE FILE FCOR1869
03162 0602 00 2 00013 SLW F,2 .. FCOR1870
03163 -0500 00 0 06125 CAL TGPMAX .. PMAX IN TAG FCOR1871
03164 -0501 00 0 06247 ORA =O77777000000 .. SET NORECS TO -1 FCOR1872
03165 0602 00 2 00014 SLW NORECS,2 .. FCOR1873
03166 -0500 00 0 05463 CAL P3 .. PICK UP LOGICAL UNIT NO. FCOR1874
03167 -0320 00 0 06237 ANA =O77777 .. MODULO 2.P.15 FCOR1875
03170 0602 00 2 00015 SLW POINTR,2 .. SET UP FILE POINTER FCOR1876
03171 0500 00 0 05464 CLA P4 .. PICK UP FILE NO. IF SPECIFIED FCOR1877
03172 -0120 00 0 03175 TMI *+3 .. SKIP IF NOT SPECIFIED FCOR1878
03173 0767 00 0 00022 ALS 18 .. FILE NO. TO DECREMENT FCOR1879
03174 0622 00 2 00015 STD POINTR,2 .. SET FILE NO. IN FILE ENTRY FCOR1880
03175 ADDFIL UFD,TAPMER ENTER NEW FILE IN UFD FCOR1881
03201 0020 00 0 04137 TRA RETURN AND RETURN FCOR1882
FCOR1883
03202 TAPMER ERROR 4 TAPFIL ERROR(4), MACHINE OR SYSTEM ERROR FCOR1884
FCOR1885
03203 TAPER5 ERROR 5 TAPFIL ERROR(5), NO TAPE QUOTA ALLOTTED FCOR1886
FCOR1887
03204 TAPER6 ERROR 6 TAPFIL ERROR(6), USER ATTACHED TO M.F.D. FCOR1888
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 53
FCOR1890
............... ERROR DIAGNOSTIC ROUTINE 'IODIAG' .......FCOR1891
FCOR1892
IODIAG.(A(N)...N) FCOR1893
FCOR1894
IODIAG SAVE 0,N,(ARY) FCOR1895
FCOR1896
03213 -0500 00 1 00007 CAL ERRILC,1 LOCATION OF CALL CAUSING ERROR FCOR1897
03214 USTORE P1,RETURN .. STORE IN USER'S MEMORY FCOR1898
03216 -0500 00 1 00010 CAL ERNAME,1 NAME OF ENTRY IN WHICH ERROR OCCURRED FCOR1899
03217 USTORE P1,RETURN .. STORE IN USER'S MEMORY FCOR1900
03221 -0500 00 1 00011 CAL ERCODE,1 ERROR CODE FCOR1901
03222 USTORE P1,RETURN .. TO USER FCOR1902
03224 -0500 00 1 00012 CAL IOCODE,1 INPUT/OUTPUT ERROR CODE IF ANY FCOR1903
03225 USTORE P1,RETURN .. FCOR1904
03227 -0500 00 1 00013 CAL ENAME1,1 NAME(1) OF FILE INVOLVED IN ERROR FCOR1905
03230 USTORE P1,RETURN .. FCOR1906
03232 -0500 00 1 00014 CAL ENAME2,1 NAME(2) OF FILE INVOLVED IN ERROR FCOR1907
03233 USTORE P1,RETURN .. FCOR1908
03235 -0500 00 1 00015 CAL ERCALL,1 LOCATION OF CALL TO ERROR OR IOERR FCOR1909
03236 USTORE P1,RETURN .. FCOR1910
03240 0020 00 0 04137 TRA RETURN RETURN TO USER FCOR1911
FCOR1912
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 54
FCOR1914
CALLS AVAILABLE TO THE SUPERVISORY SYSTEM ONLY FCOR1915
FCOR1916
FCOR1917
SETUSR.(USERNO,URCODE,AUTHNO,LIMITS,RELOC,PRIOR) FCOR1918
FCOR1919
03241 0500 60 4 00001 SETUSR CLA* 1,4 GET SLOT NUMBER IF SPECIFIED FCOR1920
03242 -0120 00 0 03247 TMI SETU1 SKIP IF NOT SPECIFIED FCOR1921
03243 0601 00 0 05445 STO SLOTNO OTHERWISE SET NEW USER SLOT NO. FCOR1922
03244 0535 00 7 05445 LAC SLOTNO,7 -SLOT NUMBER TO IR7 FCOR1923
03245 -0500 00 7 05437 CAL USRTBL,7 PICK UP ADDRESS OF USER STATUS TABLE FCOR1924
03246 0602 00 0 05436 SLW UTABLE .. FOR THIS USER SLOT FCOR1925
03247 0535 00 7 05436 SETU1 LAC UTABLE,7 FCOR1926
03250 0500 60 4 00002 CLA* 2,4 USER RESTRICTION CODE IF SPECIFIED FCOR1927
03251 -0120 00 0 03253 TMI SETU2 SKIP IF NOT SPECIFIED FCOR1928
03252 0601 00 7 00003 STO URCODE,7 OTHERWISE SET USER RESTRICTION CODE FCOR1929
03253 0500 60 4 00003 SETU2 CLA* 3,4 GET AUTHOR NUMBER IF SPECIFIED FCOR1930
03254 -0120 00 0 03256 TMI SETU3 SKIP IF NOT SPECIFIED FCOR1931
03255 0601 00 7 00002 STO AUTHNO,7 OTHERWISE SET UP USER AUTHOR NO. FCOR1932
03256 0500 60 4 00004 SETU3 CLA* 4,4 PROTECTION LIMITS IF SPECIFIED FCOR1933
03257 -0120 00 0 03261 TMI SETU4 SKIP IF NOT SPECIFIED FCOR1934
03260 0601 00 7 00004 STO LIMITS,7 OTHERWISE SET USER PROTECTION LIMITS FCOR1935
03261 0500 60 4 00005 SETU4 CLA* 5,4 USER RELOCATION IF SPECIFIED FCOR1936
03262 -0120 00 0 03264 TMI SETU5 SKIP IF NOT SPECIFIED FCOR1937
03263 0601 00 7 00005 STO RELOC,7 OTHERWISE SET USER RELOCATION FCOR1938
03264 0500 60 4 00006 SETU5 CLA* 6,4 PICK UP USER PRIORITY IF SPECIFIED FCOR1939
03265 -0120 00 0 03312 TMI SETU6 SKIP IF NOT SPECIFIED FCOR1940
03266 0767 00 0 00022 ALS 18 PRIORITY TO DECREMENT FCOR1941
03267 -0501 00 0 05445 ORA SLOTNO USER SLOT NUMBER TO ADDRESS FCOR1942
03270 0602 00 0 05475 SLW TEMP SAVE SLOT,,PRIOR FCOR1943
03271 0774 00 6 00002 AXT DUSERS,6 FCOR1944
03272 -0500 00 6 05444 STU5.1 CAL PRIORT+DUSERS,6 SEARCH PRIORITY TABLE FCOR1945
03273 -0320 00 0 06237 ANA =O77777 .. FOR THIS USER NUMBER FCOR1946
03274 0402 00 0 05445 SUB SLOTNO .. FCOR1947
03275 -0100 00 0 03277 TNZ *+2 .. FCOR1948
03276 0600 60 0 03272 STZ* STU5.1 .. RESET THIS SLOT WHEN FOUND FCOR1949
03277 2 00001 6 03272 TIX STU5.1,6,1 .. FCOR1950
03300 0774 00 6 00002 AXT DUSERS,6 FCOR1951
03301 -0500 00 0 05475 CAL TEMP PZE SLOT,,PRIOR FCOR1952
03302 0520 00 6 05444 STU5.2 ZET PRIORT+DUSERS,6 REPLACE USER IN PRIORITY TABLE FCOR1953
03303 0020 00 0 03306 TRA STU5.3 .. FCOR1954
03304 0602 60 0 03302 SLW* STU5.2 .. EMPTY SLOT FOUND SET THIS USER FCOR1955
03305 0020 00 0 03310 TRA STU5.4 .. AND GO SORT PRIORITY TABLE FCOR1956
03306 2 00001 6 03302 STU5.3 TIX STU5.2,6,1 .. FCOR1957
03307 0000 00 0 03307 HTR * MACHINE ERROR, SHOULD NEVER GET HERE FCOR1958
FCOR1959
03310 0074 00 7 05377 STU5.4 TSX SORT,7 SORT PRIORITY TABLE FCOR1960
03311 3 00002 0 05442 PAR PRIORT,,DUSERS .. FCOR1961
03312 0020 00 4 00007 SETU6 TRA 7,4 AND RETURN FCOR1962
FCOR1963
* * * * * * * * * * * * * * * * * * * * * * * * FCOR1964
FCOR1965
CHNGUS.(USERNO) FCOR1966
FCOR1967
03313 -0500 60 4 00001 CHNGUS CAL* 1,4 SET NEW USER OF FILE SYSTEM FCOR1968
03314 0602 00 0 05445 SLW SLOTNO .. FCOR1969
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 55
03315 0535 00 7 05445 LAC SLOTNO,7 -NEW SLOT NUMBER TO IR7 FCOR1970
03316 -0500 00 7 05437 CAL USRTBL,7 SET ADDRESS OF NEW USER'S STATUS TABLE FCOR1971
03317 0602 00 0 05436 SLW UTABLE .. FCOR1972
03320 0020 00 4 00002 TRA 2,4 AND RETURN FCOR1973
FCOR1974
* * * * * * * * * * * * * * * * * * * * * * * * FCOR1975
FCOR1976
SETRAP.(IFUNCT) FCOR1977
FCOR1978
03321 -0500 00 4 00001 SETRAP CAL 1,4 GET ADDRESS OF SUPERVISORY TRAP LOCATION FCOR1979
03322 0621 00 0 05446 STA SSCALL .. SET UP INTERRUPT TO SUPERVISOR FCOR1980
03323 0020 00 4 00002 TRA 2,4 AND RETURN FCOR1981
FCOR1982
* * * * * * * * * * * * * * * * * * * * * * * * FCOR1983
FCOR1984
USTAT.(ARRAY(N)...N, Q1(N)...N, ... , QFMAX(N)...N) FCOR1985
FCOR1986
USTAT SSAVE (ARY) FCOR1987
03332 DUP 1,FMAX EXTEND PROTOTYPE BY FMAX FCOR1988
03332 3 00000 0 04005 PAR ARY .. FCOR1989
FCOR1990
03335 0535 00 1 05445 LAC SLOTNO,1 -USER SLOT NUMBER TO IR1 FCOR1991
03336 -0534 00 3 05461 LXD P1,3 ACTIVE STATUS TABLE WORD COUNT FCOR1992
03337 3 00052 3 03341 TXH USTAT2,3,TBLMIN-1 SKIP IF TABLE SIZE OK FCOR1993
03340 ERROR 3 USTAT ERROR(3), TABLE TOO SMALL FCOR1994
FCOR1995
03341 -0500 00 0 05461 USTAT2 CAL P1 SET UP ACTIVE FILE STATUS TABLE ADDRESS FCOR1996
03342 0602 00 1 05437 SLW USRTBL,1 .. FCOR1997
03343 0737 00 2 00000 PAC 0,2 CLEAR ACTIVE FILE STATUS TABLE FCOR1998
03344 0600 00 2 00000 STZ 0,2 .. FCOR1999
03345 -2 00001 3 03347 TNX *+2,3,1 .. FCOR2000
03346 1 77777 2 03344 TXI *-2,2,-1 .. FCOR2001
03347 0535 00 1 05461 LAC P1,1 -BASE OF A.F.S.T. TO IR1 FCOR2002
03350 -0774 00 2 00001 AXC 1,2 FCOR2003
03351 -0500 00 2 05461 USTAT3 CAL P1,2 SET I/O QUEUE ADDRESSES FCOR2004
03352 0602 00 1 00016 SLW QUEUE1,1 .. FCOR2005
03353 0737 00 3 00000 PAC 0,3 .. -BASE OF QUEUE STORAGE TO IR4 FCOR2006
03354 -3 00000 3 03356 TXL *+2,3,0 .. SKIP IF ZERO FCOR2007
03355 0600 00 3 00000 STZ 0,3 .. OTHERWISE, RESET FIRST LOCATION IN QUEUEFCOR2008
03356 -3 77775 2 03361 TXL USTAT4,2,-FMAX .. FCOR2009
03357 1 77777 1 03360 TXI *+1,1,-1 .. FCOR2010
03360 1 77777 2 03351 TXI USTAT3,2,-1 .. FCOR2011
03361 0020 00 0 04137 USTAT4 TRA RETURN AND RETURN FCOR2012
FCOR2013
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 56
FCOR2015
USAVE.(COUNT,ARRAY(N)...N) FCOR2016
FCOR2017
USAVE SSAVE (ADR,ARY) FCOR2018
FCOR2019
03371 0535 00 3 05462 LAC P2,3 -BASE OF SUPERVISOR BUFFER TO IR3 FCOR2020
03372 0600 00 0 05503 STZ COUNT RESET COUNT FOR NO. OF ACTIVE FILES FCOR2021
03373 0600 00 0 05457 STZ ANYFIL+1 INITIALIZE SEARCH THROUGH A.F.S.T. FCOR2022
03374 USAVE1 GTSTAT ANYFIL,USAVE4 GET ANY ACTIVE FILE ENTRY FCOR2023
03376 0737 00 2 00000 PAC 0,2 -BASE OF ENTRY TO IR2 FCOR2024
03377 -0534 00 4 05462 LXD P2,4 ARRAY COUNT FCOR2025
03400 -3 00007 4 03464 TXL USVER3,4,SVWRDS-1 ERROR IF COUNT TOO SMALL FCOR2026
03401 1 77770 4 03402 TXI *+1,4,-SVWRDS REDUCE COUNT BY SVWRDS FCOR2027
03402 -0634 00 4 05462 SXD P2,4 .. FCOR2028
03403 -0500 00 2 00000 CAL RPROBN,2 MOVE PROBLEM NUMBER FCOR2029
03404 0602 00 3 00000 SLW 0,3 .. FCOR2030
03405 -0500 00 2 00001 CAL RPROGN,2 MOVE PROGRAMMER NUMBER FCOR2031
03406 0602 00 3 00001 SLW 1,3 .. FCOR2032
03407 -0500 00 2 00002 CAL RNAME1,2 MOVE FILE NAME(1) FCOR2033
03410 0602 00 3 00002 SLW 2,3 .. FCOR2034
03411 -0500 00 2 00003 CAL RNAME2,2 MOVE FILE NAME(2) FCOR2035
03412 0602 00 3 00003 SLW 3,3 .. FCOR2036
03413 0441 00 2 00014 LDI RWSTAT,2 GET FILE STATUS (R, W, RW) FCOR2037
03414 -0754 00 0 00000 ZAC FCOR2038
03415 -0054 00 100000 LFT 100000 CHECK FOR READ STATUS FCOR2039
03416 -0501 00 0 06304 ORA =HR00000 SET 'R' FOR READ STATUS FCOR2040
03417 -0054 00 200000 LFT 200000 CHECK FOR WRITE STATUS FCOR2041
03420 -0501 00 0 06246 ORA =H0W0000 SET 'W' FOR WRITE STATUS FCOR2042
03421 0602 00 3 00004 SLW 4,3 MOVE R, W, OR RW TO BUFFER FCOR2043
03422 -0500 00 2 00013 CAL RCOUNT,2 PICK UP RECORD WORD COUNT FCOR2044
03423 -0320 00 0 06237 ANA =O77777 .. FCOR2045
03424 0767 00 0 00022 ALS 18 .. INTO DECREMENT FCOR2046
03425 0602 00 0 05475 SLW TEMP SAVE IT FCOR2047
03426 -0500 00 2 00020 CAL BUFADR,2 PICK UP BUFFER ADDRESS IF ANY FCOR2048
03427 -0320 00 0 06237 ANA =O77777 .. FCOR2049
03430 0100 00 0 03432 TZE *+2 SKIP IF NO BUFFER ADDRESS PROVIDED FCOR2050
03431 -0501 00 0 05475 ORA TEMP BRING BACK RECORD COUNT TO DECR. FCOR2051
03432 0602 00 3 00005 SLW 5,3 MOVE BUFFER ADDRESS TO BUFFER FCOR2052
03433 0600 00 3 00006 STZ 6,3 CLEAR OUT SLOTS FOR READ FCOR2053
03434 0600 00 3 00007 STZ 7,3 .. AND WRITE ADDRESSES FCOR2054
03435 0441 00 2 00014 LDI R,2 PICK UP READ STATUS IF SPECIFIED FCOR2055
03436 -0056 00 100000 LNT 100000 IS READ STATUS ON FCOR2056
03437 0020 00 0 03443 TRA USAVE2 NO, SKIP FCOR2057
03440 -0500 00 2 00016 CAL REDWRD,2 PZE REDWDR,,REDREC FCOR2058
03441 0074 00 4 05362 TSX RECADR,4 COMPUTE LINEAR READ ADDRESS FCOR2059
03442 0602 00 3 00006 SLW 6,3 MOVE TO BUFFER FCOR2060
03443 0441 00 2 00014 USAVE2 LDI W,2 PICK UP WRITE STATUS IF SPECIFIED FCOR2061
03444 -0056 00 200000 LNT 200000 IS WRITE STATUS ON FCOR2062
03445 0020 00 0 03451 TRA USAVE3 NO, SKIP FCOR2063
03446 -0500 00 2 00017 CAL WRTWRD,2 PZE WRTWRD,,WRTREC FCOR2064
03447 0074 00 4 05362 TSX RECADR,4 COMPUTE LINNEAR WRITE ADDRESS FCOR2065
03450 0602 00 3 00007 SLW 7,3 MOVE TO BUFFER FCOR2066
03451 0441 00 2 00014 USAVE3 LDI S,2 SET SAVED BIT IN A.F.S.T ENTRY FCOR2067
03452 -0055 00 400000 SIL 400000 .. FCOR2068
03453 0604 00 2 00014 STI S,2 .. FCOR2069
03454 0534 00 5 05503 LXA COUNT,5 UPDATE COUNT OF NO. OF WORDS SAVED FCOR2070
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 57
03455 1 00010 5 03456 TXI *+1,5,SVWRDS .. IN USER ARRAY FCOR2071
03456 0634 00 5 05503 SXA COUNT,5 .. FCOR2072
03457 1 77770 3 03374 TXI USAVE1,3,-SVWRDS BACK FOR NEXT ENTRY FCOR2073
FCOR2074
03460 0535 00 4 05461 USAVE4 LAC P1,4 HERE FOR END OF A.F.S.T. FCOR2075
03461 -0500 00 0 05503 CAL COUNT MOVE COUNT OF NO. OF ACTIVE FILES FCOR2076
03462 0602 00 4 00000 SLW 0,4 .. TO SUPERVISOR BUFFER FCOR2077
03463 0020 00 0 04137 TRA RETURN AND RETURN FCOR2078
FCOR2079
03464 USVER3 ERROR 3 USAVE ERROR(3), BUFFER TOO SMALL FCOR2080
FCOR2081
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2082
FCOR2083
SETAB.(CALLER,BUFFER,MEMORY) FCOR2084
FCOR2085
03465 0500 60 4 00001 SETAB CLA* 1,4 CALLER IF SPECIFIED FCOR2086
03466 -0120 00 0 03470 TMI *+2 SKIP IF NOT SPECIFIED FCOR2087
03467 0601 00 0 05504 STO CALL OTHERWISE SET MEMORY OF CALLER FCOR2088
03470 0500 60 4 00002 CLA* 2,4 BUFFER IF SPECIFIED FCOR2089
03471 -0120 00 0 03473 TMI *+2 SKIP IF NOT SPECIFIED FCOR2090
03472 0601 00 0 05506 STO BUF OTHERWISE SET USER BUFFER FCOR2091
03473 0500 60 4 00003 CLA* 3,4 MEMORY IF SPECIFIED FCOR2092
03474 -0120 00 0 03476 TMI *+2 SKIP IF NOT SPECIFIED FCOR2093
03475 0601 00 0 05505 STO MEM OTHERWISE SET USER MEMORY FCOR2094
03476 0020 00 4 00004 TRA 4,4 AND RETURN FCOR2095
FCOR2096
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2097
FCOR2098
GETUSR.(ARY(4)...4) FCOR2099
FCOR2100
03477 -0500 00 4 00001 GETUSR CAL 1,4 MUST BE 'TXH ARY,,N' FCOR2101
03500 0737 00 5 00000 PAC 0,5 -BASE ADDRESS TO IR5 FCOR2102
03501 -0734 00 6 00000 PDX 0,6 COUNT TO IR6 FCOR2103
03502 -0500 00 0 05445 CAL SLOTNO RETURN DISK USER NO. FCOR2104
03503 0602 00 5 00000 SLW 0,5 .. FCOR2105
03504 -2 00001 6 03515 TNX GETUS1,6,1 REDUCE COUNT FCOR2106
03505 -0500 00 0 05504 CAL CALL MEMORY FLAG FOR 'CALLER' FCOR2107
03506 0602 00 5 00001 SLW 1,5 .. FCOR2108
03507 -2 00001 6 03515 TNX GETUS1,6,1 .. FCOR2109
03510 -0500 00 0 05506 CAL BUF MEMORY FLAG FOR 'BUFFER' FCOR2110
03511 0602 00 5 00002 SLW 2,5 .. FCOR2111
03512 -2 00001 6 03515 TNX GETUS1,6,1 .. FCOR2112
03513 -0500 00 0 05505 CAL MEM MEMORY FLAG FOR 'MEMORY' FCOR2113
03514 0602 00 5 00003 SLW 3,5 .. FCOR2114
03515 0020 00 4 00002 GETUS1 TRA 2,4 RETURN FCOR2115
FCOR2116
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 58
FCOR2118
IOSTOP.(SLOTNO) FCOR2119
FCOR2120
IOSTOP SSAVE (SPM) FCOR2121
FCOR2122
03524 0534 00 4 05461 LXA P1,4 SLOT NUMBER OF USER TO BE STOPPED FCOR2123
03525 -3 00002 4 03527 TXL STOP1,4,DUSERS SKIP IF SLOT NUMBER IS LEGAL FCOR2124
03526 ERROR 3 IOSTOP ERROR(3), ILLEGAL USER SLOT NO. FCOR2125
FCOR2126
03527 0074 00 4 00010 STOP1 TSX IOHALT,4 STOP ALL I/O FOR THIS USER FCOR2127
03530 3 00000 0 05461 PAR P1 .. ON ALL DEVICES FCOR2128
03531 0020 00 0 04137 TRA RETURN AND RETURN FCOR2129
FCOR2130
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2131
FCOR2132
IOSTRT.(SLOTNO) FCOR2133
FCOR2134
IOSTRT SSAVE (SPM) FCOR2135
FCOR2136
03540 0534 00 4 05461 LXA P1,4 SLOT NUMBER OF USER TO BE STARTED FCOR2137
03541 -3 00002 4 03543 TXL START1,4,DUSERS SKIP IF SLOT NUMBER IS LEGAL FCOR2138
03542 ERROR 3 IOSTRT ERROR(3), ILLEGAL USER SLOT NO. FCOR2139
FCOR2140
03543 0074 00 4 00011 START1 TSX IOBEGN,4 RESTART ANY WAITING I/O FOR THIS USER FCOR2141
03544 3 00000 0 05461 PAR P1 .. ON ALL DEVICES FCOR2142
03545 0020 00 0 04137 TRA RETURN AND RETURN FCOR2143
FCOR2144
* * * * * * * * * * * * * * * * * * * * * * * FCOR2145
FCOR2146
IORSET. FCOR2147
FCOR2148
IORSET SSAVE () FCOR2149
FCOR2150
03553 0074 00 4 00012 TSX IORST,4 INFORM I/O CONTROL OF MACHINE RESET FCOR2151
03554 0020 00 0 04137 TRA RETURN FCOR2152
FCOR2153
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2154
FCOR2155
IOFINI. FCOR2156
FCOR2157
IOFINI SSAVE () FCOR2158
FCOR2159
03562 0535 00 1 05436 LAC UTABLE,1 FCOR2160
03563 0074 00 4 00011 TSX IOBEGN,4 INSURE I/O IS NOT BLOCKED FCOR2161
03564 3 00000 0 06217 PAR =0 .. FCOR2162
03565 0074 00 4 00013 TSX DRAIN,4 WAIT UNTIL ALL PENDING I/O IS PROCESSED FCOR2163
03566 0074 00 4 05004 TSX UPDSYS,4 UPDATE ALL SYSTEM INFORMATION FCOR2164
03567 3 00000 0 03572 PAR FINMER .. POSSIBLE ERROR RETURN FCOR2165
03570 0074 00 4 00013 TSX DRAIN,4 AND WAIT ON I/O AGAIN FCOR2166
03571 0020 00 0 04137 TRA RETURN AND RETURN FCOR2167
FCOR2168
03572 FINMER ERROR 3 IOFINI ERROR(3), MACHINE OR SYSTEM ERROR FCOR2169
FCOR2170
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 59
FCOR2172
.......... INTIALIZATION ENTRY FOR FILE SYSTEM ......... FCOR2173
FCOR2174
IOINIT.(ERRLOC,DATLOC,TIMLOC,ENABLE) FCOR2175
FCOR2176
IOINIT SSAVE (ADR,ADR,ADR,ADR) FCOR2177
FCOR2178
03604 -0500 00 0 05461 CAL P1 SET UP LOCATION OF SUPERVISOR ERROR RETURN FCOR2179
03605 0621 00 0 05447 STA ERRLOC .. FCOR2180
03606 -0500 00 0 05462 CAL P2 SET UP LOCATION OF DATE FCOR2181
03607 0621 00 0 05450 STA DATLOC .. FCOR2182
03610 -0500 00 0 05463 CAL P3 SET UP LOCATION OF TIME IN 60THS FCOR2183
03611 0621 00 0 05451 STA TIMLOC .. FCOR2184
03612 -0500 00 0 05464 CAL P4 SET UP LOCATION OF COMMON ENABLE WORD FCOR2185
03613 0621 00 0 05452 STA ENABLE .. FCOR2186
03614 -0774 00 3 00001 AXC 1,3 FCOR2187
03615 0522 00 3 00056 INIT1 XEC SINITF,3 INITIALIZE ALL STRATEGY MODULES FCOR2188
03616 3 00000 0 05452 PAR ENABLE .. FCOR2189
03617 -3 77775 3 03621 TXL *+2,3,-FMAX .. FCOR2190
03620 1 77777 3 03615 TXI INIT1,3,-1 .. FCOR2191
03621 -0774 00 3 00001 AXC 1,3 INITIALIZE ALL OTHER MODULES FCOR2192
03622 0522 00 3 00061 INIT2 XEC SETMOD,3 .. FCOR2193
03623 3 06132 0 06132 PAR FRSTER,,FRSTER ERR. RTN. FOR 'IFILES' FCOR2194
03624 -3 77775 3 03626 TXL *+2,3,-NINIT .. FCOR2195
03625 1 77777 3 03622 TXI INIT2,3,-1 .. FCOR2196
03626 0020 00 0 04137 TRA RETURN AND RETURN FCOR2197
FCOR2198
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2199
FCOR2200
....... END OF MAIN SECTION OF FILE COORDINATOR .........FCOR2201
....... UTILITY ROUTINES FOLLOW FCOR2202
FCOR2203
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2204
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2205
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 60
FCOR2207
SSAVE AND SAVE ..... SAVE AND PICK UP PARAMETERS FCOR2208
FCOR2209
03627 0604 00 0 05521 SSAVE STI SVSI HERE FROM ENTRY FROM SUPERVISOR FCOR2210
03630 0441 00 0 06123 LDI HOME PICK UP 'HOME' POINTER FCOR2211
03631 0604 00 0 05507 STI GTCALL SET UP TO GET ALL PARAMETERS FCOR2212
03632 0604 00 0 05510 STI GTMEM .. FROM 'HOME' MEMORY FCOR2213
03633 0604 00 0 05511 STI GTBUF .. FCOR2214
03634 0020 00 0 03644 TRA SAVE1 FCOR2215
FCOR2216
03635 0604 00 0 05521 SAVE STI SVSI HERE FROM NORMAL ENTRY TO FILE SYSTEM FCOR2217
03636 0441 00 0 05504 LDI CALL POINTER TO CALLING MEMORY FCOR2218
03637 0604 00 0 05507 STI GTCALL SET TO GET CALLING SEQUENCE FCOR2219
03640 0441 00 0 05505 LDI MEM SET TO GET DATA AND CHECK LIMITS FCOR2220
03641 0604 00 0 05510 STI GTMEM .. FCOR2221
03642 0441 00 0 05506 LDI BUF SET TO CHECK BUFFER ADDRESSES FCOR2222
03643 0604 00 0 05511 STI GTBUF .. FCOR2223
FCOR2224
03644 0564 60 0 05452 SAVE1 ENB* ENABLE INSURE ALL TRAPS ENABLED FCOR2225
03645 0634 00 4 05523 SXA TMPIR4,4 FCOR2226
FCOR2227
03646 0634 00 1 05516 SXA SVIR12,1 SAVE BASIC MACHINE CONDITIONS FCOR2228
03647 -0634 00 2 05516 SXD SVIR12,2 FCOR2229
03650 0634 00 3 05517 SXA SVIR35,3 FCOR2230
03651 -0634 00 5 05517 SXD SVIR35,5 FCOR2231
03652 0634 00 6 05520 SXA SVIR67,6 FCOR2232
03653 -0634 00 7 05520 SXD SVIR67,7 FCOR2233
03654 -0500 60 4 00001 CAL* 1,4 PICK UP NAME OF ENTRY CALLED FCOR2234
03655 0602 00 0 05453 SLW IOCALL .. SAVE IT FCOR2235
03656 0600 00 0 05454 STZ FILNAM RESET PREVIOUS FILE NAME FCOR2236
03657 0600 00 0 05455 STZ FILNAM+1 .. FCOR2237
03660 -0500 00 0 05507 CAL GTCALL MEMORY CONTAINING CALLING SEQUENCE FCOR2238
03661 -0320 00 0 06222 ANA =O3 .. (1-3) FCOR2239
03662 0737 00 1 00000 PAC 0,1 FCOR2240
03663 -0500 00 1 06127 CAL ICFLAG,1 PICK UP MEMORY FLAGS FOR ILC FCOR2241
03664 0602 00 0 05512 SLW ILC .. FCOR2242
03665 -0500 00 1 05305 CAL SETMEM,1 PICK UP ECC CONTROL INSTRUCTION FOR FCOR2243
03666 0602 00 0 05525 SLW PARMEM .. USER'S MEMORY FCOR2244
03667 0535 00 4 05515 LAC IR4,4 GET LOCATION OF CALLING SEQUENCE FCOR2245
03670 0634 00 4 05512 SXA ILC,4 .. SAVE AS USER ILC FCOR2246
03671 -0500 00 0 05512 CAL ILC INITIALIZE RETURN ILC FCOR2247
03672 0602 00 0 05513 SLW RTNILC .. FCOR2248
03673 -0500 00 0 05447 CAL ERRLOC SET UP FOR ERROR IN CASE NO ERROR RETURN FCOR2249
03674 -0501 00 0 06131 ORA ICFLAG+IOSMEM .. PROVIDED FCOR2250
03675 0602 00 0 05514 SLW ERRTRN .. FCOR2251
FCOR2252
03676 0534 00 1 05523 LXA TMPIR4,1 -LOC. OF CALL TO SAVE TO IR1 FCOR2253
03677 0534 00 2 05515 LXA IR4,2 -LOC. OF CALL TO FILE COORDINATOR TO IR2 FCOR2254
03700 -0774 00 3 00001 AXC 1,3 INITIALIZE POINTER TO PARAMETER TABLE FCOR2255
03701 0600 00 0 05524 STZ NOPAR FCOR2256
03702 0520 00 0 05524 SAVE3 ZET NOPAR IS PARAMETER LIST EXHAUSTED FCOR2257
03703 0020 00 0 03715 TRA SAVE4 YES, SKIP FCOR2258
03704 -0500 00 0 05513 CAL RTNILC NO, INCREASE RETURN ADDRESS FCOR2259
03705 0400 00 0 06220 ADD =1 .. FCOR2260
03706 0621 00 0 05513 STA RTNILC .. FCOR2261
03707 GETPAR (1,2) PICK UP NEXT WORD FROM CALL FCOR2262
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 61
03712 0602 00 0 05460 SLW P0 .. FCOR2263
03713 0074 00 4 04131 TSX CHKPAR,4 CHECK FOR VALID PARAMETER FCOR2264
03714 -0625 00 0 05524 STL NOPAR .. SET SWITCH IF END OF PARAMETER LIST FCOR2265
03715 -0500 00 1 00004 SAVE4 CAL 4,1 PICK UP TYPE OF ARGUMENT FROM PROTOTYPE FCOR2266
03716 0074 00 4 04131 TSX CHKPAR,4 CHECK FOR END OF PROTOTYPE FCOR2267
03717 0020 00 0 04063 TRA SVERTN .. SKIP TO GET ERROR RETURN AT END FCOR2268
03720 0634 00 1 05522 SXA TMPIR1,1 SAVE IR1 FCOR2269
03721 0737 00 4 00000 PAC 0,4 ADDRESS OF SECTION NEEDED TO GET PARAMETER FCOR2270
03722 0020 00 4 00000 TRA 0,4 DISPATCH ON EXPECTED PARAMETER TYPE FCOR2271
FCOR2272
03723 0520 00 0 05524 FN ZET NOPAR HERE TO PICK FILE NAME FCOR2273
03724 0020 00 0 04127 TRA SAVER1 ERROR IF FILE NAME MISSING FCOR2274
03725 0535 00 1 05460 LAC P0,1 GET FILE NAME(1) FROM USER'S MEMORY FCOR2275
03726 GETPAR (0,1) .. FCOR2276
03731 0602 00 3 05460 SLW P0,3 .. FCOR2277
03732 0602 00 0 05454 SLW FILNAM .. FCOR2278
03733 0322 00 0 06124 ERA NULPAR INSURE FILE NAME NOT NULL FCOR2279
03734 0100 00 0 04127 TZE SAVER1 .. ERROR IF NULL FILE NAME(1) FCOR2280
03735 1 77777 2 03736 TXI *+1,2,-1 BUMP POINTER TO USER'S CALLING SEQUENCE FCOR2281
03736 1 77777 3 03737 TXI *+1,3,-1 BUMP POINTER TO PARAMETER LIST FCOR2282
03737 GETPAR (1,2) PICK UP NEXT PARAMETER FROM CALL FCOR2283
03742 0602 00 0 05460 SLW P0 .. FCOR2284
03743 0074 00 4 04131 TSX CHKPAR,4 CHECK FOR VALID PARAMETER FCOR2285
03744 0020 00 0 04127 TRA SAVER1 .. ERROR IF NO SECOND FILE NAME GIVEN FCOR2286
03745 0535 00 1 05460 LAC P0,1 GET FILE NAME(2) FROM USER'S MEMORY FCOR2287
03746 GETPAR (0,1) .. FCOR2288
03751 0602 00 3 05460 SLW P0,3 .. FCOR2289
03752 0602 00 0 05455 SLW FILNAM+1 .. FCOR2290
03753 0322 00 0 06124 ERA NULPAR INSURE FILE NAME(2) NOT NULL FCOR2291
03754 0100 00 0 04127 TZE SAVER1 .. ERROR IF NULL FILE NAME(2) FCOR2292
03755 -0520 00 0 05454 NZT FILNAM ALSO ERROR (FOR SEARCH MODULE) FCOR2293
03756 0520 00 0 05455 ZET FILNAM+1 IF BOTH FILE NAMES ARE ZERO FCOR2294
03757 1 77777 3 04060 TXI SAVE5,3,-1 BUMP PARAMETER LIST COUNT FCOR2295
03760 0020 00 0 04127 TRA SAVER1 SEQUENCE ERROR, BOTH FILE NAMES ZERO FCOR2296
FCOR2297
03761 -0500 00 0 06124 SP CAL NULPAR HERE TO PICK UP OPTIONAL PARAMETER FCOR2298
03762 0602 00 3 05460 SLW P0,3 NULL PARAMETER IN CASE PARAMETER MISSING FCOR2299
03763 0520 00 0 05524 ZET NOPAR HAS A PARAMETER BEEN SPECIFIED FCOR2300
03764 1 77777 3 04060 TXI SAVE5,3,-1 NO, SKIP FCOR2301
03765 0535 00 1 05460 LAC P0,1 PICK UP PARAMETER FROM USER'S MEMORY FCOR2302
03766 GETPAR (0,1) .. FCOR2303
03771 0602 00 3 05460 SLW P0,3 .. FCOR2304
03772 1 77777 3 04060 TXI SAVE5,3,-1 BUMP PARAMETER LIST COUNT FCOR2305
FCOR2306
03773 0520 00 0 05524 SPM ZET NOPAR HERE TO PICK UP MANDITORY PARAMETER FCOR2307
03774 0020 00 0 04127 TRA SAVER1 ERROR IF PARAMETER NOT SPECIFIED FCOR2308
03775 0535 00 1 05460 LAC P0,1 PICK UP PARAMETER FROM USER'S MEMORY FCOR2309
03776 GETPAR (0,1) .. FCOR2310
04001 0602 00 3 05460 SLW P0,3 .. FCOR2311
04002 0322 00 0 06124 ERA NULPAR CHECK FOR NULL PARAMETER FCOR2312
04003 0100 00 0 04127 TZE SAVER1 ERROR IF NULL FCOR2313
04004 1 77777 3 04060 TXI SAVE5,3,-1 BUMP PARAMETER LIST COUNT FCOR2314
FCOR2315
04005 -0500 00 0 05507 ARY CAL GTCALL HERE TO PICK UP ARRAY FROM 'CALL' FCOR2316
04006 0020 00 0 04012 TRA GETARY .. FCOR2317
FCOR2318
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 62
04007 -0500 00 0 05510 MARY CAL GTMEM HERE TO PICK UP ARRAY FROM 'MEM' FCOR2319
04010 0020 00 0 04012 TRA GETARY .. FCOR2320
FCOR2321
04011 -0500 00 0 05511 BARY CAL GTBUF HERE TO PICK UP ARRAY FROM 'BUF' FCOR2322
FCOR2323
04012 0602 00 0 05526 GETARY SLW TMEM SAVE MEMORY POINTER FCOR2324
04013 0520 00 0 05524 ZET NOPAR CHECK IF ARRAY SPECIFIED IN CALL FCOR2325
04014 0020 00 0 04127 TRA SAVER1 ERROR IF ARRAY NOT SPECIFIED FCOR2326
04015 -0500 00 0 05460 CAL P0 GET PARAMETER FCOR2327
04016 0044 00 0 00000 PAI INTO INDICATORS ALSO FCOR2328
04017 -0054 00 100000 LFT 100000 IS PARAMETER SPECIFIED BY 'TIX' FCOR2329
04020 0020 00 0 04033 TRA GTARY1 NO, ASSUME TXH A,,N NOTATION FCOR2330
04021 -0320 00 0 06237 ANA =O77777 YES, SET BASE ADDRESS OF ARRAY FCOR2331
04022 0602 00 3 05460 SLW P0,3 .. MODULO 2.P.15 FCOR2332
04023 -0535 00 1 05460 LDC P0,1 GET -ADDRESS OF WORD COUNT FCOR2333
04024 GETPAR (0,1) PICK UP ARRAY WORD COUNT FCOR2334
04027 -0320 00 0 06237 ANA =O77777 .. MODULO 2.P.15 FCOR2335
04030 0767 00 0 00022 ALS 18 .. COUNT TO DECREMENT FCOR2336
04031 0622 00 3 05460 STD P0,3 SET ARRAY WORD COUNT FCOR2337
04032 0020 00 0 04035 TRA GTARY2 SKIP TO CHECK ARRAY LIMITS FCOR2338
FCOR2339
04033 -0320 00 0 06250 GTARY1 ANA =O77777077777 HERE FOR TXH A,,N NOTATION, RESET PREFIX FCOR2340
04034 0602 00 3 05460 SLW P0,3 .. AND TAG, AND SET IN PARAMETER LIST FCOR2341
04035 -0500 00 3 05460 GTARY2 CAL P0,3 RELOAD ARRAY SPECIFICATION FCOR2342
04036 0074 00 4 05311 TSX RCHECK,4 RELOCATE AND CHECK LIMITS FCOR2343
04037 3 05526 0 04127 PAR SAVER1,,TMEM .. FCOR2344
04040 1 77777 3 04060 TXI SAVE5,3,-1 BUMP PARAMETER LIST COUNT FCOR2345
FCOR2346
04041 -0500 00 0 06124 ADR CAL NULPAR HERE TO SET OPTIONAL ADDRESS PARAMETER FCOR2347
04042 0602 00 3 05460 SLW P0,3 NULL ADDRESS IN CASE ADDRESS MISSING FCOR2348
04043 0520 00 0 05524 ZET NOPAR HAS THE ADDRESS PARAMETER BEEN SPECIFIED FCOR2349
04044 1 77777 3 04060 TXI SAVE5,3,-1 NO, SKIP FCOR2350
04045 0535 00 1 05460 LAC P0,1 -ADDRESS TO IR1 FCOR2351
04046 GETPAR (0,1) PICK UP WORD AT THIS ADDRESS FCOR2352
04051 0322 00 0 06124 ERA NULPAR CHECK FOR NULL PARAMETER FCOR2353
04052 -0100 00 0 04054 TNZ *+2 SKIP IF NOT A NULL PARAMETER FCOR2354
04053 1 77777 3 04060 TXI SAVE5,3,-1 OTHERWISE BUMP PARAMETER LIST COUNT FCOR2355
04054 -0500 00 0 05460 CAL P0 HERE TO SET UP ADDRESS PARAMETER FCOR2356
04055 -0320 00 0 06237 ANA =O77777 .. MODULE 2.P.15 FCOR2357
04056 0602 00 3 05460 SLW P0,3 .. IN PARAMETER LIST TABLE FCOR2358
04057 1 77777 3 04060 TXI SAVE5,3,-1 BUMP PARAMETER LIST COUNT FCOR2359
FCOR2360
04060 0534 00 1 05522 SAVE5 LXA TMPIR1,1 RELOAD IR1 TO POINT TO SAVE CALL FCOR2361
04061 1 77777 2 04062 TXI *+1,2,-1 BUMP POINTER TO USER'S CALLING SEQ. FCOR2362
04062 1 77777 1 03702 TXI SAVE3,1,-1 GET PARAMETER FROM SAVE CALL FCOR2363
FCOR2364
04063 -0500 00 0 06124 SVERTN CAL NULPAR HERE FOR END OF PROTOTYPE CALL TO SAVE FCOR2365
04064 0602 00 0 05473 SLW ERWORD NULL ERROR WORD IN CASE NONE SPECIFIED FCOR2366
04065 -0634 00 1 05523 SXD TMPIR4,1 SAVE POINTER TO END OF CALL TO SAVE FCOR2367
04066 0520 00 0 05524 ZET NOPAR DID USER SPECIFY AN ERROR RETURN FCOR2368
04067 0020 00 0 04114 TRA SAVE6 NO, SKIP FCOR2369
04070 -0500 00 0 05460 CAL P0 YES, SET UP USER ERROR RETURN FCOR2370
04071 -0320 00 0 06237 ANA =O77777 .. MODULO 2.P.15 FCOR2371
04072 0602 00 0 05514 SLW ERRTRN .. FCOR2372
04073 0560 00 0 05513 LDQ RTNILC SET UP MEMORY FLAGS IN CASE OF ERROR FCOR2373
04074 -0620 00 0 05514 SLQ ERRTRN .. FCOR2374
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 63
04075 -0500 00 0 05513 CAL RTNILC BUMP RETURN LOCATION FCOR2375
04076 0400 00 0 06220 ADD =1 .. FCOR2376
04077 0621 00 0 05513 STA RTNILC .. FCOR2377
04100 GETPAR (2,2) PICK UP ERROR CODE RETURN WORD IF ANY FCOR2378
04103 0602 00 0 05460 SLW P0 .. FCOR2379
04104 0074 00 4 04131 TSX CHKPAR,4 CHECK FOR ERROR CODE WORD PARAMETER FCOR2380
04105 0020 00 0 04114 TRA SAVE6 .. SKIP IF ERROR CODE WORD NOT PROVIDED FCOR2381
04106 -0500 00 0 05460 CAL P0 SET UP ADDRESS TO RETURN ERROR CODE FCOR2382
04107 -0320 00 0 06237 ANA =O77777 .. IN CASE OF ERROR RETURN FCOR2383
04110 0602 00 0 05473 SLW ERWORD .. FCOR2384
04111 -0500 00 0 05513 CAL RTNILC BUMP RETURN LOCATION FCOR2385
04112 0400 00 0 06220 ADD =1 .. FCOR2386
04113 0621 00 0 05513 STA RTNILC .. FCOR2387
FCOR2388
04114 0534 00 4 05523 SAVE6 LXA TMPIR4,4 RELOAD IR4 FROM CALL TO SAVE OR SSAVE FCOR2389
04115 0535 00 1 05436 LAC UTABLE,1 -BASE OF USER A.F.S.T. TO IR1 FCOR2390
04116 0441 00 1 00003 LDI URCODE,1 PICK UP USER RESTRICTION CODE FCOR2391
04117 0446 60 4 00002 ONT* 2,4 IS USER PRIVELEGED TO USE THIS ENTRY FCOR2392
04120 0020 00 0 04130 TRA SAVER2 NO, ERROR FCOR2393
04121 -0520 60 4 00003 NZT* 3,4 YES, DOES USER NEED TO BE SIGNED ON FCOR2394
04122 0020 00 0 04125 TRA SAVE7 NO, SKIP FCOR2395
04123 -0520 00 1 00000 NZT PROBNO,1 YES, INSURE USER IS SIGNED ON FCOR2396
04124 0020 00 0 04130 TRA SAVER2 ERROR IF USER NOT SIGNED ON FCOR2397
04125 -0534 00 4 05523 SAVE7 LXD TMPIR4,4 RELOAD IR4 SAVED AT END OF SAVE CALL FCOR2398
04126 0020 00 4 00004 TRA 4,4 AND RETURN FCOR2399
FCOR2400
04127 SAVER1 ERROR 1 SAVE ERROR(1), BAD CALLING SEQUENCE FCOR2401
FCOR2402
04130 SAVER2 ERROR 2 SAVE ERROR(2), ILLEGAL USE OF CALL FCOR2403
FCOR2404
CHKPAR ...... DETERMINE IF WORD IN AC IS A PARAMETER FCOR2405
............. USED BY SAVE AND SSAVE ONLY .......... FCOR2406
FCOR2407
04131 0044 00 0 00000 CHKPAR PAI SAVE WORD IN SI FCOR2408
04132 -0320 00 0 06311 ANA =O600000700000 REMOVE ALL BUT PREFIX AND TAG FCOR2409
04133 0322 00 0 06252 ERA =O200000000000 CHECK FOR TIX OR TXH WITH NO TAG FCOR2410
04134 -0100 00 4 00001 TNZ 1,4 RETURN 1,4 IF WORD NOT A PARAMETER FCOR2411
04135 -0046 00 0 00000 PIA OTHERWISE RESTORE PARAMETER TO AC FCOR2412
04136 0020 00 4 00002 TRA 2,4 AND RETURN 2,4 FCOR2413
FCOR2414
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 64
FCOR2416
RETURN .......... NORMAL RETURN TO USER AT RTNILC FCOR2417
FCOR2418
04137 0074 00 4 04156 RETURN TSX RESTOR,4 HERE FOR NORMAL RETURN TO USER FCOR2419
04140 EXIT IR4,RTNILC RETURN THROUGH COMMON EXIT ROUTINE FCOR2420
FCOR2421
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2422
FCOR2423
QWAIT ......... HERE IF USER INPUT/OUTPUT ROADBLOCKED FCOR2424
FCOR2425
04143 0074 00 4 04156 QWAIT TSX RESTOR,4 RESTORE USER'S MACHINE STATUS FCOR2426
04144 SSTRAP 6,IR4,ILC,0,0 INTERRUPT SUPERVISORY SYSTEM FCOR2427
04152 0564 60 0 05452 ENB* ENABLE REENABLE AFTER SIMULATED TRAP FCOR2428
04153 EXIT IR4,ILC EXIT TO USER AT 0,4 FCOR2429
FCOR2430
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2431
FCOR2432
RESTOR ..... RESTORE USER MACHINE CONDITIONS FCOR2433
FCOR2434
04156 0534 00 1 05516 RESTOR LXA SVIR12,1 RELOAD USER'S IRS 1-3 FCOR2435
04157 -0534 00 2 05516 LXD SVIR12,2 .. FCOR2436
04160 0534 00 3 05517 LXA SVIR35,3 .. FCOR2437
04161 -0534 00 5 05517 LXD SVIR35,5 .. FCOR2438
04162 0534 00 6 05520 LXA SVIR67,6 .. FCOR2439
04163 -0534 00 7 05520 LXD SVIR67,7 .. FCOR2440
04164 0441 00 0 05521 LDI SVSI AND SI FCOR2441
04165 0020 00 4 00001 TRA 1,4 FCOR2442
FCOR2443
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2444
FCOR2445
SETEOF ...... SET RETURN ON EOF FROM READ OR WRITE FCOR2446
FCOR2447
04166 0602 00 0 05475 SETEOF SLW TEMP SAVE EOF COUNT FCOR2448
04167 0500 00 0 05465 CLA P5 EOF RETURN IF SPECIFIED FCOR2449
04170 -0120 00 0 04172 TMI *+2 SKIP IF NOT SPECIFIED FCOR2450
04171 0621 00 0 05513 STA RTNILC OTHERWISE SET UP EOF RETURN FCOR2451
04172 0500 00 0 05466 CLA P6 'EOFCT' IF SPECIFIED FCOR2452
04173 -0120 00 4 00001 TMI 1,4 RETURN IF EOFCT NOT SPECIFIED FCOR2453
04174 0634 00 3 05527 SXA SEOF34,3 FCOR2454
04175 -0634 00 4 05527 SXD SEOF34,4 FCOR2455
04176 0535 00 3 05466 LAC P6,3 RETURN EOF COUNT TO USER FCOR2456
04177 MOVE1 HOME,TEMP,CALL,(0,3),STEOF1 .. FCOR2457
04205 0534 00 3 05527 STEOF1 LXA SEOF34,3 AND RETURN FCOR2458
04206 -0534 00 4 05527 LXD SEOF34,4 .. FCOR2459
04207 0020 00 4 00001 TRA 1,4 .. FCOR2460
FCOR2461
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 65
FCOR2463
SSTRAP ....... ROUTINE TO INTERRUPT SUPERVISORY SYSTEM ..FCOR2464
FCOR2465
04210 0564 00 0 06217 SSTRAP ENB =0 INSURE ALL TRAPS DISABLED FCOR2466
04211 0021 60 0 05446 TTR* SSCALL AND CALL SUPERVISOR INTERRUPT PROCEDURE FCOR2467
FCOR2468
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2469
FCOR2470
ERROR/IOERR ....... STANDARD ERROR ROUTINES ....... FCOR2471
FCOR2472
04212 -0500 00 0 06217 ERROR CAL =0 HERE FOR NORMAL ERROR RESET I/O CODE FCOR2473
04213 0020 00 0 04220 TRA ERROR1 .. FCOR2474
FCOR2475
04214 -0500 00 2 00023 IOERR CAL EFLAG,2 HERE FOR I/O ERROR SET I/O ERROR CODE FCOR2476
04215 0771 00 0 00017 ARS 15 .. FROM TAG OF EFLAG,2 FCOR2477
04216 -0320 00 0 06226 ANA =O7 .. MODULO 2.P.3 FCOR2478
04217 0625 00 2 00023 STT EFLAG,2 .. RESET ERROR CONDITION FCOR2479
FCOR2480
04220 0535 00 1 05436 ERROR1 LAC UTABLE,1 INSURE -BASE OF USER TABLE IN IR1 FCOR2481
04221 0602 00 1 00012 SLW IOCODE,1 SAVE INPUT/OUTPUT ERROR CODE IF ANY FCOR2482
04222 -0500 00 0 05512 CAL ILC SAVE USER ILC AT TIME OF CALL FCOR2483
04223 0602 00 1 00007 SLW ERRILC,1 .. FCOR2484
04224 -0500 00 0 05453 CAL IOCALL SAVE NAME OF ENTRY CALLED FCOR2485
04225 0602 00 1 00010 SLW ERNAME,1 .. FCOR2486
04226 0756 00 4 00000 PCA 0,4 SAVE LOCATION OF CALL TO ERROR (XEC ERR'N')FCOR2487
04227 0602 00 1 00015 SLW ERCALL,1 .. FCOR2488
04230 -0500 00 4 00000 CAL 0,4 PICK UP 'XEC' INSTRUCTION FCOR2489
04231 0737 00 4 00000 PAC 0,4 -ADDRESS OF TSX TO IR4 FCOR2490
04232 -0500 00 4 00001 CAL 1,4 PICK UP ERROR CODE FCOR2491
04233 -0320 00 0 06237 ANA =O77777 .. MODULO 2.P.15 FCOR2492
04234 0602 00 1 00011 SLW ERCODE,1 .. SAVE IT FCOR2493
04235 -0500 00 0 05454 CAL FILNAM SAVE FILE NAME IF ANY FCOR2494
04236 0602 00 1 00013 SLW ENAME1,1 .. FCOR2495
04237 -0500 00 0 05455 CAL FILNAM+1 .. FCOR2496
04240 0602 00 1 00014 SLW ENAME2,1 .. FCOR2497
04241 0500 00 0 05473 CLA ERWORD GET LOCATION OF ERROR WORD IF PROVIDED FCOR2498
04242 -0120 00 0 04252 TMI ERROR2 SKIP IF NOT SPECIFIED FCOR2499
04243 0737 00 2 00000 PAC 0,2 -ADDRESS TO IR2 FCOR2500
04244 MOVE1 HOME,(ERCODE,1),GTCALL,(0,2),*+1 MOVE ERROR CODE TO USERFCOR2501
04252 0074 00 4 04156 ERROR2 TSX RESTOR,4 RESTORE USER'S MACHINE STATUS FCOR2502
04253 EXIT IR4,ERRTRN AND TAKE ERROR EXIT FCOR2503
FCOR2504
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 66
FCOR2506
GTDYTM ..... CONVERT DATE AND TIME TO I/O SYSTEM FORMAT FCOR2507
FCOR2508
04256 0634 00 4 05530 GTDYTM SXA GETMX4,4 FCOR2509
04257 -0500 60 0 05450 CAL* DATLOC GET CURRENT 'MMDDYY' FCOR2510
04260 -0320 00 0 06251 ANA =O171717171717 MASK TO INSURE DIGITS ONLY FCOR2511
04261 -0130 00 0 00000 XCL REMOVE FROM MQ 2 CHARS. EACH TIME FCOR2512
04262 0074 00 4 04305 TSX BCBN2,4 CONVERT FIRST TWO CHARS FCOR2513
04263 -0320 00 0 06230 ANA =O17 MONTH IN BINARY (4 BITS) FCOR2514
04264 0767 00 0 00027 ALS 18+5 SHIFT MONTH TO DECR., SAVE ROOM FOR DAY FCOR2515
04265 0602 00 0 05532 SLW DATE .. FCOR2516
04266 0074 00 4 04305 TSX BCBN2,4 NOW CONVERT DD FCOR2517
04267 -0320 00 0 06232 ANA =O37 DAY IN BINARY (5 BITS) FCOR2518
04270 0767 00 0 00022 ALS 18 DAY TO DECREMENT FCOR2519
04271 -0602 00 0 05532 ORS DATE ADD DAY TO MONTH FCOR2520
04272 0074 00 4 04305 TSX BCBN2,4 FINALLY, YY FCOR2521
04273 -0320 00 0 06236 ANA =O777 YEAR IN BINARY (9 BITS) FCOR2522
04274 0767 00 0 00033 ALS 18+9 SHIFT TO POSITION FCOR2523
04275 -0602 00 0 05532 ORS DATE DATE= YEAR(9BITS), MONTH(4BITS), DAY(5BITS)FCOR2524
04276 0560 60 0 05451 LDQ* TIMLOC PICK UP TIME OF DAY IN 60THS OF A SECOND FCOR2525
04277 -0754 00 0 00000 ZAC INSURE AC ZERO FCOR2526
04300 0221 00 0 06235 DVP =60 GET TIME IN SECONDS FCOR2527
04301 -0130 00 0 00000 XCL .. TIME TO AC FCOR2528
04302 -0501 00 0 05532 ORA DATE YEAR, MONTH, DAY, TIME IN LOGICAL AC FCOR2529
04303 0534 00 4 05530 LXA GETMX4,4 RETURN TO CALLER FCOR2530
04304 0020 00 4 00001 TRA 1,4 .. FCOR2531
FCOR2532
04305 -0754 00 0 00000 BCBN2 ZAC CONVERT TWO BCD CHARS FROM MQ FCOR2533
04306 -0763 00 0 00006 LGL 6 GUARANTEED NO ZONE BITS FCOR2534
04307 0602 00 0 05602 SLW TNUM CALLED ONLY FROM 'GTDYTM' FCOR2535
04310 -0754 00 0 00000 ZAC CLEAR AC FOR 2ND CHAR. FCOR2536
04311 -0763 00 0 00003 LGL 3 .. FCOR2537
04312 0401 00 0 05602 ADM TNUM .. FCOR2538
04313 -0763 00 0 00003 LGL 3 .. FCOR2539
04314 0401 00 0 05602 ADM TNUM .. FCOR2540
04315 0361 00 0 05602 ACL TNUM .. FCOR2541
04316 0020 00 4 00001 TRA 1,4 FINIS FCOR2542
FCOR2543
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2544
FCOR2545
GETDAY ..... PICK UP DATE IN BCD, RETURN IN AC ...... FCOR2546
FCOR2547
04317 -0500 60 0 05450 GETDAY CAL* DATLOC DATE TO LOGICAL AC FCOR2548
04320 0560 60 0 05451 LDQ* TIMLOC TIME IN 60THS TO MQ FCOR2549
04321 0020 00 4 00001 TRA 1,4 RETURN FCOR2550
FCOR2551
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 67
FCOR2553
CKLINK ....... ROUTINE TO CHECK AND FIND LINKED FILE FCOR2554
FCOR2555
04322 0441 00 2 00013 CKLINK LDI MODE,2 SET MODE AS RMODE FCOR2556
04323 0445 00 0 06245 RIS =O1777777777 .. RESETING ALL BUT MODE BITS FCOR2557
04324 0604 00 2 00004 STI RMODE,2 .. FCOR2558
04325 -0500 00 2 00013 CAL F,2 CHECK FOR 'LINKED' FILE FCOR2559
04326 -0320 00 0 06240 ANA =O700000 .. FCOR2560
04327 -0100 00 4 00002 TNZ 2,4 IGNORE IF NORMAL FILE FCOR2561
04330 -0055 00 001000 SIL 001000 SET LINK BIT IN RMODE FCOR2562
04331 0604 00 2 00004 STI RMODE,2 .. FCOR2563
04332 0634 00 3 05533 SXA CKLX34,3 HERE IF FILE IS A 'LINKED' FILE FCOR2564
04333 -0634 00 4 05533 SXD CKLX34,4 FCOR2565
04334 0774 00 3 00002 AXT LDEPTH,3 MAXIMUM DEPTH FOR 'LINKED' FILES FCOR2566
04335 CKLNK1 CHKUFD (LPROBN,2),CKLNK3 SEE IF UFD EXISTS FCOR2567
04342 SEARCH (LPROBN,2),(LNAME1,2),CKLERR UFD EXISTS, DOES FILE EXIST FCOR2568
04347 -0500 00 2 00013 CAL MODE,2 PICK UP MODE OF THIS FILE FCOR2569
04350 -0320 00 0 06331 ANA =O776000000000 MASK AWAY ALL BUT MODE BITS FCOR2570
04351 -0602 00 2 00004 ORS RMODE,2 AND ADD TO EFFECTIVE FILE MODE FCOR2571
04352 -0500 00 2 00013 CAL F,2 CHECK FOR FURTHER LINKING FCOR2572
04353 -0320 00 0 06240 ANA =O700000 .. FCOR2573
04354 -0100 00 0 04366 TNZ CKLNK2 SKIP WHEN NORMAL FILE FOUND FCOR2574
04355 2 00001 3 04335 TIX CKLNK1,3,1 OTHERWISE TRY TO LINK AGAIN FCOR2575
04356 -0534 00 4 05533 CKLNK3 LXD CKLX34,4 HERE FOR TARGET U.F.D. NOT FOUND FCOR2576
04357 0534 00 3 05533 LXA CKLX34,3 OR LINK DEPTH EXCEEDED FCOR2577
04360 -0500 00 4 00001 CAL 1,4 PICK UP PARAMETERS FCOR2578
04361 -0737 00 7 00000 PDC ,7 ERROR RETURN FCOR2579
04362 0020 00 7 00000 TRA 0,7 LINKAGE DEPTH EXCEEDED FCOR2580
FCOR2581
04363 -0534 00 4 05533 CKLERR LXD CKLX34,4 HERE IF 'LINKED' FILE NOT FOUND FCOR2582
04364 0534 00 3 05533 LXA CKLX34,3 .. TAKE ERROR RETURN FCOR2583
04365 0020 60 4 00001 TRA* 1,4 .. FCOR2584
FCOR2585
04366 -0534 00 4 05533 CKLNK2 LXD CKLX34,4 HERE ON COMPLETED LINK FCOR2586
04367 0534 00 3 05533 LXA CKLX34,3 .. RETURN FCOR2587
04370 0020 00 4 00002 TRA 2,4 .. FCOR2588
FCOR2589
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 68
FCOR2591
STAFIL ...... ENTER ACTIVE FILE FOR SLOT '0' FCOR2592
FCOR2593
04371 0634 00 4 05545 STAFIL SXA STAFLX,4 FCOR2594
04372 0074 00 4 04426 TSX CSTAT0,4 FIND ROOM FOR ENTRY FCOR2595
04373 3 00000 0 04424 PAR STAERR .. ERROR, NO ROOM IN A.F.S.T. FCOR2596
04374 0602 00 0 05546 SLW STATMP SAVE BASE ADDRESS OF SLOT IN A.F.S.T. FCOR2597
04375 0737 00 7 00000 PAC 0,7 -BASE OF ENTRY TO IR7 FCOR2598
04376 0534 00 4 05545 LXA STAFLX,4 RELOAD CALLER'S IR4 FCOR2599
04377 -0500 00 4 00001 CAL 1,4 GET POINTER TO FILE ENTRY FCOR2600
04400 0074 00 4 05355 TSX GETEFA,4 COMPUTE EFFECTIVE ADDRESS FCOR2601
04401 0737 00 6 00000 PAC 0,6 -BASE OF FILE ENTRY TO IR6 FCOR2602
04402 0774 00 5 00011 AXT 9,5 FCOR2603
04403 -0500 00 6 00000 STAFL1 CAL 0,6 MOVE FILE ENTRY TO A.F.S.T. FCOR2604
04404 0602 00 7 00005 SLW FPROBN,7 .. FCOR2605
04405 -2 00001 5 04410 TNX STAFL2,5,1 .. FCOR2606
04406 1 77777 6 04407 TXI *+1,6,-1 .. FCOR2607
04407 1 77777 7 04403 TXI STAFL1,7,-1 .. FCOR2608
04410 0535 00 5 05546 STAFL2 LAC STATMP,5 FILL IN RPROBN-RPROGN AND RNAME1-RNAME2 FCOR2609
04411 0500 00 5 00005 CLA FPROBN,5 .. FCOR2610
04412 0560 00 5 00006 LDQ FPROGN,5 .. FCOR2611
04413 -0603 00 5 00000 DST RPROBN,5 .. FCOR2612
04414 0500 00 5 00007 CLA FNAME1,5 .. FCOR2613
04415 0560 00 5 00010 LDQ FNAME2,5 .. FCOR2614
04416 -0603 00 5 00002 DST RNAME1,5 .. FCOR2615
04417 -0500 00 5 00013 CAL MODE,5 SET UP RMODE TO BE SAME AS MODE FCOR2616
04420 0602 00 5 00004 SLW RMODE,5 .. FCOR2617
04421 0534 00 4 05545 LXA STAFLX,4 AND RETURN TO CALLER FCOR2618
04422 -0500 00 0 05546 CAL STATMP .. WITH BASE OF ENTRY IN A.F.S.T. IN AC FCOR2619
04423 0020 00 4 00003 TRA 3,4 .. FCOR2620
FCOR2621
04424 0534 00 4 05545 STAERR LXA STAFLX,4 HERE IF NO ROOM IN A.F.S.T. FCOR2622
04425 0020 60 4 00002 TRA* 2,4 TAKE ERROR RETURN FCOR2623
FCOR2624
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 69
FCOR2626
CKSTAT/CSTAT0 ...... FIND ROOM FOR NEW ENTRY IN A.F.S.T. FCOR2627
FCOR2628
04426 0535 00 5 05437 CSTAT0 LAC USRTBL,5 -POINTER TO A.F.S.T. FOR SLOT '0' FCOR2629
04427 -0534 00 6 05437 LXD USRTBL,6 NO. OF WORDS IN A.F.S.T. FCOR2630
04430 1 77753 5 04434 TXI CSTAT1,5,-AFENTY POINT TO FIRST ACTIVE FILE ENTRY FCOR2631
FCOR2632
04431 0535 00 5 05436 CKSTAT LAC UTABLE,5 -POINTER TO A.F.S.T. FOR CURRENT USER FCOR2633
04432 -0534 00 6 05436 LXD UTABLE,6 NO. OF WORDS IN A.F.S.T. FCOR2634
04433 1 77753 5 04434 TXI CSTAT1,5,-AFENTY POINT TO FIRST ACTIVE FILE ENTRY FCOR2635
FCOR2636
04434 -2 00024 6 04443 CSTAT1 TNX CKSERR,6,AFENTY-1 GET LENGTH DEVOTED TO ACTIVE FILES FCOR2637
04435 -2 00026 6 04443 CKST1 TNX CKSERR,6,ACTLNG INSURE ENOUGH ROOM FCOR2638
04436 -0520 00 5 00000 NZT RPROBN,5 FIND EMPTY SLOT IF ANY FCOR2639
04437 0020 00 0 04441 TRA CKST2 .. SKIP WHEN FOUND FCOR2640
04440 1 77752 5 04435 TXI CKST1,5,-ACTLNG KEEP LOOKING FCOR2641
FCOR2642
04441 0756 00 5 00000 CKST2 PCA 0,5 RETURN POINTER TO EMPTY SLOT IN AC FCOR2643
04442 0020 00 4 00002 TRA 2,4 AND EXIT FCOR2644
FCOR2645
04443 0020 60 4 00001 CKSERR TRA* 1,4 ERROR RETURN IF NO ROOM IN A.F.S.T. FCOR2646
FCOR2647
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2648
FCOR2649
GTSTAT/GTAFIL ..... FIND ACTIVE FILE IN A.F.S.T. FCOR2650
FCOR2651
04444 0535 00 6 05437 GTAFIL LAC USRTBL,6 -POINTER TO A.F.S.T. FOR SLOT '0' FCOR2652
04445 -0534 00 7 05437 LXD USRTBL,7 NO. OF WORDS IN A.F.S.T. FCOR2653
04446 1 77753 6 04452 TXI GSTAT1,6,-AFENTY POINT TO FIRST ACTIVE FILE ENTRY FCOR2654
FCOR2655
04447 0535 00 6 05436 GTSTAT LAC UTABLE,6 -POINTER TO A.F.S.T. FOR CURRENT USER FCOR2656
04450 -0534 00 7 05436 LXD UTABLE,7 NO. OF WORDS IN A.F.S.T. FCOR2657
04451 1 77753 6 04452 TXI GSTAT1,6,-AFENTY POINT TO FIRST ACTIVE FILE ENTRY FCOR2658
FCOR2659
04452 0634 00 4 05547 GSTAT1 SXA GTSIR4,4 FCOR2660
04453 -0500 00 4 00001 CAL 1,4 POINTER TO FILE NAME FCOR2661
04454 0074 00 4 05355 TSX GETEFA,4 GET EFFECTIVE ADDRESS FCOR2662
04455 0737 00 5 00000 PAC 0,5 -LOCATION OF FILE NAME TO IR5 FCOR2663
04456 0534 00 4 05547 LXA GTSIR4,4 RELOAD IR4 FCOR2664
04457 -2 00025 7 04520 TNX GTSERR,7,AFENTY GET LENGTH DEVOTED TO ACTIVE FILES FCOR2665
04460 -0500 00 5 00000 CAL 0,5 FILE NAME(1) TO AC FCOR2666
04461 0560 00 5 00001 LDQ 1,5 FILE NAME(2) TO MQ FCOR2667
04462 -0340 00 0 06124 LAS NULPAR IS FILE NAME(1) NULL FCOR2668
04463 0020 00 0 04465 TRA *+2 NO, SKIP FCOR2669
04464 0020 00 0 04502 TRA GTANY YES, GO TO FIND ANY ACTIVE FILE ENTRY FCOR2670
04465 -0520 00 6 00000 GTST1 NZT RPROBN,6 NO, TRY TO FIND SPECIFIED FILE IN A.F.S.T. FCOR2671
04466 0020 00 0 04500 TRA GTST3 .. SKIP NULL ENTRY (FPROBN .E. 0) FCOR2672
04467 -0340 00 6 00002 LAS RNAME1,6 .. LOOK FOR FILE NAME(1) FCOR2673
04470 0020 00 0 04500 TRA GTST3 .. FCOR2674
04471 0020 00 0 04473 TRA *+2 .. FILE NAME(1) FOUND FCOR2675
04472 0020 00 0 04500 TRA GTST3 .. FCOR2676
04473 -0130 00 0 00000 XCL .. HERE IF FILE NAME(1) FOUND FCOR2677
04474 -0340 00 6 00003 LAS RNAME2,6 .. LOOK FOR FILE NAME(2) FCOR2678
04475 0020 00 0 04477 TRA GTST2 .. FCOR2679
04476 0020 00 0 04516 TRA GTFND .. FILE FOUND, GO PICK UP INDEX IN A.F.S.T.FCOR2680
04477 -0130 00 0 00000 GTST2 XCL .. RETURN FILE NAME(1) TO AC FCOR2681
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 70
04500 -2 00026 7 04520 GTST3 TNX GTSERR,7,ACTLNG CHECK FOR END OF TABLE FCOR2682
04501 1 77752 6 04465 TXI GTST1,6,-ACTLNG KEEP LOOKING FCOR2683
FCOR2684
04502 -0130 00 0 00000 GTANY XCL HERE TO PICK UP ANY ACTIVE FILE ENTRY FCOR2685
04503 0100 00 0 04507 GTSTA1 TZE GTSTA2 FIND POINTER OF LAST ENTRY RETURNED (+1) FCOR2686
04504 -2 00026 7 04520 TNX GTSERR,7,ACTLNG .. CHECK TO END OF TABLE FCOR2687
04505 0402 00 0 06220 SUB =1 .. FCOR2688
04506 1 77752 6 04503 TXI GTSTA1,6,-ACTLNG .. FCOR2689
FCOR2690
04507 -0500 00 5 00001 GTSTA2 CAL 1,5 FIND ANY ACTIVE FILE ENTRY FCOR2691
04510 0400 00 0 06220 ADD =1 .. FCOR2692
04511 0602 00 5 00001 SLW 1,5 .. FCOR2693
04512 0520 00 6 00000 ZET RPROBN,6 .. FCOR2694
04513 0020 00 0 04516 TRA GTFND .. FILE FOUND, GO PICK UP INDEX IN A.F.S.T.FCOR2695
04514 -2 00026 7 04520 TNX GTSERR,7,ACTLNG .. CHECK FOR END OF TABLE FCOR2696
04515 1 77752 6 04507 TXI GTSTA2,6,-ACTLNG .. KEEP LOOKING FCOR2697
FCOR2698
04516 0756 00 6 00000 GTFND PCA 0,6 SET UP POINTER TO ENTRY IN AC FCOR2699
04517 0020 00 4 00002 TRA 2,4 .. AND RETURN FCOR2700
FCOR2701
04520 -0500 00 4 00001 GTSERR CAL 1,4 HERE IF NO ENTRY FOUND FCOR2702
04521 -0737 00 5 00000 PDC 0,5 TAKE ERROR RETURN FCOR2703
04522 0020 00 5 00000 TRA 0,5 .. FCOR2704
FCOR2705
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 71
FCOR2707
CHKACT ..... CHECK IF FILE IS ALREADY ACTIVE ......... FCOR2708
FCOR2709
04523 0535 00 6 05436 CHKACT LAC UTABLE,6 -POINTER TO ACTIVE FILE STATUS TABLE FCOR2710
04524 -0534 00 7 05436 LXD UTABLE,7 LENGTH OF A.F.S.T. FCOR2711
04525 1 77753 6 04526 TXI *+1,6,-AFENTY POINT TO FIRST ACTIVE FILE ENTRY FCOR2712
04526 -2 00025 7 04553 TNX CKACTX,7,AFENTY GET LENGTH DEVOTED TO ACTIVE FILES FCOR2713
04527 0636 00 2 05550 SCA CKACTP,2 SAVE BASE OF TEST ENTRY FCOR2714
04530 -0520 00 6 00000 CKACT1 NZT RPROBN,6 IS THIS ENTRY OCCUPIED FCOR2715
04531 0020 00 0 04551 TRA CKACT2 NO, SKIP FCOR2716
04532 0756 00 6 00000 PCA 0,6 IS THIS ENTRY THE SAME AS THE TEST ENTRY FCOR2717
04533 0402 00 0 05550 SUB CKACTP .. FCOR2718
04534 0100 00 0 04551 TZE CKACT2 AVOID CHECKING ENTRY AGAINST ITSELF FCOR2719
04535 -0500 00 6 00005 CAL FPROBN,6 CHECK FOR DUPLICATED FILE ENTRY FCOR2720
04536 0322 00 2 00005 ERA FPROBN,2 .. FCOR2721
04537 -0100 00 0 04551 TNZ CKACT2 .. FCOR2722
04540 -0500 00 6 00006 CAL FPROGN,6 .. FCOR2723
04541 0322 00 2 00006 ERA FPROGN,2 .. FCOR2724
04542 -0100 00 0 04551 TNZ CKACT2 .. FCOR2725
04543 -0500 00 6 00007 CAL FNAME1,6 .. FCOR2726
04544 0322 00 2 00007 ERA FNAME1,2 .. FCOR2727
04545 -0100 00 0 04551 TNZ CKACT2 .. FCOR2728
04546 -0500 00 6 00010 CAL FNAME2,6 .. FCOR2729
04547 0322 00 2 00010 ERA FNAME2,2 .. FCOR2730
04550 0100 60 4 00001 TZE* 1,4 .. ERROR RETURN IF DUPLICATE ENTRY FOUND FCOR2731
04551 -2 00026 7 04553 CKACT2 TNX CKACTX,7,ACTLNG .. FCOR2732
04552 1 77752 6 04530 TXI CKACT1,6,-ACTLNG .. FCOR2733
FCOR2734
04553 0020 00 4 00002 CKACTX TRA 2,4 HERE FOR NORMAL RETURN FROM CHKACT FCOR2735
FCOR2736
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 72
FCOR2738
RELEAS ...... REMOVE FILE FROM A.F.S.T. .................FCOR2739
FCOR2740
04554 0634 00 4 05551 RELEAS SXA RELIR4,4 FCOR2741
04555 -0500 00 4 00001 CAL 1,4 POINTER TO ACTIVE FILE ENTRY FCOR2742
04556 0074 00 4 05355 TSX GETEFA,4 COMPUTE EFFECTIVE ADDRESS FCOR2743
04557 0737 00 4 00000 PAC 0,4 -LOCATION OF ENTRY TO IR4 FCOR2744
04560 0600 00 4 00000 STZ RPROBN,4 CLEAR ENTRY BY LEAVING RPROBN ZERO FCOR2745
04561 0534 00 4 05551 LXA RELIR4,4 AND RETURN FCOR2746
04562 0020 00 4 00002 TRA 2,4 .. FCOR2747
FCOR2748
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2749
FCOR2750
RTNFIL ...... REMOVE FILE FROM ACTIVE STATUS .......... FCOR2751
FCOR2752
04563 0634 00 4 05552 RTNFIL SXA RTNFX4,4 FCOR2753
04564 -0500 00 2 00013 CAL RCOUNT,2 PICK UP PHYSICAL RECORD SIZE FCOR2754
04565 0734 00 4 00000 PAX 0,4 .. INTO IR4 FCOR2755
04566 3 00000 4 04616 TXH RTNFA,4,0 SKIP IF FILE HAS NOT BEEN 'SCRAPPED' FCOR2756
04567 0441 00 2 00013 LDI MODE,2 HERE FOR SCRAPPED FILE (RCOUNT.E.0) FCOR2757
04570 -0054 00 002000 LFT 002000 WAS IT A TEMPORARY FILE FCOR2758
04571 0020 00 0 04646 TRA RTNDEL YES, IGNORE FILE LENGTH FCOR2759
04572 -0500 00 2 00014 CAL NORECS,2 NO, PICK UP NO. OF RECORDS IN THIS FILE FCOR2760
04573 -0734 00 5 00000 PDX 0,5 .. INTO ADDRESS FCOR2761
04574 0754 00 5 00000 PXA 0,5 .. FCOR2762
04575 0602 00 0 05475 SLW TEMP SAVE NO. OF RECORDS IN THIS FILE FCOR2763
04576 LXTC (F,2),3 -F TO IR3 FCOR2764
04602 GETQU (FPROBN,2) PICK UP RECORD QUOTA,,USED FROM UFD FCOR2765
04606 0074 00 4 05061 TSX SUBREC,4 REDUCE USER RECORDS USED FCOR2766
04607 3 00000 0 05475 PAR TEMP .. BY C(TEMP) FCOR2767
04610 3 00000 0 04611 PAR *+1 .. IGNORE ERROR RETURN FCOR2768
04611 SETQU (FPROBN,2) UPDATE RECORD QUOTA,,USED IN UFD FCOR2769
04615 0020 00 0 04646 TRA RTNDEL AND REMOVE FILE FROM UFD FCOR2770
FCOR2771
04616 0441 00 2 00014 RTNFA LDI RWSTAT,2 PICK UP READ AND/OR WRITE STATUS OF FILE FCOR2772
04617 -0056 00 200000 LNT 200000 WAS FILE IN WRITE STATUS FCOR2773
04620 0020 00 0 04640 TRA RTNRED NO, CLOSE OUT READ FILE FCOR2774
04621 -0057 00 700000 RIL 700000 YES, RESET READ/WRITE FLAGS FCOR2775
04622 0604 00 2 00014 STI RWSTAT,2 .. FCOR2776
04623 0074 00 4 04256 TSX GTDYTM,4 PICK UP CURRENT DATE AND TIME FCOR2777
04624 0630 00 2 00012 STP DATELU,2 SET DATE FILE LAST USED FCOR2778
04625 0622 00 2 00012 STD DATELU,2 .. FCOR2779
04626 0602 00 2 00011 SLW DAYTIM,2 SET NEW DATE/TIME FILE WAS LAST MODIFIED FCOR2780
04627 0441 00 2 00004 LDI RMODE,2 PICK UP EFFECTIVE FILE MODE FCOR2781
04630 -0054 00 200000 LFT 200000 IS FILE IN PROTECTED MODE FCOR2782
04631 0020 00 0 04636 TRA RTNFB YES, SKIP, DO NOT CHANGE 'AUTHOR' FCOR2783
04632 -0500 00 1 00002 CAL AUTHNO,1 NO, GET AUTHOR MODIFYING THIS FILE FCOR2784
04633 0100 00 0 04636 TZE RTNFB SKIP IF NO AUTHOR SPECIFIED FCOR2785
04634 0621 00 2 00012 STA AUTHOR,2 OTHERWISE SET NEW 'AUTHOR' OF FILE FCOR2786
04635 0625 00 2 00012 STT AUTHOR,2 .. FCOR2787
04636 0074 00 4 04761 RTNFB TSX UNLOCK,4 TELL SUPERVISOR FILE NOW AVAILABLE FCOR2788
04637 0020 00 0 04712 TRA UPDUFD SKIP TO UPDATE USER'S FILE DIRECTORY FCOR2789
FCOR2790
04640 -0054 00 400000 RTNRED LFT 400000 HERE FOR READ FILE, HAS FILE BEEN SAVED FCOR2791
04641 0020 00 0 04654 TRA RTNF1 YES, IGNORE TEMPORARY MODE FCOR2792
04642 0441 00 2 00013 LDI MODE,2 NO, PICK UP FILE MODE FCOR2793
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 73
04643 -0056 00 002000 LNT 002000 IS FILE IN TEMPORARY MODE FCOR2794
04644 0020 00 0 04654 TRA RTNF1 NO, SKIP FCOR2795
04645 0074 00 4 05027 TSX DFILE,4 YES, TRY TO DELETE THIS FILE FCOR2796
04646 RTNDEL REMOVE UFD,(FNAME1,2),RTNMER REMOVE THIS FILE FROM UFD FCOR2797
04652 0074 00 4 04761 TSX UNLOCK,4 FREE UP THIS FILE NAME FCOR2798
04653 0020 00 0 04722 TRA UPDDIR SKIP TO UPDATE DIRECTORIES FCOR2799
FCOR2800
04654 0074 00 4 00014 RTNF1 TSX SEARCH,4 FIND FILE ENTRY (NON-STANDARD USAGE) FCOR2801
04655 0761 00 2 00005 EFA FPROBN,2 .. DIRECTORY FCOR2802
04656 0761 00 2 00007 EFA FNAME1,2 .. FILE NAME FCOR2803
04657 0761 00 0 05610 EFA FILTMP+FPROBN .. READ LOCATION FCOR2804
04660 3 00047 0 04736 PAR RTNMER,,UFDERR .. ERROR RETURNS FCOR2805
04661 -0774 00 7 05603 AXC FILTMP,7 FOR FUTURE REFERENCE FCOR2806
04662 0441 00 7 00014 LDI RWSTAT,7 PICK UP FILE STATUS FCOR2807
04663 -0056 00 077777 LNT 077777 TEST FOR NORECS = -1 FCOR2808
04664 0020 00 0 04671 TRA RTNF2 NO, ASSUME INFO. CORRECT FCOR2809
04665 -0500 00 0 06250 CAL =O77777077777 PREPARE TO RESET INDICATORS FCOR2810
04666 -0042 00 0 00000 RIA CLEAR NORECS, LCOUNT FCOR2811
04667 -0320 00 2 00014 ANA NORECS,2 USE NORECS, LCOUNT FROM AFENTY FCOR2812
04670 0043 00 0 00000 OAI AND REPLACE IN PROPER BITS FCOR2813
04671 -0057 00 600000 RTNF2 RIL 600000 RESET ALL BUT READ STATUS FCOR2814
04672 -0500 00 2 00013 CAL ILOCK,2 GET ILOCK BEING RETURNED FCOR2815
04673 -0320 00 0 06332 ANA =O776000777777 LEAVE MODE, F, RCOUNT FCOR2816
04674 0602 00 2 00013 SLW ILOCK,2 RESTORE FCOR2817
04675 -0500 00 7 00013 CAL ILOCK,7 REDUCE NO. OF USERS READING THIS FILE FCOR2818
04676 -0320 00 0 06244 ANA =O777000000 ISOLATE ILOCK FIELD FCOR2819
04677 0100 00 0 04703 TZE RTNF3 IT'S ALREADY ZERO, MAYBE (ULP) FCOR2820
04700 0402 00 0 06242 SUB =1B17 .. FCOR2821
04701 -0602 00 2 00013 ORS ILOCK,2 .. FCOR2822
04702 -0100 00 0 04704 TNZ *+2 SKIP IF USERS STILL READING THIS FILE FCOR2823
04703 -0057 00 100000 RTNF3 RIL 100000 OTHERWISE RESET FILE READ STATUS FCOR2824
04704 0604 00 2 00014 STI RWSTAT,2 RESET READ/WRITE STATUS FCOR2825
04705 -0056 00 100000 LNT 100000 IS FILE NOW AVAILABLE FCOR2826
04706 0074 00 4 04761 TSX UNLOCK,4 IF SO TELL SUPERVISOR ABOUT IT FCOR2827
04707 0074 00 4 04256 TSX GTDYTM,4 PICK UP DATE/TIME FCOR2828
04710 -0130 00 0 00000 XCL .. SET NEW DATE LAST USED FCOR2829
04711 -0620 00 2 00012 SLQ DATELU,2 .. FOR THIS FILE FCOR2830
FCOR2831
04712 0074 00 4 05043 UPDUFD TSX REFMFD,4 CHECK TO SEE WHETHER CLOSING READER'S UFD FCOR2832
04713 0761 00 2 00005 EFA FPROBN,2 .. FCOR2833
04714 0520 00 0 05435 ZET FS.TST WATCH OUT FOR MACRO BELOW FCOR2834
04715 UPDFIL UFD,(FNAME1,2),RTNMER UPDATE THIS USER FILE ENTRY FCOR2835
FCOR2836
04722 -0500 00 2 00005 UPDDIR CAL FPROBN,2 IS THIS FILE FROM CURRENT USER'S UFD FCOR2837
04723 0322 00 1 00000 ERA PROBNO,1 .. FCOR2838
04724 -0100 00 0 04730 TNZ RWTUFD NO, GO REWRITE THIS FILE DIRECTORY FCOR2839
04725 -0500 00 2 00006 CAL FPROGN,2 .. FCOR2840
04726 0322 00 1 00001 ERA PROGNO,1 .. FCOR2841
04727 0100 00 0 04733 TZE RTNFND YES, SKIP FCOR2842
04730 RWTUFD REWRIT (FPROBN,2),RTNMER NO, REWRITE THIS UFD FCOR2843
FCOR2844
04733 RTNFND RELEAS (RPROBN,2) RELEASE THIS FILE FROM ACTIVE STATUS FCOR2845
04734 0534 00 4 05552 LXA RTNFX4,4 AND RETURN FCOR2846
04735 0020 00 4 00001 TRA 1,4 .. FCOR2847
FCOR2848
04736 RTNMER RELEAS (RPROBN,2) HERE FOR ERROR IN UPDFIL, REMOVE OR REWRIT FCOR2849
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 74
04737 0534 00 4 05552 LXA RTNFX4,4 TAKE ERROR RETURN FCOR2850
04740 0020 60 4 00001 TRA* 1,4 .. FCOR2851
FCOR2852
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 75
FCOR2854
LOCK ..... INTERRUPT SUPERVISOR ON FILE INTERLOCK FCOR2855
FCOR2856
04741 0074 00 7 05423 LOCK TSX IRSAV,7 SAVE IRS 1-4 FCOR2857
04742 -0500 00 2 00005 CAL FPROBN,2 COMPUTE CHECKSUM OF FILE NAMES FCOR2858
04743 0361 00 2 00006 ACL FPROGN,2 .. FCOR2859
04744 0361 00 2 00007 ACL FNAME1,2 .. FCOR2860
04745 0361 00 2 00010 ACL FNAME2,2 .. FCOR2861
04746 0602 00 0 05553 SLW NAMSUM .. FCOR2862
04747 0074 00 4 04156 TSX RESTOR,4 RESTORE USER'S MACHINE CONDITIONS FCOR2863
04750 SSTRAP 4,IR4,ILC,NAMSUM,1 INTERRUPT SUPERVISOR (CODE 4) FCOR2864
04756 0564 60 0 05452 ENB* ENABLE REENABLE AFTER SIMULATED TRAP FCOR2865
04757 0074 00 7 05430 TSX IRRST,7 RESTORE IRS 1-4 FCOR2866
04760 0020 00 4 00001 TRA 1,4 AND RETURN FCOR2867
FCOR2868
UNLOCK ..... INTERRUPT SUPERVISOR WHEN FILE AVAILABLE FCOR2869
FCOR2870
04761 0074 00 7 05423 UNLOCK TSX IRSAV,7 SAVE IRS 1-4 FCOR2871
04762 0441 00 2 00013 LDI ILOCK,2 RESET INTERLOCK FLAGS FCOR2872
04763 -0057 00 001777 RIL 001777 .. FCOR2873
04764 0604 00 2 00013 STI ILOCK,2 .. FCOR2874
04765 -0500 00 2 00005 CAL FPROBN,2 COMPUTE CHECKSUM OF FILE NAMES FCOR2875
04766 0361 00 2 00006 ACL FPROGN,2 .. FCOR2876
04767 0361 00 2 00007 ACL FNAME1,2 .. FCOR2877
04770 0361 00 2 00010 ACL FNAME2,2 .. FCOR2878
04771 0602 00 0 05553 SLW NAMSUM .. FCOR2879
04772 0074 00 4 04156 TSX RESTOR,4 RESTORE USER'S MACHINE CONDITIONS FCOR2880
04773 SSTRAP 5,IR4,ILC,NAMSUM,1 INTERRUPT SUPERVISOR (CODE 5) FCOR2881
05001 0564 60 0 05452 ENB* ENABLE REENABLE AFTER SIMULATED TRAP FCOR2882
05002 0074 00 7 05430 TSX IRRST,7 RESTORE IRS 1-4 FCOR2883
05003 0020 00 4 00001 TRA 1,4 AND RETURN FCOR2884
FCOR2885
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 76
FCOR2887
UPDSYS ..... UPDATE ALL SYSTEM INFORMATION TO PERMANENT FCOR2888
..... SECONDARY STORAGE. FCOR2889
FCOR2890
05004 0634 00 3 05554 UPDSYS SXA UPDX34,3 FCOR2891
05005 -0634 00 4 05554 SXD UPDX34,4 FCOR2892
05006 -0774 00 3 00001 AXC 1,3 FCOR2893
05007 0522 00 3 00064 UPDS1 XEC UPDMOD,3 UPDATE ALL NECESSARY MODULES FCOR2894
05010 -3 77776 3 05012 TXL *+2,3,-NUPDAT .. FCOR2895
05011 1 77777 3 05007 TXI UPDS1,3,-1 .. FCOR2896
05012 0534 00 3 05554 LXA UPDX34,3 RELOAD IR3 NOW FCOR2897
05013 -0520 00 1 00000 NZT PROBNO,1 IS USER ATTACH TO A U.F.D. FCOR2898
05014 0020 00 0 05020 TRA UPDS2 NO, SKIP FCOR2899
05015 REWRIT UFD,UPDSER YES, UPDATE USER FILE DIRECTORY FCOR2900
05020 UPDS2 REWRIT MFD,UPDSER ALWAYS UPDATE MASTER FILE DIRECTORY FCOR2901
05023 -0534 00 4 05554 LXD UPDX34,4 RETURN TO CALLER FCOR2902
05024 0020 00 4 00002 TRA 2,4 .. FCOR2903
FCOR2904
05025 -0534 00 4 05554 UPDSER LXD UPDX34,4 HERE IF ERROR REWRITING UFD OR MFD FCOR2905
05026 0020 60 4 00001 TRA* 1,4 .. TAKE ERROR RETURN FCOR2906
FCOR2907
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2908
FCOR2909
DFILE ...... TRY TO DELETE FILE THROUGH STRATEGY MODULE FCOR2910
FCOR2911
05027 0634 00 4 05555 DFILE SXA DFILX4,4 FCOR2912
05030 -0500 00 2 00014 CAL NORECS,2 PICK UP NO. OF RECORDS IN FILE FCOR2913
05031 0622 00 0 05556 STD DELREC .. SET TO DELETE RECORDS 1-NORECS FCOR2914
05032 LXTC (F,2),5 -DEVICE NO. TO IR5 FCOR2915
05036 0522 00 5 00050 XEC DFILEF,5 TRY TO DELETE THIS FILE FCOR2916
05037 0761 00 2 00000 EFA 0,2 .. FCOR2917
05040 3 04143 0 05556 PAR DELREC,,QWAIT .. FCOR2918
05041 0534 00 4 05555 LXA DFILX4,4 RETURN ON SUCESSFUL DELETE FCOR2919
05042 0020 00 4 00001 TRA 1,4 .. FCOR2920
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 77
REFMFD ..... CHECK AGAINST ATTEMPTS TO MODIFY M.F.D. FCOR2922
FCOR2923
05043 0634 00 4 05562 REFMFD SXA REFTMP,4 SAVE X4 FCOR2924
05044 -0500 00 4 00001 CAL 1,4 GET POINTER FCOR2925
05045 0074 00 4 05355 TSX GETEFA,4 .. FCOR2926
05046 0534 00 4 05562 LXA REFTMP,4 RELOAD FCOR2927
05047 0737 00 7 00000 PAC ,7 TO TEMPORARY INDEX REGISTER FCOR2928
05050 -0500 00 7 00000 CAL 0,7 NAME1 FCOR2929
05051 0322 00 0 06115 ERA MFD VS. 'M.F.D.' FCOR2930
05052 -0100 00 4 00003 TNZ 3,4 TKO FCOR2931
05053 -0500 00 7 00001 CAL 1,7 ROUND 2 FCOR2932
05054 0322 00 0 06116 ERA MFD+1 VS. '(FILE)' FCOR2933
05055 -0100 00 4 00003 TNZ 3,4 DECISION FCOR2934
05056 0020 00 4 00002 TRA 2,4 RETURN MATCH FCOR2935
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 78
FCOR2937
ADDREC/SUBREC ...... COMPUTE AND CHECK RECORD QUOTAS FCOR2938
FCOR2939
05057 -0774 00 5 05107 ADDREC AXC ADDOP,5 ADD TO RECORDS USED, CHECK QUOTA FCOR2940
05060 0020 00 0 05062 TRA UPDRC1 .. FCOR2941
FCOR2942
05061 -0774 00 5 05110 SUBREC AXC SUBOP,5 SUBTRACT FROM RECORDS USED, CHECK QUOTA FCOR2943
FCOR2944
05062 -0320 00 0 06250 UPDRC1 ANA =O77777077777 INSURE PREFIX AND TAG ARE RESET FCOR2945
05063 0044 00 0 00000 PAI QUOTA,,USED TO SI FCOR2946
05064 0056 00 077777 RNT 77777 IS USER ALLOTTED 32767 ON THIS DEVICE FCOR2947
05065 0020 00 0 05070 TRA UPDRC2 NO, SKIP FCOR2948
05066 -0057 00 077777 RIL 77777 YES, INSURE 'USED' IS ZERO FCOR2949
05067 0020 00 0 05103 TRA RECQOK AND GIVE NORMAL RETURN FCOR2950
FCOR2951
05070 -0765 00 0 00022 UPDRC2 LGR 18 SAVE QUOTA IN MQ FCOR2952
05071 0522 00 5 00000 XEC 0,5 ADD TO OR SUBTRACT FROM 'USED' FCOR2953
05072 0120 00 0 05074 TPL *+2 SKIP IF POSITIVE FCOR2954
05073 -0754 00 0 00000 ZAC OTHERWISE REPLACE NEGATIVE NO. WITH ZERO FCOR2955
05074 -0320 00 0 06237 ANA =O77777 TAKE RECORDS USED MODULO 2.P.15 FCOR2956
05075 0602 00 0 05557 SLW RECTMP SAVE NEW NO. OF RECORDS USED FCOR2957
05076 -0763 00 0 00022 LGL 18 RESTORE QUOTA,,USED TO AC FCOR2958
05077 0044 00 0 00000 PAI SAVE IN SI FCOR2959
05100 -0320 00 0 06237 ANA =O77777 GET QUOTA ALONE FCOR2960
05101 0402 00 0 05557 SUB RECTMP CHECK USED AGAINST QUOTA FCOR2961
05102 -0120 00 0 05105 TMI RECQNG SKIP IF USED .G. QUOTA FCOR2962
05103 -0046 00 0 00000 RECQOK PIA RESTORE QUOTA,,USED FROM SI FCOR2963
05104 0020 00 4 00003 TRA 3,4 AND TAKE NORMAL RETURN FCOR2964
FCOR2965
05105 -0046 00 0 00000 RECQNG PIA RESTORE QUOTA,,USED FROM SI FCOR2966
05106 0020 60 4 00002 TRA* 2,4 AND TAKE ERROR EXIT FCOR2967
FCOR2968
05107 0400 60 4 00001 ADDOP ADD* 1,4 ADD TO RECORDS USED (ADDREC) FCOR2969
05110 0402 60 4 00001 SUBOP SUB* 1,4 SUBTRACT FROM RECORDS USED (SUBREC) FCOR2970
FCOR2971
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 79
FCOR2973
USTORE ... STORE A WORD IN USER ARRAY, REDUCE ARRAY COUNTFCOR2974
FCOR2975
05111 0602 00 0 05560 USTORE SLW USTEMP SAVE WORD TO BE MOVED FCOR2976
05112 -0500 60 4 00001 CAL* 1,4 PICK UP USER ARRAY LENGTH FCOR2977
05113 -0734 00 5 00000 PDX 0,5 .. TO IR5 FCOR2978
05114 3 00000 5 05120 TXH USTO1,5,0 SKIP IF ONE OR MORE WORDS LEFT FCOR2979
05115 -0500 00 4 00001 CAL 1,4 OTHERWISE TAKE EMPTY EXIT FCOR2980
05116 -0737 00 5 00000 PDC 0,5 .. FCOR2981
05117 0020 00 5 00000 TRA 0,5 .. FCOR2982
FCOR2983
05120 1 77777 5 05121 USTO1 TXI *+1,5,-1 REDUCE ARRAY COUNT BY ONE FCOR2984
05121 -0754 00 5 00000 PXD 0,5 .. FCOR2985
05122 0622 60 4 00001 STD* 1,4 .. FCOR2986
05123 0634 00 3 05561 SXA USTX34,3 FCOR2987
05124 -0634 00 4 05561 SXD USTX34,4 FCOR2988
05125 -0500 60 4 00001 CAL* 1,4 GET CURRENT BASE OF USER ARRAY FCOR2989
05126 0737 00 3 00000 PAC 0,3 -ADDRESS TO IR3 FCOR2990
05127 0400 00 0 06220 ADD =1 BUMP ARRAY BASE ADDRESS FCOR2991
05130 0621 60 4 00001 STA* 1,4 .. FCOR2992
05131 MOVE1 HOME,USTEMP,CALL,(0,3),*+1 MOVE WORD TO USER MEMORY FCOR2993
05137 -0534 00 4 05561 LXD USTX34,4 AND RETURN FCOR2994
05140 0534 00 3 05561 LXA USTX34,3 .. FCOR2995
05141 0020 00 4 00002 TRA 2,4 .. FCOR2996
FCOR2997
* * * * * * * * * * * * * * * * * * * * * * * * FCOR2998
FCOR2999
MVHOME ..... MOVE USER ARRAY TO HBUF IN HOME MEMORY .....FCOR3000
FCOR3001
05142 0634 00 1 05563 MVHOME SXA MVHX12,1 FCOR3002
05143 -0634 00 2 05563 SXD MVHX12,2 FCOR3003
05144 0634 00 4 05564 SXA MVHIR4,4 FCOR3004
05145 -0500 60 4 00001 CAL* 1,4 GET ARRAY POINTER BASE,,COUNT FCOR3005
05146 0737 00 1 00000 PAC 0,1 -BASE ADDRESS OF ARRAY TO IR1 FCOR3006
05147 -0737 00 2 00000 PDC 0,2 -COUNT TO IR2 FCOR3007
05150 3 77753 2 05154 TXH MVHOM1,2,-HBUFL-1 SKIP IF ARRAY WILL FIT IN BUFFER FCOR3008
05151 -0774 00 2 00024 AXC HBUFL,2 OTHERWISE SET ARRAY SIZE TO HBUFL FCOR3009
05152 -0756 00 2 00000 PCD 0,2 RESET POINTER WORD FCOR3010
05153 0622 60 4 00001 STD* 1,4 .. FCOR3011
05154 -0500 00 0 05161 MVHOM1 CAL MVHADR SET NEW BASE OF ARRAY TO 'HBUF' FCOR3012
05155 0621 60 4 00001 STA* 1,4 .. FCOR3013
05156 0074 00 4 05170 TSX MOVE,4 MOVE ARRAY TO HBUF IN HOME MEMORY FCOR3014
05157 3 06123 0 05504 PAR CALL,,HOME .. FCOR3015
05160 0761 00 1 00000 EFA 0,1 .. FCOR3016
05161 0761 00 0 06071 MVHADR EFA HBUF .. FCOR3017
05162 0761 00 2 00000 EFA 0,2 .. ARRAY LENGTH FCOR3018
05163 3 00000 0 05164 PAR *+1 .. IGNORE ERROR RETURN FCOR3019
05164 0534 00 1 05563 LXA MVHX12,1 RETURN TO CALLER FCOR3020
05165 -0534 00 2 05563 LXD MVHX12,2 .. FCOR3021
05166 0534 00 4 05564 LXA MVHIR4,4 .. FCOR3022
05167 0020 00 4 00002 TRA 2,4 .. FCOR3023
FCOR3024
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 80
FCOR3026
MOVE ..... MOVE ARRAY OR WORD BETWEEN MEMORIES ..........FCOR3027
FCOR3028
05170 0634 00 3 05565 MOVE SXA MOVX34,3 FCOR3029
05171 -0634 00 4 05565 SXD MOVX34,4 FCOR3030
05172 -0500 60 4 00001 CAL* 1,4 GET POINTER TO 'FROM' MEMORY FCOR3031
05173 0602 00 0 05566 SLW FRMEM .. FCOR3032
05174 -0500 00 4 00001 CAL 1,4 GET POINTER TO 'TO' MEMORY FCOR3033
05175 -0737 00 5 00000 PDC 0,5 .. FCOR3034
05176 -0500 00 5 00000 CAL 0,5 .. FCOR3035
05177 0602 00 0 05567 SLW TOMEM .. FCOR3036
05200 -0500 00 4 00002 CAL 2,4 GET 'FROM' ADDRESS FCOR3037
05201 0074 00 4 05355 TSX GETEFA,4 GET EFFECTIVE ADDRESS FCOR3038
05202 0602 00 0 05570 SLW FRWORD .. FCOR3039
05203 -0534 00 4 05565 LXD MOVX34,4 FCOR3040
05204 -0500 00 4 00003 CAL 3,4 GET 'TO' ADDRESS FCOR3041
05205 0074 00 4 05355 TSX GETEFA,4 GET AFFECTIVE ADDRESS FCOR3042
05206 0602 00 0 05571 SLW TOWORD .. FCOR3043
05207 -0534 00 4 05565 LXD MOVX34,4 FCOR3044
05210 -0500 00 4 00004 CAL 4,4 GET WORD COUNT FCOR3045
05211 0074 00 4 05355 TSX GETEFA,4 COMPUTE EFFECTIVE WORD COUNT FCOR3046
05212 0767 00 0 00022 ALS 18 .. INTO DECREMENT FCOR3047
05213 0622 00 0 05570 STD FRWORD SET UP ARRAY LIMITS FCOR3048
05214 0622 00 0 05571 STD TOWORD .. FCOR3049
05215 -0500 00 0 05570 CAL FRWORD FCOR3050
05216 0074 00 4 05311 TSX RCHECK,4 RELOCATE AND CHECK 'FROM' ARRAY FCOR3051
05217 3 05566 0 05301 PAR MVERTN,,FRMEM .. FCOR3052
05220 0602 00 0 05570 SLW FRWORD .. FCOR3053
05221 -0500 00 0 05571 CAL TOWORD FCOR3054
05222 0074 00 4 05311 TSX RCHECK,4 RELOCATE AND CHECK 'TO' ARRAY FCOR3055
05223 3 05567 0 05301 PAR MVERTN,,TOMEM .. FCOR3056
05224 0602 00 0 05571 SLW TOWORD .. FCOR3057
05225 -0500 00 0 06222 CAL =O3 MASK OUT PROTECT BIT FCOR3058
05226 0320 00 0 05566 ANS FRMEM .. FCOR3059
05227 0320 00 0 05567 ANS TOMEM .. FCOR3060
05230 0535 00 5 05570 LAC FRWORD,5 -BASE OF 'FROM' ARRAY FCOR3061
05231 0535 00 6 05571 LAC TOWORD,6 -BASE OF 'TO' ARRAY FCOR3062
05232 -0534 00 7 05570 LXD FRWORD,7 ARRAY COUNT FCOR3063
05233 1 00001 7 05234 TXI *+1,7,1 BUMP ARRAY LENGTH BY ONE FCOR3064
05234 0535 00 3 05566 LAC FRMEM,3 FLAG FOR 'FROM' MEMORY FCOR3065
05235 0535 00 4 05567 LAC TOMEM,4 FLAG FOR 'TO' MEMORY FCOR3066
05236 -0500 00 0 05566 CAL FRMEM CHECK IF 'FROM' AND 'TO' FCOR3067
05237 0322 00 0 05567 ERA TOMEM .. ARE THE SAME MEMORY UNIT FCOR3068
05240 -0100 00 0 05253 TNZ MOVE2 .. SKIP IF DIFFERENT MEMORIES FCOR3069
FCOR3070
05241 0522 00 3 05305 XEC SETMEM,3 HERE IF BOTH MEMORIES THE SAME FCOR3071
05242 -2 00003 7 05266 MOVE1 TNX MOVE3,7,3 MOVE WORDS (THREE AT A TIME) FCOR3072
05243 -0500 00 5 00000 CAL 0,5 .. FCOR3073
05244 0560 00 5 00001 LDQ 1,5 .. FCOR3074
05245 0441 00 5 00002 LDI 2,5 .. FCOR3075
05246 0602 00 6 00000 SLW 0,6 .. FCOR3076
05247 -0600 00 6 00001 STQ 1,6 .. FCOR3077
05250 0604 00 6 00002 STI 2,6 .. FCOR3078
05251 1 77775 5 05252 TXI *+1,5,-3 .. FCOR3079
05252 1 77775 6 05242 TXI MOVE1,6,-3 .. FCOR3080
FCOR3081
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 81
05253 -2 00003 7 05266 MOVE2 TNX MOVE3,7,3 HERE IN MEMORIES DIFFERENT, FCOR3082
05254 0522 00 3 05305 XEC SETMEM,3 .. MOVE WORDS (THREE AT A TIME) FCOR3083
05255 -0500 00 5 00000 CAL 0,5 .. FCOR3084
05256 0560 00 5 00001 LDQ 1,5 .. FCOR3085
05257 0441 00 5 00002 LDI 2,5 .. FCOR3086
05260 0522 00 4 05305 XEC SETMEM,4 .. SELECT 'TO' MEMORY FCOR3087
05261 0602 00 6 00000 SLW 0,6 .. FCOR3088
05262 -0600 00 6 00001 STQ 1,6 .. FCOR3089
05263 0604 00 6 00002 STI 2,6 .. FCOR3090
05264 1 77775 5 05265 TXI *+1,5,-3 .. FCOR3091
05265 1 77775 6 05253 TXI MOVE2,6,-3 .. FCOR3092
FCOR3093
05266 -2 00001 7 05275 MOVE3 TNX MOVE4,7,1 HERE TO MOVE LAST WORDS (ONE AT A TIME) FCOR3094
05267 0522 00 3 05305 XEC SETMEM,3 .. FCOR3095
05270 -0500 00 5 00000 CAL 0,5 .. FCOR3096
05271 0522 00 4 05305 XEC SETMEM,4 .. FCOR3097
05272 0602 00 6 00000 SLW 0,6 .. FCOR3098
05273 1 77777 5 05274 TXI *+1,5,-1 .. FCOR3099
05274 1 77777 6 05266 TXI MOVE3,6,-1 .. FCOR3100
FCOR3101
05275 MOVE4 HOMOP HERE AT END, INSURE ECC RESET TO 'HOME' FCOR3102
05276 0534 00 3 05565 LXA MOVX34,3 AND RETURN FCOR3103
05277 -0534 00 4 05565 LXD MOVX34,4 .. FCOR3104
05300 0020 00 4 00006 TRA 6,4 .. FCOR3105
FCOR3106
05301 MVERTN HOMOP HERE FOR ERROR, INSURE ECC RESET TO 'HOME' FCOR3107
05302 0534 00 3 05565 LXA MOVX34,3 .. TAKE ERROR RETURN FCOR3108
05303 -0534 00 4 05565 LXD MOVX34,4 .. FCOR3109
05304 0020 60 4 00005 TRA* 5,4 .. FCOR3110
FCOR3111
05305 0020 00 0 05301 SETMEM TRA MVERTN MEMORY SELECT TABLE FOR MOVE ROUTINE FCOR3112
05306 -0761 00 0 00041 SEA .. FCOR3113
05307 -0761 00 0 00042 SEB .. FCOR3114
05310 0020 00 0 05301 TRA MVERTN .. ERROR IF MEMORY .E. 0 OR 3 FCOR3115
FCOR3116
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 82
FCOR3118
RCHECK ..... RELOCATE AND CHECK ADDRESS/ES ............ FCOR3119
FCOR3120
05311 -0320 00 0 06250 RCHECK ANA =O77777077777 INSURE PREFIX AND TAG ZERO FCOR3121
05312 0602 00 0 05572 SLW RCKTMP SAVE ADDRESS WORD FCOR3122
05313 -0500 00 4 00001 CAL 1,4 PAR ERRTN,,MEMFLG FCOR3123
05314 -0737 00 5 00000 PDC 0,5 -LOCATION OF MEMORY FLAG FCOR3124
05315 0441 00 5 00000 LDI 0,5 PICK UP MEMORY FLAG FCOR3125
05316 0056 00 000004 RNT 4 IS THIS MEMORY PROTECTED FCOR3126
05317 0020 00 0 05336 TRA RCHK2 NO, SKIP FCOR3127
05320 0535 00 5 05436 LAC UTABLE,5 YES, GET -BASE OF USER A.F.S.T. FCOR3128
05321 -0500 00 0 05572 CAL RCKTMP RELOCATE USER ADDRESS FCOR3129
05322 0361 00 5 00005 ACL RELOC,5 .. FCOR3130
05323 0621 00 0 05572 STA RCKTMP .. FCOR3131
05324 0771 00 0 00022 ARS 18 GET ARRAY COUNT IF ANY FCOR3132
05325 0100 00 0 05334 TZE RCHK1 SKIP IF COUNT ZERO FCOR3133
05326 0361 00 0 05572 ACL RCKTMP OTHERWIZE COMPUTE HIGH ADDRESS FCOR3134
05327 0402 00 0 06220 SUB =1 .. OF USER ARRAY FCOR3135
05330 0044 00 0 00000 PAI HIGH ADDRESS TO SI FCOR3136
05331 0054 00 700000 RFT 700000 DID ADDRESS EXCEED ADDRESSABLE MEMORY FCOR3137
05332 0020 00 0 05353 TRA RCHKER YES, ERROR FCOR3138
05333 0074 00 6 05340 TSX CHKADR,6 NO, CHECK HIGH ADDRESS FCOR3139
05334 -0500 00 0 05572 RCHK1 CAL RCKTMP PICK UP LOW ADDRESS FCOR3140
05335 0074 00 6 05340 TSX CHKADR,6 CHECK IT FCOR3141
05336 -0500 00 0 05572 RCHK2 CAL RCKTMP RETURN RELOCATED ADDRESS IN AC FCOR3142
05337 0020 00 4 00002 TRA 2,4 .. FCOR3143
FCOR3144
05340 -0320 00 0 06237 CHKADR ANA =O77777 ROUTINE TO CHECK USER ADDRESS FCOR3145
05341 -0130 00 0 00000 XCL ADDRESS TO MQ FCOR3146
05342 -0500 00 5 00004 CAL LIMITS,5 USER MEMORY LIMITS LOW,,HIGH FCOR3147
05343 -0320 00 0 06237 ANA =O77777 GET LOWER BOUND FCOR3148
05344 0040 00 0 05353 TLQ RCHKER ERROR IF ADDRESS .L. LOWER BOUND FCOR3149
05345 -0500 00 5 00004 CAL LIMITS,5 LOW,,HIGH FCOR3150
05346 0771 00 0 00022 ARS 18 GET UPPER BOUND FCOR3151
05347 -0320 00 0 06237 ANA =O77777 .. FCOR3152
05350 -0130 00 0 00000 XCL UPPER BOUND TO MQ, ADDRESS TO AC FCOR3153
05351 0040 00 0 05353 TLQ RCHKER ERROR IF UPPER BOUND .L. ADDRESS FCOR3154
05352 0020 00 6 00001 TRA 1,6 RETURN TO RCHECK FCOR3155
FCOR3156
05353 -0500 00 0 05572 RCHKER CAL RCKTMP HERE FOR ERROR, RETURN ARRAY ADDRESS IN AC FCOR3157
05354 0020 60 4 00001 TRA* 1,4 RETURN FCOR3158
FCOR3159
* * * * * * * * * * * * * * * * * * * * * * * * FCOR3160
FCOR3161
GETEFA ..... COMPUTE EFFECTIVE ADDRESS OF WORD IN AC ....FCOR3162
FCOR3163
05355 0625 00 0 05573 GETEFA STT SCATMP PLACE TAG IN SCA GTATMP,** FCOR3164
05356 0522 00 0 05573 XEC SCATMP SCA GTATMP,TAG FCOR3165
05357 0361 00 0 05574 ACL GTATMP ADD COMPLEMENT OF IR TO ADDRESS FCOR3166
05360 -0320 00 0 06237 ANA =O77777 EFFECTIVE ADDRESS MODULO 2.P.15 FCOR3167
05361 0020 00 4 00001 TRA 1,4 RETURN EFFECTIVE ADDRESS IN AC FCOR3168
FCOR3169
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 83
FCOR3171
RECADR ..... COMPUTE LINEAR FILE ADDRESS ................FCOR3172
FCOR3173
05362 0621 00 0 05575 RECADR STA TLCNT SAVE WORD COUNT OF LAST RECORD FCOR3174
05363 0771 00 0 00022 ARS 18 NO. OF RECORDS TO ADDRESS FCOR3175
05364 -0320 00 0 06237 ANA =O77777 .. MODULO 2.P.15 FCOR3176
05365 0100 00 4 00001 TZE 1,4 LENGTH IS ZERO IF RECORD COUNT ZERO FCOR3177
05366 0402 00 0 06220 SUB =1 REDUCE RECORD COUNT BY ONE FCOR3178
05367 0602 00 0 05576 SLW TNREC .. AND SAVE IT FCOR3179
05370 -0500 00 2 00013 CAL RCOUNT,2 PICK UP NUMBER OF WORDS PER RECORD FCOR3180
05371 -0320 00 0 06237 ANA =O77777 .. FROM A.F.S.T. MODULO 2.P.15 FCOR3181
05372 -0130 00 0 00000 XCL RECORD LENGTH TO MQ FCOR3182
05373 0200 00 0 05576 MPY TNREC RCOUNT*(NORECS-1) FCOR3183
05374 -0130 00 0 00000 XCL RESULT TO AC FCOR3184
05375 0400 00 0 05575 ADD TLCNT RCOUNT*(NORECS-1)+LCOUNT FCOR3185
05376 0020 00 4 00001 TRA 1,4 RETURN LINEAR ADDRESS IN AC FCOR3186
FCOR3187
* * * * * * * * * * * * * * * * * * * * * * * * FCOR3188
FCOR3189
SORT ..... SORT ARRAY IN ASCENDING ORDER ........ FCOR3190
FCOR3191
05377 -0500 00 7 00001 SORT CAL 1,7 ARRAY POINTER, PAR ARRAY,,COUNT FCOR3192
05400 0737 00 5 00000 PAC 0,5 -BASE OF ARRAY TO IR5 FCOR3193
05401 -0734 00 6 00000 PDX 0,6 COUNT TO IR6 FCOR3194
05402 0600 00 0 05577 STZ SORTSW RESET SORT SWITCH FCOR3195
05403 -2 00001 6 05420 SORT1 TNX SORT4,6,1 SORT ARRAY, TREAT ZEROS AS LARGEST NUMBER FCOR3196
05404 -0500 00 5 00001 CAL 1,5 .. FCOR3197
05405 0100 00 0 05417 TZE SORT3 .. FCOR3198
05406 -0520 00 5 00000 NZT 0,5 .. FCOR3199
05407 0020 00 0 05413 TRA SORT2 .. TREAT ZERO AS LARGEST POSSIBLE NUMBER FCOR3200
05410 -0340 00 5 00000 LAS 0,5 .. FCOR3201
05411 0020 00 0 05417 TRA SORT3 .. SKIP IF IN ASCENDING ORDER ALREADY FCOR3202
05412 0020 00 0 05417 TRA SORT3 .. OR EQUAL FCOR3203
05413 0560 00 5 00000 SORT2 LDQ 0,5 .. HERE IF NOT IN ASCENDING ORDER FCOR3204
05414 0602 00 5 00000 SLW 0,5 .. SWITCH WORDS FCOR3205
05415 -0600 00 5 00001 STQ 1,5 .. FCOR3206
05416 -0625 00 0 05577 STL SORTSW .. INDICATE CHANGE ON THIS PASS FCOR3207
05417 1 77777 5 05403 SORT3 TXI SORT1,5,-1 .. FCOR3208
FCOR3209
05420 0520 00 0 05577 SORT4 ZET SORTSW HERE AT END OF PASS, WAS ANYTHING MOVED FCOR3210
05421 0020 00 0 05377 TRA SORT YES, SORT AGAIN FCOR3211
05422 0020 00 7 00002 TRA 2,7 NO, RETURN FCOR3212
FCOR3213
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 84
FCOR3215
IRSAV/IRRST ..... SAVE AND RESTORE IRS 1-3 FOR FILE SYS. FCOR3216
FCOR3217
05423 0634 00 1 05600 IRSAV SXA IRSX12,1 SAVE IRS 1-4 FCOR3218
05424 -0634 00 2 05600 SXD IRSX12,2 .. FCOR3219
05425 0634 00 3 05601 SXA IRSX34,3 .. FCOR3220
05426 -0634 00 4 05601 SXD IRSX34,4 .. FCOR3221
05427 0020 00 7 00001 TRA 1,7 RETURN FCOR3222
FCOR3223
05430 0534 00 1 05600 IRRST LXA IRSX12,1 RESTORE IRS 1-4 FCOR3224
05431 -0534 00 2 05600 LXD IRSX12,2 .. FCOR3225
05432 0534 00 3 05601 LXA IRSX34,3 .. FCOR3226
05433 -0534 00 4 05601 LXD IRSX34,4 .. FCOR3227
05434 0020 00 7 00001 TRA 1,7 RETURN FCOR3228
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 85
FCOR3230
..... FILE COORDINATOR VARIABLE STORAGE .................FCOR3231
FCOR3232
05435 VARSTO SYN * BEGINNING OF VARIABLE STORAGE FCOR3233
FCOR3234
05435 0 00000 0 00000 FS.TST PZE ** ENTRY SWITCH FOR DAEMON SNEAK-AROUND FCOR3235
FCOR3236
..... TABLES AND STORAGE COMMON TO ALL I/O SYSTEM MODULESFCOR3237
FCOR3238
05436 0 00000 0 00000 UTABLE PZE **,,** POINTERS TO CURRENT USER STATUS TABLE FCOR3239
FCOR3240
05437 0 00203 0 05631 USRTBL PZE ZEROQ,,ZEROQL POINTERS TO USER STATUS TABLES FCOR3241
05440 DUP 1,DUSERS .. FCOR3242
05440 0 00000 0 00000 PZE **,,** .. FCOR3243
FCOR3244
05442 PRIORT DUP 1,DUSERS SORTED USER PRIORITY TABLE FCOR3245
05442 0 00000 0 00000 PZE **,,** .. FCOR3246
FCOR3247
05444 0 00000 0 00000 PZE 0 ZERO FOR END OF USER PRIORITY TABLE FCOR3248
FCOR3249
05445 0 00000 0 00001 SLOTNO PZE 1 SLOT CURRENTLY BEING SERVICED BY I/O SYSTEMFCOR3250
FCOR3251
..... INTERNAL VARIABLE STORAGE .........................FCOR3252
FCOR3253
05446 0 00000 0 00000 SSCALL PZE ** ADDRESS OF SUPERVISOR INTERRUPT PROCEDURE FCOR3254
FCOR3255
05447 0 00000 0 06132 ERRLOC PZE FRSTER ADDRESS OF SUPERVISOR ERROR PROCEDURE FCOR3256
05450 0 00000 0 00000 DATLOC PZE ** LOCATION OF TODAY'S DATE IN SUPERVISOR FCOR3257
05451 0 00000 0 00000 TIMLOC PZE ** LOCATION OF TIME IN SUPERVISOR FCOR3258
05452 0 00000 0 06217 ENABLE PZE =0 LOCATION OF ENABLE WORD IN SUPERVISOR FCOR3259
FCOR3260
05453 0 00000 0 00000 IOCALL PZE 0 CURRENT I/O ENTRY IN USE FCOR3261
FCOR3262
05454 +000000000000 FILNAM OCT 0,0 CURRENT FILE NAME SAVED HERE FCOR3263
05456 -000000000000 ANYFIL OCT -0,0 CODE TO RETURN ANY ACTIVE FILE STATUS FCOR3264
FCOR3265
05460 0 00000 0 00000 P0 PZE 0 PARAMETER LIST TABLE FCOR3266
05461 0 00000 0 00000 P1 PZE 0 .. FCOR3267
05462 0 00000 0 00000 P2 PZE 0 .. FCOR3268
05463 0 00000 0 00000 P3 PZE 0 .. FCOR3269
05464 0 00000 0 00000 P4 PZE 0 .. FCOR3270
05465 0 00000 0 00000 P5 PZE 0 .. FCOR3271
05466 0 00000 0 00000 P6 PZE 0 .. FCOR3272
05467 0 00000 0 00000 P7 PZE 0 .. FCOR3273
05470 0 00000 0 00000 P8 PZE 0 .. FCOR3274
05471 0 00000 0 00000 P9 PZE 0 .. FCOR3275
05472 0 00000 0 00000 P10 PZE 0 .. FCOR3276
FCOR3277
05473 0 00000 0 00000 ERWORD PZE 0 ADDRESS TO RETURN ERROR CODE IF ANY FCOR3278
FCOR3279
05474 0 00000 0 00000 STATUS PZE 0 TEMP FOR OPEN FCOR3280
05475 0 00000 0 00000 TEMP PZE 0 GENERAL TEMP FOR FILE COORDINATOR ENTRIES FCOR3281
05476 0 00000 0 00000 SAVEQU PZE 0 TEMP FOR WRFILE, TRFILE FCOR3282
05477 0 00000 0 00000 WAITSW PZE 0 SWITCH FOR RDFILE,WRFILE,RDWAIT,WRWAIT FCOR3283
05500 0 00000 0 00000 FCLIR4 PZE 0 TEMP FOR CLOSE FCOR3284
05501 0 00000 0 00000 NEWMOD PZE 0 TEMP FOR CHFILE FCOR3285
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 86
05502 0 00000 0 00000 NAMESW PZE 0 TEMP FOR CHFILE FCOR3286
05503 0 00000 0 00000 COUNT PZE 0 TEMP FOR USAVE FCOR3287
FCOR3288
05504 0 00000 0 00000 CALL PZE ** MEMORY FLAG FOR USER PROGRAM FCOR3289
05505 0 00000 0 00000 MEM PZE ** MEMORY FLAG FOR USER I/O MEMORY FCOR3290
05506 0 00000 0 00000 BUF PZE ** MEMORY FLAG FOR USER I/O BUFFERS FCOR3291
FCOR3292
05507 0 00000 0 00000 GTCALL PZE ** MEMORY FLAG TO PICK UP CALLING SEQUENCE FCOR3293
05510 0 00000 0 00000 GTMEM PZE ** MEMORY FLAG FOR CHECKING MEMORY ADDRESSES FCOR3294
05511 0 00000 0 00000 GTBUF PZE ** MEMORY FLAG FOR CHECKING BUFFER ADDRESSES FCOR3295
FCOR3296
05512 0 00000 0 00000 ILC PZE 0 ILC OF USER CALL TO I/O SYSTEM FCOR3297
05513 0 00000 0 00000 RTNILC PZE 0 USER RETURN ILC FCOR3298
05514 0 00000 0 00000 ERRTRN PZE 0 ERROR RETURN ILC FCOR3299
05515 0 00000 0 00000 IR4 PZE ** USER'S IR4 SAVED HERE FCOR3300
FCOR3301
05516 0 00000 0 00000 SVIR12 PZE **,,** USER MACHINE CONDITIONS FCOR3302
05517 0 00000 0 00000 SVIR35 PZE **,,** .. FCOR3303
05520 0 00000 0 00000 SVIR67 PZE **,,** .. FCOR3304
05521 SVSI BSS 1 .. FCOR3305
FCOR3306
05522 0 00000 0 00000 TMPIR1 PZE ** TEMPS FOR SAVE/SSAVE FCOR3307
05523 0 00000 0 00000 TMPIR4 PZE **,,** .. FCOR3308
05524 0 00000 0 00000 NOPAR PZE ** .. FCOR3309
05525 0 00000 0 00000 PARMEM PZE 0 .. FCOR3310
05526 0 00000 0 00000 TMEM PZE 0 .. FCOR3311
FCOR3312
05527 0 00000 0 00000 SEOF34 PZE **,,** TEMP FOR SETEOF FCOR3313
FCOR3314
05530 0 00000 0 00000 GETMX4 PZE ** TEMPS FOR GTDYTM FCOR3315
05531 0 00000 0 00000 DATTMP PZE 0 .. FCOR3316
05532 0 00000 0 00000 DATE PZE 0 .. FCOR3317
FCOR3318
05533 0 00000 0 00000 CKLX34 PZE **,,** TEMPS FOR CKLINK FCOR3319
FCOR3320
05534 CHKTMP BSS LNAME2-FPROBN+1 TEMP FOR CHKUFD FCOR3321
FCOR3322
05545 0 00000 0 00000 STAFLX PZE 0 TEMPS FOR STAFIL FCOR3323
05546 0 00000 0 00000 STATMP PZE 0 .. FCOR3324
FCOR3325
05547 0 00000 0 00000 GTSIR4 PZE ** TEMP FOR GTSTAT FCOR3326
FCOR3327
05550 0 00000 0 00000 CKACTP PZE ** TEMP FOR CHKACT FCOR3328
FCOR3329
05551 0 00000 0 00000 RELIR4 PZE ** TEMP FOR RELEAS FCOR3330
FCOR3331
05552 0 00000 0 00000 RTNFX4 PZE ** TEMP FOR RTNFIL FCOR3332
FCOR3333
05553 0 00000 0 00000 NAMSUM PZE 0 TEMP FOR LOCK/UNLOCK FCOR3334
FCOR3335
05554 0 00000 0 00000 UPDX34 PZE **,,** TEMP FOR UPDSYS FCOR3336
FCOR3337
05555 0 00000 0 00000 DFILX4 PZE ** TEMPS FOR DFILE FCOR3338
05556 0 00000 0 00001 DELREC PZE 1,,** .. FCOR3339
FCOR3340
05557 0 00000 0 00000 RECTMP PZE 0 TEMP FOR ADDREC/SUBREC FCOR3341
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 87
FCOR3342
05560 0 00000 0 00000 USTEMP PZE 0 TEMPS FOR USTORE FCOR3343
05561 0 00000 0 00000 USTX34 PZE **,,** .. FCOR3344
FCOR3345
05562 0 00000 0 00000 REFTMP PZE ** X4 FOR REFMFD FCOR3346
FCOR3347
05563 0 00000 0 00000 MVHX12 PZE **,,** TEMPS FOR MVHOME FCOR3348
05564 0 00000 0 00000 MVHIR4 PZE ** .. FCOR3349
FCOR3350
05565 0 00000 0 00000 MOVX34 PZE **,,** TEMPS FOR MOVE FCOR3351
05566 0 00000 0 00000 FRMEM PZE 0 .. FCOR3352
05567 0 00000 0 00000 TOMEM PZE 0 .. FCOR3353
05570 0 00000 0 00000 FRWORD PZE 0 .. FCOR3354
05571 0 00000 0 00000 TOWORD PZE 0 .. FCOR3355
FCOR3356
05572 0 00000 0 00000 RCKTMP PZE 0 TEMP FOR RCHECK FCOR3357
FCOR3358
05573 0636 00 0 05574 SCATMP SCA GTATMP,** VARIABLE INTSTUCTION AND TEMP FOR GETEFA FCOR3359
05574 0 00000 0 00000 GTATMP PZE ** .. FCOR3360
FCOR3361
05575 0 00000 0 00000 TLCNT PZE 0 TEMPS FOR ADDREC FCOR3362
05576 0 00000 0 00000 TNREC PZE 0 .. FCOR3363
FCOR3364
05577 0 00000 0 00000 SORTSW PZE 0 TEMP FOR SORT FCOR3365
FCOR3366
05600 0 00000 0 00000 IRSX12 PZE **,,** TEMPS FOR IRSAV/IRRST FCOR3367
05601 0 00000 0 00000 IRSX34 PZE **,,** .. FCOR3368
FCOR3369
05602 0 00000 0 00000 TNUM PZE 0 TEMP FOR 'BCBN2' FCOR3370
FCOR3371
05603 FILTMP BSS ACTLNG TEMPORARY BUFFER FOR ACTIVE FILE ENTRY FCOR3372
FCOR3373
05631 ZEROQ BSS QUEUE1-PROBNO QUEUE FOR SLOT NUMBER ZERO FCOR3374
05647 0 00035 0 06034 PZE ZEROQ1,,1QL .. FCOR3375
05650 0 00000 0 06071 PZE ZEROQ2,,2QL .. FCOR3376
05651 BSS AFENTY-QUEUE3 .. FCOR3377
05656 DUP 1,SFILES .. NO. OF ACTIVE FILES NEEDED BY SEARCH FCOR3378
05656 BSS ACTLNG .. FCOR3379
00203 ZEROQL SYN *-ZEROQ .. FCOR3380
FCOR3381
06034 ZEROQ1 BSS 1QL STORAGE FOR QUEUE1 SLOT NO. 0 FCOR3382
06071 ZEROQ2 BSS 2QL STORAGE FOR QUEUE2 SLOT NO. 0 FCOR3383
FCOR3384
00024 HBUFL EQU 20 UTILITY BUFFER FOR I/O SYSTEM FCOR3385
06071 HBUF BSS HBUFL .. FCOR3386
FCOR3387
* * * * * * * * * * * * * * * * * * * * * * * * FCOR3388
FCOR3389
..... CONSTANTS FOR FILE COORDINATOR ....................FCOR3390
FCOR3391
06115 443326332433 MFD BCI 2,M.F.D.(FILE) NAME OF MASTER FILE DIRECTORY FCOR3392
06117 742631432534 UTFNAM BCI 1,(FILE) SECOND NAME OF USAGE TABLES FCOR3393
06120 245164446463 DRMNAM BCI 1,DRUMUT DRUM USAGE TABLE, FIRST NAME FCOR3394
06121 243162426463 DSKNAM BCI 1,DISKUT DISK USAGE TABLE, .. FCOR3395
FCOR3396
06122 0 00000 0 00120 EXTEND PZE RGRACE NO. OF RECORDS USER MAY EXCEED HIS QUOTA FCOR3397
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 88
FCOR3398
06123 0 00000 0 00002 HOME PZE IOSMEM FLAG FOR MEMORY IN WHICH I/O SYSTEM RESIDESFCOR3399
FCOR3400
06124 -000000000000 NULPAR OCT -0 FLAG FOR MISSING PARAMETER FCOR3401
FCOR3402
06125 0 00000 1 00000 TGPMAX PZE 0,PMAX PMAX IN TAG FCOR3403
06126 0 00000 2 00000 M.IL.F PZE 0,2,0 STANDARD MODE AND DEVICE FOR NEW FILE FCOR3404
06127 0 00000 3 00000 TPUNIT PZE 0,3,0 MODE AND DEVICE FOR TAPE FILE FCOR3405
FCOR3406
06127 ICFLAG SYN *-1 RETURN FLAGS FOR FILE EXIT ROUTINE FCOR3407
06130 0 00001 0 00000 PZE 0,,1 .. FLAG FOR MEMORY 'A' FCOR3408
06131 0 00002 0 00000 PZE 0,,2 .. FLAG FOR MEMORY 'B' FCOR3409
FCOR3410
06132 0000 00 0 06132 FRSTER HTR * HERE ON ERROR IN FIRST CALL TO IOS FCOR3411
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 89
REMOTE SEQUENCES --- ERROR CALLS AND DEFINITIONS
06133 RMT * FORCE REMOTE SEQUENCES FCOR3414
06133 DFINE ERR100,ERROR,100 FCOR3414.001
06133 0074 00 4 04212 ERR100 TSX ERROR,4 FCOR3414.002
06134 3 00000 0 00144 PAR 100 FCOR3414.002
06135 DFINE ERR101,ERROR,101 FCOR3414.001
06135 0074 00 4 04212 ERR101 TSX ERROR,4 FCOR3414.002
06136 3 00000 0 00145 PAR 101 FCOR3414.002
06137 DFINE ERR3,ERROR,3 FCOR3414.001
06137 0074 00 4 04212 ERR3 TSX ERROR,4 FCOR3414.002
06140 3 00000 0 00003 PAR 3 FCOR3414.002
06141 DFINE ERR4,ERROR,4 FCOR3414.001
06141 0074 00 4 04212 ERR4 TSX ERROR,4 FCOR3414.002
06142 3 00000 0 00004 PAR 4 FCOR3414.002
06143 DFINE ERR5,ERROR,5 FCOR3414.001
06143 0074 00 4 04212 ERR5 TSX ERROR,4 FCOR3414.002
06144 3 00000 0 00005 PAR 5 FCOR3414.002
06145 DFINE ERR16,ERROR,16 FCOR3414.001
06145 0074 00 4 04212 ERR16 TSX ERROR,4 FCOR3414.002
06146 3 00000 0 00020 PAR 16 FCOR3414.002
06147 DFINE ERR20,ERROR,20 FCOR3414.001
06147 0074 00 4 04212 ERR20 TSX ERROR,4 FCOR3414.002
06150 3 00000 0 00024 PAR 20 FCOR3414.002
06151 DFINE ERR8,ERROR,8 FCOR3414.001
06151 0074 00 4 04212 ERR8 TSX ERROR,4 FCOR3414.002
06152 3 00000 0 00010 PAR 8 FCOR3414.002
06153 DFINE ERR9,ERROR,9 FCOR3414.001
06153 0074 00 4 04212 ERR9 TSX ERROR,4 FCOR3414.002
06154 3 00000 0 00011 PAR 9 FCOR3414.002
06155 DFINE ERR10,ERROR,10 FCOR3414.001
06155 0074 00 4 04212 ERR10 TSX ERROR,4 FCOR3414.002
06156 3 00000 0 00012 PAR 10 FCOR3414.002
06157 DFINE ERR11,ERROR,11 FCOR3414.001
06157 0074 00 4 04212 ERR11 TSX ERROR,4 FCOR3414.002
06160 3 00000 0 00013 PAR 11 FCOR3414.002
06161 DFINE ERR12,ERROR,12 FCOR3414.001
06161 0074 00 4 04212 ERR12 TSX ERROR,4 FCOR3414.002
06162 3 00000 0 00014 PAR 12 FCOR3414.002
06163 DFINE ERR18,ERROR,18 FCOR3414.001
06163 0074 00 4 04212 ERR18 TSX ERROR,4 FCOR3414.002
06164 3 00000 0 00022 PAR 18 FCOR3414.002
06165 DFINE ERR13,ERROR,13 FCOR3414.001
06165 0074 00 4 04212 ERR13 TSX ERROR,4 FCOR3414.002
06166 3 00000 0 00015 PAR 13 FCOR3414.002
06167 DFINE ERR14,ERROR,14 FCOR3414.001
06167 0074 00 4 04212 ERR14 TSX ERROR,4 FCOR3414.002
06170 3 00000 0 00016 PAR 14 FCOR3414.002
06171 DFINE ERR15,ERROR,15 FCOR3414.001
06171 0074 00 4 04212 ERR15 TSX ERROR,4 FCOR3414.002
06172 3 00000 0 00017 PAR 15 FCOR3414.002
06173 DFINE IOE17,IOERR,17 FCOR3414.001
06173 0074 00 4 04214 IOE17 TSX IOERR,4 FCOR3414.002
06174 3 00000 0 00021 PAR 17 FCOR3414.002
06175 DFINE ERR7,ERROR,7 FCOR3414.001
06175 0074 00 4 04212 ERR7 TSX ERROR,4 FCOR3414.002
06176 3 00000 0 00007 PAR 7 FCOR3414.002
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 90
REMOTE SEQUENCES --- ERROR CALLS AND DEFINITIONS
06177 DFINE ERR19,ERROR,19 FCOR3414.001
06177 0074 00 4 04212 ERR19 TSX ERROR,4 FCOR3414.002
06200 3 00000 0 00023 PAR 19 FCOR3414.002
06201 DFINE IOE6,IOERR,6 FCOR3414.001
06201 0074 00 4 04214 IOE6 TSX IOERR,4 FCOR3414.002
06202 3 00000 0 00006 PAR 6 FCOR3414.002
06203 DFINE ERR6,ERROR,6 FCOR3414.001
06203 0074 00 4 04212 ERR6 TSX ERROR,4 FCOR3414.002
06204 3 00000 0 00006 PAR 6 FCOR3414.002
06205 DFINE IOE7,IOERR,7 FCOR3414.001
06205 0074 00 4 04214 IOE7 TSX IOERR,4 FCOR3414.002
06206 3 00000 0 00007 PAR 7 FCOR3414.002
06207 DFINE IOE8,IOERR,8 FCOR3414.001
06207 0074 00 4 04214 IOE8 TSX IOERR,4 FCOR3414.002
06210 3 00000 0 00010 PAR 8 FCOR3414.002
06211 DFINE IOE5,IOERR,5 FCOR3414.001
06211 0074 00 4 04214 IOE5 TSX IOERR,4 FCOR3414.002
06212 3 00000 0 00005 PAR 5 FCOR3414.002
06213 DFINE ERR1,ERROR,1 FCOR3414.001
06213 0074 00 4 04212 ERR1 TSX ERROR,4 FCOR3414.002
06214 3 00000 0 00001 PAR 1 FCOR3414.002
06215 DFINE ERR2,ERROR,2 FCOR3414.001
06215 0074 00 4 04212 ERR2 TSX ERROR,4 FCOR3414.002
06216 3 00000 0 00002 PAR 2 FCOR3414.002
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 91
FILE CO-ORDINATOR LITERALS/CROSS-REFERENCE LISTING
END FCOR3417
LITERALS
06217 000000000000
06220 000000000001
06221 000000000002
06222 000000000003
06223 000000000004
06224 000000000005
06225 000000000006
06226 000000000007
06227 000000000016
06230 000000000017
06231 000000000022
06232 000000000037
06233 000000000051
06234 000000000066
06235 000000000074
06236 000000000777
06237 000000077777
06240 000000700000
06241 000000777777
06242 000001000000
06243 000001000001
06244 000777000000
06245 001777777777
06246 006600000000
06247 077777000000
06250 077777077777
06251 171717171717
06252 200000000000
06253 210000100000
06254 214343466360
06255 214343606060
06256 216363212330
06257 216363452144
06260 226426262551
06261 233026314325
06262 234346622560
06263 242543263143
06264 242543442624
06265 262330252342
06266 266263216325
06267 266621316360
06270 314624312127
06271 314626314531
06272 314631453163
06273 314651622563
06274 314662634647
06275 314662635163
06276 400000000377
06277 432122254360
06300 433145426060
06301 444664456360
06302 444665263143
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 92
FILE CO-ORDINATOR LITERALS/CROSS-REFERENCE LISTING
06303 464725456060
06304 510000000000
06305 512426314325
06306 512466213163
06307 512562256326
06310 516226314325
06311 600000700000
06312 606060214343
06313 622563263143
06314 622563475131
06315 626346512725
06316 632147263143
06317 635126314325
06320 644446644563
06321 644543314542
06322 644724216325
06323 644724442624
06324 646221652560
06325 646263216360
06326 652551312670
06327 665126314325
06330 665166213163
06331 776000000000
06332 776000777777
06333 777777000000
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 1
POST PROCESSOR ASSEMBLY DATA
6334 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
13 F 47, 244, 637, 644, 702, 1166, 1361, 1522, 1564, 1746, 2126, 2241, 2307, 2371, 2456, 2524, 2574
2650, 3162, 4325, 4352, 4576, 5032
14 P 47
14 R 47, 3435
14 S 47, 3451, 3453
14 W 47, 3443
22 DR 47
22 DW 47
3723 FN 74, 152, 215, 332, 747, 1001, 1015, 1123, 1137, 1320, 1415, 1441, 1613, 2025, 2070, 2171, 2276
2443, 2542, 2641, 3122
5460 P0 3712, 3725, 3731, 3742, 3745, 3751, 3762, 3765, 3771, 3775, 4001, 4015, 4022, 4023, 4031, 4034, 4035
4042, 4045, 4054, 4056, 4070, 4103, 4106
5461 P1 266, 271, 274, 277, 320, 351, 1466, 2673, 2730, 3010, 3027, 3032, 3037, 3060, 3104, 3215, 3220
3223, 3226, 3231, 3234, 3237, 3336, 3341, 3347, 3351, 3460, 3524, 3530, 3540, 3544, 3604
5462 P2 1470, 2703, 2740, 3010, 3026, 3040, 3044, 3061, 3105, 3371, 3377, 3402, 3606
5463 P3 766, 1041, 1075, 1156, 1233, 1345, 1430, 1667, 2224, 2232, 2240, 2245, 2251, 2255, 2260, 2263, 2323
2461, 2503, 2571, 2705, 2754, 3005, 3011, 3166, 3610
5464 P4 624, 1042, 1076, 1234, 1711, 2324, 2462, 2504, 2572, 3171, 3612
5465 P5 633, 1720, 2512, 2575, 2600, 4167
5466 P6 2516, 2602, 2605, 4172, 4176
5467 P7 2607
5470 P8
5471 P9
3761 SP 333, 334, 1465, 1614, 1615, 1616, 2446, 2447, 2545, 2546, 2547, 2672, 3001, 3124
35 1QL 47, 5647, 6034
0 2QL 47, 5650, 6071
4041 ADR 1004, 1005, 1020, 1021, 1126, 1127, 1142, 1143, 1416, 2726, 2727, 3367, 3600, 3601, 3602, 3603
4005 ARY 263, 2172, 3003, 3024, 3055, 3101, 3212, 3331, 3332, 3333, 3334, 3370
5506 BUF 761, 1040, 1053, 1074, 1232, 1266, 1277, 1344, 1424, 1447, 1530, 3472, 3510, 3642
5512 ILC 463, 2010, 2155, 2427, 3664, 3670, 3671, 4150, 4155, 4222, 4754, 4777
5515 IR4 67, 145, 210, 256, 301, 312, 324, 462, 742, 774, 1010, 1116, 1132, 1313, 1410, 1434, 1457
1550, 1606, 2007, 2020, 2063, 2154, 2164, 2271, 2426, 2436, 2535, 2634, 2663, 2720, 2774, 3016, 3047
3073, 3115, 3205, 3324, 3362, 3516, 3532, 3546, 3555, 3573, 3667, 3677, 4141, 4147, 4154, 4254, 4753
4776
100000 L.M 47
5505 MEM 761, 1040, 1053, 1074, 1232, 1266, 1277, 1344, 1424, 1447, 1530, 3061, 3105, 3475, 3513, 3640
6115 MFD 77, 121, 140, 155, 177, 203, 240, 540, 1063, 2332, 2624, 4336, 5021, 5051, 5054
400000 M.M 47
340 OPN 336
5472 P10
200000 P.M 47
10000 R.M 47
100000 R.S 47
4000 S.M 47
400000 S.S 47
3773 SPM 317, 331, 1002, 1016, 1124, 1140, 1321, 1464, 2277, 2300, 2444, 2445, 2543, 2544, 2670, 2671, 2725
3002, 3023, 3054, 3100, 3123, 3523, 3537
2000 T.M 47
0 TMP 47
40000 V.M 47
20000 W.M 47
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 2
POST PROCESSOR ASSEMBLY DATA
200000 W.S 47
53 AFST 47
2711 ALT1 2706
754 ASN1
764 ASN2 756
4011 BARY 750
5504 CALL 2747, 2764, 3467, 3505, 3636, 4200, 5132, 5157
1654 CHF2 1647, 1652
1663 CHF3 1644, 1656, 1661
1711 CHF4 1670
1720 CHF5 1715
1726 CHF6 1723
1744 CHF7 1727, 1742
1767 CHF8 1761, 1764
1773 CHF9 1745
20 CHNG 47
5532 DATE 4265, 4271, 4275, 4302
2145 DEL2 2121
6213 ERR1 1537, 4127
6215 ERR2 2055, 2265, 4130
6137 ERR3 103, 206, 254, 311, 337, 726, 771, 1110, 1304, 1403, 1455, 1501, 1605, 2012, 2056, 2157, 2266
2430, 2532, 2561, 2660, 2717, 2772, 3014, 3046, 3066, 3111, 3136, 3340, 3464, 3526, 3542, 3572
6141 ERR4 143, 207, 255, 727, 772, 1111, 1305, 1404, 1456, 1545, 2013, 2057, 2160, 2267, 2533, 2631, 2661
2773, 3015, 3067, 3112, 3202
6143 ERR5 144, 371, 773, 1112, 1306, 1405, 2014, 2060, 2163, 2270, 2431, 2534, 2632, 2662, 3070, 3113, 3203
6203 ERR6 1113, 1307, 1406, 1547, 2017, 2061, 2161, 2343, 2633, 3071, 3114, 3204
6175 ERR7 737, 1310, 1401, 1653, 2062, 2156, 2432, 3072
6151 ERR8 433, 1115, 1662, 2162, 2433
6153 ERR9 443, 565, 1311, 1407, 2015, 2434
3 FMAX 47, 132, 170, 641, 2522, 2675, 2732, 3332, 3356, 3617
6071 HBUF 5161
6123 HOME 2747, 2764, 3630, 4200, 4245, 5132, 5157
6211 IOE5 1454, 1546
6201 IOE6 770
6205 IOE7 1114
6207 IOE8 1303, 1402
2535 LINK 0
2562 LNK1 2560
2602 LNK2 2577
2607 LNK3 2604
2613 LNK4 2610
4741 LOCK 460, 2005, 2152, 2424
4007 MARY 1003, 1017, 1125, 1141
13 MODE 47, 117, 407, 504, 620, 627, 630, 664, 1202, 1237, 1350, 1673, 1704, 2117, 2315, 2362, 2510
2515, 2612, 4322, 4347, 4417, 4567, 4642
2323 MOV0 2312
2344 MOV1 2342
2423 MOV2 2361, 2364
2350 MOV3 2345
5170 MOVE 0, 2746, 2763, 4177, 4244, 5131, 5156
324 OPEN 0
354 OPN1 365
366 OPN2 364
372 OPN3 367
530 OPN4 377
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 3
POST PROCESSOR ASSEMBLY DATA
664 OPN5 525
1 PMAX 47, 6125
1047 RDF2 1045, 1107
1051 RDF3 1056
3635 SAVE 70, 146, 211, 257, 302, 313, 325, 743, 775, 1011, 1117, 1133, 1314, 1411, 1435, 1460, 1551
1607, 2021, 2064, 2165, 2272, 2437, 2536, 2635, 2664, 2721, 2775, 3017, 3050, 3074, 3116, 3206
5377 SORT 3310, 5421
2754 STR1 2741
2771 STR2 2755
5521 SVSI 3627, 3635, 4164
3137 TAP1 3135
5475 TEMP 720, 723, 1227, 1245, 1247, 1252, 1341, 1356, 1360, 1372, 1666, 1701, 1706, 1710, 1744, 1757, 1765
2125, 2137, 2311, 2344, 2360, 2370, 2402, 2415, 2745, 2750, 2762, 2765, 3270, 3301, 3425, 3431, 4166
4201, 4575, 4607
5526 TMEM 4012, 4037
5602 TNUM 4307, 4312, 4314, 4315
1336 TRF0 1332
1400 TRF1 1352, 1357
3042 UMT1 3031, 3034
1224 WRF1 1201, 1210
1262 WRF2 1241, 1246, 1260
1264 WRF3 1271
1272 WRF4 1263, 1267
1275 WRF5 1300
1211 WRF6 1204
1163 WRFA 1155, 1157
5107 ADDOP 5057
2663 ALLOT 0
4305 BCBN2 4262, 4266, 4272
0 BOPEN 721
2 BREAD 1036, 1072
6 BSAVE 757, 1275
1430 CKFIN 1425
4435 CKST1 4440
4441 CKST2 4437
1457 CLOSE 0
5503 COUNT 3372, 3454, 3456, 3461
5027 DFILE 175, 2116, 4645
162 DMFD1 171
13 DRAIN 3565, 3570
23 EFLAG 47, 4214, 4217
6155 ERR10 453, 575, 1312, 1743, 2435
6157 ERR11 527, 2011
6161 ERR12 602, 2016
6165 ERR13 643
6167 ERR14 657
6171 ERR15 732
6145 ERR16 413
6163 ERR18 610
6177 ERR19 741
6147 ERR20 417
4212 ERROR 6133, 6135, 6137, 6141, 6143, 6145, 6147, 6151, 6153, 6155, 6157, 6161, 6163, 6165, 6167, 6171, 6175
6177, 6203, 6213, 6215
5566 FRMEM 5173, 5217, 5226, 5234, 5236
1434 FWAIT 0
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 4
POST PROCESSOR ASSEMBLY DATA
1445 FWAT1
1453 FWAT2 1450
21 GETQU 162, 650, 706, 1172, 1365, 1752, 2132, 2375, 2410, 2676, 2733, 3140, 4602
4502 GTANY 4464
5511 GTBUF 3633, 3643, 4011
4516 GTFND 4476, 4513
5510 GTMEM 3632, 3641, 4007
4465 GTST1 4501
4477 GTST2 4475
4500 GTST3 4466, 4470, 4472
24 HBUFL 5150, 5151, 6071
13 ILOCK 47, 454, 472, 476, 507, 512, 514, 1663, 2113, 2320, 4672, 4674, 4675, 4701, 4762, 4764
3615 INIT1 3620
3622 INIT2 3625
6173 IOE17 735
4214 IOERR 6173, 6201, 6205, 6207, 6211
12 IORST 3553
5430 IRRST 4757, 5002
5423 IRSAV 4741, 4761
6 ..025 51, 52, 53, 54
6 ..027 54, 55, 56, 57
6 ..029 57, 60, 61, 62
27 .REL. 47
3073 LABEL 0
3111 LBER3 3106
3112 LBER4 3106
3113 LBER5 3107
3114 LBER6 3107
2774 MOUNT 0
5242 MOVE1 5252
5253 MOVE2 5240, 5265
5266 MOVE3 5242, 5253, 5274
5275 MOVE4 5266
3 NINIT 65, 3624
5524 NOPAR 3701, 3702, 3714, 3723, 3763, 3773, 4013, 4043, 4066
414 OPN3A 411
420 OPN3B 415, 420
20 PRIME 47
23 PRIOR 47
4143 QWAIT 762, 1042, 1234, 1346, 1452, 1531, 1542, 1604, 3011, 3037, 3060, 3104, 5040
5334 RCHK1 5325
5336 RCHK2 5317
1104 RDFM1 1102, 1106
1023 READ1 1007
5 RELOC 47, 3263, 5322
4 RMODE 47, 420, 434, 444, 536, 556, 566, 632, 1160, 1272, 1333, 1645, 1654, 2110, 2225, 4324, 4331
4351, 4420, 4627
1556 RSTF1 1601
4654 RTNF1 4641, 4644
4671 RTNF2 4664
4703 RTNF3 4677
4616 RTNFA 4566
4636 RTNFB 4631, 4633
3644 SAVE1 3634
3702 SAVE3 4062
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 5
POST PROCESSOR ASSEMBLY DATA
3715 SAVE4 3703
4060 SAVE5 3757, 3764, 3772, 4004, 4040, 4044, 4053, 4057
4114 SAVE6 4067, 4105
4125 SAVE7 4122
3465 SETAB 0
22 SETQU 126, 1254, 1374, 1767, 2141, 2404, 2417, 2712, 4611
3247 SETU1 3242
3253 SETU2 3251
3256 SETU3 3254
3261 SETU4 3257
3264 SETU5 3262
3312 SETU6 3265
5403 SORT1 5417
5413 SORT2 5407
5417 SORT3 5405, 5411, 5412
5420 SORT4 5403
3627 SSAVE 3325, 3363, 3517, 3533, 3547, 3556, 3574
3527 STOP1 3525
5110 SUBOP 5061
5575 TLCNT 5362, 5375
5576 TNREC 5367, 5373
5567 TOMEM 5177, 5223, 5227, 5235, 5237
1401 TREOF 1345
104 UPDM1 102
125 UPDM2 133
5007 UPDS1 5011
5020 UPDS2 5014
3362 USAVE 0
3324 USTAT 0
5120 USTO1 5114
3066 VERR3 3062
3067 VERR4 3062
3070 VERR5 3063
3071 VERR6 3063
3072 VERR7 3064
1261 WREOF 1233
5631 ZEROQ 5437, 6034
26 ACTLNG 47, 4435, 4440, 4500, 4501, 4504, 4506, 4514, 4515, 4551, 4552, 5603, 5656, 5704, 5732, 5760, 6006
16 ADDFIL 120, 660, 2350, 2525, 2617, 3175
5057 ADDREC 712, 1221, 1251, 1371, 1756, 2414
25 AFENTY 47, 4430, 4433, 4434, 4446, 4451, 4457, 4525, 4526, 5651
2717 ALTER3 2674, 2675
5456 ANYFIL 1510, 1512, 1555, 1557, 3373, 3375
16 ASGNSW 47
770 ASIOER 762
771 ASNER3 752
772 ASNER4 763
773 ASNER5 766
210 ATTACH 0
223 ATTCH1 217
250 ATTCH2 224
236 ATTCH3 227
254 ATTERR 232, 235, 243
255 ATTMER 222, 247
256 ATTNAM 0
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 6
POST PROCESSOR ASSEMBLY DATA
2 AUTHNO 47, 113, 272, 430, 614, 1643, 1773, 3157, 3255, 4632
12 AUTHOR 47, 426, 1641, 1775, 1776, 4634, 4635
1 BASIGN 764
5 BCHECK 1051, 1264, 1422, 1445
7 BCLOSE 1526
4 BTRUNC 1342
20 BUFADR 47, 754, 3426
742 BUFFER 0
20 BUFREC 47
3 BWRITE 1230
2016 CHER12 1640
2005 CHFBSY 1665
2012 CHFER3 1633
2013 CHFER4 1624
2014 CHFER5 1626
2017 CHFER6 1626
2015 CHFER9 1766
1606 CHFILE 0
2011 CHFMER 2003
4523 CHKACT 402, 1637, 2041, 2106, 2313
5340 CHKADR 5333, 5335
1455 CHKER3 1420, 1443
1456 CHKER4 1426, 1451
4131 CHKPAR 3713, 3716, 3743, 4104
5534 CHKTMP 542, 2334, 2626, 4340
3313 CHNGUS 0
4530 CKACT1 4552
4551 CKACT2 4531, 4534, 4537, 4542, 4545
5550 CKACTP 4527, 4533
4553 CKACTX 4526, 4551
1454 CKIOER 1425, 1450
4363 CKLERR 4346
4322 CKLINK 400, 1625, 2037, 2077, 2207
4335 CKLNK1 4355
4366 CKLNK2 4354
4356 CKLNK3 4341
5533 CKLX34 4332, 4333, 4356, 4357, 4363, 4364, 4366, 4367
4443 CKSERR 4434, 4435
4431 CKSTAT 340
1546 CLIOER 1531
1510 CLSAL1 1504
1502 CLSALL 1473
1501 CLSER3 1475
1540 CLSER4 1532
1511 CLSGET 1520
1547 CLSMER 1534, 1544
4426 CSTAT0 4372
4434 CSTAT1 4430, 4433
23 CURREC 47
22 DADDRS 47
12 DATELU 47, 114, 615, 2261, 3160, 4624, 4625, 4711
5450 DATLOC 3607, 4257, 4317
5531 DATTMP
11 DAYTIM 47, 111, 612, 1735, 2256, 2347, 2463, 2505, 3155, 4626
22 DCOUNT 47
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 7
POST PROCESSOR ASSEMBLY DATA
2152 DELBSY 2115
2157 DELER3 2076
2160 DELER4 2100
2163 DELER5 2100
2161 DELER6 2105, 2112
2162 DELER8 2107
2063 DELFIL 0
2156 DELMER 2150
145 DELMFD 0
5556 DELREC 5031, 5040
36 DFILE1 51
37 DFILE2 52
40 DFILE3 53
50 DFILEF 51, 5036
5555 DFILX4 5027, 5041
21 DINDEX 47
207 DMFDE4 167
206 DMFDME 160, 174, 201, 204
6120 DRMNAM 231
6121 DSKNAM 234
2 DUSERS 47, 3271, 3272, 3300, 3302, 3311, 3525, 3541, 5440, 5442
5452 ENABLE 3613, 3616, 3644, 4152, 4756, 5001
13 ENAME1 47, 3227, 4236
14 ENAME2 47, 3232, 4240
15 ERCALL 47, 3235, 4227
11 ERCODE 47, 3221, 4234, 4246
10 ERNAME 47, 3216, 4225
6133 ERR100 47
6135 ERR101 50
7 ERRILC 47, 3213, 4223
5447 ERRLOC 3605, 3673
4220 ERROR1 4213
4252 ERROR2 4242
5514 ERRTRN 3675, 4072, 4074, 4255
5473 ERWORD 4064, 4110, 4241
6122 EXTEND 1206
1410 FCHECK 0
5500 FCLIR4 1521, 1535
1521 FCLOSE 1477, 1517
5454 FILNAM 100, 104, 106, 135, 156, 163, 173, 200, 223, 225, 230, 233, 241, 250, 251, 336, 343
344, 375, 752, 1024, 1146, 1323, 1420, 1443, 1467, 1471, 1475, 1502, 1505, 1516, 1563, 1622, 2034
2074, 2174, 2204, 2304, 2340, 2453, 2471, 2500, 2501, 2556, 2565, 2566, 2645, 3133, 3151, 3152, 3656
3657, 3732, 3752, 3755, 3756, 4235, 4237
5603 FILTMP 75, 153, 236, 1617, 2031, 2071, 2201, 2301, 2450, 2553, 2642, 3130, 4657, 4661
31 FILXIT 461, 2006, 2153, 2425, 4140, 4153, 4253
3572 FINMER 3567
7 FNAME1 47, 107, 127, 522, 535, 552, 1060, 1064, 1634, 1716, 1730, 1740, 2051, 2147, 2356, 2502, 2567
2655, 3153, 4414, 4543, 4544, 4650, 4656, 4717, 4744, 4767
10 FNAME2 47, 1635, 1724, 1732, 4415, 4546, 4547, 4745, 4770
6 FPRIOR 47, 275, 322, 715
5 FPROBN 47, 101, 122, 157, 242, 376, 500, 516, 521, 523, 532, 541, 547, 604, 651, 661, 662
707, 1032, 1065, 1173, 1255, 1366, 1375, 1623, 1630, 1737, 1741, 1753, 1770, 2000, 2002, 2035, 2050
2052, 2075, 2102, 2133, 2142, 2146, 2205, 2305, 2325, 2327, 2333, 2337, 2341, 2351, 2352, 2411, 2420
2454, 2465, 2470, 2472, 2477, 2526, 2527, 2557, 2564, 2620, 2621, 2646, 2654, 3134, 3150, 3176, 3177
4345, 4404, 4411, 4535, 4536, 4603, 4612, 4647, 4655, 4657, 4713, 4716, 4720, 4722, 4731, 4742, 4765
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 8
POST PROCESSOR ASSEMBLY DATA
5534
6 FPROGN 47, 4412, 4540, 4541, 4725, 4743, 4766
6132 FRSTER 3623, 5447
5570 FRWORD 5202, 5213, 5215, 5220, 5230, 5232
5435 FS.TST 0, 501, 517, 605, 1033, 1631, 2103, 2466, 4714
2177 FSTAT1 2174
2221 FSTAT2 2176
2164 FSTATE 0
2265 FSTER2 2200
2266 FSTER3 2206
2267 FSTER4 2210
2270 FSTER5 2210
4012 GETARY 4006, 4010
4317 GETDAY 0
5355 GETEFA 0, 4400, 4454, 4556, 5045, 5201, 5205, 5211
5530 GETMX4 4256, 4303
3515 GETUS1 3504, 3507, 3512
3477 GETUSR 0
4452 GSTAT1 4446, 4451
4444 GTAFIL 0
4033 GTARY1 4020
4035 GTARY2 4032
5574 GTATMP 5357, 5573
5507 GTCALL 3631, 3637, 3660, 4005, 4245
4256 GTDYTM 0, 110, 611, 1734, 2346, 3154, 4623, 4707
4520 GTSERR 4457, 4500, 4504, 4514
5547 GTSIR4 4452, 4456
4503 GTSTA1 4506
4507 GTSTA2 4503, 4515
4447 GTSTAT 335, 751, 1023, 1145, 1322, 1417, 1442, 1474, 1511, 1556, 2173, 3374
6127 ICFLAG 3663, 3674, 6130
33 IDISKS 64
32 IDRUMS 63
23 IFILES 62
11 IOBEGN 1575, 1602, 3543, 3563
5453 IOCALL 3655, 4224
12 IOCODE 47, 3224, 4221
3205 IODIAG 0
3555 IOFINI 0
10 IOHALT 1570, 3527
3573 IOINIT 0
3546 IORSET 0
2 IOSMEM 47, 3674, 6123
3516 IOSTOP 0
3532 IOSTRT 0
23 IOTASK 47, 1104
5600 IRSX12 5423, 5424, 5430, 5431
5601 IRSX34 5425, 5426, 5432, 5433
30 LBLTAP 3102
14 LCOUNT 47, 2213, 2221
2 LDEPTH 47, 4334
4 LIMITS 47, 3260, 5342, 5345
14 LNAME1 47, 550, 2570, 2601, 2613, 4344
15 LNAME2 47, 551, 2606, 2615, 5534
2632 LNKER5 2627
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 9
POST PROCESSOR ASSEMBLY DATA
2633 LNKER6 2552
2631 LNKMER 2622
11 LPROBN 47, 545, 2573, 2625, 4337, 4343
12 LPROGN 47, 546
6126 M.IL.F 616, 2506
3014 MNTER3 3012
3015 MNTER4 3012
24 MNTTAP 3006
2424 MOVBSY 2322
2430 MOVER3 2306
2431 MOVER5 2317
2433 MOVER8 2314
2434 MOVER9 2335
2271 MOVFIL 0
2432 MOVMER 2353, 2357
2435 MOVR10 2330
5565 MOVX34 5170, 5171, 5203, 5207, 5276, 5277, 5302, 5303
5301 MVERTN 5217, 5223, 5305, 5310
5161 MVHADR 5154
5564 MVHIR4 5144, 5166
5154 MVHOM1 5150
5142 MVHOME 3004, 3025
5563 MVHX12 5142, 5143, 5164, 5165
5502 NAMESW 1712, 1717, 1725, 1726
5553 NAMSUM 4746, 4755, 4771, 5000
5501 NEWMOD 1672, 1703
14 NORECS 47, 672, 676, 1163, 1211, 1224, 1242, 1336, 1353, 1674, 2122, 2365, 3165, 4572, 4667, 5030
6124 NULPAR 1472, 1713, 1721, 2576, 2603, 3733, 3753, 3761, 4002, 4041, 4051, 4063, 4462
2 NUPDAT 67, 5010
730 OPER15 714
740 OPER19 543
512 OPN35A 506
434 OPN3.1 422, 425, 431
444 OPN3.2 436, 441
454 OPN3.3 406, 446, 451
464 OPN3.4 456
504 OPN3.5 471
520 OPN3.6 502
566 OPN41A 560, 563
545 OPN4.1 401
630 OPN4.2 625
644 OPN4.3 634, 641
660 OPN4.4 655
576 OPN4.A 544, 555, 570, 573
603 OPN4.B 600
611 OPN4.C 606
715 OPN5.1 666, 671, 701
457 OPNBSY 474, 511
725 OPNER3 403
727 OPNER4 341
736 OPNER7 401
733 OPNERR 723
526 OPNMER 524, 663, 731, 734
607 OPNR18 503
5525 PARMEM 3666, 3707, 3726, 3737, 3746, 3766, 3776, 4024, 4046, 4100
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 10
POST PROCESSOR ASSEMBLY DATA
15 POINTR 47, 2511, 3170, 3174
5442 PRIORT 0, 3272, 3302, 3311
0 PROBNO 47, 216, 221, 252, 264, 346, 374, 1621, 2033, 2073, 2177, 2203, 2303, 2355, 2376, 2405, 2452
2475, 2551, 2555, 2562, 2644, 2677, 2713, 2734, 3126, 3132, 3141, 3146, 4123, 4723, 5013, 5016, 5631
1 PROGNO 47, 267, 347, 2476, 2563, 3147, 4726
16 QUEUE1 47, 3352, 5631
17 QUEUE2 47
20 QUEUE3 47, 5651
21 QUEUE4 47
22 QUEUE5 47
23 QUEUE6 47
24 QUEUE7 47
50 QUMERR 131, 165, 653, 711, 1175, 1257, 1370, 1377, 1755, 1772, 2135, 2144, 2400, 2407, 2413, 2422, 2701
2715, 2736, 3143, 4605, 4614
5311 RCHECK 0, 4036, 5216, 5222
5353 RCHKER 5332, 5344, 5351
5572 RCKTMP 5312, 5321, 5323, 5326, 5334, 5336, 5353
13 RCOUNT 47, 3422, 4564, 5370
1046 RDEOF1 1041
1103 RDEOF2 1075
1110 RDFER3 1024
1111 RDFER4 1030
1112 RDFER5 1044, 1100
1113 RDFER6 1043, 1055, 1077
1115 RDFER8 1061, 1066
774 RDFILE 0
1057 RDFMFD 1035
1114 RDIOER 1043, 1054, 1077
1010 RDWAIT 0
5362 RECADR 0, 2222, 2247, 2253, 3441, 3447
5105 RECQNG 5102
5103 RECQOK 5067
5557 RECTMP 5075, 5101
16 REDREC 47
16 REDWRD 47, 2212, 2246, 3440
5043 REFMFD 477, 515, 603, 1031, 1627, 2101, 2326, 2464, 2550, 3125, 4712
5562 REFTMP 5043, 5046
4554 RELEAS 0
5551 RELIR4 4554, 4561
17 REMOVE 176, 2145, 2354, 2653, 4646
1550 RESETF 0
4156 RESTOR 4137, 4143, 4252, 4747, 4772
4137 RETURN 142, 205, 253, 266, 271, 274, 277, 300, 310, 323, 724, 767, 1050, 1054, 1101, 1274, 1302
1400, 1427, 1431, 1433, 1453, 1500, 1512, 1557, 2004, 2054, 2151, 2224, 2232, 2240, 2245, 2251, 2255
2260, 2263, 2264, 2423, 2474, 2531, 2630, 2657, 2716, 2771, 3013, 3041, 3045, 3065, 3110, 3201, 3215
3220, 3223, 3226, 3231, 3234, 3237, 3240, 3361, 3463, 3531, 3545, 3554, 3571, 3626
20 REWRIT 134, 137, 172, 202, 220, 1057, 4730, 5015, 5020
120 RGRACE 47, 1165, 1215, 6122
2 RNAME1 47, 345, 533, 1514, 1561, 1636, 2001, 3407, 4416, 4467
3 RNAME2 47, 534, 1515, 1562, 3411, 4474
0 RPROBN 47, 350, 370, 412, 416, 432, 442, 452, 457, 526, 530, 564, 574, 601, 607, 642, 656
725, 736, 740, 3403, 4413, 4436, 4465, 4512, 4530, 4560, 4733, 4736
1 RPROGN 47, 531, 3405
2055 RSFER2 2030
2056 RSFER3 2036
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 11
POST PROCESSOR ASSEMBLY DATA
2057 RSFER4 2040
2060 RSFER5 2040
2061 RSFER6 2042
2020 RSFILE 0
2062 RSFMER 2053
1602 RSTBSY 1574
1605 RSTER3 1600
4646 RTNDEL 4571, 4615
4563 RTNFIL 730, 733, 1533, 1543, 1577
4733 RTNFND 4727
5552 RTNFX4 4563, 4734, 4737
5513 RTNILC 1432, 3672, 3704, 3706, 4073, 4075, 4077, 4111, 4113, 4142, 4171
4736 RTNMER 4651, 4660, 4721, 4732
4640 RTNRED 4620
14 RWSTAT 47, 465, 467, 623, 667, 1026, 1067, 1071, 1150, 1325, 2043, 2045, 2233, 3413, 4616, 4622, 4662
4704
4730 RWTUFD 4724
5476 SAVEQU 1176, 1217, 1220, 1250, 2702, 2704, 2710, 2711, 2737, 2743, 2757
4127 SAVER1 3724, 3734, 3744, 3754, 3760, 3774, 4003, 4014, 4037
4130 SAVER2 4120, 4124
5573 SCATMP 5355, 5356
41 SCRAP1 54
42 SCRAP2 55
43 SCRAP3 56
53 SCRAPF 54, 1540, 1572
14 SEARCH 76, 154, 237, 373, 537, 1062, 1620, 1736, 2032, 2072, 2202, 2302, 2331, 2336, 2451, 2554, 2623
2643, 3131, 4335, 4342, 4654
5527 SEOF34 4174, 4175, 4205, 4206
1537 SEQERR 1507, 1733, 2616
4166 SETEOF 1046, 1103, 1261
2436 SETFIL 0
2475 SETFL1 2455
2516 SETFL2 2513
2525 SETFL3 2517
2533 SETFME 2473, 2530
5305 SETMEM 3665, 5241, 5254, 5260, 5267, 5271
61 SETMOD 62, 65, 3622
312 SETPRI 0
3321 SETRAP 0
3241 SETUSR 0
5 SFILES 47, 5656
44 SINIT1 57
45 SINIT2 60
46 SINIT3 61
56 SINITF 57, 3615
5445 SLOTNO 0, 3243, 3244, 3267, 3274, 3314, 3315, 3335, 3502, 4145, 4751, 4774
24 SMTMP1 47
25 SMTMP2 47
5577 SORTSW 5402, 5416, 5420
5446 SSCALL 3322, 4211
4210 SSTRAP 0, 4144, 4750, 4773
4424 STAERR 4373
4371 STAFIL 0
4403 STAFL1 4407
4410 STAFL2 4405
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 12
POST PROCESSOR ASSEMBLY DATA
5545 STAFLX 4371, 4376, 4421, 4424
3543 START1 3541
5546 STATMP 4374, 4410, 4422
5474 STATUS 372, 437, 447, 464, 561, 571, 576, 621
4205 STEOF1 4204
2532 STFER3 2521, 2522
2534 STFER5 2460
2720 STORGE 0
2772 STRER3 2731, 2732
2773 STRER4 2753, 2770
3272 STU5.1 3276, 3277
3302 STU5.2 3304, 3306
3306 STU5.3 3303
3310 STU5.4 3305
5061 SUBREC 1205, 2136, 2401, 4606
4063 SVERTN 3717
5516 SVIR12 3646, 3647, 4156, 4157
5517 SVIR35 3650, 3651, 4160, 4161
5520 SVIR67 3652, 3653, 4162, 4163
10 SVWRDS 47, 3400, 3401, 3455, 3457
3203 TAPER5 3145
3204 TAPER6 3127
3115 TAPFIL 0
3202 TAPMER 3200
53 TBLMIN 47, 3337
6125 TGPMAX 116, 622, 2507, 3163
5451 TIMLOC 3611, 4276, 4320
5522 TMPIR1 3720, 4060
5523 TMPIR4 3645, 3676, 4065, 4114, 4125
5571 TOWORD 5206, 5214, 5221, 5224, 5231
6127 TPUNIT 3161
1403 TRFER3 1323
1404 TRFER4 1327
1405 TRFER5 1347
1406 TRFER6 1347
1407 TRFER9 1335
1313 TRFILE 0
1402 TRIOER 1346
47 UFDERR 102, 123, 131, 136, 141, 160, 165, 174, 201, 204, 222, 243, 377, 524, 543, 653, 663
711, 1061, 1066, 1175, 1257, 1370, 1377, 1624, 1742, 1755, 1772, 2003, 2036, 2053, 2076, 2135, 2144
2150, 2206, 2306, 2335, 2342, 2353, 2357, 2400, 2407, 2413, 2422, 2455, 2473, 2530, 2560, 2622, 2627
2647, 2656, 2701, 2715, 2736, 3135, 3143, 3200, 4341, 4346, 4605, 4614, 4651, 4660, 4721, 4732, 5017
5022
2660 ULKER3 2647
2661 ULKER4 2652
2662 ULKMER 2656
144 UMFDE5 105
143 UMFDME 123, 136, 141
3016 UMOUNT 0
26 UMTALL 3042
3046 UMTER3 3040, 3044
25 UMTTAP 3035
2634 UNLINK 0
4761 UNLOCK 2046, 4636, 4652, 4706
301 UPDATE 0
1 M1416-786 ... R. DALEY ... FILE COORDINATOR FOR FILE I/O SYSTEM ...... 02/22/71 1702.8 PAGE 13
POST PROCESSOR ASSEMBLY DATA
4722 UPDDIR 4653
15 UPDFIL 520, 1777, 2047, 2467, 4715
35 UPDISK 66
311 UPDMER 307
67 UPDMFD 0
64 UPDMOD 65, 67, 5007
5062 UPDRC1 5060
5070 UPDRC2 5065
34 UPDRUM 65
5025 UPDSER 5017, 5022
5004 UPDSYS 306, 3566
4712 UPDUFD 4637
5554 UPDX34 5004, 5005, 5012, 5023, 5025
3 URCODE 47, 404, 423, 553, 677, 1153, 1177, 1330, 1650, 1657, 1762, 3252, 4116
3374 USAVE1 3457
3443 USAVE2 3437
3451 USAVE3 3445
3460 USAVE4 3375
5437 USRTBL 0, 3245, 3316, 3342, 4426, 4427, 4444, 4445
3341 USTAT2 3337
3351 USTAT3 3360
3361 USTAT4 3356
5560 USTEMP 5111, 5133
5111 USTORE 265, 270, 273, 276, 2223, 2231, 2237, 2244, 2250, 2254, 2257, 2262, 3214, 3217, 3222, 3225, 3230
3233, 3236
5561 USTX34 5123, 5124, 5137, 5140
3464 USVER3 3400
5436 UTABLE 0, 3246, 3247, 3317, 3562, 4115, 4220, 4431, 4432, 4447, 4450, 4523, 4524, 5320
6117 UTFNAM 226
5435 VARSTO 5435
3047 VERIFY 0
27 VERTAP 3056
5477 WAITSW 1006, 1022, 1047, 1130, 1144, 1262
1312 WFER10 1165
21 WINDEX 47
1304 WRFER3 1146
1305 WRFER4 1152
1306 WRFER5 1236
1307 WRFER6 1207, 1223
1310 WRFER7 1235, 1270, 1301
1311 WRFER9 1162
1116 WRFILE 0
1303 WRIOER 1235, 1267, 1300
1145 WRITE1 1131
17 WRTREC 47
17 WRTWRD 47, 2220, 2252, 3446
1132 WRWAIT 0
6034 ZEROQ1 5647
6071 ZEROQ2 5650
203 ZEROQL 5437, 6034
0 NO ERROR IN ABOVE ASSEMBLY.
SEARB BCD 02/22/71 1718.3 4852 00000
1 FAP ASSEMBLY LISTING ... ... ... FILE SEAR2B _____FAP___ 03/04/70 1545.0 PAGE 1
00003 ENTRY SEARCH TO FIND A FILE SEAR0002
00007 ENTRY REMOVE TO DELETE A FILE SEAR0003
00013 ENTRY ADDFIL TO CREATE A NEW FILE SEAR0004
00017 ENTRY UPDFIL TO CHANGE A FILE SEAR0005
00023 ENTRY REWRIT TO UPDATE USER TO DISK SEAR0006
00027 ENTRY IFILES TO INITIALIZE SEARCH SEAR0007
00033 ENTRY SETQU TO SET QUOTA SEAR0008
00037 ENTRY GETQU TO GET QUOTA SEAR0009
00232 ENTRY LATER SEAR0010
EXTERN SRCH,GETEFA,PRESET SEAR0011
SEAR0012
TRANSFER VECTOR
00000 625123306060 SRCH
00001 272563252621 GETEFA
00002 475125622563 PRESET
00012 LATERS EQU 10 ROOM FOR 5 OLD ERRORS SEAR0013
00007 ENTLEN EQU 7 SEAR0014
000001 XAB BOOL 1 SEAR0015
000002 XREL BOOL 2 SEAR0016
000004 RY BOOL 4 SEAR0017
000010 Y3 BOOL 10 SEAR0018
000020 ACY BOOL 20 SEAR0019
000040 UPDSW BOOL 40 SEAR0020
000100 WY BOOL 100 SEAR0021
000200 ZEY BOOL 200 SEAR0022
SEAR0023
SETUP MACRO MODE,RET,ERRET,XYCODE SEAR0024
STI IND SAVE IND'S SEAR0025
LDI *+2 GET ENTRY TYPE CODE SEAR0026
TRA DOIT AND DO IT SEAR0027
VFD 3/MODE,3/RET,3/ERRET,9/XYCODE SEAR0028
SETUP END SEAR0029
SEAR0030
00003 SEARCH SETUP 1,5,4,XAB+WY+Y3 SEAR0031
SEAR0032
00007 REMOVE SETUP 2,4,3,XAB+RY+ZEY SEAR0033
SEAR0034
00013 ADDFIL SETUP 2,4,3,RY SEAR0035
SEAR0036
00017 UPDFIL SETUP 2,5,4,XAB+RY+Y3+UPDSW SEAR0037
SEAR0038
00023 REWRIT SETUP 3,3,2,0 SEAR0039
SEAR0040
00027 IFILES SETUP 0,2,1,0 SEAR0041
SEAR0042
00033 SETQU SETUP 2,4,3,XREL+ACY+RY SEAR0043
SEAR0044
00037 GETQU SETUP 1,4,3,XREL+ACY SEAR0045
SEAR0046
00043 0602 00 0 00313 DOIT SLW AC SAVE AC FOR QUOTA CALLS SEAR0047
00044 0636 00 4 00215 SCA XRS,4 SEAR0048
00045 0634 00 1 00216 SXA XRS+1,1 SEAR0049
00046 0604 00 0 00277 STI TYPE SAVE TYPE CODE SEAR0050
00047 0560 00 0 00277 LDQ TYPE GET MODE AND RETURNS SEAR0051
1 FAP ASSEMBLY LISTING ... ... ... FILE SEAR2B _____FAP___ 03/04/70 1545.0 PAGE 2
00050 -0754 00 0 00000 ZAC SEAR0052
00051 -0763 00 0 00003 LGL 3 SEAR0053
00052 0602 00 0 00300 SLW MODE SEAR0054
00053 -0754 00 0 00000 ZAC SEAR0055
00054 -0763 00 0 00003 LGL 3 SEAR0056
00055 0621 00 0 00220 STA RETRA SEAR0057
00056 -0754 00 0 00000 ZAC SEAR0058
00057 -0763 00 0 00003 LGL 3 SEAR0059
00060 0621 00 0 00225 STA ERETRA SEAR0060
00061 -0500 00 4 00001 CAL 1,4 GET X (PROBN,PROGN,ITH QUOTA WORD SEAR0061
00062 0074 00 4 00001 TSX GETEFA,4 ALPHA,BETA) SEAR0062
00063 0737 00 4 00000 PAC ,4 SEAR0063
00064 -0500 00 4 00000 CAL 0,4 PROBN SEAR0064
00065 0560 00 4 00001 LDQ 1,4 PROGN SEAR0065
00066 0602 00 0 00305 SLW X SEAR0066
00067 -0600 00 0 00306 STQ X+1 SEAR0067
00070 0074 00 4 00251 TSX ERCK,4 CHECK FOR ERRORS SINCE LAST CALL SEAR0068
00071 0020 00 0 00221 TRA LATERR FOUND ONE SEAR0069
00072 -0056 00 000001 LNT XAB DOES THIS X FORM HAVE AN ALPHA BETA SEAR0070
00073 0020 00 0 00122 TRA ZEROAB NO SEAR0071
00074 0535 00 4 00215 LAC XRS,4 RESTOR IR4 SEAR0072
00075 -0500 00 4 00002 CAL 2,4 GET MATCH WORDS SEAR0073
00076 0074 00 4 00001 TSX GETEFA,4 SEAR0074
00077 0737 00 4 00000 PAC ,4 SEAR0075
00100 -0500 00 4 00000 CAL 0,4 ALPHA SEAR0076
00101 0560 00 4 00001 LDQ 1,4 BETA SEAR0077
00102 0602 00 0 00310 SLW X+3 SEAR0078
00103 -0600 00 0 00311 STQ X+4 SEAR0079
00104 0322 00 0 00303 ERA UFD IF UFD FILE SEAR0080
00105 -0100 00 0 00124 TNZ DONEAB SEAR0081
00106 -0130 00 0 00000 XCL SEAR0082
00107 0322 00 0 00304 ERA UFD+1 SEAR0083
00110 -0100 00 0 00124 TNZ DONEAB SEAR0084
00111 -0500 00 0 00305 CAL X SEAR0085
00112 0560 00 0 00306 LDQ X+1 PROBN-PROGN SEAR0086
00113 0602 00 0 00310 SLW X+3 SEAR0087
00114 -0600 00 0 00311 STQ X+4 SEAR0088
00115 -0500 00 0 00301 CAL MFD SEAR0089
00116 0560 00 0 00302 LDQ MFD+1 SEAR0090
00117 0602 00 0 00305 SLW X SEAR0091
00120 -0600 00 0 00306 STQ X+1 SEAR0092
00121 0020 00 0 00124 TRA DONEAB SEAR0093
00122 0600 00 0 00310 ZEROAB STZ X+3 HERE IF ZERO ALPHA BETA SEAR0094
00123 0600 00 0 00311 STZ X+4 SEAR0095
00124 0600 00 0 00307 DONEAB STZ X+2 SEAR0096
00125 -0056 00 000002 LNT XREL IF CONCERNED WITH QUOTA WORDS SEAR0097
00126 0020 00 0 00133 TRA NOREL NO, SEAR0098
00127 0535 00 4 00215 LAC XRS,4 GET EFF ADR OF 2,4 SEAR0099
00130 -0500 00 4 00002 CAL 2,4 SEAR0100
00131 0074 00 4 00001 TSX GETEFA,4 SEAR0101
00132 0621 00 0 00307 STA X+2 AND USE AS QUOTA NUMBER SEAR0102
00133 -0056 00 000004 NOREL LNT RY WILL SRCH READ A Y SEAR0103
00134 0020 00 0 00160 TRA DONEY NO SEAR0104
00135 -0056 00 000200 LNT ZEY SHOULD Y BE ZERO SEAR0105
00136 0020 00 0 00143 TRA YAC NO SEAR0106
00137 0774 00 4 00007 AXT ENTLEN,4 YES, ZERO Y SEAR0107
1 FAP ASSEMBLY LISTING ... ... ... FILE SEAR2B _____FAP___ 03/04/70 1545.0 PAGE 3
00140 0600 00 4 00322 STZ Y+1+ENTLEN,4 SEAR0108
00141 2 00001 4 00140 TIX *-1,4,1 SEAR0109
00142 0020 00 0 00160 TRA DONEY SEAR0110
00143 -0054 00 000020 YAC LFT ACY IS Y THE AC SEAR0111
00144 0020 00 0 00160 TRA DONEY YES SEAR0112
00145 0535 00 4 00215 LAC XRS,4 SEAR0113
00146 -0500 00 4 00003 CAL 3,4 GET Y (ENTRY) ADDRESS SEAR0114
00147 -0056 00 000010 LNT Y3 IF AT 3,4 SEAR0115
00150 -0500 00 4 00002 CAL 2,4 DON'T GET IT FROM 2,4 SEAR0116
00151 0074 00 4 00001 TSX GETEFA,4 SEAR0117
00152 0737 00 1 00000 PAC ,1 SEAR0118
00153 0774 00 4 00007 AXT ENTLEN,4 COPY FROM CALLERS CORE SEAR0119
00154 -0500 00 1 00002 CAL 2,1 SEAR0120
00155 0602 00 4 00322 SLW Y+1+ENTLEN,4 SEAR0121
00156 1 77777 1 00157 TXI *+1,1,-1 SEAR0122
00157 2 00001 4 00154 TIX *-3,4,1 SEAR0123
00160 0074 00 4 00002 DONEY TSX PRESET,4 SEAR0124
00161 0074 00 4 00000 TSX SRCH,4 SINGLE CALL TO REST OF SEARCH SEAR0125
00162 0 00000 0 00300 MODE SEAR0126
00163 0 00000 0 00305 X SEAR0127
00164 0 00000 0 00312 Y SEAR0128
00165 0737 00 7 00000 PAC ,7 RETURN CODE SEAR0129
00166 0020 60 7 00167 TRA* *+1,7 SEAR0130
00167 0 00000 0 00172 OK FOUND OK SEAR0131
00170 0 00000 0 00222 ERROR NOT FOUND/NO ROOM SEAR0132
00171 0 00000 0 00222 ERROR DISK ERROR SEAR0133
00172 0441 00 0 00277 OK LDI TYPE RESTOR IND SEAR0134
00173 -0056 00 000100 LNT WY WAS Y WRITTEN SEAR0135
00174 0020 00 0 00214 TRA RAC NO SEAR0136
00175 0535 00 4 00215 LAC XRS,4 YES, COPY TO CALLER SEAR0137
00176 -0500 00 4 00003 CAL 3,4 GET ADR OF Y SEAR0138
00177 -0056 00 000010 LNT Y3 SEAR0139
00200 -0500 00 4 00002 CAL 2,4 SEAR0140
00201 0074 00 4 00001 TSX GETEFA,4 SEAR0141
00202 0737 00 1 00000 PAC ,1 SEAR0142
00203 -0500 00 0 00305 CAL X FILL IN PROBN-PROGN SEAR0143
00204 0560 00 0 00306 LDQ X+1 SEAR0144
00205 0602 00 1 00000 SLW 0,1 SEAR0145
00206 -0600 00 1 00001 STQ 1,1 SEAR0146
00207 0774 00 4 00007 AXT ENTLEN,4 SEAR0147
00210 -0500 00 4 00322 CAL Y+1+ENTLEN,4 SEAR0148
00211 0602 00 1 00002 SLW 2,1 SEAR0149
00212 1 77777 1 00213 TXI *+1,1,-1 SEAR0150
00213 2 00001 4 00210 TIX *-3,4,1 SEAR0151
00214 -0500 00 0 00313 RAC CAL AC RETURN AC (IN CASE OF GETQU) SEAR0152
00215 -0774 00 4 00000 XRS AXC ,4 RESTOR AND RETURN SEAR0153
00216 0774 00 1 00000 AXT ,1 SEAR0154
00217 0441 00 0 00276 LDI IND SEAR0155
00220 0020 00 4 00220 RETRA TRA *,4 SEAR0156
SEAR0157
00221 0774 00 7 77776 LATERR AXT -2,7 HERE ON OLD ERROR SEAR0158
00222 0535 00 4 00215 ERROR LAC XRS,4 HERE ON NEW ERROR SEAR0159
00223 0534 00 1 00216 LXA XRS+1,1 RESTOR IR'S AND IND SEAR0160
00224 0441 00 0 00276 LDI IND SEAR0161
00225 -0500 00 4 00000 ERETRA CAL **,4 GET ERROR RETURN WORD SEAR0162
00226 0737 00 5 00000 PAC ,5 IN CASE OF NOT FOUND SEAR0163
1 FAP ASSEMBLY LISTING ... ... ... FILE SEAR2B _____FAP___ 03/04/70 1545.0 PAGE 4
00227 3 77776 7 00231 TXH *+2,7,-2 TEST FOR NOT FOUND SEAR0164
00230 -0737 00 5 00000 PDC ,5 NO, RETURN THROUGH DEC. SEAR0165
00231 0020 00 5 00000 TRA 0,5 SEAR0166
SEAR0167
00232 0636 00 4 00247 LATER SCA XRL,4 HERE TO REMEMBER ERROR TIL NEXT CALL SEAR0168
00233 -0500 00 4 00001 CAL 1,4 SEAR0169
00234 0074 00 4 00001 TSX GETEFA,4 GET ADR OF PROBN,PROGN SEAR0170
00235 0737 00 4 00000 PAC ,4 SEAR0171
00236 -0500 00 4 00000 CAL 0,4 SEAR0172
00237 0560 00 4 00001 LDQ 1,4 SEAR0173
00240 0074 00 4 00251 TSX ERCK,4 ERASE ANY OLDER ERRORS SEAR0174
00241 0020 00 0 00242 TRA *+1 SEAR0175
00242 0774 00 4 00012 AXT LATERS,4 LOOK FOR SPACE SEAR0176
00243 0520 00 4 00334 ZET LATERB+LATERS,4 SEAR0177
00244 2 00002 4 00243 TIX *-1,4,2 SEAR0178
00245 0602 00 4 00334 SLW LATERB+LATERS,4 OVER WRITE ONE IF NESS SEAR0179
00246 -0600 00 4 00335 STQ LATERB+LATERS+1,4 SEAR0180
00247 -0774 00 4 00000 XRL AXC ,4 SEAR0181
00250 0020 00 4 00002 TRA 2,4 SEAR0182
SEAR0183
00251 0636 00 4 00261 ERCK SCA XRE,4 HERE TO CHECK FOR OLD ERROR SEAR0184
00252 -0130 00 0 00000 XCL LOOK AT PROGN FIRST SEAR0185
00253 0774 00 4 00012 AXT LATERS,4 SEAR0186
00254 -0340 00 4 00335 LAS LATERB+LATERS+1,4 SEAR0187
00255 0020 00 0 00257 TRA *+2 SEAR0188
00256 0020 00 0 00263 TRA FNDG FOUND PROGN SEAR0189
00257 2 00002 4 00254 MORE TIX *-3,4,2 SEAR0190
00260 -0130 00 0 00000 XCL SEAR0191
00261 -0774 00 4 00000 XRE AXC ,4 NOT FOUND (NO ERROR) SEAR0192
00262 0020 00 4 00002 TRA 2,4 SEAR0193
00263 -0130 00 0 00000 FNDG XCL CHECK PROBN SEAR0194
00264 -0340 00 4 00334 LAS LATERB+LATERS,4 SEAR0195
00265 0020 00 0 00274 TRA DOMORE SEAR0196
00266 0020 00 0 00270 TRA *+2 SEAR0197
00267 0020 00 0 00274 TRA DOMORE SEAR0198
00270 0600 00 4 00334 STZ LATERB+LATERS,4 FOUND, ZERO AND RETURN 1,4 SEAR0199
00271 0600 00 4 00335 STZ LATERB+LATERS+1,4 SEAR0200
00272 0535 00 4 00261 LAC XRE,4 SEAR0201
00273 0020 00 4 00001 TRA 1,4 SEAR0202
00274 -0130 00 0 00000 DOMORE XCL GET PROGN BACK IN AC SEAR0203
00275 0020 00 0 00257 TRA MORE AND LOOK MORE SEAR0204
00276 0 00000 0 00000 IND INDICATORS SAVED HERE SEAR0205
00277 0 00000 0 00000 TYPE TYPE CODE SEAR0206
00300 0 00000 0 00000 MODE MODE OF CALL SEAR0207
00301 443326332433 MFD BCI 2,M.F.D.(FILE) SEAR0208
00302 742631432534
00303 643326332433 UFD BCI 2,U.F.D.(FILE) SEAR0209
00304 742631432534
00305 X BSS 5 WHAT WE ARE LOOKING FOR SEAR0210
00312 Y BSS ENTLEN+1 WHERE WE FOUND IT AND WHAT IT WAS SEAR0211
00313 AC SYN Y+1 SEAR0212
00322 LATERB BSS LATERS SEAR0213
END SEAR0214
1 FAP ASSEMBLY LISTING ... ... ... FILE SEAR2B _____FAP___ 03/04/70 1545.0 PAGE 1
POST PROCESSOR ASSEMBLY DATA
334 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
305 X 66, 67, 102, 103, 111, 112, 113, 114, 117, 120, 122, 123, 124, 132, 163, 203, 204
312 Y 140, 155, 164, 210, 322
313 AC 43, 214, 322
172 OK 167
4 RY 3, 12, 16, 22, 36, 133
100 WY 3, 6, 173
10 Y3 3, 6, 22, 147, 177
20 ACY 3, 36, 42, 143
276 IND 3, 7, 13, 17, 23, 27, 33, 37, 217, 224
301 MFD 115, 116
214 RAC 174
303 UFD 104, 107
1 XAB 3, 6, 12, 22, 72
261 XRE 251, 272
247 XRL 232
215 XRS 44, 45, 74, 127, 145, 175, 222, 223
143 YAC 136
200 ZEY 3, 12, 135
43 DOIT 5, 11, 15, 21, 25, 31, 35, 41
251 ERCK 70, 240
263 FNDG 256
300 MODE 52, 162
257 MORE 275
0 SRCH 161
277 TYPE 46, 47, 172
2 XREL 3, 36, 42, 125
160 DONEY 134, 142, 144
222 ERROR 170, 171
37 GETQU 0
232 LATER 0
133 NOREL 126
220 RETRA 55
33 SETQU 0
40 UPDSW 3, 22
13 ADDFIL 0
274 DOMORE 265, 267
124 DONEAB 105, 110, 121
7 ENTLEN 3, 137, 140, 153, 155, 207, 210, 312
225 ERETRA 60
1 GETEFA 62, 76, 131, 151, 201, 234
27 IFILES 0
322 LATERB 243, 245, 246, 254, 264, 270, 271
221 LATERR 71
12 LATERS 3, 242, 243, 245, 246, 253, 254, 264, 270, 271, 322
2 PRESET 160
7 REMOVE 0
23 REWRIT 0
3 SEARCH 0
17 UPDFIL 0
122 ZEROAB 73
1 FAP ASSEMBLY LISTING ... ... ... FILE SEAR2B _____FAP___ 03/04/70 1545.0 PAGE 2
POST PROCESSOR ASSEMBLY DATA
0 NO ERROR IN ABOVE ASSEMBLY.
SRCHB BCD 02/22/71 1718.3 1811 00000
1 TSX SRCH,4 STICKY/DISK DISPATCHER 03/04/70 1545.8 PAGE 1
* MODE 0 INIT,1 READ,2 WRITE,3 UPDATE SRCH0003
* X LOOK FOR X SRCH0004
* Y AND READ/WRITE Y SRCH0005
* SLW RET 0 OK, 1 NOTFOUND/NOROOM,2 DISKERROR SRCH0006
* SRCH0007
00005 ENTRY SRCH SRCH0008
EXTERN PUSH,GETEFA,STICKY,SCNDIR,STICKY,POP SRCH0009
TRANSFER VECTOR
00000 476462306060 PUSH
00001 272563252621 GETEFA
00002 626331234270 STICKY
00003 622345243151 SCNDIR
00004 474647606060 POP
00005 0636 00 4 00101 SRCH SCA XRSH,4 SAVE IRS AND TEMPS SRCH0010
00006 -0634 00 1 00101 SXD XRSH,1 SRCH0011
00007 0634 00 2 00102 SXA XRSH+1,2 SRCH0012
00010 -0634 00 3 00102 SXD XRSH+1,3 SRCH0013
00011 0074 00 4 00000 TSX PUSH,4 SRCH0014
00012 0 00011 0 00100 XRSH-1,,NSAV SRCH0015
00013 0 00000 0 00013 * SRCH0016
00014 0535 00 4 00101 LAC XRSH,4 SRCH0017
00015 -0500 60 4 00001 CAL* 1,4 GET MODE SRCH0018
00016 0602 00 0 00103 SLW MODE SRCH0019
00017 -0500 00 4 00002 CAL 2,4 GET X SRCH0020
00020 0074 00 4 00001 TSX GETEFA,4 SRCH0021
00021 0737 00 7 00000 PAC ,7 SAVE IN IR7 SRCH0022
00022 0774 00 4 00005 AXT 5,4 COPY X TO SAVE IT SRCH0023
00023 -0500 00 7 00000 CAL 0,7 SRCH0024
00024 0602 00 4 00111 SLW X+5,4 SRCH0025
00025 1 77777 7 00026 TXI *+1,7,-1 SRCH0026
00026 2 00001 4 00023 TIX *-3,4,1 SRCH0027
00027 0535 00 4 00101 LAC XRSH,4 SRCH0028
00030 -0500 00 4 00003 CAL 3,4 GET Y SRCH0029
00031 0074 00 4 00001 TSX GETEFA,4 SRCH0030
00032 0737 00 2 00000 PAC ,2 SRCH0031
00033 0074 00 4 00002 TSX STICKY,4 SEE IF IN STICKY REGS SRCH0032
00034 0 00000 0 00103 MODE SRCH0033
00035 0 00000 0 00104 X SRCH0034
00036 0 00000 2 00000 0,2 SRCH0035
00037 0737 00 4 00000 PAC ,4 SRCH0036
00040 0734 00 3 00000 PAX ,3 SAVE RETURN SRCH0037
00041 0020 60 4 00042 TRA* *+1,4 DISPATCH ON RETURN SRCH0038
00042 0 00000 0 00070 RET OK IT IS DONE SRCH0039
00043 0 00000 0 00070 RET DOESN'T EXIST SRCH0040
00044 0 00000 0 00046 GOTODC DOESN'T KNOW, LOOK AT DISK SRCH0041
00045 0 00000 0 00045 * SRCH0042
00046 0074 00 4 00003 GOTODC TSX SCNDIR,4 GO TO THE DISK TO FIND IT SRCH0043
00047 0 00000 0 00103 MODE SRCH0044
00050 0 00000 0 00104 X SRCH0045
00051 0 00000 2 00000 0,2 SRCH0046
00052 0734 00 3 00000 PAX ,3 SAVE RET SRCH0047
00053 3 00001 3 00070 TXH RET,3,1 IF BAD RETURN BAD SRCH0048
00054 -3 00000 3 00056 TXL *+2,3,0 IF FOUND USE Y SRCH0049
00055 -0774 00 2 00112 AXC ZERO,2 OTHERWISE USE ZERO Y SRCH0050
1 TSX SRCH,4 STICKY/DISK DISPATCHER 03/04/70 1545.8 PAGE 2
00056 0535 00 4 00103 LAC MODE,4 IF MODE=READ OR WRITE SRCH0051
00057 0020 60 4 00060 TRA* *+1,4 SRCH0052
00060 0 00000 0 00070 RET SRCH0053
00061 0 00000 0 00064 PUT SRCH0054
00062 0 00000 0 00064 PUT SRCH0055
00063 0 00000 0 00070 RET SRCH0056
00064 0074 00 4 00002 PUT TSX STICKY,4 PUT ENTRY IN STICKY REGS SRCH0057
00065 0 00000 0 00111 PUTMOD SRCH0058
00066 0 00000 0 00104 X SRCH0059
00067 0 00000 2 00000 0,2 SRCH0060
00070 0074 00 4 00004 RET TSX POP,4 UNSAVE SRCH0061
00071 0 00000 0 00071 * SRCH0062
00072 0754 00 3 00000 PXA ,3 SRCH0063
00073 0535 00 4 00101 LAC XRSH,4 SRCH0064
00074 -0534 00 1 00101 LXD XRSH,1 SRCH0065
00075 0534 00 2 00102 LXA XRSH+1,2 SRCH0066
00076 -0534 00 3 00102 LXD XRSH+1,3 SRCH0067
00077 0020 00 4 00004 TRA 4,4 SRCH0068
* SRCH0069
00100 625123306060 BCI 1,SRCH SRCH0070
00101 0 00000 0 00000 XRSH -XR4,,XR1 SRCH0071
00102 0 00000 0 00000 XR2,,XR3 SRCH0072
00103 0 00000 0 00000 MODE SRCH0073
00104 X BSS 5 SRCH0074
00011 NSAV SYN *-XRSH+1 SRCH0075
00111 0 00000 0 00004 PUTMOD 4 SRCH0076
00112 DUP 1,3 RELADR,ALPHA,BETA SRCH0077
00112 0 00000 0 00000 ZERO PZE 0 SRCH0078
00113 0 00000 0 00000
00114 0 00000 0 00000
END SRCH0079
1 TSX SRCH,4 STICKY/DISK DISPATCHER 03/04/70 1545.8 PAGE 1
POST PROCESSOR ASSEMBLY DATA
115 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
104 X 24, 35, 50, 66
4 POP 70
64 PUT 61, 62
70 RET 42, 43, 53, 60, 63
103 MODE 16, 34, 47, 56
11 NSAV 12, 111
0 PUSH 11
5 SRCH 0
101 XRSH 5, 6, 7, 10, 12, 14, 27, 73, 74, 75, 76, 111
112 ZERO 55
1 GETEFA 20, 31
46 GOTODC 44
111 PUTMOD 65
3 SCNDIR 46
2 STICKY 33, 64
0 NO ERROR IN ABOVE ASSEMBLY.
SCNDB BCD 02/22/71 1718.3 15922 00000
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 1
00023 ENTRY SCNDIR SCND0002
UNLIST SCND0003
00001 NDIR EQU 1 NUMBER OF DIRECTORIES THAT MAY BE OPEN SCND0006
00021 DIRSIZ EQU 17 LENGTH OF STATUS TABLE SCND0007
00660 BUFSIZ EQU 432 SIZE OF TRACK BUFFER SCND0008
00010 M EQU 8 MODULE WHERE MFD RESIDES SCND0009
00007 ENTLEN EQU 7 LENGTH OF MFD/UFD ENTRY SCND0010
00106 NREAD EQU 10*ENTLEN SCND0011
00003 QTALEN EQU 3 NUMBER OF QUOTA WORDS SCND0012
EXTERN BOPEN,BCLOSE,BASIGN,BREAD,BWRITE,BTRUNC,BCHECK,BSAVE SCND0013
EXTERN PUSH,POP,SRCH,GETEFA,GTDYTM,GETDAY,LATER,STAFIL SCND0014
* TSX SCNDIR,4 SCND0015
* PZE =SMODE 0=INIT, 1=REF, 2=PUT, 3=UPDATE SCND0016
* PZE X SCND0017
* PZE Y SCND0018
* SLW RET CODE 0=OK, 1=NOT FOUND/NO ROOM, 2=DISK ERROR SCND0019
* SCND0020
00021 0 00000 0 00000 NSCAN COUNTER FOR SCANS SCND0021
00022 0 00000 0 00000 NSWAP COUNTER FOR SWAPS SCND0022
00023 0636 00 4 01154 SCNDIR SCA XRN,4 SCND0023
00024 -0634 00 1 01154 SXD XRN,1 SCND0024
00025 0634 00 2 01155 SXA XRN+1,2 SCND0025
00026 -0634 00 3 01155 SXD XRN+1,3 SCND0026
00027 0074 00 7 00020 TSX $TRAC,7 SCND0027
00030 002560622324 BCI 1,0E SCD SCND0028
00031 -0500 60 4 00001 CAL* 1,4 SCND0029
00032 0621 00 0 01157 STA SMODE SAVE MODE SCND0030
00033 -0500 00 4 00002 CAL 2,4 SCND0031
00034 0074 00 4 00013 TSX GETEFA,4 SCND0032
00035 0737 00 4 00000 PAC ,4 COPY X INTO SCN'S STO SCND0033
00036 0774 00 1 00005 AXT 5,1 SCND0034
00037 -0500 00 4 00000 CAL 0,4 SCND0035
00040 0602 00 1 01165 SLW X+5,1 SCND0036
00041 1 77777 4 00042 TXI *+1,4,-1 SCND0037
00042 2 00001 1 00037 TIX *-3,1,1 SCND0038
00043 0535 00 1 01157 LAC SMODE,1 DISPATCH ON MODE SCND0039
00044 0020 60 1 00045 TRA* *+1,1 SCND0040
00045 0 00000 0 00470 INIT INITALIZE SCND0041
00046 0 00000 0 00052 RRD READ SCND0042
00047 0 00000 0 00056 WWT WRITE SCND0043
00050 0 00000 0 00536 UPDATE REWRITE SCND0044
00051 0 00000 0 00545 RSPNT RESET RELADR TO 0 SCND0045
00052 0074 00 4 00453 RRD TSX CKFMFD,4 IF MFD SCND0046
00053 0020 00 0 00056 TRA WWT SCND0047
00054 -0500 00 0 01207 CAL MFDREL SCND0048
00055 0020 00 0 00261 TRA NOSRCH DON'T OPEN SCND0049
00056 -0500 00 0 00021 WWT CAL NSCAN COUNT SCANS SCND0050
00057 0400 00 0 02224 ADD =1 .. SCND0051
00060 0602 00 0 00021 SLW NSCAN .. SCND0052
00061 0074 00 4 00552 TSX FIND,4 LOOK FOR DIRECTORY OPEN SCND0053
00062 0020 00 0 00067 TRA WW01 SCND0054
00063 -0500 00 1 01337 CAL FREQ+NDIR,1 UPDATE USAGE SCND0055
00064 0401 00 0 01177 ADM SAVING .. SCND0056
00065 0602 00 1 01337 SLW FREQ+NDIR,1 .. SCND0057
00066 0020 00 0 00115 TRA FNDOPN SCND0058
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 2
00067 0774 00 1 00001 WW01 AXT NDIR,1 LOOK FOR FREE BUFFER SCND0059
00070 -0520 00 1 01340 NZT USED+NDIR,1 SCND0060
00071 0020 00 0 00112 TRA FNDSPC FOUND SPACE SCND0061
00072 2 00001 1 00070 TIX *-2,1,1 SCND0062
00073 -0500 00 0 00022 CAL NSWAP COUNT SWAPS SCND0063
00074 0400 00 0 02224 ADD =1 SCND0064
00075 0602 00 0 00022 SLW NSWAP .. SCND0065
00076 0774 00 1 00001 AXT NDIR,1 MUST MAKE ROOM SCND0066
00077 -0500 00 0 01175 CAL ONES CLOSE THE DIR WHICH IS LEAST USEFUL SCND0067
00100 -0340 00 1 01337 PL LAS FREQ+NDIR,1 SCND0068
00101 0020 00 0 00105 TRA *+4 IF USELESS SCND0069
00102 0020 00 0 00103 TRA *+1 SCND0070
00103 2 00001 1 00100 PTIX TIX PL,1,1 SCND0071
00104 0020 00 0 00111 TRA P1 FOUND IT SCND0072
00105 -0500 00 1 01337 CAL FREQ+NDIR,1 SCND0073
00106 0634 00 1 00111 SXA P1,1 SCND0074
00107 0100 00 0 00111 TZE P1 TOTALLY USELESS SCND0075
00110 2 00001 1 00100 TIX PL,1,1 SCND0076
00111 0774 00 1 00000 P1 AXT --,1 SCND0077
00112 -0500 00 1 01342 FNDSPC CAL DIRPNT+NDIR,1 SET IR3 SCND0078
00113 0737 00 3 00000 PAC ,3 SCND0079
00114 0074 00 4 00567 TSX SWITCH,4 CLOSE AND OPEN NEW SCND0080
00115 -0500 00 0 01162 FNDOPN CAL XRELAD WAS RELATIVE ADR GIVEN SCND0081
00116 -0100 00 0 00261 TNZ NOSRCH YES, USE IT SCND0082
00117 0074 00 4 00453 TSX CKFMFD,4 CHECK FOR MFD SCND0083
00120 0020 00 0 00123 TRA *+3 SCND0084
00121 -0500 00 0 01207 CAL MFDREL IF IT IS MFD SCND0085
00122 0020 00 0 00261 TRA NOSRCH DON'T SEARCH SCND0086
00123 -0500 00 1 01341 CAL RELADR+NDIR,1 CHECK FOR RELADR IN QUOTA QORDS SCND0087
00124 -0340 00 0 01140 LAS RLADRS SCND0088
00125 0020 00 0 00130 TRA *+3 SCND0089
00126 0020 00 0 00130 TRA *+2 SCND0090
00127 -0500 00 0 01140 CAL RLADRS IF IN GET OUT SCND0091
00130 0602 00 1 01341 SLW RELADR+NDIR,1 SCND0092
00131 0602 00 0 01135 SLW DONADR SAVE AS DONE ADR SCND0093
00132 0602 00 0 01227 SLW WRADR SAVE AS WORKING ADR SCND0094
00133 0602 00 0 01136 SLW LSTENT SET LAST NON ZERO ENTRY SCND0095
00134 -0625 00 0 01131 LOOP STL ERLOC READ ENTRY SCND0096
00135 0074 00 4 00003 TSX BREAD,4 SCND0097
00136 0761 00 3 00000 EFA 0,3 SCND0098
00137 3 01221 0 01221 PAR AC,,AC SCND0099
00140 3 00203 0 01227 PAR WRADR,,EOFB SCND0100
00141 3 00135 0 01222 PAR AE,,*-4 SCND0101
00142 3 01134 0 01056 PAR ISCNER,,ERB SCND0102
00143 3 00000 0 01134 PAR ERB SCND0103
00144 0600 00 0 01146 STZ EOFCT SCND0104
00145 -0625 00 0 01131 L1 STL ERLOC SCND0105
00146 0074 00 4 00006 TSX BCHECK,4 SCND0106
00147 0761 00 3 00000 EFA 0,3 SCND0107
00150 3 01221 0 01221 PAR AC,,AC SCND0108
00151 3 00154 0 01056 PAR ISCNER,,*+3 SCND0109
00152 3 00000 0 01134 PAR ERB SCND0110
00153 0020 00 0 00146 TRA *-5 SCND0111
00154 0534 00 4 01146 LXA EOFCT,4 SCND0112
00155 3 00000 4 00157 TXH *+2,4,0 SCND0113
00156 0774 00 4 00106 AXT NREAD,4 INDEX THROUGH ENTRYS READ SCND0114
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 3
00157 -0774 00 5 00000 AXC 0,5 SCND0115
00160 -0500 00 5 01230 L CAL A,5 COMPARE ENTRY WITH WHAT WE WANT SCND0116
00161 0322 00 0 01163 ERA ALPHA SCND0117
00162 -0100 00 0 00166 TNZ ENDL SCND0118
00163 -0500 00 5 01231 CAL A+1,5 SCND0119
00164 0322 00 0 01164 ERA BETA SCND0120
00165 0100 00 0 00272 TZE FOUND SCND0121
00166 -0500 00 0 01227 ENDL CAL WRADR BUMP ADR SCND0122
00167 0361 00 0 01141 ACL XENTLN BY LENGTH OF ENTRY SCND0123
00170 0602 00 0 01227 SLW WRADR SCND0124
00171 -0520 00 5 01230 NZT A,5 IF ENTRY .NE.0, MOVE ENTRY UP SCND0125
00172 0520 00 5 01231 ZET A+1,5 SCND0126
00173 0602 00 0 01136 SLW LSTENT SCND0127
00174 0322 00 0 01135 ERA DONADR TEST FOR COMPLETE LOOP SCND0128
00175 0100 00 0 00206 TZE NOTFND YES SCND0129
00176 1 77771 5 00177 TXI *+1,5,-ENTLEN SCND0130
00177 2 00007 4 00160 TIX L,4,ENTLEN SCND0131
00200 0520 00 0 01146 ZET EOFCT SCND0132
00201 0020 00 0 00224 TRA EOF SCND0133
00202 0020 00 0 00134 TRA LOOP SCND0134
00203 0621 00 0 01146 EOFB STA EOFCT GET WORD COUNT READ BEFORE EOF SCND0135
00204 0100 00 0 00224 TZE EOF SCND0136
00205 0020 00 0 00145 TRA L1 SCND0137
00206 -0500 00 0 02224 NOTFND CAL =1 GIVE NOT FOUND RETURN SCND0138
00207 0602 00 0 01144 SLW RETV SCND0139
00210 0020 00 0 00212 TRA *+2 SCND0140
00211 0600 00 0 01144 RETZ STZ RETV SCND0141
00212 -0500 00 0 01227 CAL WRADR SCND0142
00213 0602 00 1 01341 SLW RELADR+NDIR,1 SCND0143
00214 0535 00 4 01154 RET LAC XRN,4 RELOAD XRS SCND0144
00215 -0534 00 1 01154 LXD XRN,1 SCND0145
00216 0534 00 2 01155 LXA XRN+1,2 SCND0146
00217 -0534 00 3 01155 LXD XRN+1,3 SCND0147
00220 -0500 00 0 01144 CAL RETV SCND0148
00221 0074 00 7 00020 TSX $TRAC,7 SCND0149
00222 005160622324 BCI 1,0R SCD SCND0150
00223 0020 00 4 00004 TRA 4,4 SCND0151
* SCND0152
00224 -0500 00 0 01136 EOF CAL LSTENT CHECK IF DIRECTORY SHOULD BE SHORTENED SCND0153
00225 -0340 00 0 01227 LAS WRADR SCND0154
00226 0020 00 0 00244 TRA NOTRN SCND0155
00227 0020 00 0 00244 TRA NOTRN SCND0156
00230 0602 00 0 01227 SLW WRADR YES, TRUNCATE SCND0157
00231 -0340 00 0 01135 LAS DONADR IS NEW LENGTH SHORTER THAN 'DONADR' SCND0158
00232 0761 00 0 00000 NOP .. NO SCND0159
00233 0020 00 0 00235 TRA *+2 .. NO, SKIP SCND0160
00234 0602 00 0 01135 SLW DONADR .. YES, REPLACE DONADR WITH NEW LENGTH SCND0161
00235 -0625 00 0 01131 STL ERLOC SCND0162
00236 0074 00 4 00005 TSX BTRUNC,4 SCND0163
00237 0761 00 3 00000 EFA 0,3 SCND0164
00240 3 01221 0 01221 PAR AC,,AC SCND0165
00241 3 00244 0 01227 PAR WRADR,,*+3 SCND0166
00242 3 00236 0 01056 PAR ISCNER,,*-4 SCND0167
00243 3 01134 0 01134 PAR ERB,,ERB SCND0168
00244 0520 00 0 01163 NOTRN ZET ALPHA SCND0169
00245 0020 00 0 00250 TRA *+3 IF LOOKING FOR ZEROS SCND0170
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 4
00246 -0520 00 0 01164 NZT BETA SCND0171
00247 0020 00 0 00255 TRA MAKHOL ADD TO END OF FILE SCND0172
00250 -0500 00 0 01140 CAL RLADRS OTHERWISE GO TO FRONT SCND0173
00251 0602 00 0 01227 SLW WRADR AND SCND0174
00252 0322 00 0 01135 ERA DONADR TEST FOR COMPLETE LOOP SCND0175
00253 0100 00 0 00206 TZE NOTFND SCND0176
00254 0020 00 0 00134 TRA LOOP SCND0177
00255 0774 00 4 00007 MAKHOL AXT ENTLEN,4 IF OFF END RETURN ZEROS SCND0178
00256 0600 00 4 01237 STZ A+ENTLEN,4 SCND0179
00257 2 00001 4 00256 TIX *-1,4,1 SCND0180
00260 0020 00 0 00272 TRA FOUND SCND0181
* SCND0182
00261 0602 00 0 01227 NOSRCH SLW WRADR HERE IF RELATIVE ADR GIVEN SCND0183
00262 0600 00 0 01137 STZ READED ENTRY HAS NOT BEEN READ SCND0184
00263 0774 00 4 00007 AXT ENTLEN,4 SCND0185
00264 -0500 00 0 01227 CAL WRADR TEST FOR RELATIVE ADR IN QUOTA WORDS SCND0186
00265 -0340 00 0 01140 LAS RLADRS SCND0187
00266 0020 00 0 00275 TRA SN1 SCND0188
00267 0020 00 0 00275 TRA SN1 SCND0189
00270 0774 00 4 00001 AXT 1,4 AND READ/WRITE ONE WORD SCND0190
00271 0020 00 0 00275 TRA SN1 SCND0191
00272 -0625 00 0 01137 FOUND STL READED ENTRY IS ALREADY IN A SCND0192
00273 0636 00 5 01145 SCA BUFINX,5 SET ADDR OF WHERE FOUND SCND0193
00274 0774 00 4 00007 AXT ENTLEN,4 SCND0194
00275 -0634 00 4 01223 SN1 SXD APNT,4 SET LENGTH SCND0195
00276 0634 00 1 00310 SXA XX1,1 SCND0196
00277 0535 00 4 01154 LAC XRN,4 RESTOR IR'S FOR GETEFA SCND0197
00300 -0534 00 1 01154 LXD XRN,1 SCND0198
00301 0534 00 2 01155 LXA XRN+1,2 SCND0199
00302 -0534 00 3 01155 LXD XRN+1,3 SCND0200
00303 -0500 00 4 00003 CAL 3,4 SCND0201
00304 0074 00 4 00013 TSX GETEFA,4 SCND0202
00305 0737 00 2 00000 PAC ,2 SAVE Y ADR SCND0203
00306 0361 00 0 02224 ACL =1 SKIP PAST RELADR PART SCND0204
00307 0621 00 0 01223 STA APNT SCND0205
00310 0774 00 1 00000 XX1 AXT --,1 RESTOR IR1 SCND0206
00311 -0500 00 1 01342 CAL DIRPNT+NDIR,1 RESTOR IR3 SCND0207
00312 0737 00 3 00000 PAC ,3 SCND0208
00313 0535 00 4 01157 LAC SMODE,4 READ/WRITE SCND0209
00314 0020 60 4 00314 TRA* *,4 SCND0210
00315 0 00000 0 00320 READ SCND0211
00316 0 00000 0 00371 WRITE SCND0212
00317 0 00000 0 00317 * SCND0213
* SCND0214
00320 0520 00 0 01137 READ ZET READED HAS ENTRY BEEN READ SCND0215
00321 0020 00 0 00357 TRA CPYTOU IF SO DONT READ AGAIN SCND0216
00322 0074 00 4 00453 TSX CKFMFD,4 IF MFD SCND0217
00323 0020 00 0 00335 TRA NRMFD SCND0218
00324 0774 00 4 00010 AXT ENTLEN+1,4 RETURN CANNED SCND0219
00325 -0500 00 0 01207 CAL MFDREL SCND0220
00326 0020 00 0 00330 TRA *+2 SCND0221
00327 -0500 00 4 01221 CAL MFD+2+ENTLEN,4 SCND0222
00330 0602 00 2 00000 SLW 0,2 SCND0223
00331 1 77777 2 00332 TXI *+1,2,-1 SCND0224
00332 2 00001 4 00327 TIX *-3,4,1 SCND0225
00333 0600 00 0 01144 STZ RETV SCND0226
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 5
00334 0020 00 0 00214 TRA RET SCND0227
00335 -0625 00 0 01131 NRMFD STL ERLOC SCND0228
00336 0074 00 4 00003 TSX BREAD,4 SCND0229
00337 0761 00 3 00000 EFA 0,3 SCND0230
00340 3 01221 0 01221 PAR AC,,AC SCND0231
00341 3 01133 0 01227 PAR WRADR,,EOFR SCND0232
00342 3 00336 0 01223 PAR APNT,,*-4 SCND0233
00343 3 00336 0 01056 PAR ISCNER,,*-5 SCND0234
00344 3 00000 0 01134 PAR ERB SCND0235
00345 -0625 00 0 01131 STL ERLOC SCND0236
00346 0074 00 4 00006 TSX BCHECK,4 WAIT ON READ SCND0237
00347 0761 00 3 00000 EFA 0,3 SCND0238
00350 3 01221 0 01221 PAR AC,,AC SCND0239
00351 3 00354 0 01056 PAR ISCNER,,*+3 SCND0240
00352 3 00000 0 01134 PAR ERB SCND0241
00353 0020 00 0 00346 TRA *-5 SCND0242
00354 -0500 00 0 01227 CAL WRADR SCND0243
00355 0602 00 2 00000 SLW 0,2 FILL IN RELADR SCND0244
00356 0020 00 0 00211 TRA RETZ SCND0245
00357 0774 00 4 00007 CPYTOU AXT ENTLEN,4 COPY RELITIVE ADR AND ENTRY INTO CALLER SCND0246
00360 0535 00 5 01145 LAC BUFINX,5 RESTOR ADDR IN A SCND0247
00361 -0500 00 0 01227 CAL WRADR MOVE RELADR SCND0248
00362 0602 00 2 00000 SLW 0,2 SCND0249
00363 -0500 00 5 01230 CAL A,5 SCND0250
00364 0602 00 2 00001 SLW 1,2 SCND0251
00365 1 77777 2 00366 TXI *+1,2,-1 SCND0252
00366 1 77777 5 00367 TXI *+1,5,-1 SCND0253
00367 2 00001 4 00363 TIX *-4,4,1 SCND0254
00370 0020 00 0 00211 TRA RETZ SCND0255
* SCND0256
00371 -0500 00 0 01227 WRITE CAL WRADR RETURN RELADR SCND0257
00372 0602 00 2 00000 SLW 0,2 AND SCND0258
00373 -0534 00 4 01223 LXD APNT,4 IF WRITING AN ENTRY SCND0259
00374 -3 00001 4 00410 TXL UPT,4,1 UPDATE TIME IF QUOTA WORD SCND0260
00375 -0520 00 2 00001 NZT FNAME1-FNAME1+1,2 IF ALPHA=BETA=0 SCND0261
00376 0520 00 2 00002 ZET FNAME2-FNAME1+1,2 SCND0262
00377 0020 00 0 00401 TRA *+2 SCND0263
00400 0020 00 0 00410 TRA UPT UPDATE TIME (DELETES OR UNLINKS) SCND0264
00401 -0500 00 2 00005 CAL F-FNAME1+1,2 IF LINK SCND0265
00402 -0320 00 0 02227 ANA =O700000 SCND0266
00403 0100 00 0 00410 TZE UPT UPDATE TIME SCND0267
00404 -0500 00 3 00011 CAL DAYTIM,3 IF MFD TIME LAST MODIFIED SCND0268
00405 -0340 00 2 00003 LAS DAYTIM-FNAME1+1,2 IS LESS THAN FILE TIME SCND0269
00406 0020 00 0 00412 TRA NOTIM SCND0270
00407 0020 00 0 00412 TRA NOTIM SCND0271
00410 0074 00 4 00014 UPT TSX GTDYTM,4 UPDATE TIME SCND0272
00411 0602 00 3 00011 SLW DAYTIM,3 IN MFD SCND0273
00412 0074 00 4 00453 NOTIM TSX CKFMFD,4 IF MFD SCND0274
00413 0020 00 0 00422 TRA REWRIT SCND0275
00414 0774 00 4 00007 AXT ENTLEN,4 WRITE CANNED TOO SCND0276
00415 -0500 00 2 00001 CAL 1,2 SCND0277
00416 0602 00 4 01221 SLW MFD+2+ENTLEN,4 SCND0278
00417 1 77777 2 00420 TXI *+1,2,-1 SCND0279
00420 2 00001 4 00415 TIX *-3,4,1 SCND0280
00421 1 00007 2 00422 TXI *+1,2,ENTLEN SCND0281
00422 -0625 00 0 01131 REWRIT STL ERLOC SCND0282
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 6
00423 0074 00 4 00004 TSX BWRITE,4 AND WRITE OUT SCND0283
00424 0761 00 3 00000 EFA 0,3 SCND0284
00425 3 01221 0 01221 PAR AC,,AC SCND0285
00426 3 00442 0 01227 PAR WRADR,,EOFW SCND0286
00427 3 00423 0 01223 PAR APNT,,*-4 SCND0287
00430 3 01134 0 01056 PAR ISCNER,,ERB SCND0288
00431 3 00000 0 01134 PAR ERB SCND0289
00432 -0625 00 0 01131 STL ERLOC SCND0290
00433 0074 00 4 00006 TSX BCHECK,4 WAIT ON WRITE SCND0291
00434 0761 00 3 00000 EFA 0,3 SCND0292
00435 3 01221 0 01221 PAR AC,,AC SCND0293
00436 3 00441 0 01056 PAR ISCNER,,*+3 SCND0294
00437 3 00000 0 01134 PAR ERB SCND0295
00440 0020 00 0 00433 TRA *-5 SCND0296
00441 0020 00 0 00211 TRA RETZ SCND0297
* SCND0298
00442 -0625 00 0 01131 EOFW STL ERLOC SCND0299
00443 0074 00 4 00004 TSX BWRITE,4 IF END OF FILE WRITING SCND0300
00444 0761 00 3 00000 EFA 0,3 SCND0301
00445 3 01221 0 01221 PAR AC,,AC NO EOF (SHOULDN'T HAPPEN ANYWAY) SCND0302
00446 3 00000 0 02223 PAR =0 SCND0303
00447 3 00443 0 01225 PAR ZERO,,*-4 SCND0304
00450 3 01134 0 01056 PAR ISCNER,,ERB SCND0305
00451 3 00000 0 01134 PAR ERB SCND0306
00452 0020 00 0 00422 TRA REWRIT SCND0307
* SCND0308
00453 -0500 00 0 01160 CKFMFD CAL X CHECK FOR MFD-MFD SCND0309
00454 0322 00 0 01210 ERA MFD SCND0310
00455 -0100 00 4 00001 TNZ 1,4 SCND0311
00456 -0500 00 0 01161 CAL X+1 SCND0312
00457 0322 00 0 01211 ERA MFD+1 SCND0313
00460 -0100 00 4 00001 TNZ 1,4 SCND0314
00461 -0500 00 0 01163 CAL X+3 SCND0315
00462 0322 00 0 01210 ERA MFD SCND0316
00463 -0100 00 4 00001 TNZ 1,4 SCND0317
00464 -0500 00 0 01164 CAL X+4 SCND0318
00465 0322 00 0 01211 ERA MFD+1 SCND0319
00466 -0100 00 4 00001 TNZ 1,4 SCND0320
00467 0020 00 4 00002 TRA 2,4 SCND0321
* SCND0322
00470 0774 00 1 00001 INIT AXT NDIR,1 RESET ALL DIRECTORIES SCND0323
00471 0634 00 1 01152 SXA MYNAME+3,1 SET NUMBER SCND0324
00472 0600 00 1 01340 IL STZ USED+NDIR,1 SCND0325
00473 0074 00 4 00017 TSX STAFIL,4 GET TABLE LOCATION SCND0326
00474 0761 00 0 01147 EFA MYNAME SCND0327
00475 3 00000 0 00473 PAR *-2 SCND0328
00476 0621 00 1 01342 STA DIRPNT+NDIR,1 SCND0329
00477 2 00001 1 00472 TIX IL,1,1 SCND0330
00500 -0500 00 0 01140 CAL RLADRS READ MFD MFD IN FIRST SLOT SCND0331
00501 0602 00 0 01204 SLW XMFD+2 SCND0332
00502 0074 00 4 00010 TSX PUSH,4 SAVE TEMPS SCND0333
00503 0 00022 0 01153 XRN-1,,NSAVE SCND0334
00504 0 00000 0 00504 * SCND0335
00505 0074 00 4 00023 TSX SCNDIR,4 SCND0336
00506 0 00000 0 01142 READM SCND0337
00507 0 00000 0 01202 XMFD WHERE AND WHAT SCND0338
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 7
00510 0 00000 0 01211 MFD+1 AND PUT HERE SCND0339
00511 0602 00 0 01144 SLW RETV SCND0340
00512 0074 00 4 00011 TSX POP,4 SCND0341
00513 0 00000 0 00513 * SCND0342
00514 0600 00 0 01204 STZ XMFD+2 SCND0343
00515 0520 00 0 01144 ZET RETV IF BAD RETURN SCND0344
00516 0020 00 0 00214 TRA RET RETURN BAD SCND0345
00517 -0500 00 0 01211 CAL MFD+1 SAVE RELADR OF MFD SCND0346
00520 0602 00 0 01207 SLW MFDREL SCND0347
00521 -0500 00 0 01203 CAL XMFD+1 OVERWRITE RELADR WITH =H FILE SCND0348
00522 0602 00 0 01211 SLW MFD+1 SCND0349
00523 0774 00 1 00001 AXT NDIR,1 CLOSE MFD WITH OUT SCND0350
00524 0600 00 1 01340 STZ USED+NDIR,1 SCND0351
00525 -0500 00 1 01342 CAL DIRPNT+NDIR,1 SCND0352
00526 0737 00 3 00000 PAC ,3 SCND0353
00527 -0625 00 0 01131 STL ERLOC SCND0354
00530 0074 00 4 00001 TSX BCLOSE,4 REWRITING MFD FILE SCND0355
00531 0761 00 3 00000 EFA 0,3 SCND0356
00532 3 01221 0 01221 PAR AC,,AC SCND0357
00533 3 00530 0 01056 PAR ISCNER,,*-3 SCND0358
00534 3 00000 0 01134 PAR ERB SCND0359
00535 0020 00 0 00211 TRA RETZ AND RETURN GOOD SCND0360
* SCND0361
00536 0600 00 0 01144 UPDATE STZ RETV SCND0362
00537 0074 00 4 00552 TSX FIND,4 FIND USER SCND0363
00540 0020 00 0 00214 TRA RET NOT FOUND SCND0364
00541 0600 00 0 01160 STZ PROBN SWITCH TO ZERO USER SCND0365
00542 0600 00 0 01161 STZ PROGN SCND0366
00543 0074 00 4 00567 TSX SWITCH,4 SCND0367
00544 0020 00 0 00211 TRA RETZ SCND0368
* SCND0369
00545 0600 00 0 01144 RSPNT STZ RETV RESETS RELADR TO 0 SCND0370
00546 0074 00 4 00552 TSX FIND,4 SCND0371
00547 0020 00 0 00214 TRA RET NOTFOUND SCND0372
00550 0600 00 1 01341 STZ RELADR+NDIR,1 SCND0373
00551 0020 00 0 00214 TRA RET SCND0374
* SCND0375
00552 0774 00 1 00001 FIND AXT NDIR,1 SUBR TO FIND USERS OPEN UFD SCND0376
00553 -0520 00 1 01340 NZT USED+NDIR,1 IF OPEN SCND0377
00554 0020 00 0 00565 TRA NEXTF SCND0378
00555 -0500 00 1 01342 FL CAL DIRPNT+NDIR,1 SCND0379
00556 0737 00 3 00000 PAC ,3 SCND0380
00557 -0500 00 0 01160 CAL PROBN AND PROBN .E.PROBN SCND0381
00560 0322 00 3 00005 ERA FPROBN,3 SCND0382
00561 -0100 00 0 00565 TNZ NEXTF SCND0383
00562 -0500 00 0 01161 CAL PROGN SCND0384
00563 0322 00 3 00006 ERA FPROGN,3 SCND0385
00564 0100 00 4 00002 TZE 2,4 FOUND SCND0386
00565 2 00001 1 00555 NEXTF TIX FL,1,1 SCND0387
00566 0020 00 4 00001 TRA 1,4 SCND0388
* SCND0389
00567 0636 00 4 01156 SWITCH SCA XRSW,4 SCND0390
00570 -0520 00 1 01340 NZT USED+NDIR,1 IS OLD DIR OPEN SCND0391
00571 0020 00 0 00647 TRA RDNEW NO SCND0392
00572 0074 00 4 00010 WTOLD TSX PUSH,4 SAVE FOR SRCH SCND0393
00573 0 00022 0 01153 XRN-1,,NSAVE SCND0394
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 8
00574 0 00000 0 00574 * SCND0395
00575 0600 00 0 01144 STZ RETV SCND0396
00576 0074 00 4 01024 TSX CKCAND,4 SCND0397
00577 0020 00 0 00602 TRA CL SCND0398
00600 0020 00 0 00611 TRA WT SCND0399
00601 0020 00 0 00641 TRA NWT SCND0400
00602 -0625 00 0 01131 CL STL ERLOC CLOSE FILE SCND0401
00603 0074 00 4 00001 TSX BCLOSE,4 CLOSE USER BUFF SCND0402
00604 0761 00 3 00000 EFA 0,3 SCND0403
00605 3 01221 0 01221 PAR AC,,AC SCND0404
00606 3 00603 0 01060 PAR LSCNER,,*-3 SCND0405
00607 3 00000 0 01134 PAR ERB SCND0406
00610 0600 00 1 01340 STZ USED+NDIR,1 SCND0407
00611 -0774 00 4 00007 WT AXC FPROBN+2,4 COPY DIR INFO FROM STAT TAB SCND0408
00612 -0500 60 1 01342 CAL* DIRPNT+NDIR,1 SCND0409
00613 0602 00 4 01157 SLW DIRSAV-1-FPROBN,4 SCND0410
00614 1 77777 4 00615 TXI *+1,4,-1 SCND0411
00615 3 77762 4 00612 TXH *-3,4,-2-ENTLEN-FPROBN SCND0412
00616 -0500 00 3 00005 CAL FPROBN,3 AND SET PROBN-PROGN SCND0413
00617 0602 00 0 01205 SLW XMFD+3 SCND0414
00620 0560 00 3 00006 LDQ FPROBN+1,3 SCND0415
00621 -0600 00 0 01206 STQ XMFD+4 SCND0416
00622 0322 00 0 01210 ERA MFD IF MFD SCND0417
00623 -0100 00 0 00634 TNZ CSH SCND0418
00624 -0130 00 0 00000 XCL SCND0419
00625 0322 00 0 01211 ERA MFD+1 SCND0420
00626 -0100 00 0 00634 TNZ CSH SCND0421
00627 0074 00 4 00023 TSX SCNDIR,4 DON'T BOTHER STICKY SCND0422
00630 0 00000 0 01143 WRITEM SCND0423
00631 0 00000 0 01202 XMFD SCND0424
00632 0 00000 0 01165 DIRSAV SCND0425
00633 0020 00 0 00640 TRA CSHR SCND0426
00634 0074 00 4 00012 CSH TSX SRCH,4 AND REWRITE ENTRY IN MFD SCND0427
00635 0 00000 0 01143 WRITEM SCND0428
00636 0 00000 0 01202 XMFD SCND0429
00637 0 00000 0 01165 DIRSAV SCND0430
00640 0602 00 0 01144 CSHR SLW RETV SAVE ANY ERROR RET SCND0431
00641 0074 00 4 00011 NWT TSX POP,4 UNSAVE SCND0432
00642 0 00000 0 00642 * SCND0433
00643 -0520 00 0 01144 NZT RETV IF ERROR SAVE IT SCND0434
00644 0020 00 0 00647 TRA *+3 SCND0435
00645 -0625 00 0 01131 STL ERLOC SCND0436
00646 0020 00 0 01120 TRA GIVLAT GIVE LATENT ERROR SCND0437
00647 -0520 00 1 01340 RDNEW NZT USED+NDIR,1 SCND0438
00650 0020 00 0 00663 TRA NNEW SCND0439
00651 -0500 00 3 00005 CAL FPROBN,3 IS DIR=NEW (COULD BE IF MFD) SCND0440
00652 0322 00 0 01160 ERA PROBN SCND0441
00653 -0100 00 0 00660 TNZ CKM SCND0442
00654 -0500 00 3 00006 CAL FPROGN,3 SCND0443
00655 0322 00 0 01161 ERA PROGN SCND0444
00656 -0100 00 0 00660 TNZ CKM SCND0445
00657 0020 00 0 01022 TRA SWDONE SCND0446
00660 0074 00 4 01024 CKM TSX CKCAND,4 SCND0447
00661 0020 00 0 00572 TRA WTOLD SCND0448
00662 0020 00 0 00663 TRA *+1 SCND0449
00663 0074 00 4 00010 NNEW TSX PUSH,4 SAVE FOR READ SCND0450
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 9
00664 0 00022 0 01153 XRN-1,,NSAVE SCND0451
00665 0 00000 0 00665 * SCND0452
00666 0600 00 0 01144 STZ RETV SCND0453
00667 -0520 00 0 01160 NZT PROBN IS NEW =ZERO SCND0454
00670 0520 00 0 01161 ZET PROGN SCND0455
00671 0020 00 0 00673 TRA *+2 SCND0456
00672 0020 00 0 00717 TRA NOREAD SCND0457
00673 -0500 00 0 01160 CAL PROBN PUT PROBN-PROGN IN XMFD SCND0458
00674 0560 00 0 01161 LDQ PROGN SCND0459
00675 0602 00 0 01205 SLW XMFD+3 SCND0460
00676 -0600 00 0 01206 STQ XMFD+4 SCND0461
00677 0322 00 0 01210 ERA MFD SCND0462
00700 -0100 00 0 00711 TNZ CSH1 SCND0463
00701 -0130 00 0 00000 XCL SCND0464
00702 0322 00 0 01211 ERA MFD+1 SCND0465
00703 -0100 00 0 00711 TNZ CSH1 SCND0466
00704 0074 00 4 00023 TSX SCNDIR,4 IF MFD DON'T BOTHER STICKY SCND0467
00705 0 00000 0 01142 READM SCND0468
00706 0 00000 0 01202 XMFD SCND0469
00707 0 00000 0 01165 DIRSAV SCND0470
00710 0020 00 0 00715 TRA CSHR1 SCND0471
00711 0074 00 4 00012 CSH1 TSX SRCH,4 READ IT SCND0472
00712 0 00000 0 01142 READM SCND0473
00713 0 00000 0 01202 XMFD SCND0474
00714 0 00000 0 01165 DIRSAV SCND0475
00715 0602 00 0 01144 CSHR1 SLW RETV SAVE ERROR RET SCND0476
00716 -0100 00 0 00754 TNZ NOMOVE SKIP MOVE IF FILE NOT FOUND SCND0477
00717 -0520 00 1 01340 NOREAD NZT USED+NDIR,1 IF DIR OPEN (FROM LOWER LEVELS) SCND0478
00720 0020 00 0 00747 TRA NOP SCND0479
00721 -0500 00 3 00005 CAL FPROBN,3 IF MFD SCND0480
00722 0322 00 0 01210 ERA MFD SCND0481
00723 -0100 00 0 00602 TNZ CL SCND0482
00724 -0500 00 3 00006 CAL FPROBN+1,3 SCND0483
00725 0322 00 0 01211 ERA MFD+1 SCND0484
00726 -0100 00 0 00602 TNZ CL SCND0485
00727 -0625 00 0 01131 STL ERLOC FORCE IO SCND0486
00730 0074 00 4 00007 TSX BSAVE,4 SCND0487
00731 0761 00 3 00000 EFA 0,3 SCND0488
00732 3 01221 0 01221 PAR AC,,AC SCND0489
00733 3 00730 0 01060 PAR LSCNER,,*-3 SCND0490
00734 3 00000 0 01134 PAR ERB SCND0491
00735 -0500 00 3 00014 CAL NORECS,3 CHECK IF LENGTH HAS CHANGED SCND0492
00736 0322 00 0 01217 ERA MFD+NORECS-FPROBN SCND0493
00737 -0100 00 0 00611 TNZ WT SCND0494
00740 -0625 00 0 01131 STL ERLOC SCND0495
00741 0074 00 4 00001 TSX BCLOSE,4 CLOSE IT SCND0496
00742 0761 00 3 00000 EFA 0,3 SCND0497
00743 3 01221 0 01221 PAR AC,,AC SCND0498
00744 3 00741 0 01060 PAR LSCNER,,*-3 SCND0499
00745 3 00000 0 01134 PAR ERB SCND0500
00746 0600 00 1 01340 STZ USED+NDIR,1 SCND0501
00747 -0774 00 4 00007 NOP AXC FPROBN+2,4 SCND0502
00750 -0500 00 4 01157 CAL DIRSAV-1-FPROBN,4 COPY REST TO DIR SCND0503
00751 0602 60 1 01342 SLW* DIRPNT+NDIR,1 SCND0504
00752 1 77777 4 00753 TXI *+1,4,-1 SCND0505
00753 3 77762 4 00750 TXH *-3,4,-ENTLEN-2-FPROBN SCND0506
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 10
00754 0074 00 4 00011 NOMOVE TSX POP,4 UNSAVE SCND0507
00755 0 00000 0 00755 * SCND0508
00756 0520 00 0 01144 ZET RETV SCND0509
00757 0020 00 0 00214 TRA RET IF BAD RETURN SCND0510
00760 -0500 00 0 01160 CAL PROBN COPY PROBN-PROGN INTO DIR SCND0511
00761 0602 00 3 00005 SLW FPROBN,3 SCND0512
00762 -0500 00 0 01161 CAL PROGN SCND0513
00763 0602 00 3 00006 SLW FPROGN,3 SCND0514
00764 -0520 00 0 01160 NZT PROBN IF NEW=ZERO SCND0515
00765 0520 00 0 01161 ZET PROGN SCND0516
00766 0020 00 0 00770 TRA *+2 SCND0517
00767 0020 00 0 01022 TRA SWDONE DON'T OPEN SCND0518
00770 -0625 00 0 01131 STL ERLOC SCND0519
00771 0074 00 4 00000 TSX BOPEN,4 OPEN NEW SCND0520
00772 0761 00 3 00000 EFA 0,3 SCND0521
00773 3 01134 0 01226 PAR SPRIOR,,ERB SCND0522
00774 -0500 00 1 01343 CAL BUFPNT+NDIR,1 SCND0523
00775 0602 00 0 01230 SLW A SCND0524
00776 0074 00 4 00002 TSX BASIGN,4 ASIGN BUFFER SCND0525
00777 0761 00 3 00000 EFA 0,3 SCND0526
01000 3 01134 0 01230 PAR A,,ERB SCND0527
01001 -0625 00 1 01340 STL USED+NDIR,1 SCND0528
01002 0600 00 1 01341 STZ RELADR+NDIR,1 RESET RELADR SCND0529
01003 0074 00 4 00014 TSX GTDYTM,4 UPDATE LAST USED SCND0530
01004 -0130 00 0 00000 XCL .. SCND0531
01005 -0620 00 3 00012 SLQ DATELU,3 .. SCND0532
01006 0074 00 4 00015 TLOOP TSX GETDAY,4 SET FREQ OF THIS DIR SCND0533
01007 -0130 00 0 00000 XCL SCND0534
01010 0400 00 0 01200 ADD DAYS SCND0535
01011 -0340 00 0 01176 LAS FREQL SCND0536
01012 0020 00 0 01020 TRA TOK SCND0537
01013 0020 00 0 01020 TRA TOK SCND0538
01014 -0500 00 0 01200 CAL DAYS PASSED MIDNIGHT SCND0539
01015 0401 00 0 01201 ADM TDAY SCND0540
01016 0602 00 0 01200 SLW DAYS SCND0541
01017 0020 00 0 01006 TRA TLOOP SCND0542
01020 0602 00 1 01337 TOK SLW FREQ+NDIR,1 SCND0543
01021 0602 00 0 01176 SLW FREQL SCND0544
01022 0535 00 4 01156 SWDONE LAC XRSW,4 SCND0545
01023 0020 00 4 00001 TRA 1,4 SCND0546
SCND0547
* TSX CKCAND,4 SCND0548
* TRA AFST .NE. MFD SCND0549
* TRA AFST .NE. CANNED SCND0550
* TRA AFST .E. CANNED SCND0551
* SCND0552
01024 0636 00 4 01050 CKCAND SCA XRC,4 SCND0553
01025 -0500 00 3 00005 CAL FPROBN,3 IS OLD DIR MFD SCND0554
01026 0322 00 0 01210 ERA MFD SCND0555
01027 -0100 00 0 01052 TNZ 1C4 SCND0556
01030 -0500 00 3 00006 CAL FPROBN+1,3 SCND0557
01031 0322 00 0 01211 ERA MFD+1 SCND0558
01032 -0100 00 0 01052 TNZ 1C4 SCND0559
01033 -0625 00 0 01131 STL ERLOC SCND0560
01034 0074 00 4 00007 TSX BSAVE,4 FORCE IO SCND0561
01035 0761 00 3 00000 EFA 0,3 SCND0562
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 11
01036 3 01221 0 01221 PAR AC,,AC SCND0563
01037 3 01034 0 01060 PAR LSCNER,,*-3 SCND0564
01040 3 00000 0 01134 PAR ERB SCND0565
01041 -0774 00 4 00005 AXC FPROBN,4 SCND0566
01042 -0500 60 1 01342 CAL* DIRPNT+NDIR,1 SCND0567
01043 -0340 00 4 01203 LAS MFD-FPROBN,4 SCND0568
01044 0020 00 0 01054 TRA 2C4 SCND0569
01045 1 77777 4 01047 TXI *+2,4,-1 SCND0570
01046 0020 00 0 01054 TRA 2C4 SCND0571
01047 3 77762 4 01042 TXH *-5,4,-2-ENTLEN-FPROBN SCND0572
01050 -0774 00 4 00000 XRC AXC ,4 SCND0573
01051 0020 00 4 00003 TRA 3,4 SCND0574
01052 0535 00 4 01050 1C4 LAC XRC,4 SCND0575
01053 0020 00 4 00001 TRA 1,4 SCND0576
01054 0535 00 4 01050 2C4 LAC XRC,4 SCND0577
01055 0020 00 4 00002 TRA 2,4 SCND0578
SCND0579
01056 0600 00 0 01132 ISCNER STZ LAT HERE ON ERRORS INVOLVING CURRENT USER SCND0580
01057 0020 00 0 01061 TRA *+2 SCND0581
01060 -0625 00 0 01132 LSCNER STL LAT HERE ON EVERYBODY ELSE SCND0582
01061 -0774 00 4 00023 AXC EFLAG,4 SCND0583
01062 -0500 60 1 01342 CAL* DIRPNT+NDIR,1 GET ERROR FLAG SCND0584
01063 0560 60 1 01342 LDQ* DIRPNT+NDIR,1 AND RESET THEM SCND0585
01064 -0320 00 0 02230 ANA =O777777077777 SCND0586
01065 0602 60 1 01342 SLW* DIRPNT+NDIR,1 SCND0587
01066 -0130 00 0 00000 XCL SCND0588
01067 0771 00 0 00017 ARS 15 SCND0589
01070 -0320 00 0 02226 ANA =7 SCND0590
01071 0737 00 4 00000 PAC ,4 SCND0591
01072 0020 60 4 01073 TRA* *+1,4 SCND0592
01073 0 00000 0 01103 IGNORE 0 SCND0593
01074 0 00000 0 01103 IGNORE 1 SCND0594
01075 0 00000 0 01105 FATAL 2 SCND0595
01076 0 00000 0 01126 NOROOM 3 SCND0596
01077 0 00000 0 01077 * 4 SCND0597
01100 0 00000 0 01100 * 5 SCND0598
01101 0 00000 0 01101 * 6 SCND0599
01102 0 00000 0 01102 * 7 SCND0600
01103 0535 00 4 01131 IGNORE LAC ERLOC,4 RETURN TO CALL (TSX+1) SCND0601
01104 0020 00 4 00001 TRA 1,4 SCND0602
01105 0074 00 4 00001 FATAL TSX BCLOSE,4 FATAL ERROR, TRY TO CLOSE FILE SCND0603
01106 0761 00 3 00000 EFA 0,3 SCND0604
01107 3 01221 0 01221 PAR AC,,AC SCND0605
01110 3 01105 0 01112 PAR FC,,*-3 SCND0606
01111 3 00000 0 01134 PAR ERB SCND0607
01112 FC SYN * SCND0608
01112 0600 00 1 01340 STZ USED+NDIR,1 MARK AS CLOSED SCND0609
01113 0520 00 0 01132 ZET LAT IS THIS A LATENT ERROR SCND0610
01114 0020 00 0 01120 TRA GIVLAT YES SCND0611
01115 -0500 00 0 02225 CAL =2 NO, GIVE ERQOR RETURN SCND0612
01116 0602 00 0 01144 SLW RETV SCND0613
01117 0020 00 0 00214 TRA RET SCND0614
01120 -0625 00 0 01132 GIVLAT STL LAT SCND0615
01121 -0500 00 1 01342 CAL DIRPNT+NDIR,1 GET LOC. OF PROBN-PROGN SCND0616
01122 0621 00 0 01124 STA *+2 SCND0617
01123 0074 00 4 00016 TSX LATER,4 SCND0618
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 12
01124 0 00000 0 00000 ** SCND0619
01125 0020 00 0 01103 TRA IGNORE SCND0620
01126 0520 00 0 01132 NOROOM ZET LAT IF LATENT MOROOM SCND0621
01127 0020 00 0 01120 TRA GIVLAT SET LATENT ERROR SCND0622
01130 0020 00 0 00206 TRA NOTFND OTHERWISE RETURN 1 SCND0623
01131 0 00000 0 00000 ERLOC LOCATION OF LAST TSX TO BC SCND0624
01132 0 00000 0 00000 LAT SCND0625
01133 0020 00 0 00206 EOFR TRA NOTFND SCND0626
01134 0000 00 0 01134 ERB HTR * UNEXPECTED ERROR FROM LOC ERLOC SCND0627
*DATA SCND0628
01135 0 00000 0 00000 DONADR RELADR AT START OF LOOP SCND0629
01136 0 00000 0 00000 LSTENT BEGINNING OF LAST ENTRY SCND0630
01137 0 00000 0 00000 READED SCND0631
01140 0 00000 0 00004 RLADRS PZE QTALEN+1 SCND0632
01141 0 00000 0 00007 XENTLN PZE ENTLEN SCND0633
01142 0 00000 0 00001 READM PZE 1 SMODE OF REFERENCE SCND0634
01143 0 00000 0 00002 WRITEM PZE 2 WRITE SMODE SCND0635
01144 0 00000 0 00000 RETV VAL TO BE RETURN SCND0636
01145 0 00000 0 00000 BUFINX INDEX IN READ BUFFER SCND0637
01146 0 00000 0 00000 EOFCT END OF FILE WORD COUNT SCND0638
01147 622345243151 MYNAME BCI 4,SCNDIR FILE ENTRY NO. SCND0639
01150 602631432560
01151 254563517060
01152 454633606060
01153 622345243151 BCI 1,SCNDIR ITEMS TO BE SAVED AND UNSAVED SCND0640
01154 0 00000 0 00000 XRN -XR4,,XR1 SCND0641
01155 0 00000 0 00000 *** XR2,,XR3 SCND0642
01156 0 00000 0 00000 XRSW -XR4,,XR2 OF SWITCH SCND0643
01157 0 00000 0 00000 SMODE MODE OF SCAN SCND0644
01160 X BSS 5 WHERE AND WHAT OF SCAN SCND0645
01160 PROBN SYN X SCND0646
01161 PROGN SYN X+1 SCND0647
01162 XRELAD SYN X+2 SCND0648
01163 ALPHA SYN X+3 SCND0649
01164 BETA SYN X+4 SCND0650
01165 DIRSAV BSS ENTLEN+1 TEMP FOR A STATUS ENTRY SCND0651
00022 NSAVE SYN *-XRN+1 SCND0652
* DATA FOR FREQUENCY BOOKKEEPING SCND0653
01175 -377777777777 ONES OCT 777777777777 SCND0654
01176 0 00000 0 00000 FREQL LAST INITIAL FREQUENCY SCND0655
01177 0 00000 0 01440 SAVING 200*4 MAGIC PARAMETER (INCREMENT FOR EACH USE) SCND0656
01200 0 00000 0 00000 DAYS PERSONAL COUNT OF TIME SINCE CTSS CAME UP. SCND0657
01201 +000024002140 TDAY DEC 5244000 =60*60*60*24 SCND0658
* SCND0659
01202 443326332433 XMFD BCI 2,M.F.D.(FILE) X FOR LOOKING UP UFD SCND0660
01203 742631432534
01204 0 00000 0 00000 PZE 0 SCND0661
01205 BSS 2 SCND0662
* SCND0663
01207 0 00000 0 00000 MFDREL RELADR OF MFD IN MFD SCND0664
01210 DUP 1,2 STATUS TABLE FOR MFD SCND0665
01210 443326332433 MFD BCI 2,M.F.D.(FILE) SCND0666
01211 742631432534
01212 443326332433
01213 742631432534
01214 101103000000 VFD 9/65,4/2,5/3,18/0 DUMMY DATE-TIME SCND0667
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 13
01215 101103000000 VFD 9/65,4/2,5/3,18/0 DUMMY DATE-AUTHOR SCND0668
01216 000000100660 VFD 18/0,3/1,15/BUFSIZ SCND0669
01217 077777100657 VFD 3/0,15/-1,3/1,15/BUFSIZ-1 SCND0670
01220 234200234200 VFD 18/M*10000,18/M*10000 FIRST-LAST SCND0671
01221 0 00000 0 00002 AC PZE IOSMEM CORE SWITCH SCND0672
01222 0 00106 0 01230 AE PZE A,,NREAD SCND0673
01223 0 00000 0 01230 APNT PZE A,,** SCND0674
01224 0 00007 0 01212 MPNT MFD+2,,ENTLEN POINTER TO CANNED MFD SCND0675
01225 0 00001 0 02223 ZERO PZE =0,,1 SCND0676
01226 +000000000000 SPRIOR DEC 0 TOP PRIOR SCND0677
01227 0 00000 0 00000 WRADR WORKING RELATIVE ADR (MUST PRECEED A) SCND0678
01230 A BSS NREAD SCND0679
SCND0680
F 01336 DUP 1,NDIR 1 FREQUENCY VECTOR SCND0681
01336 0 00000 0 00000 FREQ PZE 2 =TIME OPENED+INCRMENT FOR EACH USE. SCND0682
F 01337 DUP 1,NDIR SCND0683
01337 0 00000 0 00000 USED SCND0684
F 01340 DUP 1,NDIR SCND0685
01340 0 00000 0 00000 RELADR PZE 0 SCND0686
F 01341 DUP 1,NDIR SCND0687
01341 0 00000 4 00000 DIRPNT PZE **,4 POINTERS TO DIRECTORIES SCND0688
F 01342 DUP 1,NDIR SCND0689
01342 0 00660 0 01343 BUFPNT PZE **BUFSIZ-BUFPNT*BUFSIZ+BUFBUF,,BUFSIZ POINTERS TO BUFFERSSCND0690
01343 BUFBUF BSS BUFSIZ*NDIR SCND0691
END SCND0692
LITERALS
02223 000000000000
02224 000000000001
02225 000000000002
02226 000000000007
02227 000000700000
02230 777777077777
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 1
POST PROCESSOR ASSEMBLY DATA
2231 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
1230 A 160, 163, 171, 172, 256, 363, 775, 1000, 1222, 1223
13 F 21, 401
160 L 177
10 M 21, 1220
14 P 21
14 R 21
14 S 21
14 W 21
1160 X 40, 453, 456, 461, 464, 1165
1221 AC 137, 150, 240, 340, 350, 425, 435, 445, 532, 605, 732, 743, 1036, 1107
1222 AE 141
602 CL 577, 723, 726
22 DR 21
22 DW 21
1112 FC 1110, 1112
555 FL 565
472 IL 477
145 L1 205
111 P1 104, 106, 107
100 PL 103, 110
611 WT 600, 737
1052 1C4 1027, 1032
1054 2C4 1044, 1046
660 CKM 653, 656
634 CSH 623, 626
224 EOF 201, 204
1134 ERB 142, 143, 152, 243, 344, 352, 430, 431, 437, 450, 451, 534, 607, 734, 745, 773, 1000
1040, 1111
1132 LAT 1056, 1060, 1113, 1120, 1126
1210 MFD 327, 416, 454, 457, 462, 465, 510, 517, 522, 622, 625, 677, 702, 722, 725, 736, 1026
1031, 1043, 1224
747 NOP 720
641 NWT 601
11 POP 512, 641, 754
214 RET 334, 516, 540, 547, 551, 757, 1117
52 RRD 46
275 SN1 266, 267, 271
0 TMP 21
1020 TOK 1012, 1013
410 UPT 374, 400, 403
56 WWT 47, 53
1050 XRC 1024, 1052, 1054
1154 XRN 23, 24, 25, 26, 214, 215, 216, 217, 277, 300, 301, 302, 503, 573, 664, 1175
310 XX1 276
53 AFST 21
1223 APNT 275, 307, 342, 373, 427
1164 BETA 164, 246, 1165
20 CHNG 21
711 CSH1 700, 703
640 CSHR 633
1200 DAYS 1010, 1014, 1016
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 2
POST PROCESSOR ASSEMBLY DATA
166 ENDL 162
203 EOFB 140
1133 EOFR 341
442 EOFW 426
552 FIND 61, 537, 546
3 FMAX 21
1336 FREQ 63, 65, 100, 105, 1020
470 INIT 45
134 LOOP 202, 254
13 MODE 21
1224 MPNT
1 NDIR 21, 63, 65, 67, 70, 76, 100, 105, 112, 123, 130, 213, 311, 470, 472, 476, 523
524, 525, 550, 552, 553, 555, 570, 610, 612, 647, 717, 746, 751, 774, 1001, 1002, 1020
1042, 1062, 1063, 1065, 1112, 1121, 1336, 1337, 1340, 1341, 1342, 1343
663 NNEW 650
1175 ONES 77
103 PTIX
10 PUSH 502, 572, 663
320 READ 315
1144 RETV 207, 211, 220, 333, 511, 515, 536, 545, 575, 640, 643, 666, 715, 756, 1116
211 RETZ 356, 370, 441, 535, 544
12 SRCH 634, 711
1201 TDAY 1015
20 TRAC 27, 221
1337 USED 70, 472, 524, 553, 570, 610, 647, 717, 746, 1001, 1112
67 WW01 62
1202 XMFD 501, 507, 514, 521, 617, 621, 631, 636, 675, 676, 706, 713
1156 XRSW 567, 1022
1225 ZERO 447
1163 ALPHA 161, 244, 1165
0 BOPEN 771
3 BREAD 135, 336
7 BSAVE 730, 1034
715 CSHR1 710
23 EFLAG 21, 1061
1146 EOFCT 144, 154, 200, 203
1131 ERLOC 134, 145, 235, 335, 345, 422, 432, 442, 527, 602, 645, 727, 740, 770, 1033, 1103
1105 FATAL 1075
272 FOUND 165, 260
1176 FREQL 1011, 1021
13 ILOCK 21
27 .REL. 21
16 LATER 1123
565 NEXTF 554, 561
412 NOTIM 406, 407
244 NOTRN 226, 227
106 NREAD 21, 156, 1222, 1230
335 NRMFD 323
22 NSAVE 503, 573, 664, 1175
21 NSCAN 56, 60
22 NSWAP 73, 75
20 PRIME 21
23 PRIOR 21
1160 PROBN 541, 557, 652, 667, 673, 760, 764, 1165
1161 PROGN 542, 562, 655, 670, 674, 762, 765, 1165
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 3
POST PROCESSOR ASSEMBLY DATA
647 RDNEW 571
1142 READM 506, 705, 712
5 RELOC 21
4 RMODE 21
545 RSPNT 51
1157 SMODE 32, 43, 313
1006 TLOOP 1017
1227 WRADR 132, 140, 166, 170, 212, 225, 230, 241, 251, 261, 264, 341, 354, 361, 371, 426
371 WRITE 316
572 WTOLD 661
26 ACTLNG 21
25 AFENTY 21
16 ASGNSW 21
2 AUTHNO 21
12 AUTHOR 21
2 BASIGN 776
6 BCHECK 146, 346, 433
1 BCLOSE 530, 603, 741, 1105
5 BTRUNC 236
20 BUFADR 21
1343 BUFBUF 1342
1145 BUFINX 273, 360
1342 BUFPNT 774, 1342
20 BUFREC 21
660 BUFSIZ 21, 1216, 1217, 1342, 1343
4 BWRITE 423, 443
1024 CKCAND 576, 660
453 CKFMFD 52, 117, 322, 412
357 CPYTOU 321
23 CURREC 21
22 DADDRS 21
12 DATELU 21, 1005
11 DAYTIM 21, 404, 405, 411
22 DCOUNT 21
21 DINDEX 21
1341 DIRPNT 112, 311, 476, 525, 555, 612, 751, 1042, 1062, 1063, 1065, 1121
1165 DIRSAV 613, 632, 637, 707, 714, 750
21 DIRSIZ 21
1135 DONADR 131, 174, 231, 234, 252
2 DUSERS 21
13 ENAME1 21
14 ENAME2 21
7 ENTLEN 21, 176, 177, 255, 256, 263, 274, 324, 327, 357, 414, 416, 421, 615, 753, 1047, 1141
1165, 1224
15 ERCALL 21
11 ERCODE 21
10 ERNAME 21
7 ERRILC 21
7 FNAME1 21, 375, 376, 401, 405
10 FNAME2 21, 376
115 FNDOPN 66
112 FNDSPC 71
6 FPRIOR 21
5 FPROBN 21, 560, 611, 613, 615, 616, 620, 651, 721, 724, 736, 747, 750, 753, 761, 1025, 1030
1041, 1043, 1047
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 4
POST PROCESSOR ASSEMBLY DATA
6 FPROGN 21, 563, 654, 763
15 GETDAY 1006
13 GETEFA 34, 304
1120 GIVLAT 646, 1114, 1127
14 GTDYTM 410, 1003
1103 IGNORE 1073, 1074, 1125
12 IOCODE 21
2 IOSMEM 21, 1221
23 IOTASK 21
1056 ISCNER 142, 151, 242, 343, 351, 430, 436, 450, 533
14 LCOUNT 21
4 LIMITS 21
14 LNAME1 21
15 LNAME2 21
11 LPROBN 21
12 LPROGN 21
1060 LSCNER 606, 733, 744, 1037
1136 LSTENT 133, 173, 224
255 MAKHOL 247
1207 MFDREL 54, 121, 325, 520
1147 MYNAME 471, 474
754 NOMOVE 716
717 NOREAD 672
14 NORECS 21, 735, 736
1126 NOROOM 1076
261 NOSRCH 55, 116, 122
206 NOTFND 175, 253, 1130, 1133
15 POINTR 21
0 PROBNO 21
1 PROGNO 21
3 QTALEN 21, 1140
16 QUEUE1 21
17 QUEUE2 21
20 QUEUE3 21
21 QUEUE4 21
22 QUEUE5 21
23 QUEUE6 21
24 QUEUE7 21
13 RCOUNT 21
1137 READED 262, 272, 320
16 REDREC 21
16 REDWRD 21
1340 RELADR 123, 130, 213, 550, 1002
422 REWRIT 413, 452
1140 RLADRS 124, 127, 250, 265, 500
2 RNAME1 21
3 RNAME2 21
0 RPROBN 21
1 RPROGN 21
14 RWSTAT 21
1177 SAVING 64
23 SCNDIR 0, 505, 627, 704
24 SMTMP1 21
25 SMTMP2 21
1226 SPRIOR 773
1 FAP ASSEMBLY LISTING ... ... ... FILE SCNDB FAP 02/22/71 1703.8 PAGE 5
POST PROCESSOR ASSEMBLY DATA
17 STAFIL 473
1022 SWDONE 657, 767
567 SWITCH 114, 543
53 TBLMIN 21
536 UPDATE 50
3 URCODE 21
21 WINDEX 21
1143 WRITEM 630, 635
17 WRTREC 21
17 WRTWRD 21
1141 XENTLN 167
1162 XRELAD 115, 1165
0 NO ERROR IN ABOVE ASSEMBLY.
TRACB BCD 02/22/71 1718.4 1208 00000
1 FAP ASSEMBLY LISTING ... ... ... FILE TRACB FAP 02/22/71 1704.0 PAGE 1
00000 ENTRY TRAC TRAC0001
UNLIST TRAC0003
BCORE TRAC0007
00000 0760 00 0 00004 TRAC ENK TRAC0008
00001 -0130 00 0 00000 XCL TRAC0009
00002 0322 00 0 00034 ERA =O525252000000 TRAC0010
00003 -0130 00 0 00000 XCL TRAC0011
00004 0600 00 0 00031 STZ NAME TRAC0012
00005 -0620 00 0 00031 SLQ NAME TRAC0013
00006 0520 00 0 00031 ZET NAME TRAC0014
00007 0020 00 7 00002 TRA 2,7 TRAC0015
00010 0621 00 0 00032 STA RETV TRAC0016
00011 -0130 00 0 00000 XCL TRAC0017
00012 -0500 00 7 00001 CAL 1,7 TRAC0018
00013 0602 00 0 00031 SLW NAME TRAC0019
00014 -0500 60 4 00001 CAL* 1,4 TRAC0020
00015 0621 00 0 00033 STA SMODE TRAC0021
00016 -0500 00 4 00002 CAL 2,4 TRAC0022
00017 0621 00 0 00030 STA IO2 TRAC0023
00020 0060 00 0 00020 TCOA * TRAC0024
00021 0766 00 0 01211 WTDA 9 TRAC0025
00022 0540 00 0 00027 RCHA IO TRAC0026
00023 0060 00 0 00023 TCOA * TRAC0027
00024 0022 00 0 00024 TRCA * TRAC0028
00025 -0130 00 0 00000 XCL TRAC0029
00026 0020 00 7 00002 TRA 2,7 TRAC0030
00027 -0 00003 1 00031 IO IOCP NAME,,3 TRAC0031
00030 0 00005 1 00000 IO2 IOCD **,,5 TRAC0032
00031 0 00000 0 00000 NAME TRAC0033
00032 606073606060 RETV BCI 1, , TRAC0034
00033 606073606060 SMODE BCI 1, , TRAC0035
END TRAC0036
LITERALS
00034 525252000000
1 FAP ASSEMBLY LISTING ... ... ... FILE TRACB FAP 02/22/71 1704.0 PAGE 1
POST PROCESSOR ASSEMBLY DATA
35 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
13 F 0
14 P 0
14 R 0
14 S 0
14 W 0
22 DR 0
22 DW 0
27 IO 22
30 IO2 17
0 TMP 0
53 AFST 0
20 CHNG 0
3 FMAX 0
13 MODE 0
31 NAME 4, 5, 6, 13, 27
32 RETV 10
0 TRAC 0
23 EFLAG 0
13 ILOCK 0
27 .REL. 0
20 PRIME 0
23 PRIOR 0
5 RELOC 0
4 RMODE 0
33 SMODE 15
26 ACTLNG 0
25 AFENTY 0
16 ASGNSW 0
2 AUTHNO 0
12 AUTHOR 0
20 BUFADR 0
20 BUFREC 0
23 CURREC 0
22 DADDRS 0
12 DATELU 0
11 DAYTIM 0
22 DCOUNT 0
21 DINDEX 0
2 DUSERS 0
13 ENAME1 0
14 ENAME2 0
15 ERCALL 0
11 ERCODE 0
10 ERNAME 0
7 ERRILC 0
7 FNAME1 0
10 FNAME2 0
6 FPRIOR 0
5 FPROBN 0
6 FPROGN 0
12 IOCODE 0
1 FAP ASSEMBLY LISTING ... ... ... FILE TRACB FAP 02/22/71 1704.0 PAGE 2
POST PROCESSOR ASSEMBLY DATA
2 IOSMEM 0
23 IOTASK 0
14 LCOUNT 0
4 LIMITS 0
14 LNAME1 0
15 LNAME2 0
11 LPROBN 0
12 LPROGN 0
14 NORECS 0
15 POINTR 0
0 PROBNO 0
1 PROGNO 0
16 QUEUE1 0
17 QUEUE2 0
20 QUEUE3 0
21 QUEUE4 0
22 QUEUE5 0
23 QUEUE6 0
24 QUEUE7 0
13 RCOUNT 0
16 REDREC 0
16 REDWRD 0
2 RNAME1 0
3 RNAME2 0
0 RPROBN 0
1 RPROGN 0
14 RWSTAT 0
24 SMTMP1 0
25 SMTMP2 0
53 TBLMIN 0
3 URCODE 0
21 WINDEX 0
17 WRTREC 0
17 WRTWRD 0
0 NO ERROR IN ABOVE ASSEMBLY.
STIKB BCD 02/22/71 1718.4 9682 00000
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 1
* STIK0002
* TSX STICKY,4 STIK0003
* MODE STIK0004
* X STIK0005
* Y STIK0006
* RET IN AC 0=OK, 1=DOESN'T EXIST, 2=DON'T KNOW, 3=DISK ERROR STIK0007
* STIK0008
00011 ENTRY STICKY STIK0009
00617 ENTRY SAVING STIK0010
EXTERN SCNDIR,PUSH,POP,GETDAY,GETEFA,LATER STIK0011
TRANSFER VECTOR
00000 622345243151 SCNDIR
00001 476462306060 PUSH
00002 474647606060 POP
00003 272563242170 GETDAY
00004 272563252621 GETEFA
00005 432163255160 LATER
00006 635121236060 TRAC
LINKAGE DIRECTOR
00007 000000000000
00010 626331234270
00007 ENTLEN EQU 7 LENGTH OF MFD/UFD ENTRY STIK0012
00003 QTALEN EQU 3 NUMBER OF QUOTA WORDS STIK0013
00062 NSTICK EQU 50 NUMBER OF STICKY ENTRYS STIK0014
00015 LREG EQU ENTLEN+6 LENGTH OF STICKY ENTRY STIK0015
01212 NREG EQU LREG*NSTICK LENGTH OF STICKY TABLE STIK0016
00011 0636 00 4 00570 STICKY SCA XRS,4 SAVE XR'S STIK0017
00012 -0634 00 1 00570 SXD XRS,1 STIK0018
00013 0634 00 2 00571 SXA XRS+1,2 STIK0019
00014 0074 00 7 00006 TSX $TRAC,7 STIK0020
00015 002560626342 BCI 1,0E STK STIK0021
00016 -0500 60 4 00001 CAL* 1,4 STIK0022
00017 0602 00 0 00600 SLW MODE SAVE MODE STIK0023
00020 -0500 00 4 00002 CAL 2,4 COPY X INTO STICKY'S CORE STIK0024
00021 0074 00 4 00004 TSX GETEFA,4 STIK0025
00022 0361 00 0 02044 ACL =5 STIK0026
00023 0621 00 0 00031 STA XA STIK0027
00024 0535 00 4 00570 LAC XRS,4 STIK0028
00025 -0500 00 4 00003 CAL 3,4 GET Y ADR STIK0029
00026 0074 00 4 00004 TSX GETEFA,4 STIK0030
00027 0737 00 2 00000 PAC ,2 INTO -IR2 STIK0031
00030 0774 00 1 00005 AXT 5,1 STIK0032
00031 -0500 00 1 00000 XA CAL **,1 STIK0033
00032 0602 00 1 00600 SLW X+5,1 STIK0034
00033 2 00001 1 00031 TIX *-2,1,1 STIK0035
00034 -0500 00 0 00573 CAL PROBN SETUP FOR POSSIBLE CALL TO PUT OR UPDATE STIK0036
00035 0560 00 0 00574 LDQ PROGN STIK0037
00036 0535 00 1 00600 LAC MODE,1 STIK0038
00037 -0774 00 4 00241 AXC RET2-1,4 RETURN TO RETO STIK0039
00040 0020 60 1 00041 TRA* *+1,1 STIK0040
00041 0 00000 0 00046 INIT ZERO BUFFER STIK0041
00042 0 00000 0 00052 RW READ STIK0042
00043 0 00000 0 00052 RW WRITE STIK0043
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 2
00044 0 00000 0 00404 UPDATE UPDATE USER STIK0044
00045 0 00000 0 00252 PUTY SAVE NEW ENTRY STIK0045
* STIK0046
00046 0774 00 4 01212 INIT AXT NREG,4 ZERO BUFFER STIK0047
00047 0600 00 4 02040 STZ PB,4 STIK0048
00050 2 00001 4 00047 TIX *-1,4,1 STIK0049
00051 0020 00 0 00242 TRA RET2 MAKE SRCH INIT SCNDIR STIK0050
* STIK0051
00052 -0500 00 0 00625 RW CAL TOTAL BUMP TOTAL NUMBER OF RW CALLS STIK0052
00053 0361 00 0 02041 ACL =1 STIK0053
00054 0602 00 0 00625 SLW TOTAL STIK0054
00055 -0500 00 0 00575 CAL XRELAD HERE ON READ/WRITE STIK0055
00056 0100 00 0 00103 TZE LOOKAB CHECK FOR QUOTA WORD STIK0056
00057 -0340 00 0 00612 LAS XQTALN IF NOT ZERO BUT LESS THAN QTALEN STIK0057
00060 0020 00 0 00103 TRA LOOKAB STIK0058
00061 0020 00 0 00062 TRA *+1 IT IS QUOTA WORD STIK0059
00062 -0500 00 0 00573 CAL PROBN SCAN FOR RELADR STIK0060
00063 0560 00 0 00574 LDQ PROGN STIK0061
00064 0074 00 4 00541 TSX SCN,4 STIK0062
00065 0020 00 0 00242 TRA RET2 NOT FOUND STIK0063
00066 -0500 00 1 02045 CAL RELADR,1 STIK0064
00067 0322 00 0 00575 ERA XRELAD STIK0065
00070 -0100 00 0 00561 TNZ MORE STIK0066
00071 -0500 00 0 00600 CAL MODE FOUND, READ/WRITE QUOTA WORD STIK0067
00072 0322 00 0 02041 ERA =1 STIK0068
00073 0100 00 0 00077 TZE RQ READ STIK0069
00074 -0500 00 2 00001 CAL 1,2 WRITE STIK0070
00075 0602 00 1 02046 SLW NA,1 STIK0071
00076 0020 00 0 00152 TRA WE STIK0072
00077 -0500 00 1 02046 RQ CAL NA,1 STIK0073
00100 0602 00 2 00001 SLW 1,2 STIK0074
00101 0560 00 0 02040 LDQ =0 RETURN 0 (OK) STIK0075
00102 0020 00 0 00223 TRA UPDTIM STIK0076
* STIK0077
00103 -0500 00 0 00573 LOOKAB CAL PROBN DO NOT ACCEPT MFD FILE MFD FILE STIK0078
00104 0322 00 0 00607 ERA MFD BECAUSE IT WILL NOT UPDATE CORRECTLY STIK0079
00105 -0100 00 0 00117 TNZ LKAB STIK0080
00106 -0500 00 0 00574 CAL PROGN STIK0081
00107 0322 00 0 00610 ERA MFD+1 STIK0082
00110 -0100 00 0 00117 TNZ LKAB STIK0083
00111 -0500 00 0 00576 CAL ALPHA STIK0084
00112 0322 00 0 00607 ERA MFD STIK0085
00113 -0100 00 0 00117 TNZ LKAB STIK0086
00114 -0500 00 0 00577 CAL BETA STIK0087
00115 0322 00 0 00610 ERA MFD+1 STIK0088
00116 0100 00 0 00242 TZE RET2 STIK0089
00117 -0500 00 0 00573 LKAB CAL PROBN HERE TO LOOK FOR ALPHA BETA STIK0090
00120 0560 00 0 00574 LDQ PROGN STIK0091
00121 0074 00 4 00541 TSX SCN,4 STIK0092
00122 0020 00 0 00170 TRA NONEW SETUP TO SCAN FOR PROBN,PROGN,ALPHA,BETA STIK0093
00123 -0500 00 1 02046 CAL NA,1 CHECK NEW ALPHA AND BETA STIK0094
00124 0322 00 0 00576 ERA ALPHA STIK0095
00125 -0100 00 0 00561 TNZ MORE LOOK SOME MORE STIK0096
00126 -0500 00 1 02047 CAL NB,1 STIK0097
00127 0322 00 0 00577 ERA BETA STIK0098
00130 -0100 00 0 00561 TNZ MORE STIK0099
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 3
00131 -0500 00 1 02045 CAL RELADR,1 DON'T ACCEPT IF QUOTA WORD STIK0100
00132 0100 00 0 00137 TZE *+5 STIK0101
00133 -0340 00 0 00612 LAS XQTALN STIK0102
00134 0020 00 0 00137 TRA *+3 STIK0103
00135 0020 00 0 00561 TRA MORE STIK0104
00136 0020 00 0 00561 TRA MORE STIK0105
00137 -0500 00 0 00600 CAL MODE FOUND, READ OR WRITE IT STIK0106
00140 0322 00 0 02041 ERA =1 TEST FOR READ STIK0107
00141 0100 00 0 00156 TZE R YES, GO TO READ STIK0108
00142 0774 00 4 00007 AXT ENTLEN,4 WRITE CALL COPY ENTRY STIK0109
00143 -0500 00 2 00001 CAL 1,2 SKIP RELADR STIK0110
00144 0602 00 1 02046 SLW NA,1 STIK0111
00145 1 77777 1 00146 TXI *+1,1,-1 STIK0112
00146 1 77777 2 00147 TXI *+1,2,-1 STIK0113
00147 2 00001 4 00143 TIX *-4,4,1 STIK0114
00150 1 00007 1 00151 TXI *+1,1,ENTLEN MOVE XR1 BACK TO TOP OF ENTRY STIK0115
00151 1 00007 2 00152 TXI *+1,2,ENTLEN AND IR2 STIK0116
00152 -0500 00 0 02041 WE CAL =1 SET CHANGED SWITCH STIK0117
00153 -0602 00 1 02042 ORS FREQ,1 STIK0118
00154 0560 00 0 02040 LDQ =0 RETURN 0 (OK) STIK0119
00155 0020 00 0 00223 TRA UPDTIM AND INCREASE USEAGE STIK0120
00156 0774 00 4 00010 R AXT ENTLEN+1,4 MOVE RELADR AND MOVE ENTRY STIK0121
00157 -0500 00 1 02045 CAL RELADR,1 STIK0122
00160 0602 00 2 00000 SLW 0,2 STIK0123
00161 1 77777 1 00162 TXI *+1,1,-1 STIK0124
00162 1 77777 2 00163 TXI *+1,2,-1 STIK0125
00163 2 00001 4 00157 TIX *-4,4,1 STIK0126
00164 1 00010 1 00165 TXI *+1,1,ENTLEN+1 STIK0127
00165 1 00010 2 00166 TXI *+1,2,ENTLEN+1 STIK0128
00166 0560 00 0 02040 LDQ =0 RETURN 0 (OK) STIK0129
00167 0020 00 0 00223 TRA UPDTIM AND UPDATE USED STIK0130
* STIK0131
00170 -0520 00 0 00576 NONEW NZT ALPHA HERE IF NOT A NEW ALPHA BETA STIK0132
00171 0520 00 0 00577 ZET BETA IF NOT ZERO STIK0133
00172 0020 00 0 00202 TRA LKOLD LOOK THROUGH OLD ENTRYS STIK0134
00173 -0500 00 0 00600 CAL MODE IF WRITING STIK0135
00174 0322 00 0 02042 ERA =2 STIK0136
00175 -0100 00 0 00242 TNZ RET2 STIK0137
00176 0074 00 4 00252 TSX PUTY,4 KEEP IT STIK0138
00177 -0500 00 0 00616 CAL ONES SET REL UNKOWN STIK0139
00200 0602 00 1 02045 SLW RELADR,1 STIK0140
00201 0020 00 0 00152 TRA WE STIK0141
00202 -0500 00 0 00573 LKOLD CAL PROBN HERE TO STIK0142
00203 0560 00 0 00574 LDQ PROGN SCAN TO SEE IF IT IS AN OLD ENTRY STIK0143
00204 0074 00 4 00541 TSX SCN,4 STIK0144
00205 0020 00 0 00242 TRA RET2 NOT FOUND ANYWHERE STIK0145
00206 -0500 00 1 02043 CAL OA,1 CHECK ALPHA BETA STIK0146
00207 0322 00 0 00576 ERA ALPHA STIK0147
00210 -0100 00 0 00561 TNZ MORE STIK0148
00211 -0500 00 1 02044 CAL OB,1 STIK0149
00212 0322 00 0 00577 ERA BETA STIK0150
00213 -0100 00 0 00561 TNZ MORE STIK0151
00214 -0500 00 1 02045 CAL RELADR,1 DON'T ACCEPT IF QUOTA WORD STIK0152
00215 0100 00 0 00222 TZE *+5 STIK0153
00216 -0340 00 0 00612 LAS XQTALN STIK0154
00217 0020 00 0 00222 TRA *+3 STIK0155
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 4
00220 0020 00 0 00561 TRA MORE STIK0156
00221 0020 00 0 00561 TRA MORE STIK0157
00222 0560 00 0 02041 LDQ =1 RETURN 1 (DOESN'T EXIST) STIK0158
* STIK0159
00223 -0500 00 0 00624 UPDTIM CAL GOOD UPDATE GOOD COUNT STIK0160
00224 0361 00 0 02041 ACL =1 STIK0161
00225 0602 00 0 00624 SLW GOOD STIK0162
00226 -0500 00 0 00622 CAL FREQL COMPUTE TOP STIK0163
00227 0767 00 0 00001 ALS 1 STIK0164
00230 -0400 00 0 00623 SBM FREQD STIK0165
00231 0602 00 0 00621 SLW TOP TOP=FREQL+(FREQL-FREQD) STIK0166
00232 -0500 00 1 02042 CAL FREQ,1 UPDATE TIME STIK0167
00233 0401 00 0 00617 ADM SAVING STIK0168
00234 0100 00 0 00243 TZE RET DON'T LET IT ROLL OVER STIK0169
00235 -0340 00 0 00621 LAS TOP IF .G.TOP STIK0170
00236 0020 00 0 00243 TRA RET DON'T STO STIK0171
00237 0020 00 0 00240 TRA *+1 STIK0172
00240 0602 00 1 02042 SLW FREQ,1 STIK0173
00241 0020 00 0 00243 TRA RET MQ HAS BEEN UNTOUCHED SINCE UPDTIM STIK0174
* STIK0175
00242 0560 00 0 02042 RET2 LDQ =2 RET 2 (DON'T KNOW) STIK0176
00243 0535 00 4 00570 RET LAC XRS,4 STIK0177
00244 -0534 00 1 00570 LXD XRS,1 STIK0178
00245 0534 00 2 00571 LXA XRS+1,2 STIK0179
00246 -0130 00 0 00000 XCL GET RETURN IN AC STIK0180
00247 0074 00 7 00006 TSX $TRAC,7 STIK0181
00250 005160626342 BCI 1,0R STK STIK0182
00251 0020 00 4 00004 TRA 4,4 STIK0183
* STIK0184
00252 0520 00 0 00611 PUTY ZET UPDING IF PUT WHILE UPDATING STIK0185
00253 0020 00 4 00001 TRA 1,4 IGNORE IT STIK0186
00254 -0500 00 0 00573 CAL PROBN DO NOT KEEP MFD FILE MFD FILE STIK0187
00255 0322 00 0 00607 ERA MFD STIK0188
00256 -0100 00 0 00270 TNZ PUTT STIK0189
00257 -0500 00 0 00574 CAL PROGN STIK0190
00260 0322 00 0 00610 ERA MFD+1 STIK0191
00261 -0100 00 0 00270 TNZ PUTT STIK0192
00262 -0500 00 0 00576 CAL ALPHA STIK0193
00263 0322 00 0 00607 ERA MFD STIK0194
00264 -0100 00 0 00270 TNZ PUTT STIK0195
00265 -0500 00 0 00577 CAL BETA STIK0196
00266 0322 00 0 00610 ERA MFD+1 STIK0197
00267 0100 00 4 00001 TZE 1,4 STIK0198
00270 0636 00 4 00572 PUTT SCA XRP,4 HERE TO MAKE ROOM FOR Y STIK0199
00271 0774 00 1 01212 AXT NREG,1 LOOK FOR MOST USELESS ENTRY STIK0200
00272 0634 00 1 00601 SXA TEMP,1 STIK0201
00273 -0500 00 0 00616 CAL ONES GIVE EVERYBODY A CHANCE STIK0202
00274 -0340 00 1 02042 PL LAS FREQ,1 STIK0203
00275 0020 00 0 00301 TRA *+4 IF USELESS STIK0204
00276 0020 00 0 00277 TRA *+1 STIK0205
00277 2 00015 1 00274 TIX PL,1,LREG STIK0206
00300 0020 00 0 00305 TRA P1 FOUND HIM STIK0207
00301 -0500 00 1 02042 CAL FREQ,1 STIK0208
00302 0634 00 1 00601 SXA TEMP,1 STIK0209
00303 0100 00 0 00305 TZE P1 IF ZERO FREQ, USE IT STIK0210
00304 2 00015 1 00274 TIX PL,1,LREG STIK0211
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 5
00305 0534 00 1 00601 P1 LXA TEMP,1 STIK0212
00306 -0500 00 1 02042 P2 CAL FREQ,1 STIK0213
00307 0602 00 0 00623 SLW FREQD SET LAST DELETED FREQ STIK0214
00310 0760 00 0 00001 LBT CHECK CHANGED SWITCH STIK0215
00311 0020 00 0 00316 TRA PNOUPD OFF STIK0216
00312 -0500 00 1 02040 CAL PB,1 ON, UPDATE USER TO DISK STIK0217
00313 0560 00 1 02041 LDQ PG,1 STIK0218
00314 0074 00 4 00404 TSX UPDATE,4 STIK0219
00315 0020 00 0 00306 TRA P2 STIK0220
00316 0634 00 2 00340 PNOUPD SXA XRP2,2 CHECK IF NEW IS PROTECTING OLD STIK0221
00317 0754 00 1 00000 PXA ,1 STIK0222
00320 0734 00 2 00000 PAX ,2 SAVE THIS ENTRY INDEX STIK0223
00321 -0500 00 1 02040 CAL PB,1 AND SCAN PB-PG STIK0224
00322 0560 00 1 02041 LDQ PG,1 STIK0225
00323 0074 00 4 00541 TSX SCN,4 STIK0226
00324 0020 00 0 00336 TRA CPX STIK0227
00325 -0500 00 2 02046 CAL NA,2 STIK0228
00326 0322 00 1 02043 ERA OA,1 STIK0229
00327 -0100 00 0 00561 TNZ MORE STIK0230
00330 -0500 00 2 02047 CAL NB,2 STIK0231
00331 0322 00 1 02044 ERA OB,1 STIK0232
00332 -0100 00 0 00561 TNZ MORE STIK0233
00333 0600 00 1 02043 STZ OA,1 STIK0234
00334 0600 00 1 02044 STZ OB,1 STIK0235
00335 0020 00 0 00561 TRA MORE STIK0236
00336 0754 00 2 00000 CPX PXA ,2 STIK0237
00337 0734 00 1 00000 PAX ,1 STIK0238
00340 0774 00 2 00000 XRP2 AXT ,2 STIK0239
00341 0774 00 4 00005 AXT 5,4 COPY X INTO DIRECTORY STIK0240
00342 -0500 00 4 00600 CAL X+5,4 STIK0241
00343 0602 00 1 02040 SLW PB,1 STIK0242
00344 1 77777 1 00345 TXI *+1,1,-1 STIK0243
00345 2 00001 4 00342 TIX *-3,4,1 STIK0244
00346 0774 00 4 00010 AXT ENTLEN+1,4 AND COPY Y STIK0245
00347 -0500 00 2 00000 CAL 0,2 STIK0246
00350 0602 00 1 02040 SLW PB,1 STIK0247
00351 1 77777 1 00352 TXI *+1,1,-1 STIK0248
00352 1 77777 2 00353 TXI *+1,2,-1 STIK0249
00353 2 00001 4 00347 TIX *-4,4,1 STIK0250
00354 1 00015 1 00355 TXI *+1,1,LREG STIK0251
00355 1 00010 2 00356 TXI *+1,2,ENTLEN+1 STIK0252
00356 0074 00 4 00003 TLOOP TSX GETDAY,4 STIK0253
00357 -0130 00 0 00000 XCL STIK0254
00360 0400 00 0 00613 ADD DAYS ADD MULTIP OF 24 HRS STIK0255
00361 0767 00 0 00002 ALS 2 STIK0256
00362 -0100 00 0 00364 TNZ *+2 STIK0257
00363 -0500 00 0 02043 CAL =4 MAKE SURE IT IS NONZERO STIK0258
00364 -0340 00 0 00622 LAS FREQL STIK0259
00365 0020 00 0 00373 TRA TOK STIK0260
00366 0020 00 0 00373 TRA TOK STIK0261
00367 -0500 00 0 00613 CAL DAYS WE PASSED MIDNIGHT STIK0262
00370 0401 00 0 00614 ADM TDAY STIK0263
00371 0602 00 0 00613 SLW DAYS STIK0264
00372 0020 00 0 00356 TRA TLOOP STIK0265
00373 0602 00 1 02042 TOK SLW FREQ,1 STIK0266
00374 0602 00 0 00622 SLW FREQL STIK0267
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 6
00375 -0520 00 1 02046 NZT NA,1 IF NEW IS ZERO STIK0268
00376 0520 00 1 02047 ZET NB,1 STIK0269
00377 0020 00 0 00402 TRA *+3 STIK0270
00400 -0500 00 0 00616 CAL ONES STIK0271
00401 0602 00 1 02045 SLW RELADR,1 STIK0272
00402 0535 00 4 00572 LAC XRP,4 RESTOR AND RETURN STIK0273
00403 0020 00 4 00001 TRA 1,4 STIK0274
* STIK0275
00404 0636 00 4 00532 UPDATE SCA XRU,4 SAVE XR'S STIK0276
00405 -0634 00 1 00532 SXD XRU,1 STIK0277
00406 0602 00 0 00535 SLW UPB SAVE PROBN STIK0278
00407 -0600 00 0 00536 STQ UPG AND PROGN STIK0279
00410 0074 00 4 00001 TSX PUSH,4 SAVE IR'S STIK0280
00411 0 00011 0 00567 XRS-1,,NSAV STIK0281
00412 0 00000 0 00412 * STIK0282
00413 -0625 00 0 00611 STL UPDING SAY WE ARE UPDATING STIK0283
00414 -0625 00 0 00540 STL RSPNT FIRST REL UNKOWN RESET SCNDIRS POINTER STIK0284
00415 -0500 00 0 00616 UPLOP CAL ONES TO RAISE UPDREL TO TOP STIK0285
00416 0602 00 0 00533 SLW UPDREL STIK0286
00417 0600 00 0 00534 STZ LOWX1 RESET FOUND ONE INDEX STIK0287
00420 -0500 00 0 00535 CAL UPB STIK0288
00421 0560 00 0 00536 LDQ UPG STIK0289
00422 0074 00 4 00541 TSX SCN,4 SCAN PROBN-PROGN STIK0290
00423 0020 00 0 00436 TRA UPBOT STIK0291
00424 -0500 00 1 02042 CAL FREQ,1 IF IT HAS NOT CHANGED STIK0292
00425 0760 00 0 00001 LBT STIK0293
00426 0020 00 0 00561 TRA MORE IGNORE IT STIK0294
00427 -0500 00 1 02045 CAL RELADR,1 CHECK FOR LOWER STIK0295
00430 -0340 00 0 00533 LAS UPDREL STIK0296
00431 0020 00 0 00561 TRA MORE STIK0297
00432 -0520 00 0 00534 NZT LOWX1 STIK0298
00433 0634 00 1 00534 SXA LOWX1,1 IT IS LOWER SAVE INDEX STIK0299
00434 0602 00 0 00533 SLW UPDREL AND RELADR STIK0300
00435 0020 00 0 00561 TRA MORE STIK0301
00436 -0520 00 0 00534 UPBOT NZT LOWX1 DID WE FIND ONE STIK0302
00437 0020 00 0 00524 TRA UPRET NO, RETURN STIK0303
00440 0534 00 1 00534 LXA LOWX1,1 YES, UPDATE IT STIK0304
00441 -0500 00 1 02040 CAL PB,1 SETUP WRITE X STIK0305
00442 0560 00 1 02041 LDQ PG,1 STIK0306
00443 0602 00 0 00602 SLW WX STIK0307
00444 -0600 00 0 00603 STQ WX+1 STIK0308
00445 -0500 00 1 02045 CAL RELADR,1 IF RELADR GIVEN, USE IT STIK0309
00446 -0340 00 0 00616 LAS ONES STIK0310
00447 0000 00 0 00447 HTR * GREATER THAN ALL ONES STIK0311
00450 -0754 00 0 00000 ZAC STIK0312
00451 0602 00 0 00604 SLW WX+2 STIK0313
00452 0600 00 0 00605 STZ WX+3 ZERO ALPHA BETA STIK0314
00453 0600 00 0 00606 STZ WX+4 STIK0315
00454 0520 00 0 00604 ZET WX+2 IF RELADR AL AND BTA=0 STIK0316
00455 0020 00 0 00471 TRA UPWT STIK0317
00456 -0520 00 0 00540 NZT RSPNT HAVE WE RESET POINTER STIK0318
00457 0020 00 0 00465 TRA *+6 STIK0319
00460 0600 00 0 00540 STZ RSPNT STIK0320
00461 0074 00 4 00000 TSX SCNDIR,4 STIK0321
00462 0 00000 0 00537 RSMODE STIK0322
00463 0 00000 0 00602 WX STIK0323
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 7
00464 0 00000 0 00464 * STIK0324
00465 0520 00 1 02046 ZET NA,1 STIK0325
00466 0020 00 0 00471 TRA UPWT STIK0326
00467 -0520 00 1 02047 NZT NB,1 STIK0327
00470 0020 00 0 00501 TRA UPNOER DON'T WRITE STIK0328
00471 0074 00 4 00000 UPWT TSX SCNDIR,4 STIK0329
00472 0 00000 0 00615 WRITEM WRITE MODE STIK0330
00473 0 00000 0 00602 WX STIK0331
00474 0 00000 1 02045 RELADR,1 STIK0332
00475 0602 00 0 00601 SLW TEMP STIK0333
00476 0100 00 0 00501 TZE UPNOER STIK0334
00477 0074 00 4 00005 TSX LATER,4 STIK0335
00500 0 00000 1 02040 PB,1 SET LATENT ERROR STIK0336
00501 -0500 00 0 02045 UPNOER CAL =O777777777776 RESET CHANGED SWITCH STIK0337
00502 0320 00 1 02042 ANS FREQ,1 STIK0338
00503 -0520 00 1 02046 NZT NA,1 IF Y IS ZERO STIK0339
00504 0520 00 1 02047 ZET NB,1 STIK0340
00505 0020 00 0 00517 TRA YNZ STIK0341
00506 -0500 00 0 00616 CAL ONES SET UNKOWN RELADR STIK0342
00507 0602 00 1 02045 SLW RELADR,1 STIK0343
00510 -0520 00 1 02043 NZT OA,1 IF ENTRY IS EMPTY STIK0344
00511 0520 00 1 02044 ZET OB,1 STIK0345
00512 0020 00 0 00415 TRA UPLOP STIK0346
00513 0600 00 1 02040 STZ PB,1 GIVE IT BACK STIK0347
00514 0600 00 1 02041 STZ PG,1 STIK0348
00515 0600 00 1 02042 STZ FREQ,1 STIK0349
00516 0020 00 0 00415 TRA UPLOP AND DON'T UPDATE OLD A B STIK0350
00517 -0500 00 1 02046 YNZ CAL NA,1 SET OLD AB TO NEW AB STIK0351
00520 0560 00 1 02047 LDQ NB,1 STIK0352
00521 0602 00 1 02043 SLW OA,1 STIK0353
00522 -0600 00 1 02044 STQ OB,1 STIK0354
00523 0020 00 0 00415 TRA UPLOP STIK0355
00524 0074 00 4 00002 UPRET TSX POP,4 UNSAVE STIK0356
00525 0 00000 0 00525 * STIK0357
00526 0600 00 0 00611 STZ UPDING STIK0358
00527 0535 00 4 00532 LAC XRU,4 STIK0359
00530 -0534 00 1 00532 LXD XRU,1 STIK0360
00531 0020 00 4 00001 TRA 1,4 STIK0361
00532 0 00000 0 00000 XRU -XR4,,XR1 STIK0362
00533 0 00000 0 00000 UPDREL STIK0363
00534 0 00000 0 00000 LOWX1 STIK0364
00535 0 00000 0 00000 UPB STIK0365
00536 0 00000 0 00000 UPG STIK0366
00537 0 00000 0 00004 RSMODE PZE 4 STIK0367
00540 0 00000 0 00000 RSPNT STIK0368
* STIK0369
00541 0602 00 0 00565 SCN SLW SPB SAVE PROBN-PROGN IN SAVED STOR STIK0370
00542 -0600 00 0 00566 STQ SPG STIK0371
00543 0774 00 1 01212 AXT NREG,1 LOOK FOR PROGN-PROBN STIK0372
00544 -0130 00 0 00000 XCL STIK0373
00545 -0340 00 1 02041 SCNL LAS PG,1 CHECK PROGN STIK0374
00546 0020 00 0 00550 TRA *+2 STIK0375
00547 0020 00 0 00552 TRA *+3 STIK0376
00550 2 00015 1 00545 TIX SCNL,1,LREG STIK0377
00551 0020 00 4 00001 TRA 1,4 GIVE END OF LIST RETURN STIK0378
00552 -0130 00 0 00000 XCL STIK0379
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 8
00553 -0340 00 1 02040 LAS PB,1 CHECK PROBN STIK0380
00554 0020 00 0 00556 TRA *+2 STIK0381
00555 0020 00 4 00002 TRA 2,4 FOUND ONE STIK0382
00556 -0130 00 0 00000 XCL STIK0383
00557 2 00015 1 00545 TIX SCNL,1,LREG STIK0384
00560 0020 00 4 00001 TRA 1,4 STIK0385
00561 0560 00 0 00565 MORE LDQ SPB STIK0386
00562 -0500 00 0 00566 CAL SPG STIK0387
00563 2 00015 1 00545 TIX SCNL,1,LREG STIK0388
00564 0020 00 4 00001 TRA 1,4 STIK0389
00565 0 00000 0 00000 SPB PROBN OF SEARCH STIK0390
00566 0 00000 0 00000 SPG STIK0391
* STIK0392
00567 626331234270 BCI 1,STICKY STIK0393
00570 0 00000 0 00000 XRS -XR4,,XR1 STIK0394
00571 0 00000 0 00000 XR2 STIK0395
00572 0 00000 0 00000 XRP -XR4 STIK0396
00573 X BSS 5 WHAT WE ARE LOOKING FOR STIK0397
00573 PROBN SYN X STIK0398
00574 PROGN SYN PROBN+1 STIK0399
00575 XRELAD SYN PROGN+1 STIK0400
00576 ALPHA SYN XRELAD+1 STIK0401
00577 BETA SYN ALPHA+1 STIK0402
00011 NSAV SYN *-XRS+1 STIK0403
00600 0 00000 0 00000 MODE MODE OF CALL STIK0404
00601 0 00000 0 00000 TEMP STIK0405
00602 WX BSS 5 STIK0406
00607 443326332433 MFD BCI 2,M.F.D.(FILE) STIK0407
00610 742631432534
00611 0 00000 0 00000 UPDING ON IF UPDATING STIK0408
00612 0 00000 0 00003 XQTALN QTALEN STIK0409
00613 0 00000 0 00000 DAYS STIK0410
00614 +000023476700 TDAY DEC 5144000 STIK0411
00615 0 00000 0 00002 WRITEM PZE 2 MODE OF WRITE CALL STIK0412
00616 -377777777777 ONES OCT 777777777777 STIK0413
00617 0 00000 0 01440 SAVING 200*4 STIK0414
00620 0 00000 0 00062 PZE NSTICK FOR MONITORING PROGS STIK0415
00621 0 00000 0 00000 TOP HIGHEST FREQ ALLOWED STIK0416
00622 0 00000 0 00000 FREQL LAST INITAL FREQ STIK0417
00623 0 00000 0 00000 FREQD LAST DELETED FREQ STIK0418
00624 0 00000 0 00000 GOOD TOTAL ENTRYS FOUND IN TABLE STIK0419
00625 0 00000 0 00000 TOTAL TOTAL TIMES ASKED STIK0420
00626 REG BSS NREG STIK0421
02040 PB SYN REG+NREG STIK0422
02041 PG SYN PB+1 PROGN STIK0423
02042 FREQ SYN PG+1 USE FREQUENCY NUMBER STIK0424
02043 OA SYN FREQ+1 OLD ALPHA STIK0425
02044 OB SYN OA+1 OLD BETA STIK0426
02045 RELADR SYN OB+1 RELITAVE ADDRESS STIK0427
02046 NA SYN RELADR+1 STIK0428
02047 NB SYN NA+1 NEW BETA STIK0429
END STIK0430
LITERALS
02040 000000000000
02041 000000000001
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 9
02042 000000000002
02043 000000000004
02044 000000000005
02045 777777777776
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 1
POST PROCESSOR ASSEMBLY DATA
2046 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
156 R 141
573 X 32, 342, 600
2046 NA 75, 77, 123, 144, 325, 375, 465, 503, 517, 2040
2047 NB 126, 330, 376, 467, 504, 520, 2040
2043 OA 206, 326, 333, 510, 521, 2040
2044 OB 211, 331, 334, 511, 522, 2040
305 P1 300, 303
306 P2 315
2040 PB 47, 312, 321, 343, 350, 441, 500, 513, 553, 2040
2041 PG 313, 322, 442, 514, 545, 2040
274 PL 277, 304
77 RQ 73
52 RW 42, 43
152 WE 76, 201
602 WX 443, 444, 451, 452, 453, 454, 463, 473
31 XA 23
336 CPX 324
607 MFD 104, 107, 112, 115, 255, 260, 263, 266
2 POP 524
626 REG 2040
243 RET 234, 236, 241
541 SCN 64, 121, 204, 323, 422
565 SPB 541, 561
566 SPG 542, 562
373 TOK 365, 366
621 TOP 231, 235
535 UPB 406, 420
536 UPG 407, 421
572 XRP 270, 402
570 XRS 11, 12, 13, 24, 243, 244, 245, 411, 600
532 XRU 404, 405, 527, 530
517 YNZ 505
577 BETA 114, 127, 171, 212, 265, 600
613 DAYS 360, 367, 371
2042 FREQ 153, 232, 240, 274, 301, 306, 373, 424, 502, 515, 2040
624 GOOD 223, 225
46 INIT 41
117 LKAB 105, 110, 113
15 LREG 11, 277, 304, 354, 550, 557, 563
600 MODE 17, 36, 71, 137, 173
561 MORE 70, 125, 130, 135, 136, 210, 213, 220, 221, 327, 332, 335, 426, 431, 435
1212 NREG 11, 46, 271, 543, 626, 2040
11 NSAV 411, 600
616 ONES 177, 273, 400, 415, 446, 506
1 PUSH 410
270 PUTT 256, 261, 264
252 PUTY 45, 176
242 RET2 37, 51, 65, 116, 175, 205
545 SCNL 550, 557, 563
614 TDAY 370
601 TEMP 272, 302, 305, 475
1 STICKY MODULE (STIK**) 03/04/70 1551.1 PAGE 2
POST PROCESSOR ASSEMBLY DATA
6 TRAC 14, 247
471 UPWT 455, 466
340 XRP2 316
576 ALPHA 111, 124, 170, 207, 262, 600
623 FREQD 230, 307
622 FREQL 226, 364, 374
5 LATER 477
202 LKOLD 172
534 LOWX1 417, 432, 433, 436, 440
170 NONEW 122
573 PROBN 34, 62, 103, 117, 202, 254, 600
574 PROGN 35, 63, 106, 120, 203, 257, 600
540 RSPNT 414, 456, 460
356 TLOOP 372
625 TOTAL 52, 54
436 UPBOT 423
415 UPLOP 512, 516, 523
524 UPRET 437
7 ENTLEN 11, 142, 150, 151, 156, 164, 165, 346, 355
3 GETDAY 356
4 GETEFA 21, 26
103 LOOKAB 56, 60
62 NSTICK 11, 620
316 PNOUPD 311
3 QTALEN 11, 612
2045 RELADR 66, 131, 157, 200, 214, 401, 427, 445, 474, 507, 2040
537 RSMODE 462
617 SAVING 0, 233
0 SCNDIR 461, 471
11 STICKY 0
404 UPDATE 44, 314
611 UPDING 252, 413, 526
533 UPDREL 416, 430, 434
223 UPDTIM 102, 155, 167
501 UPNOER 470, 476
615 WRITEM 472
612 XQTALN 57, 133, 216
575 XRELAD 55, 67, 600
0 NO ERROR IN ABOVE ASSEMBLY.
PUSHB BCD 02/22/71 1718.4 1740 00000
1 FAP ASSEMBLY LISTING ... ... ... FILE PUSH2A _____FAP___ 03/04/70 1551.4 PAGE 1
00002 ENTRY PUSH PUSH0001
00034 ENTRY POP PUSH0002
00063 ENTRY PRESET PUSH0003
LINKAGE DIRECTOR
00000 000000000000
00001 476462306060
00120 NPDL SYN 80 PUSH0005
* TSX $PUSH,4 PUSH0006
* PZE A,,N BLOCK TO BE SAVED PUSH0007
* FULL FULL RETURN* PUSH0008
* PUSH0009
* TSX $POP,4 PUTS BACK WHERE IT CAME FROM PUSH0010
* EMPTY NO MORE LEFT RETURN* PUSH0011
* PUSH0012
* TSX $PRESET,4 RESETS PUSH DOWN STACK PUSH0013
* PUSH0014
00002 0636 00 4 00030 PUSH SCA XRS,4 SAVE RETURN PUSH0015
00003 -0500 00 4 00001 CAL 1,4 GET A,,N PUSH0016
00004 0771 00 0 00022 ARS 18 PUSH0017
00005 0361 00 4 00001 ACL 1,4 GET BES,,N PUSH0018
00006 0602 00 0 00066 SLW TEMP SAVE IT PUSH0019
00007 0361 00 0 00214 ACL =O1000001 ADD ONE SPACE PUSH0020
00010 -0734 00 4 00000 PDX ,4 PUSH0021
00011 0621 00 0 00023 STA CAL1 PUSH0022
00012 0361 00 0 00070 ACL PDPNT CHECK FOR ROOM PUSH0023
00013 0622 00 0 00070 STD PDPNT UP TOTAL COUNT PUSH0024
00014 -0340 00 0 00071 LAS PDLEN PUSH0025
00015 0020 00 0 00032 TRA FULL NO ROOM PUSH0026
00016 0020 00 0 00017 TRA *+1 PUSH0027
00017 0754 00 4 00000 PXA ,4 GET NEW BES OF PDL PUSH0028
00020 0361 00 0 00070 ACL PDPNT PUSH0029
00021 0621 00 0 00024 STA SLW1 PUSH0030
00022 0621 00 0 00070 STA PDPNT PUSH0031
00023 -0500 00 4 00000 CAL1 CAL **,4 PUSH0032
00024 0602 00 4 00000 SLW1 SLW **,4 PUSH0033
00025 2 00001 4 00023 TIX *-2,4,1 INDEX FOR MOVING WORDS PUSH0034
00026 -0500 00 0 00066 CAL TEMP SAVE BES,,N OF USER'S STORE PUSH0035
00027 0602 60 0 00024 SLW* SLW1 PUSH0036
00030 -0774 00 4 00000 XRS AXC ,4 PUSH0037
00031 0020 00 4 00003 TRA 3,4 PUSH0038
00032 0535 00 4 00030 FULL LAC XRS,4 FULL RETURN PUSH0039
00033 0020 60 4 00002 TRA* 2,4 PUSH0040
* PUSH0041
00034 0636 00 4 00057 POP SCA XRP,4 SAVE RETURN PUSH0042
00035 0535 00 4 00070 LAC PDPNT,4 GET BES,,N OF USERS STORE PUSH0043
00036 -0500 00 4 77777 CAL -1,4 PUSH0044
00037 0100 00 0 00061 TZE EMPTY OFF THE TOP PUSH0045
00040 0621 00 0 00051 STA SLW2 PUSH0046
00041 -0734 00 4 00000 PDX ,4 GET COUNT PUSH0047
00042 0754 00 4 00000 PXA ,4 PUSH0048
00043 0602 00 0 00066 SLW TEMP SET TEMP TO N,,N PUSH0049
00044 -0634 00 4 00066 SXD TEMP,4 PUSH0050
00045 -0500 00 0 00070 CAL PDPNT STEP PAST POINTER WORD IN STACK PUSH0051
00046 0402 00 0 00213 SUB =1 PUSH0052
1 FAP ASSEMBLY LISTING ... ... ... FILE PUSH2A _____FAP___ 03/04/70 1551.4 PAGE 2
00047 0621 00 0 00050 STA CAL2 PUSH0053
00050 -0500 00 4 00000 CAL2 CAL **,4 PUSH0054
00051 0602 00 4 00000 SLW2 SLW **,4 PUSH0055
00052 2 00001 4 00050 TIX *-2,4,1 INDEX FOR RESTOR PUSH0056
00053 0500 00 0 00070 CLA PDPNT SUB N,,N FROM PD POINTER PUSH0057
00054 0402 00 0 00066 SUB TEMP PUSH0058
00055 0402 00 0 00214 SUB =O1000001 PUSH0059
00056 0602 00 0 00070 SLW PDPNT PUSH0060
00057 -0774 00 4 00000 XRP AXC ,4 PUSH0061
00060 0020 00 4 00002 TRA 2,4 PUSH0062
00061 0535 00 4 00057 EMPTY LAC XRP,4 PUSH0063
00062 0020 60 4 00001 TRA* 1,4 PUSH0064
* PUSH0065
00063 -0500 00 0 00067 PRESET CAL PDRES RESET POINTER PUSH0066
00064 0602 00 0 00070 SLW PDPNT PUSH0067
00065 0020 00 4 00001 TRA 1,4 PUSH0068
00066 0 00000 0 00000 TEMP PUSH0069
00067 0 00000 0 00073 PDRES PDL,,0 PUSH0070
00070 0 00000 0 00073 PDPNT PDL,,0 PUSH0071
00071 0 00120 0 00000 PDLEN 0,,NPDL PUSH0072
00072 0 00000 0 00000 PZE EMPTY FLAG PUSH0073
00073 PDL BSS NPDL PUSH0074
END PUSH0075
LITERALS
00213 000000000001
00214 000001000001
1 FAP ASSEMBLY LISTING ... ... ... FILE PUSH2A _____FAP___ 03/04/70 1551.4 PAGE 1
POST PROCESSOR ASSEMBLY DATA
215 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
73 PDL 67, 70
34 POP 0
57 XRP 34, 61
30 XRS 2, 32
23 CAL1 11
50 CAL2 47
32 FULL 15
120 NPDL 2, 71, 73
2 PUSH 0
24 SLW1 21, 27
51 SLW2 40
66 TEMP 6, 26, 43, 44, 54
61 EMPTY 37
71 PDLEN 14
70 PDPNT 12, 13, 20, 22, 35, 45, 53, 56, 64
67 PDRES 63
63 PRESET 0
0 NO ERROR IN ABOVE ASSEMBLY.
BUCMB BCD 02/22/71 1718.4 48224 00000
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 1
PREFACE - ENTRIES - CONSTANTS - STORAGE AREAS
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0004
* BUCM0005
* BUFFER CONTROL MODULE - LOUIS POUZIN BUCM0006
* PROGRAMMING STAFF NOTE 42 BUCM0007
* MEMO CC-241 BUCM0008
* FILE BUCM2A BUCM0009
* PROJECT MAC - M.I.T. JANUARY 65 BUCM0010
* BUCM0011
* THE BUFFER CONTROL MODULE PROCESSES CALLS FROM THE FILE BUCM0012
* COORDINATOR. CALLS ARE ALREADY CHECKED FOR VALIDITY. BUCM0013
* THE B.C.M. CONVERTS OPERATIONS INVOLVING A (PART OF A) FILE INTO BUCM0014
* AN APPROPRIATE SEQUENCE OF SUB-TASKS. BUCM0015
* EACH SUB-TASK IS EITHER A TRANSFER OF DATA BETWEEN BUFFER AND USER'S BUCM0016
* AREA, OR A CALL TO THE STRATEGY MODULE FOR PROCESSING INVOLVING AN BUCM0017
* INTEGRAL NUMBER OF SEQUENTIAL AND COMPLETE RECORDS. BUCM0018
* BUFFER, RATHER THAN USER'S AREA, IS ASSIGNED TO THE SWAPPING, WHENEVERBUCM0019
* IT IS NOT POSSIBLE, OR EFFICIENT, TO TRANSFER DIRECTLY WITH THE USER'SBUCM0020
* AREA. BUCM0021
* BUCM0022
* THE B.C.M. INITIALIZES OR UPDATES THE FOLLOWING PARAMETERS IN THE BUCM0023
* ACTIVE FILE STATUS TABLE. BUCM0024
* NORECS NUMBER OF RECORDS USED BY THE FILE BUCM0025
* LCOUNT NUMBER OF WORDS IN THE LAST RECORD BUCM0026
* REDREC RECORD NUMBER CONTAINING THE NEXT WORD TO BE READ BUCM0027
* REDWRD ADDRESS OF WORD WITHIN REDREC TO BE READ NEXT BUCM0028
* WRTREC RECORD NUMBER CONTAINING THE NEXT ADDRESS TO BE WRITTEN BUCM0029
* WRTWRD ADDRESS WITHIN WRTREC TO BE WRITTEN NEXT BUCM0030
* CHNG BIT NON ZERO IF CONTENTS OF BUFFER DIFFERS FROM FILE BUCM0031
* PRIME BIT NON ZERO IF CONTENTS OF BUFFER IS A COMPLETE RECORD, BUCM0032
* IN THE CASE OF THE LAST RECORD, PRIME IS NON ZERO IF BUCM0033
* THE BUFFER CONTAINS THE WHOLE (NOT FULL) RECORD, .AND. BUCM0034
* IF THIS RECORD (CHNG OR NOT) IS ALREADY WRITTEN IN THE BUCM0035
* FILE. BUCM0036
* BUFREC NUMBER OF THE RECORD CONTAINED IN THE BUFFER. ZERO = NONEBUCM0037
* BUFADR ADDRESS OF BEGINNING OF BUFFER. ZERO = NO BUFFER BUCM0038
* WINDEX NUMBER OF WORDS WRITTEN INTO THE BUFFER BUCM0039
* DINDEX INDEX OF WORD WITHIN BUFFER TO BE EXCHANGED WITH USER'S BUCM0040
* AREA, BEFORE INITIATING A NEW IO. (FROM 0 TO RCOUNT-1) BUCM0041
* DR BIT NON ZERO IF DELAYED READING FROM BUFFER BUCM0042
* DW BIT NON ZERO IF DELAYED WRITING INTO BUFFER BUCM0043
* DCOUNT NUMBER OF WORDS TO BE MOVED ON A DELAYED TRANSFER BUCM0044
* DADDRS STARTING ADDRESS IN USER'S AREA FOR DELAYED TRANSFER BUCM0045
* PRIOR FILE I/O PRIORITY BUCM0046
* BUCM0047
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0048
* BUCM0049
00140 ENTRY BASIGN BUCM0050
00162 ENTRY BCHECK BUCM0051
00177 ENTRY BCLOSE BUCM0052
00217 ENTRY BOPEN BUCM0053
00357 ENTRY BREAD BUCM0054
00242 ENTRY BSAVE BUCM0055
00244 ENTRY BTRUNC BUCM0056
00354 ENTRY BWRITE BUCM0057
BUCM0058
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 2
PREFACE - ENTRIES - CONSTANTS - STORAGE AREAS
EXTERN MOVE,GETEFA BUCM0059
BUCM0060
UNLIST BUCM0061
BUCM0064
* BUCM0065
00006 BRICS EQU 6 LENGTH OF BREAD CALLING SEQUENCE BUCM0066
00002 ASCS EQU 2 LENGTH OF BASIGN CALLING SEQUENCE BUCM0067
00004 CHKCS EQU 4 BCHECK CALL. SEQ. LENGTH BUCM0068
00004 CLOCS EQU 4 BCLOSE LENGTH OF CALL. SEQ. BUCM0069
00005 IOLEN EQU 5 MAXIMUM LENGTH OF LIST REQUESTS BUCM0070
00002 OPCS EQU 2 BOPEN CALLING SEQUENCE LENGTH BUCM0071
00004 SACS EQU 4 BSAVE CALLING SEQUENCE LENGTH BUCM0072
00005 TRCS EQU 5 BTRUNC CALLING SEQUENCE LENGTH BUCM0073
* BUCM0074
000001 APND BOOL 1 ON = CALL FOR APPENDING TO THE FILE BUCM0075
000002 BAIL BOOL 2 ON = LAST RECORD NOT WRITTEN INTO FILE BUCM0076
000004 BBUF BOOL 4 ON = CALL BEGINS IN THE BUFFER BUCM0077
000010 BLAST BOOL 10 ON = BUFFER CONTAINS LAST RECORD OF FILE BUCM0078
000020 BREC BOOL 20 ON = CALL BEGINS A RECORD BUCM0079
000040 BUFIN BOOL 40 ON = CALL INVOLVES RECORD IN BUFFER BUCM0080
000100 CHG BOOL 100 ON = CONTENTS OF BUFFER HAS CHANGED BUCM0081
000200 CLOS BOOL 200 ON = BCLOSE CALLED BUCM0082
000400 EBUF BOOL 400 ON = CALL ENDS IN THE BUFFER BUCM0083
001000 EOF BOOL 1000 ON = CALL HITS END OF FILE BUCM0084
002000 EREC BOOL 2000 ON = CALL ENDS UP A RECORD BUCM0085
004000 IOF BOOL 4000 ON = NO I/O, ONLY LIST SETTING BUCM0086
010000 LAST BOOL 10000 ON = LAST RECORD OF FILE INVOLVED IN CALL BUCM0087
020000 MREC BOOL 20000 ON = CALL INVOLVES SEVERAL RECORDS BUCM0088
040000 NDFIL BOOL 40000 ON = CALL INCLUDING LAST WORD OF FILE BUCM0089
100000 PRIM BOOL 100000 ON = BUFFER CONTAINS A COMPLETE RECORD BUCM0090
200000 WFB BOOL 200000 ON = I/O STARTED WITH BUFFER BUCM0091
400000 WRIT BOOL 400000 ON = WRITING OR REWRITING BUCM0092
* BUCM0093
00027 +000000077777 ADMSK OCT 77777 BUCM0094
00030 2 00000 0 00000 BUFR PTW BUFFER MEMORY FLAG (TAG) BUCM0095
00031 0 00000 0 00000 FRMLOC PZE SOURCE LOCATION FOR MOVE ROUTINE BUCM0096
00032 2 00000 0 00000 MEMRY PTW USER MEMORY FLAG (TAG) BUCM0097
00033 1 00000 0 00000 PON PON PREFIX 1 BUCM0098
00034 3 00000 0 00000 PTH PTH PREFIX 3 BUCM0099
00035 2 00000 0 00000 PTW PTW PREFIX 2 BUCM0100
00036 0 00000 0 00000 TOLOC PZE TARGET LOCATION FOR MOVE ROUTINE BUCM0101
00037 0 00000 0 00000 Z PZE ZERO STORAGE BUCM0102
* BUCM0103
00040 DATA SYN * BUCM0104
00040 ARG BSS BRICS CALLING SEQUENCE STORAGE BUCM0105
00046 BLOC BSS 1 PZE LOC,,NWORDS BUCM0106
00047 BUFFER BSS 1 BUFFER MEMORY FLAG (INTEGER) BUCM0107
00050 CHK1 BSS 1 ADDRESS OF BEGINNING OF BLOC BUCM0108
00051 CHKL1 BSS 1 LENGTH OF BLOC UP TO NEXT RECORD BUCM0109
00052 CHK2 BSS 1 ADDRESS IN BLOC OF 1ST WORD OF NEXT RECORD BUCM0110
00053 CHKL2 BSS 1 LENGTH OF THE INTEGRAL GROUP OF RECORD BUCM0111
00054 CHK3 BSS 1 ADDRESS IN BLOC OF LAST UNCOMPLETE RECORD BUCM0112
00055 CHKL3 BSS 1 LENGTH OF LAST UNCOMPLETE RECORD BUCM0113
00056 DEV BSS 1 POSITIVE DIFF. NORECS(NEW) - NORECS(OLD) BUCM0114
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 3
PREFACE - ENTRIES - CONSTANTS - STORAGE AREAS
00057 FILENG BSS 1 WORD COUNT FOR THE FILE BUCM0115
00060 IORD BSS IOLEN LIST OF READ REQUESTS BUCM0116
00065 IORW BSS IOLEN LIST OF REWRIT REQUESTS BUCM0117
00072 IOWR BSS IOLEN LIST OF WRITE REQUESTS BUCM0118
00077 LABEL BSS 1 HEADER FOR READ/WRITE RECORDS BUCM0119
00100 MEMORY BSS 1 USER MEMORY FLAG (INTEGER) BUCM0120
00101 NDBLOC BSS 2 LINEAR ADDRESS OF LAST WORD OF THE CALL BUCM0121
00103 NEXCUR BSS 2 LINEAR ADDRESS OF POINTER AFTER THE CALL BUCM0122
00105 RELADR BSS 2 LINEAR ADDRESS OF BEGINNING OF CALL BUCM0123
00107 REQ BSS 1 STORAGE FOR CURRENT IO REQUEST BUCM0124
00110 REQCT BSS 1 REQUEST COUNT FOR STRATEGY CALLS BUCM0125
00111 SW BSS 1 SAVING FOR INDICATORS BUCM0126
00112 T BSS 1 TEMPORARY FOR ANY USE BUCM0127
00113 NDATA SYN * BUCM0128
* BUCM0129
00110 COUNT SYN REQCT WORD COUNT FOR MOVE S/R BUCM0130
00033 ION SYN PON PFX = 1 IO NON TRANSMIT BUCM0131
00035 IOP SYN PTW PFX = 2 IO PROCEED BUCM0132
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 4
MACROS PROTOTYPES
* BUCM0134
* MACROS FOR INDEXING LOADING AND UNLOADING INDEX REGISTERS BUCM0135
* BUCM0136
-0 21004 0 05610 .PMC OPSYN PMC BUCM0137
* BUCM0138
-0 21000 0 05610 .PCC OPSYN PCC BUCM0139
* BUCM0140
-0 21021 0 05610 PCC OPSYN REM BUCM0141
.PCC OFF BUCM0142
* BUCM0143
MAC1 MACRO OPCODE,VAR1,VAR2 BUCM0144
VAR1 OPCODE VAR2 BUCM0145
MAC1 END BUCM0146
* BUCM0147
MAC2 MACRO OP BUCM0148
PMC OFF BUCM0149
IRP OP BUCM0150
MAC3 OP BUCM0151
IRP BUCM0152
MAC2 END BUCM0153
* BUCM0154
MAC3 MACRO TO,FL BUCM0155
TO MACRO AD,T,T1 BUCM0156
PMC OFF BUCM0157
IFF T1,1 BUCM0158
.'TO AD,T BUCM0159
IFF T1 BUCM0160
MAC4 FL,AD,T,T1 BUCM0161
TO END BUCM0162
MAC3 END BUCM0163
* BUCM0164
MAC4 MACRO LS,AD,XC,A,T,T1 BUCM0165
IFF 1,LS,L BUCM0166
CAL A,T BUCM0167
MAC5 LS,AD,XC,A,T,T1 BUCM0168
MAC4 END BUCM0169
* BUCM0170
MAC5 MACRO LS,AD,XC,A,T,T1 BUCM0171
IFF 1,LS,L BUCM0172
P'AD'XC ,T1 BUCM0173
IFF 1,LS,S BUCM0174
P'XC'AD ,T1 BUCM0175
IFF 1,LS,S BUCM0176
ST'AD A,T BUCM0177
MAC5 END BUCM0178
* BUCM0179
* MACRO TO REPEAT AN OPERATION CODE WITH VARIOUS FIELDS BUCM0180
DITO MACRO OPCODE,VAR BUCM0181
PMC OFF BUCM0182
IRP VAR BUCM0183
MAC1 OPCODE,VAR BUCM0184
IRP BUCM0185
DITO END BUCM0186
* BUCM0187
BUCM0188
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 5
MACROS PROTOTYPES
* BUCM0189
* MACROS FOR GENERATING CALLS TO THE STRATEGY MODULE BUCM0190
* BUCM0191
MAKNAM MACRO NAM BUCM0192
MAC6 NAM,FMAX,(1,2,3,4,5,6,7,8) BUCM0193
MAKNAM END BUCM0194
* BUCM0195
MAC6 MACRO NAM,FMAX,S,A BUCM0196
IRP S BUCM0197
A SET S-1 BUCM0198
IFF A/FMAX,1 BUCM0199
MAC7 NAM,S BUCM0200
IRP BUCM0201
MAC6 END BUCM0202
* BUCM0203
MAC7 MACRO NAM,S BUCM0204
TSX NAM'S,4 BUCM0205
RMT BUCM0206
EXTERN NAM'S BUCM0207
RMT BUCM0208
MAC7 END BUCM0209
* BUCM0210
MAC8 MACRO NAM BUCM0211
PMC OFF BUCM0212
IRP NAM BUCM0213
MAC1 SYN,NAM'F,*-1 BUCM0214
MAKNAM NAM BUCM0215
IRP BUCM0216
MAC8 END BUCM0217
* BUCM0218
* MACROS FOR GENERATING CALLS TO MOVE S/R BUCM0219
* BUCM0220
MAC9 MACRO CS,S,AD,T BUCM0221
PMC ON BUCM0222
IFF 0,AD BUCM0223
LXA AD,7 BUCM0224
PMC ON BUCM0225
IFF 0,AD BUCM0226
SXA CS,7 BUCM0227
PMC ON BUCM0228
IFF 1,AD BUCM0229
SXA CS,4 BUCM0230
PMC OFF BUCM0231
S SET T BUCM0232
MAC9 END BUCM0233
* BUCM0234
MOVE MACRO DR,FR,TO,CNT,A,B,C,D BUCM0235
PMC OFF BUCM0236
B SET 0 BUCM0237
C SET 0 BUCM0238
D SET 0 BUCM0239
PMC ON BUCM0240
IFF 1,FR BUCM0241
SXA A,4 BUCM0242
PMC OFF BUCM0243
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 6
MACROS PROTOTYPES
IFF 0,FR BUCM0244
MAC9 A,B,FR BUCM0245
PMC ON BUCM0246
IFF 1,TO BUCM0247
SXA A+1,4 BUCM0248
PMC OFF BUCM0249
IFF 0,TO BUCM0250
MAC9 A+1,C,TO BUCM0251
PMC ON BUCM0252
IFF 1,CNT BUCM0253
SXA A+2,4 BUCM0254
PMC OFF BUCM0255
IFF 0,CNT BUCM0256
MAC9 A+2,D,CNT BUCM0257
PMC ON BUCM0258
STI SW BUCM0259
TSX MOVE,4 BUCM0260
IFF 1,DR,TB BUCM0261
PAR MEMORY,,BUFFER BUCM0262
IFF 1,DR,TU BUCM0263
PAR BUFFER,,MEMORY BUCM0264
A EFA **,B BUCM0265
EFA **,C BUCM0266
EFA **,D BUCM0267
PAR PVIOL BUCM0268
LDI SW BUCM0269
MOVE END BUCM0270
* BUCM0271
* MACRO TO GENERATE CALLS TO SAVBUF S/R BUCM0272
* BUCM0273
SAVB MACRO BUCM0274
PMC ON BUCM0275
TSX SAVBUF,4 BUCM0276
SAVB END BUCM0277
* BUCM0278
* MACRO TO GENERATE CALLS TO TBUF S/R BUCM0279
* BUCM0280
TBUF MACRO BUCM0281
PMC ON BUCM0282
TSX TBUF,4 BUCM0283
TBUF END BUCM0284
* BUCM0285
* BUCM0286
00113 DITO OPSYN,((.LXA,LXA),(.LXD,LXD),(.LAC,LAC),(.LDC,LDC)) BUCM0287
00113 DITO OPSYN,((.SXA,SXA),(.SXD,SXD),(.SCA,SCA),(.SCD,SCD)) BUCM0288
00113 DITO OPSYN,((ZSA,.SXA),(ZSD,.SXD),(SZA,.SXA),(SZD,.SXD)) BUCM0289
00113 MAC2 ((LXA,(L,A,X)),(LXD,(L,D,X)),(LAC,(L,A,C)),(LDC,(L,D,C)),BUCM0291
ETC (SXA,(S,A,X)),(SXD,(S,D,X)),(SCA,(S,A,C)),(SCD,(S,D,C))) BUCM0292
M LXA MACRO AD,T,T1 BUCM0292.002
M LXD MACRO AD,T,T1 BUCM0292.002
M LAC MACRO AD,T,T1 BUCM0292.002
M LDC MACRO AD,T,T1 BUCM0292.002
M SXA MACRO AD,T,T1 BUCM0292.002
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 7
MACROS PROTOTYPES
M SXD MACRO AD,T,T1 BUCM0292.002
M SCA MACRO AD,T,T1 BUCM0292.002
M SCD MACRO AD,T,T1 BUCM0292.002
00113 MAC8 (OPEN,QTEST,READ,REWRT,WRITE,DFILE,CLOSE) BUCM0293
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 8
BASIGN - SETS BUFFER ADDRESS IN FILE TABLE
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0295
* BUCM0296
* TSX BASIGN,4 ASSIGNS A BUFFER TO BE USED FOR BUCM0297
* EFA PTR,T A FILE BUCM0298
* PAR Y,,PVIOL RETURN ADDRESS IF BUFFER VIOLATES BUCM0299
* Y = BUFFER,,SIZE BUCM0300
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0301
* BUCM0303
00140 BASIGN SYN * BUCM0304
00140 0074 00 5 02406 TSX SAV,5 BUCM0305
00141 0774 00 5 00002 AXT ASCS,5 BUCM0306
00142 0074 00 4 02100 TSX PICK,4 GET ARGUMENTS BUCM0307
00143 LXD ARG+1,5 BUCM0308
00144 SXA PVIOL,5 SET VIOLATION RETURN BUCM0309
00145 -0500 60 0 00041 CAL* ARG+1 BUFFER LOCATION AND SIZE BUCM0310
00146 0622 00 0 00154 STD AN LENGTH OF BUFFER BUCM0311
00147 -0734 00 5 00000 PDX ,5 COUNT TO INDEX 5 BUCM0312
00150 -0754 00 0 00000 PXD ,0 BUCM0313
00151 -3 00000 5 00157 TXL AO,5,0 IF ZERO, SAME AS ADDRESS 0 BUCM0314
00152 LXA RCOUNT,1,5 RECORD LENGTH BUCM0315
00154 3 00000 5 02442 AN TXH PVIOL,5,** IF GREATER THAN ASSIGNED BUFFER, PVIOL BUCM0316
00155 -0500 60 0 00041 CAL* ARG+1 BUCM0317
00156 -0320 00 0 00027 ANA ADMSK KEEP ADDRESS BUCM0318
00157 0602 00 1 00020 AO SLW BUFADR,1 SET BUFFER ADDRESS, CLEARS BUFFER STATUS BUCM0319
00160 0622 00 1 00021 STD WINDEX,1 BUCM0320
00161 0020 00 0 02425 TRA RETURN BUCM0321
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 9
BCHECK - CHECKS PREVIOUS I/O
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0323
* BUCM0324
* BCHECK FOR PREVIOUS IO FINISHED, OR ERRONEOUS BUCM0325
* BUCM0326
* TSX BCHECK,4 BUCM0327
* EFA PTR,T BUCM0328
* PAR MEMORY,,BUFFER BUCM0329
* PAR ERROR,,FINISH BUCM0330
* PAR PVIOL BUCM0331
* BUCM0332
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0333
* BUCM0334
00162 BCHECK SYN * BUCM0335
00162 0074 00 5 02406 TSX SAV,5 SAVE REGISTERS BUCM0336
00163 0774 00 5 00004 AXT CHKCS,5 BUCM0337
00164 0074 00 4 02100 TSX PICK,4 GET ARGUMENTS BUCM0338
00165 -0500 00 0 00043 CAL ARG+3 BUCM0339
00166 0621 00 0 02442 STA PVIOL SET VIOLATION RETURN BUCM0340
00167 -0500 00 0 00042 CAL ARG+2 BUCM0341
00170 0621 00 0 02454 STA ERROR SET I/O ERROR RETURN BUCM0342
00171 LXA RETURN,4 NORMAL RETURN IS FINISH BUCM0343
00172 -0500 00 0 02437 CAL QWAIT BUCM0344
00173 0621 00 0 02425 STA RETURN WAIT RETURN IS 5,4 BUCM0345
00174 SXA QWAIT,4 BUCM0346
00175 0074 00 4 01314 TSX CHKERR,4 RETURNS TO ERROR OR PVIOL IF EVER BUCM0347
00176 0020 00 0 02425 TRA RETURN ELSE NORMAL RETURN BUCM0348
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 10
BCLOSE - TERMINATES I/O FOR A FILE
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0350
* BUCM0351
* BCLOSE TERMINATES IO OPERATION ON A FILE BUCM0352
* BUCM0353
* TSX BCLOSE,4 BUCM0354
* EFA PTR,T BUCM0355
* PAR MEMORY,,BUFFER BUCM0356
* PAR ERROR,,QWAIT BUCM0357
* PAR PVIOL BUCM0358
* BUCM0359
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0360
* BUCM0361
00177 BCLOSE SYN * BUCM0362
00177 0074 00 5 02406 TSX SAV,5 SAVE REGISTERS BUCM0363
00200 0055 00 000200 SIR CLOS SETS SWITCH BUCM0364
00201 0774 00 5 00004 BF AXT CLOCS,5 BUCM0365
00202 0074 00 4 02100 TSX PICK,4 PICK UP ARGUMENTS BUCM0366
00203 LXA ARG+2,4 BUCM0367
00204 SXA ERROR,4 SET ERROR RETURN BUCM0368
00205 LXA ARG+3,4 BUCM0369
00206 SXA PVIOL,4 SET VIOLATION RETURN BUCM0370
00207 0074 00 4 01314 TSX CHKERR,4 CHECK ERROR OCCURRED BUCM0371
00210 0074 00 4 01767 TSX LOCAL,4 SETS SWITCHES BUCM0372
00211 SAVB WRITE BUFFER IF NEEDED BUCM0373
00211 0074 00 4 01511 TSX SAVBUF,4 BUCM0373.001
00212 0074 00 4 01314 TSX CHKERR,4 MAKE SURE ALL I/O THROUGH BUCM0374
00213 0056 00 000200 RNT CLOS WAS 'BCLOSE' CALLED BUCM0375
00214 0020 00 0 02425 TRA RETURN .. IF NOT, RETURN BUCM0376
* BUCM0377
* CLOSE STRATEGY MODULE BUCM0378
00215 0074 00 4 02362 TSX CLOSE,4 BUCM0379
00216 0020 00 0 02425 TRA RETURN BUCM0380
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 11
BOPEN - INITIALIZES ACTIVE FILE STATUS TABLE
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0382
* BUCM0383
* BUFFER CONTROL MODULE BUCM0384
* NOVEMBER 64 LOUIS POUZIN BUCM0385
* BUCM0386
* TSX BOPEN,4 OPENS A FILE BUCM0387
* EFA PTR,T INITIALIZES FILE STATUS TABLE BUCM0388
* PAR PRIOR,,ERROR READING FROM BEGINNING BUCM0389
* WRITING AFTER THE END BUCM0390
* CLEARS BUFFER ASSIGNMENT BUCM0391
* AND CALLS STRATEGY MODULE BUCM0392
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0393
00217 BOPEN SYN * BUCM0395
00217 0074 00 5 02406 TSX SAV,5 BUCM0396
00220 0774 00 5 00002 AXT OPCS,5 BUCM0397
00221 0074 00 4 02100 TSX PICK,4 GET ARGUMENTS BUCM0398
00222 LXD ARG+1,5 BUCM0399
00223 SXA ERROR,5 SET ERROR RETURN BUCM0400
* INITIALIZES ACTIVE FILES STATUS TABLE BUCM0401
00224 -0500 00 0 02467 CAL =O1000001 BUCM0402
00225 0621 00 1 00016 STA REDREC,1 READ POINTERS BUCM0403
00226 0622 00 1 00016 STD REDWRD,1 .. BUCM0404
00227 0600 00 1 00020 STZ CHNG,1 CLEAR BUFFER STATUS SWITCH BUCM0405
00230 0600 00 1 00021 STZ WINDEX,1 POINTERS BUCM0406
00231 0600 00 1 00022 STZ DR,1 BUCM0407
00232 -0500 60 0 00041 CAL* ARG+1 GET PRIORITY CODE BUCM0408
00233 0767 00 0 00041 ALS 33 SET IN PFX BUCM0409
00234 0630 00 1 00023 STP PRIOR,1 SET PRIORITY BUCM0410
00235 0074 00 4 02344 TSX OPEN,4 BUCM0411
00236 -0500 00 0 00034 CAL PTH VERY LARGE VALUE BUCM0412
00237 0602 00 0 00105 SLW RELADR FOR RELATIVE ADDRESS BUCM0413
00240 0055 00 400000 SIR WRIT WRITING SWITCH BUCM0414
00241 0020 00 0 00404 TRA BU GO SET WRITING POINTERS AND RETURN BUCM0415
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 12
BSAVE - REWRITES BUFFER INTO FILE
BUCM0417
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0418
* BUCM0419
* BSAVE REWRITES PENDING BUFFER ONTO FILE BUCM0420
* BUCM0421
* TSX BSAVE,4 BUCM0422
* EFA PTR,T BUCM0423
* PAR MEMORY,,BUFFER BUCM0424
* PAR ERROR,,QWAIT BUCM0425
* PAR PVIOL BUCM0426
* BUCM0427
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0428
* BUCM0429
00242 BSAVE SYN * BUCM0430
00242 0074 00 5 02406 TSX SAV,5 SAVE REGISTERS BUCM0431
00243 0020 00 0 00201 TRA BF SAME AS BCLOSE BUCM0432
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 13
BTRUNC - TRUNCATING FILE BEFORE SPECIFIED ADDRESS
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0434
* BTRUNC TO TRUNCATE A FILE BEFORE A SPECIFIED ADDRESS BUCM0435
* BUCM0436
* TSX BTRUNC,4 BUCM0437
* EFA PTR,T BUCM0438
* PAR MEMORY,,BUFFER BUCM0439
* PAR RELADR,,EOFRTN RELADR = 0 (OR 1) EMPTIES THE FILE BUCM0440
* PAR ERROR,,QWAIT BUCM0441
* PAR PVIOL,,NIDBUF BUCM0442
* BUCM0443
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0444
* BUCM0445
00244 BTRUNC SYN * BUCM0446
00244 0074 00 5 02406 TSX SAV,5 SAVE REGISTERS BUCM0447
00245 0774 00 5 00005 AXT TRCS,5 BUCM0448
00246 0074 00 4 02100 TSX PICK,4 PICKUP ARGUMENTS BUCM0449
00247 -0500 00 0 00044 CAL ARG+4 BUCM0450
00250 0621 00 0 02442 STA PVIOL SET VIOLATION RETURN BUCM0451
00251 -0500 00 0 00043 CAL ARG+3 BUCM0452
00252 0621 00 0 02454 STA ERROR SET ERROR RETURN BUCM0453
00253 0074 00 4 01314 TSX CHKERR,4 CHECKING OF PREVIOUS OPERATION BUCM0454
00254 0074 00 4 01336 TSX CHKOFF,4 IS ADDRESS GIVEN IN FILE BUCM0455
00255 3 00000 0 02432 PAR EOFRTN NO TRUNCATION BUCM0456
00256 -0500 00 0 00105 CAL RELADR BUCM0457
00257 0100 00 0 00264 TZE CQ SKIP IF ZERO IS SPECIFIED BUCM0458
00260 -0400 00 0 02461 SBM =1 LAST WORD IN TRUNCATED FILE BUCM0459
00261 0602 00 0 00105 SLW RELADR BUCM0460
00262 0602 00 0 00101 SLW NDBLOC SET FOR LOCAL S/R BUCM0461
00263 0020 00 0 00266 TRA CR BUCM0462
00264 0774 00 4 00001 CQ AXT 1,4 BUCM0463
00265 SXA NEXCUR,4 SET TO 1 (WAS 0) BUCM0464
00266 CR SYN * BUCM0465
00266 0074 00 4 01767 TSX LOCAL,4 CHECKS FOR LOCATION SURROUNDINGS BUCM0466
00267 LXD RELADR+1,3 RECORD NUMBER WHERE TRUNCATION OCCURS BUCM0467
00270 0056 00 000004 RNT BBUF IF TRUNCATION OCCURS IN THE BUFFER BUCM0468
00271 0020 00 0 00275 TRA BS ELSE REFILL BUFFER BUCM0469
00272 0054 00 100002 RFT PRIM+BAIL AND BUFFER PRIMED OR LAST BUCM0470
PENDING RECORD IN BUFFER BUCM0471
00273 0020 00 0 00310 TRA BL GO TRUNCATE BUCM0472
00274 0020 00 0 00304 TRA BT ELSE GO PRIME BUCM0473
* BUCM0474
* READS TRUNCATED RECORD IN BUFFER BUCM0475
00275 BS SYN * BUCM0476
00275 -0500 00 1 00020 CAL BUFREC,1 BUCM0477
00276 0622 00 0 00300 STD *+2 BUCM0478
00277 0056 00 000002 RNT BAIL FORCES WRITING OF LAST RECORD BUCM0479
00300 -3 00000 3 00302 TXL *+2,3,** SKIP IF TRUNCATION BEFORE RECORD IN BUFFER BUCM0480
00301 SAVB SAVE BUFFER IF BEFORE TRUNCATION BUCM0481
00301 0074 00 4 01511 TSX SAVBUF,4 BUCM0481.001
00302 SXD WINDEX,1,8 CLEARS BUFFER BUCM0482
00304 BT SYN * BUCM0483
00304 -3 00000 3 00310 TXL BL,3,0 SKIP IF DELETES THE WHOLE FILE BUCM0484
00305 SXA LABEL,3 SETS RECORD NUMBER BUCM0485
00306 0074 00 4 01533 TSX PRBUF,4 PRIMES BUFFER BUCM0486
00307 0055 00 200000 SIR WFB SET I/O FLAG BUCM0487
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 14
BTRUNC - TRUNCATING FILE BEFORE SPECIFIED ADDRESS
* BUCM0488
* TRUNCATES THE PRESENT BUFFER BUCM0489
00310 BL SYN * BUCM0490
00310 LXD NORECS,1,6 BUCM0491
00312 SXD LABEL,6 SET OLD NORECS BUCM0492
00313 SXD *+1,3 SAVE FOR MATCHING WITH PRESENT LAST RECORD BUCM0493
00314 -3 00000 6 00321 TXL CP,6,** SKIP IF NORECS DOESN'T CHANGE BUCM0494
00315 0054 00 200000 RFT WFB IF I/O STARTED AT ALL BUCM0495
00316 0020 00 0 02437 TRA QWAIT WAIT BECAUSE DLETE CAN'T STAND IT BUCM0496
00317 0502 00 0 02461 CLS =1 -1 FOR DELETE QUEUE BUCM0497
00320 0074 00 4 02301 TSX QUEUE,4 CHECK FOR ROOM IN DELETE QUEUE BUCM0498
00321 CP SYN * BUCM0499
00321 3 00000 3 00327 TXH CH,3,0 GO AHEAD FOR WHOLE FILE DELETED BUCM0500
00322 -0754 00 0 00000 ZAC DISCARD BUFFER CONTENTS BUCM0501
00323 0622 00 1 00020 STD BUFREC,1 BUCM0502
00324 0630 00 1 00020 STP PRIME,1 BUCM0503
00325 0622 00 1 00021 STD WINDEX,1 BUCM0504
00326 0020 00 0 00336 TRA BC BUCM0505
00327 CH LXA RELADR+1,2 LAST WORD INDEX AFTER TRUNCATION BUCM0506
00330 SXD WINDEX,1,2 SET WINDEX TO NEW LAST COUNT BUCM0507
00332 -0500 00 0 00035 CAL PTW CHNG FLAG BUCM0508
00333 0056 00 000002 RNT BAIL BUCM0509
00334 -0501 00 0 00033 ORA PON PRIME FLAG EXCEPT IF RECORD NOT WRITTEN BUCM0510
00335 -0602 00 1 00020 ORS PRIME,1 SET IN TABLE BUCM0511
00336 BC SYN * BUCM0512
00336 -0500 00 1 00016 CAL REDREC,1 READING POINTERS BUCM0513
00337 0074 00 5 01453 TSX TOFF,5 CHECK THEY KEEP INTO THE FILE BUCM0514
00340 0074 00 4 01500 TSX KUR,4 NO. SET BACK BUCM0515
00341 0055 00 400000 SIR WRIT NOW SEE WRITING POINTERS BUCM0516
00342 -0500 00 1 00017 CAL WRTREC,1 BUCM0517
00343 0074 00 5 01453 TSX TOFF,5 BUCM0518
00344 0074 00 4 01500 TSX KUR,4 BUCM0519
00345 0074 00 4 01424 TSX LEN,4 UPDATES FILE LENGTH BUCM0520
00346 0560 00 0 00110 LDQ REQCT REQUEST COUNT FOR QTEST BUCM0521
00347 0162 00 0 02425 TQP RETURN SKIP IF NO DELETE REQUEST BUCM0522
00350 1 00001 3 00351 TXI *+1,3,1 1ST RECORD NO. TO DELETE BUCM0523
00351 SXA LABEL,3 BUCM0524
00352 0074 00 4 02353 TSX DFILE,4 BUCM0525
00353 0020 00 0 02425 TRA RETURN BUCM0526
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 15
BREAD - BWRITE - CHECKING OF CALLING CONDITIONS
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0528
* NOVEMBER 64 LOUIS POUZIN BUCM0529
* BREAD/BWRITE - BUFFER CONTROL MODULE BUCM0530
* CALLING SEQUENCE BUCM0531
* TSX BREAD,4 OR BWRITE BUCM0532
* EFA PTR,T POINTER TO FILE INVOLVED BUCM0533
* PAR MEMORY,,BUFFER FLAGS AS TO WHICH BANK IS CONCERNED BUCM0534
* PAR RELADR,,EOFRTN BUCM0535
* C(RELADR)IS THE WORD RELATIVE ADDRESS IN THE FILE BUCM0536
* EOFRTN IS ADDRESS WHERE TO GO ON END OF FILE OCCURENCE BUCM0537
* PAR Y,,QWAIT C(Y) IS, PZE LOC,,NWORDS BUCM0538
* LOC IS THE ADDRESS WHERE READ/WRITE STARTS BUCM0539
* NWORDS IS THE WORD COUNT FOR THAT REQUEST BUCM0540
* PAR ERROR,,PVIOL BUCM0541
* ERROR IS ADDRESS WHERE TO GO ON I/O ERROR BUCM0542
* PVIOL IS WHERE TO GO ON PROTECTION VIOLATION BUCM0543
* PAR NIDBUF RETURN IF BUFFER NEEDED AND NONE ASSIGNED BUCM0544
* BUCM0545
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM0546
* BUCM0547
BUCM0548
BUCM0549
00354 BWRITE SYN * BUCM0550
00354 0074 00 5 02406 TSX SAV,5 BUCM0551
00355 0055 00 400000 SIR WRIT SETS SWITCH BUCM0552
00356 0020 00 0 00360 TRA A BUCM0553
00357 BREAD SYN * BUCM0554
00357 0074 00 5 02406 TSX SAV,5 BUCM0555
00360 A SYN * BUCM0556
BUCM0557
* GETS ARGUMENTS FROM CALLING PROGRAM BUCM0558
BUCM0559
00360 0774 00 5 00006 AXT BRICS,5 BUCM0560
00361 0074 00 4 02100 TSX PICK,4 BUCM0561
00362 -0500 00 0 00044 CAL ARG+4 BUCM0562
00363 0621 00 0 02454 STA ERROR SET ERROR RETURN BUCM0563
00364 -0734 00 5 00000 PDX ,5 BUCM0564
00365 SXA PVIOL,5 SET VIOLATION RETURN BUCM0565
BUCM0566
* CHECKS THE HAPPENINGS OF THE PREVIOUS IO REQUESTS BUCM0567
00366 0074 00 4 01314 TSX CHKERR,4 CHECK PREVIOUS OPERATION BUCM0568
00367 -0500 00 0 00105 CAL RELADR BUCM0569
00370 -0100 00 0 00401 TNZ FF IF RELAT ADDRESS IS ZERO BUCM0570
00371 -0500 00 1 00017 CAL WRTREC,1 USE CURRENT POINTERS BUCM0571
00372 0056 00 400000 RNT WRIT ACCORDING TO TYPE OF CALL BUCM0572
00373 -0500 00 1 00016 CAL REDREC,1 BUCM0573
00374 0734 00 6 00000 PAX ,6 WORD POINTER BUCM0574
00375 -0734 00 7 00000 PDX ,7 RECORD POINTER BUCM0575
00376 0074 00 4 01735 TSX LINCOR,4 BUCM0576
00377 -3 00037 6 00037 SVN Z,6,Z RELATIVE ADDRESS FOR THE CALL BUCM0577
00400 0602 00 0 00105 SLW RELADR SAVE RELATIVE ADDRESS BUCM0578
00401 FF SYN * BUCM0579
00401 LAC ARG+3,7 BUCM0580
00402 -0500 00 7 00000 CAL ,7 PZE LOC,,NWORDS BUCM0581
00403 0602 00 0 00046 SLW BLOC BUCM0582
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 16
BREAD - BWRITE - CHECKING OF CALLING CONDITIONS
00404 0074 00 4 01336 BU TSX CHKOFF,4 CHECK IF BLOC IS IN FILE BUCM0583
00405 3 00000 0 01443 PAR OFF BUCM0584
00406 0074 00 4 01767 TSX LOCAL,4 CHECK FOR LOCAL CONDITIONS BUCM0585
00407 -0520 00 0 00046 NZT BLOC TEST IF ZERO WORD COUNT BUCM0586
00410 0020 00 0 01476 TRA NULL BUCM0587
00411 0074 00 4 02235 TSX SPLIT,4 CONVERTS CALL INTO PIECES BUCM0588
BUCM0589
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 17
BREAD - BWRITE - CHECKS WHETHER BUFFER IS TO BE USED
* CALL HAS BEEN ACCEPTED AND POSSIBLY ADJUSTED BUCM0591
* BUFFER ASSIGNMENT PROCESS MAY BEGIN BUCM0592
* PROCESS CALL AND CONVERTS INTO STRATEGY CALLS BUCM0593
* BUCM0594
* CHECKS IF BUFFER HAS TO BE USED BUCM0595
* BUCM0596
00412 TBUF CHECKS FOR BUFFER ASSIGNED BUCM0597
00412 0074 00 4 01437 TSX TBUF,4 BUCM0597.001
00413 0020 00 0 00415 TRA *+2 NO. SEE WHAT WE CAN DO BUCM0598
00414 0020 00 0 00475 TRA BH YES, USE IT BUCM0599
00415 0056 00 400000 RNT WRIT IF WRITING BUCM0600
00416 0020 00 0 00431 TRA CA BUCM0601
00417 0056 00 000020 RNT BREC FROM THE BEGINNING OF A RECORD BUCM0602
00420 0020 00 0 02445 TRA NIDBUF ELSE ERROR BUCM0603
00421 -0500 00 0 00105 CAL RELADR BUCM0604
00422 0402 00 0 02461 SUB =1 BUCM0605
00423 0054 00 000001 RFT APND AND NO APPENDING BUCM0606
00424 0020 00 0 00430 TRA AB BUCM0607
00425 0054 00 042000 RFT EREC+NDFIL THRU END RECORD OR END FILE EITHER BUCM0608
00426 0020 00 0 00431 TRA CA THEN NO BUFFER REQUIRED BUCM0609
00427 0020 00 0 02445 TRA NIDBUF ELSE ERROR BUCM0610
00430 -0100 00 0 02445 AB TNZ NIDBUF BUCM0611
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 18
BREAD - BWRITE - NO BUFFER USED
00431 CA SYN * NO BUFFER REQUIRED NOR ASSIGNED BUCM0613
00431 -0500 00 0 02461 CAL =1 BUCM0614
00432 0074 00 4 02301 TSX QUEUE,4 BUCM0615
* BUCM0616
* READS DIRECTLY INTO USER'S AREA. NO BUFFER USED BUCM0617
* BUCM0618
00433 -0500 00 0 00106 CAL RELADR+1 RELATIVE ADDRESS IN FILE BUCM0619
00434 -0400 00 0 02461 SBM =1 WORD COUNT TO SKIP BUCM0620
00435 -0130 00 0 00000 XCL BUCM0621
00436 -0763 00 0 00022 LGL 18 BUCM0622
00437 -0600 00 0 00107 STQ REQ SKIP COUNT IN DECREM. BUCM0623
00440 0621 00 0 00077 STA LABEL RECORD NR. IN ADDRESS BUCM0624
00441 0074 00 4 01406 TSX SLAST,4 SETS LCOUNT IF NEEDED BUCM0625
00442 -0500 00 0 00107 CAL REQ SKIP REQUEST BUCM0626
00443 0100 00 0 00446 TZE C SKIP IF NO READ AND SKIP BUCM0627
00444 -0501 00 0 00033 ORA PON NON TRANSMIT PREFIX BUCM0628
00445 0074 00 4 02370 TSX READL,4 BUCM0629
00446 C SYN * BUCM0630
00446 -0500 00 0 00046 CAL BLOC LOC,,COUNT BUCM0631
00447 -0501 00 0 00032 ORA MEMRY SET MEMORY FLAG BUCM0632
00450 0054 00 400000 RFT WRIT BUCM0633
00451 0020 00 0 00455 TRA BJ GO WRITE BUCM0634
00452 0074 00 4 02370 TSX READL,4 BUCM0635
00453 0074 00 4 02322 TSX READ,4 BUCM0636
00454 0020 00 0 01476 TRA NULL GO UPDATE POINTERS BUCM0637
* BUCM0638
* REWRITES DIRECTLY FROM USER'S AREA BUCM0639
* BUCM0640
00455 BJ SYN * BUCM0641
00455 0054 00 000001 RFT APND IF NO APPENDING BUCM0642
00456 0020 00 0 00470 TRA X ELSE GO AND WRITE BUCM0643
00457 0074 00 4 02374 TSX REWRTL,4 BUCM0644
00460 0074 00 4 02333 TSX REWRT,4 REWRITE INTEGRAL NUMBER OF RECORDS BUCM0645
00461 0056 00 000040 RNT BUFIN IF RECORD IN BUFFER WAS INVOLVED BUCM0646
00462 0020 00 0 01476 TRA NULL ELSE GO UPDATE POINTERS BUCM0647
00463 -0754 00 0 00000 ZAC THEN DISCARD BUFFER CONTENTS BUCM0648
00464 0630 00 1 00020 STP PRIME,1 BUCM0649
00465 0622 00 1 00020 STD BUFREC,1 BUCM0650
00466 0622 00 1 00021 STD WINDEX,1 BUCM0651
00467 0020 00 0 01476 TRA NULL GO UPDATE POINTERS BUCM0652
* BUCM0653
* WRITES NEW RECORD(S) DIRECTLY FROM USER'S AREA BUCM0654
* BUCM0655
00470 X SYN * BUCM0656
00470 LXA NDBLOC+1,4 NEW LCOUNT BUCM0657
00471 SXD LABEL,4 SET IN LABEL BUCM0658
00472 0074 00 4 02372 TSX WRITL,4 WRITE FOR APPENDING BUCM0659
00473 0074 00 4 02311 TSX WRITE,4 BUCM0660
00474 0020 00 0 01474 TRA UPFIL GO UPDATE POINTERS BUCM0661
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 19
BREAD - BWRITE - REWRITING MULTIPLE RECORDS
* BUCM0663
00475 BH SYN * BUCM0664
00475 0056 00 020000 RNT MREC IF SEVERAL RECORDS BUCM0665
00476 0020 00 0 01132 TRA L ELSE GO PROCESS SINGLE RECORD BUCM0666
* PROCESS CALL INVOLVING SEVERAL RECORDS BUCM0667
00477 0056 00 400000 RNT WRIT IF WRITING BUCM0668
00500 0020 00 0 00766 TRA M ELSE GO TO READ SEVERAL RECORDS BUCM0669
* HERE PROCESS WRITING OF SEVERAL RECORDS BUCM0670
00501 0054 00 000001 RFT APND IF APPENDING BUCM0671
00502 0020 00 0 00636 TRA AS GO APPEND BUCM0672
00503 0056 00 010000 RNT LAST IF NOT LAST RECORD BUCM0673
00504 0056 00 002020 RNT BREC+EREC AND INTEGRAL RECORDS BUCM0674
00505 0020 00 0 00507 TRA *+2 BUCM0675
00506 0020 00 0 00431 TRA CA NO BUFFER USED BUCM0676
00507 0056 00 000040 RNT BUFIN IF BUFFER NOT INVOLVED BUCM0677
00510 0020 00 0 00515 TRA Y GO SAVE IT BUCM0678
00511 0056 00 000004 RNT BBUF BUCM0679
00512 0056 00 000400 RNT EBUF BUCM0680
00513 0020 00 0 00516 TRA CJ BUCM0681
00514 0056 00 000020 RNT BREC BUCM0682
00515 Y SAVB SAVE BUFFER CONTENTS BUCM0683
00515 0074 00 4 01511 TSX SAVBUF,4 BUCM0683.001
00516 CJ SYN * BUCM0684
00516 0054 00 200000 RFT WFB IF I/O STARTED BUCM0685
00517 0054 00 000020 RFT BREC AND IF DOESN'T BEGIN A RECORD BUCM0686
00520 0020 00 0 00522 TRA *+2 BUCM0687
00521 0020 00 0 02437 TRA QWAIT THEN BETTER WAIT FOR BUFFER FREE BUCM0688
* BUCM0689
* WRITES SEVERAL RECORDS INTO FILE BUCM0690
00522 LXD RELADR+1,4 REC. NO. OF BEGINNING BUCM0691
00523 SXA LABEL,4 SET INTO LABEL BUCM0692
T 00524 -0634 00 0 00077 ZSD LABEL CLEAR ANY LCOUNT BUCM0693
00525 0056 00 000020 RNT BREC IF BEGINS A RECORD BUCM0694
00526 0056 00 000004 RNT BBUF OR IF DOESN'T BEGIN IN THE BUFFER BUCM0695
00527 0020 00 0 00534 TRA BX GO READ THE APPROPRIATE RECORD BUCM0696
00530 0054 00 100000 RFT PRIM ELSE, IF BUFFER PRIMED BUCM0697
00531 0020 00 0 00542 TRA BY THEN USE IT BUCM0698
00532 0074 00 4 01533 TSX PRBUF,4 ELSE PRIME IT BUCM0699
00533 0020 00 0 02437 TRA QWAIT RETURN TO QWAIT BUCM0700
* BUCM0701
00534 BX SYN * BUCM0702
00534 -0500 00 0 02461 CAL =1 1 REQUEST IF STARTS RECORD BUCM0703
00535 0056 00 000020 RNT BREC BUCM0704
00536 -0500 00 0 02462 CAL =2 ELSE 2 REQUESTS FOR PREVIOUS READING BUCM0705
00537 0074 00 4 02301 TSX QUEUE,4 BUCM0706
00540 0054 00 000020 RFT BREC BUCM0707
00541 0020 00 0 00607 TRA AF STARTS A RECORD. NO READING NECESSARY BUCM0708
* BUCM0709
00542 BY SYN * BUCM0710
00542 LXA BUFADR,1,4 BUCM0711
00544 SXA REQ,4 READS INTO BUFFER BUCM0712
00545 LAC RELADR+1,2 WORD INDEX OF BEGINNING BUCM0713
00546 1 00001 2 00547 TXI *+1,2,1 INDEX FOR RELADR-1 BUCM0714
00547 SCD REQ,2 FOR SKIP REQUEST BUCM0715
00550 MOVE TB,CHK1,(REQ,2),CHKL1 MOVE 1ST CHUNK INTO BUFFER BUCM0716
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 20
BREAD - BWRITE - REWRITING MULTIPLE RECORDS
00550 LXA CHK1,7 BUCM0716.002
00551 SXA ..057,7 BUCM0716.002
F 00000 ..058 SET ..061 BUCM0716.002
00552 LXA REQ,7 BUCM0716.002
00553 SXA ..057+1,7 BUCM0716.002
00554 LXA CHKL1,7 BUCM0716.002
00555 SXA ..057+2,7 BUCM0716.002
F 00000 ..060 SET ..066 BUCM0716.002
00556 0604 00 0 00111 STI SW BUCM0716.001
00557 0074 00 4 00000 TSX MOVE,4 BUCM0716.001
00560 3 00047 0 00100 PAR MEMORY,,BUFFER BUCM0716.001
00561 0761 00 0 00000 ..057 EFA **,..058 BUCM0716.001
00562 0761 00 2 00000 EFA **,..059 BUCM0716.001
00563 0761 00 0 00000 EFA **,..060 BUCM0716.001
00564 3 00000 0 02442 PAR PVIOL BUCM0716.001
00565 0441 00 0 00111 LDI SW BUCM0716.001
00566 0054 00 000004 RFT BBUF IF BEGINS IN THE BUFFER BUCM0717
00567 0020 00 0 00574 TRA BZ SKIP READING BUCM0718
00570 -0500 00 0 00107 CAL REQ BUCM0719
00571 -0501 00 0 00030 ORA BUFR BUCM0720
00572 0074 00 4 02370 TSX READL,4 BUCM0721
00573 0074 00 4 02322 TSX READ,4 BUCM0722
* BUCM0723
* SET FILE TABLE BUCM0724
00574 BZ SYN * BUCM0725
00574 -0500 00 1 00013 CAL RCOUNT,1 BUCM0726
00575 0767 00 0 00022 ALS 18 BUCM0727
00576 0622 00 1 00021 STD WINDEX,1 BUFFER CONTAINS A WHOLE RECORD BUCM0728
00577 -0500 00 0 00034 CAL PTH BUCM0729
00600 -0602 00 1 00020 ORS PRIME,1 PRIME + CHNG FLAG BUCM0730
00601 LXA LABEL,4 BUCM0731
00602 SXD BUFREC,1,4 RECNO. IN BUFFER BUCM0732
* BUCM0733
* REWRITE FILE FROM BUFFER AND USER'S AREA BUCM0734
* BUCM0735
* REWRITE BUFFER REQUEST BUCM0736
00604 0055 00 004000 SIR IOF NO ACTION WANTED, ONLY REQUEST IN LIST. BUCM0737
00605 0057 00 000010 RIR BLAST INSURE CURRENT RECORD WRITING BUCM0738
00606 0074 00 4 01610 TSX RWBUF,4 REWRITE BUFFER REQUEST BUCM0739
* BUCM0740
* REWRITE FROM USER'S AREA BUCM0741
00607 AF SYN * BUCM0742
00607 0056 00 012000 RNT EREC+LAST IF ENDS UP THE LAST RECORD BUCM0743
00610 0020 00 0 00614 TRA CV BUCM0744
00611 -0500 00 1 00013 CAL RCOUNT,1 BUCM0745
00612 0621 00 0 00055 STA CHKL3 LAST RECORD FILLS UP BUFFER BUCM0746
00613 0074 00 4 02235 TSX SPLIT,4 ADJUST SPLITTING BUCM0747
00614 CV SYN * BUCM0748
00614 LXA CHKL2,2 LENGTH FOR 2ND CHUNK BUCM0749
00615 -3 00000 2 00624 TXL AG,2,0 SKIP IF NULL BUCM0750
00616 SXD REQ,2 BUCM0751
00617 LXA CHK2,5 ADDRESS FOR DIRECT WRITING BUCM0752
00620 SXA REQ,5 SET IN REQUEST BUCM0753
00621 -0500 00 0 00107 CAL REQ BUCM0754
00622 -0501 00 0 00032 ORA MEMRY BUCM0755
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 21
BREAD - BWRITE - REWRITING MULTIPLE RECORDS
00623 0074 00 4 02374 TSX REWRTL,4 BUCM0756
00624 0074 00 4 02333 AG TSX REWRT,4 BUCM0757
* BUCM0758
* SET DELAYED MOVING BUCM0759
00625 0055 00 000020 SIR BREC JUST TO MAKE DMOVE GO TO UPBUF BUCM0760
00626 AH LXA CHKL3,3 LENGTH FOR LEFTOVER BUCM0761
00627 -0754 00 3 00000 PXD ,3 SET IN AC BUCM0762
00630 -3 00000 3 01474 TXL UPFIL,3,0 IF NO LEFTOVER, GO MOVE POINTERS BUCM0763
00631 0054 00 400000 RFT WRIT IF WRITING BUCM0764
00632 0630 00 1 00020 STP PRIME,1 CLEARS PRIME FLAG BUCM0765
00633 -0501 00 0 00054 ORA CHK3 ADDRESS IN USER MEMORY BUCM0766
00634 -0774 00 2 02461 AXC =1,2 FOR BEGINNING OF BUFFER BUCM0767
00635 0020 00 0 01203 TRA DMOVE GO SET FILE TABLE BUCM0768
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 22
BREAD - BWRITE - APPENDING NEW RECORD(S)
* BUCM0770
* APPENDS NEW RECORD(S) TO AN EXISTING FILE. BUCM0771
* BUCM0772
00636 AS SYN * BUCM0773
00636 0056 00 022000 RNT MREC+EREC IF APPENDING THRU AN END OF RECORD BUCM0774
00637 0020 00 0 00643 TRA CW BUCM0775
00640 -0500 00 1 00013 CAL RCOUNT,1 BUCM0776
00641 0621 00 0 00055 STA CHKL3 LAST RECORD GOES INTO BUFFER BUCM0777
00642 0074 00 4 02235 TSX SPLIT,4 ADJUST SPLITTING BUCM0778
00643 CW SYN * BUCM0779
00643 0056 00 000010 RNT BLAST IF BUFFER DOESN'T CONTAIN LAST RECORD BUCM0780
00644 SAVB THEN SAVE BUFFER BUCM0781
00644 0074 00 4 01511 TSX SAVBUF,4 BUCM0781.001
00645 LXD RELADR+1,5 RECORD NR. BUCM0782
00646 SXA LABEL,5 SET IN LABEL FOR READING BUCM0783
00647 -0754 00 0 00000 ZAC BUCM0784
00650 0054 00 000020 RFT BREC IF DOESN'T BEGIN A RECORD BUCM0785
00651 0020 00 0 00731 TRA AT ELSE WRITES INTO FILE BUCM0786
00652 0056 00 020000 RNT MREC IF SINGLE RECORD BUCM0787
00653 0020 00 0 01144 TRA E GO APPEND INTO BUFFER BUCM0788
00654 0054 00 000002 RFT BAIL IF RECORD NOT YET IN FILE BUCM0789
00655 0020 00 0 00666 TRA AU THEN NO PRIMING BUCM0790
00656 0056 00 000004 RNT BBUF IF DOESN'T BEGIN IN THE BUFFER BUCM0791
00657 0622 00 1 00021 STD WINDEX,1 CLEARS BUFFER CONTENTS BUCM0792
00660 0074 00 4 01533 TSX PRBUF,4 PRIMES BUFFER BUCM0793
00661 0054 00 200000 RFT WFB IF BUFFER INVOLVED IN PRESENT I/O BUCM0794
00662 0020 00 0 02437 TRA QWAIT THEN WAIT FOR BUFFER FREE BUCM0795
00663 0055 00 100000 SIR PRIM BUCM0796
00664 -0500 00 0 02462 CAL =2 BUCM0797
00665 -0520 00 0 00053 NZT CHKL2 SKIP IF AT LEAST ONE FULL RECORD BUCM0798
00666 -0500 00 0 02461 AU CAL =1 ELSE NO WRITING BUCM0799
00667 0074 00 4 02301 TSX QUEUE,4 BUCM0800
* BUCM0801
* MOVES FROM USER'S AREA TO BUFFER BUCM0802
00670 LAC LCOUNT,1,2 WORDS TO SKIP BUCM0803
00672 LXA BUFADR,1,4 BUFFER ADDRESS BUCM0804
00674 MOVE TB,CHK1,(,2),CHKL1 MOVE BEGINNING OF BLOC BUCM0805
00674 LXA CHK1,7 BUCM0805.002
00675 SXA ..077,7 BUCM0805.002
F 00000 ..078 SET ..081 BUCM0805.002
00676 SXA ..077+1,4 BUCM0805.002
00677 LXA CHKL1,7 BUCM0805.002
00700 SXA ..077+2,7 BUCM0805.002
F 00000 ..080 SET ..085 BUCM0805.002
00701 0604 00 0 00111 STI SW BUCM0805.001
00702 0074 00 4 00000 TSX MOVE,4 BUCM0805.001
00703 3 00047 0 00100 PAR MEMORY,,BUFFER BUCM0805.001
00704 0761 00 0 00000 ..077 EFA **,..078 BUCM0805.001
00705 0761 00 2 00000 EFA **,..079 BUCM0805.001
00706 0761 00 0 00000 EFA **,..080 BUCM0805.001
00707 3 00000 0 02442 PAR PVIOL BUCM0805.001
00710 0441 00 0 00111 LDI SW BUCM0805.001
00711 -0500 00 1 00013 CAL RCOUNT,1 WORD COUNT FOR A RECORD BUCM0806
00712 0767 00 0 00022 ALS 18 BUCM0807
00713 0622 00 1 00021 STD WINDEX,1 UPDATES TABLE BUCM0808
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 23
BREAD - BWRITE - APPENDING NEW RECORD(S)
00714 0055 00 000100 SIR CHG FLAG BUFFER CHANGED BUCM0809
* BUCM0810
* REQUEST FOR REWRITING BUFFER BUCM0811
00715 BP SYN * BUCM0812
00715 0056 00 020002 RNT MREC+BAIL IF SEVERAL RECS. AND LAST NOT WRITTEN BUCM0813
00716 0020 00 0 00720 TRA *+2 BUCM0814
00717 0055 00 004000 SIR IOF THEN INHIBIT I/O ACTION NOW BUCM0815
00720 0057 00 000010 RIR BLAST NOT THE LAST RECORD BUCM0816
00721 SAVB REWRITES BUFFER IF NEEDED BUCM0817
00721 0074 00 4 01511 TSX SAVBUF,4 BUCM0817.001
00722 0056 00 020000 RNT MREC IF SINGLE RECORD BUCM0818
00723 0020 00 0 01172 TRA U GO APPEND IN BUFFER BUCM0819
* BUCM0820
* REQUEST FOR WRITING FROM USER'S BUCM0821
00724 -0500 00 0 00077 CAL LABEL BUCM0822
00725 0401 00 0 02461 ADM =1 NEXT RECORD NR. BUCM0823
00726 0056 00 000002 RNT BAIL SKIP IF LAST RECORD NOT YET WRITTEN BUCM0824
00727 0621 00 0 00077 STA LABEL BUCM0825
00730 0020 00 0 00754 TRA AV BUCM0826
* BUCM0827
00731 AT SYN * BUCM0828
00731 0054 00 000002 RFT BAIL IF PREVIOUS RECORD NOT YET IN FILE BUCM0829
00732 0020 00 0 00715 TRA BP GO WRITE IT BUCM0830
00733 LXA LABEL,3 RECORD NO. BUCM0831
00734 -2 00001 3 00750 TNX AW,3,1 SKIP IF 1ST RECORD BUCM0832
00735 SXA LABEL,3 BUCM0833
00736 0056 00 000010 RNT BLAST IF BUFFER DOESN'T CONTAIN THE LAST RECORD BUCM0834
00737 0622 00 1 00021 STD WINDEX,1 CLEARS BUFFER CONTENTS BUCM0835
00740 0074 00 4 01533 TSX PRBUF,4 READ PREVIOUS RECORD BUCM0836
00741 0057 00 000010 RIR BLAST AND REWRITE AS CURRENT RECORD BUCM0837
00742 -0500 00 0 02462 CAL =2 BUCM0838
00743 0054 00 020000 RFT MREC BUCM0839
00744 0074 00 4 02301 TSX QUEUE,4 BUCM0840
00745 0074 00 4 01610 TSX RWBUF,4 BUCM0841
00746 1 00001 3 00747 TXI *+1,3,1 RESTORES RECORD NR. BUCM0842
00747 SXA LABEL,3 BUCM0843
00750 AW SYN * BUCM0844
00750 -0500 00 0 02461 CAL =1 BUCM0845
00751 0056 00 020000 RNT MREC IF SINGLE RECORD BUCM0846
00752 0020 00 0 01172 TRA U GO APPEND INTO BUFFER BUCM0847
00753 0074 00 4 02301 TSX QUEUE,4 BUCM0848
00754 AV SYN * BUCM0849
00754 -0500 00 0 00053 CAL CHKL2 LENGTH OF INTEGRAL NUMBER OF RECORDS BUCM0850
00755 0100 00 0 00763 TZE BG SKIP IF NOTHING TO WRITE BUCM0851
00756 0767 00 0 00022 ALS 18 BUCM0852
00757 -0501 00 0 00052 ORA CHK2 ADDRESS IN USER'S MEMORY BUCM0853
00760 -0501 00 0 00032 ORA MEMRY BUCM0854
00761 0074 00 4 02372 TSX WRITL,4 SET IO LIST BUCM0855
T 00762 -0634 00 0 00077 ZSD LABEL ERASE, NOT LAST RECORD BUCM0856
00763 BG SYN * BUCM0857
00763 0520 00 0 00072 ZET IOWR IF ANY WRITING REQUEST BUCM0858
00764 0074 00 4 02311 TSX WRITE,4 STARTS WRITING BUCM0859
00765 0020 00 0 00626 TRA AH GO UPDATE FILE TABLE BUCM0860
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 24
BREAD - BWRITE - READING MULTIPLE RECORDS
* BUCM0862
* READS SEVERAL RECORDS FROM FILE BUCM0863
00766 M SYN * BUCM0864
00766 0054 00 000004 RFT BBUF IF CURRENT BUFFER NOT TO BE USED BUCM0865
00767 0020 00 0 00776 TRA CX BUCM0866
00770 0056 00 002000 RNT EREC IF ENDS UP A RECORD BUCM0867
00771 0020 00 0 00775 TRA CT BUCM0868
00772 0054 00 000040 RFT BUFIN IF BUFFER INVOLVED BUCM0869
00773 SAVB SAVE IT BUCM0870
00773 0074 00 4 01511 TSX SAVBUF,4 BUCM0870.001
00774 0020 00 0 00431 TRA CA THEN USE NO BUFFER BUCM0871
00775 CT SAVB THEN SAVE BUFFER BUCM0872
00775 0074 00 4 01511 TSX SAVBUF,4 BUCM0872.001
00776 CX SYN * BUCM0873
00776 -0500 00 0 02461 CAL =1 BUCM0874
00777 0074 00 4 02301 TSX QUEUE,4 BUCM0875
01000 LXD RELADR+1,3 BUCM0876
01001 SXA LABEL,3 SET RECORD NUMBER ON BEGINNING BUCM0877
01002 0074 00 4 01406 TSX SLAST,4 SET LCOUNT IN LABEL BUCM0878
01003 0054 00 000004 RFT BBUF IF CALL STARTS IN THE BUFFER BUCM0879
01004 0020 00 0 01044 TRA CK GO AND USE THE CURRENT BUFFER BUCM0880
* BUCM0881
* READS SEVERAL RECORDS. LAST ONE READ IN BUFFER. DELAYED MOVING TO USERBUCM0882
* BUCM0883
01005 0054 00 000020 RFT BREC IF DOES NOT BEGIN A RECORD BUCM0884
01006 0020 00 0 01014 TRA AK STARTS READING BUCM0885
01007 LXA RELADR+1,4 WORD INDEX OF BEGINNING BUCM0886
01010 1 77777 4 01011 TXI *+1,4,-1 SKIP WORD COUNT BUCM0887
01011 -0754 00 4 00000 PXD ,4 BUCM0888
01012 -0501 00 0 00033 ORA PON BUCM0889
01013 0074 00 4 02370 TSX READL,4 SET IN IO LIST BUCM0890
01014 AK SYN * BUCM0891
01014 -0500 00 0 00051 CAL CHKL1 BUCM0892
01015 0401 00 0 00053 ADM CHKL2 PARTIAL LENGTH INCLUDING LAST COMPLETE REC.BUCM0893
01016 0767 00 0 00022 ALS 18 BUCM0894
01017 -0501 00 0 00050 ORA CHK1 ADDRESS IN USER'S MEMORY BUCM0895
01020 -0501 00 0 00032 CL ORA MEMRY MEMORY FLAG BUCM0896
01021 0074 00 4 02370 TSX READL,4 SET REQUEST IN IO LIST BUCM0897
* BUCM0898
01022 -0500 00 1 00020 CN CAL BUFADR,1 BUCM0899
01023 0621 00 0 00107 STA REQ BUFFER ADDRESS BUCM0900
01024 -0500 00 1 00013 CAL RCOUNT,1 BUCM0901
01025 0054 00 010000 RFT LAST BUCM0902
01026 -0500 00 1 00014 CAL LCOUNT,1 BUCM0903
01027 0734 00 4 00000 PAX ,4 BUCM0904
01030 SXD REQ,4 SET WORD COUNT TO READ BUCM0905
01031 -0500 00 0 00107 CAL REQ BUCM0906
01032 -0501 00 0 00030 ORA BUFR BUFFER FLAG BUCM0907
01033 0074 00 4 02370 TSX READL,4 SET READING BUFFER REQUEST BUCM0908
* BUCM0909
01034 0074 00 4 02322 TSX READ,4 BUCM0910
* BUCM0911
* UPDATES FILE TABLE BUCM0912
01035 -0500 00 0 00102 CAL NDBLOC+1 BUCM0913
01036 0622 00 1 00020 STD BUFREC,1 SETS NEW RECORD NR. IN BUFFER BUCM0914
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 25
BREAD - BWRITE - READING MULTIPLE RECORDS
01037 -0500 00 0 00033 CAL PON BUCM0915
01040 0630 00 1 00020 STP PRIME,1 PRIME FLAG. ERASE CHNG BUCM0916
01041 -0500 00 0 00107 CAL REQ BUCM0917
01042 0622 00 1 00021 STD WINDEX,1 WORD COUNT IN BUFFER BUCM0918
01043 0020 00 0 00626 TRA AH GO SET DELAYED MOVING BUCM0919
* BUCM0920
* READS SEVERAL RECORDS. BUFFER CONTAINS FIRST RECORD. BUCM0921
* BUCM0922
01044 CK SYN * BUCM0923
01044 0056 00 000020 RNT BREC IF BEGINS THE RECORD BUCM0924
01045 0020 00 0 01051 TRA CU BUCM0925
01046 -0500 00 1 00013 CAL RCOUNT,1 BUCM0926
01047 0621 00 0 00051 STA CHKL1 FIRST RECORD TAKEN FROM BUFFER BUCM0927
01050 0074 00 4 02235 TSX SPLIT,4 ADJUST SPLITTING BUCM0928
01051 CU SYN * BUCM0929
01051 0054 00 100000 RFT PRIM IF BUFFER PRIMED BUCM0930
01052 1 00001 3 01072 TXI BB,3,1 GO MOVE AND READ NEXT RECORD BUCM0931
01053 0055 00 004000 SIR IOF NO I/O WANTED ON PRIMING BUCM0932
01054 0074 00 4 01533 TSX PRBUF,4 PRIME BUFFER BUCM0933
01055 0074 00 4 01406 TSX SLAST,4 IF LAST SET IT AGAIN BUCM0934
01056 -0500 00 0 00053 CAL CHKL2 2ND CHUNK BUCM0935
01057 0401 00 0 00055 ADM CHKL3 + 3RD CHUNK BUCM0936
01060 0767 00 0 00022 ALS 18 = TOTAL WORD COUNT TO READ BUCM0937
01061 -0501 00 0 00052 ORA CHK2 ADDRESS IN USER MEMORY BUCM0938
01062 -0501 00 0 00032 ORA MEMRY MEMORY FLAG BUCM0939
01063 0074 00 4 02370 TSX READL,4 SET REQUEST BUCM0940
01064 0074 00 4 02322 TSX READ,4 STARTS I/O BUCM0941
* BUCM0942
* SETS DELAYED MOVING BUCM0943
01065 -0774 00 2 00106 AXC RELADR+1,2 POINTER TO DINDEX BUCM0944
01066 LXA CHKL1,4 DCOUNT BUCM0945
01067 -0754 00 4 00000 PXD ,4 BUCM0946
01070 -0501 00 0 00050 ORA CHK1 DADDRS BUCM0947
01071 0020 00 0 01203 TRA DMOVE GO SET FILE TABLE BUCM0948
* BUCM0949
* MOVE FROM BUFFER, THEN READ FROM FILE TO USER MEMORY. BUCM0950
01072 BB SYN * BUCM0951
01072 0054 00 000100 RFT CHG IF BUFFER CHANGED BUCM0952
01073 0054 00 202000 RFT EREC+WFB AND NOT YET IN SAVING PROCESS BUCM0953
01074 0020 00 0 01076 TRA *+2 WHILE BUFFER IS TO BE REUSED BUCM0954
01075 0020 00 0 00775 TRA CT THEN GO SAVE IT BUCM0955
01076 SXA LABEL,3 SET RECORD NR. TO READ NEXT BUCM0956
01077 LXA BUFADR,1,4 BUFFER ADDRESS BUCM0957
01101 LAC RELADR+1,2 INDEX IN BUFFER BUCM0958
01102 1 00001 2 01103 TXI *+1,2,1 BUCM0959
01103 MOVE TU,(,2),CHK1,CHKL1 BUCM0960
01103 SXA ..098,4 BUCM0960.002
01104 LXA CHK1,7 BUCM0960.002
01105 SXA ..098+1,7 BUCM0960.002
F 00000 ..100 SET ..103 BUCM0960.002
01106 LXA CHKL1,7 BUCM0960.002
01107 SXA ..098+2,7 BUCM0960.002
F 00000 ..101 SET ..106 BUCM0960.002
01110 0604 00 0 00111 STI SW BUCM0960.001
01111 0074 00 4 00000 TSX MOVE,4 BUCM0960.001
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 26
BREAD - BWRITE - READING MULTIPLE RECORDS
01112 3 00100 0 00047 PAR BUFFER,,MEMORY BUCM0960.001
01113 0761 00 2 00000 ..098 EFA **,..099 BUCM0960.001
01114 0761 00 0 00000 EFA **,..100 BUCM0960.001
01115 0761 00 0 00000 EFA **,..101 BUCM0960.001
01116 3 00000 0 02442 PAR PVIOL BUCM0960.001
01117 0441 00 0 00111 LDI SW BUCM0960.001
01120 LXA CHKL2,4 BUCM0961
01121 -3 00000 4 01022 TXL CN,4,0 GO READ LEFTOVER INTO BUFFER BUCM0962
01122 -0754 00 4 00000 PXD ,4 BUCM0963
01123 -0501 00 0 00052 ORA CHK2 BUCM0964
01124 0056 00 002000 RNT EREC IF DOESN'T END WITH A RECORD BUCM0965
01125 0020 00 0 01020 TRA CL GO READ FROM FILE TO USER, THEN TO BUFFER BUCM0966
01126 -0501 00 0 00032 ORA MEMRY USER MEMORY FLAG BUCM0967
01127 0074 00 4 02370 TSX READL,4 SETS REQUEST BUCM0968
01130 0074 00 4 02322 TSX READ,4 STARTS I/O BUCM0969
01131 0020 00 0 01476 TRA NULL GO UPDATE POINTERS BUCM0970
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 27
BREAD - BWRITE - READING OR WRITING WITHIN A SINGLE RECORD
* BUCM0972
* READS OR WRITES WITHIN A SINGLE RECORD BUCM0973
01132 L SYN * BUCM0974
01132 0054 00 000040 RFT BUFIN IF RECORD IN BUFFER IS INVOLVED BUCM0975
01133 0020 00 0 01220 TRA TT THEN USE IT BUCM0976
01134 0054 00 000001 RFT APND AND IF NO APPENDING BUCM0977
01135 0020 00 0 00636 TRA AS ELSE GO APPEND BUCM0978
01136 0056 00 002020 RNT BREC+EREC IF ENTIRE RECORD BUCM0979
01137 0020 00 0 01143 TRA AE BUCM0980
01140 0054 00 400000 RFT WRIT AND NOT WRITING THE LAST ONE BUCM0981
01141 0056 00 010000 RNT LAST BUCM0982
01142 0020 00 0 00431 TRA CA NO BUFFER USED BUCM0983
01143 AE SYN * BUCM0984
01143 SAVB THEN SAVE BUFFER BUCM0985
01143 0074 00 4 01511 TSX SAVBUF,4 BUCM0985.001
* BUCM0986
01144 E SYN * BUCM0987
01144 0056 00 200000 RNT WFB IF BUFFER NOT FREE BUCM0988
01145 0056 00 400020 RNT WRIT+BREC OR IF NOT WRITING FROM BEGINNING OF A RECORBUCM0989
01146 0020 00 0 01172 TRA U THEN GO PRIME BUFFER BUCM0990
* BUCM0991
* WRITES FROM THE BEGINNING OF A RECORD BUCM0992
01147 LXA BUFADR,1,4 BUCM0993
01151 LDC BLOC,3 BUCM0994
01152 MOVE TB,BLOC,,(Z,3) BUCM0995
01152 LXA BLOC,7 BUCM0995.002
01153 SXA ..111,7 BUCM0995.002
F 00000 ..112 SET ..115 BUCM0995.002
01154 SXA ..111+1,4 BUCM0995.001
01155 LXA Z,7 BUCM0995.002
01156 SXA ..111+2,7 BUCM0995.002
01157 0604 00 0 00111 STI SW BUCM0995.001
01160 0074 00 4 00000 TSX MOVE,4 BUCM0995.001
01161 3 00047 0 00100 PAR MEMORY,,BUFFER BUCM0995.001
01162 0761 00 0 00000 ..111 EFA **,..112 BUCM0995.001
01163 0761 00 0 00000 EFA **,..113 BUCM0995.001
01164 0761 00 3 00000 EFA **,..114 BUCM0995.001
01165 3 00000 0 02442 PAR PVIOL BUCM0995.001
01166 0441 00 0 00111 LDI SW BUCM0995.001
01167 -0500 00 0 00035 CAL PTW CLEAR PRIM, SETS CHNG FLAG BUCM0996
01170 0630 00 1 00020 STP CHNG,1 BUCM0997
01171 0020 00 0 01463 TRA UPBUF SETS CURRENT POINTERS AND RETURN BUCM0998
* BUCM0999
* READS AND WRITES IN THE MIDST OF A RECORD BUCM1000
* OR FROM THE BEGINNING OF A RECORD WHEN BUFFER TIED UP BUCM1001
01172 U SYN * BUCM1002
01172 LXD RELADR+1,3 BUCM1003
01173 SXA LABEL,3 RECORD NUMBER BUCM1004
01174 SXD WINDEX,1,8 CLEARS WORD COUNT IN BUFFER BUCM1005
01176 0630 00 1 00020 STP PRIME,1 CLEARS PRIME FLAG BUCM1006
01177 0056 00 400020 RNT BREC+WRIT SKIP PRIMING IF NOT NECESSARY BUCM1007
01200 0074 00 4 01533 TSX PRBUF,4 READS RECORD IN BUFFER BUCM1008
* BUCM1009
* SETS DELAYED MOVING BUCM1010
01201 H SYN * BUCM1011
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 28
BREAD - BWRITE - READING OR WRITING WITHIN A SINGLE RECORD
01201 -0500 00 0 00046 CAL BLOC BUCM1012
01202 -0774 00 2 00106 AXC RELADR+1,2 POINTER TO DINDEX BUCM1013
* BUCM1014
* SETS DELAYED MOVING POINTERS IN FILE TABLE BUCM1015
* BUCM1016
01203 DMOVE SYN * BUCM1017
01203 0621 00 1 00022 STA DADDRS,1 BUCM1018
01204 0622 00 1 00022 STD DCOUNT,1 BUCM1019
01205 -0500 00 2 00000 CAL ,2 DINDEX BUCM1020
01206 -0400 00 0 02461 SBM =1 BUCM1021
01207 0621 00 1 00021 STA DINDEX,1 BUCM1022
01210 -0500 00 0 00035 CAL PTW DELAYED READING PREFIX BUCM1023
01211 0054 00 400000 RFT WRIT BUCM1024
01212 -0500 00 0 00033 CAL PON DELAYED WRITING PREFIX BUCM1025
01213 0630 00 1 00022 STP DW,1 BUCM1026
01214 0056 00 400020 RNT WRIT+BREC BUCM1027
01215 0054 00 000001 RFT APND BUCM1028
01216 0020 00 0 01463 TRA UPBUF BUCM1029
01217 0020 00 0 01476 TRA NULL BUCM1030
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 29
BREAD - BWRITE - READING OR WRITING IN THE CURRENT BUFFER
* BUCM1032
* READS OR WRITES IN THE CURRENT BUFFER BUCM1033
* BUCM1034
01220 TT SYN * BUCM1035
01220 0056 00 010000 RNT LAST IF NOT LAST RECORD BUCM1036
01221 0056 00 402020 RNT WRIT+BREC+EREC AND WRITING ENTIRE RECORD BUCM1037
01222 0020 00 0 01224 TRA *+2 BUCM1038
01223 0020 00 0 00431 TRA CA NO BUFFER USED BUCM1039
01224 LDC BLOC,2 WORD COUNT TO MOVE BUCM1040
01225 LXD WINDEX,1,3 WORD COUNT IN BUFFER BUCM1041
01227 SXD J,3 SAVE FOR LATER COMPARISON BUCM1042
01230 0056 00 400020 RNT WRIT+BREC IF NOT WRITING THE BEGINNING OF A RECORD BUCM1043
01231 -3 00000 3 01310 TXL CD,3,0 THEN GO PRIME BUFFER IF EMPTY BUCM1044
01232 1 00001 3 01233 TXI *+1,3,1 BUCM1045
01233 SCD CB,3 BUCM1046
01234 LXA BUFADR,1,4 BUFFER ADDRESS BUCM1047
01236 0056 00 400000 RNT WRIT BUCM1048
01237 0020 00 0 01266 TRA CC GO READ BUCM1049
01240 LAC RELADR+1,3 WORD INDEX FOR BEGINNING OF WRITING BUCM1050
01241 1 00001 3 01242 TXI *+1,3,1 BUCM1051
01242 0056 00 000020 RNT BREC BECAUSE TXL FAILS FOR THIS CASE BUCM1052
01243 -3 00000 3 01310 CB TXL CD,3,** SKIP IF WRITING LEAVES A GAP IN BUFFER BUCM1053
01244 MOVE TB,BLOC,(,3),(Z,2) BUCM1054
01244 LXA BLOC,7 BUCM1054.002
01245 SXA ..127,7 BUCM1054.002
F 00000 ..128 SET ..131 BUCM1054.002
01246 SXA ..127+1,4 BUCM1054.002
01247 LXA Z,7 BUCM1054.002
01250 SXA ..127+2,7 BUCM1054.002
01251 0604 00 0 00111 STI SW BUCM1054.001
01252 0074 00 4 00000 TSX MOVE,4 BUCM1054.001
01253 3 00047 0 00100 PAR MEMORY,,BUFFER BUCM1054.001
01254 0761 00 0 00000 ..127 EFA **,..128 BUCM1054.001
01255 0761 00 3 00000 EFA **,..129 BUCM1054.001
01256 0761 00 2 00000 EFA **,..130 BUCM1054.001
01257 3 00000 0 02442 PAR PVIOL BUCM1054.001
01260 0441 00 0 00111 LDI SW BUCM1054.001
01261 -0500 00 0 00035 CAL PTW CHNG FLAG BUCM1055
01262 -0602 00 1 00020 ORS CHNG,1 SETS IN FILE TABLE BUCM1056
01263 LXA NDBLOC+1,4 INDEX OF LAST WORD IN BUFFER BUCM1057
01264 -3 00000 4 01474 J TXL UPFIL,4,** SKIP IF WORD COUNT NOT CHANGED BUCM1058
01265 0020 00 0 01463 TRA UPBUF GO UPDATE POINTERS BUCM1059
* BUCM1060
01266 CC SYN * READS FROM CURRENT BUFFER BUCM1061
01266 LAC NDBLOC+1,3 INDEX OF LAST WORD TO READ BUCM1062
01267 0522 00 0 01243 XEC CB SKIP IF .G. CONTENTS OF BUFFER BUCM1063
01270 LAC RELADR+1,3 WORD INDEX FOR BEGINNING OF READING BUCM1064
01271 1 00001 3 01272 TXI *+1,3,1 BUCM1065
01272 MOVE TU,(,3),BLOC,(Z,2) BUCM1066
01272 SXA ..140,4 BUCM1066.002
01273 LXA BLOC,7 BUCM1066.002
01274 SXA ..140+1,7 BUCM1066.002
F 00000 ..142 SET ..145 BUCM1066.002
01275 LXA Z,7 BUCM1066.002
01276 SXA ..140+2,7 BUCM1066.002
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 30
BREAD - BWRITE - READING OR WRITING IN THE CURRENT BUFFER
01277 0604 00 0 00111 STI SW BUCM1066.001
01300 0074 00 4 00000 TSX MOVE,4 BUCM1066.001
01301 3 00100 0 00047 PAR BUFFER,,MEMORY BUCM1066.001
01302 0761 00 3 00000 ..140 EFA **,..141 BUCM1066.001
01303 0761 00 0 00000 EFA **,..142 BUCM1066.001
01304 0761 00 2 00000 EFA **,..143 BUCM1066.001
01305 3 00000 0 02442 PAR PVIOL BUCM1066.001
01306 0441 00 0 00111 LDI SW BUCM1066.001
01307 0020 00 0 01474 TRA UPFIL GO UPDATE POINTERS BUCM1067
* BUCM1068
01310 CD SYN * PRIMING BUFFER REQUIRED BUCM1069
01310 LXD RELADR+1,4 BUCM1070
01311 SXA LABEL,4 SETS BUFFER RECORD NR. BUCM1071
01312 0074 00 4 01533 TSX PRBUF,4 BUCM1072
01313 0020 00 0 01201 TRA H GO SET DELAYED MOVING BUCM1073
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 31
CHKERR - ERROR RETURN FOR FAILURE IN PREVIOUS I/O
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1075
* BUCM1076
* CHKERR. TEST OF PREVIOUS IO OPERATION BUCM1077
* BUCM1078
* TSX CHKERR,4 BUCM1079
* NORMAL RETURN, OR QWAIT, OR PVIOL, OR ERROR BUCM1080
* BUCM1081
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1082
BUCM1083
01314 CHKERR SXA CHKERX,4 BUCM1084
01315 LXD IOTASK,1,5 COUNT OF I/O REQUESTS YET TO BE DONE BUCM1085
01317 3 00000 5 02437 TXH QWAIT,5,0 SKIP IF I/O STILL IN PROGRESS BUCM1086
01320 -0500 00 1 00023 CAL EFLAG,1 PICK UP ERROR FLAGS IF ANY BUCM1087
01321 -0320 00 0 02466 ANA =O700000 .. FROM TAG BUCM1088
01322 0100 00 0 01333 TZE OK SKIP IF NO ERRORS BUCM1089
01323 0402 00 0 02464 SUB =1B20 WAS ERROR A PARITY ERROR BUCM1090
01324 -0100 00 0 01327 TNZ FATAL NO, SKIP ON FATAL ERROR BUCM1091
01325 0074 00 4 01654 TSX FINISH,4 YES, FINISH ANY DELAYED I/O BUCM1092
01326 0020 00 0 02454 TRA ERROR AND GIVE I/O ERROR RETURN BUCM1093
BUCM1094
01327 0402 00 0 02465 FATAL SUB =6B20 FATAL ERROR, CHECK FOR PROTECTION ERROR BUCM1095
01330 -0100 00 0 02454 TNZ ERROR SKIP IF NOT PROTECTION (2-6, NOT 7) BUCM1096
01331 0625 00 1 00023 STT EFLAG,1 RESET EFLAG ON PROTECTION VIOLATION BUCM1097
01332 0020 00 0 02442 TRA PVIOL AND GIVE PROTECTION ERROR RETURN BUCM1098
BUCM1099
01333 0074 00 4 01654 OK TSX FINISH,4 NO ERRORS, FINISH ANY DELAYED I/O BUCM1100
01334 0774 00 4 00000 CHKERX AXT **,4 AND RETURN BUCM1101
01335 0020 00 4 00001 TRA 1,4 .. BUCM1102
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 32
CHKOFF - MATCHING GIVEN ADDRESS AGAINST FILE AREA
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1104
* BUCM1105
* CHKOFF TESTS WHETHER A RANGE OF ADDRESSES IS IN THE FILE BUCM1106
* BUCM1107
* TSX CHKOFF,4 BUCM1108
* PAR OFF ADDRESS OUT OF FILE. EOF SET ON BUCM1109
* NORMAL RETURN, ADDRESS IN FILE BUCM1110
* OR APPENDING IF WRIT ON, THEN APND SET ON BUCM1111
* FOLLOWING LOCATIONS SHOULD BE SET BUCM1112
* BLOC BUCM1113
* RELADR BUCM1114
* EXPECTS WRIT SET BY BWRITE BUCM1115
* SETS CORRECT VALUES FOR BUCM1116
* BLOC BUCM1117
* FILENG (BEFORE APPENDING) BUCM1118
* NDBLOC BUCM1119
* NEXCUR BUCM1120
* MAY SET FOLLOWING SWITCHES BUCM1121
* EOF, APND BUCM1122
* BUCM1123
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1124
* BUCM1125
* CHECKS IF BEGINNING OF THE CALL IS IN THE FILE BUCM1126
01336 CHKOFF SYN * BUCM1127
01336 SXA .19,4 BUCM1128
01337 -0500 00 0 00046 CAL BLOC BUCM1129
01340 0771 00 0 00022 ARS 18 WORD COUNT BUCM1130
01341 -0100 00 0 01343 TNZ *+2 IF WORD COUNT ZERO BUCM1131
01342 0600 00 0 00046 STZ BLOC THEN CLEAR BLOC BUCM1132
01343 0401 00 0 00105 ADM RELADR RELATIVE ADDRESS FOLLOWING BLOCK REQUESTED BUCM1133
01344 0602 00 0 00103 SLW NEXCUR SAVE NEXT LINEAR ADDRESS BUCM1134
01345 0520 00 0 00046 ZET BLOC IF WORD COUNT NON ZERO BUCM1135
01346 -0400 00 0 02461 SBM =1 BUCM1136
01347 0602 00 0 00101 SLW NDBLOC SET BLOC LAST ADDRESS BUCM1137
01350 LXD NORECS,1,5 FILE RECORDS COUNT INTO IX5 BUCM1138
01352 LXA LCOUNT,1,6 LAST RECORD COUNT INTO IX6 BUCM1139
01354 0074 00 4 01735 TSX LINCOR,4 BUCM1140
01355 -1 00037 6 00037 FIVE Z,6,Z BUCM1141
01356 0774 00 4 00000 .19 AXT **,4 BUCM1142
01357 0602 00 0 00057 SLW FILENG SAVE FILE LENGTH BUCM1143
01360 -0130 00 0 00000 XCL BUCM1144
01361 -0500 00 0 00105 CAL RELADR BUCM1145
01362 0040 00 0 01400 TLQ K SKIP IF OUT OF FILE BUCM1146
* CHECKS IF END OF THE CALL IS IN THE FILE BUCM1147
01363 0055 00 040000 SIR NDFIL BUCM1148
01364 -0130 00 0 00000 XCL FILE LENGTH INTO AC BUCM1149
01365 -0340 00 0 00101 LAS NDBLOC BUCM1150
01366 0057 00 040000 RIR NDFIL LAST WORD NOT IN RANGE OF CALL BUCM1151
01367 0020 00 4 00002 TRA 2,4 ADDRESS IN FILE BUCM1152
01370 0602 00 0 00101 SLW NDBLOC ACCEPTED END OF CALL BUCM1153
01371 0401 00 0 02461 ADM =1 BUCM1154
01372 0602 00 0 00103 SLW NEXCUR ACCEPTED NEXT POINTER BUCM1155
01373 -0400 00 0 00105 SBM RELADR SUITABLE WORD COUNT BUCM1156
01374 0767 00 0 00022 ALS 18 BUCM1157
01375 0622 00 0 00046 STD BLOC NO. OF WORDS ACCEPTED BUCM1158
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 33
CHKOFF - MATCHING GIVEN ADDRESS AGAINST FILE AREA
01376 0055 00 041000 SIR EOF+NDFIL SWITCH END OF FILE BUCM1159
01377 0020 00 4 00002 TRA 2,4 ADDRESS IN FILE BUCM1160
* CHECKS IF IT MAY BE APPENDING BUCM1161
01400 0056 00 400000 K RNT WRIT BUCM1162
01401 0020 60 4 00001 TRA* 1,4 ADDRESS IS OUT BUCM1163
01402 -0400 00 0 02461 SBM =1 CHECK IF WRITING STARTS APPENDING BUCM1164
01403 0040 60 4 00001 TLQ* 1,4 ADDRESS IS OUT BUCM1165
01404 0055 00 000001 SIR APND SWITCH APPEND BUCM1166
01405 0020 00 4 00002 TRA 2,4 BUCM1167
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 34
UPDATING FILE TABLE - TESTS LCOUNT, BUFFER
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1169
* BUCM1170
* TSLT TESTS TO SEE IF THE RECORD INVOLVED IS THE LAST IN FILE BUCM1171
* SETS DECREMENT OF LABEL IF LAST RECORD, OR ELSE CLEARS IT. BUCM1172
* SLAST SETS LCOUNT IN DECREMENT OF LABEL, IF LAST RECORD INVOLVED BUCM1173
* BUCM1174
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1175
* BUCM1176
T 01406 -0634 00 0 00077 SLAST ZSD LABEL CLEARS LCOUNT BUCM1177
01407 0056 00 010000 RNT LAST BUCM1178
01410 0020 00 4 00001 TRA 1,4 BUCM1179
01411 0020 00 0 01420 TRA AJ BUCM1180
01412 -0500 00 1 00014 TSLT CAL NORECS,1 BUCM1181
01413 0771 00 0 00022 ARS 18 BUCM1182
01414 -0400 00 0 00077 SBM LABEL COMPARE WITH REC NO. TO READ BUCM1183
01415 -0320 00 0 00027 ANA ADMSK KEEP ADDRESS BUCM1184
01416 0622 00 0 00077 STD LABEL CLEAR LCOUNT IN LABEL BUCM1185
01417 -0100 00 4 00002 TNZ 2,4 RETURN. NOT LAST BUCM1186
01420 AJ LXA LCOUNT,1,7 BUCM1187
01422 SXD LABEL,7 SET LCOUNT IN LABEL BUCM1188
01423 0020 00 4 00001 TRA 1,4 RETURN LAST INDEED BUCM1189
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1190
* BUCM1191
* LEN UPDATES FILE LENGTH BUCM1192
* LOCATION NDBLOC+1 SHOULD BE SET BUCM1193
* SETS NORECS, LCOUNT, AND DEV BUCM1194
* BUCM1195
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1196
* BUCM1197
01424 LEN SYN * BUCM1198
01424 LXD NORECS,1,7 OLD NORECS BUCM1199
01426 SXA DEV,7 SAVE BUCM1200
01427 -0500 00 0 00102 CAL NDBLOC+1 BUCM1201
01430 0621 00 1 00014 STA LCOUNT,1 BUCM1202
01431 0622 00 1 00014 STD NORECS,1 BUCM1203
01432 -0734 00 7 00000 PDX ,7 NEW NORECS BUCM1204
01433 0754 00 7 00000 PXA ,7 BUCM1205
01434 -0400 00 0 00056 SBM DEV BUCM1206
01435 0621 00 0 00056 STA DEV SAVE NORECS DEVIATION BUCM1207
01436 0020 00 4 00001 TRA 1,4 BUCM1208
* BUCM1209
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1210
* BUCM1211
* TBUF CHECKS WHETHER SOME BUFFER HAS BEEN ASSIGNED BUCM1212
* TRANSFERS TO 1,4 IF NONE ASSIGNED. ELSE 2,4 BUCM1213
* BUCM1214
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1215
* BUCM1216
01437 TBUF SYN * BUCM1217
01437 -0500 00 1 00020 CAL BUFADR,1 BUFFER ADDRESS BUCM1218
01440 -0320 00 0 00027 ANA ADMSK KEEP ADDRESS BUCM1219
01441 0100 00 4 00001 TZE 1,4 BUCM1220
01442 0020 00 4 00002 TRA 2,4 BUCM1221
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 35
BREAD - BWRITE - ADDRESS OUT OF FILE - NULL CALL
* BUCM1223
* CALL IS OUT OF FILE. ONLY POINTERS ARE MOVED TO THE END OF FILE. BUCM1224
* BUCM1225
01443 OFF SYN * BUCM1226
01443 -0500 00 0 00057 CAL FILENG POINTERS IN LAST RECORD BUCM1227
01444 0401 00 0 02461 ADM =1 BUCM1228
01445 0074 00 4 02154 TSX RECOR,4 GET POINTERS BUCM1229
01446 -2 00037 0 00104 SIX NEXCUR+1,0,Z WORD IX IN NEXCUR+1, RECORD NR. IN IX6 BUCM1230
01447 SXD NEXCUR+1,6 BUCM1231
01450 0074 00 4 01500 TSX KUR,4 UPDATES POINTERS BUCM1232
01451 0600 00 0 00046 STZ BLOC ZERO WORD ACCEPTED BUCM1233
01452 0020 00 0 02432 TRA EOFRTN BUCM1234
* BUCM1235
* TOFF MATCHES CURRENT POINTERS AGAINST THE NEW END OF FILE AFTER TRUNCABUCM1236
* BUCM1237
01453 0734 00 6 00000 TOFF PAX ,6 WORD POINTER BUCM1238
01454 -0734 00 7 00000 PDX ,7 RECORD POINTER BUCM1239
01455 0074 00 4 01735 TSX LINCOR,4 CONVERTS TO LINEAR BUCM1240
01456 -3 00037 6 00037 SVN Z,6,Z BUCM1241
01457 -0340 00 0 00103 LAS NEXCUR BUCM1242
01460 0020 00 5 00001 TRA 1,5 OFF FILE BUCM1243
01461 0020 00 5 00002 TRA 2,5 RIGHT AFTER THE END BUCM1244
01462 0020 00 5 00002 TRA 2,5 INSIDE BUCM1245
* BUCM1246
* UPDATES POINTERS BUCM1247
01463 UPBUF SYN * BUCM1248
01463 0054 00 000002 RFT BAIL IF LAST TRACK ALREADY WRITTEN BUCM1249
01464 0020 00 0 01470 TRA CS BUCM1250
01465 -0500 00 0 00033 CAL PON BUCM1251
01466 0054 00 040000 RFT NDFIL AND IF WRITING THRU THE END OF FILE BUCM1252
01467 -0602 00 1 00020 ORS PRIME,1 SETS PRIME FLAG (WINDEX REACHED LCOUNT) BUCM1253
01470 CS SYN * BUCM1254
01470 -0500 00 0 00102 CAL NDBLOC+1 BUCM1255
01471 0622 00 1 00020 STD BUFREC,1 BUCM1256
01472 0767 00 0 00022 ALS 18 BUCM1257
01473 0622 00 1 00021 STD WINDEX,1 NR. OF WORDS WRITTEN IN BUFFER BUCM1258
* BUCM1259
01474 UPFIL SYN * BUCM1260
01474 0054 00 000001 RFT APND BUCM1261
01475 0074 00 4 01424 TSX LEN,4 UPDATES FILE LENGTH BUCM1262
* BUCM1263
* NULL WORD COUNT. ONLY POINTERS ARE MOVED TO SPECIFIED ADDRESS BUCM1264
01476 NULL SYN * BUCM1265
01476 0074 00 4 01500 TSX KUR,4 UPDATES POINTERS BUCM1266
01477 0020 00 0 02425 TRA RETURN BUCM1267
* BUCM1268
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1269
* BUCM1270
* KUR UPDATES THE CURRENT POINTERS IN THE FILE TABLE BUCM1271
* BUCM1272
* TSX KUR,4 BUCM1273
* NEXCUR+1 AND WRIT SHOULD BE SET BUCM1274
* BUCM1275
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1276
* BUCM1277
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 36
BREAD - BWRITE - ADDRESS OUT OF FILE - NULL CALL
01500 KUR SYN * BUCM1278
01500 -0500 00 0 00104 CAL NEXCUR+1 BUCM1279
01501 0054 00 400000 RFT WRIT BUCM1280
01502 0020 00 0 01506 TRA BR THEN WRITING BUCM1281
01503 0621 00 1 00016 STA REDWRD,1 BUCM1282
01504 0622 00 1 00016 STD REDREC,1 BUCM1283
01505 0020 00 4 00001 TRA 1,4 BUCM1284
01506 BR SYN * BUCM1285
01506 0621 00 1 00017 STA WRTWRD,1 BUCM1286
01507 0622 00 1 00017 STD WRTREC,1 BUCM1287
01510 0020 00 4 00001 TRA 1,4 BUCM1288
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 37
SAVBUF - SAVING CURRENT BUFFER INTO FILE
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1290
* BUCM1291
* REWRITES BUFFER INTO FILE IF NECESSARY BUCM1292
* TSX SAVBUF,4 BUCM1293
* NORMAL RETURN BUCM1294
* SETS WFB IF I/O HAS BEEN STARTED BUCM1295
* BUCM1296
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1297
* BUCM1298
* CHECKS IF NEED REWRITE THE BUFFER INTO THE FILE BUCM1299
01511 SAVBUF SYN * BUCM1300
01511 0056 00 000100 RNT CHG IF BUFFER HAS NOT CHANGED BUCM1301
01512 0020 00 4 00001 TRA 1,4 NORMAL RETURN BUCM1302
01513 SXA .15,4 BUCM1303
01514 -0500 00 1 00020 CAL BUFREC,1 BUFFER RECORD NO. BUCM1304
01515 0771 00 0 00022 ARS 18 BUCM1305
01516 0621 00 0 00077 STA LABEL BUCM1306
01517 0054 00 100000 RFT PRIM IF BUFFER IS ALREADY PRIMED BUCM1307
01520 0020 00 0 01527 TRA N THEN REWRITE IT BUCM1308
01521 0056 00 000002 RNT BAIL IF RECORD ALREADY IN FILE BUCM1309
01522 0020 00 0 01526 TRA PP THEN GO AND PRIME IT BUCM1310
* ELSE WRITE IT AS A NEW RECORD BUCM1311
* CHECKS IF PREVIOUS RECORD NEED ALSO BE REWRITTEN BUCM1312
01523 0074 00 4 01613 TSX WRBUF,4 BUCM1313
01524 0074 00 4 01640 TSX Q,4 GO UPDATE POINTERS BUCM1314
01525 0020 00 0 01530 TRA .15 BUCM1315
* BUCM1316
* PRIMES AND REWRITES THE BUFFER INTO A PREVIOUS FILE RECORD BUCM1317
01526 PP SYN * BUCM1318
01526 0074 00 4 01533 TSX PRBUF,4 PRIMES BUFFER BUCM1319
* BUCM1320
* REWRITES BUFFER INTO FILE BUCM1321
01527 N SYN * BUCM1322
01527 0074 00 4 01610 TSX RWBUF,4 BUCM1323
01530 0774 00 4 00000 .15 AXT **,4 BUCM1324
01531 0055 00 200000 SIR WFB SETS SWITCH IF I/O STARTED BUCM1325
01532 0020 00 4 00001 TRA 1,4 BUCM1326
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 38
PRBUF - PRIMING BUFFER FROM CURRENT INDEX
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1328
* BUCM1329
* PRBUF READS RECORD FROM FILE IN ORDER TO COMPLETE THE BUFFER BUCM1330
* WINDEX MUST BE SET TO ZERO IF FULL RECORD IS WANTED. BUCM1331
* BUCM1332
* TSX PRBUF,4 BUCM1333
* LABEL MUST BE SET TO THE RECORD NUMBER WANTED BUCM1334
* NO I/O INITIATED IF IOF SWITCH IS ON BUCM1335
* NORMAL RETURN 1,4 BUCM1336
* SETS FILE TABLE, WINDEX, PRIME, BUFREC, BLAST BUCM1337
* RESETS IOF BUCM1338
* BUCM1339
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1340
01533 PRBUF SYN * BUCM1341
01533 SXA .14,4 BUCM1342
01534 TBUF CHECKS FOR BUFFER ASSIGNED BUCM1343
01534 0074 00 4 01437 TSX TBUF,4 BUCM1343.001
01535 0020 00 0 02445 TRA NIDBUF NONE. ERROR BUCM1344
01536 0057 00 000010 RIR BLAST RESET AS RECORD MAY BE A NEW ONE BUCM1345
01537 0074 00 4 01412 TSX TSLT,4 TEST IF IT IS LAST RECORD BUCM1346
01540 0055 00 000010 SIR BLAST YES BUCM1347
01541 LXD WINDEX,1,5 BUCM1348
01543 0600 00 0 00112 STZ T CLEARS TEMPORARY BUCM1349
01544 0754 00 5 00000 PXA ,5 BUCM1350
01545 SXD T,5 NR. OF WORDS WRITTEN IN BUFFER BUCM1351
01546 0401 00 1 00020 ADM BUFADR,1 BUCM1352
01547 0621 00 0 00107 STA REQ ADDRESS WHERE READING STARTS IN BUFFER BUCM1353
01550 SCD AR,5 BUCM1354
01551 -0500 00 1 00013 CAL RCOUNT,1 BUCM1355
01552 0054 00 000010 RFT BLAST BUCM1356
01553 -0500 00 1 00014 CAL LCOUNT,1 BUCM1357
01554 0734 00 6 00000 PAX ,6 BUCM1358
01555 1 00000 6 01556 AR TXI *+1,6,** RCOUNT (OR LCOUNT) - WINDEX BUCM1359
01556 -3 00000 6 01605 TXL BW,6,0 SKIP IF NOTHING TO READ IN BUCM1360
01557 SXD REQ,6 = WORD COUNT TO READ BUCM1361
01560 -0500 00 0 02461 CAL =1 BUCM1362
01561 0074 00 4 02301 TSX QUEUE,4 BUCM1363
01562 -0500 00 0 00112 CAL T SKIP REQUEST BUCM1364
01563 0100 00 0 01566 TZE BD BUCM1365
01564 -0501 00 0 00033 ORA PON BUCM1366
01565 0074 00 4 02370 TSX READL,4 SET IN IO LIST BUCM1367
01566 BD SYN * BUCM1368
01566 -0500 00 0 00107 CAL REQ BUCM1369
01567 -0501 00 0 00030 ORA BUFR BUCM1370
01570 0074 00 4 02370 TSX READL,4 SET IN READING LIST BUCM1371
01571 0056 00 004000 RNT IOF SKIP IF NO ACTION WANTED BUCM1372
01572 0074 00 4 02322 TSX READ,4 BUCM1373
01573 -0500 00 1 00013 CAL RCOUNT,1 BUCM1374
01574 0054 00 000010 RFT BLAST BUCM1375
01575 -0500 00 1 00014 CAL LCOUNT,1 BUCM1376
01576 0767 00 0 00022 ALS 18 BUCM1377
01577 0622 00 1 00021 STD WINDEX,1 UPDATE FILE TABLE BUCM1378
01600 -0500 00 0 00033 CAL PON PRIME FLAG BUCM1379
01601 -0602 00 1 00020 ORS PRIME,1 SET FLAG BUFFER PRIMED BUCM1380
01602 LXA LABEL,5 BUCM1381
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 39
PRBUF - PRIMING BUFFER FROM CURRENT INDEX
01603 SXD BUFREC,1,5 BUCM1382
01605 0057 00 004000 BW RIR IOF RESET INHIBIT SWITCH BUCM1383
01606 0774 00 4 00000 .14 AXT **,4 BUCM1384
01607 0020 00 4 00001 TRA 1,4 BUCM1385
* BUCM1386
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 40
RWBUF - REWRITING BUFFER INTO FILE
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1388
* BUCM1389
* RWBUF REWRITES THE CONTENTS OF THE BUFFER AS A RECORD BUCM1390
* NO I/O INITIATED IF IOF SWITCH IS ON BUCM1391
* LABEL CONTAINS THE NUMBER OF THE RECORD BUCM1392
* BLAST MUST BE SET IF IT HAS TO BE THE LAST RECORD BUCM1393
* BUCM1394
* TSX RWBUF,4 BUCM1395
* RESETS IOF SWITCH BUCM1396
* NORMAL RETURN 1,4 BUCM1397
* SETS FILE TABLE, PRIME, LCOUNT BUCM1398
* BUCM1399
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1400
* BUCM1401
01610 RWBUF SYN * BUCM1402
01610 SXA .20,2 BUCM1403
01611 0774 00 2 00000 AXT 0,2 SETS IX2 AS A CALL FLAG BUCM1404
01612 0020 00 0 01615 TRA BM SAME AS WRBUF BUCM1405
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 41
WRBUF - WRITING BUFFER AS NEW RECORD
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1407
* BUCM1408
* WRBUF WRITES OUT CONTENTS OF BUFFER AS A NEW RECORD BUCM1409
* NO I/O INITIATED IF IOF SWITCH IS ON BUCM1410
* LABEL CONTAINS THE RECORD NUMBER BUCM1411
* BLAST MUST BE SET IF IT HAS TO BE THE LAST RECORD BUCM1412
* BUCM1413
* RESETS IOF SWITCH BUCM1414
* TSX WRBUF,4 BUCM1415
* NORMAL RETURN BUCM1416
* BUCM1417
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1418
* BUCM1419
01613 WRBUF SYN * BUCM1420
01613 SXA .20,2 BUCM1421
01614 0774 00 2 00001 AXT 1,2 SETS IX2 AS A CALL FLAG BUCM1422
01615 BM SXA .16,4 BUCM1423
01616 TBUF CHECKS IF BUFFER ASSIGNED BUCM1424
01616 0074 00 4 01437 TSX TBUF,4 BUCM1424.001
01617 0020 00 0 02445 TRA NIDBUF NONE. ERROR BUCM1425
01620 -0500 00 0 02461 CAL =1 BUCM1426
01621 0074 00 4 02301 TSX QUEUE,4 CHECK FOR ROOM IN QUEUE BUCM1427
01622 -0500 00 1 00021 CAL WINDEX,1 AND WORD COUNT IN BUFFER BUCM1428
01623 0622 00 0 00107 STD REQ AND IN IO REQUEST BUCM1429
01624 0056 00 000010 RNT BLAST BUCM1430
01625 -0754 00 0 00000 ZAC BUCM1431
01626 0622 00 0 00077 STD LABEL AND IN LABEL, FOR LAST RECORD BUCM1432
01627 -0500 00 1 00020 CAL BUFADR,1 BUFFER ADDRESS TO WRITE FROM BUCM1433
01630 0621 00 0 00107 STA REQ SET INTO IO REQUEST BUCM1434
01631 -0500 00 0 00107 CAL REQ BUCM1435
01632 -0501 00 0 00030 ORA BUFR SET MEMORY FLAG BUCM1436
01633 0522 00 2 01651 XEC BN,2 SET IN WRITING I/O LIST BUCM1437
* WRITE OUT BUFFER BUCM1438
01634 0056 00 004000 RNT IOF SKIP IF NO ACTION WANTED BUCM1439
01635 0522 00 2 01653 XEC BQ,2 BUCM1440
01636 0774 00 2 00000 .20 AXT **,2 BUCM1441
01637 0774 00 4 00000 .16 AXT **,4 BUCM1442
* BUCM1443
* UPDATE FILE TABLE, LCOUNT, PRIME, CHNG BUCM1444
01640 Q SYN * BUCM1445
01640 -0500 00 0 00033 CAL PON FLAG PRIME BUCM1446
01641 0630 00 1 00020 STP PRIME,1 CLEARS CHNG BUCM1447
01642 -0500 00 0 00077 CAL LABEL BUCM1448
01643 0771 00 0 00022 ARS 18 BUCM1449
01644 0054 00 000010 RFT BLAST IF LAST RECORD BUCM1450
01645 0621 00 1 00014 STA LCOUNT,1 THEN SET LCOUNT BUCM1451
01646 0057 00 004000 RIR IOF RESET INHIBIT SWITCH BUCM1452
01647 0020 00 4 00001 TRA 1,4 BUCM1453
* BUCM1454
01650 0074 00 4 02372 TSX WRITL,4 BUCM1455
01651 0074 00 4 02374 BN TSX REWRTL,4 BUCM1456
01652 0074 00 4 02311 TSX WRITE,4 BUCM1457
01653 0074 00 4 02333 BQ TSX REWRT,4 BUCM1458
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 42
FINISH UP DELAYED I/O MOVING
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1460
* BUCM1461
* FINISH UP ANY PENDING I/O BUCM1462
* BUCM1463
* TSX FINISH,4 BUCM1464
* RETURN TO 1,4 BUCM1465
* MOVES WORDS BETWEEN BUFFER AND USER BUCM1466
* THEN RESET DELAY FLAGS IN FILE TABLE BUCM1467
* BUCM1468
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1469
* BUCM1470
01654 FINISH SYN * BUCM1471
01654 -0500 00 1 00022 CAL DR,1 DELAYED IO BITS BUCM1472
01655 0771 00 0 00041 ARS 33 WRITE BIT RIGHT JUSTIFIED BUCM1473
01656 0100 00 4 00001 TZE 1,4 RETURN. NO DELAYED IO BUCM1474
01657 SXA .5,4 BUCM1475
01660 SXA .6,2 BUCM1476
01661 -0500 00 1 00022 CAL DCOUNT,1 DADDRS,,DCOUNT BUCM1477
01662 -0734 00 4 00000 PDX ,4 WORD COUNT FOR DELAYED IO BUCM1478
01663 0621 00 0 00036 STA TOLOC ADDRESS WHERE TO START IN USER'S AREA BUCM1479
01664 LAC DINDEX,1,2 INDEX IN BUFFER SET IN IX2 BUCM1480
01666 -0500 00 1 00020 CAL BUFADR,1 BUCM1481
01667 0621 00 0 00031 STA FRMLOC BUFFER ADDRESS BUCM1482
01670 0560 00 1 00022 LDQ DR,1 DELAYED IO BITS BUCM1483
01671 -0763 00 0 00003 LGL 3 INTO AC BUCM1484
01672 0760 00 0 00001 LBT IF WRITING BUCM1485
01673 0020 00 0 01714 TRA AA ELSE GO AND MOVE BUCM1486
01674 MOVE TB,TOLOC,(FRMLOC,2),, BUCM1487
01674 LXA TOLOC,7 BUCM1487.002
01675 SXA ..168,7 BUCM1487.002
F 00000 ..169 SET ..172 BUCM1487.002
01676 LXA FRMLOC,7 BUCM1487.002
01677 SXA ..168+1,7 BUCM1487.002
01700 SXA ..168+2,4 BUCM1487.001
01701 0604 00 0 00111 STI SW BUCM1487.001
01702 0074 00 4 00000 TSX MOVE,4 BUCM1487.001
01703 3 00047 0 00100 PAR MEMORY,,BUFFER BUCM1487.001
01704 0761 00 0 00000 ..168 EFA **,..169 BUCM1487.001
01705 0761 00 2 00000 EFA **,..170 BUCM1487.001
01706 0761 00 0 00000 EFA **,..171 BUCM1487.001
01707 3 00000 0 02442 PAR PVIOL BUCM1487.001
01710 0441 00 0 00111 LDI SW BUCM1487.001
01711 -0500 00 0 00035 CAL PTW CHNG FLAG BUCM1488
01712 -0602 00 1 00020 ORS CHNG,1 SET IN FILE TABLE BUCM1489
01713 0020 00 0 01731 TRA AC BUCM1490
01714 AA SYN * BUCM1491
01714 MOVE TU,(FRMLOC,2),TOLOC,, BUCM1492
01714 LXA FRMLOC,7 BUCM1492.002
01715 SXA ..178,7 BUCM1492.002
01716 LXA TOLOC,7 BUCM1492.002
01717 SXA ..178+1,7 BUCM1492.002
F 00000 ..180 SET ..184 BUCM1492.002
01720 SXA ..178+2,4 BUCM1492.001
01721 0604 00 0 00111 STI SW BUCM1492.001
01722 0074 00 4 00000 TSX MOVE,4 BUCM1492.001
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 43
FINISH UP DELAYED I/O MOVING
01723 3 00100 0 00047 PAR BUFFER,,MEMORY BUCM1492.001
01724 0761 00 2 00000 ..178 EFA **,..179 BUCM1492.001
01725 0761 00 0 00000 EFA **,..180 BUCM1492.001
01726 0761 00 0 00000 EFA **,..181 BUCM1492.001
01727 3 00000 0 02442 PAR PVIOL BUCM1492.001
01730 0441 00 0 00111 LDI SW BUCM1492.001
01731 AC SYN * BUCM1493
01731 0600 00 1 00022 STZ DR,1 RESET DELAY WORD IN FILE TABLE BUCM1494
01732 0774 00 2 00000 .6 AXT **,2 BUCM1495
01733 0774 00 4 00000 .5 AXT **,4 BUCM1496
01734 0020 00 4 00001 TRA 1,4 BUCM1497
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 44
LINCOR - COMPUTES LINEAR ADDRESS FROM RECORD-WORD
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1499
* BUCM1500
* LINCOR COMPUTES WORD ADDRESS IN A FILE, FROM A RECORD NO. AND BUCM1501
* WORD NUMBER IN THE RECORD BUCM1502
* NOVEMBER 64 LOUIS POUZIN BUCM1503
* BUCM1504
* CALLING SEQUENCE BUCM1505
* IX1 MUST BE SET AS ACTIVE FILE TABLE POINTER BUCM1506
* TSX LINCOR,4 BUCM1507
* TGR WORD,TGW,REC BUCM1508
* SLW WORD WORD RELATIVE ADDRESS BUCM1509
* IF TGR AND TGW ARE ZERO, WORD AND REC CONTAIN ACTUAL RECORD BUCM1510
* AND WORD NUMBER. BUCM1511
* IF TGR OR TGW IS NOT ZERO, RECNO=C(REC)+C(IX(TGR)) BUCM1512
* WORDNO=C(WORD)+C(IX(TGW)) BUCM1513
* BUCM1514
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1515
BUCM1516
HEAD L BUCM1517
BUCM1518
01735 LINCOR SYN * BUCM1519
01735 -0500 00 4 00001 CAL 1,4 GET THE ARGUMENT BUCM1520
01736 0602 00 0 01764 SLW T SAVE ARGUMENT BUCM1521
01737 0625 00 0 01742 STT A SAVE TGW BUCM1522
01740 -0765 00 0 00022 LGR 18 BUCM1523
01741 0625 00 0 01743 STT B SAVE TGR BUCM1524
01742 A SXA T1,** SAVE WORD INDEX BUCM1525
01743 B SXA T2,** SAVE RECORD INDEX BUCM1526
01744 LAC T,6 WORD POINTER INTO IX6 BUCM1527
01745 LDC T,7 RECORD POINTER INTO IX7 BUCM1528
01746 -0500 00 7 00000 E CAL ,7 BUCM1529
01747 0401 00 0 01766 ADM T2 REC + IX(TGR) BUCM1530
01750 0100 00 0 01752 TZE *+2 SKIP IF RECORD NO. ZERO BUCM1531
01751 -0400 00 0 02461 SBM =1 1ST RECORD COUNTS FOR ZERO BUCM1532
01752 -0130 00 0 00000 XCL INTO MQ BUCM1533
01753 -0500 00 1 00013 CAL RCOUNT,1 NUMBER OF WORDS PER RECORD BUCM1534
01754 -0320 00 0 00027 ANA 0$ADMSK KEEP ADDRESS BUCM1535
01755 0602 00 0 01764 SLW T BUCM1536
01756 0200 00 0 01764 MPY T WORD COUNT IN INTEGRAL RECORDS BUCM1537
01757 -0600 00 0 01764 STQ T SAVE IT BUCM1538
01760 -0500 00 6 00000 CAL ,6 GET WORD COUNT IN RECORD BUCM1539
01761 0401 00 0 01765 ADM T1 WORD + IX(TGW) BUCM1540
01762 0401 00 0 01764 ADM T + WORD COUNT FOR INTEGRAL RECORDS BUCM1541
01763 0020 00 4 00002 TRA 2,4 = LINEAR ADDRESS IN AC BUCM1542
* BUCM1543
01764 0 00000 0 00000 T PZE TEMPORARY BUCM1544
01765 0 00000 0 00000 T1 PZE .. BUCM1545
01766 0 00000 0 00000 T2 PZE .. BUCM1546
HEAD BUCM1547
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 45
LOCAL - SETTING BUFFER AND BOUNDARIES SWITCHES
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1549
* BUCM1550
* ANALYSES THE CALL AS TO SPECIAL CASES OF BOUNDARIES BUCM1551
* TSX LOCAL,4 BUCM1552
* FOLLOWING LOCATIONS MUST BE SET BUCM1553
* NDBLOC BUCM1554
* NEXCUR BUCM1555
* RELADR BUCM1556
* MAY SET FOLLOWING SWITCHES BUCM1557
* BAIL LAST RECORD (IN BUFFER) NOT YET WRITTEN BUCM1558
* BBUF BEGINS IN THE RECORD IN BUFFER BUCM1559
* BLAST BUFFER CONTAINS THE LAST RECORD OF FILE BUCM1560
* BREC BEGINS WITH 1ST WORD OF A RECORD BUCM1561
* BUFIN RECORD IN BUFFER INCLUDED IN THE DEAL BUCM1562
* CHG CONTENTS OF BUFFER DIFFERS FROM FILE BUCM1563
* EBUF ENDS IN THE RECORD IN BUFFER BUCM1564
* EREC ENDS WITH LAST WORD OF A RECORD BUCM1565
* LAST CALL INCLUDES THE LAST RECORD OF THE FILE BUCM1566
* MREC CALL INCLUDES SEVERAL RECORDS BUCM1567
* PRIM BUFFER CONTAINS A COMPLETE RECORD BUCM1568
* BUCM1569
* SETS FOLLOWING LOCATIONS BUCM1570
* RELADR+1 WORD INDEX,,RECORD NR. BUCM1571
* NDBLOC+1 WORD INDEX,,RECORD NR. BUCM1572
* NEXCUR+1 WORD INDEX,,RECORD NR. BUCM1573
* BUCM1574
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1575
* BUCM1576
* BUCM1577
* CHECKS IF THE CALL STARTS AT THE BEGINNING OF A RECORD BUCM1578
01767 LOCAL SYN * BUCM1579
01767 SXA .13,4 BUCM1580
01770 SXA .18,3 BUCM1581
01771 -0500 00 0 00105 CAL RELADR BUCM1582
01772 0074 00 4 02154 TSX RECOR,4 BUCM1583
01773 -1 00037 7 00037 FIVE Z,7,Z WORD INDEX TO X7, RECORD NO. TO X5 BUCM1584
01774 SXA RELADR+1,7 BUCM1585
01775 SXD RELADR+1,5 BUCM1586
01776 SXD V,5 SAVE FOR LATER COMPARISON BUCM1587
01777 3 00001 7 02001 TXH *+2,7,1 BUCM1588
02000 0055 00 000020 SIR BREC SWITCH BEGINNING OF RECORD BUCM1589
02001 LXD BUFREC,1,3 NO. OF RECORD IN BUFFER BUCM1590
02003 -3 00000 3 02010 TXL CF,3,0 SKIP IF NOTHING IN THE BUFFER BUCM1591
02004 SCD *+1,3 BUCM1592
02005 1 00000 5 02006 TXI *+1,5,** DIFF WITH 1ST RECORD OF CALL BUCM1593
02006 3 00000 5 02010 TXH *+2,5,0 SKIP IF DIFFERENT BUCM1594
02007 0055 00 000004 SIR BBUF 1ST RECORD IS THE SAME AS IN THE BUFFER BUCM1595
* BUCM1596
* CHECKS IF THE CALL ENDS UP WITH A RECORD BUCM1597
02010 -0500 00 0 00103 CF CAL NEXCUR BUCM1598
02011 0074 00 4 02154 TSX RECOR,4 BUCM1599
02012 -1 00037 7 00037 FIVE Z,7,Z X7 SET TO WORD IX. X5 SET TO REC. NO. BUCM1600
02013 SXA NEXCUR+1,7 BUCM1601
02014 SXD NEXCUR+1,5 BUCM1602
02015 3 00001 7 02017 TXH *+2,7,1 BUCM1603
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 46
LOCAL - SETTING BUFFER AND BOUNDARIES SWITCHES
02016 0055 00 002000 SIR EREC SWITCH END OF RECORD BUCM1604
* BUCM1605
* CHECKS IF RECORD IN BUFFER IS INVOLVED IN CALL BUCM1606
02017 -3 00000 3 02054 TXL D,3,0 SKIP IF NOTHING IN BUFFER BUCM1607
02020 0074 00 4 01735 TSX LINCOR,4 FINDS OUT LINEAR ADD. OF 1ST WORD IN BUFFERBUCM1608
02021 3 00037 0 02461 PTH =1,0,Z 1ST WORD IN BUFFER BUCM1609
02022 0560 00 0 00101 LDQ NDBLOC BUCM1610
02023 0040 00 0 02030 TLQ G BEYOND THE CALL BUCM1611
02024 0560 00 0 00105 LDQ RELADR BUCM1612
02025 0040 00 0 02027 TLQ MM SKIP IF CERTAINLY INVOLVED IN THE CALL BUCM1613
02026 0054 00 000004 RFT BBUF IF BEGINNING OF CALL IS IN THE BUFFER BUCM1614
02027 0055 00 000040 MM SIR BUFIN SWITCH BUFFER INVOLVED BUCM1615
* BUCM1616
* SETS SWITCHES ABOUT BUFFER STATUS BUCM1617
02030 G SYN * BUCM1618
02030 0560 00 1 00020 LDQ CHNG,1 BUCM1619
02031 -0773 00 0 00001 RQL 1 BUCM1620
02032 0162 00 0 02034 TQP *+2 BUCM1621
02033 0055 00 000100 SIR CHG BUFFER DIFFERS FROM RECORD IN FILE BUCM1622
02034 -0773 00 0 00001 RQL 1 BUCM1623
02035 0162 00 0 02037 TQP *+2 BUCM1624
02036 0055 00 100000 SIR PRIM BUFFER CONTAINS A COMPLETE RECORD BUCM1625
02037 LXD NORECS,1,4 BUCM1626
02041 SCD *+1,3 BUCM1627
02042 1 00000 4 02043 TXI *+1,4,** BUCM1628
02043 3 00000 4 02054 TXH D,4,0 SKIP IF NOT LAST RECORD IN BUFFER BUCM1629
02044 0055 00 000010 SIR BLAST BUFFER CONTAINS LAST RECORD OF FILE BUCM1630
* BUCM1631
* CHECKS IF LAST RECORD IS ALREADY WRITTEN IN FILE BUCM1632
02045 -0500 00 1 00021 CAL WINDEX,1 WORD COUNT IN BUFFER BUCM1633
02046 0622 00 0 02051 STD AZ BUCM1634
02047 LXA LCOUNT,1,4 BUCM1635
02051 3 00000 4 02054 AZ TXH D,4,** SKIP IF ONLY PART OF RECORD IN BUFFER BUCM1636
02052 0056 00 100000 RNT PRIM AND IF NOT PRIMED BUCM1637
02053 0055 00 000002 SIR BAIL THEN LAST RECORD NOT YET WRITTEN BUCM1638
* BUCM1639
* CHECKS IF CALL INVOLVES LAST RECORD OF FILE BUCM1640
02054 D SYN * BUCM1641
02054 -0500 00 0 00101 CAL NDBLOC LAST WORD ADDRESS IN CALL BUCM1642
02055 0074 00 4 02154 TSX RECOR,4 CONVERT BUCM1643
02056 -2 00037 0 00102 SIX NDBLOC+1,0,Z RECNO. IN IX6 BUCM1644
02057 SXD NDBLOC+1,6 BUCM1645
02060 SXD AP,6 BUCM1646
02061 LXD NORECS,1,5 BUCM1647
02063 3 00000 5 02065 AP TXH *+2,5,** SKIP IF NORECS .G. LAST RECORD CONCERNED BUCM1648
02064 0055 00 010000 SIR LAST BUCM1649
* BUCM1650
* CHECKS IF CALL TERMINATES IN THE CURRENT BUFFER BUCM1651
02065 -3 00000 3 02072 TXL CG,3,0 SKIP IF NOTHING IN THE BUFFER BUCM1652
02066 SCD *+1,3 BUCM1653
02067 1 00000 6 02070 TXI *+1,6,** NDBLOC - BUFFER NR. BUCM1654
02070 3 00000 6 02072 TXH *+2,6,0 SKIP IF DIFFERENT BUCM1655
02071 0055 00 000400 SIR EBUF SAME, ENDS IN BUFFER BUCM1656
* BUCM1657
* CHECKS IF CALL INVOLVES SEVERAL RECORDS BUCM1658
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 47
LOCAL - SETTING BUFFER AND BOUNDARIES SWITCHES
02072 CG LXD NDBLOC+1,5 LAST RECORD NR. IN CALL BUCM1659
02073 -3 00000 5 02075 V TXL *+2,5,** SKIP IF SAME AS FIRST BUCM1660
02074 0055 00 020000 SIR MREC MULTIPLE RECORDS CALL BUCM1661
02075 0774 00 3 00000 .18 AXT **,3 BUCM1662
02076 0774 00 4 00000 .13 AXT **,4 BUCM1663
02077 0020 00 4 00001 TRA 1,4 BUCM1664
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 48
PICK - GETS ARGUMENT FROM CALLER AND SETS BASIC LOCATIONS
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1666
* BUCM1667
* PICKS UP ARGUMENTS FROM CALLING SEQUENCE BUCM1668
* BUCM1669
* AXT LENGTH,5 LENGTH OF ARGUMENTS LIST BUCM1670
* TSX PICK,4 BUCM1671
* STORES ARGUMENTS IN THE VECTOR ARG...ARG+5 BUCM1672
* SETS FOLLOWING LOCATIONS BUCM1673
* RETURN BUCM1674
* MEMORY BUCM1675
* BUFFER BUCM1676
* EOFRTN BUCM1677
* QWAIT BUCM1678
* NIDBUF BUCM1679
* MEMRY BUCM1680
* BUFR BUCM1681
* RELADR BUCM1682
* IX 1 TO FILE TABLE POINTER BUCM1683
* BUCM1684
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1685
* BUCM1686
02100 PICK SYN * BUCM1687
02100 SXA .7,4 BUCM1688
02101 SXD LCS,5 BUCM1689
02102 0774 00 4 00040 AXT ARG,4 BUCM1690
02103 1 00000 4 02104 LCS TXI *+1,4,** BUCM1691
02104 SXA BA,4 BUCM1692
02105 LXA X4,4 RESTORE IX4 AS OF CALL BUCM1693
02106 1 77777 4 02107 TXI *+1,4,-1 BUCM1694
02107 B SYN * BUCM1695
02107 -0500 00 4 00000 CAL 0,4 BUCM1696
02110 0602 00 5 00000 BA SLW **,5 STORE ARGUMENTS IN ARG...ARG+5 BUCM1697
02111 1 77777 4 02112 TXI *+1,4,-1 BUCM1698
02112 2 00001 5 02107 TIX B,5,1 BUCM1699
02113 SCA RETURN,4 SAVE RETURN TO CALLER BUCM1700
02114 SCA EOFRTN,4 SET EOF RETURN FOR BOPEN BUCM1701
02115 -0500 00 0 00040 CAL ARG PTR,TAG BUCM1702
02116 0604 00 0 00111 STI SW SAVE SWITCHES BUCM1703
02117 0074 00 4 00001 TSX GETEFA,4 BUCM1704
02120 0441 00 0 00111 LDI SW RESTORE SWITCHES BUCM1705
02121 0737 00 1 00000 PAC ,1 BUCM1706
02122 LXD LCS,5 BUCM1707
02123 -3 00002 5 02152 TXL .7,5,2 SKIP IF ONLY 2 ARGUMENTS BUCM1708
02124 LXD ARG+2,4 BUCM1709
02125 SXA EOFRTN,4 EOFRTN OR NON RELEVANT BUCM1710
02126 -3 00004 5 02137 TXL AD,5,4 SKIP IF LESS THAN 5 ARGUMENTS BUCM1711
02127 LAC ARG+2,4 BUCM1712
02130 -0500 00 4 00000 CAL 0,4 RELATIVE ADDRESS BUCM1713
02131 0602 00 0 00105 SLW RELADR BUCM1714
02132 LXA ARG+5,4 NIDBUF FOR BREAD/BWRITE BUCM1715
02133 3 00005 5 02135 TXH *+2,5,5 SKIP IF 6 ARGUMENTS BUCM1716
02134 LXD ARG+4,4 NIDBUF FOR BTRUNC BUCM1717
02135 SXA NIDBUF,4 BUCM1718
02136 LXD ARG+3,4 BUCM1719
02137 AD SYN * BUCM1720
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 49
PICK - GETS ARGUMENT FROM CALLER AND SETS BASIC LOCATIONS
02137 SXA QWAIT,4 QWAIT OR FINISH BUCM1721
02140 LAC ARG+1,5 BUCM1722
02141 -0500 00 5 00000 CAL ,5 MEMORY FLAG BUCM1723
02142 0602 00 0 00100 SLW MEMORY USER'S MEMORY FLAG BUCM1724
02143 0767 00 0 00017 ALS 15 SET IN TAG BUCM1725
02144 0625 00 0 00032 STT MEMRY AND IN MEMORY CELL BUCM1726
02145 LDC ARG+1,5 BUCM1727
02146 -0500 00 5 00000 CAL ,5 BUFFER FLAG BUCM1728
02147 0602 00 0 00047 SLW BUFFER BUFFER MEMORY FLAG BUCM1729
02150 0767 00 0 00017 ALS 15 SET IN TAG BUCM1730
02151 0625 00 0 00030 STT BUFR AND IN BUFFER CELL BUCM1731
02152 0774 00 4 00000 .7 AXT **,4 BUCM1732
02153 0020 00 4 00001 TRA 1,4 BUCM1733
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 50
RECOR - COMPUTES RECORD AND WORD INDEX FROM LINEAR ADDRESS
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1735
* BUCM1736
* FAP BUCM1737
* RECOR COMPUTES RECORD NO. AND RELATIVE WORD IN RECORD BUCM1738
* FROM A GIVEN WORD NUMBER IN FILE BUCM1739
* CALLING SEQUENCE BUCM1740
* IX1 POINTS TO THE ACTIVE FILE STATUS TABLE BUCM1741
* CAL WORD WORD RELATIVE ADDRESS BUCM1742
* TSX RECOR,4 BUCM1743
* TGR WORD,TGW,REC BUCM1744
* IF TGR AND TGW ARE ZERO, REC AND WORD WILL CONTAIN THE RECORD BUCM1745
* NUMBER AND THE WORD NUMBER IN THE RECORD. BUCM1746
* IF TGR OR TGW ARE NOT ZERO, THE CORRESPONDING INDEX REGISTER WILL BUCM1747
* CONTAIN THE DIFFERENCE BETWEEN THE RECORD NUMBER AND THE PREVIOUS BUCM1748
* CONTENT OF REC. DITTO FOR WORD NUMBER AND PREVIOUS CONTENT OF WORD. BUCM1749
* I.E. RECNO.=REC+C(IX(TGR)) ** WORDNO.=WORD+C(IX(TGW)) BUCM1750
* BUCM1751
* NOVEMBER 64 LOUIS POUZIN BUCM1752
* BUCM1753
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1754
BUCM1755
BUCM1756
02154 RECOR SYN * BUCM1757
HEAD R BUCM1758
02154 SXA X4,4 BUCM1759
02155 0600 00 0 02234 STZ T CLEAR T BUCM1760
02156 0100 00 0 02166 TZE G SKIP IF ADDRESS IS ZERO BUCM1761
02157 -0130 00 0 00000 XCL LINEAR ADDRESS TO MQ BUCM1762
02160 -0500 00 1 00013 CAL RCOUNT,1 BUCM1763
02161 -0320 00 0 00027 ANA 0$ADMSK KEEP ADDRESS BUCM1764
02162 0602 00 0 02234 SLW T BUCM1765
02163 -0130 00 0 00000 XCL RCOUNT TO MQ. LIN. AD. TO AC BUCM1766
02164 0401 00 0 02234 ADM T WORD ADDRESS + NUMBER OF WORDS PER RECORD BUCM1767
02165 0402 00 0 02461 SUB =1 BUCM1768
02166 G SYN * BUCM1769
02166 -0765 00 0 00044 LGR 36 CLEAR AC, SET MQ BUCM1770
02167 0221 00 0 02234 DVP T MQ = RECORD NUMBER BUCM1771
02170 0520 00 0 02234 ZET T IF T = 0, THEN ADDRESS ZERO IN FILE BUCM1772
02171 0401 00 0 02461 ADM =1 AC = WORD NUMBER IN BUFFER BUCM1773
02172 0602 00 0 02234 SLW T SAVE IT BUCM1774
02173 -0500 00 4 00001 CAL 1,4 ARGUMENT FROM CALLER BUCM1775
02174 -0737 00 7 00000 PDC ,7 PREVIOUS RECORD NR. POINTER BUCM1776
02175 0737 00 6 00000 PAC ,6 PREVIOUS WORD ADDRESS POINTER BUCM1777
02176 0625 00 0 02230 STT C SAVE TGW BUCM1778
02177 0771 00 0 00022 ARS 18 BUCM1779
02200 0625 00 0 02231 STT D SAVE TGR BUCM1780
02201 0771 00 0 00017 ARS 15 BUCM1781
02202 -0100 00 0 02205 TNZ A SKIP IF TGR SPECIFIED BUCM1782
02203 -0600 00 7 00000 STQ ,7 RETURN RECORD NUMBER BUCM1783
02204 0020 00 0 02214 TRA B BUCM1784
BUCM1785
02205 A SYN * BUCM1786
02205 -0130 00 0 00000 XCL RECNO INTO AC. BUCM1787
02206 0737 00 4 00000 PAC ,4 RECORD NUMBER BUCM1788
02207 -0500 00 7 00000 CAL ,7 PREVIOUS RECORD NO. BUCM1789
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 51
RECOR - COMPUTES RECORD AND WORD INDEX FROM LINEAR ADDRESS
02210 0767 00 0 00022 ALS 18 BUCM1790
02211 0622 00 0 02212 STD *+1 BUCM1791
02212 1 00000 4 02213 TXI *+1,4,** PREVIOUS - CURRENT BUCM1792
02213 SCA D,4 SAVE RECORD DEVIATION BUCM1793
BUCM1794
02214 B SYN * PROCESS WORD POINTER BUCM1795
02214 -0500 00 0 02230 CAL C CHECK TGW ZERO BUCM1796
02215 -0320 00 0 02466 ANA =O700000 KEEP TAG BUCM1797
02216 -0100 00 0 02222 TNZ E SKIP IF TGW SPECIFIED BUCM1798
02217 -0500 00 0 02234 CAL T BUCM1799
02220 0621 00 6 00000 STA ,6 RETURN WORD POINTER BUCM1800
02221 0020 00 0 02231 TRA D BUCM1801
BUCM1802
02222 E SYN * BUCM1803
02222 LAC T,4 WORD POINTER BUCM1804
02223 -0500 00 6 00000 CAL ,6 PREVIOUS WORD POINTER BUCM1805
02224 0767 00 0 00022 ALS 18 BUCM1806
02225 0622 00 0 02226 STD *+1 BUCM1807
02226 1 00000 4 02227 TXI *+1,4,** PREVIOUS - CURRENT BUCM1808
02227 SCA C,4 SAVE WORD DEVIATION BUCM1809
BUCM1810
02230 F SYN * BUCM1811
02230 0774 00 0 00000 C AXT **,** SET TGW BUCM1812
02231 0774 00 0 00000 D AXT **,** SET TGR BUCM1813
02232 0774 00 4 00000 X4 AXT **,4 BUCM1814
02233 0020 00 4 00002 TRA 2,4 BUCM1815
BUCM1816
02234 0 00000 0 00000 T PZE TEMPORARY BUCM1817
HEAD BUCM1818
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 52
SPLIT - BREAKING CALL INTO RECORD BOUNDARIES
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1820
* BUCM1821
* SPLIT. BREAKS BLOC INTO GROUP OF WORDS, ACCORDING TO RECORD BOUNDARIESBUCM1822
* BUCM1823
* TSX SPLIT,4 BUCM1824
* FOLLOWING LOCATIONS MUST BE SET BUCM1825
* RELADR AND RELADR+1 BUCM1826
* BLOC BUCM1827
* NEXCUR AND NEXCUR+1 BUCM1828
* IX1 SET TO FILE POINTER BUCM1829
* FOLLOWING LOCATIONS WILL BE SET BUCM1830
* CHK1 BUCM1831
* CHKL1 BUCM1832
* CHK2 BUCM1833
* CHKL2 BUCM1834
* CHK3 BUCM1835
* CHKL3 BUCM1836
* CHK1 IS SAME AS BEGINNING LOCATION IN USER'S MEMORY BUCM1837
* CHKL1 IS THE NO. OF WORDS UP TO THE NEXT RECORD BUCM1838
* CHK2 IS THE BEGINNING LOCATION OF AN INTEGRAL NO. OF RECORDS BUCM1839
* CHKL2 IS THE LENGTH OF THAT PORTION OF THE FILE BUCM1840
* CHK3 IS THE LEFTOVER BUCM1841
* CHKL3 IS ITS LENGTH BUCM1842
* CHKL1 AND CHKL3 MAY BE PRESET FOR FORCING A SPECIAL SPLITTING BUCM1843
* BUCM1844
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * BUCM1845
* BUCM1846
02235 SPLIT SYN * BUCM1847
02235 0056 00 020000 RNT MREC IF SINGLE RECORD BUCM1848
02236 0020 00 4 00001 TRA 1,4 IGNORE BUCM1849
02237 SXA .8,4 BUCM1850
02240 LXD BLOC,4 WORD COUNT BUCM1851
02241 LXA RELADR+1,7 WORD INDEX OF BEGIN. BUCM1852
02242 1 77777 7 02243 TXI *+1,7,-1 IX7 = WORD - 1 BUCM1853
02243 -3 00000 7 02251 TXL AL,7,0 SKIP IF ZERO. BEGINS A RECORD BUCM1854
02244 SCD AM,7 BUCM1855
02245 LXA RCOUNT,1,7 WORD COUNT PER RECORD BUCM1856
02247 1 00000 7 02250 AM TXI *+1,7,** - WORD INDEX + 1 BUCM1857
02250 SXA CHKL1,7 = LENGTH OF 1ST CHUNK BUCM1858
02251 AL LXA NEXCUR+1,7 NEXT POINTER WORD IX. BUCM1859
02252 1 77777 7 02253 TXI *+1,7,-1 BUCM1860
02253 -3 00000 7 02255 TXL *+2,7,0 BUCM1861
02254 SXA CHKL3,7 SET LENGTH OF LAST CHUNK BUCM1862
02255 0754 00 4 00000 PXA ,4 TOTAL LENGTH BUCM1863
02256 -0400 00 0 00051 SBM CHKL1 - 1ST CHUNK BUCM1864
02257 -0400 00 0 00055 SBM CHKL3 - 3RD CHUNK BUCM1865
02260 0602 00 0 00053 SLW CHKL2 = 2ND CHUNK BUCM1866
02261 -0500 00 0 00046 CAL BLOC STARTING ADDRESS BUCM1867
02262 0621 00 0 00050 STA CHK1 BUCM1868
02263 0401 00 0 00051 ADM CHKL1 + 1ST LENGTH BUCM1869
02264 0621 00 0 00052 STA CHK2 = 2ND ADDRESS BUCM1870
02265 0401 00 0 00053 ADM CHKL2 + 2ND LENGTH BUCM1871
02266 0621 00 0 00054 STA CHK3 = 3RD ADDRESS BUCM1872
02267 0774 00 4 00000 .8 AXT **,4 BUCM1873
02270 0020 00 4 00001 TRA 1,4 GO TO CP BUCM1874
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 53
CALLS TO THE STRATEGY MODULE
* BUCM1876
02271 STRAGY SYN * -IX1 SET TO FILE TABLE BUCM1877
02271 -0500 00 1 00013 CAL F,1 DEVICE CODE BUCM1878
02272 0771 00 0 00017 ARS 15 RETURNS IN IX7 THE POINTER TO BUCM1879
02273 -0320 00 0 02463 ANA =O7 THE APPROPRIATE STRATEGY MODULE BUCM1880
02274 0737 00 7 00000 PAC ,7 BUCM1881
02275 SXA CRAMSV,7 SAVE IR7 FOR QCRAM BUCM1882
02276 0604 00 0 00111 STI SW SAVE SWITCHES BUCM1883
02277 0441 00 0 00111 BV LDI SW RESTORE SWITCHES BUCM1884
02300 0020 00 4 00001 TRA 1,4 BUCM1885
* BUCM1887
* ROUTINE TO CHECK NO. OF POSSIBLE REQUESTS IN QUEUE BUCM1888
02301 QUEUE SXA .1,4 BUCM1889
02302 0601 00 0 00110 STO REQCT SAVE NO OF REQUESTS (KEEP SIGN BIT PLEASE) BUCM1890
02303 0074 00 4 02271 TSX STRAGY,4 GET STRATEGY CODE BUCM1891
02304 0522 00 7 00115 XEC QTESTF,7 BUCM1892
02305 0761 00 1 00000 EFA 0,1 BUCM1893
02306 3 02437 0 00110 PAR REQCT,,QWAIT BUCM1894
02307 0774 00 4 00000 .1 AXT **,4 BUCM1895
02310 0020 00 0 02277 TRA BV BUCM1896
* BUCM1897
02311 WRITE SXA .2,4 BUCM1898
02312 0074 00 4 02271 TSX STRAGY,4 SET IX7 BUCM1899
02313 0522 00 7 00126 XEC WRITEF,7 BUCM1900
02314 0761 00 1 00000 EFA 0,1 BUCM1901
02315 3 00072 0 00077 PAR LABEL,,IOWR BUCM1902
02316 3 02457 0 02450 PAR QCRAM,,NSPACE BUCM1903
02317 0600 00 0 00072 STZ IOWR RESET LIST BUCM1904
02320 0774 00 4 00000 .2 AXT **,4 BUCM1905
02321 0020 00 0 02277 TRA BV BUCM1906
* BUCM1907
02322 READ SXA .3,4 BUCM1908
02323 0074 00 4 02271 TSX STRAGY,4 SET IX7 BUCM1909
02324 0522 00 7 00120 XEC READF,7 BUCM1910
02325 0761 00 1 00000 EFA 0,1 BUCM1911
02326 3 00060 0 00077 PAR LABEL,,IORD BUCM1912
02327 3 00000 0 02450 PAR QCRAM BUCM1913
02330 0600 00 0 00060 STZ IORD RESET LIST BUCM1914
02331 0774 00 4 00000 .3 AXT **,4 BUCM1915
02332 0020 00 0 02277 TRA BV BUCM1916
* BUCM1917
02333 REWRT SXA .4,4 BUCM1918
02334 0074 00 4 02271 TSX STRAGY,4 SET IX7 BUCM1919
02335 0522 00 7 00123 XEC REWRTF,7 BUCM1920
02336 0761 00 1 00000 EFA 0,1 BUCM1921
02337 3 00065 0 00077 PAR LABEL,,IORW BUCM1922
02340 3 00000 0 02450 PAR QCRAM BUCM1923
02341 0600 00 0 00065 STZ IORW RESET LIST BUCM1924
02342 0774 00 4 00000 .4 AXT **,4 BUCM1925
02343 0020 00 0 02277 TRA BV BUCM1926
* BUCM1927
02344 OPEN SXA .11,4 BUCM1928
02345 0074 00 4 02271 TSX STRAGY,4 SET IX7 BUCM1929
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 54
CALLS TO THE STRATEGY MODULE
02346 0522 00 7 00112 XEC OPENF,7 BUCM1930
02347 0761 00 1 00000 EFA 0,1 BUCM1931
02350 3 00000 0 02454 PAR ERROR BUCM1932
02351 0774 00 4 00000 .11 AXT **,4 BUCM1933
02352 0020 00 0 02277 TRA BV BUCM1934
* BUCM1935
02353 DFILE SXA .12,4 BUCM1936
02354 0074 00 4 02271 TSX STRAGY,4 SET IX7 BUCM1937
02355 0522 00 7 00131 XEC DFILEF,7 BUCM1938
02356 0761 00 1 00000 EFA 0,1 BUCM1939
02357 3 02450 0 00077 PAR LABEL,,QCRAM BUCM1940
02360 0774 00 4 00000 .12 AXT **,4 BUCM1941
02361 0020 00 0 02277 TRA BV BUCM1942
* BUCM1943
02362 CLOSE SXA .17,4 BUCM1944
02363 0074 00 4 02271 TSX STRAGY,4 BUCM1945
02364 0522 00 7 00134 XEC CLOSEF,7 BUCM1946
02365 0761 00 1 00000 EFA 0,1 BUCM1947
02366 0774 00 4 00000 .17 AXT **,4 BUCM1948
02367 0020 00 0 02277 TRA BV BUCM1949
* BUCM1950
02370 -0774 00 7 00060 READL AXC IORD,7 BUCM1951
02371 0020 00 0 02375 TRA BK BUCM1952
02372 -0774 00 7 00072 WRITL AXC IOWR,7 BUCM1953
02373 0020 00 0 02375 TRA BK BUCM1954
02374 -0774 00 7 00065 REWRTL AXC IORW,7 BUCM1955
02375 0774 00 6 00005 BK AXT IOLEN,6 BUCM1956
02376 -2 00001 6 02404 TNX AY,6,1 SKIP IF QUEUE FULL BUCM1957
02377 0520 00 7 00000 ZET 0,7 SEARCH FOR 1ST AVAILABLE REQUEST BUCM1958
02400 1 77777 7 02376 TXI *-2,7,-1 IN LIST BUCM1959
02401 0602 00 7 00000 SLW 0,7 SET REQUEST BUCM1960
02402 0600 00 7 00001 STZ 1,7 CLEARS NEXT REQUEST BUCM1961
02403 0020 00 4 00001 TRA 1,4 BUCM1962
* BUCM1963
02404 AY SCD *+1,4 SETS LOCATION BUCM1964
02405 -3 00000 0 02454 BRA ERROR,,** FOR DEBUGGING BUCM1965
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 55
SAVE - RESTORE - INDEX REGISTERS 1, 2, 3, 4
* BUCM1967
02406 SAV SYN * SAVE INDEX REGISTERS BUCM1968
02406 SXA X1,1 BUCM1969
02407 SXA X2,2 BUCM1970
02410 SXA X3,3 BUCM1971
02411 SXA X4,4 5, 6, 7 ARE TEMPORARY BUCM1972
02412 0441 00 0 00037 LDI Z CLEAR INDICATORS BUCM1973
02413 0774 00 7 00053 AXT NDATA-DATA,7 BUCM1974
02414 0604 00 7 00113 STI NDATA,7 CLEARS STORAGE AREA BUCM1975
02415 2 00001 7 02414 TIX *-1,7,1 BUCM1976
02416 0020 00 5 00001 TRA 1,5 BUCM1977
* BUCM1979
02417 REST SYN * RESTORE INDEX REGISTERS BUCM1980
02417 0774 00 1 00000 X1 AXT **,1 BUCM1981
02420 0774 00 2 00000 X2 AXT **,2 BUCM1982
02421 0774 00 3 00000 X3 AXT **,3 BUCM1983
02422 0774 00 4 00000 X4 AXT **,4 BUCM1984
02423 -0500 00 0 00056 CAL DEV RETURNS NORECS DEVIATION BUCM1985
02424 0020 00 5 00001 TRA 1,5 BUCM1986
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 56
COMMON RETURNS - ERROR RETURNS
* BUCM1988
02425 3 00000 0 00000 RETURN PAR ** RETURN ADDRESS TO CALLER BUCM1989
02426 0054 00 001000 RFT EOF IF END OF FILE REACHED BUCM1990
02427 0020 00 0 02432 TRA EOFRTN THEN TAKE EOF RETURN BUCM1991
02430 0074 00 5 02417 TSX REST,5 RESTORE REGISTERS BUCM1992
02431 0020 60 0 02425 TRA* RETURN BACK TO THE CALLER BUCM1993
* BUCM1994
* BUCM1995
* END OF FILE RETURN. WORD COUNT PROCESSED IN AC. BUCM1996
* BUCM1997
02432 3 00000 0 00000 EOFRTN PAR ** BUCM1998
02433 0074 00 5 02417 TSX REST,5 RESTORE REGISTERS BUCM1999
02434 LXD BLOC,5 WORD COUNT ACCEPTED BUCM2000
02435 0754 00 5 00000 PXA ,5 SET IN AC BUCM2001
02436 0020 60 0 02432 TRA* EOFRTN BUCM2002
* BUCM2003
* QWAIT FOR ANY DELAYED PROCESS OF THE CALL BUCM2004
* BUCM2005
02437 3 00000 0 00000 QWAIT PAR ** BUCM2006
02440 0074 00 5 02417 TSX REST,5 RESTORE REGISTERS BUCM2007
02441 0020 60 0 02437 TRA* QWAIT BUCM2008
* BUCM2009
* PVIOL FOR PROTECTION MODE VIOLATION OCCURING DURING THE IO PROCESS BUCM2010
* BUCM2011
02442 3 00000 0 00000 PVIOL PAR ** BUCM2012
02443 0074 00 5 02417 TSX REST,5 RESTORE REGISTERS BUCM2013
02444 0020 60 0 02442 TRA* PVIOL BUCM2014
* BUCM2015
* NIDBUF WHEN BUFFER REQUIRED AND NONE ASSIGNED BUCM2016
* BUCM2017
02445 3 00000 0 00000 NIDBUF PAR ** BUCM2018
02446 0074 00 5 02417 TSX REST,5 BUCM2019
02447 0020 60 0 02445 TRA* NIDBUF BUCM2020
* BUCM2021
* QCRAM IS AN ABNORMAL RETURN, SINCE QTEST IS CALLED BEFOREHAND BUCM2022
* BUCM2023
02450 QCRAM SYN * BUCM2024
02450 -0625 00 0 02451 STL *+1 SETS LOCATION BUCM2025
02451 3 00000 0 00000 BRN ** FOR DEBUGGING BUCM2026
02452 0774 00 7 00000 CRAMSV AXT **,7 RESTORE STRATEGY MODULE POINTER BUCM2027
02453 0020 00 4 00000 TRA 0,4 RETURN TO THE SAME CALL BUCM2028
* BUCM2029
* ERROR FOR ALL NON SPECIFIC ERRORS OCCURENCES BUCM2030
* BUCM2031
02454 3 00000 0 00000 ERROR PAR ** BUCM2032
02455 0074 00 5 02417 TSX REST,5 RESTORE REGISTERS BUCM2033
02456 0020 60 0 02454 TRA* ERROR BUCM2034
* BUCM2035
02457 NSPACE SCD *+1,4 SETS LOCATION BUCM2036
02460 -3 00000 0 02454 BRA ERROR,,** FOR DEBUGGING BUCM2037
BUCM2038
02461 RMT * FLUSH REMOTE SEQUENCES BUCM2039
BUCM2040
BUCM2042
END BUCM2043
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 57
COMMON RETURNS - ERROR RETURNS
LITERALS
02461 000000000001
02462 000000000002
02463 000000000007
02464 000000100000
02465 000000600000
02466 000000700000
02467 000001000001
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 1
POST PROCESSOR ASSEMBLY DATA
2470 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
360 A 356, 360
2107 B 2107, 2112
446 C 443, 446
2054 D 2017, 2043, 2051, 2054
1144 E 653, 1144
13 F 27, 2271
2030 G 2023, 2030
1201 H 1201, 1313
1264 J 1227
1400 K 1362
1132 L 476, 1132
766 M 500, 766
1527 N 1520, 1527
14 P 27
1640 Q 1524, 1640
14 R 27
14 S 27
112 T 1543, 1545, 1562
1172 U 723, 752, 1146, 1172
2073 V 1776
14 W 27
470 X 456, 470
515 Y 510
37 Z 377, 1155, 1247, 1275, 1355, 1446, 1456, 1773, 2012, 2021, 2056, 2412
1714 AA 1673, 1714
430 AB 424
1731 AC 1713, 1731
2137 AD 2126, 2137
1143 AE 1137, 1143
607 AF 541, 607
624 AG 615
626 AH 765, 1043
1420 AJ 1411
1014 AK 1006, 1014
2251 AL 2243
2247 AM 2244
154 AN 146
157 AO 151
2063 AP 2060
1555 AR 1550
636 AS 502, 636, 1135
731 AT 651, 731
666 AU 655
754 AV 730, 754
750 AW 734, 750
2404 AY 2376
2051 AZ 2046
2110 BA 2104
1072 BB 1052, 1072
336 BC 326, 336
1566 BD 1563, 1566
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 2
POST PROCESSOR ASSEMBLY DATA
201 BF 243
763 BG 755, 763
475 BH 414, 475
455 BJ 451, 455
2375 BK 2371, 2373
310 BL 273, 304, 310
1615 BM 1612
1651 BN 1633
715 BP 715, 732
1653 BQ 1635
1506 BR 1502, 1506
275 BS 271, 275
304 BT 274, 304
404 BU 241
2277 BV 2310, 2321, 2332, 2343, 2352, 2361, 2367
1605 BW 1556
534 BX 527, 534
542 BY 531, 542
574 BZ 567, 574
431 CA 416, 426, 431, 506, 774, 1142, 1223
1243 CB 1233, 1267
1266 CC 1237, 1266
1310 CD 1231, 1243, 1310
2010 CF 2003
2072 CG 2065
327 CH 321
516 CJ 513, 516
1044 CK 1004, 1044
1020 CL 1125
1022 CN 1121
321 CP 314, 321
264 CQ 257
266 CR 263, 266
1470 CS 1464, 1470
775 CT 771, 1075
1051 CU 1045, 1051
614 CV 610, 614
643 CW 637, 643
776 CX 767, 776
22 DR 27, 231, 1654, 1670, 1731
22 DW 27, 1213
401 FF 370, 401
2307 .1 2301
2320 .2 2311
2331 .3 2322
2342 .4 2333
1733 .5 1657
1732 .6 1660
2152 .7 2100, 2123
2267 .8 2237
2027 MM 2025
1333 OK 1322
1526 PP 1522, 1526
111 SW 556, 565, 701, 710, 1110, 1117, 1157, 1166, 1251, 1260, 1277, 1306, 1701, 1710, 1721, 1730, 2116
2120, 2276, 2277
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 3
POST PROCESSOR ASSEMBLY DATA
1220 TT 1133, 1220
2417 X1 2406
2420 X2 2407
2421 X3 2410
2422 X4 2105, 2411
40 ARG 143, 145, 155, 165, 167, 203, 205, 222, 232, 247, 251, 362, 401, 2102, 2115, 2124, 2127
2132, 2134, 2136, 2140, 2145
100 CHG 27, 714, 1072, 1511, 2033
56 DEV 1426, 1434, 1435, 2423
1000 EOF 27, 1376, 2426
4000 IOF 27, 604, 717, 1053, 1571, 1605, 1634, 1646
33 ION 113
35 IOP 113
2351 .11 2344
2360 .12 2353
2076 .13 1767
1606 .14 1533
1530 .15 1513, 1525
1637 .16 1615
2366 .17 2362
2075 .18 1770
1356 .19 1336
1636 .20 1610, 1613
1500 KUR 340, 344, 1450, 1476, 1500
2103 LCS 2101, 2122
1424 LEN 345, 1424, 1475
1443 OFF 405, 1443
33 PON 113, 334, 444, 1012, 1037, 1212, 1465, 1564, 1600, 1640
34 PTH 236, 577
35 PTW 113, 332, 1167, 1210, 1261, 1711
107 REQ 437, 442, 544, 547, 552, 570, 616, 620, 621, 1023, 1030, 1031, 1041, 1547, 1557, 1566, 1623
1630, 1631
2406 SAV 140, 162, 177, 217, 242, 244, 354, 357, 2406
0 TMP 27
200000 WFB 27, 307, 315, 516, 661, 1073, 1144, 1531
53 AFST 27
1 APND 27, 423, 455, 501, 1134, 1215, 1404, 1474
2 ASCS 27, 141
2 BAIL 27, 272, 277, 333, 654, 715, 726, 731, 1463, 1521, 2053
4 BBUF 27, 270, 511, 526, 566, 656, 766, 1003, 2007, 2026
46 BLOC 403, 407, 446, 1151, 1152, 1201, 1224, 1244, 1273, 1337, 1342, 1345, 1375, 1451, 2240, 2261, 2434
20 BREC 27, 417, 504, 514, 517, 525, 535, 540, 625, 650, 1005, 1044, 1136, 1145, 1177, 1214, 1221
1230, 1242, 2000
30 BUFR 571, 1032, 1567, 1632, 2151
50 CHK1 550, 674, 1017, 1070, 1104, 2262
52 CHK2 617, 757, 1061, 1123, 2264
54 CHK3 633, 2266
20 CHNG 27, 227, 1170, 1262, 1712, 2030
200 CLOS 27, 200, 213
40 DATA 40, 2413
400 EBUF 27, 512, 2071
2000 EREC 27, 425, 504, 607, 636, 770, 1073, 1124, 1136, 1221, 2016
3 FMAX 27
60 IORD 2326, 2330, 2370
65 IORW 2337, 2341, 2374
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 4
POST PROCESSOR ASSEMBLY DATA
72 IOWR 763, 2315, 2317, 2372
10000 LAST 27, 503, 607, 1025, 1141, 1220, 1407, 2064
13 MODE 27
0 MOVE 557, 702, 1111, 1160, 1252, 1300, 1702, 1722
20000 MREC 27, 475, 636, 652, 715, 722, 743, 751, 2074, 2235
1476 NULL 410, 454, 462, 467, 1131, 1217, 1476
2 OPCS 27, 220
2344 OPEN 235
2100 PICK 142, 164, 202, 221, 246, 361, 2100
100000 PRIM 27, 272, 530, 663, 1051, 1517, 2036, 2052
2322 READ 453, 573, 1034, 1064, 1130, 1572
2417 REST 2417, 2430, 2433, 2440, 2443, 2446, 2455
4 SACS 27
1437 TBUF 412, 1437, 1534, 1616
1453 TOFF 337, 343
5 TRCS 27, 245
1412 TSLT 1537
400000 WRIT 27, 240, 341, 355, 372, 415, 450, 477, 631, 1140, 1145, 1177, 1211, 1214, 1221, 1230, 1236
1400, 1501
27 ADMSK 156, 1415, 1440, 1754, 2161
10 BLAST 27, 605, 643, 720, 736, 741, 1536, 1540, 1552, 1574, 1624, 1644, 2044
217 BOPEN 0, 217
357 BREAD 0, 357
6 BRICS 27, 40, 360
242 BSAVE 0, 242
40 BUFIN 27, 461, 507, 772, 1132, 2027
4 CHKCS 27, 163
51 CHKL1 554, 677, 1014, 1047, 1066, 1106, 2250, 2256, 2263
53 CHKL2 614, 665, 754, 1015, 1056, 1120, 2260, 2265
55 CHKL3 612, 626, 641, 1057, 2254, 2257
4 CLOCS 27, 201
2362 CLOSE 215
110 COUNT 113
2353 DFILE 352
1203 DMOVE 635, 1071, 1203
23 EFLAG 27, 1320, 1331
2454 ERROR 170, 204, 223, 252, 363, 1326, 1330, 2350, 2405, 2456, 2460
1327 FATAL 1324
13 ILOCK 27
5 IOLEN 27, 60, 65, 72, 2375
7 ..024 113, 114, 115, 116
7 ..025 116, 117, 120, 121
7 ..026 121, 122, 123, 124
7 ..027 124, 125, 126, 127
7 ..028 127, 130, 131, 132
7 ..029 132, 133, 134, 135
7 ..030 135, 136, 137, 140
561 ..057 551, 553, 555
0 ..058 550, 552, 561
2 ..059 550, 554, 562
0 ..060 550, 556, 563
704 ..077 675, 676, 700
0 ..078 674, 676, 704
2 ..079 674, 677, 705
0 ..080 674, 701, 706
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 5
POST PROCESSOR ASSEMBLY DATA
1113 ..098 1103, 1105, 1107
2 ..099 1103, 1104, 1113
0 ..100 1103, 1106, 1114
0 ..101 1103, 1110, 1115
1162 ..111 1153, 1154, 1156
0 ..112 1152, 1154, 1162
0 ..113 1152, 1163
3 ..114 1152, 1157, 1164
1254 ..127 1245, 1246, 1250
0 ..128 1244, 1246, 1254
3 ..129 1244, 1247, 1255
2 ..130 1244, 1251, 1256
1302 ..140 1272, 1274, 1276
3 ..141 1272, 1273, 1302
0 ..142 1272, 1275, 1303
2 ..143 1272, 1277, 1304
1704 ..168 1675, 1677, 1700
0 ..169 1674, 1676, 1704
2 ..170 1674, 1700, 1705
0 ..171 1674, 1706
1724 ..178 1715, 1717, 1720
2 ..179 1714, 1716, 1724
0 ..180 1714, 1720, 1725
0 ..181 1714, 1726
27 .REL. 27
77 LABEL 305, 312, 351, 440, 471, 523, 524, 601, 646, 724, 727, 733, 735, 747, 762, 1001, 1076
1173, 1311, 1406, 1414, 1416, 1422, 1516, 1602, 1626, 1642, 2315, 2326, 2337, 2357
1767 LOCAL 210, 266, 406, 1767
32 MEMRY 447, 622, 760, 1020, 1062, 1126, 2144
113 NDATA 113, 2413, 2414
40000 NDFIL 27, 425, 1363, 1366, 1376, 1466
2 OPEN1 113
3 OPEN2 114
4 OPEN3 115
112 OPENF 113, 2346
1533 PRBUF 306, 532, 660, 740, 1054, 1200, 1312, 1526, 1533
20 PRIME 27, 324, 335, 464, 600, 632, 1040, 1176, 1467, 1601, 1641
23 PRIOR 27, 234
2442 PVIOL 144, 154, 166, 206, 250, 365, 564, 707, 1116, 1165, 1257, 1305, 1332, 1707, 1727, 2444
2450 QCRAM 2316, 2327, 2340, 2357, 2450
2301 QUEUE 320, 432, 537, 667, 744, 753, 777, 1561, 1621
2437 QWAIT 172, 174, 316, 521, 533, 662, 1317, 2137, 2306, 2441
10 READ1 121
11 READ2 122
12 READ3 123
120 READF 121, 2324
2370 READL 445, 452, 572, 1013, 1021, 1033, 1063, 1127, 1565, 1570
2154 RECOR 1445, 1772, 2011, 2055, 2154
5 RELOC 27
110 REQCT 113, 346, 2302, 2306
2333 REWRT 460, 624, 1653
4 RMODE 27
1610 RWBUF 606, 745, 1527, 1610
1406 SLAST 441, 1002, 1055
2235 SPLIT 411, 613, 642, 1050, 2235
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 6
POST PROCESSOR ASSEMBLY DATA
36 TOLOC 1663, 1674, 1716
1463 UPBUF 1171, 1216, 1265, 1463
1474 UPFIL 474, 630, 1264, 1307, 1474
1613 WRBUF 1523, 1613
2311 WRITE 473, 764, 1652
2372 WRITL 472, 761, 1650
26 ACTLNG 27
25 AFENTY 27
16 ASGNSW 27
2 AUTHNO 27
12 AUTHOR 27
140 BASIGN 0, 140
162 BCHECK 0, 162
177 BCLOSE 0, 177
244 BTRUNC 0, 244
20 BUFADR 27, 157, 542, 672, 1022, 1077, 1147, 1234, 1437, 1546, 1627, 1666
47 BUFFER 560, 703, 1112, 1161, 1253, 1301, 1703, 1723, 2147
20 BUFREC 27, 275, 323, 465, 603, 1036, 1471, 1514, 1604, 2001
354 BWRITE 0, 354
1314 CHKERR 175, 207, 212, 253, 366
1334 CHKERX 1314
1336 CHKOFF 254, 404, 1336
24 CLOSE1 135
25 CLOSE2 136
26 CLOSE3 137
134 CLOSEF 135, 2364
2452 CRAMSV 2275
23 CURREC 27
22 DADDRS 27, 1203
12 DATELU 27
11 DAYTIM 27
22 DCOUNT 27, 1204, 1661
21 DFILE1 132
22 DFILE2 133
23 DFILE3 134
131 DFILEF 132, 2355
21 DINDEX 27, 1207, 1664
2 DUSERS 27
13 ENAME1 27
14 ENAME2 27
2432 EOFRTN 255, 1452, 2114, 2125, 2427, 2436
15 ERCALL 27
11 ERCODE 27
10 ERNAME 27
7 ERRILC 27
57 FILENG 1357, 1443
1654 FINISH 1325, 1333, 1654
7 FNAME1 27
10 FNAME2 27
6 FPRIOR 27
5 FPROBN 27
6 FPROGN 27
31 FRMLOC 1667, 1676, 1714
1 GETEFA 2117
12 IOCODE 27
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 7
POST PROCESSOR ASSEMBLY DATA
1 IOSMEM 27
23 IOTASK 27, 1315
1742 L A 1737
1743 L B 1741
1746 L E
1764 L T 1736, 1744, 1745, 1755, 1756, 1757, 1762
1765 L T1 1742, 1761
1766 L T2 1743, 1747
14 LCOUNT 27, 670, 1026, 1352, 1420, 1430, 1553, 1575, 1645, 2047
4 LIMITS 27
1735 LINCOR 376, 1354, 1455, 1735, 2020
14 LNAME1 27
15 LNAME2 27
11 LPROBN 27
12 LPROGN 27
100 MEMORY 560, 703, 1112, 1161, 1253, 1301, 1703, 1723, 2142
101 NDBLOC 262, 470, 1035, 1263, 1266, 1347, 1365, 1370, 1427, 1470, 2022, 2054, 2056, 2057, 2072
103 NEXCUR 265, 1344, 1372, 1446, 1447, 1457, 1500, 2010, 2013, 2014, 2251
2445 NIDBUF 420, 427, 430, 1535, 1617, 2135, 2447
14 NORECS 27, 310, 1350, 1412, 1424, 1431, 2037, 2061
2457 NSPACE 2316
15 POINTR 27
0 PROBNO 27
1 PROGNO 27
5 QTEST1 116
6 QTEST2 117
7 QTEST3 120
115 QTESTF 116, 2304
16 QUEUE1 27
17 QUEUE2 27
20 QUEUE3 27
21 QUEUE4 27
22 QUEUE5 27
23 QUEUE6 27
24 QUEUE7 27
2205 R A 2202, 2205
2214 R B 2204, 2214
2230 R C 2176, 2214, 2227
2231 R D 2200, 2213, 2221
2222 R E 2216, 2222
2230 R F 2230
2166 R G 2156, 2166
2234 R T 2155, 2162, 2164, 2167, 2170, 2172, 2217, 2222
2232 R X4 2154
13 RCOUNT 27, 152, 574, 611, 640, 711, 1024, 1046, 1551, 1573, 1753, 2160, 2245
16 REDREC 27, 225, 336, 373, 1504
16 REDWRD 27, 226, 1503
105 RELADR 237, 256, 261, 267, 327, 367, 400, 421, 433, 522, 545, 645, 1000, 1007, 1065, 1101, 1172
1202, 1240, 1270, 1310, 1343, 1361, 1373, 1771, 1774, 1775, 2024, 2131, 2241
2425 RETURN 161, 171, 173, 176, 214, 216, 347, 353, 1477, 2113, 2431
13 REWRT1 124
14 REWRT2 125
15 REWRT3 126
123 REWRTF 124, 2335
2374 REWRTL 457, 623, 1651
1 BUFFER CONTROL MODULE - JANUARY 65 - LOUIS POUZIN 03/04/70 1552.6 PAGE 8
POST PROCESSOR ASSEMBLY DATA
2 RNAME1 27
3 RNAME2 27
0 RPROBN 27
1 RPROGN 27
14 RWSTAT 27
1511 SAVBUF 211, 301, 515, 644, 721, 773, 775, 1143, 1511
24 SMTMP1 27
25 SMTMP2 27
2271 STRAGY 2271, 2303, 2312, 2323, 2334, 2345, 2354, 2363
53 TBLMIN 27
3 URCODE 27
21 WINDEX 27, 160, 230, 303, 325, 331, 466, 576, 657, 713, 737, 1042, 1175, 1225, 1473, 1541, 1577
1622, 2045
16 WRITE1 127
17 WRITE2 130
20 WRITE3 131
126 WRITEF 127, 2313
17 WRTREC 27, 342, 371, 1507
17 WRTWRD 27, 1506
0REFERENCES TO UNDEFINED SYMBOLS
0 ..061 552
0 ..066 556
0 ..081 676
0 ..085 701
0 ..103 1106
0 ..106 1110
0 ..115 1154
0 ..131 1246
0 ..145 1275
0 ..172 1676
0 ..184 1720
0 NO ERROR IN ABOVE ASSEMBLY.
IOCMB BCD 02/22/71 1719.3 20353 00000
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 1
SYSTEM MACROS AND EQUIVALENCE
00310 ENTRY IOBEGN RESUME I/O FOR USER(S) IOCM0004
00252 ENTRY IOHALT BLOCK I/O FOR USER(S) IOCM0005
00300 ENTRY DRAIN WAIT FOR ALL I/O TO TERMINATE IOCM0006
00323 ENTRY IORST RE-START I/O AFTER LOST TRAP IOCM0007
IOCM0008
00333 ENTRY SSETUP ASSOCIATE ACTIVE FILE WITH I/O STATUS TABLEIOCM0009
00352 ENTRY CNTIO DETERMINE LENGTH OF I/O LIST, NO. RECORDS IOCM0010
IOCM0011
00043 ENTRY QUINT INITIALIZE USER'S QUEUES IOCM0012
00061 ENTRY QTST TEST AVAILABILITY OF QUEUE SPACE IOCM0013
00112 ENTRY QGET ENTER QUEUE IN SEQUENCE IOCM0014
00167 ENTRY QSCRP DELETE QUEUES PERTAINING TO GIVEN FILE IOCM0015
00221 ENTRY QDEL DELETE SPECIFIC ENTRY FROM USER'S QUEUES IOCM0016
IOCM0017
00404 ENTRY FNDUSR FIND USER TO RUN IOCM0018
00434 ENTRY NXTUSR FIND ANOTHER USER IOCM0019
00437 ENTRY NXBEAD FIND NEXT QUEUE BEAD FOR THIS USER IOCM0020
IOCM0021
00475 ENTRY PROLST PROCESS LIST FROM USER'S QUEUES IOCM0022
00653 ENTRY TGTEFA GETEFA, TRAP-TIME IOCM0023
IOCM0024
EXTERN QINIT,RETQUE,GETQUE,QSCRAP,QTEST ENTRIES IN QMAN2B IOCM0025
IOCM0026
EXTERN UTABLE,USRTBL,PRIORT SCHEDULING TABLES IOCM0027
EXTERN GETEFA USED BY SETUP (CALLED ENABLED) IOCM0028
IOCM0029
INSERT IOEQU IOCM0030
IOEQ0001
..... FILE INPUT/OUTPUT SYSTEM EQUIVALENCE PACKAGE ..... IOEQ0002
IOEQ0003
00000 503145316360 QINIT
00001 512563506425 RETQUE
00002 272563506425 GETQUE
00003 506223512147 QSCRAP
00004 506325626360 QTEST
00005 646321224325 UTABLE
00006 646251632243 USRTBL
00007 475131465163 PRIORT
00010 272563252621 GETEFA
00011 314630436301 IOHLT1
00012 314630436302 IOHLT2
00013 314630436303 IOHLT3
00014 314622274501 IOBGN1
00015 314622274502 IOBGN2
00016 314622274503 IOBGN3
00017 245121314501 DRAIN1
00020 245121314502 DRAIN2
00021 245121314503 DRAIN3
00022 314651626301 IORST1
00023 314651626302 IORST2
00024 314651626303 IORST3
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 2
SYSTEM MACROS AND EQUIVALENCE
00002 DUSERS EQU 2 MAX. NO. OF USERS OF I/O SYSTEM IOEQ0004
00003 FMAX EQU 3 MAX. NO. OF DEVICES AVAILABLE IN I/O SYSTEMIOEQ0005
00001 IOSMEM EQU 1 MEMORY WHERE I/O SYSTEM RESIDES (1=A, 2=B) IOEQ0006
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 3
SYSTEM MACROS AND EQUIVALENCE
00000 .REL. SET 0 INITIALIZE RELATIVE A.F.S.T. ADDRESS IOEQ0008
IOEQ0009
SETWRD MACRO SYMBOL TO SET UP ACTIVE FILE ENTRIES IOEQ0010
IRP SYMBOL .. IOEQ0011
PMC ON .. IOEQ0012
SYMBOL SYN .REL. .. IOEQ0013
PMC OFF .. IOEQ0014
IRP .. IOEQ0015
.REL. SET .REL.+1 .. BUMP RELATIVE ADDRESS IOEQ0016
SETWRD END .. IOEQ0017
IOEQ0018
00027 SETWRD (RPROBN) IOEQ0019
00000 RPROBN SYN .REL. IOEQ0019.001
00027 SETWRD (RPROGN) IOEQ0020
00001 RPROGN SYN .REL. IOEQ0020.001
00027 SETWRD (RNAME1) IOEQ0021
00002 RNAME1 SYN .REL. IOEQ0021.001
00027 SETWRD (RNAME2) IOEQ0022
00003 RNAME2 SYN .REL. IOEQ0022.001
00027 SETWRD (RMODE) IOEQ0023
00004 RMODE SYN .REL. IOEQ0023.001
00027 SETWRD (FPROBN) IOEQ0024
00005 FPROBN SYN .REL. IOEQ0024.001
00027 SETWRD (FPROGN) IOEQ0025
00006 FPROGN SYN .REL. IOEQ0025.001
00027 SETWRD (FNAME1) IOEQ0026
00007 FNAME1 SYN .REL. IOEQ0026.001
00027 SETWRD (FNAME2) IOEQ0027
00010 FNAME2 SYN .REL. IOEQ0027.001
00027 SETWRD (DAYTIM,LPROBN) IOEQ0028
00011 DAYTIM SYN .REL. IOEQ0028.001
00011 LPROBN SYN .REL. IOEQ0028.001
00027 SETWRD (DATELU,AUTHOR,LPROGN) IOEQ0029
00012 DATELU SYN .REL. IOEQ0029.001
00012 AUTHOR SYN .REL. IOEQ0029.001
00012 LPROGN SYN .REL. IOEQ0029.001
00027 SETWRD (MODE,ILOCK,F,RCOUNT) IOEQ0030
00013 MODE SYN .REL. IOEQ0030.001
00013 ILOCK SYN .REL. IOEQ0030.001
00013 F SYN .REL. IOEQ0030.001
00013 RCOUNT SYN .REL. IOEQ0030.001
00027 SETWRD (RWSTAT,S,W,R,NORECS,P,LCOUNT,LNAME1) IOEQ0031
00014 RWSTAT SYN .REL. IOEQ0031.001
00014 S SYN .REL. IOEQ0031.001
00014 W SYN .REL. IOEQ0031.001
00014 R SYN .REL. IOEQ0031.001
00014 NORECS SYN .REL. IOEQ0031.001
00014 P SYN .REL. IOEQ0031.001
00014 LCOUNT SYN .REL. IOEQ0031.001
00014 LNAME1 SYN .REL. IOEQ0031.001
00027 SETWRD (POINTR,LNAME2) IOEQ0032
00015 POINTR SYN .REL. IOEQ0032.001
00015 LNAME2 SYN .REL. IOEQ0032.001
00027 SETWRD (ASGNSW,REDREC,REDWRD) IOEQ0033
00016 ASGNSW SYN .REL. IOEQ0033.001
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 4
SYSTEM MACROS AND EQUIVALENCE
00016 REDREC SYN .REL. IOEQ0033.001
00016 REDWRD SYN .REL. IOEQ0033.001
00027 SETWRD (WRTREC,WRTWRD) IOEQ0034
00017 WRTREC SYN .REL. IOEQ0034.001
00017 WRTWRD SYN .REL. IOEQ0034.001
00027 SETWRD (CHNG,PRIME,BUFREC,BUFADR) IOEQ0035
00020 CHNG SYN .REL. IOEQ0035.001
00020 PRIME SYN .REL. IOEQ0035.001
00020 BUFREC SYN .REL. IOEQ0035.001
00020 BUFADR SYN .REL. IOEQ0035.001
00027 SETWRD (WINDEX,DINDEX) IOEQ0036
00021 WINDEX SYN .REL. IOEQ0036.001
00021 DINDEX SYN .REL. IOEQ0036.001
00027 SETWRD (DR,DW,DCOUNT,DADDRS) IOEQ0037
00022 DR SYN .REL. IOEQ0037.001
00022 DW SYN .REL. IOEQ0037.001
00022 DCOUNT SYN .REL. IOEQ0037.001
00022 DADDRS SYN .REL. IOEQ0037.001
00027 SETWRD (PRIOR,IOTASK,EFLAG,CURREC) IOEQ0038
00023 PRIOR SYN .REL. IOEQ0038.001
00023 IOTASK SYN .REL. IOEQ0038.001
00023 EFLAG SYN .REL. IOEQ0038.001
00023 CURREC SYN .REL. IOEQ0038.001
00027 SETWRD (SMTMP1) IOEQ0039
00024 SMTMP1 SYN .REL. IOEQ0039.001
00027 SETWRD (SMTMP2) IOEQ0040
00025 SMTMP2 SYN .REL. IOEQ0040.001
IOEQ0041
00027 SETWRD (ACTLNG) LENGTH OF SINGLE ACTIVE FILE ENTRY IOEQ0042
00026 ACTLNG SYN .REL. IOEQ0042.001
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 5
SYSTEM MACROS AND EQUIVALENCE
MACRO TO ASSIGN CONSECUTIVE STORAGE LOCATIONS IOEQ0044
SYMBOL ASTORE BLOCK,NWORDS .. WITHIN A BLOCK IOEQ0045
PMC ON .. IOEQ0046
SYMBOL SYN BLOCK .. IOEQ0047
PMC OFF .. IOEQ0048
TMP SET NWORDS .. IOEQ0049
BLOCK SET BLOCK+TMP .. IOEQ0050
ASTORE END .. IOEQ0051
IOEQ0052
00000 AFST SET 0 DEFINE ENTRIES IN ACTIVE FILE STATUS TABLE IOEQ0053
IOEQ0054
PROBNO ASTORE AFST,1 USER'S PROBLEM NUMBER IN BCD IOEQ0055
00000 PROBNO SYN AFST IOEQ0055.001
PROGNO ASTORE AFST,1 USER'S PROGRAMMER NUMBER IN BCD IOEQ0056
00001 PROGNO SYN AFST IOEQ0056.001
AUTHNO ASTORE AFST,1 USER'S 'AUTHOR' NUMBER IN BINARY IOEQ0057
00002 AUTHNO SYN AFST IOEQ0057.001
URCODE ASTORE AFST,1 USER'S RESTRICTION CODE IOEQ0058
00003 URCODE SYN AFST IOEQ0058.001
LIMITS ASTORE AFST,1 USER'S CORE LIMITS PZE LOWADR,,HIADR IOEQ0059
00004 LIMITS SYN AFST IOEQ0059.001
RELOC ASTORE AFST,1 USER'S RELOCATION IOEQ0060
00005 RELOC SYN AFST IOEQ0060.001
FPRIOR ASTORE AFST,1 USER'S FILE PRIORITY SETTING IOEQ0061
00006 FPRIOR SYN AFST IOEQ0061.001
ERRILC ASTORE AFST,1 LOCATION OF CALL RESULTING IN LAST ERROR IOEQ0062
00007 ERRILC SYN AFST IOEQ0062.001
ERNAME ASTORE AFST,1 NAME OF ENTRY IN WHICH ERROR WAS DISCOVEREDIOEQ0063
00010 ERNAME SYN AFST IOEQ0063.001
ERCODE ASTORE AFST,1 ERROR CODE OF LAST ERROR IOEQ0064
00011 ERCODE SYN AFST IOEQ0064.001
IOCODE ASTORE AFST,1 I/O ERROR CODE IF ANY OF LAST ERROR IOEQ0065
00012 IOCODE SYN AFST IOEQ0065.001
ENAME1 ASTORE AFST,1 FILE NAME(1) OF FILE INVOLVED IN LAST ERRORIOEQ0066
00013 ENAME1 SYN AFST IOEQ0066.001
ENAME2 ASTORE AFST,1 FILE NAME(2) OF FILE INVOLVED IN LAST ERRORIOEQ0067
00014 ENAME2 SYN AFST IOEQ0067.001
ERCALL ASTORE AFST,1 LOCATION OF LAST CALL TO ERROR OR IOERR IOEQ0068
00015 ERCALL SYN AFST IOEQ0068.001
QUEUE1 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(1) IOEQ0069
00016 QUEUE1 SYN AFST IOEQ0069.001
QUEUE2 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(2) IOEQ0070
00017 QUEUE2 SYN AFST IOEQ0070.001
QUEUE3 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(3) IOEQ0071
00020 QUEUE3 SYN AFST IOEQ0071.001
QUEUE4 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(4) IOEQ0072
00021 QUEUE4 SYN AFST IOEQ0072.001
QUEUE5 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(5) IOEQ0073
00022 QUEUE5 SYN AFST IOEQ0073.001
QUEUE6 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(6) IOEQ0074
00023 QUEUE6 SYN AFST IOEQ0074.001
QUEUE7 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(7) IOEQ0075
00024 QUEUE7 SYN AFST IOEQ0075.001
IOEQ0076
AFENTY ASTORE AFST,ACTLNG STORAGE FOR A SINGLE ACTIVE FILE ENTRY IOEQ0077
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 6
SYSTEM MACROS AND EQUIVALENCE
00025 AFENTY SYN AFST IOEQ0077.001
IOEQ0078
TBLMIN ASTORE AFST,0 MINIMUM LENGTH FOR USER I/O STATUS TABLE IOEQ0079
00053 TBLMIN SYN AFST IOEQ0079.001
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 7
SYSTEM MACROS AND EQUIVALENCE
0761 01 1 60000 EFA OPSYN NOP EFFECTIVE ADDRESS PARAMETER FLAG IOEQ0081
3 00001 1 60000 PAR OPSYN PTH NORMAL PARAMETER FLAG IOEQ0082
IOEQ0083
1 00001 1 60000 ION OPSYN PON I/O NON-TRANSMIT AND PROCEED IOEQ0084
2 00001 1 60000 IOP OPSYN PTW I/O TRANSMIT AND PROCEED IOEQ0085
0 00001 1 60000 IOD OPSYN PZE I/O DISCONNECT IOEQ0086
IOEQ0087
HOMOP MACRO GENERATE INSTRUCTION TO RESET ECC TO 'HOME'IOEQ0088
IFF IOSMEM-1,0,1 IOEQ0089
SEA HOME INSTRUCTION FOR MEMORY A IOEQ0090
IFF IOSMEM-2,0,1 IOEQ0091
SEB HOME INSTRUCTION FOR MEMORY B IOEQ0092
IFF IOSMEM-3,0,1 IOEQ0093
SEC HOME INSTRUCTION FOR MEMORY C IOEQ0094
HOMOP END IOEQ0095
IOCM0031
INSERT STMEQU IOCM0032
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 8
DEFINITIONS USED BY STRATEGY MODULES
DEFINITION OF QUEUE COMPONENTS STE00020
STE00030
00000 QUENO EQU 0 (P) QUEUE NUMBER (PRIORITY) STE00040
00000 QLNG EQU 0 (D) LENGTH OF QUEUE BEAD STE00050
00000 FINISW EQU 0 (T) NON-ZERO WHEN BEAD FULLY PROCESSED STE00060
00000 NEXTQ EQU 0 (A) POINTER TO NEXT QUEUE ELEMENT STE00070
00001 QPRF1 EQU 1 (P) UNUSED COMPONENT STE00080
00001 FUNCT EQU 1 (D) FUNCTION CODE STE00090
00001 PAFST EQU 1 (A) POINTER TO ACTIVE FILE STATUS TABLE STE00100
00001 QTAG1 EQU 1 (T) UNUSED COMPONENT STE00110
00002 QWORDS EQU 2 (W) START OF ADDITIONAL REGISTERS IN BEAD STE00120
STE00130
STE00140
BITS ASSOCIATED WITH I/O COMMANDS STE00150
STE00160
100000 IONBIT BOOL 100000 (L) FOR NO TRANSMISSION STE00170
200000 IOPBIT BOOL 200000 (L) NORMAL TRANSMISSION STE00180
700000 IODBIT BOOL 700000 (L) CHECK FOR ZERO PREFIX STE00190
STE00200
400000 PROBIT BOOL 400000 (R) TRANSMISSION PROTECTED STE00210
200000 B.BIT BOOL 200000 (R) TRANSMISSION IN CORE B STE00220
100000 A.BIT BOOL 100000 (R) TRANSMISSION IN CORE A STE00230
IOCM0033
INSERT STMMAC IOCM0034
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 9
DATA-MANIPULATION MACROS FOR STRATEGY MODULES
M SAVE MACRO EXIT,TEMPS STANDARD ROUTINE ENTRANCE MACRO STMM0002
SCA EXIT,1 SAVE NON-DISPOSABLE INDEX REGISTERS STMM0003
SCA EXIT+1,2 .. STMM0004
SCA EXIT+2,3 .. STMM0005
SCA EXIT+3,4 .. STMM0006
SAVE END STMM0007
STMM0008
RETURN MACRO TEMPS STANDARD ROUTINE EXIT MACRO STMM0009
AXC **,1 .. STMM0010
AXC **,2 .. STMM0011
AXC **,3 .. STMM0012
AXC **,4 .. STMM0013
RETURN END STMM0014
STMM0015
RESTOR MACRO EXIT,TAG MACRO TO RESTORE SPECIFIC TAG STMM0016
IRP TAG .. STMM0017
LAC EXIT+TAG-1,TAG STMM0018
IRP STMM0019
RESTOR END STMM0020
STMM0021
SAVE4 MACRO EXIT SHORT SAVE STMM0022
SCA EXIT,4 .. STMM0023
SAVE4 END STMM0024
STMM0025
RETUR4 MACRO SHORT RETURN STMM0026
AXC **,4 .. STMM0027
RETUR4 END STMM0028
STMM0029
RESTO4 MACRO EXIT SHORT RESTORE STMM0030
LAC EXIT,4 .. STMM0031
RESTO4 END .. STMM0032
STMM0033
ENABLE MACRO MACRO TO ENABLE APPROPRIATE TRAPS STMM0034
ENB* ENABLE .. STMM0035
ENABLE END STMM0036
STMM0037
DISABL MACRO MACRO TO DISABLE APPROPRIATE TRAPS STMM0038
ENB =0 STMM0039
DISABL END STMM0040
STMM0041
MAKE MACRO WHAT,BOOL SET A VALUE TO TRUE OR FALSE STMM0042
IFF 1,BOOL,TRUE MAKE IT 7 IF TRUE STMM0043
CAL =O777777777777 STMM0044
IFF 1,BOOL,FALSE MAKE IT 0 IF FALSE STMM0045
PXD ,0 .. STMM0046
IPLACE WHAT AND PUT IT AWAY STMM0047
MAKE END STMM0048
STMM0049
GOIF MACRO WHAT,BOOL,WHERE CONDITIONAL TRANSFER MACRO STMM0050
IXTRCT WHAT OBTAIN INFORMATION STMM0051
IFF 1,BOOL,TRUE TAKE TNZ IF TRUE STMM0052
TNZ WHERE .. STMM0053
IFF 1,BOOL,FALSE TAKE TRA IF FALSE STMM0054
TZE WHERE .. STMM0055
GOIF END STMM0056
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 10
DATA-MANIPULATION MACROS FOR STRATEGY MODULES
STMM0057
XTRACT MACRO WORD,PT MACRO TO EXTRACT PART OF A WORD STMM0058
IFF 0,WORD,AC GET WORD IF NOT IN ACCUMULATOR STMM0059
CAL WORD GET TOTAL WORD STMM0060
IFF 1,PT,D CALCULATE SHIFTS STMM0061
ARS 18 .. STMM0062
IFF 1,PT,LH .. STMM0063
ARS 18 .. STMM0064
IFF 1,PT,T .. STMM0065
ARS 15 .. STMM0066
IFF 1,PT,RH .. STMM0067
ANA =O777777 STMM0068
IFF 1,PT,P .. STMM0069
ARS 33 .. STMM0070
IFF 1,PT,A NOW CHECK FOR MASKS STMM0071
ANA =O77777 STMM0072
IFF 1,PT,D .. STMM0073
ANA =O77777 STMM0074
IFF 1,PT,T .. STMM0075
ANA =O7 STMM0076
XTRACT END STMM0077
STMM0078
IXTRCT MACRO WORD,PT EXTRACT WORD, LEAVE IN PLACE STMM0079
IFF 0,WORD,AC .. STMM0080
CAL WORD STMM0081
IFF 1,PT,A ADDRESS STMM0082
ANA =O77777 STMM0083
IFF 1,PT,D DECREMENT STMM0084
ANA =O77777000000 STMM0085
IFF 1,PT,P PREFIX STMM0086
ANA =O700000000000 STMM0087
IFF 1,PT,T TAG STMM0088
ANA =O700000 STMM0089
IFF 1,PT,LH LEFT HALF STMM0090
ANA =O777777000000 STMM0091
IFF 1,PT,RH RIGHT HALF STMM0092
ANA =O777777 STMM0093
IXTRCT END STMM0094
STMM0095
PLACE MACRO WHERE,PT MACRO TO REPLACE PART OF A WORD STMM0096
IFF 1,PT,D CALCULATE SHIFTS STMM0097
ALS 18 .. STMM0098
IFF 1,PT,T .. STMM0099
ALS 15 .. STMM0100
IFF 1,PT,P .. STMM0101
ALS 33 .. STMM0102
IFF 1,PT,LH .. STMM0103
LGR 18 .. STMM0104
XXXINS ST'PT(WHERE) PERFORM STORE STMM0105
PLACE END STMM0106
STMM0107
IPLACE MACRO WHERE,PT REPLACE PARTIAL WORD, IN PLACE STMM0108
XXXINS ST'PT(WHERE) PERFORM STORE, NO SHIFTING STMM0109
IPLACE END STMM0110
STMM0111
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 11
DATA-MANIPULATION MACROS FOR STRATEGY MODULES
XXXINS MACRO OP,VAR GENERATE AN INSTRUCTION STMM0112
OP VAR .. STMM0113
XXXINS END STMM0114
STMM0115
0602 71 1 60000 STW OPSYN SLW FOR USE WITH 'PLACE' MACRO STMM0116
-0620 71 1 60000 STLH OPSYN SLQ .. STMM0117
IOCM0035
INSERT CMM.D IOCM0036
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 12
MACROS AND TRANSFER VECTORS FOR STRATEGY MODULE CALLS
MACRO MACRO TO GENERATE CALLS TO STRATEGY MODULESCMM.0002
SYMBOL GNCALL NAME .. CMM.0003
PMC ON .. CMM.0004
SYMBOL SYN *-1 .. DEFINE SYMBOL FOR TABLE REFERENCE CMM.0005
PMC OFF .. CMM.0006
SERNAM NAME,FMAX(1,2,3,4,5,6,7) .. GENERATE CALLS CMM.0007
GNCALL END CMM.0008
CMM.0009
SERNAM MACRO NAME,MAX,LIST,SYM GENERATE STRATEGY MODULE CALLS CMM.0010
IRP LIST .. CMM.0011
SYM SET LIST-1 .. CMM.0012
IFF SYM/MAX,1,0 .. CMM.0013
CONC NAME,LIST .. CMM.0014
IRP .. CMM.0015
SERNAM END CMM.0016
CMM.0017
CONC MACRO NAME,NO GENERATE A SINGLE CALL CMM.0018
EXTERN NAME'NO .. CMM.0019
PMC ON .. CMM.0020
TSX NAME'NO,4 .. CALL TO STRATEGY MODULE CMM.0021
PMC OFF .. CMM.0022
CONC END CMM.0023
CMM.0024
MACRO USED BY QUEUE WRITE-AROUNDS CMM.0025
CMM.0026
GETEFA MACRO N DETERMINE EFFECTIVE ADDRESS FOR PARAMETER CMM.0027
CLA N,4 GET N'TH PARAMETER FROM CALL CMM.0028
TSX TGTEFA,4 USE TRAP-TIME EDITION OF 'GETEFA' CMM.0029
GETEFA END CMM.0030
CMM.0031
TQ MACRO ERR TEST FOR PROPER ENTRY FOR QUEUE POINTER CMM.0032
TSX TQ,6 CALL TEST ROUTINE CMM.0033
EFA ERR ERROR RETURN CMM.0034
TQ END CMM.0035
CMM.0036
000060 II BOOL 60 INDIRECT FLAG IN MACRO CALL CMM.0037
CMM.0038
..... CONSTRUCT STRATEGY MODULE CALLING VECTORS .........CMM.0039
CMM.0040
IOHLTF GNCALL IOHLT CALL TO HALT USER I/O CMM.0041
00026 IOHLTF SYN *-1 CMM.0041.001
00027 0074 00 4 00011 TSX IOHLT1,4 CMM.0041.003
00030 0074 00 4 00012 TSX IOHLT2,4 CMM.0041.003
00031 0074 00 4 00013 TSX IOHLT3,4 CMM.0041.003
CMM.0042
IOBGNF GNCALL IOBGN CALL TO RESTART USER I/O CMM.0043
00031 IOBGNF SYN *-1 CMM.0043.001
00032 0074 00 4 00014 TSX IOBGN1,4 CMM.0043.003
00033 0074 00 4 00015 TSX IOBGN2,4 CMM.0043.003
00034 0074 00 4 00016 TSX IOBGN3,4 CMM.0043.003
CMM.0044
DRAINF GNCALL DRAIN CALL TO DRAIN ALL I/O QUEUES CMM.0045
00034 DRAINF SYN *-1 CMM.0045.001
00035 0074 00 4 00017 TSX DRAIN1,4 CMM.0045.003
00036 0074 00 4 00020 TSX DRAIN2,4 CMM.0045.003
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 13
MACROS AND TRANSFER VECTORS FOR STRATEGY MODULE CALLS
00037 0074 00 4 00021 TSX DRAIN3,4 CMM.0045.003
CMM.0046
IORSTF GNCALL IORST CALL TO RESTART I/O AFTER LOSS OF MACHINE TCMM.0047
00037 IORSTF SYN *-1 CMM.0047.001
00040 0074 00 4 00022 TSX IORST1,4 CMM.0047.003
00041 0074 00 4 00023 TSX IORST2,4 CMM.0047.003
00042 0074 00 4 00024 TSX IORST3,4 CMM.0047.003
IOCM0037
INSERT CMQ.C IOCM0038
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 14
INTERFACE TO QUEUE SUBROUTINES FROM STRATEGY MODULES
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0002
CMQ.0003
INITIALIZE USER'S QUEUES CMQ.0004
CMQ.0005
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0006
CMQ.0007
00043 QUINT SAVE QINXIT INITIALIZE USER'S QUEUES CMQ.0008
00047 -0500 60 4 00001 CAL* 1,4 GET KEY FROM USER'S I/O STATUS TABLE CMQ.0009
00050 TQ (2,4) TEST QUEUES FOR PROPER CONSTRUCTION CMQ.0010
00052 0074 00 4 00000 TSX QINIT,4 CALL S/R CMQ.0011
00053 3 00000 0 00700 PAR KEY .. CMQ.0012
00054 QINXIT RETURN .. CMQ.0013
00060 0020 00 4 00002 TRA 2,4 .. CMQ.0014
CMQ.0015
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0016
CMQ.0017
TEST FOR SPACE IN USER'S QUEUES CMQ.0018
CMQ.0019
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0020
CMQ.0021
00061 QTST SAVE QTSXIT VENI --- CMQ.0022
00065 -0500 60 4 00002 CAL* 2,4 .. CMQ.0023
00066 0602 00 0 00705 SLW NUM .. CMQ.0024
00067 -0500 00 4 00002 CAL 2,4 .. CMQ.0025
00070 0771 00 0 00022 ARS 18 .. CMQ.0026
00071 0621 00 0 00703 STA ERROR .. CMQ.0027
00072 -0625 00 0 00706 STL QFULL .. CMQ.0028
00073 -0500 60 4 00001 CAL* 1,4 CMQ.0029
00074 TQ QTS.2 SEE IF KEY FITS CMQ.0030
00076 0074 00 4 00004 TSX QTEST,4 VIDI --- CMQ.0031
00077 3 00000 0 00700 PAR KEY .. CMQ.0032
00100 3 00000 0 00705 PAR NUM .. CMQ.0033
00101 3 00000 0 00103 PAR *+2 .. CMQ.0034
00102 0600 00 0 00706 QTS.1 STZ QFULL .. CMQ.0035
00103 QTSXIT RETURN .. CMQ.0036
00107 0520 00 0 00706 QTS.2 ZET QFULL TEST SUCCESS CMQ.0037
00110 0020 60 0 00703 TRA* ERROR .. CMQ.0038
00111 0020 00 4 00001 TRA 1,4 VINCI .. CMQ.0039
CMQ.0040
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0041
CMQ.0042
GET QUEUE ENTRY FOR USER'S I/O CMQ.0043
CMQ.0044
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0045
CMQ.0046
00112 QGET SAVE QTSXIT .. CMQ.0047
00116 -0500 60 4 00003 CAL* 3,4 .. CMQ.0048
00117 0602 00 0 00704 SLW PRIOR. .. CMQ.0049
00120 -0500 60 4 00004 CAL* 4,4 .. CMQ.0050
00121 0602 00 0 00705 SLW ASKED .. CMQ.0051
00122 -0500 00 4 00004 CAL 4,4 .. CMQ.0052
00123 0771 00 0 00022 ARS 18 .. CMQ.0053
00124 0621 00 0 00703 STA ERROR .. CMQ.0054
00125 -0500 00 4 00003 CAL 3,4 .. CMQ.0055
00126 -0737 00 7 00000 PDC ,7 .. CMQ.0056
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 15
INTERFACE TO QUEUE SUBROUTINES FROM STRATEGY MODULES
00127 -0500 00 7 00000 CAL 0,7 GET QUEUEF CMQ.0057
00130 0602 00 0 00707 SLW QUEUEF .. CMQ.0058
00131 GETEFA 2 CONVERT 'AF-ENTRY' CMQ.0059
00133 0621 00 0 00701 STA AFENT. .. CMQ.0060
00134 RESTOR QTSXIT(4) .. CMQ.0061
00135 GETEFA 1 '' 'IOBASE' CMQ.0062
00137 0621 00 0 00677 STA IOSTAT .. CMQ.0063
00140 0361 00 0 00707 ACL QUEUEF CALCULATE LOCATION OF KEY CMQ.0064
00141 0737 00 7 00000 PAC ,7 .. CMQ.0065
00142 -0500 00 7 00000 CAL 0,7 .. CMQ.0066
00143 -0625 00 0 00706 STL QFULL .. CMQ.0067
00144 TQ QTSXIT CHECK ON FORGERIES CMQ.0068
00146 0074 00 4 00002 TSX GETQUE,4 NOW CALL FOR ACTION CMQ.0069
00147 3 00000 0 00700 PAR KEY .. CMQ.0070
00150 3 00000 0 00677 PAR IOSTAT .. CMQ.0071
00151 3 00000 0 00701 PAR AFENT. .. CMQ.0072
00152 3 00000 0 00704 PAR PRIOR. .. CMQ.0073
00153 3 00000 0 00705 PAR ASKED .. CMQ.0074
00154 3 00000 0 00103 PAR QTSXIT .. CMQ.0075
00155 0621 00 0 00702 STA PQ SAVE AC TEMPORARILY CMQ.0076
00156 0535 00 2 00701 LAC AFENT.,2 .. CMQ.0077
00157 XTRACT (IOTASK,2)D .. CMQ.0078
00162 0400 00 0 00717 ADD =1 .. CMQ.0079
00163 PLACE (IOTASK,2)D INCREMENT IOTASK FOR EACH QUEUE PLACED CMQ.0080
00165 0500 00 0 00702 CLA PQ RESTORE POINTER TO QUEUE IN AC CMQ.0081
00166 0020 00 0 00102 TRA QTS.1 (NORMAL RETURN) CMQ.0082
CMQ.0083
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0084
CMQ.0085
REMOVE ALL QUEUES FOR USER'S ACTIVE FILE CMQ.0086
CMQ.0087
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0088
CMQ.0089
00167 QSCRP SAVE QINXIT .. CMQ.0090
00173 -0500 60 4 00003 CAL* 3,4 .. CMQ.0091
00174 0602 00 0 00707 SLW QUEUEF .. CMQ.0092
00175 GETEFA 2 .. CMQ.0093
00177 0621 00 0 00701 STA AFENT. .. CMQ.0094
00200 RESTOR QINXIT(4) .. CMQ.0095
00201 GETEFA 1 .. CMQ.0096
00203 0621 00 0 00677 STA IOSTAT .. CMQ.0097
00204 0361 00 0 00707 ACL QUEUEF .. CMQ.0098
00205 0737 00 7 00000 PAC ,7 .. CMQ.0099
00206 -0500 00 7 00000 CAL 0,7 .. CMQ.0100
00207 TQ QINXIT .. CMQ.0101
00211 0074 00 4 00003 TSX QSCRAP,4 .. CMQ.0102
00212 3 00000 0 00700 PAR KEY .. CMQ.0103
00213 3 00000 0 00677 PAR IOSTAT .. CMQ.0104
00214 3 00000 0 00701 PAR AFENT. .. CMQ.0105
00215 0535 00 2 00701 LAC AFENT.,2 GET BASE OF AF-ENTRY CMQ.0106
00216 MAKE ((IOTASK,2)D)FALSE CLEAR ACTIVITY FOR THIS FILE CMQ.0107
00220 0020 00 0 00054 TRA QINXIT .. CMQ.0108
CMQ.0109
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0110
CMQ.0111
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 16
INTERFACE TO QUEUE SUBROUTINES FROM STRATEGY MODULES
RELEASE QUEUE ENTRY AFTER I/O FINISHED CMQ.0112
CMQ.0113
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMQ.0114
CMQ.0115
00221 QDEL SAVE QINXIT .. CMQ.0116
00225 -0500 60 4 00001 CAL* 1,4 .. CMQ.0117
00226 TQ (2,4) GO BACK DIRECTLY IF BAD I/O STATUS TABLE CMQ.0118
00230 GETEFA 3 .. CMQ.0119
00232 0621 00 0 00702 STA PQ .. CMQ.0120
00233 RESTOR QINXIT(4) NOW GET AF-ENTRY LOCATION CMQ.0121
00234 GETEFA 2 POINTER TO A.F. WITH COMPLETED TASK CMQ.0122
00236 0737 00 2 00000 PAC ,2 CMQ.0123
00237 XTRACT (IOTASK,2)D .. CMQ.0124
00242 0100 00 0 00246 TZE QDL.1 SHOULDN'T HAVE GOTTEN HERE WITH IT '0' CMQ.0125
00243 0402 00 0 00717 SUB =1 DECREMENT IT CMQ.0126
00244 PLACE (IOTASK,2)D RE-PLACE CMQ.0127
00246 0074 00 4 00001 QDL.1 TSX RETQUE,4 .. CMQ.0128
00247 3 00000 0 00700 PAR KEY .. CMQ.0129
00250 3 00000 0 00702 PAR PQ .. CMQ.0130
00251 0020 00 0 00054 TRA QINXIT .. CMQ.0131
IOCM0039
INSERT CMA.D IOCM0040
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 17
ENTRIES FROM FILE CONTROL FOR I/O SYNCHRONIZATION
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0002
CMA.0003
HALT I/O FOR GIVEN USER CMA.0004
CMA.0005
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0006
CMA.0007
00252 IOHALT SAVE HLTXIT CMA.0008
00256 -0500 60 4 00001 CAL* 1,4 FIND USER TO BLOCK CMA.0009
00257 0737 00 7 00000 PAC ,7 .. CMA.0010
00260 -0625 00 7 00672 STL IOBLK,7 SIGNAL TRAP-TIME ENTRIES CMA.0011
00261 0100 00 0 00304 TZE DRAINA ZERO INDICATES BLOCK ALL I/O CMA.0012
00262 0361 00 0 00006 ACL USRTBL CALCULATE LOCATIONIN 'USRTBL' CMA.0013
00263 0737 00 7 00000 PAC ,7 TO INDEX REGISTER CMA.0014
00264 -0500 00 7 00000 CAL 0,7 GET BASE OF A.F.S.T. CMA.0015
00265 0602 00 0 00710 SLW HLTTMP SAVE FOR CALLS CMA.0016
00266 -0774 00 1 00001 AXC 1,1 CALL FIRST STRATEGY MODULE CMA.0017
00267 0522 00 1 00026 XEC IOHLTF,1 .. CMA.0018
00270 3 00000 0 00710 PAR HLTTMP .. CMA.0019
00271 -3 77775 1 00273 TXL *+2,1,-FMAX .. CMA.0020
00272 1 77777 1 00267 TXI *-3,1,-1 GET NEXT USER CMA.0021
00273 HLTXIT RETURN RESTORE REGISTERS CMA.0022
00277 0020 00 4 00001 TRA 1,4 CMA.0023
CMA.0024
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0025
CMA.0026
DRAIN ALL CURRENT I/O CMA.0027
CMA.0028
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0029
CMA.0030
00300 DRAIN SAVE HLTXIT CMA.0031
00304 -0774 00 1 00001 DRAINA AXC 1,1 CMA.0032
00305 0522 00 1 00034 XEC DRAINF,1 DRAIN ALL CURRENT I/O CMA.0033
00306 -3 77775 1 00273 TXL HLTXIT,1,-FMAX .. CMA.0034
00307 1 77777 1 00305 TXI *-2,1,-1 .. CMA.0035
CMA.0036
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0037
CMA.0038
RESTART BLOCKED I/O CMA.0039
CMA.0040
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0041
CMA.0042
00310 IOBEGN SAVE HLTXIT .. CMA.0043
00314 -0500 60 4 00001 CAL* 1,4 GET USER TO RUN CMA.0044
00315 0737 00 7 00000 PAC ,7 CMA.0045
00316 0600 00 7 00672 STZ IOBLK,7 LET HIM GO THROUGH AGAIN CMA.0046
00317 -0774 00 1 00001 AXC 1,1 .. CMA.0047
00320 0522 00 1 00031 XEC IOBGNF,1 .. CMA.0048
00321 -3 77775 1 00273 TXL HLTXIT,1,-FMAX .. CMA.0049
00322 1 77777 1 00320 TXI *-2,1,-1 .. CMA.0050
CMA.0051
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0052
CMA.0053
RESTART I/O AFTER MACHINE RESET CMA.0054
CMA.0055
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0056
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 18
ENTRIES FROM FILE CONTROL FOR I/O SYNCHRONIZATION
CMA.0057
00323 IORST SAVE HLTXIT .. CMA.0058
00327 -0774 00 1 00001 AXC 1,1 INITIALIZE DEVICE NUMBER CMA.0059
00330 0522 00 1 00037 XEC IORSTF,1 CALL STRATEGY MODULE CMA.0060
00331 -3 77775 1 00273 TXL HLTXIT,1,-FMAX .. CMA.0061
00332 1 77777 1 00330 TXI *-2,1,-1 NEXT STRATEGY MODULE CMA.0062
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 19
FIND LOCATION OF ACTIVE FILE AND I/O STATUS TABLE
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0064
CMA.0065
'SSETUP' IS CALLED BY THE STRATEGY MODULES TO DETERMINE CMA.0066
(EX POST FACTO) WHICH OF THE POSSIBLE I/O STATUS TABLES CMA.0067
THE FILE BEING WORKED ON BELONGS TO. CMA.0068
CMA.0069
THIS IS DONE BY PICKING UP ONE OF THE ACTUAL PARAMETERS CMA.0070
SENT THE STRATEGY MODULE BY THE BUFFER CONTROL MODULE, CMA.0071
DETERMINING THE ADDRESS OF THE ACTIVE FILE ENTRY, CMA.0072
AND A LITTLE BIT OF HAND-WAVING. CMA.0073
CMA.0074
THE ADDRESS OF THE ACTIVE FILE ENTRY IS RETURNED IN THE CMA.0075
ADDRESS OF (AC), THE ADDRESS OF THE RE-ASSOCIATED I/O CMA.0076
STATUS TABLE IN THE DECREMENT OF (AC). CMA.0077
CMA.0078
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0079
CMA.0080
00333 SSETUP SAVE4 SETXIT CMA.0081
00334 -0500 60 4 00001 CAL* 1,4 GET PARAMETER CMA.0082
00335 0074 00 4 00010 TSX GETEFA,4 (THIS CALL CAME FROM AN ENABLED S/R) CMA.0083
00336 0621 00 0 00667 STA SETTMP .. CMA.0084
00337 0737 00 7 00000 PAC ,7 .. CMA.0085
00340 IXTRCT (PRIOR,7)P .. CMA.0086
00342 -0100 00 0 00345 TNZ *+3 CHECK THE PRIORITY CMA.0087
00343 -0500 60 0 00006 CAL* USRTBL GET 0-TH ENTRY FROM USRTBL (SYSTEM) CMA.0088
00344 0020 00 0 00346 TRA *+2 CMA.0089
00345 -0500 60 0 00005 CAL* UTABLE CURRENT USER CMA.0090
00346 0767 00 0 00022 ALS 18 .. CMA.0091
00347 -0501 00 0 00667 ORA SETTMP .. CMA.0092
00350 SETXIT RETUR4 .. CMA.0093
00351 0020 00 4 00001 TRA 1,4 .. CMA.0094
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 20
COUNT LENGTH OF I/O LIST FOR USER
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0096
CMA.0097
'CNTIO' COUNTS THE LENGTH OF THE I/O LIST AND THE NUMBER CMA.0098
OF RECORDS THAT WILL BE TRANSMITTED IN AN I/O REQUEST CMA.0099
FROM THE BUFFER CONTROL MODULE. CMA.0100
CMA.0101
THE NUMBER OF COMMANDS IN THE I/O LIST (INCLUDING THE CMA.0102
'IOD') IS RETURNED IN THE AC, THE NUMBER OF RECORDS BEINGCMA.0103
TRANSMITTED IN THE MQ. CMA.0104
CMA.0105
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMA.0106
CMA.0107
00352 -0500 00 4 00001 CNTIO CAL 1,4 GET LOCATION OF RECWRD CMA.0108
00353 -0737 00 5 00000 PDC ,5 .. CMA.0109
00354 -0500 60 4 00001 CAL* 1,4 GET LOCATION OF IOLIST CMA.0110
00355 0737 00 6 00000 PAC ,6 .. CMA.0111
00356 0774 00 7 00001 AXT 1,7 COUNT OF WORDS PROCESSED CMA.0112
00357 0600 00 0 00711 STZ CNTMP COUNT OF WORDS TO BE WRITTEN OR READ CMA.0113
00360 0441 00 6 00000 CNT.2 LDI 0,6 GET IO LIST WORD CMA.0114
00361 -0054 00 700000 LFT IODBIT CHECK FOR 'IOD' CMA.0115
00362 0020 00 0 00364 TRA *+2 YES CMA.0116
00363 0020 00 0 00373 TRA CNT.1 END OF LIST FOUND CMA.0117
00364 -0046 00 0 00000 PIA GET WORD COUNT CMA.0118
00365 XTRACT (AC)D .. CMA.0119
00367 0400 00 0 00711 ADD CNTMP .. CMA.0120
00370 0601 00 0 00711 STO CNTMP .. CMA.0121
00371 1 00001 7 00372 TXI *+1,7,1 INCREMENT COUNT OF WORDS READ CMA.0122
00372 1 77777 6 00360 TXI CNT.2,6,-1 AND PICK UP NEXT WORD CMA.0123
00373 -0754 00 0 00000 CNT.1 PXD ,0 GET COUNT OF TRACKS CMA.0124
00374 0560 00 0 00711 LDQ CNTMP DIVIDE BY NWORDS PER RECORD CMA.0125
00375 0221 00 5 00000 DVP 0,5 NO OF WORDS PER RECORD FOR THIS MODULE CMA.0126
00376 0100 00 0 00402 TZE CNT.3 .. CMA.0127
00377 0131 00 0 00000 XCA ADD 1 TO TRACK COUNT CMA.0128
00400 0400 00 0 00717 ADD =1 IF I/O NOT INTEGRAL NUMBER OF RECORDS CMA.0129
00401 0131 00 0 00000 XCA .. CMA.0130
00402 0754 00 7 00000 CNT.3 PXA ,7 GET COUNT OF IO WORDS CMA.0131
00403 0020 00 4 00001 TRA 1,4 AND RETURN CMA.0132
IOCM0041
INSERT CMB.C IOCM0042
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 21
ENTRIES FROM TRAP PROCESSORS TO SET UP NEW USER
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMB.0002
CMB.0003
FIND QUEUE ENTRY FOR TRAP PROCESSOR TO RUN CMB.0004
CMB.0005
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMB.0006
CMB.0007
00404 -0500 00 4 00001 FNDUSR CAL 1,4 GET NOUSR,,STOPIO CMB.0008
00405 -0737 00 7 00000 PDC ,7 .. CMB.0009
00406 0520 00 0 00672 ZET IOBLK TEST IF NO I/O TO BE RUN CMB.0010
00407 0020 00 7 00000 TRA 0,7 DON'T SET UP ANYTHING MORE CMB.0011
00410 -0500 60 4 00002 CAL* 2,4 GET RELATIVE LOCATION OF QUEUE POINTER CMB.0012
00411 0602 00 0 00707 SLW QUEUEF SAVE FOR LATER USE CMB.0013
00412 -0500 00 0 00007 CAL PRIORT INITIALIZE FOR NO SYSTEM I/O CMB.0014
00413 0602 00 0 00712 SLW NXTUSE .. CMB.0015
00414 -0625 00 0 00675 STL THSUSR INDICATE INITIALIZATION SECTION ENTERED CMB.0016
00415 -0500 60 0 00006 CAL* USRTBL GET BASE OF SYSTEM I/O STATUS TABLE CMB.0017
00416 0074 00 7 00445 FND.1 TSX GTBEAD,7 SEE IF THIS USER HAS ANY I/O QUEUED CMB.0018
00417 0535 00 5 00712 FND.2 LAC NXTUSE,5 TRY SOMEONE ELSE CMB.0019
00420 -0500 00 5 00000 FND.3 CAL 0,5 GET NEXT ENTRY FROM PRIORT CMB.0020
00421 0602 00 0 00675 SLW THSUSR SET SWITCH CMB.0021
00422 0100 60 4 00001 TZE* 1,4 GO HOME CMB.0022
00423 1 77777 5 00424 TXI *+1,5,-1 MOVE UP IN PRIORT CMB.0023
00424 0636 00 5 00712 SCA NXTUSE,5 SAVE FOR RE-ENTRY CMB.0024
00425 0737 00 6 00000 PAC ,6 USER'S NUMBER CMB.0025
00426 0520 00 6 00672 ZET IOBLK,6 TEST FOR BLOCK ON THIS USER'S I/O CMB.0026
00427 0020 00 0 00420 TRA FND.3 CMB.0027
00430 0361 00 0 00006 ACL USRTBL FORM LOCATION CONTAINING POINTER TO STATUS CMB.0028
00431 0737 00 7 00000 PAC ,7 .. CMB.0029
00432 -0500 00 7 00000 CAL 0,7 GET POINTER CMB.0030
00433 0020 00 0 00416 TRA FND.1 LOOK FOR WAITING I/O CMB.0031
CMB.0032
00434 -0520 00 0 00675 NXTUSR NZT THSUSR CHECK FOR BAD CALL CMB.0033
00435 0021 60 4 00001 TTR* 1,4 I DON'T LIKE YOU CMB.0034
00436 0020 00 0 00417 TRA FND.2 GET NEXT ENTRY FROM PRIORT CMB.0035
CMB.0036
00437 0520 00 0 00675 NXBEAD ZET THSUSR HAS 'FNDUSR' BEEN PROPERLY INITIALIZED CMB.0037
00440 -0520 00 0 00676 NZT NXTQ ARE WE AT THE END OF OUR ROPE CMB.0038
00441 0021 60 4 00001 TTR* 1,4 STLING BLOKE CMB.0039
00442 0535 00 6 00702 LAC QBASE,6 SET UP INDEX REGISTER CMB.0040
00443 0074 00 7 00454 TSX GTB.1,7 RE-ENTER GTBEAD CMB.0041
00444 0021 60 4 00001 TTR* 1,4 ALL THERE IS, THERE AIN'T NO MORE CMB.0042
CMB.0043
00445 0621 00 0 00677 GTBEAD STA IOBASE SAVE ORIGIN OF USER'S I/O STATUS TABLE CMB.0044
00446 0361 00 0 00707 ACL QUEUEF FIND LOCATION OF QUEUE POINTER CMB.0045
00447 0737 00 6 00000 PAC ,6 .. CMB.0046
00450 -0500 00 6 00000 CAL 0,6 GET POINTER TO QUEUES CMB.0047
00451 0074 00 6 00660 TSX TQ+1,6 TAKE ABNORMAL ENTRY TO 'TQ' S/R CMB.0048
00452 0761 00 7 00001 EFA 1,7 GO BACK FOR MORE IF BAD NEWS CMB.0049
00453 0535 00 6 00700 LAC KEY,6 SET UP FIRST SEARCH CMB.0050
00454 GTB.1 XTRACT (NEXTQ,6)A GET POINTER TO QUEUE ELEMENT CMB.0051
00456 0602 00 0 00676 SLW NXTQ SET SWITCH CMB.0052
00457 0100 00 7 00001 TZE 1,7 NO ACTIVE REQUESTS WAITING CMB.0053
00460 0361 00 0 00700 ACL QORG RELOCATE IT. CMB.0054
00461 0621 00 0 00702 STA QBASE SAVE FOR RETURN CMB.0055
00462 0737 00 6 00000 PAC ,6 AND RETURN POINTER. CMB.0056
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 22
ENTRIES FROM TRAP PROCESSORS TO SET UP NEW USER
00463 GOIF ((FINISW,6)T)TRUE,GTB.1 YOU'RE OUT OF IT, CHARLIE BROWN CMB.0057
00466 XTRACT (PAFST,6)A SET UP POINTER TO ACTIVE FILE STATUS TABLE CMB.0058
00470 0361 00 0 00677 ACL IOBASE RELOCATE IT. CMB.0059
00471 0767 00 0 00022 ALS 18 MOVE TO DECREMENT FOR RETURN CMB.0060
00472 -0501 00 0 00702 ORA QBASE MOVE IN QUEUE HEADER LOCATION CMB.0061
00473 0560 00 0 00677 LDQ IOBASE RESTORE RETURN INFORMATION CMB.0062
00474 0020 00 4 00002 TRA 2,4 BACK TO STRATEGY MODULE CMB.0063
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 23
I/O LIST PROCESSOR
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMB.0065
CMB.0066
REMOVE ONE RECORD OF I/O FROM I/O LIST CMB.0067
CMB.0068
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* CMB.0069
CMB.0070
00475 PROLST SAVE4 PRLXIT PROCESS IO LIST IN QUEUE ELEMENTS INTO OUTPCMB.0071
00476 0600 00 0 00714 STZ PROTMP ZERO TEMPORARY CMB.0072
00477 -0500 60 4 00002 CAL* 2,4 GET ORIGIN OF QUEUE ENTRY CMB.0073
00500 0361 60 4 00003 ACL* 3,4 ADD OFFSET TO FIND I/O LIST IN QUEUE ENTRY CMB.0074
00501 0737 00 6 00000 PAC ,6 HOLD CMB.0075
00502 -0500 60 4 00004 CAL* 4,4 GET NWDSPR CMB.0076
00503 0602 00 0 00713 SLW RECWRD .. CMB.0077
00504 -0500 00 4 00002 CAL 2,4 .. CMB.0078
00505 -0737 00 5 00000 PDC ,5 GET POINTER TO POINTER CMB.0079
00506 -0500 00 5 00000 CAL 0,5 GET CURRENT IOBASE FOR RELOCATION WORK CMB.0080
00507 0737 00 5 00000 PAC ,5 (USED BY PROREL) CMB.0081
00510 0500 00 4 00001 CLA 1,4 GET ADDRESS OF OUTPUT LIST CMB.0082
00511 0074 00 4 00653 TSX TGTEFA,4 GET EFFECTIVE ADDRESS CMB.0083
00512 0737 00 7 00000 PAC ,7 SAVE CMB.0084
00513 -0500 00 6 00000 PRO.1 CAL 0,6 GET INPUT COMMAND CMB.0085
00514 -0734 00 4 00000 PDX ,4 GET COUNT CMB.0086
00515 0044 00 0 00000 PAI TEST FOR COMMAND TYPE CMB.0087
00516 -0054 00 700000 LFT IODBIT ARE ALL OFF CMB.0088
00517 0020 00 0 00521 TRA *+2 NO - CONTINUE CMB.0089
00520 0020 00 0 00563 TRA PROND1 YES - TERMINATE SEQUENCE CMB.0090
00521 3 00000 4 00523 TXH *+2,4,0 CONTINUE IF NON-ZERO CMB.0091
00522 1 77777 6 00513 TXI PRO.1,6,-1 OTHERWISE PICK UP NEW COMMAND CMB.0092
00523 -0054 00 100000 LFT IONBIT IS IT A NON-TRANSMIT CMB.0093
00524 0020 00 0 00527 TRA *+3 YES, LET ADAPTER RE-FORMAT IF NECESSARY CMB.0094
00525 0074 00 4 00600 TSX PROREL,4 CHECK RELOCATION AND PROTECTION. CMB.0095
00526 0020 00 0 00574 TRA PROERR ERROR CMB.0096
00527 0602 00 7 00000 SLW 0,7 AND SAVE FINAL RESULT CMB.0097
00530 XTRACT (AC)D CHECK WORD COUNTS CMB.0098
00532 0602 00 0 00715 SLW PROTMP+1 SAVE ORIGINAL WORD COUNT CMB.0099
00533 0400 00 0 00714 ADD PROTMP TOTAL USED THIS TIME CMB.0100
00534 0621 00 0 00714 STA PROTMP .. CMB.0101
00535 0402 00 0 00713 SUB RECWRD SUBTRACT WORDS PER RECORD FOR THESE UNITS CMB.0102
00536 -0120 00 0 00556 TMI PRO.2 NOT FINISHED WITH THIS TRACK YET CMB.0103
00537 -0100 00 0 00542 TNZ *+3 NOT END OF THIS COUNT CMB.0104
00540 -0520 00 6 00001 NZT 1,6 IS NEXT WORD DISCONNECT CMB.0105
00541 1 77777 7 00563 TXI PROND1,7,-1 YES - INDICATE LIST IS FINISHED. CMB.0106
00542 0602 00 0 00716 SLW PROTMP+2 SAVE LEFT-OVER CMB.0107
00543 PLACE (0,6)D SAVE LEFTOVER IN COMMAND WORD CMB.0108
00545 -0500 00 0 00715 CAL PROTMP+1 GET ORIGINAL WORD COUNT CMB.0109
00546 0402 00 0 00716 SUB PROTMP+2 REMOVE LEFTOVERS CMB.0110
00547 0602 00 0 00715 SLW PROTMP+1 PARTIAL I/O COUNT FOR THIS COMMAND CMB.0111
00550 0361 00 6 00000 ACL 0,6 UPDATE I/O ADDRESS FOR NEXT TIME AROUND CMB.0112
00551 0621 00 6 00000 STA 0,6 .. CMB.0113
00552 -0500 00 0 00715 CAL PROTMP+1 SET TRANMISSION CT. FOR THIS COMMAND CMB.0114
00553 PLACE (0,7)D .. CMB.0115
00555 1 77777 7 00570 TXI PROEND,7,-1 PUT IN DISCONNECT CMB.0116
00556 PRO.2 MAKE ((0,6)D)FALSE ZERO OUT QUEUE WORD TO INDICATE COMPLETION CMB.0117
00560 1 77777 7 00561 TXI *+1,7,-1 INCREMENT OUTPUT COUNTER CMB.0118
00561 0520 00 6 00001 ZET 1,6 DON'T GO BACK IF 'IOD' WAITING CMB.0119
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 24
I/O LIST PROCESSOR
00562 1 77777 6 00513 TXI PRO.1,6,-1 AND GO BACK FOR NEXT INPUT COMMAND CMB.0120
00563 PROND1 RESTO4 PRLXIT .. CMB.0121
00564 -0500 60 4 00002 CAL* 2,4 FIND ORIGIN OF QUEUE ENTRY ONCE MORE CMB.0122
00565 0737 00 6 00000 PAC ,6 .. CMB.0123
00566 MAKE ((FINISW,6)T)TRUE INDICATE END OF I/O LIST CMB.0124
00570 -0500 00 0 00666 PROEND CAL IODCON PUT IN DISCONNECT CMB.0125
00571 0602 00 7 00000 SLW 0,7 .. CMB.0126
00572 PRLXIT RETUR4 RETURN. CMB.0127
00573 0020 00 4 00001 TRA 1,4 .. CMB.0128
CMB.0129
00574 PROERR RESTO4 PRLXIT .. CMB.0130
00575 -0500 00 4 00004 CAL 4,4 FIND ERROR RETURN CMB.0131
00576 -0737 00 7 00000 PDC ,7 .. CMB.0132
00577 0020 00 7 00000 TRA 0,7 LEAVE CMB.0133
CMB.0134
00600 PROREL SAVE4 PRORXT PROTECT AND RELOCATE IO COMMANDS CMB.0135
00601 0044 00 0 00000 PAI .. CMB.0136
00602 -0320 00 0 00727 ANA =O777777077777 REMOVE TAG CMB.0137
00603 0054 00 200000 RFT B.BIT IS IT CORE B CMB.0138
00604 -0501 00 0 00721 ORA =O100000 YES - PUT IN CORRECT BIT CMB.0139
00605 0056 00 400000 RNT PROBIT IS IT PROTECTED CMB.0140
00606 0020 00 4 00002 TRA 2,4 NO CMB.0141
00607 0602 00 0 00715 SLW PROTMP+1 YES. CMB.0142
00610 -0320 00 0 00725 ANA =O77777077777 REMOVE PREFIX AND TAG CMB.0143
00611 0602 00 0 00716 SLW PROTMP+2 .. CMB.0144
00612 0361 00 5 00005 ACL RELOC,5 ADD USER'S RELOCATION CMB.0145
00613 0621 00 0 00715 STA PROTMP+1 AND PUT IN BOTH CMB.0146
00614 0621 00 0 00716 STA PROTMP+2 .. CMB.0147
00615 0771 00 0 00022 ARS 18 CHECK FOR BLOCKED CALL CMB.0148
00616 0100 00 0 00625 TZE PROR.1 NO CMB.0149
00617 0361 00 0 00716 ACL PROTMP+2 YES - CHECK UPPER ADDRESS CMB.0150
00620 0402 00 0 00717 SUB =1 .. CMB.0151
00621 0044 00 0 00000 PAI .. CMB.0152
00622 0054 00 700000 RFT 700000 CHECK FOR VALID ADDRESS CMB.0153
00623 0020 00 0 00635 TRA PRORER NOT VALID CMB.0154
00624 0074 00 4 00640 TSX TCKADR,4 CHECK FOR PROTECTION CMB.0155
00625 -0500 00 0 00716 PROR.1 CAL PROTMP+2 CHECK LOWER ADDRESS CMB.0156
00626 0074 00 4 00640 TSX TCKADR,4 .. CMB.0157
00627 -0500 00 0 00716 CAL PROTMP+2 AND PUT BACK IN OTHER WORD. CMB.0158
00630 0621 00 0 00715 STA PROTMP+1 .. CMB.0159
00631 0622 00 0 00715 STD PROTMP+1 .. CMB.0160
00632 -0500 00 0 00715 CAL PROTMP+1 .. CMB.0161
00633 PRORXT RETUR4 AND RETURN. CMB.0162
00634 0020 00 4 00002 TRA 2,4 GOOD RETURN. CMB.0163
CMB.0164
00635 -0500 00 0 00715 PRORER CAL PROTMP+1 RETURN BAD STUFF CMB.0165
00636 RESTO4 PRORXT .. CMB.0166
00637 0020 00 4 00001 TRA 1,4 .. CMB.0167
CMB.0168
00640 TCKADR XTRACT (AC)A ROUTINE TO CHECK USER ADDRESS CMB.0169
00641 -0130 00 0 00000 XCL ADDRESS TO MQ CMB.0170
00642 XTRACT (LIMITS,5)A GET USER'S PROTECTION LIMITS (LOWER BOUND) CMB.0171
00644 0040 00 0 00635 TLQ PRORER ERROR CMB.0172
00645 XTRACT (LIMITS,5)D UPPER BOUND NOW CMB.0173
00650 -0130 00 0 00000 XCL .. CMB.0174
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 25
I/O LIST PROCESSOR
00651 0040 00 0 00635 TLQ PRORER ERROR CMB.0175
00652 0020 00 4 00001 TRA 1,4 RETURN. CMB.0176
CMB.0177
00653 0625 00 0 00670 TGTEFA STT SCATMP GET EFFECTIVE ADDRESS FROM AC CMB.0178
00654 0522 00 0 00670 XEC SCATMP STORE AFFECTED INDEX REGISTER CMB.0179
00655 0361 00 0 00671 ACL XRTMP ADD TO ADDRESS OF AC CMB.0180
00656 0020 00 4 00001 TRA 1,4 .. CMB.0181
CMB.0182
00657 0600 00 0 00675 TQ STZ THSUSR INTERLOCK 'FNDUSR' AGAINST BAD CALLS CMB.0183
00660 0602 00 0 00700 SLW KEY (=QORG) CMB.0184
00661 GOIF ((AC)D)FALSE(1,6,II) TEST LENGTH OF QUEUES CMB.0185
DI 00662 0100 60 6 00001 TZE 1,6,II CMB.0185.001
00663 0402 00 0 00723 SUB =O1000000 MINIMUM LENGTH = 2 CMB.0186
00664 0100 60 6 00001 TZE* 1,6 NOT LONG ENOUGH CMB.0187
00665 0020 00 6 00002 TRA 2,6 OK CMB.0188
IOCM0043
INSERT CMV.C IOCM0044
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 26
CONSTANTS AND VARIABLES FOR I/O CONTROL MODULE
00666 0 00000 0 00000 IODCON IOD I/O DISCONNECT CMV.0002
CMV.0003
00667 0 00000 0 00000 SETTMP PZE ** ADDRESS USED BY SETUP CMV.0004
CMV.0005
00670 0636 00 0 00671 SCATMP SCA XRTMP,** TAG FIELD IS MODIFIED CMV.0006
00671 0 00000 0 00000 XRTMP PZE ** CONTENTS OF INDEX REGISTER CMV.0007
CMV.0008
00672 IOBLK DUP 1,DUSERS+1 FORM VECTOR FOR BLOCKING I/O CMV.0009
00672 0 00000 0 00000 PZE NON-ZERO MEANS DON'T RUN THIS USER CMV.0010
CMV.0011
00675 0 00000 0 00000 THSUSR *** NON-ZERO WHEN NXTUSR MAY BE ENTERED CMV.0012
00676 0 00000 0 00000 NXTQ *** NON-ZERO WHEN NXBEAD MAY BE ENTERED CMV.0013
CMV.0014
00677 0 00000 0 00000 IOBASE PZE ** BASE OF USER'S I/O STATUS TABLE CMV.0015
00700 0 00000 0 00000 QORG PZE ** ORIGIN OF QUEUES FOR STATUS TABLE/DEVICE CMV.0016
00701 0 00000 0 00000 AFENT. PZE ** BASE OF USER'S ACTIVE FILE ENTRY CMV.0017
00702 0 00000 0 00000 QBASE PZE ** BASE OF QUEUE BEAD CMV.0018
CMV.0019
00703 0 00000 0 00000 ERROR PZE ** LOCATION OF CALLER'S ERROR ENTRY CMV.0020
CMV.0021
00704 PRIOR. BSS 1 PRIORITY OF FILE IN QUEUEING CMV.0022
00705 NUM BSS 1 NUMBER OF WORST-CASE ENTRIES DESIRED CMV.0023
00706 QFULL BSS 1 ERROR RETURN TEST CMV.0024
00707 QUEUEF BSS 1 OFFSET FROM IOBASE TO LOCATE USER'S QUEUES CMV.0025
CMV.0026
00710 HLTTMP BSS 1 BASE OF I/O STATUS TABLE BEING BLOCKED CMV.0027
00711 CNTMP BSS 1 TEMPORARY FOR CNTIO CMV.0028
CMV.0029
00712 NXTUSE BSS 1 NEXT USER TO BE RUN CMV.0030
00713 RECWRD BSS 1 CALLER'S RECORD LENGTH CMV.0031
00714 PROTMP BSS 3 TEMPORARIES FOR PROLST CMV.0032
CMV.0033
00705 ASKED SYN NUM LENGTH OF QUEUE BEAD DESIRED (QGET) CMV.0034
00677 IOSTAT SYN IOBASE .. CMV.0035
00702 PQ SYN QBASE QUEUE UNDER CONSIDERATION CMV.0036
00700 KEY SYN QORG POINTER TO USER'S QUEUES (A,,N) CMV.0037
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 27
LITERALS AND CROSS-REFERENCE LISTING
END IOCM0047
LITERALS
00717 000000000001
00720 000000077777
00721 000000100000
00722 000000700000
00723 000001000000
00724 077777000000
00725 077777077777
00726 700000000000
00727 777777077777
00730 777777777777
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 1
POST PROCESSOR ASSEMBLY DATA
731 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
13 F 27
14 P 27
14 R 27
14 S 27
14 W 27
22 DR 27
22 DW 27
60 II 27, 662
702 PQ 155, 165, 232, 250, 717
657 TQ 50, 74, 144, 207, 226, 451
700 KEY 53, 77, 147, 212, 247, 453, 660, 717
705 NUM 66, 100, 717
0 TMP 27
53 AFST 27
20 CHNG 27
3 FMAX 27, 271, 306, 321, 331
13 MODE 27
676 NXTQ 440, 456
221 QDEL 0
112 QGET 0
0 QLNG 27
700 QORG 460, 717
61 QTST 0
100000 A.BIT 27
705 ASKED 121, 153, 717
200000 B.BIT 27, 603
352 CNTIO 0
373 CNT.1 363
360 CNT.2 372
402 CNT.3 376
711 CNTMP 357, 367, 370, 374
300 DRAIN 0
23 EFLAG 27
703 ERROR 71, 110, 124
416 FND.1 433
417 FND.2 436
420 FND.3 427
1 FUNCT 27
454 GTB.1 443, 465
13 ILOCK 27
672 IOBLK 260, 316, 406, 426
323 IORST 0
6 ..025 27, 30, 31, 32
6 ..027 32, 33, 34, 35
6 ..029 35, 36, 37, 40
6 ..031 40, 41, 42, 43
27 .REL. 27
0 NEXTQ 27, 454
1 PAFST 27, 466
20 PRIME 27
23 PRIOR 27, 340
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 2
POST PROCESSOR ASSEMBLY DATA
513 PRO.1 522, 562
556 PRO.2 536
702 QBASE 442, 461, 472, 717
246 QDL.1 242
706 QFULL 72, 102, 107, 143
0 QINIT 52
1 QPRF1 27
167 QSCRP 0
1 QTAG1 27
4 QTEST 76
102 QTS.1 166
107 QTS.2 75
0 QUENO 27
43 QUINT 0
5 RELOC 27, 612
4 RMODE 27
671 XRTMP 655, 670
26 ACTLNG 27
701 AFENT. 133, 151, 156, 177, 214, 215
25 AFENTY 27
16 ASGNSW 27
2 AUTHNO 27
12 AUTHOR 27
20 BUFADR 27
20 BUFREC 27
23 CURREC 27
22 DADDRS 27
12 DATELU 27
11 DAYTIM 27
22 DCOUNT 27
21 DINDEX 27
17 DRAIN1 35
20 DRAIN2 36
21 DRAIN3 37
304 DRAINA 261
34 DRAINF 35, 305
2 DUSERS 27, 672
13 ENAME1 27
14 ENAME2 27
15 ERCALL 27
11 ERCODE 27
10 ERNAME 27
7 ERRILC 27
0 FINISW 27, 463, 567
7 FNAME1 27
10 FNAME2 27
404 FNDUSR 0
6 FPRIOR 27
5 FPROBN 27
6 FPROGN 27
10 GETEFA 335
2 GETQUE 146
445 GTBEAD 416
710 HLTTMP 265, 270
273 HLTXIT 252, 253, 254, 255, 300, 301, 302, 303, 306, 310, 311, 312, 313, 321, 323, 324, 325
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 3
POST PROCESSOR ASSEMBLY DATA
326, 331
677 IOBASE 445, 470, 473, 717
310 IOBEGN 0
14 IOBGN1 32
15 IOBGN2 33
16 IOBGN3 34
31 IOBGNF 32, 320
12 IOCODE 27
700000 IODBIT 27, 361, 516
666 IODCON 570
252 IOHALT 0
11 IOHLT1 27
12 IOHLT2 30
13 IOHLT3 31
26 IOHLTF 27, 267
100000 IONBIT 27, 523
200000 IOPBIT 27
22 IORST1 40
23 IORST2 41
24 IORST3 42
37 IORSTF 40, 330
1 IOSMEM 27
677 IOSTAT 137, 150, 203, 213, 717
23 IOTASK 27, 157, 164, 217, 237, 245
14 LCOUNT 27
4 LIMITS 27, 642, 645
14 LNAME1 27
15 LNAME2 27
11 LPROBN 27
12 LPROGN 27
14 NORECS 27
437 NXBEAD 0
712 NXTUSE 413, 417, 424
434 NXTUSR 0
15 POINTR 27
704 PRIOR. 117, 152
7 PRIORT 412
572 PRLXIT 475, 563, 574
400000 PROBIT 27, 605
0 PROBNO 27
570 PROEND 555
574 PROERR 526
1 PROGNO 27
475 PROLST 0
563 PROND1 520, 541
600 PROREL 525
635 PRORER 623, 644, 651
625 PROR.1 616
633 PRORXT 600, 636
714 PROTMP 476, 532, 533, 534, 542, 545, 546, 547, 552, 607, 611, 613, 614, 617, 625, 627, 630
631, 632, 635
54 QINXIT 43, 44, 45, 46, 167, 170, 171, 172, 200, 210, 220, 221, 222, 223, 224, 233, 251
3 QSCRAP 211
103 QTSXIT 61, 62, 63, 64, 112, 113, 114, 115, 134, 145, 154
16 QUEUE1 27
1 I/O CONTROL MODULE (C. GARMAN --- 27 MARCH 1965) 03/04/70 1557.5 PAGE 4
POST PROCESSOR ASSEMBLY DATA
17 QUEUE2 27
20 QUEUE3 27
21 QUEUE4 27
22 QUEUE5 27
23 QUEUE6 27
24 QUEUE7 27
707 QUEUEF 130, 140, 174, 204, 411, 446
2 QWORDS 27
13 RCOUNT 27
713 RECWRD 503, 535
16 REDREC 27
16 REDWRD 27
1 RETQUE 246
2 RNAME1 27
3 RNAME2 27
0 RPROBN 27
1 RPROGN 27
14 RWSTAT 27
670 SCATMP 653, 654
667 SETTMP 336, 347
350 SETXIT 333
24 SMTMP1 27
25 SMTMP2 27
333 SSETUP 0
53 TBLMIN 27
640 TCKADR 624, 626
653 TGTEFA 0, 132, 136, 176, 202, 231, 235, 511
675 THSUSR 414, 421, 434, 437, 657
3 URCODE 27
6 USRTBL 262, 343, 415, 430
5 UTABLE 345
21 WINDEX 27
17 WRTREC 27
17 WRTWRD 27
0 NO ERROR IN ABOVE ASSEMBLY.
QMANB BCD 02/22/71 1719.3 7736 00000
1
BEGIN
COMMENT ..... QUEUE ROUTINES FOR STRAT. MODULES ..... $,
COMMENT $,
COMMENT THESE ARE GENERAL QUEUE HANDLING ROUTINES WRITTEN IN AED-0
LANGUAGE FOR EASE OF DEBUGGING. IN THE FOLLOWING ROUTINES,
THE PARAMETERS HAVE THESE MEANINGS - $,
COMMENT $,
COMMENT KEY IS A PZE QSPACE,,LENGTH $,
COMMENT IOSTAT IS A POINTER TO TOP OF IOSTATUS TABLE $,
COMMENT AFST IS A POINTER TO TOP OF ACTIVE FILE ENTRY $,
COMMENT ERROR IS PLACE TO GO ON ERROR RETURN $,
COMMENT $,
COMMENT THE FOLLOWING QUEUE COMPONENTS ARE USED INTERNALLY - FREEP
POINTS TO THE NEXT FREE STORAGE BEAD (RELATIVE TO ORIGIN OF
THE QUEUE SPACE). FRELNG IS THE LENGTH OF THIS BLOCK OF FRE
STORAGE. NEXTQ IS THE POINTER TO THE NEXT QUEUE ELEMENT.
FUNCT IS A 15 BIT FUNCTION CODE FILLED IN BY THE STRATEGY
MODULES. QLNG IS THE LENGTH OF THIS QUEUE ELEMENT
(INCLUDING HEADER). AFST IS A POINTER TO THE ACTIVE FILE
ENTRY (RELATIVE TO THE IO-STATUS TABLE IN WHICH IT IS
LOCATED). TWO BOOLEAN SWITCHES ARE PROVIDED - DONESW AND
FINISW - WHICH ARE INITIALIZED TO 'FALSE' (ZERO). $,
COMMENT $,
INTEGER QBASE,TP,NP,BP,RP,PQ,BADRET,QSIZE,QHEAD $,
INTEGER COMPONENT FRELNG,FREEP,WHOLE,WHOLE1 $,
INTEGER COMPONENT QUENO,FUNCT,NEXTQ,PAFST,QLNG $,
BOOLEAN COMPONENT FINISW $,
PACK 77777C,0,ADDRESS COMPONENTS FRELNG,NEXTQ,PAFST $,
PACK 77777C18,18,DECREMENT COMPONENTS FREEP,FUNCT,QLNG $,
PACK 7C15,15,TAG COMPONENTS FINISW $,
PACK 7C33,33,PREFIX COMPONENTS QUENO $,
FRELNG $=$ FREEP $=$ WHOLE $=$ 0 $,
QUENO $=$ QLNG $=$ NEXTQ $=$ FINISW $=$ 0 $,
WHOLE1 $=$ FUNCT $=$ PAFST $=$ 1 $,
PRESET
BEGIN
COMMENT QSIZE IS THE MAXIMUM SIZE OF EACH QUEUE ELEMENT AND IS
USED BY QTEST TO SEE IF ENOUGH SPACE EXISTS FOR THE PROPER
NUMBER OF REQUESTS. QHEAD IS THE LENGTH OF THE STANDARD
QUEUE HEADER WHICH IS ADDED TO THE REQUESTED SIZE TO GET
ACTUAL BEAD LENGTH. $,
QSIZE = 7 $,
QHEAD = 2 $,
END $,
PRESET BADRET = 0 $,
DEFINE PROCEDURE QINIT(KEY) WHERE INTEGER KEY TOBE
BEGIN
COMMENT $,
COMMENT QINIT SEES IF THE FIRST WORD OF THE QUEUE SPACE HAS BEEN
INITIALIZED. IF THIS WORD IS ZERO, IT ASSUMES IT HAS NOT
AND SETS UP THE APPROPRIATE POINTERS TO EMPTY QUEUE STRING
AND ONE BEAD OF FREE STORAGE. $,
COMMENT $,
IF WHOLE(KEY) EQL 0
THEN BEGIN
WHOLE(KEY) = 1C18 $,
WHOLE1(KEY) = (KEY .RS. 18)-1 $,
END $,
END $,
DEFINE PROCEDURE RETQUE(KEY,RPQ) WHERE INTEGER KEY,RPQ TOBE
BEGIN
COMMENT $,
COMMENT RETQUE RETURNS THE BEAD POINTED TO BY RPQ TO THE FREE
STORAGE STRING LOCATED IN THE QUEUE DESIGNATED BY KEY. (IF
FINISW OF THE BEAD IS FALSE, A BAD CALL IS PRESUMED AND THE
BEAD IS ---NOT--- DELETED). AN ATTEMPT IS MADE TO 'GARBAGE
COLLECT' THE FREE SPACE BY DETERMINING IF TWO OR MORE FREE
STORAGE BEADS LIE ADJACENT TO ONE ANOTHER. $,
COMMENT $,
IF FINISW(PQ = RPQ)
THEN BEGIN
FINISW(PQ) = FALSE $,
TP = NEXTQ(QBASE = KEY .A. 77777C) $,
RP = PQ-QBASE $,
BP = 0 $,
COMMENT REMOVE THE SUBJECT BEAD FROM THE QUEUE LIST BY LOOKING FOR
THE BEAD WHICH POINTS TO IT AND PATCHING NEXTQ $,
SEARCH1 $ IF TP NEQ 0 AND TP NEQ RP
THEN BEGIN
TP = NEXTQ((BP = TP)+QBASE) $,
GOTO SEARCH1 $,
END
ELSE NEXTQ(BP+QBASE) = NEXTQ(TP+QBASE) $,
TP = FREEP(QBASE) $,
BP = 0 $,
COMMENT INSERT THIS BEAD INTO ASCENDING ADDRESS SEQUENCE $,
LOOK $ IF TP NEQ 0 AND TP LEQ RP
THEN BEGIN
TP = FREEP((BP = TP)+QBASE) $,
GOTO LOOK $,
END $,
TP = TP+QBASE $,
BP = BP+QBASE $,
COMMENT SEE IF THIS BEAD IS ADJACENT TO PREVIOUS FREE STORAGE
ELEMENT. IF SO, THEN JUST ADD THE LENGTH OF THIS BEAD TO
THE OLD LENGTH. $,
IF PQ EQL FRELNG(BP)+BP AND BP NEQ QBASE
THEN BEGIN
FRELNG(BP) = FRELNG(BP)+QLNG(PQ) $,
PQ = BP $,
END
ELSE BEGIN
FRELNG(PQ) = QLNG(PQ) $,
FREEP(PQ) = FREEP(BP) $,
FREEP(BP) = RP $,
END $,
COMMENT SEE IF THIS BEAD IS ADJACENT TO BEAD NEXT IN FREE STORAGE
STRING. IF SO, ADD ITS COUNT TO THIS ONE AND USE ITS FREEP
POINTER. $,
IF TP EQL PQ+FRELNG(PQ)
THEN BEGIN
FRELNG(PQ) = FRELNG(PQ)+FRELNG(TP) $,
FREEP(PQ) = FREEP(TP) $,
END $,
END
ELSE BADRET = BADRET+1 $,
END $,
DEFINE INTEGER PROCEDURE GETQUE(KEY,IOSTAT,AFST,PRIOR,ASKED,
ERROR) WHERE INTEGER KEY,IOSTAT,AFST,PRIOR,ASKED $,
LABEL ERROR $, TOBE
BEGIN
COMMENT $,
COMMENT GETQUE ATTEMPTS TO FIND A QUEUE BEAD OF LENGTH ASKED+QHEAD
IN QUEUE DESIGNATED BY 'KEY'. IF IT DOES FIND SPACE, IT
INSERTS IT IN THE QUEUE LIST AFTER OTHERS OF PRIORITY
'PRIOR'. IT THEN PROCEEDS TO INITIALIZE STANDARD PARTS OF
HEADER $,
COMMENT $,
INTEGER SIZE $,
TP = FREEP(QBASE = KEY .A. 77777C) $,
BP = 0 $,
SIZE = ASKED+QHEAD $,
LOOK1 $ IF TP EQL 0
THEN GOTO ERROR $,
IF FRELNG(TP+QBASE) LES SIZE
THEN BEGIN
TP = FREEP((BP = TP)+QBASE) $,
GOTO LOOK1 $,
END
ELSE BEGIN
BP = BP+QBASE $,
IF FRELNG(TP = (NP = TP)+QBASE) EQL SIZE
THEN FREEP(BP) = FREEP(TP)
ELSE BEGIN
FREEP(BP) = (NP = NP+SIZE) $,
FREEP(NP = NP+QBASE) = FREEP(TP) $,
FRELNG(NP) = FRELNG(TP)-SIZE $,
END $,
END $,
NP = TP $,
BP = 0 $,
TP = NEXTQ(QBASE) $,
LOOK2 $ IF TP NEQ 0 AND QUENO(TP+QBASE) LEQ PRIOR
THEN BEGIN
TP = NEXTQ((BP = TP)+QBASE) $,
GOTO LOOK2 $,
END $,
NEXTQ(NP) = NEXTQ(BP = BP+QBASE) $,
NEXTQ(BP) = NP-QBASE $,
QLNG(NP) = SIZE $,
FINISW(NP) = FALSE $,
PAFST(NP) = AFST-IOSTAT $,
QUENO(NP) = PRIOR $,
NP = NP $,
END $,
DEFINE PROCEDURE QSCRAP(KEY,IOSTAT,AFST) WHERE INTEGER KEY,
IOSTAT,AFST $, TOBE
BEGIN
COMMENT $,
COMMENT QSCRAP SEARCHES THE QUEUE DESIGNATED BY KEY FOR ALL
ELEMENTS WITH A REFERENCE TO THE REQUESTED ACTIVE FILE
ENTRY IN THE INDICATED IO-STATUS TABLE. IF IT FINDS ONE, IT
THEN CALLS RETQUE TO DELETE IT. 'QSCRAP' IS CALLED IF THE
STRATEGY MODULE FINDS A FATAL ERROR DURING OPERATION ON A
FILE OR AT THE TIME THE FILE IS CLOSED. $,
COMMENT $,
INTEGER BP,TP,RP,QBASE $,
TP = NEXTQ(QBASE = KEY .A. 77777C) $,
RP = AFST-IOSTAT $,
LOOK2 $ IF TP NEQ 0
THEN BEGIN
IF PAFST(TP = TP+QBASE) EQL RP
THEN BEGIN
BP = NEXTQ(TP) $,
FINISW(TP) = TRUE $,
RETQUE(KEY,TP) $,
TP = BP $,
END
ELSE TP = NEXTQ(TP) $,
GOTO LOOK2 $,
END $,
END $,
DEFINE PROCEDURE QTEST(KEY,NUM,ERROR) WHERE INTEGER KEY,NUM $,
LABEL ERROR TOBE
BEGIN
COMMENT $,
COMMENT 'QTEST' SEARCHES THE DESIGNATED QUEUE TO SEE IF THERE IS
ROOM FOR 'NUM' ELEMENTS OF LENGTH 'QSIZE'. IF NOT IT
RETURNS THROUGH 'ERROR.' $,
COMMENT $,
TP = FREEP(KEY) $,
BP = NUM $,
LOOK3 $ IF BP GRT 0
THEN BEGIN
IF TP EQL 0
THEN GOTO ERROR $,
IF FRELNG(TP = TP+KEY) GRT QSIZE
THEN BP = BP-FRELNG(TP)/QSIZE $,
TP = FREEP(TP) $,
GOTO LOOK3 $,
END $,
END $,
END FINI
1PAGE 1 COMPILATION LISTING
00001 QINIT TRA (L000
00002 (L001 LAC KEY,1
00003 CLA WHOLE,1
00004 TNZ (L002
00005 CLA 1000000
00006 STO WHOLE,1
00007 CAL KEY
00010 LAC 22,4
00011 ARS 0,4
00012 SUB 1
00013 STO WHOLE1,1
(L002
00014 RETURN AXT **,4
00015 TRA 1,4
00016 (L000 SXA RETURN,4
00017 CLA 1,4
00020 STA 2
00021 STA 7
00022 TRA (L001
00023 RETQUE TRA (L003
00024 (L004 CLA RPQ
00025 STO PQ
00026 PAC 0,4
00027 CAL FINISW,4
00030 ANA 700000
00031 TZE (L005
00032 LAC PQ,1
00033 CAL FALSE
00034 ALS 17
00035 STT FINISW,1
00036 CAL KEY
00037 ANA 77777
00040 STO QBASE
00041 PAC 0,4
00042 CAL NEXTQ,4
00043 ANA 77777
00044 STO TP
00045 CLA PQ
00046 SUB QBASE
00047 STO RP
00050 CLA 0
00051 STO BP
00052 SEARCH1 CLA TP
00053 TZE (L006
00054 CLA TP
00055 SUB RP
00056 TZE (L006
00057 CLA TP
00060 STO BP
00061 ADD QBASE
00062 PAC 0,4
1PAGE 2 COMPILATION LISTING
00063 CAL NEXTQ,4
00064 ANA 77777
00065 STO TP
00066 TRA SEARCH1
00067 TRA (L007
00070 (L006 CLA BP
00071 ADD QBASE
00072 STO (C011
00073 CLA TP
00074 ADD QBASE
00075 LAC (C011,1
00076 PAC 0,4
00077 CAL NEXTQ,4
00100 ANA 77777
00101 STA NEXTQ,1
00102 (L007 LAC QBASE,1
00103 CAL FREEP,1
00104 ANA 77777000000
00105 ARS 22
00106 STO TP
00107 CLA 0
00110 STO BP
00111 LOOK CLA TP
00112 TZE (L010
00113 CLA TP
00114 SUB RP
00115 TZE *+2
00116 TPL (L010
00117 CLA TP
00120 STO BP
00121 ADD QBASE
00122 PAC 0,4
00123 CAL FREEP,4
00124 ANA 77777000000
00125 ARS 22
00126 STO TP
00127 TRA LOOK
00130 (L010 CLA TP
00131 ADD QBASE
00132 STO TP
00133 CLA BP
00134 ADD QBASE
00135 STO BP
00136 LAC BP,1
00137 CAL FRELNG,1
00140 ANA 77777
00141 ADD BP
00142 SUB PQ
00143 TNZ (L011
00144 CLA BP
00145 SUB QBASE
1PAGE 3 COMPILATION LISTING
00146 TZE (L011
00147 LAC PQ,2
00150 CAL FRELNG,1
00151 ANA 77777
00152 XCA
00153 CAL QLNG,2
00154 ANA 77777000000
00155 ARS 22
00156 STO (C007
00157 XCA
00160 ADD (C007
00161 STA FRELNG,1
00162 CLA BP
00163 STO PQ
00164 TRA (L012
00165 (L011 LAC PQ,1
00166 CAL QLNG,1
00167 ANA 77777000000
00170 ARS 22
00171 STA FRELNG,1
00172 LAC BP,2
00173 CAL FREEP,2
00174 ANA 77777000000
00175 ARS 22
00176 ALS 22
00177 STD FREEP,1
00200 CLA RP
00201 ALS 22
00202 STD FREEP,2
00203 (L012 LAC PQ,1
00204 CLA PQ
00205 XCA
00206 CAL FRELNG,1
00207 ANA 77777
00210 STO (C007
00211 XCA
00212 ADD (C007
00213 SUB TP
00214 TNZ (L013
00215 LAC TP,2
00216 CAL FRELNG,1
00217 ANA 77777
00220 XCA
00221 CAL FRELNG,2
00222 ANA 77777
00223 STO (C007
00224 XCA
00225 ADD (C007
00226 STA FRELNG,1
00227 CAL FREEP,2
00230 ANA 77777000000
1PAGE 4 COMPILATION LISTING
00231 ARS 22
00232 ALS 22
00233 STD FREEP,1
00234 (L013 TRA (L014
00235 (L005 CLA BADRET
00236 ADD 1
00237 STO BADRET
(L014
00240 RETURN AXT **,4
00241 TRA 1,4
00242 (L003 SXA RETURN,4
00243 CLA 1,4
00244 STA 36
00245 CLA 2,4
00246 STA 24
00247 TRA (L004
00250 GETQUE TRA (L015
00251 (L016 CAL KEY
00252 ANA 77777
00253 STO QBASE
00254 PAC 0,4
00255 CAL FREEP,4
00256 ANA 77777000000
00257 ARS 22
00260 STO TP
00261 CLA 0
00262 STO BP
00263 CLA ASKED
00264 ADD QHEAD
00265 STO SIZE
00266 LOOK1 CLA TP
00267 TNZ (L017
00270 TRA ERROR
00271 (L017 CLA TP
00272 ADD QBASE
00273 PAC 0,4
00274 CAL FRELNG,4
00275 ANA 77777
00276 SUB SIZE
00277 TZE (L020
00300 TPL (L020
00301 CLA TP
00302 STO BP
00303 ADD QBASE
00304 PAC 0,4
00305 CAL FREEP,4
00306 ANA 77777000000
00307 ARS 22
00310 STO TP
00311 TRA LOOK1
00312 TRA (L021
1PAGE 5 COMPILATION LISTING
00313 (L020 CLA BP
00314 ADD QBASE
00315 STO BP
00316 CLA TP
00317 STO NP
00320 ADD QBASE
00321 STO TP
00322 PAC 0,4
00323 CAL FRELNG,4
00324 ANA 77777
00325 SUB SIZE
00326 TNZ (L022
00327 LAC BP,1
00330 LAC TP,2
00331 CAL FREEP,2
00332 ANA 77777000000
00333 ARS 22
00334 ALS 22
00335 STD FREEP,1
00336 TRA (L023
00337 (L022 CLA NP
00340 ADD SIZE
00341 STO NP
00342 LAC BP,1
00343 ALS 22
00344 STD FREEP,1
00345 CLA NP
00346 ADD QBASE
00347 STO NP
00350 PAC 0,4
00351 LAC TP,2
00352 CAL FREEP,2
00353 ANA 77777000000
00354 ARS 22
00355 ALS 22
00356 STD FREEP,4
00357 CAL FRELNG,2
00360 ANA 77777
00361 SUB SIZE
00362 LAC NP,3
00363 STA FRELNG,3
(L023
00364 (L021 CLA TP
00365 STO NP
00366 CLA 0
00367 STO BP
00370 LAC QBASE,1
00371 CAL NEXTQ,1
00372 ANA 77777
00373 STO TP
00374 LOOK2 CLA TP
1PAGE 6 COMPILATION LISTING
00375 TZE (L024
00376 CLA TP
00377 ADD QBASE
00400 PAC 0,4
00401 CAL QUENO,4
00402 ANA 700000000000
00403 ARS 41
00404 SUB PRIOR
00405 TZE *+2
00406 TPL (L024
00407 CLA TP
00410 STO BP
00411 ADD QBASE
00412 PAC 0,4
00413 CAL NEXTQ,4
00414 ANA 77777
00415 STO TP
00416 TRA LOOK2
00417 (L024 CLA BP
00420 ADD QBASE
00421 STO BP
00422 LAC NP,1
00423 PAC 0,4
00424 CAL NEXTQ,4
00425 ANA 77777
00426 STA NEXTQ,1
00427 CLA NP
00430 SUB QBASE
00431 LAC BP,2
00432 STA NEXTQ,2
00433 CLA SIZE
00434 ALS 22
00435 STD QLNG,1
00436 CAL FALSE
00437 ALS 17
00440 STT FINISW,1
00441 CLA AFST
00442 SUB IOSTAT
00443 STA PAFST,1
00444 CLA PRIOR
00445 ALS 41
00446 STP QUENO,1
00447 CLA NP
00450 STO NP
00451 RETURN AXT **,4
00452 TRA 1,4
00453 (L015 SXA RETURN,4
00454 CLA 1,4
00455 STA 251
00456 CLA 2,4
00457 STA 442
1PAGE 7 COMPILATION LISTING
00460 CLA 3,4
00461 STA 441
00462 CLA 4,4
00463 STA 404
00464 STA 444
00465 CLA 5,4
00466 STA 263
00467 CLA 6,4
00470 STA 270
00471 TRA (L016
00472 QSCRAP TRA (L025
00473 (L026 CAL KEY
00474 ANA 77777
00475 STO QBASE
00476 PAC 0,4
00477 CAL NEXTQ,4
00500 ANA 77777
00501 STO TP
00502 CLA AFST
00503 SUB IOSTAT
00504 STO RP
00505 LOOK2 CLA TP
00506 TZE (L027
00507 CLA TP
00510 ADD QBASE
00511 STO TP
00512 PAC 0,4
00513 CAL PAFST,4
00514 ANA 77777
00515 SUB RP
00516 TNZ (L030
00517 LAC TP,1
00520 CAL NEXTQ,1
00521 ANA 77777
00522 STO BP
00523 CAL TRUE
00524 ALS 17
00525 STT FINISW,1
00526 TSX RETQUE,4
00527 TXH KEY
00530 TXH TP
00531 CLA BP
00532 STO TP
00533 TRA (L031
00534 (L030 LAC TP,1
00535 CAL NEXTQ,1
00536 ANA 77777
00537 STO TP
00540 (L031 TRA LOOK2
(L027
00541 RETURN AXT **,4
1PAGE 8 COMPILATION LISTING
00542 TRA 1,4
00543 (L025 SXA RETURN,4
00544 CLA 1,4
00545 STA 473
00546 STA 527
00547 CLA 2,4
00550 STA 503
00551 CLA 3,4
00552 STA 502
00553 TRA (L026
00554 QTEST TRA (L032
00555 (L033 LAC KEY,1
00556 CAL FREEP,1
00557 ANA 77777000000
00560 ARS 22
00561 STO TP
00562 CLA NUM
00563 STO BP
00564 LOOK3 CLA BP
00565 TMI (L034
00566 TZE (L034
00567 CLA TP
00570 TNZ (L035
00571 TRA ERROR
00572 (L035 CLA TP
00573 ADD KEY
00574 STO TP
00575 PAC 0,4
00576 CAL FRELNG,4
00577 ANA 77777
00600 SUB QSIZE
00601 TMI (L036
00602 TZE (L036
00603 LAC TP,1
00604 CAL FRELNG,1
00605 ANA 77777
00606 LRS 43
00607 DVP QSIZE
00610 STQ (C020
00611 CLA BP
00612 SUB (C020
00613 STO BP
00614 (L036 LAC TP,1
00615 CAL FREEP,1
00616 ANA 77777000000
00617 ARS 22
00620 STO TP
00621 TRA LOOK3
(L034
00622 RETURN AXT **,4
00623 TRA 1,4
1PAGE 9 COMPILATION LISTING
00624 (L032 SXA RETURN,4
00625 CLA 1,4
00626 STA 555
00627 STA 573
00630 CLA 2,4
00631 STA 562
00632 CLA 3,4
00633 STA 571
00634 TRA (L033
DDSTB BCD 02/22/71 1720.0 45856 00000
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 1
SYSTEM MACROS AND EQUIVALENCE
DDST0005
00044 ENTRY SINIT1 DDST0006
00060 ENTRY OPEN1 DDST0007
00120 ENTRY CLOSE1 DDST0008
00127 ENTRY QTEST1 DDST0009
00160 ENTRY READ1 DDST0010
00274 ENTRY WRITE1 DDST0011
00300 ENTRY REWRT1 DDST0012
00303 ENTRY DFILE1 DDST0013
00346 ENTRY SCRAP1 DDST0014
00613 ENTRY IOHLT1 DDST0015
00633 ENTRY IOBGN1 DDST0016
00626 ENTRY DRAIN1 DDST0017
00634 ENTRY IORST1 DDST0018
DDST0019
00057 ENTRY SINIT2 DDST0020
00060 ENTRY OPEN2 DDST0021
00120 ENTRY CLOSE2 DDST0022
00127 ENTRY QTEST2 DDST0023
00160 ENTRY READ2 DDST0024
00274 ENTRY WRITE2 DDST0025
00300 ENTRY REWRT2 DDST0026
00303 ENTRY DFILE2 DDST0027
00346 ENTRY SCRAP2 DDST0028
00613 ENTRY IOHLT2 DDST0029
00633 ENTRY IOBGN2 DDST0030
00626 ENTRY DRAIN2 DDST0031
00635 ENTRY IORST2 DDST0032
DDST0033
00636 ENTRY SM1TRP ****** FOR DEBUGGING PURPOSES ****** DDST0034
02263 ENTRY SM1VAR ****** LIKEWISE ****** DDST0035
DDST0036
EXTERN .REFER,.DINIT,.FORCE,.DRSET,.DREAD,.DWRIT I/O ADAPTER DDST0037
EXTERN QUINT,QTST,QGET,QDEL,QSCRP QUEUE MANIPULATION S/R-S DDST0038
EXTERN SSETUP,GETEFA,.PACK,.UNPAK UTILITY ROUTINES DDST0039
EXTERN CNTIO,PROLST,FNDUSR,NXBEAD,NXTUSR ENTRIES IN I/O CONTROLDDST0040
EXTERN GETTRK,DELTRK TRACK MANAGEMENT SUBROUTINES DDST0041
EXTERN SSTRAP SUPERVISOR INTERRUPT ENTRY DDST0042
DDST0043
INSERT IOEQU INSERT I/O EQUIVALENCE PACKAGE DDST0044
IOEQ0001
..... FILE INPUT/OUTPUT SYSTEM EQUIVALENCE PACKAGE ..... IOEQ0002
IOEQ0003
00000 335125262551 .REFER
00001 332431453163 .DINIT
00002 332646512325 .FORCE
00003 332451622563 .DRSET
00004 332451252124 .DREAD
00005 332466513163 .DWRIT
00006 506431456360 QUINT
00007 506362636060 QTST
00010 502725636060 QGET
00011 502425436060 QDEL
00012 506223514760 QSCRP
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 2
SYSTEM MACROS AND EQUIVALENCE
00013 626225636447 SSETUP
00014 272563252621 GETEFA
00015 334721234260 .PACK
00016 336445472142 .UNPAK
00017 234563314660 CNTIO
00020 475146436263 PROLST
00021 264524646251 FNDUSR
00022 456722252124 NXBEAD
00023 456763646251 NXTUSR
00024 272563635142 GETTRK
00025 242543635142 DELTRK
00026 626263512147 SSTRAP
00002 DUSERS EQU 2 MAX. NO. OF USERS OF I/O SYSTEM IOEQ0004
00003 FMAX EQU 3 MAX. NO. OF DEVICES AVAILABLE IN I/O SYSTEMIOEQ0005
00002 IOSMEM EQU 2 MEMORY WHERE I/O SYSTEM RESIDES (1=A, 2=B) IOEQ0006
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 3
SYSTEM MACROS AND EQUIVALENCE
00000 .REL. SET 0 INITIALIZE RELATIVE A.F.S.T. ADDRESS IOEQ0008
IOEQ0009
SETWRD MACRO SYMBOL TO SET UP ACTIVE FILE ENTRIES IOEQ0010
IRP SYMBOL .. IOEQ0011
PMC ON .. IOEQ0012
SYMBOL SYN .REL. .. IOEQ0013
PMC OFF .. IOEQ0014
IRP .. IOEQ0015
.REL. SET .REL.+1 .. BUMP RELATIVE ADDRESS IOEQ0016
SETWRD END .. IOEQ0017
IOEQ0018
00027 SETWRD (RPROBN) IOEQ0019
00000 RPROBN SYN .REL. IOEQ0019.001
00027 SETWRD (RPROGN) IOEQ0020
00001 RPROGN SYN .REL. IOEQ0020.001
00027 SETWRD (RNAME1) IOEQ0021
00002 RNAME1 SYN .REL. IOEQ0021.001
00027 SETWRD (RNAME2) IOEQ0022
00003 RNAME2 SYN .REL. IOEQ0022.001
00027 SETWRD (RMODE) IOEQ0023
00004 RMODE SYN .REL. IOEQ0023.001
00027 SETWRD (FPROBN) IOEQ0024
00005 FPROBN SYN .REL. IOEQ0024.001
00027 SETWRD (FPROGN) IOEQ0025
00006 FPROGN SYN .REL. IOEQ0025.001
00027 SETWRD (FNAME1) IOEQ0026
00007 FNAME1 SYN .REL. IOEQ0026.001
00027 SETWRD (FNAME2) IOEQ0027
00010 FNAME2 SYN .REL. IOEQ0027.001
00027 SETWRD (DAYTIM,LPROBN) IOEQ0028
00011 DAYTIM SYN .REL. IOEQ0028.001
00011 LPROBN SYN .REL. IOEQ0028.001
00027 SETWRD (DATELU,AUTHOR,LPROGN) IOEQ0029
00012 DATELU SYN .REL. IOEQ0029.001
00012 AUTHOR SYN .REL. IOEQ0029.001
00012 LPROGN SYN .REL. IOEQ0029.001
00027 SETWRD (MODE,ILOCK,F,RCOUNT) IOEQ0030
00013 MODE SYN .REL. IOEQ0030.001
00013 ILOCK SYN .REL. IOEQ0030.001
00013 F SYN .REL. IOEQ0030.001
00013 RCOUNT SYN .REL. IOEQ0030.001
00027 SETWRD (RWSTAT,S,W,R,NORECS,P,LCOUNT,LNAME1) IOEQ0031
00014 RWSTAT SYN .REL. IOEQ0031.001
00014 S SYN .REL. IOEQ0031.001
00014 W SYN .REL. IOEQ0031.001
00014 R SYN .REL. IOEQ0031.001
00014 NORECS SYN .REL. IOEQ0031.001
00014 P SYN .REL. IOEQ0031.001
00014 LCOUNT SYN .REL. IOEQ0031.001
00014 LNAME1 SYN .REL. IOEQ0031.001
00027 SETWRD (POINTR,LNAME2) IOEQ0032
00015 POINTR SYN .REL. IOEQ0032.001
00015 LNAME2 SYN .REL. IOEQ0032.001
00027 SETWRD (ASGNSW,REDREC,REDWRD) IOEQ0033
00016 ASGNSW SYN .REL. IOEQ0033.001
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 4
SYSTEM MACROS AND EQUIVALENCE
00016 REDREC SYN .REL. IOEQ0033.001
00016 REDWRD SYN .REL. IOEQ0033.001
00027 SETWRD (WRTREC,WRTWRD) IOEQ0034
00017 WRTREC SYN .REL. IOEQ0034.001
00017 WRTWRD SYN .REL. IOEQ0034.001
00027 SETWRD (CHNG,PRIME,BUFREC,BUFADR) IOEQ0035
00020 CHNG SYN .REL. IOEQ0035.001
00020 PRIME SYN .REL. IOEQ0035.001
00020 BUFREC SYN .REL. IOEQ0035.001
00020 BUFADR SYN .REL. IOEQ0035.001
00027 SETWRD (WINDEX,DINDEX) IOEQ0036
00021 WINDEX SYN .REL. IOEQ0036.001
00021 DINDEX SYN .REL. IOEQ0036.001
00027 SETWRD (DR,DW,DCOUNT,DADDRS) IOEQ0037
00022 DR SYN .REL. IOEQ0037.001
00022 DW SYN .REL. IOEQ0037.001
00022 DCOUNT SYN .REL. IOEQ0037.001
00022 DADDRS SYN .REL. IOEQ0037.001
00027 SETWRD (PRIOR,IOTASK,EFLAG,CURREC) IOEQ0038
00023 PRIOR SYN .REL. IOEQ0038.001
00023 IOTASK SYN .REL. IOEQ0038.001
00023 EFLAG SYN .REL. IOEQ0038.001
00023 CURREC SYN .REL. IOEQ0038.001
00027 SETWRD (SMTMP1) IOEQ0039
00024 SMTMP1 SYN .REL. IOEQ0039.001
00027 SETWRD (SMTMP2) IOEQ0040
00025 SMTMP2 SYN .REL. IOEQ0040.001
IOEQ0041
00027 SETWRD (ACTLNG) LENGTH OF SINGLE ACTIVE FILE ENTRY IOEQ0042
00026 ACTLNG SYN .REL. IOEQ0042.001
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 5
SYSTEM MACROS AND EQUIVALENCE
MACRO TO ASSIGN CONSECUTIVE STORAGE LOCATIONS IOEQ0044
SYMBOL ASTORE BLOCK,NWORDS .. WITHIN A BLOCK IOEQ0045
PMC ON .. IOEQ0046
SYMBOL SYN BLOCK .. IOEQ0047
PMC OFF .. IOEQ0048
TMP SET NWORDS .. IOEQ0049
BLOCK SET BLOCK+TMP .. IOEQ0050
ASTORE END .. IOEQ0051
IOEQ0052
00000 AFST SET 0 DEFINE ENTRIES IN ACTIVE FILE STATUS TABLE IOEQ0053
IOEQ0054
PROBNO ASTORE AFST,1 USER'S PROBLEM NUMBER IN BCD IOEQ0055
00000 PROBNO SYN AFST IOEQ0055.001
PROGNO ASTORE AFST,1 USER'S PROGRAMMER NUMBER IN BCD IOEQ0056
00001 PROGNO SYN AFST IOEQ0056.001
AUTHNO ASTORE AFST,1 USER'S 'AUTHOR' NUMBER IN BINARY IOEQ0057
00002 AUTHNO SYN AFST IOEQ0057.001
URCODE ASTORE AFST,1 USER'S RESTRICTION CODE IOEQ0058
00003 URCODE SYN AFST IOEQ0058.001
LIMITS ASTORE AFST,1 USER'S CORE LIMITS PZE LOWADR,,HIADR IOEQ0059
00004 LIMITS SYN AFST IOEQ0059.001
RELOC ASTORE AFST,1 USER'S RELOCATION IOEQ0060
00005 RELOC SYN AFST IOEQ0060.001
FPRIOR ASTORE AFST,1 USER'S FILE PRIORITY SETTING IOEQ0061
00006 FPRIOR SYN AFST IOEQ0061.001
ERRILC ASTORE AFST,1 LOCATION OF CALL RESULTING IN LAST ERROR IOEQ0062
00007 ERRILC SYN AFST IOEQ0062.001
ERNAME ASTORE AFST,1 NAME OF ENTRY IN WHICH ERROR WAS DISCOVEREDIOEQ0063
00010 ERNAME SYN AFST IOEQ0063.001
ERCODE ASTORE AFST,1 ERROR CODE OF LAST ERROR IOEQ0064
00011 ERCODE SYN AFST IOEQ0064.001
IOCODE ASTORE AFST,1 I/O ERROR CODE IF ANY OF LAST ERROR IOEQ0065
00012 IOCODE SYN AFST IOEQ0065.001
ENAME1 ASTORE AFST,1 FILE NAME(1) OF FILE INVOLVED IN LAST ERRORIOEQ0066
00013 ENAME1 SYN AFST IOEQ0066.001
ENAME2 ASTORE AFST,1 FILE NAME(2) OF FILE INVOLVED IN LAST ERRORIOEQ0067
00014 ENAME2 SYN AFST IOEQ0067.001
ERCALL ASTORE AFST,1 LOCATION OF LAST CALL TO ERROR OR IOERR IOEQ0068
00015 ERCALL SYN AFST IOEQ0068.001
QUEUE1 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(1) IOEQ0069
00016 QUEUE1 SYN AFST IOEQ0069.001
QUEUE2 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(2) IOEQ0070
00017 QUEUE2 SYN AFST IOEQ0070.001
QUEUE3 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(3) IOEQ0071
00020 QUEUE3 SYN AFST IOEQ0071.001
QUEUE4 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(4) IOEQ0072
00021 QUEUE4 SYN AFST IOEQ0072.001
QUEUE5 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(5) IOEQ0073
00022 QUEUE5 SYN AFST IOEQ0073.001
QUEUE6 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(6) IOEQ0074
00023 QUEUE6 SYN AFST IOEQ0074.001
QUEUE7 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(7) IOEQ0075
00024 QUEUE7 SYN AFST IOEQ0075.001
IOEQ0076
AFENTY ASTORE AFST,ACTLNG STORAGE FOR A SINGLE ACTIVE FILE ENTRY IOEQ0077
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 6
SYSTEM MACROS AND EQUIVALENCE
00025 AFENTY SYN AFST IOEQ0077.001
IOEQ0078
TBLMIN ASTORE AFST,0 MINIMUM LENGTH FOR USER I/O STATUS TABLE IOEQ0079
00053 TBLMIN SYN AFST IOEQ0079.001
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 7
SYSTEM MACROS AND EQUIVALENCE
0761 01 1 60000 EFA OPSYN NOP EFFECTIVE ADDRESS PARAMETER FLAG IOEQ0081
3 00001 1 60000 PAR OPSYN PTH NORMAL PARAMETER FLAG IOEQ0082
IOEQ0083
1 00001 1 60000 ION OPSYN PON I/O NON-TRANSMIT AND PROCEED IOEQ0084
2 00001 1 60000 IOP OPSYN PTW I/O TRANSMIT AND PROCEED IOEQ0085
0 00001 1 60000 IOD OPSYN PZE I/O DISCONNECT IOEQ0086
IOEQ0087
HOMOP MACRO GENERATE INSTRUCTION TO RESET ECC TO 'HOME'IOEQ0088
IFF IOSMEM-1,0,1 IOEQ0089
SEA HOME INSTRUCTION FOR MEMORY A IOEQ0090
IFF IOSMEM-2,0,1 IOEQ0091
SEB HOME INSTRUCTION FOR MEMORY B IOEQ0092
IFF IOSMEM-3,0,1 IOEQ0093
SEC HOME INSTRUCTION FOR MEMORY C IOEQ0094
HOMOP END IOEQ0095
* ASSEMBLY FOR CORE B IOEQ0099
DDST0045
INSERT STMEQU INSERT COMMON STRATEGY MODULE EQUIVALENCES DDST0046
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 8
DEFINITIONS USED BY STRATEGY MODULES
DEFINITION OF QUEUE COMPONENTS STE00020
STE00030
00000 QUENO EQU 0 (P) QUEUE NUMBER (PRIORITY) STE00040
00000 QLNG EQU 0 (D) LENGTH OF QUEUE BEAD STE00050
00000 FINISW EQU 0 (T) NON-ZERO WHEN BEAD FULLY PROCESSED STE00060
00000 NEXTQ EQU 0 (A) POINTER TO NEXT QUEUE ELEMENT STE00070
00001 QPRF1 EQU 1 (P) UNUSED COMPONENT STE00080
00001 FUNCT EQU 1 (D) FUNCTION CODE STE00090
00001 PAFST EQU 1 (A) POINTER TO ACTIVE FILE STATUS TABLE STE00100
00001 QTAG1 EQU 1 (T) UNUSED COMPONENT STE00110
00002 QWORDS EQU 2 (W) START OF ADDITIONAL REGISTERS IN BEAD STE00120
STE00130
STE00140
BITS ASSOCIATED WITH I/O COMMANDS STE00150
STE00160
100000 IONBIT BOOL 100000 (L) FOR NO TRANSMISSION STE00170
200000 IOPBIT BOOL 200000 (L) NORMAL TRANSMISSION STE00180
700000 IODBIT BOOL 700000 (L) CHECK FOR ZERO PREFIX STE00190
STE00200
400000 PROBIT BOOL 400000 (R) TRANSMISSION PROTECTED STE00210
200000 B.BIT BOOL 200000 (R) TRANSMISSION IN CORE B STE00220
100000 A.BIT BOOL 100000 (R) TRANSMISSION IN CORE A STE00230
DDST0047
INSERT SM1E.D EQUIVALENCES FOR STRATEGY MODULE DDST0048
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 9
COMPONENTS AND PARAMETERS FOR STRATEGY MODULE 1
DEFINITION OF ADDITIONAL ACTIVE FILE STATUS TABLE ELEMENTSM1E0002
SM1E0003
00024 NXTREC SYN SMTMP1 (A) NEXT RECORD FOR TRAP PROCESSOR SM1E0004
00025 LSTREC SYN SMTMP2 (A) POSITION OF LAST RECORD IN PROCESS SM1E0005
00024 THSTRK SYN SMTMP1 (L) POSITION OF THIS TRACK SM1E0006
00025 LSTTRK SYN SMTMP2 (L) POSITION OF LAST TRACK SM1E0007
00024 EOFSW SYN SMTMP1 (T) NON-ZERO ON LAST TRACK SM1E0008
00025 SEQSW SYN SMTMP2 (T) NON-ZERO WHEN POINTER CHECKING IS SUSPENDEDSM1E0009
SM1E0010
SM1E0011
DEFINITION OF ADDITIONAL QUEUE COMPONENTS SM1E0012
SM1E0013
00001 QEOF EQU QPRF1 (P) INDICATE LAST RECORD WILL INCLUDE E.O.F. SM1E0014
SM1E0015
00002 TRQST EQU QWORDS (W) POSITION OF REQUESTED FILE ON SEARCH SM1E0016
SM1E0017
00002 QLABEL EQU QWORDS (W) RELATIVE LOCATION OF REC. ID SM1E0018
00003 QLIST EQU QWORDS+1 (W) START OF I/O LIST IN QUEUE BEAD SM1E0019
SM1E0020
SM1E0021
DEFINITION OF QUEUE COMPONENTS FOR DELETE RING SM1E0022
SM1E0023
00000 DELTRQ EQU 0 (W) DELETE REQUEST IN DELETE QUEUE SM1E0024
00001 DELFRP EQU 1 (W) FORWARD POINTER FOR VALIDITY CHECK SM1E0025
00002 DELREC EQU 2 (A) DELETED RECORD IDENTIFICATION SM1E0026
00002 DELFIN EQU 2 (D) SEQ. NO. OF LAST RECORD TO DELETE SM1E0027
00002 DLFNSW EQU 2 (T) TESTED BY WDELET SM1E0028
SM1E0029
SM1E0030
PARAMETERS ASSOCIATED WITH DELETE RING SM1E0031
SM1E0032
00003 DELNUM EQU DELFIN+1 NUMBER OF WORDS USED BY DELETE REQUEST SM1E0033
SM1E0034
00024 DELACT EQU 20 MAXIMUM NUMBER OF ACTIVE DELETE REQUESTS SM1E0035
SM1E0036
00074 DELLNG EQU DELNUM*DELACT DEFINE LENGTH OF DELETE RING SM1E0037
SM1E0038
SM1E0039
DEFINITION OF QUEUE FUNCTION CODES SM1E0040
SM1E0041
00000 CRANKP EQU 0 CRANK UP FROM SCRATCH SM1E0042
00001 BEGINF EQU 1 POSITION FILE AT BEGINNING SM1E0043
00002 ENDF EQU 2 POSITION FILE AT END SM1E0044
00003 SRCFWD EQU 3 MOVE FILE FORWARD AND SEARCH SM1E0045
00004 SRCBKW EQU 4 MOVE FILE BACKWARD AND SEARCH (FIRST REC.) SM1E0046
00005 READF EQU 5 READ THE FILE SM1E0047
00006 WRITEF EQU 6 WRITE THE FILE SM1E0048
00007 REWRTF EQU 7 READ PREFIX FOR RE-WRITE SM1E0049
00010 RWRT1 EQU 8 WRITE HALF OF RE-WRITE SM1E0050
00011 SRCBK. EQU 9 SUBSEQUENT RECORDS OF BACKWARD SEARCH SM1E0051
SM1E0052
SM1E0053
DEFINE LENGTH OF DRUM/DISC RECORDS SM1E0054
SM1E0055
00660 NWDSPR EQU 432 NUMBER OF WORDS/RECORD, DISK/DRUM SM1E0056
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 10
COMPONENTS AND PARAMETERS FOR STRATEGY MODULE 1
SM1E0057
SM1E0058
NUMBER OF I/O COMMANDS IN IOLIST (INCL. 'IOD') SM1E0059
SM1E0060
00004 MAXLST EQU 4 MAXIMUM NUMBER OF I/O COMMANDS SM1E0061
SM1E0062
SM1E0063
DECREMENT DEFINITION FOR INDIRECT ADDRESSING SM1E0064
SM1E0065
000060 II BOOL 60 INDIRECT FLAG IN DECREMENT SM1E0066
SM1E0067
SM1E0068
STATUS-BIT DEFINITIONS IN RWSTAT SM1E0069
SM1E0070
200000 W.STAT BOOL 200000 FILE IN WRITE-STATUS SM1E0071
100000 R.STAT BOOL 100000 FILE IN READ-STATUS SM1E0072
DDST0049
INSERT STM.MC MACROS FOR DATA- AND WORD-MANIPULATION DDST0050
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 11
DATA-MANIPULATION MACROS FOR STRATEGY MODULES
M SAVE MACRO EXIT,TEMPS STANDARD ROUTINE ENTRANCE MACRO STM.0002
TSX SAVE,7 CALL INTERNAL S/R STM.0003
SAVE END STM.0004
STM.0005
RETURN MACRO TEMPS STANDARD ROUTINE EXIT MACRO STM.0006
TSX RETURN,7 CALL INTERNAL S/R STM.0007
RETURN END STM.0008
STM.0009
RESTOR MACRO UNUSED,TAG MACRO TO RESTORE SPECIFIC TAG STM.0010
IRP TAG .. STM.0011
LAC EXIT+TAG,TAG RELIES ON SEQUENCE OF EXIT-RETURN STM.0012
IRP STM.0013
RESTOR END STM.0014
STM.0015
SAVE4 MACRO EXIT SHORT SAVE STM.0016
SCA EXIT,4 .. STM.0017
SAVE4 END STM.0018
STM.0019
RETUR4 MACRO SHORT RETURN STM.0020
AXC **,4 .. STM.0021
RETUR4 END STM.0022
STM.0023
RESTO4 MACRO EXIT SHORT RESTORE STM.0024
LAC EXIT,4 .. STM.0025
RESTO4 END .. STM.0026
STM.0027
ENABLE MACRO MACRO TO ENABLE APPROPRIATE TRAPS STM.0028
ENB* ENABLE .. STM.0029
ENABLE END STM.0030
STM.0031
DISABL MACRO MACRO TO DISABLE APPROPRIATE TRAPS STM.0032
ENB =0 STM.0033
DISABL END STM.0034
STM.0035
MAKE MACRO WHAT,BOOL SET A VALUE TO TRUE OR FALSE STM.0036
IFF 1,BOOL,TRUE MAKE IT 7 IF TRUE STM.0037
CAL =O777777777777 STM.0038
IFF 1,BOOL,FALSE MAKE IT 0 IF FALSE STM.0039
PXD ,0 .. STM.0040
IPLACE WHAT AND PUT IT AWAY STM.0041
MAKE END STM.0042
STM.0043
GOIF MACRO WHAT,BOOL,WHERE CONDITIONAL TRANSFER MACRO STM.0044
IXTRCT WHAT OBTAIN INFORMATION STM.0045
IFF 1,BOOL,TRUE TAKE TNZ IF TRUE STM.0046
TNZ WHERE .. STM.0047
IFF 1,BOOL,FALSE TAKE TRA IF FALSE STM.0048
TZE WHERE .. STM.0049
GOIF END STM.0050
STM.0051
XTRACT MACRO WORD,PT MACRO TO EXTRACT PART OF A WORD STM.0052
IFF 0,WORD,AC GET WORD IF NOT IN ACCUMULATOR STM.0053
CAL WORD GET TOTAL WORD STM.0054
IFF 1,PT,D CALCULATE SHIFTS STM.0055
ARS 18 .. STM.0056
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 12
DATA-MANIPULATION MACROS FOR STRATEGY MODULES
IFF 1,PT,LH .. STM.0057
ARS 18 .. STM.0058
IFF 1,PT,T .. STM.0059
ARS 15 .. STM.0060
IFF 1,PT,RH .. STM.0061
ANA =O777777 STM.0062
IFF 1,PT,P .. STM.0063
ARS 33 .. STM.0064
IFF 1,PT,A NOW CHECK FOR MASKS STM.0065
ANA =O77777 STM.0066
IFF 1,PT,D .. STM.0067
ANA =O77777 STM.0068
IFF 1,PT,T .. STM.0069
ANA =O7 STM.0070
XTRACT END STM.0071
STM.0072
IXTRCT MACRO WORD,PT EXTRACT WORD, LEAVE IN PLACE STM.0073
IFF 0,WORD,AC .. STM.0074
CAL WORD STM.0075
IFF 1,PT,A ADDRESS STM.0076
ANA =O77777 STM.0077
IFF 1,PT,D DECREMENT STM.0078
ANA =O77777000000 STM.0079
IFF 1,PT,P PREFIX STM.0080
ANA =O700000000000 STM.0081
IFF 1,PT,T TAG STM.0082
ANA =O700000 STM.0083
IFF 1,PT,LH LEFT HALF STM.0084
ANA =O777777000000 STM.0085
IFF 1,PT,RH RIGHT HALF STM.0086
ANA =O777777 STM.0087
IXTRCT END STM.0088
STM.0089
PLACE MACRO WHERE,PT MACRO TO REPLACE PART OF A WORD STM.0090
IFF 1,PT,D CALCULATE SHIFTS STM.0091
ALS 18 .. STM.0092
IFF 1,PT,T .. STM.0093
ALS 15 .. STM.0094
IFF 1,PT,P .. STM.0095
ALS 33 .. STM.0096
IFF 1,PT,LH .. STM.0097
LGR 18 .. STM.0098
XXXINS ST'PT(WHERE) PERFORM STORE STM.0099
PLACE END STM.0100
STM.0101
IPLACE MACRO WHERE,PT REPLACE PARTIAL WORD, IN PLACE STM.0102
XXXINS ST'PT(WHERE) PERFORM STORE, NO SHIFTING STM.0103
IPLACE END STM.0104
STM.0105
XXXINS MACRO OP,VAR GENERATE AN INSTRUCTION STM.0106
OP VAR .. STM.0107
XXXINS END STM.0108
STM.0109
0602 71 1 60000 STW OPSYN SLW FOR USE WITH 'PLACE' MACRO STM.0110
-0620 71 1 60000 STLH OPSYN SLQ .. STM.0111
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 13
DATA-MANIPULATION MACROS FOR STRATEGY MODULES
DDST0051
INSERT SM1M.C INSERT MACROS FOR STRATEGY MODULE DDST0052
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 14
MACROS FOR STRATEGY MODULE 1
SETUP MACRO SETUP STANDARD POINTERS SM1M0002
TSX SETUP.,7 SAVE X4 AT SETUP. SM1M0003
SETUP END SM1M0004
SM1M0005
QUEUE MACRO FUNCT MACRO TO CALL QUEUEING ROUTINE SM1M0006
TSX QUEUE,4 CALL ROUTINE SM1M0007
PAR FUNCT FUNCTION SM1M0008
QUEUE END SM1M0009
SM1M0010
GETQ MACRO LENGTH OBTAIN POINTER TO QUEUE OF PROPER LENGTH SM1M0011
IFF 0,AC,LENGTH SKIP PICK-UP IF ALREADY THERE SM1M0012
CAL LENGTH GET LENGTH SM1M0013
TSX GETQ,4 CALL S/R SM1M0014
GETQ END SM1M0015
SM1M0016
QSCRAP MACRO MACRO TO DELETE ALL REFS IN QUEUE SM1M0017
TSX QSCRAP,4 CALL FOR COMMON SETUP S/R SM1M0018
QSCRAP END .. SM1M0019
SM1M0020
IOCALL MACRO ADAPTR CALL PROPER ADAPTER SM1M0021
CAL ADAPTR GET TV ENTRY SM1M0022
STA IOADPT,5 .. SM1M0023
IOCALL END SM1M0024
SM1M0025
BCDTRK MACRO PTR CALL S/R TO SAVE UNPACKING SM1M0026
TSX BCDTRK,4 .. SM1M0027
EFA PTR .. SM1M0028
BCDTRK END SM1M0029
SM1M0030
LACX MACRO PLACE,TAG LOAD FROM LOCATION,TAGGED SM1M0031
CAL PLACE .. SM1M0032
PAC ,TAG .. SM1M0033
LACX END SM1M0034
SM1M0035
LDCX MACRO PLACE,TAG LOAD FROM DECREMENT, TAGGED SM1M0036
CAL PLACE SM1M0037
PDC ,TAG SM1M0038
LDCX END SM1M0039
SM1M0040
SCAX MACRO PLACE,TAG STORE INTO LOCATION,TAGGED SM1M0041
PCA ,TAG .. SM1M0042
SLW PLACE .. SM1M0043
SCAX END SM1M0044
SM1M0045
OBTVAL MACRO FUNCT OBTAIN VALUE OF EFFECTIVE ADDRESS SM1M0046
AXT FUNCT,7 .. SM1M0047
PXA ,7 .. SM1M0048
OBTVAL END SM1M0049
SM1M0050
OBTVLD MACRO FUNCT .. SM1M0051
AXT FUNCT,7 .. SM1M0052
PXD ,7 .. SM1M0053
OBTVLD END SM1M0054
SM1M0055
UNPACK MACRO MACRO TO UNPACK A TRACK ADDRESS INTO BCI SM1M0056
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 15
MACROS FOR STRATEGY MODULE 1
SXA TMPIR5,5 SAVE INDEX REGISTER 5 SM1M0057
ANA =O777777 SM1M0058
SLW STEMP AND REQUEST. SM1M0059
TSX .UNPAK,4 CALL ROUTINE. SM1M0060
PAR STEMP WITH THIS REQUEST. SM1M0061
LXA TMPIR5,5 RESTORE XR5 SM1M0062
UNPACK END .. SM1M0063
SM1M0064
PACK MACRO MACRO TO PACK A TRACK ADDRESS SM1M0065
SXA TMPIR5,5 SAVE INDEX REGISTER 5 SM1M0066
SLW STEMP AND REQUEST. SM1M0067
TSX .PACK,4 CALL ROUTINE SM1M0068
PAR STEMP WITH REQUEST SM1M0069
LXA TMPIR5,5 .. SM1M0070
PACK END SM1M0071
SM1M0072
ERROR MACRO CODE SET ERROR CONDITIONS SM1M0073
STO ERR.AC FOR DEBUGGING SM1M0074
STL ILCERR FIND WHO CALLED AT A STOP SM1M0075
CAL =O'CODE'00000 SM1M0076
IPLACE (EFLAG,2)T .. SM1M0077
ERROR END SM1M0078
SM1M0079
-0 21203 0 05605 TRAPUP OPSYN NULL WILL BE MACRO TO REFLECT FUNCTION DONE TRAPSM1M0080
SM1M0081
UNDONE MACRO FOR PARTS WHICH AREN'T DONE YET SM1M0082
HTR * .. SM1M0083
UNDONE END SM1M0084
DDST0053
INSERT SM1A.I CALLS FROM BUFFER CONTROL MODULE DDST0054
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 16
INTERNAL SUBROUTINES --- SAVE, RESTOR
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0002
SM1A0003
SAVE, RESTORE STANDARD INDEX REGISTERS SM1A0004
SM1A0005
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0006
SM1A0007
00027 0636 00 7 00035 SAVE SCA EXIT,7 SAVE LOCATION OF CALL SM1A0008
00030 0636 00 1 00036 SCA EXIT+1,1 .. SM1A0009
00031 0636 00 2 00037 SCA EXIT+2,2 .. SM1A0010
00032 0636 00 3 00040 SCA EXIT+3,3 .. SM1A0011
00033 0636 00 4 00041 SCA EXIT+4,4 .. SM1A0012
00034 0020 00 7 00001 TRA 1,7 RETURN TO CALLER SM1A0013
SM1A0014
00035 0 00000 0 00000 EXIT PZE **,,** INDEX REGISTER 7, SAVE,,RESTOR SM1A0015
SM1A0016
00036 -0774 00 1 00000 RETURN AXC **,1 MUST BE ONE BEYOND 'EXIT' SM1A0017
00037 -0774 00 2 00000 AXC **,2 .. SM1A0018
00040 -0774 00 3 00000 AXC **,3 .. SM1A0019
00041 -0774 00 4 00000 AXC **,4 .. SM1A0020
00042 -0636 00 7 00035 SCD EXIT,7 .. SM1A0021
00043 0020 00 7 00001 TRA 1,7 RETURN FOR TESTING IF NECESSARY SM1A0022
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 17
STRATEGY MODULE 1
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0024
SM1A0025
STRATEGY MODULE 1 --- 7320 DRUM SM1A0026
SM1A0027
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0028
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 18
ENTRIES FROM FILE COORDINATOR --- SINITF
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0030
SM1A0031
INITIALIZE THE STRATEGY MODULE SM1A0032
SM1A0033
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0034
SM1A0035
00044 SINIT1 SAVE4 SN1XIT INITIALIZE ENABLE WORD AND ZEROES SM1A0036
00045 0500 60 4 00001 CLA* 1,4 GET ENABLE WORD SM1A0037
00046 0621 00 0 02261 STA ENABLE .. SM1A0038
00047 0074 00 4 00000 TSX .REFER,4 TELL IO ADAPTER WHERE TO REFER ALL SM1A0039
00050 3 00000 0 00636 PAR SM1TRP TRAPS. SM1A0040
00051 0074 00 4 00001 TSX .DINIT,4 INITIALIZE ADAPTER SM1A0041
00052 3 00000 0 02261 PAR ENABLE WITH THIS ALSO SM1A0042
00053 0774 00 4 00214 AXT ZEROL,4 AND ZERO OUT STUFF SM1A0043
00054 0600 00 4 02523 STZ ZERST+ZEROL,4 .. SM1A0044
00055 2 00001 4 00054 TIX *-1,4,1 .. SM1A0045
00056 SN1XIT RETUR4 RESTORE XRS SM1A0046
00057 0020 00 4 00001 SINIT2 TRA 1,4 .. (EXIT IMMEDIATELY SECOND TIME) SM1A0047
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 19
ENTRIES FROM BUFFER CONTROL MODULE --- OPENF
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0049
SM1A0050
OPEN A FILE SM1A0051
SM1A0052
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0053
SM1A0054
00060 OPEN1 SAVE OP1XIT ENTER OPEN1 ROUTINE SM1A0055
00061 SETUP GET STANDARD POINTERS SM1A0056
00062 0500 00 0 02526 CLA =1 INITIALIZE ACTIVE FILE STATUS ENTRY SM1A0057
00063 PLACE (LSTREC,2)W (ALSO CLEARS LSTTRK, SEQSW) SM1A0058
00064 MAKE ((CURREC,2)A)FALSE SM1A0059
00066 IPLACE (ASGNSW,2)P .. SM1A0060
00067 0560 00 2 00015 LDQ POINTR,2 FIND FIRST TRACK SM1A0061
00070 -0763 00 0 00022 LGL 18 .. SM1A0062
00071 -0600 00 2 00024 STQ THSTRK,2 INITIALIZE THSTRK, CLEAR NXTREC,EOFSW SM1A0063
00072 DISABL DON'T WANT TRAP DURING QUEUE MANIP. SM1A0064
00073 0074 00 4 00006 TSX QUINT,4 CALL FOR QUEUE INITIALIZATION SM1A0065
00074 0761 00 1 00016 EFA QUEUE1,1 QUEUES FOR THIS STRATEGY MODULE SM1A0066
00075 ENABLE .. SM1A0067
00076 MAKE ((IOTASK,2)D)FALSE CLEAR OUT NOISE SM1A0068
00100 GOIF ((NORECS,2)D)FALSE,OPEN.1 SM1A0069
00103 GOIF ((RCOUNT,2)A)TRUE,OP1XIT .. SM1A0070
00106 -0500 00 0 02240 OPEN.1 CAL RECWRD SET UP REC. CNT IN AFST SM1A0071
00107 PLACE (RCOUNT,2)A .. SM1A0072
00110 0600 00 2 00015 STZ POINTR,2 (HELP IN DE-BUGGING) SM1A0073
00111 0441 00 2 00014 LDI RWSTAT,2 CHECK STATUS OF FILE SM1A0074
00112 -0500 00 0 00112 CAL * GET P-BIT SM1A0075
00113 -0056 00 200000 LNT W.STAT SEE IF FILE TO BE EXTENDED SM1A0076
00114 -0754 00 0 00000 ZAC NO, DO NOT DELETE EMPTY FILE IF NOT WRITTENSM1A0077
00115 IPLACE (ASGNSW,2)P MARK OPENED, UN-WRITTEN FILE SM1A0078
00116 OP1XIT RETURN AND RETURN SM1A0079
00117 0020 00 4 00002 TRA 2,4 .. SM1A0080
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 20
ENTRIES FROM BUFFER CONTROL MODULE --- CLOSEF
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0082
SM1A0083
CLOSE A FILE SM1A0084
SM1A0085
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0086
SM1A0087
00120 CLOSE1 SAVE CL1XIT CLOSE OUT FILE AND SM1A0088
00121 SETUP DRAIN ALL STUFF FROM THE QUEUES SM1A0089
00122 DISABL DISABLE ALL TRAPS SM1A0090
00123 QSCRAP FOR THIS ACTIVE FILE STATUS ENTRY SM1A0091
00124 ENABLE AND REENABLE SM1A0092
00125 CL1XIT RETURN .. SM1A0093
00126 0020 00 4 00002 TRA 2,4 .. SM1A0094
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 21
ENTRIES FROM BUFFER CONTROL MODULE --- QTESTF
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0096
SM1A0097
TEST FOR QUEUE SPACE SM1A0098
SM1A0099
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0100
SM1A0101
00127 QTEST1 SAVE QTSXIT .. SM1A0102
00130 SETUP SET UP STD PNTRS SM1A0103
00131 RESTOR QTSXIT(4) RESTORE XR4 TO CALL SM1A0104
00132 -0500 00 4 00002 CAL 2,4 ERROR RETURN. SM1A0105
00133 0771 00 0 00022 ARS 18 .. SM1A0106
00134 0621 00 0 02311 STA QWAIT .. SM1A0107
00135 0500 60 4 00002 CLA* 2,4 GET NUM. OF REQUEST SM1A0108
00136 -0120 00 0 00154 TMI QTS.2 IF MINUS TEST DELETE QUEUES SM1A0109
00137 0400 00 0 02526 ADD =1 FOR EXTRA CALLS SM1A0110
00140 0602 00 0 02323 SLW NEEDQL SAVE NUMBER OF QUEUES TO LOOK FOR SM1A0111
00141 -0625 00 0 02312 STL QFULL SET FOR QUEUES ASSUMED FULL SM1A0112
00142 DISABL .. SM1A0113
00143 0074 00 4 00007 TSX QTST,4 GO TO QUEUE TESTING ROUTINES SM1A0114
00144 0761 00 1 00016 EFA QUEUE1,1 .. SM1A0115
00145 3 00147 0 02323 PAR NEEDQL,,*+2 .. SM1A0116
00146 0600 00 0 02312 STZ QFULL SPACE AVAILABLE SM1A0117
00147 ENABLE .. SM1A0118
00150 QTSXIT RETURN .. SM1A0119
00151 -0520 00 0 02312 NZT QFULL .. SM1A0120
00152 0020 00 4 00002 TRA 2,4 NORMAL RETURN SM1A0121
00153 0020 60 0 02311 TRA* QWAIT FULL RETURN SM1A0122
SM1A0123
00154 0535 00 6 02254 QTS.2 LAC DELTOP,6 GET HEAD OF DELETE RING SM1A0124
00155 -0500 00 6 00000 CAL DELTRQ,6 GET NEXT POSITION SM1A0125
00156 0602 00 0 02312 SLW QFULL NON-ZERO IF POSITION TAKEN SM1A0126
00157 0020 00 0 00150 TRA QTSXIT .. SM1A0127
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 22
ENTRIES FROM BUFFER CONTROL MODULE --- READF, WRITEF, REWRTF
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0129
SM1A0130
READ A FILE SM1A0131
SM1A0132
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0133
SM1A0134
00160 READ1 OBTVLD READF SIGNAL READING FUNCTION SM1A0135
00162 -0625 00 0 02315 ENT1 STL POSNSW POSITIONING MAY BE REQUIRED SM1A0136
00163 0602 00 0 02314 ENT2 SLW FUNCTN SAVE ENTRY NAME SM1A0137
00164 SAVE RD1XIT(QNUM,LABEL,IOLIST,QWAIT) ENTER READ1 ROUTINE SM1A0138
00165 SETUP SET UP STANDARD POINTERS SM1A0139
00166 RESTOR RD1XIT(4) AND RESTORE XR4 SM1A0140
00167 0500 00 4 00003 CLA 3,4 GET QWAIT POSITION SM1A0141
00170 0621 00 0 02311 STA QWAIT .. SM1A0142
00171 -0625 00 0 02312 STL QFULL ASSUME FULL SM1A0143
00172 0500 00 4 00002 CLA 2,4 GET LABEL,,IOLIST SM1A0144
00173 0771 00 0 00022 ARS 18 AND SAVE IOLIST ADDRESS SM1A0145
00174 0621 00 0 02310 STA IOLIST .. SM1A0146
00175 -0500 60 4 00002 CAL* 2,4 GET LABEL SM1A0147
00176 0602 00 0 02307 SLW LABEL .. SM1A0148
00177 XTRACT (PRIOR,2)P GET FILE PRIORITY SM1A0149
00201 0602 00 0 02324 SLW QNUM AND USE AS QUEUE NUMBER SM1A0150
00202 DISABL IN CASE OF ERROR ON I/O, SCRAP THEM ALL SM1A0151
00203 -0520 00 0 02315 NZT POSNSW WAS THIS A WRITE CALL SM1A0152
00204 0020 00 0 00263 TRA READ.1 YES, SHOULD NOT HAVE TO POSITION SM1A0153
00205 XTRACT (LABEL)A GET RECORD ID. ONLY SM1A0154
00207 0602 00 0 02316 SLW POSLBL .. SM1A0155
00210 0402 00 0 02526 SUB =1 CHECK FOR FIRST RECORD SM1A0156
00211 0602 00 0 02315 SLW POSNSW RE-USE THIS SWITCH SM1A0157
00212 XTRACT (NORECS,2)D ALSO CHECK POSITIONING AT END OF FILE SM1A0158
00215 0602 00 0 02317 SLW POSREC SAVE SM1A0159
00216 0402 00 0 02316 SUB POSLBL SWITCH FOR LAST SM1A0160
00217 0621 00 0 02322 STA POSTMP+2 (CANNOT STORE WHOLE WORD) SM1A0161
00220 XTRACT (LSTREC,2)A GET CURRENT POSITION OF FILE SM1A0162
00222 -0774 00 7 00261 AXC POS.B2,7 SET SWITCH FOR BACK SEARCH ONLY SM1A0163
00223 -0340 00 0 02317 LAS POSREC COMPARE WITH NORECS SM1A0164
00224 -0774 00 7 00257 AXC POS.B3,7 AT END OF FILE, QUEUE END, THEN BACK SM1A0165
00225 0774 00 0 00000 AXT 0,0 'NOP' SM1A0166
00226 0402 00 0 02316 SUB POSLBL COMPUTE DISTANCE TO DESIRED RECORD SM1A0167
00227 0100 00 0 00263 TZE READ.1 IT IS RIGHT THERE WAITING SM1A0168
00230 -0520 00 0 02315 NZT POSNSW WERE WE LOOKING FOR FIRST RECORD SM1A0169
00231 0020 00 0 00244 TRA POS.B1 YES, PUT IN 'BEGIN' REQUEST SM1A0170
00232 -0520 00 0 02322 NZT POSTMP+2 WERE WE LOOKING FOR LAST RECORD SM1A0171
00233 0020 00 0 00247 TRA POS.F3 YES, PUT IN 'END' REQUEST SM1A0172
00234 -0120 00 0 00252 TMI POS.F1 NO - WE ARE BEHIND IT SM1A0173
00235 0402 00 0 02316 SUB POSLBL WE ARE IN FRONT OF IT - SHALL WE GO BACK SM1A0174
00236 -0120 00 7 00000 TMI 0,7 OR START FROM THE FRONT END SM1A0175
00237 QUEUE BEGINC INDICATE WE ARE STARTING FROM FRONT SM1A0176
00241 POS.F2 QUEUE SRCFWC AND LOOKING FORWARD SM1A0177
00243 0020 00 0 00263 TRA READ.1 EXIT SM1A0178
00244 POS.B1 QUEUE BEGINC POSITION AT HEAD OF QUEUE SM1A0179
00246 0020 00 0 00263 TRA READ.1 FINISHED SM1A0180
00247 POS.F3 QUEUE ENDC POSITION AT END SM1A0181
00251 0020 00 0 00263 TRA READ.1 .. SM1A0182
00252 0621 00 0 02322 POS.F1 STA POSTMP+2 WE ARE BEHIND IT - SHOULD WE SEARCH FORWARDSM1A0183
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 23
ENTRIES FROM BUFFER CONTROL MODULE --- READF, WRITEF, REWRTF
00253 -0500 00 0 02317 CAL POSREC GET NUMBER OF FINAL RECORD SM1A0184
00254 0402 00 0 02316 SUB POSLBL IN THE FILE. SM1A0185
00255 0402 00 0 02322 SUB POSTMP+2 .. SM1A0186
00256 0120 00 0 00241 TPL POS.F2 GO AHEAD SM1A0187
00257 POS.B3 QUEUE ENDC START FROM END OF FILE SM1A0188
00261 POS.B2 QUEUE SRCBKC SEARCH BACKWARDS SM1A0189
00263 READ.1 QUEUE FUNCTN QUEUE FINAL REQUEST SM1A0190
00265 0600 00 0 02312 STZ QFULL CLEAR WHEN ALL REQUESTS SATISFIED SM1A0191
00266 QUE.FL ENABLE TAKE ANY WAITING TRAPS (FULL QUEUE RETURN) SM1A0192
00267 0074 00 4 00002 TSX .FORCE,4 ACTIVATE I/O, IF NECESSARY SM1A0193
00270 RD1XIT RETURN (QNUM,LABEL,IOLIST,QWAIT) RESTORE USED REGISTERS SM1A0194
00271 0520 00 0 02312 ZET QFULL WERE QUEUES FILLED SM1A0195
00272 0021 60 0 02311 TTR* QWAIT YES SM1A0196
00273 0020 00 4 00002 TRA 2,4 NO SM1A0197
SM1A0198
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0199
SM1A0200
WRITE A FILE SM1A0201
SM1A0202
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0203
SM1A0204
SM1A0205
SM1A0206
00274 WRITE1 OBTVLD WRITEF FUNCTION IS WRITE SM1A0207
00276 0600 00 0 02315 STZ POSNSW NO POSITIONING SM1A0208
00277 0020 00 0 00163 TRA ENT2 TO COMMON CODE SM1A0209
SM1A0210
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0211
SM1A0212
REWRITE A FILE SM1A0213
SM1A0214
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0215
SM1A0216
00300 REWRT1 OBTVLD REWRTF FUNCTION IS RE-WRITE SM1A0217
00302 0020 00 0 00162 TRA ENT1 GO TO COMMON CODE SM1A0218
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 24
ENTRIES FROM BUFFER CONTROL/FILE COORD. --- DFILEF, SCRAPF
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0220
SM1A0221
DELETE OR TRUNCATE A FILE SM1A0222
SM1A0223
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0224
SM1A0225
SM1A0226
SM1A0227
00303 DFILE1 SAVE DF1XIT(QWAIT,LABEL) ENTER DFILE1 ROUTINE SM1A0228
00304 SETUP SET UP STANDARD POINTERS SM1A0229
00305 RESTOR DF1XIT(4) RESTORE XR4 SM1A0230
00306 0500 00 4 00002 CLA 2,4 GET RECNUM,,QWAIT SM1A0231
00307 0771 00 0 00022 ARS 18 FILL IN QWAIT SM1A0232
00310 0621 00 0 02311 STA QWAIT .. SM1A0233
00311 -0625 00 0 02312 STL QFULL ASSUME QUEUE-WAIT RETURN SM1A0234
00312 -0500 60 4 00002 CAL* 2,4 GET LABEL SM1A0235
00313 0602 00 0 02307 SLW LABEL SAVE SM1A0236
00314 GOIF ((AC)D)FALSE,DFIL.1 IF NORECS = 0 SM1A0237
00316 GOIF ((IOTASK,2)D)TRUE,DF1XIT MUST WAIT TO READ LAST TRACK SM1A0238
00321 0074 00 4 00521 TSX DELSUB,4 COMMON DELETE RING SETUP SM1A0239
00322 3 00000 0 00342 PAR DF1XIT QUEUE FULL SM1A0240
00323 0560 00 2 00025 LDQ LSTTRK,2 UPDATE LAST TRACK ON 'TRFILE' CALL SM1A0241
00324 -0620 00 2 00015 SLQ POINTR,2 .. SM1A0242
00325 XTRACT (LABEL)A ONE MORE CHECK SM1A0243
00327 0402 00 0 02526 SUB =1 IS IT ENTIRE FILE SM1A0244
00330 0100 00 0 00333 TZE DFIL.1 YES, LEAVE NOW ON SCRAP SM1A0245
00331 -0500 00 0 02540 CAL =.75B0 PARTIAL DELETE, GET RID OF TRAILING POINTERSM1A0246
00332 0020 00 0 00340 TRA DFIL.2 GO TO SET SWITCH SM1A0247
00333 0600 00 2 00015 DFIL.1 STZ POINTR,2 CLEAR TRACK POINTERS SM1A0248
00334 0600 00 2 00024 STZ THSTRK,2 CLEAR THSTRK, EOFSW AND NXTREC SM1A0249
00335 IPLACE (CURREC,2)A ZERO IN AC, PUT INTO CURREC SM1A0250
00336 0500 00 0 02526 CLA =1 RESET LSTREC SM1A0251
00337 0601 00 2 00025 STO LSTTRK,2 .. SM1A0252
00340 DFIL.2 IPLACE (ASGNSW,2)P SET PROPER BITS IN ASGNSW SM1A0253
00341 0600 00 0 02312 STZ QFULL .. SM1A0254
00342 DF1XIT RETURN (QWAIT,LABEL) .. SM1A0255
00343 0520 00 0 02312 ZET QFULL WERE QUEUES FILLED SM1A0256
00344 0021 60 0 02311 TTR* QWAIT YES SM1A0257
00345 0020 00 4 00002 TRA 2,4 NO SM1A0258
SM1A0259
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0260
SM1A0261
SCRAP A FILE ON 'RESETF' SM1A0262
SM1A0263
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0264
SM1A0265
00346 SCRAP1 SAVE SCRXIT CALLED WITH I/O BLOCKED FOR THIS USER SM1A0266
00347 SETUP .. SM1A0267
00350 RESTOR SCRXIT(4) .. SM1A0268
00351 0500 00 4 00002 CLA 2,4 GET PARAMETER SM1A0269
00352 0621 00 0 02311 STA QWAIT .. SM1A0270
00353 -0625 00 0 02312 STL QFULL .. SM1A0271
00354 0500 00 2 00016 CLA ASGNSW,2 SEE IF ANY TRACKS WRITTEN SM1A0272
00355 -0120 00 0 00367 TMI SCR.2 IF P-BIT=1, OPENED FOR WR, NOTHING WRITTEN SM1A0273
00356 GOIF ((AC)P)FALSE,SCR.1 NOTHING VENTURED, NOTHING LOST SM1A0274
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 25
ENTRIES FROM BUFFER CONTROL/FILE COORD. --- DFILEF, SCRAPF
00360 XTRACT (CURREC,2)A EXPECTED ID SM1A0275
00362 0767 00 0 00022 ALS 18 CALL WITH LABEL FORMAT SM1A0276
00363 -0501 00 0 02526 ORA =1 DELETE BACK TO BEGINNING SM1A0277
00364 0602 00 0 02307 SLW LABEL .. SM1A0278
00365 0074 00 4 00521 TSX DELSUB,4 .. SM1A0279
00366 3 00000 0 00376 PAR SCRXIT .. SM1A0280
00367 SCR.2 MAKE ((RCOUNT,2)A)FALSE KILL F.D. ENTRY SM1A0281
00371 IPLACE (ASGNSW,2)P AGAIN, FOR THE RECORD SM1A0282
00372 SCR.1 DISABL .. SM1A0283
00373 QSCRAP .. SM1A0284
00374 ENABLE .. SM1A0285
00375 0600 00 0 02312 STZ QFULL SUCCESS, AT LAST SM1A0286
00376 SCRXIT RETURN .. SM1A0287
00377 0520 00 0 02312 ZET QFULL TEST SM1A0288
00400 0021 60 0 02311 TTR* QWAIT .. SM1A0289
00401 0020 00 4 00002 TRA 2,4 .. SM1A0290
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 26
QUEUEING SUBROUTINE --- QUEUE
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-SM1A0292
SM1A0293
'QUEUE' ACCEPTS A QUEUE NUMBER AND FUNCTION CODE AND SM1A0294
PLACES AN APPROPRIATE REQUEST IN THE PROPER QUEUE TO SM1A0295
PERFORM THE FUNCTION AT THE PROPER TIME. SM1A0296
SM1A0297
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- -SM1A0298
SM1A0299
00402 QUEUE SAVE4 QUEXIT(IOCNT,RECCNT) ENTER QUEUEING ROUTINE SM1A0300
00403 0500 60 4 00001 CLA* 1,4 GET FUNCTION CODE SM1A0301
00404 -0737 00 5 00000 PDC ,5 .. SM1A0302
00405 0622 00 0 02325 STD FNO SAVE FUNCTION CODE SM1A0303
00406 0500 00 5 02404 CLA QCOUNT,5 INCREMENT COUNTER SM1A0304
00407 0400 00 0 02526 ADD =1 .. SM1A0305
00410 0601 00 5 02404 STO QCOUNT,5 .. SM1A0306
00411 0020 60 5 00412 TRA* *+1,5 TAKE APPROPRIATE FUNCTION TRANSFER SM1A0307
SM1A0308
00412 3 00000 0 00422 PAR QCRANK QUEUE INITIAL CRANKUP REQUEST SM1A0309
00413 3 00000 0 00424 PAR QBEGIN QUEUE SEEK BEGIN REQUEST SM1A0310
00414 3 00000 0 00431 PAR QEND QUEUE SEEK END REQUEST SM1A0311
00415 3 00000 0 00433 PAR QSRCF QUEUE SEARCH FORWARD REQUEST SM1A0312
00416 3 00000 0 00433 PAR QSRCB QUEUE SEARCH BACKWARD REQUEST SM1A0313
00417 3 00000 0 00443 PAR QREAD QUEUE READ FILE REQUEST SM1A0314
00420 3 00000 0 00443 PAR QWRITE QUEUE WRITE FILE REQUEST SM1A0315
00421 3 00000 0 00443 PAR QREWRT QUEUE REWRITE FILE REQUEST SM1A0316
SM1A0317
SM1A0318
00422 QRET SYN * .. SM1A0319
00422 QRET1 SYN * .. SM1A0320
00422 QUEXIT RETUR4 (IOCNT,RECCNT) RETURN SM1A0321
00423 0020 00 4 00002 TRA 2,4 .. SM1A0322
SM1A0323
00422 QCRANK SYN QRET1 FOR NOW ANYWAY SM1A0324
SM1A0325
00424 QBEGIN GETQ =0 GET QUEUE OF LENGTH 0 SM1A0326
00426 0500 00 0 02526 CLA =1 AND INITIALIZE LSTREC SM1A0327
00427 PLACE (LSTREC,2)A .. SM1A0328
00430 0020 00 0 00422 TRA QRET .. SM1A0329
SM1A0330
00431 -0500 00 0 02317 QEND CAL POSREC GET CURRENT LENGTH OF FILE SM1A0331
00432 0020 00 0 00434 TRA QSRCF1 .. SM1A0332
SM1A0333
00433 -0500 00 0 02316 QSRCF CAL POSLBL GET LABEL FOR SEARCH SM1A0334
00434 0602 00 0 02326 QSRCF1 SLW QLBL TEMP SM1A0335
00435 GETQ =1 GET QUEUE OF LENGTH 1 SM1A0336
00437 -0500 00 0 02326 CAL QLBL GET LABEL USED IN POSITIONING SM1A0337
00440 0602 00 3 00002 SLW QLABEL,3 INTO QUEUE SM1A0338
00441 PLACE (LSTREC,2)A AFST SM1A0339
00442 0020 00 0 00422 TRA QRET AND RETURN SM1A0340
SM1A0341
00433 QSRCB SYN QSRCF SAME STUFF SM1A0342
SM1A0343
00443 0074 00 4 00017 QREAD TSX CNTIO,4 AND COUNT IT SM1A0344
00444 3 02240 0 02310 PAR IOLIST,,RECWRD .. SM1A0345
00445 0601 00 0 02327 STO IOCNT COUNT OF WORDS IN IO LIST SM1A0346
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 27
QUEUEING SUBROUTINE --- QUEUE
00446 -0600 00 0 02330 STQ RECCNT COUNT OF RECORDS TO BE READ SM1A0347
00447 0400 00 0 02526 ADD =1 NEED ONE MORE TO HOLD LABEL SM1A0348
00450 GETQ AC GET QUEUE BEAD OF PROPER LENGTH SM1A0349
00451 XTRACT (LSTREC,2)A UPDATE POSITIONING INFO SM1A0350
00453 0400 00 0 02330 ADD RECCNT .. SM1A0351
00454 PLACE (LSTREC,2)A .. SM1A0352
00455 -0340 00 0 02317 LAS POSREC COMPARE FINAL POSITION WITH CURRENT LENGTH SM1A0353
00456 -0500 00 0 02541 CAL =O700000000000 GREATER, MAKE QEOF TRUE SM1A0354
00457 0774 00 0 00000 AXT 0,0 EQUAL, WILL BE AT EOF ON NEXT RECORD SM1A0355
00460 IPLACE (QEOF,3)P PLACE ANSWER IN FLAG (USED ONLY BY SRWT1) SM1A0356
00461 0534 00 6 02327 LXA IOCNT,6 GET IO COUNT SM1A0357
00462 -0500 00 0 02307 CAL LABEL GET DESIRED LABEL SM1A0358
00463 0602 00 3 00002 SLW QLABEL,3 ADD TO QUEUE SM1A0359
00464 0535 00 7 02310 LAC IOLIST,7 GET BASE OF I/O LIST SM1A0360
00465 -0500 00 7 00000 QR.1 CAL 0,7 GET WORD IN IO LIST SM1A0361
00466 0602 00 5 00003 SLW QLIST,5 AND PUT IN BEAD ELEMENT SM1A0362
00467 1 77777 7 00470 TXI *+1,7,-1 INCREMENT PICKUP COUNTER SM1A0363
00470 1 77777 5 00471 TXI *+1,5,-1 AND DEPOSIT COUNTER. SM1A0364
00471 2 00001 6 00465 TIX QR.1,6,1 COPY WHOLE LIST SM1A0365
00472 0020 00 0 00422 TRA QRET RETURN SM1A0366
SM1A0367
00443 QWRITE SYN QREAD SAME CODING EXCEPT FOR VALUE SM1A0368
SM1A0369
00443 QREWRT SYN QREAD SAME QUEUEING AS FOR 'READ' SM1A0370
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 28
CALL-TIME UTILITY ROUTINES --- GETQ, SETUP., DELSUB
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0372
SM1A0373
STANDARD INTERFACE TO 'QGET' SM1A0374
SM1A0375
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0376
SM1A0377
00473 GETQ SAVE4 GQXIT COMPLETE SAVE NOT REQUIRED HERE SM1A0378
00474 0602 00 0 02323 SLW NEEDQL SAVE REQUESTED LENGTH SM1A0379
00475 0074 00 4 00010 TSX QGET,4 CALL TO WRITE-AROUND ENTRY SM1A0380
00476 0761 00 1 00000 EFA 0,1 ACTIVE FILE STATUS TABLE POINTER SM1A0381
00477 0761 00 2 00000 EFA 0,2 ACTIVE FILE POINTER SM1A0382
00500 3 02241 0 02324 PAR QNUM,,QUEUEC .. SM1A0383
00501 3 00266 0 02323 PAR NEEDQL,,GTQERR .. SM1A0384
00502 0737 00 3 00000 PAC ,3 SAVE RETURNED POINTER IN XR3 SM1A0385
00503 0737 00 5 00000 PAC ,5 ALSO IN XR5 FOR CONVENIENCE SM1A0386
00504 0500 00 0 02325 CLA FNO INSERT FUNCTION NUMBER SM1A0387
00505 IPLACE (FUNCT,3)D .. SM1A0388
00506 GQXIT RETUR4 SM1A0389
00507 0020 00 4 00001 TRA 1,4 SM1A0390
SM1A0391
00266 GTQERR SYN QUE.FL UNTIL COUNT SECTION IS IN SM1A0392
SM1A0393
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0394
SM1A0395
GET 'AFENTY' AND 'IOBASE' SM1A0396
SM1A0397
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0398
SM1A0399
00510 0636 00 7 00517 SETUP. SCA STXIT,7 .. SM1A0400
00511 0500 00 4 00001 CLA 1,4 .. SM1A0401
00512 0601 00 0 02313 STO SETTMP .. SM1A0402
00513 0074 00 4 00013 TSX SSETUP,4 CALL FOR STANDARD INFORMATION SM1A0403
00514 3 00000 0 02313 PAR SETTMP .. SM1A0404
00515 0737 00 2 00000 PAC ,2 ACTIVE FILE SM1A0405
00516 -0737 00 1 00000 PDC ,1 I/O STATUS TABLE SM1A0406
00517 -0774 00 7 00000 STXIT AXC **,7 SM1A0407
00520 0020 00 7 00001 TRA 1,7 .. SM1A0408
SM1A0409
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0410
SM1A0411
SET UP ENTRY IN DELETE RING SM1A0412
SM1A0413
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0414
SM1A0415
00521 DELSUB SAVE4 DLSXIT SM1A0416
00522 -0500 00 0 02256 CAL D.CALL INCREMENT NUMBER OF DELETE-Q CALLS SM1A0417
00523 0400 00 0 02526 ADD =1 .. SM1A0418
00524 0601 00 0 02256 STO D.CALL FORCE + IF OVERFLOW SM1A0419
00525 0535 00 3 02254 LAC DELTOP,3 FIND Q-POINTER SM1A0420
00526 DISABL INSURE DECISION REMAINS VALID SM1A0421
00527 -0520 00 3 00000 NZT DELTRQ,3 IS RING FULL SM1A0422
00530 0020 00 0 00546 TRA DLS.1 NO, ADD NEW ENTRY, BELOW SM1A0423
00531 -0500 00 0 02257 CAL D.FULL YES, INCREMENT STATISTICS SM1A0424
00532 0400 00 0 02526 ADD =1 .. SM1A0425
00533 0601 00 0 02257 STO D.FULL .. SM1A0426
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 29
CALL-TIME UTILITY ROUTINES --- GETQ, SETUP., DELSUB
00534 -0625 00 0 02260 STL DWATSW INDICATE WAITING FOR DELETE FREEUP SM1A0427
00535 0074 00 4 00026 TSX SSTRAP,4 INFORM SUPERVISOR OF THIS SM1A0428
00536 3 00000 0 02525 PAR =0 .. SM1A0429
00537 3 00000 0 02526 PAR =1 .. INTERRUPT CODE 1, I/O QUEUE WAIT SM1A0430
00540 3 00000 0 02525 PAR =0 .. SM1A0431
00541 3 00000 0 02525 PAR =0 .. SM1A0432
00542 3 00000 0 02262 PAR SSCODE .. SM1A0433
00543 ENABLE REENABLE FOR ALL TRAPS NOW SM1A0434
00544 DLS.4 RESTO4 DLSXIT SM1A0435
00545 0020 60 4 00001 TRA* 1,4 SM1A0436
SM1A0437
00546 DLS.1 ENABLE REENABLE AFTER FULL TEST SM1A0438
00547 -0500 00 0 02254 CAL DELTOP INCREMENT RING POINTER SM1A0439
00550 0400 00 0 02252 ADD DELSIZ .. SM1A0440
00551 -0340 00 0 02251 LAS DELEND CHECK SIZE SM1A0441
00552 0774 00 0 00000 AXT 0,0 .. SM1A0442
00553 -0500 00 0 02250 CAL DELPNT YOU RANG, SIR .. SM1A0443
00554 0602 00 0 02254 SLW DELTOP .. SM1A0444
00555 GOIF ((ASGNSW,2)P)FALSE,DLS.5 SM1A0445
00560 XTRACT (THSTRK,2)LH .. SM1A0446
00562 0602 00 0 02320 SLW POSTMP .. SM1A0447
00563 0074 00 4 00016 TSX .UNPAK,4 PREPARE 'DELFRP' SM1A0448
00564 3 00000 0 02320 PAR POSTMP .. SM1A0449
00565 0602 00 0 02321 SLW POSTMP+1 SAVE UNPACKED VERSION SM1A0450
00566 0602 00 3 00001 DLS.5 SLW DELFRP,3 PUT IN QUEUE AS EXPECTED FORWARD POINTER SM1A0451
00567 0602 00 0 02321 SLW POSTMP+1 AND FOR RELEASE OF TRACK SM1A0452
00570 0560 00 0 02307 LDQ LABEL .. SM1A0453
00571 -0773 00 0 00022 RQL 18 RE-FORMAT SM1A0454
00572 -0600 00 3 00002 STQ DELREC,3 .. SM1A0455
00573 XTRACT (POINTR,2)LH GET ADDR. OF LAST TRACK SM1A0456
00575 0602 00 0 02320 SLW POSTMP .. SM1A0457
00576 0074 00 4 00016 TSX .UNPAK,4 .. SM1A0458
00577 3 00000 0 02320 PAR POSTMP .. SM1A0459
00600 PLACE (DELTRQ,3)W TRACK NAME (LAST CHANGE FOR RING ENTRY) SM1A0460
00601 0074 00 4 00002 TSX .FORCE,4 START WORKING IF NOTHING ELSE TO DO SM1A0461
00602 -0520 00 0 02321 NZT POSTMP+1 SEE IF ANYTHING TO BE SPECIALLY RELEASED SM1A0462
00603 0020 00 0 00611 TRA DLSXIT NOPE, SCRAM SM1A0463
00604 DISABL .. SM1A0464
00605 0074 00 4 00025 TSX DELTRK,4 RE-USE TRACK THAT WAS AHEAD SM1A0465
00606 3 00000 0 02321 PAR POSTMP+1 .. SM1A0466
00607 3 00000 0 00610 PAR *+1 FOR THE RECORD SM1A0467
00610 ENABLE MAY DISABLE AGAIN SOON, BUT C'EST LA VIE SM1A0468
00611 DLSXIT RETUR4 .. SM1A0469
00612 0020 00 4 00002 TRA 2,4 SM1A0470
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 30
ENTRIES FROM I/O CONTROL MOD. --- IOHLTF,DRAINF,IOBGNF,IORSTF
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0472
SM1A0473
HALT I/O FOR USER(S) SM1A0474
SM1A0475
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0476
SM1A0477
SM1A0478
SM1A0479
00613 -0500 60 4 00001 IOHLT1 CAL* 1,4 GET USER TO STOP SM1A0480
00614 0737 00 7 00000 PAC ,7 POINTER TO USER'S I/O STATUS TABLE SM1A0481
00615 0774 00 5 00000 AXT 0,5 SET SWITCHES FOR CHECK SM1A0482
00616 0756 00 7 00000 HLT.2 PCA ,7 COMPARE IO STATUS TABLE POINTERS SM1A0483
00617 0402 00 5 02341 SUB STATBL,5 DOES IT MATCH THIS BUFFER SM1A0484
00620 -0100 00 0 00623 TNZ *+3 NO SM1A0485
00621 0520 00 5 02265 ZET FILLED,5 YES - WAIT FOR IT TO EMPTY SM1A0486
00622 0020 00 0 00615 TRA HLT.2-1 OR CHANGE USERS (WATCH FOR LEAKY DRAINS). SM1A0487
00623 3 00000 5 00625 TXH *+2,5,0 IF DONE SM1A0488
00624 1 77777 5 00616 TXI HLT.2,5,-1 TRY NEXT BUFFER SM1A0489
00625 0020 00 4 00001 TRA 1,4 RETURN SM1A0490
SM1A0491
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0492
SM1A0493
WAIT FOR ALL I/O TO STOP SM1A0494
SM1A0495
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0496
SM1A0497
00626 0520 00 0 02265 DRAIN1 ZET FILLED WAIT FOR BOTH BUFFERS TO EMPTY SM1A0498
00627 0020 00 0 00626 TRA DRAIN1 .. SM1A0499
00630 0520 00 0 02266 ZET FILLED+1 .. SM1A0500
00631 0020 00 0 00626 TRA DRAIN1 MORE LEAKY DRAINS SM1A0501
00632 0020 00 4 00001 TRA 1,4 RETURN WHEN DONE SM1A0502
SM1A0503
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0504
SM1A0505
START I/O FOR USER(S) SM1A0506
SM1A0507
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0508
SM1A0509
00633 0021 00 0 00002 IOBGN1 TTR .FORCE TAKE RETURN FROM I/O ADAPTER SM1A0510
SM1A0511
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0512
SM1A0513
RESTART I/O WHEN TRAPS LOST SM1A0514
SM1A0515
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0516
SM1A0517
00634 0021 00 0 00003 IORST1 TTR .DRSET RESET ADAPTER, RESTART I/O SM1A0518
SM1A0519
00635 0020 00 4 00001 IORST2 TRA 1,4 DO ---NOT--- RESET ADAPTER, SECOND TIME SM1A0520
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 31
ENTRIES FOR STRATEGY MODULE 2 --- SAME AS STRATEGY MODULE 1
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0522
SM1A0523
STRATEGY MODULE 2 --- 1302 DISK SM1A0524
(SAME STRATEGY AS 7320 DRUM) SM1A0525
SM1A0526
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1A0527
SM1A0528
00060 OPEN2 SYN OPEN1 .. SM1A0529
00120 CLOSE2 SYN CLOSE1 .. SM1A0530
00127 QTEST2 SYN QTEST1 .. SM1A0531
00160 READ2 SYN READ1 .. SM1A0532
00274 WRITE2 SYN WRITE1 .. SM1A0533
00300 REWRT2 SYN REWRT1 .. SM1A0534
00303 DFILE2 SYN DFILE1 .. SM1A0535
00346 SCRAP2 SYN SCRAP1 .. SM1A0536
00613 IOHLT2 SYN IOHLT1 .. SM1A0537
00633 IOBGN2 SYN IOBGN1 .. SM1A0538
00626 DRAIN2 SYN DRAIN1 .. SM1A0539
DDST0055
INSERT SM1B.G INTERRUPT PROCESSOR DDST0056
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 32
INTERRUPT PROCESSOR - 'SM1TRP'
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0002
SM1B0003
'SM1TRP' ACCEPTS INTERRUPTS FROM THE VARIOUS IO SM1B0004
ADAPTERS IN THE FORM OF A SUBROUTINE CALL. IT SENDS SM1B0005
THE TRAP TO THE WINDUP SECTIONS OF THE PREVIOUS FUNCTIONSSM1B0006
WHICH GO TO 'IOPREP' TO MAKE THE WAITING CALL TO AN SM1B0007
I/O ADAPTER, AND THEN SET UP THE NEXT OPERATION FROM THE SM1B0008
APPROPRIATE QUEUE. SM1B0009
SM1B0010
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*- SM1B0011
SM1B0012
00636 SM1TRP SAVE4 SM1XIT ENTER ROUTINE HERE SM1B0013
00637 0535 00 5 02263 SM1T.1 LAC BUFTRP,5 GET BUFFER WHICH JUST TRAPPED SM1B0014
00640 -0625 00 0 02367 STL DIFFSW ASSUME BUFFERS DIFFERENT SM1B0015
00641 -0520 00 5 02265 NZT FILLED,5 WAS THIS A LEGITIMATE TRAP SM1B0016
00642 0020 00 0 01260 TRA IOPREP NO - GO DIRECTLY TO SET UP NEXT USER SM1B0017
00643 0600 00 0 02372 STZ SEQTMP .. SM1B0018
00644 LACX (STATBL,5)1 SETUP STANDARD POINTERS FOR POST-TRAP SM1B0019
00646 LACX (AFSTBL,5)2 PROCESSING. SM1B0020
00650 LACX (QUEUEP,5)3 .. SM1B0021
00652 -0500 00 5 02337 CAL RECID,5 GET POSS. LAST REC. COUNT SM1B0022
00653 0622 00 0 02371 STD LSTCNT .. SM1B0023
00654 MAKE ((RECID,5)D)FALSE CLEAR DECR. FOR SEQ. CHECKING SM1B0024
00656 0535 00 7 02264 LAC BUFWAT,7 SETUP FOR DIFFSW SM1B0025
00657 -0520 00 7 02265 NZT FILLED,7 IS BUFFER FILLED SM1B0026
00660 0020 00 0 00664 TRA *+4 NO - DON'T CHECK FOR SAME AFST SM1B0027
00661 -0500 00 7 02343 CAL AFSTBL,7 COMPARE AFST POINTERS SM1B0028
00662 0402 00 5 02343 SUB AFSTBL,5 .. SM1B0029
00663 0602 00 0 02367 SLW DIFFSW NON-ZERO IF DIFFERENT FILES SM1B0030
00664 0520 00 0 02370 ZET NULLIO WAS THIS SPECIAL RE-ENTRY SM1B0031
00665 0020 00 0 00706 TRA SM1T.2 YES, NO ERRORS POSSIBLE SM1B0032
00666 0500 60 4 00001 CLA* 1,4 CHECK FOR POSSIBLE ERROR SM1B0033
00667 0520 00 5 02351 ZET DELSW,5 WAS THIS A DELETE SM1B0034
00670 0020 00 0 01106 TRA WDELET YES, LET WIND-UP HANDLE ERROR CODE SM1B0035
00671 0100 00 0 00706 TZE SM1T.2 NONE SM1B0036
00672 0737 00 7 00000 PAC ,7 GET ERROR CODE SM1B0037
00673 0020 00 7 00673 TRA *,7 AND TAKE APPROPRIATE TRANSFER SM1B0038
SM1B0039
00674 0020 00 0 00702 TRA SM1T.4 PARITY ERROR SM1B0040
00675 ERROR 2 FATAL ERROR SM1B0041
00701 0020 00 0 01245 TRA FATERR .. SM1B0042
SM1B0043
00702 SM1T.4 ERROR 1 NON-FATAL ERROR SM1B0044
00706 SM1T.2 LDCX (FUNCNO,5)7 GET FUNCTION WHICH TRAPPED SM1B0045
00710 -0500 00 2 00025 CAL SEQSW,2 CHECK BLOCKING OF POINTER CHECK SM1B0046
00711 0625 00 0 02372 STT SEQTMP .. SM1B0047
00712 MAKE ((SEQSW,2)T)FALSE SM1B0048
00714 0020 60 7 00715 TRA* *+1,7 AND TAKE APPROPRIATE TRANSFER TO WINDUP SM1B0049
SM1B0050
00715 3 00000 0 01000 PAR WCRANK WINDUP THE APPROPRIATE FUNCTIONS SM1B0051
00716 3 00000 0 00771 PAR WBEGIN .. SM1B0052
00717 3 00000 0 01001 PAR WEND .. SM1B0053
00720 3 00000 0 01004 PAR WSRCF .. SM1B0054
00721 3 00000 0 01010 PAR WSRCB .. SM1B0055
00722 3 00000 0 01017 PAR WREAD .. SM1B0056
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 33
INTERRUPT PROCESSOR - 'SM1TRP'
00723 3 00000 0 01066 PAR WWRITE .. SM1B0057
00724 3 00000 0 01071 PAR WREWRT .. SM1B0058
00725 3 00000 0 01066 PAR WRWT1 .. SM1B0059
00726 3 00000 0 01011 PAR WSRCB. .. SM1B0060
SM1B0061
00727 -0500 00 3 00000 SM1RET CAL FINISW,3 GET SETTING OF FINISW SM1B0062
00730 0625 00 5 02365 SM1RT2 STT QUEGO,5 SET FOR LATER DELETION (ENTRY FROM SDELET) SM1B0063
00731 SM1RT1 SCAX (STATBL,5)1 SAVE STANDARD TAGS (ALSO ENTRY FROM SDELET)SM1B0064
00733 SCAX (AFSTBL,5)2 .. SM1B0065
00735 SCAX (QUEUEP,5)3 .. SM1B0066
00737 -0625 00 5 02265 STL FILLED,5 INDICATE SOMETHING IN BUFFER SM1B0067
00740 0535 00 7 02263 LAC BUFTRP,7 IS OTHER BUFFER FILLED NOW SM1B0068
00741 0520 00 7 02265 ZET FILLED,7 .. SM1B0069
00742 0520 00 0 02370 SM1RT3 ZET NULLIO OR DO WE HAVE TO FAKE A TRAP (ENTRY ON PMV)SM1B0070
00743 0020 00 0 00637 TRA SM1T.1 RETURN TO TRAP PROCESSOR SM1B0071
00744 0535 00 7 02255 LAC DELNXT,7 CHECK DELETE RING SM1B0072
00745 0520 00 0 02260 ZET DWATSW IS CALL SIDE WAITING FOR DELETE SM1B0073
00746 0520 00 7 00000 ZET DELTRQ,7 .. YES, IS DELETE RING FLUSHED NOW SM1B0074
00747 0020 00 0 00757 TRA SM1XIT .. NO, EXIT SM1B0075
00750 0074 00 4 00026 TSX SSTRAP,4 DELETE RING NOW EMPTY, INFORM SUPERVISOR SM1B0076
00751 3 00000 0 02525 PAR =0 .. SM1B0077
00752 3 00000 0 02527 PAR =2 .. INTERRUPT CODE 2, I/O UNBLOCKED SM1B0078
00753 3 00000 0 02525 PAR =0 .. SM1B0079
00754 3 00000 0 02525 PAR =0 .. SM1B0080
00755 3 00000 0 02262 PAR SSCODE .. FOR STRATEGY MODULE 1 SM1B0081
00756 0600 00 0 02260 STZ DWATSW RESET WAITING DELETE SWITCH SM1B0082
00757 SM1XIT RETUR4 RETURN THROUGH HERE SM1B0083
00760 0020 00 4 00002 TRA 2,4 .. SM1B0084
SM1B0085
00761 0021 00 0 00762 .DNULL TTR *+1 CYCLE THROUGH THE PROCESS ON POSITIONING SM1B0086
00762 -0625 00 0 02370 STL NULLIO SIGNAL NON-TRAPPING ADAPTER SM1B0087
00763 0600 00 5 02357 STZ BRKSW,5 X5 STILL LEFT FROM CALL SM1B0088
00764 0520 00 0 02367 ZET DIFFSW WILL DEFERRED INFO CLOBBER ANYTHING SM1B0089
00765 0020 00 4 00003 TRA 3,4 NO SM1B0090
00766 0535 00 7 02264 LAC BUFWAT,7 GET THE NUMBER OF THAT TRUCK SM1B0091
00767 0600 00 7 02265 STZ FILLED,7 AND SEND HIM AWAY SM1B0092
00770 0020 00 4 00003 TRA 3,4 .. SM1B0093
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 34
WINDUP PREVIOUS TASK
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0095
SM1B0096
WINDUP SECTION --- CHECK SEQUENCE, BACKWARD/FORWARD SM1B0097
POINTERS OF RECORD JUST COMPLETED, UPDATE POSITION SM1B0098
INDICATORS, PROVIDE ANY NECESSARY POINTERS FOR SM1B0099
WAITING RECORD. SM1B0100
SM1B0101
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0102
SM1B0103
00771 -0754 00 0 00000 WBEGIN PXD ,0 CLEAR AC SM1B0104
00772 WBGN.1 PLACE (NXTREC,2)A UPDATE TEMPORARIES SM1B0105
00773 0600 00 0 02370 STZ NULLIO CLEAR SM1B0106
00774 0600 00 5 02265 STZ FILLED,5 BLOCK FILLING FOR WAITING BUFFER SM1B0107
00775 -0625 00 0 02367 STL DIFFSW BLOCK PICKUP SM1B0108
00776 MAKE ((SEQSW,2)T)TRUE .. SM1B0109
01000 0020 00 0 01260 WCRANK TRA IOPREP NOTHING TO DO HERE SM1B0110
SM1B0111
01001 -0500 00 3 00002 WEND CAL QLABEL,3 GET OLD VERSION OF NORECS SM1B0112
01002 0402 00 0 02526 SUB =1 .. SM1B0113
01003 0020 00 0 00772 TRA WBGN.1 COMMON UPDATING SM1B0114
SM1B0115
01004 0074 00 4 01166 WSRCF TSX FORCHK,4 CHECK THE SEQUENCE SM1B0116
01005 -0520 00 5 02335 NZT FOREP,5 IS THIS LAST TRACK SM1B0117
01006 0020 00 0 01241 TRA SEQERR YES, IMPROPER REQUEST SM1B0118
01007 0020 00 0 01260 WSRCF1 TRA IOPREP SET UP NEXT USER SM1B0119
SM1B0120
01010 -0625 00 0 02372 WSRCB STL SEQTMP BLOCK POINTER CHECKING ON TURN-AROUND SM1B0121
01011 0074 00 4 01215 WSRCB. TSX BCKCHK,4 CHECK THE SEQUENCE SM1B0122
01012 -0520 00 5 02365 NZT QUEGO,5 ARE WE THROUGH WITH THIS QUEUE SM1B0123
01013 0020 00 0 01260 TRA IOPREP NO, LEAVE IT SM1B0124
01014 MAKE ((SEQSW,2)T)TRUE BLOCK CHECKING NEXT TIME SM1B0125
01016 0020 00 0 01260 TRA IOPREP .. SM1B0126
SM1B0127
01017 0074 00 4 01166 WREAD TSX FORCHK,4 CHECK FORWARD SEQUENCING SM1B0128
01020 0520 00 5 02335 ZET FOREP,5 LAST TRACK SM1B0129
01021 0020 00 0 01260 TRA IOPREP WOULDN'T IT BE LOVERLY SM1B0130
01022 0441 00 2 00014 LDI NORECS,2 SEE IF LENGTH SPECIFIED SM1B0131
01023 -0056 00 077777 LNT 77777 .. SM1B0132
01024 0020 00 0 01052 TRA WRD.1 YES SM1B0133
01025 -0500 00 0 02371 CAL LSTCNT NO, READING INDEFINITE LENGTH FILE SM1B0134
01026 0771 00 0 00022 ARS 18 SM1B0135
01027 PLACE (LCOUNT,2)A SET UP LCOUNT HERE SM1B0136
01030 -0500 00 0 02376 CAL TMPTRK SETUP POINTR SM1B0137
01031 PACK .. SM1B0138
01036 PLACE (POINTR,2)LH .. SM1B0139
01040 -0500 00 5 02337 CAL RECID,5 .. SM1B0140
01041 PLACE (NORECS,2)D .. SM1B0141
01043 0535 00 7 02264 LAC BUFWAT,7 SM1B0142
01044 -0520 00 0 02367 NZT DIFFSW SAME FILE WAITING SM1B0143
01045 0600 00 7 02265 STZ FILLED,7 YES, KILL IT SM1B0144
01046 -0625 00 5 02365 STL QUEGO,5 .. SM1B0145
01047 WRD.2 MAKE ((EOFSW,2)T)TRUE INTERNAL CHECK ON QUEUE REQUESTS SM1B0146
01051 0020 00 0 01260 TRA IOPREP FINITA LA COMMEDIA SM1B0147
SM1B0148
01052 WRD.1 IXTRCT (QWORDS,3)D CHECK FOR MATCHING LCOUNT SM1B0149
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 35
WINDUP PREVIOUS TASK
01054 0402 00 0 02371 SUB LSTCNT .. SM1B0150
01055 -0100 00 0 01241 TNZ SEQERR LENGTHS DON'T MATCH SM1B0151
01056 -0520 00 5 02365 NZT QUEGO,5 WERE WE AT END OF QUEUES SM1B0152
01057 0020 00 0 01241 TRA SEQERR NO (GROAN) SM1B0153
01060 0535 00 7 02264 LAC BUFWAT,7 CHECK WAITING BUFFER SM1B0154
01061 0520 00 0 02367 ZET DIFFSW IS SAME FILE WAITING SM1B0155
01062 0020 00 0 01047 TRA WRD.2 NO, MARK EOF SM1B0156
01063 -0520 00 7 02357 NZT BRKSW,7 IS BREAK WAITING SM1B0157
01064 0020 00 0 01241 TRA SEQERR SOMEBY GOOFED SM1B0158
01065 0020 00 0 01260 TRA IOPREP NOW DO 'I/O' ON THIS BREAK SM1B0159
SM1B0160
01066 -0500 00 5 02337 WWRITE CAL RECID,5 MAINTAIN TEMPORARIES SM1B0161
01067 PLACE (NXTREC,2)A .. SM1B0162
01070 0020 00 0 01260 TRA IOPREP .. SM1B0163
SM1B0164
01071 0074 00 4 01166 WREWRT TSX FORCHK,4 SEQUENCE CHECK PREFIX READIN SM1B0165
01072 0600 00 5 02353 STZ RWT1SW,5 .. SM1B0166
01073 0520 00 0 02367 ZET DIFFSW CHECK IF REALLY SAME FILE WAITING SM1B0167
01074 0020 00 0 01260 TRA IOPREP NO, MUST HAVE BEEN SCRAPPED SM1B0168
01075 0535 00 7 02264 LAC BUFWAT,7 SM1B0169
01076 -0500 00 5 02333 CAL BACKP,5 UPDATE STUFF SM1B0170
01077 0602 00 7 02333 SLW BACKP,7 .. SM1B0171
01100 -0500 00 5 02335 CAL FOREP,5 .. SM1B0172
01101 -0520 00 7 02363 NZT LCTSW,7 IS THERE VALID INFORMATION ALREADY THERE SM1B0173
01102 0602 00 7 02335 SLW FOREP,7 NO, PUT IN THIS FOREP SM1B0174
01103 -0500 00 7 02335 CAL FOREP,7 GET WHATEVER IS NOW IN WAITING BUFFER SM1B0175
01104 0602 00 0 02375 SLW PCKTRK .. SM1B0176
01105 0020 00 0 01260 TRA IOPREP .. SM1B0177
SM1B0178
01066 WRWT1 SYN WWRITE .. SM1B0179
SM1B0180
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0181
SM1B0182
WINDUP OF DELETE --- VERIFY POINTERS AND RECORD I.D. SM1B0183
BEFORE ACCEPTING RECORD AS BEING DELETED AND RETURNED SM1B0184
TO LIST OF AVAILABLE RECORDS. SM1B0185
SM1B0186
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0187
SM1B0188
01106 0100 00 0 01111 WDELET TZE WDEL.1 ENTER WITH ERROR CODE IN AC SM1B0189
01107 0402 00 0 02527 SUB =2 CHECK I/O CODE SM1B0190
01110 0100 00 0 01145 TZE DELERR FATAL, DUMP THIS QUEUE SM1B0191
01111 WDEL.1 XTRACT (DELREC,3)A GET EXPECTED ID SM1B0192
01113 0402 00 5 02337 SUB RECID,5 .. SM1B0193
01114 -0100 00 0 01145 TNZ DELERR DON'T TOUCH TRACK SM1B0194
01115 XTRACT (DELFIN,3)D CHECK RECID AGAINST REQUEST SM1B0195
01120 0402 00 5 02337 SUB RECID,5 .. SM1B0196
01121 -0120 00 0 01124 TMI *+3 NORMAL CASE SM1B0197
01122 -0100 00 0 01145 TNZ DELERR HE ALMOST LOST SM1B0198
01123 -0625 00 5 02365 STL QUEGO,5 END OF THIS DELETE SM1B0199
01124 XTRACT (DELFRP,3)W GET EXPECTED FORWARD POINTER SM1B0200
01125 -0340 00 5 02335 LAS FOREP,5 COMPARE SM1B0201
01126 0020 00 0 01145 TRA DELERR .. SM1B0202
01127 0020 00 0 01131 TRA *+2 (THIS ALSO WORKS FIRST TIME, SM1B0203
01130 0020 00 0 01145 TRA DELERR SEE INITIALIZATION) SM1B0204
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 36
WINDUP PREVIOUS TASK
01131 -0500 00 5 02337 CAL RECID,5 UPDATE QUEUE CONTENTS SM1B0205
01132 0402 00 0 02526 SUB =1 .. SM1B0206
01133 PLACE (DELREC,3)A .. SM1B0207
01134 -0500 00 0 02376 CAL TMPTRK UPDATE QUEUE SM1B0208
01135 PLACE (DELFRP,3)W NEW EXPECTED FOREP (ALSO USED BY DELTRK) SM1B0209
01136 -0500 00 5 02333 CAL BACKP,5 PREPARE TO UPDATE DELTRQ SM1B0210
01137 0602 00 0 02375 SLW PCKTRK TRACK ADDRESS FOR WAITING BUFFER SM1B0211
01140 PLACE (DELTRQ,3)W .. SM1B0212
01141 0100 00 0 01150 TZE DLDLET IF NO BACK POINTER, CHECK END OF REQUEST SM1B0213
01142 0520 00 5 02365 ZET QUEGO,5 SM1B0214
01143 0020 00 0 01150 TRA DLDLET .. SM1B0215
01144 0020 00 0 01260 TRA IOPREP SAME DELETE CANNOT BE WAITING SM1B0216
SM1B0217
01145 DELERR SYN * .. SM1B0218
01145 0601 00 0 02523 STO ERR.AC SAVE ERROR CONDITION SM1B0219
01146 -0625 00 0 02524 STL ILCERR AND LOCATION (FOR DUMPS SANS M.C.) SM1B0220
01147 -0625 00 5 02361 STL SCRPSW,5 SET DELETION SWITCH SM1B0221
01150 -0500 00 5 02343 DLDLET CAL AFSTBL,5 RUDIMENTARY QSCRAP FOR DELETE RING SM1B0222
01151 0402 00 0 02255 SUB DELNXT CHECK LOCATION OF SWITCH SM1B0223
01152 -0100 00 0 01154 TNZ DELDL IT'S BEEN MOVED SM1B0224
01153 0074 00 4 02170 TSX DELINC,4 INCREMENT POINTER FOR NEXT DELETE SM1B0225
01154 0600 00 3 00000 DELDL STZ DELTRQ,3 KILL REQUEST SM1B0226
01155 0600 00 5 02365 STZ QUEGO,5 CLEAR THIS SWITCH SM1B0227
01156 0520 00 0 02367 ZET DIFFSW IS ANOTHER DELETE WAITING SM1B0228
01157 0020 00 0 01260 TRA IOPREP NO, WE ARE OK SM1B0229
01160 0535 00 7 02264 LAC BUFWAT,7 SM1B0230
01161 0600 00 7 02265 STZ FILLED,7 KILL WAITING BUFFER SM1B0231
01162 0600 00 7 02351 STZ DELSW,7 KILL DELETE SWITCH, LIKEWISE SM1B0232
01163 0600 00 7 02365 STZ QUEGO,7 .. SM1B0233
01164 -0625 00 0 02367 STL DIFFSW NOTHING TO FILL, EITHER SM1B0234
01165 0020 00 0 01260 TRA IOPREP AND PREPARE FOR NEXT I/O SM1B0235
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 37
SEQUENCE CHECKING SUBROUTINES
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0237
SM1B0238
FORCHK, BCKCHK --- CHECK SEQUENCING OF RECORDS SM1B0239
AGAINST EXPECTED I.D., VERIFY FORWARD/BACKWARD POINTERS SM1B0240
SM1B0241
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0242
SM1B0243
01166 FORCHK SAVE4 SEQXIT CHECK FORWARD SEQUENCING SM1B0244
01167 XTRACT (NXTREC,2)A SEE IF THE RECORD ID MATCHES SM1B0245
01171 0400 00 0 02526 ADD =1 SM1B0246
01172 0402 00 5 02337 SUB RECID,5 .. SM1B0247
01173 -0100 00 0 01241 TNZ SEQERR NO - SEQUENCE ERROR SM1B0248
01174 -0500 00 5 02337 CAL RECID,5 YES - INCREMENT IT SM1B0249
01175 PLACE (NXTREC,2)A .. SM1B0250
01176 0520 00 0 02372 ZET SEQTMP IS POINTER CHECKING BLOCKED SM1B0251
01177 0020 00 0 01205 TRA FOR.1 YES SM1B0252
01200 -0500 00 0 02377 CAL EXPTRK GET EXPECTED BACK POINTER SM1B0253
01201 -0340 00 5 02333 LAS BACKP,5 .. SM1B0254
01202 -0520 00 5 02333 NZT BACKP,5 BUT CHECK FOR FIRST RECORD OF FILE SM1B0255
01203 0020 00 0 01205 TRA *+2 OK, OR BEGINNING OF FILE SM1B0256
01204 0020 00 0 01241 TRA SEQERR ERROR SM1B0257
01205 0520 00 5 02353 FOR.1 ZET RWT1SW,5 IS RE-WRITE IN PROGRESS SM1B0258
01206 0020 00 0 01213 TRA SEQXIT YES, DON'T MOVE TEMPORARIES SM1B0259
01207 -0500 00 5 02335 CAL FOREP,5 GET NEW TRACK ADDRESS SM1B0260
01210 0602 00 0 02375 SEQ.1 SLW PCKTRK FOR DEFERRED DELIVERY SM1B0261
01211 0560 00 2 00024 LDQ THSTRK,2 AND UPDATE AFSTBL SM1B0262
01212 -0620 00 2 00025 SLQ LSTTRK,2 .. SM1B0263
01213 SEQXIT RETUR4 .. SM1B0264
01214 0020 00 4 00001 TRA 1,4 SM1B0265
SM1B0266
01215 BCKCHK SAVE4 SEQXIT CHECK BACKWARD SEQUENCING SM1B0267
01216 -0520 00 5 02333 NZT BACKP,5 HAVE WE REACHED FIRST TRACK OF FILE SM1B0268
01217 0020 00 0 01241 TRA SEQERR YES, IMPROPER REQUEST SM1B0269
01220 XTRACT (NXTREC,2)A GET EXPECTED ID NO SM1B0270
01222 0400 00 0 02526 ADD =1 .. SM1B0271
01223 0402 00 5 02337 SUB RECID,5 AND COMPARE IT SM1B0272
01224 -0100 00 0 01241 TNZ SEQERR ERROR SM1B0273
01225 -0500 00 5 02337 CAL RECID,5 UPDATE IT SM1B0274
01226 0402 00 0 02527 SUB =2 FUDGE IT BACK SM1B0275
01227 PLACE (NXTREC,2)A .. SM1B0276
01230 0520 00 0 02372 ZET SEQTMP .. SM1B0277
01231 0020 00 0 01237 TRA BACK.1 .. SM1B0278
01232 -0500 00 0 02377 CAL EXPTRK GET EXPECTED FORWARD POINTER SM1B0279
01233 -0340 00 5 02335 LAS FOREP,5 .. SM1B0280
01234 -0520 00 5 02335 NZT FOREP,5 ON END OF FILE, MAY NOT MATCH SM1B0281
01235 0020 00 0 01237 TRA *+2 .. SM1B0282
01236 0020 00 0 01241 TRA SEQERR .. SM1B0283
01237 -0500 00 5 02333 BACK.1 CAL BACKP,5 .. SM1B0284
01240 0020 00 0 01210 TRA SEQ.1 RETURN, WITH TRACK TO PACK SM1B0285
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 38
SEQUENCE CHECKING SUBROUTINES
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0287
SM1B0288
FLAG SEQUENCE OR I/O ERROR, RELEASE WAITING ACTIVITY SM1B0289
FOR FILE SM1B0290
SM1B0291
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0292
SM1B0293
01241 SEQERR ERROR 2 INDICATE FATAL ERROR SM1B0294
SM1B0295
01245 FATERR SYN * SM1B0296
SM1B0297
01245 0520 00 5 02351 FTSCRP ZET DELSW,5 IS DELETION SWITCH ZERO SM1B0298
01246 0020 00 0 01250 TRA FTSCR1 YES, SKIP THE QSCRAP SM1B0299
01247 QSCRAP DELETE ALL QUEUES FOR THIS FILE SM1B0300
01250 0500 00 0 02263 FTSCR1 CLA BUFTRP CLEAR NECESSARY SWITCHES SM1B0301
01251 0074 00 4 02223 TSX SWCLR,4 .. SM1B0302
01252 0520 00 0 02367 ZET DIFFSW CHECK ON NEXT FILE SM1B0303
01253 0020 00 0 01270 TRA IOPR.1 DIFFERENT FILE, DO I/O SM1B0304
01254 0500 00 0 02264 CLA BUFWAT SAME FILE, DUMP WAITING I/O SM1B0305
01255 0074 00 4 02223 TSX SWCLR,4 .. SM1B0306
01256 0600 00 6 02355 STZ NOFILL,6 .. SM1B0307
01257 0020 00 0 01270 TRA IOPR.1 CYCLE SM1B0308
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 39
OUTPUT WAITING COMMAND AND FIND NEW USER
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0310
SM1B0311
AFTER WINDUP OF PREVIOUS I/O, PREPARE TO INITIATE SM1B0312
I/O THAT WAS SET UP BEFORE RELEASING THE PREVIOUS SM1B0313
TRAP. SM1B0314
SM1B0315
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0316
SM1B0317
01260 0520 00 5 02361 IOPREP ZET SCRPSW,5 .. SM1B0318
01261 0020 00 0 01245 TRA FTSCRP .. SM1B0319
01262 0520 00 0 02367 ZET DIFFSW IS THERE ANYTHING TO SET UP SM1B0320
01263 0020 00 0 01270 TRA IOPR.1 NOTHING TO CHANGE SM1B0321
01264 0535 00 7 02264 LAC BUFWAT,7 GET BUFFER WAITING IN WINGS SM1B0322
01265 -0500 00 0 02375 CAL PCKTRK PICK UP STUFF DESIRED OUT OF THIS TRAP SM1B0323
01266 -0520 00 7 02355 NZT NOFILL,7 DON'T FILL, HAS BEEN SET UP BY SRWT2 SM1B0324
01267 0602 60 7 02243 SLW* IOLSTA,7 AND PUT INTO WAITING REQUEST SM1B0325
01270 0500 00 0 02263 IOPR.1 CLA BUFTRP COMPLEMENT BUFFERS SM1B0326
01271 0601 00 0 02264 STO BUFWAT .. SM1B0327
01272 0402 00 0 02526 SUB =1 FASTER THAN 'ERA' SM1B0328
01273 0602 00 0 02263 SLW BUFTRP STORE ABSOLUTE VALUE SM1B0329
01274 0737 00 5 00000 PAC ,5 SM1B0330
01275 -0520 00 5 02265 NZT FILLED,5 IS THERE ANYTHING TO GO IN THIS ONE SM1B0331
01276 0020 00 0 01313 TRA IOPR.6 NO, SKIP TO PACK/DELETE TESTING SM1B0332
01277 -0500 00 5 02243 CAL IOLSTA,5 YES SM1B0333
01300 0636 00 2 02400 SCA TMPIR2,2 SAVE SM1B0334
01301 0737 00 2 00000 PAC ,2 GET EFFECTIVE ADDRESS OF LIST SM1B0335
01302 -0500 00 0 02376 CAL TMPTRK GET LAST TRACK ADDRESS USED SM1B0336
01303 0602 00 0 02377 SLW EXPTRK IN CASE WE CAN SAVE UNPACKING SM1B0337
01304 -0500 00 2 00000 CAL 0,2 GET NEW TRACK ADDRESS SM1B0338
01305 0602 00 0 02376 SLW TMPTRK AND PUT IN TEMPORARY STORAGE SM1B0339
01306 -0774 00 4 01307 AXC *+1,4 SIMULATE 'TSX' SM1B0340
01307 0020 60 5 02331 TRA* IOADPT,5 .. SM1B0341
01310 0761 00 2 00000 EFA 0,2 .. SM1B0342
01311 3 00000 0 01330 PAR DAPERR ERROR RETURN FOR BAD RECORD ADDRESS SM1B0343
01312 0535 00 2 02400 LAC TMPIR2,2 RESTORE SM1B0344
01313 0535 00 5 02264 IOPR.6 LAC BUFWAT,5 GET BUFFER WHICH LAST TRAPPED SM1B0345
01314 -0520 00 5 02265 NZT FILLED,5 WAS THERE REALLY ANYTHING THERE SM1B0346
01315 0020 00 0 01372 TRA IOPR.5 NO, THERE WASN'T SM1B0347
01316 0600 00 5 02265 STZ FILLED,5 CLEAR BUFFER SM1B0348
01317 0520 00 5 02355 ZET NOFILL,5 CHECK SWITCH SETTING SM1B0349
01320 0020 00 0 01372 TRA IOPR.5 BYPASS PACKING DURING WRITING SM1B0350
01321 -0520 00 5 02351 NZT DELSW,5 WAS IT A SUCCESSFUL DELETE SM1B0351
01322 0020 00 0 01361 TRA IOPR.3 NO, GO TO PACK POINTER INTO TEMPORARY SM1B0352
01323 0600 00 5 02351 STZ DELSW,5 CLEAR SWITCH SM1B0353
01324 0074 00 4 00025 TSX DELTRK,4 RETURN TRACK TO FREE TABLE SM1B0354
01325 0761 00 3 00001 EFA DELFRP,3 RETURN THE TRACK JUST READ FROM SM1B0355
01326 3 00000 0 01402 PAR DELER1 ERROR RETURNING TRACK SM1B0356
01327 0020 00 0 01402 TRA IOPR.2 .. SM1B0357
SM1B0358
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0359
SM1B0360
ERROR RETURN FROM ADAPTER MODULE SM1B0361
SM1B0362
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0363
SM1B0364
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 40
OUTPUT WAITING COMMAND AND FIND NEW USER
01330 0535 00 5 02263 DAPERR LAC BUFTRP,5 ERROR ON CALL TO ADAPTER SM1B0365
01331 0600 00 5 02265 STZ FILLED,5 CLEAR BUFFER SM1B0366
01332 -0520 00 5 02351 NZT DELSW,5 WERE WE ATTEMPTING A DELETE SM1B0367
01333 0020 00 0 01344 TRA DAPER1 NO SM1B0368
01334 0600 00 5 02351 STZ DELSW,5 CLEAR THIS DELETE FLAG SM1B0369
01335 LACX (AFSTBL,5)7 GET DELETE POINTER FOR THIS FILE SM1B0370
01337 0600 00 7 00000 STZ DELTRQ,7 RESET QUEUE SM1B0371
01340 0402 00 0 02255 SUB DELNXT DO WE SCRAP THIS ENTRY SM1B0372
01341 -0100 00 0 01440 TNZ FND.4 IT HAS BEEN PASSED SM1B0373
01342 0074 00 4 02170 TSX DELINC,4 MOVE POINTER SM1B0374
01343 0020 00 0 01440 TRA FND.4 LOOK FOR SOMETHING ELSE SM1B0375
SM1B0376
01344 DAPER1 SYN * SM1B0377
01344 0500 00 0 02263 CLA BUFTRP CLEAR SWITCHES SM1B0378
01345 0074 00 4 02223 TSX SWCLR,4 .. SM1B0379
01346 0600 00 6 02355 STZ NOFILL,6 .. SM1B0380
01347 LACX (STATBL,5)1 RELOAD POINTERS SM1B0381
01351 LACX (AFSTBL,5)2 .. SM1B0382
01353 ERROR 2 .. SM1B0383
01357 QSCRAP FRUSH SM1B0384
01360 0020 00 0 01440 TRA FND.4 .. SM1B0385
SM1B0386
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0387
SM1B0388
CLEAN UP LAST DETAILS OF PREVIOUS WINDUP THAT WERE SM1B0389
DEFERRED FOR PURPOSES OF TIMING SM1B0390
SM1B0391
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0392
SM1B0393
01361 -0500 00 0 02375 IOPR.3 CAL PCKTRK GET TRACK WHOSE PACKING WAS DEFERRED SM1B0394
01362 0100 00 0 01370 TZE IOPR.4 DON'T PACK ZEROES SM1B0395
01363 PACK .. SM1B0396
01370 IOPR.4 PLACE (THSTRK,2)LH UPDATE AFST SM1B0397
01372 0600 00 5 02355 IOPR.5 STZ NOFILL,5 CLEAR OLD SETTING SM1B0398
01373 -0520 00 5 02365 NZT QUEGO,5 SHOULD WE DELETE THIS QUEUE SM1B0399
01374 0020 00 0 01402 TRA IOPR.2 NO SM1B0400
01375 0600 00 5 02365 STZ QUEGO,5 RESET SWITCH SM1B0401
01376 0074 00 4 00011 TSX QDEL,4 REMOVE QUEUE ENTRY FROM ACTIVE LIST SM1B0402
01377 0761 00 1 00016 EFA QUEUE1,1 POINTER TO KEY SM1B0403
01400 0761 00 2 00000 EFA 0,2 ACTIVE FILE ENTRY SM1B0404
01401 0761 00 3 00000 EFA 0,3 QUEUE ENTRY SM1B0405
01402 0535 00 5 02263 IOPR.2 LAC BUFTRP,5 GET BUFFER NOW IN I/O SM1B0406
01403 -0520 00 0 02367 NZT DIFFSW ARE FILES THE SAME SM1B0407
01404 0020 00 0 01426 TRA FNDUS. YES, NO UNPACKING, USE PREVIOUS TMPTRK SM1B0408
01405 -0520 00 5 02351 NZT DELSW,5 CHECK WHAT HAS TO BE PACKED SM1B0409
01406 0520 00 5 02355 ZET NOFILL,5 NO PACKING ON WRITE OR DELETE SM1B0410
01407 0020 00 0 01426 TRA FNDUS. .. SM1B0411
01410 LACX (AFSTBL,5)2 RESTORE AFST POINTERS SM1B0412
01412 GOIF ((SEQSW,2)T)TRUE,FNDUS. LSTTRK IS NOW GARBAGE SM1B0413
01415 XTRACT (LSTTRK,2)LH SM1B0414
01417 UNPACK .. SM1B0415
01425 0602 00 0 02377 SLW EXPTRK POINTER EXPECTED ON THIS RECORD SM1B0416
SM1B0417
01402 DELER1 SYN IOPR.2 IGNORE ERROR RETURN FROM 'DELTRK' SM1B0418
SM1B0419
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 41
OUTPUT WAITING COMMAND AND FIND NEW USER
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0420
SM1B0421
LOOK FOR NEW USER TO PROCESS, AND SET UP I/O SM1B0422
BEFORE RETURNING CONTROL TO PROGRAM WHICH WAS SM1B0423
IN EXECUTION BEFORE TRAP SM1B0424
SM1B0425
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0426
SM1B0427
01426 -0520 00 5 02353 FNDUS. NZT RWT1SW,5 IS IT PART OF RE-WRITE SM1B0428
01427 0020 00 0 01440 TRA FND.4 NO, GO AHEAD SM1B0429
01430 LACX (STATBL,5)1 RESTORE OLD INDEX VALUES SM1B0430
01432 LACX (AFSTBL,5)2 THAT WOULD OTHERWISE BE SM1B0431
01434 LACX (QUEUEP,5)3 SET UP BY GTBEAD AND NORMAL SEARCH SM1B0432
01436 0600 00 0 02367 STZ DIFFSW .. SM1B0433
01437 0020 00 0 01463 TRA FND.3 NOW GO AS IF REGULAR CALL SM1B0434
SM1B0435
01440 0074 00 4 00021 FND.4 TSX FNDUSR,4 CALL I/O CONTROL FOR A USER TO RUN SM1B0436
01441 3 00742 0 01532 PAR NOUSR,,SM1RT3 ERROR RETURNS FOR NO ONE ACTIVE/ALLOWED SM1B0437
01442 3 00000 0 02241 PAR QUEUEC RELATIVE LOCATION OF QUEUE KEY SM1B0438
01443 -0600 00 0 02373 STQ IOBASE .. SM1B0439
01444 0602 00 0 02374 FND.2 SLW QBASE .. SM1B0440
01445 0737 00 3 00000 PAC ,3 ADDRESS CONTAINS QUEUE POINTER SM1B0441
01446 -0737 00 2 00000 PDC ,2 DECREMENT CONTAINS ACTIVE FILE POINTER SM1B0442
01447 0535 00 1 02373 LAC IOBASE,1 .. SM1B0443
01450 -0625 00 0 02367 STL DIFFSW MARK DIFFSW FOR SETUPS SM1B0444
01451 0535 00 7 02263 LAC BUFTRP,7 CHECK THE BUFFER IN I/O SM1B0445
01452 -0520 00 0 02370 NZT NULLIO FORCE UNPACKING REGARDLESS SM1B0446
01453 -0520 00 7 02265 NZT FILLED,7 IS I/O IN PROGRESS SM1B0447
01454 0020 00 0 01463 TRA FND.3 NO, LEAVE DIFFSW SET SM1B0448
01455 0771 00 0 00022 ARS 18 CHECK AFST POINTERS SM1B0449
01456 0402 00 7 02343 SUB AFSTBL,7 .. SM1B0450
01457 0602 00 0 02367 SLW DIFFSW PUT RESULT IN DIFFSW SM1B0451
01460 -0100 00 0 01463 TNZ FND.3 IF DIFFERENT FILES, DON'T CHECK SCRPSW SM1B0452
01461 0520 00 7 02361 ZET SCRPSW,7 IS FILE TO BE SCRAPPED AFTER I/O SM1B0453
01462 0020 00 0 01525 TRA NXBD YES, LOOK FOR DIFF. FILE, SAME USER SM1B0454
01463 FND.3 IXTRCT (FUNCT,3)D GET FUNCTION CODE SM1B0455
01465 0535 00 5 02264 LAC BUFWAT,5 SET UP BUFFER WAITING SM1B0456
01466 0622 00 5 02347 STD FUNCNO,5 SAVE FUNCTION NUMBER SM1B0457
01467 -0737 00 7 00000 PDC ,7 AND TAKE APPROPRIATE TRANSFER SM1B0458
01470 0500 00 7 02414 CLA SCOUNT,7 INCREMENT COUNTER SM1B0459
01471 0400 00 0 02526 ADD =1 .. SM1B0460
01472 0601 00 7 02414 STO SCOUNT,7 .. SM1B0461
01473 0020 60 7 01474 TRA* *+1,7 .. SM1B0462
SM1B0463
01474 3 00000 0 01525 PAR SCRANK TRANSFER TABLE TO SET UP FUNCTIONS SM1B0464
01475 3 00000 0 01544 PAR SBEGIN .. SM1B0465
01476 3 00000 0 01563 PAR SEND .. SM1B0466
01477 3 00000 0 01567 PAR SSRCF .. SM1B0467
01500 3 00000 0 01610 PAR SSRCB .. SM1B0468
01501 3 00000 0 01631 PAR SREAD .. SM1B0469
01502 3 00000 0 01644 PAR SWRITE .. SM1B0470
01503 3 00000 0 01772 PAR SREWRT .. SM1B0471
01504 3 00000 0 02012 PAR SRWT1 .. SM1B0472
01505 3 00000 0 01616 PAR SSRCB. .. SM1B0473
SM1B0474
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 42
OUTPUT WAITING COMMAND AND FIND NEW USER
01506 -0774 00 4 01440 NXUSR AXC FND.4,4 SIMULATE CALL FROM FND.4 SM1B0475
01507 0020 00 0 00023 TRA NXTUSR .. SM1B0476
SM1B0477
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0478
SM1B0479
USER I/O REQUEST ABORTED FOR SOME REASON DURING SM1B0480
SETUP, RELEASE QUEUES OR BLOCK FURTHER ACTIVITY SM1B0481
FOR FILE, AND LOOK FOR DIFFERENT FILE TO PROCESS SM1B0482
FOR SAME USER, IF POSSIBLE SM1B0483
SM1B0484
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0485
SM1B0486
01510 USERR ERROR 2 ERROR IN QUEUEING (EOF, LABEL) SM1B0487
SM1B0488
01514 FATER1 SYN * COLLECTION POINT LABEL SM1B0489
SM1B0490
01514 0500 00 0 02264 SERR CLA BUFWAT CLEAR SWITCHES SM1B0491
01515 0074 00 4 02223 TSX SWCLR,4 .. SM1B0492
01516 0600 00 6 02355 STZ NOFILL,6 .. SM1B0493
01517 0520 00 0 02367 ZET DIFFSW IS SAME FILE IN I/O SM1B0494
01520 0020 00 0 01530 TRA SERR.1 NO, DUMP QUEUES, LOOK FOR NEW WORK SM1B0495
01521 0535 00 7 02263 LAC BUFTRP,7 YES, FLAG TRAP SM1B0496
01522 -0625 00 7 02361 STL SCRPSW,7 .. SM1B0497
01523 0520 00 7 02353 ZET RWT1SW,7 DID WE BREAK IN MIDDLE OF RE-WRITE SM1B0498
01524 0020 00 0 01440 TRA FND.4 YES, GO BACK TO 'FNDUSR' SEQUENCE SM1B0499
01525 0074 00 4 00022 NXBD TSX NXBEAD,4 GET NEW QUEUE ENTRY FOR SAME USER SM1B0500
01526 3 00000 0 01506 PAR NXUSR EMPTY, TRY DIFFERENT USER SM1B0501
01527 0020 00 0 01444 TRA FND.2 SUCCESS, CHECK AND PROCESS SM1B0502
SM1B0503
01530 SERR.1 QSCRAP REMOVE ALL ACTIVE ENTRIES SM1B0504
01531 0020 00 0 01440 TRA FND.4 NOW SEARCH AGAIN SM1B0505
SM1B0506
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0507
SM1B0508
ALL USERS INACTIVE OR BLOCKED, CHECK FOR ACTIVE SM1B0509
DELETE REQUESTS SM1B0510
SM1B0511
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0512
SM1B0513
01532 0535 00 5 02264 NOUSR LAC BUFWAT,5 GET AVAILABLE BUFFER SM1B0514
01533 0535 00 3 02255 LAC DELNXT,3 GET QUEUE POINTER SM1B0515
01534 -0520 00 3 00000 NOUSR1 NZT DELTRQ,3 IS THERE ANYTHING TO DELETE SM1B0516
01535 0020 00 0 00742 TRA SM1RT3 BACK TO USER (CHECK FOR NON-TRAPPING I/O) SM1B0517
01536 GOIF ((DLFNSW,3)T)FALSE,SDELET IS THIS DELETE STILL ACTIVE SM1B0518
01541 0074 00 4 02170 TSX DELINC,4 BUMP DELETE QUEUE SM1B0519
01542 0737 00 3 00000 PAC ,3 .. SM1B0520
01543 0020 00 0 01534 TRA NOUSR1 TRY AGAIN SM1B0521
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 43
SET UP NEXT TASK
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0523
SM1B0524
PREPARE INFORMATION NECESSARY TO START NEXT SM1B0525
RECORD INTO I/O AS SOON AS POSSIBLE AFTER NEXT TRAP. SM1B0526
SM1B0527
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0528
SM1B0529
01525 SCRANK SYN NXBD FIND ANOTHER QUEUE ENTRY FOR THIS USER SM1B0530
SM1B0531
01544 0560 00 2 00015 SBEGIN LDQ POINTR,2 GET FIRST TRACK ADDRESS SM1B0532
01545 -0763 00 0 00022 LGL 18 .. SM1B0533
01546 -0754 00 0 00000 PXD ,0 NEW CURREC SM1B0534
01547 -0620 00 2 00024 SBGN.1 SLQ THSTRK,2 UPDATE TEMPORARIES SM1B0535
01550 PLACE (CURREC,2)A NEW VALUE SM1B0536
01551 0560 00 0 02525 LDQ =0 .. SM1B0537
01552 -0620 00 2 00025 SLQ LSTTRK,2 .. SM1B0538
01553 -0625 00 5 02357 STL BRKSW,5 USED LATER BY WREAD SM1B0539
01554 MAKE ((FINISW,3)T)TRUE .. SM1B0540
01556 MAKE ((EOFSW,2)T)FALSE .. SM1B0541
01560 IOCALL .DNULL SPECIAL ADAPTER SUBROUTINE (INTERNAL) SM1B0542
01562 0020 00 0 00727 TRA SM1RET GO BACK FOR MORE SM1B0543
SM1B0544
01563 0560 00 2 00015 SEND LDQ POINTR,2 GET LAST TRACK ADDRESS SM1B0545
01564 -0500 00 3 00002 CAL QWORDS,3 NEW VALUE FOR CURREC SM1B0546
01565 0402 00 0 02526 SUB =1 POSITIONED TO LOOK AT LAST RECORD SM1B0547
01566 0020 00 0 01547 TRA SBGN.1 TO COMMON CODE SM1B0548
SM1B0549
01567 SSRCF GOIF ((EOFSW,2)T)TRUE,USERR SM1B0550
01572 0074 00 4 02163 TSX CURINC,4 INCREMENT CURREC SM1B0551
01573 0400 00 0 02526 ADD =1 .. SM1B0552
01574 0402 00 3 00002 SUB TRQST,3 CHECK SM1B0553
01575 -0100 00 0 01600 TNZ SSRCF1 NOT THERE SM1B0554
01576 MAKE ((FINISW,3)T)TRUE .. SM1B0555
01600 SSRCF1 BCDTRK (THSTRK,2) RETURNS GARBAGE IF NO PACKING NECESS SM1B0556
01602 0602 60 5 02243 SLW* IOLSTA,5 AND SAVE IN IO LIST SM1B0557
01603 -0500 00 0 02247 CAL IODCON GET IOD CONSTANT SM1B0558
01604 0602 60 5 02245 SLW* IOCOM,5 AND PUT IT IN BOTTOM OF LIST SM1B0559
01605 IOCALL .DREAD SET UP CALL TO READ DISK/DRUM SM1B0560
01607 0020 00 0 00727 TRA SM1RET AND RETURN. SM1B0561
SM1B0562
01610 SSRCB GOIF ((EOFSW,2)T)TRUE,USERR IS DESIRED INFORMATION AVAILABLE SM1B0563
01613 OBTVLD SRCBK. .. SM1B0564
01615 IPLACE (FUNCT,3)D .. SM1B0565
01616 SSRCB. XTRACT (CURREC,2)A GET CURRENT RECORD SM1B0566
01620 0602 00 0 02402 SLW STEMP .. SM1B0567
01621 0402 00 3 00002 SUB TRQST,3 COMPARE WITH REQUEST SM1B0568
01622 -0100 00 0 01625 TNZ SSRCB1 NOT THERE SM1B0569
01623 MAKE ((FINISW,3)T)TRUE .. SM1B0570
01625 -0500 00 0 02402 SSRCB1 CAL STEMP NOW UPDATE CURREC SM1B0571
01626 0402 00 0 02526 SUB =1 .. SM1B0572
01627 PLACE (CURREC,2)A .. SM1B0573
01630 0020 00 0 01600 TRA SSRCF1 .. SM1B0574
SM1B0575
01631 SREAD GOIF ((EOFSW,2)T)TRUE,USERR SOMEBODY MIS-QUEUED SM1B0576
01634 0074 00 4 02163 TSX CURINC,4 .. SM1B0577
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 44
SET UP NEXT TASK
01635 IOCALL .DREAD SET UP CALL TO READ DISK/DRUM SM1B0578
01637 BCDTRK (THSTRK,2) .. SM1B0579
01641 0602 60 5 02243 SLW* IOLSTA,5 .. SM1B0580
01642 0074 00 4 02077 TSX PRLST.,4 PROCESS IO LIST IN QUEUE ELEMENT SM1B0581
01643 0020 00 0 00727 TRA SM1RET AND RETURN. SM1B0582
SM1B0583
01644 SWRITE GOIF ((EOFSW,2)T)TRUE,USERR BAD CALL SM1B0584
01647 0074 00 4 02163 TSX CURINC,4 UPDATE CURREC SM1B0585
01650 PLACE (RECID,5)W PUT SEQUENCE NUMBER INTO PREFIX SM1B0586
01651 XTRACT (QLABEL,3)A PREPARE TO VERIFY SEQUENCE SM1B0587
01653 0402 00 5 02337 SUB RECID,5 .. SM1B0588
01654 -0100 00 0 01510 TNZ USERR NO MATCH, MIS-QUEUE SM1B0589
01655 -0500 00 5 02337 CAL RECID,5 NOW UPDATE QLABEL SM1B0590
01656 0400 00 0 02526 ADD =1 .. SM1B0591
01657 PLACE (QLABEL,3)A .. SM1B0592
01660 -0625 00 5 02355 STL NOFILL,5 ON WRITE, NO FILLING PLEASE SM1B0593
01661 IOCALL .DWRIT SET UP CALL TO WRITE DISK/DRUM SM1B0594
01663 0074 00 4 02077 TSX PRLST.,4 .. SM1B0595
01664 -0500 00 5 02337 CAL RECID,5 FIND SEQUENCE NUMBER SM1B0596
01665 0402 00 0 02526 SUB =1 SEE IF FIRST RECORD SM1B0597
01666 -0100 00 0 01720 TNZ SWR.3 NO, SET POINTERS AS REQ'D. SM1B0598
01667 0600 00 5 02333 STZ BACKP,5 FIRST TRACK, NO BACK-POINTER SM1B0599
01670 0600 00 5 02337 STZ RECID,5 FOR ERROR FROM GETTRK SM1B0600
01671 XTRACT (F,2)T GET DEVICE CODE SM1B0601
01674 0602 00 0 02402 SLW STEMP AND SAVE SM1B0602
01675 0074 00 4 00024 TSX GETTRK,4 GET A TRACK SM1B0603
01676 3 00000 0 02402 PAR STEMP ON THIS DEVICE SM1B0604
01677 3 00000 0 02121 PAR GETERR ERROR SM1B0605
01700 PACK (UNPACKED FORM IS SAVED IN STEMP) SM1B0606
01705 0602 00 2 00015 SLW POINTR,2 SAVE STARTING TRACK SM1B0607
01706 PLACE (POINTR,2)LH (= ENDING TRACK) SM1B0608
01710 -0620 00 2 00024 SLQ THSTRK,2 AND IN AFST ALSO. SM1B0609
01711 -0620 00 2 00025 SLQ LSTTRK,2 .. SM1B0610
01712 0535 00 5 02264 LAC BUFWAT,5 DESTROYED BY GETTRK SM1B0611
01713 -0500 00 0 02526 CAL =1 REPLACE RECID SM1B0612
01714 PLACE (RECID,5)A .. SM1B0613
01715 IPLACE (ASGNSW,2)P MARK FILE WITH TRACK(S) ON DEVICE SM1B0614
01716 -0500 00 0 02402 CAL STEMP GET UNPACKED TRACK SM1B0615
01717 0020 00 0 01734 TRA SWR.5 .. SM1B0616
01720 -0500 00 0 02376 SWR.3 CAL TMPTRK IF SAME FILE BEING WRITTEN, SM1B0617
01721 BCDTRK (LSTTRK,2) DON'T UNPACK LSTTRK AGAIN SM1B0618
01723 0602 00 5 02333 SLW BACKP,5 POINTER TO PREVIOUS TRACK SM1B0619
01724 0560 00 2 00024 LDQ THSTRK,2 .. SM1B0620
01725 -0620 00 2 00025 SLQ LSTTRK,2 UPDATE LAST TRACK SM1B0621
01726 -0620 00 2 00015 SLQ POINTR,2 KEEP AFST UPDATED SM1B0622
01727 0535 00 7 02263 LAC BUFTRP,7 GET BUFFER IN I/O SM1B0623
01730 -0500 00 7 02335 CAL FOREP,7 GET TRACK POINTED TO SM1B0624
01731 BCDTRK (THSTRK,2) NO UNPACKING FOR SAME FILE SM1B0625
01733 0602 00 0 02402 SLW STEMP .. SM1B0626
01734 0602 60 5 02243 SWR.5 SLW* IOLSTA,5 AND PUT IN IO COMMAND LIST SM1B0627
01735 GOIF ((FINISW,3)T)FALSE,SWR.1 SM1B0628
01740 GOIF ((QWORDS,3)D)FALSE,SWR.1 SM1B0629
01743 0622 00 5 02337 SWR.7 STD RECID,5 THIS IS COUNT SM1B0630
01744 0600 00 5 02335 STZ FOREP,5 NO NEXT TRACK SM1B0631
01745 MAKE ((EOFSW,2)T)TRUE SM1B0632
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 45
SET UP NEXT TASK
01747 MAKE ((ASGNSW,2)P)FALSE FILE IS NOW COMPLETE ON UNIT SM1B0633
01751 0560 00 0 02525 LDQ =0 .. SM1B0634
01752 0020 00 0 01770 TRA SWR.2 .. SM1B0635
01753 0074 00 4 00024 SWR.1 TSX GETTRK,4 GET NEW TRACK SM1B0636
01754 3 00000 0 02402 PAR STEMP NEXT TO THIS ONE SM1B0637
01755 3 00000 0 02121 PAR GETERR ERROR SM1B0638
01756 0535 00 5 02264 LAC BUFWAT,5 .. SM1B0639
01757 0602 00 5 02335 SLW FOREP,5 AND SAVE IN FORWARD POINTER SM1B0640
01760 PACK PACK POINTER SM1B0641
01765 -0765 00 0 00022 LGR 18 AND SAVE IN THSTRK SM1B0642
01766 0500 00 0 02540 CLA =.75B0 SET ASGNSW POSITIVE, NON-ZERO SM1B0643
01767 IPLACE (ASGNSW,2)P .. SM1B0644
01770 -0620 00 2 00024 SWR.2 SLQ THSTRK,2 .. SM1B0645
01771 0020 00 0 00727 TRA SM1RET AND RETURN. SM1B0646
SM1B0647
01772 SREWRT GOIF ((EOFSW,2)T)TRUE,USERR BAD REQUEST SM1B0648
01775 0074 00 4 02163 TSX CURINC,4 UPDATE CURREC FOR FILE SM1B0649
01776 IOCALL .DREAD SET UP CALL TO READ PREFIX SM1B0650
02000 OBTVLD RWRT1 FLIP VALUES SM1B0651
02002 IPLACE (FUNCT,3)D .. SM1B0652
02003 BCDTRK (THSTRK,2) .. SM1B0653
02005 0602 60 5 02243 SLW* IOLSTA,5 SAVE IN IO COMMAND LIST SM1B0654
02006 -0500 00 0 02247 CAL IODCON SET UP DISCONNECT SM1B0655
02007 0602 60 5 02245 SLW* IOCOM,5 .. SM1B0656
02010 -0625 00 5 02353 STL RWT1SW,5 INDICATE SPECIAL HANDLING SM1B0657
02011 0020 00 0 00727 TRA SM1RET .. SM1B0658
SM1B0659
02012 SRWT1 IOCALL .DWRIT CALL DWRITE FOR WRITING SM1B0660
02014 OBTVLD REWRTF FLIP FUNCTION SM1B0661
02016 IPLACE (FUNCT,3)D .. SM1B0662
02017 0074 00 4 02077 TSX PRLST.,4 INSERT IO LIST SM1B0663
02020 XTRACT (QLABEL,3)A .. SM1B0664
02022 0602 00 5 02337 SLW RECID,5 .. SM1B0665
02023 0400 00 0 02526 ADD =1 UPDATE RECORD COUNT SM1B0666
02024 PLACE (QLABEL,3)A .. SM1B0667
02025 -0500 00 0 02376 CAL TMPTRK GET NAME OF TRACK NOW BEING READ SM1B0668
02026 0602 00 0 02402 SLW STEMP IN CASE FILE IS TO BE EXTENDED SM1B0669
02027 0602 60 5 02243 SLW* IOLSTA,5 WILL WRITE ON SAME TRACK SM1B0670
02030 0600 00 5 02363 STZ LCTSW,5 .. SM1B0671
02031 -0625 00 5 02355 STL NOFILL,5 .. SM1B0672
02032 0560 00 2 00024 LDQ THSTRK,2 .. SM1B0673
02033 -0620 00 2 00025 SLQ LSTTRK,2 .. SM1B0674
02034 GOIF ((FINISW,3)T)FALSE,SM1RET .. SM1B0675
02037 GOIF ((QEOF,3)P)FALSE,SM1RET IS THIS LAST RECORD OF FILE SM1B0676
02042 -0625 00 5 02363 STL LCTSW,5 INDICATE WRWT1 NOT TO MOVE FOREP SM1B0677
02043 GOIF ((QWORDS,3)D)FALSE,SWR.1 FILE IS BEING EXTENDED SM1B0678
02046 -0620 00 2 00015 SLQ POINTR,2 SAVE CURRENT TRACK IN AFENTY SM1B0679
02047 0020 00 0 01743 TRA SWR.7 RE-WRITE LAST TRACK WITH LABEL SM1B0680
SM1B0681
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0682
SM1B0683
INITIATE PREFIX READ-IN FOR RECORD OF ACTIVE SM1B0684
DELETE REQUEST, TO VERIFY SEQUENCE NUMBER SM1B0685
AND POINTERS SM1B0686
SM1B0687
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 46
SET UP NEXT TASK
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0688
SM1B0689
02050 SDELET IOCALL .DREAD SET UP READ FOR DELETE SM1B0690
02052 0500 00 0 02426 CLA S.DCNT INCREMENT COUNTER SM1B0691
02053 0400 00 0 02526 ADD =1 .. SM1B0692
02054 0601 00 0 02426 STO S.DCNT .. SM1B0693
02055 -0500 00 3 00000 CAL DELTRQ,3 .. SM1B0694
02056 0602 60 5 02243 SLW* IOLSTA,5 .. SM1B0695
02057 -0500 00 0 02247 CAL IODCON .. SM1B0696
02060 0602 60 5 02245 SLW* IOCOM,5 .. SM1B0697
02061 0535 00 1 02255 LAC DELNXT,1 IN CASE A USER IS BLOCKED SM1B0698
02062 0535 00 2 02255 LAC DELNXT,2 THIS IS CURRENT 'AFST' SM1B0699
02063 -0625 00 5 02351 STL DELSW,5 INDICATE THAT THIS IS A DELETE REQUEST SM1B0700
02064 XTRACT (DELFIN,3)D CHECK FOR LAST QUEUE SM1B0701
02067 0602 00 0 02402 SLW STEMP .. SM1B0702
02070 XTRACT (DELREC,3)A GET CURRENT POSITION SM1B0703
02072 0402 00 0 02402 SUB STEMP .. SM1B0704
02073 0120 00 0 00731 TPL SM1RT1 OK, GO BACK TO USER SM1B0705
02074 MAKE ((DLFNSW,3)T)TRUE MARK FOR NEXT TIME AROUND SM1B0706
02076 0020 00 0 00730 TRA SM1RT2 MARK QUEGO AT SM1RET SM1B0707
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 47
SET UP NEXT TASK
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0709
SM1B0710
PROCESS RECORD OF I/O FROM QUEUE, CHECK SM1B0711
FOR PROTECTION VIOLATION IN QUEUED REQUEST. SM1B0712
SM1B0713
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0714
SM1B0715
02077 PRLST. SAVE4 PRLXIT .. SM1B0716
02100 -0500 00 5 02245 CAL IOCOM,5 GET OUTPUT LIST NAME SM1B0717
02101 0737 00 3 00000 PAC ,3 RESTORE X3 LATER SM1B0718
02102 0074 00 4 00020 TSX PROLST,4 CALL I/O LIST PROCESSOR SM1B0719
02103 0761 00 3 00000 EFA 0,3 LOCATION OF OUTPUT LIST SM1B0720
02104 3 02373 0 02374 PAR QBASE,,IOBASE PARAMETERS FOR USER'S I/O SM1B0721
02105 3 00000 0 02242 PAR QLISTC .. SM1B0722
02106 3 02113 0 02240 PAR RECWRD,,PROERR SM1B0723
02107 0535 00 3 02374 LAC QBASE,3 RESTORE SM1B0724
02110 0535 00 5 02264 LAC BUFWAT,5 .. SM1B0725
02111 PRLXIT RETUR4 .. SM1B0726
02112 0020 00 4 00001 TRA 1,4 .. SM1B0727
SM1B0728
02113 0535 00 5 02264 PROERR LAC BUFWAT,5 .. SM1B0729
02114 ERROR 7 .. SM1B0730
02120 0020 00 0 01514 TRA SERR SM1B0731
SM1B0732
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0733
SM1B0734
ERROR RETURN FROM TRACK MANAGEMENT --- NO MORE SM1B0735
RECORDS AVAILABLE OR ILLEGAL DEVICE REQUEST SM1B0736
SM1B0737
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1B0738
SM1B0739
02121 0402 00 0 02527 GETERR SUB =2 CHECK ERROR FROM GETTRK SM1B0740
02122 -0100 00 0 02156 TNZ GERR.1 BAD CALL SM1B0741
02123 ERROR 3 STORAGE EXHAUSTED SM1B0742
02127 0535 00 5 02264 LAC BUFWAT,5 RESTORE SM1B0743
02130 -0520 00 5 02337 NZT RECID,5 CHECK LABEL SM1B0744
02131 0020 00 0 02152 TRA GERR.2 NEW FILE SM1B0745
02132 -0625 00 5 02361 STL SCRPSW,5 SCRAP QUEUES FOR THIS SM1B0746
02133 -0625 00 5 02363 STL LCTSW,5 FILE AFTER CLOSING FILE SM1B0747
02134 -0500 00 0 02240 CAL RECWRD COMPLETE RECORD SM1B0748
02135 PLACE (LCOUNT,2)A INDICATE TO FILE CONTROL SM1B0749
02136 PLACE (RECID,5)D AND IN LABEL SM1B0750
02140 -0500 00 5 02337 CAL RECID,5 GET SEQUENCE NUMBER SM1B0751
02141 PLACE (NORECS,2)D MODIFY FILE SM1B0752
02143 0600 00 5 02335 STZ FOREP,5 CLEAR LOOK-AHEAD SM1B0753
02144 MAKE ((FINISW,3)T)TRUE THIS QUEUE GOING SM1B0754
02146 IPLACE (EOFSW,2)T FORCE EOF CONDDITION SM1B0755
02147 MAKE ((ASGNSW,2)P)FALSE IF FILE IS RESET, IT STILL EXISTS SM1B0756
02151 0020 00 0 00727 TRA SM1RET .. SM1B0757
SM1B0758
02152 GERR.2 MAKE ((LCOUNT,2)A)FALSE NEW FILE, CLEAR COUNTERS SM1B0759
02154 IPLACE (NORECS,2)D .. SM1B0760
02155 0020 00 0 01514 TRA SERR CLEAN UP SWITCHES SM1B0761
SM1B0762
02156 GERR.1 ERROR 2 FATAL ERROR FROM GETTRK SM1B0763
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 48
SET UP NEXT TASK
02162 0020 00 0 01514 TRA FATER1 FLAG BAD RETURN FROM TRACK MGT. SM1B0764
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 49
UTILITY ROUTINES --- USED BY CLOSEF (DISABLED), SM1TRP
02163 CURINC XTRACT (CURREC,2)A INCREMENT CURREC SM1B0766
02165 0400 00 0 02526 ADD =1 .. SM1B0767
02166 PLACE (CURREC,2)A UPDATE SM1B0768
02167 0020 00 4 00001 TRA 1,4 NEW VALUE IN AC SM1B0769
SM1B0770
02170 -0500 00 0 02255 DELINC CAL DELNXT GET CURRENT POSITION SM1B0771
02171 0361 00 0 02252 ACL DELSIZ ADD LENGTH OF ENTRY SM1B0772
02172 -0340 00 0 02251 LAS DELEND CHECK END OF BUFFER SM1B0773
02173 0774 00 0 00000 AXT 0,0 .. SM1B0774
02174 -0500 00 0 02250 CAL DELPNT ANSWER THE PHONE SM1B0775
02175 0602 00 0 02255 SLW DELNXT .. SM1B0776
02176 0020 00 4 00001 TRA 1,4 SM1B0777
SM1B0778
02177 -0520 00 0 02367 BCDTRK NZT DIFFSW UNPACK TRACKS ONLY WHEN DIFF. FILES SM1B0779
02200 0020 00 4 00002 TRA 2,4 SAME FILE, TRACK IN AC SM1B0780
02201 SAVE4 BTRX4 .. SM1B0781
02202 XTRACT (1,4,II HARD WAY TO GET AN INDIRECT WORD)LH SM1B0782
DI 02202 -0500 60 4 00001 CAL 1,4,II HARD WAY TO GET AN INDIRECT WORD SM1B0782.001
02204 UNPACK .. SM1B0783
02212 BTRX4 RETUR4 .. SM1B0784
02213 0020 00 4 00002 TRA 2,4 .. SM1B0785
SM1B0786
02214 QSCRAP SAVE4 QSCXIT CALLED FROM 'QSCRAP' MACRO SM1B0787
02215 0074 00 4 00012 TSX QSCRP,4 CALL WRITE-AROUND SM1B0788
02216 0761 00 1 00000 EFA 0,1 IOBASE SM1B0789
02217 0761 00 2 00000 EFA 0,2 AFENTRY SM1B0790
02220 3 00000 0 02241 PAR QUEUEC .. SM1B0791
02221 QSCXIT RETUR4 .. SM1B0792
02222 0020 00 4 00001 TRA 1,4 .. SM1B0793
SM1B0794
02223 0737 00 6 00000 SWCLR PAC ,6 CLEAR SWITCHES OF BUFFER SPECIFIED IN AC SM1B0795
02224 0600 00 6 02265 STZ FILLED,6 CLEAR FILLED SWITCH SM1B0796
02225 0600 00 6 02351 STZ DELSW,6 CLEAR DELETE SWITCH SM1B0797
02226 0600 00 6 02353 STZ RWT1SW,6 .. SM1B0798
02227 0600 00 6 02357 STZ BRKSW,6 .. SM1B0799
02230 0600 00 6 02361 STZ SCRPSW,6 .. SM1B0800
02231 0600 00 6 02363 STZ LCTSW,6 .. SM1B0801
02232 0600 00 6 02365 STZ QUEGO,6 .. SM1B0802
02233 0020 00 4 00001 TRA 1,4 ALL EXCEPT FILLED, NOFILL SM1B0803
DDST0057
INSERT SM1V.F VARIABLE STORAGE FOR STRATEGY MODULE DDST0058
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 50
CONSTANTS USED BY STRATEGY MODULE
FOLLOWING VARIABLES USED TO QUEUE I/O REQUESTS SM1V0002
SM1V0003
02234 0 00001 0 00000 BEGINC PZE ,,BEGINF CONSTANTS FOR QUEUEING CALLS SM1V0004
02235 0 00002 0 00000 ENDC PZE ,,ENDF .. SM1V0005
02236 0 00003 0 00000 SRCFWC PZE ,,SRCFWD .. SM1V0006
02237 0 00004 0 00000 SRCBKC PZE ,,SRCBKW .. SM1V0007
SM1V0008
02240 0 00000 0 00660 RECWRD PZE NWDSPR .. SM1V0009
SM1V0010
02241 0 00000 0 00016 QUEUEC PZE QUEUE1 OFFSET TO LOCATE USER'S QUEUES SM1V0011
02242 0 00000 0 00003 QLISTC PZE QLIST OFFSET TO LOCATE I/O LIST SM1V0012
SM1V0013
SM1V0014
VARIABLES HOLDING POINTERS TO LOCATIONS W/IN STRAT. MOD. SM1V0015
SM1V0016
02243 0 00000 0 02267 IOLSTA PZE LIST1 POINTER TO I/O LIST 1 SM1V0017
02244 0 00000 0 02277 PZE LIST2 POINTER TO I/O LIST 2 SM1V0018
SM1V0019
02245 0 00000 0 02273 IOCOM PZE IOC1 POINTER TO START OF IO COMMANDS SM1V0020
02246 0 00000 0 02303 PZE IOC2 .. SM1V0021
SM1V0022
SM1V0023
I/O TRANSMISSION COMMANDS USED DURING I/O SETUP SM1V0024
SM1V0025
02247 0 00000 0 00000 IODCON IOD IO DISCONNECT COMMAND SM1V0026
SM1V0027
SM1V0028
POINTERS USED IN INCREMENTING RING BUFFER FOR DELETES SM1V0029
SM1V0030
02250 0 00000 0 02427 DELPNT PZE DELRNG POINTER TO TOP OF DELETE RING SM1V0031
02251 0 00000 0 02523 DELEND PZE DELRNG+DELLNG POINTER TO END OF RING (+1) SM1V0032
02252 0 00000 0 00003 DELSIZ PZE DELNUM DELETE RING INCREMENT SM1V0033
SM1V0034
02253 0761 00 2 00005 DELEFA EFA FPROBN,2 START OF 4-WORD NAME OF FILE SM1V0035
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 51
VARIABLE STORAGE --- NOT CLEARED BY 'SINIT1'
POINTERS INDICATING STATUS OF (ASYNCHRONOUS) DELETE RING SM1V0037
SM1V0038
02254 0 00000 0 02427 DELTOP PZE DELRNG POINTER TO NEXT AVAILABLE ENTRY SM1V0039
02255 0 00000 0 02427 DELNXT PZE DELRNG POINTER TO ACTIVE DELETE REQUEST SM1V0040
SM1V0041
02256 0 00000 0 00000 D.CALL PZE NUMBER OF DELETE-QUEING CALLS SM1V0042
02257 0 00000 0 00000 D.FULL PZE .. DELETE RING WAS FULL SM1V0043
SM1V0044
02260 0 00000 0 00000 DWATSW PZE NON-ZERO IF CALL SIDE WAITING FOR DELETE SM1V0045
SM1V0046
SM1V0047
LOCATION OF SYSTEM'S COMMON ENABLE WORD SM1V0048
SM1V0049
02261 0 00000 0 02525 ENABLE PZE =0 ** POINTER TO ENABLE WORD SM1V0050
02262 0 00000 0 00001 SSCODE PZE 1 SUPERVISOR INTERRUPT CODE, S.M. 1 SM1V0051
SM1V0052
SM1V0053
02263 SM1VAR SYN * START OF VARIABLE SECTION (FOR DEBUGGING) SM1V0054
SM1V0055
SM1V0056
VARIABLES INDICATING WHICH BUFFERS ACTIVE AT WHICH TIME SM1V0057
SM1V0058
02263 0 00000 0 00000 BUFTRP PZE 0 INDEX OF BUFFER IN I/O OR TRAP SM1V0059
02264 0 00000 0 00001 BUFWAT PZE 1 INDEX OF BUFFER WAITING OR BEING SET UP SM1V0060
SM1V0061
02265 +000000000000 FILLED OCT 0,0 NON-ZERO WHEN BUFFER IS ACTIVE (2 LOCS) SM1V0062
SM1V0063
SM1V0064
LISTS USED IN CALLS TO I/O ADAPTERS SM1V0065
SM1V0066
02267 121212121212 LIST1 VFD O36/121212121212 SAMPLE TRACK ADDRESS SM1V0067
02270 2 00001 1 02333 IOP BACKP,IOSMEM-1,1 INPUT/OUTPUT OF BACKWARD POINTER SM1V0068
02271 2 00001 1 02335 IOP FOREP,IOSMEM-1,1 INPUT/OUTPUT OF FORWARD POINTER SM1V0069
02272 2 00001 1 02337 IOP RECID,IOSMEM-1,1 INPUT/OUTPUT OF RECORD ID. SM1V0070
02273 IOC1 BSS MAXLST MAXIMUM LENGTH OF IO LIST SM1V0071
SM1V0072
02277 121212121212 LIST2 VFD O36/121212121212 .. SM1V0073
02300 2 00001 1 02334 IOP BACKP+1,IOSMEM-1,1 .. SM1V0074
02301 2 00001 1 02336 IOP FOREP+1,IOSMEM-1,1 .. SM1V0075
02302 2 00001 1 02340 IOP RECID+1,IOSMEM-1,1 .. SM1V0076
02303 IOC2 BSS MAXLST .. SM1V0077
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 52
VARIABLE STORAGE --- CLEARED BY 'SINIT1'
02307 ZERST SYN * START OF ZERO BUFFER SM1V0079
SM1V0080
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1V0081
SM1V0082
VARIABLES SET BY CALLS FROM BUFFER CONTROL MODULE SM1V0083
SM1V0084
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1V0085
SM1V0086
PARAMETERS INVOLVED IN CALLS BY BUFFER CONTROL MODULE SM1V0087
SM1V0088
02307 LABEL BSS 1 RECORD IDENTIFICATION IN I/O REQUEST SM1V0089
02310 IOLIST BSS 1 ADDRESS OF I/O COMMANDS TO BE TRANSMITTED SM1V0090
02311 QWAIT BSS 1 ADDRESS FOR RETURN WHEN QUEUES FILLED SM1V0091
SM1V0092
02312 QFULL BSS 1 SWITCH LEFT NON-ZERO WHEN QUEUES FILLED SM1V0093
SM1V0094
02313 SETTMP BSS 1 COPY OF (1,4) FOR CALL TO 'SSETUP' SM1V0095
SM1V0096
SM1V0097
VARIABLES DETERMINING PATH DURING QUEUEING OF I/O SM1V0098
SM1V0099
02314 FUNCTN BSS 1 FUNCTION CODE OF SUBR. ENTERED SM1V0100
02315 POSNSW BSS 1 SWITCH FOR NECESSITY OF POSITIONING SM1V0101
SM1V0102
02316 POSLBL BSS 1 MASKED VERSION OF LABEL SM1V0103
02317 POSREC BSS 1 COPY OF 'NORECS' SM1V0104
02320 POSTMP BSS 3 TEMPORARIES FOR POSITIONING SM1V0105
SM1V0106
SM1V0107
VARIABLES USED DURING QUEUEING SM1V0108
SM1V0109
02323 NEEDQL BSS 1 NUMBER OF WORDS (ENTRIES) NEEDED IN QUEUES SM1V0110
02324 QNUM BSS 1 QUEUE NUMBER (=ENTRY PRIORITY) SM1V0111
SM1V0112
02325 FNO BSS 1 FUNCTION NUMBER SM1V0113
SM1V0114
02326 QLBL BSS 1 TEMPORARY FOR QEND, QSEARCH SM1V0115
SM1V0116
02327 IOCNT BSS 1 COUNT OF WORDS IN I/O LIST SM1V0117
02330 RECCNT BSS 1 COUNT OF NO. OF RECORDS TO BE PROCESSED SM1V0118
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 53
VARIABLE STORAGE --- CLEARED BY 'SINIT1'
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1V0120
SM1V0121
VARIABLES MODIFIED ONLY BY TRAP-PROCESSOR SM1V0122
SM1V0123
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* SM1V0124
SM1V0125
ADAPTER, PREFIX READ-IN/OUT FOR I/O OPERATIONS SM1V0126
SM1V0127
02331 IOADPT BSS 2 ADDRESS OF PROPER I/O ADAPTER FOR BUFFER SM1V0128
02333 BACKP BSS 2 BACKWARD FILE POINTERS (PREFIX) SM1V0129
02335 FOREP BSS 2 FORWARD FILE POINTERS (PREFIX) SM1V0130
02337 RECID BSS 2 RECORD IDENTIFICATION NUMBERS (PREFIX) SM1V0131
SM1V0132
SM1V0133
POINTERS PERTAINING TO TABLES FOR I/O OPERATIONS SM1V0134
SM1V0135
02341 STATBL BSS 2 POINTER TO USER'S I/O STATUS TABLE SM1V0136
02343 AFSTBL BSS 2 POINTER TO USER'S ACTIVE FILE STATUS TABLE SM1V0137
02345 QUEUEP BSS 2 POINTER TO QUEUE ELEMENT SM1V0138
SM1V0139
SM1V0140
OPERATION INVOLVED IN I/O (EXCEPT DELETE) SM1V0141
SM1V0142
02347 FUNCNO BSS 2 FUNCTION NUMBER OF EACH BUFFER SM1V0143
SM1V0144
SM1V0145
SWITCHES DEFINING STATUS OF ACTIVE BUFFERS SM1V0146
SM1V0147
02351 DELSW BSS 2 NON-ZERO WHEN BUFFER HOLDS DELETE REQUEST SM1V0148
02353 RWT1SW BSS 2 NON-ZERO TO INDICATE RE-WRITE IN PROGRESS SM1V0149
02355 NOFILL BSS 2 NON-ZERO TO INHIBIT UPDATE OF ACT FILE TEMPSM1V0150
02357 BRKSW BSS 2 NON-ZERO WHEN BREAK IN SEQUENCE FOLLOWS SM1V0151
02361 SCRPSW BSS 2 NON-ZERO TO SCRAP QUEUES WHEN BUFFER TRAPS SM1V0152
02363 LCTSW BSS 2 NON-ZERO IF BUF. HOLDS LAST TRK OF RE-WRITESM1V0153
02365 QUEGO BSS 2 NON-ZERO WHEN QUEUE IS TO BE DELETED SM1V0154
SM1V0155
SM1V0156
SINGLE LEVEL SWITCHES AND VARIABLES USED DURING TRAP-TIMESM1V0157
SM1V0158
02367 DIFFSW BSS 1 NON-ZERO WHEN BUFFERS ON DIFF. FILES SM1V0159
02370 NULLIO BSS 1 SET WHEN .DNULL CALLED SM1V0160
02371 LSTCNT BSS 1 COUNT OF WORDS IN LAST TRACK (D) SM1V0161
02372 SEQTMP BSS 1 NON-ZERO TO INHIBIT POINTER CHECKING SM1V0162
02373 IOBASE BSS 1 BASE OF CURRENT I/O STATUS TABLE SM1V0163
02374 QBASE BSS 1 CURRENT QUEUE ENTRY,,AF ENTRY SM1V0164
SM1V0165
SM1V0166
VARIABLES HOLDING UNPACKED TRACK ADDRESSES SM1V0167
SM1V0168
02375 PCKTRK BSS 1 TRACK ADDRESS TO BE PACKED AFTER LATENCY SM1V0169
02376 TMPTRK BSS 1 TRACK CURRENTLY IN I/O SM1V0170
02377 EXPTRK BSS 1 TRACK EXPECTED IN POINTER SM1V0171
SM1V0172
SM1V0173
TEMPORARIES USED VARIOUSLY DURING TRAP-TIME SM1V0174
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 54
VARIABLE STORAGE --- CLEARED BY 'SINIT1'
SM1V0175
02400 TMPIR2 BSS 1 TEMP FOR X2 WHILE CALLING IOADPT SM1V0176
02401 TMPIR5 BSS 1 TEMP. FOR XR-5 SM1V0177
02402 STEMP BSS 2 GENERAL USE TEMPORARIES (TRAP TIME ONLY) SM1V0178
SM1V0179
SM1V0180
USED FOR CHECKING QWAIT RETURNS ON DELETE CALLS SM1V0181
SM1V0182
02404 QCOUNT BSS REWRTF+1 COUNT ENTRIES TO QUEUING ROUTINES SM1V0183
02414 SCOUNT BSS SRCBK.+1 COUNT RECORDS IN QUEUING POSIT. OPERS. SM1V0184
02426 S.DCNT BSS 1 NUMBER OF RECORDS DELETED SM1V0185
SM1V0186
RING BUFFER HOLDING ASYNCHRONOUS DELETE REQUESTS SM1V0187
SM1V0188
02427 DELRNG BSS DELLNG RING BUFFER FOR DELETE QUEUE SM1V0189
SM1V0190
00214 ZEROL SYN *-ZERST COUNT OF ZEROED WORDS SM1V0191
SM1V0192
SM1V0193
DEBUGGING VARIABLES (AC, ILC) FOR ERRORS SM1V0194
SM1V0195
02523 0 00000 0 00000 ERR.AC PZE CONTENTS OF AC ON ERROR SM1V0196
02524 0 00000 0 00000 ILCERR PZE .REFER (/R/0) LOC. OF ERROR MACRO IN SM1TRP SM1V0197
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 55
LITERALS AND CROSS-REFERENCE LISTING
END DDST0061
LITERALS
02525 000000000000
02526 000000000001
02527 000000000002
02530 000000000007
02531 000000077777
02532 000000100000
02533 000000200000
02534 000000300000
02535 000000700000
02536 000000777777
02537 077777000000
02540 300000000000
02541 700000000000
02542 777777777777
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 1
POST PROCESSOR ASSEMBLY DATA
2543 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
13 F 27, 1671
14 P 27
14 R 27
14 S 27
14 W 27
22 DR 27
22 DW 27
60 II 27, 2202
2325 FNO 405, 504
0 TMP 27
53 AFST 27
20 CHNG 27
2235 ENDC 250, 260
2 ENDF 27, 2235
162 ENT1 302
163 ENT2 277
35 EXIT 27, 30, 31, 32, 33, 42, 131, 166, 305, 350
3 FMAX 27
473 GETQ 425, 436, 450
2273 IOC1 2245
2303 IOC2 2246
13 MODE 27
1525 NXBD 1462, 1544
11 QDEL 1376
431 QEND 414
1 QEOF 27, 460, 2037
10 QGET 475
2326 QLBL 434, 437
0 QLNG 27
2324 QNUM 201, 500
422 QRET 422, 430, 442, 472
465 QR.1 471
7 QTST 143
27 SAVE 60, 120, 127, 164, 303, 346
1563 SEND 1476
1514 SERR 2120, 2155
1001 WEND 717
100000 A.BIT 27
2333 BACKP 1076, 1077, 1136, 1201, 1202, 1216, 1237, 1667, 1723, 2270, 2300
200000 B.BIT 27
2357 BRKSW 763, 1063, 1553, 2227
2212 BTRX4 2201
17 CNTIO 443
1154 DELDL 1152
2351 DELSW 667, 1162, 1245, 1321, 1323, 1332, 1334, 1405, 2063, 2225
546 DLS.1 530
544 DLS.4
566 DLS.5 557
23 EFLAG 27, 700, 705, 1244, 1356, 1513, 2117, 2126, 2161
24 EOFSW 27, 1050, 1557, 1567, 1610, 1631, 1644, 1746, 1772, 2146
1444 FND.2 1527
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 2
POST PROCESSOR ASSEMBLY DATA
1463 FND.3 1437, 1454, 1460
1440 FND.4 1341, 1343, 1360, 1427, 1506, 1524, 1531
2335 FOREP 1005, 1020, 1100, 1102, 1103, 1125, 1207, 1233, 1234, 1730, 1744, 1757, 2143, 2271, 2301
1205 FOR.1 1177
1 FUNCT 27, 505, 1463, 1615, 2002, 2016
506 GQXIT 473
616 HLT.2 622, 624
13 ILOCK 27
2327 IOCNT 445, 461
2245 IOCOM 1604, 2007, 2060, 2100
15 .PACK 1033, 1365, 1702, 1762
27 .REL. 27
2307 LABEL 176, 205, 313, 325, 364, 462, 570
2363 LCTSW 1101, 2030, 2042, 2133, 2231
2267 LIST1 2243
2277 LIST2 2244
0 NEXTQ 27
1532 NOUSR 1441
1506 NXUSR 1526
60 OPEN1 0, 636
60 OPEN2 0, 636
1 PAFST 27
20 PRIME 27
23 PRIOR 27, 177
2374 QBASE 1444, 2104, 2107
2312 QFULL 141, 146, 151, 156, 171, 265, 271, 311, 341, 343, 353, 375, 377
3 QLIST 27, 466, 2242
1 QPRF1 27
443 QREAD 417, 473
422 QRET1 422, 424
12 QSCRP 2215
433 QSRCB 416, 443
433 QSRCF 415, 443
1 QTAG1 27
154 QTS.2 136
2365 QUEGO 730, 1012, 1046, 1056, 1123, 1142, 1155, 1163, 1373, 1375, 2232
0 QUENO 27
402 QUEUE 237, 241, 244, 247, 257, 261, 263
6 QUINT 73
2311 QWAIT 134, 153, 170, 272, 310, 344, 352, 400
160 READ1 0, 636
160 READ2 0, 636
5 READF 27, 160
2337 RECID 652, 655, 1040, 1066, 1113, 1120, 1131, 1172, 1174, 1223, 1225, 1650, 1653, 1655, 1664, 1670, 1714
1743, 2022, 2130, 2137, 2140, 2272, 2302
5 RELOC 27
4 RMODE 27
10 RWRT1 27, 2000
372 SCR.1 357
367 SCR.2 355
1210 SEQ.1 1240
25 SEQSW 27, 710, 713, 777, 1015, 1412
1631 SREAD 1501
2012 SRWT1 1504
1610 SSRCB 1500
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 3
POST PROCESSOR ASSEMBLY DATA
1567 SSRCF 1477
2402 STEMP 1032, 1034, 1364, 1366, 1421, 1423, 1620, 1625, 1674, 1676, 1701, 1703, 1716, 1733, 1754, 1761, 1763
2026, 2067, 2072, 2206, 2210
517 STXIT 510
2223 SWCLR 1251, 1255, 1345, 1515
1753 SWR.1 1737, 1742, 2045
1770 SWR.2 1752
1720 SWR.3 1666
1734 SWR.5 1717
1743 SWR.7 2047
2 TRQST 27, 1574, 1621
1510 USERR 1571, 1612, 1633, 1646, 1654, 1774
1052 WRD.1 1024
1047 WRD.2 1062
1017 WREAD 722
1066 WRWT1 725, 1106
1010 WSRCB 721
1004 WSRCF 720
214 ZEROL 53, 54, 2523
2307 ZERST 54, 2307, 2523
26 ACTLNG 27
25 AFENTY 27
2343 AFSTBL 646, 661, 662, 734, 1150, 1335, 1351, 1410, 1432, 1456
16 ASGNSW 27, 66, 115, 340, 354, 371, 555, 1715, 1750, 1767, 2150
2 AUTHNO 27
12 AUTHOR 27
1237 BACK.1 1231
2177 BCDTRK 1600, 1637, 1721, 1731, 2003
1215 BCKCHK 1011
2234 BEGINC 240, 245
1 BEGINF 27, 2234
20 BUFADR 27
20 BUFREC 27
2263 BUFTRP 637, 740, 1250, 1270, 1273, 1330, 1344, 1402, 1451, 1521, 1727
2264 BUFWAT 656, 766, 1043, 1060, 1075, 1160, 1254, 1264, 1271, 1313, 1465, 1514, 1532, 1712, 1756, 2110, 2113
2127
125 CL1XIT
120 CLOSE1 0, 636
120 CLOSE2 0, 636
0 CRANKP 27
2163 CURINC 1572, 1634, 1647, 1775
23 CURREC 27, 65, 335, 360, 1550, 1616, 1627, 2163, 2166
22 DADDRS 27
1344 DAPER1 1333, 1344
1330 DAPERR 1311
12 DATELU 27
11 DAYTIM 27
22 DCOUNT 27
24 DELACT 27
2253 DELEFA
2251 DELEND 551, 2172
1402 DELER1 1326, 1426
1145 DELERR 1110, 1114, 1122, 1126, 1130, 1145
2 DELFIN 27, 1115, 2064
1 DELFRP 27, 566, 1124, 1135, 1325
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 4
POST PROCESSOR ASSEMBLY DATA
2170 DELINC 1153, 1342, 1541
74 DELLNG 27, 2251, 2427
3 DELNUM 27, 2252
2255 DELNXT 744, 1151, 1340, 1533, 2061, 2062, 2170, 2175
2250 DELPNT 553, 2174
2 DELREC 27, 572, 1111, 1133, 2070
2427 DELRNG 2250, 2251, 2254, 2255
2252 DELSIZ 550, 2171
521 DELSUB 321, 365
2254 DELTOP 154, 525, 547, 554
25 DELTRK 605, 1324
0 DELTRQ 27, 155, 527, 600, 746, 1140, 1154, 1337, 1534, 2055
342 DF1XIT 320, 322
303 DFILE1 0, 636
303 DFILE2 0, 636
333 DFIL.1 315, 330
340 DFIL.2 332
2367 DIFFSW 640, 663, 764, 775, 1044, 1061, 1073, 1156, 1164, 1252, 1262, 1403, 1436, 1450, 1457, 1517, 2177
21 DINDEX 27
2256 D.CALL 522, 524
2257 D.FULL 531, 533
1150 DLDLET 1141, 1143
2 DLFNSW 27, 1536, 2075
611 DLSXIT 521, 544, 603
626 DRAIN1 0, 627, 631, 636
626 DRAIN2 0, 636
2 DUSERS 27
2260 DWATSW 534, 745, 756
2261 ENABLE 46, 52, 75, 124, 147, 266, 374, 543, 546, 610
13 ENAME1 27
14 ENAME2 27
15 ERCALL 27
11 ERCODE 27
10 ERNAME 27
7 ERRILC 27
2523 ERR.AC 675, 702, 1145, 1241, 1353, 1510, 2114, 2123, 2156
2377 EXPTRK 1200, 1232, 1303, 1425
1514 FATER1 1514, 2162
1245 FATERR 701, 1245
2265 FILLED 621, 626, 630, 641, 657, 737, 741, 767, 774, 1045, 1161, 1275, 1314, 1316, 1331, 1453, 2224
0 FINISW 27, 727, 1555, 1577, 1624, 1735, 2034, 2145
7 FNAME1 27
10 FNAME2 27
1426 FNDUS. 1404, 1407, 1414
21 FNDUSR 1440
1166 FORCHK 1004, 1017, 1071
6 FPRIOR 27
5 FPROBN 27, 2253
6 FPROGN 27
1250 FTSCR1 1246
1245 FTSCRP 1261
2347 FUNCNO 706, 1466
2314 FUNCTN 163, 264
2156 GERR.1 2122
2152 GERR.2 2131
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 5
POST PROCESSOR ASSEMBLY DATA
14 GETEFA
2121 GETERR 1677, 1755
24 GETTRK 1675, 1753
266 GTQERR 501, 510
2524 ILCERR 676, 703, 1146, 1242, 1354, 1511, 2115, 2124, 2157
2331 IOADPT 1307, 1561, 1606, 1636, 1662, 1777, 2013, 2051
2373 IOBASE 1443, 1447, 2104
633 IOBGN1 0, 636
633 IOBGN2 0, 636
12 IOCODE 27
700000 IODBIT 27
2247 IODCON 1603, 2006, 2057
613 IOHLT1 0, 636
613 IOHLT2 0, 636
2310 IOLIST 174, 444, 464
2243 IOLSTA 1267, 1277, 1602, 1641, 1734, 2005, 2027, 2056
100000 IONBIT 27
200000 IOPBIT 27
1260 IOPREP 642, 1000, 1007, 1013, 1016, 1021, 1051, 1065, 1070, 1074, 1105, 1144, 1157, 1165
1270 IOPR.1 1253, 1257, 1263
1402 IOPR.2 1327, 1374, 1426
1361 IOPR.3 1322
1370 IOPR.4 1362
1372 IOPR.5 1315, 1320
1313 IOPR.6 1276
634 IORST1 0
635 IORST2 0
2 IOSMEM 27, 2270, 2271, 2272, 2300, 2301, 2302
23 IOTASK 27, 77, 316
1 .DINIT 51
761 .DNULL 1560
4 .DREAD 1605, 1635, 1776, 2050
3 .DRSET 634
5 .DWRIT 1661, 2012
2 .FORCE 267, 601, 633
0 .REFER 47, 2524
16 .UNPAK 563, 576, 1422, 2207
14 LCOUNT 27, 1027, 2135, 2153
4 LIMITS 27
14 LNAME1 27
15 LNAME2 27
11 LPROBN 27
12 LPROGN 27
2371 LSTCNT 653, 1025, 1054
25 LSTREC 27, 63, 220, 427, 441, 451, 454
25 LSTTRK 27, 323, 337, 1212, 1415, 1552, 1711, 1722, 1725, 2033
4 MAXLST 27, 2273, 2303
2323 NEEDQL 140, 145, 474, 501
2355 NOFILL 1256, 1266, 1317, 1346, 1372, 1406, 1516, 1660, 2031
14 NORECS 27, 100, 212, 1022, 1042, 2142, 2154
1534 NOUSR1 1543
2370 NULLIO 664, 742, 762, 773, 1452
660 NWDSPR 27, 2240
22 NXBEAD 1525
24 NXTREC 27, 772, 1067, 1167, 1175, 1220, 1227
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 6
POST PROCESSOR ASSEMBLY DATA
23 NXTUSR 1507
116 OP1XIT 105
106 OPEN.1 102
2375 PCKTRK 1104, 1137, 1210, 1265, 1361
15 POINTR 27, 67, 110, 324, 333, 573, 1037, 1544, 1563, 1705, 1707, 1726, 2046
244 POS.B1 231
261 POS.B2 222
257 POS.B3 224
252 POS.F1 234
241 POS.F2 256
247 POS.F3 233
2316 POSLBL 207, 216, 226, 235, 254, 433
2315 POSNSW 162, 203, 211, 230, 276
2317 POSREC 215, 223, 253, 431, 455
2320 POSTMP 217, 232, 252, 255, 562, 564, 565, 567, 575, 577, 602, 606
2077 PRLST. 1642, 1663, 2017
2111 PRLXIT 2077
400000 PROBIT 27
0 PROBNO 27
2113 PROERR 2106
1 PROGNO 27
20 PROLST 2102
424 QBEGIN 413
2404 QCOUNT 406, 410
422 QCRANK 412, 424
2 QLABEL 27, 440, 463, 1001, 1651, 1657, 2020, 2024
2242 QLISTC 2105
443 QREWRT 421, 473
2214 QSCRAP 123, 373, 1247, 1357, 1530
2221 QSCXIT 2214
434 QSRCF1 432
127 QTEST1 0, 636
127 QTEST2 0, 636
150 QTSXIT 157
266 QUE.FL 510
16 QUEUE1 27, 74, 144, 1377, 2241
17 QUEUE2 27
20 QUEUE3 27
21 QUEUE4 27
22 QUEUE5 27
23 QUEUE6 27
24 QUEUE7 27
2241 QUEUEC 500, 1442, 2220
2345 QUEUEP 650, 736, 1434
422 QUEXIT 402
2 QWORDS 27, 1052, 1564, 1740, 2043
443 QWRITE 420, 473
13 RCOUNT 27, 103, 107, 370
270 RD1XIT
263 READ.1 204, 227, 243, 246, 251
2330 RECCNT 446, 453
2240 RECWRD 106, 444, 2106, 2134
16 REDREC 27
16 REDWRD 27
36 RETURN 116, 125, 150, 270, 342, 376
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 7
POST PROCESSOR ASSEMBLY DATA
300 REWRT1 0, 636
300 REWRT2 0, 636
7 REWRTF 27, 300, 2014, 2404
100000 R.STAT 27
2 RNAME1 27
3 RNAME2 27
0 RPROBN 27
1 RPROGN 27
14 RWSTAT 27, 111
2353 RWT1SW 1072, 1205, 1426, 1523, 2010, 2226
1544 SBEGIN 1475
1547 SBGN.1 1566
2414 SCOUNT 1470, 1472
1525 SCRANK 1474, 1544
346 SCRAP1 0, 636
346 SCRAP2 0, 636
2361 SCRPSW 1147, 1260, 1461, 1522, 2132, 2230
376 SCRXIT 366
2050 SDELET 1540
1241 SEQERR 1006, 1055, 1057, 1064, 1173, 1204, 1217, 1224, 1236
2372 SEQTMP 643, 711, 1010, 1176, 1230
1213 SEQXIT 1166, 1206, 1215
1530 SERR.1 1520
2313 SETTMP 512, 514
510 SETUP. 61, 121, 130, 165, 304, 347
44 SINIT1 0
57 SINIT2 0
2426 S.DCNT 2052, 2054
727 SM1RET 1562, 1607, 1643, 1771, 2011, 2036, 2041, 2151
731 SM1RT1 2073
730 SM1RT2 2076
742 SM1RT3 1441, 1535
637 SM1T.1 743
706 SM1T.2 665, 671
702 SM1T.4 674
636 SM1TRP 0, 50
2263 SM1VAR 0, 2263
757 SM1XIT 636, 747
24 SMTMP1 27
25 SMTMP2 27
56 SN1XIT 44
2237 SRCBKC 262
11 SRCBK. 27, 1613, 2414
4 SRCBKW 27, 2237
2236 SRCFWC 242
3 SRCFWD 27, 2236
1772 SREWRT 1503
2262 SSCODE 542, 755
13 SSETUP 513
1625 SSRCB1 1622
1616 SSRCB. 1505
1600 SSRCF1 1575, 1630
26 SSTRAP 535, 750
2341 STATBL 617, 644, 732, 1347, 1430
1644 SWRITE 1502
1 DISK-DRUM STRATEGY MODULE (R. BAYLES, C. GARMAN - 12/28/64) 02/22/71 1706.0 PAGE 8
POST PROCESSOR ASSEMBLY DATA
53 TBLMIN 27
24 THSTRK 27, 71, 334, 560, 1211, 1371, 1547, 1601, 1640, 1710, 1724, 1732, 1770, 2004, 2032
2400 TMPIR2 1300, 1312
2401 TMPIR5 1031, 1035, 1363, 1367, 1417, 1424, 1700, 1704, 1760, 1764, 2204, 2211
2376 TMPTRK 1030, 1134, 1302, 1305, 1720, 2025
3 URCODE 27
771 WBEGIN 716
772 WBGN.1 1003
1000 WCRANK 715
1106 WDELET 670
1111 WDEL.1 1106
21 WINDEX 27
200000 W.STAT 27, 113
1071 WREWRT 724
274 WRITE1 0, 636
274 WRITE2 0, 636
6 WRITEF 27, 274
17 WRTREC 27
17 WRTWRD 27
1011 WSRCB. 726
1007 WSRCF1
1066 WWRITE 723, 1106
0 NO ERROR IN ABOVE ASSEMBLY.
TMANB BCD 02/22/71 1720.2 17998 00000
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 1
* MODIFIED FOR NEW TABLE FORMAT BY D.H. JOHNSON ON 30 JULY 1965 TMAN0003
* TMAN0005
* THIS PACKAGE IS THE TMAN0006
* 1302/7620 DISK DRUM TRACK USAGE TABLE KEEPER TMAN0007
* TMAN0008
00131 ENTRY GETTRK TMAN0009
00444 ENTRY DELTRK TMAN0010
00633 ENTRY IDRUMS TMAN0011
00635 ENTRY IDISKS TMAN0012
00714 ENTRY UPDRUM TMAN0013
00716 ENTRY UPDISK TMAN0014
* TMAN0016
* TMAN0017
* ASSEMBLY PARAMETERS FOR NUMBER OF MODULES TMAN0018
* ASSUMES DISK MODULE NUMBERS BELOW DRUM MODULE NUMBERS TMAN0019
* TMAN0020
00000 622521512330 SEARCH
00001 626321263143 STAFIL
00002 276321263143 GTAFIL
00003 224647254560 BOPEN
00004 225125212460 BREAD
00005 222343466225 BCLOSE
00006 226651316325 BWRITE
00007 276324706344 GTDYTM
00010 644724263143 UPDFIL
00011 0774 00 0 00000 *EVEN*
00000 BDISKM EQU 0 BOTTOM DISK MODULE TMAN0021
00007 TDISKM EQU 7 TOP DISK MODULE TMAN0022
00010 BDRUMM EQU 8 BOTTOM DRUM MODULE TMAN0023
00010 TDRUMM EQU 8 TOP DRUM MODULE TMAN0024
00010 NDISKM EQU TDISKM-BDISKM+1 TMAN0025
00001 NDRUMM EQU TDRUMM-BDRUMM+1 TMAN0026
00014 DRMTSZ EQU 400*NDRUMM/36+1 TMAN0027
04257 DSKTSZ EQU 10000*NDISKM/36+1 TMAN0028
00070 DCYTSZ EQU 250*NDISKM/36+1 TMAN0029
* TMAN0030
* TMAN0031
* TMAN0032
BDISKQ MACRO ASSEMBLE PROPER INSTRUCTION FOR TMAN0033
IFF BDISKM,A,A TMAN0034
TXH *+2,4,BDISKM-1 TMAN0035
IFF BDISKM,A,A TMAN0036
TSX DSERR,4 TMAN0037
BDISKQ END TMAN0038
* TMAN0039
MDRUM MACRO MAGIC CODE APPERAS IF NDRUMM .G. 1 TMAN0040
STZ DSDRM TMAN0041
PXD 0,0 TMAN0042
TSX GBA,4 TMAN0043
PAR DSDRUT TMAN0044
AXT 400*NDRUMM,3 TMAN0045
TSX SBIT,4 TMAN0046
TRA GDLZ TMAN0047
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 2
TRA GDRFT TMAN0048
MDRUM END TMAN0049
* TMAN0050
DRUMSQ MACRO CONTROLS APPERANCE OF ABOVE CODE TMAN0051
IFF NDRUMM-1,A,A TMAN0052
MDRUM TMAN0053
DRUMSQ END TMAN0054
* TMAN0055
INSERT IOEQU INSERT IOEQU PACKAGE HERE TMAN0056
IOEQ0001
..... FILE INPUT/OUTPUT SYSTEM EQUIVALENCE PACKAGE ..... IOEQ0002
IOEQ0003
00002 DUSERS EQU 2 MAX. NO. OF USERS OF I/O SYSTEM IOEQ0004
00003 FMAX EQU 3 MAX. NO. OF DEVICES AVAILABLE IN I/O SYSTEMIOEQ0005
00002 IOSMEM EQU 2 MEMORY WHERE I/O SYSTEM RESIDES (1=A, 2=B) IOEQ0006
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 3
00000 .REL. SET 0 INITIALIZE RELATIVE A.F.S.T. ADDRESS IOEQ0008
IOEQ0009
SETWRD MACRO SYMBOL TO SET UP ACTIVE FILE ENTRIES IOEQ0010
IRP SYMBOL .. IOEQ0011
PMC ON .. IOEQ0012
SYMBOL SYN .REL. .. IOEQ0013
PMC OFF .. IOEQ0014
IRP .. IOEQ0015
.REL. SET .REL.+1 .. BUMP RELATIVE ADDRESS IOEQ0016
SETWRD END .. IOEQ0017
IOEQ0018
00012 SETWRD (RPROBN) IOEQ0019
00000 RPROBN SYN .REL. IOEQ0019.001
00012 SETWRD (RPROGN) IOEQ0020
00001 RPROGN SYN .REL. IOEQ0020.001
00012 SETWRD (RNAME1) IOEQ0021
00002 RNAME1 SYN .REL. IOEQ0021.001
00012 SETWRD (RNAME2) IOEQ0022
00003 RNAME2 SYN .REL. IOEQ0022.001
00012 SETWRD (RMODE) IOEQ0023
00004 RMODE SYN .REL. IOEQ0023.001
00012 SETWRD (FPROBN) IOEQ0024
00005 FPROBN SYN .REL. IOEQ0024.001
00012 SETWRD (FPROGN) IOEQ0025
00006 FPROGN SYN .REL. IOEQ0025.001
00012 SETWRD (FNAME1) IOEQ0026
00007 FNAME1 SYN .REL. IOEQ0026.001
00012 SETWRD (FNAME2) IOEQ0027
00010 FNAME2 SYN .REL. IOEQ0027.001
00012 SETWRD (DAYTIM,LPROBN) IOEQ0028
00011 DAYTIM SYN .REL. IOEQ0028.001
00011 LPROBN SYN .REL. IOEQ0028.001
00012 SETWRD (DATELU,AUTHOR,LPROGN) IOEQ0029
00012 DATELU SYN .REL. IOEQ0029.001
00012 AUTHOR SYN .REL. IOEQ0029.001
00012 LPROGN SYN .REL. IOEQ0029.001
00012 SETWRD (MODE,ILOCK,F,RCOUNT) IOEQ0030
00013 MODE SYN .REL. IOEQ0030.001
00013 ILOCK SYN .REL. IOEQ0030.001
00013 F SYN .REL. IOEQ0030.001
00013 RCOUNT SYN .REL. IOEQ0030.001
00012 SETWRD (RWSTAT,S,W,R,NORECS,P,LCOUNT,LNAME1) IOEQ0031
00014 RWSTAT SYN .REL. IOEQ0031.001
00014 S SYN .REL. IOEQ0031.001
00014 W SYN .REL. IOEQ0031.001
00014 R SYN .REL. IOEQ0031.001
00014 NORECS SYN .REL. IOEQ0031.001
00014 P SYN .REL. IOEQ0031.001
00014 LCOUNT SYN .REL. IOEQ0031.001
00014 LNAME1 SYN .REL. IOEQ0031.001
00012 SETWRD (POINTR,LNAME2) IOEQ0032
00015 POINTR SYN .REL. IOEQ0032.001
00015 LNAME2 SYN .REL. IOEQ0032.001
00012 SETWRD (ASGNSW,REDREC,REDWRD) IOEQ0033
00016 ASGNSW SYN .REL. IOEQ0033.001
00016 REDREC SYN .REL. IOEQ0033.001
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 4
00016 REDWRD SYN .REL. IOEQ0033.001
00012 SETWRD (WRTREC,WRTWRD) IOEQ0034
00017 WRTREC SYN .REL. IOEQ0034.001
00017 WRTWRD SYN .REL. IOEQ0034.001
00012 SETWRD (CHNG,PRIME,BUFREC,BUFADR) IOEQ0035
00020 CHNG SYN .REL. IOEQ0035.001
00020 PRIME SYN .REL. IOEQ0035.001
00020 BUFREC SYN .REL. IOEQ0035.001
00020 BUFADR SYN .REL. IOEQ0035.001
00012 SETWRD (WINDEX,DINDEX) IOEQ0036
00021 WINDEX SYN .REL. IOEQ0036.001
00021 DINDEX SYN .REL. IOEQ0036.001
00012 SETWRD (DR,DW,DCOUNT,DADDRS) IOEQ0037
00022 DR SYN .REL. IOEQ0037.001
00022 DW SYN .REL. IOEQ0037.001
00022 DCOUNT SYN .REL. IOEQ0037.001
00022 DADDRS SYN .REL. IOEQ0037.001
00012 SETWRD (PRIOR,IOTASK,EFLAG,CURREC) IOEQ0038
00023 PRIOR SYN .REL. IOEQ0038.001
00023 IOTASK SYN .REL. IOEQ0038.001
00023 EFLAG SYN .REL. IOEQ0038.001
00023 CURREC SYN .REL. IOEQ0038.001
00012 SETWRD (SMTMP1) IOEQ0039
00024 SMTMP1 SYN .REL. IOEQ0039.001
00012 SETWRD (SMTMP2) IOEQ0040
00025 SMTMP2 SYN .REL. IOEQ0040.001
IOEQ0041
00012 SETWRD (ACTLNG) LENGTH OF SINGLE ACTIVE FILE ENTRY IOEQ0042
00026 ACTLNG SYN .REL. IOEQ0042.001
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 5
MACRO TO ASSIGN CONSECUTIVE STORAGE LOCATIONS IOEQ0044
SYMBOL ASTORE BLOCK,NWORDS .. WITHIN A BLOCK IOEQ0045
PMC ON .. IOEQ0046
SYMBOL SYN BLOCK .. IOEQ0047
PMC OFF .. IOEQ0048
TMP SET NWORDS .. IOEQ0049
BLOCK SET BLOCK+TMP .. IOEQ0050
ASTORE END .. IOEQ0051
IOEQ0052
00000 AFST SET 0 DEFINE ENTRIES IN ACTIVE FILE STATUS TABLE IOEQ0053
IOEQ0054
PROBNO ASTORE AFST,1 USER'S PROBLEM NUMBER IN BCD IOEQ0055
00000 PROBNO SYN AFST IOEQ0055.001
PROGNO ASTORE AFST,1 USER'S PROGRAMMER NUMBER IN BCD IOEQ0056
00001 PROGNO SYN AFST IOEQ0056.001
AUTHNO ASTORE AFST,1 USER'S 'AUTHOR' NUMBER IN BINARY IOEQ0057
00002 AUTHNO SYN AFST IOEQ0057.001
URCODE ASTORE AFST,1 USER'S RESTRICTION CODE IOEQ0058
00003 URCODE SYN AFST IOEQ0058.001
LIMITS ASTORE AFST,1 USER'S CORE LIMITS PZE LOWADR,,HIADR IOEQ0059
00004 LIMITS SYN AFST IOEQ0059.001
RELOC ASTORE AFST,1 USER'S RELOCATION IOEQ0060
00005 RELOC SYN AFST IOEQ0060.001
FPRIOR ASTORE AFST,1 USER'S FILE PRIORITY SETTING IOEQ0061
00006 FPRIOR SYN AFST IOEQ0061.001
ERRILC ASTORE AFST,1 LOCATION OF CALL RESULTING IN LAST ERROR IOEQ0062
00007 ERRILC SYN AFST IOEQ0062.001
ERNAME ASTORE AFST,1 NAME OF ENTRY IN WHICH ERROR WAS DISCOVEREDIOEQ0063
00010 ERNAME SYN AFST IOEQ0063.001
ERCODE ASTORE AFST,1 ERROR CODE OF LAST ERROR IOEQ0064
00011 ERCODE SYN AFST IOEQ0064.001
IOCODE ASTORE AFST,1 I/O ERROR CODE IF ANY OF LAST ERROR IOEQ0065
00012 IOCODE SYN AFST IOEQ0065.001
ENAME1 ASTORE AFST,1 FILE NAME(1) OF FILE INVOLVED IN LAST ERRORIOEQ0066
00013 ENAME1 SYN AFST IOEQ0066.001
ENAME2 ASTORE AFST,1 FILE NAME(2) OF FILE INVOLVED IN LAST ERRORIOEQ0067
00014 ENAME2 SYN AFST IOEQ0067.001
ERCALL ASTORE AFST,1 LOCATION OF LAST CALL TO ERROR OR IOERR IOEQ0068
00015 ERCALL SYN AFST IOEQ0068.001
QUEUE1 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(1) IOEQ0069
00016 QUEUE1 SYN AFST IOEQ0069.001
QUEUE2 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(2) IOEQ0070
00017 QUEUE2 SYN AFST IOEQ0070.001
QUEUE3 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(3) IOEQ0071
00020 QUEUE3 SYN AFST IOEQ0071.001
QUEUE4 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(4) IOEQ0072
00021 QUEUE4 SYN AFST IOEQ0072.001
QUEUE5 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(5) IOEQ0073
00022 QUEUE5 SYN AFST IOEQ0073.001
QUEUE6 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(6) IOEQ0074
00023 QUEUE6 SYN AFST IOEQ0074.001
QUEUE7 ASTORE AFST,1 STORAGE POINTER FOR STRATEGY MODULE(7) IOEQ0075
00024 QUEUE7 SYN AFST IOEQ0075.001
IOEQ0076
AFENTY ASTORE AFST,ACTLNG STORAGE FOR A SINGLE ACTIVE FILE ENTRY IOEQ0077
00025 AFENTY SYN AFST IOEQ0077.001
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 6
IOEQ0078
TBLMIN ASTORE AFST,0 MINIMUM LENGTH FOR USER I/O STATUS TABLE IOEQ0079
00053 TBLMIN SYN AFST IOEQ0079.001
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 7
0761 01 1 60000 EFA OPSYN NOP EFFECTIVE ADDRESS PARAMETER FLAG IOEQ0081
3 00001 1 60000 PAR OPSYN PTH NORMAL PARAMETER FLAG IOEQ0082
IOEQ0083
1 00001 1 60000 ION OPSYN PON I/O NON-TRANSMIT AND PROCEED IOEQ0084
2 00001 1 60000 IOP OPSYN PTW I/O TRANSMIT AND PROCEED IOEQ0085
0 00001 1 60000 IOD OPSYN PZE I/O DISCONNECT IOEQ0086
IOEQ0087
HOMOP MACRO GENERATE INSTRUCTION TO RESET ECC TO 'HOME'IOEQ0088
IFF IOSMEM-1,0,1 IOEQ0089
SEA HOME INSTRUCTION FOR MEMORY A IOEQ0090
IFF IOSMEM-2,0,1 IOEQ0091
SEB HOME INSTRUCTION FOR MEMORY B IOEQ0092
IFF IOSMEM-3,0,1 IOEQ0093
SEC HOME INSTRUCTION FOR MEMORY C IOEQ0094
HOMOP END IOEQ0095
* ASSEMBLY FOR CORE B IOEQ0099
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 8
* TMAN0058
* CONSTANTS FOR THE OPEN SUBROUTINE - WBIT TMAN0059
* TMAN0060
EVEN TMAN0061
00012 +200000000000 DSC1 OCT 200000000000 TMAN0062
00013 0 00000 0 00000 DSZER PZE TMAN0063
00014 +000200777777 DSC2 OCT 200777777 TMAN0064
* TMAN0065
* SBIT ON ENTRY XR 1 HAS -WORD POINTER, XR 2 HAS -BIT POINTER TMAN0066
* AND XR 3 HAS NUMBER OF BITS TO BE SEARCHED TMAN0067
* EXIT 1,4 MEANS NO BIT FOUND IN THE RANGE AND 2,4 MEANS TMAN0068
* BIT FOUND WITH - WORD PINTER IN XR 1 AND -BIT POINTER TMAN0069
* IN XR 2 TMAN0070
* TMAN0071
00015 -0500 00 1 00000 SBIT CAL 0,1 TMAN0072
00016 0767 00 2 00000 ALS 0,2 TMAN0073
00017 -3 00001 3 00047 TXL SBT,3,1 QUICK TEST FOR ONLY 1 BIT SEARCH TMAN0074
00020 -0634 00 4 00066 SXD SBX4,4 TMAN0075
00021 0044 00 0 00000 PAI TMAN0076
00022 -0500 00 0 00067 CAL SBONE ALL BITS MASK TMAN0077
00023 0046 00 0 00052 TIF SBN TMAN0078
00024 -0046 00 0 00000 SBF PIA TMAN0079
00025 0771 00 2 00000 ARS 0,2 TMAN0080
* TMAN0081
* WBIT FINDS THE NUMBER OF THE FIRST BIT THAT IS A 1 TMAN0082
* ARGUMENT IS IN THE LOGICAL AC TMAN0083
* VALUE IS IN THE DECREMENT OF THE AC TMAN0084
* METHOD IS LEFT AS AN EXERCISE FOR THE STUDENT OF TMAN0085
* COMPUTER PROGRAM OBFUSCATION TMAN0086
* TMAN0087
00026 0560 00 0 00013 WBIT LDQ DSZER TMAN0088
00027 -0765 00 0 00011 LGR 9 TMAN0089
00030 -0773 00 0 00033 RQL 27 TMAN0090
00031 -0501 00 0 00012 ORA DSC1 TMAN0091
00032 0301 00 0 00012 DFAD DSC1 TMAN0092
00033 0771 00 0 00011 ARS 9 TMAN0093
00034 0402 00 0 00014 SUB DSC2 TMAN0094
00035 -0636 00 2 00064 SCD SBA,2 COMPARE TO SEE IF WITHIN TMAN0095
00036 0601 00 0 00065 STO SBB LIMITS SPECIFIED TMAN0096
00037 0400 00 0 00064 ADD SBA WBIT ANSWER IS NEGATIVE TMAN0097
00040 0622 00 0 00070 STD SBTS TMAN0098
00041 0522 00 0 00070 XEC SBTS TMAN0099
00042 -0534 00 4 00066 SBLZ LXD SBX4,4 LIMIT RAN OUT BEFORE A BIT FOUND TMAN0100
00043 0020 00 4 00001 TRA 1,4 YOU LOSE EXIT TMAN0101
* TMAN0102
00044 -0535 00 2 00065 SBOK LDC SBB,2 FOUND ONE TMAN0103
00045 -0534 00 4 00066 LXD SBX4,4 TMAN0104
00046 0020 00 4 00002 TRA 2,4 YOU WIN EXIT TMAN0105
* TMAN0106
* SPECIAL TEST FOR P BIT ONLY TMAN0107
00047 -0760 00 0 00001 SBT PBT TMAN0108
00050 0020 00 4 00001 TRA 1,4 TMAN0109
00051 0020 00 4 00002 TRA 2,4 YOU WIN TMAN0110
* TMAN0111
00052 1 00044 2 00053 SBN TXI *+1,2,36 GET NUMBER OF BITS CHECKED TMAN0112
00053 -0634 00 2 00071 SXD SBTT,2 TMAN0113
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 9
00054 0522 00 0 00071 XEC SBTT EXIT LOSE IF COUNT RAN OUT TMAN0114
00055 0774 00 2 00000 AXT 0,2 TMAN0115
00056 1 77777 1 00061 TXI SBG,1,-1 RESET BIT XR (2) AND ADD 1 TO WORD XR (1) TMAN0116
* TMAN0117
00057 -2 00044 3 00042 SBH TNX SBLZ,3,36 EXIT LOSE IF COUNT RAN OUT TMAN0118
00060 1 77777 1 00061 TXI *+1,1,-1 TMAN0119
00061 0441 00 1 00000 SBG LDI 0,1 AC STIL HAS ONES MASK TMAN0120
00062 0046 00 0 00057 TIF SBH TMAN0121
00063 0020 00 0 00024 TRA SBF FOUND A BIT,CHECK IF WITHIN LIMIT TMAN0122
* TMAN0123
00064 0 00000 0 00000 SBA PZE STORAGE FOR BIT XR TMAN0124
00065 0 00000 0 00000 SBB PZE STORAGE FOR NUMBER OF BIT FOUND TMAN0125
00066 0 00000 0 00000 SBX4 PZE TMAN0126
00067 -377777777777 SBONE OCT 777777777777 TMAN0127
00070 3 00000 3 00044 SBTS TXH SBOK,3,** TMAN0128
00071 -2 00000 3 00042 SBTT TNX SBLZ,3,** TMAN0129
* TMAN0130
* TMAN0131
* GBA GET BIT ADDRESS - TAKES AC AND GETS WORD ADDRESS TMAN0132
* IN XR 1 AND BIT ADDRESS IN XR 2 TMAN0133
* TMAN0134
00072 0131 00 0 00000 GBA XCA TMAN0135
00073 -0754 00 0 00000 PXD 0,0 TMAN0136
00074 0221 00 0 05365 DVP =36 TMAN0137
00075 0737 00 2 00000 PAC 0,2 BIT ADDRESS TMAN0138
00076 0131 00 0 00000 XCA TMAN0139
00077 0401 00 4 00001 ADM 1,4 TMAN0140
00100 0737 00 1 00000 PAC 0,1 TMAN0141
00101 0020 00 4 00002 TRA 2,4 TMAN0142
* TMAN0143
* GTA DOES INVERSE OF GBA TMAN0144
* TMAN0145
00102 0756 00 1 00000 GTA PCA 0,1 TMAN0146
00103 -0501 00 0 00114 ORA GTAU TMAN0147
00104 -0400 00 4 00001 SBM 1,4 TMAN0148
00105 0131 00 0 00000 XCA TMAN0149
00106 0200 00 0 05365 MPY =36 TMAN0150
00107 -0600 00 0 00113 STQ GTAT TMAN0151
00110 0756 00 2 00000 PCA 0,2 TMAN0152
00111 0400 00 0 00113 ADD GTAT TMAN0153
00112 0020 00 4 00002 TRA 2,4 TMAN0154
* TMAN0155
00113 0 00000 0 00000 GTAT PZE TMAN0156
00114 3 00000 0 00000 GTAU PAR TMAN0157
* TMAN0158
* STBT SETS BIT CORRESPONDIND TO WORD ADDRESS IN XR 1 TMAN0159
* AND BIT ADDRESS IN XR 2 TMAN0160
* TMAN0161
00115 -0500 00 0 00304 STBT CAL DSMSK A P-BIT TMAN0162
00116 0771 00 2 00000 ARS 0,2 TMAN0163
00117 0441 00 1 00000 LDI 0,1 TMAN0164
00120 0043 00 0 00000 OAI TMAN0165
00121 0604 00 1 00000 STI 0,1 TMAN0166
00122 0020 00 4 00001 TRA 1,4 TMAN0167
* TMAN0168
* CLBT CLEARS BIT - ADDRESS IN ABOVE FORMAT TMAN0169
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 10
* TMAN0170
00123 -0500 00 0 00304 CLBT CAL DSMSK TMAN0171
00124 0771 00 2 00000 ARS 0,2 TMAN0172
00125 0441 00 1 00000 LDI 0,1 TMAN0173
00126 -0042 00 0 00000 RIA TMAN0174
00127 0604 00 1 00000 STI 0,1 TMAN0175
00130 0020 00 4 00001 TRA 1,4 TMAN0176
* TMAN0177
*************************** TMAN0178
* * TMAN0179
* MAIN PROGRAM * TMAN0180
* * TMAN0181
*************************** TMAN0182
* TMAN0183
* CALLING SEQUENCE TMAN0184
* TMAN0185
* TSX GETTRK,4 TMAN0186
* PAR BCDWRD TMAN0187
* PAR ERRET 1 = BAD TRACK ADDRESS, 2 = NO TRACKS LEFT TMAN0188
* TMAN0189
00131 0634 00 1 00256 GETTRK SXA DSX12,1 GET A TRACK, FIRST SAVE XRS TMAN0190
00132 -0634 00 2 00256 SXD DSX12,2 TMAN0191
00133 0634 00 3 00257 SXA DSX34,3 TMAN0192
00134 -0634 00 4 00257 SXD DSX34,4 TMAN0193
00135 0634 00 5 00260 SXA DSX56,5 TMAN0194
00136 0500 60 4 00001 CLA* 1,4 TMAN0195
00137 -0734 00 4 00000 PDX 0,4 TEST FOR GET ON UNIT TMAN0196
00140 -3 00000 4 00427 TXL DSGTU,4,0 TMAN0197
00141 0131 00 0 00000 GDISK XCA TMAN0198
00142 -0754 00 0 00000 PXD 0,0 TMAN0199
00143 -0763 00 0 00006 LGL 6 TMAN0200
00144 0340 00 0 05363 CAS =10 IF MODULE NUMBER OCTAL 12,CHANGE TO 0 TMAN0201
00145 0020 00 0 00147 TRA *+2 TMAN0202
00146 -0754 00 0 00000 PXD 0,0 TMAN0203
00147 0734 00 4 00000 PAX 0,4 TMAN0204
00150 0441 00 0 05360 LDI =1 ERROR TYPE 1 TMAN0205
00151 BDISKQ MACRO TO GENERATE CODE TO CHECK BDISKM TMAN0206
00151 3 00007 4 00517 TXH GDRM,4,TDISKM NOT A DISK MODULE, TRY DRUM TMAN0207
00152 0402 00 0 00607 SUB DSBD MORMALIZE MODULE NUMBER TMAN0208
00153 0602 00 0 00263 GDSK SLW DSMOD TMAN0209
00154 -0600 00 0 00303 STQ DSTEM TMAN0210
00155 0131 00 0 00000 XCA TMAN0211
00156 0771 00 0 00006 ARS 6 TEST IF RECORD EVEN OR ODD TMAN0212
00157 0760 00 0 00001 LBT TMAN0213
00160 0020 00 0 00511 TRA DSSTK RECORD WAS EVEN ADD 1,RETURN TO CALLER TMAN0214
00161 0200 00 0 05367 MPY MPY =250 MODULE NUMBER*250 TMAN0215
00162 -0600 00 0 00262 STQ DSM25 TMAN0216
00163 0560 00 0 00303 LDQ DSTEM TMAN0217
00164 0074 00 4 00613 TSX DSDEC,4 CONVERT NEXT 4 DEC TO BIN TMAN0218
00165 0131 00 0 00000 XCA TMAN0219
00166 -0754 00 0 00000 PXD 0,0 TMAN0220
00167 0221 00 0 05366 DVP =40 GET CYLINDER NUMBER TMAN0221
00170 -0600 00 0 00264 STQ DSCYL TMAN0222
00171 0500 00 0 00264 CLA DSCYL FIRST TRY THIS CYLINDER TMAN0223
00172 0400 00 0 00262 ADD DSM25 GET CYLINDER IN CORRECT MODULE TMAN0224
00173 0074 00 4 00072 TSX GBA,4 FORM ADDRESS INTO CYLINDER TABLE TMAN0225
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 11
00174 3 00000 0 05270 PAR DSCYLT TMAN0226
00175 0774 00 3 00001 AXT 1,3 TMAN0227
00176 0074 00 4 00015 TSX SBIT,4 SEARCH THIS 1 BIT TMAN0228
00177 0020 00 0 00310 TRA DSCLZ TOO BAD CYLINDER IS FULL TMAN0229
00200 0634 00 1 00277 SXA DSCWB,1 TMAN0230
00201 -0634 00 2 00277 SXD DSCWB,2 PROBALY NOT FULL, SAVE BIT ADDRESS TMAN0231
00202 0074 00 4 00102 TSX GTA,4 TMAN0232
00203 3 00000 0 05270 PAR DSCYLT TMAN0233
00204 0131 00 0 00000 XCA TMAN0234
00205 0200 00 0 05366 MPY =40 FORM FULL TRACK NUMBER TMAN0235
00206 0131 00 0 00000 XCA TMAN0236
00207 0601 00 0 00302 STO DSBTN TMAN0237
00210 0074 00 4 00072 TSX GBA,4 TMAN0238
00211 3 00000 0 01011 PAR DSDSUT FORM ADDRESS IN DISK USAGE TABLE TMAN0239
00212 0774 00 3 00050 AXT 40,3 SEARCH 40 BITS TMAN0240
00213 0074 00 4 00015 TSX SBIT,4 TMAN0241
00214 0020 00 0 00305 TRA DSCLF TOO BAD, CYLINDER WAS FULL AFTER ALL TMAN0242
00215 0074 00 4 00123 DSFTR TSX CLBT,4 FOUND A TRACK, CLEAR THE BIT TO SET BUSY TMAN0243
00216 0074 00 4 00102 TSX GTA,4 MAP BACK TO TRACK ADDRESS TMAN0244
00217 3 00000 0 01011 PAR DSDSUT TMAN0245
00220 0560 00 0 00607 DSDON LDQ DSBD RESTORE BOTTOM DISK NUMBER TMAN0246
00221 -0773 00 0 00036 DRDON RQL 30 DRUM DONE COMES HERE TMAN0247
00222 -0600 00 0 00611 STQ DSMN TMAN0248
00223 0601 00 0 00265 STO DSRN TMAN0249
00224 0560 00 0 00265 LDQ DSRN TMAN0250
00225 0774 00 7 00004 AXT 4,7 TMAN0251
00226 -0754 00 0 00000 DSD1 PXD 0,0 TMAN0252
00227 0221 00 7 00272 DVP DSDNT,7 CONVERT TO PROPER BCD WITH 12 OCTAL FOR 0 TMAN0253
00230 -0100 00 0 00232 TNZ *+2 TMAN0254
00231 -0500 00 0 05363 CAL =10 TMAN0255
00232 0601 00 7 00276 STO DSDIG,7 TMAN0256
00233 2 00001 7 00226 TIX DSD1,7,1 TMAN0257
00234 -0600 00 0 00276 STQ DSDIG TMAN0258
00235 0774 00 7 00005 AXT 5,7 PICK UP DIGITS IN ORDER TMAN0259
00236 0560 00 0 05373 LDQ =O120000000000 TMAN0260
00237 0500 00 7 00277 CLA DSDIG+1,7 TMAN0261
00240 -0765 00 0 00006 LGR 6 TMAN0262
00241 2 00001 7 00237 TIX *-2,7,1 TMAN0263
00242 -0130 00 0 00000 XCL TMAN0264
00243 0400 00 0 00611 ADD DSMN RESTORE PROPER MODULE NUMBER TMAN0265
00244 0340 00 0 05372 CAS =O007777777777 TMAN0266
00245 0020 00 0 00250 TRA *+3 TMAN0267
00246 0020 00 0 00250 TRA *+2 TMAN0268
00247 0400 00 0 05373 ADD =O120000000000 TMAN0269
00250 0534 00 1 00256 DSRETU LXA DSX12,1 TMAN0270
00251 -0534 00 2 00256 LXD DSX12,2 TMAN0271
00252 0534 00 3 00257 LXA DSX34,3 RESTORE XRS TMAN0272
00253 -0534 00 4 00257 LXD DSX34,4 TMAN0273
00254 0534 00 5 00260 LXA DSX56,5 TMAN0274
00255 0020 00 4 00003 TRA 3,4 TMAN0275
* TMAN0276
00256 0 00000 0 00000 DSX12 PZE TMAN0277
00257 0 00000 0 00000 DSX34 PZE XR STORAGE TMAN0278
00260 0 00000 0 00000 DSX56 PZE TMAN0279
00261 0 00000 0 00000 DSLDI PZE BDISKM LAST DISK MODULE GTU ASSIGNED TMAN0280
00262 0 00000 0 00000 DSM25 PZE MODULE NUMBER * 250 TMAN0281
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 12
00263 0 00000 0 00000 DSMOD PZE MODULE NUMBER TMAN0282
00264 0 00000 0 00000 DSCYL PZE CYLINDER NUMBER TMAN0283
00265 0 00000 0 00000 DSRN PZE RECORD NUMBER (0 OR 1) TMAN0284
00266 +000000000012 DEC 10,10,10,10 CONVERSION DIVISION TABLE TMAN0285
00272 DSDNT BES 0 TMAN0286
00272 BSS 4 DIGIT STORAGE TMAN0287
00276 0 00000 0 00000 DSDIG PZE TMAN0288
00277 0 00000 0 00000 DSCWB PZE TEMP STORAGE FOR CYLINDER BIT ADDRESSES TMAN0289
00277 DSWB SYN DSCWB SAVE STORAGE TMAN0290
00300 0 00000 0 00000 DSWC PZE TEMP STORAGE FOR NUMBER OF BITS TO BE SEARCTMAN0291
00301 0 00000 0 00000 DSWD PZE TEMP STOR. CYL TABLE BIT ADR TMAN0292
00302 0 00000 0 00000 DSBTN PZE TRACK NUMBER TEMP STORAGE TMAN0293
00303 0 00000 0 00000 DSTEM PZE TEMPORARY STORAGE TMAN0294
00304 -0 00000 0 00000 DSMSK MZE TMAN0295
* TMAN0296
* TMAN0297
00305 0534 00 1 00277 DSCLF LXA DSCWB,1 CYLINDER WAS FULL, TURN OFF BIT TMAN0298
00306 -0534 00 2 00277 LXD DSCWB,2 TMAN0299
00307 0074 00 4 00123 TSX CLBT,4 TMAN0300
00310 0774 00 6 00005 DSCLZ AXT 5,6 TRY NEXT ITEM IN STRATGY TMAN0301
00311 2 00001 6 00331 DSNXV TIX DSTRT,6,1 TMAN0302
00312 0441 00 0 05361 LDI =2 ERROR TYPE 2 TMAN0303
00313 -0774 00 7 00313 AXC *,7 XXX TOO BAD, NO DISK TRACKS LEFT TMAN0304
00314 0756 00 7 00000 DSERR PCA 0,7 COMMON ERROR EXIT, LOC NOW IN AC TMAN0305
00315 0131 00 0 00000 XCA ERROR ADDRESS IN MQ TMAN0306
00316 -0046 00 0 00000 PIA ERROR TYPE IN AC TMAN0307
00317 0534 00 1 00256 LXA DSX12,1 TMAN0308
00320 -0534 00 2 00256 LXD DSX12,2 TMAN0309
00321 0534 00 3 00257 LXA DSX34,3 TMAN0310
00322 -0534 00 4 00257 LXD DSX34,4 TMAN0311
00323 0534 00 5 00260 LXA DSX56,5 TMAN0312
00324 0020 60 4 00002 TRA* 2,4 ERROR RETURN TMAN0313
* TMAN0314
00325 3 00000 0 00365 PAR FC10 FIRST TRY WITHIN GROUP OH 10 TMAN0315
00326 3 00000 0 00374 PAR FC50 THEN TRY TO GET IN SECTOR TMAN0316
00327 3 00000 0 00421 PAR FC250 ANYTHING IN MODULE WILL DO AT THIS POINT TMAN0317
00330 3 00000 0 00424 PAR FCALL PANIC, TRY WHOLE DISK TMAN0318
00331 0020 60 6 00331 DSTRT TRA* DSTRT,6 STRATEGY DISPATCHER TMAN0319
* TMAN0320
00332 0500 00 0 00301 DSCYF CLA DSWD GET CYL TABLE BIT ADDRESS TMAN0321
00333 0074 00 4 00072 TSX GBA,4 TMAN0322
00334 3 00000 0 05270 PAR DSCYLT TMAN0323
00335 0074 00 4 00123 TSX CLBT,4 ZERO PROPER BIT IN CYLINDER TABLE TMAN0324
00336 -0534 00 2 00277 LXD DSWB,2 TMAN0325
00337 0534 00 3 00300 LXA DSWC,3 RESTORE NUMBER OF BITS TO BE SEARCHED TMAN0326
00340 0500 00 0 00262 DSNXT CLA DSM25 MODULE NUMBER TMAN0327
00341 0400 00 0 00264 ADD DSCYL CYLINDER NUMBER IN MODULE TMAN0328
00342 0074 00 4 00072 TSX GBA,4 TMAN0329
00343 3 00000 0 05270 PAR DSCYLT TMAN0330
00344 0634 00 1 00277 SXA DSWB,1 SAVE BIT ADDRESS TMAN0331
00345 -0634 00 2 00277 SXD DSWB,2 TMAN0332
00346 0634 00 3 00300 SXA DSWC,3 SAVE BIT COUNT TMAN0333
00347 0074 00 4 00015 TSX SBIT,4 TMAN0334
00350 0020 00 0 00311 TRA DSNXV NO FREE CYLINDERS, TRY NEXT STRATEGY TMAN0335
00351 0074 00 4 00102 TSX GTA,4 TMAN0336
00352 3 00000 0 05270 PAR DSCYLT TMAN0337
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 13
00353 0601 00 0 00301 STO DSWD TMAN0338
00354 0131 00 0 00000 XCA TMAN0339
00355 0200 00 0 05366 MPY =40 FORM TRACK ADDRESS TMAN0340
00356 0131 00 0 00000 XCA TMAN0341
00357 0074 00 4 00072 TSX GBA,4 TMAN0342
00360 3 00000 0 01011 PAR DSDSUT TMAN0343
00361 0774 00 3 00050 AXT 40,3 SEARCH 40 BITS TMAN0344
00362 0074 00 4 00015 TSX SBIT,4 TMAN0345
00363 0020 00 0 00332 TRA DSCYF CYLINDER WAS FULL TMAN0346
00364 0020 00 0 00215 TRA DSFTR GOODY, FOUND A TRACK TMAN0347
* TMAN0348
00365 -0754 00 0 00000 FC10 PXD 0,0 FIRST TRY IN LOCAL AREA TMAN0349
00366 0560 00 0 00264 LDQ DSCYL TMAN0350
00367 0221 00 0 05363 DVP =10 TMAN0351
00370 0200 00 0 05363 MPY =10 TMAN0352
00371 -0600 00 0 00264 STQ DSCYL TMAN0353
00372 0774 00 3 00012 AXT 10,3 SEARCH 10 BITS TMAN0354
00373 0020 00 0 00340 TRA DSNXT TMAN0355
* TMAN0356
00374 0534 00 3 00264 FC50 LXA DSCYL,3 FIND LOCAL SECTOR TMAN0357
00375 3 00307 3 00404 TXH FC50A,3,199 TMAN0358
00376 3 00237 3 00410 TXH FC50B,3,159 TMAN0359
00377 3 00143 3 00414 TXH FC50C,3,99 TMAN0360
00400 3 00073 3 00417 TXH FC50D,3,59 TMAN0361
00401 0600 00 0 00264 STZ DSCYL TMAN0362
00402 0774 00 3 00074 FC50E AXT 60,3 60 BITS IN SECTORS 1 AND 3 TMAN0363
00403 0020 00 0 00340 TRA DSNXT TMAN0364
00404 0774 00 3 00310 FC50A AXT 200,3 SECTOR 5 - 50 BITS TMAN0365
00405 0634 00 3 00264 SXA DSCYL,3 TMAN0366
00406 0774 00 3 00062 AXT 50,3 TMAN0367
00407 0020 00 0 00340 TRA DSNXT TMAN0368
00410 0774 00 3 00240 FC50B AXT 160,3 40 BITS IN SECTOR 2 AND 4 TMAN0369
00411 0634 00 3 00264 FC50F SXA DSCYL,3 TMAN0370
00412 0774 00 3 00050 AXT 40,3 TMAN0371
00413 0020 00 0 00340 TRA DSNXT TMAN0372
00414 0774 00 3 00144 FC50C AXT 100,3 TMAN0373
00415 0634 00 3 00264 SXA DSCYL,3 TMAN0374
00416 0020 00 0 00402 TRA FC50E TMAN0375
00417 0774 00 3 00074 FC50D AXT 60,3 TMAN0376
00420 0020 00 0 00411 TRA FC50F TMAN0377
* TMAN0378
00421 0600 00 0 00264 FC250 STZ DSCYL SEARCH WHOLE MODULE TMAN0379
00422 0774 00 3 00372 AXT 250,3 TMAN0380
00423 0020 00 0 00340 TRA DSNXT TMAN0381
* TMAN0382
00424 0600 00 0 00262 FCALL STZ DSM25 START AT ZERO MODULE TMAN0383
00425 0774 00 3 03720 AXT 250*NDISKM,3 AND SEARCH THE WHOLE THING TMAN0384
00426 0020 00 0 00340 TRA DSNXT TMAN0385
* TMAN0386
00427 0734 00 4 00000 DSGTU PAX 0,4 GET ON UNIT, 1=DRUM, 2=DISK TMAN0387
00430 3 00001 4 00433 TXH DSGDI,4,1 TMAN0388
00431 0774 00 4 00010 AXT BDRUMM,4 SET BOTTOM DRUM MODULE TMAN0389
00432 0020 00 0 00517 TRA GDRM GET FROM DRUM TMAN0390
* TMAN0391
00433 0534 00 4 00261 DSGDI LXA DSLDI,4 PICK LAST MODULE GTU GOT TRACK ON TMAN0392
00434 1 00001 4 00435 TXI *+1,4,1 INCREMENT TMAN0393
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 14
00435 -3 00007 4 00437 TXL *+2,4,TDISKM CHECK FOR TOO BIG TMAN0394
00436 0774 00 4 00000 AXT BDISKM,4 TMAN0395
00437 0634 00 4 00261 SXA DSLDI,4 TMAN0396
00440 -0754 00 4 00000 PXD 0,4 GET IN POSITION TO BE A MODULE NUMBER TMAN0397
00441 0767 00 0 00014 ALS 12 TMAN0398
00442 0400 00 0 05360 ADD =1 FORCE RECORD ODD SO NEW TRACK IS FOUND TMAN0399
00443 0020 00 0 00141 TRA GDISK RANDOM TRACK NUMBER AND GET DISK TMAN0400
* TMAN0401
* TMAN0402
* DELTRK RESTORES A TRACK TO THE DISK OR DRUM TRACK USAGE TABLE TMAN0403
* CALLING SEQUENCE TMAN0404
* TSX DELTRK,4 TMAN0405
* PAR BCDWRD POINTER TO TRACK ADDRESS TMAN0406
* PAR ERRET 1 = BAD ADRESSS TMAN0407
* TMAN0408
00444 0634 00 1 00256 DELTRK SXA DSX12,1 TMAN0409
00445 -0634 00 2 00256 SXD DSX12,2 TMAN0410
00446 0634 00 3 00257 SXA DSX34,3 TMAN0411
00447 -0634 00 4 00257 SXD DSX34,4 TMAN0412
00450 0634 00 5 00260 SXA DSX56,5 TMAN0413
00451 -0500 60 4 00001 CAL* 1,4 TMAN0414
00452 0760 00 0 00001 LBT TMAN0415
00453 0020 00 0 00455 TRA *+2 TMAN0416
00454 0020 00 4 00003 TRA 3,4 TMAN0417
00455 0560 60 4 00001 LDQ* 1,4 GET ARGUMENT TMAN0418
00456 -0754 00 0 00000 PXD 0,0 TMAN0419
00457 -0763 00 0 00006 LGL 6 TMAN0420
00460 0340 00 0 05363 CAS =10 TMAN0421
00461 0020 00 0 00463 TRA *+2 TMAN0422
00462 -0754 00 0 00000 PXD 0,0 TMAN0423
00463 0734 00 4 00000 PAX 0,4 TMAN0424
00464 0441 00 0 05360 LDI =1 ERROR TYPE 1 TMAN0425
00465 BDISKQ TMAN0426
00465 3 00007 4 00563 TXH DLDRM,4,TDISKM NOT ON DISK, DELETE DRUM TRACK TMAN0427
00466 0402 00 0 00607 SUB DSBD TMAN0428
00467 0074 00 4 00614 TSX DSDEC+1,4 XXX BEWARE SHABBY PROGRAMMING TRICK TMAN0429
00470 0601 00 0 00515 STO DLTN TMAN0430
00471 0131 00 0 00000 XCA TMAN0431
00472 -0754 00 0 00000 PXD 0,0 TMAN0432
00473 0221 00 0 05366 DVP =40 TMAN0433
00474 -0600 00 0 00516 STQ DLCYL CYLINDER NUMBER FOR FUTURE REFERENCE TMAN0434
00475 0500 00 0 00515 CLA DLTN TMAN0435
00476 0074 00 4 00072 TSX GBA,4 TMAN0436
00477 3 00000 0 01011 PAR DSDSUT GET ADDRESS IN USAGE TABLE TMAN0437
00500 0074 00 4 00115 TSX STBT,4 TMAN0438
00501 0500 00 0 00516 CLA DLCYL CYLINDER NUMBER TMAN0439
00502 0074 00 4 00072 TSX GBA,4 TMAN0440
00503 3 00000 0 05270 PAR DSCYLT TMAN0441
00504 0074 00 4 00115 DLEXT TSX STBT,4 SET BIT AND EXIT TMAN0442
00505 0534 00 1 00256 LXA DSX12,1 ONLY XRS 1,2 AND 4 USED TMAN0443
00506 -0534 00 2 00256 LXD DSX12,2 TMAN0444
00507 -0534 00 4 00257 LXD DSX34,4 TMAN0445
00510 0020 00 4 00003 TRA 3,4 TMAN0446
* TMAN0447
00511 -0534 00 4 00257 DSSTK LXD DSX34,4 TMAN0448
00512 0500 60 4 00001 CLA* 1,4 TMAN0449
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 15
00513 0402 00 0 05362 SUB =9 CHANGE OCTAL 12 TO 1 TMAN0450
00514 0020 00 0 00250 TRA DSRETU GIVE CALLER ODD RECORD IN SAME TRACK TMAN0451
* TMAN0452
* TMAN0453
00515 0 00000 0 00000 DLTN PZE FULL TRACK NUMBER TMAN0454
00516 0 00000 0 00000 DLCYL PZE CYLINDER NUMBER TMAN0455
* TMAN0456
00517 3 00007 4 00522 GDRM TXH *+3,4,BDRUMM-1 SEE IF IN PROPER RANGE FOR TMAN0457
00520 0441 00 0 05360 LDI =1 ERROR TYPE 1 TMAN0458
00521 0074 00 7 00314 TSX DSERR,7 A DRUM MODULE TMAN0459
00522 3 00010 4 00521 TXH *-1,4,TDRUMM TMAN0460
00523 1 77770 4 00524 TXI *+1,4,-BDRUMM TMAN0461
00524 0754 00 4 00000 PXA 0,4 TMAN0462
00525 0601 00 0 00606 STO DSDRM TMAN0463
00526 0131 00 0 00000 XCA TMAN0464
00527 0200 00 0 05370 MPY =400 400 TRACKS PER DRUM TMAN0465
00530 0131 00 0 00000 XCA TMAN0466
00531 0074 00 4 00072 TSX GBA,4 FORM BIT ADDRESS TMAN0467
00532 3 00000 0 00775 PAR DSDRUT IN DRUM TABLE TMAN0468
00533 0774 00 3 00620 AXT 400,3 TMAN0469
00534 0074 00 4 00015 TSX SBIT,4 SEARCH TABLE TMAN0470
00535 0020 00 0 00537 TRA *+2 NOT FOUND ON THIS DRUM TMAN0471
00536 0020 00 0 00550 TRA GDRFT FOUND A TRACK TMAN0472
00537 DRUMSQ MACRO MAKES MORE CODE IF NDRUMS .G. 1 TMAN0473
00537 -0754 00 0 00000 GDLZ PXD 0,0 GIVE UP, GET DISK TRACK TMAN0474
00540 0560 00 0 00265 LDQ DSRN PICK UP A PSEUDO RANDOM NUMBER TMAN0475
00541 0221 00 0 05364 DVP =31 HASH IT UP TMAN0476
00542 -0754 00 0 00000 PXD 0,0 TMAN0477
00543 0221 00 0 00610 DVP DSND DIVIDE BY NUMBER OF DISK MODULES TMAN0478
00544 0601 00 0 00263 STO DSMOD TMAN0479
00545 0600 00 0 00303 STZ DSTEM START LOOKING AT TRACK 0 OF MODULE DSMOD TMAN0480
00546 0131 00 0 00000 XCA TMAN0481
00547 0020 00 0 00161 TRA MPY TMAN0482
* TMAN0483
00550 0074 00 4 00123 GDRFT TSX CLBT,4 FOUND ATRACK, MARK IT USED TMAN0484
00551 0074 00 4 00102 TSX GTA,4 MAP ADDRESS BACK TMAN0485
00552 3 00000 0 00775 PAR DSDRUT TMAN0486
00553 0131 00 0 00000 XCA TMAN0487
00554 -0754 00 0 00000 PXD 0,0 TMAN0488
00555 0221 00 0 05370 DVP =400 EXTRACT MODULE NUMBER TMAN0489
00556 0601 00 0 00606 STO DSDRM TMAN0490
00557 0200 00 0 05371 MPY =10000 TMAN0491
00560 0400 00 0 00606 ADD DSDRM FORM FULL ADDRESS TMAN0492
00561 0560 00 0 00612 LDQ DSBDR TMAN0493
00562 0020 00 0 00221 TRA DRDON CONVERT TO BCD AND EXIT TMAN0494
* TMAN0495
00563 3 00007 4 00566 DLDRM TXH *+3,4,BDRUMM-1 CHECK IF MODULE NUMBER TMAN0496
00564 0441 00 0 05360 LDI =1 ERROR TYPE 1 TMAN0497
00565 0074 00 7 00314 TSX DSERR,7 IN PROPER RANGE TMAN0498
00566 3 00010 4 00565 TXH *-1,4,TDRUMM TMAN0499
00567 1 77770 4 00570 TXI *+1,4,-BDRUMM TMAN0500
00570 0634 00 4 00605 SXA DLDRT,4 TMAN0501
00571 0074 00 4 00613 TSX DSDEC,4 CONVERT NEXT FOR DEC DIGITS TO BIN TMAN0502
00572 0340 00 0 05370 CAS =400 CHECK TO SEE IF TOO BIG TMAN0503
00573 0761 00 0 00000 NOP TMAN0504
00574 0074 00 7 00314 TSX DSERR,7 TMAN0505
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 16
00575 0560 00 0 00605 LDQ DLDRT TMAN0506
00576 0601 00 0 00605 STO DLDRT TMAN0507
00577 0200 00 0 05370 MPY =400 TMAN0508
00600 0131 00 0 00000 XCA TMAN0509
00601 0400 00 0 00605 ADD DLDRT FORM TABLE ADDRESS TMAN0510
00602 0074 00 4 00072 TSX GBA,4 TMAN0511
00603 3 00000 0 00775 PAR DSDRUT TMAN0512
00604 0020 00 0 00504 TRA DLEXT SET BIT AND EXIT TMAN0513
* TMAN0514
00605 0 00000 0 00000 DLDRT PZE TEMP STORAGE TMAN0515
00606 0 00000 0 00000 DSDRM PZE TMAN0516
00607 0 00000 0 00000 DSBD PZE BDISKM BOTTOM DISK MOD TMAN0517
00610 0 00000 0 00010 DSND PZE NDISKM NUMBER OF DISK MODULES TMAN0518
00611 0 00000 0 00000 DSMN PZE TEMP STORAGE TMAN0519
00612 0 00000 0 00010 DSBDR PZE BDRUMM BOTTOM DRUM MODULE TMAN0520
* TMAN0521
00613 -0754 00 0 00000 DSDEC PXD 0,0 CONVERT FOUR CHARACTERS FROM DEC TO BIN TMAN0522
00614 0774 00 7 00004 AXT 4,7 TMAN0523
00615 0767 00 0 00001 DSD11 ALS 1 TMAN0524
00616 0601 00 0 00632 STO DSDES TMAN0525
00617 0767 00 0 00002 ALS 2 TMAN0526
00620 0400 00 0 00632 ADD DSDES TMAN0527
00621 0601 00 0 00632 STO DSDES TMAN0528
00622 -0754 00 0 00000 PXD 0,0 TMAN0529
00623 -0763 00 0 00006 LGL 6 TMAN0530
00624 0340 00 0 05363 CAS =10 TMAN0531
00625 0020 00 0 00627 TRA *+2 TMAN0532
00626 -0754 00 0 00000 PXD 0,0 TMAN0533
00627 0400 00 0 00632 ADD DSDES TMAN0534
00630 2 00001 7 00615 TIX DSD11,7,1 TMAN0535
00631 0020 00 4 00001 TRA 1,4 TMAN0536
* TMAN0537
00632 0 00000 0 00000 DSDES PZE TEMP STORAGE TMAN0538
* TMAN0539
* TMAN0540
* INITIALIZE SECTION FOR TRACK MANAGEMENT MODULE TMAN0541
* TMAN0542
00633 0500 00 0 00743 IDRUMS CLA DRUMP TMAN0543
00634 0020 00 0 00636 TRA IDCOM TMAN0544
00635 0500 00 0 00744 IDISKS CLA DISKP TMAN0545
00636 0600 00 0 00771 IDCOM STZ INITS TMAN0546
00637 0634 00 2 00773 IDUP SXA IDX24,2 SAVE XRS TMAN0547
00640 -0634 00 4 00773 SXD IDX24,4 TMAN0548
00641 0737 00 2 00000 PAC 0,2 TMAN0549
00642 0560 00 2 00000 LDQ 0,2 TMAN0550
00643 -0600 00 0 00753 STQ Y TMAN0551
00644 -0737 00 2 00000 PDC 0,2 TMAN0552
00645 0560 00 2 00000 LDQ 0,2 TMAN0553
00646 -0600 00 0 00754 STQ NAME TMAN0554
00647 0560 00 2 00001 LDQ 1,2 TMAN0555
00650 -0600 00 0 00755 STQ NAME+1 TMAN0556
00651 0520 00 0 00771 ZET INITS TMAN0557
00652 0020 00 0 00663 TRA UPA GO TO UPDATE SECTION TMAN0558
* TMAN0559
00653 0074 00 4 00000 TSX $SEARCH,4 GET FILE ENTRY TMAN0560
00654 0761 00 0 00756 EFA MFDPTR .. TMAN0561
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 17
00655 0761 00 0 00754 EFA NAME .. TMAN0562
00656 0761 00 0 00760 EFA PUT .. TMAN0563
00657 3 00774 0 00774 PAR ERR,,ERR .. TMAN0564
00660 0074 00 4 00001 TSX $STAFIL,4 SET FILE ACTIVE TMAN0565
00661 0761 00 0 00760 EFA PUT .. TMAN0566
00662 0761 00 0 00774 EFA ERR .. TMAN0567
00663 0074 00 4 00002 UPA TSX $GTAFIL,4 GET STUFF FROM FILE TABLE TMAN0568
00664 3 00774 0 00754 PAR NAME,,ERR .. TMAN0569
00665 0737 00 2 00000 PAC 0,2 TMAN0570
00666 0074 00 4 00003 TSX $BOPEN,4 OPEN THE FILE TMAN0571
00667 0761 00 2 00000 EFA 0,2 .. TMAN0572
00670 3 00774 0 00013 PAR DSZER,,ERR .. TMAN0573
00671 0520 00 0 00771 ZET INITS CHECK FOR READ OR WRITE TMAN0574
00672 0020 00 0 00721 TRA UPB TMAN0575
00673 0074 00 4 00004 QWA TSX $BREAD,4 READ FILE IN ONE BITE TMAN0576
00674 0761 00 2 00000 EFA 0,2 .. TMAN0577
00675 3 00013 0 00772 PAR HOME,,DSZER .. TMAN0578
00676 3 00774 0 00013 PAR DSZER,,ERR .. TMAN0579
00677 3 00673 0 00753 PAR Y,,QWA .. TMAN0580
00700 3 00774 0 00774 PAR ERR,,ERR .. TMAN0581
00701 3 00000 0 00774 PAR ERR .. TMAN0582
00702 0074 00 4 00005 QWB TSX $BCLOSE,4 CLOSE OUT FILE TMAN0583
00703 0761 00 2 00000 EFA 0,2 .. TMAN0584
00704 3 00013 0 00772 PAR HOME,,DSZER .. TMAN0585
00705 3 00702 0 00774 PAR ERR,,QWB .. TMAN0586
00706 3 00000 0 00774 PAR ERR .. TMAN0587
00707 0520 00 0 00771 ZET INITS TMAN0588
00710 0020 00 0 00731 TRA UPD FINISH UPDATE PROCESS TMAN0589
00711 0534 00 2 00773 EXIT LXA IDX24,2 TMAN0590
00712 -0534 00 4 00773 LXD IDX24,4 TMAN0591
00713 0020 00 4 00001 TRA 1,4 TMAN0592
* TMAN0593
* UPDATE DISK AND DRUM FILES TMAN0594
* TMAN0595
00714 0500 00 0 00743 UPDRUM CLA DRUMP TMAN0596
00715 0020 00 0 00717 TRA *+2 TMAN0597
00716 0500 00 0 00744 UPDISK CLA DISKP TMAN0598
00717 -0625 00 0 00771 STL INITS SET SWITCH FOR UPDATE TMAN0599
00720 0020 00 0 00637 TRA IDUP TMAN0600
* TMAN0601
00721 0074 00 4 00006 UPB TSX $BWRITE,4 REWRITE FILE TMAN0602
00722 0761 00 2 00000 EFA 0,2 .. TMAN0603
00723 3 00013 0 00772 PAR HOME,,DSZER .. TMAN0604
00724 3 00774 0 05360 PAR =1,,ERR .. TMAN0605
00725 3 00721 0 00753 PAR Y,,UPB .. TMAN0606
00726 3 00774 0 00774 PAR ERR,,ERR .. TMAN0607
00727 3 00000 0 00774 PAR ERR .. TMAN0608
00730 0020 00 0 00702 TRA QWB CLOSE THE FILE TMAN0609
* TMAN0610
00731 0074 00 4 00007 UPD TSX $GTDYTM,4 HERE ON UPDATE, GET DATE AND TIME TMAN0611
00732 0602 00 2 00011 SLW DAYTIM,2 .. SET NEW DATE AND TIME LAST MODIFIED TMAN0612
00733 -0130 00 0 00000 XCL TMAN0613
00734 -0620 00 2 00012 SLQ DATELU,2 SET NEW DATE LAST USED TMAN0614
00735 0074 00 4 00010 TSX $UPDFIL,4 UPDATE M.F.D. (FILE) ENTRY TMAN0615
00736 0761 00 0 00756 EFA MFDPTR .. TMAN0616
00737 0761 00 0 00754 EFA NAME .. TMAN0617
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 18
00740 0761 00 2 00005 EFA FPROBN,2 .. TMAN0618
00741 3 00774 0 00774 PAR ERR,,ERR .. TMAN0619
00742 0020 00 0 00711 TRA EXIT TMAN0620
* TMAN0621
00743 3 00746 0 00745 DRUMP PAR DRUMY,,DRUMN TMAN0622
00744 3 00751 0 00750 DISKP PAR DISKY,,DISKN TMAN0623
00745 0 00014 0 00775 DRUMY PZE DSDRUT,,DRMTSZ TMAN0624
00746 245164446463 DRUMN BCI 2,DRUMUT(FILE) TMAN0625
00750 0 04347 0 01011 DISKY PZE DSDSUT,,DSKTSZ+DCYTSZ TMAN0626
00751 243162426463 DISKN BCI 2,DISKUT(FILE) TMAN0627
00753 0 00000 0 00000 Y PZE TMAN0628
00754 NAME BSS 2 TMAN0629
00756 443326332433 MFDPTR BCI 2,M.F.D.(FILE) TMAN0630
00760 PUT BSS 9 TMAN0631
00771 0 00000 0 00000 INITS PZE SWITCH 0=INIT,NON-0=UPDATE TMAN0632
00772 0 00000 0 00002 HOME PZE IOSMEM TMAN0633
00773 0 00000 0 00000 IDX24 PZE XR STORAGE TMAN0634
* TMAN0635
00774 0000 00 0 00774 ERR HTR * BIG TROUBLE, CANT READ USAGE TABLES TMAN0636
TMAN0637
00775 DSDRUT BSS DRMTSZ DRUM TRACK USAGE TABLE TMAN0638
* TMAN0639
01011 DSDSUT BSS DSKTSZ DISK TRACK USAGE TABLE TMAN0640
05270 DSCYLT BSS DCYTSZ DISK CYLINDER USAGE TABLE TMAN0641
END TMAN0642
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 1
POST PROCESSOR ASSEMBLY DATA
5374 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
13 F 12
14 P 12
14 R 12
14 S 12
14 W 12
753 Y 643, 677, 725
22 DR 12
22 DW 12
774 ERR 657, 662, 664, 670, 676, 700, 701, 705, 706, 724, 726, 727, 741
72 GBA 173, 210, 333, 342, 357, 476, 502, 531, 602
102 GTA 202, 216, 351, 551
161 MPY 547
760 PUT 656, 661
673 QWA 677
702 QWB 705, 730
64 SBA 35, 37
65 SBB 36, 44
24 SBF 63
61 SBG 56
57 SBH 62
52 SBN 23
47 SBT 17
0 TMP 12
663 UPA 652
721 UPB 672, 725
731 UPD 710
53 AFST 12
20 CHNG 12
123 CLBT 215, 307, 335, 550
515 DLTN 470, 475
607 DSBD 152, 220, 466
12 DSC1 31, 32
14 DSC2 34
226 DSD1 233
611 DSMN 222, 243
610 DSND 543
265 DSRN 223, 224, 540
277 DSWB 300, 336, 344, 345
300 DSWC 337, 346
301 DSWD 332, 353
711 EXIT 742
365 FC10 325
374 FC50 326
3 FMAX 12
537 GDLZ
517 GDRM 151, 432
153 GDSK
113 GTAT 107, 111
114 GTAU 103
772 HOME 675, 704, 723
637 IDUP 720
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 2
POST PROCESSOR ASSEMBLY DATA
13 MODE 12
754 NAME 646, 650, 655, 664, 737
15 SBIT 176, 213, 347, 362, 534
42 SBLZ 57, 71
44 SBOK 70
70 SBTS 40, 41
71 SBTT 53, 54
66 SBX4 20, 42, 45
115 STBT 500, 504
26 WBIT
3 BOPEN 666
4 BREAD 673
751 DISKN 744
744 DISKP 635, 716
750 DISKY 744
516 DLCYL 474, 501
563 DLDRM 465
605 DLDRT 570, 575, 576, 601
504 DLEXT 604
221 DRDON 562
746 DRUMN 743
743 DRUMP 633, 714
745 DRUMY 743
612 DSBDR 561
302 DSBTN 207
305 DSCLF 214
310 DSCLZ 177
277 DSCWB 200, 201, 300, 305, 306
332 DSCYF 363
264 DSCYL 170, 171, 341, 366, 371, 374, 401, 405, 411, 415, 421
615 DSD11 630
613 DSDEC 164, 467, 571
632 DSDES 616, 620, 621, 627
276 DSDIG 232, 234, 237
272 DSDNT 227
220 DSDON
606 DSDRM 525, 556, 560
314 DSERR 521, 565, 574
215 DSFTR 364
433 DSGDI 430
427 DSGTU 140
261 DSLDI 433, 437
262 DSM25 162, 172, 340, 424
263 DSMOD 153, 544
304 DSMSK 115, 123
340 DSNXT 373, 403, 407, 413, 423, 426
311 DSNXV 350
511 DSSTK 160
303 DSTEM 154, 163, 545
331 DSTRT 311, 331
256 DSX12 131, 132, 250, 251, 317, 320, 444, 445, 505, 506
257 DSX34 133, 134, 252, 253, 321, 322, 446, 447, 507, 511
260 DSX56 135, 254, 323, 450
13 DSZER 26, 670, 675, 676, 704, 723
23 EFLAG 12
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 3
POST PROCESSOR ASSEMBLY DATA
421 FC250 327
404 FC50A 375
410 FC50B 376
414 FC50C 377
417 FC50D 400
402 FC50E 416
411 FC50F 420
424 FCALL 330
141 GDISK 443
550 GDRFT 536
636 IDCOM 634
773 IDX24 637, 640, 711, 712
13 ILOCK 12
771 INITS 636, 651, 671, 707, 717
27 .REL. 12
20 PRIME 12
23 PRIOR 12
5 RELOC 12
4 RMODE 12
67 SBONE 22
26 ACTLNG 12
25 AFENTY 12
16 ASGNSW 12
2 AUTHNO 12
12 AUTHOR 12
5 BCLOSE 702
0 BDISKM 12, 261, 436, 607
10 BDRUMM 12, 431, 517, 523, 563, 567, 612
20 BUFADR 12
20 BUFREC 12
6 BWRITE 721
23 CURREC 12
22 DADDRS 12
12 DATELU 12, 734
11 DAYTIM 12, 732
22 DCOUNT 12
70 DCYTSZ 12, 750, 5270
444 DELTRK 0
21 DINDEX 12
14 DRMTSZ 12, 745, 775
5270 DSCYLT 174, 203, 334, 343, 352, 503
775 DSDRUT 532, 552, 603, 745
1011 DSDSUT 211, 217, 360, 477, 750
4257 DSKTSZ 12, 750, 1011
250 DSRETU 514
2 DUSERS 12
13 ENAME1 12
14 ENAME2 12
15 ERCALL 12
11 ERCODE 12
10 ERNAME 12
7 ERRILC 12
7 FNAME1 12
10 FNAME2 12
6 FPRIOR 12
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 4
POST PROCESSOR ASSEMBLY DATA
5 FPROBN 12, 740
6 FPROGN 12
131 GETTRK 0
2 GTAFIL 663
7 GTDYTM 731
635 IDISKS 0
633 IDRUMS 0
12 IOCODE 12
2 IOSMEM 12, 772
23 IOTASK 12
14 LCOUNT 12
4 LIMITS 12
14 LNAME1 12
15 LNAME2 12
11 LPROBN 12
12 LPROGN 12
756 MFDPTR 654, 736
10 NDISKM 12, 425, 610
1 NDRUMM 12
14 NORECS 12
15 POINTR 12
0 PROBNO 12
1 PROGNO 12
16 QUEUE1 12
17 QUEUE2 12
20 QUEUE3 12
21 QUEUE4 12
22 QUEUE5 12
23 QUEUE6 12
24 QUEUE7 12
13 RCOUNT 12
16 REDREC 12
16 REDWRD 12
2 RNAME1 12
3 RNAME2 12
0 RPROBN 12
1 RPROGN 12
14 RWSTAT 12
0 SEARCH 653
24 SMTMP1 12
25 SMTMP2 12
1 STAFIL 660
53 TBLMIN 12
7 TDISKM 12, 151, 435, 465
10 TDRUMM 12, 522, 566
10 UPDFIL 735
716 UPDISK 0
714 UPDRUM 0
3 URCODE 12
21 WINDEX 12
17 WRTREC 12
17 WRTWRD 12
1 T111 508 ... DANIEL J. EDWARDS .... TRACK MANAGEMENT MODULE 02/22/71 1706.9 PAGE 5
POST PROCESSOR ASSEMBLY DATA
0 NO ERROR IN ABOVE ASSEMBLY.
DDAPB BCD 02/22/71 1720.2 14653 00000
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 1
00015 ENTRY .DINIT TO INITIALIZE DISK/DRUM CHANNELS DDAP0004
00111 ENTRY .DWAIT TO WAIT UNTIL PREVIOUS I/O COMPLETED DDAP0005
00052 ENTRY .REFER TO REFER CONTROL ON COMPLETED I/O DDAP0006
00056 ENTRY .SETER TO REFER CONTROL ON I/O ERROR FROM .DWAIT DDAP0007
00065 ENTRY .DRSET TO RESTART STRAT. MOD. AFTER LOST TRAPS DDAP0008
00070 ENTRY .FORCE TO FORCE TRAP IF NO I/O IN OPERATION DDAP0009
00132 ENTRY .WRFMT TO WRITE WITH FORMAT OPERATION DDAP0010
00147 ENTRY .WRHAO TO WRITE WITH HA1 OPERATION DDAP0011
00164 ENTRY .WRTRO TO WRITE WITH FULL TRACK OPERATION DDAP0012
00202 ENTRY .WRCYL TO WRITE WITH CYLINDER OPERATION DDAP0013
00132 ENTRY .DWRIT TO WRITE WITH SINGLE RECORD OPERATION DDAP0014
00232 ENTRY .DWRCK TO WRITE-CHECK PREVIOUS WRITE OPERATION DDAP0015
00147 ENTRY .RDHAO TO READ WITH HA1 OPERATION DDAP0016
00164 ENTRY .RDTRO TO READ WITH FULL TRACK OPERATION DDAP0017
00202 ENTRY .RDCYL TO READ WITH CYLINDER OPERATION DDAP0018
00147 ENTRY .DREAD TO READ WITH SINGLE RECORD OPERATION DDAP0019
00336 ENTRY .UNPAK TO UNPACK RECORD ADDRESS DDAP0020
00306 ENTRY .PACK TO PACK RECORD ADDRESS INTO 18 BITS DDAP0021
DDAP0022
EXTERN ALLSAV,ALLRST,WRTOPR,CMEXIT DDAP0023
DDAP0024
TRANSFER VECTOR
00000 214343622165 ALLSAV
00001 214343516263 ALLRST
00002 665163464751 WRTOPR
00003 234425673163 CMEXIT
00003 CHANLS EQU 3 NO. OF CHANNELS DDAP0025
00062 BSZ EQU 50 SIZE OF DRAIN BUFFER (FOR 'ION') DDAP0026
00001 B EQU 1 MEMORY B SWITCH ('0' FOR A, '1' FOR B) DDAP0027
00001 IOSMOD EQU 1 NON-ZERO IF I/O ADAPTER PART OF FILE SYSTEMDDAP0028
000004 DENB BOOL 4 DISK/DRUM ENABLE WORD, CHANNEL C ONLY DDAP0029
DDAP0030
DISK/DRUM MODULE TABLE DDAP0031
DDAP0032
00004 +000003001212 MODTBL OCT 3001212 ACCESS 0, MODULE 0, CHANNEL C DDAP0033
00005 +000003000112 OCT 3000112 ACCESS 1, MODULE 0, CHANNEL C DDAP0034
00006 +000003001201 OCT 3001201 ACCESS 0, MODULE 1, CHANNEL C DDAP0035
00007 +000003000101 OCT 3000101 ACCESS 1, MODULE 1, CHANNEL C DDAP0036
00010 +000003001204 OCT 3001204 ACCESS 0, MODULE 4, CHANNEL C DDAP0037
00011 +000003000104 OCT 3000104 ACCESS 1, MODULE 4, CHANNEL C DDAP0038
00012 +000003001205 OCT 3001205 ACCESS 0, MODULE 5, CHANNEL C DDAP0039
00013 +000003000105 OCT 3000105 ACCESS 1, MODULE 5, CHANNEL C DDAP0040
00014 -000003001202 OCT -3001202 ACCESS 0, MODULE 2, CHANNEL C DDAP0041
00010 HIMOD EQU *-MODTBL-1 HIGHEST LOGICAL MODULE NUMBER DDAP0042
DDAP0043
WHEN MACRO A,TFIND,LOC,OP,ADDR,TAG,DECR WHENEVER MACRO DDAP0044
IFF 1,TFIND,T DDAP0045
GENIF A,0,0,LOC,OP,ADDR,TAG,DECR, DDAP0046
IFF 1,TFIND,F DDAP0047
GENIF A,0,1,LOC,OP,ADDR,TAG,DECR, DDAP0048
WHEN END DDAP0049
DDAP0050
GENIF MACRO IF1,IF2,IF3,LOC,OP,ADDR,TAG,DECR DDAP0051
IFF IF1,IF2,IF3 DDAP0052
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 2
GENOP LOC,OP,ADDR,TAG,DECR, DDAP0053
GENIF END DDAP0054
DDAP0055
GENOP MACRO LOC,OP,ADDR,TAG,DECR GENERATE OPERATION DDAP0056
PMC ON DDAP0057
LOC OP ADDR,TAG,DECR DDAP0058
PMC OFF DDAP0059
GENOP END DDAP0060
DDAP0061
OVLBGN MACRO USED AT START OF SECTION TO BE OVERLAPPED DDAP0062
IFF IOSMOD .. OVERLAP IF IOSMOD .G. 0 DDAP0063
UNLIST .. SUSPEND LISTING OF OVERLAPPED SECTION DDAP0064
IFF IOSMOD .. DDAP0065
OVLORG SET * .. SAVE CURRENT LOCATION COUNTER DDAP0066
OVLBGN END DDAP0067
DDAP0068
OVLEND MACRO USED AT END OF SECTION TO BE OVERLAPPED DDAP0069
IFF IOSMOD .. DDAP0070
ORG OVLORG .. RE-ORIGIN AT SAVED LOCATION COUNTER DDAP0071
IFF IOSMOD .. DDAP0072
LIST .. RESTORE LISTING DDAP0073
OVLEND END DDAP0074
DDAP0075
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 3
DDAP0077
.DINIT .... INITIALIZATION ENTRY FOR DISK/DRUM ADAPTER DDAP0078
DDAP0079
00015 0760 00 0 00016 .DINIT LMTM INITIALIZE DISK/DRUM CHANNELS DDAP0080
00016 -0500 60 4 00001 CAL* 1,4 GET LOCATION OF COMMON ENABLE WORD DDAP0081
00017 0621 00 0 00706 STA ENABLE .. AND SAVE IT DDAP0082
00020 -0774 00 6 00001 AXC 1,6 INITIALIZE CHANNEL POINTER DDAP0083
00021 0774 00 7 00003 AXT CHANLS,7 NO. OF CHANNELS TO IR7 DDAP0084
00022 0441 00 0 00707 LDI DTRAP. TRA ON TRAP TO SI DDAP0085
00023 0560 00 0 00666 LDQ DINTR. TCH ON INTERRUPT TO MQ DDAP0086
00024 -0500 00 0 00705 DI1 CAL DENBWD SET UP DISK/DRUM CHANNELS DDAP0087
00025 0771 00 7 00003 ARS CHANLS,7 .. DDAP0088
00026 0760 00 0 00001 LBT .. DDAP0089
00027 0020 00 0 00044 TRA DI2 .. SKIP IF NO DISK/DRUM ON THIS CHANNEL DDAP0090
00030 -0500 00 6 00752 CAL CTIL,6 .. DDAP0091
00031 WHEN B,T,,SEA,,,,, .. DDAP0092
00031 -0761 00 0 00041 SEA ,, DDAP0092.003
00032 0737 00 5 00000 PAC 0,5 .. SET UP TRAP LOCATIONS DDAP0093
00033 0600 00 5 00000 STZ 0,5 .. DDAP0094
00034 0604 00 5 00001 STI 1,5 .. DDAP0095
00035 -0737 00 5 00000 PDC 0,5 .. SET UP CHANNEL INTERRUPT LOCATIONS DDAP0096
00036 0600 00 5 00000 STZ 0,5 .. DDAP0097
00037 -0600 00 5 00001 STQ 1,5 .. DDAP0098
00040 WHEN B,T,,SEB,,,,, .. DDAP0099
00040 -0761 00 0 00042 SEB ,, DDAP0099.003
00041 0522 00 6 00741 XEC RICOP,6 .. RESET THIS CHANNEL DDAP0100
00042 -0774 00 5 00664 AXC SETUP,5 .. AND DDAP0101
00043 0522 00 6 00744 XEC RSCOP,6 .. SET CHANNEL IN 6-BIT MODE DDAP0102
00044 -2 00001 7 00046 DI2 TNX *+2,7,1 .. DDAP0103
00045 1 77777 6 00024 TXI DI1,6,-1 .. DDAP0104
00046 -0500 00 0 00705 CAL DENBWD ADD DISK/DRUM ENABLE TO COMMON ENABLE WORD DDAP0105
00047 -0602 60 0 00706 ORS* ENABLE .. TO COMMON ENABLE WORD DDAP0106
00050 0564 60 0 00706 ENB* ENABLE ENABLE FOR ALL TRAPS DDAP0107
00051 0020 00 4 00002 TRA 2,4 AND RETURN DDAP0108
DDAP0109
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 4
DDAP0111
00052 -0500 00 4 00001 .REFER CAL 1,4 ENTRY TO REFER ALL TRAPS TO USER DDAP0112
00053 0621 00 0 00740 STA USRTRP .. AT LOCATION SPECIFIED BY 1,4 DDAP0113
00054 0621 00 0 00735 STA REFRSW .. DDAP0114
00055 0020 00 4 00002 TRA 2,4 DDAP0115
DDAP0116
00056 -0500 00 4 00001 .SETER CAL 1,4 ENTRY TO SET USER ENTRY ON DISK/DRUM ERROR DDAP0117
00057 -0320 00 0 01067 ANA =O77777 .. GET ADDRESS OF USER ERROR ROUTINE DDAP0118
00060 -0100 00 0 00062 TNZ *+2 .. SKIP IF ADDRESS PROVIDED DDAP0119
00061 -0500 00 0 01070 CAL =O400001 .. OTHERWISE SUBSTITUTE TRA 1,4 DDAP0120
00062 0621 00 0 00741 STA UERROR .. SET UP CALL TO USER DDAP0121
00063 0625 00 0 00741 STT UERROR .. ON ALL DISK/DRUM ERROS DDAP0122
00064 0020 00 4 00002 TRA 2,4 DDAP0123
DDAP0124
00065 0600 00 0 00724 .DRSET STZ BUSY BLAST OUT BUSY FLAG DDAP0125
00066 -0500 00 0 01064 CAL =2 ERROR CALL IF TRAP EXPECTED BY STRAT. MOD. DDAP0126
00067 0020 00 0 00073 TRA FRC1 .. DDAP0127
DDAP0128
00070 0520 00 0 00724 .FORCE ZET BUSY ENTRY TO FORCE TRAP IF CHANNELS INACTIVE DDAP0129
00071 0020 00 4 00001 TRA 1,4 RETURN IF CHANNELS BUSY DDAP0130
00072 -0754 00 0 00000 PXD ,0 NO ERRORS DDAP0131
00073 -0520 00 0 00735 FRC1 NZT REFRSW IS USER INTERRUPT PROCEDURE DEFINED DDAP0132
00074 0020 00 4 00001 TRA 1,4 NO, RETURN DDAP0133
00075 0564 00 0 01062 ENB =0 YES, DISABLE ALL TRAPS DDAP0134
00076 0602 00 0 00736 SLW FRCTMP SAVE ERROR FLAG DDAP0135
00077 -0625 00 0 00734 STL TRAPSW INDICATE TRAP IN PROCESS DDAP0136
00100 0634 00 4 00105 SXA FRCIR4,4 SAVE IR4 DDAP0137
00101 0074 00 4 00000 TSX ALLSAV,4 SAVE REST OF MACHINE CONDITIONS DDAP0138
00102 0074 00 4 00740 TSX USRTRP,4 GO TO USER INTERRUPT PROCEDURE DDAP0139
00103 3 00000 0 00736 PTH FRCTMP .. ERROR FLAG DDAP0140
00104 0074 00 4 00001 TSX ALLRST,4 RESTORE MACHINE CONDITIONS DDAP0141
00105 0774 00 4 00000 FRCIR4 AXT **,4 .. DDAP0142
00106 0600 00 0 00734 STZ TRAPSW CLEAR TRAP-IN-PROCESS INDICATOR DDAP0143
00107 0564 60 0 00706 ENB* ENABLE REENABLE ALL TRAPS DDAP0144
00110 0020 00 4 00001 TRA 1,4 AND RETURN DDAP0145
DDAP0146
* * * * * * * * * * * * * * * * * * * * * * * * DDAP0147
DDAP0148
00111 0074 00 7 00115 .DWAIT TSX DWAIT,7 ENTRY TO WAIT UNTIL I/O COMPLETED DDAP0149
00112 -0520 00 0 00734 NZT TRAPSW RESTORE STATUS OF ENABLE REGISTER DDAP0150
00113 0564 60 0 00706 ENB* ENABLE IF NECESSARY DDAP0151
00114 0020 00 4 00001 TRA 1,4 RETURN WHEN DONE DDAP0152
DDAP0153
00115 -0520 00 0 00734 DWAIT NZT TRAPSW IS ROUTINE CALLED DURING TRAP-TIME DDAP0154
00116 0564 60 0 00706 ENB* ENABLE NO, MAKE SURE TRAPS CAN BE TAKEN DDAP0155
00117 0520 00 0 00724 ZET BUSY LOOP UNTIL CHANNEL IS FREE DDAP0156
00120 0020 00 0 00117 TRA *-1 .. DDAP0157
00121 0564 00 0 01062 ENB =0 NOW DISABLE ALL TRAPS DURING FOLLOWING OPERDDAP0158
00122 -0520 00 0 00730 NZT ERROR WAS THERE AN ERROR DDAP0159
00123 0020 00 7 00001 TRA 1,7 NO, RETURN DDAP0160
00124 0634 00 4 00130 SXA DWAITX,4 YES, SAVE USER'S IR4 DDAP0161
00125 -0500 00 0 00730 CAL ERROR PICK UP ERROR FLAG DDAP0162
00126 0600 00 0 00730 STZ ERROR AND RESET ERROR DDAP0163
00127 0074 00 4 00741 TSX UERROR,4 CALL USER'S ERROR ROUTINE (FLAG IN AC) DDAP0164
00130 0774 00 4 00000 DWAITX AXT **,4 RESTORE USER'S IR4 DDAP0165
00131 0020 00 7 00001 TRA 1,7 AND RETURN TO CALLER DDAP0166
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 5
DDAP0168
00132 OVLBGN DDAP0169
DDAP0230
00132 0074 00 7 00115 .DWRIT TSX DWAIT,7 ENTRY TO WRITE SINGLE RECORD DDAP0231
00133 0074 00 7 00247 TSX CVTRK,7 CONVERT USER RECORD ADDRESS DDAP0232
00134 -0765 00 0 00014 LGR 12 LAST TWO CHARACTERS ALREADY IN MQ DDAP0233
00135 0441 00 0 00676 LDI DSEK SET UP SEEK ORDER DDAP0234
00136 0043 00 0 00000 OAI ORD-ORD-ACC-MOD-TRK-TRK, TRK-TRK----- DDAP0235
00137 0604 00 0 00710 STI SEEKW .. DDAP0236
00140 -0600 00 0 00711 STQ SEEKW+1 .. DDAP0237
00141 0441 00 0 00677 LDI DVSR SET UP SINGLE RECORD ORDER DDAP0238
00142 0043 00 0 00000 OAI ORD-ORD-ACC-MOD-REC-REC, REC-REC-REC-REC---DDAP0239
00143 0604 00 0 00712 STI R.WORD .. DDAP0240
00144 -0600 00 0 00713 STQ R.WORD+1 .. DDAP0241
00145 -0500 00 0 00673 CAL CTLW LOAD WRITE COMMAND DDAP0242
00146 0020 00 0 00163 TRA SETCOM GO SET UP FOR WRITE OPERATION DDAP0243
DDAP0244
00147 OVLBGN DDAP0245
DDAP0292
00147 0074 00 7 00115 .DREAD TSX DWAIT,7 ENTRY TO READ SINGLE RECORD DDAP0293
00150 0074 00 7 00247 TSX CVTRK,7 CONVERT USER RECORD ADDRESS DDAP0294
00151 -0765 00 0 00014 LGR 12 LAST TWO CHARACTERS ALREADY IN MQ DDAP0295
00152 0441 00 0 00676 LDI DSEK SET UP SEEK ORDER DDAP0296
00153 0043 00 0 00000 OAI ORD-ORD-ACC-MOD-TRK-TRK, TRK-TRK----- DDAP0297
00154 0604 00 0 00710 STI SEEKW .. DDAP0298
00155 -0600 00 0 00711 STQ SEEKW+1 .. DDAP0299
00156 0441 00 0 00677 LDI DVSR SET UP SINGLE RECORD ORDER DDAP0300
00157 0043 00 0 00000 OAI ORD-ORD-ACC-MOD-REC-REC, REC-REC-REC-REC---DDAP0301
00160 0604 00 0 00712 STI R.WORD .. DDAP0302
00161 -0600 00 0 00713 STQ R.WORD+1 .. DDAP0303
00162 -0500 00 0 00672 CAL CTLR LOAD READ COMMAND DDAP0304
DDAP0305
00163 0602 00 0 00614 SETCOM SLW CTLR.W SET READ OR WRITE COMMAND IN CHANNEL PROG. DDAP0306
00164 -0500 00 4 00001 CAL 1,4 EFFECTIVE ADDRESS (EFA PTR,T) DDAP0307
00165 0625 00 0 00166 STT *+1 COMPUTE EFFECTIVE ADDRESS DDAP0308
00166 0756 00 0 00000 PCA 0,** .. DDAP0309
00167 0361 00 4 00001 ACL 1,4 .. DDAP0310
00170 0737 00 6 00000 PAC 0,6 -POINTER TO IR6 DDAP0311
00171 -0774 00 5 00000 AXC 0,5 DDAP0312
00172 0441 00 6 00001 GETCM1 LDI 1,6 GET FIRST OR NEXT COMMAND FROM USER'S LIST DDAP0313
00173 -0054 00 700000 LFT 700000 IS IT 'IOD' (PREFIX ZERO) DDAP0314
00174 1 77777 6 00205 TXI GETCM3,6,-1 NO, GO SET UP CPYP FOR THIS COMMAND DDAP0315
00175 3 00000 5 00200 TXH GETCM2,5,0 YES, SKIP IF AT LEAST ONE COMMAND FOUND DDAP0316
00176 0600 00 5 00615 STZ COPYPR,5 OTHERWISE ZERO FIRST COPY COMMAND DDAP0317
00177 1 77777 5 00200 TXI GETCM2,5,-1 AND BUMP POINTER DDAP0318
00200 -0500 00 0 00675 GETCM2 CAL CPYD CHANGE LAST CPYP TO CPYD COMMAND DDAP0319
00201 -0602 00 5 00614 ORS COPYPR-1,5 .. DDAP0320
00202 -0500 00 0 00667 CAL TWT SET UP TWT AT END OF COPY COMMANDS DDAP0321
00203 0602 00 5 00615 SLW COPYPR,5 .. DDAP0322
00204 0020 00 0 00225 TRA STCHAN GO START UP DISK/DRUM CHANNEL PROGRAM DDAP0323
DDAP0324
00205 -0056 00 200000 GETCM3 LNT 200000 IS COMMAND 'IOP' (PTW) DDAP0325
00206 0020 00 0 00213 TRA GETCM4 NO, SKIP DDAP0326
00207 0445 00 0 01107 RIS =O700000600000 YES DDAP0327
00210 0442 00 0 00674 OSI CPYP .. CHANGE TO CPYP DDAP0328
00211 0604 00 5 00615 STI COPYPR,5 AND SAVE IN CHANNEL PROGRAM DDAP0329
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 6
00212 1 77777 5 00172 TXI GETCM1,5,-1 GO BACK TO CHECK FOR NEXT COMMAND DDAP0330
DDAP0331
00213 -0046 00 0 00000 GETCM4 PIA HERE FOR 'ION' (PON) DDAP0332
00214 -0734 00 7 00000 PDX 0,7 WORD COUNT TO IR7 DDAP0333
00215 -2 00062 7 00221 GETCM5 TNX GETCM6,7,BSZ SKIP IF .LE. BSZ DDAP0334
00216 -0500 00 0 00670 CAL DRN1 OTHERWISE, DRAIN OFF 'BSZ' WORDS DDAP0335
00217 0602 00 5 00615 SLW COPYPR,5 .. DDAP0336
00220 1 77777 5 00215 TXI GETCM5,5,-1 CONTINUE UNTIL WORD COUNT EXHAUSTED DDAP0337
DDAP0338
00221 -0634 00 7 00671 GETCM6 SXD DRN2,7 COPY LAST BLOCK INTO DRAIN BUFFER ALSO DDAP0339
00222 -0500 00 0 00671 CAL DRN2 .. DDAP0340
00223 0602 00 5 00615 SLW COPYPR,5 .. INTO CHANNEL PROGRAM DDAP0341
00224 1 77777 5 00172 TXI GETCM1,5,-1 GO BACK TO CHECK FOR NEXT COMMAND DDAP0342
DDAP0343
00225 -0625 00 0 00724 STCHAN STL BUSY SET CHANNEL BUSY SWITCH DDAP0344
00226 0 00000 0 00576 RSCHN1 *** SKTRAK START UP DISK DRUM CHANNEL PROGRAM DDAP0345
00227 -0520 00 0 00734 NZT TRAPSW TEST IF CALL MADE DURING TRAP DDAP0346
00230 0564 60 0 00706 ENB* ENABLE NO, RE-ENABLE TRAPS DDAP0347
00231 0020 00 4 00003 TRA 3,4 AND RETURN DDAP0348
DDAP0349
* * * * * * * * * * * * * * * * * * * * * * * * DDAP0350
DDAP0351
00232 0074 00 7 00115 .DWRCK TSX DWAIT,7 ENTRY TO WRITE-CHECK PREVIOUS OPERATION DDAP0352
00233 -0500 00 0 00673 CAL CTLW SET UP WRITE COMMAND DDAP0353
00234 0602 00 0 00614 SLW CTLR.W .. DDAP0354
00235 0441 00 0 00712 LDI R.WORD ORD-ORD-ACC-MOD-TRK-TRK, TRK-TRK----- DDAP0355
00236 -0057 00 777700 RIL 777700 MASK OUT PREVIOUS ORDER CODE DDAP0356
00237 0442 00 0 00702 OSI DWRC SET WRITE-CHECK ORDER DDAP0357
00240 0604 00 0 00712 STI R.WORD DDAP0358
00241 -0625 00 0 00731 STL RECAL INSURE NO RECALIBRATION DDAP0359
00242 -0625 00 0 00724 STL BUSY SET CHANNEL BUSY SWITCH DDAP0360
00243 0 00000 0 00601 RSCHN2 *** CKTRAK START CHANNEL PROGRAM TO WRITE-CHECK DDAP0361
00244 -0520 00 0 00734 NZT TRAPSW AS IT WAS IN THE BEGINNING, DDAP0362
00245 0564 60 0 00706 ENB* ENABLE IS NOW ... DDAP0363
00246 0020 00 4 00001 TRA 1,4 AND RETURN DDAP0364
DDAP0365
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 7
DDAP0367
00247 0500 60 4 00001 CVTRK CLA* 1,4 ROUTINE TO SET UP TRACK ADDRESS DDAP0368
00250 0120 00 0 00254 TPL CVTRK1 SKIP IF RECORD ADDRESS ALREADY CONVERTED DDAP0369
00251 0634 00 4 00253 SXA CVTX4,4 OTHERWISE, SAVE USER'S IR4 DDAP0370
00252 0074 00 4 00340 TSX UNPACK,4 AND CONVERT RECORD ADDRESS DDAP0371
00253 0774 00 4 00000 CVTX4 AXT **,4 RESTORE USER'S IR4 DDAP0372
DDAP0373
00254 -0130 00 0 00000 CVTRK1 XCL TRACK ADDRESS TO MQ DDAP0374
00255 -0754 00 0 00000 ZAC DDAP0375
00256 -0763 00 0 00006 LGL 6 PICK UP LOGICAL MODULE NUMBER DDAP0376
00257 0737 00 5 00000 PAC 0,5 -LOGICAL MODULE NO. TO IR5 DDAP0377
00260 1 00012 5 00261 TXI *+1,5,10 SUBSTITUTE '0' FOR OCTAL '12' DDAP0378
00261 -3 00000 5 00264 TXL CVTRK2,5,0 .. SKIP IF -MODNO+12= 0 DDAP0379
00262 1 77766 5 00263 TXI *+1,5,-10 .. DDAP0380
00263 -3 77767 5 00303 TXL BADREC,5,-HIMOD-1 ERROR IF MODNO .G. HIMOD DDAP0381
00264 -0765 00 0 00006 CVTRK2 LGR 6 REPLACE LOGICAL MODULE NUMBER DDAP0382
00265 -0773 00 0 00006 RQL 6 .. AT END OF RECORD ADDRESS DDAP0383
00266 0500 00 5 00004 CLA MODTBL,5 PICK UP PHYSICAL MODULE AND CHANNEL NO. DDAP0384
00267 0120 00 0 00271 TPL *+2 SKIP IF DISK UNIT DDAP0385
00270 -0625 00 0 00731 STL RECAL HERE IF DRUM, SET FOR NO RECALIBRATION DDAP0386
00271 -0737 00 5 00000 PDC 0,5 -CHANNEL NO. TO IR5 DDAP0387
00272 -0320 00 0 01066 ANA =O7777 NECESSARY ONLY TO PREVENT AC OVERFLOW DDAP0388
00273 -0763 00 0 00030 LGL 24 BRING HIGH ORDER 4 BITS OF RECORD ADDRESS DDAP0389
00274 -0600 00 0 00727 STQ RECSAV SAVE LOW-ORDER RECORD ADDRESS DDAP0390
00275 0560 00 5 00744 LDQ RSCOP,5 GET RSC OPERATION FOR THIS CHANNEL DDAP0391
00276 -0620 00 0 00226 SLQ RSCHN1 .. DDAP0392
00277 -0620 00 0 00243 SLQ RSCHN2 .. DDAP0393
00300 0636 00 5 00725 SCA CHANNO,5 SAVE CHANNEL NUMBER DDAP0394
00301 0560 00 0 00727 LDQ RECSAV RELOAD LOW-ORDER RECORD ADDRESS DDAP0395
00302 0020 00 7 00001 TRA 1,7 RETURN TO READ OR WRITE SET UP ROUTINE DDAP0396
DDAP0397
00303 -0520 00 0 00734 BADREC NZT TRAPSW AND EVER SHALL BE, DDAP0398
00304 0564 60 0 00706 ENB* ENABLE WORLD WITHOUT END (AMEN) DDAP0399
00305 0020 60 4 00002 TRA* 2,4 BAD RECORD ADDRESS, TAKE ERROR RETURN DDAP0400
DDAP0401
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 8
DDAP0403
.PACK/.UNPAK ... PACK AND UNPACK TRACK AND RECORD ADDRESSDDAP0404
DDAP0405
00306 -0774 00 5 00000 .PACK AXC 0,5 ROUTINE TO PACK LOGICAL RECORD ADDRESS DDAP0406
00307 0520 00 0 00734 ZET TRAPSW IS A TRAP CURRENTLY IN PROCESS DDAP0407
00310 -0774 00 5 00001 AXC 1,5 IF SO, SET TO USE TMP+1 FOR TEMP STORAGE DDAP0408
00311 -0500 60 4 00001 CAL* 1,4 CONVERT '12' TO OCTAL '00' IN RECORD ADDR. DDAP0409
00312 0400 00 0 01073 ADD =H666666 .. 12 GOES TO 20 (OCTAL) DDAP0410
00313 -0320 00 0 01100 ANA =H++++++ .. SAVE 20S ONLY DDAP0411
00314 0771 00 0 00001 ARS 1 .. 20S TO 10S DDAP0412
00315 0602 00 5 00722 SLW TMP,5 .. SAVE 10S DDAP0413
00316 0771 00 0 00002 ARS 2 .. 10S TO 02S DDAP0414
00317 -0501 00 5 00722 ORA TMP,5 .. 02S TO 12S IN AC DDAP0415
00320 0322 60 4 00001 ERA* 1,4 .. MASK OUT ALL 12S IN RECORD ADDRESS DDAP0416
00321 -0130 00 0 00000 XCL BCD RECORD ADDRESS TO MQ DDAP0417
00322 -0773 00 0 00036 RQL 30 MOVE RECORD BIT TO FIRST CHARACTER POSITIONDDAP0418
00323 0774 00 6 00006 AXT 6,6 DDAP0419
00324 0600 00 5 00722 STZ TMP,5 DDAP0420
00325 -0754 00 0 00000 PAC1 ZAC CONVERT RECORD (RMTTTT) TO BINARY (18 BITS)DDAP0421
00326 -0763 00 0 00003 LGL 3 .. DDAP0422
00327 0401 00 5 00722 ADM TMP,5 .. DDAP0423
00330 -0763 00 0 00003 LGL 3 .. DDAP0424
00331 0401 00 5 00722 ADM TMP,5 .. DDAP0425
00332 0361 00 5 00722 ACL TMP,5 .. DDAP0426
00333 0602 00 5 00722 SLW TMP,5 .. DDAP0427
00334 2 00001 6 00325 TIX PAC1,6,1 .. DDAP0428
00335 0020 00 4 00002 TRA 2,4 AND RETURN (PACKED ADDRESS IN AC) DDAP0429
DDAP0430
00336 0500 60 4 00001 .UNPAK CLA* 1,4 ROUTINE TO UNPACK TRACK ADDRESS DDAP0431
00337 1 77777 4 00340 TXI UNPACK,4,-1 .. FROM 18-BIT BINARY FORMAT DDAP0432
DDAP0433
00340 -0774 00 5 00000 UNPACK AXC 0,5 ASSUME NOT IN TRAP MODE DDAP0434
00341 0520 00 0 00734 ZET TRAPSW IS A TRAP CURRENTLY IN PROCESS DDAP0435
00342 -0774 00 5 00001 AXC 1,5 IF SO, SET TO USE TMP+1 FOR TEMP STORAGE DDAP0436
00343 -0120 00 0 00355 TMI UPAC3 SKIP IF MZE RECNO,,MODNO DDAP0437
00344 -0130 00 0 00000 XCL DDAP0438
00345 0774 00 6 00044 AXT 36,6 OTHERWISE ASSUME 18-BIT FORMAT DDAP0439
00346 0600 00 5 00722 STZ TMP,5 DDAP0440
00347 -0754 00 0 00000 UPAC2 ZAC CONVERT TRACK TO BCD FORMAT DDAP0441
00350 0221 00 0 01065 DVP =10 .. DDAP0442
00351 0767 00 6 00044 ALS 36,6 .. DDAP0443
00352 -0602 00 5 00722 ORS TMP,5 .. DDAP0444
00353 2 00006 6 00347 TIX UPAC2,6,6 .. DDAP0445
00354 0020 00 0 00377 TRA UPAC5 SKIP TO RETURN TRACK IN LAC DDAP0446
DDAP0447
00355 -0734 00 6 00000 UPAC3 PDX 0,6 HERE FOR MZE RECNO,,MODNO DDAP0448
00356 0560 00 0 01062 LDQ =0 .. MODNO SAVED IN IR6 DDAP0449
00357 -0765 00 0 00001 LGR 1 CONVERT RECORD BIT DDAP0450
00360 0767 00 0 00005 ALS 5 .. TO 6-BIT CHARACTER DDAP0451
00361 -0765 00 0 00005 LGR 5 .. DDAP0452
00362 -0320 00 0 01067 ANA =O77777 .. GET TRACK ADDRESS ALONE IN AC DDAP0453
00363 -0130 00 0 00000 XCL .. DDAP0454
00364 0044 00 0 00000 PAI .. SAVE RECORD CHARACTER IN SI DDAP0455
00365 -0754 00 6 00000 PXD 0,6 MODULE NUMBER TO AC DECREMENT DDAP0456
00366 0767 00 0 00006 ALS 6 PLACE IN SECOND CHARACTER POSITION DDAP0457
00367 0043 00 0 00000 OAI ADD MODULE CHAR. TO RECORD CHAR. DDAP0458
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 9
00370 0604 00 5 00722 STI TMP,5 SAVE RECORD AND MODULE CHARACTERS DDAP0459
00371 0774 00 6 00030 AXT 24,6 DDAP0460
00372 -0754 00 0 00000 UPAC4 ZAC CONVERT TRACK ADDRESS TO BCD FORMAT DDAP0461
00373 0221 00 0 01065 DVP =10 .. DDAP0462
00374 0767 00 6 00030 ALS 24,6 .. DDAP0463
00375 -0602 00 5 00722 ORS TMP,5 .. DDAP0464
00376 2 00006 6 00372 TIX UPAC4,6,6 .. DDAP0465
00377 0560 00 5 00722 UPAC5 LDQ TMP,5 PICK UP UNPACKED TRACK ADDRESS DDAP0466
00400 -0773 00 0 00006 RQL 6 MOVE RECORD CHARACTER TO LAST POSITION DDAP0467
00401 -0130 00 0 00000 XCL CONVERT '00' TO '12' OCTAL DDAP0468
00402 0044 00 0 00000 PAI .. SAVE COPY OF TRACK ADDRESS IN SI DDAP0469
00403 -0501 00 0 01101 ORA =H------ .. 00S TO 40S (OCTAL) DDAP0470
00404 0402 00 0 01071 SUB =H111111 .. 40S TO 37S DDAP0471
00405 -0320 00 0 01100 ANA =H++++++ .. 37S TO 20S DDAP0472
00406 0771 00 0 00001 ARS 1 .. 20S TO 10S DDAP0473
00407 0602 00 5 00722 SLW TMP,5 .. SAVE 10S DDAP0474
00410 0771 00 0 00002 ARS 2 .. 10S TO 02S DDAP0475
00411 -0501 00 5 00722 ORA TMP,5 .. 02S TO 12S DDAP0476
00412 0043 00 0 00000 OAI .. REPLACE 00S WITH 12S IN SI DDAP0477
00413 -0046 00 0 00000 PIA RETURN CONVERTED TRACK ADDRESS IN AC DDAP0478
00414 0020 00 4 00001 TRA 1,4 .. DDAP0479
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 10
DDAP0481
DCTRAP ...... HERE ON DATA CHANNEL TRAP FROM DISK OR DRUMDDAP0482
DDAP0483
00415 DCTRAP WHEN B,T,,SEB,,,,, DDAP0484
00415 -0761 00 0 00042 SEB ,, DDAP0484.003
00416 0564 00 0 01062 ENB =0 INSURE ALL TRAPS DISABLED DDAP0485
00417 0634 00 4 00466 SXA DCTIR4,4 SAVE IR4 DDAP0486
00420 0604 00 0 00732 STI DCTSI AND SENSE INDICATORS DDAP0487
00421 0535 00 4 00725 LAC CHANNO,4 PICK UP NO. OF CHANNEL CAUSING TRAP DDAP0488
00422 WHEN B,T,,SEA,,,,, DDAP0489
00422 -0761 00 0 00041 SEA ,, DDAP0489.003
00423 0441 60 4 00752 LDI* CTIL,4 PICK UP TRAP RETURN ADDRESS AND FLAGS DDAP0490
00424 WHEN B,T,,SEB,,,,, DDAP0491
00424 -0761 00 0 00042 SEB ,, DDAP0491.003
00425 0604 00 0 00733 STI DCTRTN SAVE TRAP RETURN LOCATION DDAP0492
00426 -0520 00 0 00726 NZT DERRSW WAS THERE AN ERROR ON THIS CHANNEL DDAP0493
00427 0020 00 0 00447 TRA DCTOK NO, SKIP TO SET UP COMPLETION INTERRUPT DDAP0494
00430 0600 00 0 00726 STZ DERRSW YES, RESET ERROR SWITCH DDAP0495
00431 0534 00 4 00731 LXA RECAL,4 GET RECALIBRATION COUNT DDAP0496
00432 3 00003 4 00470 TXH CRUMP,4,3 GIVE UP IF TOO MANY TRACK ERRORS DDAP0497
00433 1 00001 4 00434 TXI *+1,4,1 OTHERWISE UPDATE ERROR COUNT DDAP0498
00434 0634 00 4 00731 SXA RECAL,4 .. AND TRY AGAIN TO RECALIBRATE DDAP0499
00435 0441 00 0 00710 LDI SEEKW GET MODULE NO. FROM SEEK WORD DDAP0500
00436 0445 00 0 01110 RIS =O777700007777 DDAP0501
00437 0442 00 0 01075 OSI =O101200001113 DDAP0502
00440 0604 00 0 00714 STI SEEKCE SET UP ORDER TO SEEK CE TRACK DDAP0503
00441 0445 00 0 01110 RIS =O777700007777 DDAP0504
00442 0442 00 0 01076 OSI =O101200001212 DDAP0505
00443 0604 00 0 00716 STI SEEK0. SET UP ORDER TO SEEK TRACK ZERO DDAP0506
00444 0535 00 4 00725 LAC CHANNO,4 RELOAD -CHANNEL NO. TO IR4 DDAP0507
00445 0522 00 4 00747 XEC STCOP,4 AND START UP RECALIBRATION PROGRAM DDAP0508
00446 0020 00 0 00464 TRA DCTXIT AND EXIT FROM TRAP DDAP0509
DDAP0510
00447 0600 00 0 00731 DCTOK STZ RECAL HERE FOR SUCCESSFUL COMPLETION OF I/O DDAP0511
00450 0600 00 0 00724 STZ BUSY RESET CHANNEL BUSY SWITCH DDAP0512
00451 -0520 00 0 00735 NZT REFRSW IS A COURTESY CALL REQUIRED DDAP0513
00452 0020 00 0 00464 TRA DCTXIT NO, EXIT FROM TRAP DDAP0514
00453 0074 00 4 00000 TSX ALLSAV,4 YES, SAVE REST OF MACHINE CONDITIONS DDAP0515
00454 0441 00 0 01062 LDI =0 LOAD SUCCESSFUL COMPLETION FLAG FOR USER DDAP0516
DDAP0517
00455 0604 00 0 00737 DCTINT STI RTNFLG SAVE ERROR FLAG IF ANY FOR USER DDAP0518
00456 0600 00 0 00730 STZ ERROR RESET ERROR FLAG IF ANY DDAP0519
00457 -0625 00 0 00734 STL TRAPSW INDICATE SIMULATED TRAP IN PROGRESS DDAP0520
00460 0074 00 4 00740 TSX USRTRP,4 REFLECT INTERRUPT TO USER PROGRAM DDAP0521
00461 3 00000 0 00737 PTH RTNFLG .. WITH ERROR FLAGS IF ANY DDAP0522
00462 0600 00 0 00734 STZ TRAPSW RESET TRAP SWITCH DDAP0523
00463 0074 00 4 00001 TSX ALLRST,4 RESTORE SAVED MACHINE CONDITIONS DDAP0524
DDAP0525
00464 0441 00 0 00732 DCTXIT LDI DCTSI HERE TO RETURN FROM TRAP DDAP0526
00465 0074 00 4 00003 TSX CMEXIT,4 EXIT THROUGH COMMON EXIT ROUTINE DDAP0527
00466 0774 00 4 00000 DCTIR4 AXT **,4 .. DDAP0528
00467 0 00000 0 00733 DCTRTN .. DDAP0529
DDAP0530
00470 0600 00 0 00731 CRUMP STZ RECAL HERE AFTER UNSUCCESSFUL ATTEMPT TO READ DDAP0531
00471 0600 00 0 00724 STZ BUSY .. OR WRITE ON DISK/DRUM, RESET BUSY SWITCHDDAP0532
00472 0074 00 4 00000 TSX ALLSAV,4 SAVE REST OF MACHINE CONDITIONS DDAP0533
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 11
00473 0441 00 0 00614 LDI CTLR.W PICK UP READ OR WRITE COMMAND DDAP0534
00474 -0500 00 0 01103 CAL =HREAD SET UP TYPE OF ERROR (READ OR WRITE) DDAP0535
00475 0056 00 200000 RNT 200000 .. CTLR HAS '2' IN TAG DDAP0536
00476 -0500 00 0 01105 CAL =HWRITE .. DDAP0537
00477 0602 00 0 00760 SLW ERRCM1+2 .. DDAP0538
00500 -0500 00 0 00725 CAL CHANNO GET CHANNEL NUMBER (1-8) DDAP0539
00501 -0501 00 0 01102 ORA =HNNEL + CONVERT TO CHANNEL LETTER 'NNEL X' DDAP0540
00502 0602 00 0 00763 SLW ERRCM1+5 .. INTO ERROR COMMENT DDAP0541
00503 0774 00 1 00002 AXT 2,1 DDAP0542
00504 0560 00 1 00714 CDCT1 LDQ R.WORD+2,1 CONVERT OCTAL '12' TO OCTAL '00' DDAP0543
00505 0774 00 2 00006 AXT 6,2 .. DDAP0544
00506 -0754 00 0 00000 CDCT2 ZAC .. DDAP0545
00507 -0763 00 0 00006 LGL 6 .. DDAP0546
00510 -0340 00 0 01065 LAS =O12 .. CHECK FOR OCTAL 12 DDAP0547
00511 0020 00 0 00513 TRA *+2 .. DDAP0548
00512 -0754 00 0 00000 ZAC .. REPLACE 12 WITH ZERO DDAP0549
00513 -0765 00 0 00006 LGR 6 .. DDAP0550
00514 -0773 00 0 00006 RQL 6 .. DDAP0551
00515 2 00001 2 00506 TIX CDCT2,2,1 .. DDAP0552
00516 -0600 00 1 00714 STQ R.WORD+2,1 .. DDAP0553
00517 2 00001 1 00504 TIX CDCT1,1,1 .. DDAP0554
00520 -0500 00 0 00712 CAL R.WORD PICK UP OPERATION, ACCESS AND MODULE DDAP0555
00521 0560 00 0 00713 LDQ R.WORD+1 .. LOW-ORDER TRACK ADDRESS IN MQ DDAP0556
00522 -0765 00 0 00014 LGR 12 SAVE TRACK ADDRESS IN MQ DDAP0557
00523 0767 00 0 00006 ALS 6 ADJUST OPERATION IN AC DDAP0558
00524 -0501 00 0 01104 ORA =H 0000 .. ADD IN BLANKS DDAP0559
00525 0602 00 0 00766 SLW ERRCM1+8 SET OPERATION ACCESS AND MODULE IN MESSAGE DDAP0560
00526 -0600 00 0 00767 STQ ERRCM1+9 SET TRACK/RECORD ADDRESS IN ERROR COMMENT DDAP0561
00527 0560 00 0 00720 LDQ SENSE CONVERT SENSE DATA DDAP0562
00530 0074 00 4 00566 TSX CVTOCT,4 .. DDAP0563
00531 0602 00 0 00773 SLW ERRCM2+2 .. DDAP0564
00532 0074 00 4 00566 TSX CVTOCT,4 .. DDAP0565
00533 0602 00 0 00774 SLW ERRCM2+3 .. DDAP0566
00534 0560 00 0 00721 LDQ SENSE+1 .. DDAP0567
00535 0074 00 4 00566 TSX CVTOCT,4 .. DDAP0568
00536 0602 00 0 00776 SLW ERRCM2+5 .. DDAP0569
00537 0074 00 4 00566 TSX CVTOCT,4 .. DDAP0570
00540 0602 00 0 00777 SLW ERRCM2+6 .. DDAP0571
00541 0766 00 0 01361 WPRA EJECT PAGE ON LINE DDAP0572
00542 0760 00 0 01361 SPRA 1 .. DDAP0573
00543 0074 00 4 00002 TSX WRTOPR,4 PRINTF DISK/DRUM ERROR COMMENT DDAP0574
00544 0 00013 0 00756 ERRCM1,,11 .. DDAP0575
00545 0074 00 4 00002 TSX WRTOPR,4 .. DDAP0576
00546 0 00007 0 00771 ERRCM2,,7 .. DDAP0577
00547 0535 00 4 00725 LAC CHANNO,4 -CHANNEL NO. TO IR4 DDAP0578
00550 0522 00 4 00741 XEC RICOP,4 RESET THIS CHANNEL DDAP0579
00551 0766 00 0 01361 WPRA EJECT PAGE ON LINE DDAP0580
00552 0760 00 0 01361 SPRA 1 .. DDAP0581
00553 0441 00 0 01063 LDI =1 FIND TYPE OF ERROR DDAP0582
00554 -0500 00 0 00720 CAL SENSE .. RELOAD FIRST SENSE WORD DDAP0583
00555 -0320 00 0 01074 ANA =O072727270000 .. REMOVE UNWANTED BITS DDAP0584
00556 0322 00 0 01072 ERA =O020001000000 .. CHECK FOR PARITY ERROR DDAP0585
00557 0100 00 0 00561 TZE *+2 .. SKIP IF PARITY ERROR DDAP0586
00560 0441 00 0 01064 LDI =2 .. OTHERWISE SET FLAG FOR FATAL ERROR DDAP0587
00561 0604 00 0 00730 STI ERROR SAVE ERROR FLAG (1=PARITY 2=FATAL) DDAP0588
00562 0520 00 0 00735 ZET REFRSW IS USER INTERRUPT COURTESY CALL REQUIRED DDAP0589
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 12
00563 0020 00 0 00455 TRA DCTINT YES, GO TO USER INTERRUPT PROCEDURE DDAP0590
00564 0074 00 4 00001 TSX ALLRST,4 NO, RESTORE SAVED MACHINE CONDITIONS DDAP0591
00565 0020 00 0 00464 TRA DCTXIT AND EXIT FROM TRAP DDAP0592
DDAP0593
00566 0634 00 4 00574 CVTOCT SXA CVOCTX,4 CONVERT BINARY TO OCTAL IN BCD DDAP0594
00567 -0754 00 0 00000 ZAC DDAP0595
00570 0774 00 4 00006 AXT 6,4 DDAP0596
00571 0767 00 0 00003 CVOCT ALS 3 FORM BCD WORD IN AC DDAP0597
00572 -0763 00 0 00003 LGL 3 .. DDAP0598
00573 2 00001 4 00571 TIX CVOCT,4,1 .. DDAP0599
00574 0774 00 4 00000 CVOCTX AXT **,4 DDAP0600
00575 0020 00 4 00001 TRA 1,4 DDAP0601
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 13
DDAP0603
SKTRAK/CKTRAK/SETUP ..... 7909 CHANNEL PROGRAMS ..... DDAP0604
DDAP0605
00576 WHEN B,T,,BCORE,,,,, DDAP0606
BCORE ,, DDAP0606.003
DDAP0607
00576 -24 0000 3 00024 SKTRAK LCC 20 ROUTINE TO SEEK-READ OR SEEK-WRITE A TRACK DDAP0608
00577 20 0000 1 00710 RSTART CTL SEEKW SEEK FOR TRACK DDAP0609
00600 0 00000 1 00600 WTR * AND WAIT FOR INTERRUPT DDAP0610
DDAP0611
00601 -24 0000 3 00000 CKTRAK LCC 0 ROUTINE TO WRITE-CHECK TRACK JUST WRITTEN DDAP0612
00602 1 00000 1 00614 TCH CTLR.W .. DDAP0613
DDAP0614
00603 -10 0004 3 00613 INTRPT TCM TFOUND,,4 HERE FOR INTERRUPT, WAS IT ATTENTION 1 DDAP0615
00604 -24 0000 1 00612 TDC RETRY HERE FOR ERROR, TRY AGAIN DDAP0616
00605 24 0000 2 00000 SNS HERE AFTER 20 RETRIES DDAP0617
00606 -1 00002 1 00720 CPYD SENSE,,2 GET ERROR DATA DDAP0618
00607 0 00001 3 00726 DERTWT XMT DERRSW,,1 SET DISK ERROR SWITCH DDAP0619
00610 0 00000 0 00610 PZE * .. DDAP0620
00611 34 0000 1 00641 TWT SEEKRC AND TRAP CPU DDAP0621
DDAP0622
00612 1 00000 3 00577 RETRY LIPT RSTART HERE TO TRY AGAIN AFTER ERROR DDAP0623
DDAP0624
00613 1 00000 3 00614 TFOUND LIPT *+1 TRACK FOUND, ALLOW ERROR INTERRUPTS DDAP0625
00614 0 00000 0 00000 CTLR.W *** ** CHANNEL READ/WRITE PROGRAM DDAP0626
00615 COPYPR BSS 20 .. COPY COMMANDS IF ANY, FOLLOWED BY TWT DDAP0627
DDAP0628
00641 1 00000 3 00642 SEEKRC LIPT *+1 ROUTINE TO RECALIBRATE ACCESS ON ERROR DDAP0629
00642 0 00001 3 00603 XMT INTRPT,,1 SET UP NEW INTERRUPT PROCEDURE DDAP0630
00643 1 00000 1 00646 TCH CETFND .. DDAP0631
00644 20 0000 1 00714 CTL SEEKCE SEEK CE TRACK DDAP0632
00645 0 00000 1 00645 WTR * WAIT FOR INTERRUPT DDAP0633
00646 -10 0004 3 00652 CETFND TCM FIND0.,,4 HERE ON INTERRUPT, DID WE FIND CE TRACK DDAP0634
00647 0 00001 3 00603 DSKNG. XMT INTRPT,,1 NO, RESET INTERRUPT PROCEDURE DDAP0635
00650 -10 0004 3 00613 TCM TFOUND,,4 .. DDAP0636
00651 1 00000 1 00607 TCH DERTWT AND GO TO TRAP CPU AGAIN DDAP0637
DDAP0638
00652 1 00000 3 00653 FIND0. LIPT *+1 HERE WHEN CE TRACK FOUND DDAP0639
00653 0 00001 3 00603 XMT INTRPT,,1 SET UP NEW INTERRUPT PROCEDURE DDAP0640
00654 1 00000 1 00657 TCH TK0FND .. DDAP0641
00655 20 0000 1 00716 CTL SEEK0. SEEK TRACK ZERO DDAP0642
00656 0 00000 1 00656 WTR * WAIT FOR INTERRUPT DDAP0643
00657 -10 0004 3 00661 TK0FND TCM TRBACK,,4 HERE ON INTERRUPT, DID WE FIND TRACK ZERO DDAP0644
00660 1 00000 1 00647 TCH DSKNG. NO, GO TO TRAP CPU DDAP0645
00661 0 00001 3 00603 TRBACK XMT INTRPT,,1 YES, RESET INTERRUPT PROCEDURE DDAP0646
00662 -10 0004 3 00613 TCM TFOUND,,4 .. DDAP0647
00663 1 00000 3 00576 LIPT SKTRAK GO BACK TO RETRY 20 TIMES DDAP0648
DDAP0649
00664 20 0000 1 01077 SETUP CTL =O121100000000 SETUP ROUTINE, SET FILE IN 6-BIT MODE DDAP0650
00665 0 00000 1 00665 WTR * .. DDAP0651
DDAP0652
00666 1 00000 1 00603 DINTR. TCH INTRPT CONSTANT FOR INTERRUPT LOCATIONS DDAP0653
00667 34 0000 1 77777 TWT TWT -1 COMMAND TO END CHANNEL ROUTINE DDAP0654
00670 -0 00062 1 01000 DRN1 CPYP DRAIN,,BSZ SIMULATE 'ION' COPY BSZ WORDS TO DRAIN DDAP0655
00671 -0 00000 1 01000 DRN2 CPYP DRAIN,,** .. COPY LAST N WORDS TO DRAIN DDAP0656
00672 20 0000 3 00712 CTLR CTLR R.WORD CHANNEL READ COMMAND DDAP0657
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 14
00673 24 0000 1 00712 CTLW CTLW R.WORD CHANNEL WRITE COMMAND DDAP0658
DDAP0659
00674 WHEN B,T,,ACORE,,,,, DDAP0660
ACORE ,, DDAP0660.003
DDAP0661
00674 -0 00000 0 00000 CPYP CPYP 0,,0 CONSTANT FOR COPY AND PROCEDE DDAP0662
00675 -1 00000 0 00000 CPYD CPYD 0,,0 CONSTANT FOR COPY AND DISCONNECT DDAP0663
DDAP0664
* * * * * * * * * * * * * * * * * * * * * * * * DDAP0665
DDAP0666
00676 +101200000000 DSEK OCT 101200000000 7631 FILE CONTROL ORDERS DDAP0667
00677 +100200000000 DVSR OCT 100200000000 .. VERIFY SINGLE RECORD DDAP0668
00700 +100300000000 DWRF OCT 100300000000 .. WRITE FORMAT DDAP0669
00701 +100500000000 DVCY OCT 100500000000 .. VERIFY CYLINDER OPERATION DDAP0670
00702 +100600000000 DWRC OCT 100600000000 .. WRITE CHECK DDAP0671
00703 +101000000000 DVTA OCT 101000000000 .. VERIFY TRACK WITH ADDRESSES DDAP0672
00704 +101100000000 DVHA OCT 101100000000 .. VERIFY WITH HOME ADDRESSES DDAP0673
DDAP0674
00705 0 00000 0 00004 DENBWD PZE DENB DISK/DRUM ENABLE WORD DDAP0675
00706 0 00000 0 00000 ENABLE PZE ** POINTER TO COMMON ENABLE WORD DDAP0676
DDAP0677
00707 WHEN B,F,DTRAP.,TTR,DCTRAP,,,, DDAP0678
00707 WHEN B,T,DTRAP.,TIB,DCTRAP,,,, DDAP0679
00707 -0101 00 0 00415 DTRAP. TIB DCTRAP,, DDAP0679.003
DDAP0680
00710 +000000000000 SEEKW OCT 0,0 7631 SEEK ORDER DDAP0681
00711 +000000000000
00712 +000000000000 R.WORD OCT 0,0 7631 READ/WRITE ORDER DDAP0682
00713 +000000000000
DDAP0683
00714 +101200001113 SEEKCE OCT 101200001113,121200000000 7631 ORDER TO SEEK CE TRACK DDAP0684
00715 +121200000000
00716 +101200001212 SEEK0. OCT 101200001212,121200000000 7631 ORDER TO SEEK TRACK ZERO DDAP0685
00717 +121200000000
DDAP0686
00720 +000000000000 SENSE OCT 0,0 SENSE STORAGE IF DISK ERROR DDAP0687
00721 +000000000000
00722 +000000000000 TMP OCT 0,0 TEMPS. FOR .PACK .UNPAK DDAP0688
00723 +000000000000
00724 0 00000 0 00000 BUSY PZE 0 DISK/DRUM CHANNEL BUSY SWITCH DDAP0689
00725 0 00000 0 00000 CHANNO PZE 0 NO. OF CHANNEL CURRENTLY IN OPERATION DDAP0690
00726 0 00000 0 00000 DERRSW PZE 0 SWITCH SET BY CHANNEL ON ERROR DDAP0691
00727 0 00000 0 00000 RECSAV PZE 0 TEMP FOR CVTRK DDAP0692
00730 0 00000 0 00000 ERROR PZE 0 DISK/DRUM ERROR SWITCH (1=PARITY 2=FATAL) DDAP0693
00731 0 00000 0 00000 RECAL PZE 0 COUNTS RECALIBRATIONS DDAP0694
DDAP0695
00732 0 00000 0 00000 DCTSI PZE 0 SENSE INDICATORS SAVED HERE ON TRAP DDAP0696
00733 0 00000 0 00000 DCTRTN PZE 0 RETURN LOCATION SAVED HERE ON TRAP DDAP0697
00734 0 00000 0 00000 TRAPSW PZE 0 NON-ZERO ON COURTESY DURING TRAP DDAP0698
00735 0 00000 0 00000 REFRSW PZE 0 NON-ZERO IF COURTESY CALL REQUIRED DDAP0699
00736 0 00000 0 00000 FRCTMP PZE 0 TEMP FOR .FORCE, .DRSET (ERROR FLAG) DDAP0700
00737 0 00000 0 00000 RTNFLG PZE 0 FLAG RETURNED TO USER ON COURTESY CALL DDAP0701
00740 0021 00 0 00000 USRTRP TTR ** LOCATION OF USER INTERRUPT ROUTINE DDAP0702
00741 0021 00 0 00000 UERROR TTR ** LOCATION OF USER ERROR ROUTINE DDAP0703
DDAP0704
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 15
DDAP0706
00741 RICOP SYN *-1 CHANNEL RIC INSTRUCTIONS DDAP0707
00742 0760 00 0 01350 RICA .. DDAP0708
00743 0760 00 0 02350 RICB .. DDAP0709
00744 0760 00 0 03350 RICC .. DDAP0710
00745 0760 00 0 04350 RICD .. DDAP0711
00746 0760 00 0 05350 RICE .. DDAP0712
00747 0760 00 0 06350 RICF .. DDAP0713
00750 0760 00 0 07350 RICG .. DDAP0714
N 00751 0760 00 0 10350 RICH .. DDAP0715
DDAP0716
00745 ORG RICOP+CHANLS+1 OVERLAY UNNECESSARY INSTRUCTIONS DDAP0717
DDAP0718
00744 RSCOP SYN *-1 CHANNEL RSC INSTRUCTION TABLE DDAP0719
00745 0540 00 5 00000 RSCA 0,5 .. DDAP0720
00746 -0540 00 5 00000 RSCB 0,5 .. DDAP0721
00747 0541 00 5 00000 RSCC 0,5 .. DDAP0722
00750 -0541 00 5 00000 RSCD 0,5 .. DDAP0723
00751 0542 00 5 00000 RSCE 0,5 .. DDAP0724
00752 -0542 00 5 00000 RSCF 0,5 .. DDAP0725
00753 0543 00 5 00000 RSCG 0,5 .. DDAP0726
00754 -0543 00 5 00000 RSCH 0,5 .. DDAP0727
DDAP0728
00750 ORG RSCOP+CHANLS+1 OVERLAY UNNECESSARY INSTRUCTIONS DDAP0729
DDAP0730
00747 STCOP SYN *-1 CHANNEL STC INSTRUCTION TABLE DDAP0731
00750 0544 00 0 00000 STCA .. DDAP0732
00751 -0544 00 0 00000 STCB .. DDAP0733
00752 0545 00 0 00000 STCC .. DDAP0734
00753 -0545 00 0 00000 STCD .. DDAP0735
00754 0546 00 0 00000 STCE .. DDAP0736
00755 -0546 00 0 00000 STCF .. DDAP0737
00756 0547 00 0 00000 STCG .. DDAP0738
00757 -0547 00 0 00000 STCH .. DDAP0739
DDAP0740
00753 ORG STCOP+CHANLS+1 OVERLAY UNNECESSARY INSTRUCTIONS DDAP0741
DDAP0742
00752 CTIL SYN *-1 CHANNEL TRAP AND INTERRUPT LOCATIONS DDAP0743
00753 0 00042 0 00012 PZE 10,,34 ..A DDAP0744
00754 0 00044 0 00014 PZE 12,,36 ..B DDAP0745
00755 0 00046 0 00016 PZE 14,,38 ..C DDAP0746
00756 0 00050 0 00020 PZE 16,,40 ..D DDAP0747
00757 0 00052 0 00022 PZE 18,,42 ..E DDAP0748
00760 0 00054 0 00024 PZE 20,,44 ..F DDAP0749
00761 0 00056 0 00026 PZE 22,,46 ..G DDAP0750
00762 0 00060 0 00030 PZE 24,,48 ..H DDAP0751
DDAP0752
00756 ORG CTIL+CHANLS+1 OVERLAY UNNECESSARY INSTRUCTIONS DDAP0753
DDAP0754
DDAP0756
00756 606024316242 ERRCM1 BCI 8, DISK/DRUM READ ERROR ON CHANNEL X, OPERATION= DDAP0757
00766 606767676760 BCI 3, XXXX XXXXXX. DDAP0758
00771 606225456225 ERRCM2 BCI 7, SENSE DATA 000000000000 000000000000 DDAP0759
DDAP0760
01000 DRAIN BSS BSZ DRAIN BUFFER TO SIMULATE 'ION' DDAP0761
DDAP0762
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 16
END DDAP0764
LITERALS
01062 000000000000
01063 000000000001
01064 000000000002
01065 000000000012
01066 000000007777
01067 000000077777
01070 000000400001
01071 010101010101
01072 020001000000
01073 060606060606
01074 072727270000
01075 101200001113
01076 101200001212
01077 121100000000
01100 202020202020
01101 404040404040
01102 454525436020
01103 512521246060
01104 600000000060
01105 665131632560
01106 676700000000
01107 700000600000
01110 777700007777
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 1
POST PROCESSOR ASSEMBLY DATA
1111 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
1 B 4
62 BSZ 4, 215, 670, 1000
24 DI1 45
44 DI2 27
722 TMP 315, 317, 324, 327, 331, 332, 333, 346, 352, 370, 375, 377, 407, 411
667 TWT 202
724 BUSY 65, 70, 117, 225, 242, 450, 471
675 CPYD 200
674 CPYP 210
752 CTIL 30, 423, 753, 756
672 CTLR 162, 200, 216, 162
673 CTLW 145, 162, 200, 216, 145, 233
4 DENB 4, 705
670 DRN1 216
671 DRN2 221, 222
676 DSEK 135, 152, 170, 206, 135, 152, 170, 206, 152
701 DVCY 212
704 DVHA 156
677 DVSR 141, 156
703 DVTA 174
702 DWRC 237
700 DWRF 141
73 FRC1 67
325 PAC1 334
504 CDCT1 517
506 CDCT2 515
470 CRUMP 432
571 CVOCT 573
247 CVTRK 133, 150, 165, 203, 133, 150, 165, 203, 150
253 CVTX4 251
447 DCTOK 427
732 DCTSI 420, 464
1000 DRAIN 670, 671
115 DWAIT 111, 132, 147, 164, 202, 132, 147, 164, 202, 147, 232
730 ERROR 122, 125, 126, 456, 561
10 HIMOD 15, 263
306 .PACK 0
731 RECAL 241, 270, 431, 434, 447, 470
612 RETRY 604
741 RICOP 41, 550, 742, 745
744 RSCOP 43, 275, 745, 750
710 SEEKW 137, 140, 154, 155, 172, 173, 210, 211, 137, 140, 154, 155, 172, 173, 210, 211, 154
155, 435, 577
720 SENSE 527, 534, 554, 606
664 SETUP 42
747 STCOP 445, 750, 753
347 UPAC2 353
355 UPAC3 343
372 UPAC4 376
377 UPAC5 354
1 ALLRST 104, 463, 564
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 2
POST PROCESSOR ASSEMBLY DATA
0 ALLSAV 101, 453, 472
303 BADREC 263
646 CETFND 643
3 CHANLS 4, 21, 25, 745, 750, 753, 756
725 CHANNO 300, 421, 444, 500, 547
601 CKTRAK 243
3 CMEXIT 465
615 COPYPR 176, 201, 203, 211, 217, 223
614 CTLR.W 163, 234, 473, 602
574 CVOCTX 566
566 CVTOCT 530, 532, 535, 537
254 CVTRK1 250
264 CVTRK2 261
455 DCTINT 563
466 DCTIR4 417
415 DCTRAP 707
733 DCTRTN 425, 467
464 DCTXIT 446, 452, 565
705 DENBWD 24, 46
726 DERRSW 426, 430, 607
607 DERTWT 651
666 DINTR. 23
647 DSKNG. 660
707 DTRAP. 22
130 DWAITX 124
706 ENABLE 17, 47, 50, 107, 113, 116, 230, 245, 304
756 ERRCM1 477, 502, 525, 526, 544
771 ERRCM2 531, 533, 536, 540, 546
652 FIND0. 646
105 FRCIR4 100
736 FRCTMP 76, 103
172 GETCM1 212, 224
200 GETCM2 175, 177
205 GETCM3 174
213 GETCM4 206
215 GETCM5 220
221 GETCM6 215
603 INTRPT 642, 647, 653, 661, 666
1 IOSMOD 4
15 .DINIT 0
147 .DREAD 0
65 .DRSET 0
111 .DWAIT 0
232 .DWRCK 0
132 .DWRIT 0
70 .FORCE 0
202 .RDCYL 0
147 .RDHAO 0
164 .RDTRO 0
52 .REFER 0
56 .SETER 0
336 .UNPAK 0
202 .WRCYL 0
132 .WRFMT 0
147 .WRHAO 0
1 M1416 786 R. DALEY .... DISK/DRUM INPUT/OUTPUT PACKAGE FOR 2302/7320 02/22/71 1707.4 PAGE 3
POST PROCESSOR ASSEMBLY DATA
164 .WRTRO 0
4 MODTBL 15, 266
147 OVLORG 132, 147
727 RECSAV 274, 301
735 REFRSW 54, 73, 451, 562
712 R.WORD 143, 144, 160, 161, 176, 177, 214, 215, 143, 144, 160, 161, 176, 177, 214, 215, 160
161, 235, 240, 504, 516, 520, 521, 672, 673
226 RSCHN1 276
243 RSCHN2 277
577 RSTART 612
737 RTNFLG 455, 461
716 SEEK0. 443, 655
714 SEEKCE 440, 644
641 SEEKRC 611
163 SETCOM 146, 163, 201, 217, 146, 163, 201, 217
576 SKTRAK 226, 663
225 STCHAN 204
613 TFOUND 603, 650, 662
657 TK0FND 654
734 TRAPSW 77, 106, 112, 115, 227, 244, 303, 307, 341, 457, 462
661 TRBACK 657
741 UERROR 62, 63, 127
340 UNPACK 252, 337
740 USRTRP 53, 102, 460
2 WRTOPR 543, 545
0 NO ERROR IN ABOVE ASSEMBLY.
TPST2A BCD 02/22/71 1720.3 1228 00000
1 DUMMY TAPE STRATEGY PACKAGE 10/29/70 1539.1 PAGE 1
D.R. WIDRIG FEBRUARY 1967
00005 ENTRY TAPEAX TPST0003
00003 ENTRY SINIT3 TPST0004
00002 ENTRY IORST3 TPST0005
00002 ENTRY IOBGN3 TPST0006
00003 ENTRY IOHLT3 TPST0007
00002 ENTRY DRAIN3 TPST0008
00002 ENTRY MNTTAP TPST0009
00002 ENTRY UMTTAP TPST0010
00004 ENTRY UMTALL TPST0011
00004 ENTRY LBLTAP TPST0012
00004 ENTRY VERTAP TPST0013
00004 ENTRY OPEN3 TPST0014
00004 ENTRY READ3 TPST0015
00004 ENTRY WRITE3 TPST0016
00004 ENTRY REWRT3 TPST0017
00004 ENTRY CLOSE3 TPST0018
00004 ENTRY DFILE3 TPST0019
00004 ENTRY SCRAP3 TPST0020
00004 ENTRY QTEST3 TPST0021
00003 ENTRY TAPKEY TPST0022
TPST0023
LINKAGE DIRECTOR
00000 000000000000
00001 632147252167
00002 0020 00 4 00001 RET1 TRA 1,4 1,4 RETURNS TPST0024
00003 0020 00 4 00002 RET2 TRA 2,4 2,4 RETURNS TPST0025
00004 0020 00 4 00003 RET3 TRA 3,4 3,4 RETURNS TPST0026
00005 STOR BSS 1 RANDOM STORAGE TPST0027
TPST0028
00005 TAPEAX EQU STOR TPST0029
00003 SINIT3 EQU RET2 TPST0030
00002 IORST3 EQU RET1 TPST0031
00002 IOBGN3 EQU RET1 TPST0032
00003 IOHLT3 EQU RET2 TPST0033
00002 DRAIN3 EQU RET1 TPST0034
00002 MNTTAP EQU RET1 TPST0035
00002 UMTTAP EQU RET1 TPST0036
00004 UMTALL EQU RET3 TPST0037
00004 LBLTAP EQU RET3 TPST0038
00004 VERTAP EQU RET3 TPST0039
00004 OPEN3 EQU RET3 TPST0040
00004 READ3 EQU RET3 TPST0041
00004 WRITE3 EQU RET3 TPST0042
00004 REWRT3 EQU RET3 TPST0043
00004 DFILE3 EQU RET3 TPST0044
00004 CLOSE3 EQU RET3 TPST0045
00004 SCRAP3 EQU RET3 TPST0046
00004 QTEST3 EQU RET3 TPST0047
00003 TAPKEY EQU RET2 TPST0048
TPST0049
END TPST0050
1 DUMMY TAPE STRATEGY PACKAGE 10/29/70 1539.1 PAGE 1
POST PROCESSOR ASSEMBLY DATA
6 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
2 RET1 6
3 RET2 6
4 RET3 6
5 STOR 6
4 OPEN3 0, 6
4 READ3 0, 6
4 CLOSE3 0, 6
4 DFILE3 0, 6
2 DRAIN3 0, 6
2 IOBGN3 0, 6
3 IOHLT3 0, 6
2 IORST3 0, 6
4 LBLTAP 0, 6
2 MNTTAP 0, 6
4 QTEST3 0, 6
4 REWRT3 0, 6
4 SCRAP3 0, 6
3 SINIT3 0, 6
5 TAPEAX 0, 6
3 TAPKEY 0, 6
4 UMTALL 0, 6
2 UMTTAP 0, 6
4 VERTAP 0, 6
4 WRITE3 0, 6
0 NO ERROR IN ABOVE ASSEMBLY.
TPAPDM BCD 02/22/71 1720.3 205 00000
1 FAP ASSEMBLY LISTING ... ... ... FILE TPAPDM FAP 10/29/70 1539.2 PAGE 1
TPAPDM --- DUMMY TAPE ADAPTER
00000 ENTRY TRAPA DUMMY ENTRY FOR CHANNEL 'A' TRAPS
00000 ENTRY TRAPB .. CHANNEL 'B'
00000 TRAPA SYN * ..
00000 TRAPB SYN * ..
00000 0020 00 4 00003 TRA 3,4 NO ADAPTER, IGNORE CHANNEL A, B TRAPS
END
1 FAP ASSEMBLY LISTING ... ... ... FILE TPAPDM FAP 10/29/70 1539.2 PAGE 1
POST PROCESSOR ASSEMBLY DATA
1 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
0REFERENCES TO DEFINED SYMBOLS
0 TRAPA 0
0 TRAPB 0
0 NO ERROR IN ABOVE ASSEMBLY.