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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? start.s

?? RT-Thread是發展中的下一代微內核嵌入式實時操作系統
?? S
字號:
/* * File      : start.S * This file is part of RT-Thread RTOS * COPYRIGHT (C) 2006, RT-Thread Development Team * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at * http://openlab.rt-thread.com/license/LICENSE * * Change Logs: * Date           Author       Notes * 2006-03-13     Bernard      first version * 2006-10-05     Alsor.Z      for s3c2410 initialize * 2008-01-29     Yi.Qiu       for QEMU emulator *//** * @addtogroup S3C2410 *//*@{*/#define CONFIG_STACKSIZE 512#define S_FRAME_SIZE 72#define S_OLD_R0 68#define S_PSR  64#define S_PC  60#define S_LR  56#define S_SP  52#define S_IP  48#define S_FP  44#define S_R10  40#define S_R9  36#define S_R8  32#define S_R7  28#define S_R6  24#define S_R5  20#define S_R4  16#define S_R3  12#define S_R2  8#define S_R1  4#define S_R0  0	.equ USERMODE, 	0x10	.equ FIQMODE,	0x11	.equ IRQMODE,	0x12	.equ SVCMODE,	0x13	.equ ABORTMODE,	0x17	.equ UNDEFMODE,	0x1b	.equ MODEMASK,	0x1f	.equ NOINT,		0xc0.section .init, "ax".code 32.globl _start_start:	b	reset	ldr	pc, _vector_undef	ldr	pc, _vector_swi	ldr	pc, _vector_pabt	ldr	pc, _vector_dabt	ldr	pc, _vector_resv	ldr	pc, _vector_irq	ldr	pc, _vector_fiq_vector_undef:	.word vector_undef_vector_swi:	.word vector_swi_vector_pabt:	.word vector_pabt_vector_dabt:	.word vector_dabt_vector_resv:	.word vector_resv_vector_irq:	.word vector_irq_vector_fiq:	.word vector_fiq	.balignl 16,0xdeadbeef_TEXT_BASE:	.word	TEXT_BASE/* * rtthread kernel start and end * which are defined in linker script */.globl _rtthread_start_rtthread_start:.word _start.globl _rtthread_end_rtthread_end:	.word  _end/* * rtthread bss start and end * which are defined in linker script */.globl _bss_start_bss_start:	.word __bss_start.globl _bss_end_bss_end:	.word __bss_end/* IRQ stack memory (calculated at run-time) */.globl IRQ_STACK_STARTIRQ_STACK_START:.word _irq_stack_start + 1024.globl FIQ_STACK_STARTFIQ_STACK_START:.word _fiq_stack_start + 1024.globl UNDEFINED_STACK_STARTUNDEFINED_STACK_START:.word _undefined_stack_start + CONFIG_STACKSIZE.globl ABORT_STACK_STARTABORT_STACK_START:.word _abort_stack_start + CONFIG_STACKSIZE.globl _STACK_START_STACK_START:.word _svc_stack_start + 4096	.equ RAM_BASE,	0x00000000	//Start address of RAM	.equ ROM_BASE,	0x30000000	//Start address of Flash	.equ INTMSK,	0x4a000008	.equ WTCON, 	0x53000000	.equ INTSUBMSK, 0x4a00001c	.equ LOCKTIME,	0x4c000000	.equ MPLLCON,	0x4c000004	.equ M_MDIV,	0x20	.equ M_PDIV,	0x4	.equ M_SDIV,	0x2	.equ CLKDIVN,	0x4c000014	//Clock divider control	.equ GPHCON,	0x56000070	//Port H control	.equ GPHUP,		0x56000078	//Pull-up control H	.equ BWSCON,	0x48000000	//Bus width & wait status	.equ BANKCON0,	0x48000004	//Boot ROM control	.equ BANKCON1,	0x48000008	//BANK1 control	.equ BANKCON2,	0x4800000c	//BANK2 cControl	.equ BANKCON3,	0x48000010	//BANK3 control	.equ BANKCON4,	0x48000014	//BANK4 control	.equ BANKCON5,	0x48000018	//BANK5 control	.equ BANKCON6,	0x4800001c	//BANK6 control	.equ BANKCON7,	0x48000020	//BANK7 control	.equ REFRESH,	0x48000024	//DRAM/SDRAM efresh	.equ BANKSIZE,	0x48000028	//Flexible Bank Size	.equ MRSRB6,	0x4800002c	//Mode egister set for SDRAM	.equ MRSRB7,	0x48000030	//Mode egister set for SDRAM/* -----------------entry--------------- */reset:	/* watch dog disable */	ldr r0,=WTCON	ldr r1,=0x0	str r1,[r0]	/* set the cpu to SVC32 mode */	mrs	r0,cpsr	bic	r0,r0,#MODEMASK	orr	r0,r0,#SVCMODE	msr	cpsr,r0	/* mask all IRQs by clearing all bits in the INTMRs */	ldr	r1, =INTMSK	ldr	r0, =0xffffffff	str	r0, [r1]	/* set interrupt vector 	*/	ldr r0, _load_address	mov	r1, #0x0				/* target address    		*/	add	r2, r0, #0x20			/* size, 32bytes         	*/copy_loop:	ldmia	r0!, {r3-r10}		/* copy from source address [r0]    */	stmia	r1!, {r3-r10}		/* copy to   target address [r1]    */	cmp	r0, r2					/* until source end addreee [r2]    */	ble	copy_loop	/* lowlevel init */	/* bl lowlevel_init */	/* setup stack */	bl	stack_setup	/* clear .bss */	mov   r0,#0                     /* get a zero 				*/	ldr   r1,=__bss_start           /* bss start 				*/	ldr   r2,=__bss_end           	/* bss end 					*/bss_loop:	cmp   r1,r2                     /* check if data to clear 	*/	strlo r0,[r1],#4                /* clear 4 bytes 			*/	blo   bss_loop                  /* loop until done 			*/	/* call C++ constructors of global objects */	ldr 	r0, =__ctors_start__	ldr 	r1, =__ctors_end__ctor_loop:	cmp 	r0, r1	beq 	ctor_end	ldr 	r2, [r0], #4	stmfd 	sp!, {r0-r1}	mov 	lr, pc	bx 		r2	ldmfd 	sp!, {r0-r1}	b	ctor_loopctor_end:	/* start RT-Thread Kernel */	ldr	pc, _rtthread_startup_rtthread_startup: .word rtthread_startup#if defined (__FLASH_BUILD__)_load_address: .word ROM_BASE + _TEXT_BASE#else_load_address: .word RAM_BASE + _TEXT_BASE#endif/* ************************************************************************* * * Interrupt handling * ************************************************************************* *//* exception handlers */	.align  5vector_undef:	sub sp, sp, #S_FRAME_SIZE	stmia sp, {r0 - r12}   @ Calling r0-r12	add	r8, sp, #S_PC	stmdb   r8, {sp, lr}^               @ Calling SP, LR	str	lr, [r8, #0]                    @ Save calling PC	mrs	r6, spsr	str	r6, [r8, #4]                    @ Save CPSR	str	r0, [r8, #8]                    @ Save OLD_R0	mov	r0, sp	bl	rt_hw_trap_udef	.align	5vector_swi:	bl 	rt_hw_trap_swi	.align	5vector_pabt:	bl 	rt_hw_trap_pabt	.align	5vector_dabt:	sub sp, sp, #S_FRAME_SIZE	stmia sp, {r0 - r12}   @ Calling r0-r12	add	r8, sp, #S_PC	stmdb   r8, {sp, lr}^               @ Calling SP, LR	str	lr, [r8, #0]                    @ Save calling PC	mrs	r6, spsr	str	r6, [r8, #4]                    @ Save CPSR	str	r0, [r8, #8]                    @ Save OLD_R0	mov	r0, sp	bl 	rt_hw_trap_dabt	.align	5vector_resv:	bl 	rt_hw_trap_resv.globl rt_interrupt_enter.globl rt_interrupt_leave.globl rt_thread_switch_interrput_flag.globl rt_interrupt_from_thread.globl rt_interrupt_to_threadvector_irq:	stmfd	sp!, {r0-r12,lr}	bl	rt_interrupt_enter	bl	rt_hw_trap_irq	bl	rt_interrupt_leave	/* if rt_thread_switch_interrput_flag set, jump to _interrupt_thread_switch and don't return */	ldr	r0, =rt_thread_switch_interrput_flag	ldr	r1, [r0]	cmp	r1, #1	beq	_interrupt_thread_switch	ldmfd	sp!, {r0-r12,lr}	subs	pc, lr, #4	.align	5vector_fiq:	stmfd	sp!,{r0-r7,lr}	bl 	rt_hw_trap_fiq	ldmfd	sp!,{r0-r7,lr}	subs	pc,lr,#4_interrupt_thread_switch:	mov	r1,  #0				@ clear rt_thread_switch_interrput_flag	str	r1,  [r0]	ldmfd	sp!, {r0-r12,lr}@ reload saved registers	stmfd	sp!, {r0-r3}	@ save r0-r3	mov	r1,  sp	add	sp,  sp, #16		@ restore sp	sub	r2,  lr, #4			@ save old task's pc to r2	mrs	r3,  spsr			@ disable interrupt	orr	r0,  r3, #NOINT	msr	spsr_c, r0	ldr	r0,  =.+8			@ switch to interrupted task's stack	movs	pc,  r0	stmfd	sp!, {r2}		@ push old task's pc	stmfd	sp!, {r4-r12,lr}@ push old task's lr,r12-r4	mov	r4,  r1				@ Special optimised code below	mov	r5,  r3	ldmfd	r4!, {r0-r3}	stmfd	sp!, {r0-r3}	@ push old task's r3-r0	stmfd	sp!, {r5}		@ push old task's psr	mrs	r4,  spsr	stmfd	sp!, {r4}		@ push old task's spsr	ldr	r4,  =rt_interrupt_from_thread	ldr	r5,  [r4]	str	sp,  [r5]			@ store sp in preempted tasks's TCB	ldr	r6,  =rt_interrupt_to_thread	ldr	r6,  [r6]	ldr	sp,  [r6]			@ get new task's stack pointer	ldmfd	sp!, {r4}		@ pop new task's spsr	msr	SPSR_cxsf, r4	ldmfd	sp!, {r4}		@ pop new task's psr	msr	CPSR_cxsf, r4	ldmfd	sp!, {r0-r12,lr,pc}	@ pop new task's r0-r12,lr & pcstack_setup:	mrs	r0, cpsr	bic	r0, r0, #MODEMASK	orr	r1, r0, #UNDEFMODE|NOINT	msr	cpsr_cxsf, r1		@ undef mode	ldr	sp, UNDEFINED_STACK_START	orr	r1,r0,#ABORTMODE|NOINT	msr	cpsr_cxsf,r1		@ abort mode	ldr	sp, ABORT_STACK_START	orr	r1,r0,#IRQMODE|NOINT	msr	cpsr_cxsf,r1		@ IRQ mode	ldr	sp, IRQ_STACK_START	orr	r1,r0,#FIQMODE|NOINT	msr	cpsr_cxsf,r1		@ FIQ mode	ldr	sp, FIQ_STACK_START	bic	r0,r0,#MODEMASK	orr	r1,r0,#SVCMODE|NOINT	msr	cpsr_cxsf,r1		@ SVC mode	ldr	sp, _STACK_START	/* USER mode is not initialized. */	mov	pc,lr				@ The LR register may be not valid for the mode changes./*@}*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品视频在线免费看| 欧美日韩精品一区二区三区四区| 色哟哟一区二区在线观看| 欧美三片在线视频观看| 国产精品视频观看| 麻豆成人久久精品二区三区红 | 99国产麻豆精品| 亚洲欧美欧美一区二区三区| 奇米影视一区二区三区小说| k8久久久一区二区三区| 欧美精品一区二区在线观看| 天堂在线亚洲视频| 99精品视频中文字幕| 久久久午夜电影| 全部av―极品视觉盛宴亚洲| 欧美在线免费播放| 国产精品电影一区二区| 国产一区二区网址| 日韩欧美一区二区免费| 日韩成人伦理电影在线观看| 欧美性猛交xxxx乱大交退制版| 亚洲欧洲99久久| 成人美女视频在线观看18| 久久综合久久鬼色| 毛片基地黄久久久久久天堂| 91精品国产欧美一区二区成人| 有码一区二区三区| 91丨porny丨在线| 中文字幕一区二区三区乱码在线 | 综合av第一页| 99久久er热在这里只有精品15| 国产日韩精品一区二区浪潮av| 国内国产精品久久| 久久色在线观看| 国产一区二区三区免费观看| 日韩欧美亚洲国产另类| 日本成人中文字幕| 日韩精品一区在线观看| 美国十次综合导航| 欧美成人精品二区三区99精品| 亚洲v日本v欧美v久久精品| 欧美亚洲尤物久久| 亚洲成av人片在线观看| 91麻豆精品91久久久久久清纯| 日韩精品三区四区| 欧美一区二区三区免费在线看| 欧美96一区二区免费视频| 日韩欧美高清在线| 国产精品91xxx| 成人欧美一区二区三区黑人麻豆| 一本到不卡精品视频在线观看| 亚洲在线观看免费| 91精品国产综合久久精品app| 另类小说视频一区二区| 久久久久久久久久美女| 成人黄色在线视频| 一区二区免费视频| 日韩丝袜情趣美女图片| 国产成人免费视频精品含羞草妖精 | 成人福利电影精品一区二区在线观看| 中文乱码免费一区二区| 91福利视频网站| 久久精品国产99国产| 国产女主播在线一区二区| 色婷婷av一区| 激情综合色综合久久综合| 国产精品污网站| 欧美精品在线一区二区| 国产一区二区导航在线播放| 亚洲欧美自拍偷拍色图| 日韩视频免费观看高清在线视频| 丁香婷婷综合五月| 亚洲成人免费观看| 国产欧美一区二区三区网站| 精品视频999| 国产成人精品一区二区三区四区| 最新日韩在线视频| 日韩欧美一级精品久久| 色综合天天综合在线视频| 久久国产精品无码网站| 亚洲免费观看在线视频| 337p粉嫩大胆色噜噜噜噜亚洲| 日本丰满少妇一区二区三区| 激情伊人五月天久久综合| 亚洲精品视频在线看| 久久综合色综合88| 欧美日韩不卡在线| 97精品久久久午夜一区二区三区| 久久99蜜桃精品| 午夜伊人狠狠久久| 亚洲精品视频一区二区| 国产人伦精品一区二区| 欧美一级一级性生活免费录像| 色婷婷久久久综合中文字幕 | 久久综合色鬼综合色| 欧美性三三影院| 不卡的av中国片| 国产一区欧美一区| 美日韩黄色大片| 日韩高清在线不卡| 一级日本不卡的影视| 欧美高清在线一区| 26uuu色噜噜精品一区二区| 欧美精品三级日韩久久| 91国偷自产一区二区三区成为亚洲经典 | 国产精品一级片| 捆绑调教一区二区三区| 亚洲国产sm捆绑调教视频 | 国产日韩欧美一区二区三区综合| 欧美精品三级在线观看| 欧美天天综合网| 欧美性生交片4| 欧美日韩一区二区欧美激情| 欧美主播一区二区三区美女| 一本色道**综合亚洲精品蜜桃冫| 91啪亚洲精品| 色综合久久中文综合久久97| 91亚洲午夜精品久久久久久| 色婷婷久久久亚洲一区二区三区| 99re66热这里只有精品3直播| www.在线欧美| 色悠悠久久综合| 欧美视频一区二区在线观看| 欧美色偷偷大香| 宅男在线国产精品| 欧美一区二区日韩一区二区| 欧美mv日韩mv| 欧美激情一区二区三区在线| 中文字幕二三区不卡| 成人免费一区二区三区在线观看| 亚洲欧美日韩一区| 亚洲国产精品久久人人爱| 福利一区二区在线| 不卡视频一二三| 一本色道**综合亚洲精品蜜桃冫| 欧美亚洲动漫精品| 日韩久久精品一区| 国产欧美日韩视频一区二区| 亚洲欧美另类久久久精品2019| 亚洲国产日产av| 久久国产婷婷国产香蕉| 国产福利一区二区三区视频在线| 成人av电影在线播放| 在线中文字幕不卡| 日韩精品一区二区三区四区视频 | 国产精品网站导航| 亚洲高清免费观看| 久久激情综合网| 99精品国产视频| 欧美电影一区二区| 久久嫩草精品久久久精品一| 亚洲丝袜自拍清纯另类| 日本不卡1234视频| 成人av小说网| 91精品国产福利在线观看| 欧美国产综合一区二区| 一区二区三区国产豹纹内裤在线| 奇米影视7777精品一区二区| 成人av资源站| 欧美zozozo| 一区二区三区色| 国产成人一区在线| 欧美日韩一区在线观看| 国产欧美一区二区在线观看| 视频一区二区三区入口| www.综合网.com| 精品国产第一区二区三区观看体验| 中文字幕一区二区三区在线不卡| 日韩激情视频网站| 91丨porny丨在线| 国产亚洲精品7777| 日韩精品每日更新| 97精品国产露脸对白| 精品少妇一区二区三区视频免付费 | 日韩在线一区二区三区| 91麻豆福利精品推荐| 国产亚洲一区二区三区四区| 日本不卡一二三区黄网| 欧美网站大全在线观看| 国产精品美女久久久久aⅴ国产馆| 青椒成人免费视频| 欧美亚洲国产bt| 亚洲黄色小说网站| 丁香六月综合激情| 久久影院午夜论| 精品在线一区二区| 7777精品伊人久久久大香线蕉经典版下载| 国产精品成人免费在线| 国产aⅴ精品一区二区三区色成熟| 欧美大肚乱孕交hd孕妇| 三级不卡在线观看| 欧美日韩视频专区在线播放| 亚洲狼人国产精品| 色婷婷激情一区二区三区| 中文字幕在线播放不卡一区| 丁香婷婷综合色啪| 中文字幕不卡在线| 国产成人免费视频精品含羞草妖精 | 国产乱子伦一区二区三区国色天香| 91麻豆精品国产自产在线观看一区 |