1 /OPERATING SYSTEM FOR ROGALGOL 2 3 /INCLUDES BINARY LOADING 4 /AND LOADING OF FIELD FOR CODE FROM 13600 5 /TO USE NEW FORMAT FLOATING POINT NUMBERS 6 /ADDRESSES OF NEW FPP ROUTINES 7 SINE=5200 8 LN=5460 9 COS=5252 10 FLEXP=5257 11 ARCTAN=5400 12 SQROOT=6600 13 DOFIX=5040 14 FLOAT=5752 15 FONE=5346 16 FGET=5600 17 FPUT=5663 18 FADD=5627 19 FSUB=5734 20 FMUL=5636 21 FDIV=5700 22 FNEG=7560 23 FINPUT=7000 24 FOUTP=7200 25 DOFADD=6000 26 DOFMUL=6623 27 DOFDIV=6200 /THESE THREE ASSUME OPERAND IS ALREADY PLACED 28 PSDMUY=6336 29 PSDDVI=6714 /INTEGER MULT AND DIV NOW PART OF ARITHMETIC ROUTINES 30 CHAR=57 31 DSWIT=60 32 33 FIELD 0 34 35 000175 0203 *175; 203; 0; INIT /SO 16K CAN USE F0 FOR HANDLERS 000176 0000 000177 0614 36 000200 6213 CDF CIF 10; JMS I .+1; 1200 000201 4602 000202 1200 37 /PROG STARTS CDF CIF 10; JMP I 177 38 39 FIELD 1 40 41 /SHORT ROUTINES TO HOLE IN FPP 42 *5000 43 015000 0000 FNDLVL, 0 /SET T1 TO POINT AT LEVEL IN AC 44 015001 7041 CIA; DCA T2; TAD 22; DCA T1 015002 3002 015003 1022 015004 3001 45 015005 1401 FNDL1, TAD I T1; TAD T2; SNA CLA; JMP I FNDLVL 015006 1002 015007 7650 015010 5600 46 015011 7326 CLA CLL CML RTL; TAD T1; DCA T1 015012 1001 015013 3001 47 015014 1401 TAD I T1; DCA T1; JMP FNDL1 015015 3001 015016 5205 48 49 015017 4434 CHIN, NPOP; DCA DEV; JMS I .+2; JMP I SNEXT; INDEV 015020 3031 015021 4623 015022 5436 015023 1537 50 015024 4472 XAND, POP; DCA T1; NPOP; AND T1; JMP I SNEXT 015025 3001 015026 4434 015027 0001 015030 5436 51 015031 0000 TEM, 0; 0; 0 /NOT THE ONE USED BY FPP 015032 0000 015033 0000 52 53 *1 54 010001 0000 T1, 0 55 010002 0000 T2, 0 56 010003 0000 T3, 0 57 010004 0000 T4, 0 58 010005 0000 T5, 0 59 010006 0000 LAC, 0 / USED BY LOADER 60 010007 1200 ERROR=JMS I . ; ERR 61 62 /21 IS BASE OF WORKING STACK ACTIVE IN CURRENT LEVEL 63 /22 POINTS AT START OF CURRENT LEVEL 64 NFSPAD=23 /ADDRESS OF NEXT FREE VARIABLE SPACE 65 ABAS=24 66 SW1=25 67 WORD=26 68 PC=10 69 EKOSW=30 70 DEV=31 71 SP=32 72 TSP=27 73 FLAC=44 74 75 *33 76 010033 0000 SUDOMQ, 0 77 010034 1333 NPOP=JMS I .; XNPOP 78 010035 0223 PNEXT, PNEX 79 010036 0365 SNEXT, SNEX 80 010037 0225 NEXT, NEX 81 *62 82 010062 1217 AKBCHK, KBCHK 83 010063 0320 VADR=JMS I .; XVADR 84 010064 0200 NEXT6=JMS I .; XNEXT6 85 010065 0254 STAK=JMS I .; XSTAK 86 010066 0261 UNSTAK=JMS I .; XUNSTA 87 010067 0266 ISTAK=JMS I .; XISTA 88 010070 0303 IUNSTAK=JMS I .; XIUNST 89 010071 1545 XOUT, OUTDEV 90 010072 1355 POP=JMS I .; XIPOP 91 010073 0240 FPOP=JMS I .; XPOP 92 010074 0244 FOPOP=JMS I .; XOPOP 93 010075 0250 FPUSH=JMS I .; XPUSH 94 010076 1665 PARAM=JMS I .; XPARAM 95 010077 1537 XIND, INDEV 96 97 98 *100 99 010100 0225 NEX; ARR; FORMAT; RFP; PUT; STRING; PRINT; CHIN; CHOUT /CODES 0-8 010101 2220 010102 0334 010103 1315 010104 2214 010105 0412 010106 2027 010107 5017 010110 0231 100 010111 0610 J; EX; EN; GET; ADD; IGET; IPUT /CODES 9-15 010112 1706 010113 0417 010114 1661 010115 0763 010116 1724 010117 1734 101 010120 0745 SET; NEG; POW; MUL; DIV; SUB; EZ; GZ; LZ /CODES 16-24 010121 2205 010122 0646 010123 0701 010124 0711 010125 1702 010126 2365 010127 2210 010130 0362 102 010131 1747 ANYGET; ANYPUT; STFUN; JNT; PNEX; NOT; XAND; OR; EQUIV /CODES 25-33 010132 1746 010133 1474 010134 1245 010135 0223 010136 1766 010137 5024 010140 0737 010141 1324 103 010142 1061 FORST; IOC; EP; GP; GG; SFORM; SKIP; ISIGN; SETH /CODES 34-42 010143 2354 010144 0416 010145 0330 010146 0766 010147 2164 010150 1052 010151 1256 010152 0222 104 010153 1270 FIX; FLS1; FCONS; FLNEG; SETLAB; SWITCH; RPOW; FLMPY /CODES 43-50 010154 1301 010155 1403 010156 1413 010157 0755 010160 2067 010161 1514 010162 1430 105 010163 1305 FLS2; FLDIV; FLADD; FLSUB; PFORM; FSIGN; JF; ENF /CODES 51-58 010164 1426 010165 1433 010166 1432 010167 1731 010170 1467 010171 2116 010172 2133 106 010173 2132 EPF; FSTR; SVS; GFORM; STOP /CODES 59-63 010174 2143 010175 1713 010176 1755 010177 1207 107 108 *200 109 010200 0000 XNEXT6, 0; ISZ SW1; JMP NEXWD 010201 2025 010202 5206 110 010203 1026 TAD WORD; AND (77; JMP I XNEXT6 010204 0377 010205 5600 111 XCDF1, 112 010206 6201 NEXWD, CDF; TAD I PC; CDF 10 010207 1410 010210 6211 113 010211 3026 DCA WORD; CLA CMA; DCA SW1 010212 7240 010213 3025 114 010214 1026 TAD WORD; RTR; RTR; RTR; AND (77; JMP I XNEXT6 010215 7012 010216 7012 010217 7012 010220 0377 010221 5600 115 116 010222 4200 SETH, JMS XNEXT6 117 010223 3432 PNEX, DCA I SP; JMS DECSP 010224 4347 118 010225 4200 NEX, JMS XNEXT6; TAD (JMP I 100; DCA .+1; HLT 010226 1376 010227 3230 010230 7402 119 120 010231 4472 CHOUT, POP; DCA T1; POP; DCA DEV 010232 3001 010233 4472 010234 3031 121 010235 1001 TAD T1; JMS I XOUT; JMP NEX 010236 4471 010237 5225 122 123 010240 0000 XPOP, 0; TAD (FLAC; JMS XIUNST; JMP I XPOP 010241 1375 010242 4303 010243 5640 124 010244 0000 XOPOP, 0; TAD (TEM; JMS XIUNST; JMP I XOPOP 010245 1374 010246 4303 010247 5644 125 010250 0000 XPUSH, 0; TAD (FLAC; JMS XISTA; JMP I XPUSH 010251 1375 010252 4266 010253 5650 126 127 010254 0000 XSTAK, 0; TAD I XSTAK; ISZ XSTAK; JMS XISTA; JMP I XSTAK 010255 1654 010256 2254 010257 4266 010260 5654 128 010261 0000 XUNSTA, 0; TAD I XUNSTA; ISZ XUNSTA; JMS XIUNST; JMP I XUNSTA 010262 1661 010263 2261 010264 4303 010265 5661 129 130 010266 0000 XISTA, 0; TAD (-1; DCA 11; JMS DECSP; TAD SP; DCA 12 010267 1373 010270 3011 010271 4347 010272 1032 010273 3012 131 010274 1411 TAD I 11; DCA I 12 010275 3412 132 010276 1411 TAD I 11; DCA I 12 010277 3412 133 010300 1411 TAD I 11; DCA I 12; JMP I XISTA 010301 3412 010302 5666 134 135 010303 0000 XIUNST, 0; TAD (-1; DCA 11 010304 1373 010305 3011 136 010306 2032 ISZ SP; TAD I SP; DCA I 11 010307 1432 010310 3411 137 010311 2032 ISZ SP; TAD I SP; DCA I 11 010312 1432 010313 3411 138 010314 2032 ISZ SP; TAD I SP; DCA I 11; JMP I XIUNST 010315 1432 010316 3411 010317 5703 139 140 010320 0000 XVADR, 0; NEXT6; TAD (-1; DCA XSTAK; TAD XSTAK 010321 4464 010322 1373 010323 3254 010324 1254 141 010325 7104 CLL RAL; TAD XSTAK; JMP I XVADR 010326 1254 010327 5720 142 143 010330 4463 GP, VADR; TAD 20; IUNSTA; JMP NEX 010331 1020 010332 4470 010333 5225 144 145 010334 4472 FORMAT, POP; DCA 60; POP; DCA 57; TAD 57 010335 3060 010336 4472 010337 3057 010340 1057 146 010341 3056 DCA 56; FPOP; POP; DCA DEV; JMS FOUTP; JMP I NEXT 010342 4473 010343 4472 010344 3031 010345 4772 010346 5437 147 148 010347 0000 DECSP, 0; CLA CLL CMA RTL; TAD SP; DCA SP 010350 7346 010351 1032 010352 3032 149 010353 4771 JMS TESTSP; JMP I DECSP 010354 5747 150 151 010355 0000 ABS, 0; CLA CLL CMA RAR; AND FLAC; DCA FLAC; JMP I ABS 010356 7350 010357 0044 010360 3044 010361 5755 152 153 010362 4434 LZ, NPOP; SPA CLA; CMA 010363 7710 010364 7040 154 010365 3427 SNEX, DCA I TSP; JMP NEX 010366 5225 155 156 010367 0000 DUM, 0; JMP I DUM 010370 5767 157 158 010371 0547 *400 010372 7200 010373 7777 010374 5031 010375 0044 010376 5500 010377 0077 159 160 010400 0000 DOSTR, 0; NEXT6; SNA; JMP I DOSTR 010401 4464 010402 7450 010403 5600 161 010404 1377 TAD (-40; SPA; TAD (100; TAD (240 010405 7510 010406 1376 010407 1375 162 010410 4471 JMS I XOUT; JMP DOSTR+1 010411 5201 163 164 010412 4472 STRING, POP; DCA DEV; JMS DOSTR; JMP I NEXT 010413 3031 010414 4200 010415 5437 165 166 167 010416 4464 EP, NEXT6 168 010417 3046 EN, DCA FLAC+2 /PARAMETERS TO FLAC+2 169 010420 1010 TAD PC; IAC; DCA T1 /RETURN ADDRESS TO T1 010421 7001 010422 3001 170 010423 7240 CLA CMA; PARAM 010424 4476 171 010425 3010 EPX, DCA PC /PROCEDURE ADDRESS TO PC 172 010426 4476 PARAM; DCA T3 /NEW FIXED SPACE TO T3 010427 3003 173 010430 7040 CMA; TAD 23; DCA 11 /ADDRESS V1 NEW LEVEL 010431 1023 010432 3011 174 010433 4464 NEXT6; DCA I 11 /V1/1=PROCEDURE NUMBER 010434 3411 175 010435 1001 TAD T1; DCA I 11 /V1/2=RETURN ADDRESS 010436 3411 176 010437 1022 TAD 22; DCA I 11 /V1/3=BASE LAST LEVEL 010440 3411 177 010441 1021 TAD 21; DCA I 11 /V2/1=STACK BASE OF LAST LEVEL 010442 3411 178 010443 1024 TAD 24; DCA I 11 /V2/2=ARRAY BASE LAST LEVEL 010444 3411 179 010445 1023 TAD 23; DCA 22 /NEW V1=OLD FREE SPACE 010446 3022 180 010447 1003 TAD T3; TAD 22; DCA 23 /NEW FREE SPACE=BASE+FIXED SPACE 010450 1022 010451 3023 181 010452 4347 JMS TESTSP /CHECK ENOUGH ROOM 182 010453 4774 JMS ALEV0 /CREATE ARRAY LEVEL 0 183 010454 4464 NEXT6; CIA; TAD FLAC+2 010455 7041 010456 1046 184 010457 7640 SZA CLA;E1, ERROR /CHECK NO. PARAMS ACTUAL=EXPECTED 010460 4407 185 010461 1046 TAD FLAC+2; SNA; JMP ALDONE /ENTER IF NONE 010462 7450 010463 5344 186 010464 7104 CLL RAL; TAD FLAC+2 /LAST PARAMETER=PARMS+3 010465 1046 187 010466 1373 TAD (6; TAD 22; DCA T2 /ADDRESS THEREOF 010467 1022 010470 3002 188 010471 1046 TAD FLAC+2; CIA; DCA T3 /COUNT PARAMETERS 010472 7041 010473 3003 189 010474 4472 EP1, POP; DCA T4; NEXT6; DCA T1 /GET ACTUAL & EXPECTED TYPE 010475 3004 010476 4464 010477 3001 190 010500 1001 TCHK, TAD T1; CIA; TAD T4; SNA CLA; JMP OK /OK IF SAME TYPE 010501 7041 010502 1004 010503 7650 010504 5335 191 010505 1001 TAD T1; TAD T4; TAD (-3; SNA CLA; JMP CONV /CONVERT INT/REAL 010506 1004 010507 1372 010510 7650 010511 5322 192 010512 1004 TAD T4; TAD (-24; SPA;E2, ERROR /FAIL ACTUAL NOT NAME 010513 1371 010514 7510 010515 4407 193 010516 3004 DCA T4; POP; ISTAK; JMP TCHK /ELSE DEREF AND TRY AGAIN 010517 4472 010520 4467 010521 5300 194 010522 7040 CONV, CMA; TAD T1; SZA CLA; JMP IEXPECT /WHICH TYPE EXPECTED? 010523 1001 010524 7640 010525 5332 195 010526 4472 POP; DCA FLAC; JMS FLOAT; JMP OK-1 /YES, SO FLOAT IT 010527 3044 010530 4770 010531 5334 196 010532 4473 IEXPEC, FPOP; JMS XFIX; FPUSH 010533 4767 010534 4475 197 010535 1002 OK, TAD T2; IUNSTAK; CLA CLL CMA RTL; TAD T2; DCA T2 010536 4470 010537 7346 010540 1002 010541 3002 198 010542 2003 ISZ T3; JMP EP1 /TEST IF ALL DONE 010543 5274 199 010544 1032 ALDONE, TAD SP; DCA 21; JMP I NEXT 010545 3021 010546 5437 200 201 010547 0000 TESTSP, 0; TAD 23; CIA CLL; TAD SP; SNL CLA;E3, ERROR 010550 1023 010551 7141 010552 1032 010553 7620 010554 4407 202 010555 6031 KSF; JMP I TESTSP; JMS I AKBCHK; JMP I TESTSP 010556 5747 010557 4462 010560 5747 203 204 010567 1274 PAGE 010570 5752 010571 7754 010572 7775 010573 0006 010574 0602 010575 0240 010576 0100 010577 7740 205 206 *600 207 208 010600 2440 XEINT, EINT 209 010601 4777 STSP, 4777 /JUST BELOW HOLE IN FPP 210 010602 0000 ALEV0, 0 /CREATE ARRAY LEVEL 0 211 010603 1023 TAD 23; DCA ABAS /STARTS AT FREE SPACE 010604 3024 212 010605 3423 DCA I 23; ISZ 23; JMP I ALEV0 /SET ZERO LEVEL 010606 2023 010607 5602 213 214 010610 7240 J, CLA CMA; PARAM; DCA PC; JMP I NEXT 010611 4476 010612 3010 010613 5437 215 216 010614 3025 INIT, DCA SW1; TAD P201; DCA PC 010615 1245 010616 3010 217 010617 7001 IAC; DCA EKOSW /TELETYPE ECHO 010620 3030 218 010621 1200 TAD XEINT; DCA 20; DCA I 20 /VARAIBLES START AFTER INTERPRETER 010622 3020 010623 3420 219 010624 1020 TAD 20; DCA 22 /LOCALS ALSO 010625 3022 220 010626 1020 TAD 20 221 010627 6201 XCDF2, CDF; TAD I (176; CDF 10; DCA 23 /NEXT FREE SPACE 010630 1777 010631 6211 010632 3023 222 010633 1201 TAD STSP; DCA SP; JMS ALEV0 010634 3032 010635 4202 223 010636 1032 TAD SP; DCA 21 /21 IS WORKING STACK BASE OF CURRENT LEVEL 010637 3021 224 010640 6014 ADEVIN, RFC; TLS; PLS; KCC; JMP I NEXT 010641 6046 010642 6026 010643 6032 010644 5437 225 010645 0201 P201, 201 226 227 010646 3277 POW, DCA PPOW; JMS FGET; FONE /1.0 TO FLAC 010647 4776 010650 5346 228 010651 4472 POP; DCA T1 /EXPONENT TO T1 010652 3001 229 010653 1001 TAD T1; SNA; JMP EXFLT /ZERO EXPONENT? 010654 7450 010655 5775 230 010656 7510 SPA; ISZ PPOW /PPOW 1 FOR NEGATIVE EXPONENTS 010657 2277 231 010660 7500 SMA; CIA; DCA PCOUNT /COUNT OPERATIONS 010661 7041 010662 3300 232 010663 1277 TAD PPOW; TAD (JMS I PMUL; DCA POWINS 010664 1374 010665 3270 233 010666 1032 POW1, TAD SP; IAC 010667 7001 234 010670 7402 POWINS, HLT; NOP /MULTIPLY OR DIVIDE FLAC BY MANTISSA 010671 7000 235 010672 2300 ISZ PCOUNT; JMP POW1; JMP EXFLT 010673 5266 010674 5775 236 010675 5636 PMUL, FMUL; FDIV 010676 5700 237 010677 0000 PPOW, 0 238 010700 0000 PCOUNT, 0 239 240 AAAMUL=. 241 010701 3004 MUL, DCA T4; JMS SIGN1; DCA M1; JMS SIGN1 010702 4330 010703 3307 010704 4330 242 010705 3033 DCA SUDOMQ; JMS PSDMUY 010706 4773 243 010707 0000 M1, 0; JMP SIGN2 010710 5320 244 245 AAADIV=. 246 010711 3004 DIV, DCA T4; JMS SIGN1; DCA D1; JMS SIGN1 010712 4330 010713 3317 010714 4330 247 010715 3033 DCA SUDOMQ; JMS PSDDVI 010716 4772 248 010717 0000 D1, 0 249 010720 7200 SIGN2, CLA; TAD T4; RAR; CLA 010721 1004 010722 7010 010723 7200 250 010724 1033 TAD SUDOMQ; SZL; CIA; JMP I PNEXT 010725 7430 010726 7041 010727 5435 251 010730 0000 SIGN1, 0; POP; SPA; ISZ T4; SPA; CIA; JMP I SIGN1 010731 4472 010732 7510 010733 2004 010734 7510 010735 7041 010736 5730 252 253 AAAOR=. 254 010737 4472 OR, POP; SNA CLA; JMP I NEXT 010740 7650 010741 5437 255 010742 4434 NPOP; CLA CMA; JMP I SNEXT 010743 7240 010744 5436 256 257 010745 4464 SET, NEXT6; CLL RTL; RTL; RTL 010746 7106 010747 7006 010750 7006 258 010751 3001 DCA T1; NEXT6; TAD T1; JMP I PNEXT 010752 4464 010753 1001 010754 5435 259 260 010755 4476 SETLAB, PARAM; DCA FLAC+2; TAD 22; DCA FLAC+1 010756 3046 010757 1022 010760 3045 261 010761 4475 FPUSH; JMP I NEXT 010762 5437 262 263 010763 4472 ADD, POP; NPOP; JMP I SNEXT 010764 4434 010765 5436 264 265 010766 4463 GG, VADR; TAD 20; ISTAK; JMP I NEXT 010767 1020 010770 4467 010771 5437 266 267 010772 6714 *1000 010773 6336 010774 4675 010775 1435 010776 5600 010777 0176 268 269 011000 0000 DIN, 0;E4, ERROR /LOC 101 BECOMES CDF CIF 011001 4407 270 011002 4604 JMS I .+2; JMP I DIN 011003 5600 271 011004 7402 ADIN0, HLT /1004 GETS ADDRESS OF DISC INPUT ROUTINE 272 273 011005 0000 OCTOUT, 0; RAL; DCA SUDOMQ; TAD (-4; DCA DIN 011006 7004 011007 3033 011010 1377 011011 3200 274 011012 1033 OCTO1, TAD SUDOMQ; RAL; RTL; DCA SUDOMQ 011013 7004 011014 7006 011015 3033 275 011016 1033 TAD SUDOMQ; AND (7; TAD (260; JMS TTO; CLA 011017 0376 011020 1375 011021 4774 011022 7200 276 011023 2200 ISZ DIN; JMP OCTO1; JMP I OCTOUT 011024 5212 011025 5605 277 278 ATTIN=. 279 011026 0000 TTI, 0; TAD EKOSW; SZA CLA; JMP EKO 011027 1030 011030 7640 011031 5234 280 011032 4773 JMS LSI; JMP I TTI 011033 5626 281 011034 4773 EKO, JMS LSI; JMS TTO 011035 4774 282 011036 1251 TAD XM215; SNA; JMP CR 011037 7450 011040 5243 283 011041 1247 CROUT, TAD X215; JMP I TTI 011042 5626 284 011043 1250 CR, TAD X212; JMS TTO; CLA; JMP CROUT 011044 4774 011045 7200 011046 5241 285 011047 0215 X215, 215 286 011050 0212 X212, 212 287 011051 7563 XM215, -215 288 289 011052 4472 SKIP, POP; DCA DEV; TAD X215; JMS I XOUT 011053 3031 011054 1247 011055 4471 290 011056 1250 TAD X212; JMS I XOUT; JMP I NEXT 011057 4471 011060 5437 291 292 011061 4472 FORST, POP; DCA FORAD /ADDRESS OF VARIABLE 011062 3274 293 011063 4474 FOPOP; FPOP /FINAL TO TEM+, INCREMENT TO FLAC 011064 4473 294 011065 7040 CMA; POP; SZA CLA; JMP INTFOR 011066 4472 011067 7640 011070 5312 295 011071 1044 TAD FLAC; JMS FORST2 011072 4325 296 011073 4772 JMS FADD 297 011074 0000 FORAD, 0 /ADD VARIABLE TO INCREMENT 298 011075 1274 TAD FORAD; JMS FPUT; NOP /RESTORE IT 011076 4771 011077 7000 299 011100 4770 JMS FSUB; TEM /CURRENT-FINAL 011101 5031 300 011102 1044 TAD FLAC /GET SIGN OF CURRENT - FINAL 301 011103 7510 SPA; CLA CMA /ALLOW FOR 4000 011104 7240 302 011105 2004 FORCON, ISZ T4; CIA /CHANGE ITS SIGN IF INCREMENT POSITIVE 011106 7041 303 011107 7700 SMA CLA; CMA; JMP I SNEXT /SET 'TRUE' FOR DO AGAIN 011110 7040 011111 5436 304 011112 1046 INTFOR, TAD FLAC+2; JMS FORST2 011113 4325 305 011114 2274 ISZ FORAD; ISZ FORAD /ADJUST ADDRESS 011115 2274 306 011116 1046 TAD FLAC+2; TAD I FORAD; DCA I FORAD /DO INCREMENT 011117 1674 011120 3674 307 011121 1767 TAD TEM+2; CIA; TAD I FORAD /CURRENT - FINAL 011122 7041 011123 1674 308 011124 5305 JMP FORCON /CONTINUE AS FOR REAL 309 310 011125 0000 FORST2, 0 /SIGN OF INCREMENT TO T4, ZERO FLAC IF NO INCREMENTING 311 011126 7710 SPA CLA; CMA; DCA T4 /T4=-1 FOR DECREMENT 011127 7040 011130 3004 312 011131 4434 NPOP; SZA CLA; JMP I FORST2 011132 7640 011133 5725 313 011134 3044 DCA FLAC; DCA FLAC+1; DCA FLAC+2 011135 3045 011136 3046 314 011137 5725 JMP I FORST2 /NO INCREMENT IF S4=0 315 316 011140 0000 MESS, 0; CLA; TAD I MESS; ISZ MESS; SNA; JMP I MESS 011141 7200 011142 1740 011143 2340 011144 7450 011145 5740 317 011146 4774 JMS TTO; JMP MESS+1 011147 5341 318 319 011150 0000 LUNST, 0 /TAKE OFF TOP VARIABLE LEVEL 320 011151 1022 TAD 22; DCA 11 /SET TO GET V1/2 011152 3011 321 011153 1022 TAD 22; DCA 23 /RESTORE FREE SPACE POINTER 011154 3023 322 011155 1411 TAD I 11; DCA T1 /RETURN ADDRESS TO T1 011156 3001 323 011157 1411 TAD I 11; DCA 22 011160 3022 324 011161 1411 TAD I 11; DCA 21 /RESTORE WORKING STACK BASE 011162 3021 325 011163 1411 TAD I 11; DCA 24; JMP I LUNST 011164 3024 011165 5750 326 327 328 011167 5033 PAGE 011170 5734 011171 5663 011172 5627 011173 1674 011174 2104 011175 0260 011176 0007 011177 7774 329 330 *1200 331 332 011200 0000 ERR, 0; CDF 10; JMS MESS; 277; 0 011201 6211 011202 4777 011203 0277 011204 0000 333 011205 1200 TAD ERR; JMS OCTOUT 011206 4776 334 011207 6032 WAIT, KCC; JMS MESS; 215; 212; 336; 0 011210 4777 011211 0215 011212 0212 011213 0336 011214 0000 335 011215 4217 JMS KBCHK; JMP .-1 011216 5215 336 337 011217 0000 KBCHK, 0; 338 011220 7600 X7600, 7600; KSF; JMP I KBCHK 011221 6031 011222 5617 339 011223 6034 KRS; TAD (-220; SNA; JMP I GOCP 011224 1375 011225 7450 011226 5732 340 011227 1374 TAD (220-223; SNA; JMP WAIT 011230 7450 011231 5207 341 011232 7001 IAC; SNA; JMP RESUM 011233 7450 011234 5243 342 011235 1373 TAD (222-203; SZA CLA; JMP I KBCHK 011236 7640 011237 5617 343 011240 6032 KCC; CDF CIF; JMP I X7600 011241 6203 011242 5620 344 011243 6032 RESUM, KCC; JMP I NEXT 011244 5437 345 346 STOP=WAIT 347 348 011245 4476 JNT, PARAM; DCA T1; POP; SZA CLA; JMP I NEXT 011246 3001 011247 4472 011250 7640 011251 5437 349 011252 7040 CMA; TAD T1; DCA PC; JMP I NEXT 011253 1001 011254 3010 011255 5437 350 351 011256 4472 ISIGN, POP; CIA; NPOP; SNA; JMP I SNEXT 011257 7041 011260 4434 011261 7450 011262 5436 352 011263 7004 RAL; CLA IAC; SZL; CLA CMA; JMP I SNEXT 011264 7201 011265 7430 011266 7240 011267 5436 353 354 011270 4772 FIX, JMS GETS1; JMS DOFIX; TAD FLAC; JMP I SNEXT 011271 4771 011272 1044 011273 5436 355 356 011274 0000 XFIX, 0; JMS DOFIX; TAD FLAC; DCA FLAC+2; JMP I XFIX 011275 4771 011276 1044 011277 3046 011300 5674 357 358 011301 4434 FLS1, NPOP; DCA FLAC; JMS FLOAT; JMP EXFLT 011302 3044 011303 4770 011304 5767 359 360 011305 4474 FLS2, FOPOP; POP; DCA FLAC; JMS FLOAT; FPUSH 011306 4472 011307 3044 011310 4770 011311 4475 361 011312 4465 STAK; TEM; JMP I NEXT 011313 5031 011314 5437 362 363 011315 4434 RFP, NPOP; DCA DEV; JMS FINPUT; TAD DSWIT; SNA CLA 011316 3031 011317 4766 011320 1060 011321 7650 364 011322 5317 JMP RFP+2; JMP EXFLT 011323 5767 365 366 011324 4472 EQUIV, POP; CIA; NPOP; SNA CLA; CMA; JMP I SNEXT 011325 7041 011326 4434 011327 7650 011330 7040 011331 5436 367 011332 0614 GOCP, INIT 368 369 011333 0000 XNPOP, 0; DCA SIGN; TAD (3; TAD SP; DCA TSP 011334 3343 011335 1365 011336 1032 011337 3027 370 011340 1343 TAD SIGN; TAD I TSP; JMP I XNPOP 011341 1427 011342 5733 371 372 011343 0000 SIGN, 0 /FLAC=SIGN(FLAC) 373 011344 1044 TAD FLAC; SNA; JMP SZ 011345 7450 011346 5353 374 011347 7004 RAL; CLA IAC; SZL; CLA CMA 011350 7201 011351 7430 011352 7240 375 011353 3046 SZ, DCA FLAC+2; JMP I SIGN 011354 5743 376 377 011355 0000 XIPOP, 0; ISZ SP; ISZ SP; ISZ SP; TAD I SP; JMP I XIPOP 011356 2032 011357 2032 011360 2032 011361 1432 011362 5755 378 379 011365 0003 *1400 011366 7000 011367 1435 011370 5752 011371 5040 011372 1523 011373 0017 011374 7775 011375 7560 011376 1005 011377 1140 380 381 011400 2400 XINDLS, INDLST 382 011401 2420 XOUTLS, OUTLST 383 011402 0020 DLSIZE, 20 384 385 011403 4476 FCONS, PARAM; DCA FLAC; PARAM; DCA FLAC+1 011404 3044 011405 4476 011406 3045 386 011407 4476 PARAM; DCA FLAC+2; FPUSH; JMP I NEXT 011410 3046 011411 4475 011412 5437 387 388 011413 4215 FLNEG, JMS FLNEGS; JMP I NEXT 011414 5437 389 390 011415 0000 FLNEGS, 0 391 011416 7201 CLA IAC; TAD SP; DCA T1 /ADDRESS OF EXPONENT 011417 1032 011420 3001 392 011421 1401 TAD I T1; SZA; TAD (4000; DCA I T1 /DONT NEGATE ZERO 011422 7440 011423 1377 011424 3401 393 011425 5615 JMP I FLNEGS 394 395 011426 1266 FLDIV, TAD XFLAD+2; JMP FLADD+1 011427 5234 396 011430 1265 FLMPY, TAD XFLAD+1; JMP FLADD+1 011431 5234 397 011432 4215 FLSUB, JMS FLNEGS 398 011433 1264 FLADD, TAD XFLAD; JMS DOFP 011434 4246 399 011435 1032 EXFLT, TAD SP; DCA 11 /STORE FLAC BACK IN S1 011436 3011 400 011437 1044 TAD FLAC; DCA I 11 011440 3411 401 011441 1045 TAD FLAC+1; DCA I 11 011442 3411 402 011443 1046 TAD FLAC+2; DCA I 11; JMP I NEXT 011444 3411 011445 5437 403 404 011446 0000 DOFP, 0 405 011447 3001 DCA T1 /ADDRESS OF ROUTINE 406 011450 2032 ISZ SP; TAD I SP; DCA 40 011451 1432 011452 3040 407 011453 2032 ISZ SP; TAD I SP; DCA 41 011454 1432 011455 3041 408 011456 2032 ISZ SP; TAD I SP; DCA 42 /OPERAND WAS IN S1 011457 1432 011460 3042 409 011461 4323 JMS GETS1; JMS I T1 011462 4401 410 011463 5646 JMP I DOFP 411 011464 6000 XFLAD, DOFADD; DOFMUL; DOFDIV 011465 6623 011466 6200 412 413 011467 4215 FSIGN, JMS FLNEGS; TAD XFLAD; JMS DOFP /SUBTRACT 011470 1264 011471 4246 414 011472 4776 JMS SIGN; JMP EXFLT /TAKE SIGN 011473 5235 415 416 011474 4323 STFUN, JMS GETS1 /GET OPERAND 417 011475 4464 NEXT6; TAD FUNLST; DCA .+1; 0; JMP EXFLT 011476 1302 011477 3300 011500 0000 011501 5235 418 011502 4701 FUNLST, JMS I .-1 419 011503 6600 SQROOT /FUNCTION 2 IS SQRT 420 011504 5200 SINE /SIN 421 011505 5252 COS /COS 422 011506 5400 ARCTAN /ARCTAN 423 011507 5257 FLEXP /EXP 424 011510 5460 LN /LN 425 011511 1343 SIGN /FUNCTION 8 426 011512 1274 XFIX 427 011513 0355 ABS 428 429 011514 4474 RPOW, FOPOP /EXPONENT TO TEM 430 011515 4323 JMS GETS1 /GET MANTISSA 431 011516 4710 JMS I FUNLST+6; JMS FMUL; TEM /LN, *EXPONENT 011517 4775 011520 5031 432 011521 4707 JMS I FUNLST+5; JMP EXFLT /EXPONENTIAL 011522 5235 433 434 011523 0000 GETS1, 0 /GET S1 TO FLAC, LEAVE SP WHERE IT IS 435 011524 1032 TAD SP; DCA 11 011525 3011 436 011526 1411 TAD I 11; DCA FLAC 011527 3044 437 011530 1411 TAD I 11; DCA FLAC+1 011531 3045 438 011532 1411 TAD I 11; DCA FLAC+2 011533 3046 439 011534 1011 TAD 11; DCA TSP; JMP I GETS1 011535 3027 011536 5723 440 441 011537 0000 INDEV, 0; CLA; DCA T5; TAD XINDLS; JMS CHKDEV; JMP I INDEV 011540 7200 011541 3005 011542 1200 011543 4353 011544 5737 442 011545 0000 OUTDEV, 0; DCA T5; TAD XOUTLS; JMS CHKDEV; CLA; JMP I OUTDEV 011546 3005 011547 1201 011550 4353 011551 7200 011552 5745 443 444 011553 0000 CHKDEV, 0; DCA T1; TAD DLSIZE; CLL CIA 011554 3001 011555 1202 011556 7141 445 011557 1031 TAD DEV; SZL;E5, ERROR 011560 7430 011561 4407 446 011562 1202 TAD DLSIZE; TAD T1; DCA T1 /ADDRESS OF ADDRESS 011563 1001 011564 3001 447 011565 1401 TAD I T1; DCA T1; TAD T5 011566 3001 011567 1005 448 011570 4401 JMS I T1; JMP I CHKDEV 011571 5753 449 450 451 011575 5636 PAGE 011576 1343 011577 4000 452 *1600 453 454 011600 0000 SUBSA, 0 /WORK OUT SUBSCRIPT ADDRESS 455 011601 4360 JMS ABSVAD; TAD (2; DCA T1 /ADDRESS ARRAY VARIABLE 011602 1377 011603 3001 456 011604 7040 CMA; TAD I T1; DCA 17 /ADDRESS DOPE VECTOR 011605 1401 011606 3017 457 011607 1417 TAD I 17; CIA; DCA WRDS /=-1 IF ONE WORD 011610 7041 011611 3265 458 011612 1417 TAD I 17; CIA; DCA T3 /COUNT SUBSCRIPTS 011613 7041 011614 3003 459 011615 4464 NEXT6; TAD T3; SZA CLA;E6, ERROR /CHECK NO. OF SUBSCRIPTS 011616 1003 011617 7640 011620 4407 460 011621 1417 TAD I 17; CIA; POP; DCA T1 /1ST SUBS-LOWER BOUND 011622 7041 011623 4472 011624 3001 461 011625 2003 SUBSA3, ISZ T3; SKP; JMP SUBSA1 /ANY MORE SUBSCRIPTS? 011626 7410 011627 5244 462 011630 1417 TAD I 17; DCA SUDOMQ /YES, GET MULTIPLIER FOR IT 011631 3033 463 011632 1417 TAD I 17; CIA; POP; DCA SUBSA2 /NEXT SUBS-LOWER BOUND 011633 7041 011634 4472 011635 3237 464 011636 4776 JMS PSDMUY 465 011637 0000 SUBSA2, 0; TAD SUDOMQ; TAD T1; DCA T1 /TIMES VECTOR, ADD TO ADDRESS 011640 1033 011641 1001 011642 3001 466 011643 5225 JMP SUBSA3 /SEE IF THERES ANY MORE 467 011644 1265 SUBSA1, TAD WRDS; CMA; SNA CLA; JMP SUBSA4 /IF 3 WORDS 011645 7040 011646 7650 011647 5252 468 011650 1001 TAD T1; CLL RAL /MULTIPLY ADDRESS BY 3 011651 7104 469 011652 1001 SUBSA4, TAD T1; IAC; TAD 17; DCA T1 /ADD TO LOWEST ADDRESS 011653 7001 011654 1017 011655 3001 470 011656 2265 ISZ WRDS; ISZ SUBSA; JMP I SUBSA /EXIT 2 IF 2 WORDS 011657 2200 011660 5600 471 AAASA2=SUBSA2 472 AAASA3=SUBSA3 473 474 011661 4463 GET, VADR; TAD 22; ISTAK; JMP I NEXT 011662 1022 011663 4467 011664 5437 475 476 011665 0000 XPARAM, 0; ISZ SW1; NOP 011666 2025 011667 7000 477 011670 6201 XCDF3, CDF 478 011671 1410 TAD I PC; CDF 10; JMP I XPARAM 011672 6211 011673 5665 479 480 WRDS=XPARAM 481 011674 0000 LSI, 0; KSF; JMP .-1; JMS I AKBCHK; KRB; JMP I LSI 011675 6031 011676 5275 011677 4462 011700 6036 011701 5674 482 483 011702 4472 SUB, POP; CIA; NPOP; JMP I SNEXT 011703 7041 011704 4434 011705 5436 484 485 011706 4775 EX, JMS LUNST; DCA SW1; TAD T1; DCA PC; JMP I NEXT 011707 3025 011710 1001 011711 3010 011712 5437 486 487 011713 4464 SVS, NEXT6; CIA; DCA T4 /VARIABLE LEVEL REQUIRED 011714 7041 011715 3004 488 011716 1422 SVS1, TAD I 22; TAD T4; SNA CLA; JMP SAS /DO ARRAYS IF OK 011717 1004 011720 7650 011721 5774 489 011722 4775 JMS LUNST; JMP SVS1 /ELSE TAKE OFF TOP AND TRY AGAIN 011723 5316 490 491 011724 4200 IGET, JMS SUBSA 492 011725 7344 CLA CLL CMA RAL /SUBTRACT 2 IF INTEGER/BOOLEAN 493 011726 1001 TAD T1; ISTAK; JMP I NEXT /WILL STACK 2 JUNK WORDS 011727 4467 011730 5437 494 495 011731 4473 PFORM, FPOP; POP; JMP IPUT+4 /STORE NAME PARAM 011732 4472 011733 5340 496 011734 4473 IPUT, FPOP; JMS SUBSA; JMP IPUT1 011735 4200 011736 5343 497 011737 1001 TAD T1; JMS FPUT; NOP; JMP I NEXT 011740 4773 011741 7000 011742 5437 498 011743 1046 IPUT1, TAD FLAC+2; DCA I T1; JMP I NEXT 011744 3401 011745 5437 499 500 011746 7040 ANYPUT, CMA 501 011747 3003 ANYGET, DCA T3 /SET MARKER 502 011750 4360 JMS ABSVAD 503 011751 2003 ISZ T3; JMP ANYG; IUNSTAK; JMP I NEXT 011752 5356 011753 4470 011754 5437 504 011755 4472 GFORM, POP /GET NAME PARAMETER 505 011756 4467 ANYG, ISTAK; JMP I NEXT 011757 5437 506 507 011760 0000 ABSVAD, 0 /WORK OUT ABSOLUTE VARIABLE ADDRESS 508 011761 4464 NEXT6; JMS FNDLVL; VADR; TAD T1; JMP I ABSVAD 011762 4772 011763 4463 011764 1001 011765 5760 509 510 011766 4434 NOT, NPOP; CMA; JMP I SNEXT 011767 7040 011770 5436 511 512 011772 5000 *2000 011773 5663 011774 2005 011775 1150 011776 6336 011777 0002 513 514 012000 0000 DOUT, 0;E7, ERROR /LOC 2001 BECOMES CDF CIF 012001 4407 515 012002 4604 JMS I .+2; JMP I DOUT 012003 5600 516 012004 7402 ADOUT0, HLT /2004 GETS ADDRESS OF DISK OUTPUT ROUTINE 517 518 012005 4464 SAS, NEXT6; CIA; DCA T1 /REQUIRED ARRAY DEPTH 012006 7041 012007 3001 519 012010 1021 TAD 21; DCA SP /CLEAR WORKING STACK AT LABEL 012011 3032 520 012012 1424 SAS1, TAD I ABAS; TAD T1; SNA CLA; JMP I NEXT /GOT IT? 012013 1001 012014 7650 012015 5437 521 012016 4220 JMS AUNST; JMP SAS1 012017 5212 522 523 012020 0000 AUNST, 0; TAD ABAS; DCA 23 /REDUCE FREE SPACE POINTER 012021 1024 012022 3023 524 012023 2024 ISZ ABAS; TAD I ABAS; DCA ABAS /RESTORE ARRAY BASE POINTER 012024 1424 012025 3024 525 012026 5620 JMP I AUNST 526 527 012027 4472 PRINT, POP; CLL; SPA; CIA CML; DCA SUDOMQ 012030 7100 012031 7510 012032 7061 012033 3033 528 012034 4472 POP; DCA DEV; TAD (255; SZL; JMS I XOUT 012035 3031 012036 1377 012037 7430 012040 4471 529 012041 7200 CLA; JMS PRIN; JMP I NEXT 012042 4244 012043 5437 530 012044 0000 PRIN, 0; STAK; PRIN /SAVE RETURN ADDRESS 012045 4465 012046 2044 531 012047 1033 TAD SUDOMQ; TAD (-12; SMA CLA; JMP GT10 012050 1376 012051 7700 012052 5260 532 012053 1033 TAD SUDOMQ 533 012054 1375 LASTD, TAD (260; JMS I XOUT 012055 4471 534 012056 4473 FPOP; JMP I FLAC /RETURN 012057 5444 535 012060 4774 GT10, JMS PSDDVI; 12; DCA I SP; JMS DECSP; JMS PRIN 012061 0012 012062 3432 012063 4773 012064 4244 536 012065 4472 POP; JMP LASTD 012066 5254 537 538 012067 4472 SWITCH, POP; POP; DCA T1 012070 4472 012071 3001 539 012072 6201 XCDF4, CDF; TAD I T1; CDF 10; JMP SETLAB+1 012073 1401 012074 6211 012075 5772 540 541 012076 0000 HSI, 0; JMS I AKBCHK; RSF; JMP .-2; RRB RFC; JMP I HSI 012077 4462 012100 6011 012101 5277 012102 6016 012103 5676 542 012104 0000 TTO, 0; TSF; JMP .-1; TLS; JMP I TTO 012105 6041 012106 5305 012107 6046 012110 5704 543 012111 0000 HSO, 0; PSF; JMP .-1; PLS; JMP I HSO 012112 6021 012113 5312 012114 6026 012115 5711 544 545 012116 3025 JF, DCA SW1; FPOP; CMA; TAD FLAC+2; DCA PC 012117 4473 012120 7040 012121 1046 012122 3010 546 012123 1045 JF1, TAD FLAC+1; CIA; TAD 22 012124 7041 012125 1022 547 012126 7650 SNA CLA; JMP I NEXT; JMS LUNST; JMP JF1 012127 5437 012130 4771 012131 5323 548 549 012132 4464 EPF, NEXT6 550 012133 3046 ENF, DCA FLAC+2 /NUMBER OF PARAMS 551 012134 1010 TAD PC; DCA T1; DCA SW1 /RETURN ADDRESS TO T1 012135 3001 012136 3025 552 012137 7040 CMA; POP; JMP I .+1; EPX /GET PROCEDURE ADDRESS 012140 4472 012141 5742 012142 0425 553 554 012143 1010 FSTR, TAD PC; DCA T2; CMA; POP; DCA PC /ADDRESS OF STRING 012144 3002 012145 7040 012146 4472 012147 3010 555 012150 4472 POP; DCA DEV 012151 3031 556 012152 4465 STAK; 25; DCA SW1 /SAVE PC ETC. 012153 0025 012154 3025 557 012155 4763 JMS I XDOSTR; UNSTAK; 25 012156 4466 012157 0025 558 012160 1002 TAD T2; DCA PC; JMP I NEXT 012161 3010 012162 5437 559 012163 0400 XDOSTR, DOSTR 560 561 012164 4770 SFORM, JMS ABSVAD; JMP I PNEXT 012165 5435 562 563 012170 1760 PAGE 012171 1150 012172 0756 012173 0347 012174 6714 012175 0260 012176 7766 012177 0255 564 565 *2200 566 567 012200 4407 DODI,E8, ERROR; JMS I ADI0; JMP I NEXT 012201 4604 012202 5437 568 012203 0000 NDECS, 0 569 012204 1200 ADI0, ERR 570 571 012205 4434 NEG, NPOP; CIA; JMP I SNEXT 012206 7041 012207 5436 572 573 012210 4434 GZ, NPOP; SMA SZA CLA; CMA; JMP I SNEXT 012211 7740 012212 7040 012213 5436 574 575 012214 4463 PUT, VADR; TAD 22; IUNSTAK; JMP I NEXT 012215 1022 012216 4470 012217 5437 576 577 012220 4464 ARR, NEXT6; DCA T1 /DEPTH OF DECLARATION 012221 3001 578 012222 1424 TAD I ABAS; CIA; TAD T1 012223 7041 012224 1001 579 012225 7650 SNA CLA; JMP AR1 /SAME AS NOW? 012226 5240 580 012227 1001 TAD T1; DCA I 23 /1ST WORD LEVEL NUMBER 012230 3423 581 012231 2023 ISZ 23; TAD ABAS; DCA I 23 /2ND IS BASE OF LAST LEVEL 012232 1024 012233 3423 582 012234 7240 CLA CMA; TAD 23; DCA ABAS /POINT AT NEW LEVEL 012235 1023 012236 3024 583 012237 2023 ISZ 23 /NEW FREE SPACE POINTER 584 012240 4464 AR1, NEXT6; CIA; DCA NDECS /COUNT DECLARATIONS 012241 7041 012242 3203 585 012243 4463 VADR; TAD (2; TAD 22 012244 1377 012245 1022 586 012246 3060 DCA DECADR /POINT AT IST ARRAY VARIABLE 587 012247 4464 NEXT6; DCA ARNW /GET NUMBER OF WORDS EACH ELEMENT 012250 3322 588 012251 1322 TAD ARNW; DCA I NFSPAD /PUT IT IN DOPE VECTOR 012252 3423 589 012253 1023 TAD NFSPAD; DCA I DECADR /ADDRESS VECTOR TO VARIABLE 012254 3460 590 012255 2023 ISZ NFSPAD; NEXT6; DCA I NFSPAD /NO. OF SUBSCRIPTS TO DV 012256 4464 012257 3423 591 012260 1423 TAD I NFSPAD; ISZ NFSPAD; CIA; DCA SUBSC /COUNT SUBSCRIPTS 012261 2023 012262 7041 012263 3004 592 012264 1004 TAD SUBSC; DCA SUBSC1 012265 3005 593 012266 7001 IAC; DCA ARNE /1 ELEMENT FOR HOMOGENEOUS ALGORITHM 012267 3302 594 012270 4472 AR2, POP; DCA T2; POP; DCA T3 /T2=UPPER, T3=LOWER BOUND 012271 3002 012272 4472 012273 3003 595 012274 1003 TAD T3; CIA; TAD T2; IAC /NO. OF ELEMENTS 012275 7041 012276 1002 012277 7001 596 012300 3033 DCA SUDOMQ; JMS PSDMUY /MULTIPLY BY PREVIOUS TOTAL 012301 4776 597 012302 0000 ARNE, 0; TAD SUDOMQ; DCA ARNE /TO GET NEW TOTAL 012303 1033 012304 3302 598 012305 1003 TAD T3; DCA I NFSPAD; ISZ NFSPAD /LOWER BOUND TO VECTOR 012306 3423 012307 2023 599 012310 2004 ISZ SUBSC; SKP; JMP LASTSS /ANY MORE SUBSCRIPTS? 012311 7410 012312 5317 600 012313 1302 TAD ARNE; DCA I NFSPAD /YES, STORE NO. ELEMENTS IN VECTOR 012314 3423 601 012315 2023 ISZ NFSPAD; JMP AR2 /AND DEAL WITH IT 012316 5270 602 012317 1302 LASTSS, TAD ARNE; DCA SUDOMQ; JMS PSDMUY /INCREASE FREE SPACE POINT 012320 3033 012321 4776 603 012322 0000 ARNW, 0; TAD SUDOMQ; TAD NFSPAD; DCA NFSPAD /BY ARRAY SIZE 012323 1033 012324 1023 012325 3023 604 012326 4775 JMS TESTSP /ROOM FOR IT? 605 012327 2203 ISZ NDECS; SKP; JMP I NEXT /ANY MORE DECLARATIONS? 012330 7410 012331 5437 606 012332 1460 TAD I DECADR; DCA T1 /POINT AT DOPE VECTOR 012333 3001 607 012334 1374 TAD (3; TAD DECADR; DCA DECADR/NEXT VARIABLE 012335 1060 012336 3060 608 012337 1023 TAD NFSPAD; DCA I DECADR /STORE ADDRESS NEW VECTOR 012340 3460 609 012341 1005 TAD SUBSC1; CLL RAL; TAD (-1; DCA SUBSC /COUNT VECTOR SIZE 012342 7104 012343 1373 012344 3004 610 012345 1401 AR4, TAD I T1; DCA I NFSPAD; ISZ T1; ISZ NFSPAD 012346 3423 012347 2001 012350 2023 611 012351 2004 ISZ SUBSC; JMP AR4 012352 5345 612 012353 5317 JMP LASTSS /COPY DOPE VECTOR 613 DECADR=DSWIT 614 SUBSC=T4 615 SUBSC1=T5 616 617 012354 4472 IOC, POP; SMA; JMP DODI 012355 7500 012356 5200 618 012357 7001 IAC; SNA; RFC; IAC; DCA EKOSW; JMP I NEXT 012360 7450 012361 6014 012362 7001 012363 3030 012364 5437 619 620 012365 4434 EZ, NPOP; SNA CLA; CMA; JMP I SNEXT 012366 7650 012367 7040 012370 5436 621 622 012373 7777 *2400 012374 0003 012375 0547 012376 6336 012377 0002 623 624 012400 1200 INDLST, ERR; TTI; HSI; DIN; ERR; ERR; ERR; ERR 012401 1026 012402 2076 012403 1000 012404 1200 012405 1200 012406 1200 012407 1200 625 012410 1200 ERR; ERR; ERR; ERR; ERR; ERR; ERR; ERR 012411 1200 012412 1200 012413 1200 012414 1200 012415 1200 012416 1200 012417 1200 626 012420 0367 OUTLST, DUM; TTO; HSO; DOUT; ERR; ERR; ERR; ERR 012421 2104 012422 2111 012423 2000 012424 1200 012425 1200 012426 1200 012427 1200 627 012430 1200 ERR; ERR; ERR; ERR; ERR; ERR; ERR; ERR 012431 1200 012432 1200 012433 1200 012434 1200 012435 1200 012436 1200 012437 1200 628 629 EINT=. 630 631 632 /LOAD ALGOL INTERPRETIVE CODE TAPES 633 /MAIN LIST FROM STACK START (600^) TO 3677 634 /FORWARD REF LIST FROM 3700 TO 3777 635 636 FIELD 0 637 638 *200 639 000200 6213 CDF CIF 10; JMP I .+1; 4000 000201 5602 000202 4000 640 641 FIELD 1 642 643 CL=23 644 RESULT=24 645 VALUE=26 646 SVRES=27 647 SP1=10 648 649 *3600 650 013600 6201 FEELD, CDF 0 / FIELD FOR CODE - CAN BE PRESET 651 013601 7577 7577 / LAST LOC TO USE IF OTHER THAN FIELD 0 652 013602 1567 MFLD, -6211 / USED TO CHECK FILED TO LOAD. FIELD MUST 653 / BE ABOVE THIS. CAN BE PATCHED BY 12K OVERLAY ! 654 013603 0000 LSTART, 0 655 013604 7330 CLA CLL CML RAR; DCA GOCP 013605 3777 656 013606 1200 TAD FEELD; AND K70; SNA / IGNORE CDF 0 013607 0226 013610 7450 657 013611 5253 JMP ON; TAD (CDF; DCA FLD 013612 1376 013613 3220 658 013614 1220 TAD FLD; TAD MFLD; SPA SNA CLA / CHECK IF FLD 0 OR 1 013615 1202 013616 7750 659 013617 4407 E9, ERROR / IF SO FLAG ERROR 660 013620 6201 FLD, CDF; TAD I CORCL / HERE WE CHECK FIELD EXISTS 013621 1755 661 013622 7000 C2, NOP; DCA C1; TAD C2; DCA I CORCL 013623 3354 013624 1222 013625 3755 662 013626 0070 K70, 70; TAD I CORCL 013627 1755 663 013630 7400 CORX, 7400; TAD CORX; TAD CORV; SZA CLA 013631 1230 013632 1356 013633 7640 664 013634 4407 E10, ERROR / TRIED TO LOAD NON-EXISTANT FIELD 665 013635 1354 TAD C1; DCA I CORCL; CDF 10 013636 3755 013637 6211 666 013640 1252 TAD INSET; DCA INSTR 013641 3246 667 013642 1375 TAD (-7; DCA CNT; TAD FLD; ISZ INSTR 013643 3353 013644 1220 013645 2246 668 013646 3757 INSTR, DCA I FLP; ISZ CNT 013647 2353 669 013650 5244 JMP INSTR-2; TAD 3601 013651 1201 670 013652 3757 INSET, DCA I FLP 671 013653 6211 ON, CDF 10 672 013654 3353 DCA SUM; JMS INDEV; SNA; JMP .-2 013655 4774 013656 7450 013657 5255 673 013660 1265 TAD M200; SNA CLA; JMP BININ 013661 7650 013662 5267 674 013663 4773 JMS FDIG; ISZ LSTART 013664 2203 675 013665 7600 M200, 7600; JMP I LSTART /SYMBOLIC 013666 5603 676 013667 4774 BININ, JMS INDEV; TAD M200; SNA; JMP BININ 013670 1265 013671 7450 013672 5267 677 013673 1372 TAD (200 678 013674 3006 BIN1, DCA LAC /SAVE LOOK AHEAD 679 013675 1006 NEXBIN, TAD LAC; AND (300; TAD (-300; SZA CLA; JMP NOTFLD 013676 0371 013677 1370 013700 7640 013701 5304 680 013702 4774 JMS INDEV; JMP BIN1 /IGNORE FIELD SETTINGS 013703 5274 681 013704 1006 NOTFLD, TAD LAC; DCA MSBITS 013705 3352 682 013706 4774 JMS INDEV; DCA LSBITS 013707 3354 683 013710 4774 JMS INDEV; TAD M200; SNA; JMP BINEND 013711 1265 013712 7450 013713 5335 684 013714 1372 TAD (200; DCA LAC /SAVE LOOK AHEAD IF NOT LEADER 013715 3006 685 013716 1352 TAD MSBITS; TAD LSBITS; TAD SUM; DCA SUM 013717 1354 013720 1353 013721 3353 686 013722 1352 TAD MSBITS; CLL RTL; RTL; RTL; TAD LSBITS 013723 7106 013724 7006 013725 7006 013726 1354 687 013727 7430 SZL; JMP ORIG 013730 5333 688 013731 4767 JMS STORE; JMP NEXBIN 013732 5275 689 013733 3023 ORIG, DCA CL; JMP NEXBIN 013734 5275 690 013735 1352 BINEND, TAD MSBITS; CLL RTL; RTL; RTL; TAD LSBITS 013736 7106 013737 7006 013740 7006 013741 1354 691 013742 7041 CIA; TAD SUM; SZA CLA;E11, ERROR; 013743 1353 013744 7640 013745 4407 692 013746 7040 CMA; TAD CL; DCA CL 013747 1023 013750 3023 693 013751 5603 JMP I LSTART 694 013752 0000 MSBITS, 0 695 CNT, 696 013753 0000 SUM, 0 697 C1, 698 013754 0000 LSBITS, 0 699 013755 0000 CORCL, 0 700 013756 1400 CORV, 1400 701 013757 4200 FLP, 4200; XCDF1; XCDF2; XCDF3; XCDF4 013760 0206 013761 0627 013762 1670 013763 2072 702 013764 4112 XCDF5; XCDF6; XCDF7 013765 4306 013766 4321 703 704 013767 4320 *4000 013770 7500 013771 0300 013772 0200 013773 4350 013774 1537 013775 7771 013776 6201 013777 1332 705 014000 6046 LOAD, TLS; KCC; JMS MESS 014001 6032 014002 4777 706 014003 0215 215;212;"R;"O;"G;"A;"L;"G;"O;"L;"O;"A;"D;"E;"R 014004 0212 014005 0322 014006 0317 014007 0307 014010 0301 014011 0314 014012 0307 014013 0317 014014 0314 014015 0317 014016 0301 014017 0304 014020 0305 014021 0322 707 014022 0240 240;"I;"N;"-;0 014023 0311 014024 0316 014025 0255 014026 0000 708 014027 4776 JMS TTI; TAD (-260; DCA DEV; RFC 014030 1375 014031 3031 014032 6014 709 014033 7346 CLA CLL CMA RTL; TAD DEV; SNA CLA; JMS DIX 014034 1031 014035 7650 014036 4774 710 014037 4773 IPSET, JMS LODOPT / GO CHECK FIELD OPTS IF ANY 711 014040 4772 JMS LSTART; JMP ENDBIN /LOOK FOR BINARY OR SKIP TO DIGIT 014041 5327 712 014042 3240 DCA .-2; DCA .-2 / CLEAR RECALL OF BIN! 014043 3241 713 014044 1771 TAD 600; TAD (-3677; DCA MLSIZE 014045 1370 014046 3767 714 014047 7040 CMA; TAD 600; DCA SP1; TAD (-101; TAD MLSIZE; DCA ABAS 014050 1771 014051 3010 014052 1366 014053 1767 014054 3024 715 014055 3410 DCA I SP1; ISZ ABAS; JMP .-2 /CLEAR LISTS 014056 2024 014057 5255 716 014060 1365 TAD (202; DCA CL 014061 3023 717 014062 7240 LOOP, CLA CMA; DCA SIGN 014063 3764 718 014064 4763 JMS IN; JMS DIGTST; SKP; JMP CONST 014065 4762 014066 7410 014067 5761 719 014070 1360 TAD (-"-; SNA; JMP NCONST 014071 7450 014072 5757 720 014073 1356 TAD ("--";; SNA; JMP LOOP /IGNORE MULTIPLE : 014074 7450 014075 5262 721 014076 1355 TAD (";-"*; SNA; JMP END 014077 7450 014100 5310 722 014101 1354 TAD ("*-"L; SNA; JMP LABEL 014102 7450 014103 5753 723 014104 1352 TAD ("L-"F; SNA; JMP FCON;E12, ERROR 014105 7450 014106 5751 014107 4407 724 014110 7240 END, CLA CMA; TAD CL 014111 1023 725 014112 6201 XCDF5, CDF; DCA CL /ADDRESS OF FIXED SPACE 014113 3023 726 014114 1423 TAD I CL; DCA I (176 /SAVE IT 014115 3750 727 014116 1023 TAD CL; IAC; DCA I (175 /NEXT FREE SPACE 014117 7001 014120 3747 728 014121 1346 TAD (JMP I 177; DCA I (201 014122 3745 729 014123 1336 TAD XCDIF; DCA I (200 014124 3744 730 014125 1343 TAD (INIT; DCA I (177 014126 3742 731 014127 6201 ENDBIN, CDF 0; TAD (JMP I 177; DCA I (201 014130 1346 014131 3745 732 014132 1343 TAD (INIT; DCA I (177 014133 3742 733 014134 1336 TAD XCDIF; DCA I (200 014135 3744 734 014136 6213 XCDIF, CDF CIF 10; JMP LEND 014137 5741 735 736 014141 4610 *4600 014142 0177 014143 0614 014144 0200 014145 0201 014146 5577 014147 0175 014150 0176 014151 4504 014152 0006 014153 4201 014154 7736 014155 0021 014156 7762 014157 4523 014160 7523 014161 4524 014162 4333 014163 4414 014164 1343 014165 0202 014166 7677 014167 4556 014170 4101 014171 0600 014172 3603 014173 4600 014174 4534 014175 7520 014176 1026 014177 1140 737 014600 0000 LODOPT, 0; JMP I LODOPT / PATCH HERE TO LOAD FIELD OPTIONS 014601 5600 738 / DONE BY SETTING FEELD TO REQUIRED FIELD 739 014602 0614 PINIT, INIT / SOME USEFUL POINTERS 740 014603 1207 PWAIT, WAIT 741 014604 1332 PGOCP, GOCP 742 014605 1005 POCTOUT, OCTOUT 743 014606 1140 PMESS, MESS 744 014607 3600 PFEELD, FEELD / THIS IS WHERE REQUIRED FIELD IS STORED 745 014610 4606 LEND, JMS I PMESS; 215;212;"E;"N;"D;"S;" ;0 014611 0215 014612 0212 014613 0305 014614 0316 014615 0304 014616 0323 014617 0240 014620 0000 746 014621 1202 TAD PINIT; DCA I PGOCP; TAD CL; JMS I POCTOUT 014622 3604 014623 1023 014624 4605 747 014625 4462 JMS I AKBCHK; TSF; JMP .-2 014626 6041 014627 5225 748 014630 5603 ALEND, JMP I PWAIT /MAY BE PATCHED TO DO ADDITIONAL THINGS 749 / SUCH AS CHECKING WHETHER TO START OR NOT. 750 751 *4200 752 753 014200 7577 MAXLOC, 7577 /GETS OVERLAID BY SYSTEMS DEVICE INTERFACES 754 014201 4777 LABEL, JMS IN; JMS DIGTST;E13, ERROR 014202 4333 014203 4407 755 014204 3024 DCA RESULT; JMS RCON; DCA CHAR; JMS CHKLNO /LABEL NUMBER TO RESULT 014205 4776 014206 3057 014207 4775 756 014210 1057 TAD CHAR; TAD (-",; SNA; JMP DECLAB 014211 1374 014212 7450 014213 5243 757 014214 1373 TAD (",-"=; SNA; JMP DEFLAB 014215 7450 014216 5246 758 014217 1372 TAD ("=-";; SZA;E14, ERROR 014220 7440 014221 4407 759 014222 4771 STLAB, JMS LOOKUP; JMP NOTDECL /STORE LABEL. DECLARED? 014223 5226 760 014224 4320 JMS STORE; JMP LOOP /YES STORE IT 014225 5770 761 014226 4320 NOTDEC, JMS STORE; CMA; TAD CL /STORE LAST ADDRESS USED IN PROG 014227 7040 014230 1023 762 014231 3405 DCA I T5 /AND THIS ADDRESS IN MAIN TABLE 763 014232 1024 TAD RESULT; JMS SFWD /SEE IF ITS IN FORWARD LIST 014233 4767 764 014234 5770 JMP LOOP /FINISHED IF ALREADY THERE 765 014235 4767 JMS SFWD; SKP;E15, ERROR /ELSE LOOK FOR SLOT 014236 7410 014237 4407 766 014240 1024 TAD RESULT; DCA I T1; JMP LOOP /AND MAKE ENTRY 014241 3401 014242 5770 767 014243 1023 DECLAB, TAD CL; DCA VALUE; JMP LABVAL /VALUE IS CURRENT ADDRESS 014244 3026 014245 5274 768 014246 1024 DEFLAB, TAD RESULT; DCA SVRES /SAVE LABEL BEING DEFINED 014247 3027 769 014250 4777 JMS IN; JMS DIGTST; JMP DEFL1 /ANOTHER LABEL? 014251 4333 014252 5263 770 014253 3024 DCA RESULT; JMS RCON /NO, READ CONSTANT 014254 4776 771 014255 7200 CLA; TAD RESULT 014256 1024 772 014257 3026 DEFL2, DCA VALUE; TAD SVRES; DCA RESULT /RESTORE LABEL 014260 1027 014261 3024 773 014262 5274 JMP LABVAL 774 014263 1317 DEFL1, TAD PL; SZA CLA;E16, ERROR /CHECK FOR L 014264 7640 014265 4407 775 014266 3024 DCA RESULT; JMS RCON; JMS CHKLNO /READ DEFINING LABEL 014267 4776 014270 4775 776 014271 4771 JMS LOOKUP;E17, ERROR; JMP DEFL2 /CHECK DECLARED, VALUE IN AC 014272 4407 014273 5257 777 014274 4771 LABVAL, JMS LOOKUP; SKP;E18, ERROR /FAIL IF ALREADY DECLARED 014275 7410 014276 4407 778 014277 3004 DCA T4; DCA I T1 /SAVE ADDRESS LAST USE, CLEAR FREF ENTRY 014300 3401 779 014301 1026 TAD VALUE; DCA I T5 /PUT VALUE IN MAIN TABLE 014302 3405 780 014303 1004 DFR, TAD T4; SNA CLA; JMP LOOP /FREFS TO FILL IN? 014304 7650 014305 5770 781 014306 6201 XCDF6, CDF; TAD I T4; DCA T3 /YES, SAVE LINK 014307 1404 014310 3003 782 014311 1026 TAD VALUE; DCA I T4; CDF 10 /REPLACE BY VALUE 014312 3404 014313 6211 783 014314 1003 TAD T3; DCA T4; JMP DFR /CHECK IF ANY MORE 014315 3004 014316 5303 784 014317 7464 PL, -"L 785 786 014320 0000 STORE, 0 787 014321 6201 XCDF7, CDF; DCA I CL; CDF 10; ISZ CL 014322 3423 014323 6211 014324 2023 788 014325 1023 TAD CL; CIA; TAD MAXLOC; SNA CLA;E19, ERROR; JMP I STORE 014326 7041 014327 1200 014330 7650 014331 4407 014332 5720 789 790 014333 0000 DIGTST, 0 791 014334 1366 TAD (-260; SPA; JMP NOT1 014335 7510 014336 5345 792 014337 1365 TAD (260-272; SMA; JMP NOT2 014340 7500 014341 5346 793 014342 1364 TAD (272-260; ISZ DIGTST; JMP I DIGTST 014343 2333 014344 5733 794 014345 1365 NOT1, TAD (260-272 795 014346 1363 NOT2, TAD (272; JMP I DIGTST 014347 5733 796 797 014350 0000 FDIG, 0; JMS IN; JMS DIGTST; JMP .-2; JMP I FDIG 014351 4777 014352 4333 014353 5351 014354 5750 798 799 014363 0272 PAGE 014364 0012 014365 7766 014366 7520 014367 4447 014370 4062 014371 4467 014372 0002 014373 7757 014374 7524 014375 4547 014376 4400 014377 4414 800 *4400 801 802 014400 0000 RCON, 0 803 014401 4214 JMS IN; JMS DIGTST; JMP I RCON 014402 4777 014403 5600 804 014404 3214 DCA IN; TAD RESULT; CLL RTL; TAD RESULT 014405 1024 014406 7106 014407 1024 805 014410 7104 CLL RAL; TAD IN; DCA RESULT; JMP RCON+1 014411 1214 014412 3024 014413 5201 806 807 014414 0000 IN, 0 808 014415 4776 JMS INDEV; TAD PM215; SNA; TAD (";-215 014416 1241 014417 7450 014420 1375 809 014421 1242 TAD PM212; SNA; JMP IN+1 014422 7450 014423 5215 810 014424 1243 TAD PM240; SNA; JMP IN+1 014425 7450 014426 5215 811 014427 1244 TAD PM377; SNA; JMP IN+1 014430 7450 014431 5215 812 014432 1245 TAD PM211; SNA; JMP IN+1 014433 7450 014434 5215 813 014435 1246 TAD P211; SNA; JMP IN+1; JMP I IN 014436 7450 014437 5215 014440 5614 814 014441 7563 PM215, -215 815 014442 0003 PM212, 215-212 816 014443 7752 PM240, 212-240 817 014444 7641 PM377, 240-377 818 014445 0166 PM211, 377-211 819 014446 0211 P211, 211 820 821 014447 0000 SFWD, 0 /SEARCH FORWARD LIST, LABEL NO. IN AC 822 014450 7041 CIA; DCA T2; TAD (-100; DCA T3 014451 3002 014452 1374 014453 3003 823 014454 1373 TAD (3677; DCA T1 014455 3001 824 014456 2001 SFWD1, ISZ T1; TAD I T1; TAD T2 014457 1401 014460 1002 825 014461 7650 SNA CLA; JMP I SFWD /EXIT 1 IF FOUND, T1^ENTRY 014462 5647 826 014463 2003 ISZ T3; JMP SFWD1 /IF NOT CHECK IF EXHAUSTED 014464 5256 827 014465 2247 ISZ SFWD; JMP I SFWD /AND EXIT 2 IF SO 014466 5647 828 829 014467 0000 LOOKUP, 0 /LOOKUP LABEL NO. IN RESULT, AC=0 830 014470 1024 TAD RESULT; TAD 600; DCA T5 /POINT AT MAIN ENTRY 014471 1772 014472 3005 831 014473 1024 TAD RESULT; JMS SFWD; JMP INFWD /SEARCH FORWARD LIST 014474 4247 014475 5302 832 014476 1405 TAD I T5; SZA; ISZ LOOKUP /EXIT 2 IF DECLARED 014477 7440 014500 2267 833 014501 5667 JMP I LOOKUP /ELSE EXIT 1, NO PREVIOUS USE 834 014502 1405 INFWD, TAD I T5; JMP I LOOKUP /ADDRESS OF PREVIOUS USE 014503 5667 835 836 014504 4771 FCON, JMS FINPUT; TAD DSWIT; SNA CLA; JMP FCON 014505 1060 014506 7650 014507 5304 837 014510 1044 TAD FLAC; JMS STORE; TAD FLAC+1; JMS STORE 014511 4770 014512 1045 014513 4770 838 014514 1046 TAD FLAC+2; JMS STORE 014515 4770 839 014516 4214 FC1, JMS IN; TAD (-";; SZA CLA; JMP FC1; JMP LOOP 014517 1367 014520 7640 014521 5316 014522 5766 840 014523 3765 NCONST, DCA SIGN 841 014524 3024 CONST, DCA RESULT; JMS RCON; CLA; TAD RESULT 014525 4200 014526 7200 014527 1024 842 014530 2765 ISZ SIGN; CIA; JMS STORE; JMP LOOP 014531 7041 014532 4770 014533 5766 843 844 014534 0000 DIX, 0; TAD 2204; TAD (-ERR; SNA CLA;E20, ERROR /IS DIX0 THERE? 014535 1764 014536 1363 014537 7650 014540 4407 845 014541 1764 TAD 2204; DCA T1; CDF CIF 014542 3001 014543 6203 846 014544 7201 CLA IAC; JMS I T1 / CALL TO OPEN FILE 014545 4401 847 014546 5734 JMP I DIX 848 849 014547 0000 CHKLNO, 0; CLA; TAD RESULT; TAD MLSIZE; SZA SMA CLA;E21, ERROR 014550 7200 014551 1024 014552 1356 014553 7740 014554 4407 850 014555 5747 JMP I CHKLNO 851 852 014556 0000 MLSIZE, 0 853 014563 6600 $ 014564 2204 014565 1343 014566 4062 014567 7505 014570 4320 014571 7000 014572 0600 014573 3677 014574 7700 014575 0056 014576 1537 014577 4333 AAADIV 0711 unreferenced AAAMUL 0701 unreferenced AAAOR 0737 unreferenced AAASA2 1637 unreferenced AAASA3 1625 unreferenced ABAS 0024 ABS 0355 ABSVAD 1760 ADD 0763 ADEVIN 0640 unreferenced ADI0 2204 ADIN0 1004 unreferenced ADOUT0 2004 unreferenced AKBCHK 0062 ALDONE 0544 ALEND 4630 unreferenced ALEV0 0602 ANYG 1756 ANYGET 1747 ANYPUT 1746 AR1 2240 AR2 2270 AR4 2345 ARCTAN 5400 ARNE 2302 ARNW 2322 ARR 2220 ATTIN 1026 unreferenced AUNST 2020 BIN1 3674 BINEND 3735 BININ 3667 C1 3754 C2 3622 CHAR 0057 CHIN 5017 CHKDEV 1553 CHKLNO 4547 CHOUT 0231 CL 0023 CNT 3753 CONST 4524 CONV 0522 CORCL 3755 CORV 3756 CORX 3630 COS 5252 CR 1043 CROUT 1041 D1 0717 DECADR 0060 DECLAB 4243 DECSP 0347 DEFL1 4263 DEFL2 4257 DEFLAB 4246 DEV 0031 DFR 4303 DIGTST 4333 DIN 1000 DIV 0711 DIX 4534 DLSIZE 1402 DODI 2200 DOFADD 6000 DOFDIV 6200 DOFIX 5040 DOFMUL 6623 DOFP 1446 DOSTR 0400 DOUT 2000 DSWIT 0060 DUM 0367 E1 0460 unreferenced E10 3634 unreferenced E11 3745 unreferenced E12 4107 unreferenced E13 4203 unreferenced E14 4221 unreferenced E15 4237 unreferenced E16 4265 unreferenced E17 4272 unreferenced E18 4276 unreferenced E19 4331 unreferenced E2 0515 unreferenced E20 4540 unreferenced E21 4554 unreferenced E3 0554 unreferenced E4 1001 unreferenced E5 1561 unreferenced E6 1620 unreferenced E7 2001 unreferenced E8 2200 unreferenced E9 3617 unreferenced EINT 2440 EKO 1034 EKOSW 0030 EN 0417 END 4110 ENDBIN 4127 ENF 2133 EP 0416 EP1 0474 EPF 2132 EPX 0425 EQUIV 1324 ERR 1200 ERROR 4407 EX 1706 EXFLT 1435 EZ 2365 FADD 5627 FC1 4516 FCON 4504 FCONS 1403 FDIG 4350 FDIV 5700 FEELD 3600 FGET 5600 FINPUT 7000 FIX 1270 FLAC 0044 FLADD 1433 FLD 3620 FLDIV 1426 FLEXP 5257 FLMPY 1430 FLNEG 1413 FLNEGS 1415 FLOAT 5752 FLP 3757 FLS1 1301 FLS2 1305 FLSUB 1432 FMUL 5636 FNDL1 5005 FNDLVL 5000 FNEG 7560 unreferenced FONE 5346 FOPOP 4474 FORAD 1074 FORCON 1105 FORMAT 0334 FORST 1061 FORST2 1125 FOUTP 7200 FPOP 4473 FPUSH 4475 FPUT 5663 FSIGN 1467 FSTR 2143 FSUB 5734 FUNLST 1502 GET 1661 GETS1 1523 GFORM 1755 GG 0766 GOCP 1332 GP 0330 GT10 2060 GZ 2210 HSI 2076 HSO 2111 IEXPEC 0532 IGET 1724 IN 4414 INDEV 1537 INDLST 2400 INFWD 4502 INIT 0614 INSET 3652 INSTR 3646 INTFOR 1112 IOC 2354 IPSET 4037 unreferenced IPUT 1734 IPUT1 1743 ISIGN 1256 ISTAK 4467 IUNSTA 4470 J 0610 JF 2116 JF1 2123 JNT 1245 K70 3626 KBCHK 1217 LABEL 4201 LABVAL 4274 LAC 0006 LASTD 2054 LASTSS 2317 LEND 4610 LN 5460 LOAD 4000 unreferenced LODOPT 4600 LOOKUP 4467 LOOP 4062 LSBITS 3754 LSI 1674 LSTART 3603 LUNST 1150 LZ 0362 M1 0707 M200 3665 MAXLOC 4200 MESS 1140 MFLD 3602 MLSIZE 4556 MSBITS 3752 MUL 0701 NCONST 4523 NDECS 2203 NEG 2205 NEX 0225 NEXBIN 3675 NEXT 0037 NEXT6 4464 NEXWD 0206 NFSPAD 0023 NOT 1766 NOT1 4345 NOT2 4346 NOTDEC 4226 NOTFLD 3704 NPOP 4434 OCTO1 1012 OCTOUT 1005 OK 0535 ON 3653 OR 0737 ORIG 3733 OUTDEV 1545 OUTLST 2420 P201 0645 P211 4446 PARAM 4476 PC 0010 PCOUNT 0700 PFEELD 4607 unreferenced PFORM 1731 PGOCP 4604 PINIT 4602 PL 4317 PM211 4445 PM212 4442 PM215 4441 PM240 4443 PM377 4444 PMESS 4606 PMUL 0675 PNEX 0223 PNEXT 0035 POCTOU 4605 POP 4472 POW 0646 POW1 0666 POWINS 0670 PPOW 0677 PRIN 2044 PRINT 2027 PSDDVI 6714 PSDMUY 6336 PUT 2214 PWAIT 4603 RCON 4400 RESULT 0024 RESUM 1243 RFP 1315 RPOW 1514 SAS 2005 SAS1 2012 SET 0745 SETH 0222 SETLAB 0755 SFORM 2164 SFWD 4447 SFWD1 4456 SIGN 1343 SIGN1 0730 SIGN2 0720 SINE 5200 SKIP 1052 SNEX 0365 SNEXT 0036 SP 0032 SP1 0010 SQROOT 6600 STAK 4465 STFUN 1474 STLAB 4222 unreferenced STOP 1207 STORE 4320 STRING 0412 STSP 0601 SUB 1702 SUBSA 1600 SUBSA1 1644 SUBSA2 1637 SUBSA3 1625 SUBSA4 1652 SUBSC 0004 SUBSC1 0005 SUDOMQ 0033 SUM 3753 SVRES 0027 SVS 1713 SVS1 1716 SW1 0025 SWITCH 2067 SZ 1353 T1 0001 T2 0002 T3 0003 T4 0004 T5 0005 TCHK 0500 TEM 5031 TESTSP 0547 TSP 0027 TTI 1026 TTO 2104 UNSTAK 4466 VADR 4463 VALUE 0026 WAIT 1207 WORD 0026 WRDS 1665 X212 1050 X215 1047 X7600 1220 XAND 5024 XCDF1 0206 XCDF2 0627 XCDF3 1670 XCDF4 2072 XCDF5 4112 XCDF6 4306 XCDF7 4321 XCDIF 4136 XDOSTR 2163 XEINT 0600 XFIX 1274 XFLAD 1464 XIND 0077 unreferenced XINDLS 1400 XIPOP 1355 XISTA 0266 XIUNST 0303 XM215 1051 XNEXT6 0200 XNPOP 1333 XOPOP 0244 XOUT 0071 XOUTLS 1401 XPARAM 1665 XPOP 0240 XPUSH 0250 XSTAK 0254 XUNSTA 0261 XVADR 0320