📄 dss.asm
字号:
NOP 5
RL7: ; CALL OCCURS ; |128|
CMPEQ .L1 A4,1,A1 ;
[ A1] B .S1 L3 ; |128|
NOP 5
; BRANCH OCCURS ; |128|
;** --------------------------------------------------------------------------*
.line 24
;----------------------------------------------------------------------
; 129 | SEM_pend(objptr->sync, SYS_FOREVER);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B5 ; |129|
MVKL .S2 RL8,B3 ; |129|
MVK .S2 0xffffffff,B4 ; |129|
MVKH .S2 RL8,B3 ; |129|
B .S1 _SEM_pend ; |129|
LDW .D2T1 *B5,A4 ;
NOP 4
RL8: ; CALL OCCURS ; |129|
.line 25
;----------------------------------------------------------------------
; 130 | post_count++;
;----------------------------------------------------------------------
LDW .D2T2 *+SP(24),B4 ; |130|
NOP 4
ADD .L2 1,B4,B4 ; |130|
STW .D2T2 B4,*+SP(24) ; |130|
;** --------------------------------------------------------------------------*
L3:
.line 30
;----------------------------------------------------------------------
; 135 | while(post_count > 0) {
;----------------------------------------------------------------------
LDW .D2T2 *+SP(24),B0 ; |135|
NOP 4
[!B0] B .S1 L9 ; |135|
NOP 5
; BRANCH OCCURS ; |135|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: software pipelining disabled
;*----------------------------------------------------------------------------*
L4:
.line 31
;----------------------------------------------------------------------
; 136 | SEM_post(objptr->sync);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |136|
MVKL .S2 RL10,B3 ; |136|
MVKH .S2 RL10,B3 ; |136|
NOP 1
B .S1 _SEM_post ; |136|
LDW .D2T1 *B4,A4 ; |136|
NOP 4
RL10: ; CALL OCCURS ; |136|
.line 32
;----------------------------------------------------------------------
; 137 | post_count--;
;----------------------------------------------------------------------
LDW .D2T2 *+SP(24),B4 ; |137|
NOP 4
SUB .L2 B4,1,B0 ; |137|
STW .D2T2 B0,*+SP(24) ; |137|
.line 33
[ B0] B .S1 L4 ; |138|
NOP 5
; BRANCH OCCURS ; |138|
;** --------------------------------------------------------------------------*
.endblock 138
.line 34
;----------------------------------------------------------------------
; 139 | } else {
;----------------------------------------------------------------------
B .S1 L9 ; |139|
NOP 5
; BRANCH OCCURS ; |139|
;** --------------------------------------------------------------------------*
L5:
.line 35
;----------------------------------------------------------------------
; 140 | if (device->mode == DEV_OUTPUT) {
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B4 ; |140|
NOP 4
LDW .D2T2 *+B4(20),B4 ; |140|
NOP 4
CMPEQ .L2 B4,1,B0 ; |140|
[!B0] B .S1 L6 ; |140|
NOP 5
; BRANCH OCCURS ; |140|
;** --------------------------------------------------------------------------*
.line 37
;----------------------------------------------------------------------
; 142 | objptr->drv->stop(drvChan);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |142|
LDW .D2T1 *+SP(20),A4 ; |142|
MVKL .S2 RL12,B3 ; |142|
MVKH .S2 RL12,B3 ; |142|
NOP 1
LDW .D2T2 *+B4(12),B4 ; |142|
NOP 4
LDW .D2T2 *+B4(36),B4 ; |142|
NOP 4
B .S2 B4 ; |142|
NOP 5
RL12: ; CALL OCCURS ; |142|
.line 38
;----------------------------------------------------------------------
; 143 | DSS_txFrame[chan]->size = 0;
;----------------------------------------------------------------------
LDW .D2T1 *+SP(16),A3 ; |143|
MVK .S1 (_DSS_txFrame-$bss),A0 ; |143|
ADD .L1X DP,A0,A0 ; |143|
ZERO .L2 B4 ; |143|
NOP 1
LDW .D1T1 *+A0[A3],A0 ; |143|
NOP 4
STW .D1T2 B4,*+A0(12) ; |143|
.line 39
;----------------------------------------------------------------------
; 144 | QUE_put(device->fromdevice, DSS_txFrame);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B5 ; |144|
MVKL .S2 RL13,B3 ; |144|
MVK .S2 (_DSS_txFrame-$bss),B4 ; |144|
ADD .L2 DP,B4,B4 ;
B .S1 _QUE_put ; |144|
LDW .D2T1 *+B5(4),A4 ;
MVKH .S2 RL13,B3 ; |144|
NOP 3
RL13: ; CALL OCCURS ; |144|
.line 40
;----------------------------------------------------------------------
; 145 | DSS_txFrame[chan] = NULL;
;----------------------------------------------------------------------
LDW .D2T2 *+SP(16),B5 ; |145|
MVK .S2 (_DSS_txFrame-$bss),B4 ; |145|
ZERO .L1 A0 ; |145|
ADD .L2 DP,B4,B4 ; |145|
NOP 1
STW .D2T1 A0,*+B4[B5] ; |145|
.line 41
;----------------------------------------------------------------------
; 146 | objptr->drv->setBuf(drvChan, NULL, 0);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |146|
LDW .D2T1 *+SP(20),A4 ;
MVKL .S2 RL15,B3 ; |146|
MVKH .S2 RL15,B3 ; |146|
ZERO .L1 A6 ; |146|
LDW .D2T2 *+B4(12),B4 ; |146|
NOP 4
LDW .D2T2 *+B4(24),B5 ; |146|
ZERO .L2 B4 ; |146|
NOP 3
B .S2 B5 ; |146|
NOP 5
RL15: ; CALL OCCURS ; |146|
.line 42
;----------------------------------------------------------------------
; 147 | objptr->drv->start(drvChan);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |147|
LDW .D2T1 *+SP(20),A4 ; |147|
MVKL .S2 RL16,B3 ; |147|
MVKH .S2 RL16,B3 ; |147|
NOP 1
LDW .D2T2 *+B4(12),B4 ; |147|
NOP 4
LDW .D2T2 *+B4(32),B4 ; |147|
NOP 4
B .S2 B4 ; |147|
NOP 5
RL16: ; CALL OCCURS ; |147|
.line 43
;----------------------------------------------------------------------
; 148 | } else {
;----------------------------------------------------------------------
B .S1 L8 ; |148|
NOP 5
; BRANCH OCCURS ; |148|
;** --------------------------------------------------------------------------*
L6:
.line 44
;----------------------------------------------------------------------
; 149 | objptr->drv->stop(drvChan);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |149|
LDW .D2T1 *+SP(20),A4 ; |149|
MVKL .S2 RL17,B3 ; |149|
MVKH .S2 RL17,B3 ; |149|
NOP 1
LDW .D2T2 *+B4(12),B4 ; |149|
NOP 4
LDW .D2T2 *+B4(36),B4 ; |149|
NOP 4
B .S2 B4 ; |149|
NOP 5
RL17: ; CALL OCCURS ; |149|
.line 45
;----------------------------------------------------------------------
; 150 | DSS_rxFrame[chan]->size = 0;
;----------------------------------------------------------------------
LDW .D2T1 *+SP(16),A3 ; |150|
MVK .S1 (_DSS_rxFrame-$bss),A0 ; |150|
ADD .L1X DP,A0,A0 ; |150|
ZERO .L2 B4 ; |150|
NOP 1
LDW .D1T1 *+A0[A3],A0 ; |150|
NOP 4
STW .D1T2 B4,*+A0(12) ; |150|
.line 46
;----------------------------------------------------------------------
; 151 | QUE_put(device->fromdevice, DSS_rxFrame);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B4 ; |151|
MVK .S2 (_DSS_rxFrame-$bss),B5 ; |151|
MVKL .S2 RL18,B3 ; |151|
MVKH .S2 RL18,B3 ; |151|
B .S1 _QUE_put ; |151|
LDW .D2T1 *+B4(4),A4 ;
ADD .L2 DP,B5,B4 ;
NOP 3
RL18: ; CALL OCCURS ; |151|
.line 47
;----------------------------------------------------------------------
; 152 | DSS_rxFrame[chan] = NULL;
;----------------------------------------------------------------------
LDW .D2T2 *+SP(16),B5 ; |152|
MVK .S2 (_DSS_rxFrame-$bss),B4 ; |152|
ZERO .L1 A0 ; |152|
ADD .L2 DP,B4,B4 ; |152|
NOP 1
STW .D2T1 A0,*+B4[B5] ; |152|
.line 48
;----------------------------------------------------------------------
; 153 | objptr->drv->setBuf(drvChan, NULL, 0);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |153|
LDW .D2T1 *+SP(20),A4 ;
MVKL .S2 RL20,B3 ; |153|
ZERO .L1 A6 ; |153|
MVKH .S2 RL20,B3 ; |153|
LDW .D2T2 *+B4(12),B4 ; |153|
NOP 4
LDW .D2T2 *+B4(24),B5 ; |153|
ZERO .L2 B4 ; |153|
NOP 3
B .S2 B5 ; |153|
NOP 5
RL20: ; CALL OCCURS ; |153|
.line 49
;----------------------------------------------------------------------
; 154 | objptr->drv->start(drvChan);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |154|
LDW .D2T1 *+SP(20),A4 ; |154|
MVKL .S2 RL21,B3 ; |154|
MVKH .S2 RL21,B3 ; |154|
NOP 1
LDW .D2T2 *+B4(12),B4 ; |154|
NOP 4
LDW .D2T2 *+B4(32),B4 ; |154|
NOP 4
B .S2 B4 ; |154|
NOP 5
RL21: ; CALL OCCURS ; |154|
.line 52
;----------------------------------------------------------------------
; 157 | while (!QUE_empty(device->todevice)) {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -