亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? boot.asm

?? SEED_DEC5416的USB的程序源碼
?? ASM
字號:
****************************************************************************
*  BOOT   v3.70                                                           *
*  Copyright (c) 1993-2001 Texas Instruments Incorporated                  *
****************************************************************************
	.file "boot.asm"
	.c_mode
	.mmregs
CONST_COPY	.set 1
SWCR		.set	002BH			; 軟件等待控制寄存器
psdramc		.set	8000H			; Read/Write
OVLY_0		.set	001bH			; OVLY = '0'
CLKOUT      .set    09000H          ; clkout is the dsp clock
****************************************************************************
*  I/O空間:		插5×2個等待		?		  						    *
*  數(shù)據(jù)空間低32K:	插2×2個等待		?		                            *
*  數(shù)據(jù)空間高32K:	插5×2個等待		?		                            *
*  程序空間低512K:?插2×2個等待		?		                            *
*  程序空間高512K:	插5×2個等待		?		                            *
****************************************************************************
SWWSR_VAL	.set	0FAAAH
SWCR_VAL	.set	0001H			; 等待X2
****************************************************************************
*                                                                          *
*   This module contains the following definitions :                       *
*                                                                          *
*         __stack    - Stack memory area                                   *
*         _c_int00   - Boot function                                       *
*         _var_init  - Function which processes initialization tables      *
*                                                                          *
****************************************************************************
        .ref	 cinit, pinit
        .ref	IV_RESET
        .ref    _datastart
        .ref    _dataend
        .ref    _time_end
		.global  _c_int00
		.global  _main, _exit, __STACK_SIZE

****************************************************************************
* Declare the stack.  Size is determined by the linker option -stack.  The *
* default value is 1K words.                                               *
****************************************************************************
__stack:	.usect	".stack",0

****************************************************************************
* FUNCTION DEF : _c_int00                                                  *
*                                                                          *
*   1) Set up stack                                                        *
*   2) Set up proper status                                                *
*   3) If "cinit" is not -1, init global variables                         *
*   4) call users' program                                                 *
*                                                                          *
****************************************************************************
	.text
_c_int00:
****************************************************************************
*  INIT STACK POINTER.  REMEMBER STACK GROWS FROM HIGH TO LOW ADDRESSES.   *
****************************************************************************
	STM	#__stack,SP		; set to beginning of stack memory
	ADDM	#(__STACK_SIZE-1),*(SP) ; add size to get to top
	ANDM	#0fffeh,*(SP)		; make sure it is an even address
	
	SSBX	SXM			; turn on SXM for LD #cinit,A
****************************************************************************
*  中斷向量表重定位,配置軟件等到寄存器					                   *
****************************************************************************
		ANDM	#OVLY_0,*(PMST)		; OVLY = 0
		ORM	#IV_RESET,*(PMST)	; 中斷向量表重定位
		STM	#SWWSR_VAL,SWWSR	; 配置軟件等待寄存器
		STM	#SWCR_VAL,SWCR
		ANDM #0,*(BSCR)            ; 設置CLKOUT
		ORM #CLKOUT,*(BSCR)
		STM #10H,TCR
		ANDM #0,*(IMR)
****************************************************************************
*	搬移.data到數(shù)據(jù)區(qū)				                                       *
****************************************************************************
			;得到sine表的首地址
			LD #0,A
			STM #2,AH
			STM #_time_end,AL
			ADD #1,A
			;得到sine表的長度
			LD #0,B
			STM #0,BH
			STM #_dataend,BL
			SUB #_datastart,B
			ADD #1,B
			;得到sine表的數(shù)據(jù)空間的地址
			STM #_datastart,AR0
movdata:	READA *AR0+
			ADD #1,A
			SUB #1,B
			BC movdata,BNEQ		 	

****************************************************************************
* SET UP REQUIRED VALUES IN STATUS REGISTER                                *
****************************************************************************
	SSBX	CPL			; turn on compiler mode bit
	RSBX	OVM			; clear overflow mode bit
	SSBX    INTM        ; enable the interuption

****************************************************************************
* SETTING THESE STATUS BITS TO RESET VALUES.  IF YOU RUN _c_int00 FROM     *
* RESET, YOU CAN REMOVE THIS CODE                                          *
****************************************************************************
	LD	#0,ARP
	RSBX	C16
	RSBX	CMPT
	RSBX	FRCT

