lib_s.s

来自「ARMS3C44B0X的起动代码」· S 代码 · 共 71 行

S
71
字号
; /***********************************************
; * NAME    : assembly function library		*
; * Version : 07.JUL.2000			*
; ***********************************************/


IRQINT	equ	0x80
FIQINT  equ 0x40
NOINT	equ	0xc0
	
	
	AREA |C$$code|, CODE, READONLY
	

;/*****************************************************
;
;******************************************************/	
	EXPORT IRQEnable
	EXPORT IRQDisable
	EXPORT FIQEnable
	EXPORT FIQDisable

IRQDisable
 	MRS		R0,spsr
 	ORR		R0,R0,#IRQINT
 	MSR		spsr_c,R0
 	MOVS	PC,LR
IRQEnable
 	MRS	 	R0,spsr
 	BIC		R0,R0,#IRQINT
 	MSR		spsr_c,R0
 	MOVS	PC,LR
FIQDisable
 	MRS 	R0,spsr
 	ORR		R0,R0,#FIQINT
 	MSR		spsr_c,R0
 	MOVS	PC,LR
FIQEnable
	MRS 	R0,spsr
 	BIC		R0,R0,#FIQINT
 	MSR		spsr_c,R0
 	MOVS	PC,LR 
 	
 	
 	
;/*****************************************************
;
;******************************************************/

	EXPORT	DisableInterrupt
	EXPORT	EnableInterrupt
;//This function works only if the processor is in previliged mode.
DisableInterrupt
    mrs	    r0,cpsr
    orr	    r0,r0,#NOINT
    msr	    cpsr_cxsf,r0		
	mov	    pc,lr

;//This function works only if the processor is in previliged mode.
EnableInterrupt
    mrs	    r0,cpsr
    bic	    r0,r0,#NOINT
    msr	    cpsr_cxsf,r0		

    mov	    pc,lr
	



	END

⌨️ 快捷键说明

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