⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dss.asm

📁 Using DSP/BIOS I/O in Multichannel Systems
💻 ASM
📖 第 1 页 / 共 3 页
字号:
           NOP             3
RL46:      ; CALL OCCURS                     ; |120| 
	.line	42
           LDW     .D2T1   *+SP(12),A11      ; |121| 
           LDW     .D2T1   *+SP(8),A10       ; |121| 
           LDW     .D2T2   *++SP(16),B3      ; |121| 
           NOP             4
           B       .S2     B3                ; |121| 
           NOP             5
           ; BRANCH OCCURS                   ; |121| 
	.endfunc	121,000080c00h,16


	.sect	".text"
	.global	_DSS_rxPrime
	.sym	_DSS_rxPrime,_DSS_rxPrime, 32, 2, 0
	.func	128

;******************************************************************************
;* FUNCTION NAME: _DSS_rxPrime                                                *
;*                                                                            *
;*   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                  *
;******************************************************************************
_DSS_rxPrime:
;** --------------------------------------------------------------------------*
	.sym	_chan,4, 4, 17, 32
	.sym	_calledByIsr,20, 4, 17, 32
	.sym	C$1,0, 24, 4, 32, _PIP_Obj
	.sym	C$2,11, 88, 4, 32, _PIP_Obj
	.sym	_chan,10, 4, 4, 32
	.sym	_calledByIsr,11, 4, 4, 32
;** 130	-----------------------    dss_isr_stop();
;** 132	-----------------------    if ( dss_isr_get_rxCnt_n(chan) ) goto g11;
           STW     .D2T2   B3,*SP--(16)      ; |128| 
           STW     .D2T1   A10,*+SP(8)       ; |128| 
           STW     .D2T1   A11,*+SP(12)      ; |128| 
	.line	2

           MV      .L1     A4,A10            ; 
||         MV      .S1X    B4,A11

	.line	3
           B       .S1     _dss_isr_stop     ; |130| 
           MVKL    .S2     RL48,B3           ; |130| 
           MVKH    .S2     RL48,B3           ; |130| 
           NOP             3
RL48:      ; CALL OCCURS                     ; |130| 
	.line	5
           B       .S1     _dss_isr_get_rxCnt_n ; |132| 
           MVKL    .S2     RL50,B3           ; |132| 
           MVKH    .S2     RL50,B3           ; |132| 
           MV      .L1     A10,A4            ; |132| 
           NOP             2
RL50:      ; CALL OCCURS                     ; |132| 
           MV      .L1     A4,A1             ; |132| 
   [ A1]   B       .S1     L14               ; |132| 
           NOP             5
           ; BRANCH OCCURS                   ; |132| 
;** --------------------------------------------------------------------------*
;** 137	-----------------------    if ( !calledByIsr ) goto g6;
	.line	10
           MV      .L1     A11,A1
   [!A1]   B       .S1     L11               ; |137| 
           NOP             5
           ; BRANCH OCCURS                   ; |137| 
;** --------------------------------------------------------------------------*
;** 137	-----------------------    if ( !dss_isr_get_rxBuf_n(chan) ) goto g6;
           B       .S1     _dss_isr_get_rxBuf_n ; |137| 
           MVKL    .S2     RL52,B3           ; |137| 
           MVKH    .S2     RL52,B3           ; |137| 
           MV      .L1     A10,A4            ; |137| 
           NOP             2
RL52:      ; CALL OCCURS                     ; |137| 
           MV      .L1     A4,A1             ; |137| 
   [!A1]   B       .S1     L11               ; |137| 
           NOP             5
           ; BRANCH OCCURS                   ; |137| 
;** --------------------------------------------------------------------------*
;** 141	-----------------------    if ( TRC_query(49152u) ) goto g5;
	.line	14
           B       .S1     _TRC_query        ; |141| 
           MVKL    .S2     RL54,B3           ; |141| 
           ZERO    .L1     A0                ; |141| 
           MVKH    .S2     RL54,B3           ; |141| 
           SET     .S1     A0,0xe,0xf,A4     ; |141| 
           NOP             1
RL54:      ; CALL OCCURS                     ; |141| 
           MV      .L1     A4,A1             ; |141| 
   [ A1]   B       .S1     L10               ; |141| 
           NOP             5
           ; BRANCH OCCURS                   ; |141| 
