📄 acelp_ca_asm.asm
字号:
MAC *(AL), B ; |185|
;----------------------------------------------------------------------
; 186 | *p0-- = extract_h(cor);
;----------------------------------------------------------------------
LD B,A ; |186|
SFTL A,#-16,A ; |186|
STL A,*AR5- ; |186|
;----------------------------------------------------------------------
; 193 | l_fin_sup = MSIZE-1;
; 194 | l_fin_inf = l_fin_sup-(Word16)1;
; 195 | ldec = NB_POS+1;
; 197 | ptr_hd = h;
;----------------------------------------------------------------------
L8:
;----------------------------------------------------------------------
; 198 | ptr_hf = ptr_hd + 1;
;----------------------------------------------------------------------
;RSBX OVM
LD *SP(51),A
ADD #1,A,A
STL A,*SP(53)
LD *SP(48),A
ADD #1,A,A
STL A,*SP(54)
LD *SP(44),A
ADD #1,A,A
STL A,*SP(42)
MVMM SP,AR6
LD *SP(47),A
SUB #1,A,A
STL A,*SP(43)
MAR *+AR6(#3)
;----------------------------------------------------------------------
; 200 | for(k=0; k<NB_POS; k++) {
;----------------------------------------------------------------------
STM #7,AR7
STM #0,BK
L9:
;----------------------------------------------------------------------
; 202 | p3 = rri2i3 + l_fin_sup;
;----------------------------------------------------------------------
MVDK *SP(53),*(AR5)
;----------------------------------------------------------------------
; 203 | p2 = rri1i2 + l_fin_sup;
;----------------------------------------------------------------------
MVDK *SP(54),*(AR1)
;----------------------------------------------------------------------
; 204 | p1 = rri0i1 + l_fin_sup;
;----------------------------------------------------------------------
MVDK *SP(42),*(AR2)
;----------------------------------------------------------------------
; 205 | p0 = rri0i4 + l_fin_inf;
; 207 | cor = 0;
; 208 | ptr_h1 = ptr_hd;
;----------------------------------------------------------------------
MVDK *SP(43),*(AR0)
;----------------------------------------------------------------------
; 209 | ptr_h2 = ptr_hf;
;----------------------------------------------------------------------
MVMM AR6,AR4
LD #0,A
DST A,*SP(56)
MVMM SP,AR3
MAR *+AR3(#2)
;----------------------------------------------------------------------
; 211 | for(i=k+(Word16)1; i<NB_POS; i++ ) {
;----------------------------------------------------------------------
;SSBX SXM
LD *(BK),B ; |211|
SUB #7,B,B ; |211|
BC L11,BGEQ ; |211|
LDM BK,A
LD #6,B
SUB A,B
STLM B,BRC
SSBX OVM
NOP
RPTB L11-1
L10:
;----------------------------------------------------------------------
; 213 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
DLD *SP(56),A
;ORM #2,*(PMST)
;SSBX FRCT
;SSBX OVM
;ORM #2,*(PMST)
NOP
MAC *AR4+, *AR3+, A, A ; |213|
;----------------------------------------------------------------------
; 214 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
;SFTA A,8 ; |214|
;SSBX OVM
;SFTA A,-8 ; |214|
MAC *AR4+, *AR3+, A, A ; |214|
DST A,*SP(56) ; |214|
;----------------------------------------------------------------------
; 215 | *p3 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,B ; |215|
STL B,*AR5 ; |215|
;----------------------------------------------------------------------
; 217 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
DLD *SP(56),A
;SSBX OVM
NOP
MAC *AR4+, *AR3+, A, A ; |217|
;----------------------------------------------------------------------
; 218 | *p2 = extract_h(cor);
;----------------------------------------------------------------------
LD A,B
SFTL B,#-16,B ; |218|
STL B,*AR1 ; |218|
;----------------------------------------------------------------------
; 220 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
;SFTA A,8
;SSBX OVM
;SFTA A,-8
MAC *AR4+, *AR3+, A, A
;----------------------------------------------------------------------
; 221 | *p1 = extract_h(cor);
;----------------------------------------------------------------------
LD A,B
SFTL B,#-16,B
STL B,*AR2
;----------------------------------------------------------------------
; 223 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
;SFTA A,8
;SSBX OVM
;SFTA A,-8
MAC *AR4+, *AR3+, A, A
DST A,*SP(56)
;----------------------------------------------------------------------
; 224 | *p0 = extract_h(cor);
;----------------------------------------------------------------------
LD A,B
SFTL B,#-16,B ; |224|
STL B,*AR0 ; |224|
;----------------------------------------------------------------------
; 226 | p3 -= ldec;
;----------------------------------------------------------------------
MAR *+AR5(#-9)
;----------------------------------------------------------------------
; 227 | p2 -= ldec;
;----------------------------------------------------------------------
MAR *+AR1(#-9)
;----------------------------------------------------------------------
; 228 | p1 -= ldec;
;----------------------------------------------------------------------
MAR *+AR2(#-9)
;----------------------------------------------------------------------
; 229 | p0 -= ldec;
;----------------------------------------------------------------------
MAR *+AR0(#-9)
L11:
;----------------------------------------------------------------------
; 231 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
DLD *SP(56),A
;ORM #2,*(PMST)
;SSBX FRCT
;SSBX OVM
;ORM #2,*(PMST)
NOP
MAC *AR4+, *AR3+, A, A ; |231|
;----------------------------------------------------------------------
; 232 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
;SFTA A,8 ; |232|
;SSBX OVM
;SFTA A,-8 ; |232|
MAC *AR4+, *AR3+, A, A ; |232|
;----------------------------------------------------------------------
; 233 | *p3 = extract_h(cor);
;----------------------------------------------------------------------
LD A,B
SFTL B,#-16,B ; |233|
STL B,*AR5 ; |233|
;----------------------------------------------------------------------
; 235 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
;SFTA A,8 ; |235|
;SSBX OVM
;SFTA A,-8 ; |235|
MAC *AR4+, *AR3+, A, A ; |235|
;----------------------------------------------------------------------
; 236 | *p2 = extract_h(cor);
;----------------------------------------------------------------------
LD A,B
SFTL B,#-16,B ; |236|
STL B,*AR1 ; |236|
;----------------------------------------------------------------------
; 238 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
;RSBX OVM
;NOP
;SFTA A,8 ; |238|
;SSBX OVM
;SFTA A,-8 ; |238|
MAC *AR4, *AR3, A, A ; |238|
DST A,*SP(56) ; |238|
;----------------------------------------------------------------------
; 239 | *p1 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,A ; |239|
STL A,*AR2 ; |239|
;----------------------------------------------------------------------
; 241 | l_fin_sup -= NB_POS;
;----------------------------------------------------------------------
;RSBX OVM
LD *SP(53),A
ADD #-8,A
STL A,*SP(53)
LD *SP(54),A
ADD #-8,A
STL A,*SP(54)
LD *SP(42),A
ADD #-8,A
STL A,*SP(42)
;----------------------------------------------------------------------
; 242 | l_fin_inf--;
;----------------------------------------------------------------------
LD *SP(43),A
SUB #1,A
STL A,*SP(43)
;----------------------------------------------------------------------
; 243 | ptr_hf += STEP;
;----------------------------------------------------------------------
MAR *+AR6(#5)
;----------------------------------------------------------------------
; 250 | ptr_hd = h;
;----------------------------------------------------------------------
MAR *AR7-
LDM BK,A
ADD #1,A
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -