#if DEBUG #include "global.h" EWRAM_DATA u8 unk_2030224[4] = { 0 }; __attribute__((naked)) void TayaDebugMenu_Trend() { 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" " bl Menu_EraseScreen\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0x1e\n" " mov r3, #0xb\n" " bl Menu_DrawStdWindowFrame\n" " ldr r5, ._3\n" " mov r7, #0x0\n" " mov r0, #0x1\n" " add r0, r0, sp\n" " mov sl, r0\n" " mov r9, sp\n" " mov r0, #0x0\n" " mov r8, r0\n" " add r6, sp, #0x20\n" "._2:\n" " ldrb r1, [r5, #0x1]\n" " mov r0, #0x40\n" " and r0, r0, r1\n" " mov r1, #0xa1\n" " cmp r0, #0\n" " beq ._1 @cond_branch\n" " mov r1, #0xa2\n" "._1:\n" " mov r0, r9\n" " strb r1, [r0]\n" " ldrh r1, [r5, #0x4]\n" " add r0, r6, #0\n" " bl EasyChat_GetWordText\n" " mov r0, sl\n" " add r1, r6, #0\n" " mov r2, #0x0\n" " mov r3, #0x7\n" " bl StringCopyPadded\n" " add r4, r0, #0\n" " ldrh r1, [r5, #0x6]\n" " add r0, r6, #0\n" " bl EasyChat_GetWordText\n" " add r0, r4, #0\n" " add r1, r6, #0\n" " mov r2, #0x0\n" " mov r3, #0x8\n" " bl StringCopyPadded\n" " add r4, r0, #0\n" " ldrb r1, [r5]\n" " lsl r1, r1, #0x19\n" " lsr r1, r1, #0x19\n" " mov r2, #0x1\n" " mov r3, #0x3\n" " bl ConvertIntToDecimalStringN\n" " add r4, r0, #0\n" " mov r0, r8\n" " strb r0, [r4]\n" " add r4, r4, #0x1\n" " ldrh r1, [r5]\n" " lsl r1, r1, #0x12\n" " lsr r1, r1, #0x19\n" " add r0, r4, #0\n" " mov r2, #0x1\n" " mov r3, #0x3\n" " bl ConvertIntToDecimalStringN\n" " add r4, r0, #0\n" " mov r0, r8\n" " strb r0, [r4]\n" " add r4, r4, #0x1\n" " ldrh r1, [r5, #0x2]\n" " add r0, r4, #0\n" " mov r2, #0x1\n" " mov r3, #0x5\n" " bl ConvertIntToDecimalStringN\n" " lsl r2, r7, #0x1\n" " add r2, r2, #0x1\n" " lsl r2, r2, #0x18\n" " lsr r2, r2, #0x18\n" " mov r0, sp\n" " mov r1, #0x1\n" " bl Menu_PrintText\n" " add r5, r5, #0x8\n" " add r0, r7, #1\n" " lsl r0, r0, #0x10\n" " lsr r7, r0, #0x10\n" " cmp r7, #0x4\n" " bls ._2 @cond_branch\n" " ldr r1, ._3 + 4\n" " ldr r0, ._3 + 8\n" " str r0, [r1]\n" " mov r0, #0x0\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 {r1}\n" " bx r1\n" "._4:\n" " .align 2, 0\n" "._3:\n" " .word gSaveBlock1+0x2dd4\n" " .word gCallback_03004AE8\n" " .word debug_sub_8090808+1\n" "\n" ); } __attribute__((naked)) void debug_sub_8090808() { asm( " push {lr}\n" " ldr r0, ._7\n" " ldrh r1, [r0, #0x2e]\n" " mov r0, #0x3\n" " and r0, r0, r1\n" " cmp r0, #0\n" " bne ._5 @cond_branch\n" " mov r0, #0x0\n" " b ._6\n" "._8:\n" " .align 2, 0\n" "._7:\n" " .word gMain\n" "._5:\n" " bl Menu_EraseScreen\n" " bl CloseMenu\n" " mov r0, #0x1\n" "._6:\n" " pop {r1}\n" " bx r1\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_TrendR() { asm( " push {r4, r5, r6, r7, lr}\n" " mov r0, #0x0\n" " ldr r7, ._11\n" "._10:\n" " mov r4, #0x0\n" " lsl r5, r0, #0x3\n" " add r6, r0, #1\n" "._9:\n" " bl Random\n" " lsl r0, r0, #0x10\n" " lsr r0, r0, #0x10\n" " mov r1, #0x16\n" " bl __umodsi3\n" " lsl r0, r0, #0x10\n" " lsr r0, r0, #0x10\n" " bl sub_80EB72C\n" " lsl r1, r4, #0x1\n" " add r1, r1, r5\n" " add r1, r1, r7\n" " strh r0, [r1]\n" " add r0, r4, #1\n" " lsl r0, r0, #0x10\n" " lsr r4, r0, #0x10\n" " cmp r4, #0x1\n" " bls ._9 @cond_branch\n" " lsl r0, r6, #0x10\n" " lsr r0, r0, #0x10\n" " cmp r0, #0x4\n" " bls ._10 @cond_branch\n" " bl Menu_EraseScreen\n" " bl CloseMenu\n" " mov r0, #0x1\n" " pop {r4, r5, r6, r7}\n" " pop {r1}\n" " bx r1\n" "._12:\n" " .align 2, 0\n" "._11:\n" " .word gSaveBlock1+0x2dd8\n" "\n" ); } __attribute__((naked)) void debug_sub_8090880() { asm( " push {lr}\n" " bl UpdatePaletteFade\n" " lsl r0, r0, #0x18\n" " cmp r0, #0\n" " beq ._13 @cond_branch\n" " mov r0, #0x0\n" " b ._14\n" "._13:\n" " bl sub_80E60D8\n" " mov r0, #0x1\n" "._14:\n" " pop {r1}\n" " bx r1\n" "\n" ); } __attribute__((naked)) void debug_sub_809089C() { asm( " push {lr}\n" " bl Menu_ProcessInput\n" " lsl r0, r0, #0x18\n" " asr r1, r0, #0x18\n" " mov r0, #0x2\n" " neg r0, r0\n" " cmp r1, r0\n" " beq ._15 @cond_branch\n" " add r0, r0, #0x1\n" " cmp r1, r0\n" " bne ._16 @cond_branch\n" " bl CloseMenu\n" " mov r0, #0x1\n" " b ._17\n" "._16:\n" " ldr r2, ._19\n" " ldr r0, ._19 + 4\n" " lsl r1, r1, #0x3\n" " add r0, r0, #0x4\n" " add r1, r1, r0\n" " ldr r0, [r1]\n" " strh r0, [r2]\n" " ldrh r0, [r2]\n" " sub r0, r0, #0x5\n" " cmp r0, #0x7\n" " bhi ._27 @cond_branch\n" " lsl r0, r0, #0x2\n" " ldr r1, ._19 + 8\n" " add r0, r0, r1\n" " ldr r0, [r0]\n" " mov pc, r0\n" "._20:\n" " .align 2, 0\n" "._19:\n" " .word gSpecialVar_0x8004\n" " .word gUnknown_Debug_083C4EC0\n" " .word ._21\n" "._21:\n" " .word ._29\n" " .word ._27\n" " .word ._29\n" " .word ._29\n" " .word ._27\n" " .word ._27\n" " .word ._29\n" " .word ._29\n" "._29:\n" " ldr r0, ._30\n" " mov r1, #0x0\n" " strh r1, [r0]\n" " ldr r0, ._30 + 4\n" " strh r1, [r0]\n" "._27:\n" " mov r0, #0x1\n" " mov r1, #0x0\n" " bl fade_screen\n" " ldr r1, ._30 + 8\n" " ldr r0, ._30 + 12\n" " str r0, [r1]\n" "._15:\n" " mov r0, #0x0\n" "._17:\n" " pop {r1}\n" " bx r1\n" "._31:\n" " .align 2, 0\n" "._30:\n" " .word gSpecialVar_0x8005\n" " .word gSpecialVar_0x8006\n" " .word gCallback_03004AE8\n" " .word debug_sub_8090880+1\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_SimpleText() { asm( " push {lr}\n" " add sp, sp, #0xfffffff8\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0xc\n" " mov r3, #0x13\n" " bl Menu_DrawStdWindowFrame\n" " ldr r3, ._32\n" " mov r0, #0x1\n" " mov r1, #0x1\n" " mov r2, #0x9\n" " bl Menu_PrintItems\n" " mov r0, #0x0\n" " str r0, [sp]\n" " mov r0, #0xb\n" " str r0, [sp, #0x4]\n" " mov r0, #0x0\n" " mov r1, #0x1\n" " mov r2, #0x1\n" " mov r3, #0x9\n" " bl InitMenu\n" " ldr r1, ._32 + 4\n" " ldr r0, ._32 + 8\n" " str r0, [r1]\n" " mov r0, #0x0\n" " add sp, sp, #0x8\n" " pop {r1}\n" " bx r1\n" "._33:\n" " .align 2, 0\n" "._32:\n" " .word gUnknown_Debug_083C4EC0\n" " .word gCallback_03004AE8\n" " .word debug_sub_809089C+1\n" "\n" ); } __attribute__((naked)) void debug_sub_8090984() { asm( " push {r4, r5, r6, r7, lr}\n" " bl Menu_ProcessInput\n" " lsl r2, r0, #0x18\n" " asr r1, r2, #0x18\n" " mov r0, #0x2\n" " neg r0, r0\n" " cmp r1, r0\n" " beq ._34 @cond_branch\n" " add r0, r0, #0x1\n" " cmp r1, r0\n" " beq ._46 @cond_branch\n" " cmp r1, #0x4\n" " bgt ._36 @cond_branch\n" " lsr r0, r2, #0x18\n" " bl debug_sub_810B32C\n" " b ._46\n" "._34:\n" " mov r0, #0x0\n" " b ._38\n" "._36:\n" " cmp r1, #0x5\n" " bne ._39 @cond_branch\n" " bl sub_80F7F30\n" " b ._46\n" "._39:\n" " cmp r1, #0x6\n" " bne ._41 @cond_branch\n" " mov r4, #0x0\n" " ldr r0, ._44\n" " add r1, r0, #2\n" " mov ip, r1\n" " ldr r7, ._44 + 4\n" " ldr r1, ._44 + 8\n" " add r6, r0, r1\n" " add r5, r0, #0\n" " add r5, r5, #0xe\n" "._42:\n" " lsl r1, r4, #0x1\n" " mov r0, ip\n" " add r3, r1, r0\n" " add r0, r1, r7\n" " ldrh r2, [r0]\n" " strh r2, [r3]\n" " add r0, r1, r5\n" " strh r2, [r0]\n" " add r1, r6, r1\n" " strh r2, [r1]\n" " add r0, r4, #1\n" " lsl r0, r0, #0x10\n" " lsr r4, r0, #0x10\n" " cmp r4, #0x2\n" " bls ._42 @cond_branch\n" " b ._46\n" "._45:\n" " .align 2, 0\n" "._44:\n" " .word gSaveBlock1+0x2d94\n" " .word gUnknown_Debug_083C4F08\n" " .word 0xfffffd94\n" "._41:\n" " cmp r1, #0x7\n" " bne ._46 @cond_branch\n" " mov r4, #0x0\n" "._47:\n" " lsl r0, r4, #0x18\n" " lsr r0, r0, #0x18\n" " bl sub_80EB890\n" " add r0, r4, #1\n" " lsl r0, r0, #0x10\n" " lsr r4, r0, #0x10\n" " cmp r4, #0x20\n" " bls ._47 @cond_branch\n" "._46:\n" " bl CloseMenu\n" " mov r0, #0x1\n" "._38:\n" " pop {r4, r5, r6, r7}\n" " pop {r1}\n" " bx r1\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_OldMan() { asm( " push {lr}\n" " add sp, sp, #0xfffffff8\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0xa\n" " mov r3, #0x11\n" " bl Menu_DrawStdWindowFrame\n" " ldr r3, ._48\n" " mov r0, #0x1\n" " mov r1, #0x1\n" " mov r2, #0x8\n" " bl Menu_PrintItems\n" " bl GetCurrentMauvilleOldMan\n" " lsl r0, r0, #0x18\n" " lsr r0, r0, #0x18\n" " str r0, [sp]\n" " mov r0, #0x9\n" " str r0, [sp, #0x4]\n" " mov r0, #0x0\n" " mov r1, #0x1\n" " mov r2, #0x1\n" " mov r3, #0x8\n" " bl InitMenu\n" " ldr r1, ._48 + 4\n" " ldr r0, ._48 + 8\n" " str r0, [r1]\n" " mov r0, #0x0\n" " add sp, sp, #0x8\n" " pop {r1}\n" " bx r1\n" "._49:\n" " .align 2, 0\n" "._48:\n" " .word gUnknown_Debug_083C4F54\n" " .word gCallback_03004AE8\n" " .word debug_sub_8090984+1\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_LanettesPC() { asm( " push {lr}\n" " bl Menu_EraseScreen\n" " bl ShowPokemonStorageSystem\n" " mov r0, #0x1\n" " pop {r1}\n" " bx r1\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_TownFlags() { asm( " push {lr}\n" " ldr r0, ._50\n" " bl FlagSet\n" " mov r0, #0x81\n" " lsl r0, r0, #0x4\n" " bl FlagSet\n" " ldr r0, ._50 + 4\n" " bl FlagSet\n" " ldr r0, ._50 + 8\n" " bl FlagSet\n" " ldr r0, ._50 + 12\n" " bl FlagSet\n" " ldr r0, ._50 + 16\n" " bl FlagSet\n" " ldr r0, ._50 + 20\n" " bl FlagSet\n" " ldr r0, ._50 + 24\n" " bl FlagSet\n" " ldr r0, ._50 + 28\n" " bl FlagSet\n" " ldr r0, ._50 + 32\n" " bl FlagSet\n" " ldr r0, ._50 + 36\n" " bl FlagSet\n" " ldr r0, ._50 + 40\n" " bl FlagSet\n" " ldr r0, ._50 + 44\n" " bl FlagSet\n" " ldr r0, ._50 + 48\n" " bl FlagSet\n" " ldr r0, ._50 + 52\n" " bl FlagSet\n" " ldr r0, ._50 + 56\n" " bl FlagSet\n" " ldr r0, ._50 + 60\n" " bl FlagSet\n" " ldr r0, ._50 + 64\n" " bl FlagSet\n" " ldr r0, ._50 + 68\n" " bl FlagSet\n" " ldr r0, ._50 + 72\n" " bl FlagSet\n" " ldr r0, ._50 + 76\n" " bl FlagSet\n" " ldr r0, ._50 + 80\n" " bl FlagSet\n" " ldr r0, ._50 + 84\n" " bl FlagSet\n" " ldr r0, ._50 + 88\n" " bl FlagSet\n" " ldr r0, ._50 + 92\n" " bl FlagSet\n" " ldr r0, ._50 + 96\n" " bl FlagSet\n" " ldr r0, ._50 + 100\n" " bl FlagSet\n" " ldr r0, ._50 + 104\n" " bl FlagSet\n" " ldr r0, ._50 + 108\n" " bl FlagSet\n" " ldr r0, ._50 + 112\n" " bl FlagSet\n" " ldr r0, ._50 + 116\n" " bl FlagSet\n" " ldr r0, ._50 + 120\n" " bl FlagSet\n" " mov r0, #0x84\n" " lsl r0, r0, #0x4\n" " bl FlagSet\n" " ldr r0, ._50 + 124\n" " bl FlagSet\n" " ldr r0, ._50 + 128\n" " bl FlagSet\n" " ldr r0, ._50 + 132\n" " bl FlagSet\n" " ldr r0, ._50 + 136\n" " bl FlagSet\n" " ldr r0, ._50 + 140\n" " bl FlagSet\n" " ldr r0, ._50 + 144\n" " bl FlagSet\n" " ldr r0, ._50 + 148\n" " bl FlagSet\n" " ldr r0, ._50 + 152\n" " bl FlagSet\n" " bl CloseMenu\n" " mov r0, #0x1\n" " pop {r1}\n" " bx r1\n" "._51:\n" " .align 2, 0\n" "._50:\n" " .word 0x80f\n" " .word 0x811\n" " .word 0x812\n" " .word 0x813\n" " .word 0x814\n" " .word 0x815\n" " .word 0x816\n" " .word 0x817\n" " .word 0x818\n" " .word 0x819\n" " .word 0x81a\n" " .word 0x81b\n" " .word 0x81c\n" " .word 0x81d\n" " .word 0x81e\n" " .word 0x848\n" " .word 0x849\n" " .word 0x84a\n" " .word 0x854\n" " .word 0x855\n" " .word 0x856\n" " .word 0x857\n" " .word 0x858\n" " .word 0x859\n" " .word 0x85a\n" " .word 0x85b\n" " .word 0x85c\n" " .word 0x83c\n" " .word 0x83d\n" " .word 0x83e\n" " .word 0x83f\n" " .word 0x841\n" " .word 0x842\n" " .word 0x843\n" " .word 0x844\n" " .word 0x845\n" " .word 0x846\n" " .word 0x847\n" " .word 0x83b\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_AwardARibbon() { asm( " push {lr}\n" " mov r0, #0x1\n" " neg r0, r0\n" " mov r1, #0x10\n" " mov r2, #0x0\n" " bl BlendPalettes\n" " ldr r0, ._52\n" " bl SetMainCallback2\n" " bl CloseMenu\n" " mov r0, #0x1\n" " pop {r1}\n" " bx r1\n" "._53:\n" " .align 2, 0\n" "._52:\n" " .word debug_sub_80915BC+1\n" "\n" ); } __attribute__((naked)) void debug_sub_8090C44() { asm( " push {r4, r5, lr}\n" " ldr r4, ._54\n" " sub r5, r4, #1\n" " ldrh r1, [r5, #0x8]\n" " add r0, r4, #0\n" " mov r2, #0x2\n" " mov r3, #0x5\n" " bl ConvertIntToDecimalStringN\n" " add r0, r4, #0\n" " mov r1, #0x1\n" " mov r2, #0x1\n" " bl Menu_PrintText\n" " add r0, r4, #0\n" " mov r1, #0x0\n" " mov r2, #0x5\n" " bl StringFill\n" " ldrb r0, [r5]\n" " add r0, r0, r4\n" " mov r1, #0x79\n" " strb r1, [r0]\n" " add r0, r4, #0\n" " mov r1, #0x1\n" " mov r2, #0x3\n" " bl Menu_PrintText\n" " pop {r4, r5}\n" " pop {r0}\n" " bx r0\n" "._55:\n" " .align 2, 0\n" "._54:\n" " .word +0x2000001\n" "\n" ); } __attribute__((naked)) void debug_sub_8090C88() { asm( " push {r4, r5, r6, r7, lr}\n" " mov r7, r8\n" " push {r7}\n" " add sp, sp, #0xfffffffc\n" " mov r0, #0x1\n" " mov r8, r0\n" " ldr r2, ._59\n" " ldrh r1, [r2, #0x2e]\n" " mov r0, #0x20\n" " and r0, r0, r1\n" " add r3, r2, #0\n" " cmp r0, #0\n" " beq ._57 @cond_branch\n" " ldr r1, ._59 + 4\n" " ldrb r0, [r1]\n" " cmp r0, #0\n" " beq ._57 @cond_branch\n" " sub r0, r0, #0x1\n" " strb r0, [r1]\n" " b ._62\n" "._60:\n" " .align 2, 0\n" "._59:\n" " .word gMain\n" " .word +0x2000000\n" "._67:\n" " add r0, r0, #0x1\n" " strb r0, [r1]\n" " b ._62\n" "._77:\n" " strh r1, [r7, #0x8]\n" " b ._62\n" "._79:\n" " ldr r0, ._64\n" " ldrh r0, [r0, #0x8]\n" " bl SetLotteryNumber16_Unused\n" "._78:\n" " bl CloseMenu\n" " mov r0, #0x1\n" " b ._63\n" "._65:\n" " .align 2, 0\n" "._64:\n" " .word +0x2000000\n" "._57:\n" " ldrh r1, [r3, #0x2e]\n" " mov r0, #0x10\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._66 @cond_branch\n" " ldr r1, ._81\n" " ldrb r0, [r1]\n" " cmp r0, #0x3\n" " bls ._67 @cond_branch\n" "._66:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x40\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._68 @cond_branch\n" " ldr r0, ._81\n" " ldrh r1, [r0, #0x8]\n" " str r1, [r0, #0xc]\n" " ldr r1, ._81 + 4\n" " strh r1, [r0, #0x10]\n" " mov r4, #0x0\n" " ldrb r1, [r0]\n" " add r7, r0, #0\n" " cmp r4, r1\n" " bcs ._69 @cond_branch\n" " add r5, r7, #0\n" " add r6, r1, #0\n" "._70:\n" " ldrh r0, [r5, #0x10]\n" " mov r1, #0xa\n" " str r3, [sp]\n" " bl __udivsi3\n" " strh r0, [r5, #0x10]\n" " add r0, r4, #1\n" " lsl r0, r0, #0x18\n" " lsr r4, r0, #0x18\n" " ldr r3, [sp]\n" " cmp r4, r6\n" " bcc ._70 @cond_branch\n" "._69:\n" " ldrh r1, [r7, #0x10]\n" " ldr r0, [r7, #0xc]\n" " add r0, r0, r1\n" " str r0, [r7, #0xc]\n" " ldr r1, ._81 + 8\n" " cmp r0, r1\n" " ble ._71 @cond_branch\n" " str r1, [r7, #0xc]\n" "._71:\n" " ldrh r0, [r7, #0x8]\n" " ldr r1, [r7, #0xc]\n" " cmp r0, r1\n" " bne ._77 @cond_branch\n" "._68:\n" " ldrh r1, [r3, #0x30]\n" " mov r0, #0x80\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._73 @cond_branch\n" " ldr r0, ._81\n" " ldrh r1, [r0, #0x8]\n" " str r1, [r0, #0xc]\n" " ldr r1, ._81 + 4\n" " strh r1, [r0, #0x10]\n" " mov r4, #0x0\n" " ldrb r1, [r0]\n" " add r7, r0, #0\n" " cmp r4, r1\n" " bcs ._74 @cond_branch\n" " add r5, r7, #0\n" " add r6, r1, #0\n" "._75:\n" " ldrh r0, [r5, #0x10]\n" " mov r1, #0xa\n" " str r3, [sp]\n" " bl __udivsi3\n" " strh r0, [r5, #0x10]\n" " add r0, r4, #1\n" " lsl r0, r0, #0x18\n" " lsr r4, r0, #0x18\n" " ldr r3, [sp]\n" " cmp r4, r6\n" " bcc ._75 @cond_branch\n" "._74:\n" " add r2, r7, #0\n" " ldrh r1, [r2, #0x10]\n" " ldr r0, [r2, #0xc]\n" " sub r0, r0, r1\n" " str r0, [r2, #0xc]\n" " cmp r0, #0\n" " bge ._76 @cond_branch\n" " mov r0, #0x0\n" " str r0, [r2, #0xc]\n" "._76:\n" " ldrh r0, [r2, #0x8]\n" " ldr r1, [r2, #0xc]\n" " cmp r0, r1\n" " bne ._77 @cond_branch\n" "._73:\n" " ldrh r2, [r3, #0x2e]\n" " mov r0, #0x2\n" " and r0, r0, r2\n" " cmp r0, #0\n" " bne ._78 @cond_branch\n" " mov r0, #0x1\n" " and r0, r0, r2\n" " cmp r0, #0\n" " bne ._79 @cond_branch\n" " mov r0, #0x0\n" " mov r8, r0\n" "._62:\n" " mov r0, r8\n" " cmp r0, #0\n" " beq ._80 @cond_branch\n" " bl debug_sub_8090C44\n" "._80:\n" " mov r0, #0x0\n" "._63:\n" " add sp, sp, #0x4\n" " pop {r3}\n" " mov r8, r3\n" " pop {r4, r5, r6, r7}\n" " pop {r1}\n" " bx r1\n" "._82:\n" " .align 2, 0\n" "._81:\n" " .word +0x2000000\n" " .word 0x2710\n" " .word 0xffff\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_PKMNLottery() { asm( " push {lr}\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0x6\n" " mov r3, #0x5\n" " bl Menu_DrawStdWindowFrame\n" " bl RetrieveLotteryNumber\n" " ldr r2, ._83\n" " ldr r0, ._83 + 4\n" " ldrh r0, [r0]\n" " mov r1, #0x0\n" " strh r0, [r2, #0x8]\n" " strb r1, [r2]\n" " bl debug_sub_8090C44\n" " ldr r1, ._83 + 8\n" " ldr r0, ._83 + 12\n" " str r0, [r1]\n" " mov r0, #0x0\n" " pop {r1}\n" " bx r1\n" "._84:\n" " .align 2, 0\n" "._83:\n" " .word +0x2000000\n" " .word gSpecialVar_Result\n" " .word gCallback_03004AE8\n" " .word debug_sub_8090C88+1\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_Trainer() { asm( " push {r4, r5, lr}\n" " mov r4, #0x0\n" " ldr r5, ._86\n" "._85:\n" " lsl r0, r4, #0x4\n" " add r0, r0, r5\n" " ldrh r0, [r0]\n" " bl SetTrainerFlag\n" " add r0, r4, #1\n" " lsl r0, r0, #0x10\n" " lsr r4, r0, #0x10\n" " cmp r4, #0x37\n" " bls ._85 @cond_branch\n" " ldr r0, ._86 + 4\n" " bl SetTrainerFlag\n" " mov r0, #0x85\n" " lsl r0, r0, #0x1\n" " bl SetTrainerFlag\n" " ldr r0, ._86 + 8\n" " bl SetTrainerFlag\n" " mov r0, #0x86\n" " lsl r0, r0, #0x1\n" " bl SetTrainerFlag\n" " ldr r0, ._86 + 12\n" " bl SetTrainerFlag\n" " mov r0, #0x87\n" " lsl r0, r0, #0x1\n" " bl SetTrainerFlag\n" " ldr r0, ._86 + 16\n" " bl SetTrainerFlag\n" " mov r0, #0x88\n" " lsl r0, r0, #0x1\n" " bl SetTrainerFlag\n" " ldr r0, ._86 + 20\n" " bl SetTrainerFlag\n" " mov r0, #0x83\n" " lsl r0, r0, #0x1\n" " bl SetTrainerFlag\n" " ldr r0, ._86 + 24\n" " bl SetTrainerFlag\n" " mov r0, #0x84\n" " lsl r0, r0, #0x1\n" " bl SetTrainerFlag\n" " ldr r0, ._86 + 28\n" " bl SetTrainerFlag\n" " bl CloseMenu\n" " mov r0, #0x1\n" " pop {r4, r5}\n" " pop {r1}\n" " bx r1\n" "._87:\n" " .align 2, 0\n" "._86:\n" " .word gTrainerEyeTrainers\n" " .word 0x109\n" " .word 0x10b\n" " .word 0x10d\n" " .word 0x10f\n" " .word 0x105\n" " .word 0x107\n" " .word 0x14f\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_PokenavD() { 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, #0xffffffe4\n" " bl Menu_DisplayDialogueFrame\n" " mov r0, #0x0\n" " mov sl, r0\n" " mov r6, #0x1\n" " mov r7, #0xff\n" " mov r1, #0x3\n" " mov r9, r1\n" "._93:\n" " ldr r4, ._94\n" " add r0, r4, #0\n" " ldr r1, ._94 + 4\n" " bl StringCopy\n" " mov r5, sl\n" " add r5, r5, #0x1\n" " add r1, r5, r4\n" " mov r0, #0xff\n" " strb r0, [r1]\n" " add r0, r4, #0\n" " mov r1, #0x2\n" " mov r2, #0xf\n" " bl Menu_PrintText\n" " mov r0, #0x0\n" " mov r8, r0\n" " str r5, [sp, #0x14]\n" " mov r1, sl\n" " lsl r1, r1, #0x2\n" " str r1, [sp, #0x18]\n" "._91:\n" " bl Random\n" " lsl r0, r0, #0x10\n" " lsr r0, r0, #0x10\n" " add r0, r0, #0x1\n" " str r0, [sp, #0x10]\n" " bl Random\n" " lsl r0, r0, #0x10\n" " lsr r0, r0, #0x10\n" " mov r1, #0x64\n" " bl __umodsi3\n" " add r0, r0, #0x1\n" " lsl r0, r0, #0x10\n" " lsr r5, r0, #0x10\n" " bl Random\n" " lsl r0, r0, #0x10\n" " lsr r0, r0, #0x10\n" " mov r1, #0xc1\n" " lsl r1, r1, #0x1\n" " bl __umodsi3\n" " add r0, r0, #0x1\n" " lsl r0, r0, #0x10\n" " lsr r3, r0, #0x10\n" " cmp r3, #0xfb\n" " bls ._89 @cond_branch\n" " add r0, r3, #0\n" " add r0, r0, #0x19\n" " lsl r0, r0, #0x10\n" " lsr r3, r0, #0x10\n" " ldr r0, ._94 + 8\n" " cmp r3, r0\n" " bls ._89 @cond_branch\n" " mov r3, #0x1\n" "._89:\n" " ldr r0, [sp, #0x18]\n" " add r0, r0, sl\n" " lsl r4, r0, #0x4\n" " sub r4, r4, r0\n" " lsl r4, r4, #0x5\n" " mov r1, r8\n" " lsl r0, r1, #0x2\n" " add r0, r0, r8\n" " lsl r0, r0, #0x4\n" " ldr r1, ._94 + 12\n" " add r0, r0, r1\n" " add r4, r4, r0\n" " lsl r2, r5, #0x18\n" " lsr r2, r2, #0x18\n" " mov r0, #0x0\n" " str r0, [sp]\n" " str r0, [sp, #0x4]\n" " str r6, [sp, #0x8]\n" " ldr r0, [sp, #0x10]\n" " str r0, [sp, #0xc]\n" " add r0, r4, #0\n" " add r1, r3, #0\n" " mov r3, #0x20\n" " bl CreateBoxMon\n" " bl Random\n" " add r1, r7, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x16\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r7, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x17\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r7, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x18\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r7, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x21\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r7, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x2f\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r7, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x30\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " mov r1, r9\n" " and r1, r1, r0\n" " add r1, r1, #0x1\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x32\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " mov r1, r9\n" " and r1, r1, r0\n" " add r1, r1, #0x1\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x33\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " mov r1, r9\n" " and r1, r1, r0\n" " add r1, r1, #0x1\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x34\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " mov r1, r9\n" " and r1, r1, r0\n" " add r1, r1, #0x1\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x36\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " mov r1, r9\n" " and r1, r1, r0\n" " add r1, r1, #0x1\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x35\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x43\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x44\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x45\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x46\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x47\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x48\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x49\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x4a\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x4b\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x4c\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x4d\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " bl Random\n" " add r1, r6, #0\n" " and r1, r1, r0\n" " str r1, [sp, #0x10]\n" " add r0, r4, #0\n" " mov r1, #0x4e\n" " add r2, sp, #0x10\n" " bl SetBoxMonData\n" " mov r0, r8\n" " add r0, r0, #0x1\n" " lsl r0, r0, #0x10\n" " lsr r0, r0, #0x10\n" " mov r8, r0\n" " cmp r0, #0x1d\n" " bhi ._90 @cond_branch\n" " b ._91\n" "._90:\n" " ldr r1, [sp, #0x14]\n" " lsl r0, r1, #0x10\n" " lsr r0, r0, #0x10\n" " mov sl, r0\n" " cmp r0, #0xd\n" " bhi ._92 @cond_branch\n" " b ._93\n" "._92:\n" " bl TayaDebugMenu_TownFlags\n" " bl TayaDebugMenu_Trainer\n" " bl CloseMenu\n" " mov r0, #0x1\n" " add sp, sp, #0x1c\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 {r1}\n" " bx r1\n" "._95:\n" " .align 2, 0\n" "._94:\n" " .word +0x2000000\n" " .word gUnknown_Debug_083C4F94\n" " .word 0x19b\n" " .word gPokemonStorage+0x4\n" "\n" ); } __attribute__((naked)) void TayaDebugMenu_8091190() { asm( " push {r4, r5, lr}\n" " add sp, sp, #0xfffffff8\n" " bl Menu_ProcessInput\n" " lsl r0, r0, #0x18\n" " asr r3, r0, #0x18\n" " mov r0, #0x2\n" " neg r0, r0\n" " cmp r3, r0\n" " beq ._96 @cond_branch\n" " add r0, r0, #0x1\n" " cmp r3, r0\n" " beq ._97 @cond_branch\n" " ldr r2, ._99\n" " ldr r1, ._99 + 4\n" " ldr r0, ._99 + 8\n" " ldrb r0, [r0]\n" " lsl r0, r0, #0x18\n" " asr r0, r0, #0x18\n" " lsl r0, r0, #0x3\n" " add r0, r0, r1\n" " ldr r1, [r0]\n" " lsl r0, r3, #0x3\n" " add r0, r0, r1\n" " ldr r0, [r0, #0x4]\n" " str r0, [r2]\n" "._106:\n" " mov r0, #0x0\n" " b ._98\n" "._100:\n" " .align 2, 0\n" "._99:\n" " .word gCallback_03004AE8\n" " .word gUnknown_Debug_83C5068\n" " .word unk_2030224\n" "._96:\n" " ldr r3, ._107\n" " ldrb r4, [r3]\n" " ldr r2, ._107 + 4\n" " ldrh r1, [r2, #0x2e]\n" " mov r0, #0x20\n" " and r0, r0, r1\n" " add r5, r3, #0\n" " cmp r0, #0\n" " beq ._102 @cond_branch\n" " sub r0, r4, #1\n" " strb r0, [r5]\n" " lsl r0, r0, #0x18\n" " cmp r0, #0\n" " bge ._102 @cond_branch\n" " mov r0, #0x1\n" " strb r0, [r5]\n" "._102:\n" " ldrh r1, [r2, #0x2e]\n" " mov r0, #0x10\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._104 @cond_branch\n" " ldrb r0, [r5]\n" " add r0, r0, #0x1\n" " strb r0, [r5]\n" " lsl r0, r0, #0x18\n" " lsr r0, r0, #0x18\n" " cmp r0, #0x1\n" " bls ._104 @cond_branch\n" " mov r0, #0x0\n" " strb r0, [r5]\n" "._104:\n" " lsl r0, r4, #0x18\n" " asr r0, r0, #0x18\n" " mov r1, #0x0\n" " ldrsb r1, [r5, r1]\n" " cmp r0, r1\n" " beq ._106 @cond_branch\n" " bl Menu_EraseScreen\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0xb\n" " mov r3, #0x13\n" " bl Menu_DrawStdWindowFrame\n" " ldr r4, ._107 + 8\n" " mov r0, #0x0\n" " ldrsb r0, [r5, r0]\n" " lsl r0, r0, #0x3\n" " add r0, r0, r4\n" " ldrb r2, [r0, #0x4]\n" " ldr r3, [r0]\n" " mov r0, #0x1\n" " mov r1, #0x1\n" " bl Menu_PrintItems\n" " mov r0, #0x0\n" " ldrsb r0, [r5, r0]\n" " lsl r0, r0, #0x3\n" " add r0, r0, r4\n" " ldrb r3, [r0, #0x4]\n" " mov r0, #0x0\n" " str r0, [sp]\n" " mov r0, #0xa\n" " str r0, [sp, #0x4]\n" " mov r0, #0x0\n" " mov r1, #0x1\n" " mov r2, #0x1\n" " bl InitMenu\n" " b ._106\n" "._108:\n" " .align 2, 0\n" "._107:\n" " .word unk_2030224\n" " .word gMain\n" " .word gUnknown_Debug_83C5068\n" "._97:\n" " bl CloseMenu\n" " mov r0, #0x1\n" "._98:\n" " add sp, sp, #0x8\n" " pop {r4, r5}\n" " pop {r1}\n" " bx r1\n" "\n" ); } __attribute__((naked)) void InitTayaDebugWindow() { asm( " push {lr}\n" " add sp, sp, #0xfffffff8\n" " ldr r1, ._109\n" " mov r0, #0x0\n" " strb r0, [r1]\n" " bl Menu_EraseScreen\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0xb\n" " mov r3, #0x13\n" " bl Menu_DrawStdWindowFrame\n" " ldr r0, ._109 + 4\n" " ldr r3, [r0]\n" " mov r0, #0x1\n" " mov r1, #0x1\n" " mov r2, #0x9\n" " bl Menu_PrintItems\n" " mov r0, #0x0\n" " str r0, [sp]\n" " mov r0, #0xa\n" " str r0, [sp, #0x4]\n" " mov r0, #0x0\n" " mov r1, #0x1\n" " mov r2, #0x1\n" " mov r3, #0x9\n" " bl InitMenu\n" " ldr r1, ._109 + 8\n" " ldr r0, ._109 + 12\n" " str r0, [r1]\n" " mov r0, #0x0\n" " add sp, sp, #0x8\n" " pop {r1}\n" " bx r1\n" "._110:\n" " .align 2, 0\n" "._109:\n" " .word unk_2030224\n" " .word gUnknown_Debug_83C5068\n" " .word gCallback_03004AE8\n" " .word TayaDebugMenu_8091190+1\n" "\n" ); } __attribute__((naked)) void debug_sub_80912D8() { asm( " push {lr}\n" " ldr r0, ._113\n" " ldrb r1, [r0, #0x7]\n" " mov r0, #0x80\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._111 @cond_branch\n" " mov r0, #0x0\n" " b ._112\n" "._114:\n" " .align 2, 0\n" "._113:\n" " .word gPaletteFade\n" "._111:\n" " ldr r0, ._115\n" " bl SetMainCallback2\n" " mov r0, #0x1\n" "._112:\n" " pop {r1}\n" " bx r1\n" "._116:\n" " .align 2, 0\n" "._115:\n" " .word debug_sub_8110F28+1\n" "\n" ); } __attribute__((naked)) void debug_sub_8091300() { asm( " push {lr}\n" " mov r0, #0x1\n" " mov r1, #0x0\n" " bl fade_screen\n" " ldr r1, ._117\n" " ldr r0, ._117 + 4\n" " str r0, [r1]\n" " mov r0, #0x0\n" " pop {r1}\n" " bx r1\n" "._118:\n" " .align 2, 0\n" "._117:\n" " .word gCallback_03004AE8\n" " .word debug_sub_80912D8+1\n" "\n" ); } __attribute__((naked)) void debug_sub_8091320() { asm( " push {lr}\n" " bl LoadOam\n" " bl ProcessSpriteCopyRequests\n" " bl TransferPlttBuffer\n" " pop {r0}\n" " bx r0\n" "\n" ); } __attribute__((naked)) void debug_sub_8091334() { asm( " push {r4, r5, r6, r7, lr}\n" " mov r7, r9\n" " mov r6, r8\n" " push {r6, r7}\n" " bl AnimateSprites\n" " bl BuildOamBuffer\n" " ldr r3, ._123\n" " add r0, r3, #0\n" " add r0, r0, #0x52\n" " ldrb r4, [r0]\n" " cmp r4, #0\n" " beq ._119 @cond_branch\n" " cmp r4, #0x1\n" " bne ._120 @cond_branch\n" " b ._121\n" "._120:\n" " b ._162\n" "._124:\n" " .align 2, 0\n" "._123:\n" " .word +0x2000000\n" "._119:\n" " add r5, r3, #0\n" " add r5, r5, #0x55\n" " strb r4, [r5]\n" " ldr r2, ._131\n" " ldrh r1, [r2, #0x2e]\n" " mov r0, #0x40\n" " and r0, r0, r1\n" " mov r9, r2\n" " cmp r0, #0\n" " beq ._126 @cond_branch\n" " add r1, r3, #0\n" " add r1, r1, #0x54\n" " ldrb r0, [r1]\n" " cmp r0, #0\n" " beq ._126 @cond_branch\n" " sub r0, r0, #0x1\n" " strb r0, [r1]\n" " mov r0, #0x1\n" " strb r0, [r5]\n" "._126:\n" " mov r0, r9\n" " ldrh r1, [r0, #0x2e]\n" " mov r0, #0x80\n" " and r0, r0, r1\n" " ldr r5, ._131 + 4\n" " cmp r0, #0\n" " beq ._133 @cond_branch\n" " add r0, r5, #0\n" " add r0, r0, #0x53\n" " ldrb r0, [r0]\n" " cmp r0, #0x2\n" " beq ._128 @cond_branch\n" " add r1, r5, #0\n" " add r1, r1, #0x54\n" " ldrb r0, [r1]\n" " cmp r0, #0x4\n" " bhi ._133 @cond_branch\n" " b ._130\n" "._132:\n" " .align 2, 0\n" "._131:\n" " .word gMain\n" " .word +0x2000000\n" "._128:\n" " add r1, r5, #0\n" " add r1, r1, #0x54\n" " ldrb r0, [r1]\n" " cmp r0, #0x3\n" " bhi ._133 @cond_branch\n" "._130:\n" " add r0, r0, #0x1\n" " strb r0, [r1]\n" " add r1, r1, #0x1\n" " mov r0, #0x1\n" " strb r0, [r1]\n" "._133:\n" " mov r2, r9\n" " ldrh r1, [r2, #0x2e]\n" " mov r0, #0x20\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._135 @cond_branch\n" " add r1, r5, #0\n" " add r1, r1, #0x53\n" " ldrb r0, [r1]\n" " cmp r0, #0\n" " beq ._135 @cond_branch\n" " sub r0, r0, #0x1\n" " strb r0, [r1]\n" " add r1, r1, #0x2\n" " mov r0, #0x1\n" " strb r0, [r1]\n" "._135:\n" " mov r3, r9\n" " ldrh r1, [r3, #0x2e]\n" " mov r0, #0x10\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._140 @cond_branch\n" " add r0, r5, #0\n" " add r0, r0, #0x54\n" " ldrb r0, [r0]\n" " cmp r0, #0x5\n" " beq ._137 @cond_branch\n" " add r1, r5, #0\n" " add r1, r1, #0x53\n" " ldrb r0, [r1]\n" " cmp r0, #0x1\n" " bhi ._140 @cond_branch\n" " b ._139\n" "._137:\n" " add r1, r5, #0\n" " add r1, r1, #0x53\n" " ldrb r0, [r1]\n" " cmp r0, #0\n" " bne ._140 @cond_branch\n" "._139:\n" " add r0, r0, #0x1\n" " strb r0, [r1]\n" " add r1, r1, #0x2\n" " mov r0, #0x1\n" " strb r0, [r1]\n" "._140:\n" " add r0, r5, #0\n" " add r0, r0, #0x55\n" " ldrb r0, [r0]\n" " cmp r0, #0\n" " bne ._141 @cond_branch\n" " mov r0, r9\n" " ldrh r2, [r0, #0x2e]\n" " mov r0, #0x1\n" " and r0, r0, r2\n" " cmp r0, #0\n" " beq ._142 @cond_branch\n" " ldr r2, ._145\n" " add r3, r5, #0\n" " add r3, r3, #0x53\n" " add r0, r5, #0\n" " add r0, r0, #0x54\n" " ldrb r1, [r0]\n" " lsl r0, r1, #0x1\n" " add r0, r0, r1\n" " ldrb r3, [r3]\n" " add r0, r0, r3\n" " lsl r0, r0, #0x3\n" " add r0, r0, r2\n" " ldrh r0, [r0, #0x4]\n" " sub r0, r0, #0x32\n" " lsl r0, r0, #0x10\n" " lsr r0, r0, #0x10\n" " cmp r0, #0x4\n" " bhi ._143 @cond_branch\n" " add r1, r5, #0\n" " add r1, r1, #0x56\n" " mov r0, #0x4\n" " b ._144\n" "._146:\n" " .align 2, 0\n" "._145:\n" " .word gUnknown_Debug_083C50EC\n" "._143:\n" " add r1, r5, #0\n" " add r1, r1, #0x56\n" " mov r0, #0x1\n" "._144:\n" " strb r0, [r1]\n" " add r1, r5, #0\n" " add r1, r1, #0x52\n" " mov r0, #0x1\n" " strb r0, [r1]\n" " b ._162\n" "._142:\n" " mov r0, #0x2\n" " and r0, r0, r2\n" " cmp r0, #0\n" " bne ._148 @cond_branch\n" " b ._162\n" "._148:\n" " mov r0, #0x1\n" " neg r0, r0\n" " mov r1, #0x10\n" " mov r2, #0x0\n" " bl BlendPalettes\n" " ldr r0, ._151\n" " bl SetMainCallback2\n" " b ._162\n" "._152:\n" " .align 2, 0\n" "._151:\n" " .word sub_80546F0+1\n" "._121:\n" " add r5, r3, #0\n" " add r5, r5, #0x55\n" " mov r0, #0x0\n" " strb r0, [r5]\n" " ldr r2, ._159\n" " ldrh r1, [r2, #0x2e]\n" " mov r0, #0x40\n" " and r0, r0, r1\n" " mov r9, r2\n" " cmp r0, #0\n" " beq ._154 @cond_branch\n" " add r2, r3, #0\n" " add r2, r2, #0x53\n" " add r0, r3, #0\n" " add r0, r0, #0x54\n" " ldrb r1, [r0]\n" " lsl r0, r1, #0x1\n" " add r0, r0, r1\n" " ldrb r2, [r2]\n" " add r0, r0, r2\n" " add r2, r0, r3\n" " add r0, r3, #0\n" " add r0, r0, #0x56\n" " ldrb r1, [r2]\n" " ldrb r0, [r0]\n" " cmp r1, r0\n" " bcs ._154 @cond_branch\n" " add r0, r1, #1\n" " strb r0, [r2]\n" " strb r4, [r5]\n" "._154:\n" " mov r2, r9\n" " ldrh r1, [r2, #0x2e]\n" " mov r0, #0x80\n" " and r0, r0, r1\n" " ldr r5, ._159 + 4\n" " cmp r0, #0\n" " beq ._156 @cond_branch\n" " add r2, r5, #0\n" " add r2, r2, #0x53\n" " add r0, r5, #0\n" " add r0, r0, #0x54\n" " ldrb r1, [r0]\n" " lsl r0, r1, #0x1\n" " add r0, r0, r1\n" " ldrb r2, [r2]\n" " add r0, r0, r2\n" " add r1, r0, r5\n" " ldrb r0, [r1]\n" " cmp r0, #0\n" " beq ._156 @cond_branch\n" " sub r0, r0, #0x1\n" " strb r0, [r1]\n" " add r1, r5, #0\n" " add r1, r1, #0x55\n" " mov r0, #0x1\n" " strb r0, [r1]\n" "._156:\n" " add r6, r5, #0\n" " add r0, r6, #0\n" " add r0, r0, #0x55\n" " ldrb r7, [r0]\n" " cmp r7, #0\n" " beq ._157 @cond_branch\n" "._141:\n" " bl debug_sub_80916AC\n" " b ._162\n" "._160:\n" " .align 2, 0\n" "._159:\n" " .word gMain\n" " .word +0x2000000\n" "._157:\n" " mov r3, r9\n" " ldrh r1, [r3, #0x2e]\n" " mov r0, #0x2\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._161 @cond_branch\n" " ldr r0, ._164\n" " ldr r1, ._164 + 4\n" " mov ip, r1\n" " mov r2, #0x53\n" " add r2, r2, r6\n" " mov r8, r2\n" " add r4, r6, #0\n" " add r4, r4, #0x54\n" " ldrb r2, [r4]\n" " lsl r1, r2, #0x1\n" " add r1, r1, r2\n" " mov r3, r8\n" " ldrb r3, [r3]\n" " add r1, r1, r3\n" " lsl r1, r1, #0x3\n" " add r1, r1, ip\n" " ldrh r1, [r1, #0x4]\n" " bl GetMonData\n" " ldrb r2, [r4]\n" " lsl r1, r2, #0x1\n" " add r1, r1, r2\n" " mov r2, r8\n" " ldrb r2, [r2]\n" " add r1, r1, r2\n" " add r1, r1, r6\n" " strb r0, [r1]\n" " bl debug_sub_80916AC\n" " add r0, r6, #0\n" " add r0, r0, #0x52\n" " strb r7, [r0]\n" "._161:\n" " mov r3, r9\n" " ldrh r1, [r3, #0x2e]\n" " mov r0, #0x1\n" " and r0, r0, r1\n" " cmp r0, #0\n" " beq ._162 @cond_branch\n" " ldr r2, ._164 + 4\n" " add r0, r6, #0\n" " add r0, r0, #0x53\n" " ldrb r4, [r0]\n" " add r0, r0, #0x1\n" " ldrb r1, [r0]\n" " lsl r0, r1, #0x1\n" " add r3, r0, r1\n" " add r0, r3, r4\n" " lsl r0, r0, #0x3\n" " add r1, r0, r2\n" " ldrh r0, [r1, #0x4]\n" " cmp r0, #0\n" " beq ._163 @cond_branch\n" " ldr r0, ._164\n" " ldrh r1, [r1, #0x4]\n" " add r2, r4, r6\n" " add r2, r3, r2\n" " bl SetMonData\n" "._163:\n" " add r0, r5, #0\n" " add r0, r0, #0x52\n" " strb r7, [r0]\n" "._162:\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" "._165:\n" " .align 2, 0\n" "._164:\n" " .word gPlayerParty\n" " .word gUnknown_Debug_083C50EC\n" "\n" ); } __attribute__((naked)) void debug_sub_80915BC() { asm( " push {r4, r5, r6, r7, lr}\n" " mov r7, r8\n" " push {r7}\n" " ldr r0, ._168\n" " mov r1, #0x0\n" " strh r1, [r0]\n" " add r0, r0, #0x2\n" " strh r1, [r0]\n" " mov r1, #0x0\n" " ldr r0, ._168 + 4\n" " mov r8, r0\n" " ldr r7, ._168 + 8\n" "._171:\n" " mov r4, #0x0\n" " lsl r0, r1, #0x1\n" " add r6, r1, #1\n" " add r5, r0, r1\n" "._170:\n" " add r0, r5, r4\n" " lsl r0, r0, #0x3\n" " add r0, r0, r8\n" " ldrh r1, [r0, #0x4]\n" " cmp r1, #0\n" " beq ._166 @cond_branch\n" " ldr r0, ._168 + 12\n" " bl GetMonData\n" " add r1, r4, r5\n" " add r1, r1, r7\n" " strb r0, [r1]\n" " b ._167\n" "._169:\n" " .align 2, 0\n" "._168:\n" " .word 0x4000010\n" " .word gUnknown_Debug_083C50EC\n" " .word +0x2000000\n" " .word gPlayerParty\n" "._166:\n" " add r0, r4, r5\n" " add r0, r0, r7\n" " strb r1, [r0]\n" "._167:\n" " add r0, r4, #1\n" " lsl r0, r0, #0x18\n" " lsr r4, r0, #0x18\n" " cmp r4, #0x2\n" " bls ._170 @cond_branch\n" " lsl r0, r6, #0x18\n" " lsr r1, r0, #0x18\n" " cmp r1, #0x5\n" " bls ._171 @cond_branch\n" " ldr r4, ._172\n" " add r0, r4, #0\n" " bl Text_LoadWindowTemplate\n" " add r0, r4, #0\n" " bl InitMenuWindow\n" " bl Menu_EraseScreen\n" " mov r0, #0x0\n" " mov r1, #0x0\n" " mov r2, #0x1d\n" " mov r3, #0x3\n" " bl Menu_DrawStdWindowFrame\n" " ldr r0, ._172 + 4\n" " mov r1, #0x1\n" " mov r2, #0x1\n" " bl Menu_PrintText\n" " mov r0, #0x0\n" " mov r1, #0x4\n" " mov r2, #0x1d\n" " mov r3, #0x11\n" " bl Menu_DrawStdWindowFrame\n" " mov r0, #0x0\n" " mov r1, #0x12\n" " mov r2, #0x1d\n" " mov r3, #0x15\n" " bl Menu_DrawStdWindowFrame\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 r2, ._172 + 8\n" " add r0, r2, #0\n" " add r0, r0, #0x53\n" " mov r1, #0x0\n" " strb r1, [r0]\n" " add r0, r0, #0x1\n" " strb r1, [r0]\n" " sub r0, r0, #0x2\n" " strb r1, [r0]\n" " bl debug_sub_80916AC\n" " ldr r0, ._172 + 12\n" " bl SetVBlankCallback\n" " ldr r0, ._172 + 16\n" " bl SetMainCallback2\n" " pop {r3}\n" " mov r8, r3\n" " pop {r4, r5, r6, r7}\n" " pop {r0}\n" " bx r0\n" "._173:\n" " .align 2, 0\n" "._172:\n" " .word gWindowTemplate_81E7224\n" " .word gUnknown_Debug_083C517C\n" " .word +0x2000000\n" " .word debug_sub_8091320+1\n" " .word debug_sub_8091334+1\n" "\n" ); } __attribute__((naked)) void debug_sub_80916AC() { 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, #0xfffffffc\n" " mov r6, #0x0\n" " ldr r0, ._177\n" " mov sl, r0\n" " mov r1, #0x0\n" " mov r8, r1\n" "._182:\n" " ldr r2, ._177 + 4\n" " mov r5, #0x0\n" " lsl r0, r6, #0x1\n" " mov r9, r0\n" " add r1, r6, #1\n" " str r1, [sp]\n" "._181:\n" " mov r0, sl\n" " add r0, r0, #0x53\n" " ldrb r0, [r0]\n" " cmp r0, r5\n" " bne ._175 @cond_branch\n" " ldr r1, ._177 + 8\n" " ldrb r0, [r1]\n" " cmp r0, r6\n" " bne ._175 @cond_branch\n" " mov r0, #0xef\n" " b ._176\n" "._178:\n" " .align 2, 0\n" "._177:\n" " .word +0x2000000\n" " .word +0x2000012\n" " .word +0x2000054\n" "._175:\n" " mov r0, r8\n" " strb r0, [r2]\n" " add r2, r2, #0x1\n" "._176:\n" " strb r0, [r2]\n" " add r2, r2, #0x1\n" " mov r1, r9\n" " add r4, r1, r6\n" " add r0, r4, r5\n" " lsl r0, r0, #0x3\n" " ldr r1, ._183\n" " add r0, r0, r1\n" " ldr r1, [r0]\n" " add r0, r2, #0\n" " bl StringCopy\n" " add r2, r0, #0\n" " mov r0, r8\n" " strb r0, [r2]\n" " add r2, r2, #0x1\n" " ldr r7, ._183 + 4\n" " add r4, r5, r4\n" " add r4, r4, r7\n" " ldrb r1, [r4]\n" " add r0, r2, #0\n" " mov r2, #0x0\n" " mov r3, #0x1\n" " bl ConvertIntToDecimalStringN\n" " add r2, r0, #0\n" " mov r1, r8\n" " strb r1, [r2]\n" " add r2, r2, #0x1\n" " add r0, r5, #1\n" " lsl r0, r0, #0x18\n" " lsr r5, r0, #0x18\n" " cmp r5, #0x2\n" " bhi ._179 @cond_branch\n" " cmp r6, #0x5\n" " bne ._181 @cond_branch\n" " cmp r5, #0x2\n" " bne ._181 @cond_branch\n" "._179:\n" " sub r1, r2, #1\n" " mov r0, #0xff\n" " strb r0, [r1]\n" " mov r2, r9\n" " add r2, r2, #0x5\n" " lsl r2, r2, #0x18\n" " lsr r2, r2, #0x18\n" " add r0, r7, #0\n" " add r0, r0, #0x12\n" " mov r1, #0x1\n" " bl Menu_PrintText\n" " ldr r1, [sp]\n" " lsl r0, r1, #0x18\n" " lsr r6, r0, #0x18\n" " cmp r6, #0x5\n" " bls ._182 @cond_branch\n" " add sp, sp, #0x4\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" "._184:\n" " .align 2, 0\n" "._183:\n" " .word gUnknown_Debug_083C50EC\n" " .word +0x2000000\n" "\n" ); } #endif