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

📄 amd29lv400bt.asm

📁 dsp6416开发的底层驱动
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;******************************************************************************
;* TMS320C6x ANSI C Codegen                                      Version 4.20 *
;* Date/Time created: Sat Jan 10 16:55:56 2004                                *
;******************************************************************************

;******************************************************************************
;* GLOBAL FILE PARAMETERS                                                     *
;*                                                                            *
;*   Architecture      : TMS320C64xx                                          *
;*   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                                                *
;*                                                                            *
;******************************************************************************

	.asg	A15, FP
	.asg	B14, DP
	.asg	B15, SP
	.global	$bss

	.file	"amd29lv400bt.c"

	.sect	".cinit"
	.align	8
	.field  	IR_1,32
	.field  	_MyFlash+0,32
	.field  	1,32			; _MyFlash._MfgId @ 0
	.field  	62,32			; _MyFlash._DevId @ 32
	.field  	19,32			; _MyFlash._NumberBlocks @ 64
	.field  	1677721600,32			; _MyFlash._Blocks[0]._Paddr @ 96
	.field  	1,32			; _MyFlash._Blocks[0]._Type @ 128
	.field  	1677787136,32			; _MyFlash._Blocks[1]._Paddr @ 160
	.field  	1,32			; _MyFlash._Blocks[1]._Type @ 192
	.field  	1677852672,32			; _MyFlash._Blocks[2]._Paddr @ 224
	.field  	1,32			; _MyFlash._Blocks[2]._Type @ 256
	.field  	1677918208,32			; _MyFlash._Blocks[3]._Paddr @ 288
	.field  	1,32			; _MyFlash._Blocks[3]._Type @ 320
	.field  	1677983744,32			; _MyFlash._Blocks[4]._Paddr @ 352
	.field  	1,32			; _MyFlash._Blocks[4]._Type @ 384
	.field  	1678049280,32			; _MyFlash._Blocks[5]._Paddr @ 416
	.field  	1,32			; _MyFlash._Blocks[5]._Type @ 448
	.field  	1678114816,32			; _MyFlash._Blocks[6]._Paddr @ 480
	.field  	1,32			; _MyFlash._Blocks[6]._Type @ 512
	.field  	1678180352,32			; _MyFlash._Blocks[7]._Paddr @ 544
	.field  	1,32			; _MyFlash._Blocks[7]._Type @ 576
	.field  	1678245888,32			; _MyFlash._Blocks[8]._Paddr @ 608
	.field  	2,32			; _MyFlash._Blocks[8]._Type @ 640
	.field  	1678311424,32			; _MyFlash._Blocks[9]._Paddr @ 672
	.field  	2,32			; _MyFlash._Blocks[9]._Type @ 704
	.field  	1678376960,32			; _MyFlash._Blocks[10]._Paddr @ 736
	.field  	3,32			; _MyFlash._Blocks[10]._Type @ 768
	.field  	1678442496,32			; _MyFlash._Blocks[11]._Paddr @ 800
	.field  	0,32			; _MyFlash._Blocks[11]._Type @ 832
	.field  	1678508032,32			; _MyFlash._Blocks[12]._Paddr @ 864
	.field  	1,32			; _MyFlash._Blocks[12]._Type @ 896
	.field  	1678573568,32			; _MyFlash._Blocks[13]._Paddr @ 928
	.field  	1,32			; _MyFlash._Blocks[13]._Type @ 960
	.field  	1678639104,32			; _MyFlash._Blocks[14]._Paddr @ 992
	.field  	1,32			; _MyFlash._Blocks[14]._Type @ 1024
	.field  	1678704640,32			; _MyFlash._Blocks[15]._Paddr @ 1056
	.field  	1,32			; _MyFlash._Blocks[15]._Type @ 1088
	.field  	1678737408,32			; _MyFlash._Blocks[16]._Paddr @ 1120
	.field  	1,32			; _MyFlash._Blocks[16]._Type @ 1152
	.field  	1678745600,32			; _MyFlash._Blocks[17]._Paddr @ 1184
	.field  	1,32			; _MyFlash._Blocks[17]._Type @ 1216
	.field  	1678753792,32			; _MyFlash._Blocks[18]._Paddr @ 1248
	.field  	1,32			; _MyFlash._Blocks[18]._Type @ 1280
