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

📄 dss_isr_evm62.asm

📁 Using DSP/BIOS I/O in Multichannel Systems
💻 ASM
📖 第 1 页 / 共 4 页
字号:
           NOP             4
           ADD     .L2     1,B4,B4           ; |279| 
           STW     .D2T2   B4,*+DP(_postCount) ; |279| 
;** --------------------------------------------------------------------------*
L11:    
;**	-----------------------g22:
;** 294	-----------------------    tmp = 0;
;** 295	-----------------------    if ( dss_isr_txCnt[0] ) goto g25;
	.line	53
           ZERO    .L1     A10               ; |294| 
	.line	54
           LDW     .D2T2   *+DP(_dss_isr_txCnt),B0 ; |295| 
           NOP             4
   [ B0]   B       .S1     L12               ; |295| 
           NOP             5
           ; BRANCH OCCURS                   ; |295| 
;** --------------------------------------------------------------------------*
;** 306	-----------------------    if ( TRC_query(49152u) ) goto g27;
	.line	65
           B       .S1     _TRC_query        ; |306| 
           MVKL    .S2     RL32,B3           ; |306| 
           ZERO    .L1     A0                ; |306| 
           MVKH    .S2     RL32,B3           ; |306| 
           SET     .S1     A0,0xe,0xf,A4     ; |306| 
           NOP             1
RL32:      ; CALL OCCURS                     ; |306| 
           MV      .L1     A4,A1             ; |306| 
   [ A1]   B       .S1     L13               ; |306| 
           NOP             5
           ; BRANCH OCCURS                   ; |306| 
;** --------------------------------------------------------------------------*
;** 306	-----------------------    LOG_event(LOG_D_system, 0, (int)"Transmit sample dropped on channel 0", 8);
;** 306	-----------------------    goto g27;
           B       .S1     _LOG_event        ; |306| 
           LDW     .D2T1   *+DP(_LOG_D_system),A4 ; |306| 
           MVKL    .S2     RL34,B3           ; |306| 
           MVK     .S2     0x8,B6            ; |306| 
           MVKL    .S1     SL7+0,A6          ; |306| 

           MVKH    .S1     SL7+0,A6          ; |306| 
||         MVKH    .S2     RL34,B3           ; |306| 
||         ZERO    .L2     B4                ; |306| 

RL34:      ; CALL OCCURS                     ; |306| 
           B       .S1     L13               ; |306| 
           NOP             5
           ; BRANCH OCCURS                   ; |306| 
;** --------------------------------------------------------------------------*
L12:    
;**	-----------------------g25:
;** 296	-----------------------    tmp = (int)*(dss_isr_txPtr[0])++<<16;
;** 297	-----------------------    dss_isr_txCnt[0] = Y$4 = dss_isr_txCnt[0]-1;
;** 298	-----------------------    if ( Y$4 ) goto g27;
	.line	55
           LDW     .D2T2   *+DP(_dss_isr_txPtr),B4 ; |296| 
           NOP             4
           LDHU    .D2T2   *B4++,B5          ; |296| 
           STW     .D2T2   B4,*+DP(_dss_isr_txPtr) ; |296| 
           NOP             3
           SHL     .S1X    B5,16,A10         ; |296| 
	.line	56
           LDW     .D2T2   *+DP(_dss_isr_txCnt),B4 ; |297| 
           NOP             4
           SUB     .L2     B4,1,B0           ; |297| 
           STW     .D2T2   B0,*+DP(_dss_isr_txCnt) ; |297| 
	.line	57
   [ B0]   B       .S1     L13               ; |298| 
           NOP             5
           ; BRANCH OCCURS                   ; |298| 
;** --------------------------------------------------------------------------*
;** 302	-----------------------    SWI_or(dss_isr_swi[0], 17u);
;** 303	-----------------------    ++postCount;
	.line	61
           MVKL    .S1     _dss_isr_swi,A0   ; |302| 

           B       .S2     _SWI_or           ; |302| 
||         MVKH    .S1     _dss_isr_swi,A0   ; |302| 

           LDW     .D1T1   *A0,A4            ; |302| 
           MVKL    .S2     RL36,B3           ; |302| 
           MVK     .S2     0x11,B4           ; |302| 
           MVKH    .S2     RL36,B3           ; |302| 
           NOP             1