;** --------------------------------------------------------------------------*
;** 141	-----------------------    LOG_event(LOG_D_system, (int)rxPips[chan], (int)"ISR calling PIP_put for rxPip 0x%x", 8);
           MVKL    .S1     _rxPips,A0        ; |141| 

           B       .S2     _LOG_event        ; |141| 
||         MVKH    .S1     _rxPips,A0        ; |141| 

           LDW     .D1T2   *+A0[A10],B4      ; 
||         LDW     .D2T1   *+DP(_LOG_D_system),A4 ; |141| 
||         MVKL    .S2     SL3+0,B5          ; |141| 

           MVKL    .S2     RL56,B3           ; |141| 
           MVK     .S2     0x8,B6            ; |141| 
           MVKH    .S2     SL3+0,B5          ; |141| 

           MV      .L1X    B5,A6             ; |141| 
||         MVKH    .S2     RL56,B3           ; |141| 

RL56:      ; CALL OCCURS                     ; |141| 
;** --------------------------------------------------------------------------*
L10:    
;**	-----------------------g5:
;** 142	-----------------------    PIP_put(rxPips[chan]);
	.line	15
           MVKL    .S1     _rxPips,A0        ; |142| 

           B       .S2     _PIP_put          ; |142| 
||         MVKH    .S1     _rxPips,A0        ; |142| 

           LDW     .D1T1   *+A0[A10],A4      ; |142| 
           MVKL    .S2     RL58,B3           ; |142| 
           MVKH    .S2     RL58,B3           ; |142| 
           NOP             2
RL58:      ; CALL OCCURS                     ; |142| 
;** --------------------------------------------------------------------------*
L11:    
;**	-----------------------g6:
;** 146	-----------------------    if ( (rxPips[chan])->writerNumFrames ) goto g8;
	.line	19
           MVKL    .S1     _rxPips,A0        ; |146| 
           MVKH    .S1     _rxPips,A0        ; |146| 
           LDW     .D1T1   *+A0[A10],A0      ; |146| 
           NOP             4
           LDW     .D1T1   *+A0(72),A1       ; |146| 
           NOP             4
   [ A1]   B       .S1     L12               ; |146| 
           NOP             5
           ; BRANCH OCCURS                   ; |146| 
;** --------------------------------------------------------------------------*
;** 160	-----------------------    dss_isr_set_rxBuf_n(NULL, 0, chan);
;** 160	-----------------------    goto g11;
	.line	33
           B       .S1     _dss_isr_set_rxBuf_n ; |160| 
           MVKL    .S2     RL60,B3           ; |160| 
           MVKH    .S2     RL60,B3           ; |160| 
           MV      .L1     A10,A6            ; |160| 
           ZERO    .L2     B4                ; |160| 
           ZERO    .S1     A4                ; |160| 
RL60:      ; CALL OCCURS                     ; |160| 
           B       .S1     L14               ; |160| 
           NOP             5
           ; BRANCH OCCURS                   ; |160| 
;** --------------------------------------------------------------------------*
L12:    
;**	-----------------------g8:
;** 150	-----------------------    if ( TRC_query(49152u) ) goto g10;
	.line	23
           B       .S1     _TRC_query        ; |150| 
           MVKL    .S2     RL62,B3           ; |150| 
           ZERO    .L1     A0                ; |150| 
           MVKH    .S2     RL62,B3           ; |150| 
           SET     .S1     A0,0xe,0xf,A4     ; |150| 
           NOP             1
RL62:      ; CALL OCCURS                     ; |150| 
           MV      .L1     A4,A1             ; |150| 
   [ A1]   B       .S1     L13               ; |150| 
           NOP             5
           ; BRANCH OCCURS                   ; |150| 
;** --------------------------------------------------------------------------*
;** 150	-----------------------    LOG_event(LOG_D_system, (int)rxPips[chan], (int)"ISR calling PIP_alloc for rxPip 0x%x", 8);
           MVKL    .S1     _rxPips,A0        ; |150| 

           B       .S2     _LOG_event        ; |150| 
||         MVKH    .S1     _rxPips,A0        ; |150| 

           LDW     .D1T2   *+A0[A10],B4      ; 
