📄 mcbsp_ad535.asm
字号:
MVKL .S1 _MCBSP_Open,A0 ; |251|
MVKH .S1 _MCBSP_Open,A0 ; |251|
B .S2X A0 ; |251|
MVKL .S2 RL12,B3 ; |251|
MVK .S2 0x1,B4 ; |251|
MVKH .S2 RL12,B3 ; |251|
ZERO .L1 A4 ; |251|
NOP 1
RL12: ; CALL OCCURS ; |251|
STW .D2T1 A4,*+DP(_hMcbsp) ; |251|
.line 5
B .S1 _ad535_init ; |253|
MVKL .S2 RL13,B3 ; |253|
MVKH .S2 RL13,B3 ; |253|
NOP 3
RL13: ; CALL OCCURS ; |253|
.line 6
LDW .D2T2 *++SP(8),B3 ; |254|
NOP 4
B .S2 B3 ; |254|
NOP 5
; BRANCH OCCURS ; |254|
.endfunc 254,000080000h,8
.sect ".text"
.sym _enableIntr,_enableIntr, 32, 3, 0
.func 261
;******************************************************************************
;* FUNCTION NAME: _enableIntr *
;* *
;* Regs Modified : A0,A1,B0,B4,B5 *
;* Regs Used : A0,A1,A4,B0,B3,B4,B5,DP *
;* Local Frame Size : 0 Args + 0 Auto + 0 Save = 0 byte *
;******************************************************************************
_enableIntr:
;** --------------------------------------------------------------------------*
.sym _chan,4, 14, 17, 32
.sym C$1,0, 24, 4, 32, _drv_state
.sym _chan,16, 14, 4, 32
;** 263 ----------------------- C$1 = &chans[chan];
;** 263 ----------------------- if ( !(C$1->running && C$1->currentPtr) ) goto g7;
.line 2
MV .L2X A4,B0 ; |262|
.line 3
MVK .S2 44,B5 ; |263|
MPYLHU .M2 B5,B0,B4 ; |263|
MPYU .M2 B5,B0,B5 ; |263|
SHL .S2 B4,16,B4 ; |263|
|| MVK .S1 (_chans-$bss),A0 ; |263|
ADD .L2 B5,B4,B4 ; |263|
|| ADD .L1X DP,A0,A0 ; |263|
ADD .L1X A0,B4,A0 ; |263|
LDHU .D1T1 *A0,A1 ; |263|
NOP 4
[ A1] LDW .D1T1 *+A0(12),A1 ; |263|
NOP 4
[!A1] B .S1 L11 ; |263|
NOP 5
; BRANCH OCCURS ; |263|
;** --------------------------------------------------------------------------*
;** 265 ----------------------- if ( chan ) goto g4;
.line 5
[ B0] B .S1 L10 ; |265|
NOP 5
; BRANCH OCCURS ; |265|
;** --------------------------------------------------------------------------*
; >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ENTERING IRQ_Enable()
;** 266 ----------------------- IER |= IRQ_EventTable[15];
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< LEAVING IRQ_Enable()
; >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ENTERING MCBSP_Rrdy()
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< LEAVING MCBSP_Rrdy()
;** 267 ----------------------- if ( !(*(hMcbsp->BaseAddr+8)&2u) ) goto g7;
; >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ENTERING IRQ_Set()
;** 268 ----------------------- ISR = IRQ_EventTable[15];
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< LEAVING IRQ_Set()
;** 268 ----------------------- goto g7;
.line 6
MVC .S2 IER,B4 ; |266|
MVKL .S1 _IRQ_EventTable+60,A0 ; |266|
MVKH .S1 _IRQ_EventTable+60,A0 ; |266|
LDW .D1T1 *A0,A0 ; |266|
NOP 4
OR .L2X A0,B4,B4 ; |266|
MVC .S2 B4,IER ; |266|
.line 7
LDW .D2T2 *+DP(_hMcbsp),B4 ; |267|
NOP 4
LDW .D2T2 *+B4(12),B4 ; |267|
NOP 4
LDW .D2T2 *+B4(8),B4 ; |267|
NOP 4
AND .L2 2,B4,B0 ; |267|
.line 8
[ B0] MVKL .S2 _IRQ_EventTable+60,B4 ; |268|
[ B0] MVKH .S2 _IRQ_EventTable+60,B4 ; |268|
[ B0] LDW .D2T2 *B4,B4 ; |268|
NOP 4
[ B0] MVC .S2 B4,ISR ; |268|
NOP 1
B .S1 L11 ; |268|
NOP 5
; BRANCH OCCURS ; |268|
;** --------------------------------------------------------------------------*
L10:
;** -----------------------g4:
;** 272 ----------------------- if ( chan != 1u ) goto g7;
.line 12
CMPEQ .L2 B0,1,B0 ; |272|
[!B0] B .S1 L11 ; |272|
NOP 5
; BRANCH OCCURS ; |272|
;** --------------------------------------------------------------------------*
; >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ENTERING IRQ_Enable()
;** 273 ----------------------- IER |= IRQ_EventTable[14];
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< LEAVING IRQ_Enable()
; >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ENTERING MCBSP_Xrdy()
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< LEAVING MCBSP_Xrdy()
;** 274 ----------------------- if ( !(*(hMcbsp->BaseAddr+8)&0x20000u) ) goto g7;
; >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ENTERING IRQ_Set()
;** 275 ----------------------- ISR = IRQ_EventTable[14];
; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< LEAVING IRQ_Set()
;** -----------------------g7:
;** ----------------------- return;
.line 13
MVC .S2 IER,B4 ; |273|
MVKL .S1 _IRQ_EventTable+56,A0 ; |273|
MVKH .S1 _IRQ_EventTable+56,A0 ; |273|
LDW .D1T1 *A0,A0 ; |273|
NOP 4
OR .L2X A0,B4,B4 ; |273|
MVC .S2 B4,IER ; |273|
.line 14
LDW .D2T2 *+DP(_hMcbsp),B4 ; |274|
NOP 4
LDW .D2T2 *+B4(12),B4 ; |274|
NOP 4
LDW .D2T2 *+B4(8),B4 ; |274|
NOP 4
EXTU .S2 B4,14,31,B0 ; |274|
.line 15
[ B0] MVKL .S2 _IRQ_EventTable+56,B4 ; |275|
[ B0] MVKH .S2 _IRQ_EventTable+56,B4 ; |275|
[ B0] LDW .D2T2 *B4,B4 ; |275|
NOP 4
[ B0] MVC .S2 B4,ISR ; |275|
;** --------------------------------------------------------------------------*
L11:
.line 20
B .S2 B3 ; |280|
NOP 5
; BRANCH OCCURS ; |280|
.endfunc 280,000000000h,0
.sect ".text"
.sym _close,_close, 32, 3, 0
.func 286
;******************************************************************************
;* FUNCTION NAME: _close *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B1,B2,B3,B4,B5, *
;* B6,B7,B8,B9,B10,SP *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B1,B2,B3,B4,B5, *
;* B6,B7,B8,B9,B10,DP,SP *
;* Local Frame Size : 0 Args + 0 Auto + 12 Save = 12 byte *
;******************************************************************************
_close:
;** --------------------------------------------------------------------------*
.sym _chan,4, 14, 17, 32
.sym C$1,26, 24, 4, 32, _drv_state
.sym _chan,10, 14, 4, 32
;** 288 ----------------------- C$1 = &chans[0];
;** 288 ----------------------- initDrvObj(chan*44+C$1);
;** 290 ----------------------- initDrvObj((chan+2u)*44+C$1);
;** 290 ----------------------- return;
STW .D2T2 B10,*SP--(16) ; |286|
STW .D2T1 A10,*+SP(8) ; |286|
STW .D2T2 B3,*+SP(12) ; |286|
.line 2
MV .L1 A4,A10 ; |287|
.line 3
MVK .S2 (_chans-$bss),B4 ; |288|
ADD .L2 DP,B4,B10 ;
B .S1 _initDrvObj ; |288|
|| MVK .S2 44,B5 ; |288|
MPYLHU .M2X B5,A10,B4 ; |288|
MPYU .M1X B5,A10,A0 ; |288|
SHL .S2 B4,16,B4 ; |288|
ADD .L1X A0,B4,A0 ; |288|
|| MVKL .S2 RL15,B3 ; |288|
ADD .L1X B10,A0,A4 ; |288|
|| MVKH .S2 RL15,B3 ; |288|
RL15: ; CALL OCCURS ; |288|
.line 5
MVK .S1 44,A3 ; |290|
B .S1 _initDrvObj ; |290|
|| MPYLHU .M1 A3,A10,A0 ; |290|
MPYU .M1 A3,A10,A3 ; |290|
SHL .S1 A0,16,A0 ; |290|
ADD .L1 A3,A0,A0 ; |290|
ADD .L1X B10,A0,A0 ; |290|
|| MVKL .S2 RL17,B3 ; |290|
ADDAW .D1 A0,22,A4 ; |290|
|| MVKH .S2 RL17,B3 ; |290|
RL17: ; CALL OCCURS ; |290|
.line 6
LDW .D2T2 *+SP(12),B3 ; |291|
LDW .D2T1 *+SP(8),A10 ; |291|
LDW .D2T2 *++SP(16),B10 ; |291|
NOP 2
B .S2 B3 ; |291|
NOP 5
; BRANCH OCCURS ; |291|
.endfunc 291,004080400h,16
.sect ".text"
.sym _ctrl,_ctrl, 36, 3, 0
.func 294
;******************************************************************************
;* FUNCTION NAME: _ctrl *
;* *
;* Regs Modified : A4 *
;* Regs Used : A4,B3 *
;* Local Frame Size : 0 Args + 0 Auto + 0 Save = 0 byte *
;******************************************************************************
_ctrl:
;** --------------------------------------------------------------------------*
.sym _chan,4, 14, 17, 32
.sym _flag,20, 14, 17, 32
;** 303 ----------------------- return 0;
.line 10
ZERO .L1 A4 ; |303|
.line 11
B .S2 B3 ; |304|
NOP 5
; BRANCH OCCURS ; |304|
.endfunc 304,000000000h,0
.sect ".text"
.sym _getBuf,_getBuf, 96, 3, 0
.func 307
;******************************************************************************
;* FUNCTION NAME: _getBuf *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,B0,B1,B2,B3,B4,*
;* B5,B6,B7,B8,B9,B10,B11,SP *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,B0,B1,B2,B3,B4,*
;* B5,B6,B7,B8,B9,B10,B11,DP,SP *
;* Local Frame Size : 0 Args + 0 Auto + 20 Save = 20 byte *
;******************************************************************************
_getBuf:
;** --------------------------------------------------------------------------*
.sym _chan,4, 14, 17, 32
.sym _size,20, 20, 17, 32
.sym _dataSize,6, 20, 17, 32
.sym C$1,20, 24, 4, 32, _drv_state
.sym _retVal,11, 16, 4, 32
.sym _chan,10, 14, 4, 32
.sym _size,26, 20, 4, 32
.sym _dataSize,27, 20, 4, 32
;** 311 ----------------------- if ( chan&0xfffffffeu ) goto g2;
STW .D2T2 B11,*SP--(24) ; |307|
STW .D2T1 A10,*+SP(8) ; |307|
STW .D2T1 A11,*+SP(12) ; |307|
STW .D2T2 B3,*+SP(16) ; |307|
STW .D2T2 B10,*+SP(20) ; |307|
.line 2
MV .L2X A6,B11 ;
|| MV .S2 B4,B10 ;
|| MV .L1 A4,A10 ;
.line 5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -