📄 init.s
字号:
/*******************************************************
* NAME : SOURCE\INIT.S ver1.0 *
* Author : Nicolas Park *
* Description: *
* LCD test C start up codes for NBC board S3C4510B0 *
* Fill zeros into zero-initialized C-variables *
* The last Modification date: 24-April-2002 *
* REMARKS: Created initial version 1.0 *
* Copyright (C) 2002 AIJISYSTEM CO.,LTD *
******************************************************/
#//////////// Start Area ///////////////////////
# AREA Init, CODE, READONLY
_ENTRY:
LDR sp, =0x1100000
B Reset_Handler
# ////////// The RESET entry point /////////
Reset_Handler:
# Initialise memory required by C code
.extern Image_RO_Limit @ End of ROM code (=start of ROM data)
.extern Image_RW_Base @ Base of RAM to initialise
.extern Image_ZI_Base @ Base and limit of area
.extern Image_ZI_Limit @ to zero initialise
NOP
LDR r0, =Image_RO_Limit @ Get pointer to ROM data
LDR r1, =Image_RW_Base @ and RAM copy
LDR r3, =Image_ZI_Base @ Zero init base => top of initialised data
CMP r0, r1 @ Check that they are different
BEQ L2
L1: CMP r1, r3 @ Copy init data
LDRCC r2, [r0], #4
STRCC r2, [r1], #4
BCC L1
L2: LDR r1, =Image_ZI_Limit @ Top of zero init segment
MOV r2, #0
L3: CMP r3, r1 @ Zero init
STRCC r2, [r3], #4
BCC L3
.extern Main
BL Main @ Branch to C code Main routine
# END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -