* SUBR SOUND REV D PAGE 1
0001 * SUBR SOUND REV D
0002 REL
0003 SUBR SOUND,
SOUN 14-12-70 EI
0004 00000 0 000000 SOUN DAC **
0005 00001 0 10 00000 CALL CORR
0006 00002 101000 NOP
0007 00003 0 04 00106 STA T
0008 00004 54 1011 INA '1011
0009 00005 0 01 00004 JMP *-1
0010 00006 0 04 00107 STA T+1
0011 00007 0414 65 LGL 11
0012 00010 0405 65 ARS 11
0013 00011 0 04 00115 STA PHOR
0014 00012 0 02 00107 LDA T+1
0015 00013 0414 72 LGL 6
0016 00014 0405 65 ARS 11
0017 00015 0 04 00113 STA PVRT
0018 00016 101000 NOP
0019 00017 54 1006 INA '1006
0020 00020 0 01 00017 JMP *-1
0021 00021 0414 66 LGL 10
0022 00022 0 04 00116 STA LEVL
0023 00023 0 02 00106 LDA T
0024 00024 0 03 00126 ANA ='1740
SEPARATE VERTICAL
0025 00025 0414 72 LGL 6
AND HORZ. SHIFTS
0026 00026 0405 65 ARS 11
0027 00027 0 10 00101 JST MLT3 GO MULTIPLY BY 3
0028 00030 0 06 00113 ADD PVRT
0029 00031 0 10 00000 CALL OVFL
0030 00032 0 03 00125 ANA ='37
0031 00033 0414 73 LGL 5
0032 00034 0 04 00112 STA VERT
0033 00035 0 02 00106 LDA T
0034 00036 0 03 00124 ANA ='160000
0035 00037 100040 SZE
0036 00040 0 10 00000 CALL ALARM
0037 00041 0 02 00106 LDA T
0038 00042 0414 65 LGL 11
0039 00043 0405 65 ARS 11
0040 00044 0 10 00101 JST MLT3
0041 00045 0 06 00115 ADD PHOR
0042 00046 0 10 00000 CALL OVFL
0043 00047 0 03 00125 ANA ='37
0044 00050 0 04 00114 STA HORZ
0045 00051 0 06 00112 ADD VERT
0046 00052 0 06 00116 ADD LEVL
0047 00053 74 0021 OTA '21
COMBINE VITH VERT*
0048 00054 0 01 00053 JMP *-1
AND OUTPUT*
0049 00055 0 04 00121 STA SAVE
0050 00056 54 1011 INA INA '1011
0051 00057 0 01 00056 JMP *-1
GET POSITION
0052 00060 0 03 00125 ANA ='37
0053 00061 0 07 00114 SUB HORZ
0054 00062 101400 SMI COMPARE MTH DESIRED P.
0055 00063 0 01 00066 JMP *+3
SET UP 1 BIT TOLLERAMCE
0056 00064 0 05 00123 ERA =-1
GET ABSOLUTE VALUE
0057 00065 0 07 00123 SUB =-1
* SUBR SOUND REV D PAGE 2
0058 00066 0 03 00122 ANA ='177776
0059 00067 101040 SNZ
0060 00070 0 01 00073 JMP ON
0061 00071 0 12 00117 IRS CYCL
0062 00072 0 01 00056 JMP INA
0063 00073 0 02 00120 ON LDA DLAY
0064 00074 0 10 00000 CALL WAIT
0065 00075 140040 CRA
0066 00076 0 04 00117 STA CYCL
0067 00077 0 02 00121 LDA SAVE
0068 00100 -0 01 00000 JMP*
SOUN
0069 00101 0 000000 MLT3 DAC **
0070 00102 0 04 00110 STA T+2
0071 00103 0414 77 LGL 1
0072 00104 0 06 00110 ADD T+2
0073 00105 -0 01 00101 JMP*
MLT3
0074 *
0075 00106 T BSS 4
0076 00112 000000 VERT BSZ 1
0077 00113 000000 PVRT BSZ 1
0078 00114 000000 HORZ BSZ 1
0079 00115 000000 PHOR BSZ 1
0080 00116 000000 LEVL BSZ 1
0081 00117 177770 CYCL OCT -10
0082 00120 000003 DLAY OCT 3
0083 00121 000000 SAVE BSZ 1
0084 00122 177776 END
00123 177777
00124 160000
00125 000037
00126 001740
CYCL 000117 DLAY 000120 HORZ 000114 INA 000056
LEVL 000116 MLT3 000101 ON 000073 PHOR 000115
PVRT 000113 SAVE 000121 SOUN 000000 T 000106
VERT 000112
0000 WARNING OR ERROR FLAGS
DAP-16 MOD 2 REV. C 01-26-71