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

📄 echo.asm

📁 Using DSP/BIOS I/O in Multichannel Systems
💻 ASM
📖 第 1 页 / 共 4 页
字号:
;******************************************************************************
;* TMS320C6x ANSI C Codegen                                      Version 4.00 *
;* Date/Time created: Fri Sep 15 10:23:46 2000                                *
;******************************************************************************

;******************************************************************************
;* GLOBAL FILE PARAMETERS                                                     *
;*                                                                            *
;*   Architecture      : TMS320C620x                                          *
;*   Optimization      : Disabled                                             *
;*   Optimizing for    : Compile time, Ease of Development                    *
;*                       Based on options: no -o, no -ms                      *
;*   Endian            : Little                                               *
;*   Interrupt Thrshld : Disabled                                             *
;*   Memory Model      : Small                                                *
;*   Calls to RTS      : Near                                                 *
;*   Pipelining        : Disabled                                             *
;*   Memory Aliases    : Presume are aliases (pessimistic)                    *
;*   Debug Info        : Debug                                                *
;*                                                                            *
;******************************************************************************

FP	.set	A15
DP	.set	B14
SP	.set	B15
	.global	$bss

;	acp6x -I/ti/myprojects/spra689/examples/6xisr -I/ti/myprojects/spra689/examples/evmdriver -I. -m --i_output_file c:\windows\TEMP\TI559349_2 --template_info_file c:\windows\TEMP\TI559349_3 --object_file c:/ti/myprojects/spra689/examples/evm/examples/sio/sio4/echo.obj --opt_shell 7 echo.c echo.c -gs -frc:/ti/myprojects/spra689/examples/evm/examples/sio/sio4 -i/ti/myprojects/spra689/examples/6xisr -i/ti/myprojects/spra689/examples/evmdriver -i. echo.c 
	.file	"echo.c"
	.file	"C:\ti\c6000\bios\include\std.h"
	.sym	_MdUns, 0, 13, 13, 16
	.sym	_Int, 0, 4, 13, 32
	.sym	_String, 0, 18, 13, 32
	.sym	_Uns, 0, 14, 13, 32
	.sym	_Bool, 0, 13, 13, 16
	.sym	_Ptr, 0, 16, 13, 32
	.sym	_Arg, 0, 4, 13, 32
	.file	"C:\ti\c6000\bios\include\log.h"
	.stag	_LOG_Obj, 192
	.member	_bufend, 0, 14, 8, 32
	.member	_flag, 32, 14, 8, 32
	.member	_seqnum, 64, 14, 8, 32
	.member	_curptr, 96, 14, 8, 32
	.member	_lenmask, 128, 14, 8, 32
	.member	_bufbeg, 160, 14, 8, 32
	.eos
	.sym	_LOG_Obj, 0, 8, 13, 192,_LOG_Obj
	.sym	_LOG_Handle, 0, 24, 13, 32,_LOG_Obj
	.file	"C:\ti\c6000\bios\include\que.h"
	.stag	_QUE_Elem, 64
	.member	_next, 0, 24, 8, 32, _QUE_Elem
	.member	_prev, 32, 24, 8, 32, _QUE_Elem
	.eos
	.sym	_QUE_Handle, 0, 24, 13, 32,_QUE_Elem
	.sym	_QUE_Obj, 0, 8, 13, 64,_QUE_Elem
	.file	"C:\ti\c6000\bios\include\sem.h"
	.stag	_SEM_Obj, 0
	.eos
	.sym	_SEM_Handle, 0, 24, 13, 32,_SEM_Obj
	.file	"C:\ti\c6000\bios\include\dev.h"
	.stag	_DEV_Obj, 544
	.member	_todevice, 0, 24, 8, 32, _QUE_Elem
	.member	_fromdevice, 32, 24, 8, 32, _QUE_Elem
	.member	_bufsize, 64, 14, 8, 32
	.member	_nbufs, 96, 14, 8, 32
	.member	_segid, 128, 4, 8, 32
	.member	_mode, 160, 4, 8, 32
	.member	_devid, 192, 4, 8, 32
	.member	_params, 224, 16, 8, 32
	.member	_object, 256, 16, 8, 32
	.member	_fxns, 288, 8, 8, 224, _DEV_Fxns
	.member	_timeout, 512, 14, 8, 32
	.eos
	.stag	_DEV_Fxns, 224
	.member	_close, 0, 148, 8, 32
	.member	_ctrl, 32, 148, 8, 32
	.member	_idle, 64, 148, 8, 32
	.member	_issue, 96, 148, 8, 32
	.member	_open, 128, 148, 8, 32
	.member	_ready, 160, 157, 8, 32
	.member	_reclaim, 192, 148, 8, 32
	.eos
	.sym	_DEV_Tclose, 0, 148, 13, 32
	.sym	_DEV_Tctrl, 0, 148, 13, 32
	.sym	_DEV_Tidle, 0, 148, 13, 32
	.sym	_DEV_Tissue, 0, 148, 13, 32
	.sym	_DEV_Topen, 0, 148, 13, 32
	.sym	_DEV_Tready, 0, 157, 13, 32
	.sym	_DEV_Treclaim, 0, 148, 13, 32
	.sym	_DEV_Fxns, 0, 8, 13, 224,_DEV_Fxns
	.sym	_DEV_Handle, 0, 24, 13, 32,_DEV_Obj
	.stag	_DEV_Frame, 0
	.eos
	.sym	_DEV_Frame, 0, 8, 13, 0,_DEV_Frame
	.sym	_DEV_Obj, 0, 8, 13, 544,_DEV_Obj
	.file	"C:\ti\c6000\bios\include\sio.h"
	.stag	_SIO_Obj, 736
	.member	_dobj, 0, 8, 8, 544, _DEV_Obj
	.member	_flush, 544, 13, 8, 16
	.member	_framelist, 576, 8, 8, 64, _QUE_Elem
	.member	_standardFrame, 640, 24, 8, 32, _DEV_Frame
	.member	_model, 672, 14, 8, 32
	.member	_pfxns, 704, 24, 8, 32, _DEV_Fxns
	.eos
	.sym	_SIO_Obj, 0, 8, 13, 736,_SIO_Obj
	.sym	_SIO_Handle, 0, 24, 13, 32,_SIO_Obj
	.file	"echo.c"
	.stag	_dataChannel, 224
	.member	_inStream, 0, 24, 8, 32, _SIO_Obj
	.member	_outStream, 32, 24, 8, 32, _SIO_Obj
	.member	_buf, 64, 16, 8, 32
	.member	_buf1, 96, 16, 8, 32
	.member	_buf2, 128, 16, 8, 32
	.member	_bufSize, 160, 4, 8, 32
	.member	_load, 192, 4, 8, 32
	.eos
	.sym	_dataChannel, 0, 8, 13, 224,_dataChannel
	.file	"C:\ti\c6000\bios\include\mem.h"
	.file	"C:\ti\c6000\bios\include\log.h"
	.file	"C:\ti\c6000\bios\include\sys.h"
	.file	"C:\ti\c6000\bios\include\sio.h"
	.file	"echo.c"
	.global	_audioChannel
	.bss	_audioChannel,56,4
	.sym	_audioChannel,_audioChannel, 56, 2, 448, _dataChannel, 2
	.sect	".text"
	.global	_initChannelData
	.sym	_initChannelData,_initChannelData, 32, 2, 0
	.func	90
;----------------------------------------------------------------------
;  90 | Void initChannelData(void)                                             
;  92 | dataChannel             *pChannel;                                     
;----------------------------------------------------------------------

;******************************************************************************
;* FUNCTION NAME: _initChannelData                                            *
;*                                                                            *
;*   Regs Modified     : A0,A3,B4,B5,SP                                       *
;*   Regs Used         : A0,A3,B3,B4,B5,DP,SP                                 *
;*   Local Frame Size  : 0 Args + 4 Auto + 0 Save = 4 byte                    *
;******************************************************************************
_initChannelData:
;** --------------------------------------------------------------------------*
	.sym	_pChannel,4, 24, 1, 32, _dataChannel
           SUB     .L2     SP,8,SP           ; |90| 
	.line	6
;----------------------------------------------------------------------
;  95 | pChannel = &audioChannel[CHANNEL0];                                    
;----------------------------------------------------------------------
           MVK     .S2     (_audioChannel-$bss),B4 ; |95| 
           ADD     .L2     DP,B4,B4          ; |95| 
           STW     .D2T2   B4,*+SP(4)        ; |95| 
	.line	7
;----------------------------------------------------------------------
;  96 | pChannel->inStream = &inStream0;                                       
;----------------------------------------------------------------------
           MVKL    .S2     _inStream0,B5     ; |96| 

           MV      .L1X    B4,A0             ; |96| 
||         MVKH    .S2     _inStream0,B5     ; |96| 

           STW     .D1T2   B5,*A0            ; |96| 
	.line	8
;----------------------------------------------------------------------
;  97 | pChannel->outStream = &outStream0;                                     
;----------------------------------------------------------------------
           LDW     .D2T1   *+SP(4),A3        ; |97| 
           MVKL    .S1     _outStream0,A0    ; |97| 
           MVKH    .S1     _outStream0,A0    ; |97| 
           NOP             2
           STW     .D1T1   A0,*+A3(4)        ; |97| 
	.line	9
;----------------------------------------------------------------------
;  98 | pChannel->bufSize = SAMPLE_BUF_SIZE;                                   
;----------------------------------------------------------------------
           LDW     .D2T1   *+SP(4),A3        ; |98| 
           MVK     .S1     320,A0            ; |98| 
           NOP             3
           STW     .D1T1   A0,*+A3(20)       ; |98| 
	.line	10
