mr10.asm

来自「"DIGITAL SIGNAL PROCESSING WITH C AND TH」· 汇编 代码 · 共 836 行 · 第 1/4 页

ASM
836
字号
          .title  "MR10.ASM"          ;10-BAND MULTIRATE FILTER
          .option X                   ;FOR XREF
          .global BEGIN, LOOP, SET_UP, PROCESS, WAIT, SWITCH  ;REF/DEF SYMBOLS
          .global RST_WBFR, CHANGE, RETURN, FILTER, INTRPLTR
          .sect   "VECTORS"           ;ASSEMBLE INTO VECTOR SECTION
RESET     .word   BEGIN               ;RESET VECTOR
          .space  8                   ;SKIP 8 WORDS
TIMER0    .word   ISR                 ;TINT0 VECTOR LOCATION @ 9h
          .space  54                  ;REMAINDER OF VECTOR SECTION
;*****************************************************************************
;*   THIS SECTION DEFINES MEMORY FOR SCALE VALUES, COEFFS, ETC, ETC.         *
;*****************************************************************************
          .data                       ;ASSEMBLE INTO DATA SECTION
SCALE_1L  .float  0.0                 ;SCALE VALUES
SCALE_1M  .float  0.0                 ;  10 FILTERS * 3 BANDS = 30 SCALE VALUES
SCALE_1U  .float  0.0
SCALE_2L  .float  0.0
SCALE_2M  .float  0.0
SCALE_2U  .float  0.0
SCALE_3L  .float  0.0
SCALE_3M  .float  0.0
SCALE_3U  .float  0.0
SCALE_4L  .float  0.0
SCALE_4M  .float  0.0
SCALE_4U  .float  0.0
SCALE_5L  .float  0.0
SCALE_5M  .float  0.0
SCALE_5U  .float  0.0
SCALE_6L  .float  0.0
SCALE_6M  .float  0.0
SCALE_6U  .float  0.0
SCALE_7L  .float  0.0
SCALE_7M  .float  0.0
SCALE_7U  .float  0.0
SCALE_8L  .float  0.0
SCALE_8M  .float  0.0
SCALE_8U  .float  0.0
SCALE_9L  .float  0.0
SCALE_9M  .float  0.0
SCALE_9U  .float  0.0
SCALE_0L  .float  0.0
SCALE_0M  .float  1.0                 ;BAND 10 MID ON
SCALE_0U  .float  0.0
LFILT_40  .float  0.000000000         ;LOW 1/3 OCTAVE COEFFICIENTS #40 TO #0
          .float  0.000000000
          .float  0.001861572
          .float  0.009765625
          .float  0.004577636
          .float -0.007446289
          .float -0.005493164
          .float -0.000274658
          .float -0.015899658
          .float -0.019592285
          .float  0.037536621
          .float  0.089355468
          .float  0.005004882
          .float -0.159637451
          .float -0.143707275
          .float  0.124420166
          .float  0.299743652
          .float  0.065185546
          .float -0.322631835
          .float -0.308929443
          .float  0.140655517
          .float  0.421447753
          .float  0.140655517
          .float -0.308929443
          .float -0.322631835
          .float  0.065185546
          .float  0.299743652
          .float  0.124420166
          .float -0.143707275
          .float -0.159637451
          .float  0.005004882
          .float  0.089355468
          .float  0.037536621
          .float -0.019592285
          .float -0.015899658
          .float -0.000274658
          .float -0.005493164
          .float -0.007446289
          .float  0.004577636
          .float  0.009765625
LFILT_0   .float  0.001861572
MFILT_40  .float -0.001342773         ;MID 1/3 OCTAVE COEFFICIENTS #40 T0 #0
          .float -0.000488281
          .float -0.003692626
          .float  0.003509521
          .float  0.009277343
          .float -0.004486083
          .float -0.007781982
          .float  0.000396728
          .float -0.011413574
          .float  0.009765625
          .float  0.057342529
          .float -0.023529052
          .float -0.131866455
          .float  0.035247802
          .float  0.225738525
          .float -0.038635253
          .float -0.319488525
          .float  0.030212402
          .float  0.389099121
          .float -0.011444091
          .float -0.414855957
          .float -0.011444091
          .float  0.389099121
          .float  0.030212402
          .float -0.319488525
          .float -0.038635253
          .float  0.225738525
          .float  0.035247802
          .float -0.131866455
          .float -0.023529052
          .float  0.057342529
          .float  0.009765625
          .float -0.011413574
          .float  0.000396728
          .float -0.007781982
          .float -0.004486083
          .float  0.009277343
          .float  0.003509521
          .float -0.003692626
          .float -0.000488281
MFILT_0   .float -0.001342773
UFILT_40  .float  0.001953125        ;UPPER 1/3 OCTAVE COEFFICIENTS #40 TO #0
          .float -0.003295898
          .float -0.000396728
          .float  0.001861572
          .float  0.001007080
          .float  0.003356933
          .float -0.010589599
          .float  0.002441406
          .float  0.006927490
          .float  0.003692626
          .float  0.006896972
          .float -0.064880371
          .float  0.055999755
          .float  0.110687255
          .float -0.229766845
          .float  0.020507812
          .float  0.334716796
          .float -0.306884764
          .float -0.166229248
          .float  0.463836669
          .float -0.166229248
          .float -0.306884764
          .float  0.334716796
          .float  0.020507812
          .float -0.229766845
          .float  0.110687255
          .float  0.055999755
          .float -0.064880371
          .float  0.006896972
          .float  0.003692626
          .float  0.006927490
          .float  0.002441406
          .float -0.010589599
          .float  0.003356933
          .float  0.001007080
          .float  0.001861572
          .float -0.000396728
          .float -0.003295898
          .float  0.001953125
          .float  0.000000000
UFILT_0   .float  0.000000000

INTR_01   .float  0.012542724         ;INTRPLTR COEFFICIENTS #1,3,..,21
INTR_03   .float -0.034423828
INTR_05   .float  0.079803466
INTR_07   .float -0.180267334
INTR_09   .float  0.625427246
INTR_11   .float  0.625427246
INTR_13   .float -0.180267334
INTR_15   .float  0.079803466
INTR_17   .float -0.034423828
INTR_19   .float  0.012542724
INTR_21   .float  0.000000000         ;set to zero
INTR_00   .float  0.007263183         ;INTRPLTR COEFFICIENTS #0,2,...,20
INTR_02   .float -0.012023925
INTR_04   .float  0.019012451
INTR_06   .float -0.025939941
INTR_08   .float  0.030700683
INTR_10   .float  0.967346191
INTR_12   .float  0.030700683
INTR_14   .float -0.025939941
INTR_16   .float  0.019012451
INTR_18   .float -0.012023925
INTR_20   .float  0.007263183

FLT1_IN   .usect  "F_DATA",64         ;START OF FILTER'S INPUT SAMPLES
FLT2_IN   .usect  "F_DATA",64
FLT3_IN   .usect  "F_DATA",64
FLT4_IN   .usect  "F_DATA",64
FLT5_IN   .usect  "F_DATA",64
FLT6_IN   .usect  "F_DATA",64
FLT7_IN   .usect  "F_DATA",64
FLT8_IN   .usect  "F_DATA",64
FLT9_IN   .usect  "F_DATA",64
FLT0_IN   .usect  "F_DATA",64

I1_DATA   .usect  "I_DATA",16         ;START OF INTRPLTR'S INPUT SAMPLES
I2_DATA   .usect  "I_DATA",16
I3_DATA   .usect  "I_DATA",16
I4_DATA   .usect  "I_DATA",16
I5_DATA   .usect  "I_DATA",16
I6_DATA   .usect  "I_DATA",16
I7_DATA   .usect  "I_DATA",16
I8_DATA   .usect  "I_DATA",16

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?