1 /DISASSEMBLY PROGRAM; SA = 200 2 /ASR33 TELETYPE TAPE READER. 3 /CONSTANTS & PROGRAM INTERTIES ON PAGE 0. 4 5 BINDX=16 /BUFFER INDEX 6 AINDX=17 /ADDRESS INDEX 7 8 *20 9 00020 0000 OCT, 0 /OCTAL STORAGE 10 00021 0000 ADRF, 0 /ADDR. FINDER 11 00022 7774 CN4, 0-4 12 00023 0007 M7, 7 13 00024 7000 M777, 7000 14 00025 0377 M377, 377 15 00026 0000 ADC, 0 /ADDR. FINDER 16 00027 1244 BEG, OUT 17 00030 7776 CN2, 0-2 18 00031 0077 M77, 77 19 00032 0240 C240, 240 20 00033 0311 POCT, SOCT /TIE TO PRINT OCT SUBR. 21 00034 0000 TEMP, 0 22 00035 0000 CNTR, 0 23 00036 0002 C2, 2 24 00037 0004 C4, 4 25 00040 0010 C10, 10 26 00041 0710 PROP, SROP /TIE WITH PRINT OPR. CODE SUBR. 27 00042 0743 PRT, SRT /TIE WITH PRINT ON TELE SUBR. 28 00043 7775 CN3, 0-3 29 00044 0156 STI, STEP 30 00045 0751 NGRI, NGR 31 00046 0757 NGR+6 32 00047 0000 FSWIT, 0 33 00050 0000 FPSWIT, 0 34 00051 1000 FPNTI, FPNT /FLOATING POINT OP. CODES 35 00052 3371 M4407, -4407 /JMS I Z 7 36 00053 1200 READI, READ 37 00054 0342 ENDTI, ENDT 38 00055 0265 READ1I, READ1 39 00056 0221 BBBI, BBB 40 00057 0277 SPCRI, SPCR 41 00060 0360 SETI, SET 42 00061 1233 OUT8I, OUT8 43 00062 0215 AAAI, AAA 44 00063 0271 CRLFPI, CRLFP 45 46 /OPERATION CODES 47 00064 5641 OPC, 5641 /AND 48 00065 0044 0044 49 00066 4164 4164 /TAD 50 00067 0044 0044 51 00070 6351 6351 /ISZ 52 00071 0072 0072 53 00072 4344 4344 /DCA 54 00073 0041 0041 55 00074 5552 5552 /JMS 56 00075 0063 0063 57 00076 5552 5552 /JMP 58 00077 0060 0060 59 00100 0051 IZC, 0051 /I 60 00101 0072 0072 /Z 61 62 /MICRO GROUP 1 63 00102 5443 MIC1, 5443 /CLA 64 00103 0041 0041 65 00104 5443 5443 /CLL 66 00105 0054 0054 67 00106 5543 5543 /CMA 68 00107 0041 0041 69 00110 5543 5543 /CML 70 00111 0054 0054 71 00112 4151 4151 /IAC 72 00113 0043 0043 73 00114 4162 4162 /RAL 74 00115 0054 0054 75 00116 4162 4162 /RAR 76 00117 0062 0062 77 00120 6462 6462 /RTL 78 00121 0054 0054 79 00122 6462 6462 /RTR 80 00123 0062 0062 81 00124 5756 NOC, 5756 /NOP 82 00125 0060 0060 83 84 /MICRO GROUP 2 85 00126 5450 MIC2, 5450 /HLT 86 00127 0064 0064 87 00130 6357 6357 /OSR 88 00131 0062 0062 89 00132 5363 5363 /SKP 90 00133 0060 0060 91 00134 5663 5663 /SNL 92 00135 0054 0054 93 00136 7263 7263 /SZA 94 00137 0041 0041 95 00140 5563 5563 /SMA 96 00141 0041 0041 97 00142 7263 7263 /SZL 98 00143 0054 0054 99 00144 5663 5663 /SNA 100 00145 0041 0041 101 00146 6063 6063 /SPA 102 00147 0041 0041 103 104 / I/O PRINT OCTAL ROUTINE 105 00150 1020 OP6, TAD OCT 106 00151 4433 JMS I POCT 107 00152 1026 TAD ADC 108 00153 7001 IAC 109 00154 3026 DCA ADC 110 00155 5427 JMP I BEG /GO TO STRT 111 112 /STEP ADDR. FINDER ROUTINE 113 00156 0000 STEP, 0 114 00157 7420 SNL 115 00160 5163 JMP .+3 116 00161 4441 JMS I PROP 117 00162 5166 JMP .+4 118 00163 1021 TAD ADRF 119 00164 1036 TAD C2 120 00165 3021 DCA ADRF 121 00166 1034 TAD TEMP 122 00167 7010 RAR 123 00170 3034 DCA TEMP 124 00171 2035 ISZ CNTR 125 00172 5157 JMP STEP+1 126 00173 5556 JMP I STEP 127 128 END0, /LOC. END PAGE 129 130 /SORT FIRST 3 BITS ROUTINE 131 /DIFFERENTIATE BETWEEN REG. CODE & FLOATING POINT CODE 132 133 *200 134 00200 6046 L00200, 6046 135 00201 7300 CLA CLL 136 00202 3360 DCA SET 137 00203 3050 DCA FPSWIT 138 00204 7404 OSR 139 00205 7700 SMA CLA 140 00206 5212 JMP .+4 141 00207 7001 IAC 142 00210 3047 DCA FSWIT /SET FLOAT PROG. INDIC. 143 00211 7410 SKP 144 00212 3047 DCA FSWIT 145 00213 4463 JMS I Z CRLFPI /PRINT CR & LF 146 00214 5453 STRT, JMP I Z READI /GO READ TAPE 147 00215 4277 AAA, JMS SPCR /GO TO SPACE SUBR. 148 00216 1026 TAD Z ADC 149 00217 4311 JMS SOCT /PRINT OCTAL SUBR. 150 00220 5427 JMP I Z BEG 151 00221 1026 BBB, TAD Z ADC 152 00222 4311 JMS SOCT /PRINT ADDR. 153 00223 1020 TAD Z OCT 154 00224 4311 JMS SOCT /PRINT OCTAL CONTENTS 155 00225 1050 TAD FPSWIT 156 00226 7650 SNA CLA 157 00227 5232 JMP .+3 158 00230 1020 TAD Z OCT 159 00231 5235 JMP .+4 160 00232 1020 TAD Z OCT 161 00233 7450 SNA 162 00234 5152 JMP OP6+2 163 00235 7106 CLL RTL 164 00236 7006 RTL 165 00237 0023 AND Z M7 166 00240 3034 DCA Z TEMP 167 00241 1034 TAD Z TEMP 168 00242 1354 TAD CN6 169 00243 7510 SPA 170 171 00244 5755 JMP I OP5 /GO TO OPR. CODE 172 00245 3034 DCA Z TEMP 173 00246 1050 TAD Z FPSWIT 174 00247 7640 SZA CLA 175 00250 5451 JMP I Z FPNTI /GO TO F.P. CODE ROUTINE 176 00251 1034 TAD Z TEMP 177 00252 7650 SNA CLA 178 00253 5150 JMP Z OP6 /GO TO I/O CODE 179 00254 1020 TAD Z OCT 180 00255 7001 IAC 181 00256 7650 SNA CLA 182 00257 5152 JMP OP6+2 183 00260 1020 TAD Z OCT 184 00261 0355 AND OP5 /400 185 00262 7450 SNA 186 00263 5756 JMP I OP71 /GO TO MICRO 1 187 00264 5757 JMP I OP72 / GO TO MICRO 2 188 189 /SUBROUTINES 190 /READ TELE 1 SUBR. 191 00265 0000 READ1, 0 192 00266 6031 6031 /SKIP IF FLAG = 1 193 00267 5266 JMP .-1 194 00270 5665 JMP I READ1 195 196 /CR & LF SUBR. 197 00271 0000 CRLFP, 0 198 00272 1347 TAD CR 199 00273 4442 JMS I Z PRT 200 00274 1350 TAD LF 201 00275 4442 JMS I Z PRT 202 00276 5361 JMP PCRLF 203 204 /SET MARGIN SUBROUTINE 205 00277 0000 SPCR, 0 206 00300 1351 TAD CN13 207 00301 3035 DCA Z CNTR 208 00302 1032 TAD C240 209 00303 4442 JMS I Z PRT 210 00304 2035 ISZ Z CNTR 211 00305 5302 JMP .-3 212 00306 1353 TAD AST 213 00307 4442 JMS I Z PRT 214 00310 5677 JMP I SPCR 215 216 /PRINT OCTAL SUBROUTINE 217 00311 0000 SOCT, 0 218 00312 3034 DCA Z TEMP 219 00313 1022 TAD Z CN4 220 00314 3035 DCA Z CNTR 221 00315 1034 TAD Z TEMP 222 00316 7104 CLL RAL 223 00317 7006 REP, RTL 224 00320 7004 RAL 225 226 00321 3034 DCA Z TEMP 227 00322 1034 TAD Z TEMP 228 00323 0023 AND Z M7 229 00324 1352 TAD C260 230 00325 4442 JMS I Z PRT 231 00326 1034 TAD Z TEMP 232 00327 2035 ISZ Z CNTR 233 00330 5317 JMP REP 234 00331 7200 CLA 235 00332 1030 TAD Z CN2 236 00333 3035 DCA Z CNTR 237 00334 1032 TAD C240 238 00335 4442 JMS I Z PRT 239 00336 2035 ISZ Z CNTR 240 00337 5334 JMP .-3 241 00340 7200 CLA 242 00341 5711 JMP I SOCT 243 244 /LOOK FOR END OF TAPE ROUTINE 245 00342 7200 ENDT, CLA 246 00343 1360 TAD SET 247 00344 7650 SNA CLA /END OF TAPE? 248 00345 5214 JMP STRT /NO 249 00346 5461 JMP I Z OUT8I /YES 250 251 /CONSTANTS & INTERTIES 252 00347 0215 CR, 215 253 00350 0212 LF, 212 254 00351 7765 CN13, 0-13 255 00352 0260 C260, 260 256 00353 0252 AST, 252 257 00354 7772 CN6, 0-6 258 00355 0400 OP5, OPCR 259 00356 0600 OP71, GRP1 260 00357 0533 OP72, GRP2 261 00360 0000 SET, 0 262 263 00361 1350 PCRLF, TAD LF 264 00362 4442 JMS I Z PRT 265 00363 4765 JMS I .+2 266 00364 5671 JMP I CRLFP 267 00365 1400 S01400 268 269 END2, /LOC. END PAGE 270 271 *400 272 00400 7200 OPCR, CLA 273 00401 1047 TAD FSWIT 274 00402 7650 SNA CLA 275 00403 5217 JMP OPC2 276 00404 1050 TAD FPSWIT 277 00405 7640 SZA CLA 278 00406 5216 JMP OPC1 279 00407 1020 TAD Z OCT 280 00410 1052 TAD M4407 /ENTRY TO INTERPRETER? 281 00411 7640 SZA CLA 282 00412 5217 JMP OPC2 /NO 283 00413 7001 IAC /YES 284 00414 3050 DCA FPSWIT 285 286 00415 7410 SKP 287 00416 5451 OPC1, JMP I Z FPNTI /GO TO FLOAT. CODE ROUTINE 288 00417 1325 OPC2, TAD CON1 289 00420 3021 DCA Z ADRF 290 00421 7040 CMA 291 00422 1034 TAD Z TEMP 292 00423 7510 SPA 293 00424 5264 JMP ENDO /=0 294 00425 7440 SZA 295 00426 5233 JMP .+5 /=MORE THAN 1 296 00427 1021 TAD Z ADRF /=1 297 00430 1036 TAD C2 298 00431 3021 DCA Z ADRF 299 00432 5264 JMP ENDO 300 00433 7200 CLA 301 00434 1021 TAD Z ADRF 302 00435 1037 TAD Z C4 303 00436 3021 DCA Z ADRF 304 00437 1034 TAD Z TEMP 305 00440 1043 TAD Z CN3 306 00441 7510 SPA 307 00442 5264 JMP ENDO /=2 308 00443 7440 SZA 309 00444 5251 JMP .+5 /=4 OR 5 310 00445 1021 TAD Z ADRF /=3 311 00446 1036 TAD Z C2 312 00447 3021 DCA Z ADRF 313 00450 5264 JMP ENDO 314 00451 7200 CLA 315 00452 1021 TAD Z ADRF 316 00453 1037 TAD Z C4 317 00454 3021 DCA Z ADRF 318 00455 1034 TAD Z TEMP 319 00456 1022 TAD Z CN4 320 00457 7650 SNA CLA 321 00460 5264 JMP ENDO /=4 322 00461 1021 TAD Z ADRF /=5 323 00462 1036 TAD Z C2 324 00463 3021 DCA Z ADRF 325 326 /PRINT OPR. CODE ROUTINE 327 00464 4441 ENDO, JMS I Z PROP 328 00465 1326 TAD CON2 329 00466 3021 DCA Z ADRF 330 00467 1020 TAD Z OCT 331 00470 7106 CLL RTL 332 00471 7006 RTL 333 00472 3034 DCA Z TEMP 334 00473 7420 SNL 335 00474 5277 JMP .+3 336 00475 4441 JMS I Z PROP /PRINT I 337 00476 5302 JMP .+4 338 00477 1021 TAD Z ADRF 339 00500 7001 IAC 340 00501 3021 DCA Z ADRF 341 00502 1034 TAD Z TEMP 342 343 00503 7710 SPA CLA 344 00504 5311 JMP .+5 345 00505 4441 JMS I Z PROP /PRINT Z 346 00506 1020 TAD Z OCT 347 00507 0331 AND M177 348 00510 5317 JMP .+7 349 00511 1020 TAD Z OCT 350 00512 0331 AND M177 351 00513 3034 DCA Z TEMP 352 00514 1026 TAD Z ADC 353 00515 0332 AND M760 354 00516 1034 TAD Z TEMP 355 00517 4433 JMS I Z POCT /PRINT ADDR. 356 00520 7200 CLA 357 00521 1026 TAD Z ADC 358 00522 7001 IAC 359 00523 3026 DCA Z ADC 360 00524 5427 JMP I Z BEG /GO TO OUT 361 362 /CONSTANTS AND INTERTIES 363 00525 0064 CON1, OPC /ADDR. FINDER FOR OPR. CODES 364 00526 0100 CON2, IZC /FIND I AND Z 365 00527 0126 CON5, MIC2 /FIND MICRO GROUP 2 LIST 366 00530 0102 CON6, MIC1 /FIND MICRO GROUP 1 LIST 367 00531 0177 M177, 177 368 00532 7600 M760, 7600 369 370 /MICRO GROUP 2 ROUTINE 371 00533 7300 GRP2, CLA CLL 372 00534 1327 TAD CON5 373 00535 3021 DCA Z ADRF 374 00536 1030 TAD Z CN2 375 00537 3035 DCA Z CNTR 376 00540 1020 TAD Z OCT 377 00541 0025 AND Z M377 378 00542 7012 RTR 379 00543 3034 DCA Z TEMP 380 00544 4444 JMS I Z STI /TEST BITS 10,9 381 00545 7430 SZL /TEST BIT 8 382 00546 5353 JMP .+5 383 00547 1021 TAD Z ADRF 384 00550 1036 TAD Z C2 385 00551 3021 DCA Z ADRF 386 00552 5364 JMP .+12 387 00553 1034 TAD Z TEMP 388 00554 7440 SZA /BIT 8 ONLY? 389 00555 5360 JMP .+3 390 00556 4441 JMS I Z PROP 391 00557 5446 JMP I Z NGRI+1 392 00560 7200 CLA 393 00561 1021 TAD Z ADRF 394 00562 1040 TAD Z C10 395 00563 3021 DCA Z ADRF 396 00564 1034 TAD Z TEMP 397 00565 7010 RAR 398 399 00566 3034 DCA Z TEMP 400 00567 1043 TAD Z CN3 401 00570 3035 DCA Z CNTR 402 00571 4444 JMS I Z STI /TEST BITS 7,6,5 403 00572 7420 SNL /TEST BIT 4 404 00573 5445 JMP I Z NGRI 405 00574 1330 TAD CON6 406 00575 3021 DCA Z ADRF 407 00576 4441 JMS I Z PROP 408 00577 5446 JMP I Z NGRI+1 409 410 END4, /LOC. END PAGE 411 412 /PAUSE 413 414 415 /MICRO GROUP 1 ROUTINE 416 417 *600 418 00600 7300 GRP1, CLA CLL 419 00601 1306 TAD CON3 420 00602 3021 DCA Z ADRF 421 00603 1022 TAD Z CN4 422 00604 3035 DCA Z CNTR 423 00605 1020 TAD Z OCT 424 00606 0025 AND Z M377 425 00607 7006 RTL 426 00610 7006 RTL 427 00611 7004 RAL 428 00612 3034 DCA Z TEMP 429 00613 7420 SNL /TEST BITS 4 TO 7 430 00614 5217 JMP .+3 431 00615 4310 JMS SROP /BIT=1 432 00616 5222 JMP .+4 433 00617 1021 TAD Z ADRF 434 00620 1036 TAD Z C2 435 00621 3021 DCA Z ADRF 436 00622 1034 TAD Z TEMP 437 00623 7004 RAL 438 00624 2035 ISZ Z CNTR 439 00625 5212 JMP .-13 440 00626 7300 CLA CLL 441 00627 1020 TAD Z OCT 442 00630 7010 RAR 443 00631 3034 DCA Z TEMP 444 00632 7420 SNL /TEST BIT 11 445 00633 5236 JMP .+3 446 00634 4310 JMS SROP 447 00635 5241 JMP .+4 448 00636 1021 TAD Z ADRF 449 00637 1036 TAD C2 450 00640 3021 DCA Z ADRF 451 00641 1034 TAD Z TEMP 452 00642 7010 RAR 453 00643 3034 DCA Z TEMP 454 455 00644 7420 SNL /TEST BIT 10 456 00645 5251 JMP .+4 457 00646 1021 TAD Z ADRF 458 00647 1037 TAD C4 459 00650 3021 DCA Z ADRF 460 00651 1034 TAD Z TEMP 461 00652 7010 RAR 462 00653 3034 DCA Z TEMP 463 00654 7420 SNL /TEST BIT 9 464 00655 5260 JMP .+3 465 00656 4310 JMS SROP 466 00657 5263 JMP .+4 467 00660 1021 TAD Z ADRF 468 00661 1036 TAD C2 469 00662 3021 DCA Z ADRF 470 00663 1034 TAD Z TEMP 471 00664 7010 RAR 472 00665 7420 SNL /TEST BIT 8 473 00666 5271 JMP .+3 474 00667 4310 JMS SROP 475 00670 5301 JMP .+11 476 00671 7200 CLA 477 00672 1020 TAD Z OCT 478 00673 0025 AND Z M377 479 00674 7440 SZA 480 00675 5301 JMP .+4 481 00676 1307 TAD CON4 482 00677 3021 DCA Z ADRF 483 00700 4310 JMS SROP 484 00701 7200 CLA 485 00702 1026 TAD Z ADC 486 00703 7001 IAC 487 00704 3026 DCA Z ADC 488 00705 5427 JMP I Z BEG /GO TO STRT 489 490 /INTERTIES 491 00706 0102 CON3, MIC1 492 00707 0124 CON4, NOC 493 494 /PRINT OPR CODES SUBROUTINE 495 00710 0000 SROP, 0 496 00711 7200 CLA 497 00712 1421 AA, TAD I Z ADRF 498 00713 0031 AND Z M77 499 00714 7450 SNA 500 00715 5335 JMP BB 501 00716 1032 TAD Z C240 502 00717 4343 JMS SRT 503 00720 1421 TAD I Z ADRF 504 00721 7012 RTR 505 00722 7012 RTR 506 00723 7012 RTR 507 00724 0031 AND Z M77 508 00725 7450 SNA 509 00726 5335 JMP BB 510 511 00727 1032 TAD Z C240 512 00730 4343 JMS SRT 513 00731 1021 TAD Z ADRF 514 00732 7001 IAC 515 00733 3021 DCA Z ADRF 516 00734 5312 JMP AA 517 00735 1032 BB, TAD Z C240 518 00736 4343 JMS SRT 519 00737 1021 TAD Z ADRF 520 00740 7001 IAC 521 00741 3021 DCA Z ADRF 522 00742 5710 JMP I SROP 523 524 /PRINT SUBROUTINE 525 00743 0000 SRT, 0 526 00744 6041 6041 /SKIP IF FLAG=1 527 00745 5344 JMP .-1 528 00746 6046 6046 /PRINT 529 00747 7200 CLA 530 00750 5743 JMP I SRT 531 532 /NO VALID MICRO-OP ROUTINE 533 00751 1020 NGR, TAD Z OCT 534 00752 7110 CLL RAR 535 00753 7620 SNL CLA 536 00754 5357 JMP .+3 537 00755 1020 TAD Z OCT 538 00756 4433 JMS I Z POCT 539 00757 1026 TAD Z ADC 540 00760 7001 IAC 541 00761 3026 DCA Z ADC 542 00762 5427 JMP I Z BEG /GO TO STRT 543 544 END6, /LOC. END PAGE 545 546 /FLOATING POINT OP. CODES ROUTINE 547 548 *1000 549 01000 1270 FPNT, TAD FCD1I 550 01001 3021 DCA Z ADRF 551 01002 1020 TAD Z OCT 552 01003 7640 SZA CLA 553 01004 5210 JMP .+4 554 01005 4441 JMS I Z PROP /PRINT FEXT 555 01006 3050 DCA Z FPSWIT 556 01007 5240 JMP FPEND 557 01010 4272 JMS STEP3 558 01011 1020 TAD Z OCT 559 01012 0265 AND M1000 560 01013 3034 DCA Z TEMP 561 01014 1034 TAD Z TEMP 562 01015 7640 SZA CLA 563 01016 5244 JMP FPNT1 564 01017 1020 TAD Z OCT 565 01020 7041 CMA IAC 566 567 01021 7001 IAC 568 01022 7440 SZA 569 01023 5226 JMP .+3 570 01024 4441 JMS I Z PROP /PRINT AQ 571 01025 5240 JMP FPEND 572 01026 3034 DCA Z TEMP 573 01027 4272 JMS STEP3 574 01030 1034 TAD Z TEMP 575 01031 7001 IAC 576 01032 7640 SZA CLA 577 01033 5236 JMP .+3 578 01034 4441 JMS I Z PROP /PRINT SQRT 579 01035 5240 JMP FPEND 580 01036 1020 TAD Z OCT 581 01037 4433 JMS I Z POCT /PRINT OCTAL 582 01040 1026 FPEND, TAD Z ADC 583 01041 7001 IAC 584 01042 3026 DCA Z ADC 585 01043 5427 JMP I Z BEG /GO TO STRT 586 01044 1267 FPNT1, TAD N7 587 01045 3035 DCA Z CNTR 588 01046 1271 TAD FCD2I 589 01047 3021 DCA Z ADRF 590 01050 1034 TAD Z TEMP 591 01051 1265 TAD M1000 592 01052 7440 SZA 593 01053 7410 SKP 594 01054 5666 JMP I ENDOI /PRINT F.P. OP. CODE 595 01055 3034 DCA Z TEMP 596 01056 4272 JMS STEP3 597 01057 2035 ISZ Z CNTR 598 01060 5250 JMP FPNT1+4 599 01061 1020 TAD Z OCT 600 01062 4433 JMS I Z POCT /PRINT OCTAL 601 01063 5240 JMP FPEND 602 603 /CONSTANTS AND INTERTIES 604 01064 0003 C3, 3 605 01065 7000 M1000, -1000 606 01066 0464 ENDOI, ENDO 607 01067 7771 N7, -7 608 01070 1077 FCD1I, FCODE 609 01071 1110 FCD2I, FCODE2 610 611 /STEP ADDR. FINDER SUBR. 612 01072 0000 STEP3, 0 613 01073 1021 TAD Z ADRF 614 01074 1264 TAD C3 615 01075 3021 DCA Z ADRF /STEP 3 ADDRESSES 616 01076 5672 JMP I STEP3 617 618 /FLOATING POINT CODES 619 01077 4546 FCODE, 4546 /FEXT 620 01100 6470 6470 621 01101 0000 0 622 01102 6163 6163 /SQ 623 01103 0000 0 624 01104 0000 0 625 01105 6163 6163 /SQRT 626 01106 6462 6462 627 01107 0000 0 628 01110 4146 FCODE2, 4146 /FADD 629 01111 4444 4444 630 01112 0000 0 631 01113 6346 6346 /FSUB 632 01114 4265 4265 633 01115 0000 0 634 01116 5546 5546 /FMPY 635 01117 7160 7160 636 01120 0000 0 637 01121 4446 4446 /FDIV 638 01122 6651 6651 639 01123 0000 0 640 01124 4746 4746 /FGET 641 01125 6445 6445 642 01126 0000 0 643 01127 6046 6046 /FPUT 644 01130 6465 6465 645 01131 0000 0 646 01132 5646 5646 /FNOR 647 01133 6257 6257 648 01134 0000 0 649 650 END10, /LOC. END PAGE 651 652 653 /READ INTO BUFFER AREA AND OUTPUT FROM BUFFER AREA. 654 655 *1200 656 01200 1267 READ, TAD BADD1 /SET INDEXES 657 01201 3016 DCA Z BINDX 658 01202 1270 TAD AADD1 659 01203 3017 DCA Z AINDX 660 01204 4455 JMS I Z READ1I /READ TELE 1 661 01205 6036 6036 /READ TELE. 662 01206 7106 CLL RTL /SHIFT 5 LEFT 663 01207 7006 RTL 664 01210 7004 RAL 665 01211 7430 SZL /LOOK FOR CH. 8 666 01212 5454 JMP I Z ENDTI /YES 667 01213 7104 CLL RAL /NO 668 01214 4455 JMS I Z READ1I 669 01215 6034 6034 /NO CLEAR, READ TELE 670 01216 3416 DCA I BINDX 671 01217 6032 6032 /CLEAR AC & FLAG 672 01220 1036 TAD Z C2 673 674 01221 3460 DCA I Z SETI /SET END TAPE FLAG 675 01222 7420 SNL /LOOK FOR CH. 7 676 01223 5227 JMP .+4 /NO 677 01224 1016 TAD Z BINDX /YES 678 01225 7041 CMA IAC 679 01226 3417 DCA I Z AINDX 680 01227 1016 TAD Z BINDX 681 01230 1273 TAD ENDB 682 01231 7640 SZA CLA /END OF BUFFER? 683 01232 5204 JMP READ+4 /NO 684 01233 1016 OUT8, TAD Z BINDX /YES 685 01234 7041 CMA IAC 686 01235 3271 DCA END 687 01236 1267 TAD BADD1 /RESET INDEXES 688 01237 3016 DCA Z BINDX 689 01240 1270 TAD AADD1 690 01241 3017 DCA Z AINDX 691 01242 1417 TAD I Z AINDX 692 01243 3272 DCA ADDA 693 694 01244 4463 OUT, JMS I Z CRLFPI /PRINT CR & LF 695 01245 1016 TAD Z BINDX 696 01246 1271 TAD END 697 01247 7650 SNA CLA /END OF BUFFER? 698 01250 5200 JMP READ /YES 699 01251 1416 TAD I Z BINDX /NO 700 01252 3020 DCA Z OCT 701 01253 1016 TAD Z BINDX 702 01254 1272 TAD ADDA 703 01255 7640 SZA CLA /ADDRESS ASSIGNMENT? 704 01256 5456 JMP I Z BBBI /NO 705 01257 1020 TAD Z OCT /YES 706 01260 3026 DCA Z ADC /STORE ADDRESS 707 01261 1017 TAD Z AINDX 708 01262 3272 DCA ADDA 709 01263 3672 DCA I ADDA 710 01264 1417 TAD I Z AINDX 711 01265 3272 DCA ADDA 712 01266 5462 JMP I Z AAAI 713 714 /TAGS & CONSTANTS 715 01267 1277 BADD1, 1277 716 01270 1347 AADD1, 1347 717 01271 0000 END, 0 718 01272 0000 ADDA, 0 719 01273 6431 ENDB, -1347 720 721 END12, /END PAGE 722 723 *1400 724 01400 0000 S01400, 0000 / This seems to paginate the output. 725 01401 2234 ISZ LINES / Page full? 726 01402 5600 JMP I S01400 / Not yet 727 01403 4205 JMS S01405 / Yes, fix it 728 01404 5600 JMP I S01400 729 01405 0000 S01405, 0000 730 01406 1233 TAD N36D / 36 lines per page 731 01407 3234 DCA LINES 732 01410 1235 TAD N72D 733 01411 3236 DCA D01436 734 01412 1237 L01412, TAD DASH / Print 72 dashes. 735 01413 4442 JMS I Z PRT 736 01414 2236 ISZ D01436 737 01415 5212 JMP L01412 738 01416 1240 TAD CR2 / New line 739 01417 4442 JMS I Z PRT 740 01420 1241 TAD LF2 741 01421 4442 JMS I Z PRT 742 01422 1241 TAD LF2 / Blank line 743 01423 4442 JMS I Z PRT 744 01424 5605 JMP I S01405 / Return 745 01425 6032 START, KCC / Fetch a character 746 01426 6046 TLS / Start the printeer 747 01427 1240 TAD CR2 / Beginning of line 748 01430 4442 JMS I Z PRT 749 01431 4205 JMS S01405 / Start new page 750 01432 5642 JMP I P01442 / Start main program 751 01433 7742 N36D, -36 / -30 decimal 752 01434 0000 LINES, .-. 753 01435 7670 N72D, -110 / -72 decimal 754 01436 0000 D01436, .-. 755 01437 0255 DASH, "- 756 01440 0215 CR2, 215 757 01441 0212 LF2, 212 758 01442 0200 P01442, L00200 759 760 END14, /END PAGE 761 762 /END OF PROGRAM 763 $