IR_1:	.set	164
	.sect	".text"
	.global	_MyFlash
	.bss	_MyFlash,172,4
	.sym	_MyFlash,_MyFlash, 8, 2, 1376, _Amd29LV400BT
	.global	_Buffer
	.bss	_Buffer,2048,8
	.sym	_Buffer,_Buffer, 62, 2, 16384,, 512
	.global	_PRG_bufaddr
	.bss	_PRG_bufaddr,4,4
	.sym	_PRG_bufaddr,_PRG_bufaddr, 14, 2, 32
	.global	_PRG_bufsize
	.bss	_PRG_bufsize,4,4
	.sym	_PRG_bufsize,_PRG_bufsize, 14, 2, 32
	.global	_PRG_devsize
	.bss	_PRG_devsize,4,4
	.sym	_PRG_devsize,_PRG_devsize, 14, 2, 32
	.global	_PRG_paddr
	.bss	_PRG_paddr,4,4
	.sym	_PRG_paddr,_PRG_paddr, 14, 2, 32
	.global	_PRG_page
	.bss	_PRG_page,4,4
	.sym	_PRG_page,_PRG_page, 14, 2, 32
	.global	_PRG_length
	.bss	_PRG_length,4,4
	.sym	_PRG_length,_PRG_length, 14, 2, 32
	.global	_PRG_status
	.bss	_PRG_status,4,4
	.sym	_PRG_status,_PRG_status, 14, 2, 32
	.global	_PRG_options
	.bss	_PRG_options,4,4
	.sym	_PRG_options,_PRG_options, 14, 2, 32
;	c:\ti\c6000\cgtools\bin\acp6x.exe -q -I../include -D_DEBUG -DCHIP_6400 --version=6400 -Ic:/ti/c6000/bios/include -Ic:/ti/c6000/rtdx/include -Ic:/ti/c6000/cgtools/include --keep_unneeded_types -m --i_output_file C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI560_2 --template_info_file C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI560_3 --object_file E:/zcl/lxm/myprojects/mypost/Debug/amd29lv400bt.obj --opt_shell 13 amd29lv400bt.c -g -k -q -al -frE:/zcl/lxm/myprojects/mypost/Debug -i../include -d_DEBUG -dCHIP_6400 -mv6400 
	.sect	".text"
	.sym	_Delay,_Delay, 32, 3, 0
	.func	225

;******************************************************************************
;* FUNCTION NAME: _Delay                                                      *
;*                                                                            *
;*   Regs Modified     : B0,B4,SP                                             *
;*   Regs Used         : A4,B0,B3,B4,SP                                       *
;*   Local Frame Size  : 0 Args + 8 Auto + 0 Save = 8 byte                    *
;******************************************************************************
_Delay:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_Count,4, 14, 17, 32
	.sym	_Count,4, 14, 1, 32
	.sym	_Loop,8, 14, 1, 32
           SUB     .D2     SP,8,SP           ; |226| 
           STW     .D2T1   A4,*+SP(4)        ; |226| 
           NOP             2
	.line	3
           MV      .D2X    A4,B4
           STW     .D2T2   B4,*+SP(8)        ; |227| 
           NOP             2
	.line	4
           LDW     .D2T2   *+SP(8),B0        ; |228| 
           NOP             4
   [!B0]   BNOP    .S1     L2,3
           SUB     .D2     B0,1,B4           ; |228| 
           STW     .D2T2   B4,*+SP(8)        ; |228| 
           ; BRANCH OCCURS                   ; |228| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: software pipelining disabled
;*----------------------------------------------------------------------------*
L1:    
	.line	5
           LDW     .D2T2   *+SP(8),B0        ; |229| 
           NOP             4
   [ B0]   BNOP    .S1     L1,3
           SUB     .D2     B0,1,B4           ; |229| 
           STW     .D2T2   B4,*+SP(8)        ; |229| 
           ; BRANCH OCCURS                   ; |229| 
;** --------------------------------------------------------------------------*
L2:    
	.line	6
           BNOP    .S2     B3,4
           ADD     .D2     8,SP,SP           ; |230| 
           ; BRANCH OCCURS                   ; |230| 
	.endfunc	230,000000000h,8


	.sect	".text"
	.sym	_FlsWrite,_FlsWrite, 32, 3, 0
	.func	233

;******************************************************************************
;* FUNCTION NAME: _FlsWrite                                                   *
;*                                                                            *
;*   Regs Modified     : A4,B0,B3,B4,B5,SP                                    *
;*   Regs Used         : A4,B0,B3,B4,B5,SP                                    *
;*   Local Frame Size  : 0 Args + 12 Auto + 4 Save = 16 byte                  *
;******************************************************************************
_FlsWrite:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_Faddr,4, 14, 17, 32
	.sym	_Data,20, 2, 17, 8
	.sym	_Faddr,4, 14, 1, 32
	.sym	_Data,8, 2, 1, 8
	.sym	_pFlash,12, 18, 1, 32
           STW     .D2T2   B3,*SP--(16)      ; |234| 
           NOP             2
           STB     .D2T2   B4,*+SP(8)        ; |234| 
           STW     .D2T1   A4,*+SP(4)        ; |234| 
           NOP             2
	.line	3
           MV      .D2X    A4,B4
           STW     .D2T2   B4,*+SP(12)       ; |235| 
           NOP             2
	.line	4
           LDW     .D2T2   *+SP(12),B5       ; |236| 
           LDB     .D2T2   *+SP(8),B4        ; |236| 
           NOP             4
           STB     .D2T2   B4,*B5            ; |236| 
           NOP             2
	.line	5
           B       .S1     _Delay            ; |237| 
           ADDKPC  .S2     RL0,B3,3          ; |237| 
           MVK     .S1     0x64,A4           ; |237| 
