📄 acelp_ca_asm.asm
字号:
ADD #5,A
STLM A,BK
LD *SP(50),A
STL A,*SP(54)
LD *SP(46),A
STL A,*SP(50)
LD *SP(52),A
STL A,*SP(46)
LD *SP(49),A
STL A,*SP(42)
LD *SP(45),A
STL A,*SP(43)
;----------------------------------------------------------------------
; 311 | for(k=0; k<NB_POS; k++) {
;----------------------------------------------------------------------
LD #0,B
STM #7,BRC
RPTB L18-1
L15:
;----------------------------------------------------------------------
; 313 | p4 = rri1i4 + l_fin_sup;
;----------------------------------------------------------------------
MVDK *SP(54),*(AR2)
;----------------------------------------------------------------------
; 314 | p3 = rri0i3 + l_fin_sup;
;----------------------------------------------------------------------
MVDK *SP(50),*(AR1)
;----------------------------------------------------------------------
; 315 | p2 = rri2i4 + l_fin_inf;
;----------------------------------------------------------------------
MVDK *SP(46),*(AR5)
;----------------------------------------------------------------------
; 316 | p1 = rri1i3 + l_fin_inf;
;----------------------------------------------------------------------
MVDK *SP(42),*(AR0)
;----------------------------------------------------------------------
; 317 | p0 = rri0i2 + l_fin_inf;
; 319 | ptr_h1 = ptr_hd;
;----------------------------------------------------------------------
MVDK *SP(43),*(AR6)
;----------------------------------------------------------------------
; 320 | ptr_h2 = ptr_hf;
;----------------------------------------------------------------------
MVMD BK,AR4
MVMM SP,AR3
MAR *+AR3(#2)
;----------------------------------------------------------------------
; 321 | cor = 0;
;----------------------------------------------------------------------
LD #0,A
DST A,*SP(56) ; |321|
;----------------------------------------------------------------------
; 322 | for(i=k+(Word16)1; i<NB_POS; i++ ) {
;----------------------------------------------------------------------
LD *(BL),A ; |322|
SUB #7,A,A ; |322|
BC L17,AGEQ ; |322|
LD #6,A
SUB B,A
STLM A,AR7
L16:
;----------------------------------------------------------------------
; 324 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
DLD *SP(56),A
;SSBX OVM
;NOP
MAC *AR4+, *AR3+, A, A ; |324|
DST A,*SP(56) ; |324|
;----------------------------------------------------------------------
; 325 | *p4 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,A ; |325|
STL A,*AR2 ; |325|
;----------------------------------------------------------------------
; 327 | 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 ; |327|
DST A,*SP(56) ; |327|
;----------------------------------------------------------------------
; 328 | *p3 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,A ; |328|
STL A,*AR1 ; |328|
;----------------------------------------------------------------------
; 330 | 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 ; |330|
DST A,*SP(56) ; |330|
;----------------------------------------------------------------------
; 331 | *p2 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,A ; |331|
STL A,*AR5 ; |331|
;----------------------------------------------------------------------
; 333 | 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 ; |333|
DST A,*SP(56) ; |333|
;----------------------------------------------------------------------
; 334 | *p1 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,A ; |334|
STL A,*AR0 ; |334|
;----------------------------------------------------------------------
; 336 | 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 ; |336|
DST A,*SP(56) ; |336|
;----------------------------------------------------------------------
; 337 | *p0 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,A ; |337|
STL A,*AR6 ; |337|
;----------------------------------------------------------------------
; 339 | p4 -= ldec;
;----------------------------------------------------------------------
MAR *+AR2(#-9)
;----------------------------------------------------------------------
; 340 | p3 -= ldec;
;----------------------------------------------------------------------
MAR *+AR1(#-9)
;----------------------------------------------------------------------
; 341 | p2 -= ldec;
;----------------------------------------------------------------------
MAR *+AR5(#-9)
;----------------------------------------------------------------------
; 342 | p1 -= ldec;
;----------------------------------------------------------------------
MAR *+AR0(#-9)
;----------------------------------------------------------------------
; 343 | p0 -= ldec;
;----------------------------------------------------------------------
MAR *+AR6(#-9)
;RSBX OVM
;NOP
NOP
MAR *AR7-
BANZ L16,*AR7(1)
L17:
;----------------------------------------------------------------------
; 345 | cor = L_mac(cor, *ptr_h1, *ptr_h2); ptr_h1++; ptr_h2++;
;----------------------------------------------------------------------
DLD *SP(56),A
;SSBX OVM
;NOP
MAC *AR4+, *AR3+, A, A ; |345|
DST A,*SP(56) ; |345|
;----------------------------------------------------------------------
; 346 | *p4 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,A ; |346|
STL A,*AR2 ; |346|
;----------------------------------------------------------------------
; 348 | 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 ; |348|
DST A,*SP(56) ; |348|
;----------------------------------------------------------------------
; 349 | *p3 = extract_h(cor);
;----------------------------------------------------------------------
SFTL A,#-16,A ; |349|
STL A,*AR1 ; |349|
;----------------------------------------------------------------------
; 351 | l_fin_sup -= NB_POS;
;----------------------------------------------------------------------
;RSBX OVM
LD *SP(54),A
ADD #-8,A
STL A,*SP(54)
LD *SP(50),A
ADD #-8,A
STL A,*SP(50)
;----------------------------------------------------------------------
; 352 | l_fin_inf--;
;----------------------------------------------------------------------
LD *SP(46),A
SUB #1,A
STL A,*SP(46)
LD *SP(42),A
SUB #1,A
STL A,*SP(42)
LD *SP(43),A
SUB #1,A
STL A,*SP(43)
;----------------------------------------------------------------------
; 353 | ptr_hf += STEP;
;----------------------------------------------------------------------
LDM BK,A
ADD #5,A
STLM A,BK
;----------------------------------------------------------------------
; 360 | ptr_hd = h;
;----------------------------------------------------------------------
ADD #1,B
L18:
;----------------------------------------------------------------------
; 361 | ptr_hf = ptr_hd + 4;
; 362 | l_fin_sup = MSIZE-1;
; 363 | l_fin_inf = l_fin_sup-(Word16)1;
;----------------------------------------------------------------------
LD *SP(47),A
MVMM SP,AR0
STL A,*SP(45)
MVDK *SP(44),*(BK)
LD *SP(48),A
MAR *+AR0(#6)
STL A,*SP(42)
MVDK *SP(51),*(AR6)
;----------------------------------------------------------------------
; 364 | for(k=0; k<NB_POS; k++) {
;----------------------------------------------------------------------
LD #0,B
LD #7,A
STL A,*SP(43)
L19:
;----------------------------------------------------------------------
; 366 | p3 = rri0i4 + l_fin_sup;
;----------------------------------------------------------------------
MVDK *SP(45),*(AR1)
;----------------------------------------------------------------------
; 367 | p2 = rri2i3 + l_fin_inf;
;----------------------------------------------------------------------
MVMM AR6,AR7
;----------------------------------------------------------------------
; 368 | p1 = rri1i2 + l_fin_inf;
;----------------------------------------------------------------------
MVDK *SP(42),*(AR5)
;----------------------------------------------------------------------
; 369 | p0 = rri0i1 + l_fin_inf;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -