summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/start_menu_debug.s68
-rw-r--r--include/battle.h2
-rw-r--r--include/debug.h14
-rw-r--r--include/menu.h2
-rw-r--r--include/start_menu.h1
-rw-r--r--src/debug/start_menu_debug.c464
-rw-r--r--src/menu.c4
7 files changed, 135 insertions, 420 deletions
diff --git a/data/start_menu_debug.s b/data/start_menu_debug.s
index dc722bf33..26a057b98 100644
--- a/data/start_menu_debug.s
+++ b/data/start_menu_debug.s
@@ -6,75 +6,7 @@
.section .rodata
-Str_839BD90:: @ 0x839BD90
- .string "ジュンイチ$"
-
-Str_839BD96:: @ 0x839BD96
- .string "ダイゴロウ$"
-
-Str_839BD9C:: @ 0x839BD9C
- .string "テツジ$"
-
-Str_839BDA0:: @ 0x839BDA0
- .string "バレンシア$"
-
-Str_839BDA6:: @ 0x839BDA6
- .string "ハルコマチ$"
-
-Str_839BDAC:: @ 0x839BDAC
- .string "RAYMOND$"
-
-Str_839BDB4:: @ 0x839BDB4
- .string "TIFFANY$"
-
-Str_839BDBC:: @ 0x839BDBC
- .string "くまxちえ$"
-
- .align 2
-gUnknown_Debug_839BDC4:: @ 0x839BDC4
- .4byte Str_839BD90, 0x0
- .4byte Str_839BD96, 0x0
- .4byte Str_839BDA0, 0x1
- .4byte Str_839BDA6, 0x1
- .4byte Str_839BDAC, 0x80
- .4byte Str_839BDB4, 0x81
- .4byte Str_839BD9C, 0x0
- .4byte Str_839BDBC, 0x1
-
-Str_839BE04:: @ 0x839BE04
- .string "ID$"
-
-Str_839BE07:: @ 0x839BE07
- .string "X$"
-
-Str_839BE09:: @ 0x839BE09
- .string " Y$"
-
-Str_839BE0C:: @ 0x839BE0C
- .string " H$"
-
-Str_839BE0F:: @ 0x839BE0F
- .string "HP$"
-
-Str_839BE12:: @ 0x839BE12
- .string "PAR$"
-
-Str_839BE16:: @ 0x839BE16
- .string "SLP$"
-
-Str_839BE1A:: @ 0x839BE1A
- .string "PSN$"
-
-Str_839BE1E:: @ 0x839BE1E
- .string "ウマイ$"
-
.align 2
-gUnknown_Debug_839BE24:: @ 0x839BE24
- .4byte Str_839BE0F, DebugMenu_8077434+1
- .4byte Str_839BE12, DebugMenu_8077434+1
- .4byte Str_839BE16, DebugMenu_8077434+1
- .4byte Str_839BE1A, DebugMenu_8077434+1
- .4byte Str_839BE1E, DebugMenu_8077434+1
Str_839BE4C:: @ 0x839BE4C
.string "OFF$"
diff --git a/include/battle.h b/include/battle.h
index af0b48013..02e02ca83 100644
--- a/include/battle.h
+++ b/include/battle.h
@@ -818,4 +818,6 @@ void BattleStopLowHpSound(void);
void SetBankFuncToLinkOpponentBufferRunCommand(void);
+void GameClear(void);
+
#endif // GUARD_BATTLE_H
diff --git a/include/debug.h b/include/debug.h
index 43db92c2b..85bd51bee 100644
--- a/include/debug.h
+++ b/include/debug.h
@@ -12,6 +12,7 @@ void DebugMenu_8077048(void);
// matsuda_debug_menu
void sub_80AAF30(void);
void Crash(const u8 *text);
+bool8 unref_sub_80A9B28(void);
// tomomichi_debug_menu
void debug_nullsub_66(void);
@@ -26,4 +27,17 @@ void NakaGenderTest(void);
extern const u8 gUnknown_Debug_842E350;
extern const struct UnkDebugMenu3Items gUnknown_Debug_842E2D0[];
+// unknown debug menu
+int unref_sub_814A414(void);
+
+// kagaya_debug_menu
+bool8 InitKagayaDebugMenu_A(void);
+
+// nohara_debug_menu
+bool8 InitNoharaDebugMenu(void);
+
+// watanabe_debug_menu
+void InitWatanabeDebugMenu(void);
+void InitSizeComparison(void);
+
#endif // GUARD_DEBUG_H
diff --git a/include/menu.h b/include/menu.h
index 93394ecb2..8f7b91346 100644
--- a/include/menu.h
+++ b/include/menu.h
@@ -60,7 +60,7 @@ void sub_807274C(u8, u8, u8, u8, const struct MenuAction[], u8, u32);
s8 Menu_ProcessInputGridLayout(void);
u8 Menu_GetColumnXCoord(u8);
void Menu_PrintItems(u8, u8, u8, const void *);
-void Menu_PrintItemsReordered(u8 left, u8 top, u8 menuItemCount, const struct MenuAction2 menuItems[], const u8 *order);
+void Menu_PrintItemsReordered(u8 left, u8 top, u8 menuItemCount, const void * menuItems, const u8 *order);
void InitYesNoMenu(u8, u8, u8);
void DisplayYesNoMenu(u8, u8, u32);
s8 Menu_ProcessInputNoWrap_(void);
diff --git a/include/start_menu.h b/include/start_menu.h
index 87f6828ab..ee76e9863 100644
--- a/include/start_menu.h
+++ b/include/start_menu.h
@@ -10,5 +10,6 @@ void sub_8071310(void);
void ScrSpecial_DoSaveDialog(void);
void sub_8071B28(void);
void debug_sub_8075DB4(struct BattleTowerEReaderTrainer *ereaderTrainer, const u8 *b, u32 trainerId);
+bool8 debug_sub_8075C30(void);
#endif // GUARD_STARTER_CHOOSE_H
diff --git a/src/debug/start_menu_debug.c b/src/debug/start_menu_debug.c
index 57f203b28..e08affd82 100644
--- a/src/debug/start_menu_debug.c
+++ b/src/debug/start_menu_debug.c
@@ -20,6 +20,10 @@
#include "string_util.h"
#include "new_game.h"
#include "script.h"
+#include "fieldmap.h"
+#include "field_player_avatar.h"
+#include "credits.h"
+#include "event_data.h"
// berry_blender.c
extern void unref_sub_80524BC(void);
@@ -544,10 +548,28 @@ u8 DebugMenu_8076EDC(void)
return 0;
}
-extern const struct {
+const u8 Str_839BD90[] = _("ジュンイチ");
+const u8 Str_839BD96[] = _("ダイゴロウ");
+const u8 Str_839BD9C[] = _("テツジ");
+const u8 Str_839BDA0[] = _("バレンシア");
+const u8 Str_839BDA6[] = _("ハルコマチ");
+const u8 Str_839BDAC[] = _("RAYMOND");
+const u8 Str_839BDB4[] = _("TIFFANY");
+const u8 Str_839BDBC[] = _("くまxちえ");
+
+const struct {
const u8 * text;
u32 flags;
-} gUnknown_Debug_839BDC4[8];
+} gUnknown_Debug_839BDC4[] = {
+ {Str_839BD90, 0x0},
+ {Str_839BD96, 0x0},
+ {Str_839BDA0, 0x1},
+ {Str_839BDA6, 0x1},
+ {Str_839BDAC, 0x80},
+ {Str_839BDB4, 0x81},
+ {Str_839BD9C, 0x0},
+ {Str_839BDBC, 0x1}
+};
void DebugMenu_8076EF4(void)
{
@@ -598,7 +620,7 @@ void DebugMenu_8076FEC(void)
CreateTask(DebugMenu_8076F60, 10);
}
-void DebugMenu_8077004()
+void DebugMenu_8077004(void)
{
gUnknown_030006C4 = gUnknown_Debug_839BB64 + gUnknown_030006C1 * 8;
}
@@ -609,7 +631,7 @@ void DebugMenu_8077020(u8 taskId)
DestroyTask(taskId);
}
-void DebugMenu_8077048()
+void DebugMenu_8077048(void)
{
gMenuCallback = DebugMenu_807706C;
ScriptContext2_Enable();
@@ -672,400 +694,130 @@ u8 DebugMenu_807709C(void)
return FALSE;
}
-__attribute__((naked))
-void DebugMenu_807719C()
+void DebugMenu_807719C(void)
{
- asm(
- " push {r4, lr}\n"
- " add sp, sp, #0xfffffff8\n"
- " mov r0, #0x0\n"
- " mov r1, #0x0\n"
- " mov r2, #0xe\n"
- " mov r3, #0x11\n"
- " bl Menu_DrawStdWindowFrame\n"
- " ldr r3, ._133 @ gDebug0x839B9BC\n"
- " ldr r0, ._133 + 4 @ gUnknown_030006C4\n"
- " ldr r0, [r0]\n"
- " str r0, [sp]\n"
- " mov r0, #0x1\n"
- " mov r1, #0x1\n"
- " mov r2, #0x8\n"
- " bl Menu_PrintItemsReordered\n"
- " ldr r4, ._133 + 8 @ gUnknown_030006C0\n"
- " ldrb r0, [r4]\n"
- " str r0, [sp]\n"
- " mov r0, #0xd\n"
- " str r0, [sp, #0x4]\n"
- " mov r0, #0x0\n"
- " mov r1, #0x1\n"
- " mov r2, #0x1\n"
- " mov r3, #0x8\n"
- " bl InitMenu\n"
- " strb r0, [r4]\n"
- " add sp, sp, #0x8\n"
- " pop {r4}\n"
- " pop {r0}\n"
- " bx r0\n"
- "._134:\n"
- " .align 2, 0\n"
- "._133:\n"
- " .word gDebug0x839B9BC\n"
- " .word gUnknown_030006C4 \n"
- " .word gUnknown_030006C0 \n"
- "\n"
- );
+ Menu_DrawStdWindowFrame(0, 0, 14, 17);
+ Menu_PrintItemsReordered(1, 1, 8, gDebug0x839B9BC, gUnknown_030006C4);
+ gUnknown_030006C0 = InitMenu(0, 1, 1, 8, gUnknown_030006C0, 13);
}
-__attribute__((naked))
-void DebugMenu_80771EC()
+const u8 Str_839BE04[] = _("ID");
+
+void DebugMenu_80771EC(void)
{
- asm(
- " push {r4, lr}\n"
- " ldr r0, ._135 @ gStringVar4\n"
- " ldr r1, ._135 + 4 @ Str_839BE04\n"
- " bl StringCopy\n"
- " ldr r4, ._135 + 8 @ gSaveBlock1\n"
- " mov r1, #0x4\n"
- " ldsb r1, [r4, r1]\n"
- " mov r2, #0x1\n"
- " mov r3, #0x3\n"
- " bl ConvertIntToDecimalStringN\n"
- " mov r1, #0x5\n"
- " ldsb r1, [r4, r1]\n"
- " mov r2, #0x1\n"
- " mov r3, #0x3\n"
- " bl ConvertIntToDecimalStringN\n"
- " mov r0, #0x13\n"
- " mov r1, #0xc\n"
- " mov r2, #0x1d\n"
- " mov r3, #0xf\n"
- " bl Menu_DrawStdWindowFrame\n"
- " ldr r0, ._135 @ gStringVar4\n"
- " mov r1, #0x14\n"
- " mov r2, #0xd\n"
- " bl Menu_PrintText\n"
- " pop {r4}\n"
- " pop {r0}\n"
- " bx r0\n"
- "._136:\n"
- " .align 2, 0\n"
- "._135:\n"
- " .word gStringVar4\n"
- " .word Str_839BE04\n"
- " .word gSaveBlock1\n"
- "\n"
- );
+ u8 * buf = gStringVar4;
+ buf = StringCopy(buf, Str_839BE04);
+ buf = ConvertIntToDecimalStringN(buf, gSaveBlock1.location.mapGroup, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ buf = ConvertIntToDecimalStringN(buf, gSaveBlock1.location.mapNum, STR_CONV_MODE_RIGHT_ALIGN, 3);
+ Menu_DrawStdWindowFrame(19, 12, 29, 15);
+ Menu_PrintText(gStringVar4, 20, 13);
}
-__attribute__((naked))
-void DebugMenu_8077238()
+void DebugMenu_8077238(void)
{
- asm(
- " push {r4, r5, r6, r7, lr}\n"
- " mov r7, sl\n"
- " mov r6, r9\n"
- " mov r5, r8\n"
- " push {r5, r6, r7}\n"
- " add sp, sp, #0xffffffe8\n"
- " ldr r1, ._139 @ Str_839BE07\n"
- " mov r0, sp\n"
- " mov r2, #0x2\n"
- " bl memcpy\n"
- " add r0, sp, #0x4\n"
- " mov r9, r0\n"
- " ldr r1, ._139 + 4 @ Str_839BE09\n"
- " mov r2, #0x3\n"
- " bl memcpy\n"
- " add r1, sp, #0x8\n"
- " mov sl, r1\n"
- " ldr r1, ._139 + 8 @ Str_839BE0C\n"
- " mov r0, sl\n"
- " mov r2, #0x3\n"
- " bl memcpy\n"
- " mov r2, #0x0\n"
- " str r2, [sp, #0x14]\n"
- " add r4, sp, #0x10\n"
- " mov r6, sp\n"
- " add r6, r6, #0x12\n"
- " add r0, r4, #0\n"
- " add r1, r6, #0\n"
- " bl PlayerGetDestCoords\n"
- " mov r1, #0x0\n"
- " ldsh r0, [r4, r1]\n"
- " mov r2, #0x0\n"
- " ldsh r1, [r6, r2]\n"
- " bl MapGridGetZCoordAt\n"
- " mov r8, r0\n"
- " mov r0, r8\n"
- " lsl r0, r0, #0x18\n"
- " lsr r0, r0, #0x18\n"
- " mov r8, r0\n"
- " ldrh r0, [r4]\n"
- " sub r0, r0, #0x7\n"
- " strh r0, [r4]\n"
- " ldrh r0, [r6]\n"
- " sub r0, r0, #0x7\n"
- " strh r0, [r6]\n"
- " ldr r7, ._139 + 12 @ gStringVar4\n"
- " add r0, r7, #0\n"
- " mov r1, sp\n"
- " bl StringCopy\n"
- " add r5, sp, #0xc\n"
- " mov r2, #0x0\n"
- " ldsh r1, [r4, r2]\n"
- " add r0, r5, #0\n"
- " mov r2, #0x0\n"
- " mov r3, #0x3\n"
- " bl ConvertIntToDecimalStringN\n"
- " add r0, r7, #0\n"
- " add r1, r5, #0\n"
- " bl StringAppend\n"
- " add r0, r7, #0\n"
- " mov r1, r9\n"
- " bl StringAppend\n"
- " mov r0, #0x0\n"
- " ldsh r1, [r6, r0]\n"
- " add r0, r5, #0\n"
- " mov r2, #0x0\n"
- " mov r3, #0x3\n"
- " bl ConvertIntToDecimalStringN\n"
- " add r0, r7, #0\n"
- " add r1, r5, #0\n"
- " bl StringAppend\n"
- " add r0, r7, #0\n"
- " mov r1, sl\n"
- " bl StringAppend\n"
- " add r0, r5, #0\n"
- " mov r1, r8\n"
- " mov r2, #0x0\n"
- " mov r3, #0x2\n"
- " bl ConvertIntToDecimalStringN\n"
- " add r0, r7, #0\n"
- " add r1, r5, #0\n"
- " bl StringAppend\n"
- " ldrb r0, [r7]\n"
- " cmp r0, #0xff\n"
- " beq ._137 @cond_branch\n"
- " add r1, r7, #0\n"
- "._138:\n"
- " ldr r0, [sp, #0x14]\n"
- " add r0, r0, #0x1\n"
- " lsl r0, r0, #0x10\n"
- " lsr r0, r0, #0x10\n"
- " str r0, [sp, #0x14]\n"
- " add r0, r0, r1\n"
- " ldrb r0, [r0]\n"
- " cmp r0, #0xff\n"
- " bne ._138 @cond_branch\n"
- "._137:\n"
- " mov r0, #0x1c\n"
- " ldr r1, [sp, #0x14]\n"
- " sub r0, r0, r1\n"
- " lsl r0, r0, #0x18\n"
- " lsr r0, r0, #0x18\n"
- " mov r1, #0x10\n"
- " mov r2, #0x1d\n"
- " mov r3, #0x13\n"
- " bl Menu_DrawStdWindowFrame\n"
- " ldr r0, ._139 + 12 @ gStringVar4\n"
- " mov r1, #0x1d\n"
- " ldr r2, [sp, #0x14]\n"
- " sub r1, r1, r2\n"
- " lsl r1, r1, #0x18\n"
- " lsr r1, r1, #0x18\n"
- " mov r2, #0x11\n"
- " bl Menu_PrintText\n"
- " add sp, sp, #0x18\n"
- " pop {r3, r4, r5}\n"
- " mov r8, r3\n"
- " mov r9, r4\n"
- " mov sl, r5\n"
- " pop {r4, r5, r6, r7}\n"
- " pop {r0}\n"
- " bx r0\n"
- "._140:\n"
- " .align 2, 0\n"
- "._139:\n"
- " .word Str_839BE07\n"
- " .word Str_839BE09\n"
- " .word Str_839BE0C\n"
- " .word gStringVar4\n"
- "\n"
- );
+ u8 sp00[] = _("X");
+ u8 sp04[] = _(" Y");
+ u8 sp08[] = _(" H");
+ u8 sp0c[4];
+
+ s16 x;
+ s16 y;
+ u8 z;
+ u16 sp14 = 0;
+
+ PlayerGetDestCoords(&x, &y);
+ z = MapGridGetZCoordAt(x, y);
+ x -= 7;
+ y -= 7;
+
+ StringCopy(gStringVar4, sp00);
+ ConvertIntToDecimalStringN(sp0c, x, STR_CONV_MODE_LEFT_ALIGN, 3);
+ StringAppend(gStringVar4, sp0c);
+ StringAppend(gStringVar4, sp04);
+ ConvertIntToDecimalStringN(sp0c, y, STR_CONV_MODE_LEFT_ALIGN, 3);
+ StringAppend(gStringVar4, sp0c);
+ StringAppend(gStringVar4, sp08);
+ ConvertIntToDecimalStringN(sp0c, z, STR_CONV_MODE_LEFT_ALIGN, 2);
+ StringAppend(gStringVar4, sp0c);
+
+ for (sp14 = 0; gStringVar4[sp14] != EOS; sp14++)
+ ;
+
+ Menu_DrawStdWindowFrame(28 - sp14, 16, 29, 19);
+ Menu_PrintText(gStringVar4, 29 - sp14, 17);
}
-__attribute__((naked))
-u8 DebugMenu_Exit()
+u8 DebugMenu_Exit(void)
{
- asm(
- " push {lr}\n"
- " bl CloseMenu\n"
- " mov r0, #0x1\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ CloseMenu();
+ return TRUE;
}
-__attribute__((naked))
-u8 DebugMenu_OpenSogabe()
+u8 DebugMenu_OpenSogabe(void)
{
- asm(
- " push {lr}\n"
- " bl unref_sub_814A414\n"
- " lsl r0, r0, #0x18\n"
- " lsr r0, r0, #0x18\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ return unref_sub_814A414();
}
-__attribute__((naked))
u8 DebugMenu_OpenTamada()
{
- asm(
- " push {lr}\n"
- " bl debug_sub_8075C30\n"
- " lsl r0, r0, #0x18\n"
- " lsr r0, r0, #0x18\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ return debug_sub_8075C30();
}
-__attribute__((naked))
u8 DebugMenu_OpenKagaya()
{
- asm(
- " push {lr}\n"
- " bl InitKagayaDebugMenu_A\n"
- " lsl r0, r0, #0x18\n"
- " lsr r0, r0, #0x18\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ return InitKagayaDebugMenu_A();
}
-__attribute__((naked))
u8 DebugMenu_OpenMatsuda()
{
- asm(
- " push {lr}\n"
- " bl unref_sub_80A9B28\n"
- " lsl r0, r0, #0x18\n"
- " lsr r0, r0, #0x18\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ return unref_sub_80A9B28();
}
-__attribute__((naked))
u8 DebugMenu_OpenNohara()
{
- asm(
- " push {lr}\n"
- " bl InitNoharaDebugMenu\n"
- " lsl r0, r0, #0x18\n"
- " lsr r0, r0, #0x18\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ return InitNoharaDebugMenu();
}
-__attribute__((naked))
u8 DebugMenu_OpenWatanabe()
{
- asm(
- " push {lr}\n"
- " bl CloseMenu\n"
- " ldr r0, ._141 @ InitWatanabeDebugMenu\n"
- " bl SetMainCallback2\n"
- " bl ScriptContext2_Enable\n"
- " mov r0, #0x1\n"
- " pop {r1}\n"
- " bx r1\n"
- "._142:\n"
- " .align 2, 0\n"
- "._141:\n"
- " .word InitWatanabeDebugMenu+1\n"
- "\n"
- );
+ CloseMenu();
+ SetMainCallback2(InitWatanabeDebugMenu);
+ ScriptContext2_Enable();
+ return TRUE;
}
-__attribute__((naked))
u8 DebugMenu_EndSequenceDemo()
{
- asm(
- " push {lr}\n"
- " bl CloseMenu\n"
- " ldr r0, ._143 @ sub_81439D0\n"
- " bl SetMainCallback2\n"
- " bl ScriptContext2_Enable\n"
- " mov r0, #0x1\n"
- " pop {r1}\n"
- " bx r1\n"
- "._144:\n"
- " .align 2, 0\n"
- "._143:\n"
- " .word sub_81439D0+1\n"
- "\n"
- );
+ CloseMenu();
+ SetMainCallback2(sub_81439D0);
+ ScriptContext2_Enable();
+ return TRUE;
}
-__attribute__((naked))
u8 DebugMenu_HallOfFame()
{
- asm(
- " push {lr}\n"
- " bl CloseMenu\n"
- " bl GameClear\n"
- " bl ScriptContext2_Enable\n"
- " mov r0, #0x1\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ CloseMenu();
+ GameClear();
+ ScriptContext2_Enable();
+ return TRUE;
}
-__attribute__((naked))
u8 DebugMenu_OpenSizeComparison()
{
- asm(
- " push {lr}\n"
- " bl CloseMenu\n"
- " bl InitSizeComparison\n"
- " bl ScriptContext2_Enable\n"
- " mov r0, #0x1\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ CloseMenu();
+ InitSizeComparison();
+ ScriptContext2_Enable();
+ return TRUE;
}
-__attribute__((naked))
u8 DebugMenu_HoennNationalDex()
{
- asm(
- " push {lr}\n"
- " bl IsNationalPokedexEnabled\n"
- " cmp r0, #0\n"
- " beq ._145 @cond_branch\n"
- " bl DisableNationalPokedex\n"
- " b ._146\n"
- "._145:\n"
- " bl EnableNationalPokedex\n"
- "._146:\n"
- " bl CloseMenu\n"
- " mov r0, #0x1\n"
- " pop {r1}\n"
- " bx r1\n"
- "\n"
- );
+ if (IsNationalPokedexEnabled())
+ DisableNationalPokedex();
+ else
+ EnableNationalPokedex();
+ CloseMenu();
+ return TRUE;
}
__attribute__((naked))
@@ -1186,6 +938,20 @@ u8 DebugMenu_8077434()
);
}
+const u8 Str_839BE0F[] = _("HP");
+const u8 Str_839BE12[] = _("PAR");
+const u8 Str_839BE16[] = _("SLP");
+const u8 Str_839BE1A[] = _("PSN");
+const u8 Str_839BE1E[] = _("ウマイ");
+
+const struct MenuAction gUnknown_Debug_839BE24[] = {
+ {Str_839BE0F, DebugMenu_8077434},
+ {Str_839BE12, DebugMenu_8077434},
+ {Str_839BE16, DebugMenu_8077434},
+ {Str_839BE1A, DebugMenu_8077434},
+ {Str_839BE1E, DebugMenu_8077434}
+};
+
__attribute__((naked))
u8 DebugMenu_807750C()
{
diff --git a/src/menu.c b/src/menu.c
index 677a0e4bd..0e615a6d2 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -589,12 +589,12 @@ void Menu_PrintItems(u8 left, u8 top, u8 menuItemCount, const void * menuItems)
Menu_PrintText(((const struct MenuAction *)menuItems)[i].text, left, top + 2 * i);
}
-void Menu_PrintItemsReordered(u8 left, u8 top, u8 menuItemCount, const struct MenuAction2 menuItems[], const u8 *order)
+void Menu_PrintItemsReordered(u8 left, u8 top, u8 menuItemCount, const void * menuItems, const u8 *order)
{
u8 i;
for (i = 0; i < menuItemCount; i++)
- Menu_PrintText(menuItems[order[i]].text, left, top + 2 * i);
+ Menu_PrintText(((const struct MenuAction *)menuItems)[order[i]].text, left, top + 2 * i);
}
void InitYesNoMenu(u8 left, u8 top, u8 a3)