diff --git a/resources/ping-pong-mips32/game/game/init.S b/resources/ping-pong-mips32/game/game/init.S index dba2116..ec04bb6 100644 --- a/resources/ping-pong-mips32/game/game/init.S +++ b/resources/ping-pong-mips32/game/game/init.S @@ -68,7 +68,7 @@ SUPV_TCB: // Compare .word -1 // STATUS - .word STATUSF_IP5 | STATUSF_IP4 | ST0_IE + .word IE_IRQ3 | IE_IRQ2 | ST0_IE // EPC .word SUPV_START @@ -131,7 +131,7 @@ GAME_TCB: // Compare .word 16500000 / fps // STATUS - .word IE_IRQ5 | IE_IRQ3 | IE_IRQ2 | ST0_IE + .word IE_IRQ5 | IE_IRQ3 | ST0_IE // EPC .word GAME_START diff --git a/resources/ping-pong-mips32/game/game/trap.S b/resources/ping-pong-mips32/game/game/trap.S index ef3fed3..41e3c41 100644 --- a/resources/ping-pong-mips32/game/game/trap.S +++ b/resources/ping-pong-mips32/game/game/trap.S @@ -184,9 +184,16 @@ RESTART: lui k0, %hi(current_thread) lw k0, %lo(current_thread)(k0) lw k1, TF_STATUS(k0) + ori k1, k1, ST0_EXL mtc0 k1, CP0_STATUS eret +// .global DEFAULT_TIMER +// DEFAULT_TIMER: +// mtc0 zero, CP0_COUNT +// j RESTART +// nop + .global DEFAULT_INT_HANDLER DEFAULT_INT_HANDLER: j RESTART