;----------------------------------------------------------------------
;  99 | pChannel->load = 0;                                                    
;----------------------------------------------------------------------
           LDW     .D2T1   *+SP(4),A3        ; |99| 
           ZERO    .L1     A0                ; |99| 
           NOP             3
           STW     .D1T1   A0,*+A3(24)       ; |99| 
	.line	13
;----------------------------------------------------------------------
; 102 | pChannel = &audioChannel[CHANNEL1];                                    
;----------------------------------------------------------------------
           MVK     .S2     (_audioChannel+28-$bss),B4 ; |102| 
           ADD     .L2     DP,B4,B4          ; |102| 
           STW     .D2T2   B4,*+SP(4)        ; |102| 
	.line	14
;----------------------------------------------------------------------
; 103 | pChannel->inStream = &inStream1;                                       
;----------------------------------------------------------------------
           MVKL    .S1     _inStream1,A0     ; |103| 

           MV      .L1X    B4,A3             ; |103| 
||         MVKH    .S1     _inStream1,A0     ; |103| 

           STW     .D1T1   A0,*A3            ; |103| 
	.line	15
;----------------------------------------------------------------------
; 104 | pChannel->outStream = &outStream1;                                     
;----------------------------------------------------------------------
           LDW     .D2T1   *+SP(4),A0        ; |104| 
           MVKL    .S2     _outStream1,B4    ; |104| 
           MVKH    .S2     _outStream1,B4    ; |104| 
           NOP             2
           STW     .D1T2   B4,*+A0(4)        ; |104| 
	.line	16
;----------------------------------------------------------------------
; 105 | pChannel->bufSize = SAMPLE_BUF_SIZE;                                   
;----------------------------------------------------------------------
           LDW     .D2T1   *+SP(4),A0        ; |105| 
           MVK     .S1     320,A3            ; |105| 
           NOP             3
           STW     .D1T1   A3,*+A0(20)       ; |105| 
	.line	17
;----------------------------------------------------------------------
; 106 | pChannel->load = 0;                                                    
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(4),B4        ; |106| 
           ZERO    .L2     B5                ; |106| 
           NOP             3
           STW     .D2T2   B5,*+B4(24)       ; |106| 
	.line	18
           B       .S2     B3                ; |107| 
           ADD     .L2     8,SP,SP           ; |107| 
           NOP             4
           ; BRANCH OCCURS                   ; |107| 
	.endfunc	107,000000000h,8


	.sect	".text"
	.global	_processChannel
	.sym	_processChannel,_processChannel, 45, 2, 0
	.func	109
;----------------------------------------------------------------------
; 109 | Bool processChannel(dataChannel *channel)                              
;----------------------------------------------------------------------

;******************************************************************************
;* FUNCTION NAME: _processChannel                                             *
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B1,B2,B3,B4,B5, *
;*                           B6,B7,B8,B9,SP                                   *
;*   Regs Used         : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B1,B2,B3,B4,B5, *
;*                           B6,B7,B8,B9,SP                                   *
;*   Local Frame Size  : 8 Args + 8 Auto + 8 Save = 24 byte                   *
;******************************************************************************
_processChannel:
;** --------------------------------------------------------------------------*
	.sym	_channel,4, 24, 17, 32, _dataChannel
	.sym	_channel,12, 24, 1, 32, _dataChannel
	.sym	_arg,16, 4, 1, 32
           STW     .D2T2   B3,*SP--(24)      ; |109| 
           STW     .D2T1   A10,*+SP(20)      ; |109| 
	.line	2
;----------------------------------------------------------------------
; 111 | Arg             arg;                                                   
;----------------------------------------------------------------------
           STW     .D2T1   A4,*+SP(12)       ; |110| 
	.line	5
;----------------------------------------------------------------------
; 113 | LOG_printf(&trace1, "sio_issue in uses buffer 0x%x", channel->buf);    
;----------------------------------------------------------------------
           MVKL    .S2     SL1+0,B4          ; |113| 
           MVKH    .S2     SL1+0,B4          ; |113| 
           STW     .D2T2   B4,*+SP(4)        ; |113| 

           B       .S1     _LOG_printf       ; |113| 
||         LDW     .D1T1   *+A4(8),A0        ; |113| 

           MVKL    .S1     _trace1,A4        ; |113| 
           MVKL    .S2     RL0,B3            ; |113| 
           MVKH    .S1     _trace1,A4        ; |113| 
           MVKH    .S2     RL0,B3            ; |113| 
           STW     .D2T1   A0,*+SP(8)        ; |113| 
RL0:       ; CALL OCCURS                     ; |113| 

⌨️ 快捷键说明

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