From 91cfb6a564f73f02eb57792f8a0f4aa82e1867d1 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Tue, 16 Jan 2018 22:25:35 -0600 Subject: add debug ifdefs --- src/debug/watanabe_debug_menu.c | 9846 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 9846 insertions(+) create mode 100644 src/debug/watanabe_debug_menu.c (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c new file mode 100644 index 000000000..fed5b4e52 --- /dev/null +++ b/src/debug/watanabe_debug_menu.c @@ -0,0 +1,9846 @@ +#ifdef DEBUG +#include "global.h" + +EWRAM_DATA u8 unk_debug_ewram_0[56] = { 0 }; + +u8 byte_3005E30[0x20]; + +__attribute__((naked)) +void debug_69() +{ + asm( + " bx lr\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C35DC() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r8\n" + " push {r7}\n" + " add sp, sp, #0xfffffff8\n" + " mov r0, #0x0\n" + " bl SetVBlankCallback\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x13\n" + " mov r1, #0x0\n" + " strh r1, [r0]\n" + " add r0, r0, #0xe\n" + " strh r1, [r0]\n" + " sub r0, r0, #0x2\n" + " strh r1, [r0]\n" + " sub r0, r0, #0x2\n" + " strh r1, [r0]\n" + " sub r0, r0, #0x2\n" + " strh r1, [r0]\n" + " add r0, r0, #0x14\n" + " strh r1, [r0]\n" + " add r0, r0, #0x2\n" + " strh r1, [r0]\n" + " sub r0, r0, #0x6\n" + " strh r1, [r0]\n" + " add r0, r0, #0x2\n" + " strh r1, [r0]\n" + " sub r0, r0, #0x6\n" + " strh r1, [r0]\n" + " add r0, r0, #0x2\n" + " strh r1, [r0]\n" + " sub r0, r0, #0x6\n" + " strh r1, [r0]\n" + " add r0, r0, #0x2\n" + " strh r1, [r0]\n" + " mov r3, #0xc0\n" + " lsl r3, r3, #0x13\n" + " mov r4, #0xc0\n" + " lsl r4, r4, #0x9\n" + " add r0, sp, #0x4\n" + " mov r8, r0\n" + " mov r2, sp\n" + " mov r6, #0x0\n" + " ldr r1, ._2\n" + " mov r5, #0x80\n" + " lsl r5, r5, #0x5\n" + " ldr r7, ._2 + 4\n" + " mov r0, #0x81\n" + " lsl r0, r0, #0x18\n" + " mov ip, r0\n" + "._1:\n" + " strh r6, [r2]\n" + " mov r0, sp\n" + " str r0, [r1]\n" + " str r3, [r1, #0x4]\n" + " str r7, [r1, #0x8]\n" + " ldr r0, [r1, #0x8]\n" + " add r3, r3, r5\n" + " sub r4, r4, r5\n" + " cmp r4, r5\n" + " bhi ._1 @cond_branch\n" + " strh r6, [r2]\n" + " mov r2, sp\n" + " str r2, [r1]\n" + " str r3, [r1, #0x4]\n" + " lsr r0, r4, #0x1\n" + " mov r2, ip\n" + " orr r0, r0, r2\n" + " str r0, [r1, #0x8]\n" + " ldr r0, [r1, #0x8]\n" + " mov r0, #0xe0\n" + " lsl r0, r0, #0x13\n" + " mov r3, #0x80\n" + " lsl r3, r3, #0x3\n" + " mov r4, #0x0\n" + " str r4, [sp, #0x4]\n" + " ldr r2, ._2\n" + " mov r1, r8\n" + " str r1, [r2]\n" + " str r0, [r2, #0x4]\n" + " lsr r0, r3, #0x2\n" + " mov r1, #0x85\n" + " lsl r1, r1, #0x18\n" + " orr r0, r0, r1\n" + " str r0, [r2, #0x8]\n" + " ldr r0, [r2, #0x8]\n" + " mov r1, #0xa0\n" + " lsl r1, r1, #0x13\n" + " mov r0, sp\n" + " strh r4, [r0]\n" + " str r0, [r2]\n" + " str r1, [r2, #0x4]\n" + " lsr r3, r3, #0x1\n" + " mov r0, #0x81\n" + " lsl r0, r0, #0x18\n" + " orr r3, r3, r0\n" + " str r3, [r2, #0x8]\n" + " ldr r0, [r2, #0x8]\n" + " bl ResetPaletteFade\n" + " bl remove_some_task\n" + " bl ResetTasks\n" + " bl ResetSpriteData\n" + " bl ResetPaletteFade\n" + " bl FreeAllSpritePalettes\n" + " ldr r0, ._2 + 8\n" + " bl LoadSpriteSheet\n" + " ldr r0, ._2 + 12\n" + " bl LoadSpritePalette\n" + " ldr r0, ._2 + 16\n" + " bl SetUpWindowConfig\n" + " ldr r0, ._2 + 20\n" + " bl InitMenuWindow\n" + " add sp, sp, #0x8\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._3:\n" + " .align 2, 0\n" + "._2:\n" + " .word 0x40000d4\n" + " .word 0x81000800\n" + " .word stru_83F8828\n" + " .word stru_83F8838\n" + " .word gWindowConfig_81E6C3C\n" + " .word gWindowConfig_81E6CE4\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C36F4() +{ + asm( + " push {lr}\n" + " bl RunTasks\n" + " bl AnimateSprites\n" + " bl BuildOamBuffer\n" + " bl UpdatePaletteFade\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C370C() +{ + asm( + " push {lr}\n" + " ldr r0, ._6\n" + " ldrb r1, [r0, #0x7]\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " bne ._4 @cond_branch\n" + " ldr r0, ._6 + 4\n" + " bl SetMainCallback2\n" + " b ._5\n" + "._7:\n" + " .align 2, 0\n" + "._6:\n" + " .word gPaletteFade\n" + " .word debug_80C36F4+1\n" + "._4:\n" + " bl AnimateSprites\n" + " bl BuildOamBuffer\n" + " bl UpdatePaletteFade\n" + "._5:\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C373C() +{ + asm( + " push {lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " bl DestroyTask\n" + " bl ScriptContext2_Disable\n" + " ldr r0, ._8\n" + " bl SetMainCallback2\n" + " pop {r0}\n" + " bx r0\n" + "._9:\n" + " .align 2, 0\n" + "._8:\n" + " .word sub_80546F0+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C3758() +{ + asm( + " push {lr}\n" + " bl LoadOam\n" + " bl ProcessSpriteCopyRequests\n" + " bl TransferPlttBuffer\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C376C() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x10\n" + " lsr r5, r0, #0x10\n" + " lsl r1, r1, #0x18\n" + " lsr r7, r1, #0x18\n" + " lsl r2, r2, #0x18\n" + " lsr r6, r2, #0x18\n" + " mov r1, #0x0\n" + " mov r2, #0x0\n" + "._10:\n" + " mov r3, sp\n" + " add r0, r3, r1\n" + " strb r2, [r0]\n" + " add r0, r1, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r1, r0, #0x18\n" + " cmp r1, #0x2\n" + " bls ._10 @cond_branch\n" + " mov r1, sp\n" + " mov r0, #0xff\n" + " strb r0, [r1, #0x3]\n" + " mov r4, #0x0\n" + " add r0, r5, #0\n" + " mov r1, #0x64\n" + " bl __udivsi3\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " cmp r0, #0\n" + " beq ._11 @cond_branch\n" + " mov r1, sp\n" + " add r0, r0, #0xa1\n" + " strb r0, [r1]\n" + " mov r4, #0x1\n" + "._11:\n" + " add r0, r5, #0\n" + " mov r1, #0x64\n" + " bl __umodsi3\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " mov r1, #0xa\n" + " bl __udivsi3\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " cmp r0, #0\n" + " bne ._12 @cond_branch\n" + " cmp r4, #0\n" + " beq ._13 @cond_branch\n" + "._12:\n" + " mov r1, sp\n" + " add r0, r0, #0xa1\n" + " strb r0, [r1, #0x1]\n" + "._13:\n" + " mov r4, sp\n" + " add r0, r5, #0\n" + " mov r1, #0x64\n" + " bl __umodsi3\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " mov r1, #0xa\n" + " bl __umodsi3\n" + " add r0, r0, #0xa1\n" + " strb r0, [r4, #0x2]\n" + " mov r0, sp\n" + " add r1, r7, #0\n" + " add r2, r6, #0\n" + " bl MenuPrint\n" + " add sp, sp, #0x4\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C3800() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " add sp, sp, #0xfffffff4\n" + " lsl r0, r0, #0x10\n" + " lsr r4, r0, #0x10\n" + " lsl r1, r1, #0x18\n" + " lsr r6, r1, #0x18\n" + " lsl r2, r2, #0x18\n" + " lsr r5, r2, #0x18\n" + " mov r3, #0x0\n" + " ldr r2, ._18\n" + " mov r1, #0x0\n" + "._14:\n" + " mov r7, sp\n" + " add r0, r7, r3\n" + " strb r1, [r0]\n" + " add r0, r3, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r3, r0, #0x18\n" + " cmp r3, #0x9\n" + " bls ._14 @cond_branch\n" + " add r1, r7, r3\n" + " mov r0, #0xff\n" + " strb r0, [r1]\n" + " mov r3, #0x0\n" + " mov r0, #0xb\n" + " add r1, r4, #0\n" + " mul r1, r1, r0\n" + " add r0, r1, r2\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " beq ._16 @cond_branch\n" + " add r4, r2, #0\n" + " add r2, r1, #0\n" + "._17:\n" + " mov r0, sp\n" + " add r1, r0, r3\n" + " add r0, r3, r2\n" + " add r0, r0, r4\n" + " ldrb r0, [r0]\n" + " strb r0, [r1]\n" + " add r0, r3, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r3, r0, #0x18\n" + " add r0, r3, r2\n" + " add r0, r0, r4\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " beq ._16 @cond_branch\n" + " cmp r3, #0x9\n" + " bls ._17 @cond_branch\n" + "._16:\n" + " mov r0, sp\n" + " add r1, r6, #0\n" + " add r2, r5, #0\n" + " bl MenuPrint\n" + " add sp, sp, #0xc\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._19:\n" + " .align 2, 0\n" + "._18:\n" + " .word gSpeciesNames\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C3878() +{ + asm( + " push {lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " lsl r1, r1, #0x10\n" + " lsr r1, r1, #0x10\n" + " cmp r0, #0\n" + " beq ._20 @cond_branch\n" + " cmp r0, #0x1\n" + " beq ._21 @cond_branch\n" + "._20:\n" + " cmp r1, #0x1\n" + " bls ._22 @cond_branch\n" + " sub r0, r1, #1\n" + " b ._23\n" + "._22:\n" + " ldr r1, ._25\n" + " b ._28\n" + "._26:\n" + " .align 2, 0\n" + "._25:\n" + " .word 0x19b\n" + "._21:\n" + " mov r0, #0xcd\n" + " lsl r0, r0, #0x1\n" + " cmp r1, r0\n" + " bhi ._27 @cond_branch\n" + " add r0, r1, #1\n" + "._23:\n" + " lsl r0, r0, #0x10\n" + " lsr r1, r0, #0x10\n" + " b ._28\n" + "._27:\n" + " mov r1, #0x1\n" + "._28:\n" + " add r0, r1, #0\n" + " pop {r1}\n" + " bx r1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C38B4() +{ + asm( + " push {lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " lsl r1, r1, #0x10\n" + " lsr r0, r1, #0x10\n" + " cmp r2, #0\n" + " beq ._29 @cond_branch\n" + " cmp r2, #0x1\n" + " beq ._30 @cond_branch\n" + "._29:\n" + " cmp r0, #0\n" + " beq ._31 @cond_branch\n" + " sub r0, r0, #0x1\n" + " b ._32\n" + "._31:\n" + " mov r0, #0x52\n" + " b ._35\n" + "._30:\n" + " cmp r0, #0x51\n" + " bhi ._34 @cond_branch\n" + " add r0, r0, #0x1\n" + "._32:\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " b ._35\n" + "._34:\n" + " mov r0, #0x0\n" + "._35:\n" + " pop {r1}\n" + " bx r1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C38E4() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r8\n" + " push {r7}\n" + " add sp, sp, #0xfffffffc\n" + " add r4, r2, #0\n" + " add r5, r3, #0\n" + " ldr r6, [sp, #0x1c]\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " mov r8, r0\n" + " lsl r1, r1, #0x18\n" + " lsr r7, r1, #0x18\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " lsl r5, r5, #0x18\n" + " lsr r5, r5, #0x18\n" + " lsl r6, r6, #0x18\n" + " lsr r6, r6, #0x18\n" + " ldr r1, ._37\n" + " mov r0, sp\n" + " mov r2, #0x2\n" + " bl memcpy\n" + " add r0, r7, #0\n" + " add r1, r4, #0\n" + " add r2, r7, #0\n" + " add r3, r5, #0\n" + " bl MenuFillWindowRectWithBlankTile\n" + " cmp r6, #0\n" + " beq ._36 @cond_branch\n" + " mov r0, sp\n" + " add r1, r7, #0\n" + " mov r2, r8\n" + " bl MenuPrint\n" + "._36:\n" + " add sp, sp, #0x4\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._38:\n" + " .align 2, 0\n" + "._37:\n" + " .word gUnknown_Debug_083F7FD4\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C393C() +{ + asm( + " push {lr}\n" + " ldr r1, ._39\n" + " mov r0, #0x1e\n" + " bl ProgramFlashSectorAndVerify\n" + " pop {r0}\n" + " bx r0\n" + "._40:\n" + " .align 2, 0\n" + "._39:\n" + " .word gUnknown_Debug_083F7FD6\n" + "\n" + ); +} + +__attribute__((naked)) +void InitWatanabeDebugMenu() +{ + asm( + " push {r4, lr}\n" + " ldr r0, ._46\n" + " ldr r1, ._46 + 4\n" + " add r4, r0, r1\n" + " ldrb r0, [r4]\n" + " cmp r0, #0x1\n" + " beq ._41 @cond_branch\n" + " cmp r0, #0x1\n" + " ble ._42 @cond_branch\n" + " cmp r0, #0x2\n" + " beq ._43 @cond_branch\n" + " cmp r0, #0x3\n" + " beq ._44 @cond_branch\n" + "._42:\n" + " bl save_serialize_map\n" + " bl sub_8125E2C\n" + " mov r0, #0x1\n" + " strb r0, [r4]\n" + " b ._51\n" + "._47:\n" + " .align 2, 0\n" + "._46:\n" + " .word gMain\n" + " .word 0x43c\n" + "._41:\n" + " bl sub_8125E6C\n" + " lsl r0, r0, #0x18\n" + " cmp r0, #0\n" + " beq ._51 @cond_branch\n" + " b ._49\n" + "._43:\n" + " mov r0, #0x37\n" + " bl PlaySE\n" + "._49:\n" + " ldrb r0, [r4]\n" + " add r0, r0, #0x1\n" + " strb r0, [r4]\n" + " b ._51\n" + "._44:\n" + " bl IsSEPlaying\n" + " lsl r0, r0, #0x18\n" + " cmp r0, #0\n" + " bne ._51 @cond_branch\n" + " bl ScriptContext2_Disable\n" + " ldr r0, ._52\n" + " bl SetMainCallback2\n" + "._51:\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._53:\n" + " .align 2, 0\n" + "._52:\n" + " .word sub_80546F0+1\n" + "\n" + ); +} + +__attribute__((naked)) +void InitSizeComparison() +{ + asm( + " push {r4, lr}\n" + " add sp, sp, #0xfffffffc\n" + " bl debug_80C35DC\n" + " ldr r1, ._54\n" + " mov r0, #0x1\n" + " strb r0, [r1]\n" + " ldr r0, ._54 + 4\n" + " mov r1, #0x80\n" + " lsl r1, r1, #0x1\n" + " mov r2, #0x20\n" + " bl LoadPalette\n" + " ldr r3, ._54 + 8\n" + " ldrh r2, [r3]\n" + " mov r0, #0x0\n" + " strh r0, [r3]\n" + " ldr r4, ._54 + 12\n" + " ldrh r0, [r4]\n" + " mov r1, #0x1\n" + " orr r0, r0, r1\n" + " strh r0, [r4]\n" + " strh r2, [r3]\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " mov r1, #0x0\n" + " str r1, [sp]\n" + " mov r2, #0x10\n" + " mov r3, #0x0\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._54 + 16\n" + " bl SetVBlankCallback\n" + " ldr r0, ._54 + 20\n" + " bl SetMainCallback2\n" + " mov r1, #0x80\n" + " lsl r1, r1, #0x13\n" + " mov r2, #0x8a\n" + " lsl r2, r2, #0x5\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r0, ._54 + 24\n" + " mov r1, #0x0\n" + " bl CreateTask\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " ldr r2, ._54 + 28\n" + " lsl r1, r0, #0x2\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " mov r0, #0xfc\n" + " strh r0, [r1, #0x8]\n" + " add sp, sp, #0x4\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._55:\n" + " .align 2, 0\n" + "._54:\n" + " .word gReservedSpritePaletteCount\n" + " .word unk_debug_ewram_0\n" + " .word 0x4000208\n" + " .word 0x4000200\n" + " .word debug_80C3758+1\n" + " .word debug_80C370C+1\n" + " .word debug_80C3A50+1\n" + " .word gTasks\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C3A50() +{ + 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, #0xffffffd8\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " ldr r1, ._56\n" + " lsl r2, r0, #0x2\n" + " add r0, r2, r0\n" + " lsl r0, r0, #0x3\n" + " add r7, r0, r1\n" + " ldrh r0, [r7, #0x8]\n" + " str r0, [sp, #0x4]\n" + " bl NationalPokedexNumToSpecies\n" + " mov r1, sp\n" + " strh r0, [r1, #0x8]\n" + " add r2, r0, #0\n" + " lsl r2, r2, #0x10\n" + " str r2, [sp, #0xc]\n" + " lsr r2, r2, #0x10\n" + " mov r9, r2\n" + " ldr r3, ._56 + 4\n" + " mov r8, r3\n" + " mov r0, #0x6\n" + " mov r1, #0x0\n" + " mov r2, #0x17\n" + " mov r3, #0x9\n" + " bl MenuDrawTextWindow\n" + " mov r0, #0x0\n" + " mov r1, #0x0\n" + " mov r2, #0x5\n" + " mov r3, #0x9\n" + " bl MenuDrawTextWindow\n" + " ldr r5, ._56 + 8\n" + " add r0, r5, #0\n" + " mov r1, #0x1\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " ldr r4, ._56 + 12\n" + " add r0, r4, #0\n" + " mov r1, #0x1\n" + " mov r2, #0x5\n" + " bl MenuPrint\n" + " mov r0, #0x18\n" + " mov r1, #0x0\n" + " mov r2, #0x1d\n" + " mov r3, #0x9\n" + " bl MenuDrawTextWindow\n" + " add r0, r5, #0\n" + " mov r1, #0x19\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " add r0, r4, #0\n" + " mov r1, #0x19\n" + " mov r2, #0x5\n" + " bl MenuPrint\n" + " mov r0, #0x0\n" + " mov r1, #0xa\n" + " mov r2, #0xb\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " ldr r0, ._56 + 16\n" + " mov r1, #0x1\n" + " mov r2, #0xb\n" + " bl MenuPrint\n" + " ldr r0, ._56 + 20\n" + " mov r1, #0x1\n" + " mov r2, #0xd\n" + " bl MenuPrint\n" + " ldr r0, ._56 + 24\n" + " mov r1, #0x1\n" + " mov r2, #0xf\n" + " bl MenuPrint\n" + " ldr r0, ._56 + 28\n" + " mov r1, #0x1\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " mov r0, #0xc\n" + " mov r1, #0xa\n" + " mov r2, #0x1d\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " ldr r0, ._56 + 32\n" + " mov r1, #0xd\n" + " mov r2, #0xb\n" + " bl MenuPrint\n" + " ldr r0, ._56 + 36\n" + " mov r1, #0xd\n" + " mov r2, #0xd\n" + " bl MenuPrint\n" + " mov r0, #0xc\n" + " mov r1, #0x10\n" + " mov r2, #0x1d\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " ldr r0, ._56 + 40\n" + " mov r1, #0xd\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " ldr r0, ._56 + 44\n" + " mov r1, #0x18\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " mov r0, r9\n" + " mov r1, #0x12\n" + " mov r2, #0x11\n" + " bl debug_80C3800\n" + " mov r1, r8\n" + " ldrb r0, [r1, #0x8]\n" + " mov r1, #0x98\n" + " mov r2, #0x28\n" + " mov r3, #0x0\n" + " bl sub_8091A4C\n" + " mov r2, sp\n" + " strh r0, [r2, #0x10]\n" + " add r3, r0, #0\n" + " lsl r3, r3, #0x10\n" + " str r3, [sp, #0x18]\n" + " lsr r0, r3, #0x10\n" + " str r0, [sp, #0x14]\n" + " lsl r4, r0, #0x4\n" + " add r4, r4, r0\n" + " lsl r4, r4, #0x2\n" + " ldr r1, ._56 + 48\n" + " add r4, r4, r1\n" + " ldrb r1, [r4, #0x1]\n" + " mov r2, #0x4\n" + " neg r2, r2\n" + " mov sl, r2\n" + " mov r0, sl\n" + " and r0, r0, r1\n" + " mov r3, #0x1\n" + " orr r0, r0, r3\n" + " strb r0, [r4, #0x1]\n" + " ldrb r1, [r4, #0x3]\n" + " mov r0, #0x3f\n" + " neg r0, r0\n" + " mov r9, r0\n" + " and r0, r0, r1\n" + " mov r1, #0x4\n" + " orr r0, r0, r1\n" + " strb r0, [r4, #0x3]\n" + " ldrb r1, [r4, #0x5]\n" + " sub r2, r2, #0x9\n" + " mov r8, r2\n" + " mov r0, r8\n" + " and r0, r0, r1\n" + " mov r3, #0xf\n" + " and r0, r0, r3\n" + " strb r0, [r4, #0x5]\n" + " mov r0, #0x0\n" + " bl GetSpritePaletteTagByPaletteNum\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl FreeSpritePaletteByTag\n" + " ldr r0, ._56 + 52\n" + " ldr r1, [sp, #0x4]\n" + " lsl r5, r1, #0x3\n" + " add r5, r5, r1\n" + " lsl r5, r5, #0x2\n" + " add r5, r5, r0\n" + " ldrh r6, [r5, #0x20]\n" + " strh r6, [r4, #0x26]\n" + " ldrh r4, [r5, #0x1e]\n" + " str r4, [sp]\n" + " mov r0, #0x2\n" + " add r1, r4, #0\n" + " mov r2, #0x0\n" + " mov r3, #0x0\n" + " bl SetOamMatrix\n" + " mov r2, sp\n" + " ldrh r2, [r2, #0x14]\n" + " strh r2, [r7, #0xe]\n" + " strh r6, [r7, #0x10]\n" + " strh r4, [r7, #0x14]\n" + " ldr r0, [sp, #0x4]\n" + " mov r1, #0x58\n" + " mov r2, #0x28\n" + " mov r3, #0x1\n" + " bl sub_80918EC\n" + " mov r3, sp\n" + " strh r0, [r3, #0x1c]\n" + " lsl r0, r0, #0x10\n" + " str r0, [sp, #0x24]\n" + " lsr r1, r0, #0x10\n" + " str r1, [sp, #0x20]\n" + " lsl r4, r1, #0x4\n" + " add r4, r4, r1\n" + " lsl r4, r4, #0x2\n" + " ldr r2, ._56 + 48\n" + " add r4, r4, r2\n" + " ldrb r0, [r4, #0x1]\n" + " mov r3, sl\n" + " and r3, r3, r0\n" + " mov r0, #0x1\n" + " orr r3, r3, r0\n" + " strb r3, [r4, #0x1]\n" + " ldrb r0, [r4, #0x3]\n" + " mov r1, r9\n" + " and r1, r1, r0\n" + " mov r0, #0x2\n" + " orr r1, r1, r0\n" + " strb r1, [r4, #0x3]\n" + " ldrb r0, [r4, #0x5]\n" + " mov r2, r8\n" + " and r2, r2, r0\n" + " mov r3, #0xf\n" + " and r2, r2, r3\n" + " strb r2, [r4, #0x5]\n" + " mov r0, #0x0\n" + " bl GetSpritePaletteTagByPaletteNum\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl FreeSpritePaletteByTag\n" + " ldrh r0, [r5, #0x1c]\n" + " mov r8, r0\n" + " strh r0, [r4, #0x26]\n" + " ldrh r4, [r5, #0x1a]\n" + " str r4, [sp]\n" + " mov r0, #0x1\n" + " add r1, r4, #0\n" + " mov r2, #0x0\n" + " mov r3, #0x0\n" + " bl SetOamMatrix\n" + " mov r1, sp\n" + " ldrh r1, [r1, #0x20]\n" + " strh r1, [r7, #0xc]\n" + " mov r2, r8\n" + " strh r2, [r7, #0x12]\n" + " strh r4, [r7, #0x16]\n" + " mov r3, #0x0\n" + " strh r3, [r7, #0x18]\n" + " strh r3, [r7, #0x1a]\n" + " ldr r1, ._56 + 56\n" + " ldr r2, ._56 + 60\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x2\n" + " mov r0, #0x1f\n" + " strh r0, [r1]\n" + " ldr r2, ._56 + 64\n" + " mov r3, #0x18\n" + " ldsh r1, [r7, r3]\n" + " lsl r1, r1, #0x6\n" + " add r0, r1, #0\n" + " add r0, r0, #0x38\n" + " lsl r0, r0, #0x8\n" + " add r1, r1, #0x78\n" + " add r0, r0, r1\n" + " strh r0, [r2]\n" + " ldr r1, ._56 + 68\n" + " ldr r2, ._56 + 72\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " sub r1, r1, #0x2\n" + " ldr r3, ._56 + 76\n" + " add r0, r3, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._56 + 80\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0xa\n" + " mov r0, #0xe1\n" + " strh r0, [r1]\n" + " ldr r0, ._56 + 84\n" + " mov r3, #0x0\n" + " strh r3, [r0]\n" + " add r1, r1, #0x4\n" + " mov r0, #0x7\n" + " strh r0, [r1]\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x13\n" + " ldrh r0, [r2]\n" + " mov r3, #0xc0\n" + " lsl r3, r3, #0x7\n" + " add r1, r3, #0\n" + " orr r0, r0, r1\n" + " strh r0, [r2]\n" + " ldr r0, ._56 + 88\n" + " str r0, [r7]\n" + " add sp, sp, #0x28\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" + "._57:\n" + " .align 2, 0\n" + "._56:\n" + " .word gTasks\n" + " .word gSaveBlock2\n" + " .word gUnknown_Debug_083F7FD6+0x4\n" + " .word gUnknown_Debug_083F7FDE\n" + " .word gUnknown_Debug_083F7FE2\n" + " .word gUnknown_Debug_083F7FED\n" + " .word gUnknown_Debug_083F7FF6\n" + " .word gUnknown_Debug_083F8001\n" + " .word gUnknown_Debug_083F800C\n" + " .word gUnknown_Debug_083F8019\n" + " .word gUnknown_Debug_083F8022\n" + " .word gUnknown_Debug_083F8028\n" + " .word gSprites\n" + " .word gPokedexEntries\n" + " .word 0x4000048\n" + " .word 0x3f1f\n" + " .word 0x4000040\n" + " .word 0x4000044\n" + " .word 0x848\n" + " .word 0x31bf\n" + " .word 0x14f\n" + " .word 0x4000052\n" + " .word debug_80C3D2C+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C3D2C() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r8\n" + " push {r7}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r6, r0, #0x18\n" + " add r7, r6, #0\n" + " ldr r4, ._60\n" + " ldrh r1, [r4, #0x2e]\n" + " mov r0, #0x2\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._58 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " mov r1, #0x0\n" + " str r1, [sp]\n" + " mov r2, #0x0\n" + " mov r3, #0x10\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._60 + 4\n" + " bl SetMainCallback2\n" + " ldr r1, ._60 + 8\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._60 + 12\n" + " str r1, [r0]\n" + " b ._117\n" + "._61:\n" + " .align 2, 0\n" + "._60:\n" + " .word gMain\n" + " .word debug_80C370C+1\n" + " .word gTasks\n" + " .word debug_80C373C+1\n" + "._58:\n" + " mov r5, #0x1\n" + " add r0, r5, #0\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._62 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " ldr r1, ._64\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldrh r1, [r0, #0x18]\n" + " mov r2, #0x1\n" + " eor r1, r1, r2\n" + " strh r1, [r0, #0x18]\n" + " b ._117\n" + "._65:\n" + " .align 2, 0\n" + "._64:\n" + " .word gTasks\n" + "._62:\n" + " ldrh r1, [r4, #0x30]\n" + " mov r0, #0x20\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._66 @cond_branch\n" + " ldr r1, ._70\n" + " lsl r2, r6, #0x2\n" + " add r0, r2, r6\n" + " lsl r0, r0, #0x3\n" + " add r3, r0, r1\n" + " mov r5, #0x18\n" + " ldsh r0, [r3, r5]\n" + " mov r8, r1\n" + " cmp r0, #0\n" + " beq ._67 @cond_branch\n" + " ldrh r1, [r4, #0x2c]\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._68 @cond_branch\n" + " ldrh r0, [r3, #0x14]\n" + " add r0, r0, #0x10\n" + " b ._69\n" + "._71:\n" + " .align 2, 0\n" + "._70:\n" + " .word gTasks\n" + "._68:\n" + " ldrh r0, [r3, #0x14]\n" + " add r0, r0, #0x1\n" + "._69:\n" + " strh r0, [r3, #0x14]\n" + " add r0, r2, r7\n" + " lsl r0, r0, #0x3\n" + " mov r2, r8\n" + " add r1, r0, r2\n" + " ldrh r0, [r1, #0x14]\n" + " mov r6, #0x80\n" + " lsl r6, r6, #0x8\n" + " cmp r0, r6\n" + " bhi ._72 @cond_branch\n" + " b ._117\n" + "._72:\n" + " strh r6, [r1, #0x14]\n" + " b ._117\n" + "._67:\n" + " ldrh r1, [r4, #0x2c]\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._75 @cond_branch\n" + " ldrh r0, [r3, #0x16]\n" + " add r0, r0, #0x10\n" + " b ._76\n" + "._75:\n" + " ldrh r0, [r3, #0x16]\n" + " add r0, r0, #0x1\n" + "._76:\n" + " strh r0, [r3, #0x16]\n" + " add r0, r2, r7\n" + " lsl r0, r0, #0x3\n" + " mov r4, r8\n" + " add r1, r0, r4\n" + " ldrh r0, [r1, #0x16]\n" + " mov r6, #0x80\n" + " lsl r6, r6, #0x8\n" + " cmp r0, r6\n" + " bhi ._77 @cond_branch\n" + " b ._117\n" + "._77:\n" + " strh r6, [r1, #0x16]\n" + " b ._117\n" + "._66:\n" + " mov r0, #0x10\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._80 @cond_branch\n" + " ldr r1, ._84\n" + " lsl r2, r6, #0x2\n" + " add r0, r2, r6\n" + " lsl r0, r0, #0x3\n" + " add r3, r0, r1\n" + " mov r5, #0x18\n" + " ldsh r0, [r3, r5]\n" + " mov r8, r1\n" + " cmp r0, #0\n" + " beq ._81 @cond_branch\n" + " ldrh r1, [r4, #0x2c]\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._82 @cond_branch\n" + " ldrh r0, [r3, #0x14]\n" + " sub r0, r0, #0x10\n" + " b ._83\n" + "._85:\n" + " .align 2, 0\n" + "._84:\n" + " .word gTasks\n" + "._82:\n" + " ldrh r0, [r3, #0x14]\n" + " sub r0, r0, #0x1\n" + "._83:\n" + " strh r0, [r3, #0x14]\n" + " add r0, r2, r7\n" + " lsl r0, r0, #0x3\n" + " mov r2, r8\n" + " add r1, r0, r2\n" + " mov r4, #0x14\n" + " ldsh r0, [r1, r4]\n" + " cmp r0, #0xff\n" + " ble ._86 @cond_branch\n" + " b ._117\n" + "._86:\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " strh r0, [r1, #0x14]\n" + " b ._117\n" + "._81:\n" + " ldrh r1, [r4, #0x2c]\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._89 @cond_branch\n" + " ldrh r0, [r3, #0x16]\n" + " sub r0, r0, #0x10\n" + " b ._90\n" + "._89:\n" + " ldrh r0, [r3, #0x16]\n" + " sub r0, r0, #0x1\n" + "._90:\n" + " strh r0, [r3, #0x16]\n" + " add r0, r2, r7\n" + " lsl r0, r0, #0x3\n" + " mov r5, r8\n" + " add r1, r0, r5\n" + " mov r2, #0x16\n" + " ldsh r0, [r1, r2]\n" + " cmp r0, #0xff\n" + " ble ._91 @cond_branch\n" + " b ._117\n" + "._91:\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " strh r0, [r1, #0x16]\n" + " b ._117\n" + "._80:\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._94 @cond_branch\n" + " ldr r0, ._97\n" + " lsl r1, r6, #0x2\n" + " add r1, r1, r6\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " mov r4, #0x18\n" + " ldsh r0, [r1, r4]\n" + " cmp r0, #0\n" + " beq ._95 @cond_branch\n" + " ldrh r0, [r1, #0x10]\n" + " sub r0, r0, #0x1\n" + " strh r0, [r1, #0x10]\n" + " b ._117\n" + "._98:\n" + " .align 2, 0\n" + "._97:\n" + " .word gTasks\n" + "._95:\n" + " ldrh r0, [r1, #0x12]\n" + " sub r0, r0, #0x1\n" + " strh r0, [r1, #0x12]\n" + " b ._117\n" + "._94:\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._100 @cond_branch\n" + " ldr r0, ._103\n" + " lsl r1, r6, #0x2\n" + " add r1, r1, r6\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " mov r5, #0x18\n" + " ldsh r0, [r1, r5]\n" + " cmp r0, #0\n" + " beq ._101 @cond_branch\n" + " ldrh r0, [r1, #0x10]\n" + " add r0, r0, #0x1\n" + " strh r0, [r1, #0x10]\n" + " b ._117\n" + "._104:\n" + " .align 2, 0\n" + "._103:\n" + " .word gTasks\n" + "._101:\n" + " ldrh r0, [r1, #0x12]\n" + " add r0, r0, #0x1\n" + " strh r0, [r1, #0x12]\n" + " b ._117\n" + "._100:\n" + " mov r0, #0x8\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._106 @cond_branch\n" + " ldr r2, ._109\n" + " lsl r3, r6, #0x2\n" + " add r0, r3, r6\n" + " lsl r0, r0, #0x3\n" + " add r6, r0, r2\n" + " ldrh r4, [r6, #0x8]\n" + " mov r0, #0x8\n" + " ldsh r1, [r6, r0]\n" + " ldr r0, ._109 + 4\n" + " mov r8, r2\n" + " add r2, r3, #0\n" + " cmp r1, r0\n" + " bgt ._107 @cond_branch\n" + " add r0, r4, #1\n" + " strh r0, [r6, #0x8]\n" + " b ._108\n" + "._110:\n" + " .align 2, 0\n" + "._109:\n" + " .word gTasks\n" + " .word 0x181\n" + "._107:\n" + " strh r5, [r6, #0x8]\n" + "._108:\n" + " add r4, r2, r7\n" + " lsl r4, r4, #0x3\n" + " add r4, r4, r8\n" + " mov r2, #0xc\n" + " ldsh r1, [r4, r2]\n" + " b ._111\n" + "._106:\n" + " mov r0, #0x4\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._112 @cond_branch\n" + " ldr r1, ._115\n" + " lsl r2, r6, #0x2\n" + " add r0, r2, r6\n" + " lsl r0, r0, #0x3\n" + " add r3, r0, r1\n" + " ldrh r6, [r3, #0x8]\n" + " mov r4, #0x8\n" + " ldsh r0, [r3, r4]\n" + " mov r8, r1\n" + " cmp r0, #0x1\n" + " ble ._113 @cond_branch\n" + " sub r0, r6, #1\n" + " b ._114\n" + "._116:\n" + " .align 2, 0\n" + "._115:\n" + " .word gTasks\n" + "._113:\n" + " mov r0, #0xc1\n" + " lsl r0, r0, #0x1\n" + "._114:\n" + " strh r0, [r3, #0x8]\n" + " add r4, r2, r7\n" + " lsl r4, r4, #0x3\n" + " add r4, r4, r8\n" + " mov r5, #0xc\n" + " ldsh r1, [r4, r5]\n" + "._111:\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " ldr r5, ._118\n" + " add r0, r0, r5\n" + " bl DestroySprite\n" + " mov r0, #0xe\n" + " ldsh r1, [r4, r0]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r5\n" + " bl DestroySprite\n" + " ldr r0, ._118 + 4\n" + " str r0, [r4]\n" + " b ._117\n" + "._119:\n" + " .align 2, 0\n" + "._118:\n" + " .word gSprites\n" + " .word debug_80C3A50+1\n" + "._112:\n" + " ldr r0, ._120\n" + " lsl r5, r7, #0x2\n" + " add r5, r5, r7\n" + " lsl r5, r5, #0x3\n" + " add r5, r5, r0\n" + " ldrh r4, [r5, #0x16]\n" + " ldrh r6, [r5, #0x12]\n" + " str r4, [sp]\n" + " mov r0, #0x1\n" + " add r1, r4, #0\n" + " mov r2, #0x0\n" + " mov r3, #0x0\n" + " bl SetOamMatrix\n" + " add r0, r4, #0\n" + " mov r1, #0x1\n" + " mov r2, #0x3\n" + " mov r3, #0x4\n" + " bl debug_80C68CC\n" + " add r0, r6, #0\n" + " mov r1, #0x1\n" + " mov r2, #0x7\n" + " mov r3, #0x4\n" + " bl debug_80C68CC\n" + " ldr r2, ._120 + 4\n" + " mov r8, r2\n" + " mov r4, #0xc\n" + " ldsh r1, [r5, r4]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r8\n" + " strh r6, [r0, #0x26]\n" + " ldrh r4, [r5, #0x14]\n" + " ldrh r6, [r5, #0x10]\n" + " str r4, [sp]\n" + " mov r0, #0x2\n" + " add r1, r4, #0\n" + " mov r2, #0x0\n" + " mov r3, #0x0\n" + " bl SetOamMatrix\n" + " add r0, r4, #0\n" + " mov r1, #0x19\n" + " mov r2, #0x3\n" + " mov r3, #0x4\n" + " bl debug_80C68CC\n" + " add r0, r6, #0\n" + " mov r1, #0x19\n" + " mov r2, #0x7\n" + " mov r3, #0x4\n" + " bl debug_80C68CC\n" + " mov r0, #0xe\n" + " ldsh r1, [r5, r0]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r8\n" + " strh r6, [r0, #0x26]\n" + " ldr r2, ._120 + 8\n" + " mov r4, #0x18\n" + " ldsh r1, [r5, r4]\n" + " lsl r1, r1, #0x6\n" + " add r0, r1, #0\n" + " add r0, r0, #0x38\n" + " lsl r0, r0, #0x8\n" + " add r1, r1, #0x78\n" + " add r0, r0, r1\n" + " strh r0, [r2]\n" + "._117:\n" + " add sp, sp, #0x4\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._121:\n" + " .align 2, 0\n" + "._120:\n" + " .word gTasks\n" + " .word gSprites\n" + " .word 0x4000040\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C405C() +{ + asm( + " push {r4, r5, lr}\n" + " add r4, r0, #0\n" + " lsl r1, r1, #0x10\n" + " lsr r5, r1, #0x10\n" + " mov r2, #0x0\n" + " mov r1, #0x0\n" + "._122:\n" + " add r0, r4, r2\n" + " strb r1, [r0]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x9\n" + " bls ._122 @cond_branch\n" + " add r0, r4, r2\n" + " mov r1, #0xff\n" + " strb r1, [r0]\n" + " mov r0, #0xae\n" + " strb r0, [r4]\n" + " cmp r5, #0\n" + " beq ._125 @cond_branch\n" + " mov r2, #0x0\n" + " ldr r3, ._127\n" + " mov r0, #0xb\n" + " add r1, r5, #0\n" + " mul r1, r1, r0\n" + " add r0, r1, r3\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " beq ._125 @cond_branch\n" + " add r5, r3, #0\n" + " add r3, r1, #0\n" + "._126:\n" + " add r1, r4, r2\n" + " add r0, r2, r3\n" + " add r0, r0, r5\n" + " ldrb r0, [r0]\n" + " strb r0, [r1]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " add r0, r2, r3\n" + " add r0, r0, r5\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " beq ._125 @cond_branch\n" + " cmp r2, #0x9\n" + " bls ._126 @cond_branch\n" + "._125:\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "._128:\n" + " .align 2, 0\n" + "._127:\n" + " .word gSpeciesNames\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C40C4() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + " mov r5, #0x0\n" + " mov r6, sp\n" + "._135:\n" + " cmp r7, #0\n" + " beq ._129 @cond_branch\n" + " mov r0, #0x64\n" + " add r1, r5, #0\n" + " mul r1, r1, r0\n" + " ldr r0, ._132\n" + " add r4, r1, r0\n" + " add r0, r4, #0\n" + " mov r1, #0xb\n" + " bl GetMonData\n" + " cmp r0, #0\n" + " beq ._134 @cond_branch\n" + " add r0, r4, #0\n" + " bl CalculateMonStats\n" + " add r0, r4, #0\n" + " mov r1, #0x3a\n" + " bl GetMonData\n" + " strh r0, [r6]\n" + " add r0, r4, #0\n" + " mov r1, #0x39\n" + " mov r2, sp\n" + " bl SetMonData\n" + " b ._134\n" + "._133:\n" + " .align 2, 0\n" + "._132:\n" + " .word gEnemyParty\n" + "._129:\n" + " mov r0, #0x64\n" + " add r1, r5, #0\n" + " mul r1, r1, r0\n" + " ldr r0, ._136\n" + " add r4, r1, r0\n" + " add r0, r4, #0\n" + " mov r1, #0xb\n" + " bl GetMonData\n" + " cmp r0, #0\n" + " beq ._134 @cond_branch\n" + " add r0, r4, #0\n" + " bl CalculateMonStats\n" + " add r0, r4, #0\n" + " mov r1, #0x3a\n" + " bl GetMonData\n" + " strh r0, [r6]\n" + " add r0, r4, #0\n" + " mov r1, #0x39\n" + " mov r2, sp\n" + " bl SetMonData\n" + "._134:\n" + " add r0, r5, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r5, r0, #0x18\n" + " cmp r5, #0x5\n" + " bls ._135 @cond_branch\n" + " add sp, sp, #0x4\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._137:\n" + " .align 2, 0\n" + "._136:\n" + " .word gPlayerParty\n" + "\n" + ); +} + +__attribute__((naked)) +void InitBattleForDebug() +{ + asm( + " push {lr}\n" + " bl SavePlayerParty\n" + " ldr r1, ._138\n" + " ldr r0, ._138 + 4\n" + " ldrb r2, [r0, #0x8]\n" + " mov r0, #0x0\n" + " strb r2, [r1, #0xd]\n" + " strb r0, [r1]\n" + " strb r0, [r1, #0x1]\n" + " strb r0, [r1, #0x2]\n" + " strb r0, [r1, #0x3]\n" + " strb r0, [r1, #0x4]\n" + " strb r0, [r1, #0x5]\n" + " strb r0, [r1, #0x6]\n" + " strb r0, [r1, #0x7]\n" + " strb r0, [r1, #0x8]\n" + " strb r0, [r1, #0xc]\n" + " ldr r1, ._138 + 8\n" + " str r0, [r1]\n" + " bl ZeroPlayerPartyMons\n" + " bl ZeroEnemyPartyMons\n" + " mov r0, #0x0\n" + " bl debug_80C4214\n" + " ldr r0, ._138 + 12\n" + " mov r1, #0x0\n" + " bl CreateTask\n" + " pop {r0}\n" + " bx r0\n" + "._139:\n" + " .align 2, 0\n" + "._138:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gSaveBlock2\n" + " .word byte_3005E30\n" + " .word debug_80C47BC+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C41A8() +{ + asm( + " push {lr}\n" + " ldr r1, ._140\n" + " mov r0, #0x0\n" + " strb r0, [r1, #0x1]\n" + " strb r0, [r1, #0x2]\n" + " bl ZeroPlayerPartyMons\n" + " bl ZeroEnemyPartyMons\n" + " mov r0, #0x0\n" + " bl debug_80C4214\n" + " ldr r0, ._140 + 4\n" + " mov r1, #0x0\n" + " bl CreateTask\n" + " pop {r0}\n" + " bx r0\n" + "._141:\n" + " .align 2, 0\n" + "._140:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word debug_80C47BC+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C41D4() +{ + asm( + " push {lr}\n" + " mov r0, #0x0\n" + " bl debug_80C40C4\n" + " mov r0, #0x0\n" + " bl debug_80C4214\n" + " ldr r0, ._142\n" + " mov r1, #0x0\n" + " bl CreateTask\n" + " pop {r0}\n" + " bx r0\n" + "._143:\n" + " .align 2, 0\n" + "._142:\n" + " .word debug_80C42B8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C41F4() +{ + asm( + " push {lr}\n" + " mov r0, #0x1\n" + " bl debug_80C40C4\n" + " mov r0, #0x1\n" + " bl debug_80C4214\n" + " ldr r0, ._144\n" + " mov r1, #0x0\n" + " bl CreateTask\n" + " pop {r0}\n" + " bx r0\n" + "._145:\n" + " .align 2, 0\n" + "._144:\n" + " .word debug_80C42B8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4214() +{ + asm( + " push {r4, r5, r6, lr}\n" + " bl debug_80C35DC\n" + " ldr r6, ._146\n" + " mov r4, #0x0\n" + " strh r4, [r6]\n" + " ldr r5, ._146 + 4\n" + " strh r4, [r5]\n" + " ldr r0, ._146 + 8\n" + " strh r4, [r0]\n" + " add r0, r0, #0x4\n" + " strh r4, [r0]\n" + " ldr r1, ._146 + 12\n" + " ldr r2, ._146 + 16\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x2\n" + " mov r0, #0x31\n" + " strh r0, [r1]\n" + " add r1, r1, #0x6\n" + " mov r0, #0xe1\n" + " strh r0, [r1]\n" + " ldr r0, ._146 + 20\n" + " strh r4, [r0]\n" + " add r1, r1, #0x4\n" + " mov r0, #0x7\n" + " strh r0, [r1]\n" + " ldr r3, ._146 + 24\n" + " ldrh r2, [r3]\n" + " strh r4, [r3]\n" + " ldr r4, ._146 + 28\n" + " ldrh r0, [r4]\n" + " mov r1, #0x1\n" + " orr r0, r0, r1\n" + " strh r0, [r4]\n" + " strh r2, [r3]\n" + " ldr r0, ._146 + 32\n" + " bl SetVBlankCallback\n" + " ldr r0, ._146 + 36\n" + " bl SetMainCallback2\n" + " mov r1, #0x80\n" + " lsl r1, r1, #0x13\n" + " ldr r2, ._146 + 40\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._146 + 44\n" + " add r0, r1, #0\n" + " strh r0, [r6]\n" + " ldr r2, ._146 + 48\n" + " add r0, r2, #0\n" + " strh r0, [r5]\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._147:\n" + " .align 2, 0\n" + "._146:\n" + " .word 0x4000040\n" + " .word 0x4000044\n" + " .word 0x4000042\n" + " .word 0x4000048\n" + " .word 0x1111\n" + " .word 0x4000052\n" + " .word 0x4000208\n" + " .word 0x4000200\n" + " .word debug_80C3758+1\n" + " .word debug_80C370C+1\n" + " .word 0x7140\n" + " .word 0x1ef\n" + " .word 0x819f\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C42B8() +{ + asm( + " push {r4, r5, lr}\n" + " add sp, sp, #0xffffffe4\n" + " lsl r0, r0, #0x18\n" + " lsr r5, r0, #0x18\n" + " ldr r1, ._150\n" + " mov r0, sp\n" + " mov r2, #0xc\n" + " bl memcpy\n" + " add r4, sp, #0xc\n" + " ldr r1, ._150 + 4\n" + " add r0, r4, #0\n" + " mov r2, #0xd\n" + " bl memcpy\n" + " mov r0, #0x0\n" + " mov r1, #0x10\n" + " mov r2, #0x1d\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r0, sp\n" + " mov r1, #0x1\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " add r0, r4, #0\n" + " mov r1, #0x14\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " bl debug_80C4694\n" + " bl debug_80C4704\n" + " ldr r0, ._150 + 8\n" + " ldrb r0, [r0]\n" + " cmp r0, #0\n" + " beq ._148 @cond_branch\n" + " ldr r0, ._150 + 12\n" + " lsl r1, r5, #0x2\n" + " add r1, r1, r5\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._150 + 16\n" + " b ._149\n" + "._151:\n" + " .align 2, 0\n" + "._150:\n" + " .word gUnknown_Debug_083F8194\n" + " .word gUnknown_Debug_083F81A0\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gTasks\n" + " .word debug_80C44EC+1\n" + "._148:\n" + " ldr r0, ._152\n" + " lsl r1, r5, #0x2\n" + " add r1, r1, r5\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._152 + 4\n" + "._149:\n" + " str r0, [r1]\n" + " add sp, sp, #0x1c\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "._153:\n" + " .align 2, 0\n" + "._152:\n" + " .word gTasks\n" + " .word debug_80C4348+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4348() +{ + asm( + " push {r4, lr}\n" + " add sp, sp, #0xfffffffc\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " ldr r0, ._154\n" + " ldrb r0, [r0, #0x1]\n" + " lsl r0, r0, #0x19\n" + " mov r1, #0xc0\n" + " lsl r1, r1, #0x12\n" + " add r0, r0, r1\n" + " lsr r0, r0, #0x18\n" + " mov r1, #0x1\n" + " str r1, [sp]\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r1, ._154 + 4\n" + " ldr r2, ._154 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " add r2, r2, #0x8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._154 + 12\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._154 + 16\n" + " str r1, [r0]\n" + " add sp, sp, #0x4\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._155:\n" + " .align 2, 0\n" + "._154:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word 0x4000042\n" + " .word 0x177\n" + " .word gTasks\n" + " .word debug_80C43A8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C43A8() +{ + asm( + " push {r4, r5, lr}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " ldr r1, ._158\n" + " ldrh r2, [r1, #0x2e]\n" + " mov r0, #0x1\n" + " and r0, r0, r2\n" + " add r3, r1, #0\n" + " cmp r0, #0\n" + " beq ._156 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " ldr r0, ._158 + 4\n" + " ldrb r1, [r0, #0x1]\n" + " mov r0, #0x64\n" + " mul r0, r0, r1\n" + " ldr r1, ._158 + 8\n" + " add r0, r0, r1\n" + " ldr r1, ._158 + 12\n" + " bl debug_sub_80A433C\n" + " add r0, r4, #0\n" + " bl DestroyTask\n" + " b ._180\n" + "._159:\n" + " .align 2, 0\n" + "._158:\n" + " .word gMain\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gPlayerParty\n" + " .word debug_80C41D4+1\n" + "._156:\n" + " mov r0, #0x2\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._160 @cond_branch\n" + " ldr r0, ._162\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._162 + 4\n" + " str r0, [r1]\n" + " b ._180\n" + "._163:\n" + " .align 2, 0\n" + "._162:\n" + " .word gTasks\n" + " .word debug_80C4F48+1\n" + "._160:\n" + " mov r0, #0x8\n" + " and r0, r0, r2\n" + " lsl r0, r0, #0x10\n" + " lsr r1, r0, #0x10\n" + " cmp r1, #0\n" + " beq ._164 @cond_branch\n" + " bl debug_80C4774\n" + " lsl r0, r0, #0x18\n" + " cmp r0, #0\n" + " beq ._180 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " bl CalculatePlayerPartyCount\n" + " bl CalculateEnemyPartyCount\n" + " ldr r0, ._167\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._167 + 4\n" + " str r0, [r1]\n" + " b ._180\n" + "._168:\n" + " .align 2, 0\n" + "._167:\n" + " .word gTasks\n" + " .word debug_80C4D14+1\n" + "._164:\n" + " mov r0, #0x88\n" + " lsl r0, r0, #0x1\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._169 @cond_branch\n" + " str r1, [sp]\n" + " mov r0, #0x0\n" + " mov r1, #0x1\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r0, ._171\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._171 + 4\n" + " str r0, [r1]\n" + " b ._180\n" + "._172:\n" + " .align 2, 0\n" + "._171:\n" + " .word gTasks\n" + " .word debug_80C44EC+1\n" + "._169:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._174 @cond_branch\n" + " ldr r1, ._176\n" + " ldrb r0, [r1, #0x1]\n" + " cmp r0, #0\n" + " beq ._174 @cond_branch\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1, #0x1]\n" + " b ._175\n" + "._177:\n" + " .align 2, 0\n" + "._176:\n" + " .word unk_debug_ewram_0+0x20\n" + "._174:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._180 @cond_branch\n" + " ldr r5, ._181\n" + " ldrb r0, [r5, #0x1]\n" + " cmp r0, #0x4\n" + " bhi ._180 @cond_branch\n" + " add r1, r0, #0\n" + " mov r0, #0x64\n" + " mul r0, r0, r1\n" + " ldr r1, ._181 + 4\n" + " add r0, r0, r1\n" + " mov r1, #0xb\n" + " bl GetMonData\n" + " cmp r0, #0\n" + " beq ._180 @cond_branch\n" + " ldrb r0, [r5, #0x1]\n" + " add r0, r0, #0x1\n" + " strb r0, [r5, #0x1]\n" + "._175:\n" + " ldr r1, ._181 + 8\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._181 + 12\n" + " str r1, [r0]\n" + "._180:\n" + " add sp, sp, #0x4\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "._182:\n" + " .align 2, 0\n" + "._181:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gPlayerParty\n" + " .word gTasks\n" + " .word debug_80C4348+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C44EC() +{ + asm( + " push {r4, lr}\n" + " add sp, sp, #0xfffffffc\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " ldr r0, ._183\n" + " ldrb r0, [r0, #0x2]\n" + " lsl r0, r0, #0x19\n" + " mov r1, #0xc0\n" + " lsl r1, r1, #0x12\n" + " add r0, r0, r1\n" + " lsr r0, r0, #0x18\n" + " mov r1, #0x1\n" + " str r1, [sp]\n" + " mov r1, #0x10\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r1, ._183 + 4\n" + " ldr r2, ._183 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._183 + 12\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._183 + 16\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._183 + 20\n" + " str r1, [r0]\n" + " add sp, sp, #0x4\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._184:\n" + " .align 2, 0\n" + "._183:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word 0x4000042\n" + " .word 0x79ef\n" + " .word 0x17f\n" + " .word gTasks\n" + " .word debug_80C4550+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4550() +{ + asm( + " push {r4, r5, lr}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " ldr r1, ._187\n" + " ldrh r2, [r1, #0x2e]\n" + " mov r0, #0x1\n" + " and r0, r0, r2\n" + " add r3, r1, #0\n" + " cmp r0, #0\n" + " beq ._185 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " ldr r0, ._187 + 4\n" + " ldrb r1, [r0, #0x2]\n" + " mov r0, #0x64\n" + " mul r0, r0, r1\n" + " ldr r1, ._187 + 8\n" + " add r0, r0, r1\n" + " ldr r1, ._187 + 12\n" + " bl debug_sub_80A433C\n" + " add r0, r4, #0\n" + " bl DestroyTask\n" + " b ._209\n" + "._188:\n" + " .align 2, 0\n" + "._187:\n" + " .word gMain\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gEnemyParty\n" + " .word debug_80C41F4+1\n" + "._185:\n" + " mov r0, #0x2\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._189 @cond_branch\n" + " ldr r0, ._191\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._191 + 4\n" + " str r0, [r1]\n" + " b ._209\n" + "._192:\n" + " .align 2, 0\n" + "._191:\n" + " .word gTasks\n" + " .word debug_80C4F48+1\n" + "._189:\n" + " mov r0, #0x8\n" + " and r0, r0, r2\n" + " lsl r0, r0, #0x10\n" + " lsr r1, r0, #0x10\n" + " cmp r1, #0\n" + " beq ._193 @cond_branch\n" + " bl debug_80C4774\n" + " lsl r0, r0, #0x18\n" + " cmp r0, #0\n" + " beq ._209 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " bl CalculatePlayerPartyCount\n" + " bl CalculateEnemyPartyCount\n" + " ldr r0, ._196\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._196 + 4\n" + " str r0, [r1]\n" + " b ._209\n" + "._197:\n" + " .align 2, 0\n" + "._196:\n" + " .word gTasks\n" + " .word debug_80C4D14+1\n" + "._193:\n" + " mov r0, #0x88\n" + " lsl r0, r0, #0x2\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._198 @cond_branch\n" + " str r1, [sp]\n" + " mov r0, #0x0\n" + " mov r1, #0x10\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r0, ._200\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._200 + 4\n" + " str r0, [r1]\n" + " b ._209\n" + "._201:\n" + " .align 2, 0\n" + "._200:\n" + " .word gTasks\n" + " .word debug_80C4348+1\n" + "._198:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._203 @cond_branch\n" + " ldr r1, ._205\n" + " ldrb r0, [r1, #0x2]\n" + " cmp r0, #0\n" + " beq ._203 @cond_branch\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1, #0x2]\n" + " b ._204\n" + "._206:\n" + " .align 2, 0\n" + "._205:\n" + " .word unk_debug_ewram_0+0x20\n" + "._203:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._209 @cond_branch\n" + " ldr r5, ._210\n" + " ldrb r0, [r5, #0x2]\n" + " cmp r0, #0x4\n" + " bhi ._209 @cond_branch\n" + " add r1, r0, #0\n" + " mov r0, #0x64\n" + " mul r0, r0, r1\n" + " ldr r1, ._210 + 4\n" + " add r0, r0, r1\n" + " mov r1, #0xb\n" + " bl GetMonData\n" + " cmp r0, #0\n" + " beq ._209 @cond_branch\n" + " ldrb r0, [r5, #0x2]\n" + " add r0, r0, #0x1\n" + " strb r0, [r5, #0x2]\n" + "._204:\n" + " ldr r1, ._210 + 8\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._210 + 12\n" + " str r1, [r0]\n" + "._209:\n" + " add sp, sp, #0x4\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "._211:\n" + " .align 2, 0\n" + "._210:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gEnemyParty\n" + " .word gTasks\n" + " .word debug_80C44EC+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4694() +{ + asm( + " push {r4, r5, lr}\n" + " add sp, sp, #0xffffffe4\n" + " ldr r1, ._213\n" + " mov r0, sp\n" + " mov r2, #0xd\n" + " bl memcpy\n" + " mov r0, #0x0\n" + " mov r1, #0x0\n" + " mov r2, #0xe\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " mov r0, sp\n" + " mov r1, #0x2\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " mov r4, #0x0\n" + " add r5, sp, #0x10\n" + "._212:\n" + " mov r0, #0x64\n" + " mul r0, r0, r4\n" + " ldr r1, ._213 + 4\n" + " add r0, r0, r1\n" + " mov r1, #0xb\n" + " bl GetMonData\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x10\n" + " lsr r1, r1, #0x10\n" + " add r0, r5, #0\n" + " bl debug_80C405C\n" + " lsl r2, r4, #0x19\n" + " mov r0, #0xc0\n" + " lsl r0, r0, #0x12\n" + " add r2, r2, r0\n" + " lsr r2, r2, #0x18\n" + " add r0, r5, #0\n" + " mov r1, #0x2\n" + " bl MenuPrint\n" + " add r0, r4, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " cmp r4, #0x5\n" + " bls ._212 @cond_branch\n" + " add sp, sp, #0x1c\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "._214:\n" + " .align 2, 0\n" + "._213:\n" + " .word gUnknown_Debug_083F81AD\n" + " .word gPlayerParty\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4704() +{ + asm( + " push {r4, r5, lr}\n" + " add sp, sp, #0xffffffe4\n" + " ldr r1, ._216\n" + " mov r0, sp\n" + " mov r2, #0xd\n" + " bl memcpy\n" + " mov r0, #0xf\n" + " mov r1, #0x0\n" + " mov r2, #0x1d\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " mov r0, sp\n" + " mov r1, #0x11\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " mov r4, #0x0\n" + " add r5, sp, #0x10\n" + "._215:\n" + " mov r0, #0x64\n" + " mul r0, r0, r4\n" + " ldr r1, ._216 + 4\n" + " add r0, r0, r1\n" + " mov r1, #0xb\n" + " bl GetMonData\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x10\n" + " lsr r1, r1, #0x10\n" + " add r0, r5, #0\n" + " bl debug_80C405C\n" + " lsl r2, r4, #0x19\n" + " mov r0, #0xc0\n" + " lsl r0, r0, #0x12\n" + " add r2, r2, r0\n" + " lsr r2, r2, #0x18\n" + " add r0, r5, #0\n" + " mov r1, #0x11\n" + " bl MenuPrint\n" + " add r0, r4, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " cmp r4, #0x5\n" + " bls ._215 @cond_branch\n" + " add sp, sp, #0x1c\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "._217:\n" + " .align 2, 0\n" + "._216:\n" + " .word gUnknown_Debug_083F81BA\n" + " .word gEnemyParty\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4774() +{ + asm( + " push {r4, lr}\n" + " ldr r0, ._221\n" + " ldrb r0, [r0, #0xc]\n" + " sub r0, r0, #0x1\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " mov r1, #0x64\n" + " add r4, r0, #0\n" + " mul r4, r4, r1\n" + " ldr r0, ._221 + 4\n" + " add r0, r4, r0\n" + " mov r1, #0xb\n" + " bl GetMonData\n" + " cmp r0, #0\n" + " beq ._219 @cond_branch\n" + " ldr r0, ._221 + 8\n" + " add r0, r4, r0\n" + " mov r1, #0xb\n" + " bl GetMonData\n" + " cmp r0, #0\n" + " beq ._219 @cond_branch\n" + " mov r0, #0x1\n" + " b ._220\n" + "._222:\n" + " .align 2, 0\n" + "._221:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gPlayerParty\n" + " .word gEnemyParty\n" + "._219:\n" + " mov r0, #0x0\n" + "._220:\n" + " pop {r4}\n" + " pop {r1}\n" + " bx r1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C47BC() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " add sp, sp, #0xffffffc0\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + " ldr r1, ._224\n" + " mov r0, sp\n" + " mov r2, #0xf\n" + " bl memcpy\n" + " add r4, sp, #0x10\n" + " ldr r1, ._224 + 4\n" + " add r0, r4, #0\n" + " mov r2, #0xd\n" + " bl memcpy\n" + " add r6, sp, #0x20\n" + " ldr r1, ._224 + 8\n" + " add r0, r6, #0\n" + " mov r2, #0xf\n" + " bl memcpy\n" + " add r5, sp, #0x30\n" + " ldr r1, ._224 + 12\n" + " add r0, r5, #0\n" + " mov r2, #0x10\n" + " bl memcpy\n" + " mov r0, #0x0\n" + " mov r1, #0x10\n" + " mov r2, #0x1d\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r0, sp\n" + " mov r1, #0x1\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " add r0, r4, #0\n" + " mov r1, #0x14\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " mov r0, #0x0\n" + " mov r1, #0x0\n" + " mov r2, #0xe\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " add r0, r6, #0\n" + " mov r1, #0x2\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " mov r4, #0x0\n" + " ldr r6, ._224 + 16\n" + "._223:\n" + " lsl r0, r4, #0x3\n" + " add r0, r0, r6\n" + " ldr r0, [r0]\n" + " lsl r2, r4, #0x19\n" + " mov r1, #0xc0\n" + " lsl r1, r1, #0x12\n" + " add r2, r2, r1\n" + " lsr r2, r2, #0x18\n" + " mov r1, #0x2\n" + " bl MenuPrint\n" + " add r0, r4, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " cmp r4, #0x4\n" + " bls ._223 @cond_branch\n" + " mov r0, #0xf\n" + " mov r1, #0x0\n" + " mov r2, #0x1d\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " add r0, r5, #0\n" + " mov r1, #0x11\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " ldr r0, ._224 + 20\n" + " ldrb r0, [r0, #0x4]\n" + " bl debug_80C4C44\n" + " ldr r1, ._224 + 24\n" + " lsl r0, r7, #0x2\n" + " add r0, r0, r7\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._224 + 28\n" + " str r1, [r0]\n" + " add sp, sp, #0x40\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._225:\n" + " .align 2, 0\n" + "._224:\n" + " .word gUnknown_Debug_083F81C7\n" + " .word gUnknown_Debug_083F81A0\n" + " .word gUnknown_Debug_083F81D6\n" + " .word gUnknown_Debug_083F81E5\n" + " .word gUnknown_Debug_083F8068\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gTasks\n" + " .word debug_80C48A0+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C48A0() +{ + asm( + " push {r4, lr}\n" + " add sp, sp, #0xfffffffc\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " ldr r0, ._226\n" + " ldrb r0, [r0, #0x3]\n" + " lsl r0, r0, #0x19\n" + " mov r1, #0xc0\n" + " lsl r1, r1, #0x12\n" + " add r0, r0, r1\n" + " lsr r0, r0, #0x18\n" + " mov r1, #0x1\n" + " str r1, [sp]\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r1, ._226 + 4\n" + " ldr r2, ._226 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " add r2, r2, #0x8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._226 + 12\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._226 + 16\n" + " str r1, [r0]\n" + " add sp, sp, #0x4\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._227:\n" + " .align 2, 0\n" + "._226:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word 0x4000042\n" + " .word 0x177\n" + " .word gTasks\n" + " .word debug_80C4900+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4900() +{ + asm( + " push {r4, r5, lr}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r5, r0, #0x18\n" + " ldr r1, ._230\n" + " ldrh r2, [r1, #0x2e]\n" + " mov r0, #0x2\n" + " and r0, r0, r2\n" + " lsl r0, r0, #0x10\n" + " lsr r4, r0, #0x10\n" + " add r3, r1, #0\n" + " cmp r4, #0\n" + " beq ._228 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " mov r4, #0x0\n" + " str r4, [sp]\n" + " mov r1, #0x0\n" + " mov r2, #0x0\n" + " mov r3, #0x10\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._230 + 4\n" + " bl SetMainCallback2\n" + " bl LoadPlayerParty\n" + " ldr r1, ._230 + 8\n" + " ldr r0, ._230 + 12\n" + " ldrb r0, [r0, #0xd]\n" + " strb r0, [r1, #0x8]\n" + " ldr r0, ._230 + 16\n" + " mov r1, #0x0\n" + " strh r4, [r0]\n" + " ldr r0, ._230 + 20\n" + " strb r1, [r0]\n" + " ldr r1, ._230 + 24\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._230 + 28\n" + " b ._229\n" + "._231:\n" + " .align 2, 0\n" + "._230:\n" + " .word gMain\n" + " .word debug_80C370C+1\n" + " .word gSaveBlock2\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gBattleTypeFlags\n" + " .word gUnknown_02023A14_50\n" + " .word gTasks\n" + " .word debug_80C373C+1\n" + "._228:\n" + " mov r0, #0x8\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " bne ._232 @cond_branch\n" + " mov r0, #0x1\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._233 @cond_branch\n" + "._232:\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " ldr r1, ._236\n" + " ldr r3, ._236 + 4\n" + " ldr r2, ._236 + 8\n" + " ldrb r0, [r2, #0x3]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r3\n" + " ldrb r0, [r0, #0x4]\n" + " strh r0, [r1]\n" + " ldr r1, ._236 + 12\n" + " mov r0, #0x8\n" + " strb r0, [r1]\n" + " ldrb r0, [r2, #0x3]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r3\n" + " ldrb r0, [r0, #0x5]\n" + " strb r0, [r2, #0xc]\n" + " ldrb r0, [r2, #0x3]\n" + " sub r0, r0, #0x1\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " cmp r0, #0x1\n" + " bhi ._234 @cond_branch\n" + " str r4, [sp]\n" + " mov r0, #0x0\n" + " mov r1, #0x1\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r0, ._236 + 16\n" + " lsl r1, r5, #0x2\n" + " add r1, r1, r5\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._236 + 20\n" + " str r0, [r1]\n" + " b ._247\n" + "._237:\n" + " .align 2, 0\n" + "._236:\n" + " .word gBattleTypeFlags\n" + " .word gUnknown_Debug_083F8068\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_02023A14_50\n" + " .word gTasks\n" + " .word debug_80C4A60+1\n" + "._234:\n" + " ldr r0, ._239\n" + " lsl r1, r5, #0x2\n" + " add r1, r1, r5\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._239 + 4\n" + " str r0, [r1]\n" + " b ._247\n" + "._240:\n" + " .align 2, 0\n" + "._239:\n" + " .word gTasks\n" + " .word debug_80C4F48+1\n" + "._233:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._242 @cond_branch\n" + " ldr r1, ._244\n" + " ldrb r0, [r1, #0x3]\n" + " cmp r0, #0\n" + " beq ._242 @cond_branch\n" + " sub r0, r0, #0x1\n" + " b ._243\n" + "._245:\n" + " .align 2, 0\n" + "._244:\n" + " .word unk_debug_ewram_0+0x20\n" + "._242:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._247 @cond_branch\n" + " ldr r1, ._248\n" + " ldrb r0, [r1, #0x3]\n" + " cmp r0, #0x1\n" + " bhi ._247 @cond_branch\n" + " add r0, r0, #0x1\n" + "._243:\n" + " strb r0, [r1, #0x3]\n" + " ldr r1, ._248 + 4\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._248 + 8\n" + "._229:\n" + " str r1, [r0]\n" + "._247:\n" + " add sp, sp, #0x4\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "._249:\n" + " .align 2, 0\n" + "._248:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gTasks\n" + " .word debug_80C48A0+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4A60() +{ + asm( + " push {r4, lr}\n" + " add sp, sp, #0xfffffffc\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " ldr r0, ._250\n" + " ldrb r0, [r0, #0x5]\n" + " lsl r0, r0, #0x19\n" + " mov r1, #0xc0\n" + " lsl r1, r1, #0x12\n" + " add r0, r0, r1\n" + " lsr r0, r0, #0x18\n" + " mov r1, #0x1\n" + " str r1, [sp]\n" + " mov r1, #0x10\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r1, ._250 + 4\n" + " ldr r2, ._250 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._250 + 12\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._250 + 16\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._250 + 20\n" + " str r1, [r0]\n" + " add sp, sp, #0x4\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._251:\n" + " .align 2, 0\n" + "._250:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word 0x4000042\n" + " .word 0x79ef\n" + " .word 0x17f\n" + " .word gTasks\n" + " .word debug_80C4AC4+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4AC4() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r8\n" + " push {r7}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r6, r0, #0x18\n" + " ldr r7, ._255\n" + " ldrb r0, [r7, #0x4]\n" + " mov ip, r0\n" + " ldrb r5, [r7, #0x5]\n" + " mov r1, ip\n" + " add r0, r1, r5\n" + " lsl r0, r0, #0x18\n" + " lsr r1, r0, #0x18\n" + " ldr r2, ._255 + 4\n" + " mov r8, r2\n" + " ldrh r2, [r2, #0x2e]\n" + " mov r3, #0x1\n" + " and r3, r3, r2\n" + " add r4, r7, #0\n" + " cmp r3, #0\n" + " beq ._252 @cond_branch\n" + " ldr r0, ._255 + 8\n" + " lsl r1, r1, #0x3\n" + " add r0, r0, #0x4\n" + " add r1, r1, r0\n" + " ldr r1, [r1]\n" + " ldr r3, ._255 + 12\n" + " ldr r2, [r3]\n" + " add r0, r2, #0\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._253 @cond_branch\n" + " ldr r0, ._255 + 16\n" + " eor r1, r1, r0\n" + " and r2, r2, r1\n" + " b ._254\n" + "._256:\n" + " .align 2, 0\n" + "._255:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gMain\n" + " .word gUnknown_Debug_083F80D8\n" + " .word byte_3005E30\n" + " .word 0xffff\n" + "._253:\n" + " orr r2, r2, r1\n" + "._254:\n" + " str r2, [r3]\n" + " ldrb r0, [r4, #0x4]\n" + " bl debug_80C4C44\n" + " ldr r1, ._258\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._258 + 4\n" + " str r1, [r0]\n" + " b ._274\n" + "._259:\n" + " .align 2, 0\n" + "._258:\n" + " .word gTasks\n" + " .word debug_80C4A60+1\n" + "._252:\n" + " mov r0, #0x2\n" + " and r0, r0, r2\n" + " lsl r0, r0, #0x10\n" + " lsr r4, r0, #0x10\n" + " cmp r4, #0\n" + " beq ._260 @cond_branch\n" + " str r3, [sp]\n" + " mov r0, #0x0\n" + " mov r1, #0x10\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r0, ._262\n" + " lsl r1, r6, #0x2\n" + " add r1, r1, r6\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._262 + 4\n" + " b ._261\n" + "._263:\n" + " .align 2, 0\n" + "._262:\n" + " .word gTasks\n" + " .word debug_80C48A0+1\n" + "._260:\n" + " mov r0, #0x8\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._264 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " ldr r1, ._266\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x3\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._266 + 4\n" + " ldrb r2, [r1, #0x1]\n" + " mov r0, #0x11\n" + " neg r0, r0\n" + " and r0, r0, r2\n" + " strb r0, [r1, #0x1]\n" + " mov r0, #0xac\n" + " strb r0, [r1, #0x2]\n" + " mov r0, #0xff\n" + " strb r0, [r1, #0x3]\n" + " strb r4, [r1, #0x9]\n" + " strb r4, [r1, #0xa]\n" + " strb r4, [r1, #0xb]\n" + " strb r4, [r1, #0xc]\n" + " ldr r1, ._266 + 8\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._266 + 12\n" + " str r1, [r0]\n" + " b ._274\n" + "._267:\n" + " .align 2, 0\n" + "._266:\n" + " .word gTrainerBattleOpponent\n" + " .word +0x2017000\n" + " .word gTasks\n" + " .word debug_80C4F48+1\n" + "._264:\n" + " mov r0, r8\n" + " ldrh r1, [r0, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._268 @cond_branch\n" + " lsl r0, r5, #0x18\n" + " cmp r0, #0\n" + " beq ._269 @cond_branch\n" + " sub r0, r5, #1\n" + " strb r0, [r7, #0x5]\n" + " b ._277\n" + "._269:\n" + " mov r1, ip\n" + " lsl r0, r1, #0x18\n" + " cmp r0, #0\n" + " beq ._277 @cond_branch\n" + " mov r0, ip\n" + " sub r0, r0, #0x1\n" + " b ._272\n" + "._268:\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._274 @cond_branch\n" + " lsl r0, r5, #0x18\n" + " lsr r0, r0, #0x18\n" + " cmp r0, #0x8\n" + " bhi ._274 @cond_branch\n" + " cmp r0, #0x4\n" + " bhi ._275 @cond_branch\n" + " add r0, r5, #1\n" + " strb r0, [r7, #0x5]\n" + " b ._277\n" + "._275:\n" + " mov r2, ip\n" + " lsl r0, r2, #0x18\n" + " lsr r0, r0, #0x18\n" + " cmp r0, #0x3\n" + " bhi ._277 @cond_branch\n" + " mov r0, ip\n" + " add r0, r0, #0x1\n" + "._272:\n" + " strb r0, [r7, #0x4]\n" + " ldrb r0, [r7, #0x4]\n" + " bl debug_80C4C44\n" + "._277:\n" + " ldr r0, ._278\n" + " lsl r1, r6, #0x2\n" + " add r1, r1, r6\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._278 + 4\n" + "._261:\n" + " str r0, [r1]\n" + "._274:\n" + " add sp, sp, #0x4\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._279:\n" + " .align 2, 0\n" + "._278:\n" + " .word gTasks\n" + " .word debug_80C4A60+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4C44() +{ + 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, #0xfffffff0\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " mov sl, r0\n" + " mov r2, #0x0\n" + " mov r5, sp\n" + "._290:\n" + " mov r0, sl\n" + " add r6, r2, r0\n" + " add r4, r6, #0\n" + " add r1, r2, #1\n" + " mov r8, r1\n" + " cmp r4, #0x9\n" + " bgt ._280 @cond_branch\n" + " mov r3, #0x0\n" + " ldr r1, ._288\n" + " lsl r0, r4, #0x3\n" + " add r0, r0, r1\n" + " ldr r0, [r0]\n" + " ldrb r0, [r0]\n" + " ldr r7, ._288 + 4\n" + " mov r9, r7\n" + " lsl r2, r2, #0x1\n" + " mov ip, r2\n" + " cmp r0, #0xff\n" + " beq ._282 @cond_branch\n" + " add r7, r1, #0\n" + "._283:\n" + " add r0, r3, #3\n" + " mov r1, sp\n" + " add r2, r1, r0\n" + " lsl r1, r6, #0x3\n" + " add r1, r1, r7\n" + " ldr r0, [r1]\n" + " add r0, r0, r3\n" + " ldrb r0, [r0]\n" + " strb r0, [r2]\n" + " add r0, r3, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r3, r0, #0x18\n" + " ldr r0, [r1]\n" + " add r0, r0, r3\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " beq ._282 @cond_branch\n" + " cmp r3, #0xb\n" + " bls ._283 @cond_branch\n" + "._282:\n" + " cmp r3, #0xb\n" + " bhi ._284 @cond_branch\n" + " mov r1, #0x0\n" + "._285:\n" + " add r0, r3, #3\n" + " add r0, r0, sp\n" + " strb r1, [r0]\n" + " add r0, r3, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r3, r0, #0x18\n" + " cmp r3, #0xb\n" + " bls ._285 @cond_branch\n" + "._284:\n" + " mov r0, #0xff\n" + " strb r0, [r5, #0xe]\n" + " mov r0, #0xfc\n" + " strb r0, [r5]\n" + " mov r2, #0x1\n" + " strb r2, [r5, #0x1]\n" + " add r1, r2, #0\n" + " LSL r1, r4\n" + " mov r3, r9\n" + " ldr r0, [r3]\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._286 @cond_branch\n" + " mov r0, #0x3\n" + " strb r0, [r5, #0x2]\n" + " b ._287\n" + "._289:\n" + " .align 2, 0\n" + "._288:\n" + " .word gUnknown_Debug_083F80D8\n" + " .word byte_3005E30\n" + "._286:\n" + " strb r2, [r5, #0x2]\n" + "._287:\n" + " mov r2, ip\n" + " add r2, r2, #0x3\n" + " lsl r2, r2, #0x18\n" + " lsr r2, r2, #0x18\n" + " mov r0, sp\n" + " mov r1, #0x11\n" + " bl MenuPrint\n" + "._280:\n" + " mov r7, r8\n" + " lsl r0, r7, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x5\n" + " bls ._290 @cond_branch\n" + " add sp, sp, #0x10\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" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4D14() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add sp, sp, #0xffffffd0\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " ldr r1, ._291\n" + " mov r0, sp\n" + " mov r2, #0xf\n" + " bl memcpy\n" + " add r5, sp, #0x10\n" + " ldr r1, ._291 + 4\n" + " add r0, r5, #0\n" + " mov r2, #0xd\n" + " bl memcpy\n" + " add r6, sp, #0x20\n" + " ldr r1, ._291 + 8\n" + " add r0, r6, #0\n" + " mov r2, #0xf\n" + " bl memcpy\n" + " mov r0, #0x0\n" + " mov r1, #0x10\n" + " mov r2, #0x1d\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r0, sp\n" + " mov r1, #0x1\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " add r0, r5, #0\n" + " mov r1, #0x14\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " mov r0, #0x0\n" + " mov r1, #0x0\n" + " mov r2, #0xe\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " add r0, r6, #0\n" + " mov r1, #0x2\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " ldr r0, ._291 + 12\n" + " ldrb r0, [r0, #0x6]\n" + " bl debug_80C4F00\n" + " mov r0, #0xf\n" + " mov r1, #0x0\n" + " mov r2, #0x1d\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " ldr r1, ._291 + 16\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._291 + 20\n" + " str r1, [r0]\n" + " add sp, sp, #0x30\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._292:\n" + " .align 2, 0\n" + "._291:\n" + " .word gUnknown_Debug_083F81C7\n" + " .word gUnknown_Debug_083F81F5\n" + " .word gUnknown_Debug_083F8202\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gTasks\n" + " .word debug_80C4DB8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4DB8() +{ + asm( + " push {r4, lr}\n" + " add sp, sp, #0xfffffffc\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " ldr r0, ._293\n" + " ldrb r0, [r0, #0x7]\n" + " lsl r0, r0, #0x19\n" + " mov r1, #0xc0\n" + " lsl r1, r1, #0x12\n" + " add r0, r0, r1\n" + " lsr r0, r0, #0x18\n" + " mov r1, #0x1\n" + " str r1, [sp]\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r1, ._293 + 4\n" + " ldr r2, ._293 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " add r2, r2, #0x8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._293 + 12\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._293 + 16\n" + " str r1, [r0]\n" + " add sp, sp, #0x4\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._294:\n" + " .align 2, 0\n" + "._293:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word 0x4000042\n" + " .word 0x177\n" + " .word gTasks\n" + " .word debug_80C4E18+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4E18() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " ldr r5, ._297\n" + " ldrb r3, [r5, #0x6]\n" + " ldrb r2, [r5, #0x7]\n" + " add r0, r3, r2\n" + " lsl r0, r0, #0x18\n" + " lsr r6, r0, #0x18\n" + " ldr r7, ._297 + 4\n" + " ldrh r1, [r7, #0x2e]\n" + " mov r0, #0x2\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._295 @cond_branch\n" + " ldr r0, ._297 + 8\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._297 + 12\n" + " b ._296\n" + "._298:\n" + " .align 2, 0\n" + "._297:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gMain\n" + " .word gTasks\n" + " .word debug_80C42B8+1\n" + "._295:\n" + " mov r0, #0x8\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " bne ._299 @cond_branch\n" + " mov r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._300 @cond_branch\n" + "._299:\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " ldr r2, ._302\n" + " ldr r1, ._302 + 4\n" + " lsl r0, r6, #0x3\n" + " add r0, r0, r1\n" + " ldrb r0, [r0, #0x4]\n" + " strb r0, [r2]\n" + " ldr r1, ._302 + 8\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._302 + 12\n" + " str r1, [r0]\n" + " b ._310\n" + "._303:\n" + " .align 2, 0\n" + "._302:\n" + " .word gBattleTerrain\n" + " .word gUnknown_Debug_083F814C\n" + " .word gTasks\n" + " .word debug_80C5158+1\n" + "._300:\n" + " ldrh r1, [r7, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._304 @cond_branch\n" + " lsl r0, r2, #0x18\n" + " cmp r0, #0\n" + " beq ._305 @cond_branch\n" + " sub r0, r2, #1\n" + " strb r0, [r5, #0x7]\n" + " b ._313\n" + "._305:\n" + " lsl r0, r3, #0x18\n" + " cmp r0, #0\n" + " beq ._313 @cond_branch\n" + " sub r0, r3, #1\n" + " b ._308\n" + "._304:\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._310 @cond_branch\n" + " lsl r0, r2, #0x18\n" + " lsr r0, r0, #0x18\n" + " cmp r0, #0x7\n" + " bhi ._310 @cond_branch\n" + " cmp r0, #0x4\n" + " bhi ._311 @cond_branch\n" + " add r0, r2, #1\n" + " strb r0, [r5, #0x7]\n" + " b ._313\n" + "._311:\n" + " lsl r0, r3, #0x18\n" + " lsr r0, r0, #0x18\n" + " cmp r0, #0x2\n" + " bhi ._313 @cond_branch\n" + " add r0, r3, #1\n" + "._308:\n" + " strb r0, [r5, #0x6]\n" + " ldrb r0, [r5, #0x6]\n" + " bl debug_80C4F00\n" + "._313:\n" + " ldr r0, ._314\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._314 + 4\n" + "._296:\n" + " str r0, [r1]\n" + "._310:\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._315:\n" + " .align 2, 0\n" + "._314:\n" + " .word gTasks\n" + " .word debug_80C4DB8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4F00() +{ + asm( + " push {r4, r5, r6, lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r5, r0, #0x18\n" + " mov r0, #0x1\n" + " mov r1, #0x3\n" + " mov r2, #0xd\n" + " mov r3, #0xe\n" + " bl MenuFillWindowRectWithBlankTile\n" + " mov r4, #0x0\n" + " ldr r6, ._318\n" + "._317:\n" + " cmp r4, #0x8\n" + " bhi ._316 @cond_branch\n" + " add r0, r4, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r6\n" + " ldr r0, [r0]\n" + " lsl r2, r4, #0x19\n" + " mov r1, #0xc0\n" + " lsl r1, r1, #0x12\n" + " add r2, r2, r1\n" + " lsr r2, r2, #0x18\n" + " mov r1, #0x2\n" + " bl MenuPrint\n" + "._316:\n" + " add r0, r4, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " cmp r4, #0x5\n" + " bls ._317 @cond_branch\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._319:\n" + " .align 2, 0\n" + "._318:\n" + " .word gUnknown_Debug_083F814C\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C4F48() +{ + asm( + " push {r4, r5, r6, lr}\n" + " mov r6, r9\n" + " mov r5, r8\n" + " push {r5, r6}\n" + " add sp, sp, #0xffffffc4\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " ldr r1, ._320\n" + " mov r0, sp\n" + " mov r2, #0x11\n" + " bl memcpy\n" + " add r6, sp, #0x14\n" + " ldr r1, ._320 + 4\n" + " add r0, r6, #0\n" + " mov r2, #0xd\n" + " bl memcpy\n" + " add r5, sp, #0x24\n" + " ldr r1, ._320 + 8\n" + " add r0, r5, #0\n" + " mov r2, #0xd\n" + " bl memcpy\n" + " add r0, sp, #0x34\n" + " mov r9, r0\n" + " ldr r1, ._320 + 12\n" + " mov r2, #0x4\n" + " bl memcpy\n" + " add r0, sp, #0x38\n" + " mov r8, r0\n" + " ldr r1, ._320 + 16\n" + " mov r2, #0x4\n" + " bl memcpy\n" + " mov r0, #0x0\n" + " mov r1, #0x10\n" + " mov r2, #0x1d\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r0, sp\n" + " mov r1, #0x1\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " add r0, r6, #0\n" + " mov r1, #0x14\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " mov r0, #0x0\n" + " mov r1, #0x0\n" + " mov r2, #0xe\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " add r0, r5, #0\n" + " mov r1, #0x2\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " mov r0, #0x1\n" + " mov r1, #0x3\n" + " mov r2, #0xd\n" + " mov r3, #0xe\n" + " bl MenuFillWindowRectWithBlankTile\n" + " add r0, r5, #0\n" + " mov r1, #0x2\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " mov r0, r9\n" + " mov r1, #0x2\n" + " mov r2, #0x3\n" + " bl MenuPrint\n" + " mov r0, r8\n" + " mov r1, #0x2\n" + " mov r2, #0x5\n" + " bl MenuPrint\n" + " mov r0, #0xf\n" + " mov r1, #0x0\n" + " mov r2, #0x1d\n" + " mov r3, #0xf\n" + " bl MenuDrawTextWindow\n" + " ldr r1, ._320 + 20\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._320 + 24\n" + " str r1, [r0]\n" + " add sp, sp, #0x3c\n" + " pop {r3, r4}\n" + " mov r8, r3\n" + " mov r9, r4\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._321:\n" + " .align 2, 0\n" + "._320:\n" + " .word gUnknown_Debug_083F8211\n" + " .word gUnknown_Debug_083F81A0\n" + " .word gUnknown_Debug_083F8222\n" + " .word gUnknown_Debug_083F822F\n" + " .word gUnknown_Debug_083F8233\n" + " .word gTasks\n" + " .word debug_80C5038+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5038() +{ + asm( + " push {r4, lr}\n" + " add sp, sp, #0xfffffffc\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " ldr r0, ._322\n" + " ldrb r0, [r0, #0x8]\n" + " lsl r0, r0, #0x19\n" + " mov r1, #0xc0\n" + " lsl r1, r1, #0x12\n" + " add r0, r0, r1\n" + " lsr r0, r0, #0x18\n" + " mov r1, #0x1\n" + " str r1, [sp]\n" + " mov r2, #0x1\n" + " mov r3, #0xe\n" + " bl debug_80C38E4\n" + " ldr r1, ._322 + 4\n" + " ldr r2, ._322 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " add r2, r2, #0x8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._322 + 12\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._322 + 16\n" + " str r1, [r0]\n" + " add sp, sp, #0x4\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._323:\n" + " .align 2, 0\n" + "._322:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word 0x4000042\n" + " .word 0x177\n" + " .word gTasks\n" + " .word debug_80C5098+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5098() +{ + asm( + " push {r4, lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " ldr r1, ._326\n" + " ldrh r2, [r1, #0x2e]\n" + " mov r0, #0x2\n" + " and r0, r0, r2\n" + " add r3, r1, #0\n" + " cmp r0, #0\n" + " beq ._324 @cond_branch\n" + " ldr r0, ._326 + 4\n" + " lsl r1, r4, #0x2\n" + " add r1, r1, r4\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._326 + 8\n" + " str r0, [r1]\n" + " b ._339\n" + "._327:\n" + " .align 2, 0\n" + "._326:\n" + " .word gMain\n" + " .word gTasks\n" + " .word debug_80C47BC+1\n" + "._324:\n" + " mov r0, #0x8\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " bne ._328 @cond_branch\n" + " mov r0, #0x1\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._329 @cond_branch\n" + "._328:\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " ldr r1, ._331\n" + " ldr r0, ._331 + 4\n" + " ldrb r0, [r0, #0x8]\n" + " strb r0, [r1, #0x8]\n" + " ldr r1, ._331 + 8\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._331 + 12\n" + " b ._330\n" + "._332:\n" + " .align 2, 0\n" + "._331:\n" + " .word gSaveBlock2\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gTasks\n" + " .word debug_80C42B8+1\n" + "._329:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._334 @cond_branch\n" + " ldr r1, ._336\n" + " ldrb r0, [r1, #0x8]\n" + " cmp r0, #0\n" + " beq ._334 @cond_branch\n" + " sub r0, r0, #0x1\n" + " b ._335\n" + "._337:\n" + " .align 2, 0\n" + "._336:\n" + " .word unk_debug_ewram_0+0x20\n" + "._334:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._339 @cond_branch\n" + " ldr r1, ._340\n" + " ldrb r0, [r1, #0x8]\n" + " cmp r0, #0\n" + " bne ._339 @cond_branch\n" + " add r0, r0, #0x1\n" + "._335:\n" + " strb r0, [r1, #0x8]\n" + " ldr r1, ._340 + 4\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._340 + 8\n" + "._330:\n" + " str r1, [r0]\n" + "._339:\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._341:\n" + " .align 2, 0\n" + "._340:\n" + " .word unk_debug_ewram_0+0x20\n" + " .word gTasks\n" + " .word debug_80C5038+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5158() +{ + asm( + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " ldr r2, ._342\n" + " lsl r1, r0, #0x2\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " ldr r0, ._342 + 4\n" + " str r0, [r1]\n" + " bx lr\n" + "._343:\n" + " .align 2, 0\n" + "._342:\n" + " .word gTasks\n" + " .word debug_80C5174+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5174() +{ + asm( + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " ldr r2, ._344\n" + " lsl r1, r0, #0x2\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " ldr r0, ._344 + 4\n" + " str r0, [r1]\n" + " bx lr\n" + "._345:\n" + " .align 2, 0\n" + "._344:\n" + " .word gTasks\n" + " .word debug_80C5190+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5190() +{ + asm( + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " ldr r2, ._346\n" + " lsl r1, r0, #0x2\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " ldr r0, ._346 + 4\n" + " str r0, [r1]\n" + " bx lr\n" + "._347:\n" + " .align 2, 0\n" + "._346:\n" + " .word gTasks\n" + " .word debug_80C51AC+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C51AC() +{ + asm( + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " ldr r2, ._348\n" + " lsl r1, r0, #0x2\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " ldr r0, ._348 + 4\n" + " str r0, [r1]\n" + " bx lr\n" + "._349:\n" + " .align 2, 0\n" + "._348:\n" + " .word gTasks\n" + " .word debug_80C51C8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C51C8() +{ + asm( + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " ldr r2, ._350\n" + " lsl r1, r0, #0x2\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " ldr r0, ._350 + 4\n" + " str r0, [r1]\n" + " bx lr\n" + "._351:\n" + " .align 2, 0\n" + "._350:\n" + " .word gTasks\n" + " .word debug_80C51E4+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C51E4() +{ + asm( + " push {lr}\n" + " bl sub_80408BC\n" + " ldr r0, ._352\n" + " ldr r1, ._352 + 4\n" + " str r1, [r0, #0x8]\n" + " ldr r0, ._352 + 8\n" + " bl SetMainCallback2\n" + " pop {r0}\n" + " bx r0\n" + "._353:\n" + " .align 2, 0\n" + "._352:\n" + " .word gMain\n" + " .word debug_80C41A8+1\n" + " .word unref_sub_800D684+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5208() +{ + asm( + " push {r4, r5, r6, lr}\n" + " ldr r1, ._355\n" + " ldr r0, ._355 + 4\n" + " str r0, [r1]\n" + " mov r3, #0x0\n" + " add r6, r1, #0\n" + " ldr r4, ._355 + 8\n" + " add r5, r6, #0\n" + " mov r2, #0x0\n" + "._354:\n" + " ldr r0, [r5]\n" + " lsl r1, r3, #0x2\n" + " add r0, r0, #0x64\n" + " add r0, r0, r1\n" + " str r2, [r0]\n" + " add r0, r3, #1\n" + " lsl r0, r0, #0x10\n" + " lsr r3, r0, #0x10\n" + " cmp r3, #0x3f\n" + " bls ._354 @cond_branch\n" + " ldr r2, [r6]\n" + " mov r0, #0xfc\n" + " str r0, [r2, #0x64]\n" + " ldrb r1, [r4, #0xa]\n" + " ldrb r0, [r4, #0xb]\n" + " lsl r0, r0, #0x8\n" + " orr r1, r1, r0\n" + " ldrb r0, [r4, #0xc]\n" + " lsl r0, r0, #0x10\n" + " orr r1, r1, r0\n" + " ldrb r0, [r4, #0xd]\n" + " lsl r0, r0, #0x18\n" + " orr r1, r1, r0\n" + " str r1, [r2, #0x70]\n" + " bl Random\n" + " add r4, r0, #0\n" + " bl Random\n" + " ldr r1, [r6]\n" + " lsl r4, r4, #0x10\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " orr r4, r4, r0\n" + " str r4, [r1, #0x74]\n" + " mov r0, #0x1\n" + " str r0, [r1, #0x68]\n" + " str r0, [r1, #0x6c]\n" + " bl debug_80C5C94\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._356:\n" + " .align 2, 0\n" + "._355:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word +0x2018000\n" + " .word gSaveBlock2\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C527C() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " add r6, r0, #0\n" + " mov r5, #0x0\n" + " ldr r7, ._359\n" + "._361:\n" + " mov r0, #0x64\n" + " add r1, r5, #0\n" + " mul r1, r1, r0\n" + " ldr r0, ._359 + 4\n" + " add r4, r1, r0\n" + " add r0, r4, #0\n" + " mov r1, #0xb\n" + " mov r2, #0x0\n" + " bl GetMonData\n" + " cmp r0, #0\n" + " bne ._357 @cond_branch\n" + " add r0, r4, #0\n" + " add r1, r6, #0\n" + " mov r2, #0x64\n" + " bl memcpy\n" + " add r0, r5, #1\n" + " strb r0, [r7]\n" + " mov r0, #0x0\n" + " b ._358\n" + "._360:\n" + " .align 2, 0\n" + "._359:\n" + " .word gPlayerPartyCount\n" + " .word gPlayerParty\n" + "._357:\n" + " add r0, r5, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r5, r0, #0x18\n" + " cmp r5, #0x5\n" + " bls ._361 @cond_branch\n" + " ldr r0, ._362\n" + " ldr r0, [r0]\n" + " bl SendMonToPC\n" + " mov r0, #0x1\n" + "._358:\n" + " pop {r4, r5, r6, r7}\n" + " pop {r1}\n" + " bx r1\n" + "._363:\n" + " .align 2, 0\n" + "._362:\n" + " .word unk_debug_ewram_0+0x30\n" + "\n" + ); +} + +__attribute__((naked)) +void InitCreatePokemon() +{ + asm( + " push {r4, r5, lr}\n" + " add sp, sp, #0xffffffd4\n" + " ldr r1, ._364\n" + " add r0, sp, #0x4\n" + " mov r2, #0x25\n" + " bl memcpy\n" + " bl debug_80C35DC\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " mov r4, #0x0\n" + " str r4, [sp]\n" + " mov r1, #0x0\n" + " mov r2, #0x10\n" + " mov r3, #0x0\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._364 + 4\n" + " mov r5, #0x0\n" + " strh r4, [r0]\n" + " add r0, r0, #0x2\n" + " strh r4, [r0]\n" + " add r0, r0, #0x2\n" + " strh r4, [r0]\n" + " ldr r3, ._364 + 8\n" + " ldrh r2, [r3]\n" + " strh r4, [r3]\n" + " ldr r4, ._364 + 12\n" + " ldrh r0, [r4]\n" + " mov r1, #0x1\n" + " orr r0, r0, r1\n" + " strh r0, [r4]\n" + " strh r2, [r3]\n" + " ldr r2, ._364 + 16\n" + " ldrh r0, [r2]\n" + " mov r1, #0x8\n" + " orr r0, r0, r1\n" + " strh r0, [r2]\n" + " ldr r0, ._364 + 20\n" + " bl SetVBlankCallback\n" + " ldr r0, ._364 + 24\n" + " bl SetMainCallback2\n" + " mov r0, #0x0\n" + " mov r1, #0x0\n" + " mov r2, #0x1d\n" + " mov r3, #0x3\n" + " bl MenuDrawTextWindow\n" + " add r0, sp, #0x4\n" + " mov r1, #0x1\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " mov r1, #0x80\n" + " lsl r1, r1, #0x13\n" + " mov r2, #0x8a\n" + " lsl r2, r2, #0x5\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r0, ._364 + 28\n" + " mov r1, #0x0\n" + " bl CreateTask\n" + " bl debug_80C5208\n" + " ldr r1, ._364 + 32\n" + " ldr r0, [r1]\n" + " mov r2, #0xb4\n" + " lsl r2, r2, #0x1\n" + " add r0, r0, r2\n" + " strb r5, [r0]\n" + " ldr r0, [r1]\n" + " ldr r1, ._364 + 36\n" + " add r0, r0, r1\n" + " strb r5, [r0]\n" + " add sp, sp, #0x2c\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "._365:\n" + " .align 2, 0\n" + "._364:\n" + " .word gUnknown_Debug_083F8733\n" + " .word 0x4000050\n" + " .word 0x4000208\n" + " .word 0x4000200\n" + " .word 0x4000004\n" + " .word debug_80C3758+1\n" + " .word debug_80C370C+1\n" + " .word debug_80C53A4+1\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C53A4() +{ + asm( + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " ldr r2, ._366\n" + " lsl r1, r0, #0x2\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " ldr r0, ._366 + 4\n" + " str r0, [r1]\n" + " bx lr\n" + "._367:\n" + " .align 2, 0\n" + "._366:\n" + " .word gTasks\n" + " .word debug_80C53C0+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C53C0() +{ + asm( + " push {r4, lr}\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " bl debug_80C6384\n" + " mov r0, #0x0\n" + " bl debug_80C627C\n" + " ldr r1, ._368\n" + " lsl r0, r4, #0x2\n" + " add r0, r0, r4\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._368 + 4\n" + " str r1, [r0]\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._369:\n" + " .align 2, 0\n" + "._368:\n" + " .word gTasks\n" + " .word debug_80C53F0+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C53F0() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r5, r0, #0x18\n" + " ldr r0, ._372\n" + " ldrh r1, [r0, #0x2e]\n" + " mov r2, #0x1\n" + " and r2, r2, r1\n" + " add r4, r0, #0\n" + " cmp r2, #0\n" + " beq ._370 @cond_branch\n" + " ldr r0, ._372 + 4\n" + " ldr r3, [r0]\n" + " mov r0, #0xb2\n" + " lsl r0, r0, #0x1\n" + " add r2, r3, r0\n" + " ldr r1, ._372 + 8\n" + " mov r4, #0xb4\n" + " lsl r4, r4, #0x1\n" + " add r0, r3, r4\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r6, ._372 + 12\n" + " add r1, r3, r6\n" + " ldrb r1, [r1]\n" + " ldr r0, [r0]\n" + " add r0, r0, r1\n" + " ldrb r1, [r0]\n" + " lsl r1, r1, #0x2\n" + " add r0, r3, #0\n" + " add r0, r0, #0x64\n" + " add r0, r0, r1\n" + " ldr r0, [r0]\n" + " str r0, [r2]\n" + " mov r0, #0xb5\n" + " lsl r0, r0, #0x1\n" + " add r1, r3, r0\n" + " mov r0, #0x0\n" + " strb r0, [r1]\n" + " bl debug_80C643C\n" + " ldr r1, ._372 + 16\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._372 + 20\n" + " b ._375\n" + "._373:\n" + " .align 2, 0\n" + "._372:\n" + " .word gMain\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_083F8698\n" + " .word 0x169\n" + " .word gTasks\n" + " .word debug_80C55E4+1\n" + "._370:\n" + " mov r0, #0x2\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._374 @cond_branch\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " str r2, [sp]\n" + " mov r1, #0x0\n" + " mov r2, #0x0\n" + " mov r3, #0x10\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._376\n" + " bl SetMainCallback2\n" + " ldr r1, ._376 + 4\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._376 + 8\n" + " b ._375\n" + "._377:\n" + " .align 2, 0\n" + "._376:\n" + " .word debug_80C370C+1\n" + " .word gTasks\n" + " .word debug_80C373C+1\n" + "._374:\n" + " mov r0, #0x8\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._378 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " bl debug_80C5FFC\n" + " ldr r0, ._381\n" + " ldr r0, [r0]\n" + " bl debug_80C527C\n" + " add r4, r0, #0\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " mov r0, #0x3\n" + " mov r1, #0x8\n" + " mov r2, #0x1a\n" + " mov r3, #0xb\n" + " bl MenuDrawTextWindow\n" + " cmp r4, #0\n" + " beq ._379 @cond_branch\n" + " ldr r0, ._381 + 4\n" + " mov r1, #0x4\n" + " mov r2, #0x9\n" + " bl MenuPrint\n" + " b ._380\n" + "._382:\n" + " .align 2, 0\n" + "._381:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_083F872A\n" + "._379:\n" + " ldr r0, ._384\n" + " mov r1, #0x4\n" + " mov r2, #0x9\n" + " bl MenuPrint\n" + "._380:\n" + " ldr r0, ._384 + 4\n" + " lsl r1, r5, #0x2\n" + " add r1, r1, r5\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._384 + 8\n" + " str r0, [r1]\n" + " b ._400\n" + "._385:\n" + " .align 2, 0\n" + "._384:\n" + " .word gUnknown_Debug_083F8720\n" + " .word gTasks\n" + " .word debug_80C5708+1\n" + "._378:\n" + " mov r0, #0x4\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._386 @cond_branch\n" + " ldr r0, ._388\n" + " ldr r0, [r0]\n" + " ldr r4, [r0, #0x64]\n" + " lsl r4, r4, #0x10\n" + " lsr r4, r4, #0x10\n" + " add r0, r4, #0\n" + " mov r1, #0x2\n" + " bl GetNationalPokedexFlag\n" + " add r0, r4, #0\n" + " mov r1, #0x3\n" + " bl GetNationalPokedexFlag\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " b ._400\n" + "._389:\n" + " .align 2, 0\n" + "._388:\n" + " .word unk_debug_ewram_0+0x30\n" + "._386:\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._390 @cond_branch\n" + " mov r0, #0x2\n" + " bl debug_80C627C\n" + " b ._400\n" + "._390:\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x10\n" + " lsr r3, r0, #0x10\n" + " cmp r3, #0\n" + " beq ._392 @cond_branch\n" + " mov r0, #0x1\n" + " bl debug_80C627C\n" + " b ._400\n" + "._392:\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x2\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._395 @cond_branch\n" + " ldr r2, ._397\n" + " ldr r0, [r2]\n" + " mov r6, #0xb4\n" + " lsl r6, r6, #0x1\n" + " add r1, r0, r6\n" + " ldrb r0, [r1]\n" + " cmp r0, #0\n" + " beq ._395 @cond_branch\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1]\n" + " ldr r0, [r2]\n" + " ldr r1, ._397 + 4\n" + " add r0, r0, r1\n" + " strb r3, [r0]\n" + " b ._396\n" + "._398:\n" + " .align 2, 0\n" + "._397:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + "._395:\n" + " ldrh r1, [r4, #0x2e]\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._400 @cond_branch\n" + " ldr r3, ._401\n" + " ldr r0, [r3]\n" + " mov r4, #0xb4\n" + " lsl r4, r4, #0x1\n" + " add r2, r0, r4\n" + " ldrb r0, [r2]\n" + " cmp r0, #0x4\n" + " bhi ._400 @cond_branch\n" + " add r0, r0, #0x1\n" + " mov r1, #0x0\n" + " strb r0, [r2]\n" + " ldr r0, [r3]\n" + " ldr r6, ._401 + 4\n" + " add r0, r0, r6\n" + " strb r1, [r0]\n" + "._396:\n" + " ldr r1, ._401 + 8\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._401 + 12\n" + "._375:\n" + " str r1, [r0]\n" + "._400:\n" + " add sp, sp, #0x4\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._402:\n" + " .align 2, 0\n" + "._401:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + " .word gTasks\n" + " .word debug_80C53C0+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C55E4() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r8\n" + " push {r7}\n" + " lsl r0, r0, #0x18\n" + " lsr r3, r0, #0x18\n" + " add r6, r3, #0\n" + " ldr r1, ._405\n" + " ldr r2, ._405 + 4\n" + " ldr r0, [r2]\n" + " mov ip, r0\n" + " mov r0, #0xb4\n" + " lsl r0, r0, #0x1\n" + " add r0, r0, ip\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._405 + 8\n" + " add r1, r1, ip\n" + " ldrb r1, [r1]\n" + " ldr r0, [r0]\n" + " add r0, r0, r1\n" + " ldrb r5, [r0]\n" + " add r7, r5, #0\n" + " ldr r1, ._405 + 12\n" + " ldrh r4, [r1, #0x2e]\n" + " mov r0, #0x1\n" + " and r0, r0, r4\n" + " mov r8, r2\n" + " add r2, r1, #0\n" + " cmp r0, #0\n" + " beq ._403 @cond_branch\n" + " ldr r0, ._405 + 16\n" + " lsl r1, r3, #0x2\n" + " add r1, r1, r3\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._405 + 20\n" + " str r0, [r1]\n" + " b ._422\n" + "._406:\n" + " .align 2, 0\n" + "._405:\n" + " .word gUnknown_Debug_083F8698\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + " .word gMain\n" + " .word gTasks\n" + " .word debug_80C53C0+1\n" + "._403:\n" + " mov r0, #0x2\n" + " and r0, r0, r4\n" + " cmp r0, #0\n" + " beq ._407 @cond_branch\n" + " lsl r1, r5, #0x2\n" + " mov r0, ip\n" + " add r0, r0, #0x64\n" + " add r0, r0, r1\n" + " mov r1, #0xb2\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, ip\n" + " ldr r1, [r1]\n" + " str r1, [r0]\n" + " ldr r1, ._409\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._409 + 4\n" + " str r1, [r0]\n" + " b ._422\n" + "._410:\n" + " .align 2, 0\n" + "._409:\n" + " .word gTasks\n" + " .word debug_80C53C0+1\n" + "._407:\n" + " ldrh r1, [r2, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._411 @cond_branch\n" + " mov r0, #0x1\n" + " b ._412\n" + "._411:\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._413 @cond_branch\n" + " mov r0, #0x2\n" + "._412:\n" + " bl debug_80C6544\n" + " bl debug_80C643C\n" + " b ._422\n" + "._413:\n" + " ldr r0, ._419\n" + " lsl r1, r7, #0x3\n" + " add r0, r0, #0x4\n" + " add r1, r1, r0\n" + " ldr r1, [r1]\n" + " ldrb r0, [r1, #0x9]\n" + " cmp r0, #0xff\n" + " beq ._422 @cond_branch\n" + " mov r0, #0x20\n" + " and r0, r0, r4\n" + " cmp r0, #0\n" + " beq ._417 @cond_branch\n" + " mov r0, #0xb5\n" + " lsl r0, r0, #0x1\n" + " add ip, ip, r0\n" + " mov r0, ip\n" + " ldrb r3, [r0]\n" + " ldrb r0, [r1, #0x9]\n" + " sub r0, r0, #0x1\n" + " cmp r3, r0\n" + " bge ._417 @cond_branch\n" + " add r0, r3, #1\n" + " mov r1, ip\n" + " strb r0, [r1]\n" + " bl debug_80C643C\n" + " b ._422\n" + "._420:\n" + " .align 2, 0\n" + "._419:\n" + " .word gUnknown_Debug_083F8554\n" + "._417:\n" + " ldrh r1, [r2, #0x2e]\n" + " mov r0, #0x10\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._422 @cond_branch\n" + " mov r2, r8\n" + " ldr r0, [r2]\n" + " mov r2, #0xb5\n" + " lsl r2, r2, #0x1\n" + " add r1, r0, r2\n" + " ldrb r0, [r1]\n" + " cmp r0, #0\n" + " beq ._422 @cond_branch\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1]\n" + " bl debug_80C643C\n" + "._422:\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5708() +{ + asm( + " push {lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " ldr r0, ._424\n" + " ldrh r1, [r0, #0x2e]\n" + " mov r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._423 @cond_branch\n" + " ldr r0, ._424 + 4\n" + " lsl r1, r2, #0x2\n" + " add r1, r1, r2\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._424 + 8\n" + " str r0, [r1]\n" + "._423:\n" + " pop {r0}\n" + " bx r0\n" + "._425:\n" + " .align 2, 0\n" + "._424:\n" + " .word gMain\n" + " .word gTasks\n" + " .word debug_80C53C0+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5738() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r9\n" + " mov r6, r8\n" + " push {r6, r7}\n" + " add r6, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r4, r1, #0x18\n" + " lsl r2, r2, #0x18\n" + " lsr r2, r2, #0x18\n" + " mov r8, r2\n" + " cmp r4, #0xfe\n" + " bne ._426 @cond_branch\n" + " ldr r1, ._428\n" + " mov r2, #0x7\n" + " bl debug_80C689C\n" + " add r0, r6, #7\n" + " ldr r7, ._428 + 4\n" + " ldr r1, [r7]\n" + " add r1, r1, #0xf0\n" + " ldr r1, [r1]\n" + " mov r2, #0x3\n" + " mov r3, #0x1\n" + " bl debug_80C6678\n" + " mov r4, #0x0\n" + " strb r4, [r6, #0x13]\n" + " strb r4, [r6, #0x14]\n" + " add r0, r6, #0\n" + " add r0, r0, #0x15\n" + " ldr r1, ._428 + 8\n" + " mov r2, #0x7\n" + " bl debug_80C689C\n" + " add r0, r6, #0\n" + " add r0, r0, #0x1c\n" + " ldr r1, [r7]\n" + " add r1, r1, #0xf4\n" + " ldr r1, [r1]\n" + " mov r2, #0x3\n" + " mov r3, #0x1\n" + " bl debug_80C6678\n" + " add r0, r6, #0\n" + " add r0, r0, #0x28\n" + " strb r4, [r0]\n" + " add r0, r0, #0x1\n" + " strb r4, [r0]\n" + " add r0, r0, #0x1\n" + " ldr r1, ._428 + 12\n" + " mov r2, #0x9\n" + " bl debug_80C689C\n" + " add r0, r6, #0\n" + " add r0, r0, #0x31\n" + " ldr r1, [r7]\n" + " add r1, r1, #0xf8\n" + "._431:\n" + " ldr r1, [r1]\n" + " mov r2, #0x3\n" + " mov r3, #0x1\n" + " bl debug_80C6678\n" + " b ._517\n" + "._429:\n" + " .align 2, 0\n" + "._428:\n" + " .word gUnknown_Debug_083F850A\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_083F8514\n" + " .word gUnknown_Debug_083F851C\n" + "._426:\n" + " cmp r4, #0xfd\n" + " bne ._430 @cond_branch\n" + " ldr r1, ._432\n" + " add r0, r6, #0\n" + " mov r2, #0x9\n" + " bl debug_80C689C\n" + " add r0, r6, #0\n" + " add r0, r0, #0x9\n" + " ldr r7, ._432 + 4\n" + " ldr r1, [r7]\n" + " add r1, r1, #0xfc\n" + " ldr r1, [r1]\n" + " mov r2, #0x3\n" + " mov r3, #0x1\n" + " bl debug_80C6678\n" + " mov r4, #0x0\n" + " strb r4, [r6, #0x15]\n" + " strb r4, [r6, #0x16]\n" + " add r0, r6, #0\n" + " add r0, r0, #0x17\n" + " ldr r1, ._432 + 8\n" + " mov r2, #0x9\n" + " bl debug_80C689C\n" + " add r0, r6, #0\n" + " add r0, r0, #0x20\n" + " ldr r1, [r7]\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x1\n" + " add r1, r1, r2\n" + " ldr r1, [r1]\n" + " mov r2, #0x3\n" + " mov r3, #0x1\n" + " bl debug_80C6678\n" + " add r0, r6, #0\n" + " add r0, r0, #0x2c\n" + " strb r4, [r0]\n" + " add r0, r0, #0x1\n" + " strb r4, [r0]\n" + " add r0, r0, #0x1\n" + " ldr r1, ._432 + 12\n" + " mov r2, #0x9\n" + " bl debug_80C689C\n" + " add r0, r6, #0\n" + " add r0, r0, #0x37\n" + " ldr r1, [r7]\n" + " mov r3, #0x82\n" + " lsl r3, r3, #0x1\n" + " add r1, r1, r3\n" + " b ._431\n" + "._433:\n" + " .align 2, 0\n" + "._432:\n" + " .word gUnknown_Debug_083F8524\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_083F852D\n" + " .word gUnknown_Debug_083F8537\n" + "._430:\n" + " mov r1, #0x0\n" + " lsl r5, r4, #0x3\n" + " mov r2, #0x0\n" + "._434:\n" + " add r0, r6, r1\n" + " strb r2, [r0]\n" + " add r0, r1, #1\n" + " lsl r0, r0, #0x10\n" + " lsr r1, r0, #0x10\n" + " cmp r1, #0xb\n" + " bls ._434 @cond_branch\n" + " ldr r0, ._437\n" + " add r0, r5, r0\n" + " ldr r1, [r0]\n" + " add r0, r6, #0\n" + " mov r2, #0xb\n" + " bl debug_80C689C\n" + " mov r1, #0xc\n" + " mov r2, #0xff\n" + "._435:\n" + " add r0, r6, r1\n" + " strb r2, [r0]\n" + " add r0, r1, #1\n" + " lsl r0, r0, #0x10\n" + " lsr r1, r0, #0x10\n" + " cmp r1, #0xff\n" + " bls ._435 @cond_branch\n" + " ldr r0, ._437\n" + " add r0, r0, #0x4\n" + " add r0, r5, r0\n" + " ldr r0, [r0]\n" + " ldrb r2, [r0, #0x9]\n" + " lsl r0, r2, #0x1a\n" + " lsr r5, r0, #0x18\n" + " cmp r4, #0x22\n" + " bhi ._436 @cond_branch\n" + " lsl r0, r4, #0x2\n" + " ldr r1, ._437 + 4\n" + " add r1, r0, r1\n" + " ldr r1, [r1]\n" + " add r7, r0, #0\n" + " mov pc, r1\n" + "._438:\n" + " .align 2, 0\n" + "._437:\n" + " .word gUnknown_Debug_083F8554\n" + " .word ._439\n" + "._439:\n" + " .word ._440\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._445\n" + " .word ._446\n" + " .word ._450\n" + " .word ._450\n" + " .word ._450\n" + " .word ._450\n" + " .word ._451\n" + " .word ._452\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._472\n" + " .word ._473\n" + " .word ._474\n" + "._436:\n" + " mov r0, #0xff\n" + " strb r0, [r6]\n" + " b ._517\n" + "._440:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r1, ._477\n" + " mov r9, r1\n" + " ldr r1, [r1]\n" + " add r1, r1, #0x64\n" + " add r1, r1, r7\n" + " ldr r1, [r1]\n" + " mov r3, r8\n" + " bl debug_80C6678\n" + " add r1, r5, r6\n" + " mov r0, #0x0\n" + " strb r0, [r1, #0xa]\n" + " mov r0, #0xfc\n" + " strb r0, [r1, #0xb]\n" + " mov r0, #0x1\n" + " strb r0, [r1, #0xc]\n" + " mov r2, r8\n" + " strb r2, [r1, #0xd]\n" + " add r4, r5, #0\n" + " add r4, r4, #0xe\n" + " add r4, r6, r4\n" + " mov r3, r9\n" + " ldr r0, [r3]\n" + " add r0, r0, #0x64\n" + " add r0, r0, r7\n" + " ldrh r0, [r0]\n" + " bl NationalPokedexNumToSpecies\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " mov r1, #0xb\n" + " mul r1, r1, r0\n" + " ldr r0, ._477 + 4\n" + " add r1, r1, r0\n" + " add r0, r4, #0\n" + " mov r2, #0xa\n" + " bl debug_80C689C\n" + " b ._517\n" + "._478:\n" + " .align 2, 0\n" + "._477:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gSpeciesNames\n" + "._445:\n" + " ldr r0, ._483\n" + " ldr r0, [r0]\n" + " add r0, r0, #0x64\n" + " add r0, r0, r7\n" + " ldr r0, [r0]\n" + " cmp r0, #0x1\n" + " beq ._479 @cond_branch\n" + " cmp r0, #0x1\n" + " bcc ._480 @cond_branch\n" + " cmp r0, #0x2\n" + " beq ._481 @cond_branch\n" + " b ._517\n" + "._484:\n" + " .align 2, 0\n" + "._483:\n" + " .word unk_debug_ewram_0+0x30\n" + "._480:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r1, ._486\n" + " b ._488\n" + "._487:\n" + " .align 2, 0\n" + "._486:\n" + " .word gUnknown_Debug_083F8546\n" + "._479:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r1, ._489\n" + " b ._488\n" + "._490:\n" + " .align 2, 0\n" + "._489:\n" + " .word gUnknown_Debug_083F8541\n" + "._481:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r1, ._492\n" + "._488:\n" + " mov r2, #0x2\n" + " bl debug_80C689C\n" + " b ._517\n" + "._493:\n" + " .align 2, 0\n" + "._492:\n" + " .word gUnknown_Debug_083F8544\n" + "._450:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r4, ._495\n" + " ldr r1, [r4]\n" + " add r1, r1, #0x64\n" + " add r1, r1, r7\n" + " ldr r1, [r1]\n" + " mov r3, r8\n" + " bl debug_80C6678\n" + " add r1, r5, r6\n" + " mov r0, #0x0\n" + " strb r0, [r1, #0xa]\n" + " mov r0, #0xfc\n" + " strb r0, [r1, #0xb]\n" + " mov r0, #0x1\n" + " strb r0, [r1, #0xc]\n" + " mov r0, r8\n" + " strb r0, [r1, #0xd]\n" + " add r0, r5, #0\n" + " add r0, r0, #0xe\n" + " add r0, r6, r0\n" + " ldr r1, [r4]\n" + " add r1, r1, #0x64\n" + " add r1, r1, r7\n" + " ldr r2, [r1]\n" + " mov r1, #0xd\n" + " mul r1, r1, r2\n" + " ldr r2, ._495 + 4\n" + " add r1, r1, r2\n" + " b ._494\n" + "._496:\n" + " .align 2, 0\n" + "._495:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gMoveNames\n" + "._451:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r4, ._499\n" + " ldr r1, [r4]\n" + " add r1, r1, #0x64\n" + " add r1, r1, r7\n" + " ldr r1, [r1]\n" + " mov r3, r8\n" + " bl debug_80C6678\n" + " add r1, r5, r6\n" + " mov r0, #0x0\n" + " strb r0, [r1, #0xa]\n" + " mov r0, #0xfc\n" + " strb r0, [r1, #0xb]\n" + " mov r0, #0x1\n" + " strb r0, [r1, #0xc]\n" + " mov r2, r8\n" + " strb r2, [r1, #0xd]\n" + " ldr r0, [r4]\n" + " add r0, r0, #0x64\n" + " add r0, r0, r7\n" + " ldr r0, [r0]\n" + " cmp r0, #0\n" + " beq ._497 @cond_branch\n" + " add r4, r5, #0\n" + " add r4, r4, #0xe\n" + " add r4, r6, r4\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl ItemId_GetItem\n" + " add r1, r0, #0\n" + " add r0, r4, #0\n" + " b ._498\n" + "._500:\n" + " .align 2, 0\n" + "._499:\n" + " .word unk_debug_ewram_0+0x30\n" + "._497:\n" + " add r0, r5, #0\n" + " add r0, r0, #0xe\n" + " add r0, r6, r0\n" + " ldr r1, ._502\n" + "._498:\n" + " mov r2, #0x9\n" + " bl debug_80C689C\n" + " b ._517\n" + "._503:\n" + " .align 2, 0\n" + "._502:\n" + " .word gUnknown_Debug_083F8541\n" + "._452:\n" + " add r6, r6, #0xc\n" + " ldr r4, ._505\n" + " ldr r0, [r4]\n" + " ldr r0, [r0, #0x64]\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl NationalPokedexNumToSpecies\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " ldr r1, [r4]\n" + " add r1, r1, #0x64\n" + " add r1, r1, r7\n" + " ldrb r1, [r1]\n" + " bl GetAbilityBySpecies\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " mov r1, #0xd\n" + " mul r1, r1, r0\n" + " ldr r0, ._505 + 4\n" + " add r1, r1, r0\n" + " add r0, r6, #0\n" + "._494:\n" + " mov r2, #0xc\n" + " bl debug_80C689C\n" + " b ._517\n" + "._506:\n" + " .align 2, 0\n" + "._505:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gAbilityNames\n" + "._474:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r2, ._508\n" + " ldr r1, ._508 + 4\n" + " ldr r1, [r1]\n" + " add r1, r1, #0x64\n" + " add r1, r1, r7\n" + " ldr r1, [r1]\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " ldr r1, [r1]\n" + " b ._514\n" + "._509:\n" + " .align 2, 0\n" + "._508:\n" + " .word gUnknown_Debug_083F86E8\n" + " .word unk_debug_ewram_0+0x30\n" + "._472:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xc\n" + " ldr r1, ._511\n" + " ldr r1, [r1]\n" + " add r1, r1, #0x64\n" + " add r1, r1, r7\n" + " ldr r1, [r1]\n" + " mov r3, r8\n" + " bl debug_80C6678\n" + " b ._517\n" + "._512:\n" + " .align 2, 0\n" + "._511:\n" + " .word unk_debug_ewram_0+0x30\n" + "._473:\n" + " ldr r0, ._515\n" + " ldr r0, [r0]\n" + " add r0, r0, #0x64\n" + " add r0, r0, r7\n" + " ldr r0, [r0]\n" + " cmp r0, #0\n" + " beq ._513 @cond_branch\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r1, ._515 + 4\n" + " b ._514\n" + "._516:\n" + " .align 2, 0\n" + "._515:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_083F854A\n" + "._513:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r1, ._518\n" + "._514:\n" + " mov r2, #0x4\n" + " bl debug_80C689C\n" + " b ._517\n" + "._519:\n" + " .align 2, 0\n" + "._518:\n" + " .word gUnknown_Debug_083F854D\n" + "._446:\n" + " add r0, r6, #0\n" + " add r0, r0, #0xa\n" + " ldr r2, ._520\n" + " ldr r1, ._520 + 4\n" + " ldr r1, [r1]\n" + " add r1, r1, #0x64\n" + " add r1, r1, r7\n" + " ldr r1, [r1]\n" + " lsl r1, r1, #0x2\n" + " add r1, r1, r2\n" + " ldr r1, [r1]\n" + " mov r2, #0x5\n" + " bl debug_80C689C\n" + "._517:\n" + " mov r0, #0x0\n" + " pop {r3, r4}\n" + " mov r8, r3\n" + " mov r9, r4\n" + " pop {r4, r5, r6, r7}\n" + " pop {r1}\n" + " bx r1\n" + "._521:\n" + " .align 2, 0\n" + "._520:\n" + " .word gNatureNames\n" + " .word unk_debug_ewram_0+0x30\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5B60() +{ + asm( + " lsl r0, r0, #0x18\n" + " ldr r1, ._522\n" + " ldr r1, [r1]\n" + " lsr r0, r0, #0x16\n" + " add r1, r1, #0x64\n" + " add r1, r1, r0\n" + " ldr r0, [r1]\n" + " bx lr\n" + "._523:\n" + " .align 2, 0\n" + "._522:\n" + " .word unk_debug_ewram_0+0x30\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5B74() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add r6, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r2, r1, #0x18\n" + " cmp r2, #0x18\n" + " bhi ._540 @cond_branch\n" + " lsl r0, r2, #0x2\n" + " ldr r1, ._526\n" + " add r1, r0, r1\n" + " ldr r1, [r1]\n" + " add r3, r0, #0\n" + " mov pc, r1\n" + "._527:\n" + " .align 2, 0\n" + "._526:\n" + " .word ._525\n" + "._525:\n" + " .word ._532\n" + " .word ._529\n" + " .word ._530\n" + " .word ._532\n" + " .word ._532\n" + " .word ._540\n" + " .word ._540\n" + " .word ._540\n" + " .word ._540\n" + " .word ._540\n" + " .word ._540\n" + " .word ._540\n" + " .word ._540\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + " .word ._552\n" + "._540:\n" + " ldr r0, ._554\n" + " ldr r0, [r0]\n" + " lsl r1, r2, #0x2\n" + " add r0, r0, #0x64\n" + " add r0, r0, r1\n" + " str r6, [r0]\n" + " b ._562\n" + "._555:\n" + " .align 2, 0\n" + "._554:\n" + " .word unk_debug_ewram_0+0x30\n" + "._532:\n" + " ldr r0, ._557\n" + " ldr r0, [r0]\n" + " add r0, r0, #0x64\n" + " add r0, r0, r3\n" + " str r6, [r0]\n" + " bl debug_80C5C94\n" + " b ._562\n" + "._558:\n" + " .align 2, 0\n" + "._557:\n" + " .word unk_debug_ewram_0+0x30\n" + "._529:\n" + " ldr r4, ._560\n" + " ldr r1, [r4]\n" + " add r0, r1, #0\n" + " add r0, r0, #0x64\n" + " add r0, r0, r3\n" + " str r6, [r0]\n" + " ldr r0, [r1, #0x64]\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl NationalPokedexNumToSpecies\n" + " ldr r5, [r4]\n" + " ldr r4, ._560 + 4\n" + " lsl r2, r6, #0x2\n" + " ldr r3, ._560 + 8\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " lsl r1, r0, #0x3\n" + " sub r1, r1, r0\n" + " lsl r1, r1, #0x2\n" + " add r1, r1, r3\n" + " ldrb r1, [r1, #0x13]\n" + " mov r0, #0xca\n" + " lsl r0, r0, #0x1\n" + " mul r0, r0, r1\n" + " add r2, r2, r0\n" + " add r2, r2, r4\n" + " ldr r0, [r2]\n" + " str r0, [r5, #0x6c]\n" + " bl debug_80C5C94\n" + " b ._562\n" + "._561:\n" + " .align 2, 0\n" + "._560:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gExperienceTables\n" + " .word gBaseStats\n" + "._530:\n" + " ldr r0, ._563\n" + " ldr r0, [r0]\n" + " add r0, r0, #0x64\n" + " add r0, r0, r3\n" + " str r6, [r0]\n" + " bl debug_80C5DEC\n" + " b ._562\n" + "._564:\n" + " .align 2, 0\n" + "._563:\n" + " .word unk_debug_ewram_0+0x30\n" + "._552:\n" + " ldr r0, ._565\n" + " ldr r0, [r0]\n" + " add r0, r0, #0x64\n" + " add r0, r0, r3\n" + " str r6, [r0]\n" + " bl debug_80C5EF4\n" + "._562:\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._566:\n" + " .align 2, 0\n" + "._565:\n" + " .word unk_debug_ewram_0+0x30\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5C94() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add sp, sp, #0xfffffff0\n" + " ldr r6, ._567\n" + " ldr r2, [r6]\n" + " add r0, r2, #0\n" + " add r0, r0, #0x98\n" + " ldr r4, [r0]\n" + " mov r1, #0x1f\n" + " and r4, r4, r1\n" + " add r0, r0, #0x8\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x5\n" + " orr r4, r4, r0\n" + " add r0, r2, #0\n" + " add r0, r0, #0xa8\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0xa\n" + " orr r4, r4, r0\n" + " add r0, r2, #0\n" + " add r0, r0, #0xb0\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0xf\n" + " orr r4, r4, r0\n" + " add r0, r2, #0\n" + " add r0, r0, #0xb8\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x14\n" + " orr r4, r4, r0\n" + " add r0, r2, #0\n" + " add r0, r0, #0xc0\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x19\n" + " orr r4, r4, r0\n" + " ldr r0, [r2, #0x64]\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl NationalPokedexNumToSpecies\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x10\n" + " lsr r1, r1, #0x10\n" + " ldr r0, [r6]\n" + " ldr r2, [r0, #0x68]\n" + " lsl r2, r2, #0x18\n" + " lsr r2, r2, #0x18\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " mov r5, #0x1\n" + " str r5, [sp]\n" + " ldr r3, [r0, #0x74]\n" + " str r3, [sp, #0x4]\n" + " str r5, [sp, #0x8]\n" + " ldr r3, [r0, #0x70]\n" + " str r3, [sp, #0xc]\n" + " add r3, r4, #0\n" + " bl CreateMon\n" + " ldr r0, [r6]\n" + " bl GetMonGender\n" + " ldr r1, [r6]\n" + " add r0, r0, #0x2\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " str r0, [r1, #0x78]\n" + " add r0, r1, #0\n" + " bl GetNature\n" + " ldr r1, [r6]\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " str r0, [r1, #0x7c]\n" + " add r0, r1, #0\n" + " mov r1, #0xd\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " add r1, r0, #0\n" + " add r1, r1, #0x80\n" + " str r2, [r1]\n" + " mov r1, #0xe\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " add r1, r0, #0\n" + " add r1, r1, #0x84\n" + " str r2, [r1]\n" + " mov r1, #0xf\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " add r1, r0, #0\n" + " add r1, r1, #0x88\n" + " str r2, [r1]\n" + " mov r1, #0x10\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " add r1, r0, #0\n" + " add r1, r1, #0x8c\n" + " str r2, [r1]\n" + " mov r1, #0x19\n" + " bl GetMonData\n" + " add r1, r0, #0\n" + " ldr r0, [r6]\n" + " str r1, [r0, #0x6c]\n" + " mov r1, #0x3a\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf0\n" + " str r2, [r1]\n" + " mov r1, #0x3b\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf4\n" + " str r2, [r1]\n" + " mov r1, #0x3c\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf8\n" + " str r2, [r1]\n" + " mov r1, #0x3d\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xfc\n" + " str r2, [r1]\n" + " mov r1, #0x3e\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r6]\n" + " mov r3, #0x80\n" + " lsl r3, r3, #0x1\n" + " add r1, r0, r3\n" + " str r2, [r1]\n" + " mov r1, #0x3f\n" + " bl GetMonData\n" + " ldr r1, [r6]\n" + " mov r2, #0x82\n" + " lsl r2, r2, #0x1\n" + " add r1, r1, r2\n" + " str r0, [r1]\n" + " add sp, sp, #0x10\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._568:\n" + " .align 2, 0\n" + "._567:\n" + " .word unk_debug_ewram_0+0x30\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5DEC() +{ + asm( + " push {r4, lr}\n" + " add sp, sp, #0xfffffffc\n" + " mov r0, #0x0\n" + " str r0, [sp]\n" + " ldr r4, ._569\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0x6c\n" + " mov r1, #0x19\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " mov r1, #0xd\n" + " mov r2, sp\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " mov r1, #0xe\n" + " mov r2, sp\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " mov r1, #0xf\n" + " mov r2, sp\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " mov r1, #0x10\n" + " mov r2, sp\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " bl CalculateMonStats\n" + " ldr r0, [r4]\n" + " bl GiveMonInitialMoveset\n" + " ldr r0, [r4]\n" + " mov r1, #0x38\n" + " bl GetMonData\n" + " add r1, r0, #0\n" + " ldr r0, [r4]\n" + " str r1, [r0, #0x68]\n" + " mov r1, #0xd\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0x80\n" + " str r2, [r1]\n" + " mov r1, #0xe\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0x84\n" + " str r2, [r1]\n" + " mov r1, #0xf\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0x88\n" + " str r2, [r1]\n" + " mov r1, #0x10\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0x8c\n" + " str r2, [r1]\n" + " mov r1, #0x3a\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf0\n" + " str r2, [r1]\n" + " mov r1, #0x3b\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf4\n" + " str r2, [r1]\n" + " mov r1, #0x3c\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf8\n" + " str r2, [r1]\n" + " mov r1, #0x3d\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xfc\n" + " str r2, [r1]\n" + " mov r1, #0x3e\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " mov r3, #0x80\n" + " lsl r3, r3, #0x1\n" + " add r1, r0, r3\n" + " str r2, [r1]\n" + " mov r1, #0x3f\n" + " bl GetMonData\n" + " ldr r1, [r4]\n" + " mov r2, #0x82\n" + " lsl r2, r2, #0x1\n" + " add r1, r1, r2\n" + " str r0, [r1]\n" + " add sp, sp, #0x4\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._570:\n" + " .align 2, 0\n" + "._569:\n" + " .word unk_debug_ewram_0+0x30\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5EF4() +{ + asm( + " push {r4, lr}\n" + " ldr r4, ._571\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0x98\n" + " mov r1, #0x27\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0x9c\n" + " mov r1, #0x1a\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xa0\n" + " mov r1, #0x28\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xa4\n" + " mov r1, #0x1b\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xa8\n" + " mov r1, #0x29\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xac\n" + " mov r1, #0x1c\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xb0\n" + " mov r1, #0x2a\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xb4\n" + " mov r1, #0x1d\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xb8\n" + " mov r1, #0x2b\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xbc\n" + " mov r1, #0x1e\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xc0\n" + " mov r1, #0x2c\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xc4\n" + " mov r1, #0x1f\n" + " bl SetMonData\n" + " ldr r0, [r4]\n" + " bl CalculateMonStats\n" + " ldr r0, [r4]\n" + " mov r1, #0x3a\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf0\n" + " str r2, [r1]\n" + " mov r1, #0x3b\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf4\n" + " str r2, [r1]\n" + " mov r1, #0x3c\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xf8\n" + " str r2, [r1]\n" + " mov r1, #0x3d\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xfc\n" + " str r2, [r1]\n" + " mov r1, #0x3e\n" + " bl GetMonData\n" + " add r2, r0, #0\n" + " ldr r0, [r4]\n" + " mov r3, #0x80\n" + " lsl r3, r3, #0x1\n" + " add r1, r0, r3\n" + " str r2, [r1]\n" + " mov r1, #0x3f\n" + " bl GetMonData\n" + " ldr r1, [r4]\n" + " mov r2, #0x82\n" + " lsl r2, r2, #0x1\n" + " add r1, r1, r2\n" + " str r0, [r1]\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "._572:\n" + " .align 2, 0\n" + "._571:\n" + " .word unk_debug_ewram_0+0x30\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C5FFC() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " add sp, sp, #0xffffffe0\n" + " ldr r1, ._578\n" + " add r0, sp, #0x10\n" + " mov r2, #0x4\n" + " bl memcpy\n" + " add r7, sp, #0x14\n" + " ldr r1, ._578 + 4\n" + " add r0, r7, #0\n" + " mov r2, #0x8\n" + " bl memcpy\n" + " ldr r5, ._578 + 8\n" + " ldr r2, [r5]\n" + " add r0, r2, #0\n" + " add r0, r0, #0x98\n" + " ldr r4, [r0]\n" + " mov r1, #0x1f\n" + " and r4, r4, r1\n" + " add r0, r0, #0x8\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x5\n" + " orr r4, r4, r0\n" + " add r0, r2, #0\n" + " add r0, r0, #0xa8\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0xa\n" + " orr r4, r4, r0\n" + " add r0, r2, #0\n" + " add r0, r0, #0xb0\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0xf\n" + " orr r4, r4, r0\n" + " add r0, r2, #0\n" + " add r0, r0, #0xb8\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x14\n" + " orr r4, r4, r0\n" + " add r0, r2, #0\n" + " add r0, r0, #0xc0\n" + " ldr r0, [r0]\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x19\n" + " orr r4, r4, r0\n" + " ldr r0, [r2, #0x64]\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl NationalPokedexNumToSpecies\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x10\n" + " lsr r1, r1, #0x10\n" + " ldr r0, [r5]\n" + " ldr r2, [r0, #0x68]\n" + " lsl r2, r2, #0x18\n" + " lsr r2, r2, #0x18\n" + " lsl r4, r4, #0x18\n" + " lsr r4, r4, #0x18\n" + " mov r6, #0x1\n" + " str r6, [sp]\n" + " ldr r3, [r0, #0x74]\n" + " str r3, [sp, #0x4]\n" + " str r6, [sp, #0x8]\n" + " ldr r3, [r0, #0x70]\n" + " str r3, [sp, #0xc]\n" + " add r3, r4, #0\n" + " bl CreateMon\n" + " ldr r2, [r5]\n" + " add r0, r2, #0\n" + " add r0, r0, #0x80\n" + " ldr r0, [r0]\n" + " cmp r0, #0\n" + " beq ._573 @cond_branch\n" + " lsl r1, r0, #0x10\n" + " lsr r1, r1, #0x10\n" + " add r0, r2, #0\n" + " mov r2, #0x0\n" + " bl SetMonMoveSlot\n" + "._573:\n" + " ldr r2, [r5]\n" + " add r0, r2, #0\n" + " add r0, r0, #0x84\n" + " ldr r0, [r0]\n" + " cmp r0, #0\n" + " beq ._574 @cond_branch\n" + " lsl r1, r0, #0x10\n" + " lsr r1, r1, #0x10\n" + " add r0, r2, #0\n" + " mov r2, #0x1\n" + " bl SetMonMoveSlot\n" + "._574:\n" + " ldr r2, [r5]\n" + " add r0, r2, #0\n" + " add r0, r0, #0x88\n" + " ldr r0, [r0]\n" + " cmp r0, #0\n" + " beq ._575 @cond_branch\n" + " lsl r1, r0, #0x10\n" + " lsr r1, r1, #0x10\n" + " add r0, r2, #0\n" + " mov r2, #0x2\n" + " bl SetMonMoveSlot\n" + "._575:\n" + " ldr r2, [r5]\n" + " add r0, r2, #0\n" + " add r0, r0, #0x8c\n" + " ldr r0, [r0]\n" + " cmp r0, #0\n" + " beq ._576 @cond_branch\n" + " lsl r1, r0, #0x10\n" + " lsr r1, r1, #0x10\n" + " add r0, r2, #0\n" + " mov r2, #0x3\n" + " bl SetMonMoveSlot\n" + "._576:\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0x6c\n" + " mov r1, #0x19\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0x98\n" + " mov r1, #0x27\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0x9c\n" + " mov r1, #0x1a\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xa0\n" + " mov r1, #0x28\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xa4\n" + " mov r1, #0x1b\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xa8\n" + " mov r1, #0x29\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xac\n" + " mov r1, #0x1c\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xb0\n" + " mov r1, #0x2a\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xb4\n" + " mov r1, #0x1d\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xb8\n" + " mov r1, #0x2b\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xbc\n" + " mov r1, #0x1e\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xc0\n" + " mov r1, #0x2c\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xc4\n" + " mov r1, #0x1f\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xc8\n" + " mov r1, #0x16\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xcc\n" + " mov r1, #0x17\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xd0\n" + " mov r1, #0x18\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xd4\n" + " mov r1, #0x21\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xd8\n" + " mov r1, #0x2f\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xdc\n" + " mov r1, #0x30\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xe0\n" + " mov r1, #0x20\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xe4\n" + " mov r1, #0x22\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0x90\n" + " mov r1, #0xc\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0x94\n" + " mov r1, #0x2e\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r1, r0, #0\n" + " add r1, r1, #0xec\n" + " ldr r2, [r1]\n" + " lsl r2, r2, #0x3\n" + " ldr r1, ._578 + 12\n" + " add r2, r2, r1\n" + " mov r1, #0x37\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " add r2, r0, #0\n" + " add r2, r2, #0xe8\n" + " mov r1, #0x2d\n" + " bl SetMonData\n" + " ldr r1, [r5]\n" + " add r0, r1, #0\n" + " add r0, r0, #0xe8\n" + " ldr r0, [r0]\n" + " cmp r0, #0\n" + " beq ._577 @cond_branch\n" + " add r0, r1, #0\n" + " mov r1, #0x2\n" + " add r2, sp, #0x10\n" + " bl SetMonData\n" + " add r2, sp, #0x1c\n" + " strb r6, [r2]\n" + " ldr r0, [r5]\n" + " mov r1, #0x3\n" + " bl SetMonData\n" + "._577:\n" + " ldr r0, [r5]\n" + " mov r1, #0x7\n" + " add r2, r7, #0\n" + " bl SetMonData\n" + " mov r2, sp\n" + " add r2, r2, #0x1e\n" + " mov r0, #0xff\n" + " strh r0, [r2]\n" + " ldr r0, [r5]\n" + " mov r1, #0x23\n" + " bl SetMonData\n" + " ldr r0, [r5]\n" + " bl CalculateMonStats\n" + " add sp, sp, #0x20\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._579:\n" + " .align 2, 0\n" + "._578:\n" + " .word gUnknown_Debug_083F8758\n" + " .word gUnknown_Debug_083F875C\n" + " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_083F86E8+0x4\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C627C() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add sp, sp, #0xfffffff8\n" + " lsl r0, r0, #0x18\n" + " lsr r4, r0, #0x18\n" + " add r6, r4, #0\n" + " ldr r1, ._584\n" + " mov r0, sp\n" + " mov r2, #0x2\n" + " bl memcpy\n" + " add r5, sp, #0x4\n" + " ldr r1, ._584 + 4\n" + " add r0, r5, #0\n" + " mov r2, #0x2\n" + " bl memcpy\n" + " cmp r4, #0x1\n" + " beq ._580 @cond_branch\n" + " cmp r4, #0x1\n" + " bgt ._581 @cond_branch\n" + " cmp r4, #0\n" + " beq ._582 @cond_branch\n" + " b ._595\n" + "._585:\n" + " .align 2, 0\n" + "._584:\n" + " .word gUnknown_Debug_083F7FD4\n" + " .word gUnknown_Debug_083F8764\n" + "._581:\n" + " cmp r6, #0x2\n" + " beq ._586 @cond_branch\n" + " b ._595\n" + "._582:\n" + " ldr r0, ._589\n" + " ldr r0, [r0]\n" + " ldr r1, ._589 + 4\n" + " add r0, r0, r1\n" + " b ._588\n" + "._590:\n" + " .align 2, 0\n" + "._589:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + "._580:\n" + " ldr r4, ._593\n" + " ldr r3, [r4]\n" + " ldr r1, ._593 + 4\n" + " add r0, r3, r1\n" + " ldrb r2, [r0]\n" + " ldr r1, ._593 + 8\n" + " mov r6, #0xb4\n" + " lsl r6, r6, #0x1\n" + " add r0, r3, r6\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldrb r0, [r0, #0x4]\n" + " sub r0, r0, #0x1\n" + " cmp r2, r0\n" + " bge ._595 @cond_branch\n" + " lsl r2, r2, #0x19\n" + " mov r0, #0xa0\n" + " lsl r0, r0, #0x13\n" + " add r2, r2, r0\n" + " lsr r2, r2, #0x18\n" + " add r0, r5, #0\n" + " mov r1, #0x1\n" + " bl MenuPrint\n" + " ldr r0, [r4]\n" + " ldr r2, ._593 + 4\n" + " add r1, r0, r2\n" + " ldrb r0, [r1]\n" + " add r0, r0, #0x1\n" + " strb r0, [r1]\n" + " ldr r0, [r4]\n" + " add r0, r0, r2\n" + "._588:\n" + " ldrb r2, [r0]\n" + " lsl r2, r2, #0x19\n" + " mov r6, #0xa0\n" + " lsl r6, r6, #0x13\n" + " add r2, r2, r6\n" + " lsr r2, r2, #0x18\n" + " mov r0, sp\n" + " mov r1, #0x1\n" + " bl MenuPrint\n" + " b ._595\n" + "._594:\n" + " .align 2, 0\n" + "._593:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + " .word gUnknown_Debug_083F8698\n" + "._586:\n" + " ldr r4, ._596\n" + " ldr r0, [r4]\n" + " ldr r2, ._596 + 4\n" + " add r1, r0, r2\n" + " ldrb r0, [r1]\n" + " cmp r0, #0\n" + " beq ._595 @cond_branch\n" + " add r2, r0, #0\n" + " lsl r2, r2, #0x19\n" + " mov r6, #0xa0\n" + " lsl r6, r6, #0x13\n" + " add r2, r2, r6\n" + " lsr r2, r2, #0x18\n" + " add r0, r5, #0\n" + " mov r1, #0x1\n" + " bl MenuPrint\n" + " ldr r0, [r4]\n" + " ldr r2, ._596 + 4\n" + " add r1, r0, r2\n" + " ldrb r0, [r1]\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1]\n" + " ldr r0, [r4]\n" + " add r0, r0, r2\n" + " ldrb r2, [r0]\n" + " lsl r2, r2, #0x19\n" + " add r2, r2, r6\n" + " lsr r2, r2, #0x18\n" + " mov r0, sp\n" + " mov r1, #0x1\n" + " bl MenuPrint\n" + "._595:\n" + " add sp, sp, #0x8\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._597:\n" + " .align 2, 0\n" + "._596:\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C6384() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r9\n" + " mov r6, r8\n" + " push {r6, r7}\n" + " mov r0, #0x0\n" + " mov r1, #0x4\n" + " mov r2, #0x1d\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r5, #0x0\n" + " ldr r3, ._600\n" + " ldr r1, ._600 + 4\n" + " ldr r0, [r1]\n" + " mov r2, #0xb4\n" + " lsl r2, r2, #0x1\n" + " add r0, r0, r2\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r3\n" + " ldr r0, [r0]\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " beq ._598 @cond_branch\n" + " add r4, r1, #0\n" + " ldr r0, ._600 + 8\n" + " mov r9, r0\n" + " mov r8, r3\n" + " add r7, r2, #0\n" + " mov r6, #0x1\n" + "._599:\n" + " ldr r0, [r4]\n" + " add r0, r0, r9\n" + " mov r1, #0xfc\n" + " strb r1, [r0]\n" + " ldr r0, [r4]\n" + " add r1, r1, #0x70\n" + " add r0, r0, r1\n" + " strb r6, [r0]\n" + " ldr r0, [r4]\n" + " ldr r2, ._600 + 12\n" + " add r0, r0, r2\n" + " strb r6, [r0]\n" + " ldr r1, [r4]\n" + " add r2, r2, #0x1\n" + " add r0, r1, r2\n" + " add r1, r1, r7\n" + " ldrb r1, [r1]\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r8\n" + " ldr r1, [r1]\n" + " add r1, r1, r5\n" + " ldrb r1, [r1]\n" + " mov r2, #0x1\n" + " bl debug_80C5738\n" + " ldr r0, [r4]\n" + " add r0, r0, r9\n" + " lsl r2, r5, #0x19\n" + " mov r1, #0xa0\n" + " lsl r1, r1, #0x13\n" + " add r2, r2, r1\n" + " lsr r2, r2, #0x18\n" + " mov r1, #0x2\n" + " bl MenuPrint\n" + " add r0, r5, #1\n" + " lsl r0, r0, #0x10\n" + " lsr r5, r0, #0x10\n" + " ldr r0, [r4]\n" + " add r0, r0, r7\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r8\n" + " ldr r0, [r0]\n" + " add r0, r0, r5\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " bne ._599 @cond_branch\n" + "._598:\n" + " pop {r3, r4}\n" + " mov r8, r3\n" + " mov r9, r4\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._601:\n" + " .align 2, 0\n" + "._600:\n" + " .word gUnknown_Debug_083F8698\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x16b\n" + " .word 0x16d\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C643C() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r8\n" + " push {r7}\n" + " mov r0, #0x2\n" + " mov r1, #0x5\n" + " mov r2, #0x1c\n" + " mov r3, #0x12\n" + " bl MenuFillWindowRectWithBlankTile\n" + " mov r5, #0x0\n" + " ldr r6, ._605\n" + " ldr r1, ._605 + 4\n" + " ldr r0, [r1]\n" + " mov r3, #0xb4\n" + " lsl r3, r3, #0x1\n" + " add r0, r0, r3\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r6\n" + " ldr r0, [r0]\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " beq ._602 @cond_branch\n" + " add r4, r1, #0\n" + " mov r0, #0x1\n" + " mov r8, r0\n" + "._607:\n" + " ldr r0, [r4]\n" + " ldr r7, ._605 + 8\n" + " add r2, r0, r7\n" + " mov r0, #0xfc\n" + " strb r0, [r2]\n" + " ldr r0, [r4]\n" + " mov r2, #0xb6\n" + " lsl r2, r2, #0x1\n" + " add r0, r0, r2\n" + " mov r7, r8\n" + " strb r7, [r0]\n" + " ldr r2, [r4]\n" + " ldr r7, ._605 + 12\n" + " add r0, r2, r7\n" + " ldrb r0, [r0]\n" + " cmp r5, r0\n" + " bne ._603 @cond_branch\n" + " ldr r0, ._605 + 16\n" + " add r2, r2, r0\n" + " mov r0, #0x2\n" + " strb r0, [r2]\n" + " ldr r1, [r1]\n" + " mov r2, #0xb7\n" + " lsl r2, r2, #0x1\n" + " add r0, r1, r2\n" + " add r1, r1, r3\n" + " ldrb r1, [r1]\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r6\n" + " ldr r1, [r1]\n" + " add r1, r1, r5\n" + " ldrb r1, [r1]\n" + " mov r2, #0x2\n" + " bl debug_80C5738\n" + " b ._604\n" + "._606:\n" + " .align 2, 0\n" + "._605:\n" + " .word gUnknown_Debug_083F8698\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x16b\n" + " .word 0x169\n" + " .word 0x16d\n" + "._603:\n" + " ldr r3, ._608\n" + " add r0, r2, r3\n" + " mov r7, r8\n" + " strb r7, [r0]\n" + " ldr r1, [r1]\n" + " mov r2, #0xb7\n" + " lsl r2, r2, #0x1\n" + " add r0, r1, r2\n" + " ldr r2, ._608 + 4\n" + " sub r3, r3, #0x5\n" + " add r1, r1, r3\n" + " ldrb r1, [r1]\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r2\n" + " ldr r1, [r1]\n" + " add r1, r1, r5\n" + " ldrb r1, [r1]\n" + " mov r2, #0x1\n" + " bl debug_80C5738\n" + "._604:\n" + " ldr r0, [r4]\n" + " ldr r7, ._608 + 8\n" + " add r0, r0, r7\n" + " lsl r2, r5, #0x19\n" + " mov r1, #0xa0\n" + " lsl r1, r1, #0x13\n" + " add r2, r2, r1\n" + " lsr r2, r2, #0x18\n" + " mov r1, #0x2\n" + " bl MenuPrint\n" + " add r0, r5, #1\n" + " lsl r0, r0, #0x10\n" + " lsr r5, r0, #0x10\n" + " ldr r6, ._608 + 4\n" + " add r1, r4, #0\n" + " ldr r0, [r4]\n" + " mov r3, #0xb4\n" + " lsl r3, r3, #0x1\n" + " add r0, r0, r3\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r6\n" + " ldr r0, [r0]\n" + " add r0, r0, r5\n" + " ldrb r0, [r0]\n" + " cmp r0, #0xff\n" + " bne ._607 @cond_branch\n" + "._602:\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._609:\n" + " .align 2, 0\n" + "._608:\n" + " .word 0x16d\n" + " .word gUnknown_Debug_083F8698\n" + " .word 0x16b\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C6544() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r9\n" + " mov r6, r8\n" + " push {r6, r7}\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " mov r9, r0\n" + " ldr r0, ._614\n" + " mov r8, r0\n" + " ldr r6, ._614 + 4\n" + " ldr r1, [r6]\n" + " mov r5, #0xb4\n" + " lsl r5, r5, #0x1\n" + " add r0, r1, r5\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r8\n" + " ldr r4, ._614 + 8\n" + " add r1, r1, r4\n" + " ldrb r1, [r1]\n" + " ldr r0, [r0]\n" + " add r0, r0, r1\n" + " ldrb r0, [r0]\n" + " bl debug_80C5B60\n" + " add r7, r0, #0\n" + " ldr r2, ._614 + 12\n" + " ldr r3, [r6]\n" + " add r5, r3, r5\n" + " ldrb r0, [r5]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r8\n" + " add r4, r3, r4\n" + " ldrb r1, [r4]\n" + " ldr r0, [r0]\n" + " add r0, r0, r1\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r2, r2, #0x4\n" + " add r0, r0, r2\n" + " ldr r1, [r0]\n" + " ldr r5, [r1]\n" + " ldr r4, [r1, #0x4]\n" + " ldr r2, ._614 + 16\n" + " mov r6, #0xb5\n" + " lsl r6, r6, #0x1\n" + " add r0, r3, r6\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r2\n" + " ldr r3, [r0]\n" + " ldrb r0, [r1, #0x8]\n" + " cmp r0, #0\n" + " bne ._623 @cond_branch\n" + " mov r0, r9\n" + " cmp r0, #0x1\n" + " beq ._611 @cond_branch\n" + " cmp r0, #0x2\n" + " beq ._612 @cond_branch\n" + " b ._623\n" + "._615:\n" + " .align 2, 0\n" + "._614:\n" + " .word gUnknown_Debug_083F8698\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + " .word gUnknown_Debug_083F8554\n" + " .word gUnknown_Debug_083F8768\n" + "._611:\n" + " sub r0, r4, r3\n" + " cmp r7, r0\n" + " bcs ._616 @cond_branch\n" + " add r7, r7, r3\n" + " b ._623\n" + "._616:\n" + " cmp r7, r4\n" + " bcc ._622 @cond_branch\n" + " b ._619\n" + "._612:\n" + " add r0, r5, r3\n" + " cmp r7, r0\n" + " bls ._620 @cond_branch\n" + " sub r7, r7, r3\n" + " b ._623\n" + "._620:\n" + " cmp r7, r5\n" + " bls ._622 @cond_branch\n" + "._619:\n" + " add r7, r5, #0\n" + " b ._623\n" + "._622:\n" + " add r7, r4, #0\n" + "._623:\n" + " ldr r1, ._624\n" + " ldr r0, ._624 + 4\n" + " ldr r2, [r0]\n" + " mov r3, #0xb4\n" + " lsl r3, r3, #0x1\n" + " add r0, r2, r3\n" + " ldrb r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r6, ._624 + 8\n" + " add r1, r2, r6\n" + " ldrb r1, [r1]\n" + " ldr r0, [r0]\n" + " add r0, r0, r1\n" + " ldrb r1, [r0]\n" + " add r0, r7, #0\n" + " bl debug_80C5B74\n" + " pop {r3, r4}\n" + " mov r8, r3\n" + " mov r9, r4\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._625:\n" + " .align 2, 0\n" + "._624:\n" + " .word gUnknown_Debug_083F8698\n" + " .word unk_debug_ewram_0+0x30\n" + " .word 0x169\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C6630() +{ + asm( + " push {r4, r5, lr}\n" + " add r4, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " lsl r2, r2, #0x18\n" + " lsr r2, r2, #0x18\n" + " lsl r3, r3, #0x18\n" + " lsr r3, r3, #0x18\n" + " mov r0, #0xfc\n" + " strb r0, [r4]\n" + " add r4, r4, #0x1\n" + " mov r0, #0x1\n" + " strb r0, [r4]\n" + " add r4, r4, #0x1\n" + " cmp r2, #0x2\n" + " bne ._626 @cond_branch\n" + " ldr r0, ._629\n" + " ldr r0, [r0]\n" + " mov r5, #0xb5\n" + " lsl r5, r5, #0x1\n" + " add r0, r0, r5\n" + " ldrb r0, [r0]\n" + " cmp r3, r0\n" + " beq ._627 @cond_branch\n" + " strb r2, [r4]\n" + " b ._628\n" + "._630:\n" + " .align 2, 0\n" + "._629:\n" + " .word unk_debug_ewram_0+0x30\n" + "._627:\n" + " mov r0, #0x4\n" + "._626:\n" + " strb r0, [r4]\n" + "._628:\n" + " add r0, r1, #0\n" + " add r0, r0, #0xa1\n" + " strb r0, [r4, #0x1]\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C6678() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r9\n" + " mov r6, r8\n" + " push {r6, r7}\n" + " mov r9, r0\n" + " add r6, r1, #0\n" + " lsl r2, r2, #0x18\n" + " lsr r2, r2, #0x18\n" + " lsl r3, r3, #0x18\n" + " lsr r3, r3, #0x18\n" + " mov r8, r3\n" + " mov r7, #0x0\n" + " sub r0, r2, #1\n" + " cmp r0, #0x9\n" + " bhi ._644 @cond_branch\n" + " lsl r0, r0, #0x2\n" + " ldr r1, ._633\n" + " add r0, r0, r1\n" + " ldr r0, [r0]\n" + " mov pc, r0\n" + "._634:\n" + " .align 2, 0\n" + "._633:\n" + " .word ._632\n" + "._632:\n" + " .word ._635\n" + " .word ._636\n" + " .word ._637\n" + " .word ._638\n" + " .word ._639\n" + " .word ._640\n" + " .word ._641\n" + " .word ._642\n" + " .word ._643\n" + " .word ._644\n" + "._644:\n" + " mov r0, r9\n" + " add r4, r0, r7\n" + " ldr r5, ._645\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x9\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._643:\n" + " mov r1, r9\n" + " add r4, r1, r7\n" + " ldr r5, ._645 + 4\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x8\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._642:\n" + " mov r0, r9\n" + " add r4, r0, r7\n" + " ldr r5, ._645 + 8\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x7\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._641:\n" + " mov r1, r9\n" + " add r4, r1, r7\n" + " ldr r5, ._645 + 12\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x6\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._640:\n" + " mov r0, r9\n" + " add r4, r0, r7\n" + " ldr r5, ._645 + 16\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x5\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._639:\n" + " mov r1, r9\n" + " add r4, r1, r7\n" + " ldr r5, ._645 + 20\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x4\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._638:\n" + " mov r0, r9\n" + " add r4, r0, r7\n" + " mov r5, #0xfa\n" + " lsl r5, r5, #0x2\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x3\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " add r1, r5, #0\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._637:\n" + " mov r1, r9\n" + " add r4, r1, r7\n" + " add r0, r6, #0\n" + " mov r1, #0x64\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x2\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " mov r1, #0x64\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._636:\n" + " mov r0, r9\n" + " add r4, r0, r7\n" + " add r0, r6, #0\n" + " mov r1, #0xa\n" + " bl __udivsi3\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " add r0, r4, #0\n" + " mov r2, r8\n" + " mov r3, #0x1\n" + " bl debug_80C6630\n" + " add r0, r6, #0\n" + " mov r1, #0xa\n" + " bl __umodsi3\n" + " add r6, r0, #0\n" + " add r0, r7, #4\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + "._635:\n" + " mov r1, r9\n" + " add r0, r1, r7\n" + " lsl r1, r6, #0x18\n" + " lsr r1, r1, #0x18\n" + " mov r2, r8\n" + " mov r3, #0x0\n" + " bl debug_80C6630\n" + " pop {r3, r4}\n" + " mov r8, r3\n" + " mov r9, r4\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._646:\n" + " .align 2, 0\n" + "._645:\n" + " .word 0x3b9aca00\n" + " .word 0x5f5e100\n" + " .word 0x989680\n" + " .word 0xf4240\n" + " .word 0x186a0\n" + " .word 0x2710\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C689C() +{ + asm( + " push {r4, r5, lr}\n" + " add r5, r0, #0\n" + " add r4, r1, #0\n" + " lsl r2, r2, #0x18\n" + " lsr r2, r2, #0x18\n" + " mov r3, #0x0\n" + " ldrb r0, [r4]\n" + " b ._647\n" + "._649:\n" + " add r1, r5, r3\n" + " add r0, r4, r3\n" + " ldrb r0, [r0]\n" + " strb r0, [r1]\n" + " add r0, r3, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r3, r0, #0x18\n" + " add r0, r4, r3\n" + " ldrb r0, [r0]\n" + "._647:\n" + " cmp r0, #0xff\n" + " beq ._648 @cond_branch\n" + " cmp r3, r2\n" + " bcc ._649 @cond_branch\n" + "._648:\n" + " pop {r4, r5}\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C68CC() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " add sp, sp, #0xfffffff8\n" + " lsl r0, r0, #0x10\n" + " lsr r4, r0, #0x10\n" + " lsl r1, r1, #0x18\n" + " lsr r6, r1, #0x18\n" + " lsl r2, r2, #0x18\n" + " lsr r5, r2, #0x18\n" + " lsl r3, r3, #0x18\n" + " lsr r3, r3, #0x18\n" + " mov r2, #0x0\n" + " mov r1, #0x0\n" + "._650:\n" + " mov r7, sp\n" + " add r0, r7, r2\n" + " strb r1, [r0]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x3\n" + " bls ._650 @cond_branch\n" + " mov r1, sp\n" + " mov r0, #0xff\n" + " strb r0, [r1, #0x4]\n" + " cmp r3, #0x2\n" + " beq ._651 @cond_branch\n" + " cmp r3, #0x2\n" + " bgt ._652 @cond_branch\n" + " cmp r3, #0x1\n" + " beq ._653 @cond_branch\n" + " b ._654\n" + "._652:\n" + " cmp r3, #0x3\n" + " beq ._655 @cond_branch\n" + "._654:\n" + " mov r1, sp\n" + " lsr r0, r4, #0xc\n" + " strb r0, [r1]\n" + "._655:\n" + " mov r1, sp\n" + " mov r0, #0xf0\n" + " lsl r0, r0, #0x4\n" + " and r0, r0, r4\n" + " lsr r0, r0, #0x8\n" + " strb r0, [r1, #0x1]\n" + "._651:\n" + " mov r1, sp\n" + " mov r0, #0xf0\n" + " and r0, r0, r4\n" + " lsr r0, r0, #0x4\n" + " strb r0, [r1, #0x2]\n" + "._653:\n" + " mov r2, sp\n" + " mov r1, #0xf\n" + " add r0, r4, #0\n" + " and r0, r0, r1\n" + " strb r0, [r2, #0x3]\n" + " mov r2, #0x0\n" + "._658:\n" + " mov r0, sp\n" + " add r1, r0, r2\n" + " ldrb r0, [r1]\n" + " cmp r0, #0x9\n" + " bhi ._656 @cond_branch\n" + " add r0, r0, #0xa1\n" + " b ._657\n" + "._656:\n" + " add r0, r0, #0xb1\n" + "._657:\n" + " strb r0, [r1]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x3\n" + " bls ._658 @cond_branch\n" + " mov r0, #0x4\n" + " sub r0, r0, r3\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " add r0, r0, sp\n" + " add r1, r6, #0\n" + " add r2, r5, #0\n" + " bl MenuPrint\n" + " add sp, sp, #0x8\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void InitSeePokemonGraphics() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add sp, sp, #0xfffffff8\n" + " bl debug_80C35DC\n" + " ldr r1, ._659\n" + " ldr r2, ._659 + 4\n" + " ldr r0, ._659 + 8\n" + " str r1, [r0]\n" + " str r2, [r0, #0x4]\n" + " ldr r1, ._659 + 12\n" + " str r1, [r0, #0x8]\n" + " ldr r0, [r0, #0x8]\n" + " ldr r0, ._659 + 16\n" + " mov r1, #0x80\n" + " mov r2, #0x60\n" + " bl LoadPalette\n" + " ldr r1, ._659 + 20\n" + " add r0, sp, #0x4\n" + " strh r1, [r0]\n" + " mov r1, #0x0\n" + " mov r2, #0x2\n" + " bl LoadPalette\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " mov r5, #0x0\n" + " str r5, [sp]\n" + " mov r1, #0x0\n" + " mov r2, #0x10\n" + " mov r3, #0x0\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._659 + 24\n" + " mov r6, #0x0\n" + " strh r5, [r0]\n" + " add r0, r0, #0x4\n" + " strh r5, [r0]\n" + " sub r0, r0, #0x2\n" + " strh r5, [r0]\n" + " add r0, r0, #0x4\n" + " strh r5, [r0]\n" + " ldr r1, ._659 + 28\n" + " mov r0, #0x3f\n" + " strh r0, [r1]\n" + " add r1, r1, #0x2\n" + " mov r0, #0x1f\n" + " strh r0, [r1]\n" + " add r1, r1, #0x6\n" + " mov r0, #0xf1\n" + " strh r0, [r1]\n" + " ldr r0, ._659 + 32\n" + " strh r5, [r0]\n" + " add r1, r1, #0x4\n" + " mov r0, #0x7\n" + " strh r0, [r1]\n" + " ldr r3, ._659 + 36\n" + " ldrh r2, [r3]\n" + " strh r5, [r3]\n" + " ldr r4, ._659 + 40\n" + " ldrh r0, [r4]\n" + " mov r1, #0x1\n" + " orr r0, r0, r1\n" + " strh r0, [r4]\n" + " strh r2, [r3]\n" + " ldr r0, ._659 + 44\n" + " bl SetVBlankCallback\n" + " ldr r0, ._659 + 48\n" + " bl SetMainCallback2\n" + " bl sub_809D51C\n" + " ldr r1, ._659 + 52\n" + " ldr r2, ._659 + 56\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x2\n" + " ldr r2, ._659 + 60\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " sub r1, r1, #0xa\n" + " mov r2, #0xcd\n" + " lsl r2, r2, #0x6\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r0, ._659 + 64\n" + " mov r1, #0x0\n" + " bl CreateTask\n" + " ldr r1, ._659 + 68\n" + " ldr r0, ._659 + 72\n" + " str r0, [r1]\n" + " ldr r1, ._659 + 76\n" + " strh r1, [r0]\n" + " strb r6, [r0, #0x2]\n" + " strb r6, [r0, #0x3]\n" + " strb r6, [r0, #0x5]\n" + " strb r6, [r0, #0x7]\n" + " strb r6, [r0, #0xa]\n" + " strb r6, [r0, #0x8]\n" + " ldr r4, ._659 + 80\n" + " add r0, r4, #0\n" + " mov r1, #0x6c\n" + " mov r2, #0x74\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " ldr r6, ._659 + 84\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " strh r5, [r0, #0x2e]\n" + " mov r1, #0x0\n" + " bl StartSpriteAnim\n" + " add r0, r4, #0\n" + " mov r1, #0x6c\n" + " mov r2, #0x74\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " mov r1, #0x1\n" + " strh r1, [r0, #0x2e]\n" + " bl StartSpriteAnim\n" + " add r0, r4, #0\n" + " mov r1, #0x6c\n" + " mov r2, #0x74\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " mov r1, #0x2\n" + " strh r1, [r0, #0x2e]\n" + " bl StartSpriteAnim\n" + " add sp, sp, #0x8\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._660:\n" + " .align 2, 0\n" + "._659:\n" + " .word byte_83F88EC\n" + " .word 0x600e000\n" + " .word 0x40000d4\n" + " .word 0x80000400\n" + " .word word_83F888C\n" + " .word 0x7fff\n" + " .word 0x4000040\n" + " .word 0x4000048\n" + " .word 0x4000052\n" + " .word 0x4000208\n" + " .word 0x4000200\n" + " .word debug_80C3758+1\n" + " .word debug_80C370C+1\n" + " .word 0x4000008\n" + " .word 0x1f0b\n" + " .word 0x1e0a\n" + " .word debug_80C6B00+1\n" + " .word unk_debug_ewram_0+0x34\n" + " .word +0x2018000\n" + " .word 0x115\n" + " .word unk_83F8868+0xc\n" + " .word gSprites\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C6B00() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r8\n" + " push {r7}\n" + " add sp, sp, #0xffffffec\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + " ldr r1, ._666\n" + " mov r0, sp\n" + " mov r2, #0x12\n" + " bl memcpy\n" + " mov r0, #0xa\n" + " mov r1, #0x0\n" + " mov r2, #0xf\n" + " mov r3, #0x7\n" + " bl MenuDrawTextWindow\n" + " mov r0, #0x0\n" + " mov r1, #0x0\n" + " mov r2, #0x9\n" + " mov r3, #0x9\n" + " bl MenuDrawTextWindow\n" + " mov r0, #0x0\n" + " mov r1, #0xa\n" + " mov r2, #0x9\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r0, #0x10\n" + " mov r1, #0x0\n" + " mov r2, #0x1d\n" + " mov r3, #0x7\n" + " bl MenuDrawTextWindow\n" + " ldr r0, ._666 + 4\n" + " mov r1, #0x11\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " ldr r0, ._666 + 8\n" + " mov r1, #0x1b\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " ldr r0, ._666 + 12\n" + " mov r1, #0x11\n" + " mov r2, #0x5\n" + " bl MenuPrint\n" + " mov r0, #0xa\n" + " mov r1, #0x8\n" + " mov r2, #0x1d\n" + " mov r3, #0xc\n" + " bl MenuDrawTextWindow\n" + " mov r2, #0x0\n" + " ldr r4, ._666 + 16\n" + " ldr r0, ._666 + 20\n" + " add r3, r0, #0\n" + "._661:\n" + " lsl r0, r2, #0x1\n" + " add r0, r0, r4\n" + " add r1, r2, r3\n" + " strh r1, [r0]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0xe\n" + " bls ._661 @cond_branch\n" + " mov r2, #0x0\n" + " ldr r5, ._666 + 24\n" + " lsl r6, r7, #0x2\n" + " mov r8, r6\n" + " ldr r4, ._666 + 28\n" + " ldr r0, ._666 + 32\n" + " add r3, r0, #0\n" + "._662:\n" + " lsl r0, r2, #0x1\n" + " add r0, r0, r4\n" + " add r1, r2, r3\n" + " strh r1, [r0]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0xe\n" + " bls ._662 @cond_branch\n" + " add r0, r5, #0\n" + " mov r1, #0x14\n" + " mov r2, #0xa\n" + " bl MenuPrint\n" + " mov r0, #0xa\n" + " mov r1, #0xd\n" + " mov r2, #0x1d\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r1, sp\n" + " mov r0, #0x23\n" + " strb r0, [r1]\n" + " mov r2, #0x0\n" + " ldr r4, ._666 + 36\n" + " mov r5, #0x93\n" + " lsl r5, r5, #0x8\n" + " add r3, r5, #0\n" + "._663:\n" + " lsl r1, r2, #0x1\n" + " add r1, r1, r4\n" + " mov r6, sp\n" + " add r0, r6, r2\n" + " ldrb r0, [r0]\n" + " add r0, r0, r3\n" + " strh r0, [r1]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x11\n" + " bls ._663 @cond_branch\n" + " mov r1, sp\n" + " mov r0, #0x24\n" + " strb r0, [r1]\n" + " mov r2, #0x0\n" + " ldr r5, ._666 + 40\n" + " ldr r4, ._666 + 44\n" + " mov r0, #0x93\n" + " lsl r0, r0, #0x8\n" + " add r3, r0, #0\n" + "._664:\n" + " lsl r1, r2, #0x1\n" + " add r1, r1, r4\n" + " mov r6, sp\n" + " add r0, r6, r2\n" + " ldrb r0, [r0]\n" + " add r0, r0, r3\n" + " strh r0, [r1]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x11\n" + " bls ._664 @cond_branch\n" + " mov r1, sp\n" + " mov r0, #0x25\n" + " strb r0, [r1]\n" + " mov r2, #0x0\n" + " ldr r4, ._666 + 48\n" + " mov r0, #0x93\n" + " lsl r0, r0, #0x8\n" + " add r3, r0, #0\n" + "._665:\n" + " lsl r1, r2, #0x1\n" + " add r1, r1, r4\n" + " mov r6, sp\n" + " add r0, r6, r2\n" + " ldrb r0, [r0]\n" + " add r0, r0, r3\n" + " strh r0, [r1]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x11\n" + " bls ._665 @cond_branch\n" + " add r0, r5, #0\n" + " mov r1, #0xf\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " ldr r1, ._666 + 52\n" + " ldr r2, ._666 + 56\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r5, ._666 + 60\n" + " add r0, r5, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._666 + 64\n" + " mov r6, r8\n" + " add r0, r6, r7\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._666 + 68\n" + " str r1, [r0]\n" + " add sp, sp, #0x14\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._667:\n" + " .align 2, 0\n" + "._666:\n" + " .word gUnknown_Debug_083F8815\n" + " .word gUnknown_Debug_083F87D0\n" + " .word gUnknown_Debug_083F87D8\n" + " .word gUnknown_Debug_083F87E0\n" + " .word 0x600fa56\n" + " .word 0xa311\n" + " .word gUnknown_Debug_083F87F4\n" + " .word 0x600f256\n" + " .word 0x8301\n" + " .word 0x600f396\n" + " .word gUnknown_Debug_083F8801\n" + " .word 0x600f3d6\n" + " .word 0x600f416\n" + " .word 0x4000040\n" + " .word 0x51ef\n" + " .word 0x699f\n" + " .word gTasks\n" + " .word debug_80C6CB8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C6CB8() +{ + 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, #0xfffffff4\n" + " mov sl, r0\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " mov sl, r0\n" + " ldr r5, ._668\n" + " ldr r4, [r5]\n" + " ldrh r2, [r4]\n" + " lsl r0, r2, #0x3\n" + " ldr r1, ._668 + 4\n" + " add r0, r0, r1\n" + " ldr r1, ._668 + 8\n" + " lsl r2, r2, #0x2\n" + " add r2, r2, r1\n" + " ldrb r1, [r2]\n" + " ldrb r2, [r2, #0x1]\n" + " ldr r3, ._668 + 12\n" + " mov r8, r3\n" + " ldr r6, [r3]\n" + " str r6, [sp, #0x8]\n" + " ldr r3, [r3, #0x4]\n" + " str r3, [sp]\n" + " ldrh r3, [r4]\n" + " str r3, [sp, #0x4]\n" + " add r3, r6, #0\n" + " bl DecompressPicFromTable_2\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " ldr r7, ._668 + 16\n" + " add r0, r0, r7\n" + " bl LoadCompressedObjectPalette\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " mov r1, #0x1\n" + " bl GetMonSpriteTemplate_803C56C\n" + " ldr r0, ._668 + 20\n" + " mov r1, #0x28\n" + " mov r2, #0x28\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " ldr r1, [r5]\n" + " strb r0, [r1, #0x2]\n" + " ldr r2, [r5]\n" + " ldrb r1, [r2, #0x2]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " ldr r1, ._668 + 24\n" + " add r0, r0, r1\n" + " ldr r3, ._668 + 28\n" + " mov r9, r3\n" + " str r3, [r0]\n" + " ldrb r0, [r2, #0x2]\n" + " lsl r1, r0, #0x4\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x2\n" + " ldr r6, ._668 + 32\n" + " add r1, r1, r6\n" + " ldrb r2, [r1, #0x5]\n" + " mov r6, #0xd\n" + " neg r6, r6\n" + " add r0, r6, #0\n" + " and r0, r0, r2\n" + " strb r0, [r1, #0x5]\n" + " ldr r4, [r5]\n" + " ldrh r2, [r4]\n" + " lsl r0, r2, #0x3\n" + " ldr r1, ._668 + 36\n" + " add r0, r0, r1\n" + " ldr r1, ._668 + 40\n" + " lsl r2, r2, #0x2\n" + " add r2, r2, r1\n" + " ldrb r1, [r2]\n" + " ldrb r2, [r2, #0x1]\n" + " mov r7, r8\n" + " ldr r3, [r7, #0x8]\n" + " str r3, [sp]\n" + " ldrh r3, [r4]\n" + " str r3, [sp, #0x4]\n" + " ldr r3, [sp, #0x8]\n" + " bl DecompressPicFromTable_2\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " ldr r1, ._668 + 16\n" + " add r0, r0, r1\n" + " bl LoadCompressedObjectPalette\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " mov r1, #0x2\n" + " bl GetMonSpriteTemplate_803C56C\n" + " ldr r0, ._668 + 20\n" + " mov r1, #0x28\n" + " mov r2, #0x78\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " ldr r1, [r5]\n" + " strb r0, [r1, #0x3]\n" + " ldr r2, [r5]\n" + " ldrb r1, [r2, #0x3]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " ldr r3, ._668 + 24\n" + " add r0, r0, r3\n" + " mov r7, r9\n" + " str r7, [r0]\n" + " ldrb r1, [r2, #0x3]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " ldr r1, ._668 + 32\n" + " add r0, r0, r1\n" + " ldrb r1, [r0, #0x5]\n" + " and r6, r6, r1\n" + " strb r6, [r0, #0x5]\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " ldr r1, ._668 + 44\n" + " mov r2, #0x0\n" + " str r2, [sp]\n" + " str r2, [sp, #0x4]\n" + " mov r2, #0x68\n" + " mov r3, #0x2c\n" + " bl CreateMonIcon\n" + " ldr r1, [r5]\n" + " strb r0, [r1, #0x4]\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " bl SpeciesToNationalPokedexNum\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " mov r2, #0xff\n" + " lsl r2, r2, #0x2\n" + " mov r1, #0x2\n" + " bl sub_8091738\n" + " ldr r1, ._668 + 48\n" + " ldr r3, ._668 + 52\n" + " add r0, r3, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x2\n" + " ldr r6, ._668 + 56\n" + " add r0, r6, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x3e\n" + " ldr r7, ._668 + 60\n" + " add r0, r7, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x2\n" + " ldr r2, ._668 + 64\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " mov r1, #0x11\n" + " mov r2, #0x3\n" + " bl debug_80C3800\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " mov r1, #0x1a\n" + " mov r2, #0x5\n" + " bl debug_80C376C\n" + " ldr r2, [r5]\n" + " ldrb r1, [r2, #0x2]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " ldr r3, ._668 + 32\n" + " add r0, r0, r3\n" + " ldrb r0, [r0, #0x5]\n" + " lsr r0, r0, #0x4\n" + " strb r0, [r2, #0x6]\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x6]\n" + " lsl r0, r0, #0x5\n" + " ldr r4, ._668 + 68\n" + " add r0, r0, r4\n" + " ldr r6, ._668 + 72\n" + " add r1, r4, r6\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x6]\n" + " lsl r0, r0, #0x5\n" + " add r0, r0, r4\n" + " ldr r1, ._668 + 76\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r1, ._668 + 80\n" + " mov r7, sl\n" + " lsl r0, r7, #0x2\n" + " add r0, r0, sl\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._668 + 84\n" + " str r1, [r0]\n" + " ldr r0, [r5]\n" + " mov r1, #0x0\n" + " strb r1, [r0, #0x9]\n" + " bl StopCryAndClearCrySongs\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " mov r1, #0x0\n" + " bl PlayCry1\n" + " add sp, sp, #0xc\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" + "._669:\n" + " .align 2, 0\n" + "._668:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gMonFrontPicTable\n" + " .word gMonFrontPicCoords\n" + " .word gUnknown_081FAF4C\n" + " .word gMonPaletteTable\n" + " .word gUnknown_02024E8C\n" + " .word gSprites+0x1c\n" + " .word debug_69+1\n" + " .word gSprites\n" + " .word gMonBackPicTable\n" + " .word gMonBackPicCoords\n" + " .word sub_809D62C+1\n" + " .word 0x600f858\n" + " .word 0xf3fc\n" + " .word 0xf3fd\n" + " .word 0xf3fe\n" + " .word 0xf3ff\n" + " .word gPlttBufferUnfaded+0x200\n" + " .word 0xffffff00\n" + " .word gPlttBufferFaded+0x100\n" + " .word gTasks\n" + " .word debug_80C6EE8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C6EE8() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add r6, r0, #0\n" + " lsl r6, r6, #0x18\n" + " lsr r6, r6, #0x18\n" + " ldr r4, ._670\n" + " ldr r5, ._670 + 4\n" + " ldr r1, [r5]\n" + " add r1, r1, #0x10\n" + " add r0, r4, #0\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r0, ._670 + 8\n" + " add r4, r4, r0\n" + " ldr r3, [r5]\n" + " ldrb r0, [r3, #0x7]\n" + " add r0, r0, #0x81\n" + " lsl r0, r0, #0x1\n" + " add r0, r0, r4\n" + " ldrh r4, [r0]\n" + " mov r1, #0x1f\n" + " and r1, r1, r4\n" + " ldrb r2, [r3, #0xc]\n" + " mov r0, #0x20\n" + " neg r0, r0\n" + " and r0, r0, r2\n" + " orr r0, r0, r1\n" + " strb r0, [r3, #0xc]\n" + " ldr r3, [r5]\n" + " mov r1, #0xf8\n" + " lsl r1, r1, #0x2\n" + " and r1, r1, r4\n" + " ldrh r2, [r3, #0xc]\n" + " ldr r0, ._670 + 12\n" + " and r0, r0, r2\n" + " orr r0, r0, r1\n" + " strh r0, [r3, #0xc]\n" + " mov r1, #0xf8\n" + " lsl r1, r1, #0x7\n" + " and r1, r1, r4\n" + " lsr r1, r1, #0x8\n" + " ldrb r2, [r3, #0xd]\n" + " mov r0, #0x7d\n" + " neg r0, r0\n" + " and r0, r0, r2\n" + " orr r0, r0, r1\n" + " strb r0, [r3, #0xd]\n" + " ldr r2, [r5]\n" + " ldrb r1, [r2, #0xd]\n" + " mov r0, #0x7f\n" + " and r0, r0, r1\n" + " strb r0, [r2, #0xd]\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x7]\n" + " add r0, r0, #0x1\n" + " mov r1, #0xb\n" + " mov r2, #0xa\n" + " mov r3, #0x2\n" + " bl debug_80C68CC\n" + " ldr r0, ._670 + 16\n" + " mov r1, #0xd\n" + " mov r2, #0xa\n" + " bl MenuPrint\n" + " add r0, r4, #0\n" + " mov r1, #0xe\n" + " mov r2, #0xa\n" + " mov r3, #0x4\n" + " bl debug_80C68CC\n" + " ldr r1, ._670 + 20\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._670 + 24\n" + " str r1, [r0]\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._671:\n" + " .align 2, 0\n" + "._670:\n" + " .word gPlttBufferUnfaded+0x100\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0xffffff00\n" + " .word 0xfffffc1f\n" + " .word gUnknown_Debug_083F8813\n" + " .word gTasks\n" + " .word debug_80C6FA8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C6FA8() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r6, r0, #0x18\n" + " ldr r1, ._674\n" + " ldrh r2, [r1, #0x2e]\n" + " mov r0, #0x2\n" + " and r0, r0, r2\n" + " add r4, r1, #0\n" + " cmp r0, #0\n" + " beq ._672 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " mov r1, #0x0\n" + " str r1, [sp]\n" + " mov r2, #0x0\n" + " mov r3, #0x10\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._674 + 4\n" + " bl SetMainCallback2\n" + " ldr r1, ._674 + 8\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._674 + 12\n" + " str r1, [r0]\n" + " b ._703\n" + "._675:\n" + " .align 2, 0\n" + "._674:\n" + " .word gMain\n" + " .word debug_80C370C+1\n" + " .word gTasks\n" + " .word debug_80C373C+1\n" + "._672:\n" + " ldrh r1, [r4, #0x30]\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._676 @cond_branch\n" + " ldr r4, ._678\n" + " ldr r0, [r4]\n" + " ldrh r1, [r0]\n" + " mov r0, #0x0\n" + " b ._677\n" + "._679:\n" + " .align 2, 0\n" + "._678:\n" + " .word unk_debug_ewram_0+0x34\n" + "._676:\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x2\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._680 @cond_branch\n" + " ldr r4, ._682\n" + " ldr r0, [r4]\n" + " ldrh r1, [r0]\n" + " mov r0, #0x1\n" + "._677:\n" + " bl debug_80C3878\n" + " ldr r1, [r4]\n" + " strh r0, [r1]\n" + " ldr r1, ._682 + 4\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._682 + 8\n" + " str r1, [r0]\n" + " b ._703\n" + "._683:\n" + " .align 2, 0\n" + "._682:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gTasks\n" + " .word debug_80C71FC+1\n" + "._680:\n" + " mov r3, #0x1\n" + " and r3, r3, r2\n" + " cmp r3, #0\n" + " beq ._684 @cond_branch\n" + " ldr r0, ._686\n" + " ldr r1, [r0]\n" + " mov r0, #0x1\n" + " strb r0, [r1, #0x5]\n" + " ldr r1, ._686 + 4\n" + " ldr r2, ._686 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._686 + 12\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._686 + 16\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._686 + 20\n" + " str r1, [r0]\n" + " b ._703\n" + "._687:\n" + " .align 2, 0\n" + "._686:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x4000040\n" + " .word 0x51ef\n" + " .word 0x4167\n" + " .word gTasks\n" + " .word debug_80C7294+1\n" + "._684:\n" + " mov r0, #0x10\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._689 @cond_branch\n" + " ldr r1, ._691\n" + " ldr r2, [r1]\n" + " ldrb r0, [r2, #0x7]\n" + " cmp r0, #0xd\n" + " bhi ._689 @cond_branch\n" + " lsl r0, r0, #0x1\n" + " ldr r2, ._691 + 4\n" + " add r0, r0, r2\n" + " strh r3, [r0]\n" + " ldr r1, [r1]\n" + " ldrb r0, [r1, #0x7]\n" + " add r0, r0, #0x1\n" + " strb r0, [r1, #0x7]\n" + " b ._695\n" + "._692:\n" + " .align 2, 0\n" + "._691:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x5000102\n" + "._689:\n" + " ldrh r1, [r4, #0x30]\n" + " mov r0, #0x20\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._694 @cond_branch\n" + " ldr r2, ._696\n" + " ldr r1, [r2]\n" + " ldrb r0, [r1, #0x7]\n" + " cmp r0, #0\n" + " beq ._694 @cond_branch\n" + " lsl r0, r0, #0x1\n" + " ldr r1, ._696 + 4\n" + " add r0, r0, r1\n" + " mov r1, #0x0\n" + " strh r1, [r0]\n" + " ldr r1, [r2]\n" + " ldrb r0, [r1, #0x7]\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1, #0x7]\n" + " b ._695\n" + "._697:\n" + " .align 2, 0\n" + "._696:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x5000102\n" + "._694:\n" + " ldrh r1, [r4, #0x2e]\n" + " mov r0, #0x8\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._698 @cond_branch\n" + " ldr r4, ._701\n" + " ldr r2, [r4]\n" + " ldrb r0, [r2, #0x9]\n" + " mov r1, #0x1\n" + " eor r0, r0, r1\n" + " strb r0, [r2, #0x9]\n" + " ldr r1, [r4]\n" + " ldrb r0, [r1, #0x9]\n" + " cmp r0, #0\n" + " beq ._699 @cond_branch\n" + " ldrh r0, [r1]\n" + " mov r1, #0x0\n" + " mov r2, #0x0\n" + " bl species_and_otid_get_pal\n" + " ldr r1, [r4]\n" + " ldrb r1, [r1, #0x6]\n" + " lsl r1, r1, #0x14\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x11\n" + " add r1, r1, r2\n" + " lsr r1, r1, #0x10\n" + " mov r2, #0x20\n" + " bl LoadCompressedPalette\n" + " b ._700\n" + "._702:\n" + " .align 2, 0\n" + "._701:\n" + " .word unk_debug_ewram_0+0x34\n" + "._699:\n" + " ldrh r0, [r1]\n" + " mov r1, #0x0\n" + " mov r2, #0x9\n" + " bl species_and_otid_get_pal\n" + " ldr r1, [r4]\n" + " ldrb r1, [r1, #0x6]\n" + " lsl r1, r1, #0x14\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x11\n" + " add r1, r1, r2\n" + " lsr r1, r1, #0x10\n" + " mov r2, #0x20\n" + " bl LoadCompressedPalette\n" + "._700:\n" + " ldr r5, ._704\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x6]\n" + " lsl r0, r0, #0x5\n" + " ldr r4, ._704 + 4\n" + " add r0, r0, r4\n" + " ldr r2, ._704 + 8\n" + " add r1, r4, r2\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x6]\n" + " lsl r0, r0, #0x5\n" + " add r0, r0, r4\n" + " ldr r1, ._704 + 12\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + "._695:\n" + " ldr r1, ._704 + 16\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._704 + 20\n" + " str r1, [r0]\n" + " b ._703\n" + "._705:\n" + " .align 2, 0\n" + "._704:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gPlttBufferUnfaded+0x200\n" + " .word 0xffffff00\n" + " .word gPlttBufferFaded+0x100\n" + " .word gTasks\n" + " .word debug_80C6EE8+1\n" + "._698:\n" + " mov r0, #0x4\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._706 @cond_branch\n" + " bl StopCryAndClearCrySongs\n" + " ldr r0, ._707\n" + " ldr r0, [r0]\n" + " ldrh r0, [r0]\n" + " mov r1, #0x0\n" + " bl PlayCry1\n" + "._706:\n" + " ldr r2, ._707\n" + " ldr r1, [r2]\n" + " ldrb r0, [r1, #0x8]\n" + " add r0, r0, #0x4\n" + " strb r0, [r1, #0x8]\n" + " ldr r3, [r2]\n" + " ldrb r1, [r3, #0x8]\n" + " mov r0, #0x1f\n" + " and r0, r0, r1\n" + " strb r0, [r3, #0x8]\n" + " ldr r0, [r2]\n" + " ldrb r1, [r0, #0x7]\n" + " lsl r1, r1, #0x1\n" + " ldr r2, ._707 + 4\n" + " add r1, r1, r2\n" + " ldr r2, ._707 + 8\n" + " ldrb r0, [r0, #0x8]\n" + " lsl r0, r0, #0x1\n" + " add r0, r0, r2\n" + " ldrh r0, [r0]\n" + " strh r0, [r1]\n" + "._703:\n" + " add sp, sp, #0x4\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._708:\n" + " .align 2, 0\n" + "._707:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x5000142\n" + " .word gUnknown_Debug_083F8790\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C71FC() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add r5, r0, #0\n" + " lsl r5, r5, #0x18\n" + " lsr r5, r5, #0x18\n" + " ldr r6, ._709\n" + " ldr r4, ._709 + 4\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x2]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " ldrb r0, [r0, #0x5]\n" + " lsr r0, r0, #0x4\n" + " bl GetSpritePaletteTagByPaletteNum\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl FreeSpritePaletteByTag\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x2]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " bl DestroySprite\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x3]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " ldrb r0, [r0, #0x5]\n" + " lsr r0, r0, #0x4\n" + " bl GetSpritePaletteTagByPaletteNum\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl FreeSpritePaletteByTag\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x3]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " bl DestroySprite\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x4]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " bl sub_809D510\n" + " ldr r1, ._709 + 8\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._709 + 12\n" + " str r1, [r0]\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._710:\n" + " .align 2, 0\n" + "._709:\n" + " .word gSprites\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gTasks\n" + " .word debug_80C6CB8+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C7294() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + " ldr r0, ._713\n" + " ldrh r2, [r0, #0x2e]\n" + " mov r1, #0x1\n" + " and r1, r1, r2\n" + " add r3, r0, #0\n" + " cmp r1, #0\n" + " beq ._711 @cond_branch\n" + " ldr r0, ._713 + 4\n" + " ldr r1, [r0]\n" + " mov r0, #0x0\n" + " strb r0, [r1, #0x5]\n" + " ldr r1, ._713 + 8\n" + " ldr r2, ._713 + 12\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._713 + 16\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " b ._712\n" + "._714:\n" + " .align 2, 0\n" + "._713:\n" + " .word gMain\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x4000040\n" + " .word 0x51ef\n" + " .word 0x699f\n" + "._711:\n" + " mov r0, #0x2\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._715 @cond_branch\n" + " ldr r6, ._717\n" + " ldr r0, [r6]\n" + " strb r1, [r0, #0x5]\n" + " ldr r1, ._717 + 4\n" + " ldr r2, ._717 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._717 + 12\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r0, [r6]\n" + " add r0, r0, #0x10\n" + " ldr r4, ._717 + 16\n" + " add r1, r4, #0\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r0, [r6]\n" + " add r0, r0, #0x10\n" + " ldr r5, ._717 + 20\n" + " add r1, r5, #0\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r1, [r6]\n" + " add r0, r1, #0\n" + " add r0, r0, #0x10\n" + " ldrb r1, [r1, #0x6]\n" + " lsl r1, r1, #0x5\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x1\n" + " add r4, r4, r2\n" + " add r1, r1, r4\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r1, [r6]\n" + " add r0, r1, #0\n" + " add r0, r0, #0x10\n" + " ldrb r1, [r1, #0x6]\n" + " lsl r1, r1, #0x5\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x1\n" + " add r5, r5, r2\n" + " add r1, r1, r5\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + "._712:\n" + " ldr r1, ._717 + 24\n" + " lsl r0, r7, #0x2\n" + " add r0, r0, r7\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._717 + 28\n" + " str r1, [r0]\n" + " b ._754\n" + "._718:\n" + " .align 2, 0\n" + "._717:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x4000040\n" + " .word 0x51ef\n" + " .word 0x699f\n" + " .word gPlttBufferUnfaded+0x100\n" + " .word gPlttBufferFaded+0x100\n" + " .word gTasks\n" + " .word debug_80C6EE8+1\n" + "._715:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._720 @cond_branch\n" + " ldr r0, ._722\n" + " ldr r1, [r0]\n" + " ldrb r0, [r1, #0xa]\n" + " cmp r0, #0x1\n" + " bhi ._720 @cond_branch\n" + " add r0, r0, #0x1\n" + " strb r0, [r1, #0xa]\n" + " b ._754\n" + "._723:\n" + " .align 2, 0\n" + "._722:\n" + " .word unk_debug_ewram_0+0x34\n" + "._720:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._725 @cond_branch\n" + " ldr r0, ._727\n" + " ldr r1, [r0]\n" + " ldrb r0, [r1, #0xa]\n" + " cmp r0, #0\n" + " beq ._725 @cond_branch\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1, #0xa]\n" + " b ._754\n" + "._728:\n" + " .align 2, 0\n" + "._727:\n" + " .word unk_debug_ewram_0+0x34\n" + "._725:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x10\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._729 @cond_branch\n" + " ldr r0, ._734\n" + " ldr r2, [r0]\n" + " ldrb r0, [r2, #0xa]\n" + " cmp r0, #0x1\n" + " beq ._730 @cond_branch\n" + " cmp r0, #0x1\n" + " bgt ._731 @cond_branch\n" + " cmp r0, #0\n" + " beq ._732 @cond_branch\n" + " b ._754\n" + "._735:\n" + " .align 2, 0\n" + "._734:\n" + " .word unk_debug_ewram_0+0x34\n" + "._731:\n" + " cmp r0, #0x2\n" + " beq ._736 @cond_branch\n" + " b ._754\n" + "._732:\n" + " ldrb r3, [r2, #0xc]\n" + " lsl r1, r3, #0x1b\n" + " lsr r0, r1, #0x1b\n" + " cmp r0, #0x1e\n" + " bhi ._761 @cond_branch\n" + " add r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " mov r1, #0x20\n" + " neg r1, r1\n" + " and r1, r1, r3\n" + " orr r1, r1, r0\n" + " strb r1, [r2, #0xc]\n" + " b ._761\n" + "._730:\n" + " ldrh r3, [r2, #0xc]\n" + " lsl r1, r3, #0x16\n" + " lsr r0, r1, #0x1b\n" + " cmp r0, #0x1e\n" + " bhi ._761 @cond_branch\n" + " add r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x5\n" + " ldr r1, ._742\n" + " and r1, r1, r3\n" + " orr r1, r1, r0\n" + " strh r1, [r2, #0xc]\n" + " b ._761\n" + "._743:\n" + " .align 2, 0\n" + "._742:\n" + " .word 0xfffffc1f\n" + "._736:\n" + " ldrb r3, [r2, #0xd]\n" + " lsl r1, r3, #0x19\n" + " lsr r0, r1, #0x1b\n" + " cmp r0, #0x1e\n" + " bhi ._761 @cond_branch\n" + " add r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " mov r1, #0x7d\n" + " neg r1, r1\n" + " and r1, r1, r3\n" + " orr r1, r1, r0\n" + " strb r1, [r2, #0xd]\n" + " b ._761\n" + "._729:\n" + " mov r0, #0x20\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._754 @cond_branch\n" + " ldr r0, ._751\n" + " ldr r3, [r0]\n" + " ldrb r0, [r3, #0xa]\n" + " cmp r0, #0x1\n" + " beq ._747 @cond_branch\n" + " cmp r0, #0x1\n" + " bgt ._748 @cond_branch\n" + " cmp r0, #0\n" + " beq ._749 @cond_branch\n" + " b ._754\n" + "._752:\n" + " .align 2, 0\n" + "._751:\n" + " .word unk_debug_ewram_0+0x34\n" + "._748:\n" + " cmp r0, #0x2\n" + " beq ._753 @cond_branch\n" + " b ._754\n" + "._749:\n" + " ldrb r2, [r3, #0xc]\n" + " mov r0, #0x1f\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._761 @cond_branch\n" + " lsl r0, r2, #0x1b\n" + " lsr r0, r0, #0x1b\n" + " sub r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " mov r1, #0x20\n" + " neg r1, r1\n" + " and r1, r1, r2\n" + " orr r1, r1, r0\n" + " strb r1, [r3, #0xc]\n" + " b ._761\n" + "._747:\n" + " ldrh r2, [r3, #0xc]\n" + " mov r0, #0xf8\n" + " lsl r0, r0, #0x2\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._761 @cond_branch\n" + " lsl r0, r2, #0x16\n" + " lsr r0, r0, #0x1b\n" + " sub r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x5\n" + " ldr r1, ._759\n" + " and r1, r1, r2\n" + " orr r1, r1, r0\n" + " strh r1, [r3, #0xc]\n" + " b ._761\n" + "._760:\n" + " .align 2, 0\n" + "._759:\n" + " .word 0xfffffc1f\n" + "._753:\n" + " ldrb r2, [r3, #0xd]\n" + " mov r0, #0x7c\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._761 @cond_branch\n" + " lsl r0, r2, #0x19\n" + " lsr r0, r0, #0x1b\n" + " sub r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " mov r1, #0x7d\n" + " neg r1, r1\n" + " and r1, r1, r2\n" + " orr r1, r1, r0\n" + " strb r1, [r3, #0xd]\n" + "._761:\n" + " ldr r0, ._762\n" + " lsl r1, r7, #0x2\n" + " add r1, r1, r7\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._762 + 4\n" + " str r0, [r1]\n" + "._754:\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._763:\n" + " .align 2, 0\n" + "._762:\n" + " .word gTasks\n" + " .word debug_80C74E4+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C74E4() +{ + asm( + " push {r4, r5, r6, lr}\n" + " mov r6, r8\n" + " push {r6}\n" + " add r5, r0, #0\n" + " lsl r5, r5, #0x18\n" + " lsr r5, r5, #0x18\n" + " ldr r0, ._764\n" + " ldr r3, [r0]\n" + " ldrb r0, [r3, #0xc]\n" + " lsl r0, r0, #0x1b\n" + " lsr r0, r0, #0x1b\n" + " ldrh r2, [r3, #0xc]\n" + " mov r1, #0xf8\n" + " lsl r1, r1, #0x2\n" + " and r1, r1, r2\n" + " add r0, r0, r1\n" + " ldrb r1, [r3, #0xd]\n" + " lsl r1, r1, #0x19\n" + " lsr r1, r1, #0x1b\n" + " lsl r1, r1, #0xa\n" + " add r0, r0, r1\n" + " ldr r6, ._764 + 4\n" + " ldrb r1, [r3, #0x7]\n" + " add r1, r1, #0x81\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, r6\n" + " strh r0, [r1]\n" + " ldr r1, ._764 + 8\n" + " mov r8, r1\n" + " ldrb r1, [r3, #0x7]\n" + " add r1, r1, #0x81\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, r8\n" + " strh r0, [r1]\n" + " ldrb r1, [r3, #0x6]\n" + " lsl r1, r1, #0x4\n" + " ldrb r2, [r3, #0x7]\n" + " ldr r4, ._764 + 12\n" + " add r2, r2, r4\n" + " add r1, r1, r2\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, r6\n" + " strh r0, [r1]\n" + " ldrb r1, [r3, #0x6]\n" + " lsl r1, r1, #0x4\n" + " ldrb r2, [r3, #0x7]\n" + " add r2, r2, r4\n" + " add r1, r1, r2\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, r8\n" + " strh r0, [r1]\n" + " mov r1, #0xe\n" + " mov r2, #0xa\n" + " mov r3, #0x4\n" + " bl debug_80C68CC\n" + " ldr r1, ._764 + 16\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._764 + 20\n" + " str r1, [r0]\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._765:\n" + " .align 2, 0\n" + "._764:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gPlttBufferUnfaded\n" + " .word gPlttBufferFaded\n" + " .word 0x101\n" + " .word gTasks\n" + " .word debug_80C7294+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C7584() +{ + asm( + " push {r4, lr}\n" + " add r2, r0, #0\n" + " ldr r0, ._771\n" + " ldr r3, [r0]\n" + " ldrb r1, [r3, #0x5]\n" + " add r4, r0, #0\n" + " cmp r1, #0\n" + " beq ._766 @cond_branch\n" + " mov r1, #0x2e\n" + " ldsh r0, [r2, r1]\n" + " cmp r0, #0x1\n" + " beq ._767 @cond_branch\n" + " cmp r0, #0x1\n" + " ble ._768 @cond_branch\n" + " cmp r0, #0x2\n" + " beq ._769 @cond_branch\n" + "._768:\n" + " ldrb r0, [r3, #0xc]\n" + " lsl r0, r0, #0x1b\n" + " b ._773\n" + "._772:\n" + " .align 2, 0\n" + "._771:\n" + " .word unk_debug_ewram_0+0x34\n" + "._767:\n" + " ldrh r0, [r3, #0xc]\n" + " lsl r0, r0, #0x16\n" + " b ._773\n" + "._769:\n" + " ldrb r0, [r3, #0xd]\n" + " lsl r0, r0, #0x19\n" + "._773:\n" + " lsr r0, r0, #0x1b\n" + " lsl r0, r0, #0x2\n" + " strh r0, [r2, #0x24]\n" + " mov r1, #0x2e\n" + " ldsh r0, [r2, r1]\n" + " lsl r0, r0, #0x3\n" + " strh r0, [r2, #0x26]\n" + " ldrh r0, [r2, #0x30]\n" + " add r3, r0, #1\n" + " strh r3, [r2, #0x30]\n" + " mov r0, #0x2e\n" + " ldsh r1, [r2, r0]\n" + " ldr r0, [r4]\n" + " ldrb r0, [r0, #0xa]\n" + " cmp r1, r0\n" + " bne ._775 @cond_branch\n" + " mov r0, #0x8\n" + " and r3, r3, r0\n" + " cmp r3, #0\n" + " bne ._775 @cond_branch\n" + "._766:\n" + " add r0, r2, #0\n" + " add r0, r0, #0x3e\n" + " ldrb r1, [r0]\n" + " mov r2, #0x4\n" + " orr r1, r1, r2\n" + " strb r1, [r0]\n" + " b ._776\n" + "._775:\n" + " add r2, r2, #0x3e\n" + " ldrb r1, [r2]\n" + " mov r0, #0x5\n" + " neg r0, r0\n" + " and r0, r0, r1\n" + " strb r0, [r2]\n" + "._776:\n" + " pop {r4}\n" + " pop {r0}\n" + " bx r0\n" + "\n" + ); +} + +__attribute__((naked)) +void InitSeeTrainers() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add sp, sp, #0xfffffffc\n" + " bl debug_80C35DC\n" + " ldr r1, ._777\n" + " ldr r2, ._777 + 4\n" + " ldr r0, ._777 + 8\n" + " str r1, [r0]\n" + " str r2, [r0, #0x4]\n" + " ldr r1, ._777 + 12\n" + " str r1, [r0, #0x8]\n" + " ldr r0, [r0, #0x8]\n" + " ldr r0, ._777 + 16\n" + " mov r1, #0x80\n" + " mov r2, #0x60\n" + " bl LoadPalette\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " mov r5, #0x0\n" + " str r5, [sp]\n" + " mov r1, #0x0\n" + " mov r2, #0x10\n" + " mov r3, #0x0\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._777 + 20\n" + " mov r6, #0x0\n" + " strh r5, [r0]\n" + " add r0, r0, #0x4\n" + " strh r5, [r0]\n" + " sub r0, r0, #0x2\n" + " strh r5, [r0]\n" + " add r0, r0, #0x4\n" + " strh r5, [r0]\n" + " ldr r1, ._777 + 24\n" + " mov r0, #0x3f\n" + " strh r0, [r1]\n" + " add r1, r1, #0x2\n" + " mov r0, #0x1f\n" + " strh r0, [r1]\n" + " add r1, r1, #0x6\n" + " mov r0, #0xf1\n" + " strh r0, [r1]\n" + " ldr r0, ._777 + 28\n" + " strh r5, [r0]\n" + " add r1, r1, #0x4\n" + " mov r0, #0x7\n" + " strh r0, [r1]\n" + " ldr r3, ._777 + 32\n" + " ldrh r2, [r3]\n" + " strh r5, [r3]\n" + " ldr r4, ._777 + 36\n" + " ldrh r0, [r4]\n" + " mov r1, #0x1\n" + " orr r0, r0, r1\n" + " strh r0, [r4]\n" + " strh r2, [r3]\n" + " ldr r0, ._777 + 40\n" + " bl SetVBlankCallback\n" + " ldr r0, ._777 + 44\n" + " bl SetMainCallback2\n" + " ldr r1, ._777 + 48\n" + " ldr r2, ._777 + 52\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x2\n" + " ldr r2, ._777 + 56\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " sub r1, r1, #0xa\n" + " mov r2, #0xcd\n" + " lsl r2, r2, #0x6\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r0, ._777 + 60\n" + " mov r1, #0x0\n" + " bl CreateTask\n" + " ldr r1, ._777 + 64\n" + " ldr r0, ._777 + 68\n" + " str r0, [r1]\n" + " strh r5, [r0]\n" + " strb r6, [r0, #0x2]\n" + " strb r6, [r0, #0x3]\n" + " strb r6, [r0, #0x5]\n" + " strb r6, [r0, #0x7]\n" + " strb r6, [r0, #0xa]\n" + " strb r6, [r0, #0x8]\n" + " ldr r4, ._777 + 72\n" + " add r0, r4, #0\n" + " mov r1, #0x6c\n" + " mov r2, #0x74\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " ldr r6, ._777 + 76\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " strh r5, [r0, #0x2e]\n" + " mov r1, #0x0\n" + " bl StartSpriteAnim\n" + " add r0, r4, #0\n" + " mov r1, #0x6c\n" + " mov r2, #0x74\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " mov r1, #0x1\n" + " strh r1, [r0, #0x2e]\n" + " bl StartSpriteAnim\n" + " add r0, r4, #0\n" + " mov r1, #0x6c\n" + " mov r2, #0x74\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " add r1, r0, #0\n" + " lsl r1, r1, #0x18\n" + " lsr r1, r1, #0x18\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " mov r1, #0x2\n" + " strh r1, [r0, #0x2e]\n" + " bl StartSpriteAnim\n" + " add sp, sp, #0x4\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._778:\n" + " .align 2, 0\n" + "._777:\n" + " .word byte_83F88EC\n" + " .word 0x600e000\n" + " .word 0x40000d4\n" + " .word 0x80000400\n" + " .word word_83F888C\n" + " .word 0x4000040\n" + " .word 0x4000048\n" + " .word 0x4000052\n" + " .word 0x4000208\n" + " .word 0x4000200\n" + " .word debug_80C3758+1\n" + " .word debug_80C370C+1\n" + " .word 0x4000008\n" + " .word 0x1f0b\n" + " .word 0x1e0a\n" + " .word debug_80C777C+1\n" + " .word unk_debug_ewram_0+0x34\n" + " .word +0x2018000\n" + " .word unk_83F8868+0xc\n" + " .word gSprites\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C777C() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " mov r7, r8\n" + " push {r7}\n" + " add sp, sp, #0xffffffec\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + " ldr r1, ._784\n" + " mov r0, sp\n" + " mov r2, #0x12\n" + " bl memcpy\n" + " mov r0, #0x9\n" + " mov r1, #0x0\n" + " mov r2, #0xe\n" + " mov r3, #0x7\n" + " bl MenuDrawTextWindow\n" + " mov r0, #0x0\n" + " mov r1, #0x0\n" + " mov r2, #0x9\n" + " mov r3, #0x9\n" + " bl MenuDrawTextWindow\n" + " mov r0, #0x0\n" + " mov r1, #0xa\n" + " mov r2, #0x9\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r0, #0xe\n" + " mov r1, #0x0\n" + " mov r2, #0x1d\n" + " mov r3, #0x7\n" + " bl MenuDrawTextWindow\n" + " ldr r0, ._784 + 4\n" + " mov r1, #0xf\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " ldr r0, ._784 + 8\n" + " mov r1, #0x19\n" + " mov r2, #0x1\n" + " bl MenuPrint\n" + " ldr r0, ._784 + 12\n" + " mov r1, #0xf\n" + " mov r2, #0x5\n" + " bl MenuPrint\n" + " mov r0, #0xa\n" + " mov r1, #0x8\n" + " mov r2, #0x1d\n" + " mov r3, #0xc\n" + " bl MenuDrawTextWindow\n" + " mov r2, #0x0\n" + " ldr r4, ._784 + 16\n" + " ldr r0, ._784 + 20\n" + " add r3, r0, #0\n" + "._779:\n" + " lsl r0, r2, #0x1\n" + " add r0, r0, r4\n" + " add r1, r2, r3\n" + " strh r1, [r0]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0xe\n" + " bls ._779 @cond_branch\n" + " mov r2, #0x0\n" + " ldr r5, ._784 + 24\n" + " lsl r6, r7, #0x2\n" + " mov r8, r6\n" + " ldr r4, ._784 + 28\n" + " ldr r0, ._784 + 32\n" + " add r3, r0, #0\n" + "._780:\n" + " lsl r0, r2, #0x1\n" + " add r0, r0, r4\n" + " add r1, r2, r3\n" + " strh r1, [r0]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0xe\n" + " bls ._780 @cond_branch\n" + " add r0, r5, #0\n" + " mov r1, #0x14\n" + " mov r2, #0xa\n" + " bl MenuPrint\n" + " mov r0, #0xa\n" + " mov r1, #0xd\n" + " mov r2, #0x1d\n" + " mov r3, #0x13\n" + " bl MenuDrawTextWindow\n" + " mov r1, sp\n" + " mov r0, #0x23\n" + " strb r0, [r1]\n" + " mov r2, #0x0\n" + " ldr r4, ._784 + 36\n" + " mov r5, #0x93\n" + " lsl r5, r5, #0x8\n" + " add r3, r5, #0\n" + "._781:\n" + " lsl r1, r2, #0x1\n" + " add r1, r1, r4\n" + " mov r6, sp\n" + " add r0, r6, r2\n" + " ldrb r0, [r0]\n" + " add r0, r0, r3\n" + " strh r0, [r1]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x11\n" + " bls ._781 @cond_branch\n" + " mov r1, sp\n" + " mov r0, #0x24\n" + " strb r0, [r1]\n" + " mov r2, #0x0\n" + " ldr r5, ._784 + 40\n" + " ldr r4, ._784 + 44\n" + " mov r0, #0x93\n" + " lsl r0, r0, #0x8\n" + " add r3, r0, #0\n" + "._782:\n" + " lsl r1, r2, #0x1\n" + " add r1, r1, r4\n" + " mov r6, sp\n" + " add r0, r6, r2\n" + " ldrb r0, [r0]\n" + " add r0, r0, r3\n" + " strh r0, [r1]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x11\n" + " bls ._782 @cond_branch\n" + " mov r1, sp\n" + " mov r0, #0x25\n" + " strb r0, [r1]\n" + " mov r2, #0x0\n" + " ldr r4, ._784 + 48\n" + " mov r0, #0x93\n" + " lsl r0, r0, #0x8\n" + " add r3, r0, #0\n" + "._783:\n" + " lsl r1, r2, #0x1\n" + " add r1, r1, r4\n" + " mov r6, sp\n" + " add r0, r6, r2\n" + " ldrb r0, [r0]\n" + " add r0, r0, r3\n" + " strh r0, [r1]\n" + " add r0, r2, #1\n" + " lsl r0, r0, #0x18\n" + " lsr r2, r0, #0x18\n" + " cmp r2, #0x11\n" + " bls ._783 @cond_branch\n" + " add r0, r5, #0\n" + " mov r1, #0xf\n" + " mov r2, #0x11\n" + " bl MenuPrint\n" + " ldr r1, ._784 + 52\n" + " ldr r2, ._784 + 56\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r5, ._784 + 60\n" + " add r0, r5, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._784 + 64\n" + " mov r6, r8\n" + " add r0, r6, r7\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._784 + 68\n" + " str r1, [r0]\n" + " add sp, sp, #0x14\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._785:\n" + " .align 2, 0\n" + "._784:\n" + " .word gUnknown_Debug_083F8815\n" + " .word gUnknown_Debug_083F87D0\n" + " .word gUnknown_Debug_083F87D8\n" + " .word gUnknown_Debug_083F87E0\n" + " .word 0x600fa56\n" + " .word 0xa311\n" + " .word gUnknown_Debug_083F87F4\n" + " .word 0x600f256\n" + " .word 0x8301\n" + " .word 0x600f396\n" + " .word gUnknown_Debug_083F8801\n" + " .word 0x600f3d6\n" + " .word 0x600f416\n" + " .word 0x4000040\n" + " .word 0x51ef\n" + " .word 0x699f\n" + " .word gTasks\n" + " .word debug_80C7934+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C7934() +{ + asm( + " push {r4, r5, r6, lr}\n" + " mov r6, r8\n" + " push {r6}\n" + " add sp, sp, #0xfffffff8\n" + " mov r8, r0\n" + " lsl r0, r0, #0x18\n" + " lsr r0, r0, #0x18\n" + " mov r8, r0\n" + " ldr r5, ._786\n" + " ldr r6, [r5]\n" + " ldrh r2, [r6]\n" + " lsl r0, r2, #0x3\n" + " ldr r1, ._786 + 4\n" + " add r0, r0, r1\n" + " ldr r1, ._786 + 8\n" + " lsl r2, r2, #0x2\n" + " add r2, r2, r1\n" + " ldrb r1, [r2]\n" + " ldrb r2, [r2, #0x1]\n" + " ldr r4, ._786 + 12\n" + " ldr r3, [r4]\n" + " ldr r4, [r4, #0x4]\n" + " str r4, [sp]\n" + " ldrh r4, [r6]\n" + " str r4, [sp, #0x4]\n" + " bl DecompressPicFromTable_2\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " lsl r0, r0, #0x3\n" + " ldr r1, ._786 + 16\n" + " add r0, r0, r1\n" + " bl LoadCompressedObjectPalette\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " mov r1, #0x1\n" + " bl GetMonSpriteTemplate_803C5A0\n" + " ldr r0, ._786 + 20\n" + " mov r1, #0x28\n" + " mov r2, #0x28\n" + " mov r3, #0x0\n" + " bl CreateSprite\n" + " ldr r1, [r5]\n" + " mov r6, #0x0\n" + " strb r0, [r1, #0x2]\n" + " ldr r4, ._786 + 24\n" + " ldr r2, [r5]\n" + " ldrb r1, [r2, #0x2]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r1, r4, #0\n" + " add r1, r1, #0x1c\n" + " add r0, r0, r1\n" + " ldr r1, ._786 + 28\n" + " str r1, [r0]\n" + " ldrb r0, [r2, #0x2]\n" + " lsl r1, r0, #0x4\n" + " add r1, r1, r0\n" + " lsl r1, r1, #0x2\n" + " add r1, r1, r4\n" + " ldrb r2, [r1, #0x5]\n" + " mov r0, #0xd\n" + " neg r0, r0\n" + " and r0, r0, r2\n" + " strb r0, [r1, #0x5]\n" + " ldr r0, [r5]\n" + " ldrh r0, [r0]\n" + " mov r1, #0x1a\n" + " mov r2, #0x5\n" + " bl debug_80C376C\n" + " ldr r2, [r5]\n" + " ldrb r1, [r2, #0x2]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r4\n" + " ldrb r0, [r0, #0x5]\n" + " lsr r0, r0, #0x4\n" + " strb r0, [r2, #0x6]\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x6]\n" + " lsl r0, r0, #0x5\n" + " ldr r4, ._786 + 32\n" + " add r0, r0, r4\n" + " ldr r2, ._786 + 36\n" + " add r1, r4, r2\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x6]\n" + " lsl r0, r0, #0x5\n" + " add r0, r0, r4\n" + " ldr r1, ._786 + 40\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r1, ._786 + 44\n" + " mov r2, r8\n" + " lsl r0, r2, #0x2\n" + " add r0, r0, r8\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._786 + 48\n" + " str r1, [r0]\n" + " ldr r0, [r5]\n" + " strb r6, [r0, #0x9]\n" + " add sp, sp, #0x8\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._787:\n" + " .align 2, 0\n" + "._786:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gTrainerFrontPicTable\n" + " .word gTrainerFrontPicCoords\n" + " .word gUnknown_081FAF4C\n" + " .word gTrainerFrontPicPaletteTable\n" + " .word gUnknown_02024E8C\n" + " .word gSprites\n" + " .word debug_69+1\n" + " .word gPlttBufferUnfaded+0x200\n" + " .word 0xffffff00\n" + " .word gPlttBufferFaded+0x100\n" + " .word gTasks\n" + " .word debug_80C7A54+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C7A54() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add r6, r0, #0\n" + " lsl r6, r6, #0x18\n" + " lsr r6, r6, #0x18\n" + " ldr r4, ._788\n" + " ldr r5, ._788 + 4\n" + " ldr r1, [r5]\n" + " add r1, r1, #0x10\n" + " add r0, r4, #0\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r0, ._788 + 8\n" + " add r4, r4, r0\n" + " ldr r3, [r5]\n" + " ldrb r0, [r3, #0x7]\n" + " add r0, r0, #0x81\n" + " lsl r0, r0, #0x1\n" + " add r0, r0, r4\n" + " ldrh r4, [r0]\n" + " mov r1, #0x1f\n" + " and r1, r1, r4\n" + " ldrb r2, [r3, #0xc]\n" + " mov r0, #0x20\n" + " neg r0, r0\n" + " and r0, r0, r2\n" + " orr r0, r0, r1\n" + " strb r0, [r3, #0xc]\n" + " ldr r3, [r5]\n" + " mov r1, #0xf8\n" + " lsl r1, r1, #0x2\n" + " and r1, r1, r4\n" + " ldrh r2, [r3, #0xc]\n" + " ldr r0, ._788 + 12\n" + " and r0, r0, r2\n" + " orr r0, r0, r1\n" + " strh r0, [r3, #0xc]\n" + " mov r1, #0xf8\n" + " lsl r1, r1, #0x7\n" + " and r1, r1, r4\n" + " lsr r1, r1, #0x8\n" + " ldrb r2, [r3, #0xd]\n" + " mov r0, #0x7d\n" + " neg r0, r0\n" + " and r0, r0, r2\n" + " orr r0, r0, r1\n" + " strb r0, [r3, #0xd]\n" + " ldr r2, [r5]\n" + " ldrb r1, [r2, #0xd]\n" + " mov r0, #0x7f\n" + " and r0, r0, r1\n" + " strb r0, [r2, #0xd]\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x7]\n" + " add r0, r0, #0x1\n" + " mov r1, #0xb\n" + " mov r2, #0xa\n" + " mov r3, #0x2\n" + " bl debug_80C68CC\n" + " ldr r0, ._788 + 16\n" + " mov r1, #0xd\n" + " mov r2, #0xa\n" + " bl MenuPrint\n" + " add r0, r4, #0\n" + " mov r1, #0xe\n" + " mov r2, #0xa\n" + " mov r3, #0x4\n" + " bl debug_80C68CC\n" + " ldr r1, ._788 + 20\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._788 + 24\n" + " str r1, [r0]\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._789:\n" + " .align 2, 0\n" + "._788:\n" + " .word gPlttBufferUnfaded+0x100\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0xffffff00\n" + " .word 0xfffffc1f\n" + " .word gUnknown_Debug_083F8813\n" + " .word gTasks\n" + " .word debug_80C7B14+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C7B14() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add sp, sp, #0xfffffffc\n" + " lsl r0, r0, #0x18\n" + " lsr r6, r0, #0x18\n" + " ldr r1, ._792\n" + " ldrh r3, [r1, #0x2e]\n" + " mov r0, #0x2\n" + " and r0, r0, r3\n" + " add r4, r1, #0\n" + " cmp r0, #0\n" + " beq ._790 @cond_branch\n" + " mov r0, #0x5\n" + " bl PlaySE\n" + " mov r0, #0x1\n" + " neg r0, r0\n" + " mov r1, #0x0\n" + " str r1, [sp]\n" + " mov r2, #0x0\n" + " mov r3, #0x10\n" + " bl BeginNormalPaletteFade\n" + " ldr r0, ._792 + 4\n" + " bl SetMainCallback2\n" + " ldr r1, ._792 + 8\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._792 + 12\n" + " str r1, [r0]\n" + " b ._821\n" + "._793:\n" + " .align 2, 0\n" + "._792:\n" + " .word gMain\n" + " .word debug_80C370C+1\n" + " .word gTasks\n" + " .word debug_80C373C+1\n" + "._790:\n" + " ldrh r1, [r4, #0x30]\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x1\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._794 @cond_branch\n" + " ldr r4, ._796\n" + " ldr r0, [r4]\n" + " ldrh r1, [r0]\n" + " mov r0, #0x0\n" + " b ._795\n" + "._797:\n" + " .align 2, 0\n" + "._796:\n" + " .word unk_debug_ewram_0+0x34\n" + "._794:\n" + " mov r0, #0x80\n" + " lsl r0, r0, #0x2\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._798 @cond_branch\n" + " ldr r4, ._800\n" + " ldr r0, [r4]\n" + " ldrh r1, [r0]\n" + " mov r0, #0x1\n" + "._795:\n" + " bl debug_80C38B4\n" + " ldr r1, [r4]\n" + " strh r0, [r1]\n" + " ldr r1, ._800 + 4\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._800 + 8\n" + " str r1, [r0]\n" + " b ._821\n" + "._801:\n" + " .align 2, 0\n" + "._800:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gTasks\n" + " .word debug_80C7D44+1\n" + "._798:\n" + " mov r2, #0x1\n" + " and r2, r2, r3\n" + " cmp r2, #0\n" + " beq ._802 @cond_branch\n" + " ldr r0, ._804\n" + " ldr r1, [r0]\n" + " mov r0, #0x1\n" + " strb r0, [r1, #0x5]\n" + " ldr r1, ._804 + 4\n" + " ldr r2, ._804 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._804 + 12\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r1, ._804 + 16\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._804 + 20\n" + " str r1, [r0]\n" + " b ._821\n" + "._805:\n" + " .align 2, 0\n" + "._804:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x4000040\n" + " .word 0x51ef\n" + " .word 0x4167\n" + " .word gTasks\n" + " .word debug_80C7DDC+1\n" + "._802:\n" + " mov r0, #0x10\n" + " and r0, r0, r1\n" + " ldr r3, ._809\n" + " cmp r0, #0\n" + " beq ._807 @cond_branch\n" + " ldr r1, [r3]\n" + " ldrb r0, [r1, #0x7]\n" + " cmp r0, #0xd\n" + " bhi ._807 @cond_branch\n" + " lsl r0, r0, #0x1\n" + " ldr r1, ._809 + 4\n" + " add r0, r0, r1\n" + " strh r2, [r0]\n" + " ldr r1, [r3]\n" + " ldrb r0, [r1, #0x7]\n" + " add r0, r0, #0x1\n" + " strb r0, [r1, #0x7]\n" + " b ._813\n" + "._810:\n" + " .align 2, 0\n" + "._809:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x5000102\n" + "._807:\n" + " ldrh r1, [r4, #0x30]\n" + " mov r0, #0x20\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._812 @cond_branch\n" + " ldr r1, [r3]\n" + " ldrb r0, [r1, #0x7]\n" + " cmp r0, #0\n" + " beq ._812 @cond_branch\n" + " lsl r0, r0, #0x1\n" + " ldr r2, ._814\n" + " add r0, r0, r2\n" + " mov r1, #0x0\n" + " strh r1, [r0]\n" + " ldr r1, [r3]\n" + " ldrb r0, [r1, #0x7]\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1, #0x7]\n" + " b ._813\n" + "._815:\n" + " .align 2, 0\n" + "._814:\n" + " .word 0x5000102\n" + "._812:\n" + " ldrh r1, [r4, #0x2e]\n" + " mov r0, #0x8\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._816 @cond_branch\n" + " ldr r4, ._819\n" + " ldr r2, [r4]\n" + " ldrb r0, [r2, #0x9]\n" + " mov r1, #0x1\n" + " eor r0, r0, r1\n" + " strb r0, [r2, #0x9]\n" + " ldr r1, [r4]\n" + " ldrb r0, [r1, #0x9]\n" + " cmp r0, #0\n" + " beq ._817 @cond_branch\n" + " ldrh r0, [r1]\n" + " mov r1, #0x0\n" + " mov r2, #0x0\n" + " bl species_and_otid_get_pal\n" + " ldr r1, [r4]\n" + " ldrb r1, [r1, #0x6]\n" + " lsl r1, r1, #0x14\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x11\n" + " add r1, r1, r2\n" + " lsr r1, r1, #0x10\n" + " mov r2, #0x20\n" + " bl LoadCompressedPalette\n" + " b ._818\n" + "._820:\n" + " .align 2, 0\n" + "._819:\n" + " .word unk_debug_ewram_0+0x34\n" + "._817:\n" + " ldrh r0, [r1]\n" + " mov r1, #0x0\n" + " mov r2, #0x9\n" + " bl species_and_otid_get_pal\n" + " ldr r1, [r4]\n" + " ldrb r1, [r1, #0x6]\n" + " lsl r1, r1, #0x14\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x11\n" + " add r1, r1, r2\n" + " lsr r1, r1, #0x10\n" + " mov r2, #0x20\n" + " bl LoadCompressedPalette\n" + "._818:\n" + " ldr r5, ._822\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x6]\n" + " lsl r0, r0, #0x5\n" + " ldr r4, ._822 + 4\n" + " add r0, r0, r4\n" + " ldr r2, ._822 + 8\n" + " add r1, r4, r2\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r0, [r5]\n" + " ldrb r0, [r0, #0x6]\n" + " lsl r0, r0, #0x5\n" + " add r0, r0, r4\n" + " ldr r1, ._822 + 12\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + "._813:\n" + " ldr r1, ._822 + 16\n" + " lsl r0, r6, #0x2\n" + " add r0, r0, r6\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._822 + 20\n" + " str r1, [r0]\n" + " b ._821\n" + "._823:\n" + " .align 2, 0\n" + "._822:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gPlttBufferUnfaded+0x200\n" + " .word 0xffffff00\n" + " .word gPlttBufferFaded+0x100\n" + " .word gTasks\n" + " .word debug_80C7A54+1\n" + "._816:\n" + " ldr r1, [r3]\n" + " ldrb r0, [r1, #0x8]\n" + " add r0, r0, #0x4\n" + " strb r0, [r1, #0x8]\n" + " ldr r2, [r3]\n" + " ldrb r1, [r2, #0x8]\n" + " mov r0, #0x1f\n" + " and r0, r0, r1\n" + " strb r0, [r2, #0x8]\n" + " ldr r0, [r3]\n" + " ldrb r1, [r0, #0x7]\n" + " lsl r1, r1, #0x1\n" + " ldr r2, ._824\n" + " add r1, r1, r2\n" + " ldr r2, ._824 + 4\n" + " ldrb r0, [r0, #0x8]\n" + " lsl r0, r0, #0x1\n" + " add r0, r0, r2\n" + " ldrh r0, [r0]\n" + " strh r0, [r1]\n" + "._821:\n" + " add sp, sp, #0x4\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._825:\n" + " .align 2, 0\n" + "._824:\n" + " .word 0x5000142\n" + " .word gUnknown_Debug_083F8790\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C7D44() +{ + asm( + " push {r4, r5, r6, lr}\n" + " add r5, r0, #0\n" + " lsl r5, r5, #0x18\n" + " lsr r5, r5, #0x18\n" + " ldr r6, ._826\n" + " ldr r4, ._826 + 4\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x2]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " ldrb r0, [r0, #0x5]\n" + " lsr r0, r0, #0x4\n" + " bl GetSpritePaletteTagByPaletteNum\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl FreeSpritePaletteByTag\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x2]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " bl DestroySprite\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x3]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " ldrb r0, [r0, #0x5]\n" + " lsr r0, r0, #0x4\n" + " bl GetSpritePaletteTagByPaletteNum\n" + " lsl r0, r0, #0x10\n" + " lsr r0, r0, #0x10\n" + " bl FreeSpritePaletteByTag\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x3]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " bl DestroySprite\n" + " ldr r0, [r4]\n" + " ldrb r1, [r0, #0x4]\n" + " lsl r0, r1, #0x4\n" + " add r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " add r0, r0, r6\n" + " bl sub_809D510\n" + " ldr r1, ._826 + 8\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._826 + 12\n" + " str r1, [r0]\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._827:\n" + " .align 2, 0\n" + "._826:\n" + " .word gSprites\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gTasks\n" + " .word debug_80C7934+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C7DDC() +{ + asm( + " push {r4, r5, r6, r7, lr}\n" + " lsl r0, r0, #0x18\n" + " lsr r7, r0, #0x18\n" + " ldr r0, ._830\n" + " ldrh r2, [r0, #0x2e]\n" + " mov r1, #0x1\n" + " and r1, r1, r2\n" + " add r3, r0, #0\n" + " cmp r1, #0\n" + " beq ._828 @cond_branch\n" + " ldr r0, ._830 + 4\n" + " ldr r1, [r0]\n" + " mov r0, #0x0\n" + " strb r0, [r1, #0x5]\n" + " ldr r1, ._830 + 8\n" + " ldr r2, ._830 + 12\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._830 + 16\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " b ._829\n" + "._831:\n" + " .align 2, 0\n" + "._830:\n" + " .word gMain\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x4000040\n" + " .word 0x51ef\n" + " .word 0x699f\n" + "._828:\n" + " mov r0, #0x2\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._832 @cond_branch\n" + " ldr r6, ._834\n" + " ldr r0, [r6]\n" + " strb r1, [r0, #0x5]\n" + " ldr r1, ._834 + 4\n" + " ldr r2, ._834 + 8\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " add r1, r1, #0x4\n" + " ldr r2, ._834 + 12\n" + " add r0, r2, #0\n" + " strh r0, [r1]\n" + " ldr r0, [r6]\n" + " add r0, r0, #0x10\n" + " ldr r4, ._834 + 16\n" + " add r1, r4, #0\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r0, [r6]\n" + " add r0, r0, #0x10\n" + " ldr r5, ._834 + 20\n" + " add r1, r5, #0\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r1, [r6]\n" + " add r0, r1, #0\n" + " add r0, r0, #0x10\n" + " ldrb r1, [r1, #0x6]\n" + " lsl r1, r1, #0x5\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x1\n" + " add r4, r4, r2\n" + " add r1, r1, r4\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + " ldr r1, [r6]\n" + " add r0, r1, #0\n" + " add r0, r0, #0x10\n" + " ldrb r1, [r1, #0x6]\n" + " lsl r1, r1, #0x5\n" + " mov r2, #0x80\n" + " lsl r2, r2, #0x1\n" + " add r5, r5, r2\n" + " add r1, r1, r5\n" + " mov r2, #0x10\n" + " bl CpuSet\n" + "._829:\n" + " ldr r1, ._834 + 24\n" + " lsl r0, r7, #0x2\n" + " add r0, r0, r7\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._834 + 28\n" + " str r1, [r0]\n" + " b ._871\n" + "._835:\n" + " .align 2, 0\n" + "._834:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word 0x4000040\n" + " .word 0x51ef\n" + " .word 0x699f\n" + " .word gPlttBufferUnfaded+0x100\n" + " .word gPlttBufferFaded+0x100\n" + " .word gTasks\n" + " .word debug_80C7A54+1\n" + "._832:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x80\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._837 @cond_branch\n" + " ldr r0, ._839\n" + " ldr r1, [r0]\n" + " ldrb r0, [r1, #0xa]\n" + " cmp r0, #0x1\n" + " bhi ._837 @cond_branch\n" + " add r0, r0, #0x1\n" + " strb r0, [r1, #0xa]\n" + " b ._871\n" + "._840:\n" + " .align 2, 0\n" + "._839:\n" + " .word unk_debug_ewram_0+0x34\n" + "._837:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x40\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._842 @cond_branch\n" + " ldr r0, ._844\n" + " ldr r1, [r0]\n" + " ldrb r0, [r1, #0xa]\n" + " cmp r0, #0\n" + " beq ._842 @cond_branch\n" + " sub r0, r0, #0x1\n" + " strb r0, [r1, #0xa]\n" + " b ._871\n" + "._845:\n" + " .align 2, 0\n" + "._844:\n" + " .word unk_debug_ewram_0+0x34\n" + "._842:\n" + " ldrh r1, [r3, #0x30]\n" + " mov r0, #0x10\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._846 @cond_branch\n" + " ldr r0, ._851\n" + " ldr r2, [r0]\n" + " ldrb r0, [r2, #0xa]\n" + " cmp r0, #0x1\n" + " beq ._847 @cond_branch\n" + " cmp r0, #0x1\n" + " bgt ._848 @cond_branch\n" + " cmp r0, #0\n" + " beq ._849 @cond_branch\n" + " b ._871\n" + "._852:\n" + " .align 2, 0\n" + "._851:\n" + " .word unk_debug_ewram_0+0x34\n" + "._848:\n" + " cmp r0, #0x2\n" + " beq ._853 @cond_branch\n" + " b ._871\n" + "._849:\n" + " ldrb r3, [r2, #0xc]\n" + " lsl r1, r3, #0x1b\n" + " lsr r0, r1, #0x1b\n" + " cmp r0, #0x1e\n" + " bhi ._878 @cond_branch\n" + " add r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " mov r1, #0x20\n" + " neg r1, r1\n" + " and r1, r1, r3\n" + " orr r1, r1, r0\n" + " strb r1, [r2, #0xc]\n" + " b ._878\n" + "._847:\n" + " ldrh r3, [r2, #0xc]\n" + " lsl r1, r3, #0x16\n" + " lsr r0, r1, #0x1b\n" + " cmp r0, #0x1e\n" + " bhi ._878 @cond_branch\n" + " add r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x5\n" + " ldr r1, ._859\n" + " and r1, r1, r3\n" + " orr r1, r1, r0\n" + " strh r1, [r2, #0xc]\n" + " b ._878\n" + "._860:\n" + " .align 2, 0\n" + "._859:\n" + " .word 0xfffffc1f\n" + "._853:\n" + " ldrb r3, [r2, #0xd]\n" + " lsl r1, r3, #0x19\n" + " lsr r0, r1, #0x1b\n" + " cmp r0, #0x1e\n" + " bhi ._878 @cond_branch\n" + " add r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " mov r1, #0x7d\n" + " neg r1, r1\n" + " and r1, r1, r3\n" + " orr r1, r1, r0\n" + " strb r1, [r2, #0xd]\n" + " b ._878\n" + "._846:\n" + " mov r0, #0x20\n" + " and r0, r0, r1\n" + " cmp r0, #0\n" + " beq ._871 @cond_branch\n" + " ldr r0, ._868\n" + " ldr r3, [r0]\n" + " ldrb r0, [r3, #0xa]\n" + " cmp r0, #0x1\n" + " beq ._864 @cond_branch\n" + " cmp r0, #0x1\n" + " bgt ._865 @cond_branch\n" + " cmp r0, #0\n" + " beq ._866 @cond_branch\n" + " b ._871\n" + "._869:\n" + " .align 2, 0\n" + "._868:\n" + " .word unk_debug_ewram_0+0x34\n" + "._865:\n" + " cmp r0, #0x2\n" + " beq ._870 @cond_branch\n" + " b ._871\n" + "._866:\n" + " ldrb r2, [r3, #0xc]\n" + " mov r0, #0x1f\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._878 @cond_branch\n" + " lsl r0, r2, #0x1b\n" + " lsr r0, r0, #0x1b\n" + " sub r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " mov r1, #0x20\n" + " neg r1, r1\n" + " and r1, r1, r2\n" + " orr r1, r1, r0\n" + " strb r1, [r3, #0xc]\n" + " b ._878\n" + "._864:\n" + " ldrh r2, [r3, #0xc]\n" + " mov r0, #0xf8\n" + " lsl r0, r0, #0x2\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._878 @cond_branch\n" + " lsl r0, r2, #0x16\n" + " lsr r0, r0, #0x1b\n" + " sub r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x5\n" + " ldr r1, ._876\n" + " and r1, r1, r2\n" + " orr r1, r1, r0\n" + " strh r1, [r3, #0xc]\n" + " b ._878\n" + "._877:\n" + " .align 2, 0\n" + "._876:\n" + " .word 0xfffffc1f\n" + "._870:\n" + " ldrb r2, [r3, #0xd]\n" + " mov r0, #0x7c\n" + " and r0, r0, r2\n" + " cmp r0, #0\n" + " beq ._878 @cond_branch\n" + " lsl r0, r2, #0x19\n" + " lsr r0, r0, #0x1b\n" + " sub r0, r0, #0x1\n" + " mov r1, #0x1f\n" + " and r0, r0, r1\n" + " lsl r0, r0, #0x2\n" + " mov r1, #0x7d\n" + " neg r1, r1\n" + " and r1, r1, r2\n" + " orr r1, r1, r0\n" + " strb r1, [r3, #0xd]\n" + "._878:\n" + " ldr r0, ._879\n" + " lsl r1, r7, #0x2\n" + " add r1, r1, r7\n" + " lsl r1, r1, #0x3\n" + " add r1, r1, r0\n" + " ldr r0, ._879 + 4\n" + " str r0, [r1]\n" + "._871:\n" + " pop {r4, r5, r6, r7}\n" + " pop {r0}\n" + " bx r0\n" + "._880:\n" + " .align 2, 0\n" + "._879:\n" + " .word gTasks\n" + " .word debug_80C802C+1\n" + "\n" + ); +} + +__attribute__((naked)) +void debug_80C802C() +{ + asm( + " push {r4, r5, r6, lr}\n" + " mov r6, r8\n" + " push {r6}\n" + " add r5, r0, #0\n" + " lsl r5, r5, #0x18\n" + " lsr r5, r5, #0x18\n" + " ldr r0, ._881\n" + " ldr r3, [r0]\n" + " ldrb r0, [r3, #0xc]\n" + " lsl r0, r0, #0x1b\n" + " lsr r0, r0, #0x1b\n" + " ldrh r2, [r3, #0xc]\n" + " mov r1, #0xf8\n" + " lsl r1, r1, #0x2\n" + " and r1, r1, r2\n" + " add r0, r0, r1\n" + " ldrb r1, [r3, #0xd]\n" + " lsl r1, r1, #0x19\n" + " lsr r1, r1, #0x1b\n" + " lsl r1, r1, #0xa\n" + " add r0, r0, r1\n" + " ldr r6, ._881 + 4\n" + " ldrb r1, [r3, #0x7]\n" + " add r1, r1, #0x81\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, r6\n" + " strh r0, [r1]\n" + " ldr r1, ._881 + 8\n" + " mov r8, r1\n" + " ldrb r1, [r3, #0x7]\n" + " add r1, r1, #0x81\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, r8\n" + " strh r0, [r1]\n" + " ldrb r1, [r3, #0x6]\n" + " lsl r1, r1, #0x4\n" + " ldrb r2, [r3, #0x7]\n" + " ldr r4, ._881 + 12\n" + " add r2, r2, r4\n" + " add r1, r1, r2\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, r6\n" + " strh r0, [r1]\n" + " ldrb r1, [r3, #0x6]\n" + " lsl r1, r1, #0x4\n" + " ldrb r2, [r3, #0x7]\n" + " add r2, r2, r4\n" + " add r1, r1, r2\n" + " lsl r1, r1, #0x1\n" + " add r1, r1, r8\n" + " strh r0, [r1]\n" + " mov r1, #0xe\n" + " mov r2, #0xa\n" + " mov r3, #0x4\n" + " bl debug_80C68CC\n" + " ldr r1, ._881 + 16\n" + " lsl r0, r5, #0x2\n" + " add r0, r0, r5\n" + " lsl r0, r0, #0x3\n" + " add r0, r0, r1\n" + " ldr r1, ._881 + 20\n" + " str r1, [r0]\n" + " pop {r3}\n" + " mov r8, r3\n" + " pop {r4, r5, r6}\n" + " pop {r0}\n" + " bx r0\n" + "._882:\n" + " .align 2, 0\n" + "._881:\n" + " .word unk_debug_ewram_0+0x34\n" + " .word gPlttBufferUnfaded\n" + " .word gPlttBufferFaded\n" + " .word 0x101\n" + " .word gTasks\n" + " .word debug_80C7DDC+1\n" + "\n" + ); +} + +#endif -- cgit v1.2.3 From d79f440b8d4c5af26a98011719807b05745533e1 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Wed, 17 Jan 2018 12:10:41 -0600 Subject: use 'if DEBUG' instead of 'ifdef DEBUG' --- src/debug/watanabe_debug_menu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index fed5b4e52..dcb3bd90b 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -1,4 +1,4 @@ -#ifdef DEBUG +#if DEBUG #include "global.h" EWRAM_DATA u8 unk_debug_ewram_0[56] = { 0 }; -- cgit v1.2.3 From 6903b3626aed4e5521243b4517c43fed3c4d0ff5 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Wed, 17 Jan 2018 13:11:10 -0600 Subject: resolve some undefined references --- src/debug/watanabe_debug_menu.c | 194 ++++++++++++++++++++-------------------- 1 file changed, 97 insertions(+), 97 deletions(-) (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index dcb3bd90b..731e58986 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -126,7 +126,7 @@ void debug_80C35DC() " ldr r0, ._2 + 12\n" " bl LoadSpritePalette\n" " ldr r0, ._2 + 16\n" - " bl SetUpWindowConfig\n" + " bl Text_LoadWindowTemplate\n" " ldr r0, ._2 + 20\n" " bl InitMenuWindow\n" " add sp, sp, #0x8\n" @@ -298,7 +298,7 @@ void debug_80C376C() " mov r0, sp\n" " add r1, r7, #0\n" " add r2, r6, #0\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add sp, sp, #0x4\n" " pop {r4, r5, r6, r7}\n" " pop {r0}\n" @@ -365,7 +365,7 @@ void debug_80C3800() " mov r0, sp\n" " add r1, r6, #0\n" " add r2, r5, #0\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add sp, sp, #0xc\n" " pop {r4, r5, r6, r7}\n" " pop {r0}\n" @@ -491,13 +491,13 @@ void debug_80C38E4() " add r1, r4, #0\n" " add r2, r7, #0\n" " add r3, r5, #0\n" - " bl MenuFillWindowRectWithBlankTile\n" + " bl Menu_BlankWindowRect\n" " cmp r6, #0\n" " beq ._36 @cond_branch\n" " mov r0, sp\n" " add r1, r7, #0\n" " mov r2, r8\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" "._36:\n" " add sp, sp, #0x4\n" " pop {r3}\n" @@ -699,82 +699,82 @@ void debug_80C3A50() " mov r1, #0x0\n" " mov r2, #0x17\n" " mov r3, #0x9\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0x5\n" " mov r3, #0x9\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " ldr r5, ._56 + 8\n" " add r0, r5, #0\n" " mov r1, #0x1\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r4, ._56 + 12\n" " add r0, r4, #0\n" " mov r1, #0x1\n" " mov r2, #0x5\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0x18\n" " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0x9\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " add r0, r5, #0\n" " mov r1, #0x19\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r4, #0\n" " mov r1, #0x19\n" " mov r2, #0x5\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0x0\n" " mov r1, #0xa\n" " mov r2, #0xb\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " ldr r0, ._56 + 16\n" " mov r1, #0x1\n" " mov r2, #0xb\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._56 + 20\n" " mov r1, #0x1\n" " mov r2, #0xd\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._56 + 24\n" " mov r1, #0x1\n" " mov r2, #0xf\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._56 + 28\n" " mov r1, #0x1\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0xc\n" " mov r1, #0xa\n" " mov r2, #0x1d\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " ldr r0, ._56 + 32\n" " mov r1, #0xd\n" " mov r2, #0xb\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._56 + 36\n" " mov r1, #0xd\n" " mov r2, #0xd\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0xc\n" " mov r1, #0x10\n" " mov r2, #0x1d\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " ldr r0, ._56 + 40\n" " mov r1, #0xd\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._56 + 44\n" " mov r1, #0x18\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, r9\n" " mov r1, #0x12\n" " mov r2, #0x11\n" @@ -1788,15 +1788,15 @@ void debug_80C42B8() " mov r1, #0x10\n" " mov r2, #0x1d\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, sp\n" " mov r1, #0x1\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r4, #0\n" " mov r1, #0x14\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " bl debug_80C4694\n" " bl debug_80C4704\n" " ldr r0, ._150 + 8\n" @@ -2298,11 +2298,11 @@ void debug_80C4694() " mov r1, #0x0\n" " mov r2, #0xe\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, sp\n" " mov r1, #0x2\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r4, #0x0\n" " add r5, sp, #0x10\n" "._212:\n" @@ -2324,7 +2324,7 @@ void debug_80C4694() " lsr r2, r2, #0x18\n" " add r0, r5, #0\n" " mov r1, #0x2\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r4, #1\n" " lsl r0, r0, #0x18\n" " lsr r4, r0, #0x18\n" @@ -2357,11 +2357,11 @@ void debug_80C4704() " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, sp\n" " mov r1, #0x11\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r4, #0x0\n" " add r5, sp, #0x10\n" "._215:\n" @@ -2383,7 +2383,7 @@ void debug_80C4704() " lsr r2, r2, #0x18\n" " add r0, r5, #0\n" " mov r1, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r4, #1\n" " lsl r0, r0, #0x18\n" " lsr r4, r0, #0x18\n" @@ -2476,24 +2476,24 @@ void debug_80C47BC() " mov r1, #0x10\n" " mov r2, #0x1d\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, sp\n" " mov r1, #0x1\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r4, #0\n" " mov r1, #0x14\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0xe\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " add r0, r6, #0\n" " mov r1, #0x2\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r4, #0x0\n" " ldr r6, ._224 + 16\n" "._223:\n" @@ -2506,7 +2506,7 @@ void debug_80C47BC() " add r2, r2, r1\n" " lsr r2, r2, #0x18\n" " mov r1, #0x2\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r4, #1\n" " lsl r0, r0, #0x18\n" " lsr r4, r0, #0x18\n" @@ -2516,11 +2516,11 @@ void debug_80C47BC() " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " add r0, r5, #0\n" " mov r1, #0x11\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._224 + 20\n" " ldrb r0, [r0, #0x4]\n" " bl debug_80C4C44\n" @@ -3142,7 +3142,7 @@ void debug_80C4C44() " lsr r2, r2, #0x18\n" " mov r0, sp\n" " mov r1, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" "._280:\n" " mov r7, r8\n" " lsl r0, r7, #0x18\n" @@ -3188,24 +3188,24 @@ void debug_80C4D14() " mov r1, #0x10\n" " mov r2, #0x1d\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, sp\n" " mov r1, #0x1\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r5, #0\n" " mov r1, #0x14\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0xe\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " add r0, r6, #0\n" " mov r1, #0x2\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._291 + 12\n" " ldrb r0, [r0, #0x6]\n" " bl debug_80C4F00\n" @@ -3213,7 +3213,7 @@ void debug_80C4D14() " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " ldr r1, ._291 + 16\n" " lsl r0, r4, #0x2\n" " add r0, r0, r4\n" @@ -3431,7 +3431,7 @@ void debug_80C4F00() " mov r1, #0x3\n" " mov r2, #0xd\n" " mov r3, #0xe\n" - " bl MenuFillWindowRectWithBlankTile\n" + " bl Menu_BlankWindowRect\n" " mov r4, #0x0\n" " ldr r6, ._318\n" "._317:\n" @@ -3447,7 +3447,7 @@ void debug_80C4F00() " add r2, r2, r1\n" " lsr r2, r2, #0x18\n" " mov r1, #0x2\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" "._316:\n" " add r0, r4, #1\n" " lsl r0, r0, #0x18\n" @@ -3505,46 +3505,46 @@ void debug_80C4F48() " mov r1, #0x10\n" " mov r2, #0x1d\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, sp\n" " mov r1, #0x1\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r6, #0\n" " mov r1, #0x14\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0xe\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " add r0, r5, #0\n" " mov r1, #0x2\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0x1\n" " mov r1, #0x3\n" " mov r2, #0xd\n" " mov r3, #0xe\n" - " bl MenuFillWindowRectWithBlankTile\n" + " bl Menu_BlankWindowRect\n" " add r0, r5, #0\n" " mov r1, #0x2\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, r9\n" " mov r1, #0x2\n" " mov r2, #0x3\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, r8\n" " mov r1, #0x2\n" " mov r2, #0x5\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0xf\n" " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0xf\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " ldr r1, ._320 + 20\n" " lsl r0, r4, #0x2\n" " add r0, r0, r4\n" @@ -4039,11 +4039,11 @@ void InitCreatePokemon() " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0x3\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " add r0, sp, #0x4\n" " mov r1, #0x1\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r1, #0x80\n" " lsl r1, r1, #0x13\n" " mov r2, #0x8a\n" @@ -4244,13 +4244,13 @@ void debug_80C53F0() " mov r1, #0x8\n" " mov r2, #0x1a\n" " mov r3, #0xb\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " cmp r4, #0\n" " beq ._379 @cond_branch\n" " ldr r0, ._381 + 4\n" " mov r1, #0x4\n" " mov r2, #0x9\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " b ._380\n" "._382:\n" " .align 2, 0\n" @@ -4261,7 +4261,7 @@ void debug_80C53F0() " ldr r0, ._384\n" " mov r1, #0x4\n" " mov r2, #0x9\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" "._380:\n" " ldr r0, ._384 + 4\n" " lsl r1, r5, #0x2\n" @@ -6028,7 +6028,7 @@ void debug_80C627C() " lsr r2, r2, #0x18\n" " add r0, r5, #0\n" " mov r1, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, [r4]\n" " ldr r2, ._593 + 4\n" " add r1, r0, r2\n" @@ -6046,7 +6046,7 @@ void debug_80C627C() " lsr r2, r2, #0x18\n" " mov r0, sp\n" " mov r1, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " b ._595\n" "._594:\n" " .align 2, 0\n" @@ -6070,7 +6070,7 @@ void debug_80C627C() " lsr r2, r2, #0x18\n" " add r0, r5, #0\n" " mov r1, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, [r4]\n" " ldr r2, ._596 + 4\n" " add r1, r0, r2\n" @@ -6085,7 +6085,7 @@ void debug_80C627C() " lsr r2, r2, #0x18\n" " mov r0, sp\n" " mov r1, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" "._595:\n" " add sp, sp, #0x8\n" " pop {r4, r5, r6}\n" @@ -6112,7 +6112,7 @@ void debug_80C6384() " mov r1, #0x4\n" " mov r2, #0x1d\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r5, #0x0\n" " ldr r3, ._600\n" " ldr r1, ._600 + 4\n" @@ -6166,7 +6166,7 @@ void debug_80C6384() " add r2, r2, r1\n" " lsr r2, r2, #0x18\n" " mov r1, #0x2\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r5, #1\n" " lsl r0, r0, #0x10\n" " lsr r5, r0, #0x10\n" @@ -6209,7 +6209,7 @@ void debug_80C643C() " mov r1, #0x5\n" " mov r2, #0x1c\n" " mov r3, #0x12\n" - " bl MenuFillWindowRectWithBlankTile\n" + " bl Menu_BlankWindowRect\n" " mov r5, #0x0\n" " ldr r6, ._605\n" " ldr r1, ._605 + 4\n" @@ -6301,7 +6301,7 @@ void debug_80C643C() " add r2, r2, r1\n" " lsr r2, r2, #0x18\n" " mov r1, #0x2\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r5, #1\n" " lsl r0, r0, #0x10\n" " lsr r5, r0, #0x10\n" @@ -6888,7 +6888,7 @@ void debug_80C68CC() " add r0, r0, sp\n" " add r1, r6, #0\n" " add r2, r5, #0\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add sp, sp, #0x8\n" " pop {r4, r5, r6, r7}\n" " pop {r0}\n" @@ -7092,39 +7092,39 @@ void debug_80C6B00() " mov r1, #0x0\n" " mov r2, #0xf\n" " mov r3, #0x7\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0x9\n" " mov r3, #0x9\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, #0x0\n" " mov r1, #0xa\n" " mov r2, #0x9\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, #0x10\n" " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0x7\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " ldr r0, ._666 + 4\n" " mov r1, #0x11\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._666 + 8\n" " mov r1, #0x1b\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._666 + 12\n" " mov r1, #0x11\n" " mov r2, #0x5\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0xa\n" " mov r1, #0x8\n" " mov r2, #0x1d\n" " mov r3, #0xc\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r2, #0x0\n" " ldr r4, ._666 + 16\n" " ldr r0, ._666 + 20\n" @@ -7159,12 +7159,12 @@ void debug_80C6B00() " add r0, r5, #0\n" " mov r1, #0x14\n" " mov r2, #0xa\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0xa\n" " mov r1, #0xd\n" " mov r2, #0x1d\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r1, sp\n" " mov r0, #0x23\n" " strb r0, [r1]\n" @@ -7232,7 +7232,7 @@ void debug_80C6B00() " add r0, r5, #0\n" " mov r1, #0xf\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r1, ._666 + 52\n" " ldr r2, ._666 + 56\n" " add r0, r2, #0\n" @@ -7595,7 +7595,7 @@ void debug_80C6EE8() " ldr r0, ._670 + 16\n" " mov r1, #0xd\n" " mov r2, #0xa\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r4, #0\n" " mov r1, #0xe\n" " mov r2, #0xa\n" @@ -8665,39 +8665,39 @@ void debug_80C777C() " mov r1, #0x0\n" " mov r2, #0xe\n" " mov r3, #0x7\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0x9\n" " mov r3, #0x9\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, #0x0\n" " mov r1, #0xa\n" " mov r2, #0x9\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r0, #0xe\n" " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0x7\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " ldr r0, ._784 + 4\n" " mov r1, #0xf\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._784 + 8\n" " mov r1, #0x19\n" " mov r2, #0x1\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r0, ._784 + 12\n" " mov r1, #0xf\n" " mov r2, #0x5\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0xa\n" " mov r1, #0x8\n" " mov r2, #0x1d\n" " mov r3, #0xc\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r2, #0x0\n" " ldr r4, ._784 + 16\n" " ldr r0, ._784 + 20\n" @@ -8732,12 +8732,12 @@ void debug_80C777C() " add r0, r5, #0\n" " mov r1, #0x14\n" " mov r2, #0xa\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " mov r0, #0xa\n" " mov r1, #0xd\n" " mov r2, #0x1d\n" " mov r3, #0x13\n" - " bl MenuDrawTextWindow\n" + " bl Menu_DrawStdWindowFrame\n" " mov r1, sp\n" " mov r0, #0x23\n" " strb r0, [r1]\n" @@ -8805,7 +8805,7 @@ void debug_80C777C() " add r0, r5, #0\n" " mov r1, #0xf\n" " mov r2, #0x11\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " ldr r1, ._784 + 52\n" " ldr r2, ._784 + 56\n" " add r0, r2, #0\n" @@ -9052,7 +9052,7 @@ void debug_80C7A54() " ldr r0, ._788 + 16\n" " mov r1, #0xd\n" " mov r2, #0xa\n" - " bl MenuPrint\n" + " bl Menu_PrintText\n" " add r0, r4, #0\n" " mov r1, #0xe\n" " mov r2, #0xa\n" -- cgit v1.2.3 From 233654746815b884d303cc3416c3fe6c377b4a73 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Wed, 17 Jan 2018 17:30:45 -0600 Subject: resolve more undefined references --- src/debug/watanabe_debug_menu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index 731e58986..7288f602e 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -142,8 +142,8 @@ void debug_80C35DC() " .word 0x81000800\n" " .word stru_83F8828\n" " .word stru_83F8838\n" - " .word gWindowConfig_81E6C3C\n" - " .word gWindowConfig_81E6CE4\n" + " .word gWindowTemplate_81E6C3C\n" + " .word gWindowTemplate_81E6CE4\n" "\n" ); } -- cgit v1.2.3 From 73392181fe47fd0fe5ac3702978307926a442ef4 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Wed, 17 Jan 2018 18:08:02 -0600 Subject: resolve more undefined references --- src/debug/watanabe_debug_menu.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index 7288f602e..b0fbebac1 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -116,7 +116,7 @@ void debug_80C35DC() " str r3, [r2, #0x8]\n" " ldr r0, [r2, #0x8]\n" " bl ResetPaletteFade\n" - " bl remove_some_task\n" + " bl ScanlineEffect_Stop\n" " bl ResetTasks\n" " bl ResetSpriteData\n" " bl ResetPaletteFade\n" @@ -4289,10 +4289,10 @@ void debug_80C53F0() " lsr r4, r4, #0x10\n" " add r0, r4, #0\n" " mov r1, #0x2\n" - " bl GetNationalPokedexFlag\n" + " bl GetSetPokedexFlag\n" " add r0, r4, #0\n" " mov r1, #0x3\n" - " bl GetNationalPokedexFlag\n" + " bl GetSetPokedexFlag\n" " mov r0, #0x5\n" " bl PlaySE\n" " b ._400\n" @@ -7813,7 +7813,7 @@ void debug_80C6FA8() " ldrh r0, [r1]\n" " mov r1, #0x0\n" " mov r2, #0x0\n" - " bl species_and_otid_get_pal\n" + " bl GetMonSpritePal\n" " ldr r1, [r4]\n" " ldrb r1, [r1, #0x6]\n" " lsl r1, r1, #0x14\n" @@ -7832,7 +7832,7 @@ void debug_80C6FA8() " ldrh r0, [r1]\n" " mov r1, #0x0\n" " mov r2, #0x9\n" - " bl species_and_otid_get_pal\n" + " bl GetMonSpritePal\n" " ldr r1, [r4]\n" " ldrb r1, [r1, #0x6]\n" " lsl r1, r1, #0x14\n" @@ -9268,7 +9268,7 @@ void debug_80C7B14() " ldrh r0, [r1]\n" " mov r1, #0x0\n" " mov r2, #0x0\n" - " bl species_and_otid_get_pal\n" + " bl GetMonSpritePal\n" " ldr r1, [r4]\n" " ldrb r1, [r1, #0x6]\n" " lsl r1, r1, #0x14\n" @@ -9287,7 +9287,7 @@ void debug_80C7B14() " ldrh r0, [r1]\n" " mov r1, #0x0\n" " mov r2, #0x9\n" - " bl species_and_otid_get_pal\n" + " bl GetMonSpritePal\n" " ldr r1, [r4]\n" " ldrb r1, [r1, #0x6]\n" " lsl r1, r1, #0x14\n" -- cgit v1.2.3 From ffb74a0211f750506650b66fe2bcdf7ddf770668 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Sun, 21 Jan 2018 18:14:47 -0600 Subject: match debug ROM --- src/debug/watanabe_debug_menu.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index b0fbebac1..ff6f97933 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -7813,7 +7813,7 @@ void debug_80C6FA8() " ldrh r0, [r1]\n" " mov r1, #0x0\n" " mov r2, #0x0\n" - " bl GetMonSpritePal\n" + " bl GetMonSpritePalFromOtIdPersonality\n" " ldr r1, [r4]\n" " ldrb r1, [r1, #0x6]\n" " lsl r1, r1, #0x14\n" @@ -7832,7 +7832,7 @@ void debug_80C6FA8() " ldrh r0, [r1]\n" " mov r1, #0x0\n" " mov r2, #0x9\n" - " bl GetMonSpritePal\n" + " bl GetMonSpritePalFromOtIdPersonality\n" " ldr r1, [r4]\n" " ldrb r1, [r1, #0x6]\n" " lsl r1, r1, #0x14\n" @@ -9268,7 +9268,7 @@ void debug_80C7B14() " ldrh r0, [r1]\n" " mov r1, #0x0\n" " mov r2, #0x0\n" - " bl GetMonSpritePal\n" + " bl GetMonSpritePalFromOtIdPersonality\n" " ldr r1, [r4]\n" " ldrb r1, [r1, #0x6]\n" " lsl r1, r1, #0x14\n" @@ -9287,7 +9287,7 @@ void debug_80C7B14() " ldrh r0, [r1]\n" " mov r1, #0x0\n" " mov r2, #0x9\n" - " bl GetMonSpritePal\n" + " bl GetMonSpritePalFromOtIdPersonality\n" " ldr r1, [r4]\n" " ldrb r1, [r1, #0x6]\n" " lsl r1, r1, #0x14\n" -- cgit v1.2.3 From 1685a7977a652f35998a717395407d625878e20e Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Mon, 22 Jan 2018 21:42:14 -0600 Subject: dump some debug baseroms --- src/debug/watanabe_debug_menu.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index ff6f97933..58ae28510 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -7068,7 +7068,7 @@ void InitSeePokemonGraphics() " .word unk_debug_ewram_0+0x34\n" " .word +0x2018000\n" " .word 0x115\n" - " .word unk_83F8868+0xc\n" + " .word gSpriteTemplate_83F8874\n" " .word gSprites\n" "\n" ); @@ -8641,7 +8641,7 @@ void InitSeeTrainers() " .word debug_80C777C+1\n" " .word unk_debug_ewram_0+0x34\n" " .word +0x2018000\n" - " .word unk_83F8868+0xc\n" + " .word gSpriteTemplate_83F8874\n" " .word gSprites\n" "\n" ); -- cgit v1.2.3 From 960bc2dd01bfc5bada0cbd96318440c81cfc235d Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Tue, 23 Jan 2018 15:29:39 -0600 Subject: fix more false offsets --- src/debug/watanabe_debug_menu.c | 211 ++++++++++++++++++++-------------------- 1 file changed, 107 insertions(+), 104 deletions(-) (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index 58ae28510..cc53f8c95 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -1,7 +1,10 @@ #if DEBUG #include "global.h" -EWRAM_DATA u8 unk_debug_ewram_0[56] = { 0 }; +EWRAM_DATA u8 gUnknown_Debug_20389EC[0x20] = { 0 }; +EWRAM_DATA u8 gUnknown_Debug_2038A0C[0x10] = { 0 }; +EWRAM_DATA u8 gUnknown_Debug_2038A1C[4] = { 0 }; +EWRAM_DATA u8 gUnknown_Debug_2038A20[4] = { 0 }; u8 byte_3005E30[0x20]; @@ -655,7 +658,7 @@ void InitSizeComparison() " .align 2, 0\n" "._54:\n" " .word gReservedSpritePaletteCount\n" - " .word unk_debug_ewram_0\n" + " .word gUnknown_Debug_20389EC\n" " .word 0x4000208\n" " .word 0x4000200\n" " .word debug_80C3758+1\n" @@ -1611,7 +1614,7 @@ void InitBattleForDebug() "._139:\n" " .align 2, 0\n" "._138:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gSaveBlock2\n" " .word byte_3005E30\n" " .word debug_80C47BC+1\n" @@ -1640,7 +1643,7 @@ void debug_80C41A8() "._141:\n" " .align 2, 0\n" "._140:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word debug_80C47BC+1\n" "\n" ); @@ -1815,7 +1818,7 @@ void debug_80C42B8() "._150:\n" " .word gUnknown_Debug_083F8194\n" " .word gUnknown_Debug_083F81A0\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gTasks\n" " .word debug_80C44EC+1\n" "._148:\n" @@ -1883,7 +1886,7 @@ void debug_80C4348() "._155:\n" " .align 2, 0\n" "._154:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word 0x4000042\n" " .word 0x177\n" " .word gTasks\n" @@ -1924,7 +1927,7 @@ void debug_80C43A8() " .align 2, 0\n" "._158:\n" " .word gMain\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gPlayerParty\n" " .word debug_80C41D4+1\n" "._156:\n" @@ -2014,7 +2017,7 @@ void debug_80C43A8() "._177:\n" " .align 2, 0\n" "._176:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" "._174:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x80\n" @@ -2053,7 +2056,7 @@ void debug_80C43A8() "._182:\n" " .align 2, 0\n" "._181:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gPlayerParty\n" " .word gTasks\n" " .word debug_80C4348+1\n" @@ -2105,7 +2108,7 @@ void debug_80C44EC() "._184:\n" " .align 2, 0\n" "._183:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word 0x4000042\n" " .word 0x79ef\n" " .word 0x17f\n" @@ -2147,7 +2150,7 @@ void debug_80C4550() " .align 2, 0\n" "._187:\n" " .word gMain\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gEnemyParty\n" " .word debug_80C41F4+1\n" "._185:\n" @@ -2237,7 +2240,7 @@ void debug_80C4550() "._206:\n" " .align 2, 0\n" "._205:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" "._203:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x80\n" @@ -2276,7 +2279,7 @@ void debug_80C4550() "._211:\n" " .align 2, 0\n" "._210:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gEnemyParty\n" " .word gTasks\n" " .word debug_80C44EC+1\n" @@ -2432,7 +2435,7 @@ void debug_80C4774() "._222:\n" " .align 2, 0\n" "._221:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gPlayerParty\n" " .word gEnemyParty\n" "._219:\n" @@ -2543,7 +2546,7 @@ void debug_80C47BC() " .word gUnknown_Debug_083F81D6\n" " .word gUnknown_Debug_083F81E5\n" " .word gUnknown_Debug_083F8068\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gTasks\n" " .word debug_80C48A0+1\n" "\n" @@ -2593,7 +2596,7 @@ void debug_80C48A0() "._227:\n" " .align 2, 0\n" "._226:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word 0x4000042\n" " .word 0x177\n" " .word gTasks\n" @@ -2654,7 +2657,7 @@ void debug_80C4900() " .word gMain\n" " .word debug_80C370C+1\n" " .word gSaveBlock2\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gBattleTypeFlags\n" " .word gUnknown_02023A14_50\n" " .word gTasks\n" @@ -2712,7 +2715,7 @@ void debug_80C4900() "._236:\n" " .word gBattleTypeFlags\n" " .word gUnknown_Debug_083F8068\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gUnknown_02023A14_50\n" " .word gTasks\n" " .word debug_80C4A60+1\n" @@ -2745,7 +2748,7 @@ void debug_80C4900() "._245:\n" " .align 2, 0\n" "._244:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" "._242:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x80\n" @@ -2775,7 +2778,7 @@ void debug_80C4900() "._249:\n" " .align 2, 0\n" "._248:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gTasks\n" " .word debug_80C48A0+1\n" "\n" @@ -2826,7 +2829,7 @@ void debug_80C4A60() "._251:\n" " .align 2, 0\n" "._250:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word 0x4000042\n" " .word 0x79ef\n" " .word 0x17f\n" @@ -2880,7 +2883,7 @@ void debug_80C4AC4() "._256:\n" " .align 2, 0\n" "._255:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gMain\n" " .word gUnknown_Debug_083F80D8\n" " .word byte_3005E30\n" @@ -3231,7 +3234,7 @@ void debug_80C4D14() " .word gUnknown_Debug_083F81C7\n" " .word gUnknown_Debug_083F81F5\n" " .word gUnknown_Debug_083F8202\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gTasks\n" " .word debug_80C4DB8+1\n" "\n" @@ -3281,7 +3284,7 @@ void debug_80C4DB8() "._294:\n" " .align 2, 0\n" "._293:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word 0x4000042\n" " .word 0x177\n" " .word gTasks\n" @@ -3319,7 +3322,7 @@ void debug_80C4E18() "._298:\n" " .align 2, 0\n" "._297:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gMain\n" " .word gTasks\n" " .word debug_80C42B8+1\n" @@ -3616,7 +3619,7 @@ void debug_80C5038() "._323:\n" " .align 2, 0\n" "._322:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word 0x4000042\n" " .word 0x177\n" " .word gTasks\n" @@ -3680,7 +3683,7 @@ void debug_80C5098() " .align 2, 0\n" "._331:\n" " .word gSaveBlock2\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gTasks\n" " .word debug_80C42B8+1\n" "._329:\n" @@ -3698,7 +3701,7 @@ void debug_80C5098() "._337:\n" " .align 2, 0\n" "._336:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" "._334:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x80\n" @@ -3727,7 +3730,7 @@ void debug_80C5098() "._341:\n" " .align 2, 0\n" "._340:\n" - " .word unk_debug_ewram_0+0x20\n" + " .word gUnknown_Debug_2038A0C\n" " .word gTasks\n" " .word debug_80C5038+1\n" "\n" @@ -3929,7 +3932,7 @@ void debug_80C5208() "._356:\n" " .align 2, 0\n" "._355:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word +0x2018000\n" " .word gSaveBlock2\n" "\n" @@ -3986,7 +3989,7 @@ void debug_80C527C() "._363:\n" " .align 2, 0\n" "._362:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "\n" ); } @@ -4079,7 +4082,7 @@ void InitCreatePokemon() " .word debug_80C3758+1\n" " .word debug_80C370C+1\n" " .word debug_80C53A4+1\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" "\n" ); @@ -4194,7 +4197,7 @@ void debug_80C53F0() " .align 2, 0\n" "._372:\n" " .word gMain\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gUnknown_Debug_083F8698\n" " .word 0x169\n" " .word gTasks\n" @@ -4255,7 +4258,7 @@ void debug_80C53F0() "._382:\n" " .align 2, 0\n" "._381:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gUnknown_Debug_083F872A\n" "._379:\n" " ldr r0, ._384\n" @@ -4299,7 +4302,7 @@ void debug_80C53F0() "._389:\n" " .align 2, 0\n" "._388:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._386:\n" " mov r0, #0x40\n" " and r0, r0, r1\n" @@ -4342,7 +4345,7 @@ void debug_80C53F0() "._398:\n" " .align 2, 0\n" "._397:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" "._395:\n" " ldrh r1, [r4, #0x2e]\n" @@ -4383,7 +4386,7 @@ void debug_80C53F0() "._402:\n" " .align 2, 0\n" "._401:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" " .word gTasks\n" " .word debug_80C53C0+1\n" @@ -4438,7 +4441,7 @@ void debug_80C55E4() " .align 2, 0\n" "._405:\n" " .word gUnknown_Debug_083F8698\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" " .word gMain\n" " .word gTasks\n" @@ -4645,7 +4648,7 @@ void debug_80C5738() " .align 2, 0\n" "._428:\n" " .word gUnknown_Debug_083F850A\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gUnknown_Debug_083F8514\n" " .word gUnknown_Debug_083F851C\n" "._426:\n" @@ -4702,7 +4705,7 @@ void debug_80C5738() " .align 2, 0\n" "._432:\n" " .word gUnknown_Debug_083F8524\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gUnknown_Debug_083F852D\n" " .word gUnknown_Debug_083F8537\n" "._430:\n" @@ -4835,7 +4838,7 @@ void debug_80C5738() "._478:\n" " .align 2, 0\n" "._477:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gSpeciesNames\n" "._445:\n" " ldr r0, ._483\n" @@ -4853,7 +4856,7 @@ void debug_80C5738() "._484:\n" " .align 2, 0\n" "._483:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._480:\n" " add r0, r6, #0\n" " add r0, r0, #0xa\n" @@ -4918,7 +4921,7 @@ void debug_80C5738() "._496:\n" " .align 2, 0\n" "._495:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gMoveNames\n" "._451:\n" " add r0, r6, #0\n" @@ -4957,7 +4960,7 @@ void debug_80C5738() "._500:\n" " .align 2, 0\n" "._499:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._497:\n" " add r0, r5, #0\n" " add r0, r0, #0xe\n" @@ -5000,7 +5003,7 @@ void debug_80C5738() "._506:\n" " .align 2, 0\n" "._505:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gAbilityNames\n" "._474:\n" " add r0, r6, #0\n" @@ -5019,7 +5022,7 @@ void debug_80C5738() " .align 2, 0\n" "._508:\n" " .word gUnknown_Debug_083F86E8\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._472:\n" " add r0, r6, #0\n" " add r0, r0, #0xc\n" @@ -5034,7 +5037,7 @@ void debug_80C5738() "._512:\n" " .align 2, 0\n" "._511:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._473:\n" " ldr r0, ._515\n" " ldr r0, [r0]\n" @@ -5050,7 +5053,7 @@ void debug_80C5738() "._516:\n" " .align 2, 0\n" "._515:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gUnknown_Debug_083F854A\n" "._513:\n" " add r0, r6, #0\n" @@ -5090,7 +5093,7 @@ void debug_80C5738() " .align 2, 0\n" "._520:\n" " .word gNatureNames\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "\n" ); } @@ -5110,7 +5113,7 @@ void debug_80C5B60() "._523:\n" " .align 2, 0\n" "._522:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "\n" ); } @@ -5172,7 +5175,7 @@ void debug_80C5B74() "._555:\n" " .align 2, 0\n" "._554:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._532:\n" " ldr r0, ._557\n" " ldr r0, [r0]\n" @@ -5184,7 +5187,7 @@ void debug_80C5B74() "._558:\n" " .align 2, 0\n" "._557:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._529:\n" " ldr r4, ._560\n" " ldr r1, [r4]\n" @@ -5219,7 +5222,7 @@ void debug_80C5B74() "._561:\n" " .align 2, 0\n" "._560:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gExperienceTables\n" " .word gBaseStats\n" "._530:\n" @@ -5233,7 +5236,7 @@ void debug_80C5B74() "._564:\n" " .align 2, 0\n" "._563:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._552:\n" " ldr r0, ._565\n" " ldr r0, [r0]\n" @@ -5248,7 +5251,7 @@ void debug_80C5B74() "._566:\n" " .align 2, 0\n" "._565:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "\n" ); } @@ -5414,7 +5417,7 @@ void debug_80C5C94() "._568:\n" " .align 2, 0\n" "._567:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "\n" ); } @@ -5537,7 +5540,7 @@ void debug_80C5DEC() "._570:\n" " .align 2, 0\n" "._569:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "\n" ); } @@ -5660,7 +5663,7 @@ void debug_80C5EF4() "._572:\n" " .align 2, 0\n" "._571:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "\n" ); } @@ -5953,7 +5956,7 @@ void debug_80C5FFC() "._578:\n" " .word gUnknown_Debug_083F8758\n" " .word gUnknown_Debug_083F875C\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word gUnknown_Debug_083F86E8+0x4\n" "\n" ); @@ -6002,7 +6005,7 @@ void debug_80C627C() "._590:\n" " .align 2, 0\n" "._589:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" "._580:\n" " ldr r4, ._593\n" @@ -6051,7 +6054,7 @@ void debug_80C627C() "._594:\n" " .align 2, 0\n" "._593:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" " .word gUnknown_Debug_083F8698\n" "._586:\n" @@ -6094,7 +6097,7 @@ void debug_80C627C() "._597:\n" " .align 2, 0\n" "._596:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" "\n" ); @@ -6191,7 +6194,7 @@ void debug_80C6384() " .align 2, 0\n" "._600:\n" " .word gUnknown_Debug_083F8698\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x16b\n" " .word 0x16d\n" "\n" @@ -6267,7 +6270,7 @@ void debug_80C643C() " .align 2, 0\n" "._605:\n" " .word gUnknown_Debug_083F8698\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x16b\n" " .word 0x169\n" " .word 0x16d\n" @@ -6402,7 +6405,7 @@ void debug_80C6544() " .align 2, 0\n" "._614:\n" " .word gUnknown_Debug_083F8698\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" " .word gUnknown_Debug_083F8554\n" " .word gUnknown_Debug_083F8768\n" @@ -6458,7 +6461,7 @@ void debug_80C6544() " .align 2, 0\n" "._624:\n" " .word gUnknown_Debug_083F8698\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" " .word 0x169\n" "\n" ); @@ -6497,7 +6500,7 @@ void debug_80C6630() "._630:\n" " .align 2, 0\n" "._629:\n" - " .word unk_debug_ewram_0+0x30\n" + " .word gUnknown_Debug_2038A1C\n" "._627:\n" " mov r0, #0x4\n" "._626:\n" @@ -7065,7 +7068,7 @@ void InitSeePokemonGraphics() " .word 0x1f0b\n" " .word 0x1e0a\n" " .word debug_80C6B00+1\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word +0x2018000\n" " .word 0x115\n" " .word gSpriteTemplate_83F8874\n" @@ -7504,7 +7507,7 @@ void debug_80C6CB8() "._669:\n" " .align 2, 0\n" "._668:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gMonFrontPicTable\n" " .word gMonFrontPicCoords\n" " .word gUnknown_081FAF4C\n" @@ -7615,7 +7618,7 @@ void debug_80C6EE8() " .align 2, 0\n" "._670:\n" " .word gPlttBufferUnfaded+0x100\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0xffffff00\n" " .word 0xfffffc1f\n" " .word gUnknown_Debug_083F8813\n" @@ -7681,7 +7684,7 @@ void debug_80C6FA8() "._679:\n" " .align 2, 0\n" "._678:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._676:\n" " mov r0, #0x80\n" " lsl r0, r0, #0x2\n" @@ -7707,7 +7710,7 @@ void debug_80C6FA8() "._683:\n" " .align 2, 0\n" "._682:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gTasks\n" " .word debug_80C71FC+1\n" "._680:\n" @@ -7738,7 +7741,7 @@ void debug_80C6FA8() "._687:\n" " .align 2, 0\n" "._686:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x4000040\n" " .word 0x51ef\n" " .word 0x4167\n" @@ -7766,7 +7769,7 @@ void debug_80C6FA8() "._692:\n" " .align 2, 0\n" "._691:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x5000102\n" "._689:\n" " ldrh r1, [r4, #0x30]\n" @@ -7792,7 +7795,7 @@ void debug_80C6FA8() "._697:\n" " .align 2, 0\n" "._696:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x5000102\n" "._694:\n" " ldrh r1, [r4, #0x2e]\n" @@ -7827,7 +7830,7 @@ void debug_80C6FA8() "._702:\n" " .align 2, 0\n" "._701:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._699:\n" " ldrh r0, [r1]\n" " mov r1, #0x0\n" @@ -7872,7 +7875,7 @@ void debug_80C6FA8() "._705:\n" " .align 2, 0\n" "._704:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gPlttBufferUnfaded+0x200\n" " .word 0xffffff00\n" " .word gPlttBufferFaded+0x100\n" @@ -7919,7 +7922,7 @@ void debug_80C6FA8() "._708:\n" " .align 2, 0\n" "._707:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x5000142\n" " .word gUnknown_Debug_083F8790\n" "\n" @@ -7995,7 +7998,7 @@ void debug_80C71FC() " .align 2, 0\n" "._709:\n" " .word gSprites\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gTasks\n" " .word debug_80C6CB8+1\n" "\n" @@ -8033,7 +8036,7 @@ void debug_80C7294() " .align 2, 0\n" "._713:\n" " .word gMain\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x4000040\n" " .word 0x51ef\n" " .word 0x699f\n" @@ -8099,7 +8102,7 @@ void debug_80C7294() "._718:\n" " .align 2, 0\n" "._717:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x4000040\n" " .word 0x51ef\n" " .word 0x699f\n" @@ -8124,7 +8127,7 @@ void debug_80C7294() "._723:\n" " .align 2, 0\n" "._722:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._720:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x40\n" @@ -8142,7 +8145,7 @@ void debug_80C7294() "._728:\n" " .align 2, 0\n" "._727:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._725:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x10\n" @@ -8162,7 +8165,7 @@ void debug_80C7294() "._735:\n" " .align 2, 0\n" "._734:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._731:\n" " cmp r0, #0x2\n" " beq ._736 @cond_branch\n" @@ -8235,7 +8238,7 @@ void debug_80C7294() "._752:\n" " .align 2, 0\n" "._751:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._748:\n" " cmp r0, #0x2\n" " beq ._753 @cond_branch\n" @@ -8391,7 +8394,7 @@ void debug_80C74E4() "._765:\n" " .align 2, 0\n" "._764:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gPlttBufferUnfaded\n" " .word gPlttBufferFaded\n" " .word 0x101\n" @@ -8428,7 +8431,7 @@ void debug_80C7584() "._772:\n" " .align 2, 0\n" "._771:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._767:\n" " ldrh r0, [r3, #0xc]\n" " lsl r0, r0, #0x16\n" @@ -8639,7 +8642,7 @@ void InitSeeTrainers() " .word 0x1f0b\n" " .word 0x1e0a\n" " .word debug_80C777C+1\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word +0x2018000\n" " .word gSpriteTemplate_83F8874\n" " .word gSprites\n" @@ -8970,7 +8973,7 @@ void debug_80C7934() "._787:\n" " .align 2, 0\n" "._786:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gTrainerFrontPicTable\n" " .word gTrainerFrontPicCoords\n" " .word gUnknown_081FAF4C\n" @@ -9072,7 +9075,7 @@ void debug_80C7A54() " .align 2, 0\n" "._788:\n" " .word gPlttBufferUnfaded+0x100\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0xffffff00\n" " .word 0xfffffc1f\n" " .word gUnknown_Debug_083F8813\n" @@ -9138,7 +9141,7 @@ void debug_80C7B14() "._797:\n" " .align 2, 0\n" "._796:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._794:\n" " mov r0, #0x80\n" " lsl r0, r0, #0x2\n" @@ -9164,7 +9167,7 @@ void debug_80C7B14() "._801:\n" " .align 2, 0\n" "._800:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gTasks\n" " .word debug_80C7D44+1\n" "._798:\n" @@ -9195,7 +9198,7 @@ void debug_80C7B14() "._805:\n" " .align 2, 0\n" "._804:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x4000040\n" " .word 0x51ef\n" " .word 0x4167\n" @@ -9223,7 +9226,7 @@ void debug_80C7B14() "._810:\n" " .align 2, 0\n" "._809:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x5000102\n" "._807:\n" " ldrh r1, [r4, #0x30]\n" @@ -9282,7 +9285,7 @@ void debug_80C7B14() "._820:\n" " .align 2, 0\n" "._819:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._817:\n" " ldrh r0, [r1]\n" " mov r1, #0x0\n" @@ -9327,7 +9330,7 @@ void debug_80C7B14() "._823:\n" " .align 2, 0\n" "._822:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gPlttBufferUnfaded+0x200\n" " .word 0xffffff00\n" " .word gPlttBufferFaded+0x100\n" @@ -9437,7 +9440,7 @@ void debug_80C7D44() " .align 2, 0\n" "._826:\n" " .word gSprites\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gTasks\n" " .word debug_80C7934+1\n" "\n" @@ -9475,7 +9478,7 @@ void debug_80C7DDC() " .align 2, 0\n" "._830:\n" " .word gMain\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x4000040\n" " .word 0x51ef\n" " .word 0x699f\n" @@ -9541,7 +9544,7 @@ void debug_80C7DDC() "._835:\n" " .align 2, 0\n" "._834:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word 0x4000040\n" " .word 0x51ef\n" " .word 0x699f\n" @@ -9566,7 +9569,7 @@ void debug_80C7DDC() "._840:\n" " .align 2, 0\n" "._839:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._837:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x40\n" @@ -9584,7 +9587,7 @@ void debug_80C7DDC() "._845:\n" " .align 2, 0\n" "._844:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._842:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x10\n" @@ -9604,7 +9607,7 @@ void debug_80C7DDC() "._852:\n" " .align 2, 0\n" "._851:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._848:\n" " cmp r0, #0x2\n" " beq ._853 @cond_branch\n" @@ -9677,7 +9680,7 @@ void debug_80C7DDC() "._869:\n" " .align 2, 0\n" "._868:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" "._865:\n" " cmp r0, #0x2\n" " beq ._870 @cond_branch\n" @@ -9833,7 +9836,7 @@ void debug_80C802C() "._882:\n" " .align 2, 0\n" "._881:\n" - " .word unk_debug_ewram_0+0x34\n" + " .word gUnknown_Debug_2038A20\n" " .word gPlttBufferUnfaded\n" " .word gPlttBufferFaded\n" " .word 0x101\n" -- cgit v1.2.3 From 8cfc82726a0712e8c86d30294cee6506c1f0dc97 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Tue, 23 Jan 2018 22:36:44 -0600 Subject: move undecompiled debug menu code to asm --- src/debug/watanabe_debug_menu.c | 9838 --------------------------------------- 1 file changed, 9838 deletions(-) (limited to 'src/debug/watanabe_debug_menu.c') diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c index cc53f8c95..6c94b0466 100644 --- a/src/debug/watanabe_debug_menu.c +++ b/src/debug/watanabe_debug_menu.c @@ -8,9842 +8,4 @@ EWRAM_DATA u8 gUnknown_Debug_2038A20[4] = { 0 }; u8 byte_3005E30[0x20]; -__attribute__((naked)) -void debug_69() -{ - asm( - " bx lr\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C35DC() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r8\n" - " push {r7}\n" - " add sp, sp, #0xfffffff8\n" - " mov r0, #0x0\n" - " bl SetVBlankCallback\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x13\n" - " mov r1, #0x0\n" - " strh r1, [r0]\n" - " add r0, r0, #0xe\n" - " strh r1, [r0]\n" - " sub r0, r0, #0x2\n" - " strh r1, [r0]\n" - " sub r0, r0, #0x2\n" - " strh r1, [r0]\n" - " sub r0, r0, #0x2\n" - " strh r1, [r0]\n" - " add r0, r0, #0x14\n" - " strh r1, [r0]\n" - " add r0, r0, #0x2\n" - " strh r1, [r0]\n" - " sub r0, r0, #0x6\n" - " strh r1, [r0]\n" - " add r0, r0, #0x2\n" - " strh r1, [r0]\n" - " sub r0, r0, #0x6\n" - " strh r1, [r0]\n" - " add r0, r0, #0x2\n" - " strh r1, [r0]\n" - " sub r0, r0, #0x6\n" - " strh r1, [r0]\n" - " add r0, r0, #0x2\n" - " strh r1, [r0]\n" - " mov r3, #0xc0\n" - " lsl r3, r3, #0x13\n" - " mov r4, #0xc0\n" - " lsl r4, r4, #0x9\n" - " add r0, sp, #0x4\n" - " mov r8, r0\n" - " mov r2, sp\n" - " mov r6, #0x0\n" - " ldr r1, ._2\n" - " mov r5, #0x80\n" - " lsl r5, r5, #0x5\n" - " ldr r7, ._2 + 4\n" - " mov r0, #0x81\n" - " lsl r0, r0, #0x18\n" - " mov ip, r0\n" - "._1:\n" - " strh r6, [r2]\n" - " mov r0, sp\n" - " str r0, [r1]\n" - " str r3, [r1, #0x4]\n" - " str r7, [r1, #0x8]\n" - " ldr r0, [r1, #0x8]\n" - " add r3, r3, r5\n" - " sub r4, r4, r5\n" - " cmp r4, r5\n" - " bhi ._1 @cond_branch\n" - " strh r6, [r2]\n" - " mov r2, sp\n" - " str r2, [r1]\n" - " str r3, [r1, #0x4]\n" - " lsr r0, r4, #0x1\n" - " mov r2, ip\n" - " orr r0, r0, r2\n" - " str r0, [r1, #0x8]\n" - " ldr r0, [r1, #0x8]\n" - " mov r0, #0xe0\n" - " lsl r0, r0, #0x13\n" - " mov r3, #0x80\n" - " lsl r3, r3, #0x3\n" - " mov r4, #0x0\n" - " str r4, [sp, #0x4]\n" - " ldr r2, ._2\n" - " mov r1, r8\n" - " str r1, [r2]\n" - " str r0, [r2, #0x4]\n" - " lsr r0, r3, #0x2\n" - " mov r1, #0x85\n" - " lsl r1, r1, #0x18\n" - " orr r0, r0, r1\n" - " str r0, [r2, #0x8]\n" - " ldr r0, [r2, #0x8]\n" - " mov r1, #0xa0\n" - " lsl r1, r1, #0x13\n" - " mov r0, sp\n" - " strh r4, [r0]\n" - " str r0, [r2]\n" - " str r1, [r2, #0x4]\n" - " lsr r3, r3, #0x1\n" - " mov r0, #0x81\n" - " lsl r0, r0, #0x18\n" - " orr r3, r3, r0\n" - " str r3, [r2, #0x8]\n" - " ldr r0, [r2, #0x8]\n" - " bl ResetPaletteFade\n" - " bl ScanlineEffect_Stop\n" - " bl ResetTasks\n" - " bl ResetSpriteData\n" - " bl ResetPaletteFade\n" - " bl FreeAllSpritePalettes\n" - " ldr r0, ._2 + 8\n" - " bl LoadSpriteSheet\n" - " ldr r0, ._2 + 12\n" - " bl LoadSpritePalette\n" - " ldr r0, ._2 + 16\n" - " bl Text_LoadWindowTemplate\n" - " ldr r0, ._2 + 20\n" - " bl InitMenuWindow\n" - " add sp, sp, #0x8\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._3:\n" - " .align 2, 0\n" - "._2:\n" - " .word 0x40000d4\n" - " .word 0x81000800\n" - " .word stru_83F8828\n" - " .word stru_83F8838\n" - " .word gWindowTemplate_81E6C3C\n" - " .word gWindowTemplate_81E6CE4\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C36F4() -{ - asm( - " push {lr}\n" - " bl RunTasks\n" - " bl AnimateSprites\n" - " bl BuildOamBuffer\n" - " bl UpdatePaletteFade\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C370C() -{ - asm( - " push {lr}\n" - " ldr r0, ._6\n" - " ldrb r1, [r0, #0x7]\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " bne ._4 @cond_branch\n" - " ldr r0, ._6 + 4\n" - " bl SetMainCallback2\n" - " b ._5\n" - "._7:\n" - " .align 2, 0\n" - "._6:\n" - " .word gPaletteFade\n" - " .word debug_80C36F4+1\n" - "._4:\n" - " bl AnimateSprites\n" - " bl BuildOamBuffer\n" - " bl UpdatePaletteFade\n" - "._5:\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C373C() -{ - asm( - " push {lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " bl DestroyTask\n" - " bl ScriptContext2_Disable\n" - " ldr r0, ._8\n" - " bl SetMainCallback2\n" - " pop {r0}\n" - " bx r0\n" - "._9:\n" - " .align 2, 0\n" - "._8:\n" - " .word sub_80546F0+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C3758() -{ - asm( - " push {lr}\n" - " bl LoadOam\n" - " bl ProcessSpriteCopyRequests\n" - " bl TransferPlttBuffer\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C376C() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x10\n" - " lsr r5, r0, #0x10\n" - " lsl r1, r1, #0x18\n" - " lsr r7, r1, #0x18\n" - " lsl r2, r2, #0x18\n" - " lsr r6, r2, #0x18\n" - " mov r1, #0x0\n" - " mov r2, #0x0\n" - "._10:\n" - " mov r3, sp\n" - " add r0, r3, r1\n" - " strb r2, [r0]\n" - " add r0, r1, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r1, r0, #0x18\n" - " cmp r1, #0x2\n" - " bls ._10 @cond_branch\n" - " mov r1, sp\n" - " mov r0, #0xff\n" - " strb r0, [r1, #0x3]\n" - " mov r4, #0x0\n" - " add r0, r5, #0\n" - " mov r1, #0x64\n" - " bl __udivsi3\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " cmp r0, #0\n" - " beq ._11 @cond_branch\n" - " mov r1, sp\n" - " add r0, r0, #0xa1\n" - " strb r0, [r1]\n" - " mov r4, #0x1\n" - "._11:\n" - " add r0, r5, #0\n" - " mov r1, #0x64\n" - " bl __umodsi3\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " mov r1, #0xa\n" - " bl __udivsi3\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " cmp r0, #0\n" - " bne ._12 @cond_branch\n" - " cmp r4, #0\n" - " beq ._13 @cond_branch\n" - "._12:\n" - " mov r1, sp\n" - " add r0, r0, #0xa1\n" - " strb r0, [r1, #0x1]\n" - "._13:\n" - " mov r4, sp\n" - " add r0, r5, #0\n" - " mov r1, #0x64\n" - " bl __umodsi3\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " mov r1, #0xa\n" - " bl __umodsi3\n" - " add r0, r0, #0xa1\n" - " strb r0, [r4, #0x2]\n" - " mov r0, sp\n" - " add r1, r7, #0\n" - " add r2, r6, #0\n" - " bl Menu_PrintText\n" - " add sp, sp, #0x4\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C3800() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " add sp, sp, #0xfffffff4\n" - " lsl r0, r0, #0x10\n" - " lsr r4, r0, #0x10\n" - " lsl r1, r1, #0x18\n" - " lsr r6, r1, #0x18\n" - " lsl r2, r2, #0x18\n" - " lsr r5, r2, #0x18\n" - " mov r3, #0x0\n" - " ldr r2, ._18\n" - " mov r1, #0x0\n" - "._14:\n" - " mov r7, sp\n" - " add r0, r7, r3\n" - " strb r1, [r0]\n" - " add r0, r3, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r3, r0, #0x18\n" - " cmp r3, #0x9\n" - " bls ._14 @cond_branch\n" - " add r1, r7, r3\n" - " mov r0, #0xff\n" - " strb r0, [r1]\n" - " mov r3, #0x0\n" - " mov r0, #0xb\n" - " add r1, r4, #0\n" - " mul r1, r1, r0\n" - " add r0, r1, r2\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " beq ._16 @cond_branch\n" - " add r4, r2, #0\n" - " add r2, r1, #0\n" - "._17:\n" - " mov r0, sp\n" - " add r1, r0, r3\n" - " add r0, r3, r2\n" - " add r0, r0, r4\n" - " ldrb r0, [r0]\n" - " strb r0, [r1]\n" - " add r0, r3, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r3, r0, #0x18\n" - " add r0, r3, r2\n" - " add r0, r0, r4\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " beq ._16 @cond_branch\n" - " cmp r3, #0x9\n" - " bls ._17 @cond_branch\n" - "._16:\n" - " mov r0, sp\n" - " add r1, r6, #0\n" - " add r2, r5, #0\n" - " bl Menu_PrintText\n" - " add sp, sp, #0xc\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._19:\n" - " .align 2, 0\n" - "._18:\n" - " .word gSpeciesNames\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C3878() -{ - asm( - " push {lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " lsl r1, r1, #0x10\n" - " lsr r1, r1, #0x10\n" - " cmp r0, #0\n" - " beq ._20 @cond_branch\n" - " cmp r0, #0x1\n" - " beq ._21 @cond_branch\n" - "._20:\n" - " cmp r1, #0x1\n" - " bls ._22 @cond_branch\n" - " sub r0, r1, #1\n" - " b ._23\n" - "._22:\n" - " ldr r1, ._25\n" - " b ._28\n" - "._26:\n" - " .align 2, 0\n" - "._25:\n" - " .word 0x19b\n" - "._21:\n" - " mov r0, #0xcd\n" - " lsl r0, r0, #0x1\n" - " cmp r1, r0\n" - " bhi ._27 @cond_branch\n" - " add r0, r1, #1\n" - "._23:\n" - " lsl r0, r0, #0x10\n" - " lsr r1, r0, #0x10\n" - " b ._28\n" - "._27:\n" - " mov r1, #0x1\n" - "._28:\n" - " add r0, r1, #0\n" - " pop {r1}\n" - " bx r1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C38B4() -{ - asm( - " push {lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " lsl r1, r1, #0x10\n" - " lsr r0, r1, #0x10\n" - " cmp r2, #0\n" - " beq ._29 @cond_branch\n" - " cmp r2, #0x1\n" - " beq ._30 @cond_branch\n" - "._29:\n" - " cmp r0, #0\n" - " beq ._31 @cond_branch\n" - " sub r0, r0, #0x1\n" - " b ._32\n" - "._31:\n" - " mov r0, #0x52\n" - " b ._35\n" - "._30:\n" - " cmp r0, #0x51\n" - " bhi ._34 @cond_branch\n" - " add r0, r0, #0x1\n" - "._32:\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " b ._35\n" - "._34:\n" - " mov r0, #0x0\n" - "._35:\n" - " pop {r1}\n" - " bx r1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C38E4() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r8\n" - " push {r7}\n" - " add sp, sp, #0xfffffffc\n" - " add r4, r2, #0\n" - " add r5, r3, #0\n" - " ldr r6, [sp, #0x1c]\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " mov r8, r0\n" - " lsl r1, r1, #0x18\n" - " lsr r7, r1, #0x18\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " lsl r5, r5, #0x18\n" - " lsr r5, r5, #0x18\n" - " lsl r6, r6, #0x18\n" - " lsr r6, r6, #0x18\n" - " ldr r1, ._37\n" - " mov r0, sp\n" - " mov r2, #0x2\n" - " bl memcpy\n" - " add r0, r7, #0\n" - " add r1, r4, #0\n" - " add r2, r7, #0\n" - " add r3, r5, #0\n" - " bl Menu_BlankWindowRect\n" - " cmp r6, #0\n" - " beq ._36 @cond_branch\n" - " mov r0, sp\n" - " add r1, r7, #0\n" - " mov r2, r8\n" - " bl Menu_PrintText\n" - "._36:\n" - " add sp, sp, #0x4\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._38:\n" - " .align 2, 0\n" - "._37:\n" - " .word gUnknown_Debug_083F7FD4\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C393C() -{ - asm( - " push {lr}\n" - " ldr r1, ._39\n" - " mov r0, #0x1e\n" - " bl ProgramFlashSectorAndVerify\n" - " pop {r0}\n" - " bx r0\n" - "._40:\n" - " .align 2, 0\n" - "._39:\n" - " .word gUnknown_Debug_083F7FD6\n" - "\n" - ); -} - -__attribute__((naked)) -void InitWatanabeDebugMenu() -{ - asm( - " push {r4, lr}\n" - " ldr r0, ._46\n" - " ldr r1, ._46 + 4\n" - " add r4, r0, r1\n" - " ldrb r0, [r4]\n" - " cmp r0, #0x1\n" - " beq ._41 @cond_branch\n" - " cmp r0, #0x1\n" - " ble ._42 @cond_branch\n" - " cmp r0, #0x2\n" - " beq ._43 @cond_branch\n" - " cmp r0, #0x3\n" - " beq ._44 @cond_branch\n" - "._42:\n" - " bl save_serialize_map\n" - " bl sub_8125E2C\n" - " mov r0, #0x1\n" - " strb r0, [r4]\n" - " b ._51\n" - "._47:\n" - " .align 2, 0\n" - "._46:\n" - " .word gMain\n" - " .word 0x43c\n" - "._41:\n" - " bl sub_8125E6C\n" - " lsl r0, r0, #0x18\n" - " cmp r0, #0\n" - " beq ._51 @cond_branch\n" - " b ._49\n" - "._43:\n" - " mov r0, #0x37\n" - " bl PlaySE\n" - "._49:\n" - " ldrb r0, [r4]\n" - " add r0, r0, #0x1\n" - " strb r0, [r4]\n" - " b ._51\n" - "._44:\n" - " bl IsSEPlaying\n" - " lsl r0, r0, #0x18\n" - " cmp r0, #0\n" - " bne ._51 @cond_branch\n" - " bl ScriptContext2_Disable\n" - " ldr r0, ._52\n" - " bl SetMainCallback2\n" - "._51:\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._53:\n" - " .align 2, 0\n" - "._52:\n" - " .word sub_80546F0+1\n" - "\n" - ); -} - -__attribute__((naked)) -void InitSizeComparison() -{ - asm( - " push {r4, lr}\n" - " add sp, sp, #0xfffffffc\n" - " bl debug_80C35DC\n" - " ldr r1, ._54\n" - " mov r0, #0x1\n" - " strb r0, [r1]\n" - " ldr r0, ._54 + 4\n" - " mov r1, #0x80\n" - " lsl r1, r1, #0x1\n" - " mov r2, #0x20\n" - " bl LoadPalette\n" - " ldr r3, ._54 + 8\n" - " ldrh r2, [r3]\n" - " mov r0, #0x0\n" - " strh r0, [r3]\n" - " ldr r4, ._54 + 12\n" - " ldrh r0, [r4]\n" - " mov r1, #0x1\n" - " orr r0, r0, r1\n" - " strh r0, [r4]\n" - " strh r2, [r3]\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " mov r1, #0x0\n" - " str r1, [sp]\n" - " mov r2, #0x10\n" - " mov r3, #0x0\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._54 + 16\n" - " bl SetVBlankCallback\n" - " ldr r0, ._54 + 20\n" - " bl SetMainCallback2\n" - " mov r1, #0x80\n" - " lsl r1, r1, #0x13\n" - " mov r2, #0x8a\n" - " lsl r2, r2, #0x5\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r0, ._54 + 24\n" - " mov r1, #0x0\n" - " bl CreateTask\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " ldr r2, ._54 + 28\n" - " lsl r1, r0, #0x2\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " mov r0, #0xfc\n" - " strh r0, [r1, #0x8]\n" - " add sp, sp, #0x4\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._55:\n" - " .align 2, 0\n" - "._54:\n" - " .word gReservedSpritePaletteCount\n" - " .word gUnknown_Debug_20389EC\n" - " .word 0x4000208\n" - " .word 0x4000200\n" - " .word debug_80C3758+1\n" - " .word debug_80C370C+1\n" - " .word debug_80C3A50+1\n" - " .word gTasks\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C3A50() -{ - 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, #0xffffffd8\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " ldr r1, ._56\n" - " lsl r2, r0, #0x2\n" - " add r0, r2, r0\n" - " lsl r0, r0, #0x3\n" - " add r7, r0, r1\n" - " ldrh r0, [r7, #0x8]\n" - " str r0, [sp, #0x4]\n" - " bl NationalPokedexNumToSpecies\n" - " mov r1, sp\n" - " strh r0, [r1, #0x8]\n" - " add r2, r0, #0\n" - " lsl r2, r2, #0x10\n" - " str r2, [sp, #0xc]\n" - " lsr r2, r2, #0x10\n" - " mov r9, r2\n" - " ldr r3, ._56 + 4\n" - " mov r8, r3\n" - " mov r0, #0x6\n" - " mov r1, #0x0\n" - " mov r2, #0x17\n" - " mov r3, #0x9\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, #0x0\n" - " mov r1, #0x0\n" - " mov r2, #0x5\n" - " mov r3, #0x9\n" - " bl Menu_DrawStdWindowFrame\n" - " ldr r5, ._56 + 8\n" - " add r0, r5, #0\n" - " mov r1, #0x1\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " ldr r4, ._56 + 12\n" - " add r0, r4, #0\n" - " mov r1, #0x1\n" - " mov r2, #0x5\n" - " bl Menu_PrintText\n" - " mov r0, #0x18\n" - " mov r1, #0x0\n" - " mov r2, #0x1d\n" - " mov r3, #0x9\n" - " bl Menu_DrawStdWindowFrame\n" - " add r0, r5, #0\n" - " mov r1, #0x19\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " add r0, r4, #0\n" - " mov r1, #0x19\n" - " mov r2, #0x5\n" - " bl Menu_PrintText\n" - " mov r0, #0x0\n" - " mov r1, #0xa\n" - " mov r2, #0xb\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " ldr r0, ._56 + 16\n" - " mov r1, #0x1\n" - " mov r2, #0xb\n" - " bl Menu_PrintText\n" - " ldr r0, ._56 + 20\n" - " mov r1, #0x1\n" - " mov r2, #0xd\n" - " bl Menu_PrintText\n" - " ldr r0, ._56 + 24\n" - " mov r1, #0x1\n" - " mov r2, #0xf\n" - " bl Menu_PrintText\n" - " ldr r0, ._56 + 28\n" - " mov r1, #0x1\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " mov r0, #0xc\n" - " mov r1, #0xa\n" - " mov r2, #0x1d\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " ldr r0, ._56 + 32\n" - " mov r1, #0xd\n" - " mov r2, #0xb\n" - " bl Menu_PrintText\n" - " ldr r0, ._56 + 36\n" - " mov r1, #0xd\n" - " mov r2, #0xd\n" - " bl Menu_PrintText\n" - " mov r0, #0xc\n" - " mov r1, #0x10\n" - " mov r2, #0x1d\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " ldr r0, ._56 + 40\n" - " mov r1, #0xd\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " ldr r0, ._56 + 44\n" - " mov r1, #0x18\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " mov r0, r9\n" - " mov r1, #0x12\n" - " mov r2, #0x11\n" - " bl debug_80C3800\n" - " mov r1, r8\n" - " ldrb r0, [r1, #0x8]\n" - " mov r1, #0x98\n" - " mov r2, #0x28\n" - " mov r3, #0x0\n" - " bl sub_8091A4C\n" - " mov r2, sp\n" - " strh r0, [r2, #0x10]\n" - " add r3, r0, #0\n" - " lsl r3, r3, #0x10\n" - " str r3, [sp, #0x18]\n" - " lsr r0, r3, #0x10\n" - " str r0, [sp, #0x14]\n" - " lsl r4, r0, #0x4\n" - " add r4, r4, r0\n" - " lsl r4, r4, #0x2\n" - " ldr r1, ._56 + 48\n" - " add r4, r4, r1\n" - " ldrb r1, [r4, #0x1]\n" - " mov r2, #0x4\n" - " neg r2, r2\n" - " mov sl, r2\n" - " mov r0, sl\n" - " and r0, r0, r1\n" - " mov r3, #0x1\n" - " orr r0, r0, r3\n" - " strb r0, [r4, #0x1]\n" - " ldrb r1, [r4, #0x3]\n" - " mov r0, #0x3f\n" - " neg r0, r0\n" - " mov r9, r0\n" - " and r0, r0, r1\n" - " mov r1, #0x4\n" - " orr r0, r0, r1\n" - " strb r0, [r4, #0x3]\n" - " ldrb r1, [r4, #0x5]\n" - " sub r2, r2, #0x9\n" - " mov r8, r2\n" - " mov r0, r8\n" - " and r0, r0, r1\n" - " mov r3, #0xf\n" - " and r0, r0, r3\n" - " strb r0, [r4, #0x5]\n" - " mov r0, #0x0\n" - " bl GetSpritePaletteTagByPaletteNum\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl FreeSpritePaletteByTag\n" - " ldr r0, ._56 + 52\n" - " ldr r1, [sp, #0x4]\n" - " lsl r5, r1, #0x3\n" - " add r5, r5, r1\n" - " lsl r5, r5, #0x2\n" - " add r5, r5, r0\n" - " ldrh r6, [r5, #0x20]\n" - " strh r6, [r4, #0x26]\n" - " ldrh r4, [r5, #0x1e]\n" - " str r4, [sp]\n" - " mov r0, #0x2\n" - " add r1, r4, #0\n" - " mov r2, #0x0\n" - " mov r3, #0x0\n" - " bl SetOamMatrix\n" - " mov r2, sp\n" - " ldrh r2, [r2, #0x14]\n" - " strh r2, [r7, #0xe]\n" - " strh r6, [r7, #0x10]\n" - " strh r4, [r7, #0x14]\n" - " ldr r0, [sp, #0x4]\n" - " mov r1, #0x58\n" - " mov r2, #0x28\n" - " mov r3, #0x1\n" - " bl sub_80918EC\n" - " mov r3, sp\n" - " strh r0, [r3, #0x1c]\n" - " lsl r0, r0, #0x10\n" - " str r0, [sp, #0x24]\n" - " lsr r1, r0, #0x10\n" - " str r1, [sp, #0x20]\n" - " lsl r4, r1, #0x4\n" - " add r4, r4, r1\n" - " lsl r4, r4, #0x2\n" - " ldr r2, ._56 + 48\n" - " add r4, r4, r2\n" - " ldrb r0, [r4, #0x1]\n" - " mov r3, sl\n" - " and r3, r3, r0\n" - " mov r0, #0x1\n" - " orr r3, r3, r0\n" - " strb r3, [r4, #0x1]\n" - " ldrb r0, [r4, #0x3]\n" - " mov r1, r9\n" - " and r1, r1, r0\n" - " mov r0, #0x2\n" - " orr r1, r1, r0\n" - " strb r1, [r4, #0x3]\n" - " ldrb r0, [r4, #0x5]\n" - " mov r2, r8\n" - " and r2, r2, r0\n" - " mov r3, #0xf\n" - " and r2, r2, r3\n" - " strb r2, [r4, #0x5]\n" - " mov r0, #0x0\n" - " bl GetSpritePaletteTagByPaletteNum\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl FreeSpritePaletteByTag\n" - " ldrh r0, [r5, #0x1c]\n" - " mov r8, r0\n" - " strh r0, [r4, #0x26]\n" - " ldrh r4, [r5, #0x1a]\n" - " str r4, [sp]\n" - " mov r0, #0x1\n" - " add r1, r4, #0\n" - " mov r2, #0x0\n" - " mov r3, #0x0\n" - " bl SetOamMatrix\n" - " mov r1, sp\n" - " ldrh r1, [r1, #0x20]\n" - " strh r1, [r7, #0xc]\n" - " mov r2, r8\n" - " strh r2, [r7, #0x12]\n" - " strh r4, [r7, #0x16]\n" - " mov r3, #0x0\n" - " strh r3, [r7, #0x18]\n" - " strh r3, [r7, #0x1a]\n" - " ldr r1, ._56 + 56\n" - " ldr r2, ._56 + 60\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x2\n" - " mov r0, #0x1f\n" - " strh r0, [r1]\n" - " ldr r2, ._56 + 64\n" - " mov r3, #0x18\n" - " ldsh r1, [r7, r3]\n" - " lsl r1, r1, #0x6\n" - " add r0, r1, #0\n" - " add r0, r0, #0x38\n" - " lsl r0, r0, #0x8\n" - " add r1, r1, #0x78\n" - " add r0, r0, r1\n" - " strh r0, [r2]\n" - " ldr r1, ._56 + 68\n" - " ldr r2, ._56 + 72\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " sub r1, r1, #0x2\n" - " ldr r3, ._56 + 76\n" - " add r0, r3, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._56 + 80\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0xa\n" - " mov r0, #0xe1\n" - " strh r0, [r1]\n" - " ldr r0, ._56 + 84\n" - " mov r3, #0x0\n" - " strh r3, [r0]\n" - " add r1, r1, #0x4\n" - " mov r0, #0x7\n" - " strh r0, [r1]\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x13\n" - " ldrh r0, [r2]\n" - " mov r3, #0xc0\n" - " lsl r3, r3, #0x7\n" - " add r1, r3, #0\n" - " orr r0, r0, r1\n" - " strh r0, [r2]\n" - " ldr r0, ._56 + 88\n" - " str r0, [r7]\n" - " add sp, sp, #0x28\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" - "._57:\n" - " .align 2, 0\n" - "._56:\n" - " .word gTasks\n" - " .word gSaveBlock2\n" - " .word gUnknown_Debug_083F7FD6+0x4\n" - " .word gUnknown_Debug_083F7FDE\n" - " .word gUnknown_Debug_083F7FE2\n" - " .word gUnknown_Debug_083F7FED\n" - " .word gUnknown_Debug_083F7FF6\n" - " .word gUnknown_Debug_083F8001\n" - " .word gUnknown_Debug_083F800C\n" - " .word gUnknown_Debug_083F8019\n" - " .word gUnknown_Debug_083F8022\n" - " .word gUnknown_Debug_083F8028\n" - " .word gSprites\n" - " .word gPokedexEntries\n" - " .word 0x4000048\n" - " .word 0x3f1f\n" - " .word 0x4000040\n" - " .word 0x4000044\n" - " .word 0x848\n" - " .word 0x31bf\n" - " .word 0x14f\n" - " .word 0x4000052\n" - " .word debug_80C3D2C+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C3D2C() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r8\n" - " push {r7}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r6, r0, #0x18\n" - " add r7, r6, #0\n" - " ldr r4, ._60\n" - " ldrh r1, [r4, #0x2e]\n" - " mov r0, #0x2\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._58 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " mov r1, #0x0\n" - " str r1, [sp]\n" - " mov r2, #0x0\n" - " mov r3, #0x10\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._60 + 4\n" - " bl SetMainCallback2\n" - " ldr r1, ._60 + 8\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._60 + 12\n" - " str r1, [r0]\n" - " b ._117\n" - "._61:\n" - " .align 2, 0\n" - "._60:\n" - " .word gMain\n" - " .word debug_80C370C+1\n" - " .word gTasks\n" - " .word debug_80C373C+1\n" - "._58:\n" - " mov r5, #0x1\n" - " add r0, r5, #0\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._62 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " ldr r1, ._64\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldrh r1, [r0, #0x18]\n" - " mov r2, #0x1\n" - " eor r1, r1, r2\n" - " strh r1, [r0, #0x18]\n" - " b ._117\n" - "._65:\n" - " .align 2, 0\n" - "._64:\n" - " .word gTasks\n" - "._62:\n" - " ldrh r1, [r4, #0x30]\n" - " mov r0, #0x20\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._66 @cond_branch\n" - " ldr r1, ._70\n" - " lsl r2, r6, #0x2\n" - " add r0, r2, r6\n" - " lsl r0, r0, #0x3\n" - " add r3, r0, r1\n" - " mov r5, #0x18\n" - " ldsh r0, [r3, r5]\n" - " mov r8, r1\n" - " cmp r0, #0\n" - " beq ._67 @cond_branch\n" - " ldrh r1, [r4, #0x2c]\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._68 @cond_branch\n" - " ldrh r0, [r3, #0x14]\n" - " add r0, r0, #0x10\n" - " b ._69\n" - "._71:\n" - " .align 2, 0\n" - "._70:\n" - " .word gTasks\n" - "._68:\n" - " ldrh r0, [r3, #0x14]\n" - " add r0, r0, #0x1\n" - "._69:\n" - " strh r0, [r3, #0x14]\n" - " add r0, r2, r7\n" - " lsl r0, r0, #0x3\n" - " mov r2, r8\n" - " add r1, r0, r2\n" - " ldrh r0, [r1, #0x14]\n" - " mov r6, #0x80\n" - " lsl r6, r6, #0x8\n" - " cmp r0, r6\n" - " bhi ._72 @cond_branch\n" - " b ._117\n" - "._72:\n" - " strh r6, [r1, #0x14]\n" - " b ._117\n" - "._67:\n" - " ldrh r1, [r4, #0x2c]\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._75 @cond_branch\n" - " ldrh r0, [r3, #0x16]\n" - " add r0, r0, #0x10\n" - " b ._76\n" - "._75:\n" - " ldrh r0, [r3, #0x16]\n" - " add r0, r0, #0x1\n" - "._76:\n" - " strh r0, [r3, #0x16]\n" - " add r0, r2, r7\n" - " lsl r0, r0, #0x3\n" - " mov r4, r8\n" - " add r1, r0, r4\n" - " ldrh r0, [r1, #0x16]\n" - " mov r6, #0x80\n" - " lsl r6, r6, #0x8\n" - " cmp r0, r6\n" - " bhi ._77 @cond_branch\n" - " b ._117\n" - "._77:\n" - " strh r6, [r1, #0x16]\n" - " b ._117\n" - "._66:\n" - " mov r0, #0x10\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._80 @cond_branch\n" - " ldr r1, ._84\n" - " lsl r2, r6, #0x2\n" - " add r0, r2, r6\n" - " lsl r0, r0, #0x3\n" - " add r3, r0, r1\n" - " mov r5, #0x18\n" - " ldsh r0, [r3, r5]\n" - " mov r8, r1\n" - " cmp r0, #0\n" - " beq ._81 @cond_branch\n" - " ldrh r1, [r4, #0x2c]\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._82 @cond_branch\n" - " ldrh r0, [r3, #0x14]\n" - " sub r0, r0, #0x10\n" - " b ._83\n" - "._85:\n" - " .align 2, 0\n" - "._84:\n" - " .word gTasks\n" - "._82:\n" - " ldrh r0, [r3, #0x14]\n" - " sub r0, r0, #0x1\n" - "._83:\n" - " strh r0, [r3, #0x14]\n" - " add r0, r2, r7\n" - " lsl r0, r0, #0x3\n" - " mov r2, r8\n" - " add r1, r0, r2\n" - " mov r4, #0x14\n" - " ldsh r0, [r1, r4]\n" - " cmp r0, #0xff\n" - " ble ._86 @cond_branch\n" - " b ._117\n" - "._86:\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " strh r0, [r1, #0x14]\n" - " b ._117\n" - "._81:\n" - " ldrh r1, [r4, #0x2c]\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._89 @cond_branch\n" - " ldrh r0, [r3, #0x16]\n" - " sub r0, r0, #0x10\n" - " b ._90\n" - "._89:\n" - " ldrh r0, [r3, #0x16]\n" - " sub r0, r0, #0x1\n" - "._90:\n" - " strh r0, [r3, #0x16]\n" - " add r0, r2, r7\n" - " lsl r0, r0, #0x3\n" - " mov r5, r8\n" - " add r1, r0, r5\n" - " mov r2, #0x16\n" - " ldsh r0, [r1, r2]\n" - " cmp r0, #0xff\n" - " ble ._91 @cond_branch\n" - " b ._117\n" - "._91:\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " strh r0, [r1, #0x16]\n" - " b ._117\n" - "._80:\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._94 @cond_branch\n" - " ldr r0, ._97\n" - " lsl r1, r6, #0x2\n" - " add r1, r1, r6\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " mov r4, #0x18\n" - " ldsh r0, [r1, r4]\n" - " cmp r0, #0\n" - " beq ._95 @cond_branch\n" - " ldrh r0, [r1, #0x10]\n" - " sub r0, r0, #0x1\n" - " strh r0, [r1, #0x10]\n" - " b ._117\n" - "._98:\n" - " .align 2, 0\n" - "._97:\n" - " .word gTasks\n" - "._95:\n" - " ldrh r0, [r1, #0x12]\n" - " sub r0, r0, #0x1\n" - " strh r0, [r1, #0x12]\n" - " b ._117\n" - "._94:\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._100 @cond_branch\n" - " ldr r0, ._103\n" - " lsl r1, r6, #0x2\n" - " add r1, r1, r6\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " mov r5, #0x18\n" - " ldsh r0, [r1, r5]\n" - " cmp r0, #0\n" - " beq ._101 @cond_branch\n" - " ldrh r0, [r1, #0x10]\n" - " add r0, r0, #0x1\n" - " strh r0, [r1, #0x10]\n" - " b ._117\n" - "._104:\n" - " .align 2, 0\n" - "._103:\n" - " .word gTasks\n" - "._101:\n" - " ldrh r0, [r1, #0x12]\n" - " add r0, r0, #0x1\n" - " strh r0, [r1, #0x12]\n" - " b ._117\n" - "._100:\n" - " mov r0, #0x8\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._106 @cond_branch\n" - " ldr r2, ._109\n" - " lsl r3, r6, #0x2\n" - " add r0, r3, r6\n" - " lsl r0, r0, #0x3\n" - " add r6, r0, r2\n" - " ldrh r4, [r6, #0x8]\n" - " mov r0, #0x8\n" - " ldsh r1, [r6, r0]\n" - " ldr r0, ._109 + 4\n" - " mov r8, r2\n" - " add r2, r3, #0\n" - " cmp r1, r0\n" - " bgt ._107 @cond_branch\n" - " add r0, r4, #1\n" - " strh r0, [r6, #0x8]\n" - " b ._108\n" - "._110:\n" - " .align 2, 0\n" - "._109:\n" - " .word gTasks\n" - " .word 0x181\n" - "._107:\n" - " strh r5, [r6, #0x8]\n" - "._108:\n" - " add r4, r2, r7\n" - " lsl r4, r4, #0x3\n" - " add r4, r4, r8\n" - " mov r2, #0xc\n" - " ldsh r1, [r4, r2]\n" - " b ._111\n" - "._106:\n" - " mov r0, #0x4\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._112 @cond_branch\n" - " ldr r1, ._115\n" - " lsl r2, r6, #0x2\n" - " add r0, r2, r6\n" - " lsl r0, r0, #0x3\n" - " add r3, r0, r1\n" - " ldrh r6, [r3, #0x8]\n" - " mov r4, #0x8\n" - " ldsh r0, [r3, r4]\n" - " mov r8, r1\n" - " cmp r0, #0x1\n" - " ble ._113 @cond_branch\n" - " sub r0, r6, #1\n" - " b ._114\n" - "._116:\n" - " .align 2, 0\n" - "._115:\n" - " .word gTasks\n" - "._113:\n" - " mov r0, #0xc1\n" - " lsl r0, r0, #0x1\n" - "._114:\n" - " strh r0, [r3, #0x8]\n" - " add r4, r2, r7\n" - " lsl r4, r4, #0x3\n" - " add r4, r4, r8\n" - " mov r5, #0xc\n" - " ldsh r1, [r4, r5]\n" - "._111:\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " ldr r5, ._118\n" - " add r0, r0, r5\n" - " bl DestroySprite\n" - " mov r0, #0xe\n" - " ldsh r1, [r4, r0]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r5\n" - " bl DestroySprite\n" - " ldr r0, ._118 + 4\n" - " str r0, [r4]\n" - " b ._117\n" - "._119:\n" - " .align 2, 0\n" - "._118:\n" - " .word gSprites\n" - " .word debug_80C3A50+1\n" - "._112:\n" - " ldr r0, ._120\n" - " lsl r5, r7, #0x2\n" - " add r5, r5, r7\n" - " lsl r5, r5, #0x3\n" - " add r5, r5, r0\n" - " ldrh r4, [r5, #0x16]\n" - " ldrh r6, [r5, #0x12]\n" - " str r4, [sp]\n" - " mov r0, #0x1\n" - " add r1, r4, #0\n" - " mov r2, #0x0\n" - " mov r3, #0x0\n" - " bl SetOamMatrix\n" - " add r0, r4, #0\n" - " mov r1, #0x1\n" - " mov r2, #0x3\n" - " mov r3, #0x4\n" - " bl debug_80C68CC\n" - " add r0, r6, #0\n" - " mov r1, #0x1\n" - " mov r2, #0x7\n" - " mov r3, #0x4\n" - " bl debug_80C68CC\n" - " ldr r2, ._120 + 4\n" - " mov r8, r2\n" - " mov r4, #0xc\n" - " ldsh r1, [r5, r4]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r8\n" - " strh r6, [r0, #0x26]\n" - " ldrh r4, [r5, #0x14]\n" - " ldrh r6, [r5, #0x10]\n" - " str r4, [sp]\n" - " mov r0, #0x2\n" - " add r1, r4, #0\n" - " mov r2, #0x0\n" - " mov r3, #0x0\n" - " bl SetOamMatrix\n" - " add r0, r4, #0\n" - " mov r1, #0x19\n" - " mov r2, #0x3\n" - " mov r3, #0x4\n" - " bl debug_80C68CC\n" - " add r0, r6, #0\n" - " mov r1, #0x19\n" - " mov r2, #0x7\n" - " mov r3, #0x4\n" - " bl debug_80C68CC\n" - " mov r0, #0xe\n" - " ldsh r1, [r5, r0]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r8\n" - " strh r6, [r0, #0x26]\n" - " ldr r2, ._120 + 8\n" - " mov r4, #0x18\n" - " ldsh r1, [r5, r4]\n" - " lsl r1, r1, #0x6\n" - " add r0, r1, #0\n" - " add r0, r0, #0x38\n" - " lsl r0, r0, #0x8\n" - " add r1, r1, #0x78\n" - " add r0, r0, r1\n" - " strh r0, [r2]\n" - "._117:\n" - " add sp, sp, #0x4\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._121:\n" - " .align 2, 0\n" - "._120:\n" - " .word gTasks\n" - " .word gSprites\n" - " .word 0x4000040\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C405C() -{ - asm( - " push {r4, r5, lr}\n" - " add r4, r0, #0\n" - " lsl r1, r1, #0x10\n" - " lsr r5, r1, #0x10\n" - " mov r2, #0x0\n" - " mov r1, #0x0\n" - "._122:\n" - " add r0, r4, r2\n" - " strb r1, [r0]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x9\n" - " bls ._122 @cond_branch\n" - " add r0, r4, r2\n" - " mov r1, #0xff\n" - " strb r1, [r0]\n" - " mov r0, #0xae\n" - " strb r0, [r4]\n" - " cmp r5, #0\n" - " beq ._125 @cond_branch\n" - " mov r2, #0x0\n" - " ldr r3, ._127\n" - " mov r0, #0xb\n" - " add r1, r5, #0\n" - " mul r1, r1, r0\n" - " add r0, r1, r3\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " beq ._125 @cond_branch\n" - " add r5, r3, #0\n" - " add r3, r1, #0\n" - "._126:\n" - " add r1, r4, r2\n" - " add r0, r2, r3\n" - " add r0, r0, r5\n" - " ldrb r0, [r0]\n" - " strb r0, [r1]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " add r0, r2, r3\n" - " add r0, r0, r5\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " beq ._125 @cond_branch\n" - " cmp r2, #0x9\n" - " bls ._126 @cond_branch\n" - "._125:\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "._128:\n" - " .align 2, 0\n" - "._127:\n" - " .word gSpeciesNames\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C40C4() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - " mov r5, #0x0\n" - " mov r6, sp\n" - "._135:\n" - " cmp r7, #0\n" - " beq ._129 @cond_branch\n" - " mov r0, #0x64\n" - " add r1, r5, #0\n" - " mul r1, r1, r0\n" - " ldr r0, ._132\n" - " add r4, r1, r0\n" - " add r0, r4, #0\n" - " mov r1, #0xb\n" - " bl GetMonData\n" - " cmp r0, #0\n" - " beq ._134 @cond_branch\n" - " add r0, r4, #0\n" - " bl CalculateMonStats\n" - " add r0, r4, #0\n" - " mov r1, #0x3a\n" - " bl GetMonData\n" - " strh r0, [r6]\n" - " add r0, r4, #0\n" - " mov r1, #0x39\n" - " mov r2, sp\n" - " bl SetMonData\n" - " b ._134\n" - "._133:\n" - " .align 2, 0\n" - "._132:\n" - " .word gEnemyParty\n" - "._129:\n" - " mov r0, #0x64\n" - " add r1, r5, #0\n" - " mul r1, r1, r0\n" - " ldr r0, ._136\n" - " add r4, r1, r0\n" - " add r0, r4, #0\n" - " mov r1, #0xb\n" - " bl GetMonData\n" - " cmp r0, #0\n" - " beq ._134 @cond_branch\n" - " add r0, r4, #0\n" - " bl CalculateMonStats\n" - " add r0, r4, #0\n" - " mov r1, #0x3a\n" - " bl GetMonData\n" - " strh r0, [r6]\n" - " add r0, r4, #0\n" - " mov r1, #0x39\n" - " mov r2, sp\n" - " bl SetMonData\n" - "._134:\n" - " add r0, r5, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r5, r0, #0x18\n" - " cmp r5, #0x5\n" - " bls ._135 @cond_branch\n" - " add sp, sp, #0x4\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._137:\n" - " .align 2, 0\n" - "._136:\n" - " .word gPlayerParty\n" - "\n" - ); -} - -__attribute__((naked)) -void InitBattleForDebug() -{ - asm( - " push {lr}\n" - " bl SavePlayerParty\n" - " ldr r1, ._138\n" - " ldr r0, ._138 + 4\n" - " ldrb r2, [r0, #0x8]\n" - " mov r0, #0x0\n" - " strb r2, [r1, #0xd]\n" - " strb r0, [r1]\n" - " strb r0, [r1, #0x1]\n" - " strb r0, [r1, #0x2]\n" - " strb r0, [r1, #0x3]\n" - " strb r0, [r1, #0x4]\n" - " strb r0, [r1, #0x5]\n" - " strb r0, [r1, #0x6]\n" - " strb r0, [r1, #0x7]\n" - " strb r0, [r1, #0x8]\n" - " strb r0, [r1, #0xc]\n" - " ldr r1, ._138 + 8\n" - " str r0, [r1]\n" - " bl ZeroPlayerPartyMons\n" - " bl ZeroEnemyPartyMons\n" - " mov r0, #0x0\n" - " bl debug_80C4214\n" - " ldr r0, ._138 + 12\n" - " mov r1, #0x0\n" - " bl CreateTask\n" - " pop {r0}\n" - " bx r0\n" - "._139:\n" - " .align 2, 0\n" - "._138:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gSaveBlock2\n" - " .word byte_3005E30\n" - " .word debug_80C47BC+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C41A8() -{ - asm( - " push {lr}\n" - " ldr r1, ._140\n" - " mov r0, #0x0\n" - " strb r0, [r1, #0x1]\n" - " strb r0, [r1, #0x2]\n" - " bl ZeroPlayerPartyMons\n" - " bl ZeroEnemyPartyMons\n" - " mov r0, #0x0\n" - " bl debug_80C4214\n" - " ldr r0, ._140 + 4\n" - " mov r1, #0x0\n" - " bl CreateTask\n" - " pop {r0}\n" - " bx r0\n" - "._141:\n" - " .align 2, 0\n" - "._140:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word debug_80C47BC+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C41D4() -{ - asm( - " push {lr}\n" - " mov r0, #0x0\n" - " bl debug_80C40C4\n" - " mov r0, #0x0\n" - " bl debug_80C4214\n" - " ldr r0, ._142\n" - " mov r1, #0x0\n" - " bl CreateTask\n" - " pop {r0}\n" - " bx r0\n" - "._143:\n" - " .align 2, 0\n" - "._142:\n" - " .word debug_80C42B8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C41F4() -{ - asm( - " push {lr}\n" - " mov r0, #0x1\n" - " bl debug_80C40C4\n" - " mov r0, #0x1\n" - " bl debug_80C4214\n" - " ldr r0, ._144\n" - " mov r1, #0x0\n" - " bl CreateTask\n" - " pop {r0}\n" - " bx r0\n" - "._145:\n" - " .align 2, 0\n" - "._144:\n" - " .word debug_80C42B8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4214() -{ - asm( - " push {r4, r5, r6, lr}\n" - " bl debug_80C35DC\n" - " ldr r6, ._146\n" - " mov r4, #0x0\n" - " strh r4, [r6]\n" - " ldr r5, ._146 + 4\n" - " strh r4, [r5]\n" - " ldr r0, ._146 + 8\n" - " strh r4, [r0]\n" - " add r0, r0, #0x4\n" - " strh r4, [r0]\n" - " ldr r1, ._146 + 12\n" - " ldr r2, ._146 + 16\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x2\n" - " mov r0, #0x31\n" - " strh r0, [r1]\n" - " add r1, r1, #0x6\n" - " mov r0, #0xe1\n" - " strh r0, [r1]\n" - " ldr r0, ._146 + 20\n" - " strh r4, [r0]\n" - " add r1, r1, #0x4\n" - " mov r0, #0x7\n" - " strh r0, [r1]\n" - " ldr r3, ._146 + 24\n" - " ldrh r2, [r3]\n" - " strh r4, [r3]\n" - " ldr r4, ._146 + 28\n" - " ldrh r0, [r4]\n" - " mov r1, #0x1\n" - " orr r0, r0, r1\n" - " strh r0, [r4]\n" - " strh r2, [r3]\n" - " ldr r0, ._146 + 32\n" - " bl SetVBlankCallback\n" - " ldr r0, ._146 + 36\n" - " bl SetMainCallback2\n" - " mov r1, #0x80\n" - " lsl r1, r1, #0x13\n" - " ldr r2, ._146 + 40\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._146 + 44\n" - " add r0, r1, #0\n" - " strh r0, [r6]\n" - " ldr r2, ._146 + 48\n" - " add r0, r2, #0\n" - " strh r0, [r5]\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._147:\n" - " .align 2, 0\n" - "._146:\n" - " .word 0x4000040\n" - " .word 0x4000044\n" - " .word 0x4000042\n" - " .word 0x4000048\n" - " .word 0x1111\n" - " .word 0x4000052\n" - " .word 0x4000208\n" - " .word 0x4000200\n" - " .word debug_80C3758+1\n" - " .word debug_80C370C+1\n" - " .word 0x7140\n" - " .word 0x1ef\n" - " .word 0x819f\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C42B8() -{ - asm( - " push {r4, r5, lr}\n" - " add sp, sp, #0xffffffe4\n" - " lsl r0, r0, #0x18\n" - " lsr r5, r0, #0x18\n" - " ldr r1, ._150\n" - " mov r0, sp\n" - " mov r2, #0xc\n" - " bl memcpy\n" - " add r4, sp, #0xc\n" - " ldr r1, ._150 + 4\n" - " add r0, r4, #0\n" - " mov r2, #0xd\n" - " bl memcpy\n" - " mov r0, #0x0\n" - " mov r1, #0x10\n" - " mov r2, #0x1d\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, sp\n" - " mov r1, #0x1\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " add r0, r4, #0\n" - " mov r1, #0x14\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " bl debug_80C4694\n" - " bl debug_80C4704\n" - " ldr r0, ._150 + 8\n" - " ldrb r0, [r0]\n" - " cmp r0, #0\n" - " beq ._148 @cond_branch\n" - " ldr r0, ._150 + 12\n" - " lsl r1, r5, #0x2\n" - " add r1, r1, r5\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._150 + 16\n" - " b ._149\n" - "._151:\n" - " .align 2, 0\n" - "._150:\n" - " .word gUnknown_Debug_083F8194\n" - " .word gUnknown_Debug_083F81A0\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gTasks\n" - " .word debug_80C44EC+1\n" - "._148:\n" - " ldr r0, ._152\n" - " lsl r1, r5, #0x2\n" - " add r1, r1, r5\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._152 + 4\n" - "._149:\n" - " str r0, [r1]\n" - " add sp, sp, #0x1c\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "._153:\n" - " .align 2, 0\n" - "._152:\n" - " .word gTasks\n" - " .word debug_80C4348+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4348() -{ - asm( - " push {r4, lr}\n" - " add sp, sp, #0xfffffffc\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " ldr r0, ._154\n" - " ldrb r0, [r0, #0x1]\n" - " lsl r0, r0, #0x19\n" - " mov r1, #0xc0\n" - " lsl r1, r1, #0x12\n" - " add r0, r0, r1\n" - " lsr r0, r0, #0x18\n" - " mov r1, #0x1\n" - " str r1, [sp]\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r1, ._154 + 4\n" - " ldr r2, ._154 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " add r2, r2, #0x8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._154 + 12\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._154 + 16\n" - " str r1, [r0]\n" - " add sp, sp, #0x4\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._155:\n" - " .align 2, 0\n" - "._154:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word 0x4000042\n" - " .word 0x177\n" - " .word gTasks\n" - " .word debug_80C43A8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C43A8() -{ - asm( - " push {r4, r5, lr}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " ldr r1, ._158\n" - " ldrh r2, [r1, #0x2e]\n" - " mov r0, #0x1\n" - " and r0, r0, r2\n" - " add r3, r1, #0\n" - " cmp r0, #0\n" - " beq ._156 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " ldr r0, ._158 + 4\n" - " ldrb r1, [r0, #0x1]\n" - " mov r0, #0x64\n" - " mul r0, r0, r1\n" - " ldr r1, ._158 + 8\n" - " add r0, r0, r1\n" - " ldr r1, ._158 + 12\n" - " bl debug_sub_80A433C\n" - " add r0, r4, #0\n" - " bl DestroyTask\n" - " b ._180\n" - "._159:\n" - " .align 2, 0\n" - "._158:\n" - " .word gMain\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gPlayerParty\n" - " .word debug_80C41D4+1\n" - "._156:\n" - " mov r0, #0x2\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._160 @cond_branch\n" - " ldr r0, ._162\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._162 + 4\n" - " str r0, [r1]\n" - " b ._180\n" - "._163:\n" - " .align 2, 0\n" - "._162:\n" - " .word gTasks\n" - " .word debug_80C4F48+1\n" - "._160:\n" - " mov r0, #0x8\n" - " and r0, r0, r2\n" - " lsl r0, r0, #0x10\n" - " lsr r1, r0, #0x10\n" - " cmp r1, #0\n" - " beq ._164 @cond_branch\n" - " bl debug_80C4774\n" - " lsl r0, r0, #0x18\n" - " cmp r0, #0\n" - " beq ._180 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " bl CalculatePlayerPartyCount\n" - " bl CalculateEnemyPartyCount\n" - " ldr r0, ._167\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._167 + 4\n" - " str r0, [r1]\n" - " b ._180\n" - "._168:\n" - " .align 2, 0\n" - "._167:\n" - " .word gTasks\n" - " .word debug_80C4D14+1\n" - "._164:\n" - " mov r0, #0x88\n" - " lsl r0, r0, #0x1\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._169 @cond_branch\n" - " str r1, [sp]\n" - " mov r0, #0x0\n" - " mov r1, #0x1\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r0, ._171\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._171 + 4\n" - " str r0, [r1]\n" - " b ._180\n" - "._172:\n" - " .align 2, 0\n" - "._171:\n" - " .word gTasks\n" - " .word debug_80C44EC+1\n" - "._169:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._174 @cond_branch\n" - " ldr r1, ._176\n" - " ldrb r0, [r1, #0x1]\n" - " cmp r0, #0\n" - " beq ._174 @cond_branch\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1, #0x1]\n" - " b ._175\n" - "._177:\n" - " .align 2, 0\n" - "._176:\n" - " .word gUnknown_Debug_2038A0C\n" - "._174:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._180 @cond_branch\n" - " ldr r5, ._181\n" - " ldrb r0, [r5, #0x1]\n" - " cmp r0, #0x4\n" - " bhi ._180 @cond_branch\n" - " add r1, r0, #0\n" - " mov r0, #0x64\n" - " mul r0, r0, r1\n" - " ldr r1, ._181 + 4\n" - " add r0, r0, r1\n" - " mov r1, #0xb\n" - " bl GetMonData\n" - " cmp r0, #0\n" - " beq ._180 @cond_branch\n" - " ldrb r0, [r5, #0x1]\n" - " add r0, r0, #0x1\n" - " strb r0, [r5, #0x1]\n" - "._175:\n" - " ldr r1, ._181 + 8\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._181 + 12\n" - " str r1, [r0]\n" - "._180:\n" - " add sp, sp, #0x4\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "._182:\n" - " .align 2, 0\n" - "._181:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gPlayerParty\n" - " .word gTasks\n" - " .word debug_80C4348+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C44EC() -{ - asm( - " push {r4, lr}\n" - " add sp, sp, #0xfffffffc\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " ldr r0, ._183\n" - " ldrb r0, [r0, #0x2]\n" - " lsl r0, r0, #0x19\n" - " mov r1, #0xc0\n" - " lsl r1, r1, #0x12\n" - " add r0, r0, r1\n" - " lsr r0, r0, #0x18\n" - " mov r1, #0x1\n" - " str r1, [sp]\n" - " mov r1, #0x10\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r1, ._183 + 4\n" - " ldr r2, ._183 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._183 + 12\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._183 + 16\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._183 + 20\n" - " str r1, [r0]\n" - " add sp, sp, #0x4\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._184:\n" - " .align 2, 0\n" - "._183:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word 0x4000042\n" - " .word 0x79ef\n" - " .word 0x17f\n" - " .word gTasks\n" - " .word debug_80C4550+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4550() -{ - asm( - " push {r4, r5, lr}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " ldr r1, ._187\n" - " ldrh r2, [r1, #0x2e]\n" - " mov r0, #0x1\n" - " and r0, r0, r2\n" - " add r3, r1, #0\n" - " cmp r0, #0\n" - " beq ._185 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " ldr r0, ._187 + 4\n" - " ldrb r1, [r0, #0x2]\n" - " mov r0, #0x64\n" - " mul r0, r0, r1\n" - " ldr r1, ._187 + 8\n" - " add r0, r0, r1\n" - " ldr r1, ._187 + 12\n" - " bl debug_sub_80A433C\n" - " add r0, r4, #0\n" - " bl DestroyTask\n" - " b ._209\n" - "._188:\n" - " .align 2, 0\n" - "._187:\n" - " .word gMain\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gEnemyParty\n" - " .word debug_80C41F4+1\n" - "._185:\n" - " mov r0, #0x2\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._189 @cond_branch\n" - " ldr r0, ._191\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._191 + 4\n" - " str r0, [r1]\n" - " b ._209\n" - "._192:\n" - " .align 2, 0\n" - "._191:\n" - " .word gTasks\n" - " .word debug_80C4F48+1\n" - "._189:\n" - " mov r0, #0x8\n" - " and r0, r0, r2\n" - " lsl r0, r0, #0x10\n" - " lsr r1, r0, #0x10\n" - " cmp r1, #0\n" - " beq ._193 @cond_branch\n" - " bl debug_80C4774\n" - " lsl r0, r0, #0x18\n" - " cmp r0, #0\n" - " beq ._209 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " bl CalculatePlayerPartyCount\n" - " bl CalculateEnemyPartyCount\n" - " ldr r0, ._196\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._196 + 4\n" - " str r0, [r1]\n" - " b ._209\n" - "._197:\n" - " .align 2, 0\n" - "._196:\n" - " .word gTasks\n" - " .word debug_80C4D14+1\n" - "._193:\n" - " mov r0, #0x88\n" - " lsl r0, r0, #0x2\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._198 @cond_branch\n" - " str r1, [sp]\n" - " mov r0, #0x0\n" - " mov r1, #0x10\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r0, ._200\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._200 + 4\n" - " str r0, [r1]\n" - " b ._209\n" - "._201:\n" - " .align 2, 0\n" - "._200:\n" - " .word gTasks\n" - " .word debug_80C4348+1\n" - "._198:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._203 @cond_branch\n" - " ldr r1, ._205\n" - " ldrb r0, [r1, #0x2]\n" - " cmp r0, #0\n" - " beq ._203 @cond_branch\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1, #0x2]\n" - " b ._204\n" - "._206:\n" - " .align 2, 0\n" - "._205:\n" - " .word gUnknown_Debug_2038A0C\n" - "._203:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._209 @cond_branch\n" - " ldr r5, ._210\n" - " ldrb r0, [r5, #0x2]\n" - " cmp r0, #0x4\n" - " bhi ._209 @cond_branch\n" - " add r1, r0, #0\n" - " mov r0, #0x64\n" - " mul r0, r0, r1\n" - " ldr r1, ._210 + 4\n" - " add r0, r0, r1\n" - " mov r1, #0xb\n" - " bl GetMonData\n" - " cmp r0, #0\n" - " beq ._209 @cond_branch\n" - " ldrb r0, [r5, #0x2]\n" - " add r0, r0, #0x1\n" - " strb r0, [r5, #0x2]\n" - "._204:\n" - " ldr r1, ._210 + 8\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._210 + 12\n" - " str r1, [r0]\n" - "._209:\n" - " add sp, sp, #0x4\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "._211:\n" - " .align 2, 0\n" - "._210:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gEnemyParty\n" - " .word gTasks\n" - " .word debug_80C44EC+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4694() -{ - asm( - " push {r4, r5, lr}\n" - " add sp, sp, #0xffffffe4\n" - " ldr r1, ._213\n" - " mov r0, sp\n" - " mov r2, #0xd\n" - " bl memcpy\n" - " mov r0, #0x0\n" - " mov r1, #0x0\n" - " mov r2, #0xe\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, sp\n" - " mov r1, #0x2\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " mov r4, #0x0\n" - " add r5, sp, #0x10\n" - "._212:\n" - " mov r0, #0x64\n" - " mul r0, r0, r4\n" - " ldr r1, ._213 + 4\n" - " add r0, r0, r1\n" - " mov r1, #0xb\n" - " bl GetMonData\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x10\n" - " lsr r1, r1, #0x10\n" - " add r0, r5, #0\n" - " bl debug_80C405C\n" - " lsl r2, r4, #0x19\n" - " mov r0, #0xc0\n" - " lsl r0, r0, #0x12\n" - " add r2, r2, r0\n" - " lsr r2, r2, #0x18\n" - " add r0, r5, #0\n" - " mov r1, #0x2\n" - " bl Menu_PrintText\n" - " add r0, r4, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " cmp r4, #0x5\n" - " bls ._212 @cond_branch\n" - " add sp, sp, #0x1c\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "._214:\n" - " .align 2, 0\n" - "._213:\n" - " .word gUnknown_Debug_083F81AD\n" - " .word gPlayerParty\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4704() -{ - asm( - " push {r4, r5, lr}\n" - " add sp, sp, #0xffffffe4\n" - " ldr r1, ._216\n" - " mov r0, sp\n" - " mov r2, #0xd\n" - " bl memcpy\n" - " mov r0, #0xf\n" - " mov r1, #0x0\n" - " mov r2, #0x1d\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, sp\n" - " mov r1, #0x11\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " mov r4, #0x0\n" - " add r5, sp, #0x10\n" - "._215:\n" - " mov r0, #0x64\n" - " mul r0, r0, r4\n" - " ldr r1, ._216 + 4\n" - " add r0, r0, r1\n" - " mov r1, #0xb\n" - " bl GetMonData\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x10\n" - " lsr r1, r1, #0x10\n" - " add r0, r5, #0\n" - " bl debug_80C405C\n" - " lsl r2, r4, #0x19\n" - " mov r0, #0xc0\n" - " lsl r0, r0, #0x12\n" - " add r2, r2, r0\n" - " lsr r2, r2, #0x18\n" - " add r0, r5, #0\n" - " mov r1, #0x11\n" - " bl Menu_PrintText\n" - " add r0, r4, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " cmp r4, #0x5\n" - " bls ._215 @cond_branch\n" - " add sp, sp, #0x1c\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "._217:\n" - " .align 2, 0\n" - "._216:\n" - " .word gUnknown_Debug_083F81BA\n" - " .word gEnemyParty\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4774() -{ - asm( - " push {r4, lr}\n" - " ldr r0, ._221\n" - " ldrb r0, [r0, #0xc]\n" - " sub r0, r0, #0x1\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " mov r1, #0x64\n" - " add r4, r0, #0\n" - " mul r4, r4, r1\n" - " ldr r0, ._221 + 4\n" - " add r0, r4, r0\n" - " mov r1, #0xb\n" - " bl GetMonData\n" - " cmp r0, #0\n" - " beq ._219 @cond_branch\n" - " ldr r0, ._221 + 8\n" - " add r0, r4, r0\n" - " mov r1, #0xb\n" - " bl GetMonData\n" - " cmp r0, #0\n" - " beq ._219 @cond_branch\n" - " mov r0, #0x1\n" - " b ._220\n" - "._222:\n" - " .align 2, 0\n" - "._221:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gPlayerParty\n" - " .word gEnemyParty\n" - "._219:\n" - " mov r0, #0x0\n" - "._220:\n" - " pop {r4}\n" - " pop {r1}\n" - " bx r1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C47BC() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " add sp, sp, #0xffffffc0\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - " ldr r1, ._224\n" - " mov r0, sp\n" - " mov r2, #0xf\n" - " bl memcpy\n" - " add r4, sp, #0x10\n" - " ldr r1, ._224 + 4\n" - " add r0, r4, #0\n" - " mov r2, #0xd\n" - " bl memcpy\n" - " add r6, sp, #0x20\n" - " ldr r1, ._224 + 8\n" - " add r0, r6, #0\n" - " mov r2, #0xf\n" - " bl memcpy\n" - " add r5, sp, #0x30\n" - " ldr r1, ._224 + 12\n" - " add r0, r5, #0\n" - " mov r2, #0x10\n" - " bl memcpy\n" - " mov r0, #0x0\n" - " mov r1, #0x10\n" - " mov r2, #0x1d\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, sp\n" - " mov r1, #0x1\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " add r0, r4, #0\n" - " mov r1, #0x14\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " mov r0, #0x0\n" - " mov r1, #0x0\n" - " mov r2, #0xe\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " add r0, r6, #0\n" - " mov r1, #0x2\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " mov r4, #0x0\n" - " ldr r6, ._224 + 16\n" - "._223:\n" - " lsl r0, r4, #0x3\n" - " add r0, r0, r6\n" - " ldr r0, [r0]\n" - " lsl r2, r4, #0x19\n" - " mov r1, #0xc0\n" - " lsl r1, r1, #0x12\n" - " add r2, r2, r1\n" - " lsr r2, r2, #0x18\n" - " mov r1, #0x2\n" - " bl Menu_PrintText\n" - " add r0, r4, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " cmp r4, #0x4\n" - " bls ._223 @cond_branch\n" - " mov r0, #0xf\n" - " mov r1, #0x0\n" - " mov r2, #0x1d\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " add r0, r5, #0\n" - " mov r1, #0x11\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " ldr r0, ._224 + 20\n" - " ldrb r0, [r0, #0x4]\n" - " bl debug_80C4C44\n" - " ldr r1, ._224 + 24\n" - " lsl r0, r7, #0x2\n" - " add r0, r0, r7\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._224 + 28\n" - " str r1, [r0]\n" - " add sp, sp, #0x40\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._225:\n" - " .align 2, 0\n" - "._224:\n" - " .word gUnknown_Debug_083F81C7\n" - " .word gUnknown_Debug_083F81A0\n" - " .word gUnknown_Debug_083F81D6\n" - " .word gUnknown_Debug_083F81E5\n" - " .word gUnknown_Debug_083F8068\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gTasks\n" - " .word debug_80C48A0+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C48A0() -{ - asm( - " push {r4, lr}\n" - " add sp, sp, #0xfffffffc\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " ldr r0, ._226\n" - " ldrb r0, [r0, #0x3]\n" - " lsl r0, r0, #0x19\n" - " mov r1, #0xc0\n" - " lsl r1, r1, #0x12\n" - " add r0, r0, r1\n" - " lsr r0, r0, #0x18\n" - " mov r1, #0x1\n" - " str r1, [sp]\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r1, ._226 + 4\n" - " ldr r2, ._226 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " add r2, r2, #0x8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._226 + 12\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._226 + 16\n" - " str r1, [r0]\n" - " add sp, sp, #0x4\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._227:\n" - " .align 2, 0\n" - "._226:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word 0x4000042\n" - " .word 0x177\n" - " .word gTasks\n" - " .word debug_80C4900+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4900() -{ - asm( - " push {r4, r5, lr}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r5, r0, #0x18\n" - " ldr r1, ._230\n" - " ldrh r2, [r1, #0x2e]\n" - " mov r0, #0x2\n" - " and r0, r0, r2\n" - " lsl r0, r0, #0x10\n" - " lsr r4, r0, #0x10\n" - " add r3, r1, #0\n" - " cmp r4, #0\n" - " beq ._228 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " mov r4, #0x0\n" - " str r4, [sp]\n" - " mov r1, #0x0\n" - " mov r2, #0x0\n" - " mov r3, #0x10\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._230 + 4\n" - " bl SetMainCallback2\n" - " bl LoadPlayerParty\n" - " ldr r1, ._230 + 8\n" - " ldr r0, ._230 + 12\n" - " ldrb r0, [r0, #0xd]\n" - " strb r0, [r1, #0x8]\n" - " ldr r0, ._230 + 16\n" - " mov r1, #0x0\n" - " strh r4, [r0]\n" - " ldr r0, ._230 + 20\n" - " strb r1, [r0]\n" - " ldr r1, ._230 + 24\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._230 + 28\n" - " b ._229\n" - "._231:\n" - " .align 2, 0\n" - "._230:\n" - " .word gMain\n" - " .word debug_80C370C+1\n" - " .word gSaveBlock2\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gBattleTypeFlags\n" - " .word gUnknown_02023A14_50\n" - " .word gTasks\n" - " .word debug_80C373C+1\n" - "._228:\n" - " mov r0, #0x8\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " bne ._232 @cond_branch\n" - " mov r0, #0x1\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._233 @cond_branch\n" - "._232:\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " ldr r1, ._236\n" - " ldr r3, ._236 + 4\n" - " ldr r2, ._236 + 8\n" - " ldrb r0, [r2, #0x3]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r3\n" - " ldrb r0, [r0, #0x4]\n" - " strh r0, [r1]\n" - " ldr r1, ._236 + 12\n" - " mov r0, #0x8\n" - " strb r0, [r1]\n" - " ldrb r0, [r2, #0x3]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r3\n" - " ldrb r0, [r0, #0x5]\n" - " strb r0, [r2, #0xc]\n" - " ldrb r0, [r2, #0x3]\n" - " sub r0, r0, #0x1\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " cmp r0, #0x1\n" - " bhi ._234 @cond_branch\n" - " str r4, [sp]\n" - " mov r0, #0x0\n" - " mov r1, #0x1\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r0, ._236 + 16\n" - " lsl r1, r5, #0x2\n" - " add r1, r1, r5\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._236 + 20\n" - " str r0, [r1]\n" - " b ._247\n" - "._237:\n" - " .align 2, 0\n" - "._236:\n" - " .word gBattleTypeFlags\n" - " .word gUnknown_Debug_083F8068\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gUnknown_02023A14_50\n" - " .word gTasks\n" - " .word debug_80C4A60+1\n" - "._234:\n" - " ldr r0, ._239\n" - " lsl r1, r5, #0x2\n" - " add r1, r1, r5\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._239 + 4\n" - " str r0, [r1]\n" - " b ._247\n" - "._240:\n" - " .align 2, 0\n" - "._239:\n" - " .word gTasks\n" - " .word debug_80C4F48+1\n" - "._233:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._242 @cond_branch\n" - " ldr r1, ._244\n" - " ldrb r0, [r1, #0x3]\n" - " cmp r0, #0\n" - " beq ._242 @cond_branch\n" - " sub r0, r0, #0x1\n" - " b ._243\n" - "._245:\n" - " .align 2, 0\n" - "._244:\n" - " .word gUnknown_Debug_2038A0C\n" - "._242:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._247 @cond_branch\n" - " ldr r1, ._248\n" - " ldrb r0, [r1, #0x3]\n" - " cmp r0, #0x1\n" - " bhi ._247 @cond_branch\n" - " add r0, r0, #0x1\n" - "._243:\n" - " strb r0, [r1, #0x3]\n" - " ldr r1, ._248 + 4\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._248 + 8\n" - "._229:\n" - " str r1, [r0]\n" - "._247:\n" - " add sp, sp, #0x4\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "._249:\n" - " .align 2, 0\n" - "._248:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gTasks\n" - " .word debug_80C48A0+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4A60() -{ - asm( - " push {r4, lr}\n" - " add sp, sp, #0xfffffffc\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " ldr r0, ._250\n" - " ldrb r0, [r0, #0x5]\n" - " lsl r0, r0, #0x19\n" - " mov r1, #0xc0\n" - " lsl r1, r1, #0x12\n" - " add r0, r0, r1\n" - " lsr r0, r0, #0x18\n" - " mov r1, #0x1\n" - " str r1, [sp]\n" - " mov r1, #0x10\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r1, ._250 + 4\n" - " ldr r2, ._250 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._250 + 12\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._250 + 16\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._250 + 20\n" - " str r1, [r0]\n" - " add sp, sp, #0x4\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._251:\n" - " .align 2, 0\n" - "._250:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word 0x4000042\n" - " .word 0x79ef\n" - " .word 0x17f\n" - " .word gTasks\n" - " .word debug_80C4AC4+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4AC4() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r8\n" - " push {r7}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r6, r0, #0x18\n" - " ldr r7, ._255\n" - " ldrb r0, [r7, #0x4]\n" - " mov ip, r0\n" - " ldrb r5, [r7, #0x5]\n" - " mov r1, ip\n" - " add r0, r1, r5\n" - " lsl r0, r0, #0x18\n" - " lsr r1, r0, #0x18\n" - " ldr r2, ._255 + 4\n" - " mov r8, r2\n" - " ldrh r2, [r2, #0x2e]\n" - " mov r3, #0x1\n" - " and r3, r3, r2\n" - " add r4, r7, #0\n" - " cmp r3, #0\n" - " beq ._252 @cond_branch\n" - " ldr r0, ._255 + 8\n" - " lsl r1, r1, #0x3\n" - " add r0, r0, #0x4\n" - " add r1, r1, r0\n" - " ldr r1, [r1]\n" - " ldr r3, ._255 + 12\n" - " ldr r2, [r3]\n" - " add r0, r2, #0\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._253 @cond_branch\n" - " ldr r0, ._255 + 16\n" - " eor r1, r1, r0\n" - " and r2, r2, r1\n" - " b ._254\n" - "._256:\n" - " .align 2, 0\n" - "._255:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gMain\n" - " .word gUnknown_Debug_083F80D8\n" - " .word byte_3005E30\n" - " .word 0xffff\n" - "._253:\n" - " orr r2, r2, r1\n" - "._254:\n" - " str r2, [r3]\n" - " ldrb r0, [r4, #0x4]\n" - " bl debug_80C4C44\n" - " ldr r1, ._258\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._258 + 4\n" - " str r1, [r0]\n" - " b ._274\n" - "._259:\n" - " .align 2, 0\n" - "._258:\n" - " .word gTasks\n" - " .word debug_80C4A60+1\n" - "._252:\n" - " mov r0, #0x2\n" - " and r0, r0, r2\n" - " lsl r0, r0, #0x10\n" - " lsr r4, r0, #0x10\n" - " cmp r4, #0\n" - " beq ._260 @cond_branch\n" - " str r3, [sp]\n" - " mov r0, #0x0\n" - " mov r1, #0x10\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r0, ._262\n" - " lsl r1, r6, #0x2\n" - " add r1, r1, r6\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._262 + 4\n" - " b ._261\n" - "._263:\n" - " .align 2, 0\n" - "._262:\n" - " .word gTasks\n" - " .word debug_80C48A0+1\n" - "._260:\n" - " mov r0, #0x8\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._264 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " ldr r1, ._266\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x3\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._266 + 4\n" - " ldrb r2, [r1, #0x1]\n" - " mov r0, #0x11\n" - " neg r0, r0\n" - " and r0, r0, r2\n" - " strb r0, [r1, #0x1]\n" - " mov r0, #0xac\n" - " strb r0, [r1, #0x2]\n" - " mov r0, #0xff\n" - " strb r0, [r1, #0x3]\n" - " strb r4, [r1, #0x9]\n" - " strb r4, [r1, #0xa]\n" - " strb r4, [r1, #0xb]\n" - " strb r4, [r1, #0xc]\n" - " ldr r1, ._266 + 8\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._266 + 12\n" - " str r1, [r0]\n" - " b ._274\n" - "._267:\n" - " .align 2, 0\n" - "._266:\n" - " .word gTrainerBattleOpponent\n" - " .word +0x2017000\n" - " .word gTasks\n" - " .word debug_80C4F48+1\n" - "._264:\n" - " mov r0, r8\n" - " ldrh r1, [r0, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._268 @cond_branch\n" - " lsl r0, r5, #0x18\n" - " cmp r0, #0\n" - " beq ._269 @cond_branch\n" - " sub r0, r5, #1\n" - " strb r0, [r7, #0x5]\n" - " b ._277\n" - "._269:\n" - " mov r1, ip\n" - " lsl r0, r1, #0x18\n" - " cmp r0, #0\n" - " beq ._277 @cond_branch\n" - " mov r0, ip\n" - " sub r0, r0, #0x1\n" - " b ._272\n" - "._268:\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._274 @cond_branch\n" - " lsl r0, r5, #0x18\n" - " lsr r0, r0, #0x18\n" - " cmp r0, #0x8\n" - " bhi ._274 @cond_branch\n" - " cmp r0, #0x4\n" - " bhi ._275 @cond_branch\n" - " add r0, r5, #1\n" - " strb r0, [r7, #0x5]\n" - " b ._277\n" - "._275:\n" - " mov r2, ip\n" - " lsl r0, r2, #0x18\n" - " lsr r0, r0, #0x18\n" - " cmp r0, #0x3\n" - " bhi ._277 @cond_branch\n" - " mov r0, ip\n" - " add r0, r0, #0x1\n" - "._272:\n" - " strb r0, [r7, #0x4]\n" - " ldrb r0, [r7, #0x4]\n" - " bl debug_80C4C44\n" - "._277:\n" - " ldr r0, ._278\n" - " lsl r1, r6, #0x2\n" - " add r1, r1, r6\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._278 + 4\n" - "._261:\n" - " str r0, [r1]\n" - "._274:\n" - " add sp, sp, #0x4\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._279:\n" - " .align 2, 0\n" - "._278:\n" - " .word gTasks\n" - " .word debug_80C4A60+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4C44() -{ - 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, #0xfffffff0\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " mov sl, r0\n" - " mov r2, #0x0\n" - " mov r5, sp\n" - "._290:\n" - " mov r0, sl\n" - " add r6, r2, r0\n" - " add r4, r6, #0\n" - " add r1, r2, #1\n" - " mov r8, r1\n" - " cmp r4, #0x9\n" - " bgt ._280 @cond_branch\n" - " mov r3, #0x0\n" - " ldr r1, ._288\n" - " lsl r0, r4, #0x3\n" - " add r0, r0, r1\n" - " ldr r0, [r0]\n" - " ldrb r0, [r0]\n" - " ldr r7, ._288 + 4\n" - " mov r9, r7\n" - " lsl r2, r2, #0x1\n" - " mov ip, r2\n" - " cmp r0, #0xff\n" - " beq ._282 @cond_branch\n" - " add r7, r1, #0\n" - "._283:\n" - " add r0, r3, #3\n" - " mov r1, sp\n" - " add r2, r1, r0\n" - " lsl r1, r6, #0x3\n" - " add r1, r1, r7\n" - " ldr r0, [r1]\n" - " add r0, r0, r3\n" - " ldrb r0, [r0]\n" - " strb r0, [r2]\n" - " add r0, r3, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r3, r0, #0x18\n" - " ldr r0, [r1]\n" - " add r0, r0, r3\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " beq ._282 @cond_branch\n" - " cmp r3, #0xb\n" - " bls ._283 @cond_branch\n" - "._282:\n" - " cmp r3, #0xb\n" - " bhi ._284 @cond_branch\n" - " mov r1, #0x0\n" - "._285:\n" - " add r0, r3, #3\n" - " add r0, r0, sp\n" - " strb r1, [r0]\n" - " add r0, r3, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r3, r0, #0x18\n" - " cmp r3, #0xb\n" - " bls ._285 @cond_branch\n" - "._284:\n" - " mov r0, #0xff\n" - " strb r0, [r5, #0xe]\n" - " mov r0, #0xfc\n" - " strb r0, [r5]\n" - " mov r2, #0x1\n" - " strb r2, [r5, #0x1]\n" - " add r1, r2, #0\n" - " LSL r1, r4\n" - " mov r3, r9\n" - " ldr r0, [r3]\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._286 @cond_branch\n" - " mov r0, #0x3\n" - " strb r0, [r5, #0x2]\n" - " b ._287\n" - "._289:\n" - " .align 2, 0\n" - "._288:\n" - " .word gUnknown_Debug_083F80D8\n" - " .word byte_3005E30\n" - "._286:\n" - " strb r2, [r5, #0x2]\n" - "._287:\n" - " mov r2, ip\n" - " add r2, r2, #0x3\n" - " lsl r2, r2, #0x18\n" - " lsr r2, r2, #0x18\n" - " mov r0, sp\n" - " mov r1, #0x11\n" - " bl Menu_PrintText\n" - "._280:\n" - " mov r7, r8\n" - " lsl r0, r7, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x5\n" - " bls ._290 @cond_branch\n" - " add sp, sp, #0x10\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" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4D14() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add sp, sp, #0xffffffd0\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " ldr r1, ._291\n" - " mov r0, sp\n" - " mov r2, #0xf\n" - " bl memcpy\n" - " add r5, sp, #0x10\n" - " ldr r1, ._291 + 4\n" - " add r0, r5, #0\n" - " mov r2, #0xd\n" - " bl memcpy\n" - " add r6, sp, #0x20\n" - " ldr r1, ._291 + 8\n" - " add r0, r6, #0\n" - " mov r2, #0xf\n" - " bl memcpy\n" - " mov r0, #0x0\n" - " mov r1, #0x10\n" - " mov r2, #0x1d\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, sp\n" - " mov r1, #0x1\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " add r0, r5, #0\n" - " mov r1, #0x14\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " mov r0, #0x0\n" - " mov r1, #0x0\n" - " mov r2, #0xe\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " add r0, r6, #0\n" - " mov r1, #0x2\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " ldr r0, ._291 + 12\n" - " ldrb r0, [r0, #0x6]\n" - " bl debug_80C4F00\n" - " mov r0, #0xf\n" - " mov r1, #0x0\n" - " mov r2, #0x1d\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " ldr r1, ._291 + 16\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._291 + 20\n" - " str r1, [r0]\n" - " add sp, sp, #0x30\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._292:\n" - " .align 2, 0\n" - "._291:\n" - " .word gUnknown_Debug_083F81C7\n" - " .word gUnknown_Debug_083F81F5\n" - " .word gUnknown_Debug_083F8202\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gTasks\n" - " .word debug_80C4DB8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4DB8() -{ - asm( - " push {r4, lr}\n" - " add sp, sp, #0xfffffffc\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " ldr r0, ._293\n" - " ldrb r0, [r0, #0x7]\n" - " lsl r0, r0, #0x19\n" - " mov r1, #0xc0\n" - " lsl r1, r1, #0x12\n" - " add r0, r0, r1\n" - " lsr r0, r0, #0x18\n" - " mov r1, #0x1\n" - " str r1, [sp]\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r1, ._293 + 4\n" - " ldr r2, ._293 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " add r2, r2, #0x8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._293 + 12\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._293 + 16\n" - " str r1, [r0]\n" - " add sp, sp, #0x4\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._294:\n" - " .align 2, 0\n" - "._293:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word 0x4000042\n" - " .word 0x177\n" - " .word gTasks\n" - " .word debug_80C4E18+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4E18() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " ldr r5, ._297\n" - " ldrb r3, [r5, #0x6]\n" - " ldrb r2, [r5, #0x7]\n" - " add r0, r3, r2\n" - " lsl r0, r0, #0x18\n" - " lsr r6, r0, #0x18\n" - " ldr r7, ._297 + 4\n" - " ldrh r1, [r7, #0x2e]\n" - " mov r0, #0x2\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._295 @cond_branch\n" - " ldr r0, ._297 + 8\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._297 + 12\n" - " b ._296\n" - "._298:\n" - " .align 2, 0\n" - "._297:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gMain\n" - " .word gTasks\n" - " .word debug_80C42B8+1\n" - "._295:\n" - " mov r0, #0x8\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " bne ._299 @cond_branch\n" - " mov r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._300 @cond_branch\n" - "._299:\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " ldr r2, ._302\n" - " ldr r1, ._302 + 4\n" - " lsl r0, r6, #0x3\n" - " add r0, r0, r1\n" - " ldrb r0, [r0, #0x4]\n" - " strb r0, [r2]\n" - " ldr r1, ._302 + 8\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._302 + 12\n" - " str r1, [r0]\n" - " b ._310\n" - "._303:\n" - " .align 2, 0\n" - "._302:\n" - " .word gBattleTerrain\n" - " .word gUnknown_Debug_083F814C\n" - " .word gTasks\n" - " .word debug_80C5158+1\n" - "._300:\n" - " ldrh r1, [r7, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._304 @cond_branch\n" - " lsl r0, r2, #0x18\n" - " cmp r0, #0\n" - " beq ._305 @cond_branch\n" - " sub r0, r2, #1\n" - " strb r0, [r5, #0x7]\n" - " b ._313\n" - "._305:\n" - " lsl r0, r3, #0x18\n" - " cmp r0, #0\n" - " beq ._313 @cond_branch\n" - " sub r0, r3, #1\n" - " b ._308\n" - "._304:\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._310 @cond_branch\n" - " lsl r0, r2, #0x18\n" - " lsr r0, r0, #0x18\n" - " cmp r0, #0x7\n" - " bhi ._310 @cond_branch\n" - " cmp r0, #0x4\n" - " bhi ._311 @cond_branch\n" - " add r0, r2, #1\n" - " strb r0, [r5, #0x7]\n" - " b ._313\n" - "._311:\n" - " lsl r0, r3, #0x18\n" - " lsr r0, r0, #0x18\n" - " cmp r0, #0x2\n" - " bhi ._313 @cond_branch\n" - " add r0, r3, #1\n" - "._308:\n" - " strb r0, [r5, #0x6]\n" - " ldrb r0, [r5, #0x6]\n" - " bl debug_80C4F00\n" - "._313:\n" - " ldr r0, ._314\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._314 + 4\n" - "._296:\n" - " str r0, [r1]\n" - "._310:\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._315:\n" - " .align 2, 0\n" - "._314:\n" - " .word gTasks\n" - " .word debug_80C4DB8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4F00() -{ - asm( - " push {r4, r5, r6, lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r5, r0, #0x18\n" - " mov r0, #0x1\n" - " mov r1, #0x3\n" - " mov r2, #0xd\n" - " mov r3, #0xe\n" - " bl Menu_BlankWindowRect\n" - " mov r4, #0x0\n" - " ldr r6, ._318\n" - "._317:\n" - " cmp r4, #0x8\n" - " bhi ._316 @cond_branch\n" - " add r0, r4, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r6\n" - " ldr r0, [r0]\n" - " lsl r2, r4, #0x19\n" - " mov r1, #0xc0\n" - " lsl r1, r1, #0x12\n" - " add r2, r2, r1\n" - " lsr r2, r2, #0x18\n" - " mov r1, #0x2\n" - " bl Menu_PrintText\n" - "._316:\n" - " add r0, r4, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " cmp r4, #0x5\n" - " bls ._317 @cond_branch\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._319:\n" - " .align 2, 0\n" - "._318:\n" - " .word gUnknown_Debug_083F814C\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C4F48() -{ - asm( - " push {r4, r5, r6, lr}\n" - " mov r6, r9\n" - " mov r5, r8\n" - " push {r5, r6}\n" - " add sp, sp, #0xffffffc4\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " ldr r1, ._320\n" - " mov r0, sp\n" - " mov r2, #0x11\n" - " bl memcpy\n" - " add r6, sp, #0x14\n" - " ldr r1, ._320 + 4\n" - " add r0, r6, #0\n" - " mov r2, #0xd\n" - " bl memcpy\n" - " add r5, sp, #0x24\n" - " ldr r1, ._320 + 8\n" - " add r0, r5, #0\n" - " mov r2, #0xd\n" - " bl memcpy\n" - " add r0, sp, #0x34\n" - " mov r9, r0\n" - " ldr r1, ._320 + 12\n" - " mov r2, #0x4\n" - " bl memcpy\n" - " add r0, sp, #0x38\n" - " mov r8, r0\n" - " ldr r1, ._320 + 16\n" - " mov r2, #0x4\n" - " bl memcpy\n" - " mov r0, #0x0\n" - " mov r1, #0x10\n" - " mov r2, #0x1d\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, sp\n" - " mov r1, #0x1\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " add r0, r6, #0\n" - " mov r1, #0x14\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " mov r0, #0x0\n" - " mov r1, #0x0\n" - " mov r2, #0xe\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " add r0, r5, #0\n" - " mov r1, #0x2\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " mov r0, #0x1\n" - " mov r1, #0x3\n" - " mov r2, #0xd\n" - " mov r3, #0xe\n" - " bl Menu_BlankWindowRect\n" - " add r0, r5, #0\n" - " mov r1, #0x2\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " mov r0, r9\n" - " mov r1, #0x2\n" - " mov r2, #0x3\n" - " bl Menu_PrintText\n" - " mov r0, r8\n" - " mov r1, #0x2\n" - " mov r2, #0x5\n" - " bl Menu_PrintText\n" - " mov r0, #0xf\n" - " mov r1, #0x0\n" - " mov r2, #0x1d\n" - " mov r3, #0xf\n" - " bl Menu_DrawStdWindowFrame\n" - " ldr r1, ._320 + 20\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._320 + 24\n" - " str r1, [r0]\n" - " add sp, sp, #0x3c\n" - " pop {r3, r4}\n" - " mov r8, r3\n" - " mov r9, r4\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._321:\n" - " .align 2, 0\n" - "._320:\n" - " .word gUnknown_Debug_083F8211\n" - " .word gUnknown_Debug_083F81A0\n" - " .word gUnknown_Debug_083F8222\n" - " .word gUnknown_Debug_083F822F\n" - " .word gUnknown_Debug_083F8233\n" - " .word gTasks\n" - " .word debug_80C5038+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5038() -{ - asm( - " push {r4, lr}\n" - " add sp, sp, #0xfffffffc\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " ldr r0, ._322\n" - " ldrb r0, [r0, #0x8]\n" - " lsl r0, r0, #0x19\n" - " mov r1, #0xc0\n" - " lsl r1, r1, #0x12\n" - " add r0, r0, r1\n" - " lsr r0, r0, #0x18\n" - " mov r1, #0x1\n" - " str r1, [sp]\n" - " mov r2, #0x1\n" - " mov r3, #0xe\n" - " bl debug_80C38E4\n" - " ldr r1, ._322 + 4\n" - " ldr r2, ._322 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " add r2, r2, #0x8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._322 + 12\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._322 + 16\n" - " str r1, [r0]\n" - " add sp, sp, #0x4\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._323:\n" - " .align 2, 0\n" - "._322:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word 0x4000042\n" - " .word 0x177\n" - " .word gTasks\n" - " .word debug_80C5098+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5098() -{ - asm( - " push {r4, lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " ldr r1, ._326\n" - " ldrh r2, [r1, #0x2e]\n" - " mov r0, #0x2\n" - " and r0, r0, r2\n" - " add r3, r1, #0\n" - " cmp r0, #0\n" - " beq ._324 @cond_branch\n" - " ldr r0, ._326 + 4\n" - " lsl r1, r4, #0x2\n" - " add r1, r1, r4\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._326 + 8\n" - " str r0, [r1]\n" - " b ._339\n" - "._327:\n" - " .align 2, 0\n" - "._326:\n" - " .word gMain\n" - " .word gTasks\n" - " .word debug_80C47BC+1\n" - "._324:\n" - " mov r0, #0x8\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " bne ._328 @cond_branch\n" - " mov r0, #0x1\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._329 @cond_branch\n" - "._328:\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " ldr r1, ._331\n" - " ldr r0, ._331 + 4\n" - " ldrb r0, [r0, #0x8]\n" - " strb r0, [r1, #0x8]\n" - " ldr r1, ._331 + 8\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._331 + 12\n" - " b ._330\n" - "._332:\n" - " .align 2, 0\n" - "._331:\n" - " .word gSaveBlock2\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gTasks\n" - " .word debug_80C42B8+1\n" - "._329:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._334 @cond_branch\n" - " ldr r1, ._336\n" - " ldrb r0, [r1, #0x8]\n" - " cmp r0, #0\n" - " beq ._334 @cond_branch\n" - " sub r0, r0, #0x1\n" - " b ._335\n" - "._337:\n" - " .align 2, 0\n" - "._336:\n" - " .word gUnknown_Debug_2038A0C\n" - "._334:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._339 @cond_branch\n" - " ldr r1, ._340\n" - " ldrb r0, [r1, #0x8]\n" - " cmp r0, #0\n" - " bne ._339 @cond_branch\n" - " add r0, r0, #0x1\n" - "._335:\n" - " strb r0, [r1, #0x8]\n" - " ldr r1, ._340 + 4\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._340 + 8\n" - "._330:\n" - " str r1, [r0]\n" - "._339:\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._341:\n" - " .align 2, 0\n" - "._340:\n" - " .word gUnknown_Debug_2038A0C\n" - " .word gTasks\n" - " .word debug_80C5038+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5158() -{ - asm( - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " ldr r2, ._342\n" - " lsl r1, r0, #0x2\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " ldr r0, ._342 + 4\n" - " str r0, [r1]\n" - " bx lr\n" - "._343:\n" - " .align 2, 0\n" - "._342:\n" - " .word gTasks\n" - " .word debug_80C5174+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5174() -{ - asm( - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " ldr r2, ._344\n" - " lsl r1, r0, #0x2\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " ldr r0, ._344 + 4\n" - " str r0, [r1]\n" - " bx lr\n" - "._345:\n" - " .align 2, 0\n" - "._344:\n" - " .word gTasks\n" - " .word debug_80C5190+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5190() -{ - asm( - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " ldr r2, ._346\n" - " lsl r1, r0, #0x2\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " ldr r0, ._346 + 4\n" - " str r0, [r1]\n" - " bx lr\n" - "._347:\n" - " .align 2, 0\n" - "._346:\n" - " .word gTasks\n" - " .word debug_80C51AC+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C51AC() -{ - asm( - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " ldr r2, ._348\n" - " lsl r1, r0, #0x2\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " ldr r0, ._348 + 4\n" - " str r0, [r1]\n" - " bx lr\n" - "._349:\n" - " .align 2, 0\n" - "._348:\n" - " .word gTasks\n" - " .word debug_80C51C8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C51C8() -{ - asm( - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " ldr r2, ._350\n" - " lsl r1, r0, #0x2\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " ldr r0, ._350 + 4\n" - " str r0, [r1]\n" - " bx lr\n" - "._351:\n" - " .align 2, 0\n" - "._350:\n" - " .word gTasks\n" - " .word debug_80C51E4+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C51E4() -{ - asm( - " push {lr}\n" - " bl sub_80408BC\n" - " ldr r0, ._352\n" - " ldr r1, ._352 + 4\n" - " str r1, [r0, #0x8]\n" - " ldr r0, ._352 + 8\n" - " bl SetMainCallback2\n" - " pop {r0}\n" - " bx r0\n" - "._353:\n" - " .align 2, 0\n" - "._352:\n" - " .word gMain\n" - " .word debug_80C41A8+1\n" - " .word unref_sub_800D684+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5208() -{ - asm( - " push {r4, r5, r6, lr}\n" - " ldr r1, ._355\n" - " ldr r0, ._355 + 4\n" - " str r0, [r1]\n" - " mov r3, #0x0\n" - " add r6, r1, #0\n" - " ldr r4, ._355 + 8\n" - " add r5, r6, #0\n" - " mov r2, #0x0\n" - "._354:\n" - " ldr r0, [r5]\n" - " lsl r1, r3, #0x2\n" - " add r0, r0, #0x64\n" - " add r0, r0, r1\n" - " str r2, [r0]\n" - " add r0, r3, #1\n" - " lsl r0, r0, #0x10\n" - " lsr r3, r0, #0x10\n" - " cmp r3, #0x3f\n" - " bls ._354 @cond_branch\n" - " ldr r2, [r6]\n" - " mov r0, #0xfc\n" - " str r0, [r2, #0x64]\n" - " ldrb r1, [r4, #0xa]\n" - " ldrb r0, [r4, #0xb]\n" - " lsl r0, r0, #0x8\n" - " orr r1, r1, r0\n" - " ldrb r0, [r4, #0xc]\n" - " lsl r0, r0, #0x10\n" - " orr r1, r1, r0\n" - " ldrb r0, [r4, #0xd]\n" - " lsl r0, r0, #0x18\n" - " orr r1, r1, r0\n" - " str r1, [r2, #0x70]\n" - " bl Random\n" - " add r4, r0, #0\n" - " bl Random\n" - " ldr r1, [r6]\n" - " lsl r4, r4, #0x10\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " orr r4, r4, r0\n" - " str r4, [r1, #0x74]\n" - " mov r0, #0x1\n" - " str r0, [r1, #0x68]\n" - " str r0, [r1, #0x6c]\n" - " bl debug_80C5C94\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._356:\n" - " .align 2, 0\n" - "._355:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word +0x2018000\n" - " .word gSaveBlock2\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C527C() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " add r6, r0, #0\n" - " mov r5, #0x0\n" - " ldr r7, ._359\n" - "._361:\n" - " mov r0, #0x64\n" - " add r1, r5, #0\n" - " mul r1, r1, r0\n" - " ldr r0, ._359 + 4\n" - " add r4, r1, r0\n" - " add r0, r4, #0\n" - " mov r1, #0xb\n" - " mov r2, #0x0\n" - " bl GetMonData\n" - " cmp r0, #0\n" - " bne ._357 @cond_branch\n" - " add r0, r4, #0\n" - " add r1, r6, #0\n" - " mov r2, #0x64\n" - " bl memcpy\n" - " add r0, r5, #1\n" - " strb r0, [r7]\n" - " mov r0, #0x0\n" - " b ._358\n" - "._360:\n" - " .align 2, 0\n" - "._359:\n" - " .word gPlayerPartyCount\n" - " .word gPlayerParty\n" - "._357:\n" - " add r0, r5, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r5, r0, #0x18\n" - " cmp r5, #0x5\n" - " bls ._361 @cond_branch\n" - " ldr r0, ._362\n" - " ldr r0, [r0]\n" - " bl SendMonToPC\n" - " mov r0, #0x1\n" - "._358:\n" - " pop {r4, r5, r6, r7}\n" - " pop {r1}\n" - " bx r1\n" - "._363:\n" - " .align 2, 0\n" - "._362:\n" - " .word gUnknown_Debug_2038A1C\n" - "\n" - ); -} - -__attribute__((naked)) -void InitCreatePokemon() -{ - asm( - " push {r4, r5, lr}\n" - " add sp, sp, #0xffffffd4\n" - " ldr r1, ._364\n" - " add r0, sp, #0x4\n" - " mov r2, #0x25\n" - " bl memcpy\n" - " bl debug_80C35DC\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " mov r4, #0x0\n" - " str r4, [sp]\n" - " mov r1, #0x0\n" - " mov r2, #0x10\n" - " mov r3, #0x0\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._364 + 4\n" - " mov r5, #0x0\n" - " strh r4, [r0]\n" - " add r0, r0, #0x2\n" - " strh r4, [r0]\n" - " add r0, r0, #0x2\n" - " strh r4, [r0]\n" - " ldr r3, ._364 + 8\n" - " ldrh r2, [r3]\n" - " strh r4, [r3]\n" - " ldr r4, ._364 + 12\n" - " ldrh r0, [r4]\n" - " mov r1, #0x1\n" - " orr r0, r0, r1\n" - " strh r0, [r4]\n" - " strh r2, [r3]\n" - " ldr r2, ._364 + 16\n" - " ldrh r0, [r2]\n" - " mov r1, #0x8\n" - " orr r0, r0, r1\n" - " strh r0, [r2]\n" - " ldr r0, ._364 + 20\n" - " bl SetVBlankCallback\n" - " ldr r0, ._364 + 24\n" - " bl SetMainCallback2\n" - " mov r0, #0x0\n" - " mov r1, #0x0\n" - " mov r2, #0x1d\n" - " mov r3, #0x3\n" - " bl Menu_DrawStdWindowFrame\n" - " add r0, sp, #0x4\n" - " mov r1, #0x1\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " mov r1, #0x80\n" - " lsl r1, r1, #0x13\n" - " mov r2, #0x8a\n" - " lsl r2, r2, #0x5\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r0, ._364 + 28\n" - " mov r1, #0x0\n" - " bl CreateTask\n" - " bl debug_80C5208\n" - " ldr r1, ._364 + 32\n" - " ldr r0, [r1]\n" - " mov r2, #0xb4\n" - " lsl r2, r2, #0x1\n" - " add r0, r0, r2\n" - " strb r5, [r0]\n" - " ldr r0, [r1]\n" - " ldr r1, ._364 + 36\n" - " add r0, r0, r1\n" - " strb r5, [r0]\n" - " add sp, sp, #0x2c\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "._365:\n" - " .align 2, 0\n" - "._364:\n" - " .word gUnknown_Debug_083F8733\n" - " .word 0x4000050\n" - " .word 0x4000208\n" - " .word 0x4000200\n" - " .word 0x4000004\n" - " .word debug_80C3758+1\n" - " .word debug_80C370C+1\n" - " .word debug_80C53A4+1\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C53A4() -{ - asm( - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " ldr r2, ._366\n" - " lsl r1, r0, #0x2\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " ldr r0, ._366 + 4\n" - " str r0, [r1]\n" - " bx lr\n" - "._367:\n" - " .align 2, 0\n" - "._366:\n" - " .word gTasks\n" - " .word debug_80C53C0+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C53C0() -{ - asm( - " push {r4, lr}\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " bl debug_80C6384\n" - " mov r0, #0x0\n" - " bl debug_80C627C\n" - " ldr r1, ._368\n" - " lsl r0, r4, #0x2\n" - " add r0, r0, r4\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._368 + 4\n" - " str r1, [r0]\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._369:\n" - " .align 2, 0\n" - "._368:\n" - " .word gTasks\n" - " .word debug_80C53F0+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C53F0() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r5, r0, #0x18\n" - " ldr r0, ._372\n" - " ldrh r1, [r0, #0x2e]\n" - " mov r2, #0x1\n" - " and r2, r2, r1\n" - " add r4, r0, #0\n" - " cmp r2, #0\n" - " beq ._370 @cond_branch\n" - " ldr r0, ._372 + 4\n" - " ldr r3, [r0]\n" - " mov r0, #0xb2\n" - " lsl r0, r0, #0x1\n" - " add r2, r3, r0\n" - " ldr r1, ._372 + 8\n" - " mov r4, #0xb4\n" - " lsl r4, r4, #0x1\n" - " add r0, r3, r4\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r6, ._372 + 12\n" - " add r1, r3, r6\n" - " ldrb r1, [r1]\n" - " ldr r0, [r0]\n" - " add r0, r0, r1\n" - " ldrb r1, [r0]\n" - " lsl r1, r1, #0x2\n" - " add r0, r3, #0\n" - " add r0, r0, #0x64\n" - " add r0, r0, r1\n" - " ldr r0, [r0]\n" - " str r0, [r2]\n" - " mov r0, #0xb5\n" - " lsl r0, r0, #0x1\n" - " add r1, r3, r0\n" - " mov r0, #0x0\n" - " strb r0, [r1]\n" - " bl debug_80C643C\n" - " ldr r1, ._372 + 16\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._372 + 20\n" - " b ._375\n" - "._373:\n" - " .align 2, 0\n" - "._372:\n" - " .word gMain\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gUnknown_Debug_083F8698\n" - " .word 0x169\n" - " .word gTasks\n" - " .word debug_80C55E4+1\n" - "._370:\n" - " mov r0, #0x2\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._374 @cond_branch\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " str r2, [sp]\n" - " mov r1, #0x0\n" - " mov r2, #0x0\n" - " mov r3, #0x10\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._376\n" - " bl SetMainCallback2\n" - " ldr r1, ._376 + 4\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._376 + 8\n" - " b ._375\n" - "._377:\n" - " .align 2, 0\n" - "._376:\n" - " .word debug_80C370C+1\n" - " .word gTasks\n" - " .word debug_80C373C+1\n" - "._374:\n" - " mov r0, #0x8\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._378 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " bl debug_80C5FFC\n" - " ldr r0, ._381\n" - " ldr r0, [r0]\n" - " bl debug_80C527C\n" - " add r4, r0, #0\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " mov r0, #0x3\n" - " mov r1, #0x8\n" - " mov r2, #0x1a\n" - " mov r3, #0xb\n" - " bl Menu_DrawStdWindowFrame\n" - " cmp r4, #0\n" - " beq ._379 @cond_branch\n" - " ldr r0, ._381 + 4\n" - " mov r1, #0x4\n" - " mov r2, #0x9\n" - " bl Menu_PrintText\n" - " b ._380\n" - "._382:\n" - " .align 2, 0\n" - "._381:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gUnknown_Debug_083F872A\n" - "._379:\n" - " ldr r0, ._384\n" - " mov r1, #0x4\n" - " mov r2, #0x9\n" - " bl Menu_PrintText\n" - "._380:\n" - " ldr r0, ._384 + 4\n" - " lsl r1, r5, #0x2\n" - " add r1, r1, r5\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._384 + 8\n" - " str r0, [r1]\n" - " b ._400\n" - "._385:\n" - " .align 2, 0\n" - "._384:\n" - " .word gUnknown_Debug_083F8720\n" - " .word gTasks\n" - " .word debug_80C5708+1\n" - "._378:\n" - " mov r0, #0x4\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._386 @cond_branch\n" - " ldr r0, ._388\n" - " ldr r0, [r0]\n" - " ldr r4, [r0, #0x64]\n" - " lsl r4, r4, #0x10\n" - " lsr r4, r4, #0x10\n" - " add r0, r4, #0\n" - " mov r1, #0x2\n" - " bl GetSetPokedexFlag\n" - " add r0, r4, #0\n" - " mov r1, #0x3\n" - " bl GetSetPokedexFlag\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " b ._400\n" - "._389:\n" - " .align 2, 0\n" - "._388:\n" - " .word gUnknown_Debug_2038A1C\n" - "._386:\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._390 @cond_branch\n" - " mov r0, #0x2\n" - " bl debug_80C627C\n" - " b ._400\n" - "._390:\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x10\n" - " lsr r3, r0, #0x10\n" - " cmp r3, #0\n" - " beq ._392 @cond_branch\n" - " mov r0, #0x1\n" - " bl debug_80C627C\n" - " b ._400\n" - "._392:\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x2\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._395 @cond_branch\n" - " ldr r2, ._397\n" - " ldr r0, [r2]\n" - " mov r6, #0xb4\n" - " lsl r6, r6, #0x1\n" - " add r1, r0, r6\n" - " ldrb r0, [r1]\n" - " cmp r0, #0\n" - " beq ._395 @cond_branch\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1]\n" - " ldr r0, [r2]\n" - " ldr r1, ._397 + 4\n" - " add r0, r0, r1\n" - " strb r3, [r0]\n" - " b ._396\n" - "._398:\n" - " .align 2, 0\n" - "._397:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - "._395:\n" - " ldrh r1, [r4, #0x2e]\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._400 @cond_branch\n" - " ldr r3, ._401\n" - " ldr r0, [r3]\n" - " mov r4, #0xb4\n" - " lsl r4, r4, #0x1\n" - " add r2, r0, r4\n" - " ldrb r0, [r2]\n" - " cmp r0, #0x4\n" - " bhi ._400 @cond_branch\n" - " add r0, r0, #0x1\n" - " mov r1, #0x0\n" - " strb r0, [r2]\n" - " ldr r0, [r3]\n" - " ldr r6, ._401 + 4\n" - " add r0, r0, r6\n" - " strb r1, [r0]\n" - "._396:\n" - " ldr r1, ._401 + 8\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._401 + 12\n" - "._375:\n" - " str r1, [r0]\n" - "._400:\n" - " add sp, sp, #0x4\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._402:\n" - " .align 2, 0\n" - "._401:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - " .word gTasks\n" - " .word debug_80C53C0+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C55E4() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r8\n" - " push {r7}\n" - " lsl r0, r0, #0x18\n" - " lsr r3, r0, #0x18\n" - " add r6, r3, #0\n" - " ldr r1, ._405\n" - " ldr r2, ._405 + 4\n" - " ldr r0, [r2]\n" - " mov ip, r0\n" - " mov r0, #0xb4\n" - " lsl r0, r0, #0x1\n" - " add r0, r0, ip\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._405 + 8\n" - " add r1, r1, ip\n" - " ldrb r1, [r1]\n" - " ldr r0, [r0]\n" - " add r0, r0, r1\n" - " ldrb r5, [r0]\n" - " add r7, r5, #0\n" - " ldr r1, ._405 + 12\n" - " ldrh r4, [r1, #0x2e]\n" - " mov r0, #0x1\n" - " and r0, r0, r4\n" - " mov r8, r2\n" - " add r2, r1, #0\n" - " cmp r0, #0\n" - " beq ._403 @cond_branch\n" - " ldr r0, ._405 + 16\n" - " lsl r1, r3, #0x2\n" - " add r1, r1, r3\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._405 + 20\n" - " str r0, [r1]\n" - " b ._422\n" - "._406:\n" - " .align 2, 0\n" - "._405:\n" - " .word gUnknown_Debug_083F8698\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - " .word gMain\n" - " .word gTasks\n" - " .word debug_80C53C0+1\n" - "._403:\n" - " mov r0, #0x2\n" - " and r0, r0, r4\n" - " cmp r0, #0\n" - " beq ._407 @cond_branch\n" - " lsl r1, r5, #0x2\n" - " mov r0, ip\n" - " add r0, r0, #0x64\n" - " add r0, r0, r1\n" - " mov r1, #0xb2\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, ip\n" - " ldr r1, [r1]\n" - " str r1, [r0]\n" - " ldr r1, ._409\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._409 + 4\n" - " str r1, [r0]\n" - " b ._422\n" - "._410:\n" - " .align 2, 0\n" - "._409:\n" - " .word gTasks\n" - " .word debug_80C53C0+1\n" - "._407:\n" - " ldrh r1, [r2, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._411 @cond_branch\n" - " mov r0, #0x1\n" - " b ._412\n" - "._411:\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._413 @cond_branch\n" - " mov r0, #0x2\n" - "._412:\n" - " bl debug_80C6544\n" - " bl debug_80C643C\n" - " b ._422\n" - "._413:\n" - " ldr r0, ._419\n" - " lsl r1, r7, #0x3\n" - " add r0, r0, #0x4\n" - " add r1, r1, r0\n" - " ldr r1, [r1]\n" - " ldrb r0, [r1, #0x9]\n" - " cmp r0, #0xff\n" - " beq ._422 @cond_branch\n" - " mov r0, #0x20\n" - " and r0, r0, r4\n" - " cmp r0, #0\n" - " beq ._417 @cond_branch\n" - " mov r0, #0xb5\n" - " lsl r0, r0, #0x1\n" - " add ip, ip, r0\n" - " mov r0, ip\n" - " ldrb r3, [r0]\n" - " ldrb r0, [r1, #0x9]\n" - " sub r0, r0, #0x1\n" - " cmp r3, r0\n" - " bge ._417 @cond_branch\n" - " add r0, r3, #1\n" - " mov r1, ip\n" - " strb r0, [r1]\n" - " bl debug_80C643C\n" - " b ._422\n" - "._420:\n" - " .align 2, 0\n" - "._419:\n" - " .word gUnknown_Debug_083F8554\n" - "._417:\n" - " ldrh r1, [r2, #0x2e]\n" - " mov r0, #0x10\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._422 @cond_branch\n" - " mov r2, r8\n" - " ldr r0, [r2]\n" - " mov r2, #0xb5\n" - " lsl r2, r2, #0x1\n" - " add r1, r0, r2\n" - " ldrb r0, [r1]\n" - " cmp r0, #0\n" - " beq ._422 @cond_branch\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1]\n" - " bl debug_80C643C\n" - "._422:\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5708() -{ - asm( - " push {lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " ldr r0, ._424\n" - " ldrh r1, [r0, #0x2e]\n" - " mov r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._423 @cond_branch\n" - " ldr r0, ._424 + 4\n" - " lsl r1, r2, #0x2\n" - " add r1, r1, r2\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._424 + 8\n" - " str r0, [r1]\n" - "._423:\n" - " pop {r0}\n" - " bx r0\n" - "._425:\n" - " .align 2, 0\n" - "._424:\n" - " .word gMain\n" - " .word gTasks\n" - " .word debug_80C53C0+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5738() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r9\n" - " mov r6, r8\n" - " push {r6, r7}\n" - " add r6, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r4, r1, #0x18\n" - " lsl r2, r2, #0x18\n" - " lsr r2, r2, #0x18\n" - " mov r8, r2\n" - " cmp r4, #0xfe\n" - " bne ._426 @cond_branch\n" - " ldr r1, ._428\n" - " mov r2, #0x7\n" - " bl debug_80C689C\n" - " add r0, r6, #7\n" - " ldr r7, ._428 + 4\n" - " ldr r1, [r7]\n" - " add r1, r1, #0xf0\n" - " ldr r1, [r1]\n" - " mov r2, #0x3\n" - " mov r3, #0x1\n" - " bl debug_80C6678\n" - " mov r4, #0x0\n" - " strb r4, [r6, #0x13]\n" - " strb r4, [r6, #0x14]\n" - " add r0, r6, #0\n" - " add r0, r0, #0x15\n" - " ldr r1, ._428 + 8\n" - " mov r2, #0x7\n" - " bl debug_80C689C\n" - " add r0, r6, #0\n" - " add r0, r0, #0x1c\n" - " ldr r1, [r7]\n" - " add r1, r1, #0xf4\n" - " ldr r1, [r1]\n" - " mov r2, #0x3\n" - " mov r3, #0x1\n" - " bl debug_80C6678\n" - " add r0, r6, #0\n" - " add r0, r0, #0x28\n" - " strb r4, [r0]\n" - " add r0, r0, #0x1\n" - " strb r4, [r0]\n" - " add r0, r0, #0x1\n" - " ldr r1, ._428 + 12\n" - " mov r2, #0x9\n" - " bl debug_80C689C\n" - " add r0, r6, #0\n" - " add r0, r0, #0x31\n" - " ldr r1, [r7]\n" - " add r1, r1, #0xf8\n" - "._431:\n" - " ldr r1, [r1]\n" - " mov r2, #0x3\n" - " mov r3, #0x1\n" - " bl debug_80C6678\n" - " b ._517\n" - "._429:\n" - " .align 2, 0\n" - "._428:\n" - " .word gUnknown_Debug_083F850A\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gUnknown_Debug_083F8514\n" - " .word gUnknown_Debug_083F851C\n" - "._426:\n" - " cmp r4, #0xfd\n" - " bne ._430 @cond_branch\n" - " ldr r1, ._432\n" - " add r0, r6, #0\n" - " mov r2, #0x9\n" - " bl debug_80C689C\n" - " add r0, r6, #0\n" - " add r0, r0, #0x9\n" - " ldr r7, ._432 + 4\n" - " ldr r1, [r7]\n" - " add r1, r1, #0xfc\n" - " ldr r1, [r1]\n" - " mov r2, #0x3\n" - " mov r3, #0x1\n" - " bl debug_80C6678\n" - " mov r4, #0x0\n" - " strb r4, [r6, #0x15]\n" - " strb r4, [r6, #0x16]\n" - " add r0, r6, #0\n" - " add r0, r0, #0x17\n" - " ldr r1, ._432 + 8\n" - " mov r2, #0x9\n" - " bl debug_80C689C\n" - " add r0, r6, #0\n" - " add r0, r0, #0x20\n" - " ldr r1, [r7]\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x1\n" - " add r1, r1, r2\n" - " ldr r1, [r1]\n" - " mov r2, #0x3\n" - " mov r3, #0x1\n" - " bl debug_80C6678\n" - " add r0, r6, #0\n" - " add r0, r0, #0x2c\n" - " strb r4, [r0]\n" - " add r0, r0, #0x1\n" - " strb r4, [r0]\n" - " add r0, r0, #0x1\n" - " ldr r1, ._432 + 12\n" - " mov r2, #0x9\n" - " bl debug_80C689C\n" - " add r0, r6, #0\n" - " add r0, r0, #0x37\n" - " ldr r1, [r7]\n" - " mov r3, #0x82\n" - " lsl r3, r3, #0x1\n" - " add r1, r1, r3\n" - " b ._431\n" - "._433:\n" - " .align 2, 0\n" - "._432:\n" - " .word gUnknown_Debug_083F8524\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gUnknown_Debug_083F852D\n" - " .word gUnknown_Debug_083F8537\n" - "._430:\n" - " mov r1, #0x0\n" - " lsl r5, r4, #0x3\n" - " mov r2, #0x0\n" - "._434:\n" - " add r0, r6, r1\n" - " strb r2, [r0]\n" - " add r0, r1, #1\n" - " lsl r0, r0, #0x10\n" - " lsr r1, r0, #0x10\n" - " cmp r1, #0xb\n" - " bls ._434 @cond_branch\n" - " ldr r0, ._437\n" - " add r0, r5, r0\n" - " ldr r1, [r0]\n" - " add r0, r6, #0\n" - " mov r2, #0xb\n" - " bl debug_80C689C\n" - " mov r1, #0xc\n" - " mov r2, #0xff\n" - "._435:\n" - " add r0, r6, r1\n" - " strb r2, [r0]\n" - " add r0, r1, #1\n" - " lsl r0, r0, #0x10\n" - " lsr r1, r0, #0x10\n" - " cmp r1, #0xff\n" - " bls ._435 @cond_branch\n" - " ldr r0, ._437\n" - " add r0, r0, #0x4\n" - " add r0, r5, r0\n" - " ldr r0, [r0]\n" - " ldrb r2, [r0, #0x9]\n" - " lsl r0, r2, #0x1a\n" - " lsr r5, r0, #0x18\n" - " cmp r4, #0x22\n" - " bhi ._436 @cond_branch\n" - " lsl r0, r4, #0x2\n" - " ldr r1, ._437 + 4\n" - " add r1, r0, r1\n" - " ldr r1, [r1]\n" - " add r7, r0, #0\n" - " mov pc, r1\n" - "._438:\n" - " .align 2, 0\n" - "._437:\n" - " .word gUnknown_Debug_083F8554\n" - " .word ._439\n" - "._439:\n" - " .word ._440\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._445\n" - " .word ._446\n" - " .word ._450\n" - " .word ._450\n" - " .word ._450\n" - " .word ._450\n" - " .word ._451\n" - " .word ._452\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._472\n" - " .word ._473\n" - " .word ._474\n" - "._436:\n" - " mov r0, #0xff\n" - " strb r0, [r6]\n" - " b ._517\n" - "._440:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r1, ._477\n" - " mov r9, r1\n" - " ldr r1, [r1]\n" - " add r1, r1, #0x64\n" - " add r1, r1, r7\n" - " ldr r1, [r1]\n" - " mov r3, r8\n" - " bl debug_80C6678\n" - " add r1, r5, r6\n" - " mov r0, #0x0\n" - " strb r0, [r1, #0xa]\n" - " mov r0, #0xfc\n" - " strb r0, [r1, #0xb]\n" - " mov r0, #0x1\n" - " strb r0, [r1, #0xc]\n" - " mov r2, r8\n" - " strb r2, [r1, #0xd]\n" - " add r4, r5, #0\n" - " add r4, r4, #0xe\n" - " add r4, r6, r4\n" - " mov r3, r9\n" - " ldr r0, [r3]\n" - " add r0, r0, #0x64\n" - " add r0, r0, r7\n" - " ldrh r0, [r0]\n" - " bl NationalPokedexNumToSpecies\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " mov r1, #0xb\n" - " mul r1, r1, r0\n" - " ldr r0, ._477 + 4\n" - " add r1, r1, r0\n" - " add r0, r4, #0\n" - " mov r2, #0xa\n" - " bl debug_80C689C\n" - " b ._517\n" - "._478:\n" - " .align 2, 0\n" - "._477:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gSpeciesNames\n" - "._445:\n" - " ldr r0, ._483\n" - " ldr r0, [r0]\n" - " add r0, r0, #0x64\n" - " add r0, r0, r7\n" - " ldr r0, [r0]\n" - " cmp r0, #0x1\n" - " beq ._479 @cond_branch\n" - " cmp r0, #0x1\n" - " bcc ._480 @cond_branch\n" - " cmp r0, #0x2\n" - " beq ._481 @cond_branch\n" - " b ._517\n" - "._484:\n" - " .align 2, 0\n" - "._483:\n" - " .word gUnknown_Debug_2038A1C\n" - "._480:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r1, ._486\n" - " b ._488\n" - "._487:\n" - " .align 2, 0\n" - "._486:\n" - " .word gUnknown_Debug_083F8546\n" - "._479:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r1, ._489\n" - " b ._488\n" - "._490:\n" - " .align 2, 0\n" - "._489:\n" - " .word gUnknown_Debug_083F8541\n" - "._481:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r1, ._492\n" - "._488:\n" - " mov r2, #0x2\n" - " bl debug_80C689C\n" - " b ._517\n" - "._493:\n" - " .align 2, 0\n" - "._492:\n" - " .word gUnknown_Debug_083F8544\n" - "._450:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r4, ._495\n" - " ldr r1, [r4]\n" - " add r1, r1, #0x64\n" - " add r1, r1, r7\n" - " ldr r1, [r1]\n" - " mov r3, r8\n" - " bl debug_80C6678\n" - " add r1, r5, r6\n" - " mov r0, #0x0\n" - " strb r0, [r1, #0xa]\n" - " mov r0, #0xfc\n" - " strb r0, [r1, #0xb]\n" - " mov r0, #0x1\n" - " strb r0, [r1, #0xc]\n" - " mov r0, r8\n" - " strb r0, [r1, #0xd]\n" - " add r0, r5, #0\n" - " add r0, r0, #0xe\n" - " add r0, r6, r0\n" - " ldr r1, [r4]\n" - " add r1, r1, #0x64\n" - " add r1, r1, r7\n" - " ldr r2, [r1]\n" - " mov r1, #0xd\n" - " mul r1, r1, r2\n" - " ldr r2, ._495 + 4\n" - " add r1, r1, r2\n" - " b ._494\n" - "._496:\n" - " .align 2, 0\n" - "._495:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gMoveNames\n" - "._451:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r4, ._499\n" - " ldr r1, [r4]\n" - " add r1, r1, #0x64\n" - " add r1, r1, r7\n" - " ldr r1, [r1]\n" - " mov r3, r8\n" - " bl debug_80C6678\n" - " add r1, r5, r6\n" - " mov r0, #0x0\n" - " strb r0, [r1, #0xa]\n" - " mov r0, #0xfc\n" - " strb r0, [r1, #0xb]\n" - " mov r0, #0x1\n" - " strb r0, [r1, #0xc]\n" - " mov r2, r8\n" - " strb r2, [r1, #0xd]\n" - " ldr r0, [r4]\n" - " add r0, r0, #0x64\n" - " add r0, r0, r7\n" - " ldr r0, [r0]\n" - " cmp r0, #0\n" - " beq ._497 @cond_branch\n" - " add r4, r5, #0\n" - " add r4, r4, #0xe\n" - " add r4, r6, r4\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl ItemId_GetItem\n" - " add r1, r0, #0\n" - " add r0, r4, #0\n" - " b ._498\n" - "._500:\n" - " .align 2, 0\n" - "._499:\n" - " .word gUnknown_Debug_2038A1C\n" - "._497:\n" - " add r0, r5, #0\n" - " add r0, r0, #0xe\n" - " add r0, r6, r0\n" - " ldr r1, ._502\n" - "._498:\n" - " mov r2, #0x9\n" - " bl debug_80C689C\n" - " b ._517\n" - "._503:\n" - " .align 2, 0\n" - "._502:\n" - " .word gUnknown_Debug_083F8541\n" - "._452:\n" - " add r6, r6, #0xc\n" - " ldr r4, ._505\n" - " ldr r0, [r4]\n" - " ldr r0, [r0, #0x64]\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl NationalPokedexNumToSpecies\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " ldr r1, [r4]\n" - " add r1, r1, #0x64\n" - " add r1, r1, r7\n" - " ldrb r1, [r1]\n" - " bl GetAbilityBySpecies\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " mov r1, #0xd\n" - " mul r1, r1, r0\n" - " ldr r0, ._505 + 4\n" - " add r1, r1, r0\n" - " add r0, r6, #0\n" - "._494:\n" - " mov r2, #0xc\n" - " bl debug_80C689C\n" - " b ._517\n" - "._506:\n" - " .align 2, 0\n" - "._505:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gAbilityNames\n" - "._474:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r2, ._508\n" - " ldr r1, ._508 + 4\n" - " ldr r1, [r1]\n" - " add r1, r1, #0x64\n" - " add r1, r1, r7\n" - " ldr r1, [r1]\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " ldr r1, [r1]\n" - " b ._514\n" - "._509:\n" - " .align 2, 0\n" - "._508:\n" - " .word gUnknown_Debug_083F86E8\n" - " .word gUnknown_Debug_2038A1C\n" - "._472:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xc\n" - " ldr r1, ._511\n" - " ldr r1, [r1]\n" - " add r1, r1, #0x64\n" - " add r1, r1, r7\n" - " ldr r1, [r1]\n" - " mov r3, r8\n" - " bl debug_80C6678\n" - " b ._517\n" - "._512:\n" - " .align 2, 0\n" - "._511:\n" - " .word gUnknown_Debug_2038A1C\n" - "._473:\n" - " ldr r0, ._515\n" - " ldr r0, [r0]\n" - " add r0, r0, #0x64\n" - " add r0, r0, r7\n" - " ldr r0, [r0]\n" - " cmp r0, #0\n" - " beq ._513 @cond_branch\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r1, ._515 + 4\n" - " b ._514\n" - "._516:\n" - " .align 2, 0\n" - "._515:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gUnknown_Debug_083F854A\n" - "._513:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r1, ._518\n" - "._514:\n" - " mov r2, #0x4\n" - " bl debug_80C689C\n" - " b ._517\n" - "._519:\n" - " .align 2, 0\n" - "._518:\n" - " .word gUnknown_Debug_083F854D\n" - "._446:\n" - " add r0, r6, #0\n" - " add r0, r0, #0xa\n" - " ldr r2, ._520\n" - " ldr r1, ._520 + 4\n" - " ldr r1, [r1]\n" - " add r1, r1, #0x64\n" - " add r1, r1, r7\n" - " ldr r1, [r1]\n" - " lsl r1, r1, #0x2\n" - " add r1, r1, r2\n" - " ldr r1, [r1]\n" - " mov r2, #0x5\n" - " bl debug_80C689C\n" - "._517:\n" - " mov r0, #0x0\n" - " pop {r3, r4}\n" - " mov r8, r3\n" - " mov r9, r4\n" - " pop {r4, r5, r6, r7}\n" - " pop {r1}\n" - " bx r1\n" - "._521:\n" - " .align 2, 0\n" - "._520:\n" - " .word gNatureNames\n" - " .word gUnknown_Debug_2038A1C\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5B60() -{ - asm( - " lsl r0, r0, #0x18\n" - " ldr r1, ._522\n" - " ldr r1, [r1]\n" - " lsr r0, r0, #0x16\n" - " add r1, r1, #0x64\n" - " add r1, r1, r0\n" - " ldr r0, [r1]\n" - " bx lr\n" - "._523:\n" - " .align 2, 0\n" - "._522:\n" - " .word gUnknown_Debug_2038A1C\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5B74() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add r6, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r2, r1, #0x18\n" - " cmp r2, #0x18\n" - " bhi ._540 @cond_branch\n" - " lsl r0, r2, #0x2\n" - " ldr r1, ._526\n" - " add r1, r0, r1\n" - " ldr r1, [r1]\n" - " add r3, r0, #0\n" - " mov pc, r1\n" - "._527:\n" - " .align 2, 0\n" - "._526:\n" - " .word ._525\n" - "._525:\n" - " .word ._532\n" - " .word ._529\n" - " .word ._530\n" - " .word ._532\n" - " .word ._532\n" - " .word ._540\n" - " .word ._540\n" - " .word ._540\n" - " .word ._540\n" - " .word ._540\n" - " .word ._540\n" - " .word ._540\n" - " .word ._540\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - " .word ._552\n" - "._540:\n" - " ldr r0, ._554\n" - " ldr r0, [r0]\n" - " lsl r1, r2, #0x2\n" - " add r0, r0, #0x64\n" - " add r0, r0, r1\n" - " str r6, [r0]\n" - " b ._562\n" - "._555:\n" - " .align 2, 0\n" - "._554:\n" - " .word gUnknown_Debug_2038A1C\n" - "._532:\n" - " ldr r0, ._557\n" - " ldr r0, [r0]\n" - " add r0, r0, #0x64\n" - " add r0, r0, r3\n" - " str r6, [r0]\n" - " bl debug_80C5C94\n" - " b ._562\n" - "._558:\n" - " .align 2, 0\n" - "._557:\n" - " .word gUnknown_Debug_2038A1C\n" - "._529:\n" - " ldr r4, ._560\n" - " ldr r1, [r4]\n" - " add r0, r1, #0\n" - " add r0, r0, #0x64\n" - " add r0, r0, r3\n" - " str r6, [r0]\n" - " ldr r0, [r1, #0x64]\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl NationalPokedexNumToSpecies\n" - " ldr r5, [r4]\n" - " ldr r4, ._560 + 4\n" - " lsl r2, r6, #0x2\n" - " ldr r3, ._560 + 8\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " lsl r1, r0, #0x3\n" - " sub r1, r1, r0\n" - " lsl r1, r1, #0x2\n" - " add r1, r1, r3\n" - " ldrb r1, [r1, #0x13]\n" - " mov r0, #0xca\n" - " lsl r0, r0, #0x1\n" - " mul r0, r0, r1\n" - " add r2, r2, r0\n" - " add r2, r2, r4\n" - " ldr r0, [r2]\n" - " str r0, [r5, #0x6c]\n" - " bl debug_80C5C94\n" - " b ._562\n" - "._561:\n" - " .align 2, 0\n" - "._560:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gExperienceTables\n" - " .word gBaseStats\n" - "._530:\n" - " ldr r0, ._563\n" - " ldr r0, [r0]\n" - " add r0, r0, #0x64\n" - " add r0, r0, r3\n" - " str r6, [r0]\n" - " bl debug_80C5DEC\n" - " b ._562\n" - "._564:\n" - " .align 2, 0\n" - "._563:\n" - " .word gUnknown_Debug_2038A1C\n" - "._552:\n" - " ldr r0, ._565\n" - " ldr r0, [r0]\n" - " add r0, r0, #0x64\n" - " add r0, r0, r3\n" - " str r6, [r0]\n" - " bl debug_80C5EF4\n" - "._562:\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._566:\n" - " .align 2, 0\n" - "._565:\n" - " .word gUnknown_Debug_2038A1C\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5C94() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add sp, sp, #0xfffffff0\n" - " ldr r6, ._567\n" - " ldr r2, [r6]\n" - " add r0, r2, #0\n" - " add r0, r0, #0x98\n" - " ldr r4, [r0]\n" - " mov r1, #0x1f\n" - " and r4, r4, r1\n" - " add r0, r0, #0x8\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x5\n" - " orr r4, r4, r0\n" - " add r0, r2, #0\n" - " add r0, r0, #0xa8\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0xa\n" - " orr r4, r4, r0\n" - " add r0, r2, #0\n" - " add r0, r0, #0xb0\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0xf\n" - " orr r4, r4, r0\n" - " add r0, r2, #0\n" - " add r0, r0, #0xb8\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x14\n" - " orr r4, r4, r0\n" - " add r0, r2, #0\n" - " add r0, r0, #0xc0\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x19\n" - " orr r4, r4, r0\n" - " ldr r0, [r2, #0x64]\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl NationalPokedexNumToSpecies\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x10\n" - " lsr r1, r1, #0x10\n" - " ldr r0, [r6]\n" - " ldr r2, [r0, #0x68]\n" - " lsl r2, r2, #0x18\n" - " lsr r2, r2, #0x18\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " mov r5, #0x1\n" - " str r5, [sp]\n" - " ldr r3, [r0, #0x74]\n" - " str r3, [sp, #0x4]\n" - " str r5, [sp, #0x8]\n" - " ldr r3, [r0, #0x70]\n" - " str r3, [sp, #0xc]\n" - " add r3, r4, #0\n" - " bl CreateMon\n" - " ldr r0, [r6]\n" - " bl GetMonGender\n" - " ldr r1, [r6]\n" - " add r0, r0, #0x2\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " str r0, [r1, #0x78]\n" - " add r0, r1, #0\n" - " bl GetNature\n" - " ldr r1, [r6]\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " str r0, [r1, #0x7c]\n" - " add r0, r1, #0\n" - " mov r1, #0xd\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " add r1, r0, #0\n" - " add r1, r1, #0x80\n" - " str r2, [r1]\n" - " mov r1, #0xe\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " add r1, r0, #0\n" - " add r1, r1, #0x84\n" - " str r2, [r1]\n" - " mov r1, #0xf\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " add r1, r0, #0\n" - " add r1, r1, #0x88\n" - " str r2, [r1]\n" - " mov r1, #0x10\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " add r1, r0, #0\n" - " add r1, r1, #0x8c\n" - " str r2, [r1]\n" - " mov r1, #0x19\n" - " bl GetMonData\n" - " add r1, r0, #0\n" - " ldr r0, [r6]\n" - " str r1, [r0, #0x6c]\n" - " mov r1, #0x3a\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf0\n" - " str r2, [r1]\n" - " mov r1, #0x3b\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf4\n" - " str r2, [r1]\n" - " mov r1, #0x3c\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf8\n" - " str r2, [r1]\n" - " mov r1, #0x3d\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xfc\n" - " str r2, [r1]\n" - " mov r1, #0x3e\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r6]\n" - " mov r3, #0x80\n" - " lsl r3, r3, #0x1\n" - " add r1, r0, r3\n" - " str r2, [r1]\n" - " mov r1, #0x3f\n" - " bl GetMonData\n" - " ldr r1, [r6]\n" - " mov r2, #0x82\n" - " lsl r2, r2, #0x1\n" - " add r1, r1, r2\n" - " str r0, [r1]\n" - " add sp, sp, #0x10\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._568:\n" - " .align 2, 0\n" - "._567:\n" - " .word gUnknown_Debug_2038A1C\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5DEC() -{ - asm( - " push {r4, lr}\n" - " add sp, sp, #0xfffffffc\n" - " mov r0, #0x0\n" - " str r0, [sp]\n" - " ldr r4, ._569\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0x6c\n" - " mov r1, #0x19\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " mov r1, #0xd\n" - " mov r2, sp\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " mov r1, #0xe\n" - " mov r2, sp\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " mov r1, #0xf\n" - " mov r2, sp\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " mov r1, #0x10\n" - " mov r2, sp\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " bl CalculateMonStats\n" - " ldr r0, [r4]\n" - " bl GiveMonInitialMoveset\n" - " ldr r0, [r4]\n" - " mov r1, #0x38\n" - " bl GetMonData\n" - " add r1, r0, #0\n" - " ldr r0, [r4]\n" - " str r1, [r0, #0x68]\n" - " mov r1, #0xd\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0x80\n" - " str r2, [r1]\n" - " mov r1, #0xe\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0x84\n" - " str r2, [r1]\n" - " mov r1, #0xf\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0x88\n" - " str r2, [r1]\n" - " mov r1, #0x10\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0x8c\n" - " str r2, [r1]\n" - " mov r1, #0x3a\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf0\n" - " str r2, [r1]\n" - " mov r1, #0x3b\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf4\n" - " str r2, [r1]\n" - " mov r1, #0x3c\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf8\n" - " str r2, [r1]\n" - " mov r1, #0x3d\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xfc\n" - " str r2, [r1]\n" - " mov r1, #0x3e\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " mov r3, #0x80\n" - " lsl r3, r3, #0x1\n" - " add r1, r0, r3\n" - " str r2, [r1]\n" - " mov r1, #0x3f\n" - " bl GetMonData\n" - " ldr r1, [r4]\n" - " mov r2, #0x82\n" - " lsl r2, r2, #0x1\n" - " add r1, r1, r2\n" - " str r0, [r1]\n" - " add sp, sp, #0x4\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._570:\n" - " .align 2, 0\n" - "._569:\n" - " .word gUnknown_Debug_2038A1C\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5EF4() -{ - asm( - " push {r4, lr}\n" - " ldr r4, ._571\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0x98\n" - " mov r1, #0x27\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0x9c\n" - " mov r1, #0x1a\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xa0\n" - " mov r1, #0x28\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xa4\n" - " mov r1, #0x1b\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xa8\n" - " mov r1, #0x29\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xac\n" - " mov r1, #0x1c\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xb0\n" - " mov r1, #0x2a\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xb4\n" - " mov r1, #0x1d\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xb8\n" - " mov r1, #0x2b\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xbc\n" - " mov r1, #0x1e\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xc0\n" - " mov r1, #0x2c\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xc4\n" - " mov r1, #0x1f\n" - " bl SetMonData\n" - " ldr r0, [r4]\n" - " bl CalculateMonStats\n" - " ldr r0, [r4]\n" - " mov r1, #0x3a\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf0\n" - " str r2, [r1]\n" - " mov r1, #0x3b\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf4\n" - " str r2, [r1]\n" - " mov r1, #0x3c\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xf8\n" - " str r2, [r1]\n" - " mov r1, #0x3d\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xfc\n" - " str r2, [r1]\n" - " mov r1, #0x3e\n" - " bl GetMonData\n" - " add r2, r0, #0\n" - " ldr r0, [r4]\n" - " mov r3, #0x80\n" - " lsl r3, r3, #0x1\n" - " add r1, r0, r3\n" - " str r2, [r1]\n" - " mov r1, #0x3f\n" - " bl GetMonData\n" - " ldr r1, [r4]\n" - " mov r2, #0x82\n" - " lsl r2, r2, #0x1\n" - " add r1, r1, r2\n" - " str r0, [r1]\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "._572:\n" - " .align 2, 0\n" - "._571:\n" - " .word gUnknown_Debug_2038A1C\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C5FFC() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " add sp, sp, #0xffffffe0\n" - " ldr r1, ._578\n" - " add r0, sp, #0x10\n" - " mov r2, #0x4\n" - " bl memcpy\n" - " add r7, sp, #0x14\n" - " ldr r1, ._578 + 4\n" - " add r0, r7, #0\n" - " mov r2, #0x8\n" - " bl memcpy\n" - " ldr r5, ._578 + 8\n" - " ldr r2, [r5]\n" - " add r0, r2, #0\n" - " add r0, r0, #0x98\n" - " ldr r4, [r0]\n" - " mov r1, #0x1f\n" - " and r4, r4, r1\n" - " add r0, r0, #0x8\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x5\n" - " orr r4, r4, r0\n" - " add r0, r2, #0\n" - " add r0, r0, #0xa8\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0xa\n" - " orr r4, r4, r0\n" - " add r0, r2, #0\n" - " add r0, r0, #0xb0\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0xf\n" - " orr r4, r4, r0\n" - " add r0, r2, #0\n" - " add r0, r0, #0xb8\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x14\n" - " orr r4, r4, r0\n" - " add r0, r2, #0\n" - " add r0, r0, #0xc0\n" - " ldr r0, [r0]\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x19\n" - " orr r4, r4, r0\n" - " ldr r0, [r2, #0x64]\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl NationalPokedexNumToSpecies\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x10\n" - " lsr r1, r1, #0x10\n" - " ldr r0, [r5]\n" - " ldr r2, [r0, #0x68]\n" - " lsl r2, r2, #0x18\n" - " lsr r2, r2, #0x18\n" - " lsl r4, r4, #0x18\n" - " lsr r4, r4, #0x18\n" - " mov r6, #0x1\n" - " str r6, [sp]\n" - " ldr r3, [r0, #0x74]\n" - " str r3, [sp, #0x4]\n" - " str r6, [sp, #0x8]\n" - " ldr r3, [r0, #0x70]\n" - " str r3, [sp, #0xc]\n" - " add r3, r4, #0\n" - " bl CreateMon\n" - " ldr r2, [r5]\n" - " add r0, r2, #0\n" - " add r0, r0, #0x80\n" - " ldr r0, [r0]\n" - " cmp r0, #0\n" - " beq ._573 @cond_branch\n" - " lsl r1, r0, #0x10\n" - " lsr r1, r1, #0x10\n" - " add r0, r2, #0\n" - " mov r2, #0x0\n" - " bl SetMonMoveSlot\n" - "._573:\n" - " ldr r2, [r5]\n" - " add r0, r2, #0\n" - " add r0, r0, #0x84\n" - " ldr r0, [r0]\n" - " cmp r0, #0\n" - " beq ._574 @cond_branch\n" - " lsl r1, r0, #0x10\n" - " lsr r1, r1, #0x10\n" - " add r0, r2, #0\n" - " mov r2, #0x1\n" - " bl SetMonMoveSlot\n" - "._574:\n" - " ldr r2, [r5]\n" - " add r0, r2, #0\n" - " add r0, r0, #0x88\n" - " ldr r0, [r0]\n" - " cmp r0, #0\n" - " beq ._575 @cond_branch\n" - " lsl r1, r0, #0x10\n" - " lsr r1, r1, #0x10\n" - " add r0, r2, #0\n" - " mov r2, #0x2\n" - " bl SetMonMoveSlot\n" - "._575:\n" - " ldr r2, [r5]\n" - " add r0, r2, #0\n" - " add r0, r0, #0x8c\n" - " ldr r0, [r0]\n" - " cmp r0, #0\n" - " beq ._576 @cond_branch\n" - " lsl r1, r0, #0x10\n" - " lsr r1, r1, #0x10\n" - " add r0, r2, #0\n" - " mov r2, #0x3\n" - " bl SetMonMoveSlot\n" - "._576:\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0x6c\n" - " mov r1, #0x19\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0x98\n" - " mov r1, #0x27\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0x9c\n" - " mov r1, #0x1a\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xa0\n" - " mov r1, #0x28\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xa4\n" - " mov r1, #0x1b\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xa8\n" - " mov r1, #0x29\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xac\n" - " mov r1, #0x1c\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xb0\n" - " mov r1, #0x2a\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xb4\n" - " mov r1, #0x1d\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xb8\n" - " mov r1, #0x2b\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xbc\n" - " mov r1, #0x1e\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xc0\n" - " mov r1, #0x2c\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xc4\n" - " mov r1, #0x1f\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xc8\n" - " mov r1, #0x16\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xcc\n" - " mov r1, #0x17\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xd0\n" - " mov r1, #0x18\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xd4\n" - " mov r1, #0x21\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xd8\n" - " mov r1, #0x2f\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xdc\n" - " mov r1, #0x30\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xe0\n" - " mov r1, #0x20\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xe4\n" - " mov r1, #0x22\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0x90\n" - " mov r1, #0xc\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0x94\n" - " mov r1, #0x2e\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r1, r0, #0\n" - " add r1, r1, #0xec\n" - " ldr r2, [r1]\n" - " lsl r2, r2, #0x3\n" - " ldr r1, ._578 + 12\n" - " add r2, r2, r1\n" - " mov r1, #0x37\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " add r2, r0, #0\n" - " add r2, r2, #0xe8\n" - " mov r1, #0x2d\n" - " bl SetMonData\n" - " ldr r1, [r5]\n" - " add r0, r1, #0\n" - " add r0, r0, #0xe8\n" - " ldr r0, [r0]\n" - " cmp r0, #0\n" - " beq ._577 @cond_branch\n" - " add r0, r1, #0\n" - " mov r1, #0x2\n" - " add r2, sp, #0x10\n" - " bl SetMonData\n" - " add r2, sp, #0x1c\n" - " strb r6, [r2]\n" - " ldr r0, [r5]\n" - " mov r1, #0x3\n" - " bl SetMonData\n" - "._577:\n" - " ldr r0, [r5]\n" - " mov r1, #0x7\n" - " add r2, r7, #0\n" - " bl SetMonData\n" - " mov r2, sp\n" - " add r2, r2, #0x1e\n" - " mov r0, #0xff\n" - " strh r0, [r2]\n" - " ldr r0, [r5]\n" - " mov r1, #0x23\n" - " bl SetMonData\n" - " ldr r0, [r5]\n" - " bl CalculateMonStats\n" - " add sp, sp, #0x20\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._579:\n" - " .align 2, 0\n" - "._578:\n" - " .word gUnknown_Debug_083F8758\n" - " .word gUnknown_Debug_083F875C\n" - " .word gUnknown_Debug_2038A1C\n" - " .word gUnknown_Debug_083F86E8+0x4\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C627C() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add sp, sp, #0xfffffff8\n" - " lsl r0, r0, #0x18\n" - " lsr r4, r0, #0x18\n" - " add r6, r4, #0\n" - " ldr r1, ._584\n" - " mov r0, sp\n" - " mov r2, #0x2\n" - " bl memcpy\n" - " add r5, sp, #0x4\n" - " ldr r1, ._584 + 4\n" - " add r0, r5, #0\n" - " mov r2, #0x2\n" - " bl memcpy\n" - " cmp r4, #0x1\n" - " beq ._580 @cond_branch\n" - " cmp r4, #0x1\n" - " bgt ._581 @cond_branch\n" - " cmp r4, #0\n" - " beq ._582 @cond_branch\n" - " b ._595\n" - "._585:\n" - " .align 2, 0\n" - "._584:\n" - " .word gUnknown_Debug_083F7FD4\n" - " .word gUnknown_Debug_083F8764\n" - "._581:\n" - " cmp r6, #0x2\n" - " beq ._586 @cond_branch\n" - " b ._595\n" - "._582:\n" - " ldr r0, ._589\n" - " ldr r0, [r0]\n" - " ldr r1, ._589 + 4\n" - " add r0, r0, r1\n" - " b ._588\n" - "._590:\n" - " .align 2, 0\n" - "._589:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - "._580:\n" - " ldr r4, ._593\n" - " ldr r3, [r4]\n" - " ldr r1, ._593 + 4\n" - " add r0, r3, r1\n" - " ldrb r2, [r0]\n" - " ldr r1, ._593 + 8\n" - " mov r6, #0xb4\n" - " lsl r6, r6, #0x1\n" - " add r0, r3, r6\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldrb r0, [r0, #0x4]\n" - " sub r0, r0, #0x1\n" - " cmp r2, r0\n" - " bge ._595 @cond_branch\n" - " lsl r2, r2, #0x19\n" - " mov r0, #0xa0\n" - " lsl r0, r0, #0x13\n" - " add r2, r2, r0\n" - " lsr r2, r2, #0x18\n" - " add r0, r5, #0\n" - " mov r1, #0x1\n" - " bl Menu_PrintText\n" - " ldr r0, [r4]\n" - " ldr r2, ._593 + 4\n" - " add r1, r0, r2\n" - " ldrb r0, [r1]\n" - " add r0, r0, #0x1\n" - " strb r0, [r1]\n" - " ldr r0, [r4]\n" - " add r0, r0, r2\n" - "._588:\n" - " ldrb r2, [r0]\n" - " lsl r2, r2, #0x19\n" - " mov r6, #0xa0\n" - " lsl r6, r6, #0x13\n" - " add r2, r2, r6\n" - " lsr r2, r2, #0x18\n" - " mov r0, sp\n" - " mov r1, #0x1\n" - " bl Menu_PrintText\n" - " b ._595\n" - "._594:\n" - " .align 2, 0\n" - "._593:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - " .word gUnknown_Debug_083F8698\n" - "._586:\n" - " ldr r4, ._596\n" - " ldr r0, [r4]\n" - " ldr r2, ._596 + 4\n" - " add r1, r0, r2\n" - " ldrb r0, [r1]\n" - " cmp r0, #0\n" - " beq ._595 @cond_branch\n" - " add r2, r0, #0\n" - " lsl r2, r2, #0x19\n" - " mov r6, #0xa0\n" - " lsl r6, r6, #0x13\n" - " add r2, r2, r6\n" - " lsr r2, r2, #0x18\n" - " add r0, r5, #0\n" - " mov r1, #0x1\n" - " bl Menu_PrintText\n" - " ldr r0, [r4]\n" - " ldr r2, ._596 + 4\n" - " add r1, r0, r2\n" - " ldrb r0, [r1]\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1]\n" - " ldr r0, [r4]\n" - " add r0, r0, r2\n" - " ldrb r2, [r0]\n" - " lsl r2, r2, #0x19\n" - " add r2, r2, r6\n" - " lsr r2, r2, #0x18\n" - " mov r0, sp\n" - " mov r1, #0x1\n" - " bl Menu_PrintText\n" - "._595:\n" - " add sp, sp, #0x8\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._597:\n" - " .align 2, 0\n" - "._596:\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C6384() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r9\n" - " mov r6, r8\n" - " push {r6, r7}\n" - " mov r0, #0x0\n" - " mov r1, #0x4\n" - " mov r2, #0x1d\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r5, #0x0\n" - " ldr r3, ._600\n" - " ldr r1, ._600 + 4\n" - " ldr r0, [r1]\n" - " mov r2, #0xb4\n" - " lsl r2, r2, #0x1\n" - " add r0, r0, r2\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r3\n" - " ldr r0, [r0]\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " beq ._598 @cond_branch\n" - " add r4, r1, #0\n" - " ldr r0, ._600 + 8\n" - " mov r9, r0\n" - " mov r8, r3\n" - " add r7, r2, #0\n" - " mov r6, #0x1\n" - "._599:\n" - " ldr r0, [r4]\n" - " add r0, r0, r9\n" - " mov r1, #0xfc\n" - " strb r1, [r0]\n" - " ldr r0, [r4]\n" - " add r1, r1, #0x70\n" - " add r0, r0, r1\n" - " strb r6, [r0]\n" - " ldr r0, [r4]\n" - " ldr r2, ._600 + 12\n" - " add r0, r0, r2\n" - " strb r6, [r0]\n" - " ldr r1, [r4]\n" - " add r2, r2, #0x1\n" - " add r0, r1, r2\n" - " add r1, r1, r7\n" - " ldrb r1, [r1]\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r8\n" - " ldr r1, [r1]\n" - " add r1, r1, r5\n" - " ldrb r1, [r1]\n" - " mov r2, #0x1\n" - " bl debug_80C5738\n" - " ldr r0, [r4]\n" - " add r0, r0, r9\n" - " lsl r2, r5, #0x19\n" - " mov r1, #0xa0\n" - " lsl r1, r1, #0x13\n" - " add r2, r2, r1\n" - " lsr r2, r2, #0x18\n" - " mov r1, #0x2\n" - " bl Menu_PrintText\n" - " add r0, r5, #1\n" - " lsl r0, r0, #0x10\n" - " lsr r5, r0, #0x10\n" - " ldr r0, [r4]\n" - " add r0, r0, r7\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r8\n" - " ldr r0, [r0]\n" - " add r0, r0, r5\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " bne ._599 @cond_branch\n" - "._598:\n" - " pop {r3, r4}\n" - " mov r8, r3\n" - " mov r9, r4\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._601:\n" - " .align 2, 0\n" - "._600:\n" - " .word gUnknown_Debug_083F8698\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x16b\n" - " .word 0x16d\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C643C() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r8\n" - " push {r7}\n" - " mov r0, #0x2\n" - " mov r1, #0x5\n" - " mov r2, #0x1c\n" - " mov r3, #0x12\n" - " bl Menu_BlankWindowRect\n" - " mov r5, #0x0\n" - " ldr r6, ._605\n" - " ldr r1, ._605 + 4\n" - " ldr r0, [r1]\n" - " mov r3, #0xb4\n" - " lsl r3, r3, #0x1\n" - " add r0, r0, r3\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r6\n" - " ldr r0, [r0]\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " beq ._602 @cond_branch\n" - " add r4, r1, #0\n" - " mov r0, #0x1\n" - " mov r8, r0\n" - "._607:\n" - " ldr r0, [r4]\n" - " ldr r7, ._605 + 8\n" - " add r2, r0, r7\n" - " mov r0, #0xfc\n" - " strb r0, [r2]\n" - " ldr r0, [r4]\n" - " mov r2, #0xb6\n" - " lsl r2, r2, #0x1\n" - " add r0, r0, r2\n" - " mov r7, r8\n" - " strb r7, [r0]\n" - " ldr r2, [r4]\n" - " ldr r7, ._605 + 12\n" - " add r0, r2, r7\n" - " ldrb r0, [r0]\n" - " cmp r5, r0\n" - " bne ._603 @cond_branch\n" - " ldr r0, ._605 + 16\n" - " add r2, r2, r0\n" - " mov r0, #0x2\n" - " strb r0, [r2]\n" - " ldr r1, [r1]\n" - " mov r2, #0xb7\n" - " lsl r2, r2, #0x1\n" - " add r0, r1, r2\n" - " add r1, r1, r3\n" - " ldrb r1, [r1]\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r6\n" - " ldr r1, [r1]\n" - " add r1, r1, r5\n" - " ldrb r1, [r1]\n" - " mov r2, #0x2\n" - " bl debug_80C5738\n" - " b ._604\n" - "._606:\n" - " .align 2, 0\n" - "._605:\n" - " .word gUnknown_Debug_083F8698\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x16b\n" - " .word 0x169\n" - " .word 0x16d\n" - "._603:\n" - " ldr r3, ._608\n" - " add r0, r2, r3\n" - " mov r7, r8\n" - " strb r7, [r0]\n" - " ldr r1, [r1]\n" - " mov r2, #0xb7\n" - " lsl r2, r2, #0x1\n" - " add r0, r1, r2\n" - " ldr r2, ._608 + 4\n" - " sub r3, r3, #0x5\n" - " add r1, r1, r3\n" - " ldrb r1, [r1]\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r2\n" - " ldr r1, [r1]\n" - " add r1, r1, r5\n" - " ldrb r1, [r1]\n" - " mov r2, #0x1\n" - " bl debug_80C5738\n" - "._604:\n" - " ldr r0, [r4]\n" - " ldr r7, ._608 + 8\n" - " add r0, r0, r7\n" - " lsl r2, r5, #0x19\n" - " mov r1, #0xa0\n" - " lsl r1, r1, #0x13\n" - " add r2, r2, r1\n" - " lsr r2, r2, #0x18\n" - " mov r1, #0x2\n" - " bl Menu_PrintText\n" - " add r0, r5, #1\n" - " lsl r0, r0, #0x10\n" - " lsr r5, r0, #0x10\n" - " ldr r6, ._608 + 4\n" - " add r1, r4, #0\n" - " ldr r0, [r4]\n" - " mov r3, #0xb4\n" - " lsl r3, r3, #0x1\n" - " add r0, r0, r3\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r6\n" - " ldr r0, [r0]\n" - " add r0, r0, r5\n" - " ldrb r0, [r0]\n" - " cmp r0, #0xff\n" - " bne ._607 @cond_branch\n" - "._602:\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._609:\n" - " .align 2, 0\n" - "._608:\n" - " .word 0x16d\n" - " .word gUnknown_Debug_083F8698\n" - " .word 0x16b\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C6544() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r9\n" - " mov r6, r8\n" - " push {r6, r7}\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " mov r9, r0\n" - " ldr r0, ._614\n" - " mov r8, r0\n" - " ldr r6, ._614 + 4\n" - " ldr r1, [r6]\n" - " mov r5, #0xb4\n" - " lsl r5, r5, #0x1\n" - " add r0, r1, r5\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r8\n" - " ldr r4, ._614 + 8\n" - " add r1, r1, r4\n" - " ldrb r1, [r1]\n" - " ldr r0, [r0]\n" - " add r0, r0, r1\n" - " ldrb r0, [r0]\n" - " bl debug_80C5B60\n" - " add r7, r0, #0\n" - " ldr r2, ._614 + 12\n" - " ldr r3, [r6]\n" - " add r5, r3, r5\n" - " ldrb r0, [r5]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r8\n" - " add r4, r3, r4\n" - " ldrb r1, [r4]\n" - " ldr r0, [r0]\n" - " add r0, r0, r1\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r2, r2, #0x4\n" - " add r0, r0, r2\n" - " ldr r1, [r0]\n" - " ldr r5, [r1]\n" - " ldr r4, [r1, #0x4]\n" - " ldr r2, ._614 + 16\n" - " mov r6, #0xb5\n" - " lsl r6, r6, #0x1\n" - " add r0, r3, r6\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r2\n" - " ldr r3, [r0]\n" - " ldrb r0, [r1, #0x8]\n" - " cmp r0, #0\n" - " bne ._623 @cond_branch\n" - " mov r0, r9\n" - " cmp r0, #0x1\n" - " beq ._611 @cond_branch\n" - " cmp r0, #0x2\n" - " beq ._612 @cond_branch\n" - " b ._623\n" - "._615:\n" - " .align 2, 0\n" - "._614:\n" - " .word gUnknown_Debug_083F8698\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - " .word gUnknown_Debug_083F8554\n" - " .word gUnknown_Debug_083F8768\n" - "._611:\n" - " sub r0, r4, r3\n" - " cmp r7, r0\n" - " bcs ._616 @cond_branch\n" - " add r7, r7, r3\n" - " b ._623\n" - "._616:\n" - " cmp r7, r4\n" - " bcc ._622 @cond_branch\n" - " b ._619\n" - "._612:\n" - " add r0, r5, r3\n" - " cmp r7, r0\n" - " bls ._620 @cond_branch\n" - " sub r7, r7, r3\n" - " b ._623\n" - "._620:\n" - " cmp r7, r5\n" - " bls ._622 @cond_branch\n" - "._619:\n" - " add r7, r5, #0\n" - " b ._623\n" - "._622:\n" - " add r7, r4, #0\n" - "._623:\n" - " ldr r1, ._624\n" - " ldr r0, ._624 + 4\n" - " ldr r2, [r0]\n" - " mov r3, #0xb4\n" - " lsl r3, r3, #0x1\n" - " add r0, r2, r3\n" - " ldrb r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r6, ._624 + 8\n" - " add r1, r2, r6\n" - " ldrb r1, [r1]\n" - " ldr r0, [r0]\n" - " add r0, r0, r1\n" - " ldrb r1, [r0]\n" - " add r0, r7, #0\n" - " bl debug_80C5B74\n" - " pop {r3, r4}\n" - " mov r8, r3\n" - " mov r9, r4\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._625:\n" - " .align 2, 0\n" - "._624:\n" - " .word gUnknown_Debug_083F8698\n" - " .word gUnknown_Debug_2038A1C\n" - " .word 0x169\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C6630() -{ - asm( - " push {r4, r5, lr}\n" - " add r4, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " lsl r2, r2, #0x18\n" - " lsr r2, r2, #0x18\n" - " lsl r3, r3, #0x18\n" - " lsr r3, r3, #0x18\n" - " mov r0, #0xfc\n" - " strb r0, [r4]\n" - " add r4, r4, #0x1\n" - " mov r0, #0x1\n" - " strb r0, [r4]\n" - " add r4, r4, #0x1\n" - " cmp r2, #0x2\n" - " bne ._626 @cond_branch\n" - " ldr r0, ._629\n" - " ldr r0, [r0]\n" - " mov r5, #0xb5\n" - " lsl r5, r5, #0x1\n" - " add r0, r0, r5\n" - " ldrb r0, [r0]\n" - " cmp r3, r0\n" - " beq ._627 @cond_branch\n" - " strb r2, [r4]\n" - " b ._628\n" - "._630:\n" - " .align 2, 0\n" - "._629:\n" - " .word gUnknown_Debug_2038A1C\n" - "._627:\n" - " mov r0, #0x4\n" - "._626:\n" - " strb r0, [r4]\n" - "._628:\n" - " add r0, r1, #0\n" - " add r0, r0, #0xa1\n" - " strb r0, [r4, #0x1]\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C6678() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r9\n" - " mov r6, r8\n" - " push {r6, r7}\n" - " mov r9, r0\n" - " add r6, r1, #0\n" - " lsl r2, r2, #0x18\n" - " lsr r2, r2, #0x18\n" - " lsl r3, r3, #0x18\n" - " lsr r3, r3, #0x18\n" - " mov r8, r3\n" - " mov r7, #0x0\n" - " sub r0, r2, #1\n" - " cmp r0, #0x9\n" - " bhi ._644 @cond_branch\n" - " lsl r0, r0, #0x2\n" - " ldr r1, ._633\n" - " add r0, r0, r1\n" - " ldr r0, [r0]\n" - " mov pc, r0\n" - "._634:\n" - " .align 2, 0\n" - "._633:\n" - " .word ._632\n" - "._632:\n" - " .word ._635\n" - " .word ._636\n" - " .word ._637\n" - " .word ._638\n" - " .word ._639\n" - " .word ._640\n" - " .word ._641\n" - " .word ._642\n" - " .word ._643\n" - " .word ._644\n" - "._644:\n" - " mov r0, r9\n" - " add r4, r0, r7\n" - " ldr r5, ._645\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x9\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._643:\n" - " mov r1, r9\n" - " add r4, r1, r7\n" - " ldr r5, ._645 + 4\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x8\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._642:\n" - " mov r0, r9\n" - " add r4, r0, r7\n" - " ldr r5, ._645 + 8\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x7\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._641:\n" - " mov r1, r9\n" - " add r4, r1, r7\n" - " ldr r5, ._645 + 12\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x6\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._640:\n" - " mov r0, r9\n" - " add r4, r0, r7\n" - " ldr r5, ._645 + 16\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x5\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._639:\n" - " mov r1, r9\n" - " add r4, r1, r7\n" - " ldr r5, ._645 + 20\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x4\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._638:\n" - " mov r0, r9\n" - " add r4, r0, r7\n" - " mov r5, #0xfa\n" - " lsl r5, r5, #0x2\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x3\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " add r1, r5, #0\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._637:\n" - " mov r1, r9\n" - " add r4, r1, r7\n" - " add r0, r6, #0\n" - " mov r1, #0x64\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x2\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " mov r1, #0x64\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._636:\n" - " mov r0, r9\n" - " add r4, r0, r7\n" - " add r0, r6, #0\n" - " mov r1, #0xa\n" - " bl __udivsi3\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " add r0, r4, #0\n" - " mov r2, r8\n" - " mov r3, #0x1\n" - " bl debug_80C6630\n" - " add r0, r6, #0\n" - " mov r1, #0xa\n" - " bl __umodsi3\n" - " add r6, r0, #0\n" - " add r0, r7, #4\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - "._635:\n" - " mov r1, r9\n" - " add r0, r1, r7\n" - " lsl r1, r6, #0x18\n" - " lsr r1, r1, #0x18\n" - " mov r2, r8\n" - " mov r3, #0x0\n" - " bl debug_80C6630\n" - " pop {r3, r4}\n" - " mov r8, r3\n" - " mov r9, r4\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._646:\n" - " .align 2, 0\n" - "._645:\n" - " .word 0x3b9aca00\n" - " .word 0x5f5e100\n" - " .word 0x989680\n" - " .word 0xf4240\n" - " .word 0x186a0\n" - " .word 0x2710\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C689C() -{ - asm( - " push {r4, r5, lr}\n" - " add r5, r0, #0\n" - " add r4, r1, #0\n" - " lsl r2, r2, #0x18\n" - " lsr r2, r2, #0x18\n" - " mov r3, #0x0\n" - " ldrb r0, [r4]\n" - " b ._647\n" - "._649:\n" - " add r1, r5, r3\n" - " add r0, r4, r3\n" - " ldrb r0, [r0]\n" - " strb r0, [r1]\n" - " add r0, r3, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r3, r0, #0x18\n" - " add r0, r4, r3\n" - " ldrb r0, [r0]\n" - "._647:\n" - " cmp r0, #0xff\n" - " beq ._648 @cond_branch\n" - " cmp r3, r2\n" - " bcc ._649 @cond_branch\n" - "._648:\n" - " pop {r4, r5}\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C68CC() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " add sp, sp, #0xfffffff8\n" - " lsl r0, r0, #0x10\n" - " lsr r4, r0, #0x10\n" - " lsl r1, r1, #0x18\n" - " lsr r6, r1, #0x18\n" - " lsl r2, r2, #0x18\n" - " lsr r5, r2, #0x18\n" - " lsl r3, r3, #0x18\n" - " lsr r3, r3, #0x18\n" - " mov r2, #0x0\n" - " mov r1, #0x0\n" - "._650:\n" - " mov r7, sp\n" - " add r0, r7, r2\n" - " strb r1, [r0]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x3\n" - " bls ._650 @cond_branch\n" - " mov r1, sp\n" - " mov r0, #0xff\n" - " strb r0, [r1, #0x4]\n" - " cmp r3, #0x2\n" - " beq ._651 @cond_branch\n" - " cmp r3, #0x2\n" - " bgt ._652 @cond_branch\n" - " cmp r3, #0x1\n" - " beq ._653 @cond_branch\n" - " b ._654\n" - "._652:\n" - " cmp r3, #0x3\n" - " beq ._655 @cond_branch\n" - "._654:\n" - " mov r1, sp\n" - " lsr r0, r4, #0xc\n" - " strb r0, [r1]\n" - "._655:\n" - " mov r1, sp\n" - " mov r0, #0xf0\n" - " lsl r0, r0, #0x4\n" - " and r0, r0, r4\n" - " lsr r0, r0, #0x8\n" - " strb r0, [r1, #0x1]\n" - "._651:\n" - " mov r1, sp\n" - " mov r0, #0xf0\n" - " and r0, r0, r4\n" - " lsr r0, r0, #0x4\n" - " strb r0, [r1, #0x2]\n" - "._653:\n" - " mov r2, sp\n" - " mov r1, #0xf\n" - " add r0, r4, #0\n" - " and r0, r0, r1\n" - " strb r0, [r2, #0x3]\n" - " mov r2, #0x0\n" - "._658:\n" - " mov r0, sp\n" - " add r1, r0, r2\n" - " ldrb r0, [r1]\n" - " cmp r0, #0x9\n" - " bhi ._656 @cond_branch\n" - " add r0, r0, #0xa1\n" - " b ._657\n" - "._656:\n" - " add r0, r0, #0xb1\n" - "._657:\n" - " strb r0, [r1]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x3\n" - " bls ._658 @cond_branch\n" - " mov r0, #0x4\n" - " sub r0, r0, r3\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " add r0, r0, sp\n" - " add r1, r6, #0\n" - " add r2, r5, #0\n" - " bl Menu_PrintText\n" - " add sp, sp, #0x8\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void InitSeePokemonGraphics() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add sp, sp, #0xfffffff8\n" - " bl debug_80C35DC\n" - " ldr r1, ._659\n" - " ldr r2, ._659 + 4\n" - " ldr r0, ._659 + 8\n" - " str r1, [r0]\n" - " str r2, [r0, #0x4]\n" - " ldr r1, ._659 + 12\n" - " str r1, [r0, #0x8]\n" - " ldr r0, [r0, #0x8]\n" - " ldr r0, ._659 + 16\n" - " mov r1, #0x80\n" - " mov r2, #0x60\n" - " bl LoadPalette\n" - " ldr r1, ._659 + 20\n" - " add r0, sp, #0x4\n" - " strh r1, [r0]\n" - " mov r1, #0x0\n" - " mov r2, #0x2\n" - " bl LoadPalette\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " mov r5, #0x0\n" - " str r5, [sp]\n" - " mov r1, #0x0\n" - " mov r2, #0x10\n" - " mov r3, #0x0\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._659 + 24\n" - " mov r6, #0x0\n" - " strh r5, [r0]\n" - " add r0, r0, #0x4\n" - " strh r5, [r0]\n" - " sub r0, r0, #0x2\n" - " strh r5, [r0]\n" - " add r0, r0, #0x4\n" - " strh r5, [r0]\n" - " ldr r1, ._659 + 28\n" - " mov r0, #0x3f\n" - " strh r0, [r1]\n" - " add r1, r1, #0x2\n" - " mov r0, #0x1f\n" - " strh r0, [r1]\n" - " add r1, r1, #0x6\n" - " mov r0, #0xf1\n" - " strh r0, [r1]\n" - " ldr r0, ._659 + 32\n" - " strh r5, [r0]\n" - " add r1, r1, #0x4\n" - " mov r0, #0x7\n" - " strh r0, [r1]\n" - " ldr r3, ._659 + 36\n" - " ldrh r2, [r3]\n" - " strh r5, [r3]\n" - " ldr r4, ._659 + 40\n" - " ldrh r0, [r4]\n" - " mov r1, #0x1\n" - " orr r0, r0, r1\n" - " strh r0, [r4]\n" - " strh r2, [r3]\n" - " ldr r0, ._659 + 44\n" - " bl SetVBlankCallback\n" - " ldr r0, ._659 + 48\n" - " bl SetMainCallback2\n" - " bl sub_809D51C\n" - " ldr r1, ._659 + 52\n" - " ldr r2, ._659 + 56\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x2\n" - " ldr r2, ._659 + 60\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " sub r1, r1, #0xa\n" - " mov r2, #0xcd\n" - " lsl r2, r2, #0x6\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r0, ._659 + 64\n" - " mov r1, #0x0\n" - " bl CreateTask\n" - " ldr r1, ._659 + 68\n" - " ldr r0, ._659 + 72\n" - " str r0, [r1]\n" - " ldr r1, ._659 + 76\n" - " strh r1, [r0]\n" - " strb r6, [r0, #0x2]\n" - " strb r6, [r0, #0x3]\n" - " strb r6, [r0, #0x5]\n" - " strb r6, [r0, #0x7]\n" - " strb r6, [r0, #0xa]\n" - " strb r6, [r0, #0x8]\n" - " ldr r4, ._659 + 80\n" - " add r0, r4, #0\n" - " mov r1, #0x6c\n" - " mov r2, #0x74\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " ldr r6, ._659 + 84\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " strh r5, [r0, #0x2e]\n" - " mov r1, #0x0\n" - " bl StartSpriteAnim\n" - " add r0, r4, #0\n" - " mov r1, #0x6c\n" - " mov r2, #0x74\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " mov r1, #0x1\n" - " strh r1, [r0, #0x2e]\n" - " bl StartSpriteAnim\n" - " add r0, r4, #0\n" - " mov r1, #0x6c\n" - " mov r2, #0x74\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " mov r1, #0x2\n" - " strh r1, [r0, #0x2e]\n" - " bl StartSpriteAnim\n" - " add sp, sp, #0x8\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._660:\n" - " .align 2, 0\n" - "._659:\n" - " .word byte_83F88EC\n" - " .word 0x600e000\n" - " .word 0x40000d4\n" - " .word 0x80000400\n" - " .word word_83F888C\n" - " .word 0x7fff\n" - " .word 0x4000040\n" - " .word 0x4000048\n" - " .word 0x4000052\n" - " .word 0x4000208\n" - " .word 0x4000200\n" - " .word debug_80C3758+1\n" - " .word debug_80C370C+1\n" - " .word 0x4000008\n" - " .word 0x1f0b\n" - " .word 0x1e0a\n" - " .word debug_80C6B00+1\n" - " .word gUnknown_Debug_2038A20\n" - " .word +0x2018000\n" - " .word 0x115\n" - " .word gSpriteTemplate_83F8874\n" - " .word gSprites\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C6B00() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r8\n" - " push {r7}\n" - " add sp, sp, #0xffffffec\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - " ldr r1, ._666\n" - " mov r0, sp\n" - " mov r2, #0x12\n" - " bl memcpy\n" - " mov r0, #0xa\n" - " mov r1, #0x0\n" - " mov r2, #0xf\n" - " mov r3, #0x7\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, #0x0\n" - " mov r1, #0x0\n" - " mov r2, #0x9\n" - " mov r3, #0x9\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, #0x0\n" - " mov r1, #0xa\n" - " mov r2, #0x9\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, #0x10\n" - " mov r1, #0x0\n" - " mov r2, #0x1d\n" - " mov r3, #0x7\n" - " bl Menu_DrawStdWindowFrame\n" - " ldr r0, ._666 + 4\n" - " mov r1, #0x11\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " ldr r0, ._666 + 8\n" - " mov r1, #0x1b\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " ldr r0, ._666 + 12\n" - " mov r1, #0x11\n" - " mov r2, #0x5\n" - " bl Menu_PrintText\n" - " mov r0, #0xa\n" - " mov r1, #0x8\n" - " mov r2, #0x1d\n" - " mov r3, #0xc\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r2, #0x0\n" - " ldr r4, ._666 + 16\n" - " ldr r0, ._666 + 20\n" - " add r3, r0, #0\n" - "._661:\n" - " lsl r0, r2, #0x1\n" - " add r0, r0, r4\n" - " add r1, r2, r3\n" - " strh r1, [r0]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0xe\n" - " bls ._661 @cond_branch\n" - " mov r2, #0x0\n" - " ldr r5, ._666 + 24\n" - " lsl r6, r7, #0x2\n" - " mov r8, r6\n" - " ldr r4, ._666 + 28\n" - " ldr r0, ._666 + 32\n" - " add r3, r0, #0\n" - "._662:\n" - " lsl r0, r2, #0x1\n" - " add r0, r0, r4\n" - " add r1, r2, r3\n" - " strh r1, [r0]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0xe\n" - " bls ._662 @cond_branch\n" - " add r0, r5, #0\n" - " mov r1, #0x14\n" - " mov r2, #0xa\n" - " bl Menu_PrintText\n" - " mov r0, #0xa\n" - " mov r1, #0xd\n" - " mov r2, #0x1d\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r1, sp\n" - " mov r0, #0x23\n" - " strb r0, [r1]\n" - " mov r2, #0x0\n" - " ldr r4, ._666 + 36\n" - " mov r5, #0x93\n" - " lsl r5, r5, #0x8\n" - " add r3, r5, #0\n" - "._663:\n" - " lsl r1, r2, #0x1\n" - " add r1, r1, r4\n" - " mov r6, sp\n" - " add r0, r6, r2\n" - " ldrb r0, [r0]\n" - " add r0, r0, r3\n" - " strh r0, [r1]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x11\n" - " bls ._663 @cond_branch\n" - " mov r1, sp\n" - " mov r0, #0x24\n" - " strb r0, [r1]\n" - " mov r2, #0x0\n" - " ldr r5, ._666 + 40\n" - " ldr r4, ._666 + 44\n" - " mov r0, #0x93\n" - " lsl r0, r0, #0x8\n" - " add r3, r0, #0\n" - "._664:\n" - " lsl r1, r2, #0x1\n" - " add r1, r1, r4\n" - " mov r6, sp\n" - " add r0, r6, r2\n" - " ldrb r0, [r0]\n" - " add r0, r0, r3\n" - " strh r0, [r1]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x11\n" - " bls ._664 @cond_branch\n" - " mov r1, sp\n" - " mov r0, #0x25\n" - " strb r0, [r1]\n" - " mov r2, #0x0\n" - " ldr r4, ._666 + 48\n" - " mov r0, #0x93\n" - " lsl r0, r0, #0x8\n" - " add r3, r0, #0\n" - "._665:\n" - " lsl r1, r2, #0x1\n" - " add r1, r1, r4\n" - " mov r6, sp\n" - " add r0, r6, r2\n" - " ldrb r0, [r0]\n" - " add r0, r0, r3\n" - " strh r0, [r1]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x11\n" - " bls ._665 @cond_branch\n" - " add r0, r5, #0\n" - " mov r1, #0xf\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " ldr r1, ._666 + 52\n" - " ldr r2, ._666 + 56\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r5, ._666 + 60\n" - " add r0, r5, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._666 + 64\n" - " mov r6, r8\n" - " add r0, r6, r7\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._666 + 68\n" - " str r1, [r0]\n" - " add sp, sp, #0x14\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._667:\n" - " .align 2, 0\n" - "._666:\n" - " .word gUnknown_Debug_083F8815\n" - " .word gUnknown_Debug_083F87D0\n" - " .word gUnknown_Debug_083F87D8\n" - " .word gUnknown_Debug_083F87E0\n" - " .word 0x600fa56\n" - " .word 0xa311\n" - " .word gUnknown_Debug_083F87F4\n" - " .word 0x600f256\n" - " .word 0x8301\n" - " .word 0x600f396\n" - " .word gUnknown_Debug_083F8801\n" - " .word 0x600f3d6\n" - " .word 0x600f416\n" - " .word 0x4000040\n" - " .word 0x51ef\n" - " .word 0x699f\n" - " .word gTasks\n" - " .word debug_80C6CB8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C6CB8() -{ - 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, #0xfffffff4\n" - " mov sl, r0\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " mov sl, r0\n" - " ldr r5, ._668\n" - " ldr r4, [r5]\n" - " ldrh r2, [r4]\n" - " lsl r0, r2, #0x3\n" - " ldr r1, ._668 + 4\n" - " add r0, r0, r1\n" - " ldr r1, ._668 + 8\n" - " lsl r2, r2, #0x2\n" - " add r2, r2, r1\n" - " ldrb r1, [r2]\n" - " ldrb r2, [r2, #0x1]\n" - " ldr r3, ._668 + 12\n" - " mov r8, r3\n" - " ldr r6, [r3]\n" - " str r6, [sp, #0x8]\n" - " ldr r3, [r3, #0x4]\n" - " str r3, [sp]\n" - " ldrh r3, [r4]\n" - " str r3, [sp, #0x4]\n" - " add r3, r6, #0\n" - " bl DecompressPicFromTable_2\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " ldr r7, ._668 + 16\n" - " add r0, r0, r7\n" - " bl LoadCompressedObjectPalette\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " mov r1, #0x1\n" - " bl GetMonSpriteTemplate_803C56C\n" - " ldr r0, ._668 + 20\n" - " mov r1, #0x28\n" - " mov r2, #0x28\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " ldr r1, [r5]\n" - " strb r0, [r1, #0x2]\n" - " ldr r2, [r5]\n" - " ldrb r1, [r2, #0x2]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " ldr r1, ._668 + 24\n" - " add r0, r0, r1\n" - " ldr r3, ._668 + 28\n" - " mov r9, r3\n" - " str r3, [r0]\n" - " ldrb r0, [r2, #0x2]\n" - " lsl r1, r0, #0x4\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x2\n" - " ldr r6, ._668 + 32\n" - " add r1, r1, r6\n" - " ldrb r2, [r1, #0x5]\n" - " mov r6, #0xd\n" - " neg r6, r6\n" - " add r0, r6, #0\n" - " and r0, r0, r2\n" - " strb r0, [r1, #0x5]\n" - " ldr r4, [r5]\n" - " ldrh r2, [r4]\n" - " lsl r0, r2, #0x3\n" - " ldr r1, ._668 + 36\n" - " add r0, r0, r1\n" - " ldr r1, ._668 + 40\n" - " lsl r2, r2, #0x2\n" - " add r2, r2, r1\n" - " ldrb r1, [r2]\n" - " ldrb r2, [r2, #0x1]\n" - " mov r7, r8\n" - " ldr r3, [r7, #0x8]\n" - " str r3, [sp]\n" - " ldrh r3, [r4]\n" - " str r3, [sp, #0x4]\n" - " ldr r3, [sp, #0x8]\n" - " bl DecompressPicFromTable_2\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " ldr r1, ._668 + 16\n" - " add r0, r0, r1\n" - " bl LoadCompressedObjectPalette\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " mov r1, #0x2\n" - " bl GetMonSpriteTemplate_803C56C\n" - " ldr r0, ._668 + 20\n" - " mov r1, #0x28\n" - " mov r2, #0x78\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " ldr r1, [r5]\n" - " strb r0, [r1, #0x3]\n" - " ldr r2, [r5]\n" - " ldrb r1, [r2, #0x3]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " ldr r3, ._668 + 24\n" - " add r0, r0, r3\n" - " mov r7, r9\n" - " str r7, [r0]\n" - " ldrb r1, [r2, #0x3]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " ldr r1, ._668 + 32\n" - " add r0, r0, r1\n" - " ldrb r1, [r0, #0x5]\n" - " and r6, r6, r1\n" - " strb r6, [r0, #0x5]\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " ldr r1, ._668 + 44\n" - " mov r2, #0x0\n" - " str r2, [sp]\n" - " str r2, [sp, #0x4]\n" - " mov r2, #0x68\n" - " mov r3, #0x2c\n" - " bl CreateMonIcon\n" - " ldr r1, [r5]\n" - " strb r0, [r1, #0x4]\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " bl SpeciesToNationalPokedexNum\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " mov r2, #0xff\n" - " lsl r2, r2, #0x2\n" - " mov r1, #0x2\n" - " bl sub_8091738\n" - " ldr r1, ._668 + 48\n" - " ldr r3, ._668 + 52\n" - " add r0, r3, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x2\n" - " ldr r6, ._668 + 56\n" - " add r0, r6, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x3e\n" - " ldr r7, ._668 + 60\n" - " add r0, r7, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x2\n" - " ldr r2, ._668 + 64\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " mov r1, #0x11\n" - " mov r2, #0x3\n" - " bl debug_80C3800\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " mov r1, #0x1a\n" - " mov r2, #0x5\n" - " bl debug_80C376C\n" - " ldr r2, [r5]\n" - " ldrb r1, [r2, #0x2]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " ldr r3, ._668 + 32\n" - " add r0, r0, r3\n" - " ldrb r0, [r0, #0x5]\n" - " lsr r0, r0, #0x4\n" - " strb r0, [r2, #0x6]\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x6]\n" - " lsl r0, r0, #0x5\n" - " ldr r4, ._668 + 68\n" - " add r0, r0, r4\n" - " ldr r6, ._668 + 72\n" - " add r1, r4, r6\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x6]\n" - " lsl r0, r0, #0x5\n" - " add r0, r0, r4\n" - " ldr r1, ._668 + 76\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r1, ._668 + 80\n" - " mov r7, sl\n" - " lsl r0, r7, #0x2\n" - " add r0, r0, sl\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._668 + 84\n" - " str r1, [r0]\n" - " ldr r0, [r5]\n" - " mov r1, #0x0\n" - " strb r1, [r0, #0x9]\n" - " bl StopCryAndClearCrySongs\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " mov r1, #0x0\n" - " bl PlayCry1\n" - " add sp, sp, #0xc\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" - "._669:\n" - " .align 2, 0\n" - "._668:\n" - " .word gUnknown_Debug_2038A20\n" - " .word gMonFrontPicTable\n" - " .word gMonFrontPicCoords\n" - " .word gUnknown_081FAF4C\n" - " .word gMonPaletteTable\n" - " .word gUnknown_02024E8C\n" - " .word gSprites+0x1c\n" - " .word debug_69+1\n" - " .word gSprites\n" - " .word gMonBackPicTable\n" - " .word gMonBackPicCoords\n" - " .word sub_809D62C+1\n" - " .word 0x600f858\n" - " .word 0xf3fc\n" - " .word 0xf3fd\n" - " .word 0xf3fe\n" - " .word 0xf3ff\n" - " .word gPlttBufferUnfaded+0x200\n" - " .word 0xffffff00\n" - " .word gPlttBufferFaded+0x100\n" - " .word gTasks\n" - " .word debug_80C6EE8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C6EE8() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add r6, r0, #0\n" - " lsl r6, r6, #0x18\n" - " lsr r6, r6, #0x18\n" - " ldr r4, ._670\n" - " ldr r5, ._670 + 4\n" - " ldr r1, [r5]\n" - " add r1, r1, #0x10\n" - " add r0, r4, #0\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r0, ._670 + 8\n" - " add r4, r4, r0\n" - " ldr r3, [r5]\n" - " ldrb r0, [r3, #0x7]\n" - " add r0, r0, #0x81\n" - " lsl r0, r0, #0x1\n" - " add r0, r0, r4\n" - " ldrh r4, [r0]\n" - " mov r1, #0x1f\n" - " and r1, r1, r4\n" - " ldrb r2, [r3, #0xc]\n" - " mov r0, #0x20\n" - " neg r0, r0\n" - " and r0, r0, r2\n" - " orr r0, r0, r1\n" - " strb r0, [r3, #0xc]\n" - " ldr r3, [r5]\n" - " mov r1, #0xf8\n" - " lsl r1, r1, #0x2\n" - " and r1, r1, r4\n" - " ldrh r2, [r3, #0xc]\n" - " ldr r0, ._670 + 12\n" - " and r0, r0, r2\n" - " orr r0, r0, r1\n" - " strh r0, [r3, #0xc]\n" - " mov r1, #0xf8\n" - " lsl r1, r1, #0x7\n" - " and r1, r1, r4\n" - " lsr r1, r1, #0x8\n" - " ldrb r2, [r3, #0xd]\n" - " mov r0, #0x7d\n" - " neg r0, r0\n" - " and r0, r0, r2\n" - " orr r0, r0, r1\n" - " strb r0, [r3, #0xd]\n" - " ldr r2, [r5]\n" - " ldrb r1, [r2, #0xd]\n" - " mov r0, #0x7f\n" - " and r0, r0, r1\n" - " strb r0, [r2, #0xd]\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x7]\n" - " add r0, r0, #0x1\n" - " mov r1, #0xb\n" - " mov r2, #0xa\n" - " mov r3, #0x2\n" - " bl debug_80C68CC\n" - " ldr r0, ._670 + 16\n" - " mov r1, #0xd\n" - " mov r2, #0xa\n" - " bl Menu_PrintText\n" - " add r0, r4, #0\n" - " mov r1, #0xe\n" - " mov r2, #0xa\n" - " mov r3, #0x4\n" - " bl debug_80C68CC\n" - " ldr r1, ._670 + 20\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._670 + 24\n" - " str r1, [r0]\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._671:\n" - " .align 2, 0\n" - "._670:\n" - " .word gPlttBufferUnfaded+0x100\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0xffffff00\n" - " .word 0xfffffc1f\n" - " .word gUnknown_Debug_083F8813\n" - " .word gTasks\n" - " .word debug_80C6FA8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C6FA8() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r6, r0, #0x18\n" - " ldr r1, ._674\n" - " ldrh r2, [r1, #0x2e]\n" - " mov r0, #0x2\n" - " and r0, r0, r2\n" - " add r4, r1, #0\n" - " cmp r0, #0\n" - " beq ._672 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " mov r1, #0x0\n" - " str r1, [sp]\n" - " mov r2, #0x0\n" - " mov r3, #0x10\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._674 + 4\n" - " bl SetMainCallback2\n" - " ldr r1, ._674 + 8\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._674 + 12\n" - " str r1, [r0]\n" - " b ._703\n" - "._675:\n" - " .align 2, 0\n" - "._674:\n" - " .word gMain\n" - " .word debug_80C370C+1\n" - " .word gTasks\n" - " .word debug_80C373C+1\n" - "._672:\n" - " ldrh r1, [r4, #0x30]\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._676 @cond_branch\n" - " ldr r4, ._678\n" - " ldr r0, [r4]\n" - " ldrh r1, [r0]\n" - " mov r0, #0x0\n" - " b ._677\n" - "._679:\n" - " .align 2, 0\n" - "._678:\n" - " .word gUnknown_Debug_2038A20\n" - "._676:\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x2\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._680 @cond_branch\n" - " ldr r4, ._682\n" - " ldr r0, [r4]\n" - " ldrh r1, [r0]\n" - " mov r0, #0x1\n" - "._677:\n" - " bl debug_80C3878\n" - " ldr r1, [r4]\n" - " strh r0, [r1]\n" - " ldr r1, ._682 + 4\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._682 + 8\n" - " str r1, [r0]\n" - " b ._703\n" - "._683:\n" - " .align 2, 0\n" - "._682:\n" - " .word gUnknown_Debug_2038A20\n" - " .word gTasks\n" - " .word debug_80C71FC+1\n" - "._680:\n" - " mov r3, #0x1\n" - " and r3, r3, r2\n" - " cmp r3, #0\n" - " beq ._684 @cond_branch\n" - " ldr r0, ._686\n" - " ldr r1, [r0]\n" - " mov r0, #0x1\n" - " strb r0, [r1, #0x5]\n" - " ldr r1, ._686 + 4\n" - " ldr r2, ._686 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._686 + 12\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._686 + 16\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._686 + 20\n" - " str r1, [r0]\n" - " b ._703\n" - "._687:\n" - " .align 2, 0\n" - "._686:\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x4000040\n" - " .word 0x51ef\n" - " .word 0x4167\n" - " .word gTasks\n" - " .word debug_80C7294+1\n" - "._684:\n" - " mov r0, #0x10\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._689 @cond_branch\n" - " ldr r1, ._691\n" - " ldr r2, [r1]\n" - " ldrb r0, [r2, #0x7]\n" - " cmp r0, #0xd\n" - " bhi ._689 @cond_branch\n" - " lsl r0, r0, #0x1\n" - " ldr r2, ._691 + 4\n" - " add r0, r0, r2\n" - " strh r3, [r0]\n" - " ldr r1, [r1]\n" - " ldrb r0, [r1, #0x7]\n" - " add r0, r0, #0x1\n" - " strb r0, [r1, #0x7]\n" - " b ._695\n" - "._692:\n" - " .align 2, 0\n" - "._691:\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x5000102\n" - "._689:\n" - " ldrh r1, [r4, #0x30]\n" - " mov r0, #0x20\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._694 @cond_branch\n" - " ldr r2, ._696\n" - " ldr r1, [r2]\n" - " ldrb r0, [r1, #0x7]\n" - " cmp r0, #0\n" - " beq ._694 @cond_branch\n" - " lsl r0, r0, #0x1\n" - " ldr r1, ._696 + 4\n" - " add r0, r0, r1\n" - " mov r1, #0x0\n" - " strh r1, [r0]\n" - " ldr r1, [r2]\n" - " ldrb r0, [r1, #0x7]\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1, #0x7]\n" - " b ._695\n" - "._697:\n" - " .align 2, 0\n" - "._696:\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x5000102\n" - "._694:\n" - " ldrh r1, [r4, #0x2e]\n" - " mov r0, #0x8\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._698 @cond_branch\n" - " ldr r4, ._701\n" - " ldr r2, [r4]\n" - " ldrb r0, [r2, #0x9]\n" - " mov r1, #0x1\n" - " eor r0, r0, r1\n" - " strb r0, [r2, #0x9]\n" - " ldr r1, [r4]\n" - " ldrb r0, [r1, #0x9]\n" - " cmp r0, #0\n" - " beq ._699 @cond_branch\n" - " ldrh r0, [r1]\n" - " mov r1, #0x0\n" - " mov r2, #0x0\n" - " bl GetMonSpritePalFromOtIdPersonality\n" - " ldr r1, [r4]\n" - " ldrb r1, [r1, #0x6]\n" - " lsl r1, r1, #0x14\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x11\n" - " add r1, r1, r2\n" - " lsr r1, r1, #0x10\n" - " mov r2, #0x20\n" - " bl LoadCompressedPalette\n" - " b ._700\n" - "._702:\n" - " .align 2, 0\n" - "._701:\n" - " .word gUnknown_Debug_2038A20\n" - "._699:\n" - " ldrh r0, [r1]\n" - " mov r1, #0x0\n" - " mov r2, #0x9\n" - " bl GetMonSpritePalFromOtIdPersonality\n" - " ldr r1, [r4]\n" - " ldrb r1, [r1, #0x6]\n" - " lsl r1, r1, #0x14\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x11\n" - " add r1, r1, r2\n" - " lsr r1, r1, #0x10\n" - " mov r2, #0x20\n" - " bl LoadCompressedPalette\n" - "._700:\n" - " ldr r5, ._704\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x6]\n" - " lsl r0, r0, #0x5\n" - " ldr r4, ._704 + 4\n" - " add r0, r0, r4\n" - " ldr r2, ._704 + 8\n" - " add r1, r4, r2\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x6]\n" - " lsl r0, r0, #0x5\n" - " add r0, r0, r4\n" - " ldr r1, ._704 + 12\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - "._695:\n" - " ldr r1, ._704 + 16\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._704 + 20\n" - " str r1, [r0]\n" - " b ._703\n" - "._705:\n" - " .align 2, 0\n" - "._704:\n" - " .word gUnknown_Debug_2038A20\n" - " .word gPlttBufferUnfaded+0x200\n" - " .word 0xffffff00\n" - " .word gPlttBufferFaded+0x100\n" - " .word gTasks\n" - " .word debug_80C6EE8+1\n" - "._698:\n" - " mov r0, #0x4\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._706 @cond_branch\n" - " bl StopCryAndClearCrySongs\n" - " ldr r0, ._707\n" - " ldr r0, [r0]\n" - " ldrh r0, [r0]\n" - " mov r1, #0x0\n" - " bl PlayCry1\n" - "._706:\n" - " ldr r2, ._707\n" - " ldr r1, [r2]\n" - " ldrb r0, [r1, #0x8]\n" - " add r0, r0, #0x4\n" - " strb r0, [r1, #0x8]\n" - " ldr r3, [r2]\n" - " ldrb r1, [r3, #0x8]\n" - " mov r0, #0x1f\n" - " and r0, r0, r1\n" - " strb r0, [r3, #0x8]\n" - " ldr r0, [r2]\n" - " ldrb r1, [r0, #0x7]\n" - " lsl r1, r1, #0x1\n" - " ldr r2, ._707 + 4\n" - " add r1, r1, r2\n" - " ldr r2, ._707 + 8\n" - " ldrb r0, [r0, #0x8]\n" - " lsl r0, r0, #0x1\n" - " add r0, r0, r2\n" - " ldrh r0, [r0]\n" - " strh r0, [r1]\n" - "._703:\n" - " add sp, sp, #0x4\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._708:\n" - " .align 2, 0\n" - "._707:\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x5000142\n" - " .word gUnknown_Debug_083F8790\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C71FC() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add r5, r0, #0\n" - " lsl r5, r5, #0x18\n" - " lsr r5, r5, #0x18\n" - " ldr r6, ._709\n" - " ldr r4, ._709 + 4\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x2]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " ldrb r0, [r0, #0x5]\n" - " lsr r0, r0, #0x4\n" - " bl GetSpritePaletteTagByPaletteNum\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl FreeSpritePaletteByTag\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x2]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " bl DestroySprite\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x3]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " ldrb r0, [r0, #0x5]\n" - " lsr r0, r0, #0x4\n" - " bl GetSpritePaletteTagByPaletteNum\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl FreeSpritePaletteByTag\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x3]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " bl DestroySprite\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x4]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " bl sub_809D510\n" - " ldr r1, ._709 + 8\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._709 + 12\n" - " str r1, [r0]\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._710:\n" - " .align 2, 0\n" - "._709:\n" - " .word gSprites\n" - " .word gUnknown_Debug_2038A20\n" - " .word gTasks\n" - " .word debug_80C6CB8+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C7294() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - " ldr r0, ._713\n" - " ldrh r2, [r0, #0x2e]\n" - " mov r1, #0x1\n" - " and r1, r1, r2\n" - " add r3, r0, #0\n" - " cmp r1, #0\n" - " beq ._711 @cond_branch\n" - " ldr r0, ._713 + 4\n" - " ldr r1, [r0]\n" - " mov r0, #0x0\n" - " strb r0, [r1, #0x5]\n" - " ldr r1, ._713 + 8\n" - " ldr r2, ._713 + 12\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._713 + 16\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " b ._712\n" - "._714:\n" - " .align 2, 0\n" - "._713:\n" - " .word gMain\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x4000040\n" - " .word 0x51ef\n" - " .word 0x699f\n" - "._711:\n" - " mov r0, #0x2\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._715 @cond_branch\n" - " ldr r6, ._717\n" - " ldr r0, [r6]\n" - " strb r1, [r0, #0x5]\n" - " ldr r1, ._717 + 4\n" - " ldr r2, ._717 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._717 + 12\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r0, [r6]\n" - " add r0, r0, #0x10\n" - " ldr r4, ._717 + 16\n" - " add r1, r4, #0\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r0, [r6]\n" - " add r0, r0, #0x10\n" - " ldr r5, ._717 + 20\n" - " add r1, r5, #0\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r1, [r6]\n" - " add r0, r1, #0\n" - " add r0, r0, #0x10\n" - " ldrb r1, [r1, #0x6]\n" - " lsl r1, r1, #0x5\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x1\n" - " add r4, r4, r2\n" - " add r1, r1, r4\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r1, [r6]\n" - " add r0, r1, #0\n" - " add r0, r0, #0x10\n" - " ldrb r1, [r1, #0x6]\n" - " lsl r1, r1, #0x5\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x1\n" - " add r5, r5, r2\n" - " add r1, r1, r5\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - "._712:\n" - " ldr r1, ._717 + 24\n" - " lsl r0, r7, #0x2\n" - " add r0, r0, r7\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._717 + 28\n" - " str r1, [r0]\n" - " b ._754\n" - "._718:\n" - " .align 2, 0\n" - "._717:\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x4000040\n" - " .word 0x51ef\n" - " .word 0x699f\n" - " .word gPlttBufferUnfaded+0x100\n" - " .word gPlttBufferFaded+0x100\n" - " .word gTasks\n" - " .word debug_80C6EE8+1\n" - "._715:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._720 @cond_branch\n" - " ldr r0, ._722\n" - " ldr r1, [r0]\n" - " ldrb r0, [r1, #0xa]\n" - " cmp r0, #0x1\n" - " bhi ._720 @cond_branch\n" - " add r0, r0, #0x1\n" - " strb r0, [r1, #0xa]\n" - " b ._754\n" - "._723:\n" - " .align 2, 0\n" - "._722:\n" - " .word gUnknown_Debug_2038A20\n" - "._720:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._725 @cond_branch\n" - " ldr r0, ._727\n" - " ldr r1, [r0]\n" - " ldrb r0, [r1, #0xa]\n" - " cmp r0, #0\n" - " beq ._725 @cond_branch\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1, #0xa]\n" - " b ._754\n" - "._728:\n" - " .align 2, 0\n" - "._727:\n" - " .word gUnknown_Debug_2038A20\n" - "._725:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x10\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._729 @cond_branch\n" - " ldr r0, ._734\n" - " ldr r2, [r0]\n" - " ldrb r0, [r2, #0xa]\n" - " cmp r0, #0x1\n" - " beq ._730 @cond_branch\n" - " cmp r0, #0x1\n" - " bgt ._731 @cond_branch\n" - " cmp r0, #0\n" - " beq ._732 @cond_branch\n" - " b ._754\n" - "._735:\n" - " .align 2, 0\n" - "._734:\n" - " .word gUnknown_Debug_2038A20\n" - "._731:\n" - " cmp r0, #0x2\n" - " beq ._736 @cond_branch\n" - " b ._754\n" - "._732:\n" - " ldrb r3, [r2, #0xc]\n" - " lsl r1, r3, #0x1b\n" - " lsr r0, r1, #0x1b\n" - " cmp r0, #0x1e\n" - " bhi ._761 @cond_branch\n" - " add r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " mov r1, #0x20\n" - " neg r1, r1\n" - " and r1, r1, r3\n" - " orr r1, r1, r0\n" - " strb r1, [r2, #0xc]\n" - " b ._761\n" - "._730:\n" - " ldrh r3, [r2, #0xc]\n" - " lsl r1, r3, #0x16\n" - " lsr r0, r1, #0x1b\n" - " cmp r0, #0x1e\n" - " bhi ._761 @cond_branch\n" - " add r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x5\n" - " ldr r1, ._742\n" - " and r1, r1, r3\n" - " orr r1, r1, r0\n" - " strh r1, [r2, #0xc]\n" - " b ._761\n" - "._743:\n" - " .align 2, 0\n" - "._742:\n" - " .word 0xfffffc1f\n" - "._736:\n" - " ldrb r3, [r2, #0xd]\n" - " lsl r1, r3, #0x19\n" - " lsr r0, r1, #0x1b\n" - " cmp r0, #0x1e\n" - " bhi ._761 @cond_branch\n" - " add r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " mov r1, #0x7d\n" - " neg r1, r1\n" - " and r1, r1, r3\n" - " orr r1, r1, r0\n" - " strb r1, [r2, #0xd]\n" - " b ._761\n" - "._729:\n" - " mov r0, #0x20\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._754 @cond_branch\n" - " ldr r0, ._751\n" - " ldr r3, [r0]\n" - " ldrb r0, [r3, #0xa]\n" - " cmp r0, #0x1\n" - " beq ._747 @cond_branch\n" - " cmp r0, #0x1\n" - " bgt ._748 @cond_branch\n" - " cmp r0, #0\n" - " beq ._749 @cond_branch\n" - " b ._754\n" - "._752:\n" - " .align 2, 0\n" - "._751:\n" - " .word gUnknown_Debug_2038A20\n" - "._748:\n" - " cmp r0, #0x2\n" - " beq ._753 @cond_branch\n" - " b ._754\n" - "._749:\n" - " ldrb r2, [r3, #0xc]\n" - " mov r0, #0x1f\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._761 @cond_branch\n" - " lsl r0, r2, #0x1b\n" - " lsr r0, r0, #0x1b\n" - " sub r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " mov r1, #0x20\n" - " neg r1, r1\n" - " and r1, r1, r2\n" - " orr r1, r1, r0\n" - " strb r1, [r3, #0xc]\n" - " b ._761\n" - "._747:\n" - " ldrh r2, [r3, #0xc]\n" - " mov r0, #0xf8\n" - " lsl r0, r0, #0x2\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._761 @cond_branch\n" - " lsl r0, r2, #0x16\n" - " lsr r0, r0, #0x1b\n" - " sub r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x5\n" - " ldr r1, ._759\n" - " and r1, r1, r2\n" - " orr r1, r1, r0\n" - " strh r1, [r3, #0xc]\n" - " b ._761\n" - "._760:\n" - " .align 2, 0\n" - "._759:\n" - " .word 0xfffffc1f\n" - "._753:\n" - " ldrb r2, [r3, #0xd]\n" - " mov r0, #0x7c\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._761 @cond_branch\n" - " lsl r0, r2, #0x19\n" - " lsr r0, r0, #0x1b\n" - " sub r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " mov r1, #0x7d\n" - " neg r1, r1\n" - " and r1, r1, r2\n" - " orr r1, r1, r0\n" - " strb r1, [r3, #0xd]\n" - "._761:\n" - " ldr r0, ._762\n" - " lsl r1, r7, #0x2\n" - " add r1, r1, r7\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._762 + 4\n" - " str r0, [r1]\n" - "._754:\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._763:\n" - " .align 2, 0\n" - "._762:\n" - " .word gTasks\n" - " .word debug_80C74E4+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C74E4() -{ - asm( - " push {r4, r5, r6, lr}\n" - " mov r6, r8\n" - " push {r6}\n" - " add r5, r0, #0\n" - " lsl r5, r5, #0x18\n" - " lsr r5, r5, #0x18\n" - " ldr r0, ._764\n" - " ldr r3, [r0]\n" - " ldrb r0, [r3, #0xc]\n" - " lsl r0, r0, #0x1b\n" - " lsr r0, r0, #0x1b\n" - " ldrh r2, [r3, #0xc]\n" - " mov r1, #0xf8\n" - " lsl r1, r1, #0x2\n" - " and r1, r1, r2\n" - " add r0, r0, r1\n" - " ldrb r1, [r3, #0xd]\n" - " lsl r1, r1, #0x19\n" - " lsr r1, r1, #0x1b\n" - " lsl r1, r1, #0xa\n" - " add r0, r0, r1\n" - " ldr r6, ._764 + 4\n" - " ldrb r1, [r3, #0x7]\n" - " add r1, r1, #0x81\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, r6\n" - " strh r0, [r1]\n" - " ldr r1, ._764 + 8\n" - " mov r8, r1\n" - " ldrb r1, [r3, #0x7]\n" - " add r1, r1, #0x81\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, r8\n" - " strh r0, [r1]\n" - " ldrb r1, [r3, #0x6]\n" - " lsl r1, r1, #0x4\n" - " ldrb r2, [r3, #0x7]\n" - " ldr r4, ._764 + 12\n" - " add r2, r2, r4\n" - " add r1, r1, r2\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, r6\n" - " strh r0, [r1]\n" - " ldrb r1, [r3, #0x6]\n" - " lsl r1, r1, #0x4\n" - " ldrb r2, [r3, #0x7]\n" - " add r2, r2, r4\n" - " add r1, r1, r2\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, r8\n" - " strh r0, [r1]\n" - " mov r1, #0xe\n" - " mov r2, #0xa\n" - " mov r3, #0x4\n" - " bl debug_80C68CC\n" - " ldr r1, ._764 + 16\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._764 + 20\n" - " str r1, [r0]\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._765:\n" - " .align 2, 0\n" - "._764:\n" - " .word gUnknown_Debug_2038A20\n" - " .word gPlttBufferUnfaded\n" - " .word gPlttBufferFaded\n" - " .word 0x101\n" - " .word gTasks\n" - " .word debug_80C7294+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C7584() -{ - asm( - " push {r4, lr}\n" - " add r2, r0, #0\n" - " ldr r0, ._771\n" - " ldr r3, [r0]\n" - " ldrb r1, [r3, #0x5]\n" - " add r4, r0, #0\n" - " cmp r1, #0\n" - " beq ._766 @cond_branch\n" - " mov r1, #0x2e\n" - " ldsh r0, [r2, r1]\n" - " cmp r0, #0x1\n" - " beq ._767 @cond_branch\n" - " cmp r0, #0x1\n" - " ble ._768 @cond_branch\n" - " cmp r0, #0x2\n" - " beq ._769 @cond_branch\n" - "._768:\n" - " ldrb r0, [r3, #0xc]\n" - " lsl r0, r0, #0x1b\n" - " b ._773\n" - "._772:\n" - " .align 2, 0\n" - "._771:\n" - " .word gUnknown_Debug_2038A20\n" - "._767:\n" - " ldrh r0, [r3, #0xc]\n" - " lsl r0, r0, #0x16\n" - " b ._773\n" - "._769:\n" - " ldrb r0, [r3, #0xd]\n" - " lsl r0, r0, #0x19\n" - "._773:\n" - " lsr r0, r0, #0x1b\n" - " lsl r0, r0, #0x2\n" - " strh r0, [r2, #0x24]\n" - " mov r1, #0x2e\n" - " ldsh r0, [r2, r1]\n" - " lsl r0, r0, #0x3\n" - " strh r0, [r2, #0x26]\n" - " ldrh r0, [r2, #0x30]\n" - " add r3, r0, #1\n" - " strh r3, [r2, #0x30]\n" - " mov r0, #0x2e\n" - " ldsh r1, [r2, r0]\n" - " ldr r0, [r4]\n" - " ldrb r0, [r0, #0xa]\n" - " cmp r1, r0\n" - " bne ._775 @cond_branch\n" - " mov r0, #0x8\n" - " and r3, r3, r0\n" - " cmp r3, #0\n" - " bne ._775 @cond_branch\n" - "._766:\n" - " add r0, r2, #0\n" - " add r0, r0, #0x3e\n" - " ldrb r1, [r0]\n" - " mov r2, #0x4\n" - " orr r1, r1, r2\n" - " strb r1, [r0]\n" - " b ._776\n" - "._775:\n" - " add r2, r2, #0x3e\n" - " ldrb r1, [r2]\n" - " mov r0, #0x5\n" - " neg r0, r0\n" - " and r0, r0, r1\n" - " strb r0, [r2]\n" - "._776:\n" - " pop {r4}\n" - " pop {r0}\n" - " bx r0\n" - "\n" - ); -} - -__attribute__((naked)) -void InitSeeTrainers() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add sp, sp, #0xfffffffc\n" - " bl debug_80C35DC\n" - " ldr r1, ._777\n" - " ldr r2, ._777 + 4\n" - " ldr r0, ._777 + 8\n" - " str r1, [r0]\n" - " str r2, [r0, #0x4]\n" - " ldr r1, ._777 + 12\n" - " str r1, [r0, #0x8]\n" - " ldr r0, [r0, #0x8]\n" - " ldr r0, ._777 + 16\n" - " mov r1, #0x80\n" - " mov r2, #0x60\n" - " bl LoadPalette\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " mov r5, #0x0\n" - " str r5, [sp]\n" - " mov r1, #0x0\n" - " mov r2, #0x10\n" - " mov r3, #0x0\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._777 + 20\n" - " mov r6, #0x0\n" - " strh r5, [r0]\n" - " add r0, r0, #0x4\n" - " strh r5, [r0]\n" - " sub r0, r0, #0x2\n" - " strh r5, [r0]\n" - " add r0, r0, #0x4\n" - " strh r5, [r0]\n" - " ldr r1, ._777 + 24\n" - " mov r0, #0x3f\n" - " strh r0, [r1]\n" - " add r1, r1, #0x2\n" - " mov r0, #0x1f\n" - " strh r0, [r1]\n" - " add r1, r1, #0x6\n" - " mov r0, #0xf1\n" - " strh r0, [r1]\n" - " ldr r0, ._777 + 28\n" - " strh r5, [r0]\n" - " add r1, r1, #0x4\n" - " mov r0, #0x7\n" - " strh r0, [r1]\n" - " ldr r3, ._777 + 32\n" - " ldrh r2, [r3]\n" - " strh r5, [r3]\n" - " ldr r4, ._777 + 36\n" - " ldrh r0, [r4]\n" - " mov r1, #0x1\n" - " orr r0, r0, r1\n" - " strh r0, [r4]\n" - " strh r2, [r3]\n" - " ldr r0, ._777 + 40\n" - " bl SetVBlankCallback\n" - " ldr r0, ._777 + 44\n" - " bl SetMainCallback2\n" - " ldr r1, ._777 + 48\n" - " ldr r2, ._777 + 52\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x2\n" - " ldr r2, ._777 + 56\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " sub r1, r1, #0xa\n" - " mov r2, #0xcd\n" - " lsl r2, r2, #0x6\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r0, ._777 + 60\n" - " mov r1, #0x0\n" - " bl CreateTask\n" - " ldr r1, ._777 + 64\n" - " ldr r0, ._777 + 68\n" - " str r0, [r1]\n" - " strh r5, [r0]\n" - " strb r6, [r0, #0x2]\n" - " strb r6, [r0, #0x3]\n" - " strb r6, [r0, #0x5]\n" - " strb r6, [r0, #0x7]\n" - " strb r6, [r0, #0xa]\n" - " strb r6, [r0, #0x8]\n" - " ldr r4, ._777 + 72\n" - " add r0, r4, #0\n" - " mov r1, #0x6c\n" - " mov r2, #0x74\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " ldr r6, ._777 + 76\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " strh r5, [r0, #0x2e]\n" - " mov r1, #0x0\n" - " bl StartSpriteAnim\n" - " add r0, r4, #0\n" - " mov r1, #0x6c\n" - " mov r2, #0x74\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " mov r1, #0x1\n" - " strh r1, [r0, #0x2e]\n" - " bl StartSpriteAnim\n" - " add r0, r4, #0\n" - " mov r1, #0x6c\n" - " mov r2, #0x74\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " add r1, r0, #0\n" - " lsl r1, r1, #0x18\n" - " lsr r1, r1, #0x18\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " mov r1, #0x2\n" - " strh r1, [r0, #0x2e]\n" - " bl StartSpriteAnim\n" - " add sp, sp, #0x4\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._778:\n" - " .align 2, 0\n" - "._777:\n" - " .word byte_83F88EC\n" - " .word 0x600e000\n" - " .word 0x40000d4\n" - " .word 0x80000400\n" - " .word word_83F888C\n" - " .word 0x4000040\n" - " .word 0x4000048\n" - " .word 0x4000052\n" - " .word 0x4000208\n" - " .word 0x4000200\n" - " .word debug_80C3758+1\n" - " .word debug_80C370C+1\n" - " .word 0x4000008\n" - " .word 0x1f0b\n" - " .word 0x1e0a\n" - " .word debug_80C777C+1\n" - " .word gUnknown_Debug_2038A20\n" - " .word +0x2018000\n" - " .word gSpriteTemplate_83F8874\n" - " .word gSprites\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C777C() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " mov r7, r8\n" - " push {r7}\n" - " add sp, sp, #0xffffffec\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - " ldr r1, ._784\n" - " mov r0, sp\n" - " mov r2, #0x12\n" - " bl memcpy\n" - " mov r0, #0x9\n" - " mov r1, #0x0\n" - " mov r2, #0xe\n" - " mov r3, #0x7\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, #0x0\n" - " mov r1, #0x0\n" - " mov r2, #0x9\n" - " mov r3, #0x9\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, #0x0\n" - " mov r1, #0xa\n" - " mov r2, #0x9\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r0, #0xe\n" - " mov r1, #0x0\n" - " mov r2, #0x1d\n" - " mov r3, #0x7\n" - " bl Menu_DrawStdWindowFrame\n" - " ldr r0, ._784 + 4\n" - " mov r1, #0xf\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " ldr r0, ._784 + 8\n" - " mov r1, #0x19\n" - " mov r2, #0x1\n" - " bl Menu_PrintText\n" - " ldr r0, ._784 + 12\n" - " mov r1, #0xf\n" - " mov r2, #0x5\n" - " bl Menu_PrintText\n" - " mov r0, #0xa\n" - " mov r1, #0x8\n" - " mov r2, #0x1d\n" - " mov r3, #0xc\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r2, #0x0\n" - " ldr r4, ._784 + 16\n" - " ldr r0, ._784 + 20\n" - " add r3, r0, #0\n" - "._779:\n" - " lsl r0, r2, #0x1\n" - " add r0, r0, r4\n" - " add r1, r2, r3\n" - " strh r1, [r0]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0xe\n" - " bls ._779 @cond_branch\n" - " mov r2, #0x0\n" - " ldr r5, ._784 + 24\n" - " lsl r6, r7, #0x2\n" - " mov r8, r6\n" - " ldr r4, ._784 + 28\n" - " ldr r0, ._784 + 32\n" - " add r3, r0, #0\n" - "._780:\n" - " lsl r0, r2, #0x1\n" - " add r0, r0, r4\n" - " add r1, r2, r3\n" - " strh r1, [r0]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0xe\n" - " bls ._780 @cond_branch\n" - " add r0, r5, #0\n" - " mov r1, #0x14\n" - " mov r2, #0xa\n" - " bl Menu_PrintText\n" - " mov r0, #0xa\n" - " mov r1, #0xd\n" - " mov r2, #0x1d\n" - " mov r3, #0x13\n" - " bl Menu_DrawStdWindowFrame\n" - " mov r1, sp\n" - " mov r0, #0x23\n" - " strb r0, [r1]\n" - " mov r2, #0x0\n" - " ldr r4, ._784 + 36\n" - " mov r5, #0x93\n" - " lsl r5, r5, #0x8\n" - " add r3, r5, #0\n" - "._781:\n" - " lsl r1, r2, #0x1\n" - " add r1, r1, r4\n" - " mov r6, sp\n" - " add r0, r6, r2\n" - " ldrb r0, [r0]\n" - " add r0, r0, r3\n" - " strh r0, [r1]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x11\n" - " bls ._781 @cond_branch\n" - " mov r1, sp\n" - " mov r0, #0x24\n" - " strb r0, [r1]\n" - " mov r2, #0x0\n" - " ldr r5, ._784 + 40\n" - " ldr r4, ._784 + 44\n" - " mov r0, #0x93\n" - " lsl r0, r0, #0x8\n" - " add r3, r0, #0\n" - "._782:\n" - " lsl r1, r2, #0x1\n" - " add r1, r1, r4\n" - " mov r6, sp\n" - " add r0, r6, r2\n" - " ldrb r0, [r0]\n" - " add r0, r0, r3\n" - " strh r0, [r1]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x11\n" - " bls ._782 @cond_branch\n" - " mov r1, sp\n" - " mov r0, #0x25\n" - " strb r0, [r1]\n" - " mov r2, #0x0\n" - " ldr r4, ._784 + 48\n" - " mov r0, #0x93\n" - " lsl r0, r0, #0x8\n" - " add r3, r0, #0\n" - "._783:\n" - " lsl r1, r2, #0x1\n" - " add r1, r1, r4\n" - " mov r6, sp\n" - " add r0, r6, r2\n" - " ldrb r0, [r0]\n" - " add r0, r0, r3\n" - " strh r0, [r1]\n" - " add r0, r2, #1\n" - " lsl r0, r0, #0x18\n" - " lsr r2, r0, #0x18\n" - " cmp r2, #0x11\n" - " bls ._783 @cond_branch\n" - " add r0, r5, #0\n" - " mov r1, #0xf\n" - " mov r2, #0x11\n" - " bl Menu_PrintText\n" - " ldr r1, ._784 + 52\n" - " ldr r2, ._784 + 56\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r5, ._784 + 60\n" - " add r0, r5, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._784 + 64\n" - " mov r6, r8\n" - " add r0, r6, r7\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._784 + 68\n" - " str r1, [r0]\n" - " add sp, sp, #0x14\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._785:\n" - " .align 2, 0\n" - "._784:\n" - " .word gUnknown_Debug_083F8815\n" - " .word gUnknown_Debug_083F87D0\n" - " .word gUnknown_Debug_083F87D8\n" - " .word gUnknown_Debug_083F87E0\n" - " .word 0x600fa56\n" - " .word 0xa311\n" - " .word gUnknown_Debug_083F87F4\n" - " .word 0x600f256\n" - " .word 0x8301\n" - " .word 0x600f396\n" - " .word gUnknown_Debug_083F8801\n" - " .word 0x600f3d6\n" - " .word 0x600f416\n" - " .word 0x4000040\n" - " .word 0x51ef\n" - " .word 0x699f\n" - " .word gTasks\n" - " .word debug_80C7934+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C7934() -{ - asm( - " push {r4, r5, r6, lr}\n" - " mov r6, r8\n" - " push {r6}\n" - " add sp, sp, #0xfffffff8\n" - " mov r8, r0\n" - " lsl r0, r0, #0x18\n" - " lsr r0, r0, #0x18\n" - " mov r8, r0\n" - " ldr r5, ._786\n" - " ldr r6, [r5]\n" - " ldrh r2, [r6]\n" - " lsl r0, r2, #0x3\n" - " ldr r1, ._786 + 4\n" - " add r0, r0, r1\n" - " ldr r1, ._786 + 8\n" - " lsl r2, r2, #0x2\n" - " add r2, r2, r1\n" - " ldrb r1, [r2]\n" - " ldrb r2, [r2, #0x1]\n" - " ldr r4, ._786 + 12\n" - " ldr r3, [r4]\n" - " ldr r4, [r4, #0x4]\n" - " str r4, [sp]\n" - " ldrh r4, [r6]\n" - " str r4, [sp, #0x4]\n" - " bl DecompressPicFromTable_2\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " lsl r0, r0, #0x3\n" - " ldr r1, ._786 + 16\n" - " add r0, r0, r1\n" - " bl LoadCompressedObjectPalette\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " mov r1, #0x1\n" - " bl GetMonSpriteTemplate_803C5A0\n" - " ldr r0, ._786 + 20\n" - " mov r1, #0x28\n" - " mov r2, #0x28\n" - " mov r3, #0x0\n" - " bl CreateSprite\n" - " ldr r1, [r5]\n" - " mov r6, #0x0\n" - " strb r0, [r1, #0x2]\n" - " ldr r4, ._786 + 24\n" - " ldr r2, [r5]\n" - " ldrb r1, [r2, #0x2]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r1, r4, #0\n" - " add r1, r1, #0x1c\n" - " add r0, r0, r1\n" - " ldr r1, ._786 + 28\n" - " str r1, [r0]\n" - " ldrb r0, [r2, #0x2]\n" - " lsl r1, r0, #0x4\n" - " add r1, r1, r0\n" - " lsl r1, r1, #0x2\n" - " add r1, r1, r4\n" - " ldrb r2, [r1, #0x5]\n" - " mov r0, #0xd\n" - " neg r0, r0\n" - " and r0, r0, r2\n" - " strb r0, [r1, #0x5]\n" - " ldr r0, [r5]\n" - " ldrh r0, [r0]\n" - " mov r1, #0x1a\n" - " mov r2, #0x5\n" - " bl debug_80C376C\n" - " ldr r2, [r5]\n" - " ldrb r1, [r2, #0x2]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r4\n" - " ldrb r0, [r0, #0x5]\n" - " lsr r0, r0, #0x4\n" - " strb r0, [r2, #0x6]\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x6]\n" - " lsl r0, r0, #0x5\n" - " ldr r4, ._786 + 32\n" - " add r0, r0, r4\n" - " ldr r2, ._786 + 36\n" - " add r1, r4, r2\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x6]\n" - " lsl r0, r0, #0x5\n" - " add r0, r0, r4\n" - " ldr r1, ._786 + 40\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r1, ._786 + 44\n" - " mov r2, r8\n" - " lsl r0, r2, #0x2\n" - " add r0, r0, r8\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._786 + 48\n" - " str r1, [r0]\n" - " ldr r0, [r5]\n" - " strb r6, [r0, #0x9]\n" - " add sp, sp, #0x8\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._787:\n" - " .align 2, 0\n" - "._786:\n" - " .word gUnknown_Debug_2038A20\n" - " .word gTrainerFrontPicTable\n" - " .word gTrainerFrontPicCoords\n" - " .word gUnknown_081FAF4C\n" - " .word gTrainerFrontPicPaletteTable\n" - " .word gUnknown_02024E8C\n" - " .word gSprites\n" - " .word debug_69+1\n" - " .word gPlttBufferUnfaded+0x200\n" - " .word 0xffffff00\n" - " .word gPlttBufferFaded+0x100\n" - " .word gTasks\n" - " .word debug_80C7A54+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C7A54() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add r6, r0, #0\n" - " lsl r6, r6, #0x18\n" - " lsr r6, r6, #0x18\n" - " ldr r4, ._788\n" - " ldr r5, ._788 + 4\n" - " ldr r1, [r5]\n" - " add r1, r1, #0x10\n" - " add r0, r4, #0\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r0, ._788 + 8\n" - " add r4, r4, r0\n" - " ldr r3, [r5]\n" - " ldrb r0, [r3, #0x7]\n" - " add r0, r0, #0x81\n" - " lsl r0, r0, #0x1\n" - " add r0, r0, r4\n" - " ldrh r4, [r0]\n" - " mov r1, #0x1f\n" - " and r1, r1, r4\n" - " ldrb r2, [r3, #0xc]\n" - " mov r0, #0x20\n" - " neg r0, r0\n" - " and r0, r0, r2\n" - " orr r0, r0, r1\n" - " strb r0, [r3, #0xc]\n" - " ldr r3, [r5]\n" - " mov r1, #0xf8\n" - " lsl r1, r1, #0x2\n" - " and r1, r1, r4\n" - " ldrh r2, [r3, #0xc]\n" - " ldr r0, ._788 + 12\n" - " and r0, r0, r2\n" - " orr r0, r0, r1\n" - " strh r0, [r3, #0xc]\n" - " mov r1, #0xf8\n" - " lsl r1, r1, #0x7\n" - " and r1, r1, r4\n" - " lsr r1, r1, #0x8\n" - " ldrb r2, [r3, #0xd]\n" - " mov r0, #0x7d\n" - " neg r0, r0\n" - " and r0, r0, r2\n" - " orr r0, r0, r1\n" - " strb r0, [r3, #0xd]\n" - " ldr r2, [r5]\n" - " ldrb r1, [r2, #0xd]\n" - " mov r0, #0x7f\n" - " and r0, r0, r1\n" - " strb r0, [r2, #0xd]\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x7]\n" - " add r0, r0, #0x1\n" - " mov r1, #0xb\n" - " mov r2, #0xa\n" - " mov r3, #0x2\n" - " bl debug_80C68CC\n" - " ldr r0, ._788 + 16\n" - " mov r1, #0xd\n" - " mov r2, #0xa\n" - " bl Menu_PrintText\n" - " add r0, r4, #0\n" - " mov r1, #0xe\n" - " mov r2, #0xa\n" - " mov r3, #0x4\n" - " bl debug_80C68CC\n" - " ldr r1, ._788 + 20\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._788 + 24\n" - " str r1, [r0]\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._789:\n" - " .align 2, 0\n" - "._788:\n" - " .word gPlttBufferUnfaded+0x100\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0xffffff00\n" - " .word 0xfffffc1f\n" - " .word gUnknown_Debug_083F8813\n" - " .word gTasks\n" - " .word debug_80C7B14+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C7B14() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add sp, sp, #0xfffffffc\n" - " lsl r0, r0, #0x18\n" - " lsr r6, r0, #0x18\n" - " ldr r1, ._792\n" - " ldrh r3, [r1, #0x2e]\n" - " mov r0, #0x2\n" - " and r0, r0, r3\n" - " add r4, r1, #0\n" - " cmp r0, #0\n" - " beq ._790 @cond_branch\n" - " mov r0, #0x5\n" - " bl PlaySE\n" - " mov r0, #0x1\n" - " neg r0, r0\n" - " mov r1, #0x0\n" - " str r1, [sp]\n" - " mov r2, #0x0\n" - " mov r3, #0x10\n" - " bl BeginNormalPaletteFade\n" - " ldr r0, ._792 + 4\n" - " bl SetMainCallback2\n" - " ldr r1, ._792 + 8\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._792 + 12\n" - " str r1, [r0]\n" - " b ._821\n" - "._793:\n" - " .align 2, 0\n" - "._792:\n" - " .word gMain\n" - " .word debug_80C370C+1\n" - " .word gTasks\n" - " .word debug_80C373C+1\n" - "._790:\n" - " ldrh r1, [r4, #0x30]\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x1\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._794 @cond_branch\n" - " ldr r4, ._796\n" - " ldr r0, [r4]\n" - " ldrh r1, [r0]\n" - " mov r0, #0x0\n" - " b ._795\n" - "._797:\n" - " .align 2, 0\n" - "._796:\n" - " .word gUnknown_Debug_2038A20\n" - "._794:\n" - " mov r0, #0x80\n" - " lsl r0, r0, #0x2\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._798 @cond_branch\n" - " ldr r4, ._800\n" - " ldr r0, [r4]\n" - " ldrh r1, [r0]\n" - " mov r0, #0x1\n" - "._795:\n" - " bl debug_80C38B4\n" - " ldr r1, [r4]\n" - " strh r0, [r1]\n" - " ldr r1, ._800 + 4\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._800 + 8\n" - " str r1, [r0]\n" - " b ._821\n" - "._801:\n" - " .align 2, 0\n" - "._800:\n" - " .word gUnknown_Debug_2038A20\n" - " .word gTasks\n" - " .word debug_80C7D44+1\n" - "._798:\n" - " mov r2, #0x1\n" - " and r2, r2, r3\n" - " cmp r2, #0\n" - " beq ._802 @cond_branch\n" - " ldr r0, ._804\n" - " ldr r1, [r0]\n" - " mov r0, #0x1\n" - " strb r0, [r1, #0x5]\n" - " ldr r1, ._804 + 4\n" - " ldr r2, ._804 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._804 + 12\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r1, ._804 + 16\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._804 + 20\n" - " str r1, [r0]\n" - " b ._821\n" - "._805:\n" - " .align 2, 0\n" - "._804:\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x4000040\n" - " .word 0x51ef\n" - " .word 0x4167\n" - " .word gTasks\n" - " .word debug_80C7DDC+1\n" - "._802:\n" - " mov r0, #0x10\n" - " and r0, r0, r1\n" - " ldr r3, ._809\n" - " cmp r0, #0\n" - " beq ._807 @cond_branch\n" - " ldr r1, [r3]\n" - " ldrb r0, [r1, #0x7]\n" - " cmp r0, #0xd\n" - " bhi ._807 @cond_branch\n" - " lsl r0, r0, #0x1\n" - " ldr r1, ._809 + 4\n" - " add r0, r0, r1\n" - " strh r2, [r0]\n" - " ldr r1, [r3]\n" - " ldrb r0, [r1, #0x7]\n" - " add r0, r0, #0x1\n" - " strb r0, [r1, #0x7]\n" - " b ._813\n" - "._810:\n" - " .align 2, 0\n" - "._809:\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x5000102\n" - "._807:\n" - " ldrh r1, [r4, #0x30]\n" - " mov r0, #0x20\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._812 @cond_branch\n" - " ldr r1, [r3]\n" - " ldrb r0, [r1, #0x7]\n" - " cmp r0, #0\n" - " beq ._812 @cond_branch\n" - " lsl r0, r0, #0x1\n" - " ldr r2, ._814\n" - " add r0, r0, r2\n" - " mov r1, #0x0\n" - " strh r1, [r0]\n" - " ldr r1, [r3]\n" - " ldrb r0, [r1, #0x7]\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1, #0x7]\n" - " b ._813\n" - "._815:\n" - " .align 2, 0\n" - "._814:\n" - " .word 0x5000102\n" - "._812:\n" - " ldrh r1, [r4, #0x2e]\n" - " mov r0, #0x8\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._816 @cond_branch\n" - " ldr r4, ._819\n" - " ldr r2, [r4]\n" - " ldrb r0, [r2, #0x9]\n" - " mov r1, #0x1\n" - " eor r0, r0, r1\n" - " strb r0, [r2, #0x9]\n" - " ldr r1, [r4]\n" - " ldrb r0, [r1, #0x9]\n" - " cmp r0, #0\n" - " beq ._817 @cond_branch\n" - " ldrh r0, [r1]\n" - " mov r1, #0x0\n" - " mov r2, #0x0\n" - " bl GetMonSpritePalFromOtIdPersonality\n" - " ldr r1, [r4]\n" - " ldrb r1, [r1, #0x6]\n" - " lsl r1, r1, #0x14\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x11\n" - " add r1, r1, r2\n" - " lsr r1, r1, #0x10\n" - " mov r2, #0x20\n" - " bl LoadCompressedPalette\n" - " b ._818\n" - "._820:\n" - " .align 2, 0\n" - "._819:\n" - " .word gUnknown_Debug_2038A20\n" - "._817:\n" - " ldrh r0, [r1]\n" - " mov r1, #0x0\n" - " mov r2, #0x9\n" - " bl GetMonSpritePalFromOtIdPersonality\n" - " ldr r1, [r4]\n" - " ldrb r1, [r1, #0x6]\n" - " lsl r1, r1, #0x14\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x11\n" - " add r1, r1, r2\n" - " lsr r1, r1, #0x10\n" - " mov r2, #0x20\n" - " bl LoadCompressedPalette\n" - "._818:\n" - " ldr r5, ._822\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x6]\n" - " lsl r0, r0, #0x5\n" - " ldr r4, ._822 + 4\n" - " add r0, r0, r4\n" - " ldr r2, ._822 + 8\n" - " add r1, r4, r2\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r0, [r5]\n" - " ldrb r0, [r0, #0x6]\n" - " lsl r0, r0, #0x5\n" - " add r0, r0, r4\n" - " ldr r1, ._822 + 12\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - "._813:\n" - " ldr r1, ._822 + 16\n" - " lsl r0, r6, #0x2\n" - " add r0, r0, r6\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._822 + 20\n" - " str r1, [r0]\n" - " b ._821\n" - "._823:\n" - " .align 2, 0\n" - "._822:\n" - " .word gUnknown_Debug_2038A20\n" - " .word gPlttBufferUnfaded+0x200\n" - " .word 0xffffff00\n" - " .word gPlttBufferFaded+0x100\n" - " .word gTasks\n" - " .word debug_80C7A54+1\n" - "._816:\n" - " ldr r1, [r3]\n" - " ldrb r0, [r1, #0x8]\n" - " add r0, r0, #0x4\n" - " strb r0, [r1, #0x8]\n" - " ldr r2, [r3]\n" - " ldrb r1, [r2, #0x8]\n" - " mov r0, #0x1f\n" - " and r0, r0, r1\n" - " strb r0, [r2, #0x8]\n" - " ldr r0, [r3]\n" - " ldrb r1, [r0, #0x7]\n" - " lsl r1, r1, #0x1\n" - " ldr r2, ._824\n" - " add r1, r1, r2\n" - " ldr r2, ._824 + 4\n" - " ldrb r0, [r0, #0x8]\n" - " lsl r0, r0, #0x1\n" - " add r0, r0, r2\n" - " ldrh r0, [r0]\n" - " strh r0, [r1]\n" - "._821:\n" - " add sp, sp, #0x4\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._825:\n" - " .align 2, 0\n" - "._824:\n" - " .word 0x5000142\n" - " .word gUnknown_Debug_083F8790\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C7D44() -{ - asm( - " push {r4, r5, r6, lr}\n" - " add r5, r0, #0\n" - " lsl r5, r5, #0x18\n" - " lsr r5, r5, #0x18\n" - " ldr r6, ._826\n" - " ldr r4, ._826 + 4\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x2]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " ldrb r0, [r0, #0x5]\n" - " lsr r0, r0, #0x4\n" - " bl GetSpritePaletteTagByPaletteNum\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl FreeSpritePaletteByTag\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x2]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " bl DestroySprite\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x3]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " ldrb r0, [r0, #0x5]\n" - " lsr r0, r0, #0x4\n" - " bl GetSpritePaletteTagByPaletteNum\n" - " lsl r0, r0, #0x10\n" - " lsr r0, r0, #0x10\n" - " bl FreeSpritePaletteByTag\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x3]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " bl DestroySprite\n" - " ldr r0, [r4]\n" - " ldrb r1, [r0, #0x4]\n" - " lsl r0, r1, #0x4\n" - " add r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " add r0, r0, r6\n" - " bl sub_809D510\n" - " ldr r1, ._826 + 8\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._826 + 12\n" - " str r1, [r0]\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._827:\n" - " .align 2, 0\n" - "._826:\n" - " .word gSprites\n" - " .word gUnknown_Debug_2038A20\n" - " .word gTasks\n" - " .word debug_80C7934+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C7DDC() -{ - asm( - " push {r4, r5, r6, r7, lr}\n" - " lsl r0, r0, #0x18\n" - " lsr r7, r0, #0x18\n" - " ldr r0, ._830\n" - " ldrh r2, [r0, #0x2e]\n" - " mov r1, #0x1\n" - " and r1, r1, r2\n" - " add r3, r0, #0\n" - " cmp r1, #0\n" - " beq ._828 @cond_branch\n" - " ldr r0, ._830 + 4\n" - " ldr r1, [r0]\n" - " mov r0, #0x0\n" - " strb r0, [r1, #0x5]\n" - " ldr r1, ._830 + 8\n" - " ldr r2, ._830 + 12\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._830 + 16\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " b ._829\n" - "._831:\n" - " .align 2, 0\n" - "._830:\n" - " .word gMain\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x4000040\n" - " .word 0x51ef\n" - " .word 0x699f\n" - "._828:\n" - " mov r0, #0x2\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._832 @cond_branch\n" - " ldr r6, ._834\n" - " ldr r0, [r6]\n" - " strb r1, [r0, #0x5]\n" - " ldr r1, ._834 + 4\n" - " ldr r2, ._834 + 8\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " add r1, r1, #0x4\n" - " ldr r2, ._834 + 12\n" - " add r0, r2, #0\n" - " strh r0, [r1]\n" - " ldr r0, [r6]\n" - " add r0, r0, #0x10\n" - " ldr r4, ._834 + 16\n" - " add r1, r4, #0\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r0, [r6]\n" - " add r0, r0, #0x10\n" - " ldr r5, ._834 + 20\n" - " add r1, r5, #0\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r1, [r6]\n" - " add r0, r1, #0\n" - " add r0, r0, #0x10\n" - " ldrb r1, [r1, #0x6]\n" - " lsl r1, r1, #0x5\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x1\n" - " add r4, r4, r2\n" - " add r1, r1, r4\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - " ldr r1, [r6]\n" - " add r0, r1, #0\n" - " add r0, r0, #0x10\n" - " ldrb r1, [r1, #0x6]\n" - " lsl r1, r1, #0x5\n" - " mov r2, #0x80\n" - " lsl r2, r2, #0x1\n" - " add r5, r5, r2\n" - " add r1, r1, r5\n" - " mov r2, #0x10\n" - " bl CpuSet\n" - "._829:\n" - " ldr r1, ._834 + 24\n" - " lsl r0, r7, #0x2\n" - " add r0, r0, r7\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._834 + 28\n" - " str r1, [r0]\n" - " b ._871\n" - "._835:\n" - " .align 2, 0\n" - "._834:\n" - " .word gUnknown_Debug_2038A20\n" - " .word 0x4000040\n" - " .word 0x51ef\n" - " .word 0x699f\n" - " .word gPlttBufferUnfaded+0x100\n" - " .word gPlttBufferFaded+0x100\n" - " .word gTasks\n" - " .word debug_80C7A54+1\n" - "._832:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x80\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._837 @cond_branch\n" - " ldr r0, ._839\n" - " ldr r1, [r0]\n" - " ldrb r0, [r1, #0xa]\n" - " cmp r0, #0x1\n" - " bhi ._837 @cond_branch\n" - " add r0, r0, #0x1\n" - " strb r0, [r1, #0xa]\n" - " b ._871\n" - "._840:\n" - " .align 2, 0\n" - "._839:\n" - " .word gUnknown_Debug_2038A20\n" - "._837:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x40\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._842 @cond_branch\n" - " ldr r0, ._844\n" - " ldr r1, [r0]\n" - " ldrb r0, [r1, #0xa]\n" - " cmp r0, #0\n" - " beq ._842 @cond_branch\n" - " sub r0, r0, #0x1\n" - " strb r0, [r1, #0xa]\n" - " b ._871\n" - "._845:\n" - " .align 2, 0\n" - "._844:\n" - " .word gUnknown_Debug_2038A20\n" - "._842:\n" - " ldrh r1, [r3, #0x30]\n" - " mov r0, #0x10\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._846 @cond_branch\n" - " ldr r0, ._851\n" - " ldr r2, [r0]\n" - " ldrb r0, [r2, #0xa]\n" - " cmp r0, #0x1\n" - " beq ._847 @cond_branch\n" - " cmp r0, #0x1\n" - " bgt ._848 @cond_branch\n" - " cmp r0, #0\n" - " beq ._849 @cond_branch\n" - " b ._871\n" - "._852:\n" - " .align 2, 0\n" - "._851:\n" - " .word gUnknown_Debug_2038A20\n" - "._848:\n" - " cmp r0, #0x2\n" - " beq ._853 @cond_branch\n" - " b ._871\n" - "._849:\n" - " ldrb r3, [r2, #0xc]\n" - " lsl r1, r3, #0x1b\n" - " lsr r0, r1, #0x1b\n" - " cmp r0, #0x1e\n" - " bhi ._878 @cond_branch\n" - " add r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " mov r1, #0x20\n" - " neg r1, r1\n" - " and r1, r1, r3\n" - " orr r1, r1, r0\n" - " strb r1, [r2, #0xc]\n" - " b ._878\n" - "._847:\n" - " ldrh r3, [r2, #0xc]\n" - " lsl r1, r3, #0x16\n" - " lsr r0, r1, #0x1b\n" - " cmp r0, #0x1e\n" - " bhi ._878 @cond_branch\n" - " add r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x5\n" - " ldr r1, ._859\n" - " and r1, r1, r3\n" - " orr r1, r1, r0\n" - " strh r1, [r2, #0xc]\n" - " b ._878\n" - "._860:\n" - " .align 2, 0\n" - "._859:\n" - " .word 0xfffffc1f\n" - "._853:\n" - " ldrb r3, [r2, #0xd]\n" - " lsl r1, r3, #0x19\n" - " lsr r0, r1, #0x1b\n" - " cmp r0, #0x1e\n" - " bhi ._878 @cond_branch\n" - " add r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " mov r1, #0x7d\n" - " neg r1, r1\n" - " and r1, r1, r3\n" - " orr r1, r1, r0\n" - " strb r1, [r2, #0xd]\n" - " b ._878\n" - "._846:\n" - " mov r0, #0x20\n" - " and r0, r0, r1\n" - " cmp r0, #0\n" - " beq ._871 @cond_branch\n" - " ldr r0, ._868\n" - " ldr r3, [r0]\n" - " ldrb r0, [r3, #0xa]\n" - " cmp r0, #0x1\n" - " beq ._864 @cond_branch\n" - " cmp r0, #0x1\n" - " bgt ._865 @cond_branch\n" - " cmp r0, #0\n" - " beq ._866 @cond_branch\n" - " b ._871\n" - "._869:\n" - " .align 2, 0\n" - "._868:\n" - " .word gUnknown_Debug_2038A20\n" - "._865:\n" - " cmp r0, #0x2\n" - " beq ._870 @cond_branch\n" - " b ._871\n" - "._866:\n" - " ldrb r2, [r3, #0xc]\n" - " mov r0, #0x1f\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._878 @cond_branch\n" - " lsl r0, r2, #0x1b\n" - " lsr r0, r0, #0x1b\n" - " sub r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " mov r1, #0x20\n" - " neg r1, r1\n" - " and r1, r1, r2\n" - " orr r1, r1, r0\n" - " strb r1, [r3, #0xc]\n" - " b ._878\n" - "._864:\n" - " ldrh r2, [r3, #0xc]\n" - " mov r0, #0xf8\n" - " lsl r0, r0, #0x2\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._878 @cond_branch\n" - " lsl r0, r2, #0x16\n" - " lsr r0, r0, #0x1b\n" - " sub r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x5\n" - " ldr r1, ._876\n" - " and r1, r1, r2\n" - " orr r1, r1, r0\n" - " strh r1, [r3, #0xc]\n" - " b ._878\n" - "._877:\n" - " .align 2, 0\n" - "._876:\n" - " .word 0xfffffc1f\n" - "._870:\n" - " ldrb r2, [r3, #0xd]\n" - " mov r0, #0x7c\n" - " and r0, r0, r2\n" - " cmp r0, #0\n" - " beq ._878 @cond_branch\n" - " lsl r0, r2, #0x19\n" - " lsr r0, r0, #0x1b\n" - " sub r0, r0, #0x1\n" - " mov r1, #0x1f\n" - " and r0, r0, r1\n" - " lsl r0, r0, #0x2\n" - " mov r1, #0x7d\n" - " neg r1, r1\n" - " and r1, r1, r2\n" - " orr r1, r1, r0\n" - " strb r1, [r3, #0xd]\n" - "._878:\n" - " ldr r0, ._879\n" - " lsl r1, r7, #0x2\n" - " add r1, r1, r7\n" - " lsl r1, r1, #0x3\n" - " add r1, r1, r0\n" - " ldr r0, ._879 + 4\n" - " str r0, [r1]\n" - "._871:\n" - " pop {r4, r5, r6, r7}\n" - " pop {r0}\n" - " bx r0\n" - "._880:\n" - " .align 2, 0\n" - "._879:\n" - " .word gTasks\n" - " .word debug_80C802C+1\n" - "\n" - ); -} - -__attribute__((naked)) -void debug_80C802C() -{ - asm( - " push {r4, r5, r6, lr}\n" - " mov r6, r8\n" - " push {r6}\n" - " add r5, r0, #0\n" - " lsl r5, r5, #0x18\n" - " lsr r5, r5, #0x18\n" - " ldr r0, ._881\n" - " ldr r3, [r0]\n" - " ldrb r0, [r3, #0xc]\n" - " lsl r0, r0, #0x1b\n" - " lsr r0, r0, #0x1b\n" - " ldrh r2, [r3, #0xc]\n" - " mov r1, #0xf8\n" - " lsl r1, r1, #0x2\n" - " and r1, r1, r2\n" - " add r0, r0, r1\n" - " ldrb r1, [r3, #0xd]\n" - " lsl r1, r1, #0x19\n" - " lsr r1, r1, #0x1b\n" - " lsl r1, r1, #0xa\n" - " add r0, r0, r1\n" - " ldr r6, ._881 + 4\n" - " ldrb r1, [r3, #0x7]\n" - " add r1, r1, #0x81\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, r6\n" - " strh r0, [r1]\n" - " ldr r1, ._881 + 8\n" - " mov r8, r1\n" - " ldrb r1, [r3, #0x7]\n" - " add r1, r1, #0x81\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, r8\n" - " strh r0, [r1]\n" - " ldrb r1, [r3, #0x6]\n" - " lsl r1, r1, #0x4\n" - " ldrb r2, [r3, #0x7]\n" - " ldr r4, ._881 + 12\n" - " add r2, r2, r4\n" - " add r1, r1, r2\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, r6\n" - " strh r0, [r1]\n" - " ldrb r1, [r3, #0x6]\n" - " lsl r1, r1, #0x4\n" - " ldrb r2, [r3, #0x7]\n" - " add r2, r2, r4\n" - " add r1, r1, r2\n" - " lsl r1, r1, #0x1\n" - " add r1, r1, r8\n" - " strh r0, [r1]\n" - " mov r1, #0xe\n" - " mov r2, #0xa\n" - " mov r3, #0x4\n" - " bl debug_80C68CC\n" - " ldr r1, ._881 + 16\n" - " lsl r0, r5, #0x2\n" - " add r0, r0, r5\n" - " lsl r0, r0, #0x3\n" - " add r0, r0, r1\n" - " ldr r1, ._881 + 20\n" - " str r1, [r0]\n" - " pop {r3}\n" - " mov r8, r3\n" - " pop {r4, r5, r6}\n" - " pop {r0}\n" - " bx r0\n" - "._882:\n" - " .align 2, 0\n" - "._881:\n" - " .word gUnknown_Debug_2038A20\n" - " .word gPlttBufferUnfaded\n" - " .word gPlttBufferFaded\n" - " .word 0x101\n" - " .word gTasks\n" - " .word debug_80C7DDC+1\n" - "\n" - ); -} - #endif -- cgit v1.2.3