RL0:       ; CALL OCCURS                     ; |237| 
	.line	6
           LDW     .D2T2   *++SP(16),B3      ; |238| 
           NOP             4
           BNOP    .S2     B3,5
           ; BRANCH OCCURS                   ; |238| 
	.endfunc	238,000080000h,16


	.sect	".text"
	.sym	_FlsRead,_FlsRead, 34, 3, 0
	.func	240

;******************************************************************************
;* FUNCTION NAME: _FlsRead                                                    *
;*                                                                            *
;*   Regs Modified     : A4,B4,SP                                             *
;*   Regs Used         : A4,B3,B4,SP                                          *
;*   Local Frame Size  : 0 Args + 8 Auto + 0 Save = 8 byte                    *
;******************************************************************************
_FlsRead:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_Faddr,4, 14, 17, 32
	.sym	_Faddr,4, 14, 1, 32
	.sym	_pFlash,8, 18, 1, 32
           SUB     .D2     SP,8,SP           ; |241| 
           STW     .D2T1   A4,*+SP(4)        ; |241| 
           NOP             2
	.line	3
           MV      .D2X    A4,B4
           STW     .D2T2   B4,*+SP(8)        ; |242| 
           NOP             2
	.line	4
           LDB     .D2T1   *B4,A4            ; |243| 
           NOP             4
	.line	5
           BNOP    .S2     B3,4
           ADD     .D2     8,SP,SP           ; |244| 
           ; BRANCH OCCURS                   ; |244| 
	.endfunc	244,000000000h,8


	.sect	".text"
	.global	_FLASH_MfgCode
	.sym	_FLASH_MfgCode,_FLASH_MfgCode, 36, 2, 0
	.func	255

;******************************************************************************
;* FUNCTION NAME: _FLASH_MfgCode                                              *
;*                                                                            *
;*   Regs Modified     : A3,A4,B0,B3,B4,B5,SP                                 *
;*   Regs Used         : A3,A4,B0,B3,B4,B5,SP                                 *
;*   Local Frame Size  : 0 Args + 16 Auto + 4 Save = 20 byte                  *
;******************************************************************************
_FLASH_MfgCode:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_pMfgCode,4, 24, 17, 32, _flash_mfg_code
	.sym	_pMfgCode,4, 24, 1, 32, _flash_mfg_code
	.sym	_MfgId,8, 14, 1, 32
	.sym	_DevId,12, 14, 1, 32
	.sym	_FlashBase,16, 14, 1, 32
           STW     .D2T2   B3,*SP--(24)      ; |256| 
           NOP             2
           STW     .D2T1   A4,*+SP(4)        ; |256| 
           NOP             2
	.line	4
           ZERO    .D2     B4                ; |258| 
           MVKH    .S2     0x64000000,B4     ; |258| 
           STW     .D2T2   B4,*+SP(16)       ; |258| 
           NOP             2
	.line	6
           B       .S1     _FlsWrite         ; |260| 
           MVK     .S2     0xffffffaa,B4     ; |260| 
           MVKL    .S1     0x64000555,A4     ; |260| 
           ADDKPC  .S2     RL2,B3,1          ; |260| 
           MVKH    .S1     0x64000555,A4     ; |260| 
RL2:       ; CALL OCCURS                     ; |260| 
	.line	7
           B       .S1     _FlsWrite         ; |261| 
           MVK     .S2     0x55,B4           ; |261| 
           MVKL    .S1     0x640002aa,A4     ; |261| 
           ADDKPC  .S2     RL4,B3,1          ; |261| 
           MVKH    .S1     0x640002aa,A4     ; |261| 
RL4:       ; CALL OCCURS                     ; |261| 
	.line	8
           B       .S1     _FlsWrite         ; |262| 
           MVK     .S2     0xffffff90,B4     ; |262| 
           MVKL    .S1     0x64000555,A4     ; |262| 
           ADDKPC  .S2     RL6,B3,1          ; |262| 
           MVKH    .S1     0x64000555,A4     ; |262| 
RL6:       ; CALL OCCURS                     ; |262| 
	.line	10
           B       .S1     _FlsRead          ; |264| 
           LDW     .D2T1   *+SP(16),A4       ; |264| 
           ADDKPC  .S2     RL8,B3,3          ; |264| 
RL8:       ; CALL OCCURS                     ; |264| 
           EXTU    .S1     A4,24,24,A3       ; |264| 
           STW     .D2T1   A3,*+SP(8)        ; |264| 
           NOP             2
	.line	11

           B       .S1     _FlsRead          ; |265| 
||         LDW     .D2T2   *+SP(16),B4       ; |265| 

           ADDKPC  .S2     RL10,B3,3         ; |265| 
           ADD     .D1X    1,B4,A4           ; |265| 

⌨️ 快捷键说明

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