*1500 SUMR, 0 /SUBR TO ADD SERIES CLA CLL /SET UP PTR TO DCA POINT /LOC. OF FIRST NO. GETX, TAD I POINT /GET NEXT NO. SPA /IS NO. NEGATIVE? JMP NEG /YES: JMP TO MAKE XH NEG. ADD, TAD SUML /ADD X TO SUM DCA SUML / RAL /ADD LINK TO HIGH WORD TAD SUMH / TAD XH /ADD X HI WORD TO SUM DCA SUMH DCA XH /CLEAR X HI WORD ISZ KI /INCREMENT KI TAD N CIA TAD KI /DONE X(N)? SNA JMP I SUMR /YES: RETURN CLA CLL /NO: ISZ POINT /INCREMENT PTR JMP GETX /GO TO GET NEXT NO. NEG, CLA CLL CMA /MAKE XH NEG. DCA XH /FOR NEG. X(I) TAD I POINT /GET X(I) BACK JMP ADD /GO TO ADD TO SUM SAMPLE, 0 /ADC SUBROUTINE TO GET N SAMPLES CLL CLA /T SEC APART 6500 /CLEAR ADC CONTROLLER FLAGS 6506 /LOAD CONTROLL REG WITH 0 TAD N /INITIALIZE TO CIA /COUNT N SAMPLES DCA MN TAD T /T IS SAMPLE TIME IN CIA /MULTIPLES OF 0.115 MSEC DCA MT DCA 10 /SET POINTER TO DATA CH 1 DCA 11 /AND CH 2 6505 /START CONVERSION 6501 JMP .-1 /WAIT FOR SAMPLE SYNC PULSE TAD CHECK /IS SAMPLE OVER THRESHOLD ? SPA CLA JMP .-5 /NO: KEEP WAITING IAC 6506 /TO CH 1 NOP /AND WAIT 4.8 MICROSEC NOP NOP NOP CDF 10 NSAMP, 6505 /START CONVERSION TAD MT /INITIALIZE DELAY LOOP DCA COUNT TAD M022 DCA CT1 NOP /THIS LOOP TAKES ISZ CT1 /ABOUT JMP .-2 /90 MICROSEC ISZ COUNT JMP .-6 /OUTER LOOP ENDS HERE 6502 /READ ADC BUFFER CH 1 DCA I 10 /STORE SAMPLE CDF 20 IAC IAC 6506 /LOAD CONYROL REG WITH 2 NOP NOP NOP NOP 6505 /START CONVERSION 6501 JMP .-1 /WAIT FOR SIGNAL DCA I 11 /STORE SAMPLE 2 ISZ MN /DONE ALL SAMPLES YET/ JMP NSAMP /NO IAC IAC /INITIALIZE NOCTR TO DCA NOCTR /CHANGE DATD FIELD LOOP5, CLA CLL TAD N /INITIALIZE TO COUNT CIA /N SAMPLES DCA MN CLA CLL /CLEAR AC AND LINK DCA 10 /SET POINTER DCA 11 /TO GET DCA 12 /AND STORE DCA 13 /DATA CH 1 AND 2 NSTORE, TAD I 10 /GET NUMBER SPA /IS NO. POSITIVE CLL CML IAC /NO: SET LINK AND BIT 11 RTR /SHIFTS NO. TO BITS 2-11 DCA I 11 /STORES NUMBER TAD I 12 SPA CLL CML IAC RTR DCA I 13 ISZ MN /DONE ALL SAMPLES YET? JMP NSTORE /NO ISZ NOCTR /YES: DONE BOTH DATA FIELDS? JMP .+3 /NO: CDF 00 /YES JMP I SAMPLE /RETURN CDF 10 /NO: CHANGE DATA FIELD JMP LOOP5 /DO DATA FIELD 1