📄 dss.asm
字号:
LDW .D2T2 *+SP(4),B4 ; |123|
NOP 4
LDW .D2T2 *B4,B5 ; |123|
LDW .D2T2 *B4,B4 ; |123|
NOP 3
LDW .D2T2 *B5,B5 ; |123|
NOP 4
CMPEQ .L2 B5,B4,B0 ; |123|
[!B0] B .S1 L6 ; |123|
NOP 5
; BRANCH OCCURS ; |123|
;** --------------------------------------------------------------------------*
.line 16
;----------------------------------------------------------------------
; 126 | if (dss_isr_get_txCnt_n(chan) != 0) {
;----------------------------------------------------------------------
B .S1 _dss_isr_get_txCnt_n ; |126|
LDW .D2T1 *+SP(16),A4 ; |126|
MVKL .S2 RL8,B3 ; |126|
MVKH .S2 RL8,B3 ; |126|
NOP 2
RL8: ; CALL OCCURS ; |126|
MV .L1 A4,A1 ; |126|
[!A1] B .S1 L8 ; |126|
NOP 5
; BRANCH OCCURS ; |126|
;** --------------------------------------------------------------------------*
.line 17
;----------------------------------------------------------------------
; 127 | SEM_pend(objptr->sync, SYS_FOREVER);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B5 ; |127|
MVKL .S2 RL10,B3 ; |127|
MVK .S2 0xffffffff,B4 ; |127|
MVKH .S2 RL10,B3 ; |127|
B .S1 _SEM_pend ; |127|
LDW .D2T1 *B5,A4 ;
NOP 4
RL10: ; CALL OCCURS ; |127|
.line 18
;----------------------------------------------------------------------
; 128 | post_count++;
;----------------------------------------------------------------------
LDW .D2T2 *+SP(20),B4 ; |128|
NOP 4
ADD .L2 1,B4,B4 ; |128|
STW .D2T2 B4,*+SP(20) ; |128|
;** --------------------------------------------------------------------------*
L8:
.line 23
;----------------------------------------------------------------------
; 133 | while(post_count > 0) {
;----------------------------------------------------------------------
LDW .D2T2 *+SP(20),B0 ; |133|
NOP 4
[!B0] B .S1 L14 ; |133|
NOP 5
; BRANCH OCCURS ; |133|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: software pipelining disabled
;*----------------------------------------------------------------------------*
L9:
.line 24
;----------------------------------------------------------------------
; 134 | SEM_post(objptr->sync);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |134|
MVKL .S2 RL12,B3 ; |134|
MVKH .S2 RL12,B3 ; |134|
NOP 1
B .S1 _SEM_post ; |134|
LDW .D2T1 *B4,A4 ; |134|
NOP 4
RL12: ; CALL OCCURS ; |134|
.line 25
;----------------------------------------------------------------------
; 135 | post_count--;
;----------------------------------------------------------------------
LDW .D2T2 *+SP(20),B4 ; |135|
NOP 4
SUB .L2 B4,1,B0 ; |135|
STW .D2T2 B0,*+SP(20) ; |135|
.line 26
[ B0] B .S1 L9 ; |136|
NOP 5
; BRANCH OCCURS ; |136|
;** --------------------------------------------------------------------------*
.endblock 136
.line 27
;----------------------------------------------------------------------
; 137 | } else {
;----------------------------------------------------------------------
B .S1 L14 ; |137|
NOP 5
; BRANCH OCCURS ; |137|
;** --------------------------------------------------------------------------*
L10:
.line 28
;----------------------------------------------------------------------
; 138 | if (device->mode == DEV_OUTPUT) {
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B4 ; |138|
NOP 4
LDW .D2T2 *+B4(20),B4 ; |138|
NOP 4
CMPEQ .L2 B4,1,B0 ; |138|
[!B0] B .S1 L11 ; |138|
NOP 5
; BRANCH OCCURS ; |138|
;** --------------------------------------------------------------------------*
.line 30
;----------------------------------------------------------------------
; 140 | dss_isr_stop();
;----------------------------------------------------------------------
B .S1 _dss_isr_stop ; |140|
MVKL .S2 RL14,B3 ; |140|
MVKH .S2 RL14,B3 ; |140|
NOP 3
RL14: ; CALL OCCURS ; |140|
.line 31
;----------------------------------------------------------------------
; 141 | DSS_txFrame[chan]->size = 0;
;----------------------------------------------------------------------
LDW .D2T1 *+SP(16),A3 ; |141|
MVK .S1 (_DSS_txFrame-$bss),A0 ; |141|
ADD .L1X DP,A0,A0 ; |141|
ZERO .L2 B4 ; |141|
NOP 1
LDW .D1T1 *+A0[A3],A0 ; |141|
NOP 4
STW .D1T2 B4,*+A0(12) ; |141|
.line 32
;----------------------------------------------------------------------
; 142 | QUE_put(device->fromdevice, DSS_txFrame);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B5 ; |142|
MVKL .S2 RL16,B3 ; |142|
MVK .S2 (_DSS_txFrame-$bss),B4 ; |142|
ADD .L2 DP,B4,B4 ;
B .S1 _QUE_put ; |142|
LDW .D2T1 *+B5(4),A4 ;
MVKH .S2 RL16,B3 ; |142|
NOP 3
RL16: ; CALL OCCURS ; |142|
.line 33
;----------------------------------------------------------------------
; 143 | DSS_txFrame[chan] = NULL;
;----------------------------------------------------------------------
LDW .D2T2 *+SP(16),B6 ; |143|
MVK .S2 (_DSS_txFrame-$bss),B4 ; |143|
ADD .L2 DP,B4,B4 ; |143|
ZERO .S2 B5 ; |143|
NOP 1
STW .D2T2 B5,*+B4[B6] ; |143|
.line 34
;----------------------------------------------------------------------
; 144 | dss_isr_set_txBuf_n(NULL, 0, chan);
;----------------------------------------------------------------------
B .S1 _dss_isr_set_txBuf_n ; |144|
LDW .D2T1 *+SP(16),A6 ; |144|
MVKL .S2 RL18,B3 ; |144|
ZERO .L2 B4 ; |144|
ZERO .L1 A4 ; |144|
MVKH .S2 RL18,B3 ; |144|
RL18: ; CALL OCCURS ; |144|
.line 35
;----------------------------------------------------------------------
; 145 | dss_isr_start();
;----------------------------------------------------------------------
B .S1 _dss_isr_start ; |145|
MVKL .S2 RL20,B3 ; |145|
MVKH .S2 RL20,B3 ; |145|
NOP 3
RL20: ; CALL OCCURS ; |145|
.line 36
;----------------------------------------------------------------------
; 146 | } else {
;----------------------------------------------------------------------
B .S1 L13 ; |146|
NOP 5
; BRANCH OCCURS ; |146|
;** --------------------------------------------------------------------------*
L11:
.line 37
;----------------------------------------------------------------------
; 147 | dss_isr_stop();
;----------------------------------------------------------------------
B .S1 _dss_isr_stop ; |147|
MVKL .S2 RL22,B3 ; |147|
MVKH .S2 RL22,B3 ; |147|
NOP 3
RL22: ; CALL OCCURS ; |147|
.line 38
;----------------------------------------------------------------------
; 148 | DSS_rxFrame[chan]->size = 0;
;----------------------------------------------------------------------
LDW .D2T1 *+SP(16),A3 ; |148|
MVK .S1 (_DSS_rxFrame-$bss),A0 ; |148|
ADD .L1X DP,A0,A0 ; |148|
ZERO .L2 B4 ; |148|
NOP 1
LDW .D1T1 *+A0[A3],A0 ; |148|
NOP 4
STW .D1T2 B4,*+A0(12) ; |148|
.line 39
;----------------------------------------------------------------------
; 149 | QUE_put(device->fromdevice, DSS_rxFrame);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B5 ; |149|
MVKL .S2 RL24,B3 ; |149|
MVK .S2 (_DSS_rxFrame-$bss),B4 ; |149|
ADD .L2 DP,B4,B4 ;
B .S1 _QUE_put ; |149|
LDW .D2T1 *+B5(4),A4 ;
MVKH .S2 RL24,B3 ; |149|
NOP 3
RL24: ; CALL OCCURS ; |149|
.line 40
;----------------------------------------------------------------------
; 150 | DSS_rxFrame[chan] = NULL;
;----------------------------------------------------------------------
LDW .D2T2 *+SP(16),B6 ; |150|
MVK .S2 (_DSS_rxFrame-$bss),B4 ; |150|
ADD .L2 DP,B4,B4 ; |150|
ZERO .S2 B5 ; |150|
NOP 1
STW .D2T2 B5,*+B4[B6] ; |150|
.line 41
;----------------------------------------------------------------------
; 151 | dss_isr_set_rxBuf_n(NULL, 0, chan);
;----------------------------------------------------------------------
B .S1 _dss_isr_set_rxBuf_n ; |151|
LDW .D2T1 *+SP(16),A6 ; |151|
MVKL .S2 RL26,B3 ; |151|
ZERO .L2 B4 ; |151|
ZERO .L1 A4 ; |151|
MVKH .S2 RL26,B3 ; |151|
RL26: ; CALL OCCURS ; |151|
.line 42
;----------------------------------------------------------------------
; 152 | dss_isr_start();
;----------------------------------------------------------------------
B .S1 _dss_isr_start ; |152|
MVKL .S2 RL28,B3 ; |152|
MVKH .S2 RL28,B3 ; |152|
NOP 3
RL28: ; CALL OCCURS ; |152|
.line 45
;----------------------------------------------------------------------
; 155 | while (!QUE_empty(device->todevice)) {
;----------------------------------------------------------------------
B .S1 L13 ; |155|
NOP 5
; BRANCH OCCURS ; |155|
;** --------------------------------------------------------------------------*
L12:
.line 46
;----------------------------------------------------------------------
; 156 | QUE_put(device->fromdevice, QUE_get(device->todevice));
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B4 ; |156|
MVKL .S2 RL32,B3 ; |156|
MVKH .S2 RL32,B3 ; |156|
NOP 1
B .S1 _QUE_get ; |156|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -