100 DCA FLBLK /PUT INTO CALL 110 JMS I (PQINIT) /INITIALIZE FILE 120 FLBLK, SFILES /INITIAL FILE POINTER 130 1 /LINE NUMBER 1 140 1 /INCREMENT IS 1 150 XLIST OFF > 160 XLIST ON 170 JMP I (NEXT) /GO START IT UP 180 EJECT 190 DECIMAL 200 210 POWTEN,/-1664; -2442 /-10^7 220 -576; -245 /-10^6 230 -1696; -25 /-10^5 240 -1808; -3 /-10^4 250 -1000; -1 /-10^3 260 -100; -1 /-10^2 270 -10; -1 /-10^1 280 -1; -1 /-10^0 290 0 /END OF LIST 300 310 OCTAL 320 EJECT 330 DADD, .-. /DAD ROUTINE 340 DCA DCOM /SAVE AC 350 TAD I DADD /GET ARGUMENT ADDRESS 360 DCA DLOAD /SAVE THAT 370 MQA /GET MQ 380 CLL /INITIALIZE LINK 390 TAD I DLOAD /ADD LOW 400 MQL /PUT BACK 410 ISZ DADD /BUMP RETURN ADDRESS 420 ISZ DLOAD /BUMP ARGUMENT POINTER 430 RAL /GET OVERFLOW 440 TAD DCOM /+OLD AC 450 TAD I DLOAD /+HIGH ORDER 460 JMP I DADD /RETURN 470 480 DLOAD, .-. /DLD ROUTINE 490 CAM /CLEAR AC + MQ 500 TAD DLOAD /GET ADDRESS 510 DCA DADD /PUT IN DAD 520 JMP DADD+1 /DO IT 530 540 DCOM, .-. /DCM ROUTINE 550 SWP /MQ FIRST 560 CLL CIA /CLEAR LINK + COMPLEMENT 570 SWP /PUT BACK 580 CMA /COMPLEMENT 590 SZL /AND MAYBE 600 IAC /INCREMENT 610 JMP I DCOM /RETURN 620 630 DSTR, .-. /DST ROUTINE 640 DCA DCOM /SAVE AC 650 TAD I DSTR /GET ARGUMENT ADDRESS 660 DCA DLOAD /SAVE THAT 670 MQA /GET MQ 680 DCA I DLOAD /STORE IN LOW 690 ISZ DSTR /BUMP RETURN ADDRESS 700 ISZ DLOAD /BUMP ARGUMENT POINTER 710 TAD DCOM /GET OLD AC 720 DCA I DLOAD /STORE IN HIGH 730 TAD DCOM /GET AGAIN 740 JMP I DSTR /RETURN 750 760 PAGE 770 EJECT 780 SPRINT, .-. /SIGNED PRINT ROUTINE 790 DCA SPTEMP /SAVE PASSED VALUE 800 TAD SPTEMP /GET IT BACK 810 SMA /SKIP IF NEGATIVE 820 JMP SPOS /JUMP IF POSITIVE 830 CIA /MAKE IT POSITIVE 840 DCA SPTEMP /SAVE IT 850 TAD ["-&77] /GET A "-" SIGN 860 JMS I [P6CH] /PRINT IT 870 TAD SPTEMP /GET THE NEW VALUE 880 SPOS, JMS I [PRTVAL] /PRINT THE NUMBER 890 JMS I [TABPRT] /PRINT A 900 JMP I SPRINT /RETURN 910 920 SPTEMP, .-. /SPRINT TEMPORARY 930 EJECT 940 SPKFND, .-. /SPIKE FINDING ROUTINE 950 TAD (PRMTBL-1) /ADD ON TABLE ADDRESS TO PASSED OFFSET 960 DCA XR1 /STASH IT 970 TAD I SPKFND /GET FIRST ARGUMENT 980 DCA SPARG1 /STASH IT 990 MOVE /MOVE FROM 1000 SPARG1, .-.; SPKTM1 /ARGUMENT TO TEMPORARY 1010 ISZ SPKFND /BUMP TO NEXT 1020 TAD I SPKFND /GET SECOND ARGUMENT 1030 DCA SPARG2 /STASH IT 1040 MOVE /MOVE FROM 1050 SPARG2, .-.; SPKTM2 /ARGUMENT TO TEMPORARY 1060 ISZ SPKFND /BUMP PAST ARGUMENT 1070 TAD I XR1 /GET BEGIN CORRECTION 1080 XLIST OFF 1090 IFZERO EAESET < 1100 XLIST ON 1110 ASR; 14-1 /MOVE DOWN 1120 XLIST OFF > 1130 IFNZRO EAESET < 1140 XLIST ON 1150 ASR; 14 /MOVE DOWN 1160 XLIST OFF > 1170 XLIST ON 1180 DAD; SPKTM1 /ADJUST BEGINNING 1190 DST; SPKTM1 /SAVE IT BACK 1200 DST; FRSPIKE /INITIALIZE POINTERS 1210 DST; LSPIKE 1220 CLA /CLEAN UP 1230 TAD I XR1 /GET THE END CORRECTION 1240 XLIST OFF 1250 IFZERO EAESET < 1260 XLIST ON 1270 ASR; 14-1 /MOVE DOWN 1280 XLIST OFF > 1290 IFNZRO EAESET < 1300 XLIST ON 1310 ASR; 14 /MOVE DOWN 1320 XLIST OFF > 1330 XLIST ON 1340 DAD; SPKTM2 /ADJUST ENDING 1350 DST; SPKTM2 /SAVE IT BACK 1360 STA /SET THE 1370 DCA FSW /FIRST TIME SWITCH 1380 DCA SPKCNT /CLEAR SPIKE COUNTER 1390 CAM /CLEAN THE MQ 1400 JMP FCHECK /GO INTO IT 1410 EJECT