RL36:      ; CALL OCCURS                     ; |302| 
	.line	62
           LDW     .D2T2   *+DP(_postCount),B4 ; |303| 
           NOP             4
           ADD     .L2     1,B4,B4           ; |303| 
           STW     .D2T2   B4,*+DP(_postCount) ; |303| 
;** --------------------------------------------------------------------------*
L13:    
;**	-----------------------g27:
;** 308	-----------------------    if ( dss_isr_txCnt[1] ) goto g30;
	.line	67
           LDW     .D2T2   *+DP(_dss_isr_txCnt+4),B0 ; |308| 
           NOP             4
   [ B0]   B       .S1     L14               ; |308| 
           NOP             5
           ; BRANCH OCCURS                   ; |308| 
;** --------------------------------------------------------------------------*
;** 317	-----------------------    if ( TRC_query(49152u) ) goto g34;
	.line	76
           B       .S1     _TRC_query        ; |317| 
           MVKL    .S2     RL38,B3           ; |317| 
           ZERO    .L1     A0                ; |317| 
           MVKH    .S2     RL38,B3           ; |317| 
           SET     .S1     A0,0xe,0xf,A4     ; |317| 
           NOP             1
RL38:      ; CALL OCCURS                     ; |317| 
           MV      .L1     A4,A1             ; |317| 
   [ A1]   B       .S1     L16               ; |317| 
           NOP             5
           ; BRANCH OCCURS                   ; |317| 
;** --------------------------------------------------------------------------*
;** 317	-----------------------    LOG_event(LOG_D_system, 0, (int)"Transmit sample dropped on channel 1", 8);
;** 317	-----------------------    goto g34;
           B       .S1     _LOG_event        ; |317| 
           LDW     .D2T1   *+DP(_LOG_D_system),A4 ; |317| 
           MVKL    .S2     RL40,B3           ; |317| 
           MVK     .S2     0x8,B6            ; |317| 
           MVKL    .S1     SL8+0,A6          ; |317| 

           MVKH    .S1     SL8+0,A6          ; |317| 
||         MVKH    .S2     RL40,B3           ; |317| 
||         ZERO    .L2     B4                ; |317| 

RL40:      ; CALL OCCURS                     ; |317| 
           B       .S1     L16               ; |317| 
           NOP             5
           ; BRANCH OCCURS                   ; |317| 
;** --------------------------------------------------------------------------*
L14:    
;**	-----------------------g30:
;** 309	-----------------------    tmp |= *(dss_isr_txPtr[1])++;
;** 310	-----------------------    dss_isr_txCnt[1] = Y$5 = dss_isr_txCnt[1]-1;
;** 311	-----------------------    if ( Y$5 ) goto g34;
	.line	68
           LDW     .D2T2   *+DP(_dss_isr_txPtr+4),B4 ; |309| 
           NOP             4
           LDHU    .D2T2   *B4++,B5          ; |309| 
           STW     .D2T2   B4,*+DP(_dss_isr_txPtr+4) ; |309| 
           NOP             3
           OR      .L1X    B5,A10,A10        ; |309| 
	.line	69
           LDW     .D2T2   *+DP(_dss_isr_txCnt+4),B4 ; |310| 
           NOP             4
           SUB     .L2     B4,1,B0           ; |310| 
           STW     .D2T2   B0,*+DP(_dss_isr_txCnt+4) ; |310| 
	.line	70
   [ B0]   B       .S1     L16               ; |311| 
           NOP             5
           ; BRANCH OCCURS                   ; |311| 
;** --------------------------------------------------------------------------*
;** 312	-----------------------    if ( TRC_query(49152u) ) goto g33;
	.line	71
           B       .S1     _TRC_query        ; |312| 
           MVKL    .S2     RL42,B3           ; |312| 
           ZERO    .L1     A0                ; |312| 
           MVKH    .S2     RL42,B3           ; |312| 
           SET     .S1     A0,0xe,0xf,A4     ; |312| 
           NOP             1
RL42:      ; CALL OCCURS                     ; |312| 
           MV      .L1     A4,A1             ; |312| 
   [ A1]   B       .S1     L15               ; |312| 
           NOP             5
           ; BRANCH OCCURS                   ; |312| 
;** --------------------------------------------------------------------------*
;** 312	-----------------------    LOG_event(LOG_D_system, 0, (int)"Transmit buffer for channel 1 is empty", 8);
           B       .S1     _LOG_event        ; |312| 
           LDW     .D2T1   *+DP(_LOG_D_system),A4 ; |312| 
           MVKL    .S2     RL44,B3           ; |312| 
           MVK     .S2     0x8,B6            ; |312| 
           MVKL    .S1     SL9+0,A6          ; |312| 

           MVKH    .S1     SL9+0,A6          ; |312| 
||         MVKH    .S2     RL44,B3           ; |312| 
||         ZERO    .L2     B4                ; |312| 

RL44:      ; CALL OCCURS                     ; |312| 
;** --------------------------------------------------------------------------*
L15:    
;**	-----------------------g33:
;** 313	-----------------------    SWI_or(dss_isr_swi[1], 18u);
;** 314	-----------------------    ++postCount;
	.line	72
           MVKL    .S1     _dss_isr_swi+4,A0 ; |313| 

           B       .S2     _SWI_or           ; |313| 
||         MVKH    .S1     _dss_isr_swi+4,A0 ; |313| 

           LDW     .D1T1   *A0,A4            ; 
           MVKL    .S2     RL46,B3           ; |313| 
           MVK     .S2     0x12,B4           ; |313| 
           MVKH    .S2     RL46,B3           ; |313| 
           NOP             1
RL46:      ; CALL OCCURS                     ; |313| 
	.line	73
           LDW     .D2T2   *+DP(_postCount),B4 ; |314| 
           NOP             4
           ADD     .L2     1,B4,B4           ; |314| 
           STW     .D2T2   B4,*+DP(_postCount) ; |314| 
;** --------------------------------------------------------------------------*
L16:    
;**	-----------------------g34:
;** 319	-----------------------    *(volatile unsigned *)0x18c0004 = tmp;
;** 319	-----------------------    return;
	.line	78
           MVKL    .S1     0x18c0004,A0      ; |319| 
           MVKH    .S1     0x18c0004,A0      ; |319| 
           STW     .D1T1   A10,*A0           ; |319| 
	.line	79
           LDW     .D2T1   *+SP(12),A10      ; |320| 
           LDW     .D2T2   *++SP(16),B3      ; |320| 
           NOP             4
           B       .S2     B3                ; |320| 
           NOP             5
           ; BRANCH OCCURS                   ; |320| 
	.endfunc	320,000080400h,16


	.sect	".text"
	.global	_foo
	.sym	_foo,_foo, 36, 2, 0
	.func	323

;******************************************************************************
;* FUNCTION NAME: _foo                                                        *
;*                                                                            *
;*   Regs Modified     : B4                                                   *
;*   Regs Used         : B3,B4,DP                                             *
;*   Local Frame Size  : 0 Args + 0 Auto + 0 Save = 0 byte                    *
;******************************************************************************
_foo:
;** --------------------------------------------------------------------------*
;** 325	-----------------------    bar = 0;
;** 325	-----------------------    return;
	.line	3
           ZERO    .L2     B4                ; |325| 
           STW     .D2T2   B4,*+DP(_bar)     ; |325| 
	.line	4
           B       .S2     B3                ; |326| 
           NOP             5
           ; BRANCH OCCURS                   ; |326| 
	.endfunc	326,000000000h,0


;******************************************************************************
;* MARK THE END OF THE SCALAR INIT RECORD IN CINIT:C                          *
;******************************************************************************
CIR:	.sect	".cinit:c"
;******************************************************************************
;* STRINGS                                                                    *
;******************************************************************************
	.sect	".const"
SL1:	.string	"Receive drop on channel 0, postCount = %d",0
SL2:	.string	"ISR: Receive dropped on channel 0",0
SL3:	.string	"100th Receive sample dropped on channel 0",0
SL4:	.string	"Receive sample dropped on channel 1",0
SL5:	.string	"100th Receive sample dropped on channel 1",0
SL6:	.string	"Receive buffer for channel 1 is full",0
SL7:	.string	"Transmit sample dropped on channel 0",0
SL8:	.string	"Transmit sample dropped on channel 1",0
SL9:	.string	"Transmit buffer for channel 1 is empty",0
;******************************************************************************
;* UNDEFINED EXTERNAL REFERENCES                                              *
;******************************************************************************
	.global	_SWI_or
	.global	_TRC_query
	.global	_LOG_event
	.global	_LOG_printf
	.global	_trace
	.global	_dss_isr_txCnt
	.global	_dss_isr_txPtr
	.global	_dss_isr_rxCnt
	.global	_dss_isr_rxPtr
	.global	_LOG_D_system
	.global	_dss_isr_swi

⌨️ 快捷键说明

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