****************************************************************************
*  IF cinit IS NOT -1, PROCESS INITIALIZATION TABLES			   *
*  TABLES ARE IN PROGRAM MEMORY IN THE FOLLOWING FORMAT:                   *
*                                                                          *
*       .word  <length of init data in words>                              *
*       .word  <address of variable to initialize>                         *
*       .word  <init data>                                                 *
*       .word  ...                                                         *
*                                                                          *
*  The cinit table is terminated with a zero length                        *
*                                                                          *
****************************************************************************
	.if	__far_mode
	LDX	#cinit,16,A		
	OR	#cinit,A,A
	.else
	LD	#cinit,A                ; Get pointer to init tables
	.endif

	ADD	#1,A,B
	BC	DONE_CINIT,BEQ		; if (cinit == -1) no init tables

****************************************************************************
*  PROCESS INITIALIZATION TABLES.  TABLES ARE IN PROGRAM MEMORY IN THE     *
*  FOLLOWING FORMAT:                                                       *
*                                                                          *
*       .word  <length of init data in words>                              *
*       .word  <address of variable to initialize>                         *
*       .word  <init data>                                                 *
*       .word  ...                                                         *
*                                                                          *
*  The init table is terminated with a zero length                         *
*                                                                          *
****************************************************************************
	RSBX	SXM			; do address arithmetic unsignedly 
        .if	__far_mode
	.else
	NOP
	LD	#cinit,A		; don't want this sign extended anymore1
	LD #8000H,B
	SFTL B,2
	ADD B,A
	.endif
	B 	START_CINIT		; start processing 

