📄 mainfilter.asm
字号:
ADD .S1 A0,A5,A0 ; |271| (E) <3,4> ^
|| STW .D1T1 A6,*A3++ ; |271| (E) <2,5>
|| STW .D2T2 B6,*B4++ ; |269| (E) <2,5>
STW .D1T1 A6,*A4++ ; |272| (E) <2,6>
|| STW .D2T2 B6,*B5++ ; |270| (E) <2,6>
STW .D1T1 A0,*A3++ ; |271| (E) <3,5>
|| STW .D2T2 B6,*B4++ ; |269| (E) <3,5>
MVC .S2 B7,CSR ; interrupts on
|| STW .D2T2 B6,*B5++ ; |270| (E) <3,6>
|| STW .D1T1 A0,*A4++ ; |272| (E) <3,6>
ZERO .D1 A0 ; |274|
|| MVKL .S2 _outbuf-8,B8
|| MVKL .S1 _inbuf-8,A4
MVKH .S2 _outbuf-8,B8
|| MVKH .S1 _inbuf-8,A4
MVK .S1 0x1000,A6
|| MV .L1X B8,A5
|| MV .L2X A4,B5
|| MVK .S2 0x1f4,B4 ; |274|
MVK .S1 0x1001,A3
|| MVK .S2 0x5432,B4
|| SUB .D2 B4,6,B0
MVK .S2 0x5433,B6
MVC .S2 CSR,B8
AND .S2 -2,B8,B7
MVC .S2 B7,CSR ; interrupts off
B .S1 L6 ; |278| (P) <0,1>
NOP 1
B .S1 L6 ; |278| (P) <1,1>
ADD .D1 A3,A0,A7 ; |277| (P) <0,4> ^
|| ADD .S1 A6,A0,A4 ; |277| (P) <0,4> ^
|| ADD .S2X B4,A0,B7 ; |276| (P) <0,4> ^
;** --------------------------------------------------------------------------*
L6: ; PIPED LOOP KERNEL
ADD .S2X B6,A0,B7 ; |276| <0,5> ^
|| ADD .L1 2,A0,A0 ; |278| <0,5> ^
|| STW .D1T1 A4,*++A5(8) ; |277| <0,5>
|| STW .D2T2 B7,*++B5(8) ; |276| <0,5>
|| [ B0] B .S1 L6 ; |278| <2,1>
STW .D1T1 A7,*+A5(4) ; |277| <0,6>
|| STW .D2T2 B7,*+B5(4) ; |276| <0,6>
|| ADD .S1 A3,A0,A7 ; |277| <1,4> ^
|| ADD .L1 A6,A0,A4 ; |277| <1,4> ^
|| ADD .S2X B4,A0,B7 ; |276| <1,4> ^
|| [ B0] SUB .L2 B0,1,B0 ; |278| <3,0>
;** --------------------------------------------------------------------------*
L7: ; PIPED LOOP EPILOG
ADD .S1 2,A0,A0 ; |278| (E) <1,5> ^
|| ADD .S2X B6,A0,B7 ; |276| (E) <1,5> ^
|| STW .D2T2 B7,*++B5(8) ; |276| (E) <1,5>
|| STW .D1T1 A4,*++A5(8) ; |277| (E) <1,5>
ADD .S1 2,A0,A7 ; |278| (E) <2,5> ^
|| ADD .L1 A6,A0,A4 ; |277| (E) <2,4> ^
|| ADD .S2X B4,A0,B7 ; |276| (E) <2,4> ^
|| STW .D1T1 A7,*+A5(4) ; |277| (E) <1,6>
|| STW .D2T2 B7,*+B5(4) ; |276| (E) <1,6>
ADD .S1 A6,A7,A4 ; |277| (E) <3,4> ^
|| ADD .L1 A3,A0,A0 ; |277| (E) <2,4> ^
|| ADD .S2X B6,A0,B7 ; |276| (E) <2,5> ^
|| STW .D2T2 B7,*++B5(8) ; |276| (E) <2,5>
|| STW .D1T1 A4,*++A5(8) ; |277| (E) <2,5>
ADD .S1 A3,A7,A0 ; |277| (E) <3,4> ^
|| ADD .S2X B4,A7,B4 ; |276| (E) <3,4> ^
|| STW .D1T1 A0,*+A5(4) ; |277| (E) <2,6>
|| STW .D2T2 B7,*+B5(4) ; |276| (E) <2,6>
ADD .S2X B6,A7,B4 ; |276| (E) <3,5> ^
|| STW .D2T2 B4,*++B5(8) ; |276| (E) <3,5>
|| STW .D1T1 A4,*++A5(8) ; |277| (E) <3,5>
MVC .S2 B8,CSR ; interrupts on
|| STW .D1T1 A0,*+A5(4) ; |277| (E) <3,6>
|| STW .D2T2 B4,*+B5(4) ; |276| (E) <3,6>
RET .S2 B3 ; |280|
NOP 5
; BRANCH OCCURS ; |280|
.sect ".text"
.global _init_edma
;******************************************************************************
;* FUNCTION NAME: _init_edma *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,SP *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,DP,SP *
;* Local Frame Size : 0 Args + 0 Auto + 4 Save = 4 byte *
;******************************************************************************
_init_edma:
;** --------------------------------------------------------------------------*
;** 196 ----------------------- TI_EDMA_CFG();
;** 197 ----------------------- set_interrupts_edma();
;** 198 ----------------------- *(volatile unsigned *)0x18c0004u = C$1 = SendMcbspDat;
;** 199 ----------------------- *(volatile unsigned *)0x1900004u = C$1;
;** 200 ----------------------- RecvMcbspDat = *(volatile unsigned *)0x18c0000u;
;** 200 ----------------------- return;
CALL .S1 _TI_EDMA_CFG ; |196|
STW .D2T2 B3,*SP--(8) ; |195|
MVKL .S2 RL14,B3 ; |196|
MVKH .S2 RL14,B3 ; |196|
NOP 2
RL14: ; CALL OCCURS ; |196|
CALL .S1 _set_interrupts_edma ; |197|
MVKL .S2 RL15,B3 ; |197|
MVKH .S2 RL15,B3 ; |197|
NOP 3
RL15: ; CALL OCCURS ; |197|
LDW .D2T2 *+DP(_SendMcbspDat),B5 ; |198|
LDW .D2T2 *++SP(8),B3 ; |201|
MVKL .S1 0x18c0004,A0 ; |198|
MVKH .S1 0x18c0004,A0 ; |198|
MVKL .S2 0x1900004,B4 ; |199|
ZERO .S1 A0 ; |200|
|| STW .D1T2 B5,*A0 ; |198|
|| MVKH .S2 0x1900004,B4 ; |199|
STW .D2T2 B5,*B4 ; |199|
|| MVKH .S1 0x18c0000,A0 ; |200|
RET .S2 B3 ; |201|
|| LDW .D1T1 *A0,A0 ; |200|
NOP 4
STW .D2T1 A0,*+DP(_RecvMcbspDat) ; |200|
; BRANCH OCCURS ; |201|
.sect ".text"
.global _init_IIR
;******************************************************************************
;* FUNCTION NAME: _init_IIR *
;* *
;* Regs Modified : A0,B4,B5,B6,B7,B8 *
;* Regs Used : A0,B3,B4,B5,B6,B7,B8,DP *
;* Local Frame Size : 0 Args + 0 Auto + 0 Save = 0 byte *
;******************************************************************************
_init_IIR:
;** --------------------------------------------------------------------------*
;** 30 ----------------------- C$5 = &dlyl_0[0];
;** 30 ----------------------- *C$5 = C$2 = 0.0F;
;** 31 ----------------------- C$4 = &dlyl_1[0];
;** 31 ----------------------- *C$4 = C$2;
;** 32 ----------------------- C$3 = &dlyr_0[0];
;** 32 ----------------------- *C$3 = C$2;
;** 33 ----------------------- C$1 = &dlyr_1[0];
;** 33 ----------------------- *C$1 = C$2;
;** 30 ----------------------- C$5[1] = C$2;
;** 31 ----------------------- C$4[1] = C$2;
;** 32 ----------------------- C$3[1] = C$2;
;** 33 ----------------------- C$1[1] = C$2;
;** ----------------------- return;
MVK .S1 (_dlyr_0-$bss),A0 ; |32|
|| MVK .S2 (_dlyr_1-$bss),B4 ; |33|
ZERO .D2 B4 ; |30|
|| ADD .S2X DP,A0,B5 ; |32|
|| ADD .L2 DP,B4,B8 ; |33|
STW .D2T2 B4,*B5 ; |32|
|| MVK .S2 (_dlyl_1-$bss),B6 ; |31|
STW .D2T2 B4,*B8 ; |33|
|| ADD .S2 DP,B6,B6 ; |31|
RET .S2 B3 ; |35|
|| STW .D2T2 B4,*B6 ; |31|
STW .D2T2 B4,*+B6(4) ; |31|
STW .D2T2 B4,*+B5(4) ; |32|
|| MVK .S1 (_dlyl_0-$bss),A0 ; |30|
STW .D2T2 B4,*+B8(4) ; |33|
|| ADD .S2X DP,A0,B7 ; |30|
STW .D2T2 B4,*B7 ; |30|
STW .D2T2 B4,*+B7(4) ; |30|
; BRANCH OCCURS ; |35|
;** Parameter deleted: pinId == 40960u;
.sect ".text"
;******************************************************************************
;* FUNCTION NAME: _GPIO_pinEnable *
;* *
;* Regs Modified : A0,A3,A5,B4,B5,SP *
;* Regs Used : A0,A3,A4,A5,B3,B4,B5,SP *
;* Local Frame Size : 0 Args + 4 Auto + 0 Save = 4 byte *
;******************************************************************************
_GPIO_pinEnable:
;** --------------------------------------------------------------------------*
;** 226 ----------------------- C$1 = hGpio->baseAddr;
;** 226 ----------------------- gpen = *(volatile unsigned *)(unsigned)C$1;
;** 227 ----------------------- gpen = hGpio->pinAllocMask&0xa000u|gpen;
;** 228 ----------------------- *(volatile unsigned *)(unsigned)C$1 = *(volatile unsigned *)(unsigned)C$1&0xffff0000u|(unsigned)(unsigned short)gpen;
;** 228 ----------------------- return;
LDW .D1T1 *+A4(4),A0 ; |226|
LDW .D1T1 *+A4(8),A3 ; |227|
SUB .D2 SP,8,SP ; |225|
MVKL .S2 0xa000,B4 ; |227|
MVKH .S2 0xa000,B4 ; |227|
LDW .D1T1 *A0,A5 ; |226|
AND .S2X B4,A3,B4 ; |227|
NOP 3
STW .D2T1 A5,*+SP(4) ; |226|
LDW .D2T2 *+SP(4),B5 ; |227|
NOP 4
OR .S2 B5,B4,B4 ; |227|
STW .D2T2 B4,*+SP(4) ; |227|
LDW .D1T1 *A0,A3 ; |228|
LDHU .D2T2 *+SP(4),B4 ; |228|
RET .S2 B3 ; |229|
ADD .D2 8,SP,SP ; |229|
NOP 1
CLR .S1 A3,0,15,A3 ; |228|
OR .S2X B4,A3,B4 ; |228|
STW .D1T2 B4,*A0 ; |228|
; BRANCH OCCURS ; |229|
;** Parameter deleted: direction == 1u;
;** Parameter deleted: pinId == 40960u;
.sect ".text"
;******************************************************************************
;* FUNCTION NAME: _GPIO_pinDirection *
;* *
;* Regs Modified : A0,A3,A5,B4,B5,SP *
;* Regs Used : A0,A3,A4,A5,B3,B4,B5,SP *
;* Local Frame Size : 0 Args + 4 Auto + 0 Save = 4 byte *
;******************************************************************************
_GPIO_pinDirection:
;** --------------------------------------------------------------------------*
;** 240 ----------------------- C$1 = hGpio->baseAddr+4;
;** 240 ----------------------- gpdir = *(volatile unsigned *)(unsigned)C$1;
;** 241 ----------------------- *(volatile unsigned *)(unsigned)C$1 = hGpio->pinAllocMask&0xa000u|gpdir;
;** 244 ----------------------- *(volatile unsigned *)(unsigned)(hGpio->baseAddr+4);
;** 246 ----------------------- return;
LDW .D1T1 *+A4(4),A0 ; |240|
LDW .D1T1 *+A4(8),A5 ; |241|
SUB .D2 SP,8,SP ; |239|
MVKL .S2 0xa000,B4 ; |241|
MVKH .S2 0xa000,B4 ; |241|
ADD .D1 4,A0,A0 ; |240|
LDW .D1T1 *A0,A3 ; |240|
AND .S2X B4,A5,B4 ; |241|
NOP 3
STW .D2T1 A3,*+SP(4) ; |240|
LDW .D2T2 *+SP(4),B5 ; |241|
ADD .D2 8,SP,SP ; |248|
NOP 3
OR .S2 B5,B4,B4 ; |241|
STW .D1T2 B4,*A0 ; |241|
LDW .D1T1 *+A4(4),A0 ; |244|
NOP 3
RET .S2 B3 ; |248|
LDW .D1T1 *+A0(4),A0 ; |244|
NOP 4
; BRANCH OCCURS ; |248|
.sect ".text"
.global _initGpio
;******************************************************************************
;* FUNCTION NAME: _initGpio *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,SP *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,DP,SP *
;* Local Frame Size : 0 Args + 0 Auto + 4 Save = 4 byte *
;******************************************************************************
_initGpio:
;** --------------------------------------------------------------------------*
;** 124 ----------------------- hGpio = Y$0 = GPIO_open(0, 1u);
;** 125 ----------------------- GPIO_pinEnable(Y$0);
;** 126 ----------------------- GPIO_pinDirection(hGpio);
;** 127 ----------------------- GPIO_pinWrite(hGpio, 40960u, 1u);
;** 280 ----------------------- C$1 = _IRQ_eventTable[4];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -