diff options
-rw-r--r-- | asm/tomomichi_debug_menu.s | 210 | ||||
-rw-r--r-- | src/debug/tomomichi_debug_menu.c | 75 |
2 files changed, 75 insertions, 210 deletions
diff --git a/asm/tomomichi_debug_menu.s b/asm/tomomichi_debug_menu.s index a32082703..d68f5701c 100644 --- a/asm/tomomichi_debug_menu.s +++ b/asm/tomomichi_debug_menu.s @@ -3,216 +3,6 @@ .include "constants/gba_constants.inc" .include "include/macros.inc" - thumb_func_start debug_sub_808BE2C -debug_sub_808BE2C: - push {r4, lr} - ldr r4, ._79 @ gMain - ldrh r1, [r4, #0x2e] - mov r0, #0x40 - and r0, r0, r1 - cmp r0, #0 - beq ._75 @cond_branch - mov r0, #0x5 - bl PlaySE - mov r0, #0x1 - neg r0, r0 - bl Menu_MoveCursor - ldr r1, ._79 + 4 @ gDebug_0300071F - strb r0, [r1] -._75: - ldrh r1, [r4, #0x2e] - mov r0, #0x80 - and r0, r0, r1 - cmp r0, #0 - beq ._76 @cond_branch - mov r0, #0x5 - bl PlaySE - mov r0, #0x1 - bl Menu_MoveCursor - ldr r1, ._79 + 4 @ gDebug_0300071F - strb r0, [r1] -._76: - ldrh r1, [r4, #0x2e] - mov r0, #0x1 - and r0, r0, r1 - cmp r0, #0 - beq ._77 @cond_branch - mov r0, #0x5 - bl PlaySE - ldr r1, ._79 + 8 @ gUnknown_Debug_083C0E32 - ldr r0, ._79 + 4 @ gDebug_0300071F - ldrb r0, [r0] - lsl r0, r0, #0x3 - add r1, r1, #0x4 - add r0, r0, r1 - ldr r0, [r0] - bl _call_via_r0 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - b ._82 -._80: - .align 2, 0 -._79: - .word gMain - .word gDebug_0300071F - .word gUnknown_Debug_083C0E32 -._77: - mov r0, #0xa - and r0, r0, r1 - cmp r0, #0 - bne ._81 @cond_branch - mov r0, #0x0 - b ._82 -._81: - bl CloseMenu - mov r0, #0x1 -._82: - pop {r4} - pop {r1} - bx r1 - - thumb_func_end debug_sub_808BE2C - - thumb_func_start debug_sub_808BEB4 -debug_sub_808BEB4: - push {r4, lr} - ldr r4, ._87 @ gMain - ldrh r1, [r4, #0x2e] - mov r0, #0x40 - and r0, r0, r1 - cmp r0, #0 - beq ._83 @cond_branch - mov r0, #0x5 - bl PlaySE - mov r0, #0x1 - neg r0, r0 - bl Menu_MoveCursor - ldr r1, ._87 + 4 @ gDebug_03000720 - strb r0, [r1] -._83: - ldrh r1, [r4, #0x2e] - mov r0, #0x80 - and r0, r0, r1 - cmp r0, #0 - beq ._84 @cond_branch - mov r0, #0x5 - bl PlaySE - mov r0, #0x1 - bl Menu_MoveCursor - ldr r1, ._87 + 4 @ gDebug_03000720 - strb r0, [r1] -._84: - ldrh r1, [r4, #0x2e] - mov r0, #0x1 - and r0, r0, r1 - cmp r0, #0 - beq ._85 @cond_branch - mov r0, #0x5 - bl PlaySE - ldr r1, ._87 + 8 @ gUnknown_Debug_083C0E7F - ldr r0, ._87 + 4 @ gDebug_03000720 - ldrb r0, [r0] - lsl r0, r0, #0x3 - add r1, r1, #0x4 - add r0, r0, r1 - ldr r0, [r0] - bl _call_via_r0 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - b ._90 -._88: - .align 2, 0 -._87: - .word gMain - .word gDebug_03000720 - .word gUnknown_Debug_083C0E7F -._85: - mov r0, #0xa - and r0, r0, r1 - cmp r0, #0 - bne ._89 @cond_branch - mov r0, #0x0 - b ._90 -._89: - bl CloseMenu - mov r0, #0x1 -._90: - pop {r4} - pop {r1} - bx r1 - - thumb_func_end debug_sub_808BEB4 - - thumb_func_start debug_sub_808BF3C -debug_sub_808BF3C: - push {r4, lr} - ldr r4, ._95 @ gMain - ldrh r1, [r4, #0x2e] - mov r0, #0x40 - and r0, r0, r1 - cmp r0, #0 - beq ._91 @cond_branch - mov r0, #0x5 - bl PlaySE - mov r0, #0x1 - neg r0, r0 - bl Menu_MoveCursor - ldr r1, ._95 + 4 @ gDebug_03000721 - strb r0, [r1] -._91: - ldrh r1, [r4, #0x2e] - mov r0, #0x80 - and r0, r0, r1 - cmp r0, #0 - beq ._92 @cond_branch - mov r0, #0x5 - bl PlaySE - mov r0, #0x1 - bl Menu_MoveCursor - ldr r1, ._95 + 4 @ gDebug_03000721 - strb r0, [r1] -._92: - ldrh r1, [r4, #0x2e] - mov r0, #0x1 - and r0, r0, r1 - cmp r0, #0 - beq ._93 @cond_branch - mov r0, #0x5 - bl PlaySE - ldr r1, ._95 + 8 @ gUnknown_Debug_083C0EF1 - ldr r0, ._95 + 4 @ gDebug_03000721 - ldrb r0, [r0] - lsl r0, r0, #0x3 - add r1, r1, #0x4 - add r0, r0, r1 - ldr r0, [r0] - bl _call_via_r0 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - b ._98 -._96: - .align 2, 0 -._95: - .word gMain - .word gDebug_03000721 - .word gUnknown_Debug_083C0EF1 -._93: - mov r0, #0xa - and r0, r0, r1 - cmp r0, #0 - bne ._97 @cond_branch - mov r0, #0x0 - b ._98 -._97: - bl CloseMenu - mov r0, #0x1 -._98: - pop {r4} - pop {r1} - bx r1 - - thumb_func_end debug_sub_808BF3C - thumb_func_start debug_sub_808BFC4 debug_sub_808BFC4: push {lr} diff --git a/src/debug/tomomichi_debug_menu.c b/src/debug/tomomichi_debug_menu.c index c90364647..00340c39a 100644 --- a/src/debug/tomomichi_debug_menu.c +++ b/src/debug/tomomichi_debug_menu.c @@ -435,4 +435,79 @@ bool8 debug_sub_808BDA4(void) return FALSE; } +bool8 debug_sub_808BE2C(void) +{ + if (gMain.newKeys & DPAD_UP) + { + PlaySE(SE_SELECT); + gDebug_0300071F = Menu_MoveCursor(-1); + } + if (gMain.newKeys & DPAD_DOWN) + { + PlaySE(SE_SELECT); + gDebug_0300071F = Menu_MoveCursor(+1); + } + if (gMain.newKeys & A_BUTTON) + { + PlaySE(SE_SELECT); + return gUnknown_Debug_083C0E32[gDebug_0300071F].func(); + } + if (gMain.newKeys & (B_BUTTON | START_BUTTON)) + { + CloseMenu(); + return TRUE; + } + return FALSE; +} + +bool8 debug_sub_808BEB4(void) +{ + if (gMain.newKeys & DPAD_UP) + { + PlaySE(SE_SELECT); + gDebug_03000720 = Menu_MoveCursor(-1); + } + if (gMain.newKeys & DPAD_DOWN) + { + PlaySE(SE_SELECT); + gDebug_03000720 = Menu_MoveCursor(+1); + } + if (gMain.newKeys & A_BUTTON) + { + PlaySE(SE_SELECT); + return gUnknown_Debug_083C0E7F[gDebug_03000720].func(); + } + if (gMain.newKeys & (B_BUTTON | START_BUTTON)) + { + CloseMenu(); + return TRUE; + } + return FALSE; +} + +bool8 debug_sub_808BF3C(void) +{ + if (gMain.newKeys & DPAD_UP) + { + PlaySE(SE_SELECT); + gDebug_03000721 = Menu_MoveCursor(-1); + } + if (gMain.newKeys & DPAD_DOWN) + { + PlaySE(SE_SELECT); + gDebug_03000721 = Menu_MoveCursor(+1); + } + if (gMain.newKeys & A_BUTTON) + { + PlaySE(SE_SELECT); + return gUnknown_Debug_083C0EF1[gDebug_03000721].func(); + } + if (gMain.newKeys & (B_BUTTON | START_BUTTON)) + { + CloseMenu(); + return TRUE; + } + return FALSE; +} + #endif |