diff --git a/source/arm9/interrupt.c b/source/arm9/interrupt.c index 586ab44..a5a7dbd 100644 --- a/source/arm9/interrupt.c +++ b/source/arm9/interrupt.c @@ -9,7 +9,7 @@ void IRQ_init(void) { // Atomic IRQ disable and aknowledge - __asm__ __volatile__("stmia %0, {%1, %2}" : : "r" (®_IRQ_IE), "r" (0u), "r" (0xFFFFFFFFu) : "memory"); + __asm__ __volatile__("stm %0, {%1, %2}" : : "r" (®_IRQ_IE), "r" (0u), "r" (0xFFFFFFFFu) : "memory"); for(u32 i = 0; i < 32; i++) { diff --git a/source/arm9/start.s b/source/arm9/start.s index ac8d67e..e896877 100644 --- a/source/arm9/start.s +++ b/source/arm9/start.s @@ -332,5 +332,6 @@ mcr p15, 0, r2, c7, c5, 0 @ Invalidate I-Cache mcr p15, 0, r2, c7, c6, 0 @ Invalidate D-Cache + mcr p15, 0, r2, c7, c10, 4 @ Drain write buffer bx r3 .pool