summaryrefslogtreecommitdiff
path: root/arm9/asm
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/asm')
-rw-r--r--arm9/asm/OS_irqHandler.s63
-rw-r--r--arm9/asm/OS_irqTable.s12
2 files changed, 12 insertions, 63 deletions
diff --git a/arm9/asm/OS_irqHandler.s b/arm9/asm/OS_irqHandler.s
deleted file mode 100644
index d0e563fb..00000000
--- a/arm9/asm/OS_irqHandler.s
+++ /dev/null
@@ -1,63 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .data
-
- .global OSi_IrqCallbackInfoIndex
-OSi_IrqCallbackInfoIndex: ; 0x02106818
- .short 8
- .short 9
- .short 10
- .short 11
- .short 3
- .short 4
- .short 5
- .short 6
-
- ; pragma section DTCM begin
- .section .bss
- .balign 16, 0
- .global OSi_IrqThreadQueue
-OSi_IrqThreadQueue: ; 027E0060
- .space 4
- ; pragma section DTCM end
-
- .section .text
-
- arm_func_start OS_WaitIrq
-OS_WaitIrq:
- stmdb sp!, {r4-r6,lr}
- mov r5, r0
- mov r4, r1
- bl OS_DisableInterrupts
- cmp r5, #0x0
- beq _020C9C3C
- ldr r1, _020C9C80 ; =0x027E0000
- mvn r2, r4
- add r1, r1, #0x3000
- ldr r3, [r1, #0xff8]
- and r2, r3, r2
- str r2, [r1, #0xff8]
-_020C9C3C:
- bl OS_RestoreInterrupts
- ldr r1, _020C9C80 ; =0x027E0000
- add r0, r1, #0x3000
- ldr r0, [r0, #0xff8]
- ands r0, r4, r0
- ldmneia sp!, {r4-r6,lr}
- bxne lr
- ldr r0, _020C9C84 ; =0x00003FF8
- add r6, r1, r0
- ldr r5, _020C9C88 ; =0x027E0060
-_020C9C64:
- mov r0, r5
- bl OS_SleepThread
- ldr r0, [r6, #0x0]
- ands r0, r4, r0
- beq _020C9C64
- ldmia sp!, {r4-r6,lr}
- bx lr
- .balign 4
-_020C9C80: .word 0x027E0000
-_020C9C84: .word 0x00003FF8
-_020C9C88: .word 0x027E0060
diff --git a/arm9/asm/OS_irqTable.s b/arm9/asm/OS_irqTable.s
index 6c106c92..e42d600b 100644
--- a/arm9/asm/OS_irqTable.s
+++ b/arm9/asm/OS_irqTable.s
@@ -36,6 +36,18 @@ OS_IRQTable: ; 027E0000 ;10b6a0
OSi_IrqCallbackInfo: ; 0x021D341C
.space 0x60
+ .section .data
+ .global OSi_IrqCallbackInfoIndex
+OSi_IrqCallbackInfoIndex: ; 0x02106818
+ .short 8
+ .short 9
+ .short 10
+ .short 11
+ .short 3
+ .short 4
+ .short 5
+ .short 6
+
.section .text
arm_func_start OSi_IrqTimer3