📄 pip_lio.asm
字号:
MVK .S1 0x1,A4 ; |100|
NOP 1
LDW .D1T2 *+A0(32),B4 ; |100|
NOP 4
B .S2 B4 ; |100|
NOP 5
RL9: ; CALL OCCURS ; |100|
.line 15
LDW .D2T1 *+DP(_drv),A0 ; |101|
MVKL .S2 RL10,B3 ; |101|
MVKH .S2 RL10,B3 ; |101|
MVK .S1 0x2,A4 ; |101|
NOP 1
LDW .D1T1 *+A0(32),A0 ; |101|
NOP 4
B .S2X A0 ; |101|
NOP 5
RL10: ; CALL OCCURS ; |101|
;** --------------------------------------------------------------------------*
;** 102 ----------------------- (*drv->start)(3u);
;** 102 ----------------------- return;
.line 16
LDW .D2T2 *+DP(_drv),B4 ; |102|
MVKL .S2 RL11,B3 ; |102|
MVKH .S2 RL11,B3 ; |102|
MVK .S1 0x3,A4 ; |102|
NOP 1
LDW .D2T2 *+B4(32),B4 ; |102|
NOP 4
B .S2 B4 ; |102|
NOP 5
RL11: ; CALL OCCURS ; |102|
.line 22
LDW .D2T2 *+SP(12),B3 ; |108|
LDW .D2T1 *+SP(8),A10 ; |108|
LDW .D2T2 *++SP(16),B10 ; |108|
NOP 2
B .S2 B3 ; |108|
NOP 5
; BRANCH OCCURS ; |108|
.endfunc 108,004080400h,16
.sym _Arg, 0, 4, 13, 32
.sect ".text"
.global _PIP_LIO_txPump
.sym _PIP_LIO_txPump,_PIP_LIO_txPump, 32, 2, 0
.func 112
;******************************************************************************
;* FUNCTION NAME: _PIP_LIO_txPump *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,B0,B1,B2,B3,B4,*
;* B5,B6,B7,B8,B9,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,DP,SP *
;* Local Frame Size : 0 Args + 0 Auto + 12 Save = 12 byte *
;******************************************************************************
_PIP_LIO_txPump:
;** --------------------------------------------------------------------------*
.sym _chan,4, 14, 17, 32
.sym _parg,20, 4, 17, 32
.sym _chan,11, 14, 4, 32
.sym _parg,10, 4, 4, 32
;** 116 ----------------------- if ( !(*drv->getBuf)(chan, NULL, NULL) ) goto g2;
STW .D2T2 B3,*SP--(16) ; |112|
STW .D2T1 A10,*+SP(8) ; |112|
STW .D2T1 A11,*+SP(12) ; |112|
.line 2
MV .L1 A4,A11 ;
|| MV .S1X B4,A10 ;
.line 5
LDW .D2T2 *+DP(_drv),B4 ; |116|
MVKL .S2 RL12,B3 ; |116|
MVKH .S2 RL12,B3 ; |116|
ZERO .L1 A6 ; |116|
NOP 1
LDW .D2T2 *+B4(8),B5 ; |116|
ZERO .L2 B4 ; |116|
NOP 3
B .S2 B5 ; |116|
NOP 5
RL12: ; CALL OCCURS ; |116|
MV .L1 A4,A1 ; |116|
[!A1] B .S1 L1 ; |116|
NOP 5
; BRANCH OCCURS ; |116|
;** --------------------------------------------------------------------------*
;** 117 ----------------------- PIP_free((struct _PIP_Obj *)parg);
;** 119 ----------------------- PIP_LIO_txPrime((int)chan, (struct _PIP_Obj *)parg);
;** -----------------------g2:
;** ----------------------- return;
.line 6
B .S1 _PIP_free ; |117|
MVKL .S2 RL13,B3 ; |117|
MVKH .S2 RL13,B3 ; |117|
MV .L1 A10,A4 ; |117|
NOP 2
RL13: ; CALL OCCURS ; |117|
.line 8
B .S1 _PIP_LIO_txPrime ; |119|
MVKL .S2 RL15,B3 ; |119|
MV .L1 A11,A4 ;
MVKH .S2 RL15,B3 ; |119|
MV .L2X A10,B4 ;
NOP 1
RL15: ; CALL OCCURS ; |119|
;** --------------------------------------------------------------------------*
L1:
.line 11
LDW .D2T1 *+SP(12),A11 ; |122|
LDW .D2T1 *+SP(8),A10 ; |122|
LDW .D2T2 *++SP(16),B3 ; |122|
NOP 4
B .S2 B3 ; |122|
NOP 5
; BRANCH OCCURS ; |122|
.endfunc 122,000080c00h,16
.sect ".cinit:c"
.align 4
.field 0,32 ; _nested$1 @ 0
.sect ".text"
.sect ".text"
.global _PIP_LIO_txPrime
.sym _PIP_LIO_txPrime,_PIP_LIO_txPrime, 32, 2, 0
.func 129
;******************************************************************************
;* FUNCTION NAME: _PIP_LIO_txPrime *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,B0,B1,B2,B3,B4,*
;* B5,B6,B7,B8,B9,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,DP,SP *
;* Local Frame Size : 0 Args + 0 Auto + 12 Save = 12 byte *
;******************************************************************************
_PIP_LIO_txPrime:
;** --------------------------------------------------------------------------*
.sym _chan,4, 4, 17, 32
.sym _pip,20, 24, 17, 32, _PIP_Obj
_nested$1: .usect ".bss:c",4,4
.sym _nested,_nested$1, 4, 3, 32
.sym _chan,11, 4, 4, 32
.sym _pip,10, 24, 4, 32, _PIP_Obj
;** 133 ----------------------- if ( nested ) goto g5;
STW .D2T2 B3,*SP--(16) ; |129|
STW .D2T1 A10,*+SP(8) ; |129|
STW .D2T1 A11,*+SP(12) ; |129|
.line 2
MV .L1 A4,A11 ;
|| MV .S1X B4,A10 ;
.line 5
LDW .D2T2 *+DP(_nested$1),B0 ; |133|
NOP 4
[ B0] B .S1 L4 ; |133|
NOP 5
; BRANCH OCCURS ; |133|
;** --------------------------------------------------------------------------*
;** 135 ----------------------- nested = 1;
;** 145 ----------------------- HWI_disable();
;** 147 ----------------------- if ( (*drv->isEmpty)((unsigned)chan) && pip->readerNumFrames ) goto g3;
.line 7
MVK .S1 1,A0 ; |135|
STW .D2T1 A0,*+DP(_nested$1) ; |135|
.line 17
B .S1 _HWI_disable ; |145|
MVKL .S2 RL17,B3 ; |145|
MVKH .S2 RL17,B3 ; |145|
NOP 3
RL17: ; CALL OCCURS ; |145|
.line 19
LDW .D2T2 *+DP(_drv),B4 ; |147|
MVKL .S2 RL19,B3 ; |147|
MVKH .S2 RL19,B3 ; |147|
MV .L1 A11,A4 ; |147|
NOP 1
LDW .D2T2 *+B4(16),B4 ; |147|
NOP 4
B .S2 B4 ; |147|
NOP 5
RL19: ; CALL OCCURS ; |147|
MV .L1 A4,A2 ;
[ A2] LDW .D1T1 *+A10(24),A4 ; |147|
NOP 4
MV .L1 A4,A1 ; |147|
[ A1] B .S1 L2 ; |147|
NOP 5
; BRANCH OCCURS ; |147|
;** --------------------------------------------------------------------------*
;** 155 ----------------------- HWI_enable();
;** 155 ----------------------- goto g4;
.line 27
B .S1 _HWI_enable ; |155|
MVKL .S2 RL20,B3 ; |155|
MVKH .S2 RL20,B3 ; |155|
NOP 3
RL20: ; CALL OCCURS ; |155|
B .S1 L3 ; |155|
NOP 5
; BRANCH OCCURS ; |155|
;** --------------------------------------------------------------------------*
L2:
;** -----------------------g3:
;** 148 ----------------------- HWI_enable();
;** 150 ----------------------- PIP_get(pip);
;** 151 ----------------------- (*drv->setBuf)((unsigned)chan, pip->readerAddr, pip->readerSize*4u);
.line 20
B .S1 _HWI_enable ; |148|
MVKL .S2 RL22,B3 ; |148|
MVKH .S2 RL22,B3 ; |148|
NOP 3
RL22: ; CALL OCCURS ; |148|
.line 22
B .S1 _PIP_get ; |150|
MVKL .S2 RL24,B3 ; |150|
MVKH .S2 RL24,B3 ; |150|
MV .L1 A10,A4 ; |150|
NOP 2
RL24: ; CALL OCCURS ; |150|
.line 23
LDW .D2T2 *+DP(_drv),B4 ; |151|
LDW .D1T1 *+A10(12),A0 ; |151|
MVKL .S2 RL26,B3 ; |151|
MV .L1 A11,A4 ;
MVKH .S2 RL26,B3 ; |151|
LDW .D2T2 *+B4(24),B5 ; |151|
LDW .D1T2 *+A10(8),B4 ;
SHL .S1 A0,2,A6 ; |151|
NOP 2
B .S2 B5 ; |151|
NOP 5
RL26: ; CALL OCCURS ; |151|
;** --------------------------------------------------------------------------*
L3:
;** -----------------------g4:
;** 158 ----------------------- nested = 0;
;** -----------------------g5:
;** ----------------------- return;
.line 30
ZERO .L2 B4 ; |158|
STW .D2T2 B4,*+DP(_nested$1) ; |158|
;** --------------------------------------------------------------------------*
L4:
.line 31
LDW .D2T1 *+SP(12),A11 ; |159|
LDW .D2T1 *+SP(8),A10 ; |159|
LDW .D2T2 *++SP(16),B3 ; |159|
NOP 4
B .S2 B3 ; |159|
NOP 5
; BRANCH OCCURS ; |159|
.endfunc 159,000080c00h,16
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -