mirror of
https://github.com/rcornwell/ctss.git
synced 2026-01-12 00:02:48 +00:00
3240 lines
215 KiB
Plaintext
3240 lines
215 KiB
Plaintext
|
|
|
|
|
|
|
|
FSETUP BCD 06/10/68 0250.6 9046 00000
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 1
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
00032 ENTRY .SETUP MUST BE CALLED TO INITIALIZE SIMULATOR
|
|
|
|
00506 ENTRY KEYS TO TEST FOR CONSOLE ENTRY KEY DOWN
|
|
00476 ENTRY SW TO TEST FOR SENSE SWITCH DOWN
|
|
00474 ENTRY EVSW TO TEST FOR SENSE SWITCH EVER DOWN
|
|
|
|
00416 ENTRY CLOCON TURN ON THE SIMULATED CLOCK
|
|
00417 ENTRY CLOCOF TURN OFF THE CLOCK
|
|
|
|
00653 ENTRY EXIT CLOSE ALL FILES AND STOP
|
|
00670 ENTRY CHNCOM CLOSE ONLY SIMULATOR FILES AND CHAIN
|
|
00672 ENTRY DORMNT CLOSE ONLY SIMULATOR FILES AND STOP
|
|
00672 ENTRY DEAD SAME AS 'DORMNT'
|
|
00712 ENTRY HALT PANIC CLOSE WITH NO SHUTDOWN
|
|
|
|
00517 ENTRY WRITE6 TYPE A LINE IN 6-BIT MODE
|
|
00515 ENTRY WRIT6A TYPE 6-BIT LINE (NO TRAILING C.R.)
|
|
00536 ENTRY RED TO GET INTO RED SHIFT
|
|
00540 ENTRY BLACK TO GET INTO BLACK SHIFT
|
|
|
|
00557 ENTRY .SPRNT TO WRITE INTO '.TAPE. A3'
|
|
00632 ENTRY .FOUT TO CLOSE OUT '.TAPE. A3'
|
|
|
|
THE FOLLOWING ARE PROVIDED GRATIS
|
|
|
|
00421 ENTRY SETFUL TO SWITCH CONSOLE TO 12-BIT MODE
|
|
00420 ENTRY SETBCD TO SWITCH CONSOLE TO 6-BIT MODE
|
|
00415 ENTRY WHOAMI GET USER IDENTIFICATION
|
|
00414 ENTRY GETBRK GET LAST BREAK SETTING
|
|
00413 ENTRY SETBRK SET BREAK LEVEL
|
|
00412 ENTRY WRFLXA PRINT ON CONSOLE (NO C.R.)
|
|
00411 ENTRY WRFLX PRINT ON CONSOLE
|
|
00410 ENTRY RDFLXA READ FROM CONSOLE
|
|
|
|
EXTERN MDINIT,FCLOSE,BCOCT,GETMEM,SETMEM
|
|
EXTERN FOPEN,FBUFFE,FWRFIL,FWRWAI,FPRNTE
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 2
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
|
|
OVLBGN MACRO MACRO TO OVERLAY CODE
|
|
IFF SALMOD OVERLAY IF THIS IS FOR SALVAGER
|
|
UNLIST ..
|
|
IFF SALMOD ..
|
|
OVLORG SET * SAVE CURRENT LOCATION COUNTER
|
|
OVLBGN END
|
|
|
|
OVLEND MACRO TURN OFF OVERLAY
|
|
IFF SALMOD RE-ORIGIN IF SALVAGER
|
|
ORG OVLORG ..
|
|
IFF SALMOD TURN ON LISTING AGAIN
|
|
LIST ..
|
|
OVLEND END
|
|
|
|
DFINE MACRO NAME DEFINE SYMBOL
|
|
IFF SALMOD IF SALVAGER, PLANT RETURN OP CODE
|
|
NAME TRA 1,4 ..
|
|
IFF SALMOD,1,0 IF NOT, MAKE EXTERNAL SYMBOL
|
|
EXTERN NAME ..
|
|
DFINE END
|
|
|
|
DEFINE MACRO NAME MAIN MACRO TO DEFINE SYMBOLS
|
|
IRP NAME ALLOW FOR LOTS OF SYMBOLS
|
|
DFINE NAME DEFINE SYMBOL
|
|
IRP
|
|
DEFINE END
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 3
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
|
|
|
|
TRANSFER VECTOR
|
|
00000 442431453163 MDINIT
|
|
00001 262343466225 FCLOSE
|
|
00002 222346236360 BCOCT
|
|
00003 272563442544 GETMEM
|
|
00004 622563442544 SETMEM
|
|
00005 264647254560 FOPEN
|
|
00006 262264262625 FBUFFE
|
|
00007 266651263143 FWRFIL
|
|
00010 266651662131 FWRWAI
|
|
00011 264751456325 FPRNTE
|
|
00012 622563314660 SETIO
|
|
00013 314626314531 IOFINI
|
|
00014 314651622563 IORSET
|
|
00015 254522626660 ENBSW
|
|
00016 314662636060 IOST
|
|
00017 314651626060 IORS
|
|
00020 216363212330 ATTACH
|
|
00021 475145632551 PRNTER
|
|
00022 234346622560 CLOSE
|
|
00023 222623434662 BFCLOS
|
|
00024 222324252360 BCDEC
|
|
00025 216463304651 AUTHOR
|
|
00026 644751652263 UPRVBT
|
|
00027 266233636263 FS.TST
|
|
|
|
LINKAGE DIRECTOR
|
|
00030 000000000000
|
|
00031 336225636447
|
|
|
|
00000 SALMOD EQU 0 NON-ZERO IF SALVAGER MODULE
|
|
|
|
00032 DEFINE (SETIO,IOFINI,IORSET,ENBSW)
|
|
00032 DEFINE (IOST,IORS)
|
|
00032 DEFINE (ATTACH,PRNTER)
|
|
00032 DEFINE (CLOSE,BFCLOS)
|
|
00032 DEFINE (BCDEC)
|
|
00032 DEFINE (AUTHOR,UPRVBT,FS.TST)
|
|
|
|
00032 1 77777 4 00033 .SETUP TXI *+1,4,-1 SET UP RETURN
|
|
00033 0636 00 4 00407 SCA RETURN,4 ..
|
|
00034 -0625 00 0 00443 STL RETSW SET RETURN SWITCH
|
|
00035 0760 00 0 00016 LMTM 7-TAG MODE FOR I/O SYSTEM
|
|
00036 0074 00 4 00000 TSX MDINIT,4 SET UP SIMULATOR ADAPTER
|
|
00037 -0625 00 0 00652 STL SPRNSW ASSUME USER WANTS A3
|
|
|
|
00040 OVLBGN OVERLAY CODE IF THIS IS SALVAGER
|
|
|
|
00040 0074 00 4 00415 TSX WHOAMI,4 GET PROGRAMMER NUMBER
|
|
00041 3 00002 0 00422 PTH WD,,2 ..
|
|
00042 0074 00 4 00024 TSX BCDEC,4 CONVERT TO BINARY
|
|
00043 3 00000 0 00423 PTH WD+1 ..
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 4
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
00044 0601 00 0 00434 STO AUTHR CALL THIS USER'S AUTHOR NUMBER
|
|
00045 0074 00 4 00016 TSX IOST,4 SET UP ENABLE TRAPS, ETC.
|
|
|
|
00046 0074 00 4 00012 TSX SETIO,4 INITIALIZE PSEUDO FILE SYSTEM
|
|
00047 3 00000 0 00434 PTH AUTHR AUTHNO OF THIS USER
|
|
|
|
00050 OVLEND END OF SALVAGER OVERLAY
|
|
|
|
00050 0074 00 4 00003 TSX GETMEM,4 GET MEMBND
|
|
00051 0621 00 0 00624 STA A3BUF TO BUFFER '.TAPE. A3' WITH
|
|
00052 0400 00 0 00724 ADD =432
|
|
00053 0074 00 4 00004 TSX SETMEM,4 RESET IT
|
|
|
|
00054 -0600 00 0 00436 BREAK STQ MQ HERE ON INTERRUPTS, SAVE MACHINE
|
|
00055 0604 00 0 00441 STI SI SENSE INDICATORS
|
|
00056 0602 00 0 00435 SLW LAC LOGICAL AC
|
|
00057 0771 00 0 00002 ARS 2 S AND Q BITS OF AC
|
|
00060 0601 00 0 00437 STO SQ ..
|
|
00061 0600 00 0 00440 STZ OV OVERFLOW TRIGGER
|
|
00062 -0140 00 0 00064 TNO *+2 TEST TRIGGER
|
|
00063 -0625 00 0 00440 STL OV ON, SET SWITCH
|
|
00064 0636 00 4 00404 SCA X4,4 SAVE INDEX REGISTER 4
|
|
00065 0634 00 2 00405 SXA X2,2
|
|
00066 0634 00 1 00406 SXA X1,1
|
|
00067 0074 00 4 00420 TSX SETBCD,4 MAKE SURE IN 6-BIT MODE
|
|
00070 0621 00 0 00442 STA MODE SAVE OLD MODE
|
|
|
|
00071 0074 00 4 00536 TYPE TSX RED,4 ZOW, RED LETTERS
|
|
00072 0074 00 4 00411 TSX WRFLX,4 ANNOUNCE THAT WE ARE LISTENING
|
|
00073 0 00001 0 00746 =HTYPE..,,1 ..
|
|
00074 0074 00 4 00540 TSX BLACK,4 BACK TO BLACK LETTERS
|
|
|
|
00075 0074 00 4 00410 TSX RDFLXA,4 READ REQUEST LINE
|
|
00076 0 00005 0 00422 WD,,NIN INTO INPUT BUFFER
|
|
00077 0774 00 1 00005 AXT NOUT,1 THEN BREAK IT INTO ARGUMENTS
|
|
00100 0774 00 4 00005 AXT NIN,4
|
|
00101 -0625 00 0 00320 NEWOUT STL BL INITIALIZE NEXT OUTPUT WORD
|
|
00102 -0500 00 0 00742 CAL =H TO BE BLANK
|
|
00103 0602 00 1 00434 SLW RQUEST+NOUT,1
|
|
00104 0560 00 4 00427 INPUT LDQ WD+NIN,4 GET SOME INPUT
|
|
00105 0774 00 2 00006 AXT 6,2 (6 CHARS. WORTH)
|
|
00106 -0754 00 0 00000 NXTCHR ZAC
|
|
00107 -0763 00 0 00006 LGL 6 GET A CHARACTER
|
|
00110 -0340 00 0 00723 LAS =O60 IS IT 'BLANK'.Q.
|
|
00111 0020 00 0 00116 TRA OK NO.
|
|
00112 0020 00 0 00133 TRA BLANK YES. MAY END ARGUMENT.
|
|
00113 -0340 00 0 00722 LAS =O55 IS IT 'CR' OR 'NULL'.Q.
|
|
00114 0020 00 0 00123 TRA IGNORE 'NULL', IGNORE IT.
|
|
00115 0020 00 0 00125 TRA ENDINP 'CR', END OF INPUT.
|
|
00116 0600 00 0 00320 OK STZ BL NOPE. NORMAL CHARACTER.
|
|
00117 -0765 00 0 00006 LGR 6
|
|
00120 -0500 00 1 00434 CAL RQUEST+NOUT,1 PUT IT ON END OF ARGUMENT
|
|
00121 -0763 00 0 00006 LGL 6
|
|
00122 0602 00 1 00434 SLW RQUEST+NOUT,1 AND SAVE.
|
|
00123 2 00001 2 00106 IGNORE TIX NXTCHR,2,1 ANYTHING LEFT IN MQ.Q.
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 5
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
00124 2 00001 4 00104 TIX INPUT,4,1 NO. IS THERE ANY MORE INPUT.Q.
|
|
00125 -0520 00 0 00320 ENDINP NZT BL NO. IS CURRENT ARG EMPTY.Q.
|
|
00126 -2 00001 1 00140 TNX CKRQST,1,1 NO. SKIP PAST IT.
|
|
00127 -0500 00 0 00317 CAL STAR SET REMAINING ARGS TO '*'
|
|
00130 0602 00 1 00434 SLW RQUEST+NOUT,1
|
|
00131 2 00001 1 00130 TIX *-1,1,1 ALL OF THEM.
|
|
00132 0020 00 0 00140 TRA CKRQST GO SEE WHAT WE'VE GOT
|
|
00133 0520 00 0 00320 BLANK ZET BL IS THIS THE FIRST BLANK.Q.
|
|
00134 0020 00 0 00123 TRA IGNORE NO. IGNORE IT.
|
|
00135 -0625 00 0 00320 STL BL YES.
|
|
00136 -0500 00 0 00742 CAL =H CLOSE THIS ARG.
|
|
00137 2 00001 1 00122 TIX IGNORE-1,1,1
|
|
|
|
00140 -0500 00 0 00427 CKRQST CAL RQUEST
|
|
00141 0774 00 4 00030 AXT NCOMS,4 TEST KEY WORD AGAINST TABLE
|
|
00142 -0340 00 4 00474 LAS CTABLE+NCOMS,4 ..
|
|
00143 0020 00 0 00145 TRA *+2 GREATER, KEEP LOOKING
|
|
00144 0020 60 4 00475 TRA* CTABLE+NCOMS+1,4 MATCH, GO TO ROUTINE
|
|
00145 2 00002 4 00142 TIX *-3,4,2 LOOP BACK AND TRY AGAIN
|
|
00146 0074 00 4 00536 TSX RED,4
|
|
00147 0074 00 4 00412 TSX WRFLXA,4
|
|
00150 0 00001 0 00427 RQUEST,,1
|
|
00151 0074 00 4 00411 TSX WRFLX,4
|
|
00152 0 00002 0 00155 IGN,,2
|
|
00153 0074 00 4 00540 TSX BLACK,4
|
|
00154 0020 00 0 00071 TRA TYPE NOBODY MATCHES, READ NEW LINE
|
|
|
|
00155 603127454651 IGN BCI 2, IGNORED.
|
|
00156 252433606060
|
|
|
|
00157 -0500 00 0 00430 SENSE CAL RQUEST+1
|
|
00160 0322 00 0 00317 ERA STAR
|
|
00161 0100 00 0 00071 TZE TYPE
|
|
00162 0074 00 4 00002 TSX BCOCT,4 SENSE SWITCH SETTING, CONVERT WORD
|
|
00163 3 00000 0 00430 PTH RQUEST+1 ..
|
|
00164 0767 00 0 00036 ALS 30 JUSTIFY WORD PROPERLY
|
|
00165 0602 00 0 00513 SLW SWS SAVE IT
|
|
00166 -0602 00 0 00511 ORS EVSWS BLEND IN WITH MEMORY CELL
|
|
00167 0020 00 0 00071 TRA TYPE READ SOME MORE LINES
|
|
|
|
00170 -0500 00 0 00430 ENTRY CAL RQUEST+1
|
|
00171 0322 00 0 00317 ERA STAR
|
|
00172 -0100 00 0 00176 TNZ *+4
|
|
00173 -0500 00 0 00514 CAL CKEYS
|
|
00174 -0320 00 0 00753 ANA =O777777000000
|
|
00175 0020 00 0 00201 TRA *+4
|
|
00176 0074 00 4 00002 TSX BCOCT,4 CONVERT LEFT-HALF OF ENTRY KEYS
|
|
00177 3 00000 0 00430 PTH RQUEST+1 ..
|
|
00200 0767 00 0 00022 ALS 18 POSITION IT PROPERLY
|
|
00201 0044 00 0 00000 PAI
|
|
00202 -0500 00 0 00431 CAL RQUEST+2
|
|
00203 0322 00 0 00317 ERA STAR
|
|
00204 -0100 00 0 00210 TNZ *+4
|
|
00205 -0500 00 0 00514 CAL CKEYS
|
|
00206 -0320 00 0 00725 ANA =O777777
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 6
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
00207 0020 00 0 00212 TRA *+3
|
|
00210 0074 00 4 00002 TSX BCOCT,4 CONVERT RIGHT-HALF OF CONSOLE KEYS
|
|
00211 3 00000 0 00431 PTH RQUEST+2 ..
|
|
00212 0043 00 0 00000 OAI MERGE WITH LEFT-HALF
|
|
00213 0604 00 0 00514 STI CKEYS
|
|
00214 0020 00 0 00071 TRA TYPE READ SOME MORE LINES
|
|
|
|
00215 0760 00 0 00016 RESET LMTM RESET, GET BACK TO 7-TAG MODE
|
|
|
|
00216 OVLBGN START OF SALVAGER OVERLAY
|
|
|
|
00216 -0625 60 0 00015 STL* ENBSW SET SWITCH FOR ALLSAV
|
|
00217 0074 00 4 00017 TSX IORS,4 KILL WAITING TRAPS
|
|
00220 0074 00 4 00014 TSX IORSET,4 RESET FILE SYSTEM
|
|
00221 0074 00 4 00013 TSX IOFINI,4 MAKE SURE UPDATED
|
|
00222 3 00000 0 00223 PTH *+1 NO ERRORS, PLEASE
|
|
|
|
00223 OVLEND END OF SALVAGER OVERLAY
|
|
|
|
00223 0020 00 0 00071 TRA TYPE READ SOME MORE LINES
|
|
|
|
00224 0074 00 4 00417 CLOCK TSX CLOCOF,4 FIRST, TURN OFF THE CLOCK
|
|
00225 -0500 00 0 00430 CAL RQUEST+1 CHECK ACTION DESIRED
|
|
00226 0322 00 0 00737 ERA =H OFF TEST FOR THE WORD 'OFF'
|
|
00227 0100 00 0 00071 TZE TYPE THAT'S IT, ALL DONE
|
|
00230 0074 00 4 00416 TSX CLOCON,4 NOT 'OFF', TURN IT ON
|
|
00231 0020 00 0 00071 TRA TYPE GET SOME MORE INPUT
|
|
|
|
00232 ATTCH EQU * OFFER THE OPTION TO ATTACH TO A DIRECTORY
|
|
|
|
00232 OVLBGN NO ATTACHES FOR SALVAGER
|
|
|
|
00232 0074 00 4 00020 TSX ATTACH,4 ATTACH TO DIRECTORY INDICATED
|
|
00233 3 00000 0 00430 PTH RQUEST+1 IN COLUMNS 7 - 12
|
|
00234 3 00000 0 00431 PTH RQUEST+2 AND COLUMNS 13 - 18
|
|
00235 3 00000 0 00237 PTH *+2 GRIPE ABOUT ERRORS
|
|
00236 0020 00 0 00071 TRA TYPE IF OK, GET MORE INPUT
|
|
|
|
00237 0074 00 4 00021 TSX PRNTER,4 FILE SYSTEM GRIPE
|
|
|
|
00240 OVLEND END OF OVERLAY
|
|
|
|
00240 0020 00 0 00071 TRA TYPE GET MORE LINES OF INPUT
|
|
|
|
00241 PRIVL BSS 0
|
|
|
|
00241 OVLBGN
|
|
|
|
00241 -0500 00 0 00430 CAL RQUEST+1 HERE TO CHANGE RESTRICTION CODE
|
|
00242 0774 00 4 00012 AXT NRCOD,4 CHECK FOR SPECIAL LEFT-HALF ARGS.
|
|
00243 -0340 00 4 00273 LAS RCODES+NRCOD,4
|
|
00244 0020 00 0 00246 TRA *+2
|
|
00245 0020 00 0 00252 TRA *+5
|
|
00246 2 00002 4 00243 TIX *-3,4,2
|
|
00247 0074 00 1 00273 TSX PROCES,1 PROCESS BOTH HALVES
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 7
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
00250 -0500 60 0 00026 CAL* UPRVBT POINTER TO OLD RCODE
|
|
00251 0020 00 0 00255 TRA *+4
|
|
00252 0441 00 4 00274 LDI RCODES+NRCOD+1,4 GET NUMERIC EQUIV. OF ARG.
|
|
00253 0074 00 1 00305 TSX PROCS1,1 THEN PROCESS RIGHT-HALF
|
|
00254 -0500 60 0 00026 CAL* UPRVBT POINTER TO OLD RCODE
|
|
00255 0604 60 0 00026 STI* UPRVBT INSERT NEW RESTRICTION CODE
|
|
00256 0074 00 4 00003 TSX GETMEM,4
|
|
00257 0074 00 4 00004 TSX SETMEM,4 AND FORCE 'IOPAC' TO GIVE IT TO F.S.
|
|
|
|
00260 OVLEND
|
|
|
|
00260 0020 00 0 00071 TRA TYPE GO FOR MORE
|
|
|
|
00261 242125444645 RCODES BCI 1,DAEMON
|
|
00262 +007010000000 OCT 007010000000
|
|
00263 606060263122 BCI 1, FIB
|
|
00264 +013004000000 OCT 013004000000
|
|
00265 264651252751 BCI 1,FOREGR
|
|
00266 +015002000000 OCT 015002000000
|
|
00267 475165234644 BCI 1,PRVCOM
|
|
00270 +015022000037 OCT 015022000037
|
|
00271 222123422751 BCI 1,BACKGR
|
|
00272 +016001000000 OCT 016001000000
|
|
00012 NRCOD EQU *-RCODES
|
|
|
|
00273 -0500 00 0 00430 PROCES CAL RQUEST+1 PROCESS LEFT-HALF RCODE
|
|
00274 0322 00 0 00317 ERA STAR CHECK FOR '*'
|
|
00275 -0100 00 0 00301 TNZ *+4
|
|
00276 0522 00 1 00001 XEC 1,1 IS '*', USE OLD LEFT HALF
|
|
00277 -0320 00 0 00753 ANA =O777777000000
|
|
00300 0020 00 0 00304 TRA *+4
|
|
00301 0074 00 4 00002 TSX BCOCT,4 NOT '*', CONVERT ARG.
|
|
00302 3 00000 0 00430 PTH RQUEST+1
|
|
00303 0767 00 0 00022 ALS 18 PUT IN LEFT HALF
|
|
00304 0044 00 0 00000 PAI SAVE NEW LEFT HALF IN SI
|
|
00305 -0500 00 0 00431 PROCS1 CAL RQUEST+2 NOW FOR RIGHT HALF
|
|
00306 0322 00 0 00317 ERA STAR CHECK FOR '*'
|
|
00307 -0100 00 0 00313 TNZ *+4
|
|
00310 0522 00 1 00001 XEC 1,1 IS '*', USE OLD RIGHT HALF
|
|
00311 -0320 00 0 00725 ANA =O777777
|
|
00312 0020 00 0 00315 TRA *+3
|
|
00313 0074 00 4 00002 TSX BCOCT,4 NOT '*', CONVERT ARG.
|
|
00314 3 00000 0 00431 PTH RQUEST+2
|
|
00315 0043 00 0 00000 OAI ADD RIGHT HALF TO LEFT
|
|
00316 0020 00 1 00002 TRA 2,1 AND RETURN
|
|
|
|
00317 606060606054 STAR BCI 1, *
|
|
00320 0 00000 0 00000 BL
|
|
|
|
00321 AUTH BSS 0
|
|
|
|
00321 OVLBGN
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 8
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
00321 -0500 00 0 00430 CAL RQUEST+1
|
|
00322 0322 00 0 00317 ERA STAR
|
|
00323 -0100 00 0 00326 TNZ *+3
|
|
00324 0500 00 0 00434 CLA AUTHR
|
|
00325 0020 00 0 00330 TRA *+3
|
|
00326 0074 00 4 00024 TSX BCDEC,4
|
|
00327 3 00000 0 00430 PTH RQUEST+1
|
|
00330 0601 60 0 00025 STO* AUTHOR
|
|
00331 0074 00 4 00003 TSX GETMEM,4
|
|
00332 0074 00 4 00004 TSX SETMEM,4
|
|
|
|
00333 OVLEND
|
|
|
|
00333 0020 00 0 00071 TRA TYPE
|
|
|
|
00334 GOD BSS 0
|
|
|
|
00334 OVLBGN
|
|
|
|
00334 0600 60 0 00027 STZ* FS.TST
|
|
00335 -0500 00 0 00430 CAL RQUEST+1
|
|
00336 0322 00 0 00741 ERA =H ON
|
|
00337 -0100 00 0 00071 TNZ TYPE
|
|
00340 -0625 60 0 00027 STL* FS.TST
|
|
|
|
00341 OVLEND
|
|
|
|
00341 0020 00 0 00071 TRA TYPE
|
|
|
|
00342 -0500 00 0 00430 A3SET CAL RQUEST+1
|
|
00343 0322 00 0 00737 ERA =H OFF
|
|
00344 0602 00 0 00652 SLW SPRNSW
|
|
00345 -0100 00 0 00071 TNZ TYPE IF TURNED ON, EXIT
|
|
00346 0074 00 4 00001 TSX FCLOSE,4 OTHERWISE, CLOSE FILE.
|
|
00347 3 00000 0 00734 PTH =H.TAPE.
|
|
00350 3 00000 0 00740 PTH =H A3
|
|
00351 3 00000 0 00351 PTH * NO ERRORS, PLEASE
|
|
00352 0020 00 0 00071 TRA TYPE
|
|
|
|
00353 0074 00 4 00413 START TSX SETBRK,4 END OF INPUT, RESET BREAK LEVEL
|
|
00354 0 00000 0 00054 PZE BREAK ..
|
|
00355 -0500 00 0 00430 CAL RQUEST+1
|
|
00356 0322 00 0 00317 ERA STAR
|
|
00357 0100 00 0 00365 TZE *+6
|
|
00360 0074 00 4 00002 TSX BCOCT,4 SEE IF WHERE TO START IS SPECIFIED
|
|
00361 3 00000 0 00430 PTH RQUEST+1 LOOK AT SECOND WORD
|
|
00362 0100 00 0 00365 TZE *+3 IF ZERO, CONTINUE WITH PROGRAM
|
|
00363 0621 00 0 00407 STA RETURN IF NOT, SET NEW LOCATION
|
|
00364 -0625 00 0 00443 STL RETSW INDICATE RETURN ALREADY SET
|
|
|
|
00365 0074 00 4 00414 TSX GETBRK,4 GET RETURN LOCATION
|
|
00366 -0520 00 0 00443 NZT RETSW IF NON-ZERO, RETURN IS ALREADY SET
|
|
00367 0621 00 0 00407 STA RETURN SAVE RETURN
|
|
00370 0600 00 0 00443 STZ RETSW RESET RETURN SWITCH
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 9
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
00371 0520 00 0 00442 ZET MODE TEST FOR PREVIOUS CONSOLE MODE
|
|
00372 0074 00 4 00421 TSX SETFUL,4 12-BIT, MAKE IT SO
|
|
|
|
00373 0560 00 0 00437 LDQ SQ RESTORE S AND Q BITS
|
|
00374 0500 00 0 00374 CLA * GET BITS INTO AC
|
|
00375 0763 00 0 00001 LLS 1 THAT SHIFT DOES THE S BIT
|
|
00376 0767 00 0 00044 ALS 36 AND THIS ONE DOES THE Q BIT
|
|
00377 -0501 00 0 00435 ORA LAC NOW RESTORE LOGICAL AC
|
|
00400 -0520 00 0 00440 NZT OV TEST OVERFLOW SWITCH
|
|
00401 0140 00 0 00402 TOV *+1 OFF, TURN OFF OVERFLOW
|
|
00402 0560 00 0 00436 LDQ MQ RESTORE MQ
|
|
00403 0441 00 0 00441 LDI SI AND THE SI
|
|
00404 -0774 00 4 00000 X4 AXC **,4 RESTORE INDEX REGISTER 4
|
|
00405 0774 00 2 00000 X2 AXT **,2
|
|
00406 0774 00 1 00000 X1 AXT **,1
|
|
00407 0020 00 0 00000 RETURN TRA ** RETURN TO INTERRUPTED PROGRAM
|
|
|
|
00410 0101 00 0 00736 RDFLXA TIA =HRDFLXA SUPERVISOR CALLS
|
|
00411 0101 00 0 00751 WRFLX TIA =HWRFLX ..
|
|
00412 0101 00 0 00750 WRFLXA TIA =HWRFLXA ..
|
|
00413 0101 00 0 00744 SETBRK TIA =HSETBRK ..
|
|
00414 0101 00 0 00733 GETBRK TIA =HGETBRK ..
|
|
00415 0101 00 0 00747 WHOAMI TIA =HWHOAMI ..
|
|
00416 0101 00 0 00731 CLOCON TIA =HCLOCON ..
|
|
00417 0101 00 0 00730 CLOCOF TIA =HCLOCOF ..
|
|
00420 0101 00 0 00743 SETBCD TIA =HSETBCD ..
|
|
00421 0101 00 0 00745 SETFUL TIA =HSETFUL ..
|
|
|
|
00005 NIN EQU 5 NUMBER OF WORDS TO READ
|
|
00005 NOUT EQU 5 MAXIMUM NUMBER OF ARGS.
|
|
|
|
00422 WD BSS NIN INPUT BUFFER
|
|
00427 RQUEST BSS NOUT BUFFER FOR REQUESTS
|
|
00434 AUTHR BSS 1 USER AUTHOR NUMBER
|
|
|
|
00435 LAC BSS 1 STORAGE FOR MACHINE CONDITIONS
|
|
00436 MQ BSS 1 ..
|
|
00437 SQ BSS 1 ..
|
|
00440 OV BSS 1 ..
|
|
00441 SI BSS 1 ..
|
|
00442 MODE BSS 1 ..
|
|
00443 RETSW BSS 1 RETURN SWITCH
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 10
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
|
|
00444 606225456225 CTABLE BCI 1, SENSE ALLOWABLE COMMANDS
|
|
00445 3 00000 0 00157 PTH SENSE
|
|
00446 602545635170 BCI 1, ENTRY
|
|
00447 3 00000 0 00170 PTH ENTRY
|
|
00450 602343462342 BCI 1, CLOCK
|
|
00451 3 00000 0 00224 PTH CLOCK
|
|
00452 216363212330 BCI 1,ATTACH
|
|
00453 3 00000 0 00232 PTH ATTCH
|
|
00454 606263215163 BCI 1, START
|
|
00455 3 00000 0 00353 PTH START
|
|
00456 606223512144 BCI 1, SCRAM
|
|
00457 3 00000 0 00653 PTH EXIT
|
|
00460 233045234644 BCI 1,CHNCOM
|
|
00461 3 00000 0 00670 PTH CHNCOM
|
|
00462 605125622563 BCI 1, RESET
|
|
00463 3 00000 0 00215 PTH RESET
|
|
00464 604751316543 BCI 1, PRIVL
|
|
00465 3 00000 0 00241 PTH PRIVL
|
|
00466 216463304651 BCI 1,AUTHOR
|
|
00467 3 00000 0 00321 PTH AUTH
|
|
00470 606060274624 BCI 1, GOD
|
|
00471 3 00000 0 00334 PTH GOD
|
|
00472 606060602103 BCI 1, A3
|
|
00473 3 00000 0 00342 PTH A3SET
|
|
00030 NCOMS EQU *-CTABLE
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 11
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
KEY AND SENSE SWITCH TESTING
|
|
|
|
00474 0500 00 0 00510 EVSW CLA EVPT GET POINTER TO MEMORY CELL
|
|
00475 0020 00 0 00477 TRA *+2 SKIP ALTERNATE ENTRY POINT
|
|
|
|
00476 0500 00 0 00512 SW CLA SWPT GET POINTER TO CURRENT SWITCHES
|
|
00477 0621 00 0 00502 STA TESTSW SET PROPER POINTER
|
|
00500 0500 60 4 00001 CLA* 1,4 PICK UP SWITCH TO BE TESTED
|
|
00501 0621 00 0 00503 STA TESTSW+1 SAVE THE NUMBER
|
|
00502 0560 00 0 00000 TESTSW LDQ ** GET BINARY SWITCHES
|
|
00503 -0763 00 0 00000 LGL ** POSITION PROPER BIT
|
|
00504 -0320 00 0 00717 ANA =O1 MASK OUT EXTRANEOUS GARBAGE
|
|
00505 0020 00 4 00002 TRA 2,4 RETURN TO CALLER
|
|
|
|
00506 0500 00 0 00514 KEYS CLA CKEYS RETURN SIGNED ANSWER TO MAD CALLER
|
|
00507 0020 00 4 00001 TRA 1,4 RETURN TO CALLER
|
|
|
|
00510 0 00000 0 00511 EVPT PZE EVSWS POINTER TO MEMORY CELL
|
|
00511 +000000000000 EVSWS OCT 0 REMEMBERS ALL SWITCHES DOWN
|
|
00512 0 00000 0 00513 SWPT PZE SWS POINTER TO CURRENT SETTINGS
|
|
00513 +000000000000 SWS OCT 0 CURRENT SENSE SWITCH SETTINGS
|
|
00514 +000000000000 CKEYS OCT 0 CURRENT CONSOLE ENTRY KEYS
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 12
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
ROUTINE TO TYPE A LINE IN 6-BIT MODE AND
|
|
RETURN TO PREVIOUS MODE
|
|
|
|
00515 0500 00 0 00412 WRIT6A CLA WRFLXA PICK UP 'TIA' TO WRFLXA
|
|
00516 0020 00 0 00520 TRA WRITE6+1 REJOIN ROUTINE
|
|
|
|
00517 0500 00 0 00411 WRITE6 CLA WRFLX PICK UP 'TIA' TO WRFLX
|
|
00520 0601 00 0 00535 STO WRITE PLANT FOR WRITE CALL LATER
|
|
00521 0636 00 4 00532 SCA W6X4,4 SAVE LINKAGE
|
|
00522 -0500 00 4 00001 CAL 1,4 GET ARGUMENT TO ROUTINE
|
|
00523 0602 00 0 00527 SLW WROUT AND PLANT IT
|
|
00524 0074 00 4 00420 TSX SETBCD,4 GET INTO 6-BIT MODE
|
|
00525 0621 00 0 00534 STA WMODE AND REMEMBER OLD MODE
|
|
00526 0074 00 4 00535 TSX WRITE,4 TYPE LINE
|
|
00527 0 00000 0 00000 WROUT **,,** ..
|
|
00530 0520 00 0 00534 ZET WMODE TEST OLD MODE
|
|
00531 0074 00 4 00421 TSX SETFUL,4 12-BIT, RETURN TO IT
|
|
00532 -0774 00 4 00000 W6X4 AXC **,4 RESTORE LINKAGE
|
|
00533 0020 00 4 00002 TRA 2,4 RETURN TO CALLER
|
|
|
|
00534 WMODE BSS 1 NON-ZERO IF CONSOLE WAS IN 12-BIT MODE
|
|
00535 WRITE BSS 1 'TIA' TO PROPER SUPERVISOR CALL
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 13
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
|
|
RED/BLACK SHIFTS FOR NICE PRINT-OUTS
|
|
|
|
00536 -0500 00 0 00553 RED CAL RDSHFT GET RED SHIFT-CODE
|
|
00537 0020 00 0 00541 TRA BLACK+1 REJOIN ROUTINE
|
|
|
|
00540 -0500 00 0 00554 BLACK CAL BLSHFT GET BLACK SHIFT-CODE
|
|
00541 0602 00 0 00555 SLW CSHFT SAVE COLOR SHIFT
|
|
00542 0636 00 4 00551 SCA SHX4,4 SAVE LINKAGE
|
|
|
|
00543 0074 00 4 00421 TSX SETFUL,4 NEED 12-BIT MODE FOR COLOR SHIFTING
|
|
00544 0621 00 0 00556 STA SMODE REMEMBER OLD MODE
|
|
00545 0074 00 4 00412 TSX WRFLXA,4 PRINT COLOR SHIFT CHARACTER
|
|
00546 0 00001 0 00555 CSHFT,,1 ..
|
|
00547 -0520 00 0 00556 NZT SMODE TEST OLD MODE
|
|
00550 0074 00 4 00420 TSX SETBCD,4 6-BIT, RETURN TO IT
|
|
|
|
00551 -0774 00 4 00000 SHX4 AXC **,4 RESTORE LINKAGE
|
|
00552 0020 00 4 00001 TRA 1,4 RETURN TO CALLER
|
|
|
|
00553 +013300570057 RDSHFT OCT 013300570057 RED SHIFT AND TWO NULLS
|
|
00554 +013200570057 BLSHFT OCT 013200570057 BLACK SHIFT AND TWO NULLS
|
|
|
|
00555 CSHFT BSS 1 DESIRED SHIFT CODE
|
|
00556 SMODE BSS 1 NON-ZERO IF CONSOLE WAS IN 12-BIT MODE
|
|
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 14
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
HERE TO WRITE PSEUDO-TAPE
|
|
|
|
00557 -0520 00 0 00652 .SPRNT NZT SPRNSW DOES USER WANT TAPE.Q.
|
|
00560 0020 00 4 00002 TRA 2,4 NO. RETURN IMMEDIATELY.
|
|
00561 0634 00 4 00605 SXA SX4,4
|
|
00562 -0500 00 4 00001 CAL 1,4 GET POINTER TO DATA
|
|
00563 0621 00 0 00604 STA WRDATA AND PUT IN F.S. CALL
|
|
00564 0622 00 0 00604 STD WRDATA
|
|
00565 -0734 00 4 00000 PDX ,4
|
|
00566 0634 00 4 00650 SXA LNMRK,4 AND LENGTH IN LINEMARK
|
|
00567 0074 00 4 00007 SPRNT TSX FWRFIL,4 WRITE LINE-MARK
|
|
00570 3 00000 0 00734 PTH =H.TAPE.
|
|
00571 3 00000 0 00740 PTH =H A3
|
|
00572 3 00000 0 00716 PTH =0 ALWAYS APPENDING
|
|
00573 3 00001 0 00650 PTH LNMRK,,1
|
|
00574 3 00000 0 00735 PTH =-0 NO EOF'S
|
|
00575 3 00000 0 00735 PTH =-0
|
|
00576 3 00000 0 00607 PTH OPEN.Q ERROR, MAYBE NOT OPEN.Q.
|
|
00577 3 00000 0 00651 PTH CODE
|
|
00600 0074 00 4 00010 TSX FWRWAI,4 NOW WRITE DATA
|
|
00601 3 00000 0 00734 PTH =H.TAPE.
|
|
00602 3 00000 0 00740 PTH =H A3
|
|
00603 3 00000 0 00716 PTH =0
|
|
00604 3 00000 0 00000 WRDATA PTH **,,**
|
|
00605 0774 00 4 00000 SX4 AXT **,4 NO EOF'S OR ERROR'S
|
|
00606 0020 00 4 00002 TRA 2,4
|
|
|
|
00607 -0500 00 0 00651 OPEN.Q CAL CODE ERROR WRITING
|
|
00610 0402 00 0 00721 SUB =3 WAS IT 'FILE NOT ACTIVE'.Q.
|
|
00611 -0100 00 0 00627 TNZ EREXIT NO. REAL ERROR. COMPLAIN.
|
|
00612 0074 00 4 00005 TSX FOPEN,4 YES. OPEN THE FILE
|
|
00613 3 00000 0 00752 PTH =HW
|
|
00614 3 00000 0 00734 PTH =H.TAPE.
|
|
00615 3 00000 0 00740 PTH =H A3
|
|
00616 3 00000 0 00716 PTH =0
|
|
00617 3 00000 0 00720 PTH =2
|
|
00620 3 00000 0 00627 PTH EREXIT COMPLAIN IF ERROR
|
|
00621 0074 00 4 00006 TSX FBUFFE,4 ALSO BUFFER IT
|
|
00622 3 00000 0 00734 PTH =H.TAPE.
|
|
00623 3 00000 0 00740 PTH =H A3
|
|
00624 3 00660 0 00000 A3BUF PTH **,,432
|
|
00625 3 00000 0 00627 PTH EREXIT COMPLAIN IF ERROR
|
|
00626 0020 00 0 00567 TRA SPRNT TRY WRITING AGAIN.
|
|
|
|
00627 0600 00 0 00652 EREXIT STZ SPRNSW STOP TRYING TO WRITE
|
|
00630 0074 00 4 00011 TSX FPRNTE,4 COMPLAIN ABOUT ERROR
|
|
00631 0020 00 0 00605 TRA SX4 THEN RETURN.
|
|
|
|
00632 0634 00 4 00640 .FOUT SXA FX4,4 HERE TO CLOSE '.TAPE. A3'
|
|
00633 0074 00 4 00001 TSX FCLOSE,4
|
|
00634 3 00000 0 00734 PTH =H.TAPE.
|
|
00635 3 00000 0 00740 PTH =H A3
|
|
00636 3 00000 0 00642 PTH FOUTER POSSIBLE ERROR
|
|
00637 3 00000 0 00651 PTH CODE
|
|
00640 0774 00 4 00000 FX4 AXT **,4
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 15
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
00641 0020 00 4 00001 TRA 1,4 RETURN
|
|
|
|
00642 0500 00 0 00651 FOUTER CLA CODE IF ERROR WAS
|
|
00643 0402 00 0 00721 SUB =3 'FILE NOT ACTIVE',
|
|
00644 0100 00 0 00640 TZE FX4 DON'T COMPLAIN.
|
|
00645 0520 00 0 00652 ZET SPRNSW ALSO IF USER DOESN'T WANT FILE.
|
|
00646 0074 00 4 00011 TSX FPRNTE,4 OTHERWISE ...
|
|
00647 0020 00 0 00640 TRA FX4 AND RETURN.
|
|
|
|
00650 -377777000000 LNMRK OCT 777777000000
|
|
00651 0 00000 0 00000 CODE
|
|
00652 0 00000 0 00000 SPRNSW
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 16
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
EXIT AND SHUT-DOWN ROUTINES
|
|
|
|
00653 0636 00 4 00666 EXIT SCA EXITX4,4 SAVE LINKAGE
|
|
00654 0074 00 4 00517 TSX WRITE6,4 ANNOUNCE THAT 'EXIT' WAS CALLED
|
|
00655 0 00002 0 00714 EXITMS,,2 ..
|
|
|
|
00656 OVLBGN SKIP THIS CODE IF SALVAGER
|
|
|
|
00656 0074 00 4 00023 TSX BFCLOS,4 CLOSE ANY 'BF' FILES
|
|
00657 3 00000 0 00726 PTH =HALL ..
|
|
00660 3 00000 0 00735 PTH =-0 ..
|
|
00661 3 00000 0 00662 PTH *+1 NO ERRORS, PLEASE
|
|
|
|
00662 0074 00 4 00022 TSX CLOSE,4 CLOSE SIMULATED FILES
|
|
00663 3 00000 0 00726 PTH =HALL ALL OF THEM
|
|
00664 3 00000 0 00735 PTH =-0 ..
|
|
00665 3 00000 0 00666 PTH *+1 IGNORE ERRORS
|
|
|
|
00666 OVLEND END OF SALVAGER OVERLAY
|
|
|
|
00666 -0774 00 4 00000 EXITX4 AXC **,4 RESTORE LINKAGE
|
|
00667 0020 00 0 00672 TRA DORMNT SET TO GO DORMANT
|
|
|
|
00670 -0500 00 0 00727 CHNCOM CAL =HCHNCOM SET CALL TO CONTINUE CHAIN, IF ANY
|
|
00671 1 77777 4 00673 TXI DORMNT+1,4,-1 ADJUST CALL LINKAGE
|
|
|
|
00672 DEAD EQU * DEAD IS SAME AS DORMNT
|
|
00672 -0500 00 0 00732 DORMNT CAL =HDORMNT SET CALL TO STOP
|
|
00673 0602 00 0 00713 SLW CHAIN+1 PLANT PROPER WORD
|
|
00674 1 77777 4 00675 TXI *+1,4,-1 ADJUST LINKAGE FOR RETURNS
|
|
00675 0636 00 4 00407 SCA RETURN,4 SAVE RETURN
|
|
00676 -0625 00 0 00443 STL RETSW SET RETURN SWITCH
|
|
|
|
00677 0074 00 4 00632 TSX .FOUT,4 CLOSE POSSIBLE '.TAPE. A3'
|
|
|
|
00700 0074 00 4 00013 TSX IOFINI,4 SHUT DOWN PSEUDO FILE SYSTEM
|
|
00701 3 00000 0 00702 PTH *+1 NO ERRORS, PLEASE
|
|
|
|
00702 0074 00 4 00000 TSX MDINIT,4 RESET SIMULATOR ADAPTER
|
|
00703 0074 00 4 00001 TSX FCLOSE,4 CLOSE ALL CTSS FILES
|
|
00704 3 00000 0 00726 PTH =HALL ..
|
|
00705 3 00000 0 00735 PTH =-0 ..
|
|
00706 3 00000 0 00707 PTH *+1 NO ERRORS, PLEASE
|
|
00707 0074 00 4 00712 TSX CHAIN,4 FINISH UP
|
|
00710 3 00000 0 00001 PTH 1 FOR POSSIBLE CHNCOM CALLS
|
|
00711 0020 00 0 00071 TRA TYPE IF RETURN, GO ASK WHAT TO DO NEXT
|
|
|
|
00712 HALT EQU * EMERGENCY STOP
|
|
00712 0101 00 0 00713 CHAIN TIA *+1 SUPERVISOR CALL
|
|
00713 244651444563 BCI 1,DORMNT PRESET TO CALL DORMNT
|
|
|
|
00714 602567316360 EXITMS BCI 2, EXIT CALLED.
|
|
00715 232143432524
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 17
|
|
D.R. WIDRIG MAY 1966 MODIFIED 06/08/68 BY D.A. ANDERSON
|
|
|
|
END
|
|
|
|
LITERALS
|
|
00716 000000000000
|
|
00717 000000000001
|
|
00720 000000000002
|
|
00721 000000000003
|
|
00722 000000000055
|
|
00723 000000000060
|
|
00724 000000000660
|
|
00725 000000777777
|
|
00726 214343606060
|
|
00727 233045234644
|
|
00730 234346234626
|
|
00731 234346234645
|
|
00732 244651444563
|
|
00733 272563225142
|
|
00734 336321472533
|
|
00735 400000000000
|
|
00736 512426436721
|
|
00737 606060462626
|
|
00740 606060602103
|
|
00741 606060604645
|
|
00742 606060606060
|
|
00743 622563222324
|
|
00744 622563225142
|
|
00745 622563266443
|
|
00746 637047253333
|
|
00747 663046214431
|
|
00750 665126436721
|
|
00751 665126436760
|
|
00752 666060606060
|
|
00753 777777000000
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 1
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
754 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
|
|
|
|
0REFERENCES TO DEFINED SYMBOLS
|
|
320 BL 101, 116, 125, 133, 135
|
|
436 MQ 54, 402
|
|
116 OK 111
|
|
440 OV 61, 63, 400
|
|
441 SI 55, 403
|
|
437 SQ 60, 373
|
|
476 SW 0
|
|
422 WD 41, 43, 76, 104
|
|
406 X1 66
|
|
405 X2 65
|
|
404 X4 64
|
|
640 FX4 632, 644, 647
|
|
334 GOD 471
|
|
155 IGN 152
|
|
435 LAC 56, 377
|
|
5 NIN 76, 100, 104, 422
|
|
536 RED 0, 71, 146
|
|
513 SWS 165, 512
|
|
605 SX4 561, 631
|
|
321 AUTH 467
|
|
651 CODE 577, 607, 637, 642
|
|
672 DEAD 0, 672
|
|
510 EVPT 474
|
|
474 EVSW 0
|
|
653 EXIT 0, 457
|
|
712 HALT 0, 712
|
|
17 IORS 217
|
|
16 IOST 45
|
|
506 KEYS 0
|
|
442 MODE 70, 371
|
|
5 NOUT 77, 103, 120, 122, 130, 422, 427
|
|
551 SHX4 542
|
|
317 STAR 127, 160, 171, 203, 274, 306, 322, 356
|
|
512 SWPT 476
|
|
71 TYPE 154, 161, 167, 214, 223, 227, 231, 236, 240, 260, 333, 337, 341, 345, 352, 711
|
|
532 W6X4 521
|
|
624 A3BUF 51
|
|
342 A3SET 473
|
|
232 ATTCH 232, 453
|
|
434 AUTHR 44, 47, 324
|
|
24 BCDEC 42, 326
|
|
2 BCOCT 162, 176, 210, 301, 313, 360
|
|
540 BLACK 0, 74, 153, 537
|
|
133 BLANK 112
|
|
54 BREAK 354
|
|
712 CHAIN 673, 707
|
|
514 CKEYS 173, 205, 213, 506
|
|
224 CLOCK 451
|
|
22 CLOSE 662
|
|
555 CSHFT 541, 546
|
|
15 ENBSW 216
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 2
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
170 ENTRY 447
|
|
511 EVSWS 166, 510
|
|
5 FOPEN 612
|
|
104 INPUT 124
|
|
632 .FOUT 0, 677
|
|
650 LNMRK 566, 573
|
|
30 NCOMS 141, 142, 144, 474
|
|
12 NRCOD 242, 243, 252, 273
|
|
241 PRIVL 465
|
|
215 RESET 463
|
|
443 RETSW 34, 364, 366, 370, 676
|
|
157 SENSE 445
|
|
12 SETIO 46
|
|
556 SMODE 544, 547
|
|
567 SPRNT 626
|
|
353 START 455
|
|
534 WMODE 525, 530
|
|
411 WRFLX 0, 72, 151, 517
|
|
535 WRITE 520, 526
|
|
527 WROUT 523
|
|
20 ATTACH 232
|
|
25 AUTHOR 330
|
|
23 BFCLOS 656
|
|
554 BLSHFT 540
|
|
670 CHNCOM 0, 461
|
|
140 CKRQST 126, 132
|
|
417 CLOCOF 0, 224
|
|
416 CLOCON 0, 230
|
|
444 CTABLE 142, 144, 474
|
|
672 DORMNT 0, 667, 671
|
|
125 ENDINP 115
|
|
627 EREXIT 611, 620, 625
|
|
714 EXITMS 655
|
|
666 EXITX4 653
|
|
6 FBUFFE 621
|
|
1 FCLOSE 346, 633, 703
|
|
642 FOUTER 636
|
|
11 FPRNTE 630, 646
|
|
27 FS.TST 334, 340
|
|
7 FWRFIL 567
|
|
10 FWRWAI 600
|
|
414 GETBRK 0, 365
|
|
3 GETMEM 50, 256, 331
|
|
123 IGNORE 114, 134, 137
|
|
13 IOFINI 221, 700
|
|
14 IORSET 220
|
|
32 .SETUP 0
|
|
557 .SPRNT 0
|
|
0 MDINIT 36, 702
|
|
101 NEWOUT
|
|
106 NXTCHR 123
|
|
607 OPEN.Q 576
|
|
21 PRNTER 237
|
|
273 PROCES 247
|
|
305 PROCS1 253
|
|
1 COMPATIBILITY PACKAGE FOR PSEUDO I/O SYSTEM PAGE 3
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
261 RCODES 243, 252, 273
|
|
410 RDFLXA 0, 75
|
|
553 RDSHFT 536
|
|
407 RETURN 33, 363, 367, 675
|
|
427 RQUEST 103, 120, 122, 130, 140, 150, 157, 163, 170, 177, 202, 211, 225, 233, 234, 241, 273
|
|
302, 305, 314, 321, 327, 335, 342, 355, 361
|
|
0 SALMOD 32
|
|
420 SETBCD 0, 67, 524, 550
|
|
413 SETBRK 0, 353
|
|
421 SETFUL 0, 372, 531, 543
|
|
4 SETMEM 53, 257, 332
|
|
652 SPRNSW 37, 344, 557, 627, 645
|
|
502 TESTSW 477, 501
|
|
26 UPRVBT 250, 254, 255
|
|
415 WHOAMI 0, 40
|
|
604 WRDATA 563, 564
|
|
412 WRFLXA 0, 147, 515, 545
|
|
515 WRIT6A 0
|
|
517 WRITE6 0, 516, 654
|
|
|
|
0 NO ERROR IN ABOVE ASSEMBLY.
|
|
|
|
|
|
|
|
|
|
IOPAC BCD 06/08/68 0217.5 4451 00000
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 1
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
00534 ENTRY SETIO TO INITIALIZE PSEUDO FILE SYSTEM
|
|
00615 ENTRY GETIME TO GET DATE AND TIME OF DAY
|
|
00625 ENTRY FERRTN TO SET RETURN FOR UNDEFINED ERRORS
|
|
00653 ENTRY TILOCK TO SET INTERLOCK RETURN
|
|
00710 ENTRY EPRINT TO PRINT ON SIMULATED PRINTER
|
|
00712 ENTRY PRINT TO PRINT ON SIMULATED PRINTER
|
|
00714 ENTRY PUNCH TO PUNCH ON SIMULATED CARD PUNCH
|
|
00734 ENTRY CMEXIT TO RETURN TO INTERRUPTED PROGRAM
|
|
00745 ENTRY ALLSAV TO SAVE MACHINE CONDITIONS ON A TRAP
|
|
01000 ENTRY ALLRST TO RESTORE MACHINE CONDITIONS
|
|
01027 ENTRY ENBSW TO SET TRAP SWITCH
|
|
01036 ENTRY ENABLE COMMON ENABLE WORD
|
|
00607 ENTRY GETMEM TO GET CURRENT MEMORY BOUND
|
|
00570 ENTRY SETMEM TO SET NEW MEMORY BOUND
|
|
00611 ENTRY AUTHOR POINTER TO USER AUTHOR NUMBER
|
|
00612 ENTRY UPRVBT POINTER TO USER RESTRICTION CODE
|
|
|
|
EXTERN PRNTER,DORMNT,CLOCON,WRITE6,RED,BLACK
|
|
EXTERN SETBCD,WRFLX,
|
|
|
|
|
|
00000 475145632551 PRNTER
|
|
00001 244651444563 DORMNT
|
|
00002 234346234645 CLOCON
|
|
00003 665131632506 WRITE6
|
|
00004 512524606060 RED
|
|
00005 224321234260 BLACK
|
|
00006 622563222324 SETBCD
|
|
00007 665126436760 WRFLX
|
|
00010 314631453163 IOINIT
|
|
00011 233045276462 CHNGUS
|
|
00012 646263216360 USTAT
|
|
00013 622563512147 SETRAP
|
|
00014 622563212260 SETAB
|
|
00015 622563646251 SETUSR
|
|
|
|
|
|
00361 STBL EQU 21+10*22 AFST LENGTH FOR 10 FILES
|
|
00133 1QL EQU 1+9*10 DISK/DRUM QUEUE LENGTH
|
|
00000 2QL EQU 0 DISK USES DRUM QUEUE
|
|
00000 3QL EQU 0 TAPE QUEUE LENGTH (NO TPSM)
|
|
|
|
00020 STATBL BSS STBL AFST
|
|
00401 QUEUE1 BSS 1QL STORAGE FOR DRUM STRATEGY MODULE
|
|
00534 QUEUE2 BSS 2QL STORAGE FOR DISK STRATEGY MODULE
|
|
00534 QUEUE3 BSS 3QL STORAGE FOR TAPE STRATEGY MODULE
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 2
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
|
|
INITIALIZE FILE SYSTEM AND I/O PACKAGE
|
|
|
|
00534 -0625 00 0 01027 SETIO STL ENBSW INDICATE TRAPS ARE LEGAL
|
|
00535 0636 00 4 00566 SCA SETX4,4 SAVE LINKAGE
|
|
00536 -0500 60 4 00001 CAL* 1,4 GET AUTHNO
|
|
00537 0602 00 0 00611 SLW AUTHOR SAVE IT TO GIVE TO FILE SYSTEM
|
|
|
|
00540 0074 00 4 00615 TSX GETIME,4 PRIME SYSTEM WITH CURRENT DATE AND TIME
|
|
00541 0074 00 4 00002 TSX CLOCON,4 TURN ON SIMULATED CLOCK
|
|
|
|
00542 0074 00 4 00010 TSX $IOINIT,4 INITIALIZE FILE SYSTEM
|
|
00543 3 00000 0 00634 PTH IOERTN ERROR RETURN
|
|
00544 3 00000 0 00624 PTH DATEYR DATE AS MMDDYY
|
|
00545 3 00000 0 00005 PTH TIMNOW TIME OF DAY IN 60THS OF A SECOND
|
|
00546 3 00000 0 01036 PTH ENABLE COMMON ENABLE WORD
|
|
|
|
00547 0074 00 4 00011 TSX $CHNGUS,4 SET USER 1 AS FILE SYSTEM USER
|
|
00550 3 00000 0 01040 PTH =1 ..
|
|
|
|
00551 0074 00 4 00012 TSX $USTAT,4 SET UP STORAGE FOR QUEUES
|
|
00552 3 00361 0 00020 PTH STATBL,,STBL ..
|
|
00553 3 00133 0 00401 PTH QUEUE1,,1QL ..
|
|
00554 3 00000 0 00534 PTH QUEUE2,,2QL ..
|
|
00555 3 00000 0 00534 PTH QUEUE3,,3QL ..
|
|
|
|
00556 0074 00 4 00013 TSX $SETRAP,4 SET UP INTERRUPT LOCATION
|
|
00557 3 00000 0 00662 PTH SSTRAP ..
|
|
|
|
00560 0074 00 4 00607 TSX GETMEM,4 GET CURRENT MEMORY BOUND FROM CTSS
|
|
00561 0074 00 4 00570 TSX SETMEM,4 TELL PSEUDO-FILE SYSTEM ABOUT IT
|
|
|
|
00562 0074 00 4 00014 TSX $SETAB,4 SET TO MEMORY A
|
|
00563 3 00000 0 01040 PTH =1 ..
|
|
00564 3 00000 0 01040 PTH =1 ..
|
|
00565 3 00000 0 01040 PTH =1 ..
|
|
|
|
00566 -0774 00 4 00000 SETX4 AXC **,4 RESTORE LINKAGE
|
|
00567 0020 00 4 00002 TRA 2,4 RETURN
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 3
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
ON MEMORY BOUND CHANGES, TELL I/O ABOUT IT
|
|
|
|
00570 0636 00 4 00604 SETMEM SCA SETMX4,4 SAVE LINKAGE
|
|
00571 0602 00 0 00614 SLW SETLAC AND AC
|
|
00572 0734 00 4 00000 PAX 0,4 GET NEW MEMORY BOUND
|
|
00573 -0634 00 4 00613 SXD MEMBND,4 SAVE FOR FILE SYSTEM
|
|
|
|
00574 0074 00 4 00610 TSX STMEM,4 TELL CTSS ABOUT NEW MEMORY BOUND
|
|
|
|
00575 0074 00 4 00015 TSX $SETUSR,4 TELL FILE SYSTEM ABOUT IT
|
|
00576 3 00000 0 01040 PTH =1 USER 1
|
|
00577 3 00000 0 00612 PTH UPRVBT USER PRIVILEGE CODE
|
|
00600 3 00000 0 00611 PTH AUTHOR AUTHNO FROM LAST CALL TO 'SETIO'
|
|
00601 3 00000 0 00613 PTH MEMBND USER MEMORY BOUND
|
|
00602 3 00000 0 01037 PTH =0 USER RELOCATION
|
|
00603 3 00000 0 01040 PTH =1 HIGHEST PRIORITY
|
|
|
|
00604 -0774 00 4 00000 SETMX4 AXC **,4 RESTORE LINKAGE
|
|
00605 -0500 00 0 00614 CAL SETLAC AND AC
|
|
00606 0020 00 4 00001 TRA 1,4 RETURN TO USER
|
|
|
|
00607 0101 00 0 01042 GETMEM TIA =HGETMEM SUPERVISOR CALLS
|
|
00610 0101 00 0 01043 STMEM TIA =HSETMEM ..
|
|
|
|
00611 AUTHOR BSS 1 AUTHNO FOR THIS USER
|
|
00612 +015002777777 UPRVBT OCT 015002777777 VERY PRIVILEGED USER
|
|
00613 0 00000 0 00000 MEMBND PZE 0,** USER MEMORY BOUND
|
|
|
|
00614 SETLAC BSS 1 SAVED AC
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 4
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
TIME AND DATE FIDDLING
|
|
|
|
00615 0636 00 4 00621 GETIME SCA GETX4,4 SAVE LINKAGE
|
|
00616 0074 00 4 00623 TSX GTIME,4 GET TIME FROM SUPERVISOR
|
|
00617 0602 00 0 00005 SLW TIMNOW SAVE TIME
|
|
00620 -0600 00 0 00624 STQ DATEYR AND DATE
|
|
00621 -0774 00 4 00000 GETX4 AXC **,4 RESTORE LINKAGE
|
|
00622 0020 00 4 00001 TRA 1,4 RETURN
|
|
|
|
00623 0101 00 0 01041 GTIME TIA =HGETIME SUPERVISOR CALL
|
|
|
|
00005 TIMNOW EQU 5 CURRENT TIME IS IN CLOCK CELL
|
|
00624 DATEYR BSS 1 CURRENT DATE
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 5
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
HANDLE USER FILE INTERRUPTS
|
|
|
|
00625 0636 00 4 00632 FERRTN SCA FERRX4,4 SAVE LINKAGE
|
|
00626 -0500 00 4 00001 CAL 1,4 ERROR RETURN (PZE RTNLOC)
|
|
00627 0734 00 4 00000 PAX 0,4 HANG ONTO RETURN
|
|
00630 0500 00 0 00645 CLA FERTN GET OLD RETURN INTO SIGNED AC
|
|
00631 0634 00 4 00645 SXA FERTN,4 SAVE NEW RETURN
|
|
00632 -0774 00 4 00000 FERRX4 AXC **,4 RESTORE LINKAGE
|
|
00633 0020 00 4 00002 TRA 2,4 RETURN TO CALLER
|
|
|
|
00634 0520 00 0 00645 IOERTN ZET FERTN ERROR FROM FILE SYSTEM, CHECK RETURN
|
|
00635 0020 60 0 00645 TRA* FERTN USER SUPPLIED ONE, TAKE IT
|
|
|
|
00636 0074 00 4 00004 TSX RED,4 NONE SUPPLIED, THE END
|
|
00637 0074 00 4 00006 TSX SETBCD,4 GET INTO 6-BIT MODE
|
|
00640 0074 00 4 00000 TSX PRNTER,4 INVOKE PSEUDO 'PRNTER'
|
|
00641 0074 00 4 00007 TSX WRFLX,4 PRINT DEATH MESSAGE
|
|
00642 0 00005 0 00646 NOERTN,,5 ..
|
|
00643 0074 00 4 00005 TSX BLACK,4 RETURN TO PLAIN OLD BLACK LETTERS
|
|
00644 0020 00 0 00001 TRA DORMNT SHUT DOWN
|
|
|
|
00645 0 00000 0 00000 FERTN PZE ** USER ERROR RETURN LOCATION
|
|
00646 604546602551 NOERTN BCI 5, NO ERROR RETURN SPECIFIED
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 6
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
CHECK AND SET RETURN ON FILE INTERLOCK
|
|
|
|
00653 0636 00 4 00660 TILOCK SCA TILX4,4 SAVE LINKAGE
|
|
00654 -0500 00 4 00001 CAL 1,4 GET INTERLOCK RETURN (PZE RTNLOC)
|
|
00655 0734 00 4 00000 PAX 0,4 HANG ONTO RETURN
|
|
00656 0500 00 0 00705 CLA UILOCK GET OLD RETURN INTO SIGNED AC
|
|
00657 0634 00 4 00705 SXA UILOCK,4 SAVE NEW RETURN
|
|
00660 -0774 00 4 00000 TILX4 AXC **,4 RESTORE LINKAGE
|
|
00661 0020 00 4 00002 TRA 2,4 RETURN TO USER
|
|
|
|
00662 -0500 60 4 00003 SSTRAP CAL* 3,4 INTERRUPT FROM FILE SYSTEM, CHECK IT
|
|
00663 0621 00 0 00673 STA SSTIR4 SAVE USER IR4
|
|
00664 -0500 60 4 00002 CAL* 2,4 GET INTERRUPT CODE
|
|
00665 0734 00 5 00000 PAX 0,5 INTO IR5
|
|
00666 -3 00003 5 00670 TXL IGNINT,5,3 IGNORE CODES 1-3
|
|
00667 -3 00004 5 00671 TXL FILOCK,5,4 SKIP OUT ON FILE INTERLOCKED
|
|
00670 0020 00 4 00006 IGNINT TRA 6,4 IGNORE ALL OTHER CODES
|
|
|
|
00671 -0520 00 0 00705 FILOCK NZT UILOCK CHECK USER SPECIFIED RETURN
|
|
00672 0020 00 0 00676 TRA FILWAT NOPE, HOPE FOR THE BEST
|
|
00673 0774 00 4 00000 SSTIR4 AXT **,4 YES, RESTORE LAST IR4 FOR USER
|
|
00674 0564 00 0 01036 ENB ENABLE ENABLE SO WE MIGHT CURE THIS LOCK
|
|
00675 0020 60 0 00705 TRA* UILOCK AND GO TO RETURN LOCATION
|
|
|
|
00676 0636 00 4 00703 FILWAT SCA FILWX4,4 FILE WAIT, SAVE LINKAGE
|
|
00677 0074 00 4 00004 TSX RED,4 YAHOO.. RED LETTER DAY
|
|
00700 0074 00 4 00003 TSX WRITE6,4 TELL THE OLD BOY ABOUT THE FILE WAIT
|
|
00701 0 00002 0 00706 WATMS,,2 ..
|
|
00702 0074 00 4 00005 TSX BLACK,4 BACK TO BLACK
|
|
00703 -0774 00 4 00000 FILWX4 AXC **,4 RESTORE LINKAGE
|
|
00704 0020 00 4 00006 TRA 6,4 RETURN TO FILE SYSTEM
|
|
|
|
00705 0 00000 0 00000 UILOCK PZE ** USER INTERLOCK RETURN
|
|
00706 602631432560 WATMS BCI 2, FILE WAIT
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 7
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
ONLINE PRINT/PUNCH
|
|
|
|
00710 -0500 00 0 00730 EPRINT CAL EPRNTM PICK UP IDENTIFYING HEADER
|
|
00711 0020 00 0 00715 TRA PUNCH+1 REJOIN PRINT ROUTINE
|
|
|
|
00712 -0500 00 0 00731 PRINT CAL PRNTM PICK UP IDENTIFYING PRINT HEADER
|
|
00713 0020 00 0 00715 TRA PUNCH+1 REJOIN GENERAL ROUTINE
|
|
|
|
00714 -0500 00 0 00732 PUNCH CAL PNCHM PICK UP IDENTIFYING HEADER
|
|
00715 0602 00 0 00733 SLW HMES PLANT HEADER
|
|
|
|
00716 0636 00 4 00726 SCA OUTX4,4 SAVE LINKAGE
|
|
00717 0500 00 4 00001 CLA 1,4 GET ARGUMENT TO ROUTINE
|
|
00720 0621 00 0 00725 STA OUTPT PLANT BASE ADDRESS
|
|
00721 0622 00 0 00725 STD OUTPT AND WORD COUNT
|
|
|
|
00722 0074 00 4 00003 TSX WRITE6,4 PRINT HEADER ON CONSOLE
|
|
00723 0 00001 0 00733 HMES,,1 ..
|
|
|
|
00724 0074 00 4 00003 TSX WRITE6,4 CRANK OUT USER MESSAGE
|
|
00725 0 00000 0 00000 OUTPT **,,** BUFF,,N
|
|
|
|
00726 -0774 00 4 00000 OUTX4 AXC **,4 RESTORE LINKAGE
|
|
00727 0020 00 4 00002 TRA 2,4 RETURN
|
|
|
|
00730 254751314563 EPRNTM BCI 1,EPRINT
|
|
00731 604751314563 PRNTM BCI 1, PRINT
|
|
00732 604764452330 PNCHM BCI 1, PUNCH
|
|
|
|
00733 HMES BSS 1 HEADER
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 8
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
EXIT AND RETURN ROUTINES
|
|
|
|
00734 0604 00 0 00743 CMEXIT STI CMXSI SAVE SI
|
|
00735 0441 60 4 00002 LDI* 2,4 GET RETURN
|
|
00736 0604 00 0 00744 STI CMXRTN AND PLANT IT
|
|
00737 0522 00 4 00001 XEC 1,4 RELOAD IR4
|
|
00740 0441 00 0 00743 LDI CMXSI AND RESTORE SI
|
|
00741 0564 00 0 01036 ENB ENABLE RE-ENABLE
|
|
00742 0020 60 0 00744 TRA* CMXRTN AND RETURN TO USER
|
|
|
|
00743 CMXSI BSS 1
|
|
00744 CMXRTN BSS 1
|
|
|
|
* * * * * * * * * * * *
|
|
|
|
SAVE/RESTORE MACHINE CONDITIONS
|
|
|
|
00745 -0520 00 0 01027 ALLSAV NZT ENBSW HAVE WE TAKEN PREVIOUS TRAP
|
|
00746 0000 00 0 00746 HTR * YES, BIG TROUBLE
|
|
00747 0600 00 0 01027 STZ ENBSW NO, SET SWITCH FOR THIS TRAP
|
|
00750 0636 00 4 00777 SCA ALLXR4,4 SAVE LOCATION OF THIS CALLER
|
|
00751 0634 00 1 01005 SXA TRPIR1,1 SAVE BASIC MACHINE CONDITIONS
|
|
00752 0634 00 2 01006 SXA TRPIR2,2 ..
|
|
00753 0634 00 3 01007 SXA TRPIR3,3 ..
|
|
00754 0774 00 3 00000 AXT 0,3 FIGURE OUT TAG MODE
|
|
00755 0774 00 1 00001 AXT 1,1 ..
|
|
00756 0600 00 0 01035 STZ TRPMTM RESET SWITCH
|
|
00757 -3 00000 3 00763 TXL 7TAG,3,0 SKIP IF IN 7-TAG MODE
|
|
00760 -0625 00 0 01035 STL TRPMTM 3-TAG MODE, SET SWITCH
|
|
00761 0760 00 0 00016 LMTM GET INTO 7-TAG MODE
|
|
00762 0634 00 3 01007 SXA TRPIR3,3 RESAVE IR3
|
|
00763 0634 00 5 01010 7TAG SXA TRPIR5,5 SAVE REST OF MACHINE
|
|
00764 0634 00 6 01011 SXA TRPIR6,6 ..
|
|
00765 0634 00 7 01012 SXA TRPIR7,7 ..
|
|
00766 0604 00 0 01033 STI TRPSI ..
|
|
00767 -0600 00 0 01030 STQ TRPMQ ..
|
|
00770 0602 00 0 01032 SLW TRPLAC ..
|
|
00771 0771 00 0 00002 ARS 2 GET AC S AND Q BITS
|
|
00772 0601 00 0 01031 STO TRPSQ ..
|
|
00773 0600 00 0 01034 STZ TRPOV GET OVERFLOW TRIGGER
|
|
00774 -0140 00 0 00776 TNO *+2 TEST TRIGGER
|
|
00775 -0625 00 0 01034 STL TRPOV ON, SET SWITCH
|
|
00776 0020 00 4 00001 TRA 1,4 RETURN
|
|
|
|
00777 0 00000 0 00000 ALLXR4 PZE **,,** ALLSAV,,ALLRST
|
|
|
|
01000 0520 00 0 01027 ALLRST ZET ENBSW SEE IF CALLED AT TRAP TIME
|
|
01001 0000 00 0 01001 HTR * NO, BIG TROUBLE
|
|
01002 -0625 00 0 01027 STL ENBSW SET SWITCH
|
|
01003 0760 00 0 00016 LMTM 7-TAG MODE
|
|
01004 -0636 00 4 00777 SCD ALLXR4,4 SAVE LOCATION OF CALLER
|
|
01005 0774 00 1 00000 TRPIR1 AXT **,1 RESTORE MACHINE
|
|
01006 0774 00 2 00000 TRPIR2 AXT **,2 ..
|
|
01007 0774 00 3 00000 TRPIR3 AXT **,3 ..
|
|
01010 0774 00 5 00000 TRPIR5 AXT **,5 ..
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 9
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
01011 0774 00 6 00000 TRPIR6 AXT **,6 ..
|
|
01012 0774 00 7 00000 TRPIR7 AXT **,7 ..
|
|
01013 0520 00 0 01035 ZET TRPMTM TEST FOR TAG MODE
|
|
01014 -0760 00 0 00016 EMTM 3-TAG MODE
|
|
01015 0560 00 0 01031 LDQ TRPSQ RESTORE S AND Q BITS TO AC
|
|
01016 0500 00 0 01016 CLA * AND MAKE SURE OVERFLOW LIGHT GOES ON
|
|
01017 0763 00 0 00001 LLS 1 TURNS ON S BIT
|
|
01020 0767 00 0 00044 ALS 36 TURNS ON Q BIT AND OVERFLOW
|
|
01021 -0501 00 0 01032 ORA TRPLAC GET LOGICAL AC
|
|
01022 0560 00 0 01030 LDQ TRPMQ RESTORE MQ
|
|
01023 0441 00 0 01033 LDI TRPSI AND SI
|
|
01024 -0520 00 0 01034 NZT TRPOV RESTORE OVERFLOW STATUS
|
|
01025 0140 00 0 01026 TOV *+1 OFF
|
|
01026 0020 00 4 00001 TRA 1,4 RETURN
|
|
|
|
01027 0 00000 0 00000 ENBSW PZE ** NON-ZERO DURING ENABLE TIME
|
|
|
|
01030 TRPMQ BSS 1 MACHINE CONDITION STORAGE
|
|
01031 TRPSQ BSS 1 ..
|
|
01032 TRPLAC BSS 1 ..
|
|
01033 TRPSI BSS 1 ..
|
|
01034 TRPOV BSS 1 ..
|
|
01035 0 00000 0 00000 TRPMTM PZE ** NON-ZERO IF IN 3-TAG MODE
|
|
|
|
01036 +000000400000 ENABLE OCT 400000 COMMON ENABLE WORD
|
|
|
|
END
|
|
|
|
LITERALS
|
|
01037 000000000000
|
|
01040 000000000001
|
|
01041 272563314425
|
|
01042 272563442544
|
|
01043 622563442544
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 1
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
1044 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
|
|
|
|
0REFERENCES TO DEFINED SYMBOLS
|
|
133 1QL 20, 401, 553
|
|
0 2QL 20, 534, 554
|
|
0 3QL 20, 534, 555
|
|
4 RED 636, 677
|
|
763 7TAG 757
|
|
733 HMES 715, 723
|
|
361 STBL 20, 552
|
|
5 BLACK 643, 702
|
|
743 CMXSI 734, 740
|
|
1027 ENBSW 0, 534, 745, 747, 1000, 1002
|
|
645 FERTN 630, 631, 634, 635
|
|
621 GETX4 615
|
|
623 GTIME 616
|
|
725 OUTPT 720, 721
|
|
726 OUTX4 716
|
|
732 PNCHM 714
|
|
712 PRINT 0
|
|
731 PRNTM 712
|
|
714 PUNCH 0, 711, 713
|
|
14 SETAB 562
|
|
534 SETIO 0
|
|
566 SETX4 535
|
|
610 STMEM 574
|
|
660 TILX4 653
|
|
1030 TRPMQ 767, 1022
|
|
1034 TRPOV 773, 775, 1024
|
|
1033 TRPSI 766, 1023
|
|
1031 TRPSQ 772, 1015
|
|
12 USTAT 551
|
|
706 WATMS 701
|
|
7 WRFLX 641
|
|
1000 ALLRST 0
|
|
745 ALLSAV 0
|
|
777 ALLXR4 750, 1004
|
|
611 AUTHOR 0, 537, 600
|
|
11 CHNGUS 547
|
|
2 CLOCON 541
|
|
734 CMEXIT 0
|
|
744 CMXRTN 736, 742
|
|
624 DATEYR 544, 620
|
|
1 DORMNT 644
|
|
1036 ENABLE 0, 546, 674, 741
|
|
710 EPRINT 0
|
|
730 EPRNTM 710
|
|
625 FERRTN 0
|
|
632 FERRX4 625
|
|
671 FILOCK 667
|
|
676 FILWAT 672
|
|
703 FILWX4 676
|
|
615 GETIME 0, 540
|
|
607 GETMEM 0, 560
|
|
1 SETUP PACKAGE TO ALLOW RUNNING OF PSEUDO I/O SYSTEM UNDER CTSS PAGE 2
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
670 IGNINT 666
|
|
634 IOERTN 543
|
|
10 IOINIT 542
|
|
613 MEMBND 573, 601
|
|
646 NOERTN 642
|
|
0 PRNTER 640
|
|
401 QUEUE1 553
|
|
534 QUEUE2 554
|
|
534 QUEUE3 555
|
|
6 SETBCD 637
|
|
614 SETLAC 571, 605
|
|
570 SETMEM 0, 561
|
|
604 SETMX4 570
|
|
13 SETRAP 556
|
|
15 SETUSR 575
|
|
673 SSTIR4 663
|
|
662 SSTRAP 557
|
|
20 STATBL 552
|
|
653 TILOCK 0
|
|
5 TIMNOW 545, 617, 624
|
|
1005 TRPIR1 751
|
|
1006 TRPIR2 752
|
|
1007 TRPIR3 753, 762
|
|
1010 TRPIR5 763
|
|
1011 TRPIR6 764
|
|
1012 TRPIR7 765
|
|
1032 TRPLAC 770, 1021
|
|
1035 TRPMTM 756, 760, 1013
|
|
705 UILOCK 656, 657, 671, 675
|
|
612 UPRVBT 0, 577
|
|
3 WRITE6 700, 722, 724
|
|
|
|
0 NO ERROR IN ABOVE ASSEMBLY.
|
|
|
|
|
|
|
|
|
|
ENABLE BCD 10/12/70 1531.6 3758 00000
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 1
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
00007 ENTRY IOST TO INITIALIZE CORE IMAGE TO TRAP ENB CALLS
|
|
00042 ENTRY IORS TO RESET PENDING I/O TRAPS
|
|
00051 ENTRY IO TO ANNOUNCE I/O STARTED
|
|
|
|
EXTERN OCLBC,OCRBC,OCABC,KEYS,WRITE6
|
|
|
|
CALLS TO 'IOST' WILL HAVE THE EFFECT OF REPLACING ALL
|
|
'ENB' OPS BY 'STR' TRAPS AND ARRANGING TO CATCH AND
|
|
PROCESS ANY 'STR' TRAPS. CONFUSION AND CHAOS WILL
|
|
RESULT IF OTHER PROGRAMS USING 'STR' TRAPS DO NOT HEED.
|
|
|
|
|
|
TRANSFER VECTOR
|
|
00000 462343222360 OCLBC
|
|
00001 462351222360 OCRBC
|
|
00002 462321222360 OCABC
|
|
00003 422570626060 KEYS
|
|
00004 665131632506 WRITE6
|
|
|
|
LINKAGE DIRECTOR
|
|
00005 000000000000
|
|
00006 314662636060
|
|
|
|
00007 0636 00 4 00036 IOST SCA IOSX4,4 SAVE LINKAGE
|
|
00010 0500 00 0 00041 CLA ENBTRA PLANT TRAP RETURN
|
|
00011 0601 00 0 00002 STO 2 ..
|
|
00012 0074 00 4 00040 TSX GETMEM,4 GET PROGRAM SIZE
|
|
00013 0621 00 0 00016 STA ENBGET WANT TO SEARCH WHOLE CORE IMAGE
|
|
00014 0734 00 4 00000 PAX 0,4 ..
|
|
|
|
00015 -2 00001 4 00035 ENBTST TNX DONE,4,1 TEST FOR COMPLETION
|
|
00016 0441 00 4 00000 ENBGET LDI **,4 NOT DONE, CHECK NEXT WORD
|
|
00017 -0056 00 056400 LNT ENBWD IF 'ENB', SOME BITS MUST BE ON
|
|
00020 0020 00 0 00026 TRA SEAB WHOOPS.. NOT ENABLE
|
|
00021 -0054 00 721317 LFT COMENB AND SOME BITS MUST BE OFF
|
|
00022 0020 00 0 00026 TRA SEAB NOPE, EXPLORE FURTHER
|
|
00023 -0055 00 500000 SIL 500000 AHA.. CHANGE 'ENB' TO 'STR'
|
|
00024 0604 60 0 00016 STI* ENBGET AND PLANT BACK IN PROGRAM
|
|
00025 0020 00 0 00015 TRA ENBTST CHECK FOR MORE WORDS
|
|
|
|
00026 -0056 00 476100 SEAB LNT SEA IF 'SEA' OR 'SEB', SOME BITS ON
|
|
00027 0020 00 0 00015 TRA ENBTST NOPE, GIVE UP TESTING
|
|
00030 -0054 00 301677 LFT COMSEA HMM.. SOME BITS MUST BE OFF
|
|
00031 0020 00 0 00015 TRA ENBTST HOLD ON.. NOT AN 'SEA' OR 'SEB'
|
|
00032 -0057 00 400000 RIL 400000 AHA.. TURN INTO A 'NOP'
|
|
00033 0604 60 0 00016 STI* ENBGET PLANT BACK IN PROGRAM
|
|
00034 2 00001 4 00016 TIX ENBGET,4,1 LOOK AT MORE WORDS
|
|
|
|
00035 0074 00 4 00042 DONE TSX IORS,4 CLEAR TRAP CELLS
|
|
|
|
00036 -0774 00 4 00000 IOSX4 AXC **,4 ALL DONE, RETURN
|
|
00037 0020 00 4 00001 TRA 1,4 ..
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 2
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
00040 0101 00 0 00270 GETMEM TIA =HGETMEM
|
|
|
|
056400 ENBWD BOOL 056400 THESE BITS MUST BE ON FOR 'ENB'
|
|
721317 COMENB BOOL 721317 AND THESE MUST BE OFF
|
|
476100 SEA BOOL 476100 THESE BITS MUST BE ON FOR 'SEA' OR 'SEB'
|
|
301677 COMSEA BOOL 301677 AND THESE MUST BE OFF
|
|
|
|
00041 0021 00 0 00066 ENBTRA TTR ENB TRAP FOR 'ENB' OPS
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 3
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
RESET ALL PENDING I/O TRAPS
|
|
|
|
00042 0636 00 4 00047 IORS SCA IORX4,4 SAVE LINKAGE
|
|
00043 0774 00 4 00022 AXT NCHAN,4 ZERO OUT ALL I/O CELLS
|
|
00044 0600 00 4 00267 STZ TRAP+NCHAN,4 ..
|
|
00045 0600 60 4 00270 STZ* TRAP+NCHAN+1,4 ..
|
|
00046 2 00002 4 00044 TIX *-2,4,2 LOOP
|
|
00047 -0774 00 4 00000 IORX4 AXC **,4 RESTORE LINKAGE
|
|
00050 0020 00 4 00001 TRA 1,4 AND RETURN
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 4
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
SET UP WAITING TRAP FOR USER'S I/O
|
|
|
|
CALLING SEQUENCE IS ...
|
|
TSX $IO,4
|
|
PTH CHNENB (ENABLE FOR THIS CHANNEL)
|
|
|
|
00051 0636 00 4 00063 IO SCA IOX4,4 SAVE LINKAGE
|
|
00052 0604 00 0 00065 STI IOSI SAVE USER'S SI
|
|
00053 0441 60 4 00001 LDI* 1,4 GET CHANNEL ENABLE WORD
|
|
00054 -0057 00 777777 RIL 777777 RESET LEFT HALF
|
|
|
|
00055 0774 00 4 00022 AXT NCHAN,4 PREPARE TO SEARCH POINTER TABLE
|
|
00056 0446 00 4 00245 ONT STAT+NCHAN,4 SEE IF BIT MATCHES TABLE ENTRY
|
|
00057 2 00002 4 00056 TIX *-1,4,2 NOPE, TRY AGAIN
|
|
00060 -3 00002 4 00062 TXL IOXIT,4,2 PROTECT AGAINST NO MATCH
|
|
|
|
00061 0604 60 4 00246 STI* STAT+NCHAN+1,4 MATCH, SET BIT(S) IN TRAP VECTOR
|
|
00062 0441 00 0 00065 IOXIT LDI IOSI RESTORE USER'S SI
|
|
00063 -0774 00 4 00000 IOX4 AXC **,4 RESTORE LINKAGE
|
|
00064 0020 00 4 00002 TRA 2,4 AND RETURN
|
|
|
|
00065 IOSI BSS 1
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 5
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
CONTROL COMES HERE WHEN USER ENABLES.
|
|
THIS PROGRAM GIVES A GRACE OF ONE INSTRUCTION
|
|
ONLY IF THE NEXT INSTRUCTION IS A 'TRA'.
|
|
ASSUMING THAT THE ENABLE INSTRUCTION ALLOWS
|
|
MORE THAN ONE CHANNEL TO CAUSE A TRAP,
|
|
THE HIGHEST PRIORITY ACTIVE CHANNEL TRAPS FIRST.
|
|
THE PRIORITY IS DETERMINED BY THE ORDERING OF 'TRAP'
|
|
|
|
00066 0636 00 4 00157 ENB SCA ENBX4,4 SAVE USER'S IR4
|
|
00067 0602 00 0 00171 SLW ENBLAC SAVE VOLATILE REGISTERS
|
|
00070 0771 00 0 00002 ARS 2 ..
|
|
00071 0601 00 0 00172 STO ENBSQ ..
|
|
00072 -0600 00 0 00173 STQ ENBMQ ..
|
|
00073 0604 00 0 00174 STI ENBSI ..
|
|
00074 0600 00 0 00175 STZ ENBOV PRESET OVERFLOW SWITCH
|
|
00075 -0140 00 0 00077 TNO *+2 TEST TRIGGER
|
|
00076 -0625 00 0 00175 STL ENBOV ON, SET SWITCH
|
|
|
|
00077 0535 00 4 00000 LAC 0,4 GET ADDRESS OF 'ENB' + 1
|
|
00100 0636 00 4 00170 SCA TRPLOC,4 AND SAVE IT IN CASE OF 'ENB =0'
|
|
00101 -0500 00 4 77777 CAL -1,4 GET 'ENB' INSTRUCTION
|
|
00102 0074 00 4 00202 TSX GETEFA,4 GET POINTER TO ENABLE CELL
|
|
00103 0535 00 4 00157 LAC ENBX4,4 THIS IS HOW TO RESTORE USER'S IR4
|
|
|
|
00104 0441 00 4 00000 LDI 0,4 PICK UP ENABLE CELL (IR4 TRICK ABOVE)
|
|
00105 0522 60 0 00003 XEC* KEYS PICK UP KEYS TO CHECK FOR DEBUGGING
|
|
00106 -0320 00 0 00267 ANA =O100000000000 TEST 'ENB' KEY
|
|
00107 0100 00 0 00127 TZE NODBG IF OFF, SKIP PRINTOUT
|
|
|
|
00110 0604 00 0 00201 STI ENBLIN+3 DEBUGGING ON, SAVE ENABLE WORD
|
|
00111 0074 00 4 00000 TSX OCLBC,4 CONVERT LEFT HALF TO OCTAL
|
|
00112 3 00000 0 00201 PTH ENBLIN+3 ..
|
|
00113 0601 00 0 00177 STO ENBLIN+1 SAVE RESULT IN PRINT LINE
|
|
00114 0074 00 4 00001 TSX OCRBC,4 CONVERT RIGHT HALF TO OCTAL
|
|
00115 3 00000 0 00201 PTH ENBLIN+3 ..
|
|
00116 0601 00 0 00200 STO ENBLIN+2 SAVE IT IN PRINT LINE
|
|
|
|
00117 0534 00 4 00170 LXA TRPLOC,4 GET LOCATION OF 'ENB' + 1
|
|
00120 1 77777 4 00121 TXI *+1,4,-1 LOCATION OF 'ENB'
|
|
00121 0634 00 4 00201 SXA ENBLIN+3,4 SAVE IT
|
|
00122 0074 00 4 00002 TSX OCABC,4 CONVERT TO 5-DIGIT ADDRESS
|
|
00123 3 00000 0 00201 PTH ENBLIN+3 ..
|
|
00124 0601 00 0 00201 STO ENBLIN+3 PLACE RESULT IN PRINT LINE
|
|
|
|
00125 0074 00 4 00004 TSX WRITE6,4 OUTPUT DEBUGGING LINE
|
|
00126 0 00004 0 00176 ENBLIN,,4 ..
|
|
|
|
00127 0054 00 777777 NODBG RFT 777777 CHECK FOR ZERO ENABLE WORD
|
|
00130 0020 00 0 00132 TRA *+2 NOT ZERO, CONTINUE
|
|
00131 0020 00 0 00156 TRA ENBXIT ZERO, THAT'S ALL FOR NOW
|
|
|
|
00132 0774 00 4 00022 AXT NCHAN,4 GET HIGHEST PENDING I/O
|
|
00133 0520 00 4 00267 ZET TRAP+NCHAN,4 SKIP IF CELL IS NOT SET
|
|
00134 0446 00 4 00267 ONT TRAP+NCHAN,4 CHECK AGAINST ENABLE WORD
|
|
00135 2 00002 4 00133 TIX *-2,4,2 NO MATCH, KEEP LOOKING
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 6
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
00136 -3 00002 4 00156 TXL ENBXIT,4,2 CHECK AGAINST NO MATCH
|
|
|
|
00137 0600 00 4 00267 STZ TRAP+NCHAN,4 MATCH, ZERO I/O FLAG
|
|
00140 -0500 00 4 00270 CAL TRAP+NCHAN+1,4 PICK UP TRAP POINTERS
|
|
00141 -0734 00 4 00000 PDX 0,4 GET LOCATION TO TRAP TO
|
|
00142 0634 00 4 00170 SXA TRPLOC,4 AND PLANT IT
|
|
00143 0621 00 0 00155 STA ENBRET PLANT LOCATION TO STORE TRAP ILC
|
|
|
|
00144 0535 00 4 00000 LAC 0,4 PICK UP LOCATION OF 'ENB' + 1
|
|
00145 0441 00 4 00000 LDI 0,4 CHECK INSTRUCTION THERE
|
|
00146 -0056 00 002000 LNT TRA IF 'TRA', SOME BITS ON
|
|
00147 0020 00 0 00155 TRA ENBRET NOPE, REJOIN ROUTINE
|
|
00150 -0054 00 775717 LFT COMTRA HMM... SOME BITS MUST BE OFF
|
|
00151 0020 00 0 00155 TRA ENBRET NOPE... CLOSE BUT NO CIGAR
|
|
00152 -0046 00 0 00000 PIA AHA.. GET ADDRESS OF 'TRA' LOC
|
|
00153 0074 00 4 00202 TSX GETEFA,4 ..
|
|
00154 0535 00 4 00157 LAC ENBX4,4 THIS IS HOW TO RESTORE USER'S IR4
|
|
|
|
00155 0636 00 4 00000 ENBRET SCA **,4 SET TRAP ILC INTO PROPER CELL
|
|
00156 0441 00 0 00174 ENBXIT LDI ENBSI RESTORE MACHINE
|
|
00157 -0774 00 4 00000 ENBX4 AXC **,4 ..
|
|
00160 0500 00 0 00160 CLA * GET LOTS OF BITS IN AC
|
|
00161 0560 00 0 00172 LDQ ENBSQ RESTORE AC
|
|
00162 0763 00 0 00001 LLS 1 ..
|
|
00163 0767 00 0 00044 ALS 36 ..
|
|
00164 -0501 00 0 00171 ORA ENBLAC ..
|
|
00165 0560 00 0 00173 LDQ ENBMQ AND MQ
|
|
00166 -0520 00 0 00175 NZT ENBOV TEST OVERFLOW MEMORY SWITCH
|
|
00167 0140 00 0 00170 TOV *+1 WAS OFF, MAKE IT SO
|
|
00170 0020 00 0 00000 TRPLOC TRA ** TRANSFER TO PROPER LOCATION FOR 'ENB'
|
|
|
|
00171 ENBLAC BSS 1
|
|
00172 ENBSQ BSS 1
|
|
00173 ENBMQ BSS 1
|
|
00174 ENBSI BSS 1
|
|
00175 ENBOV BSS 1
|
|
|
|
00176 254522601346 ENBLIN BCI 4,ENB =OEEEEEEEEEEEE AAAAA
|
|
00177 252525252525
|
|
00200 252525252525
|
|
00201 602121212121
|
|
|
|
002000 TRA BOOL 002000 THESE BITS MUST BE ON FOR 'TRA'
|
|
775717 COMTRA BOOL 775717 AND THESE BITS MUST BE OFF
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 7
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
SUBROUTINE TO COMPUTE EFFECTIVE ADDRESS
|
|
|
|
00202 1 77776 4 00203 GETEFA TXI *+1,4,-2 ADJUST RETURN LINKAGE
|
|
00203 0636 00 4 00221 SCA GETX,4 PLANT RETURN
|
|
00204 0522 00 4 77777 XEC -1,4 RELOAD USER'S IR4
|
|
00205 0044 00 0 00000 PAI SAVE AC FOR LATER
|
|
00206 0625 00 0 00207 STT *+1 GET TAG, IF ANY
|
|
00207 0636 00 0 00222 SCA GETMP,** PICK UP VALUE OF TAG REGISTER
|
|
00210 0361 00 0 00222 ACL GETMP ADD IN TO THE BASE VALUE
|
|
|
|
00211 -0056 00 000060 LNT 000060 TEST FOR INDIRECTION
|
|
00212 0020 00 0 00220 TRA SET4 NONE, THAT'S ALL HERE
|
|
|
|
00213 0621 00 0 00214 STA *+1 GO AROUND THE BARN AGAIN
|
|
00214 -0500 00 0 00000 CAL ** GET NEW WORD
|
|
00215 0625 00 0 00216 STT *+1 GET TAG IF OFFERED
|
|
00216 0636 00 0 00222 SCA GETMP,** GET VALUE OF TAG REGISTER
|
|
00217 0361 00 0 00222 ACL GETMP ADD BASE VALUE
|
|
|
|
00220 0737 00 4 00000 SET4 PAC 0,4 PUT COMPLEMENT IN IR4
|
|
00221 0020 00 0 00000 GETX TRA ** RETURN TO CALLER
|
|
|
|
00222 GETMP BSS 1
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 8
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
TRAP CONTROL TABLES
|
|
|
|
FOR 'STAT', THE TABLE SHOULD BE ARRANGED SO THAT
|
|
THE MOST ACTIVE CHANNEL OCCURS FIRST IN THE TABLE.
|
|
FOR 'TRAP', THE TABLE IS ARRANGED FROM HIGHEST PRIORITY
|
|
TO LOWEST.
|
|
|
|
00223 +000000000004 STAT OCT 4 C
|
|
00224 0 00000 0 00251 PZE TRAP+4
|
|
00225 +000000000001 OCT 1 A
|
|
00226 0 00000 0 00245 PZE TRAP+0
|
|
00227 +000000000002 OCT 2 B
|
|
00230 0 00000 0 00247 PZE TRAP+2
|
|
00231 +000000000020 OCT 20 E
|
|
00232 0 00000 0 00255 PZE TRAP+8
|
|
00233 +000000000010 OCT 10 D
|
|
00234 0 00000 0 00253 PZE TRAP+6
|
|
00235 +000000000040 OCT 40 F
|
|
00236 0 00000 0 00257 PZE TRAP+10
|
|
00237 +000000000100 OCT 100 G
|
|
00240 0 00000 0 00261 PZE TRAP+12
|
|
00241 +000000000200 OCT 200 H
|
|
00242 0 00000 0 00263 PZE TRAP+14
|
|
00243 +000000000000 OCT 0 END OF TABLE
|
|
00244 0 00000 0 77777 PZE -1
|
|
00022 NCHAN EQU *-STAT NUMBER OF CHANNELS * 2 + 2
|
|
|
|
00245 TRAP BSS 1 NON-ZERO IF HIGHEST CHANNEL HAS I/O
|
|
00246 0 00013 0 00012 PZE 10,,11 SAVE ILC,,TRANSFER TO
|
|
00247 BSS 1 NEXT HIGHEST PRIORITY CHANNEL
|
|
00250 0 00015 0 00014 PZE 12,,13
|
|
00251 BSS 1
|
|
00252 0 00017 0 00016 PZE 14,,15
|
|
00253 BSS 1
|
|
00254 0 00021 0 00020 PZE 16,,17
|
|
00255 BSS 1
|
|
00256 0 00023 0 00022 PZE 18,,19
|
|
00257 BSS 1
|
|
00260 0 00025 0 00024 PZE 20,,21
|
|
00261 BSS 1
|
|
00262 0 00027 0 00026 PZE 22,,23
|
|
00263 BSS 1
|
|
00264 0 00031 0 00030 PZE 24,,25
|
|
00265 BSS 1 END OF TABLE
|
|
00266 0 77777 0 00000 PZE 0,,-1
|
|
|
|
END
|
|
|
|
LITERALS
|
|
00267 100000000000
|
|
00270 272563442544
|
|
1 ROUTINE TO HANDLE SIMULATED I/O TRAPS, ENABLES, ETC. 09/05/69 2058.7 PAGE 1
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
271 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
|
|
|
|
0REFERENCES TO DEFINED SYMBOLS
|
|
51 IO 0
|
|
66 ENB 41
|
|
476100 SEA 26, 41
|
|
2000 TRA 146, 202
|
|
35 DONE 15
|
|
221 GETX 203
|
|
42 IORS 0, 35
|
|
65 IOSI 52, 62
|
|
7 IOST 0
|
|
63 IOX4 51
|
|
3 KEYS 105
|
|
26 SEAB 20, 22
|
|
220 SET4 212
|
|
223 STAT 56, 61, 245
|
|
245 TRAP 44, 45, 133, 134, 137, 140, 224, 226, 230, 232, 234, 236, 240, 242
|
|
173 ENBMQ 72, 165
|
|
175 ENBOV 74, 76, 166
|
|
174 ENBSI 73, 156
|
|
172 ENBSQ 71, 161
|
|
56400 ENBWD 17, 41
|
|
157 ENBX4 66, 103, 154
|
|
222 GETMP 207, 210, 216, 217
|
|
47 IORX4 42
|
|
36 IOSX4 7
|
|
62 IOXIT 60
|
|
22 NCHAN 43, 44, 45, 55, 56, 61, 132, 133, 134, 137, 140, 245
|
|
127 NODBG 107
|
|
2 OCABC 122
|
|
0 OCLBC 111
|
|
1 OCRBC 114
|
|
721317 COMENB 21, 41
|
|
301677 COMSEA 30, 41
|
|
775717 COMTRA 150, 202
|
|
16 ENBGET 13, 24, 33, 34
|
|
171 ENBLAC 67, 164
|
|
176 ENBLIN 110, 112, 113, 115, 116, 121, 123, 124, 126
|
|
155 ENBRET 143, 147, 151
|
|
41 ENBTRA 10
|
|
15 ENBTST 25, 27, 31
|
|
156 ENBXIT 131, 136
|
|
202 GETEFA 102, 153
|
|
40 GETMEM 12
|
|
170 TRPLOC 100, 117, 142
|
|
4 WRITE6 125
|
|
|
|
0 NO ERROR IN ABOVE ASSEMBLY.
|
|
|
|
|
|
|
|
|
|
DDFAP BCD 06/06/68 2358.0 4865 00000
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 1
|
|
|
|
00015 ENTRY .DINIT TO INITIALIZE PACKAGE
|
|
00070 ENTRY .DWAIT TO WAIT ON PREVIOUS I/O
|
|
00031 ENTRY .REFER TO REFER CONTROL ON COMPLETED I/O
|
|
00035 ENTRY .SETER TO REFER CONTROL ON ERROR FROM .DWAIT
|
|
00044 ENTRY .DRSET TO RESTART STRAT. MOD AFTER LOST TRAPS
|
|
00047 ENTRY .FORCE TO FORCE TRAP IF NO I/O IN OPERATION
|
|
00106 ENTRY .DREAD TO READ FROM A SPECIFIED TRACK
|
|
00110 ENTRY .DWRIT TO WRITE ONTO A SPECIFIED TRACK
|
|
00172 ENTRY .PACK TO CONVERT FROM MTTTTR TO BINARY
|
|
00213 ENTRY .UNPAK TO CONVERT FROM BINARY TO MTTTTR
|
|
|
|
EXTERN ALLSAV,ALLRST,CMEXIT,EPRINT
|
|
EXTERN MDINIT,MDREAD,MDWRIT,MDWAIT
|
|
EXTERN IO
|
|
EXTERN RED,BLACK
|
|
|
|
|
|
00000 214343622165 ALLSAV
|
|
00001 214343516263 ALLRST
|
|
00002 234425673163 CMEXIT
|
|
00003 254751314563 EPRINT
|
|
00004 442431453163 MDINIT
|
|
00005 442451252124 MDREAD
|
|
00006 442466513163 MDWRIT
|
|
00007 442466213163 MDWAIT
|
|
00010 314660606060 IO
|
|
00011 512524606060 RED
|
|
00012 224321234260 BLACK
|
|
|
|
|
|
00015 0636 00 4 00027 .DINIT SCA X4,4 INITIALIZE FOR SIMULATED D/D I/O
|
|
00016 -0500 60 4 00001 CAL* 1,4 GET POINTER TO COMMON ENABLE WORD
|
|
00017 0621 00 0 00423 STA ENABLE SAVE IT
|
|
00020 -0500 00 0 00422 CAL DENBWD ADD IN BITS FOR D/D ENABLING
|
|
00021 -0602 60 0 00423 ORS* ENABLE ..
|
|
00022 0500 00 0 00341 CLA DTRAP. GET TRAP CELL SETUP
|
|
00023 0601 00 0 00017 STO DDTRAP ..
|
|
|
|
00024 0074 00 4 00004 TSX MDINIT,4 OK, GIVE MAD PROGRAMS A CHANCE
|
|
00025 0600 00 0 00343 STZ TRAPSW RESET TRAP SWITCH
|
|
00026 0600 00 0 00344 STZ BUSY AND DON'T WAIT ON I/O
|
|
|
|
00027 -0774 00 4 00000 X4 AXC **,4 RESTORE LINKAGE
|
|
00030 0020 00 4 00002 TRA 2,4 THAT'S ALL FOR NOW
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 2
|
|
|
|
SETUP COURTESY CALLS, ERROR CALLS, ETC.
|
|
|
|
00031 -0500 00 4 00001 .REFER CAL 1,4 USER WISHES TO RECEIVE TRAP ANNOUNCEMENTS
|
|
00032 0621 00 0 00340 STA USRTRP SET HIS SPECIFIED RETURN
|
|
00033 0621 00 0 00342 STA REFRSW SET SWITCH TO INDICATE USER WANTS THIS
|
|
00034 0020 00 4 00002 TRA 2,4 RETURN
|
|
|
|
00035 -0500 00 4 00001 .SETER CAL 1,4 USER SETS ERROR RETURN
|
|
00036 -0320 00 0 00431 ANA =O77777 SEE IF NO RETURN SPECIFIED
|
|
00037 -0100 00 0 00041 TNZ *+2 ..
|
|
00040 -0500 00 0 00432 CAL =O400001 NO RETURN, SET DUMMY
|
|
00041 0621 00 0 00337 STA UERROR PLANT ADDRESS OF RETURN
|
|
00042 0625 00 0 00337 STT UERROR AND TAG, FOR GOOD MEASURE
|
|
00043 0020 00 4 00002 TRA 2,4 RETURN
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 3
|
|
|
|
FORCE I/O TRAPS, RESET ADAPTER, ETC.
|
|
|
|
00044 -0500 00 0 00425 .DRSET CAL =2 RESET CALL, POSSIBLE ERROR
|
|
00045 0600 00 0 00344 STZ BUSY RESET BUSY SWITCH
|
|
00046 0020 00 0 00052 TRA FRC1 HOP INTO TRAP ROUTINE
|
|
|
|
00047 0520 00 0 00344 .FORCE ZET BUSY SEE IF I/O PENDING
|
|
00050 0020 00 4 00001 TRA 1,4 YES, EXIT
|
|
00051 -0754 00 0 00000 ZAC NO, NO ERRORS
|
|
|
|
00052 -0520 00 0 00342 FRC1 NZT REFRSW TEST TO SEE IF USER WANTS THIS
|
|
00053 0020 00 4 00001 TRA 1,4 NOPE, GOODBYE FOR NOW
|
|
00054 0602 00 0 00067 SLW FRCTMP YES, SET POSSIBLE ERROR CODE
|
|
00055 -0625 00 0 00343 STL TRAPSW SET SWITCH FOR TRAP IN PROGRESS
|
|
00056 0636 00 4 00064 SCA FCIR4,4 SAVE MACHINE CONDITIONS
|
|
00057 0074 00 4 00000 TSX ALLSAV,4 ..
|
|
|
|
00060 0074 00 4 00340 TSX USRTRP,4 TELL USER ABOUT TRAP
|
|
00061 3 00000 0 00067 PTH FRCTMP AND POSSIBLE ERROR
|
|
|
|
00062 0600 00 0 00343 STZ TRAPSW LEAVING TRAP TIME, RESET SWITCH
|
|
00063 0074 00 4 00001 TSX ALLRST,4 RESTORE MACHINE
|
|
00064 -0774 00 4 00000 FCIR4 AXC **,4 AND IR4
|
|
00065 0564 60 0 00423 ENB* ENABLE RE-ENABLE
|
|
00066 0020 00 4 00001 TRA 1,4 RETURN TO CALLER
|
|
|
|
00067 FRCTMP BSS 1
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 4
|
|
|
|
WAIT ON PREVIOUS DISK I/O
|
|
|
|
00070 0074 00 7 00074 .DWAIT TSX DWAIT,7 INVOKE WAITING SUBROUTINE
|
|
00071 -0520 00 0 00343 NZT TRAPSW SEE IF IN TRAP ALREADY
|
|
00072 0564 60 0 00423 ENB* ENABLE NO, RE-ENABLE
|
|
00073 0020 00 4 00001 TRA 1,4 RETURN TO CALLER
|
|
|
|
00074 -0520 00 0 00343 DWAIT NZT TRAPSW TEST TO SEE IF CALLED AT TRAP TIME
|
|
00075 0564 60 0 00423 ENB* ENABLE NO, ENABLE
|
|
00076 -0520 00 0 00310 NZT ERROR TEST FOR ANY ERRORS
|
|
00077 0020 00 7 00001 TRA 1,7 COOL MAN, LIKE GO
|
|
|
|
00100 0636 00 4 00104 SCA DWAITX,4 WOOPS, WE BEEN HAD
|
|
00101 -0500 00 0 00310 CAL ERROR GET ERROR CODE
|
|
00102 0600 00 0 00310 STZ ERROR RESET FOR NEXT TIME
|
|
|
|
00103 0074 00 4 00337 TSX UERROR,4 ANNOUNCE ERROR TO USER
|
|
|
|
00104 -0774 00 4 00000 DWAITX AXC **,4 RESTORE USER'S IR4
|
|
00105 0020 00 7 00001 TRA 1,7 RETURN TO CALLER
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 5
|
|
|
|
DISK/DRUM READ/WRITE CALLS
|
|
|
|
00106 0500 00 0 00005 .DREAD CLA MDREAD PICK UP POINTER TO READ ROUTINE
|
|
00107 0020 00 0 00111 TRA .DWRIT+1 HOP INTO ROUTINE
|
|
|
|
00110 0500 00 0 00006 .DWRIT CLA MDWRIT PICK UP POINTER TO WRITE ROUTINE
|
|
00111 0621 00 0 00135 STA IOCALL SAVE IT FOR I/O CALL LATER
|
|
00112 0636 00 4 00157 SCA DWRX4,4 SAVE RETURN
|
|
00113 0074 00 7 00074 TSX DWAIT,7 WAIT ON PREVIOUS I/O
|
|
00114 0074 00 7 00163 TSX CVTRK,7 MAKE TRACK ADDRESS SHAPE UP
|
|
00115 0600 00 0 00347 STZ REL ZERO RELLOC
|
|
00116 -0500 00 4 00001 CAL 1,4 COMPUTE EFFECTIVE ADDRESS OF I/O LIST
|
|
00117 0625 00 0 00120 STT *+1 COULD BE TAGGED
|
|
00120 0756 00 0 00000 PCA 0,** PICK UP VALUE OF TAG REGISTER, IF ANY
|
|
00121 0361 00 4 00001 ACL 1,4 ADD BASE
|
|
00122 0737 00 6 00000 PAC 0,6 PUT COMPLEMENT OF RESULT IN IR6
|
|
|
|
00123 0441 00 6 00001 GETCOM LDI 1,6 PICK UP NEXT I/O COMMAND WORD
|
|
00124 -0054 00 700000 LFT 700000 SEE IF 'IOD'
|
|
00125 1 77777 6 00127 TXI *+2,6,-1 NOPE, TEST FOR 'IOP'
|
|
00126 0020 00 0 00157 TRA DWRX4 YES, THAT'S ALL HERE
|
|
|
|
00127 -0056 00 200000 LNT 200000 IS IT AN 'IOP'
|
|
00130 0020 00 0 00152 TRA ION NOPE, MUST BE 'ION'
|
|
00131 -0046 00 0 00000 PIA IT WAS AN 'IOP', MAKE I/O CALL
|
|
00132 0621 00 0 00137 STA BUFF POINTER TO START OF DATA
|
|
00133 0771 00 0 00022 ARS 18 GET COUNT OF WORDS TO BE TRANSMITTED
|
|
00134 0621 00 0 00346 STA WDCT SAVE COUNT
|
|
|
|
00135 0074 00 4 00000 IOCALL TSX **,4 CALL READ/WRITE ROUTINE
|
|
00136 3 00000 0 00161 PTH TRKERR ERROR RETURN FOR BAD TRACK NUMBER
|
|
00137 3 00000 0 00000 BUFF PTH ** START OF INFORMATION
|
|
00140 3 00000 0 00346 PTH WDCT POINTER TO WORD COUNT
|
|
00141 3 00000 0 00347 PTH REL RELATIVE ADDRESS WITHIN TRACK
|
|
00142 3 00000 0 00345 PTH TRKADR TRACK INVOLVED IN I/O
|
|
|
|
00143 0500 00 0 00347 CLA REL I/O STARTED, UPDATE POINTER
|
|
00144 0400 00 0 00346 ADD WDCT ..
|
|
00145 0601 00 0 00347 STO REL ..
|
|
00146 -0625 00 0 00344 STL BUSY SET SWITCH TO INDICATE I/O IN PROGRESS
|
|
00147 0074 00 4 00010 TSX IO,4 ANNOUNCE THIS TO TRAP CONTROL
|
|
00150 3 00000 0 00422 PTH DENBWD ..
|
|
00151 0020 00 0 00123 TRA GETCOM GET NEXT I/O COMMAND
|
|
|
|
00152 -0046 00 0 00000 ION PIA NO TRANSMISSION, UPDATE RELLOC
|
|
00153 0771 00 0 00022 ARS 18 GET SKIP COUNT
|
|
00154 0400 00 0 00347 ADD REL ADD CURRENT RELLOC
|
|
00155 0621 00 0 00347 STA REL UPDATE RELLOC
|
|
00156 0020 00 0 00123 TRA GETCOM GET NEXT I/O COMMAND
|
|
|
|
00157 -0774 00 4 00000 DWRX4 AXC **,4 ALL DONE, RETURN
|
|
00160 0020 00 4 00003 TRA 3,4 ..
|
|
|
|
00161 0535 00 4 00157 TRKERR LAC DWRX4,4 BAD TRACK NUMBER, TAKE ERROR RETURN
|
|
00162 0020 60 4 00002 TRA* 2,4 ..
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 6
|
|
|
|
CONVERT TRACK ADDRESS TO MTTTTR
|
|
|
|
00163 0500 60 4 00001 CVTRK CLA* 1,4 GET TRACK ADDRESS
|
|
00164 0120 00 0 00170 TPL CVTRK1 SKIP IF ADDRESS ALREADY CONVERTED
|
|
00165 0636 00 4 00167 SCA CVTX4,4 SAVE LINKAGE
|
|
00166 0074 00 4 00215 TSX UNPACK,4 CONVERT PACKED TRACK ADDRESS
|
|
00167 -0774 00 4 00000 CVTX4 AXC **,4 RESTORE LINKAGE
|
|
00170 0602 00 0 00345 CVTRK1 SLW TRKADR RESTORE TRACK ADDRESS
|
|
00171 0020 00 7 00001 TRA 1,7 RETURN TO CALLER
|
|
|
|
.PACK/.UNPAK FIDDLE WITH TRACK AND RECORD ADDRESS
|
|
|
|
00172 -0774 00 5 00000 .PACK AXC 0,5 ROUTINE TO PACK LOGICAL RECORD ADDRESS
|
|
00173 0520 00 0 00343 ZET TRAPSW IS A TRAP CURRENTLY IN PROGRESS .Q.
|
|
00174 -0774 00 5 00001 AXC 1,5 IF SO, SET TO USE TMP+1 FOR STORAGE
|
|
00175 0560 60 4 00001 LDQ* 1,4 GET TRACK ADDRESS
|
|
00176 -0154 06 0 00374 CRQ C1200,,6 TAKE OUT THE 12'S
|
|
00177 -0773 00 0 00036 RQL 30 MOVE RECORD BIT TO FIRST POSITION
|
|
00200 0774 00 6 00006 AXT 6,6 SET TO CONVERT TO BINARY
|
|
00201 0600 00 5 00350 STZ TMP,5 ..
|
|
|
|
00202 -0754 00 0 00000 PAC1 ZAC RESET AC FOR NEXT CHARACTER
|
|
00203 -0763 00 0 00003 LGL 3 CONVERT AND SUM
|
|
00204 0401 00 5 00350 ADM TMP,5 ..
|
|
00205 -0763 00 0 00003 LGL 3 ..
|
|
00206 0401 00 5 00350 ADM TMP,5 ..
|
|
00207 0361 00 5 00350 ACL TMP,5 ..
|
|
00210 0602 00 5 00350 SLW TMP,5 SAVE INTERMEDIATE ANSWER
|
|
00211 2 00001 6 00202 TIX PAC1,6,1 LOOP
|
|
00212 0020 00 4 00002 TRA 2,4 RETURN PACKED ADDRESS IN AC
|
|
|
|
00213 0500 60 4 00001 .UNPAK CLA* 1,4 PICK UP BINARY VALUE
|
|
00214 1 77777 4 00215 TXI UNPACK,4,-1 ADJUST LINKAGE
|
|
|
|
00215 -0774 00 5 00000 UNPACK AXC 0,5 VALUE IN AC, SEE ABOUT TRAP TIME
|
|
00216 0520 00 0 00343 ZET TRAPSW ..
|
|
00217 -0774 00 5 00001 AXC 1,5 IF TRAP, USE TMP+1 FOR STORAGE
|
|
00220 -0120 00 0 00232 TMI UPAC3 SKIP IF MZE RECNO,,MODNO
|
|
|
|
00221 -0130 00 0 00000 XCL OTHERWISE, VALUE TO MQ
|
|
00222 0774 00 6 00044 AXT 36,6 SET FOR 18-BIT FORMAT
|
|
00223 0600 00 5 00350 STZ TMP,5 SET FOR CONVERSION TO BCD
|
|
|
|
00224 -0754 00 0 00000 UPAC2 ZAC RESET AC FOR NEXT CHARACTER
|
|
00225 0221 00 0 00427 DVP =10 GET BCD NEXT DIGIT
|
|
00226 0767 00 6 00044 ALS 36,6 FROM REMAINDER
|
|
00227 -0602 00 5 00350 ORS TMP,5 AND HANG ON TO IT
|
|
00230 2 00006 6 00224 TIX UPAC2,6,6 LOOP
|
|
00231 0020 00 0 00254 TRA UPAC5 DONE, CONVERT '00' TO '12'
|
|
|
|
00232 -0734 00 6 00000 UPAC3 PDX 0,6 MZE MODNO,,RECNO SAVE MODULE NUMBER
|
|
00233 0560 00 0 00424 LDQ =0 SNEAK UP ON RECORD BIT
|
|
00234 -0765 00 0 00001 LGR 1 ..
|
|
00235 0767 00 0 00005 ALS 5 GET SOME SPACE
|
|
00236 -0765 00 0 00005 LGR 5 NOW MAKE RECORD NUMBER BE IN UPPER MQ
|
|
00237 -0320 00 0 00431 ANA =O77777 REDUCE TO TRACK ADDRESS IN AC
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 7
|
|
|
|
00240 -0130 00 0 00000 XCL REPOSITION EVERYTHING
|
|
00241 0044 00 0 00000 PAI SAVE RECORD NUMBER IN SI
|
|
00242 -0754 00 6 00000 PXD 0,6 RESTORE MODULE NUMBER TO DECREMENT
|
|
00243 0767 00 0 00006 ALS 6 PLACE IN SECOND CHARACTER POSITION
|
|
00244 0043 00 0 00000 OAI STICK IN SI WITH RECORD NUMBER
|
|
00245 0604 00 5 00350 STI TMP,5 PRIME ANSWER CELL
|
|
00246 0774 00 6 00030 AXT 24,6 SET FOR 4 DIGITS OF TRACK ADDRESS
|
|
|
|
00247 -0754 00 0 00000 UPAC4 ZAC RESET FOR NEXT CHARACTER
|
|
00250 0221 00 0 00427 DVP =10 GET NEXT BCD DIGIT
|
|
00251 0767 00 6 00030 ALS 24,6 FROM REMAINDER
|
|
00252 -0602 00 5 00350 ORS TMP,5 SAVE IN TEMPORARY
|
|
00253 2 00006 6 00247 TIX UPAC4,6,6 LOOP
|
|
|
|
00254 0560 00 5 00350 UPAC5 LDQ TMP,5 GET UNPACKED TRACK ADDRESS
|
|
00255 -0773 00 0 00006 RQL 6 POSITION RECORD NUMBER (NOW IT IS MTTTTR)
|
|
00256 -0154 06 0 00407 CRQ C0012,,6 CONVERT 00'S TO 12'S
|
|
00257 -0130 00 0 00000 XCL
|
|
00260 0020 00 4 00001 TRA 1,4 RETURN TO CALLER (GASP)
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 8
|
|
|
|
HERE ON COMPLETION OF I/O
|
|
|
|
00261 0636 00 4 00304 DCTRAP SCA DCTIR4,4 SAVE IR4
|
|
00262 0074 00 4 00000 TSX ALLSAV,4 SAVE MACHINE
|
|
00263 0441 00 0 00016 LDI DDILC GET RETURN LOCATION
|
|
00264 0604 00 0 00307 STI DCTRTN AND HANG ONTO IT
|
|
00265 0600 00 0 00344 STZ BUSY NOT BUSY ANYMORE
|
|
00266 0074 00 4 00007 TSX MDWAIT,4 CONSULT MAD PROGRAM ABOUT I/O
|
|
00267 3 00000 0 00311 PTH CRUMP ERROR, BAD NEWS
|
|
00270 3 00000 0 00310 PTH ERROR ..
|
|
|
|
00271 -0520 00 0 00342 NZT REFRSW SEE IF USER WOULD LIKE A TRAP
|
|
00272 0020 00 0 00302 TRA DCTXIT NOPE, THAT'S ALL
|
|
00273 0441 00 0 00424 LDI =0 YES, SET NO ERROR
|
|
|
|
00274 0604 00 0 00306 DCTINT STI RTNFLG PICK UP ERROR CODE
|
|
00275 0600 00 0 00310 STZ ERROR ZERO OUT ERROR CODE FOR NEXT TIME
|
|
|
|
00276 -0625 00 0 00343 STL TRAPSW NOW WE ARE IN A TRAP
|
|
00277 0074 00 4 00340 TSX USRTRP,4 TELL USER THIS
|
|
00300 3 00000 0 00306 PTH RTNFLG ..
|
|
|
|
00301 0600 00 0 00343 STZ TRAPSW LEAVING TRAP
|
|
00302 0074 00 4 00001 DCTXIT TSX ALLRST,4 RESTORE MACHINE
|
|
00303 0074 00 4 00002 TSX CMEXIT,4 RETURN TO TRAPPED PROGRAM
|
|
00304 -0774 00 4 00000 DCTIR4 AXC **,4 HERE IS HOW TO RESTORE IR4
|
|
00305 0 00000 0 00307 DCTRTN AND HERE IS LOCATION POINTER
|
|
|
|
00306 RTNFLG BSS 1
|
|
00307 DCTRTN BSS 1 LOCATION WHERE TRAP OCCURRED
|
|
00310 ERROR BSS 1 ERROR CODE OF LAST I/O, IF ANY
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 9
|
|
|
|
DISK/DRUM READ ERRORS
|
|
|
|
00311 0560 00 0 00345 CRUMP LDQ TRKADR GET TRACK IN ERROR
|
|
00312 -0154 06 0 00374 CRQ C1200,,6 TAKE OUT 12'S
|
|
00313 -0773 00 0 00006 RQL 6 POSITION
|
|
00314 -0600 00 0 00363 STQ ERRCM1+9 TRACK ADDRESS
|
|
00315 -0130 00 0 00000 XCL GET OUT LOGICAL MODULE
|
|
00316 -0320 00 0 00426 ANA =O7 CONVERT TO 3 BITS
|
|
00317 -0765 00 0 00001 LGR 1 SAVE ACCESS NUMBER
|
|
00320 0767 00 0 00006 ALS 6 CONVERT MODULE TO BCD
|
|
00321 0162 00 0 00323 TQP *+2 CHECK ACCESS NUMBER
|
|
00322 -0501 00 0 00430 ORA =H000100 ACCESS 1, SET IT
|
|
00323 -0501 00 0 00433 ORA =H 8200 INSERT PROPER DISK ORDER
|
|
00324 0602 00 0 00362 SLW ERRCM1+8 PLANT IN MESSAGE
|
|
|
|
00325 0074 00 4 00011 TSX RED,4 WAKE THE OLD BOY UP
|
|
00326 0074 00 4 00003 TSX EPRINT,4 PRINT ERROR COMMENT
|
|
00327 0 00013 0 00352 ERRCM1,,11 ..
|
|
00330 0074 00 4 00003 TSX EPRINT,4 FUDGE UP SOME SENSE DATA
|
|
00331 0 00007 0 00365 ERRCM2,,7 ..
|
|
00332 0074 00 4 00012 TSX BLACK,4 GOOD OLD BASIC BLACK
|
|
00333 0441 00 0 00310 LDI ERROR PICK UP ERROR CODE
|
|
|
|
00334 0520 00 0 00342 ZET REFRSW SEE IF USER WANTS THIS
|
|
00335 0020 00 0 00274 TRA DCTINT YES, TELL HIM
|
|
00336 0020 00 0 00302 TRA DCTXIT NO, LEAVE
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 10
|
|
|
|
CONSTANTS, VARIABLES, AND OTHER NICE THINGS
|
|
|
|
00337 0021 00 0 00000 UERROR TTR **,** ERROR RETURN, IF SPECIFIED
|
|
00340 0021 00 0 00000 USRTRP TTR ** COURTESY CALL, IF SPECIFIED
|
|
|
|
00017 DDTRAP EQU 15 CHANNEL C TRAP CELL
|
|
00016 DDILC EQU 14 CHANNEL C TRAP ILC
|
|
00341 0021 00 0 00261 DTRAP. TTR DCTRAP TRAP CELL
|
|
|
|
00342 0 00000 0 00000 REFRSW PZE ** NON-ZERO IF TRAPS REFERRED TO USER
|
|
|
|
00343 TRAPSW BSS 1 NON-ZERO IF TRAP IN PROGRESS
|
|
00344 BUSY BSS 1 NON-ZERO IF WAITING FOR A TRAP
|
|
00345 TRKADR BSS 1 TRACK ADDRESS OF LATEST I/O
|
|
00346 WDCT BSS 1 WORD COUNT OF LATEST I/O TRANSMISSION
|
|
00347 REL BSS 1 RELATIVE LOCATION IN CURRENT TRACK
|
|
00350 TMP BSS 2 TEMPORARIES FOR TRACK PACKING AND UNPACKING
|
|
|
|
00352 606024316242 ERRCM1 BCI 8, DISK/DRUM READ ERROR ON CHANNEL C, OPERATION=
|
|
00362 606767676760 BCI 3, XXXX XXXXXX.
|
|
00365 606062254562 ERRCM2 BCI 7, SENSE DATA 040100000402 000000000000
|
|
|
|
00374 C1200 DUP 1,10 CONVERT TABLE FOR 12 TO 00
|
|
00374 000000000374 VFD 6/*-C1200,30/C1200
|
|
00406 000000000374 VFD 6/0,30/C1200
|
|
00407 120000000407 C0012 VFD 6/10,30/C0012 CONVERT TABLE FOR 00 TO 12
|
|
00410 DUP 1,10
|
|
00410 010000000407 VFD 6/*-C0012,30/C0012
|
|
|
|
000004 DENB BOOL 4 BITS FOR DISK/DRUM ENABLE
|
|
00422 0 00000 0 00004 DENBWD PZE DENB DISK/DRUM ENABLE BITS
|
|
00423 0 00000 0 00000 ENABLE PZE ** POINTER TO COMMON ENABLE WORD
|
|
|
|
END
|
|
|
|
LITERALS
|
|
00424 000000000000
|
|
00425 000000000002
|
|
00426 000000000007
|
|
00427 000000000012
|
|
00430 000000010000
|
|
00431 000000077777
|
|
00432 000000400001
|
|
00433 601002000060
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 1
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
434 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
|
|
|
|
0REFERENCES TO DEFINED SYMBOLS
|
|
10 IO 147
|
|
27 X4 15
|
|
152 ION 130
|
|
11 RED 325
|
|
347 REL 115, 141, 143, 145, 154, 155
|
|
350 TMP 201, 204, 206, 207, 210, 223, 227, 245, 252, 254
|
|
137 BUFF 132
|
|
344 BUSY 26, 45, 47, 146, 265
|
|
4 DENB 422
|
|
52 FRC1 46
|
|
202 PAC1 211
|
|
346 WDCT 134, 140, 144
|
|
12 BLACK 332
|
|
407 C0012 256, 407, 410, 411, 412, 413, 414, 415, 416, 417, 420, 421
|
|
374 C1200 176, 312, 374, 375, 376, 377, 400, 401, 402, 403, 404, 405, 406
|
|
311 CRUMP 267
|
|
163 CVTRK 114
|
|
167 CVTX4 165
|
|
16 DDILC 263, 341
|
|
74 DWAIT 70, 113
|
|
157 DWRX4 112, 126, 161
|
|
310 ERROR 76, 101, 102, 270, 275, 333
|
|
64 FCIR4 56
|
|
172 .PACK 0
|
|
224 UPAC2 230
|
|
232 UPAC3 220
|
|
247 UPAC4 253
|
|
254 UPAC5 231
|
|
1 ALLRST 63, 302
|
|
0 ALLSAV 57, 262
|
|
2 CMEXIT 303
|
|
170 CVTRK1 164
|
|
274 DCTINT 335
|
|
304 DCTIR4 261
|
|
261 DCTRAP 341
|
|
307 DCTRTN 264, 305
|
|
302 DCTXIT 272, 336
|
|
17 DDTRAP 23, 341
|
|
422 DENBWD 20, 150
|
|
341 DTRAP. 22
|
|
104 DWAITX 100
|
|
423 ENABLE 17, 21, 65, 72, 75
|
|
3 EPRINT 326, 330
|
|
352 ERRCM1 314, 324, 327
|
|
365 ERRCM2 331
|
|
67 FRCTMP 54, 61
|
|
123 GETCOM 151, 156
|
|
135 IOCALL 111
|
|
15 .DINIT 0
|
|
106 .DREAD 0
|
|
44 .DRSET 0
|
|
1 DISK/DRUM SIMULATED I/O PACKAGE D.R. WIDRIG MAY 1966 PAGE 2
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
70 .DWAIT 0
|
|
110 .DWRIT 0, 107
|
|
47 .FORCE 0
|
|
31 .REFER 0
|
|
35 .SETER 0
|
|
213 .UNPAK 0
|
|
4 MDINIT 24
|
|
5 MDREAD 106
|
|
7 MDWAIT 266
|
|
6 MDWRIT 110
|
|
342 REFRSW 33, 52, 271, 334
|
|
306 RTNFLG 274, 300
|
|
343 TRAPSW 25, 55, 62, 71, 74, 173, 216, 276, 301
|
|
345 TRKADR 142, 170, 311
|
|
161 TRKERR 136
|
|
337 UERROR 41, 42, 103
|
|
215 UNPACK 166, 214
|
|
340 USRTRP 32, 60, 277
|
|
|
|
0 NO ERROR IN ABOVE ASSEMBLY.
|
|
|
|
|
|
|
|
|
|
DDMAD BCD 06/06/68 2358.0 12460 00000
|
|
1 MAD PROGRAM LISTING ... ... ... FILE DDMAD MAD 06/06/68 1950.6
|
|
-
|
|
PACKAGE TO SIMULATE DISK I/O LM00001
|
|
D.R. WIDRIG MAY 1966 LM00002
|
|
REVISED OCTOBER 1966 LM00003
|
|
MINOR REVISIONS FEBRUARY 1967 LM00004
|
|
LM00005
|
|
EXTERNAL FUNCTION (TRKERR,B,COUNT,RL,TRACK) *001 LM00006
|
|
LM00007
|
|
NORMAL MODE IS INTEGER *002 LM00008
|
|
BOOLEAN CKTRK.,READSW,ERRSW,BUFFED,NEWTRK,FIRST *003 LM00009
|
|
STATEMENT LABEL TRKERR *004 LM00010
|
|
DIMENSION TSIZ(10),TIME(10) *005 LM00011
|
|
DIMENSION BUFF(0),ZBUF(0) *006 LM00012
|
|
LM00013
|
|
VECTOR VALUES LDKM = 0 *007 LM00014
|
|
VECTOR VALUES HDKM = 3 *008 LM00015
|
|
VECTOR VALUES NDKT = 10000 *009 LM00016
|
|
VECTOR VALUES LDMM = 4 *010 LM00017
|
|
VECTOR VALUES HDMM = 4 *011 LM00018
|
|
VECTOR VALUES NDMT = 400 *012 LM00019
|
|
LM00020
|
|
VECTOR VALUES MZE = - 0 *013 LM00021
|
|
VECTOR VALUES FIRST = 1B *014 LM00022
|
|
VECTOR VALUES AFSTMX = 5 *015 LM00023
|
|
VECTOR VALUES WDSPT = 435 *016 LM00024
|
|
VECTOR VALUES FILE = $(FILE)$ *017 LM00025
|
|
VECTOR VALUES TRK(0)...TRK(10) = 777777777777K *018 LM00026
|
|
VECTOR VALUES LINE(1)...LINE(14) = 575757575757K *019 LM00027
|
|
VECTOR VALUES FENCE = 777777777777K *020 LM00028
|
|
LM00029
|
|
INITIALIZE AND RESET DISK PACKAGE LM00030
|
|
LM00031
|
|
ENTRY TO MDINIT. *021 LM00032
|
|
OLDERR = FFERRT.(WOOPS) *022 LM00033
|
|
WHENEVER (OLDERR .NE. 0), FFERRT.(OLDERR) *023 LM00034
|
|
LM00035
|
|
INITIALIZE TABLES LM00036
|
|
LM00037
|
|
THROUGH DKL, FOR K = LDKM,1,(K.G.HDKM) *024 LM00038
|
|
TSIZ(K) = NDKT *025 LM00039
|
|
DKL CONTINUE *026 LM00040
|
|
THROUGH DML, FOR K = LDMM,1,(K.G.HDMM) *027 LM00041
|
|
TSIZ(K) = NDMT *028 LM00042
|
|
DML CONTINUE *029 LM00043
|
|
LM00044
|
|
RESET INTERNAL TABLES LM00045
|
|
LM00046
|
|
THROUGH RESET, FOR I = 0,1,(I.G.AFSTMX) *030 LM00047
|
|
WHENEVER TRK(I) .NE. FENCE, *031 LM00048
|
|
1 FCLOSE.(TRK(I),FILE,NERR0) *031 LM00049
|
|
NERR0 TRK(I) = FENCE *032 LM00050
|
|
TIME(I) = 0 *033 LM00051
|
|
RESET CONTINUE *034 LM00052
|
|
LM00053
|
|
SET UP BUFFER AREAS, ETC. LM00054
|
|
LM00055
|
|
WHENEVER FIRST *035 LM00056
|
|
GETBUF.(BUFF,WDSPT) *036 LM00057
|
|
GETBUF.(ZBUF,WDSPT) *037 LM00058
|
|
FIRST = 0B *038 LM00059
|
|
END OF CONDITIONAL *039 LM00060
|
|
LM00061
|
|
THROUGH LOOP0, FOR I = 1,1,(I .G. WDSPT) *040 LM00062
|
|
ZBUF(ZBUF+I) = 0 *041 LM00063
|
|
LOOP0 CONTINUE *042 LM00064
|
|
LM00065
|
|
SET UP STRAY VARIABLES LM00066
|
|
LM00067
|
|
NEWTRK = 1B *043 LM00068
|
|
I = 1 *044 LM00069
|
|
TRKNAM = FENCE *045 LM00070
|
|
FUNCTION RETURN *046 LM00071
|
|
LM00072
|
|
WRITE A TRACK, RESET READ SWITCH LM00073
|
|
LM00074
|
|
ENTRY TO MDWRIT. *047 LM00075
|
|
READSW = 0B *048 LM00076
|
|
LINE(14) = 665760K6 *049 LM00077
|
|
TRANSFER TO GO *050 LM00078
|
|
LM00079
|
|
READ A TRACK, SET SWITCH LM00080
|
|
LM00081
|
|
ENTRY TO MDREAD. *051 LM00082
|
|
READSW = 1B *052 LM00083
|
|
LINE(14) = 515760K6 *053 LM00084
|
|
LM00085
|
|
GET TRACK ADDRESS CHECKED, GET FILE NAME LM00086
|
|
LM00087
|
|
GO TRKADR = TRKCV.(TRACK) *054 LM00088
|
|
WHENEVER CKTRK.(TRKADR), TRANSFER TO TRKERR *055 LM00089
|
|
WHENEVER (TRKADR .NE. TRKNAM) *056 LM00090
|
|
NEWTRK = 1B *057 LM00091
|
|
TRKNAM = TRKADR *058 LM00092
|
|
OTHERWISE *059 LM00093
|
|
NEWTRK = 0B *060 LM00094
|
|
END OF CONDITIONAL *061 LM00095
|
|
FILNAM = TRKADR .A. 77777777K4 *062 LM00096
|
|
TIME = TIME + 1 *063 LM00097
|
|
LM00098
|
|
PICK UP POINTERS AND COUNTS LM00099
|
|
LM00100
|
|
REL = RL + 1 *064 LM00101
|
|
CT = COUNT *065 LM00102
|
|
LM00103
|
|
CHECK FOR DEBUGGING PRINT-OUT LM00104
|
|
LM00105
|
|
WHENEVER ((KEYS.(0).A.2K11) .NE. 0) *066 LM00106
|
|
WHENEVER NEWTRK *067 LM00107
|
|
LINE(11) = TRKADR *068 LM00108
|
|
LINE(12) = 575757575760K *069 LM00109
|
|
TRANSFER TO NEWREL *070 LM00110
|
|
OTHERWISE *071 LM00111
|
|
LINE(11) = 575757575757K *072 LM00112
|
|
LINE(12) = 575757575757K *073 LM00113
|
|
WHENEVER REL .NE. OLDREL *074 LM00114
|
|
NEWREL LINE(13) = DEFBC.(REL).V.575760K6 *075 LM00115
|
|
OTHERWISE *076 LM00116
|
|
LINE(13) = 575757575757K *077 LM00117
|
|
END OF CONDITIONAL *078 LM00118
|
|
END OF CONDITIONAL *079 LM00119
|
|
LINE(14) = LINE(14) .V. DEFBC.(CT) *080 LM00120
|
|
OLDREL = REL + CT *081 LM00121
|
|
WRITE6.(LINE(14)...4) *082 LM00122
|
|
END OF CONDITIONAL *083 LM00123
|
|
LM00124
|
|
MAKE SURE FILE IS OPENED LM00125
|
|
LM00126
|
|
WHENEVER TRK(I) .E. FILNAM *084 LM00127
|
|
TRANSFER TO OPEND *085 LM00128
|
|
OTHERWISE *086 LM00129
|
|
OLDEST = TIME *087 LM00130
|
|
SLOT = 0 *088 LM00131
|
|
BUFFED = 0B *089 LM00132
|
|
FBUFFE.(TRK(I),FILE,BUFF...0,NERR1) *090 LM00133
|
|
NERR1 THROUGH LOOP1, FOR I = 1,1,(I.G.AFSTMX) *091 LM00134
|
|
WHENEVER TRK(I) .E. FILNAM *092 LM00135
|
|
TRANSFER TO OPEND *093 LM00136
|
|
OR WHENEVER (TRK(I).E.FENCE) .AND. (SLOT.E.0) *094 LM00137
|
|
SLOT = I *095 LM00138
|
|
OR WHENEVER TIME(I) .L. OLDEST *096 LM00139
|
|
OLDEST = TIME(I) *097 LM00140
|
|
PTR = I *098 LM00141
|
|
END OF CONDITIONAL *099 LM00142
|
|
LOOP1 CONTINUE *100 LM00143
|
|
END OF CONDITIONAL *101 LM00144
|
|
LM00145
|
|
SEE IF SLOT AVAILABLE LM00146
|
|
LM00147
|
|
WHENEVER SLOT .NE. 0 *102 LM00148
|
|
I = SLOT *103 LM00149
|
|
LM00150
|
|
NO HOLES, CLOSE OLDEST FILE, OPEN NEW LM00151
|
|
LM00152
|
|
OTHERWISE *104 LM00153
|
|
I = PTR *105 LM00154
|
|
FCLOSE.(TRK(I),FILE,WOOPS) *106 LM00155
|
|
END OF CONDITIONAL *107 LM00156
|
|
FOPEN.($RW$,FILNAM,FILE,1,2,WOOPS) *108 LM00157
|
|
TRK(I) = FILNAM *109 LM00158
|
|
LM00159
|
|
UPDATE TIME LAST USED FOR THIS FILE LM00160
|
|
LM00161
|
|
OPEND TIME(I) = TIME *110 LM00162
|
|
LM00163
|
|
CONCOCT RELLOC LM00164
|
|
LM00165
|
|
TADD = ((TRKADR.A.7700K).RS.6) *111 LM00166
|
|
LREC = (TRKADR.A.77K) * WDSPT * 10 *112 LM00167
|
|
RELLOC = TADD * WDSPT + LREC + REL *113 LM00168
|
|
LM00169
|
|
THROW IN A BUFFER IF NOT BUFFERED LM00170
|
|
LM00171
|
|
WHENEVER .NOT. BUFFED *114 LM00172
|
|
BUFFED = 1B *115 LM00173
|
|
FBUFFE.(FILNAM,FILE,BUFF(BUFF+432)...432,WOOPS) *116 LM00174
|
|
END OF CONDITIONAL *117 LM00175
|
|
LM00176
|
|
IS THIS A READ OR A WRITE LM00177
|
|
LM00178
|
|
WHENEVER READSW *118 LM00179
|
|
FRDWAI.(FILNAM,FILE,RELLOC,B...CT,REOF,MZE,WOOPS) *119 LM00180
|
|
OTHERWISE *120 LM00181
|
|
WRITE WHENEVER NEWTRK *121 LM00182
|
|
FWRFIL.(FILNAM,FILE,RELLOC, *122 LM00183
|
|
1 ZBUF(ZBUF+WDSPT)...WDSPT,WEOF,MZE,WOOPS) *122 LM00184
|
|
END OF CONDITIONAL *123 LM00185
|
|
FWRWAI.(FILNAM,FILE,RELLOC,B...CT,WEOF,MZE,WOOPS) *124 LM00186
|
|
END OF CONDITIONAL *125 LM00187
|
|
LM00188
|
|
THAT'S ALL, FOLKS LM00189
|
|
LM00190
|
|
FUNCTION RETURN *126 LM00191
|
|
LM00192
|
|
MDWAIT ENTRY CHECKS ON UNEXPECTED EOF'S LM00193
|
|
LM00194
|
|
ENTRY TO MDWAIT. *127 LM00195
|
|
WHENEVER .NOT. ERRSW, FUNCTION RETURN *128 LM00196
|
|
B = ERCODE *129 LM00197
|
|
ERRSW = 0B *130 LM00198
|
|
TRANSFER TO TRKERR *131 LM00199
|
|
LM00200
|
|
ODD THINGS DEPARTMENT LM00201
|
|
LM00202
|
|
WOOPS HALT. *132 LM00203
|
|
DORMNT. *133 LM00204
|
|
LM00205
|
|
ERROR OR EOF READING, SET ERROR SWITCH LM00206
|
|
LM00207
|
|
REOF ERRSW = 1B *134 LM00208
|
|
ERCODE = 2 *135 LM00209
|
|
FUNCTION RETURN *136 LM00210
|
|
LM00211
|
|
EOF WRITING, PAD WITH GARBAGE LM00212
|
|
LM00213
|
|
WEOF FWRFIL.(FILNAM,FILE,0,ZBUF(ZBUF+WDSPT)...WDSPT,MZE,MZE,WOOPS) *137 LM00214
|
|
TRANSFER TO WRITE *138 LM00215
|
|
LM00216
|
|
CHECK FOR CORRECT TRACK ADDRESS LM00217
|
|
LM00218
|
|
INTERNAL FUNCTION (A) *139 LM00219
|
|
ENTRY TO TRKCV. *140 LM00220
|
|
X = A *141 LM00221
|
|
Y = (X+$666666$) .A. $++++++$ *142 LM00222
|
|
FUNCTION RETURN X .A. .N.(Y.RS.1) .A. .N.(Y.RS.3) *143 LM00223
|
|
END OF FUNCTION *144 LM00224
|
|
LM00225
|
|
CHECK FOR CORRECT TRACK ADDRESS LM00226
|
|
LM00227
|
|
INTERNAL FUNCTION (A) *145 LM00228
|
|
ENTRY TO CKTRK. *146 LM00229
|
|
X = A *147 LM00230
|
|
LM00231
|
|
WHENEVER ((X.A.$ $) .NE. 0), FUNCTION RETURN 1B *148 LM00232
|
|
R = X .A. 77K *149 LM00233
|
|
T = BCDEC.((X.RS.6) .A. 77777777K) *150 LM00234
|
|
M = (X.RS.30) .A. 77K *151 LM00235
|
|
LM00236
|
|
WHENEVER (M.L.LDKM) .OR. (M.G.HDKM .AND. M.L.LDMM) .OR. *152 LM00237
|
|
1 (M.G.HDMM), FUNCTION RETURN 1B *152 LM00238
|
|
WHENEVER (R.G.1) .OR. (T.G.TSIZ(M)), FUNCTION RETURN 1B *153 LM00239
|
|
FUNCTION RETURN 0B *154 LM00240
|
|
END OF FUNCTION *155 LM00241
|
|
LM00242
|
|
END OF FUNCTION *156 LM00243
|
|
1MAD PROGRAM,TYPE NOV 1963 (ALL NUMBERS ARE OCTAL)
|
|
0TOTAL LOCATIONS 01216 TRANSFER VECTOR LENGTH 00017 PROGRAM BEGINS 00212
|
|
0 PROGRAM IS AN EXTERNAL FUNCTION. THE FOLLOWING ARE ENTRIES
|
|
MDWAIT 00743 0 MDREAD 00367 0 MDWRIT 00357 0 MDINIT 00213 0
|
|
0VARIABLE STORAGE (A=ARRAY,C=COMMON,E=ERASABLE,DIGIT=MODE)
|
|
AFSTMX 00033 A 1 GO 00022 4 MZE 00074 A 1 PTR 00103 1 TRKNAM 00126 1
|
|
BUFFED 00034 2 HDKM 00045 A 1 NDKT 00075 A 1 READSW 00104 2 TRK 00141 A 1
|
|
BUFF 00035 A 1 HDMM 00046 A 1 NDMT 00076 A 1 RELLOC 00105 1 T 00142 1
|
|
CT 00036 1 I 00047 1 NERR0 00023 4 REL 00106 1 TSIZ 00155 A 1
|
|
DKL 00021 4 K 00050 1 NERR1 00024 4 REOF 00027 4 WDSPT 00156 A 1
|
|
DML 00021 4 LDKM 00051 A 1 NEWREL 00025 4 RESET 00021 4 WEOF 00030 4
|
|
ERCODE 00037 1 LDMM 00052 A 1 NEWTRK 00077 2 R 00107 1 WOOPS 00031 4
|
|
ERRSW 00040 2 LINE 00071 A 1 OLDERR 00100 1 SLOT 00110 1 WRITE 00032 4
|
|
FENCE 00041 A 1 LOOP0 00021 4 OLDEST 00101 1 TADD 00111 1 X 00157 1
|
|
FILE 00042 A 1 LOOP1 00021 4 OLDREL 00102 1 TIME 00124 A 1 Y 00160 1
|
|
FILNAM 00043 1 LREC 00072 1 OPEND 00026 4 TRKADR 00125 1 ZBUF 00161 A 1
|
|
FIRST 00044 A 2 M 00073 1
|
|
0FUNCTION DICTIONARY
|
|
BCDEC 00000 1 DEFBC 00001 1 DORMNT 00002 1 EXIT 00003 1 FBUFFE 00004 1
|
|
FCLOSE 00005 1 FFERRT 00006 1 FOPEN 00007 1 FRDWAI 00010 1 FWRFIL 00011 1
|
|
FWRWAI 00012 1 GETBUF 00013 1 HALT 00014 1 KEYS 00015 1 WRITE6 00016 1
|
|
CKTRK 00017 2 TRKCV 00020 1
|
|
0ABSOLUTE CONSTANTS
|
|
00171 +000000000036 00175 +000077777777 00207 -206060606060 00165 +000000000003 00200 +202020202020
|
|
00176 +060606060606 00173 +000000000660 00170 +000000000012 00172 +000000000077 00167 +000000000006
|
|
00174 +000000007700 00164 +000000000002 00203 -116660606060 00166 +000000000004 00206 -175760000000
|
|
00204 -175757575757 00205 -175757575760 00177 +200000000000 00211 -377777770000 00202 -115760000000
|
|
00210 -265760000000 00162 +000000000000 00163 +000000000001 00201 +233000000000
|
|
0STATEMENT DICTIONARY
|
|
00022 TXL -300400000375 00023 TXL -300312000307 00024 TXL -300544000532 00025 TXL -300467000461
|
|
00026 TXL -300634000631 00027 TXL -300761000757 00030 TXL -301001000764 00031 TXL -300756000755
|
|
00032 TXL -300714000712
|
|
0PROGRAM
|
|
EXTERNAL FUNCTION (TRKERR,B,COUNT,RL,TRACK) 001 LM00006
|
|
N'R 002 LM00008
|
|
B'N CKTRK.,READSW,ERRSW,BUFFED,NEWTRK,FIRST 003 LM00009
|
|
S'L TRKERR 004 LM00010
|
|
D'N TSIZ(10),TIME(10) 005 LM00011
|
|
D'N BUFF(0),ZBUF(0) 006 LM00012
|
|
V'S LDKM = 0 007 LM00014
|
|
00051 +0 00000 0 00000
|
|
V'S HDKM = 3 008 LM00015
|
|
00045 +0 00000 0 00003
|
|
V'S NDKT = 10000 009 LM00016
|
|
00075 +0 00000 0 23420
|
|
V'S LDMM = 4 010 LM00017
|
|
00052 +0 00000 0 00004
|
|
V'S HDMM = 4 011 LM00018
|
|
00046 +0 00000 0 00004
|
|
V'S NDMT = 400 012 LM00019
|
|
00076 +0 00000 0 00620
|
|
V'S MZE = - 0 013 LM00021
|
|
00074 -0 00000 0 00000
|
|
V'S FIRST = 1B 014 LM00022
|
|
00044 +0 00000 0 00001
|
|
V'S AFSTMX = 5 015 LM00023
|
|
00033 +0 00000 0 00005
|
|
V'S WDSPT = 435 016 LM00024
|
|
00156 +0 00000 0 00663
|
|
V'S FILE = $(FILE)$ 017 LM00025
|
|
00042 -3 42631 4 32534
|
|
V'S TRK(0)...TRK(10) = 777777777777K 018 LM00026
|
|
00127 -3 77777 7 77777 00130 -3 77777 7 77777 00131 -3 77777 7 77777 00132 -3 77777 7 77777
|
|
00133 -3 77777 7 77777 00134 -3 77777 7 77777 00135 -3 77777 7 77777 00136 -3 77777 7 77777
|
|
00137 -3 77777 7 77777 00140 -3 77777 7 77777 00141 -3 77777 7 77777
|
|
V'S LINE(1)...LINE(14) = 575757575757K 019 LM00027
|
|
00053 -1 75757 5 75757 00054 -1 75757 5 75757 00055 -1 75757 5 75757 00056 -1 75757 5 75757
|
|
00057 -1 75757 5 75757 00060 -1 75757 5 75757 00061 -1 75757 5 75757 00062 -1 75757 5 75757
|
|
00063 -1 75757 5 75757 00064 -1 75757 5 75757 00065 -1 75757 5 75757 00066 -1 75757 5 75757
|
|
00067 -1 75757 5 75757 00070 -1 75757 5 75757
|
|
V'S FENCE = 777777777777K 020 LM00028
|
|
00041 -3 77777 7 77777
|
|
E'O MDINIT. 021 LM00032
|
|
00212 TRA +0 02000 0 00215 00213 SXA +0 63400 2 01166 00214 TSX +0 07400 2 01166
|
|
OLDERR = FFERRT.(WOOPS) 022 LM00033
|
|
00215 TSX +0 07400 4 00006 00216 TXH +3 00000 0 00031 00217 STO +0 60100 0 00100
|
|
W'R (OLDERR .NE. 0), FFERRT.(OLDERR) 023 LM00034
|
|
00220 CLA +0 50000 0 00100 00221 SUB +0 40200 0 00162 00222 TZE +0 10000 0 00225 00223 TSX +0 07400 4 00006
|
|
00224 TXH +3 00000 0 00100
|
|
T'H DKL, FOR K = LDKM,1,(K.G.HDKM) 024 LM00038
|
|
00225 CLA +0 50000 0 00051 00226 STO +0 60100 0 00050 00227 TRA +0 02000 0 00233 00230 CLA +0 50000 0 00050
|
|
00231 ADD +0 40000 0 00163 00232 STO +0 60100 0 00050 00233 CLA +0 50000 0 00050 00234 SUB +0 40200 0 00045
|
|
00235 TZE +0 10000 0 00237 00236 TPL +0 12000 0 00243
|
|
TSIZ(K) = NDKT 025 LM00039
|
|
00237 LXA +0 53400 1 00050 00240 CLA +0 50000 0 00075 00241 STO +0 60100 1 00155
|
|
DKL C'E 026 LM00040
|
|
00242 TRA +0 02000 0 00230
|
|
T'H DML, FOR K = LDMM,1,(K.G.HDMM) 027 LM00041
|
|
00243 CLA +0 50000 0 00052 00244 STO +0 60100 0 00050 00245 TRA +0 02000 0 00251 00246 CLA +0 50000 0 00050
|
|
00247 ADD +0 40000 0 00163 00250 STO +0 60100 0 00050 00251 CLA +0 50000 0 00050 00252 SUB +0 40200 0 00046
|
|
00253 TZE +0 10000 0 00255 00254 TPL +0 12000 0 00261
|
|
TSIZ(K) = NDMT 028 LM00042
|
|
00255 LXA +0 53400 1 00050 00256 CLA +0 50000 0 00076 00257 STO +0 60100 1 00155
|
|
DML C'E 029 LM00043
|
|
00260 TRA +0 02000 0 00246
|
|
T'H RESET, FOR I = 0,1,(I.G.AFSTMX) 030 LM00047
|
|
00261 CLA +0 50000 0 00162 00262 STO +0 60100 0 00047 00263 TRA +0 02000 0 00267 00264 CLA +0 50000 0 00047
|
|
00265 ADD +0 40000 0 00163 00266 STO +0 60100 0 00047 00267 CLA +0 50000 0 00047 00270 SUB +0 40200 0 00033
|
|
00271 TZE +0 10000 0 00273 00272 TPL +0 12000 0 00315
|
|
W'R TRK(I) .NE. FENCE, 031 LM00048
|
|
1 FCLOSE.(TRK(I),FILE,NERR0) 031 LM00049
|
|
00273 LXA +0 53400 1 00047 00274 CLA +0 50000 1 00141 00275 SUB +0 40200 0 00041 00276 TZE +0 10000 0 00307
|
|
00277 CLA +0 50000 0 00047 00300 SUB +0 40200 0 00301 00301 TXH +3 00000 0 00141 00302 STA +0 62100 0 00304
|
|
00303 TSX +0 07400 4 00005 00304 TXH +3 00000 0 00000 00305 TXH +3 00000 0 00042 00306 TXH +3 00000 0 00023
|
|
NERR0 TRK(I) = FENCE 032 LM00050
|
|
00307 LXA +0 53400 1 00047 00310 CLA +0 50000 0 00041 00311 STO +0 60100 1 00141
|
|
TIME(I) = 0 033 LM00051
|
|
00312 CLA +0 50000 0 00162 00313 STO +0 60100 1 00124
|
|
RESET C'E 034 LM00052
|
|
00314 TRA +0 02000 0 00264
|
|
W'R FIRST 035 LM00056
|
|
00315 NZT -0 52000 0 00044 00316 TRA +0 02000 0 00327
|
|
GETBUF.(BUFF,WDSPT) 036 LM00057
|
|
00317 TSX +0 07400 4 00013 00320 TXH +3 00000 0 00035 00321 TXH +3 00000 0 00156
|
|
GETBUF.(ZBUF,WDSPT) 037 LM00058
|
|
00322 TSX +0 07400 4 00013 00323 TXH +3 00000 0 00161 00324 TXH +3 00000 0 00156
|
|
FIRST = 0B 038 LM00059
|
|
00325 CLA +0 50000 0 00162 00326 STO +0 60100 0 00044
|
|
E'L 039 LM00060
|
|
T'H LOOP0, FOR I = 1,1,(I .G. WDSPT) 040 LM00062
|
|
00327 CLA +0 50000 0 00163 00330 STO +0 60100 0 00047 00331 TRA +0 02000 0 00335 00332 CLA +0 50000 0 00047
|
|
00333 ADD +0 40000 0 00163 00334 STO +0 60100 0 00047 00335 CLA +0 50000 0 00047 00336 SUB +0 40200 0 00156
|
|
00337 TZE +0 10000 0 00341 00340 TPL +0 12000 0 00347
|
|
ZBUF(ZBUF+I) = 0 041 LM00063
|
|
00341 CLA +0 50000 0 00161 00342 ADD +0 40000 0 00047 00343 PAX +0 73400 1 00000 00344 CLA +0 50000 0 00162
|
|
00345 STO +0 60100 1 00161
|
|
LOOP0 C'E 042 LM00064
|
|
00346 TRA +0 02000 0 00332
|
|
NEWTRK = 1B 043 LM00068
|
|
00347 CLA +0 50000 0 00163 00350 STO +0 60100 0 00077
|
|
I = 1 044 LM00069
|
|
00351 CLA +0 50000 0 00163 00352 STO +0 60100 0 00047
|
|
TRKNAM = FENCE 045 LM00070
|
|
00353 CLA +0 50000 0 00041 00354 STO +0 60100 0 00126
|
|
F'N 046 LM00071
|
|
00355 TRA +0 02000 0 01207
|
|
E'O MDWRIT. 047 LM00075
|
|
00356 TRA +0 02000 0 00361 00357 SXA +0 63400 2 01166 00360 TSX +0 07400 2 01166
|
|
READSW = 0B 048 LM00076
|
|
00361 CLA +0 50000 0 00162 00362 STO +0 60100 0 00104
|
|
LINE(14) = 665760K6 049 LM00077
|
|
00363 CLA +0 50000 0 00210 00364 STO +0 60100 0 00053
|
|
T'O GO 050 LM00078
|
|
00365 TRA +0 02000 0 00022
|
|
E'O MDREAD. 051 LM00082
|
|
00366 TRA +0 02000 0 00371 00367 SXA +0 63400 2 01166 00370 TSX +0 07400 2 01166
|
|
READSW = 1B 052 LM00083
|
|
00371 CLA +0 50000 0 00163 00372 STO +0 60100 0 00104
|
|
LINE(14) = 515760K6 053 LM00084
|
|
00373 CLA +0 50000 0 00202 00374 STO +0 60100 0 00053
|
|
GO TRKADR = TRKCV.(TRACK) 054 LM00088
|
|
00375 TSX +0 07400 4 00020 00376 TXH +3 00000 0 00024 00377 STO +0 60100 0 00125
|
|
W'R CKTRK.(TRKADR), T'O TRKERR 055 LM00089
|
|
00400 TSX +0 07400 4 00017 00401 TXH +3 00000 0 00125 00402 TZE +0 10000 0 00404 00403 TRA +0 02000 0 00024
|
|
W'R (TRKADR .NE. TRKNAM) 056 LM00090
|
|
00404 CLA +0 50000 0 00125 00405 SUB +0 40200 0 00126 00406 TZE +0 10000 0 00414
|
|
NEWTRK = 1B 057 LM00091
|
|
00407 CLA +0 50000 0 00163 00410 STO +0 60100 0 00077
|
|
TRKNAM = TRKADR 058 LM00092
|
|
00411 CLA +0 50000 0 00125 00412 STO +0 60100 0 00126
|
|
O'E 059 LM00093
|
|
00413 TRA +0 02000 0 00416
|
|
NEWTRK = 0B 060 LM00094
|
|
00414 CLA +0 50000 0 00162 00415 STO +0 60100 0 00077
|
|
E'L 061 LM00095
|
|
FILNAM = TRKADR .A. 77777777K4 062 LM00096
|
|
00416 CAL -0 50000 0 00125 00417 ANA -0 32000 0 00211 00420 SLW +0 60200 0 00043
|
|
TIME = TIME + 1 063 LM00097
|
|
00421 CLA +0 50000 0 00124 00422 ADD +0 40000 0 00163 00423 STO +0 60100 0 00124
|
|
REL = RL + 1 064 LM00101
|
|
00424 CLA +0 50000 0 00024 00425 ADD +0 40000 0 00163 00426 STO +0 60100 0 00106
|
|
CT = COUNT 065 LM00102
|
|
00427 CLA +0 50000 0 00024 00430 STO +0 60100 0 00036
|
|
W'R ((KEYS.(0).A.2K11) .NE. 0) 066 LM00106
|
|
00431 TSX +0 07400 4 00015 00432 TXH +3 00000 0 00162 00433 STO +0 60100 0 01213 00434 CAL -0 50000 0 01213
|
|
00435 ANA -0 32000 0 00177 00436 SLW +0 60200 0 01213 00437 CLA +0 50000 0 01213 00440 SUB +0 40200 0 00162
|
|
00441 TZE +0 10000 0 00505
|
|
W'R NEWTRK 067 LM00107
|
|
00442 NZT -0 52000 0 00077 00443 TRA +0 02000 0 00452
|
|
LINE(11) = TRKADR 068 LM00108
|
|
00444 CLA +0 50000 0 00125 00445 STO +0 60100 0 00056
|
|
LINE(12) = 575757575760K 069 LM00109
|
|
00446 CLA +0 50000 0 00205 00447 STO +0 60100 0 00055
|
|
T'O NEWREL 070 LM00110
|
|
00450 TRA +0 02000 0 00025
|
|
O'E 071 LM00111
|
|
00451 TRA +0 02000 0 00472
|
|
LINE(11) = 575757575757K 072 LM00112
|
|
00452 CLA +0 50000 0 00204 00453 STO +0 60100 0 00056
|
|
LINE(12) = 575757575757K 073 LM00113
|
|
00454 CLA +0 50000 0 00204 00455 STO +0 60100 0 00055
|
|
W'R REL .NE. OLDREL 074 LM00114
|
|
00456 CLA +0 50000 0 00106 00457 SUB +0 40200 0 00102 00460 TZE +0 10000 0 00470
|
|
NEWREL LINE(13) = DEFBC.(REL).V.575760K6 075 LM00115
|
|
00461 TSX +0 07400 4 00001 00462 TXH +3 00000 0 00106 00463 STO +0 60100 0 01213 00464 CAL -0 50000 0 01213
|
|
00465 ORA -0 50100 0 00206 00466 SLW +0 60200 0 00054
|
|
O'E 076 LM00116
|
|
00467 TRA +0 02000 0 00472
|
|
LINE(13) = 575757575757K 077 LM00117
|
|
00470 CLA +0 50000 0 00204 00471 STO +0 60100 0 00054
|
|
E'L 078 LM00118
|
|
E'L 079 LM00119
|
|
LINE(14) = LINE(14) .V. DEFBC.(CT) 080 LM00120
|
|
00472 TSX +0 07400 4 00001 00473 TXH +3 00000 0 00036 00474 STO +0 60100 0 01213 00475 CAL -0 50000 0 00053
|
|
00476 ORA -0 50100 0 01213 00477 SLW +0 60200 0 00053
|
|
OLDREL = REL + CT 081 LM00121
|
|
00500 CLA +0 50000 0 00106 00501 ADD +0 40000 0 00036 00502 STO +0 60100 0 00102
|
|
WRITE6.(LINE(14)...4) 082 LM00122
|
|
00503 TSX +0 07400 4 00016 00504 TIX +2 00166 0 00053
|
|
E'L 083 LM00123
|
|
W'R TRK(I) .E. FILNAM 084 LM00127
|
|
00505 LXA +0 53400 1 00047 00506 CLA +0 50000 1 00141 00507 SUB +0 40200 0 00043 00510 TNZ -0 10000 0 00513
|
|
T'O OPEND 085 LM00128
|
|
00511 TRA +0 02000 0 00026
|
|
O'E 086 LM00129
|
|
00512 TRA +0 02000 0 00577
|
|
OLDEST = TIME 087 LM00130
|
|
00513 CLA +0 50000 0 00124 00514 STO +0 60100 0 00101
|
|
SLOT = 0 088 LM00131
|
|
00515 CLA +0 50000 0 00162 00516 STO +0 60100 0 00110
|
|
BUFFED = 0B 089 LM00132
|
|
00517 CLA +0 50000 0 00162 00520 STO +0 60100 0 00034
|
|
FBUFFE.(TRK(I),FILE,BUFF...0,NERR1) 090 LM00133
|
|
00521 CLA +0 50000 0 00047 00522 SUB +0 40200 0 00523 00523 TXH +3 00000 0 00141 00524 STA +0 62100 0 00526
|
|
00525 TSX +0 07400 4 00004 00526 TXH +3 00000 0 00000 00527 TXH +3 00000 0 00042 00530 TIX +2 00162 0 00035
|
|
00531 TXH +3 00000 0 00024
|
|
NERR1 T'H LOOP1, FOR I = 1,1,(I.G.AFSTMX) 091 LM00134
|
|
00532 CLA +0 50000 0 00163 00533 STO +0 60100 0 00047 00534 TRA +0 02000 0 00540 00535 CLA +0 50000 0 00047
|
|
00536 ADD +0 40000 0 00163 00537 STO +0 60100 0 00047 00540 CLA +0 50000 0 00047 00541 SUB +0 40200 0 00033
|
|
00542 TZE +0 10000 0 00544 00543 TPL +0 12000 0 00577
|
|
W'R TRK(I) .E. FILNAM 092 LM00135
|
|
00544 LXA +0 53400 1 00047 00545 CLA +0 50000 1 00141 00546 SUB +0 40200 0 00043 00547 TNZ -0 10000 0 00552
|
|
T'O OPEND 093 LM00136
|
|
00550 TRA +0 02000 0 00026
|
|
O'R (TRK(I).E.FENCE) .AND. (SLOT.E.0) 094 LM00137
|
|
00551 TRA +0 02000 0 00576 00552 CLA +0 50000 0 00110 00553 SUB +0 40200 0 00162 00554 TNZ -0 10000 0 00564
|
|
00555 LXA +0 53400 1 00047 00556 CLA +0 50000 1 00141 00557 SUB +0 40200 0 00041 00560 TNZ -0 10000 0 00564
|
|
SLOT = I 095 LM00138
|
|
00561 CLA +0 50000 0 00047 00562 STO +0 60100 0 00110
|
|
O'R TIME(I) .L. OLDEST 096 LM00139
|
|
00563 TRA +0 02000 0 00576 00564 LXA +0 53400 1 00047 00565 CLA +0 50000 1 00124 00566 SUB +0 40200 0 00101
|
|
00567 TZE +0 10000 0 00576 00570 TPL +0 12000 0 00576
|
|
OLDEST = TIME(I) 097 LM00140
|
|
00571 LXA +0 53400 2 00047 00572 CLA +0 50000 2 00124 00573 STO +0 60100 0 00101
|
|
PTR = I 098 LM00141
|
|
00574 CLA +0 50000 0 00047 00575 STO +0 60100 0 00103
|
|
E'L 099 LM00142
|
|
LOOP1 C'E 100 LM00143
|
|
00576 TRA +0 02000 0 00535
|
|
E'L 101 LM00144
|
|
W'R SLOT .NE. 0 102 LM00148
|
|
00577 CLA +0 50000 0 00110 00600 SUB +0 40200 0 00162 00601 TZE +0 10000 0 00605
|
|
I = SLOT 103 LM00149
|
|
00602 CLA +0 50000 0 00110 00603 STO +0 60100 0 00047
|
|
O'E 104 LM00153
|
|
00604 TRA +0 02000 0 00617
|
|
I = PTR 105 LM00154
|
|
00605 CLA +0 50000 0 00103 00606 STO +0 60100 0 00047
|
|
FCLOSE.(TRK(I),FILE,WOOPS) 106 LM00155
|
|
00607 CLA +0 50000 0 00047 00610 SUB +0 40200 0 00611 00611 TXH +3 00000 0 00141 00612 STA +0 62100 0 00614
|
|
00613 TSX +0 07400 4 00005 00614 TXH +3 00000 0 00000 00615 TXH +3 00000 0 00042 00616 TXH +3 00000 0 00031
|
|
E'L 107 LM00156
|
|
FOPEN.($RW$,FILNAM,FILE,1,2,WOOPS) 108 LM00157
|
|
00617 TSX +0 07400 4 00007 00620 TXH +3 00000 0 00203 00621 TXH +3 00000 0 00043 00622 TXH +3 00000 0 00042
|
|
00623 TXH +3 00000 0 00163 00624 TXH +3 00000 0 00164 00625 TXH +3 00000 0 00031
|
|
TRK(I) = FILNAM 109 LM00158
|
|
00626 LXA +0 53400 1 00047 00627 CLA +0 50000 0 00043 00630 STO +0 60100 1 00141
|
|
OPEND TIME(I) = TIME 110 LM00162
|
|
00631 LXA +0 53400 1 00047 00632 CLA +0 50000 0 00124 00633 STO +0 60100 1 00124
|
|
TADD = ((TRKADR.A.7700K).RS.6) 111 LM00166
|
|
00634 CAL -0 50000 0 00125 00635 ANA -0 32000 0 00174 00636 SLW +0 60200 0 01213 00637 CAL -0 50000 0 00167
|
|
00640 STA +0 62100 0 00642 00641 CAL -0 50000 0 01213 00642 LGR -0 76500 0 00000 00643 SLW +0 60200 0 00111
|
|
LREC = (TRKADR.A.77K) * WDSPT * 10 112 LM00167
|
|
00644 CAL -0 50000 0 00125 00645 ANA -0 32000 0 00172 00646 SLW +0 60200 0 01213 00647 LDQ +0 56000 0 01213
|
|
00650 MPY +0 20000 0 00156 00651 MPY +0 20000 0 00170 00652 STQ -0 60000 0 00072
|
|
RELLOC = TADD * WDSPT + LREC + REL 113 LM00168
|
|
00653 LDQ +0 56000 0 00111 00654 MPY +0 20000 0 00156 00655 XCA +0 13100 0 00000 00656 ADD +0 40000 0 00072
|
|
00657 ADD +0 40000 0 00106 00660 STO +0 60100 0 00105
|
|
W'R .NOT. BUFFED 114 LM00172
|
|
00661 ZET +0 52000 0 00034 00662 TRA +0 02000 0 00677
|
|
BUFFED = 1B 115 LM00173
|
|
00663 CLA +0 50000 0 00163 00664 STO +0 60100 0 00034
|
|
FBUFFE.(FILNAM,FILE,BUFF(BUFF+432)...432,WOOPS) 116 LM00174
|
|
00665 CLA +0 50000 0 00035 00666 ADD +0 40000 0 00173 00667 SUB +0 40200 0 00670 00670 TXH +3 00000 0 00035
|
|
00671 STA +0 62100 0 00675 00672 TSX +0 07400 4 00004 00673 TXH +3 00000 0 00043 00674 TXH +3 00000 0 00042
|
|
00675 TIX +2 00173 0 00000 00676 TXH +3 00000 0 00031
|
|
E'L 117 LM00175
|
|
W'R READSW 118 LM00179
|
|
00677 NZT -0 52000 0 00104 00700 TRA +0 02000 0 00712
|
|
FRDWAI.(FILNAM,FILE,RELLOC,B...CT,REOF,MZE,WOOPS) 119 LM00180
|
|
00701 TSX +0 07400 4 00010 00702 TXH +3 00000 0 00043 00703 TXH +3 00000 0 00042 00704 TXH +3 00000 0 00105
|
|
00705 TIX +2 00036 0 00024 00706 TXH +3 00000 0 00027 00707 TXH +3 00000 0 00074 00710 TXH +3 00000 0 00031
|
|
O'E 120 LM00181
|
|
00711 TRA +0 02000 0 00741
|
|
WRITE W'R NEWTRK 121 LM00182
|
|
00712 NZT -0 52000 0 00077 00713 TRA +0 02000 0 00731
|
|
FWRFIL.(FILNAM,FILE,RELLOC, 122 LM00183
|
|
1 ZBUF(ZBUF+WDSPT)...WDSPT,WEOF,MZE,WOOPS) 122 LM00184
|
|
00714 CLA +0 50000 0 00161 00715 ADD +0 40000 0 00156 00716 SUB +0 40200 0 00717 00717 TXH +3 00000 0 00161
|
|
00720 STA +0 62100 0 00725 00721 TSX +0 07400 4 00011 00722 TXH +3 00000 0 00043 00723 TXH +3 00000 0 00042
|
|
00724 TXH +3 00000 0 00105 00725 TIX +2 00156 0 00000 00726 TXH +3 00000 0 00030 00727 TXH +3 00000 0 00074
|
|
00730 TXH +3 00000 0 00031
|
|
E'L 123 LM00185
|
|
FWRWAI.(FILNAM,FILE,RELLOC,B...CT,WEOF,MZE,WOOPS) 124 LM00186
|
|
00731 TSX +0 07400 4 00012 00732 TXH +3 00000 0 00043 00733 TXH +3 00000 0 00042 00734 TXH +3 00000 0 00105
|
|
00735 TIX +2 00036 0 00024 00736 TXH +3 00000 0 00030 00737 TXH +3 00000 0 00074 00740 TXH +3 00000 0 00031
|
|
E'L 125 LM00187
|
|
F'N 126 LM00191
|
|
00741 TRA +0 02000 0 01207
|
|
E'O MDWAIT. 127 LM00195
|
|
00742 TRA +0 02000 0 00745 00743 SXA +0 63400 2 01166 00744 TSX +0 07400 2 01166
|
|
W'R .NOT. ERRSW, F'N 128 LM00196
|
|
00745 ZET +0 52000 0 00040 00746 TRA +0 02000 0 00750 00747 TRA +0 02000 0 01207
|
|
B = ERCODE 129 LM00197
|
|
00750 CLA +0 50000 0 00037 00751 STO +0 60100 0 00024
|
|
ERRSW = 0B 130 LM00198
|
|
00752 CLA +0 50000 0 00162 00753 STO +0 60100 0 00040
|
|
T'O TRKERR 131 LM00199
|
|
00754 TRA +0 02000 0 00024
|
|
WOOPS HALT. 132 LM00203
|
|
00755 TSX +0 07400 4 00014
|
|
DORMNT. 133 LM00204
|
|
00756 TSX +0 07400 4 00002
|
|
REOF ERRSW = 1B 134 LM00208
|
|
00757 CLA +0 50000 0 00163 00760 STO +0 60100 0 00040
|
|
ERCODE = 2 135 LM00209
|
|
00761 CLA +0 50000 0 00164 00762 STO +0 60100 0 00037
|
|
F'N 136 LM00210
|
|
00763 TRA +0 02000 0 01207
|
|
WEOF FWRFIL.(FILNAM,FILE,0,ZBUF(ZBUF+WDSPT)...WDSPT,MZE,MZE,WOOPS) 137 LM00214
|
|
00764 CLA +0 50000 0 00161 00765 ADD +0 40000 0 00156 00766 SUB +0 40200 0 00767 00767 TXH +3 00000 0 00161
|
|
00770 STA +0 62100 0 00775 00771 TSX +0 07400 4 00011 00772 TXH +3 00000 0 00043 00773 TXH +3 00000 0 00042
|
|
00774 TXH +3 00000 0 00162 00775 TIX +2 00156 0 00000 00776 TXH +3 00000 0 00074 00777 TXH +3 00000 0 00074
|
|
01000 TXH +3 00000 0 00031
|
|
T'O WRITE 138 LM00215
|
|
01001 TRA +0 02000 0 00032
|
|
INTERNAL FUNCTION (A) 139 LM00219
|
|
01002 TRA +0 02000 0 01052
|
|
E'O TRKCV. 140 LM00220
|
|
01003 TRA +0 02000 0 01006 00020 TTR +0 02100 0 01004 01004 SXA +0 63400 2 01037 01005 TSX +0 07400 2 01037
|
|
X = A 141 LM00221
|
|
01006 CLA +0 50000 0 00024 01007 STO +0 60100 0 00157
|
|
Y = (X+$666666$) .A. $++++++$ 142 LM00222
|
|
01010 CLA +0 50000 0 00157 01011 ADD +0 40000 0 00176 01012 STO +0 60100 0 01051 01013 CAL -0 50000 0 01051
|
|
01014 ANA -0 32000 0 00200 01015 SLW +0 60200 0 00160
|
|
F'N X .A. .N.(Y.RS.1) .A. .N.(Y.RS.3) 143 LM00223
|
|
01016 CAL -0 50000 0 00165 01017 STA +0 62100 0 01021 01020 CAL -0 50000 0 00160 01021 LGR -0 76500 0 00000
|
|
01022 COM +0 76000 0 00006 01023 SLW +0 60200 0 01051 01024 CAL -0 50000 0 00163 01025 STA +0 62100 0 01027
|
|
01026 CAL -0 50000 0 00160 01027 LGR -0 76500 0 00000 01030 COM +0 76000 0 00006 01031 ANA -0 32000 0 00157
|
|
01032 ANA -0 32000 0 01051 01033 SLW +0 60200 0 01051 01034 CLA +0 50000 0 01051 01035 TRA +0 02000 0 01045
|
|
E'N 144 LM00224
|
|
01036 TSX +0 07400 4 00003 01037 TXH +3 00000 0 00000 01040 SXD -0 63400 1 01037 01041 SXA +0 63400 4 01045
|
|
01042 CLA +0 50000 4 00001 01043 STA +0 62100 0 01006 01044 TRA +0 02000 2 00001 01045 AXT +0 77400 4 00000
|
|
01046 LXA +0 53400 2 01037 01047 LXD -0 53400 1 01037 01050 TRA +0 02000 4 00001
|
|
INTERNAL FUNCTION (A) 145 LM00228
|
|
01052 TRA +0 02000 0 01165
|
|
E'O CKTRK. 146 LM00229
|
|
01053 TRA +0 02000 0 01056 00017 TTR +0 02100 0 01054 01054 SXA +0 63400 2 01152 01055 TSX +0 07400 2 01152
|
|
X = A 147 LM00230
|
|
01056 CLA +0 50000 0 00024 01057 STO +0 60100 0 00157
|
|
W'R ((X.A.$ $) .NE. 0), F'N 1B 148 LM00232
|
|
01060 CAL -0 50000 0 00157 01061 ANA -0 32000 0 00207 01062 SLW +0 60200 0 01164 01063 CLA +0 50000 0 01164
|
|
01064 SUB +0 40200 0 00162 01065 TZE +0 10000 0 01070 01066 CLA +0 50000 0 00163 01067 TRA +0 02000 0 01160
|
|
R = X .A. 77K 149 LM00233
|
|
01070 CAL -0 50000 0 00157 01071 ANA -0 32000 0 00172 01072 SLW +0 60200 0 00107
|
|
T = BCDEC.((X.RS.6) .A. 77777777K) 150 LM00234
|
|
01073 CAL -0 50000 0 00167 01074 STA +0 62100 0 01076 01075 CAL -0 50000 0 00157 01076 LGR -0 76500 0 00000
|
|
01077 ANA -0 32000 0 00175 01100 SLW +0 60200 0 01164 01101 TSX +0 07400 4 00000 01102 TXH +3 00000 0 01164
|
|
01103 STO +0 60100 0 00142
|
|
M = (X.RS.30) .A. 77K 151 LM00235
|
|
01104 CAL -0 50000 0 00171 01105 STA +0 62100 0 01107 01106 CAL -0 50000 0 00157 01107 LGR -0 76500 0 00000
|
|
01110 ANA -0 32000 0 00172 01111 SLW +0 60200 0 00073
|
|
W'R (M.L.LDKM) .OR. (M.G.HDKM .AND. M.L.LDMM) .OR. 152 LM00237
|
|
1 (M.G.HDMM), F'N 1B 152 LM00238
|
|
01112 CLA +0 50000 0 00073 01113 SUB +0 40200 0 00046 01114 TZE +0 10000 0 01116 01115 TPL +0 12000 0 01132
|
|
01116 CLA +0 50000 0 00073 01117 SUB +0 40200 0 00052 01120 TZE +0 10000 0 01126 01121 TPL +0 12000 0 01126
|
|
01122 CLA +0 50000 0 00073 01123 SUB +0 40200 0 00045 01124 TZE +0 10000 0 01126 01125 TPL +0 12000 0 01132
|
|
01126 CLA +0 50000 0 00073 01127 SUB +0 40200 0 00051 01130 TZE +0 10000 0 01134 01131 TPL +0 12000 0 01134
|
|
01132 CLA +0 50000 0 00163 01133 TRA +0 02000 0 01160
|
|
W'R (R.G.1) .OR. (T.G.TSIZ(M)), F'N 1B 153 LM00239
|
|
01134 LXA +0 53400 2 00073 01135 CLA +0 50000 0 00142 01136 SUB +0 40200 2 00155 01137 TZE +0 10000 0 01141
|
|
01140 TPL +0 12000 0 01145 01141 CLA +0 50000 0 00107 01142 SUB +0 40200 0 00163 01143 TZE +0 10000 0 01147
|
|
01144 TMI -0 12000 0 01147 01145 CLA +0 50000 0 00163 01146 TRA +0 02000 0 01160
|
|
F'N 0B 154 LM00240
|
|
01147 CLA +0 50000 0 00162 01150 TRA +0 02000 0 01160
|
|
E'N 155 LM00241
|
|
01151 TSX +0 07400 4 00003 01152 TXH +3 00000 0 00000 01153 SXD -0 63400 1 01152 01154 SXA +0 63400 4 01160
|
|
01155 CLA +0 50000 4 00001 01156 STA +0 62100 0 01056 01157 TRA +0 02000 2 00001 01160 AXT +0 77400 4 00000
|
|
01161 LXA +0 53400 2 01152 01162 LXD -0 53400 1 01152 01163 TRA +0 02000 4 00001
|
|
E'N 156 LM00243
|
|
01165 TSX +0 07400 4 00003 01166 TXH +3 00000 0 00000 01167 SXD -0 63400 1 01166 01170 SXA +0 63400 4 01207
|
|
01171 CLA +0 50000 4 00001 01172 STA +0 62100 0 00403 01173 STA +0 62100 0 00754 01174 CLA +0 50000 4 00002
|
|
01175 STA +0 62100 0 00705 01176 STA +0 62100 0 00735 01177 STA +0 62100 0 00751 01200 CLA +0 50000 4 00003
|
|
01201 STA +0 62100 0 00427 01202 CLA +0 50000 4 00004 01203 STA +0 62100 0 00424 01204 CLA +0 50000 4 00005
|
|
01205 STO +0 60100 0 00376 01206 TRA +0 02000 2 00001 01207 AXT +0 77400 4 00000 01210 LXA +0 53400 2 01166
|
|
01211 LXD -0 53400 1 01166 01212 TRA +0 02000 4 00001
|
|
|
|
|
|
|
|
|
|
TRAC BCD 06/06/68 2358.0 785 00000
|
|
1 TRACE ROUTINE FOR SEARCH MODULES ON PSEUDO-FILE SYSTEM PAGE 1
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
|
|
00006 ENTRY TRAC TO TRACE SEARCH MODULE CALLS
|
|
EXTERN KEYS,OCABC,WRIT6A,WRITE6
|
|
|
|
|
|
TRANSFER VECTOR
|
|
00000 422570626060 KEYS
|
|
00001 462321222360 OCABC
|
|
00002 665131630621 WRIT6A
|
|
00003 665131632506 WRITE6
|
|
|
|
LINKAGE DIRECTOR
|
|
00004 000000000000
|
|
00005 635121236060
|
|
|
|
00006 0621 00 0 00041 TRAC STA RETV SAVE AC ADDRESS
|
|
00007 0131 00 0 00000 XCA SAVE AC IN MQ
|
|
00010 0522 60 0 00000 XEC* KEYS LOAD UP WITH SIMULATED KEY SETTING
|
|
00011 0131 00 0 00000 XCA RESTORE AC
|
|
00012 0162 00 7 00002 TQP 2,7 IF CONSOLE SIGN KEY NOT DOWN, EXIT
|
|
|
|
00013 0636 00 4 00034 SCA TRACX4,4 ZERO, DO A TRACE
|
|
00014 0602 00 0 00043 SLW ACSAV SAVE AC
|
|
|
|
00015 0074 00 4 00001 TSX OCABC,4 CONVERT AC ADDRESS
|
|
00016 3 00000 0 00041 PTH RETV WHICH WAS SAVED
|
|
00017 -0501 00 0 00044 ORA =H,00000 ADD PUNCTUATION
|
|
00020 0602 00 0 00041 SLW RETV SAVE RESULT
|
|
|
|
00021 0535 00 4 00034 LAC TRACX4,4 RESTORE CALLER'S IR4
|
|
00022 -0500 00 7 00001 CAL 1,7 GET ARGUMENT TO TRACER
|
|
00023 0602 00 0 00037 SLW NAME PLANT IN BCD NAME
|
|
|
|
00024 -0500 60 4 00001 CAL* 1,4 GET MODE OF CALL
|
|
00025 0621 00 0 00040 STA MODE PLANT IT.. CAREFUL..
|
|
|
|
00026 -0500 00 4 00002 CAL 2,4 FIND OUT DESIRED ENTRY FOR CALL
|
|
00027 0621 00 0 00033 STA IO2 WE WANT TO PRINT IT
|
|
|
|
00030 0074 00 4 00002 TSX WRIT6A,4 PRINT HEADER INFO
|
|
00031 0 00004 0 00037 NAME,,4 ..
|
|
00032 0074 00 4 00003 TSX WRITE6,4 NOW PRINT ENTRY STUFF
|
|
00033 0 00005 0 00000 IO2 **,,5 ..
|
|
|
|
00034 -0774 00 4 00000 TRACX4 AXC **,4 RESTORE CALLER'S IR4
|
|
00035 -0500 00 0 00043 CAL ACSAV RESTORE AC
|
|
00036 0020 00 7 00002 TRA 2,7 RETURN FROM TRACE
|
|
1 TRACE ROUTINE FOR SEARCH MODULES ON PSEUDO-FILE SYSTEM PAGE 2
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
|
|
00037 NAME BSS 1 NAME OF CALLER TO TRACE
|
|
00040 736060600000 MODE BCI 1,, 00 MODE OF CALL
|
|
00041 730000000000 RETV BCI 1,,00000 AC ADDRESS
|
|
00042 -205757575757 OCT 605757575757 ONE SPACE
|
|
|
|
00043 ACSAV BSS 1 STORAGE FOR LOGICAL AC
|
|
|
|
END
|
|
|
|
LITERALS
|
|
00044 730000000000
|
|
1 TRACE ROUTINE FOR SEARCH MODULES ON PSEUDO-FILE SYSTEM PAGE 1
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
45 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
|
|
|
|
0REFERENCES TO DEFINED SYMBOLS
|
|
33 IO2 27
|
|
0 KEYS 10
|
|
40 MODE 25
|
|
37 NAME 23, 31
|
|
41 RETV 6, 16, 20
|
|
6 TRAC 0
|
|
43 ACSAV 14, 35
|
|
1 OCABC 15
|
|
34 TRACX4 13, 21
|
|
2 WRIT6A 30
|
|
3 WRITE6 32
|
|
|
|
0 NO ERROR IN ABOVE ASSEMBLY.
|
|
|
|
|
|
|
|
|
|
SUPCAL BCD 06/06/68 2358.0 1206 00000
|
|
1 TIA LIBRARY FOR FILE SYSTEM SIMULATOR PAGE 1
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
00002 ENTRY FUPDMF
|
|
00003 ENTRY FDELMF
|
|
00004 ENTRY FATTAC
|
|
00005 ENTRY FATTNA
|
|
00006 ENTRY FUPDAT
|
|
00007 ENTRY FSETPR
|
|
00010 ENTRY FOPEN
|
|
00011 ENTRY FBUFFE
|
|
00012 ENTRY FRDFIL
|
|
00013 ENTRY FRDWAI
|
|
00014 ENTRY FWRFIL
|
|
00015 ENTRY FWRWAI
|
|
00016 ENTRY FTRFIL
|
|
00017 ENTRY FFCHEC
|
|
00020 ENTRY FFWAIT
|
|
00021 ENTRY FCLOSE
|
|
00022 ENTRY FRESET
|
|
00023 ENTRY FCHFIL
|
|
00024 ENTRY FDELFI
|
|
00025 ENTRY FFSTAT
|
|
00026 ENTRY FMOVFI
|
|
00027 ENTRY FSETFI
|
|
00030 ENTRY FLINK
|
|
00031 ENTRY FUNLIN
|
|
00032 ENTRY FSTORG
|
|
00033 ENTRY FMOUNT
|
|
00034 ENTRY FUMOUN
|
|
00035 ENTRY FVERIF
|
|
00036 ENTRY FLABEL
|
|
00037 ENTRY FTAPFI
|
|
00040 ENTRY FIODIA
|
|
00041 ENTRY FFERRT
|
|
00042 ENTRY FTILOC
|
|
|
|
LINKAGE DIRECTOR
|
|
00000 000000000000
|
|
00001 266447244426
|
|
|
|
00002 0101 00 0 00100 FUPDMF TIA =HUPDMFD
|
|
00003 0101 00 0 00051 FDELMF TIA =HDELMFD
|
|
00004 0101 00 0 00043 FATTAC TIA =HATTACH
|
|
00005 0101 00 0 00044 FATTNA TIA =HATTNAM
|
|
00006 0101 00 0 00077 FUPDAT TIA =HUPDATE
|
|
00007 0101 00 0 00070 FSETPR TIA =HSETPRI
|
|
00010 0101 00 0 00063 FOPEN TIA =HOPEN
|
|
00011 0101 00 0 00045 FBUFFE TIA =HBUFFER
|
|
00012 0101 00 0 00064 FRDFIL TIA =HRDFILE
|
|
00013 0101 00 0 00065 FRDWAI TIA =HRDWAIT
|
|
00014 0101 00 0 00102 FWRFIL TIA =HWRFILE
|
|
00015 0101 00 0 00103 FWRWAI TIA =HWRWAIT
|
|
00016 0101 00 0 00074 FTRFIL TIA =HTRFILE
|
|
00017 0101 00 0 00052 FFCHEC TIA =HFCHECK
|
|
00020 0101 00 0 00055 FFWAIT TIA =HFWAIT
|
|
00021 0101 00 0 00047 FCLOSE TIA =HCLOSE
|
|
00022 0101 00 0 00066 FRESET TIA =HRESETF
|
|
1 TIA LIBRARY FOR FILE SYSTEM SIMULATOR PAGE 2
|
|
D.R. WIDRIG MAY 1966
|
|
|
|
00023 0101 00 0 00046 FCHFIL TIA =HCHFILE
|
|
00024 0101 00 0 00050 FDELFI TIA =HDELFIL
|
|
00025 0101 00 0 00054 FFSTAT TIA =HFSTATE
|
|
00026 0101 00 0 00062 FMOVFI TIA =HMOVFIL
|
|
00027 0101 00 0 00067 FSETFI TIA =HSETFIL
|
|
00030 0101 00 0 00060 FLINK TIA =HLINK
|
|
00031 0101 00 0 00076 FUNLIN TIA =HUNLINK
|
|
00032 0101 00 0 00071 FSTORG TIA =HSTORGE
|
|
00033 0101 00 0 00061 FMOUNT TIA =HMOUNT
|
|
00034 0101 00 0 00075 FUMOUN TIA =HUMOUNT
|
|
00035 0101 00 0 00101 FVERIF TIA =HVERIFY
|
|
00036 0101 00 0 00057 FLABEL TIA =HLABEL
|
|
00037 0101 00 0 00072 FTAPFI TIA =HTAPFIL
|
|
00040 0101 00 0 00056 FIODIA TIA =HIODIAG
|
|
00041 0101 00 0 00053 FFERRT TIA =HFERRTN
|
|
00042 0101 00 0 00073 FTILOC TIA =HTILOCK
|
|
END
|
|
|
|
LITERALS
|
|
00043 216363212330
|
|
00044 216363452144
|
|
00045 226426262551
|
|
00046 233026314325
|
|
00047 234346622560
|
|
00050 242543263143
|
|
00051 242543442624
|
|
00052 262330252342
|
|
00053 262551516345
|
|
00054 266263216325
|
|
00055 266621316360
|
|
00056 314624312127
|
|
00057 432122254360
|
|
00060 433145426060
|
|
00061 444664456360
|
|
00062 444665263143
|
|
00063 464725456060
|
|
00064 512426314325
|
|
00065 512466213163
|
|
00066 512562256326
|
|
00067 622563263143
|
|
00070 622563475131
|
|
00071 626346512725
|
|
00072 632147263143
|
|
00073 633143462342
|
|
00074 635126314325
|
|
00075 644446644563
|
|
00076 644543314542
|
|
00077 644724216325
|
|
00100 644724442624
|
|
00101 652551312670
|
|
00102 665126314325
|
|
00103 665166213163
|
|
1 TIA LIBRARY FOR FILE SYSTEM SIMULATOR PAGE 1
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
104 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
|
|
|
|
0REFERENCES TO DEFINED SYMBOLS
|
|
30 FLINK 0
|
|
10 FOPEN 0
|
|
4 FATTAC 0
|
|
5 FATTNA 0
|
|
11 FBUFFE 0
|
|
23 FCHFIL 0
|
|
21 FCLOSE 0
|
|
24 FDELFI 0
|
|
3 FDELMF 0
|
|
17 FFCHEC 0
|
|
41 FFERRT 0
|
|
25 FFSTAT 0
|
|
20 FFWAIT 0
|
|
40 FIODIA 0
|
|
36 FLABEL 0
|
|
33 FMOUNT 0
|
|
26 FMOVFI 0
|
|
12 FRDFIL 0
|
|
13 FRDWAI 0
|
|
22 FRESET 0
|
|
27 FSETFI 0
|
|
7 FSETPR 0
|
|
32 FSTORG 0
|
|
37 FTAPFI 0
|
|
42 FTILOC 0
|
|
16 FTRFIL 0
|
|
34 FUMOUN 0
|
|
31 FUNLIN 0
|
|
6 FUPDAT 0
|
|
2 FUPDMF 0
|
|
35 FVERIF 0
|
|
14 FWRFIL 0
|
|
15 FWRWAI 0
|
|
|
|
0 NO ERROR IN ABOVE ASSEMBLY.
|
|
|
|
|
|
|
|
|
|
FPRNTE BCD 06/06/68 2358.0 966 00000
|
|
1 SHORT 'PRNTER'-LIKE PROGRAM FOR SIMULATED FILE SYSTEM PAGE 1
|
|
D.R. WIDRIG OCTOBER 1966
|
|
|
|
|
|
00007 ENTRY FPRNTE TO GET 'PRNTER'-LIKE COMMENT
|
|
|
|
EXTERN OCABC,DEFBC
|
|
EXTERN WRITE6,RED,BLACK
|
|
|
|
|
|
TRANSFER VECTOR
|
|
00000 462321222360 OCABC
|
|
00001 242526222360 DEFBC
|
|
00002 665131632506 WRITE6
|
|
00003 512524606060 RED
|
|
00004 224321234260 BLACK
|
|
|
|
LINKAGE DIRECTOR
|
|
00005 000000000000
|
|
00006 264751456325
|
|
|
|
00007 0636 00 4 00043 FPRNTE SCA FPRX4,4 SAVE LINKAGE
|
|
00010 0074 00 4 00057 TSX IODIAG,4 GET ERROR INFO FROM SUPERVISOR
|
|
00011 3 00007 0 00047 PTH BUFF,,7 ..
|
|
|
|
00012 0074 00 4 00000 TSX OCABC,4 CONVERT ADDRESS OF ERROR LOC
|
|
00013 3 00000 0 00047 PTH BUFF ..
|
|
00014 0767 00 0 00006 ALS 6 POSITION BCD RESULT
|
|
00015 -0501 00 0 00060 ORA =H00000 INSERT TRAILING BLANK
|
|
00016 0602 00 0 00047 SLW BUFF SAVE RESULT IN OUTPUT LINE
|
|
|
|
00017 0074 00 4 00001 TSX DEFBC,4 GET ERROR CODE CONVERTED
|
|
00020 3 00000 0 00051 PTH BUFF+2 ..
|
|
00021 -0501 00 0 00064 ORA =O575760000000 REDUCE TO THREE DIGITS
|
|
00022 0602 00 0 00051 SLW BUFF+2 SAVE RESULT
|
|
|
|
00023 0074 00 4 00001 TSX DEFBC,4 CONVERT I/O ERROR CODE
|
|
00024 3 00000 0 00052 PTH BUFF+3 ..
|
|
00025 0767 00 0 00006 ALS 6 POSITION ANSWER
|
|
00026 -0501 00 0 00063 ORA =O575757600060 REDUCE TO ONE DIGIT
|
|
00027 0602 00 0 00052 SLW BUFF+3 SAVE RESULT
|
|
|
|
00030 0074 00 4 00000 TSX OCABC,4 CONVERT FILE SYSTEM LOCATION
|
|
00031 3 00000 0 00055 PTH BUFF+6 ..
|
|
00032 0601 00 0 00056 STO BUFF+7 SAVE RESULT
|
|
|
|
00033 -0500 00 0 00054 CAL BUFF+5 GET 'NAME2' OF FILE IN ERROR
|
|
00034 0602 00 0 00055 SLW BUFF+6 MOVE TO NEW SLOT
|
|
00035 -0500 00 0 00062 CAL =O575757575760 GET SINGLE BLANK
|
|
00036 0602 00 0 00054 SLW BUFF+5 SLIP BETWEEN 'NAME1' AND 'NAME2'
|
|
|
|
00037 0074 00 4 00003 TSX RED,4 THIS IS SERIOUS STUFF
|
|
00040 0074 00 4 00002 TSX WRITE6,4 OUTPUT LINE
|
|
00041 0 00012 0 00045 SIMERR,,10 ..
|
|
00042 0074 00 4 00004 TSX BLACK,4 RETURN TO NORMAL
|
|
1 SHORT 'PRNTER'-LIKE PROGRAM FOR SIMULATED FILE SYSTEM PAGE 2
|
|
D.R. WIDRIG OCTOBER 1966
|
|
|
|
00043 -0774 00 4 00000 FPRX4 AXC **,4 RESTORE LINKAGE
|
|
00044 0020 00 4 00001 TRA 1,4 RETURN TO CALLER
|
|
1 SHORT 'PRNTER'-LIKE PROGRAM FOR SIMULATED FILE SYSTEM PAGE 3
|
|
D.R. WIDRIG OCTOBER 1966
|
|
|
|
DATA AND WORK AREAS, ETC.
|
|
|
|
00045 623144602551 SIMERR BCI ,SIM ERROR
|
|
00046 514651606060
|
|
00047 606060606060
|
|
00050 606060606060
|
|
00051 606060606060
|
|
00052 606060606060
|
|
00053 606060606060
|
|
00054 606060606060
|
|
00055 606060606060
|
|
00056 606060606060
|
|
00047 BUFF EQU SIMERR+2
|
|
|
|
00057 0101 00 0 00061 IODIAG TIA =HIODIAG
|
|
|
|
END
|
|
|
|
LITERALS
|
|
00060 000000000060
|
|
00061 314624312127
|
|
00062 575757575760
|
|
00063 575757600060
|
|
00064 575760000000
|
|
1 SHORT 'PRNTER'-LIKE PROGRAM FOR SIMULATED FILE SYSTEM PAGE 1
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
65 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
|
|
|
|
0REFERENCES TO DEFINED SYMBOLS
|
|
3 RED 37
|
|
47 BUFF 11, 13, 16, 20, 22, 24, 27, 31, 32, 33, 34, 36, 57
|
|
4 BLACK 42
|
|
1 DEFBC 17, 23
|
|
43 FPRX4 7
|
|
0 OCABC 12, 30
|
|
7 FPRNTE 0
|
|
57 IODIAG 10
|
|
45 SIMERR 41, 57
|
|
2 WRITE6 40
|
|
|
|
0 NO ERROR IN ABOVE ASSEMBLY.
|
|
|
|
|
|
|
|
|
|
EXITSM BCD 10/12/70 1531.6 1123 00000
|
|
1 FAP 09/05/69 037.2 PAGE 1
|
|
|
|
* FAP
|
|
*EXIT FOR TIME SHARING MOD XI FOREGROUND LIBRARY JDH
|
|
SAVES MACHINE CONDITIONS
|
|
CLOSES OUT ACTIVE FILES IN (FTB) DIRECTORY
|
|
CLOSES OUT OTHER ACTIVE FILES
|
|
|
|
00010 ENTRY EXIT
|
|
00010 ENTRY CLKOUT
|
|
00053 ENTRY DUMP
|
|
00010 ENTRY ENDJOB
|
|
00056 ENTRY EXITM
|
|
00050 ENTRY PDUMP
|
|
|
|
|
|
|
|
TRANSFER VECTOR
|
|
00000 665126436760 WRFLX
|
|
00001 222623434662 BFCLOS
|
|
00002 234346622560 CLOSE
|
|
00003 244651444563 DORMNT
|
|
00004 233045234644 CHNCOM
|
|
00005 242521246060 DEAD
|
|
|
|
LINKAGE DIRECTOR
|
|
00006 000000000000
|
|
00007 256731636060
|
|
|
|
00010 -0600 00 0 00061 EXIT STQ MQ
|
|
00011 0560 00 0 00073 LDQ EXNAM
|
|
00012 0634 00 4 00043 GO SXA EX4,4
|
|
00013 0634 00 2 00042 SXA EX2,2
|
|
00014 0634 00 1 00041 SXA EX1,1
|
|
00015 -0600 00 0 00065 STQ MESS
|
|
00016 0602 00 0 00062 SLW AC
|
|
00017 0771 00 0 00002 ARS 2
|
|
00020 0601 00 0 00063 STO ACSQ
|
|
00021 0604 00 0 00064 STI SVSI
|
|
00022 0074 00 4 00000 TSX $WRFLX,4
|
|
00023 -0 00006 0 00065 MZE MESS,,6
|
|
00024 0074 00 4 00001 TSX $BFCLOS,4 CLOSE ACTIVE FILES FROM (FTB) TABLE
|
|
00025 3 00000 0 00107 PTH =H ALL
|
|
00026 3 00000 0 00106 PTH =-0
|
|
00027 3 00000 0 00030 PTH *+1
|
|
00030 0074 00 4 00002 TSX $CLOSE,4
|
|
00031 3 00000 0 00107 PTH =H ALL CLOSE ANY OTHER ACTIVE FILES
|
|
00032 3 00000 0 00106 PTH =-0
|
|
00033 3 00000 0 00034 PTH *+1
|
|
00034 0560 00 0 00061 LDQ MQ
|
|
00035 0500 00 0 00063 CLA ACSQ
|
|
00036 0767 00 0 00002 ALS 2
|
|
00037 -0501 00 0 00062 ORA AC
|
|
00040 0441 00 0 00064 LDI SVSI
|
|
00041 0774 00 1 00000 EX1 AXT **,1
|
|
00042 0774 00 2 00000 EX2 AXT **,2
|
|
00043 0774 00 4 00000 EX4 AXT **,4
|
|
00044 0074 00 4 00003 TSX $DORMNT,4
|
|
1 FAP 09/05/69 037.2 PAGE 2
|
|
|
|
00045 -0754 00 0 00000 ZAC
|
|
00046 0074 00 4 00004 TSX $CHNCOM,4
|
|
00047 3 00000 0 00105 PAR =0
|
|
|
|
00010 CLKOUT SYN EXIT
|
|
00010 ENDJOB SYN EXIT
|
|
|
|
|
|
00050 -0600 00 0 00061 PDUMP STQ MQ
|
|
00051 0560 00 0 00075 LDQ PDNAM
|
|
00052 0020 00 0 00012 TRA GO
|
|
|
|
00053 -0600 00 0 00061 DUMP STQ MQ
|
|
00054 0560 00 0 00076 LDQ DPNAM
|
|
00055 0020 00 0 00012 TRA GO
|
|
|
|
00056 0074 00 4 00000 EXITM TSX $WRFLX,4
|
|
00057 -0 00004 0 00077 MZE EXMMES,,4
|
|
00060 0074 00 4 00005 TSX $DEAD,4
|
|
|
|
00061 0 00000 0 00000 MQ PZE
|
|
00062 0 00000 0 00000 AC PZE
|
|
00063 0 00000 0 00000 ACSQ PZE
|
|
00064 0 00000 0 00000 SVSI PZE
|
|
|
|
00065 606060606060 MESS BCI 6, CALLED. PM MAY BE TAKEN.
|
|
00066 602321434325
|
|
00067 243360474460
|
|
00070 442170602225
|
|
00071 606321422545
|
|
00072 336060606060
|
|
00073 606025673163 EXNAM BCI 1, EXIT
|
|
00074 602551514651 ERNAM BCI 1, ERROR
|
|
00075 604724644447 PDNAM BCI 1, PDUMP
|
|
00076 606024644447 DPNAM BCI 1, DUMP
|
|
00077 256731634460 EXMMES BCI 4,EXITM CALLED. GOODBYE.
|
|
00100 232143432524
|
|
00101 336027464624
|
|
00102 227025336060
|
|
00103 FILNAM BSS 2
|
|
|
|
END
|
|
|
|
LITERALS
|
|
00105 000000000000
|
|
00106 400000000000
|
|
00107 606060214343
|
|
1 FAP 09/05/69 037.2 PAGE 1
|
|
POST PROCESSOR ASSEMBLY DATA
|
|
|
|
110 IS THE FIRST LOCATION NOT USED BY THIS PROGRAM
|
|
|
|
0REFERENCES TO DEFINED SYMBOLS
|
|
62 AC 16, 37
|
|
12 GO 52, 55
|
|
61 MQ 10, 34, 50, 53
|
|
41 EX1 14
|
|
42 EX2 13
|
|
43 EX4 12
|
|
63 ACSQ 20, 35
|
|
5 DEAD 60
|
|
53 DUMP 0
|
|
10 EXIT 0, 50
|
|
65 MESS 15, 23
|
|
64 SVSI 21, 40
|
|
2 CLOSE 30
|
|
76 DPNAM 54
|
|
74 ERNAM
|
|
56 EXITM 0
|
|
73 EXNAM 11
|
|
75 PDNAM 51
|
|
50 PDUMP 0
|
|
0 WRFLX 22, 56
|
|
1 BFCLOS 24
|
|
4 CHNCOM 46
|
|
10 CLKOUT 0, 50
|
|
3 DORMNT 44
|
|
10 ENDJOB 0, 50
|
|
77 EXMMES 57
|
|
103 FILNAM
|
|
|
|
0 NO ERROR IN ABOVE ASSEMBLY.
|