||         LDW     .D2T1   *+DP(_LOG_D_system),A4 ; |150| 
||         MVKL    .S2     SL4+0,B5          ; |150| 

           MVKL    .S2     RL64,B3           ; |150| 
           MVK     .S2     0x8,B6            ; |150| 
           MVKH    .S2     SL4+0,B5          ; |150| 

           MV      .L1X    B5,A6             ; |150| 
||         MVKH    .S2     RL64,B3           ; |150| 

RL64:      ; CALL OCCURS                     ; |150| 
;** --------------------------------------------------------------------------*
L13:    
;**	-----------------------g10:
;** 151	-----------------------    C$2 = &rxPips[0];
;** 151	-----------------------    PIP_alloc(C$2[chan]);
;** 152	-----------------------    C$1 = C$2[chan];
;** 152	-----------------------    dss_isr_set_rxBuf_n(C$1->writerAddr, (int)(C$1->writerSize*2u), chan);
	.line	24
           MVKL    .S1     _rxPips,A11       ; |151| 
           MVKH    .S1     _rxPips,A11       ; |151| 
           B       .S1     _PIP_alloc        ; |151| 
           LDW     .D1T1   *+A11[A10],A4     ; |151| 
           MVKL    .S2     RL66,B3           ; |151| 
           MVKH    .S2     RL66,B3           ; |151| 
           NOP             2
RL66:      ; CALL OCCURS                     ; |151| 
	.line	25
           LDW     .D1T1   *+A11[A10],A0     ; |152| 
           NOP             4
           LDW     .D1T1   *+A0(60),A3       ; |152| 
           B       .S1     _dss_isr_set_rxBuf_n ; |152| 
           LDW     .D1T1   *+A0(56),A4       ; 
           MVKL    .S2     RL68,B3           ; |152| 
           MVKH    .S2     RL68,B3           ; |152| 
           SHL     .S1     A3,1,A0           ; |152| 

           MV      .L2X    A0,B4             ; |152| 
||         MV      .L1     A10,A6            ; |152| 

RL68:      ; CALL OCCURS                     ; |152| 
;** --------------------------------------------------------------------------*
L14:    
;**	-----------------------g11:
;** 168	-----------------------    dss_isr_start();
;** 168	-----------------------    return;
	.line	41
           B       .S1     _dss_isr_start    ; |168| 
           MVKL    .S2     RL70,B3           ; |168| 
           MVKH    .S2     RL70,B3           ; |168| 
           NOP             3
RL70:      ; CALL OCCURS                     ; |168| 
	.line	42
           LDW     .D2T1   *+SP(12),A11      ; |169| 
           LDW     .D2T1   *+SP(8),A10       ; |169| 
           LDW     .D2T2   *++SP(16),B3      ; |169| 
           NOP             4
           B       .S2     B3                ; |169| 
           NOP             5
           ; BRANCH OCCURS                   ; |169| 
	.endfunc	169,000080c00h,16


;******************************************************************************
;* STRINGS                                                                    *
;******************************************************************************
	.sect	".const"
SL1:	.string	"ISR calling PIP_free for txPip 0x%x",0
SL2:	.string	"ISR calling PIP_get for txPip 0x%x",0
SL3:	.string	"ISR calling PIP_put for rxPip 0x%x",0
SL4:	.string	"ISR calling PIP_alloc for rxPip 0x%x",0
;******************************************************************************
;* UNDEFINED EXTERNAL REFERENCES                                              *
;******************************************************************************
	.global	_TRC_query
	.global	_LOG_event
	.global	_SWI_getmbox
	.global	_PIP_alloc
	.global	_PIP_free
	.global	_PIP_get
	.global	_PIP_put
	.global	_dss_isr_init
	.global	_dss_isr_start
	.global	_dss_isr_stop
	.global	_dss_isr_set_rxBuf_n
	.global	_dss_isr_get_rxBuf_n
	.global	_dss_isr_set_txBuf_n
	.global	_dss_isr_get_txBuf_n
	.global	_dss_isr_get_rxCnt_n
	.global	_dss_isr_get_txCnt_n
	.global	_dss_isr_set_swi_n
	.global	_rxPip1
	.global	_rxPip0
	.global	_txPip1
	.global	_txPip0
	.global	_LOG_D_system
	.global	_DSS_swi

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -