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

📄 dss.asm

📁 Using DSP/BIOS I/O in Multichannel Systems
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;----------------------------------------------------------------------
           B       .S1     L8                ; |157| 
           NOP             5
           ; BRANCH OCCURS                   ; |157| 
;** --------------------------------------------------------------------------*
L7:    
	.line	53
;----------------------------------------------------------------------
; 158 | QUE_put(device->fromdevice, QUE_get(device->todevice));                
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(4),B4        ; |158| 
           MVKL    .S2     RL24,B3           ; |158| 
           MVKH    .S2     RL24,B3           ; |158| 
           NOP             1
           B       .S1     _QUE_get          ; |158| 
           LDW     .D2T1   *B4,A4            ; |158| 
           NOP             4
RL24:      ; CALL OCCURS                     ; |158| 
           LDW     .D2T2   *+SP(4),B5        ; |158| 
           MV      .L2X    A4,B4             ; 
           MVKL    .S2     RL26,B3           ; |158| 
           MVKH    .S2     RL26,B3           ; |158| 
           B       .S1     _QUE_put          ; |158| 
           LDW     .D2T1   *+B5(4),A4        ; 
           NOP             4
RL26:      ; CALL OCCURS                     ; |158| 
	.line	54
;----------------------------------------------------------------------
; 159 | SEM_post(objptr->sync);                                                
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(12),B4       ; |159| 
           MVKL    .S2     RL28,B3           ; |159| 
           MVKH    .S2     RL28,B3           ; |159| 
           NOP             1
           B       .S1     _SEM_post         ; |159| 
           LDW     .D2T1   *B4,A4            ; |159| 
           NOP             4
RL28:      ; CALL OCCURS                     ; |159| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: software pipelining disabled
;*----------------------------------------------------------------------------*
L8:    
	.line	55
           LDW     .D2T2   *+SP(4),B4        ; |160| 
           NOP             4
           LDW     .D2T2   *B4,B5            ; |160| 
           LDW     .D2T2   *B4,B4            ; |160| 
           NOP             3
           LDW     .D2T2   *B5,B5            ; |160| 
           NOP             4
           CMPEQ   .L2     B5,B4,B0          ; |160| 
   [!B0]   B       .S1     L7                ; |160| 
           NOP             5
           ; BRANCH OCCURS                   ; |160| 
;** --------------------------------------------------------------------------*
L9:    
	.line	57
;----------------------------------------------------------------------
; 162 | return SYS_OK;                                                         
;----------------------------------------------------------------------
           ZERO    .L1     A4                ; |162| 
	.line	58
           LDW     .D2T2   *++SP(32),B3      ; |163| 
           NOP             4
           B       .S2     B3                ; |163| 
           NOP             5
           ; BRANCH OCCURS                   ; |163| 
	.endfunc	163,000080000h,32


	.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     : 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 + 0 Auto + 4 Save = 4 byte                    *
;******************************************************************************
_DSS_init:
;** --------------------------------------------------------------------------*
           STW     .D2T2   B3,*SP--(8)       ; |176| 
	.line	4
;----------------------------------------------------------------------
; 179 | LOG_message("DSS_init called", NULL);                                  
;----------------------------------------------------------------------
           B       .S1     _TRC_query        ; |179| 
           MVKL    .S2     RL30,B3           ; |179| 
           ZERO    .L1     A0                ; |179| 
           MVKH    .S2     RL30,B3           ; |179| 
           SET     .S1     A0,0xe,0xf,A4     ; |179| 
           NOP             1
RL30:      ; CALL OCCURS                     ; |179| 
           MV      .L1     A4,A1             ; |179| 
   [ A1]   B       .S1     L10               ; |179| 
           NOP             5
           ; BRANCH OCCURS                   ; |179| 
;** --------------------------------------------------------------------------*
           B       .S1     _LOG_event        ; |179| 
           LDW     .D2T1   *+DP(_LOG_D_system),A4 ; |179| 
           MVKL    .S2     RL32,B3           ; |179| 
           MVK     .S2     0x8,B6            ; |179| 
           MVKL    .S1     SL1+0,A6          ; |179| 

           MVKH    .S1     SL1+0,A6          ; |179| 
||         MVKH    .S2     RL32,B3           ; |179| 
||         ZERO    .L2     B4                ; |179| 

RL32:      ; CALL OCCURS                     ; |179| 
;** --------------------------------------------------------------------------*
L10:    
	.line	5
;----------------------------------------------------------------------
; 180 | DSS_LIO_FXNS.init(0, 0);                                               
;----------------------------------------------------------------------
           LDW     .D2T2   *+DP(_DSS_LIO_FXNS+12),B5 ; |180| 
           MVKL    .S2     RL34,B3           ; |180| 
           MVKH    .S2     RL34,B3           ; |180| 
           ZERO    .L2     B4                ; |180| 
           ZERO    .L1     A4                ; |180| 
           B       .S2     B5                ; |180| 
           NOP             5
RL34:      ; CALL OCCURS                     ; |180| 
	.line	6
;----------------------------------------------------------------------
; 181 | DSS_LIO_FXNS.init(1, 0);                                               
;----------------------------------------------------------------------
           LDW     .D2T2   *+DP(_DSS_LIO_FXNS+12),B5 ; |181| 
           MVKL    .S2     RL35,B3           ; |181| 
           MVKH    .S2     RL35,B3           ; |181| 
           ZERO    .L2     B4                ; |181| 
           MVK     .S1     0x1,A4            ; |181| 
           B       .S2     B5                ; |181| 
           NOP             5
RL35:      ; CALL OCCURS                     ; |181| 
	.line	7
;----------------------------------------------------------------------
; 182 | DSS_LIO_FXNS.init(2, 0);                                               
;----------------------------------------------------------------------
           LDW     .D2T2   *+DP(_DSS_LIO_FXNS+12),B5 ; |182| 
           MVKL    .S2     RL36,B3           ; |182| 
           MVKH    .S2     RL36,B3           ; |182| 
           ZERO    .L2     B4                ; |182| 
           MVK     .S1     0x2,A4            ; |182| 
           B       .S2     B5                ; |182| 
           NOP             5
RL36:      ; CALL OCCURS                     ; |182| 
	.line	8
;----------------------------------------------------------------------
; 183 | DSS_LIO_FXNS.init(3, 0);                                               
;----------------------------------------------------------------------
           LDW     .D2T2   *+DP(_DSS_LIO_FXNS+12),B5 ; |183| 
           MVKL    .S2     RL37,B3           ; |183| 
           MVKH    .S2     RL37,B3           ; |183| 
           ZERO    .L2     B4                ; |183| 
           MVK     .S1     0x3,A4            ; |183| 
           B       .S2     B5                ; |183| 
           NOP             5
RL37:      ; CALL OCCURS                     ; |183| 
	.line	9
           LDW     .D2T2   *++SP(8),B3       ; |184| 
           NOP             4
           B       .S2     B3                ; |184| 
           NOP             5
           ; BRANCH OCCURS                   ; |184| 
	.endfunc	184,000080000h,8


	.sect	".text"
	.global	_DSS_issue
	.sym	_DSS_issue,_DSS_issue, 36, 2, 0
	.func	188
;----------------------------------------------------------------------
; 188 | 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,DP,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)       ; |188| 
	.line	2
           STW     .D2T1   A4,*+SP(4)        ; |189| 
	.line	3
;----------------------------------------------------------------------
; 190 | LOG_message("DSS_issue: device == 0x%x", (Uns)device);                 
;----------------------------------------------------------------------
           B       .S1     _TRC_query        ; |190| 
           MVKL    .S2     RL38,B3           ; |190| 
           ZERO    .L1     A0                ; |190| 
           SET     .S1     A0,0xe,0xf,A4     ; |190| 
           MVKH    .S2     RL38,B3           ; |190| 
           NOP             1
RL38:      ; CALL OCCURS                     ; |190| 
           MV      .L1     A4,A1             ; |190| 
   [ A1]   B       .S1     L11               ; |190| 
           NOP             5
           ; BRANCH OCCURS                   ; |190| 
;** --------------------------------------------------------------------------*

           B       .S1     _LOG_event        ; |190| 
||         LDW     .D2T2   *+SP(4),B4        ; 

           LDW     .D2T1   *+DP(_LOG_D_system),A4 ; |190| 
           MVKL    .S2     RL40,B3           ; |190| 
           MVK     .S2     0x8,B6            ; |190| 
           MVKL    .S1     SL2+0,A6          ; |190| 

           MVKH    .S1     SL2+0,A6          ; |190| 
||         MVKH    .S2     RL40,B3           ; |190| 

RL40:      ; CALL OCCURS                     ; |190| 
;** --------------------------------------------------------------------------*
L11:    
	.line	4
;----------------------------------------------------------------------
; 191 | if (device->mode == DEV_OUTPUT) {                                      
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(4),B4        ; |191| 
           NOP             4
           LDW     .D2T2   *+B4(20),B4       ; |191| 
           NOP             4
           CMPEQ   .L2     B4,1,B0           ; |191| 
   [!B0]   B       .S1     L12               ; |191| 
           NOP             5
           ; BRANCH OCCURS                   ; |191| 
;** --------------------------------------------------------------------------*
	.line	5
;----------------------------------------------------------------------
; 192 | DSS_txPrime(((DSS_Obj *)device->object)->chan, 0);                     
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(4),B4        ; |192| 
           MVKL    .S2     RL42,B3           ; |192| 
           MVKH    .S2     RL42,B3           ; |192| 
           NOP             2
           LDW     .D2T2   *+B4(32),B4       ; |192| 
           NOP             3
           B       .S1     _DSS_txPrime      ; |192| 
           LDW     .D2T1   *+B4(8),A4        ; 
           ZERO    .L2     B4                ; |192| 
           NOP             3
RL42:      ; CALL OCCURS                     ; |192| 
	.line	6
;----------------------------------------------------------------------
; 193 | } else {                                                               
;----------------------------------------------------------------------
           B       .S1     L13               ; |193| 
           NOP             5
           ; BRANCH OCCURS                   ; |193| 
;** --------------------------------------------------------------------------*
L12:    
	.line	7
;----------------------------------------------------------------------

⌨️ 快捷键说明

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