📄 interrupt.src
字号:
.CPU 300
.EXPORT _set_irq_handler
.EXPORT _irq_table
.EXPORT _intr_exception
.EXPORT _intr_init
.SECTION P,CODE,ALIGN=2
.LINE "E:\Study\ucOS-II\ucOS-II\ucOS kernel\Interrupt\Interrupt.c",11
_set_irq_handler: ; function: set_irq_handler
.STACK _set_irq_handler=6
PUSH.W R6
PUSH.W R5
.LINE 12
.LINE 13
ADD.W R0,R0
MOV.W #_irq_table,R5
ADD.W R0,R5
MOV.W @R5,R6
.LINE 14
MOV.W R1,@R5
.LINE 15
MOV.W R6,R0
.LINE 16
POP.W R5
POP.W R6
RTS
.LINE 18
_intr_exception: ; function: intr_exception
.STACK _intr_exception=2
.LINE 19
.LINE 21
RTS
.LINE 23
_intr_init: ; function: intr_init
.STACK _intr_init=4
PUSH.W R6
.LINE 24
.LINE 26
SUB.W R6,R6
.LINE 26
MOV.W #_intr_exception,R1
L299:
.LINE 27
MOV.W R6,R0
ADD.W R0,R0
MOV.W R1,@(_irq_table:16,R0)
.LINE 26
ADDS.W #1,R6
.LINE 26
MOV.W R6,R0
CMP.B #21,R0L
SUBX.B #0,R0H
BLT L299
.LINE 28
POP.W R6
RTS
.SECTION B,DATA,ALIGN=2
_irq_table: ; static: irq_table
.RES.W 21
.END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -