ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov 1 19:25:06 2020
Source File: \kforph08.asm
1 | *************************************************** K0800000
2 | * * K0800010
3 | *STATUS - VERSION 2, MODIFICATION 12 * K0800020
4 | * * K0800030
5 | *FUNCTION/OPERATION- * K0800040
6 | * * CHECKS VARIABLE NAMES FOUND IN STATEMENT * K0800050
7 | * STRING FOR VALIDITY. * K0800060
8 | * * ADDS VALID VARIABLES TO THE SYMBOL TABLE * K0800070
9 | * * ENSURES THAT ALL VARIABLE NAMES CONFORM TO * K0800080
10 | * THE IMPLICIT OR EXPLICIT MODE SPECIFICATIONS* K0800090
11 | * (REAL OR INTEGER). * K0800100
12 | * * ADDS UNIQUE INTEGER CONSTANTS TO THE SYMBOL * K0800110
13 | * TABLE. * K0800120
14 | * * REPLACES NAMES AND CONSTANTS IN THE STMNT * K0800130
15 | * STRING BY POINTERS TO THEIR RESPECTIVE * K0800140
16 | * SYMBOL TABLE ENTRIES. * K0800150
17 | * * REPLACES INTERNAL STATEMENT NUMBERS BY * K0800160
18 | * POINTERS TO CORRESPONDING SYMBOL TABLE * K0800170
19 | * ENTRIES. * K0800180
20 | * * PLACES PARAMETERS FROM STATEMENT FUNCTION * K0800190
21 | * STATEMENTS INTO THE SYMBOL TABLE. * K0800200
22 | * * CONVERTS THE LEFT PARENTHESIS OF SUBSCRIPTS * K0800210
23 | * TO A SPECIAL DIMENSION INDICATOR * K0800220
24 | * * REPLACES OPERATORS WITH POINTERS TO THE * K0800230
25 | * SCAN-FORCING TABLE. * K0800240
26 | * * K0800250
27 | *ENTRY POINTS- * K0800260
28 | * * ORIGIN-PHASE 8 IS READ INTO CORE BY THE ROL * K0800270
29 | * PROGRAM AND EXECUTION BEGINS AT THIS ADDRESS* K0800280
30 | * * K0800290
31 | *INPUT- * K0800300
32 | * * THE STATEMENT STRING FROM PREVIOUS PHASES * K0800310
33 | * * THE SYMBOL TABLE FROM PREVIOUS PHASES * K0800320
34 | * * DCOM * K0800330
35 | * * K0800340
36 | *OUTPUT- * K0800350
37 | * * THE STATEMENT STRING AS MODIFIED BY THIS PHS* K0800360
38 | * * THE SYMBOL TABLE AS MODIFIED BY THIS PHASE * K0800370
39 | * * DCOM * K0800380
40 | * * K0800390
41 | *EXTERNAL REFERENCES- * K0800400
42 | * SUBROUTINES- * K0800410
43 | * * ROL * K0800420
44 | * COMMA/DCOM * K0800430
45 | * * $PHSE * K0800440
46 | * * K0800450
47 | *EXITS * K0800460
48 | * NORMAL-PHASE EXITS VIA THE ROL SUBROUTINE * K0800470
49 | * * K0800480
50 | * ERROR * K0800490
51 | * * OVERLAP ERROR CAUSES NEXT PHASE TO BE * K0800500
52 | * LOADED WITHOUT PROCESSING. * K0800510
53 | * * COMPILATION ERRORS DETECTED BY THIS PHASE* K0800520
54 | * * ARE 7, 24, 25, 26, 41 AND 43. * K0800530
55 | * * K0800540
56 | *TABLES/WORK AREAS-N/A * K0800550
57 | * * K0800560
58 | *ATTRIBUTES- NONE. K0800570
59 | * * K0800580
60 | *NOTES- THE SWITCHES USED IN PHASE 8 FOLLOW. IF K0800590
61 | * NON-ZERO, THE SWITCH IS TRANSFER=T. IF ZERO, K0800600
62 | * THE SWITCH IS NORMAL=N. K0800610
63 | * SW1 - GOTO STATEMENT K0800620
64 | * T=GOTO STATEMENT K0800630
65 | * SW2 - IF STATEMENT K0800640
66 | * T= IF STATEMENT K0800650
67 | * SW3 - POSSIBLE ASF K0800660
68 | * N0POSSIBLE ASF K0800670
69 | * SW4 - READ OR WRITE STMNT K0800680
70 | * T=READ OR WRITE STMNT K0800690
71 | * SW5 - PACK STRING BY CNT K0800700
72 | * T=PACK STRING K0800710
73 | * SW6 - ASF NAME TABLE K0800720
74 | * T=PUT NAMES IN ASF TABLE K0800730
75 | * SW7 - ASF NAME TABLE K0800740
76 | * T=CHECK NAMES IN ASF TABLE K0800750
77 | * SW8 - ASF STMNT K0800760
78 | * T=ASF STMNT K0800770
79 | * SW9 - PHASING SWITCH K0800780
80 | * N=PHASING SWITCH K0800790
81 | * SW10- TWO-WORD NAME K0800800
82 | * T=TWO-WORD NAME K0800810
83 | * K0800820
84 | *************************************************** K0800830
1130 FORTRAN COMPILER PHASE 8
86 | ABS K0800850
87 | * K0800860
88 | * SYSTEM EQUATES K0800870
89 | * K0800880
8000 90 | MEMRY EQU /8000 CORE SIZE K0800890
7A23 91 | OVERL EQU MEMRY-1501 PHASE OVERLAY AREA START K0800900
7FBC 92 | ROL EQU MEMRY-68 LOC OF RTN TO READ NEXT PH K0800910
0078 93 | $PHSE EQU /78 NO. OF PHASE NOW IN CORE K0800920
0004 94 | PHLEN EQU 4 NO. OF SECTORS THIS PHASE K0800925
7A23 95 | ORG OVERL K0800930
0026 96 | PHID EQU 38 ID NUMBER THIS PHASE K0800940
97 | * K0800950
98 | * FORTRAN COMMUNICATION AREA K0800960
7A23 99 | ORG BSS 1 ORIGIN ADDRESS 2-4 K0800965
7A24 100 | SOFS BSS 1 START OF STRING K0800970
7A25 101 | EOFS BSS 1 END OF STRING K0800980
7A26 102 | SOFST BSS 1 START OF SYMBOL TABLE K0800990
7A27 103 | SOFNS BSS 1 START OF NON-STATEMENT NUMBERS K0801000
7A28 104 | SOFXT BSS 1 START OF SUBSCRIPT TEMPORARIES K0801010
7A29 105 | SOFGT BSS 1 START OF GENERATED TEMPORARIES K0801020
7A2A 106 | EOFST BSS 1 END OF SYMBOL TABLE K0801030
7A2B 107 | COMON BSS 1 NEXT AVAILABLE COMMON K0801040
7A2C 108 | CSIZE BSS 1 SIZE OF COMMON K0801050
7A2D 109 | ERROR BSS 1 OVERLAP ERROR K0801060
7A2E 110 | FNAME BSS 2 PROGRAM NAME K0801070
7A30 111 | SORF BSS 1 SUBROUTINE(-) OR FUNCTION(+) K0801080
7A31 112 | CCWD BSS 1 CONTROL CARD WORD K0801090
113 | * BIT 15 TRANSFER TRACE K0801100
114 | * BIT 14 ARITHMETIC TRACE K0801110
115 | * BIT 13 EXTENDED PRECISION K0801120
116 | * BIT 12 LIST SYMBOL TABLE K0801130
117 | * BIT 11 LIST SUBPROGRAM NAMES K0801140
118 | * BIT 10 LIST SOURCE PROGRAM K0801150
119 | * BIT 9 ONE WORD INTEGERS K0801160
120 | * BIT 8 ORIGIN 2-4 K0801170
121 | * K0801180
7A32 122 | IOCS BSS 1 IOCS CONTROL CARD WORD K0801190
123 | * BIT 15 CARD K0801200
124 | * BIT 14 PAPER TAPE K0801210
125 | * BIT 13 TYPEWRITER K0801220
126 | * BIT 12 1443 PRINTER K0801230
127 | * BIT 11 MAGNETIC TAPE K0801240
128 | * BIT 10 KEYBOARD K0801250
129 | * BIT 8 DISK K0801260
130 | * BIT 3 PLOTTER K0801270
131 | * BIT 1 UNFORMATTED DISK K0801280
7A33 132 | DFCNT BSS 1 FILE TABLE LENGTH IN WORDS K0801290
133 | * K0801300
134 | * K0801310
135 | * K0801320
136 | * END OF FORTRAN COMMUNICATION K0801330
137 | * AREA K0801340
138 | * K0801350
7A36 139 | BPHAR EQU *+2 BEGINNING ADDR PHASE AREA K0801360
7A34 0000 140 | DC 0 LOADER WORK AREA K0801370
7A35 FFDA 141 | DC -38 -PHASE ID FOR SLET LOOKUP K0801380
7A36 000E 142 | DC NXTPH-*+1 TABLE FOR NEXT PHASE ENTRY K0801390
7A37 0001 143 | DC 1 ONE ENTRY TO BE SET BY LDR K0801400
7A36 144 | ORG *-2 K0801410
145 | * K0801420
146 | * INITIALIZE PHASE K0801430
147 | * K0801440
7A36 6126 148 | ORGIN LDX 1 PHID GET ID THIS PHASE K0801450
7A37 6D00 0078 149 | STX L1 $PHSE STORE IN SYSTEM PHASE AREA K0801460
7A39 6580 7A24 150 | LDX I1 SOFS START OF STRING ADDRESS K0801470
7A3B C0F1 151 | LD ERROR OVERLAP ERROR INDICATOR K0801480
7A3C 4C18 7A5A 152 | BSC L CV1,+- BR TO INITIALIZE STMNT SCAN K0801490
153 | * K0801500
154 | * READ IN NEXT PHASE AND EXECUTE K0801510
155 | * K0801520
7A3E 6580 7A45 156 | WAIT LDX I1 NXTPH+1 LOAD PARAM FOR READING K0801530
7A40 C805 157 | LDD NXTPH+2 NEXT PHASE K0801540
7A41 4C00 7FBC 158 | BSC L ROL GO TO READ NEXT PHASE K0801550
7A44 159 | BSS E 0 K0801560
7A44 0027 160 | NXTPH DC 39 ID OF NEXT PHASE K0801570
7A45 161 | BSS 3 LOADER TABLE FOR NEXT PHS K0801580
162 | * K0801590
163 | * CONSTANTS K0801600
164 | * K0801610
7A48 0002 165 | ENDC DC /02 END STMNT CONSTANT K0801620
7A49 0019 166 | FIOC DC /1B-/02 FIO STMNT CONSTANT K0801630
7A4A FFFB 167 | CONTC DC /16-/1B CONTINUE STMNT CONSTANT K0801640
7A4B FFF6 168 | FORC DC /0C-/16 FORMAT STMNT CONSTANT K0801650
7A4C 0009 169 | EQUC DC /15-/0C EQUIVALENCE STMNT CONSTANT K0801660
7A4D FFFF 170 | ERRCN DC /14-/15 ERROR STMNT CONSTANT K0801670
7A4E 0008 171 | CLINK DC /1C-/14 CALL LINK STMNT CONSTANT K0801680
7A4F 0002 172 | DFILE DC /1E-/1C DEFINE FILE STMNT CONSTANT K0801690
7A50 0001 173 | DATAS DC /1F-/1E DATA STMNT CONSTANT K0801700
174 | * K0801710
175 | * MOVE TO NEXT STATEMENT K0801720
176 | * K0801730
7A51 6500 0000 177 | MOVE LDX L1 *-* ADDR OF CURRENT STMNT ID WD K0801740
7A52 178 | IDSV1 EQU *-1 LABEL ADDR LAST INSTRUCTION K0801750
7A53 C100 179 | LD 1 0 CURRENT STMNT ID WORD K0801760
7A54 E400 7B62 180 | AND L S07FC EXTRACT STMNT WD COUNT K0801770
7A56 1802 181 | SRA 2 RIGHT JUSTIFY K0801780
7A57 D001 182 | STO *+1 K0801790
7A58 7500 0000 183 | MDX L1 *-* INCR TO NEXT STMNT ID WORD K0801800
184 | * K0801810
185 | * INITIALIZE TO SCAN BODY OF STATEMENT K0801820
186 | * K0801830
7A5A 69F7 187 | CV1 STX 1 IDSV1 SAVE ADDR OF STMNT ID WORD K0801840
7A5B 6700 7D64 188 | LDX L3 ASFT ARITH STMNT FUNC TBL ADDR K0801850
7A5D 6F00 7D85 189 | STX L3 ASFNT SAVE ADDRESS NAME TABLE K0801860
7A5F 1010 190 | SLA 16 CLEAR ACC K0801870
7A60 D400 7B4D 191 | STO L SW1 RESET SWITCH 1 K0801880
7A62 D400 7B4E 192 | STO L SW2 RESET SWITCH 2 K0801890
7A64 D400 7B50 193 | STO L SW4 RESET SWITCH 4 K0801900
7A66 D400 7B51 194 | STO L SW5 RESET SWITCH 5 K0801910
7A68 D400 7B52 195 | STO L SW6 RESET SWITCH 6 K0801920
7A6A D400 7B53 196 | STO L SW7 RESET SWITCH 7 K0801930
7A6C D400 7B54 197 | STO L SW8 RESET SWITCH 8 K0801940
7A6E D400 7B55 198 | STO L SW9 RESET SWITCH 9 K0801950
7A70 D400 7B56 199 | STO L SW10 RESET SWITCH 10 K0801960
7A72 D400 7B61 200 | STO L CNT STMNT WORD COUNT TEMPORARY K0801970
7A74 D400 7D61 201 | STO L PAR LEFT PARENTHESIS SWITCH K0801980
7A76 C100 202 | LD 1 0 STMNT ID WORD K0801990
7A77 4804 203 | BSC E SKIP IF STMNT NOT NUMBERED K0802000
7A78 7101 204 | MDX 1 1 INCR STMNT POINTER K0802010
7A79 7101 205 | MDX 1 1 INCR STMNT POINTER K0802020
206 | * K0802030
207 | * CHECK STATEMENT TYPE K0802040
208 | * K0802050
7A7A C480 7A52 209 | LD I IDSV1 STMNT ID WORD K0802060
7A7C 180B 210 | SRA 11 POSITION TO TEST STMNT TYPE K0802070
7A7D 90CA 211 | S ENDC END STMNT CONSTANT K0802080
7A7E 4C18 7A3E 212 | BSC L WAIT,+- BR TO RD NEXT PH IF END K0802090
7A80 90C8 213 | S FIOC FIO STMNT CONSTANT K0802100
7A81 4C18 7A51 214 | BSC L MOVE,+- BR IF FIO STMNT K0802110
7A83 90C6 215 | S CONTC CONTINUE STMNT CONSTANT K0802120
7A84 4C18 7AEB 216 | BSC L CV0,+- BR IF CONTINUE STMNT K0802130
7A86 90C4 217 | S FORC FORMAT STMNT CONSTANT K0802140
7A87 4C18 7A51 218 | BSC L MOVE,+- BR IF FORMAT STMNT K0802150
7A89 90C2 219 | S EQUC EQUIVALENCE STMNT CONSTANT K0802160
7A8A 4C18 7AD6 220 | BSC L CV5,+- BR IF EQUIVALENCE STMNT K0802170
7A8C 90C0 221 | S ERRCN ERROR STMNT CONSTANT K0802180
7A8D 4C18 7A51 222 | BSC L MOVE,+- BR IF ERROR STMNT K0802190
7A8F 90BE 223 | S CLINK CALL LINK STMNT CONSTANT K0802200
7A90 4C18 7A51 224 | BSC L MOVE,-+ BR IF CALL LINK STMNT K0802210
7A92 90BC 225 | S DFILE DEFINE FILE CONSTANT K0802220
7A93 4C18 7A51 226 | BSC L MOVE,-+ BR IF DEFINE FILE STMNT K0802230
7A95 90BA 227 | S DATAS DATA STMNT CONSTANT K0802240
7A96 4C18 7A51 228 | BSC L MOVE,+- BR IF DATA STMNT K0802250
7A98 C400 7B4F 229 | LD L SW3 ARITH STMNT FUNC SWITCH K0802260
7A9A 4C20 7AA3 230 | BSC L CV2,Z BR ASF STMNT NOT POSSIBLE K0802270
7A9C C480 7A52 231 | LD I IDSV1 STMNT ID WORD K0802280
7A9E 180B 232 | SRA 11 RIGHT JUSTIFY STMNT TYPE K0802290
7A9F 4C18 7AD6 233 | BSC L CV5,+- BF IF ARITHMETIC STMNT K0802300
7AA1 6C00 7B4F 234 | STX L0 SW3 SET SW3 NON-ARITH STMNT K0802310
7AA3 C480 7A52 235 | CV2 LD I IDSV1 STMNT ID WORD K0802320
7AA5 180B 236 | SRA 11 RIGHT JUSTIFY STMNT TYPE K0802330
7AA6 9400 7B5A 237 | S L GOTOC GO TO STMNT CONSTANT K0802340
7AA8 4C20 7AB6 238 | BSC L CV3,Z BR IF NOT GOTO STMNT K0802350
7AAA 632B 239 | LDX 3 43 K0802360
7AAB 6F00 7BA0 240 | STX L3 ERNO SET UP ERROR 43 K0802370
7AAD C100 241 | LD 1 0 LD NEXT WORD OF STMNT K0802380
7AAE 9400 7C57 242 | S L LPAR LEFT PARENTHESIS CONSTANT K0802390
7AB0 4C20 7CC0 243 | BSC L CV25A,Z BR IF NOT LEFT PARENTHESIS K0802400
7AB2 6C00 7B4D 244 | STX L0 SW1 SET SWITCH 1 FOR GOTO STMNT K0802410
7AB4 4C00 7AE0 245 | BSC L CV5A BR TO CHECK FOR OPERATOR K0802420
7AB6 9400 7B5B 246 | CV3 S L DOC DO STMNT CONSTANT K0802430
7AB8 4C20 7ABF 247 | BSC L CV3A,Z BR NOT DO STMNT K0802440
7ABA 632B 248 | LDX 3 43 K0802450
7ABB 6F00 7BA0 249 | STX L3 ERNO SET UP ERROR 43 K0802460
7ABD 4C00 7CC0 250 | BSC L CV25A BR TO CHK STMNT NUMBER OK K0802470
7ABF 9400 7B5C 251 | CV3A S L IFC IF STMNT CONSTANT K0802480
7AC1 4C20 7AC9 252 | BSC L CV4,Z BR IF NOT IF STMNT K0802490
7AC3 632B 253 | LDX 3 43 K0802500
7AC4 6F00 7BA0 254 | STX L3 ERNO SET UP ERROR 43 K0802510
7AC6 6C00 7B4E 255 | STX L0 SW2 SET SW2 =IF STMNT K0802520
7AC8 700D 256 | MDX CV5 BR TO CHK GOTO STMNT SWITCH K0802530
7AC9 9400 7B5D 257 | CV4 S L RDC READ STMNT CONSTANT K0802540
7ACB 4C18 7AD1 258 | BSC L *+4,+- BR TO SET SW4 IF READ K0802550
7ACD 9400 7B5E 259 | S L WTC WRITE STMNT CONSTANT K0802560
7ACF 4C20 7AD6 260 | BSC L CV5,Z BR IF NOT WRITE STMNT K0802570
7AD1 6C00 7B50 261 | STX L0 SW4 SET SW4=READ OR WRITE STMNT K0802580
7AD3 632E 262 | LDX 3 46 INDEX REG 3 = 46 K0802590
7AD4 6F00 7BA0 263 | STX L3 ERNO SET UP ERROR 46 K0802600
7AD6 C400 7B4D 264 | CV5 LD L SW1 SWITCH 1 K0802610
7AD8 4C20 7D08 265 | BSC L CV26,Z BR IF .GOTO. STMNT K0802620
7ADA C073 266 | LD SW2 SWITCH 2 K0802630
7ADB 4C20 7D24 267 | BSC L CV29,Z BR IF .IF. STMNT K0802640
7ADD C072 268 | LD SW4 SWITCH 4 K0802650
7ADE 4C20 7D35 269 | BSC L CV31,Z BR IF RD OR WRT STMNT K0802660
270 | * K0802670
271 | * CHECK FOR OPERATOR K0802680
272 | * K0802690
7AE0 C100 273 | CV5A LD 1 0 NEXT STMNT WD K0802700
7AE1 4C28 7BA4 274 | BSC L CV11,+Z BR IF NOT OPERATOR K0802710
7AE3 C100 275 | CV5B LD 1 0 NEXT STMNT WD K0802720
7AE4 9400 7B5F 276 | S L SEMIC SEMICOLON CONSTANT K0802730
7AE6 4C20 7B41 277 | BSC L CV6,Z BR IF NOT SEMICOLON K0802740
7AE8 1010 278 | CV5C SLA 16 CLEAR ACCUMULATOR K0802750
7AE9 D100 279 | STO 1 0 CONVERT SEMICOLON OPERATOR K0802760
7AEA 7101 280 | MDX 1 1 INCR STMNT POINTER K0802770
281 | * K0802780
282 | * CHECK FOR ARITHMETIC STMNT FUNCTION K0802790
283 | * K0802800
7AEB C063 284 | CV0 LD SW3 SWITCH 3 K0802810
7AEC 4C20 7B1D 285 | BSC L CV5D,Z BR ASF STMNT NOT POSSIBLE K0802820
7AEE C480 7A52 286 | LD I IDSV1 STMNT ID WORD K0802830
7AF0 180B 287 | SRA 11 RIGHT JUSTIFY STMNT TYPE K0802840
7AF1 9066 288 | S EQCOO EQUIVALENCE STMNT CONSTANT K0802850
7AF2 4C18 7B1D 289 | BSC L CV5D,+- BR IF EQUIVALENCE STMNT K0802860
7AF4 C05F 290 | LD SW8 SWITCH 8 K0802870
7AF5 4C18 7B1C 291 | BSC L CV0A,+- BR IF NOT ASF STMNT K0802880
7AF7 C480 7A52 292 | LD I IDSV1 STMNT ID WORD K0802890
7AF9 E85F 293 | OR ASFID CHANGE ID WD TO ASF TYPE K0802900
7AFA D480 7A52 294 | STO I IDSV1 RESTORE ID WORD K0802910
295 | * K0802920
296 | * CHECK FOR STMNT NUMBER K0802930
297 | * K0802940
7AFC 4804 298 | BSC E SKIP NEXT IF NO STMNT NO. K0802950
7AFD 7001 299 | MDX *+1 BR IF STMNT NUMBERED K0802960
7AFE 701E 300 | MDX CV5D BR NO STMNT NUMBER K0802970
7AFF 6919 301 | STX 1 XR1SV+1 SAVE INDEX REGISTER 1 K0802980
7B00 6580 7A52 302 | LDX I1 IDSV1 INDEX REG 1 = ADDR ID WORD K0802990
7B02 C101 303 | LD 1 1 STMNT NUMBER K0803000
7B03 1001 304 | SLA 1 SHIFT OFF INDR BIT K0803010
7B04 A05F 305 | M MT3 MINUS 3 K0803020
7B05 108F 306 | SLT 15 PRODUCT TO ACCUMULATOR K0803030
7B06 8400 7A26 307 | A L SOFST START OF SYMBOL TBL ADDRESS K0803040
7B08 905A 308 | S MT2 MINUS 4 K0803050
7B09 D002 309 | STO *+2 SET STORE ADDRESS K0803060
7B0A 1010 310 | SLA 16 CLEAR ACC K0803070
7B0B D400 0000 311 | STO L *-* ZERO SYMBOL TBL ENTRY K0803080
7B0D 6843 312 | STX SW5 SET SW5 ON-PACK STRING K0803090
7B0E C100 313 | LD 1 0 STMNT ID WORD K0803100
7B0F F047 314 | EOR AONE REMOVE STMNT NUMBER INDR K0803110
7B10 D100 315 | STO 1 0 RESTORE ID WORD K0803120
7B11 7101 316 | MDX 1 1 INCR TO NEXT STMNT WD K0803130
7B12 C101 317 | LD 1 1 REMOVE STATEMENT NUMBER K0803140
7B13 D100 318 | STO 1 0 CLOSE STMNT 1 WORD K0803150
7B14 4C20 7B11 319 | BSC L *-5,Z BR TO CONTINUE CLOSING K0803160
7B16 7401 7B61 320 | MDX L CNT,1 ADJUST STMNT WORD COUNT K0803170
7B18 6500 0000 321 | XR1SV LDX L1 *-* RESTORE INDEX REG 1 K0803180
7B1A 71FF 322 | MDX 1 -1 ADJUST STMNT POINTER K0803190
7B1B 7001 323 | MDX CV5D BR TO CHECK FOR STRING PACK K0803200
324 | * K0803210
325 | * TAG SWITCH 3 K0803220
326 | * K0803230
7B1C 6832 327 | CV0A STX 0 SW3 ASF STMNT NOT POSSIBLE K0803240
328 | * K0803250
329 | * CHECK IF STRING CLOSURE REQUIRED K0803260
330 | * K0803270
7B1D C033 331 | CV5D LD SW5 SWITCH 5 K0803280
7B1E 4C18 7A51 332 | BSC L MOVE,+- BR TO GO TO NEXT STATEMENT K0803290
7B20 6916 333 | STX 1 CX0 SAVE INDEX REGISTER 1 K0803300
7B21 C015 334 | LD CX0 CURRENT STRING POINTER K0803310
7B22 803E 335 | A CNT STMNT WORD COUNT K0803320
7B23 D007 336 | STO CX1 STORE ADDR TO MOVE FROM K0803330
7B24 C400 7A25 337 | LD L EOFS END OF STRING ADDRESS K0803340
7B26 9004 338 | S CX1 MOVE FROM ADDR K0803350
7B27 D001 339 | STO *+1 RANGE OF CLOSURE K0803360
7B28 6700 0000 340 | LDX L3 *-* INDEX REG 3 = RANGE K0803370
7B2A 6600 0000 341 | LDX L2 *-* ADDR FIRST WD TO MOVE K0803380
7B2B 342 | CX1 EQU *-1 LABEL ADDR LAST INSTRUCTION K0803390
7B2C 7301 343 | MDX 3 1 NO. OF WORDS TO MOVE K0803400
7B2D C200 344 | LD 2 0 NEXT WORD TO MOVE K0803410
7B2E D100 345 | STO 1 0 CLOSE UP STRING K0803420
7B2F 7101 346 | MDX 1 1 INCR ADDR TO MOVE TO K0803430
7B30 7201 347 | MDX 2 1 INCR ADDR TO MOVE FROM K0803440
7B31 73FF 348 | MDX 3 -1 DECR MOVE COUNTER K0803450
7B32 70FA 349 | MDX *-6 BR TO CONTINUE MOVE K0803460
7B33 71FF 350 | MDX 1 -1 ADJUST INDEX REG 1 K0803470
7B34 6D00 7A25 351 | STX L1 EOFS NEW END OF STRING ADDRESS K0803480
7B36 6500 0000 352 | LDX L1 *-* RESTORE INDEX REG 1 K0803490
7B37 353 | CX0 EQU *-1 LABEL ADDR LAST INSTRUCTION K0803500
7B38 C480 7A52 354 | LD I IDSV1 STMNT ID WORD K0803510
7B3A 1882 355 | SRT 2 RIGHT JUSTIFY STMNT NORM K0803520
7B3B 9025 356 | S CNT CORRECT STMNT WORD COUNT K0803530
7B3C 1082 357 | SLT 2 SHIFT BACK TO NORMAL FORM K0803540
7B3D D480 7A52 358 | STO I IDSV1 RESTORE CORRECTED STMNT ID K0803550
7B3F 4C00 7A51 359 | BSC L MOVE BR TO GO TO NEXT STATEMENT K0803560
360 | * K0803570
361 | * REMOVE CONSTANT OPERATOR FROM STMNT K0803580
362 | * K0803590
7B41 901E 363 | CV6 S CONC CONSTANT OPERATOR K0803600
7B42 4C20 7B65 364 | BSC L CV8,Z BR IF NOT CONSTANT OPERATOR K0803610
7B44 71FF 365 | MDX 1 -1 ADJUST TO REMOVE OPERATOR K0803620
7B45 4400 7DE0 366 | BSI L SXB1 BR TO CLOSE STMNT ONE WORD K0803630
7B47 7101 367 | MDX 1 1 MOVE STMNT POINTER K0803640
7B48 6808 368 | STX 0 SW5 SET SW5 TO CLOSE STRING K0803650
7B49 7401 7B61 369 | MDX L CNT,1 ADJUST STMNT WORD COUNT K0803660
7B4B 7101 370 | CV7 MDX 1 1 INCR STMNT POINTER K0803670
7B4C 7089 371 | MDX CV5 BR TO TEST SWITCH 1 K0803680
372 | * K0803690
373 | * CONSTANTS AND WORK AREA K0803700
374 | * K0803710
7B4D 0000 375 | SW1 DC 0 GOTO STMNT SWITCH K0803720
7B4E 0000 376 | SW2 DC 0 IF STMNT SWITCH K0803730
7B4F 0000 377 | SW3 DC 0 POSSIBLE ASF STMNT SWITCH K0803740
7B50 0000 378 | SW4 DC 0 READ OR WRITE STMNT SWITCH K0803750
7B51 0000 379 | SW5 DC 0 CLOSE STRING SWITCH K0803760
7B52 0000 380 | SW6 DC 0 ASF NAME TABLE PUT SWITCH K0803770
7B53 0000 381 | SW7 DC 0 ASF NAME TABLE CHECK SWITCH K0803780
7B54 0000 382 | SW8 DC 0 ARITH STMNT FUNCTION SWITCH K0803790
7B55 0000 383 | SW9 DC 0 PHASING SWITCH K0803800
7B56 0000 384 | SW10 DC 0 TWO WORD NAME SWITCH K0803810
7B57 0001 385 | AONE DC 1 STMNT NO. EXTRACT MASK K0803820
7B58 0015 386 | EQCOO DC /15 EQUIVALENCE STMNT CONSTANT K0803830
7B59 D000 387 | ASFID DC /D000 ARITH STMNT FUNC ID CON K0803840
7B5A 000E 388 | GOTOC DC /0E GOTO STMNT CONSTANT K0803850
7B5B FFFD 389 | DOC DC /0B-/0E DO STMNT CONSTANT K0803860
7B5C 0004 390 | IFC DC /0F-/0B IF STMNT CONSTANT K0803870
7B5D 0003 391 | RDC DC /12-/0F EAD STMNT CONSTANT K0803880
7B5E FFFF 392 | WTC DC /11-/12 WRITE STMNT CONSTANT K0803890
7B5F 001E 393 | SEMIC DC /1E SEMICOLON CONSTANT K0803900
7B60 0040 394 | CONC DC /5E-/1E CONSTANT OPERATOR CONSTANT K0803910
7B61 0000 395 | CNT DC 0 STMNT WORD COUNT TEMPORARY K0803920
7B62 07FC 396 | S07FC DC /07FC STMNT NORM EXTRACT MASK K0803930
7B63 FFFC 397 | MT2 DC -4 STMNT NO. CONVERSION CON K0803940
7B64 FFFD 398 | MT3 DC -3 STMNT NO. CONVERSION CON K0803950
399 | * K0803960
400 | * CHECK FOR OPERATOR AND CONVERT K0803970
401 | * K0803980
7B65 C0EE 402 | CV8 LD SW8 ASF STMNT SWITCH K0803990
7B66 4C18 7D56 403 | BSC L CV33,+- BR IF NOT ASF K0804000
7B68 C0EC 404 | LD SW9 PHASING SWITCH K0804010
7B69 4C18 7B7A 405 | BSC L CV10,+- BR NOT SET ON K0804020
7B6B C100 406 | LD 1 0 NEXT STMNT WORD K0804030
7B6C 9400 7C57 407 | S L LPAR LEFT PARENTHESIS CONSTANT K0804040
7B6E 4C20 7B72 408 | BSC L CV9,Z BR IF NOT LEFT PARENTHESIS K0804050
7B70 68E1 409 | STX 0 SW6 SET SW6 TO T CONDITION K0804060
7B71 7008 410 | MDX CV10 BR TO CONVERT OPERATOR K0804070
7B72 C100 411 | CV9 LD 1 0 NEXT STMNT WORD K0804080
7B73 9400 7C59 412 | S L RPAR RIGHT PARENTHESIS CONSTANT K0804090
7B75 4C20 7B7A 413 | BSC L CV10,Z BR IF NOT RIGHT PARENTHESIS K0804100
7B77 D0DD 414 | STO SW9 RESET PHASING SWITCH K0804110
7B78 D0D9 415 | STO SW6 RESET ASF NAME TBL PUT SW K0804120
7B79 68D9 416 | STX 0 SW7 SET ASF NAME TBL CHECK SW K0804130
417 | * K0804140
418 | * CONVERT OPERATOR TO SCAN-FORCING CODE K0804150
419 | * K0804160
7B7A 6700 7B97 420 | CV10 LDX L3 TABLE TABLE ADDRESS K0804170
7B7C 6205 421 | LDX 2 QX2-TABLE INITIALIZE COUNTER K0804180
7B7D C01F 422 | LD INST1 MDX INSTRUCTION K0804190
7B7E D00B 423 | STO INST INITIALIZE ODD K0804200
7B7F C100 424 | LD 1 0 OPERATOR K0804210
7B80 4C04 7B85 425 | BSC L CUD,E BR IF ODD K0804220
7B82 C01B 426 | LD INST2 MDX INSTRUCTION K0804230
7B83 D006 427 | STO INST INITIALIZE EVEN K0804240
7B84 6206 428 | LDX 2 TABLE-QX1 INITIALIZE COUNTER K0804250
7B85 C300 429 | CUD LD 3 0 TABLE ENTRY K0804260
7B86 E01C 430 | AND SFF EXTRACT OPERATOR K0804270
7B87 9100 431 | S 1 0 COMPARE WITH OPERATOR K0804280
7B88 4C18 7B8D 432 | BSC L OZ,+- BR IF OPERATOR FOUND K0804290
7B8A 1000 433 | INST NOP INCR OR DECR TABLE ADDRESS K0804300
7B8B 72FF 434 | MDX 2 -1 DECR COUNTER K0804310
7B8C 70F8 435 | MDX CUD BR TO CONTINUE SEARCH K0804320
7B8D C300 436 | OZ LD 3 0 TABLE ENTRY K0804330
7B8E 1808 437 | SRA 8 RIGHT JUSTIFY FORCING CODE K0804340
7B8F D100 438 | STO 1 0 REPLACE OPERATOR K0804350
7B90 70BA 439 | MDX CV7 BR TO MOVE STMNT POINTER K0804360
440 | * K0804370
441 | * TABLE TO CONVERT OPERATORS K0804380
442 | * K0804390
7B91 3000 443 | QX1 DC /3000 NOP K0804400
7B92 323A 444 | DC /323A COLON K0804410
7B93 0E3E 445 | DC /0E3E = K0804420
7B94 0C1C 446 | DC /0C1C * K0804430
7B95 0620 447 | DC /0620 - K0804440
7B96 040E 448 | DC /040E + K0804450
7B97 021D 449 | TABLE DC /021D ) K0804460
7B98 100D 450 | DC /100D ( K0804470
7B99 122B 451 | DC /122B , K0804480
7B9A 0821 452 | DC /0821 / K0804490
7B9B 423D 453 | DC /423D QUOTE (APOSTROPHE) K0804500
7B9C 3000 454 | QX2 DC /3000 NOP K0804510
455 | * K0804520
456 | * CONSTANTS AND WORK AREA K0804530
457 | * K0804540
7B9D 7301 458 | INST1 MDX 3 1 INCR TABLE ADDR INSTRUCTION K0804550
7B9E 73FF 459 | INST2 MDX 3 -1 DECR TABLE ADDR INSTRUCTION K0804560
7B9F 8000 460 | S8000 DC /8000 ONE WORD NAME INDICATOR K0804570
7BA0 0000 461 | ERNO DC 0 ERROR NUMBER TEMPORARY K0804580
7BA1 0001 462 | S0001 DC 1 DECIMAL ONE CONSTANT K0804590
7BA2 A008 463 | ERID DC /A008 ERROR IDENTIFIER K0804600
7BA3 01FF 464 | SFF DC /01FF OPERATOR EXTRACT MASK K0804610
465 | * K0804620
466 | * CHECK FOR LEGAL NAME K0804630
467 | * K0804640
7BA4 1002 468 | CV11 SLA 2 SHIFT INTO SIGN AND CARRY K0804650
7BA5 4C10 7BA9 469 | BSC L *+2,- BR TO CHK FOR LEGAL NAME K0804660
7BA7 4C02 7C84 470 | BSC L CV22,C BR TO CHK IF LEGAL CONSTANT K0804670
7BA9 1010 471 | SLA 16 CLEAR ACCUMULATOR K0804680
7BAA D400 7C56 472 | STO L IND SET INDR = ZERO K0804690
7BAC C0F2 473 | LD S8000 ONE WORD NAME INDICATOR K0804700
7BAD D400 7C53 474 | STO L WORD2 SECOND WORD OF 2-WORD NAME K0804710
7BAF C100 475 | LD 1 0 FIRST HALF OF NAME K0804720
7BB0 D400 7C52 476 | STO L WORD1 FIRST HALF OF NAME TEMP K0804730
7BB2 C101 477 | LD 1 1 SECOND HALF OF NAME K0804740
7BB3 4C10 7BE6 478 | BSC L CV13,- BR IF ONE WORD NAME K0804750
7BB5 D400 7C53 479 | STO L WORD2 SECOND HALF OF NAME TEMP K0804760
7BB7 689E 480 | STX 0 SW10 SET TWO-WORD NAME SWITCH ON K0804770
7BB8 C102 481 | LD 1 2 NEXT STMNT WORD K0804780
7BB9 4C10 7BE6 482 | BSC L CV13,- BR IF NOT NAME WORD K0804790
7BBB 6307 483 | LDX 3 7 INDEX REG 3 = 7 K0804800
7BBC 6BE3 484 | BK STX 3 ERNO SET UP ERROR NO. 7 K0804810
485 | * K0804820
486 | * REPLACE STATEMENT WITH ERROR K0804830
487 | * K0804840
7BBD 6580 7A52 488 | CV12 LDX I1 IDSV1 STMNT ID WORD ADDRESS K0804850
7BBF C100 489 | LD 1 0 STMNT ID WORD K0804860
7BC0 E0A1 490 | AND S07FC EXTRACT STMNT WORD COUNT K0804870
7BC1 1802 491 | SRA 2 RIGHT JUSTIFY K0804880
7BC2 8400 7A52 492 | A L IDSV1 ADDR OF STMNT ID WORD K0804890
7BC4 D001 493 | STO *+1 ADDR OF NEXT STMNT ID WORD K0804900
7BC5 6600 0000 494 | LDX L2 *-* INDEX REG 2 = NEXT STMNT ID K0804910
7BC7 C400 7A25 495 | LD L EOFS END OF STRING ADDRESS K0804920
7BC9 90FC 496 | S *-4 ADDR OF NEXT STMNT ID WORD K0804930
7BCA D001 497 | STO *+1 ADDR OF NEXT INSTRUCTION K0804940
7BCB 6700 0000 498 | LDX L3 *-* INDEX REG 3=RANGE OF CLOSE K0804950
7BCD 7301 499 | MDX 3 1 NO. OF WORDS TO MOVE K0804960
7BCE C100 500 | LD 1 0 STMNT ID WORD K0804970
7BCF E0D1 501 | AND S0001 EXTRACT LOW BIT K0804980
7BD0 E8D1 502 | OR ERID ERROR IDENTIFIER K0804990
7BD1 D100 503 | STO 1 0 STMNT ID WORD K0805000
7BD2 F0CE 504 | EOR S0001 REVERSE STMNT NUMBER INDR K0805010
7BD3 4C04 7BD9 505 | BSC L *+4,E BR IF BIT 15 ON K0805020
7BD5 6901 506 | STX 1 *+1 STMNT ID WORD ADDRESS K0805030
7BD6 7404 0000 507 | MDX L *-*,4 INCR STMNT ID WORD K0805040
7BD8 7101 508 | MDX 1 1 INCR STMNT POINTER K0805050
7BD9 C0C6 509 | LD ERNO ERROR NUMBER K0805060
7BDA D101 510 | STO 1 1 ERROR NO. INTO STMNT K0805070
7BDB C200 511 | LD 2 0 NEXT WORD TO MOVE K0805080
7BDC D102 512 | STO 1 2 CLOSE UP STRING K0805090
7BDD 7201 513 | MDX 2 1 INCR ADDR TO MOVE FROM K0805100
7BDE 7101 514 | MDX 1 1 INCR ADDR TO MOVE TO K0805110
7BDF 73FF 515 | MDX 3 -1 DECR MOVE WORD COUNT K0805120
7BE0 70FA 516 | MDX *-6 BR TO CONTINUE CLOSING K0805130
7BE1 7101 517 | MDX 1 1 ADJUST TO MAKE NEW END OF K0805140
7BE2 6D00 7A25 518 | STX L1 EOFS STRING ADDRESS. K0805150
7BE4 4C00 7A51 519 | BSC L MOVE BR TO SCAN NEXT STMNT K0805160
520 | * K0805170
521 | * PUT NAME IN ASF TABLE K0805180
522 | * K0805190
7BE6 C400 7B52 523 | CV13 LD L SW6 PUT NAME SWITCH K0805200
7BE8 4C18 7BFB 524 | BSC L CV14,+- BR TO CHECK FOR NAME IN TBL K0805210
7BEA C867 525 | LDD WORD1 TWO-WORD NAME K0805220
7BEB DC80 7D85 526 | STD I ASFNT PUT NAME IN ASF TABLE K0805230
7BED 4400 7DED 527 | BSI L NASFT CHECK FOR DUPLICATE STMNT K0805240
7BEF 7BF9 528 | DC ER25 FUNCTION PARAMETERS. K0805250
7BF0 7BF1 529 | DC * K0805260
7BF1 7402 7D85 530 | MDX L ASFNT,2 INCR NEXT TABLE ENTRY ADDR K0805270
7BF3 C400 7D84 531 | LD L AFSNT MINUS 3 K0805280
7BF5 9400 7D85 532 | S L ASFNT NEXT TABLE ADDR K0805290
7BF7 4C10 7C03 533 | BSC L CV15,- BR IF LESS THAN 15 NAMES K0805300
7BF9 6319 534 | ER25 LDX 3 25 SET UP ERROR 25 K0805310
7BFA 70C1 535 | MDX BK BR TO STORE ERROR NUMBER K0805320
536 | * K0805330
537 | * CHECK FOR NAME IN ASF TABLE K0805340
538 | * K0805350
7BFB C400 7B53 539 | CV14 LD L SW7 CHECK NAME SWITCH K0805360
7BFD 4C18 7C0A 540 | BSC L CV16,+- BR TO CHK FOR INTEGER NAME K0805370
7BFF 4400 7DED 541 | CV14A BSI L NASFT CHK FOR NAME ALREADY IN TBL K0805380
7C01 7C03 542 | DC CV15 K0805390
7C02 7C0A 543 | DC CV16 K0805400
7C03 C04F 544 | CV15 LD WORD2 SECOND WD OF STMNT NAME K0805410
7C04 1001 545 | SLA 1 REMOVE SIGN BIT K0805420
7C05 1801 546 | SRA 1 K0805430
7C06 D04C 547 | STO WORD2 RESTORE SECOND WORD OF NAME K0805440
7C07 C04E 548 | LD IND ADD STATEMENT FUNCTION K0805450
7C08 E85C 549 | OR S0400 PARAMETER TO THE SYMBOL K0805460
7C09 D04C 550 | STO IND TABLE ID WORD TEMPORARY K0805470
551 | * K0805480
552 | * CHECK FOR INTEGER NAME K0805490
553 | * K0805500
7C0A C047 554 | CV16 LD WORD1 FIRST WORD OF NAME K0805510
7C0B 1809 555 | SRA 9 RIGHT JUSTIFY FIRST CHAR K0805520
7C0C 9047 556 | S ILOW LOW ALPHA LIMIT CONSTANT K0805530
7C0D 4C28 7C15 557 | BSC L CV17,+Z BR IF ALPHA BELOW I K0805540
7C0F 9045 558 | S IHI HIGH ALPHA LIMIT CONSTANT K0805550
7C10 4C30 7C15 559 | BSC L CV17,-Z BR IF ALPHA ABOVE N K0805560
7C12 C043 560 | LD IND SYMBOL TBL ID WORD TEMP K0805570
7C13 E852 561 | OR S4000 ADD INTEGER INDR K0805580
7C14 D041 562 | STO IND RESTORE SYMBOL TBL ID TEMP K0805590
563 | * K0805600
564 | * PUT STMNT FUNC NAME IN SYMBOL TABLE K0805610
565 | * K0805620
7C15 4400 7E12 566 | CV17 BSI L PTCH2 BRANCH TO PUT NAME 2-3 K0805630
7C17 4400 7DC8 567 | BSI L EXTRA SYMBOL TBL ADDR TO STRING K0805640
7C19 7101 568 | TAM MDX 1 1 MOVE STMNT POINTER K0805650
569 | * K0805660
570 | * CHECK FOR LEFT PARENTHESIS OPERATOR K0805670
571 | * K0805680
7C1A C100 572 | LD 1 0 NEXT STMNT WORD K0805690
7C1B 903B 573 | S LPAR LEFT PARENTHESIS CONSTANT K0805700
7C1C 4C20 7AD6 574 | BSC L CV5,Z BR IF NOT LEFT PARENTHESIS K0805710
575 | * K0805720
576 | * CHK FOR DIMENSIONED NAME, ARITH STMNT K0805730
577 | * K0805740
7C1E C300 578 | DIMED LD 3 0 SYMBOL TABLE ID WORD K0805750
7C1F E040 579 | AND MK DIMENSION BIT MASK K0805760
7C20 4C20 7C6D 580 | BSC L CV19,Z BR IF DIMENSIONED NAME K0805770
7C22 C480 7A52 581 | LD I IDSV1 STMNT ID WORD K0805780
7C24 180B 582 | SRA 11 RIGHT JUSTIFY STMNT TYPE K0805790
7C25 4C20 7C3D 583 | BSC L CV18,Z BR IF NOT ARITHM STMNT 2-7 K0805800
7C27 C400 7B4F 584 | LD L SW3 ASF POSSIBLE SWITCH K0805810
7C29 4C20 7C3D 585 | BSC L CV18,Z BR IF ASF NOT POSSIBLE 2-7 K0805820
7C2B C400 7B54 586 | LD L SW8 ASF STMNT SWITCH K0805830
7C2D 4C20 7C3D 587 | BSC L CV18,Z BR IF ASF STMNT SW ON 2-7 K0805840
7C2F 6C00 7B54 588 | STX L0 SW8 SET ASF SWITCH ON K0805850
7C31 6C00 7B55 589 | STX L0 SW9 SET PHASING SWITCH ON K0805860
590 | * K0805861
591 | * CHECK FOR PREVIOUS ASF WITH THIS NAME K0805862
7C33 C300 592 | LD 3 0 GET SYMBOL TABLE ID WD 2-12 K0805863
7C34 1007 593 | SLA 7 ISOLATE ASF BIT 2-12 K0805864
7C35 4C10 7C3A 594 | BSC L DIM10,- BR IF NOT ALREADY ASF 2-12 K0805865
7C37 6329 595 | LDX 3 41 GENERATE A C41 ERROR 2-12 K0805866
7C38 4C00 7BBC 596 | BSC L BK *FOR THIS STATEMENT 2-12 K0805867
7C3A C300 597 | DIM10 LD 3 0 SET ASF BIT 2-12 K0805868
7C3B E827 598 | OR S0100 *IN THE SYMBOL 2-12 K0805869
7C3C D300 599 | STO 3 0 *TABLE ID WORD 2-12 K0805870
600 | * K0805871
7C3D C300 601 | CV18 LD 3 0 BR TO CHK CLOSURE RE- 2-12 K0805872
7C3E 1007 602 | SLA 7 *QUIRED IF ASF BIT IA 2-12 K0805873
7C3F 4C28 7AD6 603 | BSC L CV5,+Z *ON IN SBL TBL ID WORD 2-7 K0805874
7C41 C400 7D8B 604 | LD L OLDEN TEST OLD SYM TBL ENT 2-10 K0805875
7C43 4C18 7C4C 605 | BSC L CV18A,+- BR IF NEW ENTRY 2-10 K0805876
7C45 C300 606 | LD 3 0 LD SYM TBL ID WORD 2-10 K0805877
7C46 1002 607 | SLA 2 TEST IF IN COMMON 2-10 K0805878
7C47 4C10 7C4C 608 | BSC L CV18A,- *BR IF NOT 2-10 K0805879
7C49 6323 609 | LDX 3 35 FLAG ERROR 35 2-10 K0805880
7C4A 4C00 7BBC 610 | BSC L BK GO SET UP ERR MSG 2-10 K0805881
7C4C C300 611 | CV18A LD 3 0 SET SUBPROGRAM BIT ON 2-10 K0805882
7C4D E816 612 | OR S0080 *IN THE SYMBOL TABLE 2-7 K0805883
7C4E D300 613 | STO 3 0 *ID WORD 2-7 K0805884
7C4F 4C00 7AD6 614 | BSC L CV5 BR TO CHK CLOSURE REQRD 2-7 K0805885
615 | * 2-7 K0805886
616 | * CONSTANTS AND WORK AREA K0805890
617 | * K0805900
7C52 618 | BSS E 0 MAKE ADDRESS EVEN K0805910
7C52 0000 619 | WORD1 DC 0 FIRST HALF OF NAME K0805920
7C53 0000 620 | WORD2 DC 0 SECOND HALF OF NAME K0805930
7C54 0049 621 | ILOW DC /0049 LOW ALPHA LIMIT CONSTANT K0805940
7C55 000C 622 | IHI DC /000C HIGH ALPHA LIMIT CONSTANT K0805950
7C56 0000 623 | IND DC 0 SYMBOL TABLE ID WD TEMP K0805960
7C57 000D 624 | LPAR DC /000D LEFT PARENTHESIS CONSTANT K0805970
7C58 001E 625 | SEMS DC /001E SEMICOLON CONSTANT K0805980
7C59 001D 626 | RPAR DC /001D RIGHT PARENTHESIS CONSTANT K0805990
7C5A 627 | BSS E 0 MAKE ADDRESS EVEN K0806000
7C5A 0000 628 | NOS DC 0 2 WORD TEMPORARY FOR K0806010
7C5B 0000 629 | DC 0 CONSTANT TO BE CONVERTED. K0806020
7C5C 0000 630 | NOST DC 0 CUMULATIVE SUM OF CONSTANT K0806030
7C5D 0009 631 | NINE DC 9 DECIMAL NINE CONSTANT K0806040
7C5E 000A 632 | TEN DC 10 DECIMAL TEN CONSTANT K0806050
7C5F 0000 633 | YZ1 DC 0 INDEX REGISTER 3 TEMPORARY K0806060
7C60 1800 634 | MK DC /1800 DIMENSION BIT MASK K0806070
7C61 0020 635 | S0020 DC /0020 STMNT NO. REFERENCED INDR K0806080
7C62 FFFF 636 | RPARQ DC /001D-/001E RIGHT PARENTHESIS CON K0806090
7C63 0100 637 | S0100 DC /0100 ASF INDICATOR 2-7 K0806092
7C64 0080 638 | S0080 DC /0080 SUBPROGRAM INDICATOR 2-7 K0806095
7C65 0400 639 | S0400 DC /0400 STMNT FUNC PARAMETER INDR K0806100
7C66 4000 640 | S4000 DC /4000 INTEGER INDICATOR K0806110
7C67 001A 641 | SS1 DC /001A DIMENSION LEVEL 1 OPERATOR K0806120
7C68 001C 642 | DC /1C DIMENSION LEVEL 2 OPERATOR K0806130
7C69 001E 643 | DC /1E DIMENSION LEVEL 3 OPERATOR K0806140
7C6A 7E00 644 | H7E00 DC /7E00 HIGH CHARACTER CONSTANT K0806150
7C6B 6000 645 | H6000 DC /6000 LEADING ZEROES CONSTANT K0806160
7C6C 8000 646 | H8000 DC /8000 SIGN CONSTANT K0806170
647 | * K0806180
648 | * CONVERT SPECIAL LEFT PARENTHESIS K0806190
649 | * K0806200
7C6D C300 650 | CV19 LD 3 0 SYMBOL TABLE ID WORD K0806210
7C6E E0F1 651 | AND MK DIMENSION BIT MASK K0806220
7C6F 180B 652 | SRA 11 RIGHT JUSTIFY K0806230
7C70 D001 653 | STO *+1 K0806240
7C71 6700 0000 654 | LDX L3 *-* 1, 2, OR 3 DIMENSION INDR K0806250
7C73 C700 7C66 655 | LD L3 SS1-1 SPECIAL LEFT PARENTHESIS K0806260
7C75 D100 656 | STO 1 0 STORE TO STMNT STRING K0806270
7C76 7101 657 | CV20 MDX 1 1 MOVE STMNT POINTER K0806280
658 | * K0806290
659 | * CHECK FOR OPERATOR K0806300
660 | * K0806310
7C77 C100 661 | LD 1 0 NEXT STMNT WORD K0806320
7C78 90DF 662 | S SEMS SEMICOLON CONSTANT K0806330
7C79 4C18 7C7F 663 | BSC L CV21,+- BR IF SEMICOLON OPERATOR K0806340
7C7B 90E6 664 | S RPARQ RIGHT PARENTHESIS CONSTANT K0806350
7C7C 4400 7E04 665 | BSI L PTCH1 BRANCH TO PATCH AREA 2-3 K0806360
7C7E 70F7 666 | MDX CV20 BR TO MOVE POINTER K0806370
7C7F 631A 667 | CV21 LDX 3 26 K0806380
7C80 6F00 7BA0 668 | STX L3 ERNO SET UP ERROR NUMBER 26 K0806390
7C82 4C00 7BBD 669 | BSC L CV12 BR TO REPLACE STMNT IN ERR K0806400
670 | * K0806410
671 | * CHECK FOR VALID CONSTANT K0806420
672 | * K0806430
7C84 10A0 673 | CV22 SLT 32 CLEAR ACC AND EXTENSION K0806440
7C85 D8CC 674 | STD WORD1 CLEAR NAME TEMPORARY K0806450
7C86 C100 675 | LD 1 0 FIRST HALF OF CONSTANT K0806460
7C87 D8D2 676 | STD NOS STORE AND CLEAR 2ND HALF K0806470
7C88 C101 677 | LD 1 1 SECOND HALF OF CONSTANT K0806480
7C89 4C10 7C92 678 | BSC L COOT,- BR TO CONVERT IF NOT NEG K0806490
7C8B 6C00 7B56 679 | STX L0 SW10 SET TWO-WORD NAME SWITCH K0806500
7C8D 1001 680 | SLA 1 SHIFT OFF SIGN BIT K0806510
7C8E D0CC 681 | STO NOS+1 SECOND HALF OF CONSTANT K0806520
7C8F C102 682 | LD 1 2 NEXT STMNT WORD K0806530
7C90 4C28 7CBB 683 | BSC L CV23,+Z BR IF NEG TO SET NAME ERROR K0806540
684 | * K0806550
685 | * COLLECT CONSTANT TO BINARY K0806560
686 | * K0806570
7C92 2000 687 | COOT LDS 0 RESET OVERFLOW AND CARRY K0806580
7C93 C0C6 688 | LD NOS FIRST HALF OF CONSTANT K0806590
7C94 1002 689 | XX1 SLA 2 SHIFT TO CHK FOR NUMERIC K0806600
7C95 4C02 7C9A 690 | BSC L *+3,C BR IF CARRY K0806610
7C97 4C20 7CBB 691 | BSC L CV23,Z BR TO SET ERROR 24 K0806620
7C99 7016 692 | MDX JDC BR SET SYMBOL TBL ID INDRS K0806630
7C9A 4C10 7CBB 693 | BSC L CV23,- BR NOT DIGIT TO SET ERROR K0806640
7C9C 1001 694 | SLA 1 SHIFT OFF NON-DIGIT BIT K0806650
7C9D 180C 695 | SRA 12 RIGHT JUSTIFY 4-BIT DIGIT K0806660
7C9E D0BD 696 | STO NOST TEMPORARY K0806670
7C9F 90BD 697 | S NINE DECIMAL NINE LIMIT CONSTANT K0806680
7CA0 4C30 7CBB 698 | BSC L CV23,-Z BR IF GREATER THAN NINE K0806690
7CA2 C0AF 699 | LD WORD1 PREVIOUS CONSTANT VALUE K0806700
7CA3 A0BA 700 | M TEN MPY BY 10 K0806710
7CA4 1081 701 | SLT 1 K0806720
7CA5 4C20 7CBB 702 | BSC L CV23,Z BR CONSTANT TOO LARGE K0806730
7CA7 108F 703 | SLT 15 SHIFT INTO ACCUMULATOR K0806740
7CA8 80B3 704 | A NOST UNITS DIGIT K0806750
7CA9 4C01 7CBB 705 | BSC L CV23,O BR IF OVERLOW TO SET ERROR K0806760
7CAB D0A6 706 | STO WORD1 TEMPORARY CUMULATIVE SUM K0806770
7CAC C8AD 707 | LDD NOS TWO-WORD CON TO CONVERT K0806780
7CAD 1086 708 | SLT 6 NEXT DIGIT TO HIGH 6 BITS K0806790
7CAE D8AB 709 | STD NOS RESTORE TO TEMP K0806800
7CAF 70E4 710 | MDX XX1 BR TO CONVERT NEXT DIGIT K0806810
7CB0 6700 C000 711 | JDC LDX L3 /C000 INTEGER CONSTANT INDR BITS K0806820
7CB2 6BA3 712 | STX 3 IND SYMBOL TBL ID WD TEMPORARY K0806830
7CB3 7401 7D89 713 | MDX L SWCS,1 CHK SYMBOL TBL OVERLAP SW K0806840
7CB5 4400 7D8C 714 | BSI L STOOK BR PUT NAME IN SYMBOL TABLE K0806850
7CB7 4400 7DC8 715 | BSI L EXTRA SYMBOL TBL ADDR ON STRING K0806860
7CB9 4C00 7B4B 716 | BSC L CV7 BR TO MOVE STMNT POINTER K0806870
717 | * K0806880
718 | * SET UP ERROR NO 24 K0806890
719 | * K0806900
7CBB 6318 720 | CV23 LDX 3 24 INDEX REG 3= 24 K0806910
7CBC 6F00 7BA0 721 | STX L3 ERNO SET UP ERROR 24 K0806920
7CBE 4C00 7BBD 722 | BSC L CV12 BR REPLACE STMNT WITH ERROR K0806930
723 | * K0806940
724 | * CHECK FOR VALID STATEMENT NUMBER K0806950
725 | * K0806960
7CC0 1010 726 | CV25A SLA 16 CLEAR ACCUMULATOR K0806970
7CC1 D091 727 | STO WORD2 ZERO SECOND WD OF TEMPORARY K0806980
7CC2 C100 728 | LD 1 0 NEXT STMNT WORD K0806990
7CC3 4C10 7BBD 729 | BSC L CV12,- BR REPLACE STMNT WITH ERROR K0807000
7CC5 D08C 730 | STO WORD1 FIRST HALF OF STMNT NUMBER K0807010
7CC6 C101 731 | LD 1 1 NEXT STMNT WORD K0807020
7CC7 4C10 7CD0 732 | BSC L YYX,- BR TO CHK FOR DUPLICATE NO. K0807030
7CC9 1001 733 | SLA 1 SHIFT OFF SIGN BIT K0807040
7CCA D088 734 | STO WORD2 SECOND HALF OF STMNT NUMBER K0807050
7CCB 6C00 7B56 735 | STX L0 SW10 SET TWO-WORD SWITCH ON K0807060
7CCD C102 736 | LD 1 2 NEXT STMNT WORD K0807070
7CCE 4C28 7BBD 737 | BSC L CV12,+Z BR TO SET ERROR IF 3RD WORD K0807080
738 | * K0807090
739 | * ADJUST FOR LEADING ZEROES K0807100
740 | * K0807110
7CD0 C400 7C52 741 | YYX LD L WORD1 FIRST HALF OF NUMBER K0807120
7CD2 E097 742 | ZEROT AND H7E00 EXTRACT FIRST DIGIT K0807130
7CD3 F097 743 | EOR H6000 REMOVE NON-DIGIT BITS K0807140
7CD4 4C20 7CDD 744 | BSC L ZSLT,Z BR NO LEADING ZERO K0807150
7CD6 CC00 7C52 745 | LDD L WORD1 TWO-WORD NUMBER TEMPORARY K0807160
7CD8 1086 746 | SLT 6 SHIFT OFF LEADING ZERO K0807170
7CD9 E892 747 | OR H8000 REPLACE SIGN BIT K0807180
7CDA DC00 7C52 748 | STD L WORD1 RESTORE NUMBER K0807190
7CDC 70F5 749 | MDX ZEROT BR TO TEST FOR LEADING ZERO K0807200
7CDD C400 7C53 750 | ZSLT LD L WORD2 SECOND HALF OF STMNT NUMBER K0807210
7CDF 1801 751 | SRA 1 RIGHT JUSTIFY K0807220
7CE0 E88B 752 | OR H8000 REPLACE SIGN BIT K0807230
7CE1 D400 7C53 753 | STO L WORD2 RESTORE TO TEMPORARY K0807240
754 | * K0807250
755 | * CHK FOR DUPLICATE NO. IN SYMBOL TABLE K0807260
756 | * K0807270
7CE3 6780 7A26 757 | LDX I3 SOFST START OF STRING ADDRESS K0807280
7CE5 700B 758 | MDX YY1 BR TO INITIALIZE LOOP K0807290
7CE6 C301 759 | YY0 LD 3 1 FIRST HALF SYMBOL TBL ENTRY K0807300
7CE7 9400 7C52 760 | S L WORD1 FIRST HALF STMNT NUMBER K0807310
7CE9 4C20 7CF0 761 | BSC L YEQZ,Z BR NOT FOUND K0807320
7CEB C302 762 | LD 3 2 2ND HALF SYMBOL TABLE ENTRY K0807330
7CEC 9400 7C53 763 | S L WORD2 2ND HALF STMNT NUMBER K0807340
7CEE 4C18 7CFA 764 | BSC L YYZ,+- BR IF STMNT NUMBER FOUND K0807350
7CF0 73FD 765 | YEQZ MDX 3 -3 DECR SYMBOL TABLE ADDRESS K0807360
7CF1 6F00 7C5F 766 | YY1 STX L3 YZ1 STORE IN TEMPORARY K0807370
7CF3 C400 7C5F 767 | LD L YZ1 CURRENT SEARCH ADDRESS K0807380
7CF5 9400 7A27 768 | S L SOFNS START OF NON-STMNT NUMBERS K0807390
7CF7 4C08 7BBD 769 | BSC L CV12,+ BR REPLACE STMNT WITH ERROR K0807400
7CF9 70EC 770 | MDX YY0 BR TO CHECK NEXT ENTRY K0807410
7CFA C480 7A52 771 | YYZ LD I IDSV1 STMNT ID WORD TEMP K0807420
7CFC 180B 772 | SRA 11 RIGHT JUSTIFY STMNT TYPE K0807430
7CFD 9061 773 | S DOCC DO STMNT CONSTANT K0807440
7CFE 4C18 7D04 774 | BSC L YYZQ,+- BR IF DO STATEMENT K0807450
7D00 C300 775 | YY2 LD 3 0 SET STATEMENT NUMBER REFER- K0807460
7D01 EC00 7C61 776 | OR L S0020 ENCED INDICATOR IN THE K0807470
7D03 D300 777 | STO 3 0 SYMBOL TABLE ID WORD. K0807480
7D04 4400 7DC8 778 | YYZQ BSI L EXTRA SYMBOL TABLE ADDR ON STRING K0807490
7D06 4C00 7B4B 779 | BSC L CV7 BR TO MOVE INCR K0807500
780 | * K0807510
781 | * CHECK FOR SEMICOLON OPERATOR K0807520
782 | * K0807530
7D08 C400 7B4E 783 | CV26 LD L SW2 IF STMNT SWITCH K0807540
7D0A 4C18 7D17 784 | BSC L CV27,+- BR NOT IF STMNT K0807550
7D0C C100 785 | LD 1 0 NEXT STMNT WORD K0807560
7D0D 9400 7C58 786 | S L SEMS SEMICOLON CONSTANT K0807570
7D0F 4C20 7D20 787 | BSC L CV28,Z BR IF NOT SEMICOLON K0807580
7D11 D400 7B4D 788 | STO L SW1 RESET GOTO STMNT SWITCH K0807590
7D13 D400 7B4E 789 | STO L SW2 RESET IF STMNT SWITCH K0807600
7D15 4C00 7AE8 790 | BSC L CV5C BR TO CONVERT SEMICOLON K0807610
791 | * K0807620
792 | * CHECK FOR RIGHT PARENTHESIS OPERATOR K0807630
793 | * K0807640
7D17 C100 794 | CV27 LD 1 0 NEXT STMNT WORD K0807650
7D18 9400 7C59 795 | S L RPAR RIGHT PARENTHESIS CONSTANT K0807660
7D1A 4C20 7D20 796 | BSC L CV28,Z BR NOT RIGHT PARENTHESIS K0807670
7D1C D400 7B4D 797 | STO L SW1 RESET GOTO STMNT SWITCH K0807680
7D1E 4C00 7B7A 798 | LMQZ BSC L CV10 BR TO CONVERT OPERATOR K0807690
7D20 C100 799 | CV28 LD 1 0 NEXT STMNT WORD K0807700
7D21 4C10 7AE3 800 | BSC L CV5B,- BR IF OPERATOR K0807710
7D23 709C 801 | MDX CV25A BR CHK VALID STMNT NUMBER K0807720
802 | * K0807730
803 | * CHECK FOR LEFT PARENTHESIS OPERATOR K0807740
804 | * K0807750
7D24 C100 805 | CV29 LD 1 0 NEXT STMNT WORD K0807760
7D25 9400 7C57 806 | S L LPAR LEFT PARENTHESIS CONSTANT K0807770
7D27 4C20 7D2C 807 | BSC L CV30,Z BR IF NOT LEFT PARENTHESIS K0807780
7D29 7401 7D61 808 | MDX L PAR,1 PARENTHESIS INDICATOR K0807790
7D2B 70F2 809 | MDX LMQZ BR TO CONVERT OPERATOR K0807800
810 | * K0807810
811 | * CHECK FOR RIGHT PARENTHESIS OPERATOR K0807820
812 | * K0807830
7D2C 9035 813 | CV30 S MRPO RIGHT PARENTHESIS CONSTANT K0807840
7D2D 4C20 7AE0 814 | BSC L CV5A,Z BR IF NOT RIGHT PARENTHESIS K0807850
7D2F 74FF 7D61 815 | MDX L PAR,-1 PARENTHESIS INDICATOR K0807860
7D31 70EC 816 | MDX LMQZ BR TO CONVERT OPERATOR K0807870
7D32 6C00 7B4D 817 | STX L0 SW1 SET GOTO STMNT SW ON K0807880
7D34 70E9 818 | MDX LMQZ BR TO CONVERT OPERATOR K0807890
819 | * K0807900
820 | * CHECK FOR APOSTROPHE K0807910
821 | * K0807920
7D35 C100 822 | CV31 LD 1 0 NEXT STMNT CHARACTER K0807930
7D36 9029 823 | S QMRK QUOTE (APOSTROPHE) CONSTANT K0807940
7D37 4C20 7D3D 824 | BSC L CV31A,Z BR IF NOT QUOTE CHARACTER K0807950
7D39 D400 7B50 825 | NSW4 STO L SW4 ZERO READ-WRITE STMNT SW K0807960
7D3B 4C00 7AE0 826 | BSC L CV5A BR TO CHK FOR OPERATOR K0807970
827 | * K0807980
828 | * CHECK FOR A FORMAT STMNT NUMBER IN A K0807990
829 | * READ OR WRITE STATEMENT. K0808000
830 | * K0808010
7D3D C100 831 | CV31A LD 1 0 NEXT STMNT CHARACTER K0808020
7D3E 4C10 7AE0 832 | BSC L CV5A,- BR TO CHK FOR OPERATOR K0808030
7D40 C101 833 | LD 1 1 STMNT POINTER+1 CHARACTER K0808040
7D41 9400 7C59 834 | S L RPAR BRANCH IF RIGHT PARENTHESIS K0808050
7D43 4C18 7D4A 835 | BSC L CV32,+- AT STMNT POINTER + 1. K0808060
7D45 C102 836 | LD 1 2 STMNT POINTER+2 CHARACTER K0808070
7D46 9400 7C59 837 | S L RPAR BRANCH IF NO RIGHT PAREN- K0808080
7D48 4C20 7AE0 838 | BSC L CV5A,Z THESIS AT POINTER + 2. K0808090
7D4A C1FF 839 | CV32 LD 1 -1 STMNT POINTER-1 CHARACTER K0808100
7D4B 9011 840 | S CONVL BRANCH IF LEFT PARENTHESIS K0808110
7D4C 4C18 7D39 841 | BSC L NSW4,+- AT STMNT POINTER - 1. K0808120
7D4E 1010 842 | SLA 16 CLEAR ACCUMULATOR K0808130
7D4F D400 7B50 843 | STO L SW4 ZERO READ OR WRITE STMNT SW K0808140
7D51 632E 844 | LDX 3 46 K0808150
7D52 6F00 7BA0 845 | STX L3 ERNO SET UP ERROR NUMBER 46 K0808160
7D54 4C00 7CC0 846 | BSC L CV25A BR CHK FOR VALID STMNT NO. K0808170
847 | * K0808180
848 | * CHECK FOR EQUAL CHARACTER K0808190
849 | * K0808200
7D56 C100 850 | CV33 LD 1 0 NEXT STMNT CHARACTER K0808210
7D57 9006 851 | S LXE EQUAL CHAR K0808220
7D58 4C20 7B7A 852 | BSC L CV10,Z BR IF NOT EQUAL K0808230
7D5A 6C00 7B4F 853 | STX L0 SW3 SET SW3 ASF NOT POSSIBLE K0808240
7D5C 70C1 854 | MDX LMQZ BR TO CONVERT OPERATOR K0808250
855 | * K0808260
856 | * CONSTANTS AND WORK AREA K0808270
857 | * K0808280
7D5D 0010 858 | CONVL DC /10 CONVERTED LEFT PARENTHESIS K0808290
7D5E 003E 859 | EQOP DC /003E EQUAL SIGN K0808300
7D5E 860 | LXE EQU EQOP EQUAL SIGN K0808310
7D5F 000B 861 | DOCC DC /0B DO STMNT CONSTANT K0808320
7D60 003D 862 | QMRK DC /3D QUOTE (APOSTROPHE) CONSTANT K0808330
7D61 0000 863 | PAR DC 0 PARENTHESIS INDICATOR K0808340
7D62 0010 864 | MRPO DC /001D-/000D RIGHT PARENTHESIS CON K0808350
7D64 865 | BSS E 0 MAKE ADDRESS EVEN K0808360
7D64 866 | ASFT BSS 32 ARITH STMNT FUNC NAME TABLE K0808370
7D84 7D82 867 | AFSNT DC *-3 ADDR OF LAST TABLE ELEMENT K0808380
7D85 0000 868 | ASFNT DC 0 TABLE ADDRESS TEMPORARY K0808390
7D86 8001 869 | SIGN1 DC /8001 NUMBERED STMNT INDICATOR K0808400
7D87 0000 870 | SAVE DC 0 INDEX REG 3 TEMPORARY K0808410
7D88 0003 871 | THRE DC 3 DECIMAL 3 ADDRESS CONSTANT K0808420
7D89 0000 872 | SWCS DC 0 SYMBOL TABLE OVERLAP SWITCH K0808430
7D8A 0000 873 | SAVES DC 0 INDEX REG 3 TEMPORARY K0808440
7D8B 0000 874 | OLDEN DC 0 NON ZERO IF IN SYM TBL 2-10 K0808445
875 | * K0808450
876 | * PLACE NAME AND ID WD IN SYMBOL TABLE K0808460
877 | * K0808470
7D8C 0000 878 | STOOK DC 0 RETURN ADDRESS K0808480
7D8D 1010 879 | SLA 16 2-10 K0808485
7D8E D0FC 880 | STO OLDEN RESET OLD ENTRY SWITCH 2-10 K0808486
7D8F 6780 7A27 881 | LDX I3 SOFNS START OF NON-STMNT NUMBERS K0808490
7D91 7013 882 | MDX HACK BR TO INITIALIZE K0808500
7D92 C301 883 | LP LD 3 1 FIRST WD OF NAME-NEXT ENTRY K0808510
7D93 9400 7C52 884 | S L WORD1 COMPARE FIRST WORD OF NAME K0808520
7D95 4C20 7DA4 885 | BSC L HACK-1,Z BR NOT EQUAL, LOOK AT NEXT K0808530
7D97 C302 886 | LD 3 2 2ND WD OF NAME K0808540
7D98 9400 7C53 887 | S L WORD2 COMPARE SECOND WORD OF NAME K0808550
7D9A 4C20 7DA4 888 | BSC L HACK-1,Z BR NOT EQUAL, LOOK AT NEXT K0808560
7D9C 68EE 889 | STX OLDEN SET NON ZERO 2-10 K0808565
7D9D C0EB 890 | LD SWCS K0808570
7D9E 4C18 7DBC 891 | BSC L PUTF,+- BR CHK FOR OVERLAP K0808580
7DA0 C300 892 | LD 3 0 SYMBOL TBL ID WORD K0808590
7DA1 1001 893 | SLA 1 SHIFT INTEGER INDR TO SIGN K0808600
7DA2 4C28 7DBA 894 | BSC L PUT,+Z BR IF INTEGER BIT SET ON K0808610
7DA4 73FD 895 | MDX 3 -3 DECR SYMBOL TABLE ADDRESS K0808620
7DA5 6BE4 896 | HACK STX 3 SAVES K0808630
7DA6 C0E3 897 | LD SAVES CURRENT SEARCH ADDRESS K0808640
7DA7 9400 7A2A 898 | S L EOFST END OF SYMBOL TABLE ADDRESS K0808650
7DA9 4C30 7D92 899 | BSC L LP,-Z BR TO CONTINUE IF NOT END K0808660
900 | * K0808670
901 | * PUT NAME IN SYMBOL TABLE K0808680
902 | * K0808690
7DAB C400 7C56 903 | LD L IND SYMBOL TBL ID WD TEMPORARY K0808700
7DAD D300 904 | STO 3 0 STORE AS SYMBOL TBL ID WORD K0808710
7DAE C400 7C52 905 | LD L WORD1 FIRST HALF NAME K0808720
7DB0 D301 906 | STO 3 1 STORE IN SYMBOL TABLE K0808730
7DB1 C400 7C53 907 | LD L WORD2 SECOND HALF NAME K0808740
7DB3 D302 908 | STO 3 2 STORE IN SYMBOL TABLE K0808750
7DB4 74FD 7A2A 909 | MDX L EOFST,-3 NEW END OF SYMBOL TBL ADDR K0808760
7DB6 74FD 7A29 910 | MDX L SOFGT,-3 NEW START OF GENERATED TEMP K0808770
7DB8 74FD 7A28 911 | MDX L SOFXT,-3 NEW START OF SUBSC TEMPS K0808780
7DBA 1010 912 | PUT SLA 16 CLEAR ACCUMULATOR K0808790
7DBB D0CD 913 | STO SWCS ZERO CHK FOR OVERLAP SWITCH K0808800
914 | * K0808810
915 | * CHECK FOR SYMBOL TABLE OVERLAP K0808820
916 | * K0808830
7DBC C400 7A2A 917 | PUTF LD L EOFST END OF SYMBOL TBL ADDR K0808840
7DBE 9400 7A25 918 | S L EOFS END OF STRING K0808850
7DC0 4C28 7DC4 919 | BSC L JFF,+Z BR IF OVERLAP K0808860
7DC2 4C80 7D8C 920 | BSC I STOOK EXIT FROM PLACE NAME K0808870
7DC4 7401 7A2D 921 | JFF MDX L ERROR,1 SET UP OVERLAP ERROR K0808880
7DC6 4C00 7A3E 922 | BSC L WAIT READ AND EXECUTE NEXT PHASE K0808890
923 | * K0808900
924 | * PUT NAME POINTER ON STRING K0808910
925 | * K0808920
7DC8 0000 926 | EXTRA DC 0 RETURN ADDRESS K0808930
7DC9 6BBD 927 | STX 3 SAVE SYMBOL TABLE ADDRESS K0808940
7DCA C400 7A26 928 | LD L SOFST START OF SYMBOL TABLE ADDR K0808950
7DCC 90BA 929 | S SAVE CURRENT SYMBOL TABLE ADDR K0808960
7DCD 1890 930 | SRT 16 FORM NORMAL DIVIDEND K0808970
7DCE A8B9 931 | D THRE NO. OF WORDS PER ENTRY K0808980
7DCF 80B6 932 | A SIGN1 SYMBOL TABLE POINTER K0808990
7DD0 D100 933 | STO 1 0 STORE ON STRING K0809000
934 | * K0809010
935 | * CHK IF 1 WORD STMNT CLOSURE REQUIRED K0809020
936 | * K0809030
7DD1 C400 7B56 937 | LD L SW10 TWO-WORD NAME SWITCH K0809040
7DD3 4C18 7DDE 938 | BSC L FRANK,+- BR IF NO CLOSURE REQUIRED K0809050
7DD5 1010 939 | SLA 16 CLEAR ACCUMULATOR K0809060
7DD6 D400 7B56 940 | STO L SW10 RESET TWO-WORD NAME SWITCH K0809070
7DD8 7401 7B51 941 | MDX L SW5,1 SET STRING PACK SWITCH K0809080
7DDA 4400 7DE0 942 | BSI L SXB1 BR TO CLOSE STMNT 1 WORD K0809090
7DDC 7401 7B61 943 | MDX L CNT,1 ADJUST CNT FOR CLOSURE K0809100
7DDE 4C80 7DC8 944 | FRANK BSC I EXTRA EXIT K0809110
945 | * SUBROUTINE TO CLOSE STMNT BY ONE WORD K0809120
946 | * K0809130
947 | * K0809140
7DE0 0000 948 | SXB1 DC 0 RETURN ADDRESS K0809150
7DE1 6908 949 | STX 1 FRAN+1 SAVE STMNT POINTER K0809160
7DE2 7101 950 | MDX 1 1 INCR STMNT CLOSE POINTER K0809170
7DE3 C101 951 | LD 1 1 NEXT WORD TO MOVE TO CLOSE K0809180
7DE4 D100 952 | STO 1 0 CLOSE STMNT ONE WORD K0809190
7DE5 9400 7C58 953 | S L SEMS SEMICOLON K0809200
7DE7 4C20 7DE2 954 | BSC L SXB1+2,Z BR TO CONTINUE IF NON-ZERO K0809210
7DE9 6500 0000 955 | FRAN LDX L1 0 RESTORE STMNT POINTER K0809220
7DEB 4C80 7DE0 956 | BSC I SXB1 EXIT K0809230
957 | * K0809240
958 | * CHECK WORD1 AND WORD2 AGAINST K0809250
959 | * ARITHMETIC STATEMENT FUNCTION TABLE. K0809260
960 | * IF THEY ARE IN THE TABLE, K0809270
961 | * BRANCH INDIRECT THROUGH FIRST DC, K0809280
962 | * IF NOT- GO THROUGH SECOND DC. K0809290
963 | * K0809300
7DED 0000 964 | NASFT DC 0 RETURN ADDRESS K0809310
7DEE C0FE 965 | LD NASFT RETURN ADDRESS K0809320
7DEF D008 966 | STO NAX1+1 SET UP EXIT K0809330
7DF0 6780 7D85 967 | LDX I3 ASFNT ADDR ARITH STMNT FUNC TABLE K0809340
7DF2 7700 829C 968 | NAX2 MDX L3 -ASFT BASE OF TABLE ADDRESS K0809350
7DF4 7004 969 | MDX *+4 BR TO SEARCH IF NON-ZERO K0809360
7DF5 7401 7DF8 970 | MDX L NAX1+1,1 INCR EXIT ADDR POINTER K0809370
7DF7 4C80 0000 971 | NAX1 BSC I *-* EXIT K0809380
7DF9 7700 7D62 972 | MDX L3 ASFT-2 ADDR OF NEXT ELEMENT K0809390
7DFB CB00 973 | LDD 3 0 TWO-WORD NAME OF TBL ENTRY K0809400
7DFC 9C00 7C52 974 | SD L WORD1 COMPARE WITH TWO-WORD NAME K0809410
7DFE 4C20 7DF2 975 | BSC L NAX2,Z BR IF NOT EQUAL K0809420
7E00 1090 976 | SLT 16 SECOND HALF TO ACCUMULATOR K0809430
7E01 4C20 7DF2 977 | BSC L NAX2,Z BR IF NAME NOT FOUND K0809440
7E03 70F3 978 | MDX NAX1 BR IF NAME FOUND K0809450
979 | * K0809460
7E04 0000 980 | PTCH1 DC *-* LINK 2-3 K0809470
7E05 4C18 7B7A 981 | BSC L CV10,+- BRANCH IF RIGHT PAR 2-3 K0809480
7E07 C100 982 | LD 1 0 BRANCH BACK 2-3 K0809490
7E08 4C90 7E04 983 | BSC I PTCH1,- IF OPERATOR 2-3 K0809500
7E0A 1002 984 | SLA 2 2-3 K0809510
7E0B 4C10 7E0F 985 | BSC L *+2,- 2-3 K0809520
7E0D 4C02 7E23 986 | BSC L PTH1A,C BRANCH IF NOT NAME 2-3 K0809530
7E0F 6812 987 | STX SW11 SET SUBSCRIPT SWITCH 2-3 K0809540
7E10 4C00 7BA9 988 | BSC L CV11+5 GO PROCESS NAME 2-3 K0809550
989 | * K0809560
7E12 0000 990 | PTCH2 DC *-* LINK 2-3 K0809570
7E13 4400 7D8C 991 | BSI L STOOK PUT NAME IN SYM TABLE 2-3 K0809580
7E15 C00C 992 | LD SW11 TEST SUBSCRIPT SWITCH 2-3 K0809590
7E16 4C98 7E12 993 | BSC I PTCH2,+- BRANCH BACK IF OFF 2-3 K0809600
7E18 C400 7B56 994 | LD L SW10 TEST SWITCH 10 2-3 K0809610
7E1A 4820 995 | BSC Z SKIP IF OFF 2-3 K0809620
7E1B 7101 996 | MDX 1 1 INCREMENT POINTER 2-3 K0809630
7E1C 1810 997 | SRA 16 CLEAR 2-3 K0809640
7E1D D004 998 | STO SW11 BOTH SWITCH 11 2-3 K0809650
7E1E D400 7B56 999 | STO L SW10 AND SWITCH 10 2-3 K0809660
7E20 4C80 7E04 1000 | BSC I PTCH1 BRANCH BACK 2-3 K0809670
1001 | * K0809680
7E22 0000 1002 | SW11 DC *-* SUBSCRIPT SWITCH 2-3 K0809690
1003 | * K0809700
7E23 C101 1004 | PTH1A LD 1 1 LOAD NEXT WORD 2-3 K0809710
7E24 4828 1005 | BSC +Z SKIP IF TWO WORD CONST 2-3 K0809720
7E25 7101 1006 | MDX 1 1 MOVE POINTER 2-3 K0809730
7E26 4C80 7E04 1007 | BSC I PTCH1 RETURN 2-3 K0809740
1008 | * K0809750
7E28 1009 | BSS BPHAR+PHLEN*320-*-1 PATCH AREA K0809760
7F35 0000 1010 | DC 0 K0809770
7F36 1011 | END BPHAR-2 K0809780
There were no errors in this assembly
=== CROSS REFERENCES ==========================================================
Name Val Defd Referenced
$PHSE 0078 93 149
AFSNT 7D84 867 531
AONE 7B57 385 314
ASFID 7B59 387 293
ASFNT 7D85 868 189 526 530 532 967
ASFT 7D64 866 188 968 972
BK 7BBC 484 535 596 610
BPHAR 7A36 139 1009 1011
CCWD 7A31 112
CLINK 7A4E 171 223
CNT 7B61 395 200 320 335 356 369 943
COMON 7A2B 107
CONC 7B60 394 363
CONTC 7A4A 167 215
CONVL 7D5D 858 840
COOT 7C92 687 678
CSIZE 7A2C 108
CUD 7B85 429 425 435
CV0 7AEB 284 216
CV0A 7B1C 327 291
CV1 7A5A 187 152
CV10 7B7A 420 405 410 413 798 852 981
CV11 7BA4 468 274 988
CV12 7BBD 488 669 722 729 737 769
CV13 7BE6 523 478 482
CV14 7BFB 539 524
CV14A 7BFF 541
CV15 7C03 544 533 542
CV16 7C0A 554 540 543
CV17 7C15 566 557 559
CV18 7C3D 601 583 585 587
CV18A 7C4C 611 605 608
CV19 7C6D 650 580
CV2 7AA3 235 230
CV20 7C76 657 666
CV21 7C7F 667 663
CV22 7C84 673 470
CV23 7CBB 720 683 691 693 698 702 705
CV25A 7CC0 726 243 250 801 846
CV26 7D08 783 265
CV27 7D17 794 784
CV28 7D20 799 787 796
CV29 7D24 805 267
CV3 7AB6 246 238
CV30 7D2C 813 807
CV31 7D35 822 269
CV31A 7D3D 831 824
CV32 7D4A 839 835
CV33 7D56 850 403
CV3A 7ABF 251 247
CV4 7AC9 257 252
CV5 7AD6 264 220 233 256 260 371 574 603 614
CV5A 7AE0 273 245 814 826 832 838
CV5B 7AE3 275 800
CV5C 7AE8 278 790
CV5D 7B1D 331 285 289 300 323
CV6 7B41 363 277
CV7 7B4B 370 439 716 779
CV8 7B65 402 364
CV9 7B72 411 408
CX0 7B37 353 333 334
CX1 7B2B 342 336 338
DATAS 7A50 173 227
DFCNT 7A33 132
DFILE 7A4F 172 225
DIM10 7C3A 597 594
DIMED 7C1E 578
DOC 7B5B 389 246
DOCC 7D5F 861 773
ENDC 7A48 165 211
EOFS 7A25 101 337 351 495 518 918
EOFST 7A2A 106 898 909 917
EQCOO 7B58 386 288
EQOP 7D5E 859 860
EQUC 7A4C 169 219
ER25 7BF9 534 528
ERID 7BA2 463 502
ERNO 7BA0 461 240 249 254 263 484 509 668 721 845
ERRCN 7A4D 170 221
ERROR 7A2D 109 151 921
EXTRA 7DC8 926 567 715 778 944
FIOC 7A49 166 213
FNAME 7A2E 110
FORC 7A4B 168 217
FRAN 7DE9 955 949
FRANK 7DDE 944 938
GOTOC 7B5A 388 237
H6000 7C6B 645 743
H7E00 7C6A 644 742
H8000 7C6C 646 747 752
HACK 7DA5 896 882 885 888
IDSV1 7A52 178 187 209 231 235 286 292 294 302 354 358 488 492
581 771
IFC 7B5C 390 251
IHI 7C55 622 558
ILOW 7C54 621 556
IND 7C56 623 472 548 550 560 562 712 903
INST 7B8A 433 423 427
INST1 7B9D 458 422
INST2 7B9E 459 426
IOCS 7A32 122
JDC 7CB0 711 692
JFF 7DC4 921 919
LMQZ 7D1E 798 809 816 818 854
LP 7D92 883 899
LPAR 7C57 624 242 407 573 806
LXE 7D5E 860 851
MEMRY 8000 90 91 92
MK 7C60 634 579 651
MOVE 7A51 177 214 218 222 224 226 228 332 359 519
MRPO 7D62 864 813
MT2 7B63 397 308
MT3 7B64 398 305
NASFT 7DED 964 527 541 965
NAX1 7DF7 971 966 970 978
NAX2 7DF2 968 975 977
NINE 7C5D 631 697
NOS 7C5A 628 676 681 688 707 709
NOST 7C5C 630 696 704
NSW4 7D39 825 841
NXTPH 7A44 160 142 156 157
OLDEN 7D8B 874 604 880 889
ORG 7A23 99
ORGIN 7A36 148
OVERL 7A23 91 95
OZ 7B8D 436 432
PAR 7D61 863 201 808 815
PHID 0026 96 148
PHLEN 0004 94 1009
PTCH1 7E04 980 665 983 1000 1007
PTCH2 7E12 990 566 993
PTH1A 7E23 1004 986
PUT 7DBA 912 894
PUTF 7DBC 917 891
QMRK 7D60 862 823
QX1 7B91 443 428
QX2 7B9C 454 421
RDC 7B5D 391 257
ROL 7FBC 92 158
RPAR 7C59 626 412 795 834 837
RPARQ 7C62 636 664
S0001 7BA1 462 501 504
S0020 7C61 635 776
S0080 7C64 638 612
S0100 7C63 637 598
S0400 7C65 639 549
S07FC 7B62 396 180 490
S4000 7C66 640 561
S8000 7B9F 460 473
SAVE 7D87 870 927 929
SAVES 7D8A 873 896 897
SEMIC 7B5F 393 276
SEMS 7C58 625 662 786 953
SFF 7BA3 464 430
SIGN1 7D86 869 932
SOFGT 7A29 105 910
SOFNS 7A27 103 768 881
SOFS 7A24 100 150
SOFST 7A26 102 307 757 928
SOFXT 7A28 104 911
SORF 7A30 111
SS1 7C67 641 655
STOOK 7D8C 878 714 920 991
SW1 7B4D 375 191 244 264 788 797 817
SW10 7B56 384 199 480 679 735 937 940 994 999
SW11 7E22 1002 987 992 998
SW2 7B4E 376 192 255 266 783 789
SW3 7B4F 377 229 234 284 327 584 853
SW4 7B50 378 193 261 268 825 843
SW5 7B51 379 194 312 331 368 941
SW6 7B52 380 195 409 415 523
SW7 7B53 381 196 416 539
SW8 7B54 382 197 290 402 586 588
SW9 7B55 383 198 404 414 589
SWCS 7D89 872 713 890 913
SXB1 7DE0 948 366 942 954 956
TABLE 7B97 449 420 421 428
TAM 7C19 568
TEN 7C5E 632 700
THRE 7D88 871 931
WAIT 7A3E 156 212 922
WORD1 7C52 619 476 525 554 674 699 706 730 741 745 748 760 884
905 974
WORD2 7C53 620 474 479 544 547 727 734 750 753 763 887 907
WTC 7B5E 392 259
XR1SV 7B18 321 301
XX1 7C94 689 710
YEQZ 7CF0 765 761
YY0 7CE6 759 770
YY1 7CF1 766 758
YY2 7D00 775
YYX 7CD0 741 732
YYZ 7CFA 771 764
YYZQ 7D04 778 774
YZ1 7C5F 633 766 767
ZEROT 7CD2 742 749
ZSLT 7CDD 750 744