LOOP_CINIT:
	READA	*(AR2)			; AR2 = address
	ADD	#1,A			; A += 1

	RPT	*(AR1)			; repeat length+1 times
	READA	*AR2+			; copy from table to memory

	ADD	*(AR1),A		; A += length (READA doesn't change A)
	ADD	#1,A			; A += 1

START_CINIT:
	READA	*(AR1)			; AR1 = length
	ADD	#1,A			; A += 1
	BANZ	LOOP_CINIT,*AR1-	; if (length-- != 0) continue 
DONE_CINIT:

****************************************************************************
*  IF pinit IS NOT -1, PROCESS INITIALIZATION TABLES                       *
*  TABLES ARE IN PROGRAM MEMORY IN THE FOLLOWING FORMAT:                   *
*                                                                          *
*       .word  <address of initialization routine to call>                 *
*       .word  ...                                                         *
*                                                                          *
*  The pinit table is terminated with a NULL pointer                       *
*                                                                          *
****************************************************************************
	SSBX	SXM
	FRAME	-4
;	nop

	.if	__far_mode
	LDX	#pinit,16,A
	OR	#pinit,A,A
	.else
        LD      #pinit,A                ; A = &pinit table
	.endif

        ADD     #1,A,B                  ; B = A + 1
        BC      DONE_PINIT,BEQ          ; if (pinit == -1) no pinit tables

       .if     __far_mode
       .else
       RSBX    SXM                     ; do address arithmetic unsignedly
       NOP
       LD      #pinit,A                ; don't want this sign extended anymore
       .endif

        BD      START_PINIT 
	DST	A, @2
	nop

LOOP_PINIT:
	.if	__far_mode
	FCALA	B			; call function
	.else
	CALA	B			; call function
	.endif

        DLD     @2, A                   ; put PINIT pointer in A

START_PINIT:
        READA   @0                      ; "push" address of function

	.if	__far_mode
	ADD	#1,A
	READA	@1
	.endif

        .if	__far_mode
	ADD	#1, A
	DST	A, @2
        DLD     @0, B
        BC	LOOP_PINIT,BNEQ

        .else
        LD      @0, B                   ; "pop" address of function
        BCD     LOOP_PINIT,BNEQ         ; if not NULL, loop.
        ADDM    #1,@3                   ; move PINIT pointer (in stack)
        .endif

     
DONE_PINIT:
	RSBX	SXM
	FRAME	4

****************************************************************************
*  CALL USER'S PROGRAM                                                     *
****************************************************************************
	.if CONST_COPY
	.if __far_mode                  ; Use far calls for C548 in far mode
	FCALL	_const_init             ; move .const section to DATA mem
        .else
        CALL	_const_init
	.endif
	.endif

	.if __far_mode                  ; Use far calls for C548 in far mode
	FCALL    _main			
	FCALL    _exit			; call exit instead of abort so that
	.else
	CALL    _main			
	CALL    _exit			; call exit instead of abort so that
	.endif

	.if CONST_COPY

****************************************************************************
* FUNCTION DEF : __const_init                                              *
*                                                                          *
*  COPY .CONST SECTION FROM PROGRAM TO DATA MEMORY                         *
*                                                                          *
*   The function depends on the following variables                        *
*   defined in the linker command file                                     *
*                                                                          *
*   __c_load         ; global var containing start                         *
*                      of .const in program memory                         *
*   __const_run      ; global var containing run                           *
*                      address in data memory                              *
*   __const_length   ; global var length of .const                         *
*                      section                                             *
*                                                                          *
****************************************************************************
        .global __const_length,__c_load
        .global __const_run
_const_init:
 
        .sect ".c_mark"              ; establish LOAD adress of
        .label __c_load             ; .const section
 
        .text
******************************************************
* C54x VERSION                                        *
******************************************************
 
        LD      #__const_length, A
        BC      __end_const,AEQ
        STM     #__const_run,AR2 ; Load RUN address of .const
 
        RPT     #__const_length-1
        MVPD    #__c_load,*AR2+  ; Copy .const from program to data
 
******************************************************
*  AT END OF .CONST SECTION RETURN TO CALLER         *
******************************************************
__end_const:
	.if    __far_mode

	.if __no_fret
	FB	_freti549
	.else
	FRET
	.endif

	.else
        RET

	.endif
        .endif
	.end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道久久综合亚洲精品按摩| 欧美一级欧美三级| gogogo免费视频观看亚洲一| 国产美女精品一区二区三区| 国模少妇一区二区三区| 精品一区二区av| 国产在线一区观看| 国产999精品久久| 成人国产精品免费观看动漫| 菠萝蜜视频在线观看一区| 国产精品99久| 懂色av一区二区三区免费看| 国产不卡一区视频| 成人h精品动漫一区二区三区| 99热在这里有精品免费| 91久久久免费一区二区| 日本精品视频一区二区三区| 欧美午夜一区二区三区免费大片| 欧美日韩成人激情| 欧美成人艳星乳罩| 日本一区二区三区视频视频| 中文字幕免费观看一区| 亚洲欧美另类在线| 亚洲国产你懂的| 日韩av中文在线观看| 久久99久久久欧美国产| 国产福利电影一区二区三区| av高清久久久| 欧美日韩不卡一区| 久久日一线二线三线suv| 国产精品欧美久久久久无广告| 成人免费小视频| 五月综合激情日本mⅴ| 久久av资源站| 91视频com| 欧美一区二区福利在线| 日本一区二区免费在线观看视频 | 亚洲va国产va欧美va观看| 免费成人av资源网| 国产黑丝在线一区二区三区| 在线观看日韩毛片| 日韩欧美国产电影| √…a在线天堂一区| 午夜欧美电影在线观看| 国产精品亚洲专一区二区三区| 91麻豆国产福利在线观看| 7777精品伊人久久久大香线蕉完整版| 久久网这里都是精品| 亚洲一区二区精品视频| 久久99精品久久只有精品| jlzzjlzz亚洲女人18| 欧美精品亚洲一区二区在线播放| 久久久久国色av免费看影院| 亚洲一区二区成人在线观看| 国产尤物一区二区在线| 91蜜桃免费观看视频| 精品少妇一区二区三区免费观看| 亚洲精品你懂的| 国产在线日韩欧美| 欧美日韩一区在线| 中文字幕精品一区| 蜜臀av一区二区| 一本大道久久a久久精二百| 精品国产一区二区三区四区四| 一区二区三区视频在线看| 国内精品免费**视频| 欧洲一区在线观看| 国产精品丝袜黑色高跟| 琪琪一区二区三区| 色www精品视频在线观看| 久久精品人人做人人爽人人 | 欧美亚洲国产bt| 国产亚洲一区二区在线观看| 水野朝阳av一区二区三区| 91网上在线视频| 国产女主播一区| 国产在线视频一区二区三区| 91精品国产入口| 亚洲综合精品久久| 99国产精品国产精品毛片| 国产午夜亚洲精品不卡| 日韩av在线免费观看不卡| 欧美这里有精品| 中文字幕一区二| 国产成人精品免费视频网站| 日韩欧美国产一区二区三区| 图片区小说区区亚洲影院| 欧美三电影在线| 亚洲激情综合网| 91欧美一区二区| 国产精品久久久久久久久快鸭 | 欧美精品电影在线播放| 亚洲嫩草精品久久| 99re成人精品视频| 欧美—级在线免费片| 国产麻豆欧美日韩一区| 久久一区二区视频| 国产在线视频一区二区三区| 久久综合九色综合欧美98 | 欧美日韩大陆一区二区| 亚洲最新视频在线观看| 色婷婷综合久久| 一区二区三区久久久| 在线亚洲人成电影网站色www| 亚洲精选视频免费看| 91丨porny丨蝌蚪视频| 亚洲日本丝袜连裤袜办公室| 91视频免费播放| 亚洲综合在线电影| 欧美日韩三级在线| 男男视频亚洲欧美| 精品国产伦一区二区三区观看方式| 奇米综合一区二区三区精品视频| 欧美不卡一区二区三区| 韩国成人在线视频| 26uuu精品一区二区在线观看| 激情av综合网| 国产日产精品一区| 成a人片国产精品| 一区二区视频在线| 欧美日韩一级片在线观看| 日韩中文字幕区一区有砖一区 | 欧美亚一区二区| 午夜亚洲福利老司机| 日韩一区二区在线看片| 国产精品1024| 亚洲日本乱码在线观看| 欧美在线观看视频在线| 日韩专区在线视频| 国产亚洲欧美色| 97精品国产97久久久久久久久久久久| 亚洲精品久久久蜜桃| 91精品黄色片免费大全| 国产综合久久久久久鬼色| 国产精品日韩成人| 欧美三级日韩在线| 国产一区二区免费视频| 亚洲欧美激情视频在线观看一区二区三区| 91精品福利视频| 久久精品国产精品亚洲精品| 中文字幕免费不卡| 欧美裸体一区二区三区| 国产成人免费在线| 亚洲一区二区三区精品在线| 日韩欧美第一区| 91亚洲精品乱码久久久久久蜜桃| 香蕉成人伊视频在线观看| 国产亚洲欧美一级| 欧美日本韩国一区| 国产成人鲁色资源国产91色综| 亚洲精品视频在线| 26uuu另类欧美| 欧美三区在线观看| 国产成人综合自拍| 亚洲成av人综合在线观看| 久久免费午夜影院| 在线一区二区三区做爰视频网站| 精品中文av资源站在线观看| 亚洲男同性恋视频| 久久久五月婷婷| 欧美乱熟臀69xxxxxx| 成人av在线电影| 美女视频黄a大片欧美| 亚洲狠狠丁香婷婷综合久久久| 久久久久久久久久久99999| 欧美三级在线播放| 99久免费精品视频在线观看| 久久国产精品区| 亚洲国产一区在线观看| 国产精品伦理一区二区| 亚洲精品一区二区精华| 欧美日韩高清一区| 91蝌蚪国产九色| 国产乱人伦偷精品视频不卡| 日韩福利电影在线观看| 亚洲最大色网站| 国产精品热久久久久夜色精品三区 | 成人黄色免费短视频| 麻豆高清免费国产一区| 亚洲一区二区精品久久av| 亚洲色欲色欲www| 国产校园另类小说区| 精品理论电影在线| 911精品产国品一二三产区| 一本大道久久a久久综合婷婷| 国产成人在线看| 捆绑变态av一区二区三区| 亚洲v日本v欧美v久久精品| 成人欧美一区二区三区白人| 欧美国产日韩一二三区| 久久九九国产精品| 欧美电影免费观看高清完整版在| 欧美日韩中文字幕一区| 在线观看亚洲成人| 色婷婷激情综合| 99久久精品免费精品国产| 成人av影院在线| www.66久久| 94色蜜桃网一区二区三区| 不卡电影一区二区三区|