?? init.s
字號:
AREA Init, CODE, READONLY
Mode_IRQ EQU 0x12
Mode_SVC EQU 0x13
I_Bit EQU 0x80 ; when I bit is set, IRQ is disabled
F_Bit EQU 0x40 ; when F bit is set, FIQ is disabled
SVC_STACK_OFFSIDE EQU 1024
EXPORT Reset_Handler
EXPORT IRQ_Handler
Reset_Handler
IMPORT top_of_stacks ; defined in stack.s and located by scatter file
LDR r0, =top_of_stacks
MSR CPSR_c, #Mode_SVC:OR:I_Bit:OR:F_Bit ; No interrupts
SUB sp, r0, #SVC_STACK_OFFSIDE
IMPORT __main
B __main ; note use B not BL, because an application will never return this way
IMPORT IRQ_Handler2
IRQ_Handler
SUB LR,LR,#4
STR LR,BACKUP1
MRS LR,SPSR
STR LR,BACKUP2
MSR CPSR_c, #Mode_SVC:OR:I_Bit:OR:F_Bit ; No interrupts
STR LR,BACKUP3
LDR LR,BACKUP1
STMFD SP!,{LR}
LDR LR,BACKUP3
STMFD SP!,{R0-R12,LR}
LDR LR,BACKUP2
STMFD SP!,{LR}
MOV R0,SP
MSR CPSR_c, #Mode_IRQ:OR:I_Bit:OR:F_Bit ; No interrupts
LDR sp,=top_of_stacks
B IRQ_Handler2
BACKUP1 DCD 0
BACKUP2 DCD 0
BACKUP3 DCD 0
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -