📄 dss.asm
字号:
LDW .D2T1 *B4,A4 ; |156|
NOP 4
RL32: ; CALL OCCURS ; |156|
LDW .D2T2 *+SP(4),B5 ; |156|
MV .L2X A4,B4 ;
MVKL .S2 RL34,B3 ; |156|
MVKH .S2 RL34,B3 ; |156|
B .S1 _QUE_put ; |156|
LDW .D2T1 *+B5(4),A4 ;
NOP 4
RL34: ; CALL OCCURS ; |156|
.line 47
;----------------------------------------------------------------------
; 157 | SEM_post(objptr->sync);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(12),B4 ; |157|
MVKL .S2 RL36,B3 ; |157|
MVKH .S2 RL36,B3 ; |157|
NOP 1
B .S1 _SEM_post ; |157|
LDW .D2T1 *B4,A4 ; |157|
NOP 4
RL36: ; CALL OCCURS ; |157|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: software pipelining disabled
;*----------------------------------------------------------------------------*
L13:
.line 48
LDW .D2T2 *+SP(4),B4 ; |158|
NOP 4
LDW .D2T2 *B4,B5 ; |158|
LDW .D2T2 *B4,B4 ; |158|
NOP 3
LDW .D2T2 *B5,B5 ; |158|
NOP 4
CMPEQ .L2 B5,B4,B0 ; |158|
[!B0] B .S1 L12 ; |158|
NOP 5
; BRANCH OCCURS ; |158|
;** --------------------------------------------------------------------------*
L14:
.line 50
;----------------------------------------------------------------------
; 160 | return SYS_OK;
;----------------------------------------------------------------------
ZERO .L1 A4 ; |160|
.line 51
LDW .D2T2 *++SP(24),B3 ; |161|
NOP 4
B .S2 B3 ; |161|
NOP 5
; BRANCH OCCURS ; |161|
.endfunc 161,000080000h,24
.sect ".text"
.global _DSS_init
.sym _DSS_init,_DSS_init, 32, 2, 0
.func 176
;----------------------------------------------------------------------
; 176 | DSS_init(Void)
;----------------------------------------------------------------------
;******************************************************************************
;* FUNCTION NAME: _DSS_init *
;* *
;* Regs Modified : B4 *
;* Regs Used : B3,B4,DP *
;* Local Frame Size : 0 Args + 0 Auto + 0 Save = 0 byte *
;******************************************************************************
_DSS_init:
;** --------------------------------------------------------------------------*
.line 3
;----------------------------------------------------------------------
; 178 | inited = FALSE;
;----------------------------------------------------------------------
ZERO .L2 B4 ; |178|
STH .D2T2 B4,*+DP(_inited) ; |178|
.line 4
B .S2 B3 ; |179|
NOP 5
; BRANCH OCCURS ; |179|
.endfunc 179,000000000h,0
.sect ".text"
.global _DSS_issue
.sym _DSS_issue,_DSS_issue, 36, 2, 0
.func 183
;----------------------------------------------------------------------
; 183 | DSS_issue(DEV_Handle device)
;----------------------------------------------------------------------
;******************************************************************************
;* FUNCTION NAME: _DSS_issue *
;* *
;* 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,SP *
;* Local Frame Size : 0 Args + 4 Auto + 4 Save = 8 byte *
;******************************************************************************
_DSS_issue:
;** --------------------------------------------------------------------------*
.sym _device,4, 24, 17, 32, _DEV_Obj
.sym _device,4, 24, 1, 32, _DEV_Obj
STW .D2T2 B3,*SP--(8) ; |183|
.line 2
STW .D2T1 A4,*+SP(4) ; |184|
.line 3
;----------------------------------------------------------------------
; 185 | if (device->mode == DEV_OUTPUT) {
;----------------------------------------------------------------------
LDW .D1T1 *+A4(20),A0 ; |185|
NOP 4
CMPEQ .L1 A0,1,A1 ; |185|
[!A1] B .S1 L15 ; |185|
NOP 5
; BRANCH OCCURS ; |185|
;** --------------------------------------------------------------------------*
.line 4
;----------------------------------------------------------------------
; 186 | DSS_txPrime(((DSS_Obj *)device->object)->chan, 0);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B4 ; |186|
MVKL .S2 RL38,B3 ; |186|
MVKH .S2 RL38,B3 ; |186|
NOP 2
LDW .D2T2 *+B4(32),B4 ; |186|
NOP 3
B .S1 _DSS_txPrime ; |186|
LDW .D2T1 *+B4(8),A4 ;
ZERO .L2 B4 ; |186|
NOP 3
RL38: ; CALL OCCURS ; |186|
.line 5
;----------------------------------------------------------------------
; 187 | } else {
;----------------------------------------------------------------------
B .S1 L16 ; |187|
NOP 5
; BRANCH OCCURS ; |187|
;** --------------------------------------------------------------------------*
L15:
.line 6
;----------------------------------------------------------------------
; 188 | DSS_rxPrime(((DSS_Obj *)device->object)->chan, 0);
;----------------------------------------------------------------------
LDW .D2T2 *+SP(4),B4 ; |188|
MVKL .S2 RL40,B3 ; |188|
MVKH .S2 RL40,B3 ; |188|
NOP 2
LDW .D2T2 *+B4(32),B4 ; |188|
NOP 3
B .S1 _DSS_rxPrime ; |188|
LDW .D2T1 *+B4(8),A4 ;
ZERO .L2 B4 ; |188|
NOP 3
RL40: ; CALL OCCURS ; |188|
;** --------------------------------------------------------------------------*
L16:
.line 9
;----------------------------------------------------------------------
; 191 | return SYS_OK;
;----------------------------------------------------------------------
ZERO .L1 A4 ; |191|
.line 10
LDW .D2T2 *++SP(8),B3 ; |192|
NOP 4
B .S2 B3 ; |192|
NOP 5
; BRANCH OCCURS ; |192|
.endfunc 192,000080000h,8
.sect ".text"
.global _DSS_open
.sym _DSS_open,_DSS_open, 36, 2, 0
.func 197
;----------------------------------------------------------------------
; 197 | DSS_open(DEV_Handle device, String arg)
;----------------------------------------------------------------------
;******************************************************************************
;* FUNCTION NAME: _DSS_open *
;* *
;* 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 + 16 Auto + 4 Save = 20 byte *
;******************************************************************************
_DSS_open:
;** --------------------------------------------------------------------------*
.sym _device,4, 24, 17, 32, _DEV_Obj
.sym _arg,20, 18, 17, 32
.sym _device,4, 24, 1, 32, _DEV_Obj
.sym _arg,8, 18, 1, 32
.sym _objptr,12, 24, 1, 32, _DSS_obj
.sym _chan,16, 4, 1, 32
STW .D2T2 B3,*SP--(24) ; |197|
.line 2
;----------------------------------------------------------------------
; 199 | DSS_Handle objptr;
; 200 | int chan;
;----------------------------------------------------------------------
STW .D2T2 B4,*+SP(8) ; |198|
STW .D2T1 A4,*+SP(4) ; |198|
.line 6
;----------------------------------------------------------------------
; 202 | if (inited == FALSE) {
;----------------------------------------------------------------------
LDHU .D2T2 *+DP(_inited),B0 ; |202|
NOP 4
[ B0] B .S1 L17 ; |202|
NOP 5
; BRANCH OCCURS ; |202|
;** --------------------------------------------------------------------------*
.line 7
;----------------------------------------------------------------------
; 203 | dss_isr_init();
;----------------------------------------------------------------------
B .S1 _dss_isr_init ; |203|
MVKL .S2 RL42,B3 ; |203|
MVKH .S2 RL42,B3 ; |203|
NOP 3
RL42: ; CALL OCCURS ; |203|
.line 8
;----------------------------------------------------------------------
; 204 | inited = TRUE;
;----------------------------------------------------------------------
MVK .S2 1,B4 ; |204|
STH .D2T2 B4,*+DP(_inited) ; |204|
;** --------------------------------------------------------------------------*
L17:
.line 13
;----------------------------------------------------------------------
; 209 | if (arg[0] == '\0' || arg[1] != '\0') {
;----------------------------------------------------------------------
LDW .D2T2 *+SP(8),B4 ; |209|
NOP 4
LDB .D2T2 *B4,B5 ; |209|
NOP 4
CMPEQ .L2 B5,0,B0 ; |209|
[!B0] LDB .D2T2 *+B4(1),B4 ; |209|
NOP 4
[!B0] CMPEQ .L2 B4,0,B4 ; |209|
[!B0] XOR .L2 1,B4,B0 ; |209|
[!B0] B .S1 L21 ; |209|
NOP 5
; BRANCH OCCURS ; |209|
;** --------------------------------------------------------------------------*
.line 14
;----------------------------------------------------------------------
; 210 | return SYS_ENODEV;
;----------------------------------------------------------------------
B .S1 L30 ; |210|
MVK .S1 0x3,A4 ; |210|
NOP 4
; BRANCH OCCURS ; |210|
;** --------------------------------------------------------------------------*
.line 16
;----------------------------------------------------------------------
; 212 | switch (*arg) {
; 213 | case '0' :
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -