Directory of image this file is from
This file as a plain text file
[CP1 [PAGE 1 RESIDENT ROUTINE [EMPTY CONTAB ROUTINE $20 0 [WORK CFP ? [NEXT CONTAB INDEX [ 8W=2000+6R+15 [LVI [ [ #6P LDA 0 STC 4Y-4 [LINK STC 5Z [CONTAB NOT EMPTY [ [FOR *T*H*I*S* ROUTINE [PAGE 1 INDEX REG ARE [2=CONTAB PTR [3=LEN FP # [4=LVI [5=LVU [6=UNIT[FD3] [7=LEN FP#+1=LEN CONTAB ENTRY [10=FB2-12[FD3] [11=BUF START ADDR UMB 3W [P0 LDA 6R+2000+27 [LEN FP# [ 3W=0 [PAGE 0 3X=1 [PAGE 1 3Y=2 [PAGE 2 3Z=3 [PAGE 3 [ STA 3 ADA i 1 STA 7 ADM 2+2000 [P0 CONTAB PTR SAE i 4|2377 JMP 4Y [CONTAB NOT EMPTY LDA 8W [LVI STA 4 COM ADA 6R+2000+25 [LVU APO i JMP 4Y-3 [LVI<LVU [ LDA i 4000 ADD 11 [BUF START ADDR SAE 5Z+11 [TEST FOR EMPTY BUF JMP 5V [OUTPUT PARTIAL BLOCK LDA i 4|2H-6 UMB 3W [P0 STA 2000+2 [CONTAB PTR LDA 4 [P1,LVI STA 8W [P0,LVI LMB 3W [P0 JMP [RETURN [ [ CLR COM STC 5Z [CONTAB EMPTY INDICATOR [GATHER CONSTANTS #4Y LDA i 3777-2H [CONTAB PTR ADD 7 [LEN FP# +1 COM STC 2 [START OF CONTAB [UMB SET TO 0 AT THIS POINT LDA 8W [LVI STC 4 LDA 6R+2000+25 [LVU STC 5 LDA 6N+2000 [UNIT[FD3] STC 6 [ COM STA 2000+9H+12 [NO SYMTAB BLOCK 2 [ LDA 9H+15+2000 BCL i 0377 [CLR WITHIN BUF BITS STC 11 LDA 2000+9H-2 [-FB2+12[FD3] COM STC 10 [ UMB 3Z [CONTAB PAGE,P3 ADD 2 [CONTAB PTR ADD 7 [LEN CONTAB ENTRY STC 1 LDA 1 [NXT INDEX IN CONTAB STC 6P-1 ADD 6P+12 [=1 ADD 4 [P1,LVI AZE i CLR STA 4 [P1,LVI JMP 5W [CONVERT LVI TO BN [1 PTS TO WORD,BLOCK LDA 1 [REL WORD ADD 11 [BUF BASE ADDR STC 5Z+11 [SET WORD ADDRESS SET 12 1 LDA i 12 [LOAD REL BLOCK COM ADD 10 [FB2-12[FD3] STC 6P-2 [CFP LDA 1 [REL WORD AZE i JMP 5Z-1 [W=0=>NO READ LDA 11 [BUF START ADDR ROL 1 [ACC=QN|0 ADD 10 [FB2-12[FD3] COM ADA i 1 [REL BLOCK COM STC p+7 [QN|BN ADD 6 [UNIT[FD3] ADA i RDC i STC p+2 [ UMB 3Y [P2 0 [RDC i 0 [QN|BN [ [ SRO i #5Z 7777 [0=>CONTAB NOT EMPTY JMP p+7 [CONTAB EMPTY LDA 4 [P1,LVI COM ADD 6P-1 [NEXT CONTAB INDEX AZE i JMP 4Z [LVI=NXT INDEX [ SET i 1 0 [WORD LDA 3 [LEN FP # COM STC 12 [TEMP COUNTER UMB 3Y [SYMTAB PAGE LDA i 2000 [EXP FOR 0.0 STA 1 CLR APO [SKIP STA i 1 XSK i 12 JMP p-2 [5Z+27 LDA 4 [P1,LVI COM ADD 5 [LVU AZE i JMP 4Y-24 [RETURN LDA i 1 ADM 4 [P1,LVI LDA 3 [LEN FP # ADM 5Z+11 [WORD BCE i 7400 ADD 3 [LEN FP # APO JMP 5Z-1 [NOT EOB LDA 11 [BUF START ADDR BSE i 4000 STC 5Z+11 [WORD JMP 5V [OUTPUT BLOCK LDA i -1 ADM 6P-2 [CFP COM UMB 3W [P0 ADA 6R+2000+7 [FD3[CFP] AZE APO i JMP p+2 JMP 5Z-1 [NEXT LMB 3W [P0 JMP 2E+15 [ERR:EOF TARGET CODE FILE [ [ #4Z LDA 3 [LEN FP # COM STC 12 SET 1 5Z+11 [WORD [SET CONSTANT IN DATA BUFFER UMB 3Z [CONTAB PAGE LDA i 2 UMB 3Y [BUF PAGE STA 1 JMP p+5 UMB 3Z [CONTAB PAGE LDA i 2 [ UMB 3Y [BUF PAGE STA i 1 XSK i 12 JMP p-5 [ [ LDA 3 [LEN FP # COM ADM 2 UMB 3Z [CONTAB PAGE LDA 2 [NXT INDEX STC 6P-1 ADD 2 [P1,CONTAB PTR UMB 3W [P0 SAE 2000+2 [P0,CONTAB PTR JMP p+5 CLR COM STC 5Z [SET EMPTY CONTAB INDICATOR JMP 5Z+27 LDA 7 [LEN CONTAB EBTRY COM ADM 2 [P1 CONTAB PTR JMP 5Z+27 [ [ #5V LDA 11 [BUF START ADDR ROL 1 [ACC=QN|0 ADD 6P-2 [CFP STC p+7 ADD 6 [UNIT[FD3] ADA i WRC STC p+2 [ UMB 3Y [P2 0 [WRC 0 [QN|BN JMP 0 [RETURN VIA 0 [ [ [ [ACC=LVI 0 [WORD 0 [BLOCK #5W COM STC 1 ADD 0 STC p+11 [LINK UMB 3W [P0 STC 5W-1 [0->BLOCK STC 5W-2 [0->WORD #5X ADD 1 AZE JMP p+4 SET i 1 5W-2 [BLOCK RETURN [ STC 1 LDA 2000+6R+27 [LEN FP # ADM 5W-2 [WORD ADA [TEST FOR VALID ADDRESS 2000+6R+27 [LEN FP # ROL i 4 LZE JMP p+4 [NEW BLOCK LDA i 1 JMP 5X [ LDA p-3 [=1 ADD 5W-1 [BLOCK STC 5W-1 STC 5W-2 [WORD JMP p-10 [ [STACK LPAREN #8B LDA i 1377 LMB 3W [P0 JMP 2X [LINK ROUTINE JMP 9E LMB 3W [P0 1Z [POP LPAREN #8C LMB 3W [P0 JMP 2X JMP 9F SAE i 1377 JMP p+3 LMB 3W [P0 1Z [ LMB 3W [P0 JMP 2E [GOTO #6Z LDA i 20 LMB 3W [P0 JMP 9X [PRINT CR LF #9L LDA i 21 LMB 3W [P0 JMP 2X JMP 1M LMB 3W [P0 JMP 7C [EOL [PRINT TEXT LMB 3W [P0 JMP 2E [NO " TO TERMINATE TEXT #9M LDA i 22 [RP START TEXT LMB 3W [P0 JMP 2X JMP 1M [OUT SYL LMB 3W [P0 JMP 2X JMP 1J [INCHARA SHD i 1200 [EOL JMP 9M-2 [NO " TO TERMINATE TEXT SHD i ""; JMP p+27 [DONE STH i 0000 LMB 3W [P0 JMP 2X JMP 1J [INCHARA SHD i 1200 [EOL JMP 9M-2 [NO " TO TERMINATE TEXT SHD i ""; JMP p+6 ADD p-12 LMB 3W [P0 JMP 2X JMP 1M [OUTSYL JMP 9M+5 [MORE LDA p-20 ADA i 13 [DEL LMB 3W [P0 JMP 9X [1M,1Z [ LDA i 1313 [TERMINATE LMB 3W JMP 9X [PRINT STACK #9N LDA i 23 LMB 3W [P0 JMP 2X JMP 1M LMB 3W [P0 JMP 7I [POP RPAREN [PRINT TAB TO NEXT FIELD #9O LDA i 24 LMB 3W [P0 JMP 9X [ [ [ [#INPUT DECIMAL CONSTANT [ MUST BE CALLED AFTER TEST FOR VARIABLE [ THIS ROUTINE INPUTS A BASIC CONSTANT INTO BUFFER [STARTING AT FULLWORD PAST REGISTER 2 [H BIT SET]. [ THE INPUT ROUTINE MUST RETURN THE NEXT CHAR AND [ALSO MAKE $13 POINT TO ITS HALFWORD. [ THE #TEST ROUTINE IS "SKIP IF AC CHAR IS DIGIT" [####### [#INPUT CONSTANT [ RETURN TAGS [ JMP 8X FOR SYNTAX ERROR [NO DIGITS READ] [ JMP 8Y FOR RANGE ERROR [RANGE: -1024 TO 1022] [ JMP 8Z FOR NUMBER CONVERTED [ PRECISION [NUMBER OF SIGNIFICANT DIGITS SAVED] [ 8P [ ROUTINE TO INPUT THE NEXT CHARACTER [ MUST START AT 8Q. LMB 3W [P0 JMP 1G [ LMB 3W [P0 JMP 2E [OVERFLOW [ LMB 3W [P0 JMP 2E+11 [CONSTANT SYNTAX ERROR #8Q LDA 0 STC p+12 LMB 3W [P0 JMP 2X JMP 1K+1 UMB 3W [P0 LDA 2013 [INPUT POINTER STC 13 UMB 3Z [P3 LDH 13 RETURN 8P=10 [INCON -- INPUT CONSTANT [ 1 [CONSTANT -1 [CONSTANT [ #1V UMB 3W [P0 LDA 2002 STC 2 LMB 3W [P0 JMP 2X JMP 9I [BACKUP 13,CLR UMB 3Z [P3 STAi2 STC p+147 [EXP SIGN SETi3 -8P [#DIGITS SETi14 [SCALE FACTOR [-0 AT LEADING ZEROS -0 SETi6 [XSK 6 =SKIP IF LEFT OF DOT -0 SET 5 2 COM JMP p+3 ADD 14 STC 14 STC p+111 [DIGIT READ [READING DIGITS JMP 8Q [INPUT JMP p+22 [#TEST JMP p+12 [DOT TEST AZE JMP p+25 [ACCEPT XSK 14 [SKIP IF LEADING ZERO JMP p+23 [ACCEPT XSK 6 [SKIP IF LEFT OF DOT AZE [SKIP JMP p-11-1 [LEADING ZEROS LEFT OF DOT ADD 1V-1 [=-1 JMP p-13-3 [SF=SF-1 [DOT TEST XSK 6 JMP p+26+1 [TEST "E" SAEi 64 ["." JMP p+23+1 [TEST "E" XSKi6 [NOSKIP JMP p-22 [MORE READING [#TEST -- SKIP IF DIGIT ADAi -11 APO XSKi0 LDH 13 JMP 0 [ACCEPT DIGIT STHi5 LDA 14 [SF AZEi CLR XSK 6 JMP p+2 ADD 1V-2 [=1 XSKi3 JMP p-42-2 [MORE READING [TEST "E" JMP 8Q [INPUT SHDi "E; JMP p+7 [AFTER E JMP p-24 [#TEST JMP p+54 [DONE XSK 6 JMP p-7 XSKi14 [SF=SF+1 JMP p-11 [READ EXPONENT SIGN JMP 8Q [INPUT SHDi "+; JMP p+5 SAEi 17 ["-" JMP p+3 STC p+45 [EXP SIGN JMP 8Q [INPUT JMP p-43 [#TEST JMP 8Q-2 [ERROR: MUST BE A DIGIT [READ IN EXPONENT STA 2 JMP 8Q [INPUT JMP p-47 [#TEST JMP p+31 [DONE STC 0 LDAi 12 MUL 2 [FRACTION AZE JMP 8Q-4 [OVERFLOW ZTA ADD 0 OVFi JMP 8Q-4 [OVERFLOW JMP p-16 [NEXT DIGIT [SETUP ZERO RETURN SROi -0 [DIGIT READ FLAG JMP 8Q-6 [SYNTAX: NO DIGITS READ ADD p-62 [=6000 STC 14 STA 2 JMP p+4 [ZERO? XSK 14 [SF AZE [SKIP JMP p-11 [SETUP ZERO STHi5 [PADDING XSKi3 JMP p-2 [DONE READING NUMBER CLR XSK 3 JMP p-10 [ZERO? LDA 2 [EXP SROi 0 [EXP SIGN COM ADD 14 [SF OVFi JMP 8Q-4 [OVERFLOW SCR 12 AZE JMP 8Q-4 [OVERFLOW SCR 1 ZTA LMB 3W [P0 JMP 8A+2 [MANIPULATE CONSTANT AS FP # [END INCON 5|30|69 [$1,2,3,5,6 [ $0777 0 [ [