From 6efb614f3f3bf1b1b381bdfe220391e152fc8ebe Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Wed, 17 Jan 2018 15:49:51 -0600 Subject: add more debug things --- asm/cute_sketch.s | 343 ++++++++++++++++++++++++++++++++++ asm/pokemon_storage_system.s | 431 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 774 insertions(+) (limited to 'asm') diff --git a/asm/cute_sketch.s b/asm/cute_sketch.s index 8cb6cdbd8..26bd642cb 100644 --- a/asm/cute_sketch.s +++ b/asm/cute_sketch.s @@ -5,6 +5,349 @@ .text +.if DEBUG + + thumb_func_start debug_sub_8110CCC +debug_sub_8110CCC: +.syntax divided + push {r4, r5, r6, r7, lr} + mov r7, #0x0 + mov r1, #0x0 + ldr r2, ._5 + ldr r6, ._5 + 4 +._7: + lsl r0, r1, #0x3 + add r4, r0, r2 + ldrh r0, [r6, #0x1c] + ldrh r3, [r4, #0x4] + cmp r0, r3 + bne ._1 @cond_branch + ldrh r0, [r4, #0x6] + bl FlagGet + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._4 @cond_branch + ldrb r0, [r6, #0x1f] + ldr r1, [r4] + lsl r0, r0, #0x2 + add r0, r0, r1 + ldr r0, [r0] + bl StringLength + mov r1, #0xc + sub r1, r1, r0 + lsl r1, r1, #0x10 + lsr r5, r1, #0x10 + cmp r1, #0 + bge ._3 @cond_branch + mov r5, #0x0 +._3: + mov r7, #0x1 + mov r0, #0x10 + mov r1, #0xe + mov r2, #0x1d + mov r3, #0x13 + bl MenuDrawTextWindow + add r0, r6, #0 + add r0, r0, #0x8 + mov r1, #0x11 + mov r2, #0xf + bl MenuPrint + ldrb r0, [r6, #0x1f] + ldr r1, [r4] + lsl r0, r0, #0x2 + add r0, r0, r1 + ldr r0, [r0] + add r1, r5, #0 + add r1, r1, #0x11 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + mov r2, #0x11 + bl MenuPrint + b ._4 +._6: + .align 2, 0 +._5: + .word gUnknown_083E79C0 + .word +0x2000000 +._1: + add r0, r1, #1 + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + cmp r1, #0 + beq ._7 @cond_branch +._4: + cmp r7, #0 + bne ._8 @cond_branch + mov r0, #0x10 + mov r1, #0x10 + mov r2, #0x1d + mov r3, #0x13 + bl MenuDrawTextWindow + ldr r0, ._9 + mov r1, #0x11 + mov r2, #0x11 + bl MenuPrint + mov r0, #0x10 + mov r1, #0xe + mov r2, #0x1d + mov r3, #0xf + bl MenuZeroFillWindowRect +._8: + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._10: + .align 2, 0 +._9: + .word +0x2000008 +.syntax unified + thumb_func_end debug_sub_8110CCC + + thumb_func_start debug_sub_8110D84 +debug_sub_8110D84: +.syntax divided + push {r4, lr} + add sp, sp, #0xfffffffc + ldr r0, ._13 + ldrh r0, [r0, #0x4] + cmp r0, #0x7 + bls ._11 @cond_branch + b ._65 +._11: + lsl r0, r0, #0x2 + ldr r1, ._13 + 4 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._14: + .align 2, 0 +._13: + .word +0x2000000 + .word ._15 +._15: + .word ._16 + .word ._17 + .word ._18 + .word ._19 + .word ._20 + .word ._21 + .word ._22 + .word ._23 +._16: + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x10 + mov r3, #0x0 + bl BeginNormalPaletteFade + ldr r1, ._25 + ldrh r0, [r1, #0x4] + add r0, r0, #0x1 + b ._62 +._26: + .align 2, 0 +._25: + .word +0x2000000 +._17: + bl UpdatePaletteFade + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._27 @cond_branch + b ._65 +._27: + ldr r1, ._30 + ldrh r0, [r1, #0x4] + add r0, r0, #0x1 + b ._62 +._31: + .align 2, 0 +._30: + .word +0x2000000 +._18: + bl sub_80FAB60 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x3 + beq ._32 @cond_branch + cmp r0, #0x3 + bgt ._33 @cond_branch + b ._65 +._33: + cmp r0, #0x4 + beq ._35 @cond_branch + cmp r0, #0x5 + beq ._36 @cond_branch + b ._65 +._35: + ldr r4, ._41 + ldrb r0, [r4, #0x1e] + cmp r0, #0 + bne ._38 @cond_branch + b ._65 +._38: + mov r0, #0x5 + bl gMysteryEventScriptCmdTableEnd+0x13c0 + ldr r1, ._41 + 4 + add r0, r4, r1 + mov r1, #0x1 + strb r1, [r0] + ldr r0, ._41 + 8 + bl sub_80FC244 + b ._65 +._42: + .align 2, 0 +._41: + .word +0x2000000 + .word 0xa6e + .word sub_80FC69C+1 +._36: + mov r0, #0x5 + bl gMysteryEventScriptCmdTableEnd+0x13c0 + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r1, ._44 + ldrh r0, [r1, #0x4] + add r0, r0, #0x1 + b ._62 +._45: + .align 2, 0 +._44: + .word +0x2000000 +._19: + bl UpdatePaletteFade + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._65 @cond_branch + ldr r0, ._48 + bl SetMainCallback2 + b ._65 +._49: + .align 2, 0 +._48: + .word sub_805469C+1 +._20: + bl sub_80FAB60 + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._50 @cond_branch +._32: + bl debug_sub_8110CCC + b ._65 +._50: + ldr r0, ._54 + ldrh r1, [r0, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._65 @cond_branch + bl sub_80FBCA0 + bl sub_80FAEC4 + ldr r1, ._54 + 4 + ldrh r0, [r1, #0x4] + add r0, r0, #0x1 + b ._62 +._55: + .align 2, 0 +._54: + .word gMain + .word +0x2000000 +._21: + bl sub_80FAFC0 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._65 @cond_branch + mov r0, #0x0 + mov r1, #0x0 + bl sub_80FBB3C + ldr r1, ._58 + ldrh r0, [r1, #0x4] + add r0, r0, #0x1 + b ._62 +._59: + .align 2, 0 +._58: + .word +0x2000000 +._22: + bl sub_80FAB60 + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._60 @cond_branch + bl debug_sub_8110CCC +._60: + ldr r0, ._63 + ldrh r1, [r0, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._65 @cond_branch + bl sub_80FBCA0 + bl sub_80FAEC4 + ldr r1, ._63 + 4 + ldrh r0, [r1, #0x4] + add r0, r0, #0x1 + b ._62 +._64: + .align 2, 0 +._63: + .word gMain + .word +0x2000000 +._23: + bl sub_80FAFC0 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._65 @cond_branch + mov r0, #0x0 + mov r1, #0x0 + bl sub_80FBB3C + ldr r1, ._66 + mov r0, #0x3 +._62: + strh r0, [r1, #0x4] +._65: + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._67: + .align 2, 0 +._66: + .word +0x2000000 +.syntax unified + thumb_func_end debug_sub_8110D84 + + thumb_func_start debug_sub_8110F28 +debug_sub_8110F28: +.syntax divided + push {lr} + bl sub_80FC074 + ldr r0, ._69 + ldr r1, [r0, #0x4] + ldr r0, ._69 + 4 + cmp r1, r0 + bne ._68 @cond_branch + bl sub_80FBF94 + ldr r0, ._69 + 8 + bl sub_80FC244 + bl debug_sub_8110CCC +._68: + pop {r0} + bx r0 +._70: + .align 2, 0 +._69: + .word gMain + .word sub_80FC228+1 + .word debug_sub_8110D84+1 +.syntax unified + thumb_func_end debug_sub_8110F28 + +.endif thumb_func_start sub_80FCB5C sub_80FCB5C: @ 80FCB5C diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 2ac873fcd..14b86a3d1 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -1009,6 +1009,180 @@ _0809625C: .4byte gPokemonStorage + 0x8344 _08096260: .4byte gPCText_BOX thumb_func_end ResetPokemonStorageSystem +.ifdef DEBUG + thumb_func_start debug_sub_80A3904 +debug_sub_80A3904: +.syntax divided + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, r9 + mov r5, r8 + push {r5, r6, r7} + add sp, sp, #0xffffffe4 + mov r0, #0x0 + mov r8, r0 + mov r7, r8 + mov r1, #0x14 + str r1, [sp, #0x18] + mov r2, #0xff + mov r9, r2 +._162: + mov r5, #0x0 + cmp r7, #0 + beq ._160 @cond_branch + mov r0, #0xe + mov r8, r0 + b ._158 +._160: + bl Random + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + str r0, [sp, #0x14] + mov r2, r8 + lsl r1, r2, #0x2 + add r1, r1, r8 + lsl r3, r1, #0x4 + sub r3, r3, r1 + lsl r3, r3, #0x5 + lsl r1, r5, #0x2 + add r1, r1, r5 + lsl r1, r1, #0x4 + ldr r2, ._163 + add r1, r1, r2 + add r6, r3, r1 + ldr r2, ._163 + 4 + lsl r1, r7, #0x1 + add r1, r1, r2 + ldrh r4, [r1] + add r5, r5, #0x1 + lsl r2, r5, #0x18 + lsr r2, r2, #0x18 + mov r1, #0x0 + str r1, [sp] + str r1, [sp, #0x4] + mov r1, #0x1 + mov sl, r1 + str r1, [sp, #0x8] + str r0, [sp, #0xc] + add r0, r6, #0 + add r1, r4, #0 + mov r3, #0x20 + bl CreateBoxMon + cmp r4, #0 + beq ._157 @cond_branch + cmp r4, #0xac + bne ._156 @cond_branch + add r0, sp, #0x10 + mov r2, sl + strb r2, [r0] + add r0, r6, #0 + mov r1, #0x2d + add r2, sp, #0x10 + bl SetBoxMonData +._156: + bl Random + mov r1, r9 + and r1, r1, r0 + str r1, [sp, #0x14] + add r4, sp, #0x14 + add r0, r6, #0 + mov r1, #0x16 + add r2, r4, #0 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + str r1, [sp, #0x14] + add r0, r6, #0 + mov r1, #0x17 + add r2, r4, #0 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + str r1, [sp, #0x14] + add r0, r6, #0 + mov r1, #0x18 + add r2, r4, #0 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + str r1, [sp, #0x14] + add r0, r6, #0 + mov r1, #0x21 + add r2, r4, #0 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + str r1, [sp, #0x14] + add r0, r6, #0 + mov r1, #0x2f + add r2, r4, #0 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + str r1, [sp, #0x14] + add r0, r6, #0 + mov r1, #0x30 + add r2, r4, #0 + bl SetBoxMonData + ldr r0, [sp, #0x18] + cmp r0, #0 + beq ._157 @cond_branch + sub r0, r0, #0x1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + str r0, [sp, #0x18] + mov r1, sl + str r1, [sp, #0x14] + add r0, r6, #0 + mov r1, #0x32 + add r2, r4, #0 + bl SetBoxMonData +._157: + add r0, r7, #1 + lsl r0, r0, #0x10 + lsr r7, r0, #0x10 + lsl r0, r5, #0x10 + lsr r5, r0, #0x10 + cmp r5, #0x1d + bhi ._158 @cond_branch + cmp r7, #0 + bne ._159 @cond_branch + b ._160 +._159: + mov r2, #0xe + mov r8, r2 +._158: + mov r0, r8 + add r0, r0, #0x1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r8, r0 + cmp r0, #0xd + bhi ._161 @cond_branch + b ._162 +._161: + add sp, sp, #0x1c + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._164: + .align 2, 0 +._163: + .word gPokemonStorage+0x4 + .word gUnknown_Debug_083E05F0 +.syntax unified + thumb_func_end debug_sub_80A3904 +.endif + thumb_func_start sub_8096264 sub_8096264: @ 8096264 push {r4-r6,lr} @@ -2073,6 +2247,119 @@ _08096AF4: .4byte gMain _08096AF8: .4byte 0x0000043c thumb_func_end sub_80969A0 +.ifdef DEBUG + + thumb_func_start debug_sub_80A4300 +debug_sub_80A4300: +.syntax divided + push {lr} + ldr r1, ._296 + mov r0, #0x0 + strb r0, [r1] + ldr r1, ._296 + 4 + mov r0, #0x0 + strb r0, [r1, #0x5] + bl sub_8096884 + ldr r0, ._296 + 8 + ldr r1, [r0, #0x4] + ldr r0, ._296 + 12 + cmp r1, r0 + bne ._295 @cond_branch + ldr r1, ._296 + 16 + mov r0, #0x1 + strb r0, [r1] +._295: + pop {r0} + bx r0 +._297: + .align 2, 0 +._296: + .word gUnknown_0203847D + .word +0x2000000 + .word gMain + .word sub_8096B38+1 + .word unk_2038790 +.syntax unified + thumb_func_end debug_sub_80A4300 + + thumb_func_start debug_sub_80A433C +debug_sub_80A433C: +.syntax divided + push {lr} + ldr r2, ._298 + str r1, [r2] + ldr r1, ._298 + 4 + str r0, [r1] + ldr r0, ._298 + 8 + bl SetMainCallback2 + pop {r0} + bx r0 +._299: + .align 2, 0 +._298: + .word unk_2038794 + .word unk_2038798 + .word debug_sub_80A4300+1 +.syntax unified + thumb_func_end debug_sub_80A433C + + thumb_func_start debug_sub_80A435C +debug_sub_80A435C: +.syntax divided + push {r4, r5, lr} + add sp, sp, #0xfffffffc + ldr r5, ._303 + ldrb r4, [r5, #0x4] + cmp r4, #0 + beq ._300 @cond_branch + cmp r4, #0x1 + beq ._301 @cond_branch + b ._308 +._304: + .align 2, 0 +._303: + .word +0x2000000 +._300: + ldr r0, ._306 + ldr r0, [r0] + bl unref_sub_809CB94 + mov r0, #0x1 + neg r0, r0 + str r4, [sp] + mov r1, #0x0 + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldrb r0, [r5, #0x4] + add r0, r0, #0x1 + strb r0, [r5, #0x4] + b ._308 +._307: + .align 2, 0 +._306: + .word unk_2038798 +._301: + bl UpdatePaletteFade + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._308 @cond_branch + ldr r0, ._309 + ldr r0, [r0] + bl _call_via_r0 +._308: + add sp, sp, #0x4 + pop {r4, r5} + pop {r0} + bx r0 +._310: + .align 2, 0 +._309: + .word unk_2038794 +.syntax unified + thumb_func_end debug_sub_80A435C + +.endif + thumb_func_start sub_8096AFC sub_8096AFC: @ 8096AFC push {lr} @@ -13963,6 +14250,149 @@ sub_809CA8C: @ 809CA8C bx r0 thumb_func_end sub_809CA8C +.ifdef DEBUG + thumb_func_start debug_sub_80AA40C +debug_sub_80AA40C: +.syntax divided + push {lr} + bl sub_809AB8C + lsl r0, r0, #0x10 + cmp r0, #0 + beq ._2084 @cond_branch + bl sub_809CDCC + mov r0, #0x20 + bl sub_809CDEC + mov r0, #0x6 + bl sub_809CDEC + mov r0, #0x1 + b ._2085 +._2084: + mov r0, #0x0 +._2085: + pop {r1} + bx r1 +.syntax unified + thumb_func_end debug_sub_80AA40C +.endif + +.if DEBUG + thumb_func_start sub_809CAB0 +sub_809CAB0: +.syntax divided + push {lr} + ldr r0, ._2088 + ldrb r0, [r0] + cmp r0, #0 + beq ._2086 @cond_branch + bl debug_sub_80AA40C + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + b ._2110 +._2089: + .align 2, 0 +._2088: + .word unk_2038790 +._2086: + bl sub_809CDCC + bl sub_809AB8C + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + ldr r0, ._2094 + ldr r0, [r0] + ldrb r0, [r0, #0x5] + cmp r0, #0x1 + beq ._2090 @cond_branch + cmp r0, #0x1 + bgt ._2091 @cond_branch + cmp r0, #0 + beq ._2092 @cond_branch + b ._2108 +._2095: + .align 2, 0 +._2094: + .word gUnknown_083B6DB4 +._2091: + cmp r0, #0x2 + beq ._2096 @cond_branch + b ._2108 +._2090: + cmp r1, #0 + beq ._2108 @cond_branch + mov r0, #0x1 + bl sub_809CDEC + b ._2109 +._2092: + cmp r1, #0 + beq ._2108 @cond_branch + mov r0, #0x2 + bl sub_809CDEC + b ._2109 +._2096: + ldr r0, ._2105 + ldrb r0, [r0] + cmp r0, #0 + beq ._2102 @cond_branch + cmp r1, #0 + beq ._2103 @cond_branch + mov r0, #0x4 + bl sub_809CDEC + b ._2109 +._2106: + .align 2, 0 +._2105: + .word gUnknown_020384E6 +._2103: + mov r0, #0x5 + bl sub_809CDEC + b ._2109 +._2102: + cmp r1, #0 + beq ._2108 @cond_branch + mov r0, #0x3 + bl sub_809CDEC + b ._2109 +._2108: + mov r0, #0x0 + b ._2110 +._2109: + mov r0, #0x6 + bl sub_809CDEC + ldr r0, ._2114 + ldr r0, [r0] + ldrb r0, [r0, #0x5] + cmp r0, #0x2 + bne ._2113 @cond_branch + ldr r0, ._2114 + 4 + ldrb r0, [r0] + lsl r0, r0, #0x18 + asr r0, r0, #0x18 + cmp r0, #0 + bne ._2112 @cond_branch + mov r0, #0x2 + bl sub_809CDEC + b ._2113 +._2115: + .align 2, 0 +._2114: + .word gUnknown_083B6DB4 + .word gUnknown_020384E4 +._2112: + mov r0, #0x1 + bl sub_809CDEC +._2113: + mov r0, #0x8 + bl sub_809CDEC + mov r0, #0x7 + bl sub_809CDEC + mov r0, #0x0 + bl sub_809CDEC + mov r0, #0x1 +._2110: + pop {r1} + bx r1 +.syntax unified + thumb_func_end sub_809CAB0 +.else thumb_func_start sub_809CAB0 sub_809CAB0: @ 809CAB0 push {lr} @@ -14058,6 +14488,7 @@ _0809CB6E: pop {r1} bx r1 thumb_func_end sub_809CAB0 +.endif thumb_func_start sub_809CB74 sub_809CB74: @ 809CB74 -- 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 --- asm/cute_sketch.s | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'asm') diff --git a/asm/cute_sketch.s b/asm/cute_sketch.s index 26bd642cb..07cae108b 100644 --- a/asm/cute_sketch.s +++ b/asm/cute_sketch.s @@ -46,12 +46,12 @@ debug_sub_8110CCC: mov r1, #0xe mov r2, #0x1d mov r3, #0x13 - bl MenuDrawTextWindow + bl Menu_DrawStdWindowFrame add r0, r6, #0 add r0, r0, #0x8 mov r1, #0x11 mov r2, #0xf - bl MenuPrint + bl Menu_PrintText ldrb r0, [r6, #0x1f] ldr r1, [r4] lsl r0, r0, #0x2 @@ -62,7 +62,7 @@ debug_sub_8110CCC: lsl r1, r1, #0x18 lsr r1, r1, #0x18 mov r2, #0x11 - bl MenuPrint + bl Menu_PrintText b ._4 ._6: .align 2, 0 @@ -82,16 +82,16 @@ debug_sub_8110CCC: mov r1, #0x10 mov r2, #0x1d mov r3, #0x13 - bl MenuDrawTextWindow + bl Menu_DrawStdWindowFrame ldr r0, ._9 mov r1, #0x11 mov r2, #0x11 - bl MenuPrint + bl Menu_PrintText mov r0, #0x10 mov r1, #0xe mov r2, #0x1d mov r3, #0xf - bl MenuZeroFillWindowRect + bl Menu_EraseWindowRect ._8: pop {r4, r5, r6, r7} pop {r0} @@ -264,7 +264,7 @@ debug_sub_8110D84: bne ._65 @cond_branch mov r0, #0x0 mov r1, #0x0 - bl sub_80FBB3C + bl CreateRegionMapCursor ldr r1, ._58 ldrh r0, [r1, #0x4] add r0, r0, #0x1 @@ -304,7 +304,7 @@ debug_sub_8110D84: bne ._65 @cond_branch mov r0, #0x0 mov r1, #0x0 - bl sub_80FBB3C + bl CreateRegionMapCursor ldr r1, ._66 mov r0, #0x3 ._62: @@ -325,7 +325,7 @@ debug_sub_8110D84: debug_sub_8110F28: .syntax divided push {lr} - bl sub_80FC074 + bl CB2_InitFlyRegionMap ldr r0, ._69 ldr r1, [r0, #0x4] ldr r0, ._69 + 4 @@ -342,7 +342,7 @@ debug_sub_8110F28: .align 2, 0 ._69: .word gMain - .word sub_80FC228+1 + .word CB2_FlyRegionMap+1 .word debug_sub_8110D84+1 .syntax unified thumb_func_end debug_sub_8110F28 -- cgit v1.2.3 From 8a21a49a35d91ba9b07ac5027a0560ddf1f4ad25 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Wed, 17 Jan 2018 21:04:48 -0600 Subject: add some debug changes that I missed --- asm/battle_1.s | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) (limited to 'asm') diff --git a/asm/battle_1.s b/asm/battle_1.s index 980bd6a65..24553e020 100644 --- a/asm/battle_1.s +++ b/asm/battle_1.s @@ -794,6 +794,77 @@ _0800DAB0: .4byte 0x0600d000 _0800DAB4: .4byte gBattleTerrainPalette_BattleTower thumb_func_end DrawMainBattleBackground +.if DEBUG + thumb_func_start sub_800DAB8 +sub_800DAB8: +.syntax divided + push {r4, r5, lr} + add sp, sp, #0xfffffffc + ldr r0, ._113 + mov r1, #0xc0 + lsl r1, r1, #0x13 + bl LZDecompressVram + ldr r0, ._113 + 4 + ldr r4, ._113 + 8 + mov r2, #0x80 + lsl r2, r2, #0x4 + add r1, r4, #0 + bl gMysteryEventScriptCmdTableEnd+0x3cb4 @ uh, what? + ldr r0, ._113 + 12 + mov r1, #0x0 + mov r2, #0x40 + bl LoadCompressedPalette + bl sub_800D74C + bl DrawMainBattleBackground + ldr r0, ._113 + 16 + ldrh r1, [r0] + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._112 @cond_branch + ldr r0, ._113 + 20 + mov r1, #0x0 + add r2, r4, #0 + mov r3, #0x1 + bl debug_sub_8008218 + ldr r5, ._113 + 24 + mov r4, #0x1 + str r4, [sp] + add r0, r5, #0 + mov r1, #0x3 + mov r2, #0x1 + mov r3, #0x3 + bl debug_sub_8008264 + str r4, [sp] + add r0, r5, #0 + mov r1, #0x3 + mov r2, #0x15 + mov r3, #0x3 + bl debug_sub_8008264 + str r4, [sp] + add r0, r5, #0 + mov r1, #0x3 + mov r2, #0x29 + mov r3, #0x3 + bl debug_sub_8008264 +._112: + add sp, sp, #0x4 + pop {r4, r5} + pop {r0} + bx r0 +._114: + .align 2, 0 +._113: + .word gUnknown_08D00000 + .word gUnknown_08D00524 + .word 0x600c000 + .word gUnknown_08D004E0 + .word gBattleTypeFlags + .word 0x6000600 + .word 0x101 +.syntax unified + thumb_func_end sub_800DAB8 +.else thumb_func_start sub_800DAB8 sub_800DAB8: @ 800DAB8 push {lr} @@ -820,6 +891,7 @@ _0800DAEC: .4byte gUnknown_08D00524 _0800DAF0: .4byte 0x0600c000 _0800DAF4: .4byte gUnknown_08D004E0 thumb_func_end sub_800DAB8 +.endif thumb_func_start sub_800DAF8 sub_800DAF8: @ 800DAF8 -- cgit v1.2.3 From ec84ae801985ac7f83397979bde6a15508eb02ed Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Thu, 18 Jan 2018 11:54:49 -0600 Subject: add more debug code --- asm/battle_9.s | 171 +++++++++ asm/pokemon_storage_system.s | 884 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 1055 insertions(+) (limited to 'asm') diff --git a/asm/battle_9.s b/asm/battle_9.s index 9dbb7c619..62e2baae6 100644 --- a/asm/battle_9.s +++ b/asm/battle_9.s @@ -1387,6 +1387,176 @@ _08036AFE: bx r1 thumb_func_end AI_ShouldSwitch +.if DEBUG + thumb_func_start sub_8036B0C +sub_8036B0C: +.syntax divided + push {r4, r5, r6, lr} + ldr r5, ._205 + ldrh r1, [r5] + mov r0, #0x8 + and r0, r0, r1 + cmp r0, #0 + bne ._197 @cond_branch + b ._216 +._197: + bl AI_ShouldSwitch + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._199 @cond_branch + b ._200 +._199: + ldr r4, ._205 + 4 + ldr r0, ._205 + 8 + ldrb r0, [r0] + bl GetBankIdentity + lsl r0, r0, #0x18 + lsr r0, r0, #0x19 + ldr r1, ._205 + 12 + add r0, r0, r1 + add r0, r0, r4 + ldrb r0, [r0] + cmp r0, #0x6 + bne ._201 @cond_branch + bl sub_8036CD4 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x6 + bne ._211 @cond_branch + ldrh r1, [r5] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + bne ._203 @cond_branch + mov r0, #0x1 + bl GetBankByIdentity + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + add r6, r5, #0 + b ._204 +._206: + .align 2, 0 +._205: + .word gBattleTypeFlags + .word +0x2000000 + .word gActiveBank + .word 0x160c8 +._203: + mov r0, #0x1 + bl GetBankByIdentity + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + mov r0, #0x3 + bl GetBankByIdentity + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 +._204: + mov r4, #0x0 +._212: + mov r0, #0x64 + mul r0, r0, r4 + ldr r1, ._214 + add r0, r0, r1 + mov r1, #0x39 + bl GetMonData + cmp r0, #0 + beq ._210 @cond_branch + ldr r1, ._214 + 4 + lsl r0, r6, #0x1 + add r0, r0, r1 + ldrh r0, [r0] + cmp r4, r0 + beq ._210 @cond_branch + lsl r0, r5, #0x1 + add r0, r0, r1 + ldrh r0, [r0] + cmp r4, r0 + beq ._210 @cond_branch + ldr r1, ._214 + 8 + ldr r2, ._214 + 12 + add r0, r6, r2 + add r0, r0, r1 + ldrb r0, [r0] + cmp r4, r0 + beq ._210 @cond_branch + add r0, r5, r2 + add r0, r0, r1 + ldrb r0, [r0] + cmp r4, r0 + bne ._211 @cond_branch +._210: + add r4, r4, #0x1 + cmp r4, #0x5 + ble ._212 @cond_branch +._211: + ldr r0, ._214 + 16 + ldrb r0, [r0] + bl GetBankIdentity + ldr r1, ._214 + 8 + lsl r0, r0, #0x18 + lsr r0, r0, #0x19 + ldr r3, ._214 + 20 + add r0, r0, r3 + add r0, r0, r1 + strb r4, [r0] +._201: + ldr r4, ._214 + 16 + ldrb r0, [r4] + bl GetBankIdentity + ldr r2, ._214 + 8 + ldrb r1, [r4] + ldr r3, ._214 + 12 + add r1, r1, r3 + add r1, r1, r2 + lsl r0, r0, #0x18 + lsr r0, r0, #0x19 + add r3, r3, #0x60 + add r0, r0, r3 + add r0, r0, r2 + ldrb r0, [r0] + strb r0, [r1] + b ._217 +._215: + .align 2, 0 +._214: + .word gEnemyParty + .word gBattlePartyID + .word +0x2000000 + .word 0x16068 + .word gActiveBank + .word 0x160c8 +._200: + ldr r0, ._218 + ldrb r1, [r0] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + bne ._216 @cond_branch + bl AI_ShouldUseItem + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._217 @cond_branch +._216: + ldr r0, ._218 + 4 + ldrb r0, [r0] + mov r2, #0x1 + eor r2, r2, r0 + lsl r2, r2, #0x8 + mov r0, #0x1 + mov r1, #0x0 + bl Emitcmd33 +._217: + pop {r4, r5, r6} + pop {r0} + bx r0 +._219: + .align 2, 0 +._218: + .word gUnknown_02023A14+0x50 + .word gActiveBank +.syntax unified + thumb_func_end sub_8036B0C +.else thumb_func_start sub_8036B0C sub_8036B0C: @ 8036B0C push {r4-r6,lr} @@ -1540,6 +1710,7 @@ _08036C40: .align 2, 0 _08036C48: .4byte gActiveBank thumb_func_end sub_8036B0C +.endif thumb_func_start sub_8036C4C sub_8036C4C: @ 8036C4C diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 14b86a3d1..24117bc8c 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -1978,6 +1978,144 @@ sub_8096874: @ 8096874 bx lr thumb_func_end sub_8096874 +.if DEBUG + thumb_func_start sub_8096884 +sub_8096884: +.syntax divided + push {r4, lr} + ldr r0, ._223 + ldr r1, ._223 + 4 + add r0, r0, r1 + ldrb r0, [r0] + cmp r0, #0x9 + bls ._221 @cond_branch + b ._222 +._221: + lsl r0, r0, #0x2 + ldr r1, ._223 + 8 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._224: + .align 2, 0 +._223: + .word gMain + .word 0x43c + .word ._225 +._225: + .word ._226 + .word ._227 + .word ._228 + .word ._229 + .word ._230 + .word ._231 + .word ._232 + .word ._233 + .word ._234 + .word ._235 +._226: + mov r0, #0x0 + bl SetVBlankCallback + mov r0, #0x80 + lsl r0, r0, #0x13 + mov r4, #0x0 + strh r4, [r0] + bl sub_8096804 + ldr r0, ._237 + strb r4, [r0] + b ._250 +._238: + .align 2, 0 +._237: + .word unk_2038790 +._227: + ldr r0, ._240 + bl Text_LoadWindowTemplate + b ._250 +._241: + .align 2, 0 +._240: + .word gWindowTemplate_81E6D00 +._228: + ldr r0, ._243 + bl InitMenuWindow + bl Menu_EraseScreen + b ._250 +._244: + .align 2, 0 +._243: + .word gWindowTemplate_81E6D00 +._229: + bl sub_80967DC + bl sub_8096848 + b ._250 +._230: + bl sub_8098B48 + bl sub_809AA24 + b ._250 +._231: + bl sub_8097DE0 + b ._250 +._232: + bl sub_8097E70 + b ._250 +._233: + bl sub_8098400 + b ._250 +._234: + ldr r0, ._251 + ldrb r0, [r0] + bl sub_8099BF8 + ldr r2, ._251 + 4 + ldr r1, ._251 + 8 + add r0, r2, r1 + mov r1, #0xa + strh r1, [r0] + ldr r1, ._251 + 12 + add r2, r2, r1 + ldr r1, ._251 + 16 + strh r1, [r2] + bl sub_80F727C + bl sub_80F7404 + b ._250 +._252: + .align 2, 0 +._251: + .word gPokemonStorage + .word +0x2000000 + .word 0x12bc + .word 0x12be + .word 0xdacb +._235: + bl sub_8096874 + ldr r0, ._253 + bl sub_8096BE0 + ldr r0, ._253 + 4 + bl SetMainCallback2 + ldr r0, ._253 + 8 + bl SetVBlankCallback +._250: + ldr r1, ._253 + 12 + ldr r0, ._253 + 16 + add r1, r1, r0 + ldrb r0, [r1] + add r0, r0, #0x1 + strb r0, [r1] +._222: + pop {r4} + pop {r0} + bx r0 +._254: + .align 2, 0 +._253: + .word sub_8096BF0+1 + .word sub_8096B38+1 + .word sub_8096AFC+1 + .word gMain + .word 0x43c +.syntax unified + thumb_func_end sub_8096884 +.else thumb_func_start sub_8096884 sub_8096884: @ 8096884 push {lr} @@ -2096,6 +2234,7 @@ _08096994: .4byte sub_8096AFC _08096998: .4byte gMain _0809699C: .4byte 0x0000043c thumb_func_end sub_8096884 +.endif thumb_func_start sub_80969A0 sub_80969A0: @ 80969A0 @@ -2556,6 +2695,438 @@ _08096C7A: _08096C80: .4byte sub_8096C84 thumb_func_end sub_8096C68 +.if DEBUG + thumb_func_start sub_8096C84 +sub_8096C84: +.syntax divided + push {r4, lr} + ldr r0, ._347 + ldrb r0, [r0, #0x4] + cmp r0, #0x6 + bls ._345 @cond_branch + b ._466 +._345: + lsl r0, r0, #0x2 + ldr r1, ._347 + 4 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._348: + .align 2, 0 +._347: + .word +0x2000000 + .word ._349 +._349: + .word ._350 + .word ._351 + .word ._352 + .word ._353 + .word ._354 + .word ._355 + .word ._356 +._350: + bl sub_809CA40 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + sub r0, r0, #0x1 + cmp r0, #0xf + bls ._357 @cond_branch + b ._466 +._357: + lsl r0, r0, #0x2 + ldr r1, ._360 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._361: + .align 2, 0 +._360: + .word ._359 +._359: + .word ._362 + .word ._466 + .word ._466 + .word ._365 + .word ._366 + .word ._367 + .word ._368 + .word ._369 + .word ._370 + .word ._371 + .word ._372 + .word ._373 + .word ._374 + .word ._375 + .word ._376 + .word ._377 +._362: + mov r0, #0x5 + bl PlaySE + ldr r1, ._379 + mov r0, #0x1 + strb r0, [r1, #0x4] + b ._466 +._380: + .align 2, 0 +._379: + .word +0x2000000 +._366: + ldr r4, ._383 + ldrb r0, [r4, #0x5] + cmp r0, #0x2 + beq ._381 @cond_branch + mov r0, #0x10 + bl sub_8098898 + mov r0, #0x3 + strb r0, [r4, #0x4] + b ._466 +._384: + .align 2, 0 +._383: + .word +0x2000000 +._381: + bl sub_809B0D4 + ldr r0, ._386 + bl sub_8096BE0 + b ._466 +._387: + .align 2, 0 +._386: + .word sub_8096FC8+1 +._367: + ldr r4, ._394 + ldrb r0, [r4, #0x5] + cmp r0, #0x2 + beq ._388 @cond_branch + b ._466 +._388: + bl sub_809BF20 + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._391 @cond_branch + ldr r1, ._394 + 4 + add r0, r4, r1 + ldrh r0, [r0] + bl ItemIsMail + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._391 @cond_branch + b ._392 +._391: + ldr r0, ._394 + 8 + bl sub_8096BE0 + b ._466 +._395: + .align 2, 0 +._394: + .word +0x2000000 + .word 0x11f2 + .word sub_8097004+1 +._365: + ldr r0, ._399 + ldrb r0, [r0] + cmp r0, #0 + beq ._396 @cond_branch + b ._466 +._396: + ldr r0, ._399 + 4 + bl sub_8096BE0 + b ._466 +._400: + .align 2, 0 +._399: + .word unk_2038790 + .word sub_8097BA0+1 +._377: + ldr r0, ._404 + ldrb r0, [r0] + cmp r0, #0 + beq ._401 @cond_branch + b ._466 +._401: + ldr r0, ._404 + 4 + bl sub_8096BE0 + b ._466 +._405: + .align 2, 0 +._404: + .word unk_2038790 + .word sub_8097CC0+1 +._368: + mov r0, #0x5 + bl PlaySE + ldr r0, ._407 + bl sub_8096BE0 + b ._466 +._408: + .align 2, 0 +._407: + .word sub_809789C+1 +._369: + mov r0, #0x5 + bl PlaySE + ldr r0, ._410 + bl sub_8096BE0 + b ._466 +._411: + .align 2, 0 +._410: + .word sub_8097078+1 +._370: + mov r0, #0x5 + bl PlaySE + ldr r4, ._414 + ldr r0, ._414 + 4 + ldrb r0, [r0] + add r0, r0, #0x1 + ldr r2, ._414 + 8 + add r1, r4, r2 + strh r0, [r1] + cmp r0, #0xd + ble ._416 @cond_branch + mov r0, #0x0 + b ._413 +._415: + .align 2, 0 +._414: + .word +0x2000000 + .word gPokemonStorage + .word 0x8b2 +._371: + mov r0, #0x5 + bl PlaySE + ldr r4, ._418 + ldr r0, ._418 + 4 + ldrb r0, [r0] + sub r0, r0, #0x1 + ldr r2, ._418 + 8 + add r1, r4, r2 + strh r0, [r1] + cmp r0, #0 + bge ._416 @cond_branch + mov r0, #0xd +._413: + strh r0, [r1] +._416: + ldrb r0, [r1] + bl sub_8099C70 + mov r0, #0x2 + strb r0, [r4, #0x4] + b ._466 +._419: + .align 2, 0 +._418: + .word +0x2000000 + .word gPokemonStorage + .word 0x8b2 +._372: + bl sub_809BE80 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._428 @cond_branch + ldr r4, ._423 + ldr r1, ._423 + 4 + add r0, r4, r1 + ldrh r0, [r0] + bl ItemIsMail + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._421 @cond_branch +._392: + mov r0, #0x5 + strb r0, [r4, #0x4] + b ._466 +._424: + .align 2, 0 +._423: + .word +0x2000000 + .word 0x11f2 +._421: + mov r0, #0x5 + bl PlaySE + ldr r0, ._426 + bl sub_8096BE0 + b ._466 +._427: + .align 2, 0 +._426: + .word sub_809746C+1 +._374: + bl sub_809BE80 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._428 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r0, ._430 + bl sub_8096BE0 + b ._466 +._431: + .align 2, 0 +._430: + .word sub_80972A8+1 +._375: + bl sub_809BEBC + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._432 @cond_branch +._428: + ldr r1, ._434 + mov r0, #0x4 + strb r0, [r1, #0x4] + b ._466 +._435: + .align 2, 0 +._434: + .word +0x2000000 +._432: + mov r0, #0x5 + bl PlaySE + ldr r0, ._437 + bl sub_8096BE0 + b ._466 +._438: + .align 2, 0 +._437: + .word c3_0808DC50+1 +._373: + mov r0, #0x5 + bl PlaySE + ldr r0, ._440 + bl sub_8096BE0 + b ._466 +._441: + .align 2, 0 +._440: + .word sub_8097390+1 +._376: + mov r0, #0x5 + bl PlaySE + ldr r0, ._443 + bl sub_8096BE0 + b ._466 +._444: + .align 2, 0 +._443: + .word sub_80972FC+1 +._351: + bl sub_809AC00 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._466 @cond_branch + bl sub_809BF48 + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._446 @cond_branch + bl sub_80986E8 + b ._447 +._446: + bl sub_8098710 +._447: + ldr r4, ._450 + ldr r2, ._450 + 4 + add r0, r4, r2 + ldrb r0, [r0] + cmp r0, #0 + beq ._448 @cond_branch + bl BoxSetMosaic +._448: + mov r0, #0x0 + strb r0, [r4, #0x4] + b ._466 +._451: + .align 2, 0 +._450: + .word +0x2000000 + .word 0x11f6 +._352: + bl sub_8099D34 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._466 @cond_branch + ldr r1, ._456 + ldr r0, ._456 + 4 + ldr r2, ._456 + 8 + add r0, r0, r2 + ldrh r0, [r0] + strb r0, [r1] + ldr r0, ._456 + 12 + ldrb r0, [r0] + cmp r0, #0 + bne ._455 @cond_branch + bl sub_809BF20 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._455 @cond_branch + bl sub_809B440 + bl BoxSetMosaic + b ._455 +._457: + .align 2, 0 +._456: + .word gPokemonStorage + .word +0x2000000 + .word 0x8b2 + .word gUnknown_0203847C +._353: + ldr r0, ._460 + ldrh r1, [r0, #0x2e] + mov r0, #0xf3 + and r0, r0, r1 + cmp r0, #0 + beq ._466 @cond_branch + bl sub_8098A5C +._455: + ldr r1, ._460 + 4 + mov r0, #0x0 + strb r0, [r1, #0x4] + b ._466 +._461: + .align 2, 0 +._460: + .word gMain + .word +0x2000000 +._354: + mov r0, #0x20 + bl PlaySE + mov r0, #0xd + b ._462 +._355: + mov r0, #0x20 + bl PlaySE + mov r0, #0x16 +._462: + bl sub_8098898 + ldr r1, ._464 + mov r0, #0x6 + strb r0, [r1, #0x4] + b ._466 +._465: + .align 2, 0 +._464: + .word +0x2000000 +._356: + ldr r0, ._467 + ldrh r1, [r0, #0x2e] + mov r0, #0xf3 + and r0, r0, r1 + cmp r0, #0 + beq ._466 @cond_branch + bl sub_8098A5C + ldr r0, ._467 + 4 + bl sub_8096BE0 +._466: + pop {r4} + pop {r0} + bx r0 +._468: + .align 2, 0 +._467: + .word gMain + .word sub_8096C84+1 +.syntax unified + thumb_func_end sub_8096C84 +.else thumb_func_start sub_8096C84 sub_8096C84: @ 8096C84 push {r4,lr} @@ -2923,6 +3494,7 @@ _08096FBA: _08096FC0: .4byte gMain _08096FC4: .4byte sub_8096C84 thumb_func_end sub_8096C84 +.endif thumb_func_start sub_8096FC8 sub_8096FC8: @ 8096FC8 @@ -3017,6 +3589,317 @@ _08097070: .4byte 0x000011f6 _08097074: .4byte sub_8096C84 thumb_func_end sub_8097004 +.if DEBUG + thumb_func_start sub_8097078 +sub_8097078: +.syntax divided + push {r4, lr} + ldr r0, ._495 + ldrb r0, [r0, #0x4] + cmp r0, #0x5 + bls ._493 @cond_branch + b ._597 +._493: + lsl r0, r0, #0x2 + ldr r1, ._495 + 4 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._496: + .align 2, 0 +._495: + .word +0x2000000 + .word ._497 +._497: + .word ._498 + .word ._499 + .word ._500 + .word ._501 + .word ._502 + .word ._503 +._498: + mov r0, #0x4 + bl sub_8098898 + bl sub_809CE84 + ldr r1, ._505 + mov r0, #0x1 + strb r0, [r1, #0x4] + b ._597 +._506: + .align 2, 0 +._505: + .word +0x2000000 +._499: + bl sub_809CF30 + add r0, r0, #0x1 + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + cmp r0, #0x21 + bls ._507 @cond_branch + b ._597 +._507: + lsl r0, r0, #0x2 + ldr r1, ._510 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._511: + .align 2, 0 +._510: + .word ._509 +._509: + .word ._513 + .word ._513 + .word ._514 + .word ._515 + .word ._516 + .word ._517 + .word ._518 + .word ._519 + .word ._520 + .word ._521 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._597 + .word ._545 +._513: + bl sub_8098A5C + ldr r0, ._547 + bl sub_8096BE0 + b ._597 +._548: + .align 2, 0 +._547: + .word sub_8096C84+1 +._516: + bl sub_809BE80 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._563 @cond_branch + mov r0, #0x5 + bl PlaySE + bl sub_8098A5C + ldr r0, ._551 + bl sub_8096BE0 + b ._597 +._552: + .align 2, 0 +._551: + .word sub_80972A8+1 +._518: + mov r0, #0x5 + bl PlaySE + bl sub_8098A5C + ldr r0, ._554 + bl sub_8096BE0 + b ._597 +._555: + .align 2, 0 +._554: + .word sub_80972FC+1 +._517: + bl sub_809BEBC + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._563 @cond_branch + mov r0, #0x5 + bl PlaySE + bl sub_8098A5C + ldr r0, ._558 + bl sub_8096BE0 + b ._597 +._559: + .align 2, 0 +._558: + .word c3_0808DC50+1 +._515: + mov r0, #0x5 + bl PlaySE + bl sub_8098A5C + ldr r0, ._561 + bl sub_8096BE0 + b ._597 +._562: + .align 2, 0 +._561: + .word sub_8097390+1 +._514: + bl sub_809BE80 + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._563 @cond_branch + ldr r4, ._566 + ldr r1, ._566 + 4 + add r0, r4, r1 + ldrh r0, [r0] + bl ItemIsMail + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._564 @cond_branch + mov r0, #0x5 + bl PlaySE + bl sub_8098A5C + ldr r0, ._566 + 8 + bl sub_8096BE0 + b ._597 +._567: + .align 2, 0 +._566: + .word +0x2000000 + .word 0x11f2 + .word sub_809746C+1 +._520: + bl sub_809BE80 + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._568 @cond_branch +._563: + ldr r1, ._570 + mov r0, #0x2 + strb r0, [r1, #0x4] + b ._597 +._571: + .align 2, 0 +._570: + .word +0x2000000 +._568: + ldr r4, ._574 + ldr r1, ._574 + 4 + add r0, r4, r1 + ldrb r0, [r0] + cmp r0, #0 + beq ._572 @cond_branch + mov r0, #0x4 + strb r0, [r4, #0x4] + b ._597 +._575: + .align 2, 0 +._574: + .word +0x2000000 + .word 0x11f9 +._572: + ldr r1, ._578 + add r0, r4, r1 + ldrh r0, [r0] + bl ItemIsMail + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._576 @cond_branch +._564: + mov r0, #0x3 + strb r0, [r4, #0x4] + b ._597 +._579: + .align 2, 0 +._578: + .word 0x11f2 +._576: + mov r0, #0x5 + bl PlaySE + ldr r0, ._581 + bl sub_8096BE0 + b ._597 +._582: + .align 2, 0 +._581: + .word sub_8097594+1 +._519: + mov r0, #0x5 + bl PlaySE + ldr r0, ._584 + bl sub_8096BE0 + b ._597 +._585: + .align 2, 0 +._584: + .word sub_8097788+1 +._521: + mov r0, #0x5 + bl PlaySE + ldr r0, ._587 + bl sub_8096BE0 + b ._597 +._588: + .align 2, 0 +._587: + .word sub_80977E4+1 +._545: + mov r0, #0x5 + bl PlaySE + bl sub_8098A5C + ldr r0, ._590 + bl sub_8096BE0 + b ._597 +._591: + .align 2, 0 +._590: + .word debug_sub_80A435C+1 +._500: + mov r0, #0x20 + bl PlaySE + mov r0, #0xd + b ._593 +._502: + mov r0, #0x20 + bl PlaySE + mov r0, #0x11 + b ._593 +._501: + mov r0, #0x20 + bl PlaySE + mov r0, #0x16 +._593: + bl sub_8098898 + ldr r1, ._595 + mov r0, #0x5 + strb r0, [r1, #0x4] + b ._597 +._596: + .align 2, 0 +._595: + .word +0x2000000 +._503: + ldr r0, ._598 + ldrh r1, [r0, #0x2e] + mov r0, #0xf3 + and r0, r0, r1 + cmp r0, #0 + beq ._597 @cond_branch + bl sub_8098A5C + ldr r0, ._598 + 4 + bl sub_8096BE0 +._597: + pop {r4} + pop {r0} + bx r0 +._599: + .align 2, 0 +._598: + .word gMain + .word sub_8096C84+1 +.syntax unified + thumb_func_end sub_8097078 +.else thumb_func_start sub_8097078 sub_8097078: @ 8097078 push {r4,lr} @@ -3257,6 +4140,7 @@ _0809729A: _080972A0: .4byte gMain _080972A4: .4byte sub_8096C84 thumb_func_end sub_8097078 +.endif thumb_func_start sub_80972A8 sub_80972A8: @ 80972A8 -- cgit v1.2.3 From 9c2f7c88f0d7e57c99d548870e78185e05cc472a Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Thu, 18 Jan 2018 13:54:10 -0600 Subject: add more debug code --- asm/cute_sketch.s | 344 ------------------------------------------------------ 1 file changed, 344 deletions(-) (limited to 'asm') diff --git a/asm/cute_sketch.s b/asm/cute_sketch.s index 07cae108b..bc72a6ef5 100644 --- a/asm/cute_sketch.s +++ b/asm/cute_sketch.s @@ -5,350 +5,6 @@ .text -.if DEBUG - - thumb_func_start debug_sub_8110CCC -debug_sub_8110CCC: -.syntax divided - push {r4, r5, r6, r7, lr} - mov r7, #0x0 - mov r1, #0x0 - ldr r2, ._5 - ldr r6, ._5 + 4 -._7: - lsl r0, r1, #0x3 - add r4, r0, r2 - ldrh r0, [r6, #0x1c] - ldrh r3, [r4, #0x4] - cmp r0, r3 - bne ._1 @cond_branch - ldrh r0, [r4, #0x6] - bl FlagGet - lsl r0, r0, #0x18 - cmp r0, #0 - beq ._4 @cond_branch - ldrb r0, [r6, #0x1f] - ldr r1, [r4] - lsl r0, r0, #0x2 - add r0, r0, r1 - ldr r0, [r0] - bl StringLength - mov r1, #0xc - sub r1, r1, r0 - lsl r1, r1, #0x10 - lsr r5, r1, #0x10 - cmp r1, #0 - bge ._3 @cond_branch - mov r5, #0x0 -._3: - mov r7, #0x1 - mov r0, #0x10 - mov r1, #0xe - mov r2, #0x1d - mov r3, #0x13 - bl Menu_DrawStdWindowFrame - add r0, r6, #0 - add r0, r0, #0x8 - mov r1, #0x11 - mov r2, #0xf - bl Menu_PrintText - ldrb r0, [r6, #0x1f] - ldr r1, [r4] - lsl r0, r0, #0x2 - add r0, r0, r1 - ldr r0, [r0] - add r1, r5, #0 - add r1, r1, #0x11 - lsl r1, r1, #0x18 - lsr r1, r1, #0x18 - mov r2, #0x11 - bl Menu_PrintText - b ._4 -._6: - .align 2, 0 -._5: - .word gUnknown_083E79C0 - .word +0x2000000 -._1: - add r0, r1, #1 - lsl r0, r0, #0x10 - lsr r1, r0, #0x10 - cmp r1, #0 - beq ._7 @cond_branch -._4: - cmp r7, #0 - bne ._8 @cond_branch - mov r0, #0x10 - mov r1, #0x10 - mov r2, #0x1d - mov r3, #0x13 - bl Menu_DrawStdWindowFrame - ldr r0, ._9 - mov r1, #0x11 - mov r2, #0x11 - bl Menu_PrintText - mov r0, #0x10 - mov r1, #0xe - mov r2, #0x1d - mov r3, #0xf - bl Menu_EraseWindowRect -._8: - pop {r4, r5, r6, r7} - pop {r0} - bx r0 -._10: - .align 2, 0 -._9: - .word +0x2000008 -.syntax unified - thumb_func_end debug_sub_8110CCC - - thumb_func_start debug_sub_8110D84 -debug_sub_8110D84: -.syntax divided - push {r4, lr} - add sp, sp, #0xfffffffc - ldr r0, ._13 - ldrh r0, [r0, #0x4] - cmp r0, #0x7 - bls ._11 @cond_branch - b ._65 -._11: - lsl r0, r0, #0x2 - ldr r1, ._13 + 4 - add r0, r0, r1 - ldr r0, [r0] - mov pc, r0 -._14: - .align 2, 0 -._13: - .word +0x2000000 - .word ._15 -._15: - .word ._16 - .word ._17 - .word ._18 - .word ._19 - .word ._20 - .word ._21 - .word ._22 - .word ._23 -._16: - mov r0, #0x1 - neg r0, r0 - mov r1, #0x0 - str r1, [sp] - mov r2, #0x10 - mov r3, #0x0 - bl BeginNormalPaletteFade - ldr r1, ._25 - ldrh r0, [r1, #0x4] - add r0, r0, #0x1 - b ._62 -._26: - .align 2, 0 -._25: - .word +0x2000000 -._17: - bl UpdatePaletteFade - lsl r0, r0, #0x18 - cmp r0, #0 - beq ._27 @cond_branch - b ._65 -._27: - ldr r1, ._30 - ldrh r0, [r1, #0x4] - add r0, r0, #0x1 - b ._62 -._31: - .align 2, 0 -._30: - .word +0x2000000 -._18: - bl sub_80FAB60 - lsl r0, r0, #0x18 - lsr r0, r0, #0x18 - cmp r0, #0x3 - beq ._32 @cond_branch - cmp r0, #0x3 - bgt ._33 @cond_branch - b ._65 -._33: - cmp r0, #0x4 - beq ._35 @cond_branch - cmp r0, #0x5 - beq ._36 @cond_branch - b ._65 -._35: - ldr r4, ._41 - ldrb r0, [r4, #0x1e] - cmp r0, #0 - bne ._38 @cond_branch - b ._65 -._38: - mov r0, #0x5 - bl gMysteryEventScriptCmdTableEnd+0x13c0 - ldr r1, ._41 + 4 - add r0, r4, r1 - mov r1, #0x1 - strb r1, [r0] - ldr r0, ._41 + 8 - bl sub_80FC244 - b ._65 -._42: - .align 2, 0 -._41: - .word +0x2000000 - .word 0xa6e - .word sub_80FC69C+1 -._36: - mov r0, #0x5 - bl gMysteryEventScriptCmdTableEnd+0x13c0 - mov r0, #0x1 - neg r0, r0 - mov r1, #0x0 - str r1, [sp] - mov r2, #0x0 - mov r3, #0x10 - bl BeginNormalPaletteFade - ldr r1, ._44 - ldrh r0, [r1, #0x4] - add r0, r0, #0x1 - b ._62 -._45: - .align 2, 0 -._44: - .word +0x2000000 -._19: - bl UpdatePaletteFade - lsl r0, r0, #0x18 - cmp r0, #0 - bne ._65 @cond_branch - ldr r0, ._48 - bl SetMainCallback2 - b ._65 -._49: - .align 2, 0 -._48: - .word sub_805469C+1 -._20: - bl sub_80FAB60 - lsl r0, r0, #0x18 - cmp r0, #0 - beq ._50 @cond_branch -._32: - bl debug_sub_8110CCC - b ._65 -._50: - ldr r0, ._54 - ldrh r1, [r0, #0x2e] - mov r0, #0x1 - and r0, r0, r1 - cmp r0, #0 - beq ._65 @cond_branch - bl sub_80FBCA0 - bl sub_80FAEC4 - ldr r1, ._54 + 4 - ldrh r0, [r1, #0x4] - add r0, r0, #0x1 - b ._62 -._55: - .align 2, 0 -._54: - .word gMain - .word +0x2000000 -._21: - bl sub_80FAFC0 - lsl r0, r0, #0x18 - cmp r0, #0 - bne ._65 @cond_branch - mov r0, #0x0 - mov r1, #0x0 - bl CreateRegionMapCursor - ldr r1, ._58 - ldrh r0, [r1, #0x4] - add r0, r0, #0x1 - b ._62 -._59: - .align 2, 0 -._58: - .word +0x2000000 -._22: - bl sub_80FAB60 - lsl r0, r0, #0x18 - cmp r0, #0 - beq ._60 @cond_branch - bl debug_sub_8110CCC -._60: - ldr r0, ._63 - ldrh r1, [r0, #0x2e] - mov r0, #0x1 - and r0, r0, r1 - cmp r0, #0 - beq ._65 @cond_branch - bl sub_80FBCA0 - bl sub_80FAEC4 - ldr r1, ._63 + 4 - ldrh r0, [r1, #0x4] - add r0, r0, #0x1 - b ._62 -._64: - .align 2, 0 -._63: - .word gMain - .word +0x2000000 -._23: - bl sub_80FAFC0 - lsl r0, r0, #0x18 - cmp r0, #0 - bne ._65 @cond_branch - mov r0, #0x0 - mov r1, #0x0 - bl CreateRegionMapCursor - ldr r1, ._66 - mov r0, #0x3 -._62: - strh r0, [r1, #0x4] -._65: - add sp, sp, #0x4 - pop {r4} - pop {r0} - bx r0 -._67: - .align 2, 0 -._66: - .word +0x2000000 -.syntax unified - thumb_func_end debug_sub_8110D84 - - thumb_func_start debug_sub_8110F28 -debug_sub_8110F28: -.syntax divided - push {lr} - bl CB2_InitFlyRegionMap - ldr r0, ._69 - ldr r1, [r0, #0x4] - ldr r0, ._69 + 4 - cmp r1, r0 - bne ._68 @cond_branch - bl sub_80FBF94 - ldr r0, ._69 + 8 - bl sub_80FC244 - bl debug_sub_8110CCC -._68: - pop {r0} - bx r0 -._70: - .align 2, 0 -._69: - .word gMain - .word CB2_FlyRegionMap+1 - .word debug_sub_8110D84+1 -.syntax unified - thumb_func_end debug_sub_8110F28 - -.endif - thumb_func_start sub_80FCB5C sub_80FCB5C: @ 80FCB5C push {r4-r7,lr} -- cgit v1.2.3 From 608e06126acdc8b6d32a0aa71fdc57bc188b8d7b Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Sun, 21 Jan 2018 14:27:32 -0600 Subject: fix build of normal ROMs --- asm/pokemon_storage_system.s | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'asm') diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index b5f1f495f..6e6e17db3 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -1009,7 +1009,7 @@ _0809625C: .4byte gPokemonStorage + 0x8344 _08096260: .4byte gPCText_BOX thumb_func_end ResetPokemonStorageSystem -.ifdef DEBUG +.if DEBUG thumb_func_start debug_sub_80A3904 debug_sub_80A3904: .syntax divided @@ -2386,7 +2386,7 @@ _08096AF4: .4byte gMain _08096AF8: .4byte 0x0000043c thumb_func_end sub_80969A0 -.ifdef DEBUG +.if DEBUG thumb_func_start debug_sub_80A4300 debug_sub_80A4300: @@ -15134,7 +15134,7 @@ sub_809CA8C: @ 809CA8C bx r0 thumb_func_end sub_809CA8C -.ifdef DEBUG +.if DEBUG thumb_func_start debug_sub_80AA40C debug_sub_80AA40C: .syntax divided -- 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 --- asm/nakamura_debug_menu.s | 4686 ++++++++++++++++++++++ asm/nohara_debug_menu.s | 2198 ++++++++++ asm/taya_debug_window.s | 2054 ++++++++++ asm/tomomichi_debug_menu.s | 8100 +++++++++++++++++++++++++++++++++++++ asm/unk_debug_menu_3.s | 747 ++++ asm/watanabe_debug_menu.s | 9578 ++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 27363 insertions(+) create mode 100644 asm/nakamura_debug_menu.s create mode 100644 asm/nohara_debug_menu.s create mode 100644 asm/taya_debug_window.s create mode 100644 asm/tomomichi_debug_menu.s create mode 100644 asm/unk_debug_menu_3.s create mode 100644 asm/watanabe_debug_menu.s (limited to 'asm') diff --git a/asm/nakamura_debug_menu.s b/asm/nakamura_debug_menu.s new file mode 100644 index 000000000..2ef359b48 --- /dev/null +++ b/asm/nakamura_debug_menu.s @@ -0,0 +1,4686 @@ +.if DEBUG + + .include "constants/gba_constants.inc" + .include "include/macros.inc" + + .text + + thumb_func_start debug_sub_815F1B8 +debug_sub_815F1B8: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0xe + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._1 + mov r0, #0x10 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0xe + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0xf + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + add sp, sp, #0x8 + pop {r0} + bx r0 +._2: + .align 2, 0 +._1: + .word _843E3DC + + thumb_func_end debug_sub_815F1B8 + + thumb_func_start InitNakamuraDebugMenu +InitNakamuraDebugMenu: + push {lr} + bl debug_sub_815F1B8 + ldr r1, ._3 + ldr r0, ._3 + 4 + str r0, [r1] + mov r0, #0x0 + pop {r1} + bx r1 +._4: + .align 2, 0 +._3: + .word gMenuCallback + .word debug_sub_815F214+1 + + thumb_func_end InitNakamuraDebugMenu + + thumb_func_start debug_sub_815F214 +debug_sub_815F214: + push {r4, lr} + ldr r4, ._9 + ldrh r1, [r4, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._5 @cond_branch + mov r0, #0x1 + neg r0, r0 + bl Menu_MoveCursor +._5: + ldrh r1, [r4, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._6 @cond_branch + mov r0, #0x1 + bl Menu_MoveCursor +._6: + ldrh r1, [r4, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._7 @cond_branch + ldr r4, ._9 + 4 + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + lsr r0, r0, #0x15 + add r4, r4, #0x4 + add r0, r0, r4 + ldr r4, [r0] + bl Menu_DestroyCursor + bl _call_via_r4 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + b ._12 +._10: + .align 2, 0 +._9: + .word gMain + .word _843E3DC +._7: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + bne ._11 @cond_branch + mov r0, #0x0 + b ._12 +._11: + bl CloseMenu + mov r0, #0x1 +._12: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_815F214 + + thumb_func_start debug_sub_815F284 +debug_sub_815F284: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + ldr r0, ._14 + ldrb r1, [r0, #0x7] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + bne ._13 @cond_branch + bl debug_sub_81381B4 + mov r0, #0x5 + mov r1, #0x0 + bl OpenPartyMenu + add r0, r4, #0 + bl DestroyTask +._13: + pop {r4} + pop {r0} + bx r0 +._15: + .align 2, 0 +._14: + .word gPaletteFade + + thumb_func_end debug_sub_815F284 + + thumb_func_start debug_sub_815F2B4 +debug_sub_815F2B4: + push {lr} + add sp, sp, #0xfffffffc + bl CloseMenu + bl Menu_EraseScreen + ldr r1, ._16 + ldr r0, ._16 + 4 + str r0, [r1, #0x8] + ldr r0, ._16 + 8 + mov r1, #0x0 + bl CreateTask + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + mov r0, #0x1 + add sp, sp, #0x4 + pop {r1} + bx r1 +._17: + .align 2, 0 +._16: + .word gMain + .word sub_805469C+1 + .word debug_sub_815F284+1 + + thumb_func_end debug_sub_815F2B4 + + thumb_func_start debug_sub_815F2F4 +debug_sub_815F2F4: + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, r9 + mov r5, r8 + push {r5, r6, r7} + add sp, sp, #0xfffffffc + bl CloseMenu + mov r7, #0x1 +._34: + lsl r1, r7, #0x2 + add r0, r1, r7 + lsl r2, r0, #0x5 + ldr r3, ._24 + add r0, r2, r3 + ldr r5, ._24 + 4 + add r0, r0, r5 + ldrb r0, [r0] + mov r9, r1 + add r1, r7, #1 + str r1, [sp] + cmp r0, #0 + beq ._18 @cond_branch + b ._19 +._18: + mov r5, #0x0 + ldr r6, ._24 + 8 + add r4, r7, #0 + sub r4, r4, #0x46 + ldr r3, ._24 + 12 +._21: + add r1, r5, r2 + add r1, r1, r3 + add r0, r5, r6 + ldrb r0, [r0] + strb r0, [r1] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0xff + beq ._20 @cond_branch + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x6 + bls ._21 @cond_branch +._20: + cmp r5, #0x7 + bne ._22 @cond_branch + add r0, r2, #6 + b ._23 +._25: + .align 2, 0 +._24: + .word gSaveBlock1 + .word 0x1a08 + .word gSaveBlock2 + .word gSaveBlock1+0x1a0a +._22: + add r0, r5, r2 +._23: + add r0, r0, r3 + strb r4, [r0] + ldr r1, ._35 + ldr r2, ._35 + 4 + add r2, r2, r1 + mov sl, r2 + mov r3, r9 + add r0, r3, r7 + lsl r6, r0, #0x5 + add r1, r6, r1 + ldr r5, ._35 + 4 + add r5, r5, r1 + mov r8, r5 +._30: + bl Random + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0x4b + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0xe + ldr r1, ._35 + 8 + add r0, r0, r1 + ldrb r0, [r0] + mov r2, r8 + strb r0, [r2] + mov r5, #0x0 + cmp r5, r7 + bcs ._28 @cond_branch + mov r3, sl + ldrb r3, [r3] + cmp r0, r3 + beq ._28 @cond_branch + ldr r4, ._35 + add r0, r6, r4 + ldr r2, ._35 + 4 + add r3, r0, r2 +._29: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r7 + bcs ._28 @cond_branch + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x5 + add r0, r0, r4 + add r0, r0, r2 + ldrb r1, [r3] + ldrb r0, [r0] + cmp r1, r0 + bne ._29 @cond_branch +._28: + cmp r5, r7 + bne ._30 @cond_branch + bl Random + mov r5, r9 + add r4, r5, r7 + lsl r4, r4, #0x5 + ldr r1, ._35 + add r3, r4, r1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0x1 + ldr r2, ._35 + 12 + add r3, r3, r2 + and r0, r0, r1 + lsl r0, r0, #0x4 + ldrb r1, [r3] + mov r5, #0x11 + neg r5, r5 + add r2, r5, #0 + and r1, r1, r2 + orr r1, r1, r0 + strb r1, [r3] + mov r5, #0x0 + ldr r6, ._35 + 16 +._31: + bl Random + add r1, r5, r4 + add r1, r1, r6 + strb r0, [r1] + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x3 + bls ._31 @cond_branch + mov r5, #0x0 + mov r1, r9 + add r0, r1, r7 + lsl r4, r0, #0x5 + ldr r3, ._35 + 20 + mov r2, #0x0 + add r6, r3, #0 + add r6, r6, #0x10 +._32: + add r1, r5, r4 + add r0, r1, r3 + strb r2, [r0] + add r1, r1, r6 + strb r2, [r1] + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0xf + bls ._32 @cond_branch + add r0, r7, #0 + bl unref_sub_80BCD7C +._19: + ldr r2, [sp] + lsl r0, r2, #0x18 + lsr r7, r0, #0x18 + cmp r7, #0x13 + bhi ._33 @cond_branch + b ._34 +._33: + mov r0, #0x1 + add sp, sp, #0x4 + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._36: + .align 2, 0 +._35: + .word gSaveBlock1 + .word 0x1a08 + .word _843E424 + .word 0x1a09 + .word gSaveBlock1+0x1a11 + .word gSaveBlock1+0x1a1a + + thumb_func_end debug_sub_815F2F4 + + thumb_func_start debug_sub_815F470 +debug_sub_815F470: + push {r4, r5, r6, r7, lr} + add r6, r0, #0 + add r7, r1, #0 + mov ip, r2 + ldr r2, ._39 + ldr r0, ._39 + 4 + ldrb r1, [r0] + lsl r0, r1, #0x2 + add r0, r0, r1 + lsl r0, r0, #0x5 + add r0, r0, r2 + ldr r1, ._39 + 8 + add r0, r0, r1 + ldrb r4, [r0] + mov r2, #0x0 + ldr r3, ._39 + 12 + add r5, r3, #0 +._41: + lsl r1, r2, #0x2 + add r0, r1, r5 + ldrb r0, [r0] + cmp r0, r4 + bne ._37 @cond_branch + add r0, r1, #1 + add r0, r0, r3 + ldrb r0, [r0] + strb r0, [r6] + add r0, r1, #2 + add r0, r0, r3 + ldrb r0, [r0] + strb r0, [r7] + add r0, r1, #3 + add r0, r0, r3 + ldrb r0, [r0] + mov r1, ip + strb r0, [r1] + b ._38 +._40: + .align 2, 0 +._39: + .word gSaveBlock1 + .word _nakamuraData0 + .word 0x1a08 + .word _843E424 +._37: + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x4a + bls ._41 @cond_branch +._38: + pop {r4, r5, r6, r7} + pop {r0} + bx r0 + + thumb_func_end debug_sub_815F470 + + thumb_func_start debug_sub_815F4D8 +debug_sub_815F4D8: + push {r4, r5, r6, r7, lr} + add sp, sp, #0xfffffffc + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0xa + mov r3, #0xa + bl Menu_BlankWindowRect + ldr r6, ._43 + ldr r7, ._43 + 4 + ldrb r1, [r7] + add r0, r6, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r2, ._43 + 8 + ldrb r1, [r7] + lsl r0, r1, #0x2 + add r0, r0, r1 + lsl r0, r0, #0x5 + add r0, r0, r2 + ldr r1, ._43 + 12 + add r0, r0, r1 + ldrb r0, [r0] + cmp r0, #0 + beq ._42 @cond_branch + mov r4, sp + add r4, r4, #0x1 + mov r5, sp + add r5, r5, #0x2 + mov r0, sp + add r1, r4, #0 + add r2, r5, #0 + bl debug_sub_815F470 + ldrb r1, [r7] + add r0, r6, #0 + bl sub_80BC190 + add r0, r6, #0 + mov r1, #0x1 + mov r2, #0x3 + bl Menu_PrintText + ldr r0, ._43 + 16 + mov r1, #0x1 + mov r2, #0x5 + bl Menu_PrintText + mov r0, sp + ldrb r1, [r0] + add r0, r6, #0 + mov r2, #0x0 + mov r3, #0x3 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0x2 + mov r2, #0x5 + bl Menu_PrintText + ldr r0, ._43 + 20 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintText + ldrb r1, [r4] + add r0, r6, #0 + mov r2, #0x0 + mov r3, #0x3 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0x3 + mov r2, #0x7 + bl Menu_PrintText + ldr r0, ._43 + 24 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintText + ldrb r1, [r5] + add r0, r6, #0 + mov r2, #0x0 + mov r3, #0x3 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0x3 + mov r2, #0x9 + bl Menu_PrintText +._42: + add sp, sp, #0x4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._44: + .align 2, 0 +._43: + .word gStringVar1 + .word _nakamuraData0 + .word gSaveBlock1 + .word 0x1a08 + .word Str_843E550 + .word Str_843E552 + .word Str_843E554 + + thumb_func_end debug_sub_815F4D8 + + thumb_func_start debug_sub_815F5C4 +debug_sub_815F5C4: + push {lr} + ldr r0, ._48 + ldrh r1, [r0, #0x2e] + mov r0, #0x20 + and r0, r0, r1 + lsl r0, r0, #0x10 + lsr r2, r0, #0x10 + cmp r2, #0 + beq ._45 @cond_branch + ldr r1, ._48 + 4 + ldrb r0, [r1] + cmp r0, #0 + bne ._46 @cond_branch + mov r0, #0x13 + b ._50 +._49: + .align 2, 0 +._48: + .word gMain + .word _nakamuraData0 +._46: + sub r0, r0, #0x1 + b ._50 +._45: + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._51 @cond_branch + ldr r1, ._54 + ldrb r0, [r1] + cmp r0, #0x13 + bne ._52 @cond_branch + strb r2, [r1] + b ._53 +._55: + .align 2, 0 +._54: + .word _nakamuraData0 +._52: + add r0, r0, #0x1 +._50: + strb r0, [r1] +._53: + bl debug_sub_815F4D8 + mov r0, #0x0 + b ._58 +._51: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + bne ._57 @cond_branch + mov r0, #0x0 + b ._58 +._57: + bl CloseMenu + mov r0, #0x1 +._58: + pop {r1} + bx r1 + + thumb_func_end debug_sub_815F5C4 + + thumb_func_start debug_sub_815F62C +debug_sub_815F62C: + push {lr} + ldr r1, ._59 + mov r0, #0x0 + strb r0, [r1] + ldr r1, ._59 + 4 + ldr r0, ._59 + 8 + str r0, [r1] + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xb + mov r3, #0xb + bl Menu_DrawStdWindowFrame + bl debug_sub_815F4D8 + mov r0, #0x0 + pop {r1} + bx r1 +._60: + .align 2, 0 +._59: + .word _nakamuraData0 + .word gMenuCallback + .word debug_sub_815F5C4+1 + + thumb_func_end debug_sub_815F62C + + thumb_func_start debug_sub_815F668 +debug_sub_815F668: + push {r4, r5, r6, lr} + ldr r0, ._61 + ldrb r0, [r0] + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x5 + ldr r0, ._61 + 4 + add r1, r1, r0 + ldrb r4, [r1, #0x3] + lsl r4, r4, #0x18 + ldrb r0, [r1, #0x2] + lsl r0, r0, #0x10 + orr r4, r4, r0 + ldrb r0, [r1, #0x1] + lsl r0, r0, #0x8 + orr r4, r4, r0 + ldrb r0, [r1] + orr r4, r4, r0 + ldr r5, ._61 + 8 + ldr r6, ._61 + 12 + add r0, r4, #0 + add r1, r6, #0 + bl __udivsi3 + add r1, r0, #0 + add r0, r5, #0 + mov r2, #0x2 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r5, #0 + mov r1, #0x2 + mov r2, #0x7 + bl Menu_PrintText + add r0, r4, #0 + add r1, r6, #0 + bl __umodsi3 + add r1, r0, #0 + add r0, r5, #0 + mov r2, #0x2 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r5, #0 + mov r1, #0x7 + mov r2, #0x7 + bl Menu_PrintText + pop {r4, r5, r6} + pop {r0} + bx r0 +._62: + .align 2, 0 +._61: + .word _nakamuraData0 + .word gSaveBlock1+0x1a11 + .word gStringVar1 + .word 0x186a0 + + thumb_func_end debug_sub_815F668 + + thumb_func_start debug_sub_815F6E4 +debug_sub_815F6E4: + push {r4, lr} + mov r0, #0x2 + mov r1, #0x3 + mov r2, #0xb + mov r3, #0x4 + bl Menu_BlankWindowRect + ldr r4, ._63 + ldr r0, ._63 + 4 + ldrb r0, [r0] + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x5 + ldr r0, ._63 + 8 + add r1, r1, r0 + add r0, r4, #0 + mov r2, #0x7 + bl StringCopyN + mov r1, #0xff + strb r1, [r0] + add r0, r4, #0 + mov r1, #0x2 + mov r2, #0x3 + bl Menu_PrintText + pop {r4} + pop {r0} + bx r0 +._64: + .align 2, 0 +._63: + .word gStringVar1 + .word _nakamuraData0 + .word gSaveBlock1+0x1a0a + + thumb_func_end debug_sub_815F6E4 + + thumb_func_start debug_sub_815F72C +debug_sub_815F72C: + push {r4, r5, lr} + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0xb + mov r3, #0xa + bl Menu_BlankWindowRect + ldr r4, ._66 + ldr r5, ._66 + 4 + ldrb r1, [r5] + add r0, r4, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x2 + mov r2, #0x1 + bl Menu_PrintText + ldr r2, ._66 + 8 + ldrb r1, [r5] + lsl r0, r1, #0x2 + add r0, r0, r1 + lsl r0, r0, #0x5 + add r0, r0, r2 + ldr r1, ._66 + 12 + add r0, r0, r1 + ldrb r0, [r0] + cmp r0, #0 + beq ._65 @cond_branch + bl debug_sub_815F6E4 + bl debug_sub_815F668 +._65: + pop {r4, r5} + pop {r0} + bx r0 +._67: + .align 2, 0 +._66: + .word gStringVar1 + .word _nakamuraData0 + .word gSaveBlock1 + .word 0x1a08 + + thumb_func_end debug_sub_815F72C + + thumb_func_start debug_sub_815F788 +debug_sub_815F788: + push {lr} + mov r0, #0x2 + mov r1, #0x5 + mov r2, #0xb + mov r3, #0x6 + bl Menu_BlankWindowRect + ldr r0, ._68 + ldr r1, ._68 + 4 + ldrb r1, [r1] + add r1, r1, #0x2 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + mov r2, #0x5 + bl Menu_PrintText + pop {r0} + bx r0 +._69: + .align 2, 0 +._68: + .word Str_843E574 + .word _nakamuraData2 + + thumb_func_end debug_sub_815F788 + + thumb_func_start debug_sub_815F7B4 +debug_sub_815F7B4: + push {lr} + ldr r0, ._72 + ldrb r0, [r0] + cmp r0, #0 + beq ._70 @cond_branch + mov r0, #0xb + mov r1, #0x1 + mov r2, #0xb + mov r3, #0x2 + bl Menu_BlankWindowRect + b ._71 +._73: + .align 2, 0 +._72: + .word _nakamuraData1 +._70: + ldr r0, ._74 + ldrb r0, [r0] + lsl r0, r0, #0x1 + ldr r1, ._74 + 4 + add r0, r0, r1 + mov r1, #0xb + mov r2, #0x1 + bl Menu_PrintText +._71: + pop {r0} + bx r0 +._75: + .align 2, 0 +._74: + .word _nakamuraData3 + .word Str_843E576 + + thumb_func_end debug_sub_815F7B4 + + thumb_func_start debug_sub_815F7F0 +debug_sub_815F7F0: + push {r4, r5, lr} + ldr r1, ._78 + ldrb r2, [r1] + lsl r1, r2, #0x2 + add r1, r1, r2 + lsl r1, r1, #0x5 + ldr r2, ._78 + 4 + add r3, r1, r2 + ldrb r1, [r3, #0x3] + lsl r2, r1, #0x18 + ldrb r1, [r3, #0x2] + lsl r1, r1, #0x10 + orr r2, r2, r1 + ldrb r1, [r3, #0x1] + lsl r1, r1, #0x8 + orr r2, r2, r1 + ldrb r1, [r3] + orr r2, r2, r1 + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r4, #0x9 + ldr r0, ._78 + 8 + ldrb r0, [r0] + cmp r4, r0 + ble ._76 @cond_branch + add r5, r0, #0 +._77: + lsl r0, r1, #0x2 + add r0, r0, r1 + lsl r1, r0, #0x1 + lsl r0, r4, #0x18 + mov r4, #0xff + lsl r4, r4, #0x18 + add r0, r0, r4 + lsr r4, r0, #0x18 + asr r0, r0, #0x18 + cmp r0, r5 + bgt ._77 @cond_branch +._76: + add r2, r2, r1 + lsr r0, r2, #0x18 + strb r0, [r3, #0x3] + mov r0, #0xff + lsl r0, r0, #0x10 + and r0, r0, r2 + lsr r0, r0, #0x10 + strb r0, [r3, #0x2] + mov r0, #0xff + lsl r0, r0, #0x8 + and r0, r0, r2 + lsr r0, r0, #0x8 + strb r0, [r3, #0x1] + strb r2, [r3] + bl debug_sub_815F668 + pop {r4, r5} + pop {r0} + bx r0 +._79: + .align 2, 0 +._78: + .word _nakamuraData0 + .word gSaveBlock1+0x1a11 + .word _nakamuraData2 + + thumb_func_end debug_sub_815F7F0 + + thumb_func_start debug_sub_815F86C +debug_sub_815F86C: + push {r4, r5, r6, lr} + lsl r0, r0, #0x18 + ldr r1, ._84 + ldrb r2, [r1] + lsl r1, r2, #0x2 + add r1, r1, r2 + lsl r1, r1, #0x5 + ldr r2, ._84 + 4 + add r5, r1, r2 + mov r2, #0x0 + mov r3, #0x0 + lsr r6, r0, #0x18 + asr r0, r0, #0x18 + cmp r0, #0x64 + bne ._80 @cond_branch + ldr r0, ._84 + 8 + ldrb r1, [r0] + cmp r1, #0x6 + bhi ._100 @cond_branch + mov r2, #0xff +._82: + add r0, r5, r1 + strb r2, [r0] + add r0, r1, #1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + cmp r1, #0x6 + bls ._82 @cond_branch + b ._100 +._85: + .align 2, 0 +._84: + .word _nakamuraData0 + .word gSaveBlock1+0x1a0a + .word _nakamuraData2 +._80: + ldr r0, ._87 + ldrb r0, [r0] + cmp r0, #0x4 + bhi ._98 @cond_branch + lsl r0, r0, #0x2 + ldr r1, ._87 + 4 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._88: + .align 2, 0 +._87: + .word _nakamuraData3 + .word ._89 +._89: + .word ._90 + .word ._91 + .word ._92 + .word ._93 + .word ._94 +._90: + mov r3, #0x1 + mov r2, #0x50 + b ._98 +._91: + mov r3, #0x51 + mov r2, #0xa0 + b ._98 +._92: + mov r3, #0xbb + mov r2, #0xd4 + b ._98 +._93: + mov r3, #0xd5 + mov r2, #0xee + b ._98 +._94: + mov r3, #0xa1 + mov r2, #0xaa +._98: + ldr r4, ._101 + ldrb r1, [r4] + add r1, r5, r1 + ldrb r0, [r1] + add r0, r0, r6 + strb r0, [r1] + ldrb r0, [r4] + add r1, r5, r0 + ldrb r0, [r1] + cmp r0, r3 + bcs ._99 @cond_branch + strb r2, [r1] +._99: + ldrb r0, [r4] + add r1, r5, r0 + ldrb r0, [r1] + cmp r0, r2 + bls ._100 @cond_branch + strb r3, [r1] +._100: + bl debug_sub_815F6E4 + pop {r4, r5, r6} + pop {r0} + bx r0 +._102: + .align 2, 0 +._101: + .word _nakamuraData2 + + thumb_func_end debug_sub_815F86C + + thumb_func_start debug_sub_815F930 +debug_sub_815F930: + push {r4, r5, lr} + ldr r0, ._107 + ldrb r2, [r0] + mov r4, #0xa + cmp r2, #0 + bne ._103 @cond_branch + mov r4, #0x7 +._103: + ldr r5, ._107 + 4 + ldrh r1, [r5, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._104 @cond_branch + cmp r2, #0 + beq ._105 @cond_branch + mov r0, #0x1 + bl debug_sub_815F7F0 + b ._136 +._108: + .align 2, 0 +._107: + .word _nakamuraData1 + .word gMain +._105: + mov r0, #0x1 + b ._113 +._104: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._110 @cond_branch + cmp r2, #0 + beq ._111 @cond_branch + mov r0, #0x1 + neg r0, r0 + bl debug_sub_815F7F0 + b ._136 +._111: + mov r0, #0x1 + neg r0, r0 + b ._113 +._110: + mov r0, #0x20 + and r0, r0, r1 + lsl r0, r0, #0x10 + lsr r3, r0, #0x10 + cmp r3, #0 + beq ._114 @cond_branch + ldr r1, ._117 + ldrb r0, [r1] + cmp r0, #0 + bne ._115 @cond_branch + sub r0, r4, #1 + b ._116 +._118: + .align 2, 0 +._117: + .word _nakamuraData2 +._115: + sub r0, r0, #0x1 +._116: + strb r0, [r1] +._125: + bl debug_sub_815F788 + b ._136 +._114: + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._120 @cond_branch + ldr r2, ._123 + ldrb r1, [r2] + sub r0, r4, #1 + cmp r1, r0 + bne ._121 @cond_branch + strb r3, [r2] + b ._125 +._124: + .align 2, 0 +._123: + .word _nakamuraData2 +._121: + add r0, r1, #1 + strb r0, [r2] + b ._125 +._120: + ldrh r1, [r5, #0x2e] + mov r0, #0x4 + and r0, r0, r1 + cmp r0, #0 + beq ._126 @cond_branch + cmp r2, #0 + bne ._127 @cond_branch + ldr r4, ._129 + ldrb r0, [r4] + add r0, r0, #0x1 + mov r1, #0x5 + bl __modsi3 + strb r0, [r4] +._127: + bl debug_sub_815F7B4 + b ._136 +._130: + .align 2, 0 +._129: + .word _nakamuraData3 +._126: + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._131 @cond_branch + mov r0, #0x2 + mov r1, #0x5 + mov r2, #0xb + mov r3, #0x6 + bl Menu_BlankWindowRect + mov r0, #0xb + mov r1, #0x1 + mov r2, #0xb + mov r3, #0x2 + bl Menu_BlankWindowRect + ldr r1, ._133 + ldr r0, ._133 + 4 + str r0, [r1] + b ._136 +._134: + .align 2, 0 +._133: + .word gMenuCallback + .word debug_sub_815FA38+1 +._131: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._136 @cond_branch + cmp r2, #0 + bne ._136 @cond_branch + mov r0, #0x64 +._113: + bl debug_sub_815F86C +._136: + mov r0, #0x0 + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_815F930 + + thumb_func_start debug_sub_815FA38 +debug_sub_815FA38: + push {r4, lr} + ldr r0, ._139 + ldrh r1, [r0, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._137 @cond_branch + mov r0, #0x2 + neg r0, r0 + b ._138 +._140: + .align 2, 0 +._139: + .word gMain +._137: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._141 @cond_branch + mov r0, #0x2 +._138: + bl Menu_MoveCursor +._161: + mov r0, #0x0 + b ._142 +._141: + mov r0, #0x20 + and r0, r0, r1 + lsl r0, r0, #0x10 + lsr r2, r0, #0x10 + cmp r2, #0 + beq ._143 @cond_branch + ldr r1, ._146 + ldrb r0, [r1] + cmp r0, #0 + bne ._144 @cond_branch + mov r0, #0x13 + b ._148 +._147: + .align 2, 0 +._146: + .word _nakamuraData0 +._144: + sub r0, r0, #0x1 + b ._148 +._143: + mov r0, #0x10 + and r0, r0, r1 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + cmp r4, #0 + beq ._149 @cond_branch + ldr r1, ._152 + ldrb r0, [r1] + cmp r0, #0x13 + bne ._150 @cond_branch + strb r2, [r1] + b ._151 +._153: + .align 2, 0 +._152: + .word _nakamuraData0 +._150: + add r0, r0, #0x1 +._148: + strb r0, [r1] +._151: + bl debug_sub_815F72C + b ._161 +._149: + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._155 @cond_branch + ldr r1, ._159 + ldrb r0, [r1] + cmp r0, #0 + beq ._161 @cond_branch + ldr r2, ._159 + 4 + add r1, r0, #0 + lsl r0, r1, #0x2 + add r0, r0, r1 + lsl r0, r0, #0x5 + add r0, r0, r2 + ldr r1, ._159 + 8 + add r0, r0, r1 + ldrb r0, [r0] + cmp r0, #0 + beq ._161 @cond_branch + bl Menu_GetCursorPos + ldr r1, ._159 + 12 + strb r0, [r1] + ldr r0, ._159 + 16 + strb r4, [r0] + bl debug_sub_815F788 + bl debug_sub_815F7B4 + ldr r1, ._159 + 20 + ldr r0, ._159 + 24 + str r0, [r1] + b ._161 +._160: + .align 2, 0 +._159: + .word _nakamuraData0 + .word gSaveBlock1 + .word 0x1a08 + .word _nakamuraData1 + .word _nakamuraData2 + .word gMenuCallback + .word debug_sub_815F930+1 +._155: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._161 @cond_branch + bl CloseMenu + mov r0, #0x1 +._142: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_815FA38 + + thumb_func_start debug_sub_815FB1C +debug_sub_815FB1C: + push {lr} + add sp, sp, #0xfffffff8 + ldr r0, ._162 + mov r1, #0x0 + strb r1, [r0] + ldr r0, ._162 + 4 + strb r1, [r0] + ldr r1, ._162 + 8 + ldr r0, ._162 + 12 + str r0, [r1] + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xc + mov r3, #0xb + bl Menu_DrawStdWindowFrame + bl debug_sub_815F72C + mov r0, #0x0 + str r0, [sp] + mov r0, #0xb + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x3 + bl InitMenu + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._163: + .align 2, 0 +._162: + .word _nakamuraData0 + .word _nakamuraData3 + .word gMenuCallback + .word debug_sub_815FA38+1 + + thumb_func_end debug_sub_815FB1C + + thumb_func_start debug_sub_815FB78 +debug_sub_815FB78: + push {lr} + ldr r0, ._166 + ldrh r1, [r0, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._164 @cond_branch + mov r0, #0x1 + neg r0, r0 + b ._165 +._167: + .align 2, 0 +._166: + .word gMain +._164: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._168 @cond_branch + mov r0, #0x1 +._165: + bl Menu_MoveCursor + mov r0, #0x0 + b ._177 +._168: + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._170 @cond_branch + bl CloseMenu + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0 + beq ._171 @cond_branch + cmp r0, #0x1 + beq ._172 @cond_branch + b ._175 +._171: + bl debug_sub_814A714 + b ._175 +._172: + bl ClearRoamerData + bl ClearRoamerLocationData + b ._175 +._170: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + bne ._176 @cond_branch + mov r0, #0x0 + b ._177 +._176: + bl CloseMenu +._175: + mov r0, #0x1 +._177: + pop {r1} + bx r1 + + thumb_func_end debug_sub_815FB78 + + thumb_func_start debug_sub_815FBE8 +debug_sub_815FBE8: + push {r4, lr} + add sp, sp, #0xfffffff8 + ldr r1, ._178 + ldr r0, ._178 + 4 + str r0, [r1] + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + ldr r4, ._178 + 8 + add r0, r4, #0 + bl debug_sub_814A73C + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xb + mov r3, #0x9 + bl Menu_DrawStdWindowFrame + add r0, r4, #0 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._178 + 12 + mov r1, #0x2 + mov r2, #0x3 + bl Menu_PrintText + mov r0, #0x0 + str r0, [sp] + mov r0, #0xa + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x3 + bl InitMenu + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._179: + .align 2, 0 +._178: + .word gMenuCallback + .word debug_sub_815FB78+1 + .word gStringVar1 + .word Str_843E580 + + thumb_func_end debug_sub_815FBE8 + + thumb_func_start debug_sub_815FC54 +debug_sub_815FC54: + push {r4, r5, r6, r7, lr} + mov r3, #0x0 + ldr r7, ._181 + mov r6, #0xe8 + lsl r6, r6, #0x3 + ldr r5, ._181 + 4 + ldr r4, ._181 + 8 +._180: + lsl r1, r3, #0x2 + add r1, r1, r7 + add r2, r3, #0 + add r2, r2, #0x85 + add r0, r1, r6 + strh r2, [r0] + add r1, r1, r4 + strh r5, [r1] + add r0, r3, #1 + lsl r0, r0, #0x10 + lsr r3, r0, #0x10 + cmp r3, #0x2a + bls ._180 @cond_branch + bl CloseMenu + mov r0, #0x1 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._182: + .align 2, 0 +._181: + .word gSaveBlock1 + .word 0x3e7 + .word 0x742 + + thumb_func_end debug_sub_815FC54 + + thumb_func_start debug_sub_815FC94 +debug_sub_815FC94: + push {lr} + bl ClearDecorationInventories + bl debug_sub_814A3A8 + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end debug_sub_815FC94 + + thumb_func_start debug_sub_815FCB4 +debug_sub_815FCB4: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + mov r7, #0x0 + ldr r5, ._188 + ldr r0, [r5] + ldr r0, [r0, #0x4] + mov r1, #0x3 + bl __divsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + add r1, r0, #0 + mul r1, r1, r4 + lsl r1, r1, #0x10 + lsr r6, r1, #0x10 + add r0, r6, r0 + mov r9, r5 + cmp r6, r0 + bge ._183 @cond_branch + mov r8, r0 +._187: + mov r4, #0x0 + mov r1, r9 + ldr r0, [r1] + ldr r0, [r0] + add r5, r6, #1 + cmp r4, r0 + bge ._184 @cond_branch + ldr r0, ._188 + mov r9, r0 +._186: + add r0, r4, #7 + add r1, r6, #7 + bl MapGridGetMetatileBehaviorAt + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bl sub_805759C + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x1 + bne ._185 @cond_branch + add r0, r7, #1 + lsl r0, r0, #0x10 + lsr r7, r0, #0x10 +._185: + add r0, r4, #1 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + ldr r0, ._188 + ldr r0, [r0] + ldr r0, [r0] + cmp r4, r0 + blt ._186 @cond_branch +._184: + lsl r0, r5, #0x10 + lsr r6, r0, #0x10 + cmp r6, r8 + blt ._187 @cond_branch +._183: + add r0, r7, #0 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._189: + .align 2, 0 +._188: + .word gMapHeader + + thumb_func_end debug_sub_815FCB4 + + thumb_func_start debug_sub_815FD40 +debug_sub_815FD40: + push {r4, r5, r6, r7, lr} + add sp, sp, #0xfffffffc + mov r6, #0x0 + mov r4, sp + add r4, r4, #0x2 + mov r0, sp + add r1, r4, #0 + bl GetXYCoordsOneStepInFrontOfPlayer + mov r1, sp + mov r0, sp + ldrh r0, [r0] + sub r0, r0, #0x7 + strh r0, [r1] + ldrh r0, [r4] + sub r0, r0, #0x7 + strh r0, [r4] + mov r5, #0x0 + ldr r1, ._192 + ldr r0, [r1] + ldr r0, [r0, #0x4] + add r7, r4, #0 + cmp r6, r0 + bge ._190 @cond_branch +._199: + mov r4, #0x0 + ldr r0, [r1] + b ._191 +._193: + .align 2, 0 +._192: + .word gMapHeader +._198: + add r0, r4, #7 + add r1, r5, #7 + bl MapGridGetMetatileBehaviorAt + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bl sub_805759C + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x1 + bne ._196 @cond_branch + add r0, r6, #1 + lsl r0, r0, #0x10 + lsr r6, r0, #0x10 + mov r0, sp + mov r1, #0x0 + ldsh r0, [r0, r1] + cmp r0, r4 + bne ._196 @cond_branch + mov r1, #0x0 + ldsh r0, [r7, r1] + cmp r0, r5 + bne ._196 @cond_branch + add r0, r6, #0 + b ._197 +._196: + add r0, r4, #1 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + ldr r0, ._200 + ldr r0, [r0] +._191: + ldr r0, [r0] + cmp r4, r0 + blt ._198 @cond_branch + add r0, r5, #1 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + ldr r1, ._200 + ldr r0, [r1] + ldr r0, [r0, #0x4] + cmp r5, r0 + blt ._199 @cond_branch +._190: + add r0, r6, #1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 +._197: + add sp, sp, #0x4 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._201: + .align 2, 0 +._200: + .word gMapHeader + + thumb_func_end debug_sub_815FD40 + + thumb_func_start debug_sub_815FDE4 +debug_sub_815FDE4: + push {lr} + ldr r0, ._205 + ldrh r1, [r0, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + bne ._202 @cond_branch + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._203 @cond_branch +._202: + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + bl CloseMenu + mov r0, #0x1 + b ._204 +._206: + .align 2, 0 +._205: + .word gMain +._203: + mov r0, #0x0 +._204: + pop {r1} + bx r1 + + thumb_func_end debug_sub_815FDE4 + + thumb_func_start debug_sub_815FE1C +debug_sub_815FE1C: + push {r4, r5, r6, r7, lr} + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x10 + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r0, ._210 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r6, ._210 + 4 + mov r0, #0x0 + bl debug_sub_815FCB4 + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r6, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0x5 + mov r2, #0x3 + bl Menu_PrintText + mov r0, #0x1 + bl debug_sub_815FCB4 + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r6, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0x5 + mov r2, #0x5 + bl Menu_PrintText + mov r0, #0x2 + bl debug_sub_815FCB4 + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r6, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0x5 + mov r2, #0x7 + bl Menu_PrintText + mov r0, #0x0 + bl debug_sub_8092344 + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r6, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0xb + mov r2, #0x3 + bl Menu_PrintText + mov r0, #0x1 + bl debug_sub_8092344 + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r6, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0xb + mov r2, #0x5 + bl Menu_PrintText + mov r0, #0x2 + bl debug_sub_8092344 + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r6, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r6, #0 + mov r1, #0xb + mov r2, #0x7 + bl Menu_PrintText + ldr r0, ._210 + 8 + ldr r1, ._210 + 12 + add r0, r0, r1 + ldrh r0, [r0] + bl FeebasSeedRng + mov r0, #0x0 + bl debug_sub_815FCB4 + add r4, r0, #0 + mov r0, #0x1 + bl debug_sub_815FCB4 + add r5, r0, #0 + mov r0, #0x2 + bl debug_sub_815FCB4 + add r4, r4, r5 + add r0, r0, r4 + lsl r0, r0, #0x10 + lsr r7, r0, #0x10 + mov r5, #0x0 +._209: + bl FeebasRandom + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + add r1, r7, #0 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + cmp r1, #0 + bne ._207 @cond_branch + add r1, r7, #0 +._207: + sub r0, r1, #1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + cmp r0, #0x2 + bls ._208 @cond_branch + add r0, r6, #0 + mov r2, #0x1 + mov r3, #0x4 + bl ConvertIntToDecimalStringN + add r0, r5, #0 + mov r1, #0x3 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + lsl r4, r0, #0x2 + add r4, r4, r0 + add r4, r4, #0x2 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r5, #0 + mov r1, #0x3 + bl __udivsi3 + add r2, r0, #0 + lsl r2, r2, #0x19 + mov r0, #0xb0 + lsl r0, r0, #0x14 + add r2, r2, r0 + lsr r2, r2, #0x18 + add r0, r6, #0 + add r1, r4, #0 + bl Menu_PrintText + add r0, r5, #1 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 +._208: + cmp r5, #0x6 + bne ._209 @cond_branch + ldr r4, ._210 + 4 + bl debug_sub_815FD40 + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r4, #0 + mov r2, #0x1 + mov r3, #0x4 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x2 + mov r2, #0x11 + bl Menu_PrintText + ldr r1, ._210 + 16 + ldr r0, ._210 + 20 + str r0, [r1] + mov r0, #0x0 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._211: + .align 2, 0 +._210: + .word Str_843E58D + .word gStringVar1 + .word gSaveBlock1 + .word 0x2dd6 + .word gMenuCallback + .word debug_sub_815FDE4+1 + + thumb_func_end debug_sub_815FE1C + + thumb_func_start debug_sub_815FFDC +debug_sub_815FFDC: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + mov r0, #0xe + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xd + bl Menu_DrawStdWindowFrame + mov r0, #0x0 + mov r1, #0xe + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r0, ._214 + mov r1, #0x1 + mov r2, #0xf + bl Menu_PrintText + mov r5, #0x0 + ldr r0, ._214 + 4 + mov r8, r0 +._216: + mov r0, #0x64 + add r1, r5, #0 + mul r1, r1, r0 + ldr r0, ._214 + 8 + add r6, r1, r0 + add r0, r6, #0 + mov r1, #0xb + bl GetMonData + lsl r1, r5, #0x2 + mov r2, r8 + add r4, r1, r2 + strh r0, [r4] + lsl r0, r0, #0x10 + add r7, r1, #0 + cmp r0, #0 + beq ._212 @cond_branch + add r0, r6, #0 + mov r1, #0x38 + bl GetMonData + strb r0, [r4, #0x2] + add r0, r5, #0 + bl debug_sub_816009C + add r0, r5, #0 + bl debug_sub_81600D0 + add r0, r5, #0 + bl debug_sub_816013C + b ._213 +._215: + .align 2, 0 +._214: + .word Str_843E5D4 + .word _nakamuraStatic0 + .word gPlayerParty +._212: + mov r0, #0x1 + strb r0, [r4, #0x2] +._213: + mov r0, r8 + add r1, r7, r0 + mov r0, #0x0 + strb r0, [r1, #0x3] + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x5 + bls ._216 @cond_branch + ldr r1, ._217 + mov r0, #0x0 + strb r0, [r1] + mov r0, #0xf + mov r1, #0x1 + mov r2, #0xff + bl PrintTriangleCursorWithPalette + ldr r1, ._217 + 4 + ldr r0, ._217 + 8 + str r0, [r1] + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._218: + .align 2, 0 +._217: + .word _nakamuraData4 + .word gMenuCallback + .word debug_sub_8160498+1 + + thumb_func_end debug_sub_815FFDC + + thumb_func_start debug_sub_816009C +debug_sub_816009C: + push {lr} + add r2, r0, #0 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + ldr r1, ._219 + lsl r0, r2, #0x2 + add r0, r0, r1 + mov r3, #0x0 + ldsh r1, [r0, r3] + mov r0, #0xb + mul r0, r0, r1 + ldr r1, ._219 + 4 + add r0, r0, r1 + lsl r2, r2, #0x1 + add r2, r2, #0x1 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + mov r1, #0x10 + bl Menu_PrintText + pop {r0} + bx r0 +._220: + .align 2, 0 +._219: + .word _nakamuraStatic0 + .word gSpeciesNames + + thumb_func_end debug_sub_816009C + + thumb_func_start debug_sub_81600D0 +debug_sub_81600D0: + push {r4, r5, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + add r5, r4, #0 + ldr r1, ._223 + mov r0, sp + mov r2, #0x2 + bl memcpy + mov r0, #0x64 + mul r0, r0, r4 + ldr r1, ._223 + 4 + add r0, r0, r1 + bl GetMonGender + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0 + bne ._221 @cond_branch + ldr r0, ._223 + 8 + b ._222 +._224: + .align 2, 0 +._223: + .word Str_843E5F0 + .word gPlayerParty + .word gOtherText_MaleSymbol2 +._221: + cmp r0, #0xfe + bne ._225 @cond_branch + ldr r0, ._227 +._222: + lsl r2, r4, #0x1 + add r2, r2, #0x1 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + mov r1, #0x17 + bl Menu_PrintText + b ._226 +._228: + .align 2, 0 +._227: + .word gOtherText_FemaleSymbolAndLv +._225: + lsl r2, r5, #0x1 + add r2, r2, #0x1 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + mov r0, sp + mov r1, #0x17 + bl Menu_PrintText +._226: + add sp, sp, #0x4 + pop {r4, r5} + pop {r0} + bx r0 + + thumb_func_end debug_sub_81600D0 + + thumb_func_start debug_sub_816013C +debug_sub_816013C: + push {r4, r5, lr} + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r5, ._229 + ldr r1, ._229 + 4 + lsl r0, r4, #0x2 + add r0, r0, r1 + mov r1, #0x2 + ldrsb r1, [r0, r1] + add r0, r5, #0 + mov r2, #0x1 + mov r3, #0x3 + bl ConvertIntToDecimalStringN + lsl r4, r4, #0x1 + add r4, r4, #0x1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r5, #0 + mov r1, #0x1a + add r2, r4, #0 + bl Menu_PrintText + pop {r4, r5} + pop {r0} + bx r0 +._230: + .align 2, 0 +._229: + .word gStringVar1 + .word _nakamuraStatic0 + + thumb_func_end debug_sub_816013C + + thumb_func_start debug_sub_816017C +debug_sub_816017C: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + lsl r3, r4, #0x1 + add r1, r3, #1 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r3, r3, #0x2 + lsl r3, r3, #0x18 + lsr r3, r3, #0x18 + mov r0, #0x10 + mov r2, #0x1c + bl Menu_BlankWindowRect + ldr r1, ._232 + lsl r0, r4, #0x2 + add r0, r0, r1 + mov r1, #0x0 + ldsh r0, [r0, r1] + cmp r0, #0 + beq ._231 @cond_branch + add r0, r4, #0 + bl debug_sub_816009C + add r0, r4, #0 + bl debug_sub_81600D0 + add r0, r4, #0 + bl debug_sub_816013C +._231: + mov r0, #0x5 + bl debug_sub_81603B8 + pop {r4} + pop {r0} + bx r0 +._233: + .align 2, 0 +._232: + .word _nakamuraStatic0 + + thumb_func_end debug_sub_816017C + + thumb_func_start debug_sub_81601C8 +debug_sub_81601C8: + push {r4, r5, lr} + add sp, sp, #0xfffffff0 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r1, ._239 + lsl r0, r5, #0x2 + add r2, r0, r1 + mov r4, #0x0 + ldsh r0, [r2, r4] + cmp r0, #0 + bne ._236 @cond_branch + ldrb r0, [r2, #0x3] + cmp r0, #0 + bne ._236 @cond_branch + cmp r3, #0x1 + bne ._236 @cond_branch + mov r0, #0x8a + lsl r0, r0, #0x1 + strh r0, [r2] +._236: + lsl r0, r5, #0x2 + add r4, r0, r1 + lsl r0, r3, #0x18 + asr r0, r0, #0x18 + ldrh r1, [r4] + add r2, r0, r1 + mov r3, #0x0 + strh r2, [r4] + lsl r1, r2, #0x10 + mov r0, #0xcd + lsl r0, r0, #0x11 + cmp r1, r0 + ble ._237 @cond_branch + ldr r1, ._239 + 4 + add r0, r2, r1 + strh r0, [r4] +._237: + ldrh r1, [r4] + mov r2, #0x0 + ldsh r0, [r4, r2] + cmp r0, #0 + bge ._238 @cond_branch + ldr r2, ._239 + 8 + add r0, r1, r2 + strh r0, [r4] +._238: + mov r0, #0x64 + mul r0, r0, r5 + ldr r1, ._239 + 12 + add r0, r0, r1 + ldrh r1, [r4] + ldrb r2, [r4, #0x2] + str r3, [sp] + str r3, [sp, #0x4] + str r3, [sp, #0x8] + str r3, [sp, #0xc] + mov r3, #0x20 + bl CreateMon + mov r0, #0x1 + strb r0, [r4, #0x3] + add sp, sp, #0x10 + pop {r4, r5} + pop {r0} + bx r0 +._240: + .align 2, 0 +._239: + .word _nakamuraStatic0 + .word 0xfffffe65 + .word 0x19b + .word gPlayerParty + + thumb_func_end debug_sub_81601C8 + + thumb_func_start debug_sub_8160258 +debug_sub_8160258: + push {lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + ldr r1, ._242 + lsl r0, r2, #0x2 + add r0, r0, r1 + mov r1, #0x0 + ldsh r0, [r0, r1] + cmp r0, #0 + beq ._241 @cond_branch + add r0, r2, #0 + bl debug_sub_816062C +._241: + pop {r0} + bx r0 +._243: + .align 2, 0 +._242: + .word _nakamuraStatic0 + + thumb_func_end debug_sub_8160258 + + thumb_func_start debug_sub_816027C +debug_sub_816027C: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + add r4, r0, #0 + lsl r1, r1, #0x18 + lsr r2, r1, #0x18 + ldr r1, ._247 + lsl r0, r4, #0x2 + add r3, r0, r1 + mov r1, #0x0 + ldsh r0, [r3, r1] + cmp r0, #0 + beq ._244 @cond_branch + lsl r0, r2, #0x18 + asr r0, r0, #0x18 + ldrb r1, [r3, #0x2] + add r0, r0, r1 + strb r0, [r3, #0x2] + lsl r0, r0, #0x18 + asr r0, r0, #0x18 + cmp r0, #0x64 + ble ._245 @cond_branch + mov r0, #0x1 + strb r0, [r3, #0x2] +._245: + mov r0, #0x2 + ldrsb r0, [r3, r0] + cmp r0, #0 + bgt ._246 @cond_branch + mov r0, #0x64 + strb r0, [r3, #0x2] +._246: + mov r0, #0x64 + mul r4, r4, r0 + ldr r0, ._247 + 4 + add r4, r4, r0 + ldr r2, ._247 + 8 + mov r0, #0x0 + ldsh r1, [r3, r0] + lsl r0, r1, #0x3 + sub r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r2 + ldrb r1, [r0, #0x13] + mov r0, #0xca + lsl r0, r0, #0x1 + add r2, r1, #0 + mul r2, r2, r0 + mov r0, #0x2 + ldrsb r0, [r3, r0] + lsl r0, r0, #0x2 + ldr r1, ._247 + 12 + add r0, r0, r1 + add r2, r2, r0 + add r0, r4, #0 + mov r1, #0x19 + bl SetMonData + add r0, r4, #0 + bl debug_sub_803F55C +._244: + pop {r4} + pop {r0} + bx r0 +._248: + .align 2, 0 +._247: + .word _nakamuraStatic0 + .word gPlayerParty + .word gBaseStats + .word gExperienceTables + + thumb_func_end debug_sub_816027C + + thumb_func_start debug_sub_8160308 +debug_sub_8160308: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + add sp, sp, #0xffffff8c + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + mov r2, #0x0 +._252: + add r1, r2, #1 + lsl r0, r1, #0x18 + lsr r5, r0, #0x18 + mov r8, r1 + cmp r5, #0x5 + bhi ._249 @cond_branch + mov r0, #0x64 + mov r9, r0 + mov r0, r9 + mul r0, r0, r2 + ldr r7, ._254 + add r6, r0, r7 +._251: + add r0, r6, #0 + mov r1, #0xb + mov r2, #0x0 + bl GetMonData + cmp r0, #0 + bne ._250 @cond_branch + add r0, sp, #0x10 + add r1, r6, #0 + mov r2, #0x64 + bl memcpy + mov r4, r9 + mul r4, r4, r5 + add r4, r4, r7 + add r0, r6, #0 + add r1, r4, #0 + mov r2, #0x64 + bl memcpy + add r0, r4, #0 + add r1, sp, #0x10 + mov r2, #0x64 + bl memcpy +._250: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x5 + bls ._251 @cond_branch +._249: + mov r1, r8 + lsl r0, r1, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x4 + bls ._252 @cond_branch + bl CalculatePlayerPartyCount + ldr r4, ._254 + 4 + ldrb r1, [r4] + cmp r1, #0 + bne ._253 @cond_branch + ldr r0, ._254 + str r1, [sp] + str r1, [sp, #0x4] + str r1, [sp, #0x8] + str r1, [sp, #0xc] + mov r1, #0x1 + mov r2, #0xa + mov r3, #0x20 + bl CreateMon + mov r0, #0x1 + strb r0, [r4] +._253: + add sp, sp, #0x74 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._255: + .align 2, 0 +._254: + .word gPlayerParty + .word gPlayerPartyCount + + thumb_func_end debug_sub_8160308 + + thumb_func_start debug_sub_81603B8 +debug_sub_81603B8: + push {r4, r5, r6, r7, lr} + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + mov r0, #0x5 + bl PlaySE + ldr r7, ._259 + ldrb r4, [r7] + add r0, r4, #0 + mov r1, #0x6 + bl __udivsi3 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + add r0, r4, #0 + mov r1, #0x6 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + ldr r0, ._259 + 4 + add r0, r5, r0 + ldrb r2, [r0] + lsl r3, r4, #0x1 + add r1, r3, #1 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r3, r3, #0x2 + lsl r3, r3, #0x18 + lsr r3, r3, #0x18 + add r0, r2, #0 + bl Menu_BlankWindowRect + cmp r6, #0 + bne ._256 @cond_branch + cmp r4, #0 + beq ._257 @cond_branch + ldrb r0, [r7] + sub r0, r0, #0x1 + b ._258 +._260: + .align 2, 0 +._259: + .word _nakamuraData4 + .word _843E5D1 +._257: + lsl r0, r5, #0x1 + add r0, r0, r5 + lsl r0, r0, #0x1 + add r0, r0, #0x5 +._258: + strb r0, [r7] +._256: + ldr r1, ._264 + cmp r6, #0x1 + bne ._261 @cond_branch + cmp r4, #0x5 + beq ._262 @cond_branch + ldrb r0, [r1] + add r0, r0, #0x1 + b ._263 +._265: + .align 2, 0 +._264: + .word _nakamuraData4 +._262: + lsl r0, r5, #0x1 + add r0, r0, r5 + lsl r0, r0, #0x1 +._263: + strb r0, [r1] +._261: + cmp r6, #0x2 + bne ._266 @cond_branch + cmp r5, #0 + beq ._267 @cond_branch + ldrb r0, [r1] + sub r0, r0, #0x6 + b ._268 +._267: + add r0, r4, #0 + add r0, r0, #0xc +._268: + strb r0, [r1] +._266: + cmp r6, #0x3 + bne ._271 @cond_branch + cmp r5, #0x2 + beq ._270 @cond_branch + ldrb r0, [r1] + add r0, r0, #0x6 + strb r0, [r1] + b ._271 +._270: + strb r4, [r1] +._271: + ldrb r4, [r1] + add r0, r4, #0 + mov r1, #0x6 + bl __udivsi3 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + add r0, r4, #0 + mov r1, #0x6 + bl __umodsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + ldr r0, ._272 + add r0, r5, r0 + ldrb r0, [r0] + lsr r1, r1, #0x17 + add r1, r1, #0x1 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + mov r2, #0xff + bl PrintTriangleCursorWithPalette + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._273: + .align 2, 0 +._272: + .word _843E5D1 + + thumb_func_end debug_sub_81603B8 + + thumb_func_start debug_sub_8160498 +debug_sub_8160498: + push {r4, lr} + ldr r1, ._276 + ldrh r2, [r1, #0x2e] + mov r0, #0x40 + and r0, r0, r2 + cmp r0, #0 + beq ._274 @cond_branch + mov r0, #0x0 + b ._281 +._277: + .align 2, 0 +._276: + .word gMain +._274: + mov r0, #0x80 + and r0, r0, r2 + cmp r0, #0 + beq ._278 @cond_branch + mov r0, #0x1 + b ._281 +._278: + mov r0, #0x20 + and r0, r0, r2 + cmp r0, #0 + beq ._280 @cond_branch + mov r0, #0x2 + b ._281 +._280: + mov r0, #0x10 + and r0, r0, r2 + cmp r0, #0 + beq ._282 @cond_branch + mov r0, #0x3 +._281: + bl debug_sub_81603B8 + mov r0, #0x0 + b ._311 +._282: + ldrh r1, [r1, #0x30] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._284 @cond_branch + ldr r4, ._289 + ldrb r0, [r4] + cmp r0, #0x5 + bhi ._285 @cond_branch + mov r1, #0x1 + bl debug_sub_81601C8 +._285: + ldrb r0, [r4] + sub r0, r0, #0x6 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x5 + bhi ._286 @cond_branch + ldrb r0, [r4] + mov r1, #0x6 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bl debug_sub_8160258 +._286: + ldrb r0, [r4] + sub r0, r0, #0xc + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x5 + bhi ._306 @cond_branch + ldrb r0, [r4] + mov r1, #0x6 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0x1 + b ._300 +._290: + .align 2, 0 +._289: + .word _nakamuraData4 +._284: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._291 @cond_branch + ldr r4, ._294 + ldrb r0, [r4] + cmp r0, #0x5 + bhi ._304 @cond_branch + mov r1, #0x1 + neg r1, r1 + b ._293 +._295: + .align 2, 0 +._294: + .word _nakamuraData4 +._291: + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._296 @cond_branch + ldr r4, ._301 + ldrb r0, [r4] + cmp r0, #0x5 + bhi ._297 @cond_branch + mov r1, #0xa + bl debug_sub_81601C8 +._297: + ldrb r0, [r4] + sub r0, r0, #0x6 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x5 + bhi ._298 @cond_branch + ldrb r0, [r4] + mov r1, #0x6 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bl debug_sub_8160258 +._298: + ldrb r0, [r4] + sub r0, r0, #0xc + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x5 + bhi ._306 @cond_branch + ldrb r0, [r4] + mov r1, #0x6 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0x1 + b ._300 +._302: + .align 2, 0 +._301: + .word _nakamuraData4 +._296: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._303 @cond_branch + ldr r4, ._308 + ldrb r0, [r4] + cmp r0, #0x5 + bhi ._304 @cond_branch + mov r1, #0xa + neg r1, r1 +._293: + bl debug_sub_81601C8 +._304: + ldrb r0, [r4] + sub r0, r0, #0x6 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x5 + bhi ._305 @cond_branch + ldrb r0, [r4] + mov r1, #0x6 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bl debug_sub_8160258 +._305: + ldrb r0, [r4] + sub r0, r0, #0xc + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x5 + bhi ._306 @cond_branch + ldrb r0, [r4] + mov r1, #0x6 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0x1 + neg r1, r1 +._300: + bl debug_sub_816027C +._306: + ldrb r0, [r4] + mov r1, #0x6 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bl debug_sub_816017C + mov r0, #0x0 + b ._311 +._309: + .align 2, 0 +._308: + .word _nakamuraData4 +._303: + mov r0, #0x8 + and r0, r0, r2 + cmp r0, #0 + bne ._310 @cond_branch + mov r0, #0x0 + b ._311 +._310: + bl debug_sub_8160308 + bl CloseMenu + mov r0, #0x1 +._311: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_8160498 + + thumb_func_start debug_sub_816062C +debug_sub_816062C: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + add sp, sp, #0xfffffff0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r8, r0 + mov r0, #0x64 + mov r4, r8 + mul r4, r4, r0 + ldr r0, ._316 + add r4, r4, r0 + add r0, r4, #0 + mov r1, #0xb + bl GetMonData + lsl r0, r0, #0x10 + lsr r7, r0, #0x10 + add r0, r4, #0 + bl GetMonGender + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + ldr r1, ._316 + 4 + lsl r0, r7, #0x3 + sub r0, r0, r7 + lsl r0, r0, #0x2 + add r0, r0, r1 + ldrb r6, [r0, #0x10] + cmp r6, #0 + beq ._313 @cond_branch + cmp r6, #0xfe + beq ._313 @cond_branch + cmp r6, #0xff + bne ._314 @cond_branch +._313: + mov r0, #0x64 + mov r1, r8 + mul r1, r1, r0 + add r0, r1, #0 + ldr r1, ._316 + add r0, r0, r1 + bl GetMonGender + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + b ._320 +._317: + .align 2, 0 +._316: + .word gPlayerParty + .word gBaseStats +._314: + cmp r2, #0 + beq ._318 @cond_branch + cmp r2, #0xfe + beq ._319 @cond_branch + mov r0, #0x0 + b ._320 +._318: + mov r6, #0xfe + b ._321 +._319: + mov r6, #0x0 +._321: + mov r0, r8 + lsl r0, r0, #0x2 + mov r9, r0 +._322: + bl Random + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + bl Random + lsl r0, r0, #0x10 + orr r5, r5, r0 + add r0, r7, #0 + add r1, r5, #0 + bl GetGenderFromSpeciesAndPersonality + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, r6 + bne ._322 @cond_branch + mov r0, #0x64 + mov r4, r8 + mul r4, r4, r0 + ldr r0, ._323 + add r4, r4, r0 + add r0, r4, #0 + mov r1, #0x42 + bl GetMonData + ldr r0, ._323 + 4 + add r0, r0, r9 + ldrh r1, [r0] + ldrb r2, [r0, #0x2] + mov r0, #0x1 + str r0, [sp] + str r5, [sp, #0x4] + mov r0, #0x0 + str r0, [sp, #0x8] + str r0, [sp, #0xc] + add r0, r4, #0 + mov r3, #0x20 + bl CreateMon + add r0, r6, #0 +._320: + add sp, sp, #0x10 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._324: + .align 2, 0 +._323: + .word gPlayerParty + .word _nakamuraStatic0 + + thumb_func_end debug_sub_816062C + + thumb_func_start debug_sub_8160714 +debug_sub_8160714: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + add sp, sp, #0xfffffff0 + add r6, r0, #0 + mov r9, r1 + mov r7, #0x0 + mov r0, #0x0 + mov r8, r0 + mov r2, #0x0 + mov r5, #0x0 +._329: + add r4, r5, #1 + lsl r1, r4, #0x18 + lsr r1, r1, #0x18 + mov r0, r9 + str r2, [sp, #0xc] + bl GetPokeblockData + add r1, r0, #0 + lsl r0, r5, #0x1 + add r0, r0, sp + strh r1, [r0] + ldr r2, [sp, #0xc] + cmp r5, #0x5 + beq ._328 @cond_branch + lsl r0, r1, #0x10 + asr r1, r0, #0x10 + cmp r1, #0 + ble ._326 @cond_branch + add r0, r7, #1 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._326: + cmp r1, #0 + bge ._327 @cond_branch + mov r0, r8 + add r0, r0, #0x1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r8, r0 +._327: + cmp r1, #0 + bne ._328 @cond_branch + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 +._328: + lsl r0, r4, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x5 + bls ._329 @cond_branch + mov r0, sp + mov r1, #0x0 + ldsh r0, [r0, r1] + cmp r0, #0x31 + bgt ._333 @cond_branch + mov r0, sp + ldrh r0, [r0, #0x2] + lsl r0, r0, #0x10 + asr r0, r0, #0x10 + cmp r0, #0x31 + bgt ._333 @cond_branch + mov r0, sp + mov r4, #0x4 + ldsh r0, [r0, r4] + cmp r0, #0x31 + bgt ._333 @cond_branch + mov r0, sp + mov r1, #0x6 + ldsh r0, [r0, r1] + cmp r0, #0x31 + bgt ._333 @cond_branch + mov r0, sp + mov r4, #0x8 + ldsh r0, [r0, r4] + cmp r0, #0x31 + ble ._334 @cond_branch +._333: + ldr r1, ._336 + add r0, r6, #0 + bl StringCopy + mov r0, #0xe + b ._400 +._337: + .align 2, 0 +._336: + .word ContestStatsText_GoldPokeBlock +._334: + cmp r7, #0x4 + bne ._338 @cond_branch + ldr r1, ._340 + add r0, r6, #0 + bl StringCopy + mov r0, #0xd + b ._400 +._341: + .align 2, 0 +._340: + .word ContestStatsText_WhitePokeBlock +._338: + mov r3, #0x0 + mov r5, #0x0 +._343: + lsl r0, r5, #0x1 + add r0, r0, sp + mov r1, #0x0 + ldsh r0, [r0, r1] + cmp r0, #0x2 + bne ._342 @cond_branch + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 +._342: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x4 + bls ._343 @cond_branch + cmp r3, #0x3 + beq ._345 @cond_branch + cmp r2, #0x5 + beq ._345 @cond_branch + mov r4, r8 + cmp r4, #0x4 + bne ._346 @cond_branch +._345: + ldr r1, ._348 + add r0, r6, #0 + bl StringCopy + mov r0, #0xc + b ._400 +._349: + .align 2, 0 +._348: + .word ContestStatsText_BlackPokeBlock +._346: + cmp r7, #0x3 + bne ._350 @cond_branch + ldr r1, ._352 + add r0, r6, #0 + bl StringCopy + mov r0, #0xb + b ._400 +._353: + .align 2, 0 +._352: + .word ContestStatsText_GrayPokeBlock +._350: + cmp r7, #0x2 + beq ._354 @cond_branch + mov r0, r8 + cmp r0, #0x2 + bne ._377 @cond_branch +._354: + mov r3, #0x6 + mov r2, #0x0 + mov r5, #0x0 +._359: + lsl r0, r5, #0x1 + add r0, r0, sp + mov r1, #0x0 + ldsh r0, [r0, r1] + cmp r0, #0 + beq ._358 @cond_branch + cmp r3, #0x6 + bne ._357 @cond_branch + add r3, r5, #0 + b ._358 +._357: + add r2, r5, #0 +._358: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x4 + bls ._359 @cond_branch + lsl r0, r3, #0x1 + mov r4, sp + add r1, r4, r0 + lsl r0, r2, #0x1 + add r0, r0, sp + mov r4, #0x0 + ldsh r1, [r1, r4] + mov r4, #0x0 + ldsh r0, [r0, r4] + cmp r1, r0 + blt ._360 @cond_branch + add r2, r3, #0 +._360: + cmp r2, #0 + bne ._361 @cond_branch + ldr r1, ._363 + add r0, r6, #0 + bl StringCopy + mov r0, #0x6 + b ._400 +._364: + .align 2, 0 +._363: + .word ContestStatsText_PurplePokeBlock +._361: + cmp r2, #0x1 + bne ._365 @cond_branch + ldr r1, ._367 + add r0, r6, #0 + bl StringCopy + mov r0, #0x7 + b ._400 +._368: + .align 2, 0 +._367: + .word ContestStatsText_IndigoPokeBlock +._365: + cmp r2, #0x2 + bne ._369 @cond_branch + ldr r1, ._371 + add r0, r6, #0 + bl StringCopy + mov r0, #0x8 + b ._400 +._372: + .align 2, 0 +._371: + .word ContestStatsText_BrownPokeBlock +._369: + cmp r2, #0x3 + bne ._373 @cond_branch + ldr r1, ._375 + add r0, r6, #0 + bl StringCopy + mov r0, #0x9 + b ._400 +._376: + .align 2, 0 +._375: + .word ContestStatsText_LiteBluePokeBlock +._373: + cmp r2, #0x4 + bne ._377 @cond_branch + ldr r1, ._379 + add r0, r6, #0 + bl StringCopy + mov r0, #0xa + b ._400 +._380: + .align 2, 0 +._379: + .word ContestStatsText_OlivePokeBlock +._377: + cmp r7, #0x1 + beq ._381 @cond_branch + mov r0, r8 + cmp r0, #0x1 + bne ._399 @cond_branch +._381: + mov r0, sp + mov r1, #0x0 + ldsh r0, [r0, r1] + cmp r0, #0 + beq ._383 @cond_branch + ldr r1, ._385 + add r0, r6, #0 + bl StringCopy + mov r0, #0x1 + b ._400 +._386: + .align 2, 0 +._385: + .word ContestStatsText_RedPokeBlock +._383: + mov r0, sp + ldrh r0, [r0, #0x2] + cmp r0, #0 + beq ._387 @cond_branch + ldr r1, ._389 + add r0, r6, #0 + bl StringCopy + mov r0, #0x2 + b ._400 +._390: + .align 2, 0 +._389: + .word ContestStatsText_BluePokeBlock +._387: + mov r0, sp + mov r4, #0x4 + ldsh r0, [r0, r4] + cmp r0, #0 + beq ._391 @cond_branch + ldr r1, ._393 + add r0, r6, #0 + bl StringCopy + mov r0, #0x3 + b ._400 +._394: + .align 2, 0 +._393: + .word ContestStatsText_PinkPokeBlock +._391: + mov r0, sp + mov r1, #0x6 + ldsh r0, [r0, r1] + cmp r0, #0 + beq ._395 @cond_branch + ldr r1, ._397 + add r0, r6, #0 + bl StringCopy + mov r0, #0x4 + b ._400 +._398: + .align 2, 0 +._397: + .word ContestStatsText_GreenPokeBlock +._395: + mov r0, sp + mov r4, #0x8 + ldsh r0, [r0, r4] + cmp r0, #0 + beq ._399 @cond_branch + ldr r1, ._401 + add r0, r6, #0 + bl StringCopy + mov r0, #0x5 + b ._400 +._402: + .align 2, 0 +._401: + .word ContestStatsText_YellowPokeBlock +._399: + ldr r1, ._403 + add r0, r6, #0 + bl StringCopy + mov r0, #0x0 +._400: + add sp, sp, #0x10 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._404: + .align 2, 0 +._403: + .word gOtherText_FiveQuestions + + thumb_func_end debug_sub_8160714 + + thumb_func_start debug_sub_816097C +debug_sub_816097C: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add r7, r0, #0 + lsl r1, r1, #0x10 + lsr r5, r1, #0x10 + mov r6, #0x0 + mov r1, #0x0 +._405: + add r0, r7, r6 + strb r1, [r0] + add r0, r6, #1 + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + cmp r6, #0x3 + bls ._405 @cond_branch + mov r0, #0xff + strb r0, [r7, #0x4] + lsl r0, r5, #0x10 + asr r0, r0, #0x10 + cmp r0, #0 + bne ._406 @cond_branch + mov r0, #0xa1 + strb r0, [r7, #0x3] + b ._414 +._406: + cmp r0, #0 + ble ._408 @cond_branch + mov r4, #0x64 + mov r0, #0x0 + mov r8, r0 + mov r6, #0x0 +._412: + lsl r5, r5, #0x10 + asr r0, r5, #0x10 + lsl r4, r4, #0x10 + asr r1, r4, #0x10 + bl __divsi3 + lsl r0, r0, #0x10 + lsr r2, r0, #0x10 + mov r1, r8 + cmp r1, #0 + bne ._410 @cond_branch + cmp r6, #0x2 + beq ._410 @cond_branch + cmp r2, #0 + beq ._411 @cond_branch +._410: + add r1, r6, r7 + add r0, r2, #0 + sub r0, r0, #0x5f + strb r0, [r1, #0x1] + mov r0, #0x1 + mov r8, r0 +._411: + asr r0, r5, #0x10 + asr r4, r4, #0x10 + add r1, r4, #0 + bl __modsi3 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + add r0, r4, #0 + mov r1, #0xa + bl __divsi3 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + add r0, r6, #1 + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + cmp r6, #0x2 + bls ._412 @cond_branch + b ._414 +._408: + cmp r0, #0 + bge ._414 @cond_branch + neg r0, r0 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + mov r4, #0x64 + mov r1, #0x0 + mov r8, r1 + mov r6, #0x0 +._419: + lsl r5, r5, #0x10 + asr r0, r5, #0x10 + lsl r4, r4, #0x10 + asr r1, r4, #0x10 + bl __divsi3 + lsl r0, r0, #0x10 + lsr r2, r0, #0x10 + mov r1, r8 + lsl r0, r1, #0x10 + add r3, r0, #0 + cmp r3, #0 + bne ._416 @cond_branch + cmp r6, #0x2 + beq ._416 @cond_branch + cmp r2, #0 + beq ._417 @cond_branch +._416: + add r1, r6, r7 + add r0, r2, #0 + sub r0, r0, #0x5f + strb r0, [r1, #0x1] + cmp r3, #0 + bne ._418 @cond_branch + mov r0, #0xae + strb r0, [r1] +._418: + mov r0, #0x1 + mov r8, r0 +._417: + asr r0, r5, #0x10 + asr r4, r4, #0x10 + add r1, r4, #0 + bl __modsi3 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + add r0, r4, #0 + mov r1, #0xa + bl __divsi3 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + add r0, r6, #1 + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + cmp r6, #0x2 + bls ._419 @cond_branch +._414: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 + + thumb_func_end debug_sub_816097C + + thumb_func_start debug_sub_8160A80 +debug_sub_8160A80: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + add r2, r0, #0 + ldr r1, ._422 + cmp r0, #0 + bne ._420 @cond_branch + ldr r4, ._422 + 4 + ldrb r1, [r1, #0x1] + add r0, r4, #0 + bl debug_sub_816097C + add r0, r4, #0 + mov r1, #0x8 + mov r2, #0x3 + bl Menu_PrintText + b ._440 +._423: + .align 2, 0 +._422: + .word _nakamuraStatic18 + .word gStringVar1 +._420: + cmp r0, #0x1 + bne ._424 @cond_branch + ldr r4, ._426 + ldrb r1, [r1, #0x2] + add r0, r4, #0 + bl debug_sub_816097C + add r0, r4, #0 + mov r1, #0x8 + mov r2, #0x5 + bl Menu_PrintText + b ._440 +._427: + .align 2, 0 +._426: + .word gStringVar1 +._424: + cmp r0, #0x2 + bne ._428 @cond_branch + ldr r4, ._430 + ldrb r1, [r1, #0x3] + add r0, r4, #0 + bl debug_sub_816097C + add r0, r4, #0 + mov r1, #0x8 + mov r2, #0x7 + bl Menu_PrintText + b ._440 +._431: + .align 2, 0 +._430: + .word gStringVar1 +._428: + cmp r0, #0x3 + bne ._432 @cond_branch + ldr r4, ._434 + ldrb r1, [r1, #0x4] + add r0, r4, #0 + bl debug_sub_816097C + add r0, r4, #0 + mov r1, #0x8 + mov r2, #0x9 + bl Menu_PrintText + b ._440 +._435: + .align 2, 0 +._434: + .word gStringVar1 +._432: + cmp r0, #0x4 + bne ._436 @cond_branch + ldr r4, ._438 + ldrb r1, [r1, #0x5] + add r0, r4, #0 + bl debug_sub_816097C + add r0, r4, #0 + mov r1, #0x8 + mov r2, #0xb + bl Menu_PrintText + b ._440 +._439: + .align 2, 0 +._438: + .word gStringVar1 +._436: + cmp r2, #0x5 + bne ._440 @cond_branch + ldr r4, ._441 + ldrb r1, [r1, #0x6] + add r0, r4, #0 + bl debug_sub_816097C + add r0, r4, #0 + mov r1, #0x8 + mov r2, #0xd + bl Menu_PrintText +._440: + pop {r4} + pop {r0} + bx r0 +._442: + .align 2, 0 +._441: + .word gStringVar1 + + thumb_func_end debug_sub_8160A80 + + thumb_func_start debug_sub_8160B50 +debug_sub_8160B50: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + add r3, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r4, r1, #0 + ldr r2, ._445 + cmp r0, #0 + bne ._443 @cond_branch + ldrb r0, [r2, #0x1] + add r0, r0, r1 + strb r0, [r2, #0x1] + b ._455 +._446: + .align 2, 0 +._445: + .word _nakamuraStatic18 +._443: + cmp r0, #0x1 + bne ._447 @cond_branch + ldrb r0, [r2, #0x2] + add r0, r0, r1 + strb r0, [r2, #0x2] + b ._455 +._447: + cmp r0, #0x2 + bne ._449 @cond_branch + ldrb r0, [r2, #0x3] + add r0, r0, r1 + strb r0, [r2, #0x3] + b ._455 +._449: + cmp r0, #0x3 + bne ._451 @cond_branch + ldrb r0, [r2, #0x4] + add r0, r0, r1 + strb r0, [r2, #0x4] + b ._455 +._451: + cmp r0, #0x4 + bne ._453 @cond_branch + ldrb r0, [r2, #0x5] + add r0, r0, r1 + strb r0, [r2, #0x5] + b ._455 +._453: + cmp r3, #0x5 + bne ._455 @cond_branch + ldrb r0, [r2, #0x6] + add r0, r0, r4 + strb r0, [r2, #0x6] +._455: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_sub_8160B50 + + thumb_func_start debug_sub_8160BB0 +debug_sub_8160BB0: + push {r4, r5, lr} + ldr r5, ._456 + ldr r4, ._456 + 4 + add r0, r5, #0 + add r1, r4, #0 + bl debug_sub_8160714 + strb r0, [r4] + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0x8 + mov r3, #0x2 + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + pop {r4, r5} + pop {r0} + bx r0 +._457: + .align 2, 0 +._456: + .word gStringVar1 + .word _nakamuraStatic18 + + thumb_func_end debug_sub_8160BB0 + + thumb_func_start debug_sub_8160BE4 +debug_sub_8160BE4: + push {r4, lr} + add sp, sp, #0xfffffff8 + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xc + mov r3, #0xf + bl Menu_DrawStdWindowFrame + bl debug_sub_8160BB0 + ldr r0, ._459 + mov r1, #0x2 + mov r2, #0x3 + bl Menu_PrintText + ldr r0, ._459 + 4 + mov r1, #0x2 + mov r2, #0x5 + bl Menu_PrintText + ldr r0, ._459 + 8 + mov r1, #0x2 + mov r2, #0x7 + bl Menu_PrintText + ldr r0, ._459 + 12 + mov r1, #0x2 + mov r2, #0x9 + bl Menu_PrintText + ldr r0, ._459 + 16 + mov r1, #0x2 + mov r2, #0xb + bl Menu_PrintText + ldr r0, ._459 + 20 + mov r1, #0x2 + mov r2, #0xd + bl Menu_PrintText + mov r4, #0x0 +._458: + add r0, r4, #0 + bl debug_sub_8160A80 + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x5 + bls ._458 @cond_branch + mov r0, #0x0 + str r0, [sp] + mov r0, #0xb + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x6 + bl InitMenu + add sp, sp, #0x8 + pop {r4} + pop {r0} + bx r0 +._460: + .align 2, 0 +._459: + .word gContestStatsText_Spicy + .word gContestStatsText_Dry + .word gContestStatsText_Sweet + .word gContestStatsText_Bitter + .word gContestStatsText_Sour + .word gContestStatsText_Tasty + + thumb_func_end debug_sub_8160BE4 + + thumb_func_start debug_sub_8160C7C +debug_sub_8160C7C: + push {r4, lr} + ldr r2, ._469 + mov r1, #0x0 + ldrb r0, [r2] + cmp r0, #0xc + bne ._467 @cond_branch + ldrb r0, [r2, #0x1] + cmp r0, #0x2 + bne ._462 @cond_branch + mov r1, #0x1 +._462: + ldrb r0, [r2, #0x3] + cmp r0, #0x2 + bne ._463 @cond_branch + add r0, r1, #1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 +._463: + ldrb r0, [r2, #0x4] + cmp r0, #0x2 + bne ._464 @cond_branch + add r0, r1, #1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 +._464: + ldrb r0, [r2, #0x2] + cmp r0, #0x2 + bne ._465 @cond_branch + add r0, r1, #1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 +._465: + ldrb r0, [r2, #0x5] + cmp r0, #0x2 + bne ._466 @cond_branch + add r0, r1, #1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 +._466: + cmp r1, #0x3 + beq ._467 @cond_branch + mov r0, #0x2 + strb r0, [r2, #0x1] + strb r0, [r2, #0x3] + strb r0, [r2, #0x4] +._467: + add r0, r2, #0 + bl sub_810CA34 + bl debug_sub_8160BB0 + mov r4, #0x0 +._468: + add r0, r4, #0 + bl debug_sub_8160A80 + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x5 + bls ._468 @cond_branch + pop {r4} + pop {r0} + bx r0 +._470: + .align 2, 0 +._469: + .word _nakamuraStatic18 + + thumb_func_end debug_sub_8160C7C + + thumb_func_start debug_sub_8160CF4 +debug_sub_8160CF4: + push {lr} + ldr r2, ._473 + ldrh r1, [r2, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._471 @cond_branch + mov r0, #0x1 + neg r0, r0 + b ._472 +._474: + .align 2, 0 +._473: + .word gMain +._471: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._475 @cond_branch + mov r0, #0x1 +._472: + bl Menu_MoveCursor + mov r0, #0x0 + b ._484 +._475: + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._477 @cond_branch + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0x1 + neg r1, r1 + b ._478 +._477: + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._479 @cond_branch + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0x1 +._478: + bl debug_sub_8160B50 + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bl debug_sub_8160A80 + bl debug_sub_8160BB0 + mov r0, #0x0 + b ._484 +._479: + ldrh r1, [r2, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._481 @cond_branch + bl debug_sub_8160C7C + mov r0, #0x5 + bl PlaySE + mov r0, #0x0 + b ._484 +._481: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + bne ._483 @cond_branch + mov r0, #0x0 + b ._484 +._483: + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + bl CloseMenu + mov r0, #0x1 +._484: + pop {r1} + bx r1 + + thumb_func_end debug_sub_8160CF4 + + thumb_func_start debug_sub_8160D98 +debug_sub_8160D98: + push {lr} + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + bl debug_sub_8160BE4 + ldr r1, ._485 + ldr r0, ._485 + 4 + str r0, [r1] + mov r0, #0x0 + pop {r1} + bx r1 +._486: + .align 2, 0 +._485: + .word gMenuCallback + .word debug_sub_8160CF4+1 + + thumb_func_end debug_sub_8160D98 + + thumb_func_start debug_sub_8160DC0 +debug_sub_8160DC0: + push {lr} + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x16 + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r0, ._487 + mov r1, #0xb + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._487 + 4 + mov r1, #0x2 + mov r2, #0x3 + bl Menu_PrintText + ldr r0, ._487 + 8 + mov r1, #0x2 + mov r2, #0x5 + bl Menu_PrintText + ldr r0, ._487 + 12 + mov r1, #0x2 + mov r2, #0x7 + bl Menu_PrintText + ldr r0, ._487 + 16 + mov r1, #0x2 + mov r2, #0x9 + bl Menu_PrintText + ldr r0, ._487 + 20 + mov r1, #0x2 + mov r2, #0xb + bl Menu_PrintText + ldr r0, ._487 + 24 + mov r1, #0x2 + mov r2, #0xd + bl Menu_PrintText + ldr r0, ._487 + 28 + mov r1, #0x2 + mov r2, #0xf + bl Menu_PrintText + ldr r0, ._487 + 32 + mov r1, #0x2 + mov r2, #0x11 + bl Menu_PrintText + pop {r0} + bx r0 +._488: + .align 2, 0 +._487: + .word gOtherText_Slash + .word Str_843E5F2 + .word Str_843E5FB + .word Str_843E606 + .word Str_843E611 + .word Str_843E61C + .word Str_843E627 + .word Str_843E637 + .word Str_843E632 + + thumb_func_end debug_sub_8160DC0 + + thumb_func_start debug_sub_8160E50 +debug_sub_8160E50: + push {r4, r5, r6, lr} + add r6, r0, #0 + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0xa + mov r3, #0x2 + bl Menu_BlankWindowRect + ldr r5, ._489 + add r0, r6, #0 + mov r1, #0x2 + add r2, r5, #0 + bl GetMonData + add r0, r5, #0 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + mov r0, #0xc + mov r1, #0x1 + mov r2, #0x15 + mov r3, #0x2 + bl Menu_BlankWindowRect + add r0, r6, #0 + mov r1, #0xb + bl GetMonData + mov r1, #0xb + mul r0, r0, r1 + ldr r1, ._489 + 4 + add r0, r0, r1 + mov r1, #0xc + mov r2, #0x1 + bl Menu_PrintText + add r0, r6, #0 + mov r1, #0x1a + bl GetMonData + add r4, r0, #0 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + add r0, r5, #0 + add r1, r4, #0 + mov r2, #0x0 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + mov r0, #0xd + mov r1, #0x3 + mov r2, #0x11 + mov r3, #0x4 + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0xd + mov r2, #0x3 + bl Menu_PrintText + add r0, r6, #0 + mov r1, #0x1b + bl GetMonData + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r4, r4, r1 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + mov r0, #0xd + mov r1, #0x5 + mov r2, #0x11 + mov r3, #0x6 + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0xd + mov r2, #0x5 + bl Menu_PrintText + add r0, r6, #0 + mov r1, #0x1c + bl GetMonData + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r4, r4, r1 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + mov r0, #0xd + mov r1, #0x7 + mov r2, #0x11 + mov r3, #0x8 + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0xd + mov r2, #0x7 + bl Menu_PrintText + add r0, r6, #0 + mov r1, #0x1d + bl GetMonData + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r4, r4, r1 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + mov r0, #0xd + mov r1, #0x9 + mov r2, #0x11 + mov r3, #0xa + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0xd + mov r2, #0x9 + bl Menu_PrintText + add r0, r6, #0 + mov r1, #0x1e + bl GetMonData + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r4, r4, r1 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + mov r0, #0xd + mov r1, #0xb + mov r2, #0x11 + mov r3, #0xc + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0xd + mov r2, #0xb + bl Menu_PrintText + add r0, r6, #0 + mov r1, #0x1f + bl GetMonData + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r4, r4, r1 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + mov r0, #0xd + mov r1, #0xd + mov r2, #0x11 + mov r3, #0xe + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0xd + mov r2, #0xd + bl Menu_PrintText + add r0, r5, #0 + add r1, r4, #0 + mov r2, #0x0 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + mov r0, #0xd + mov r1, #0xf + mov r2, #0x11 + mov r3, #0x10 + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0xd + mov r2, #0xf + bl Menu_PrintText + add r0, r6, #0 + mov r1, #0x20 + bl GetMonData + add r1, r0, #0 + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + mov r0, #0xd + mov r1, #0x11 + mov r2, #0x11 + mov r3, #0x12 + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0xd + mov r2, #0x11 + bl Menu_PrintText + pop {r4, r5, r6} + pop {r0} + bx r0 +._490: + .align 2, 0 +._489: + .word gStringVar1 + .word gSpeciesNames + + thumb_func_end debug_sub_8160E50 + + thumb_func_start debug_sub_8161028 +debug_sub_8161028: + push {r4, r5, r6, lr} + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + bne ._491 @cond_branch + ldr r0, ._496 + ldrb r0, [r0] + cmp r0, #0 + bne ._492 @cond_branch + mov r5, #0x5 +._494: + lsl r0, r5, #0x10 + asr r4, r0, #0x10 + mov r0, #0x64 + mul r0, r0, r4 + ldr r1, ._496 + 4 + add r0, r0, r1 + mov r1, #0xb + bl GetMonData + cmp r0, #0 + bne ._493 @cond_branch + sub r0, r4, #1 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + cmp r0, #0 + bge ._494 @cond_branch +._492: + ldr r1, ._496 + ldrb r0, [r1] + add r0, r0, r6 + strb r0, [r1] + b ._506 +._497: + .align 2, 0 +._496: + .word _nakamuraData5 + .word gPlayerParty +._491: + cmp r1, #0x1 + bne ._506 @cond_branch + ldr r4, ._501 + ldrb r0, [r4] + add r0, r0, r6 + strb r0, [r4] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x6 + bne ._499 @cond_branch + mov r0, #0x0 + b ._500 +._502: + .align 2, 0 +._501: + .word _nakamuraData5 +._493: + ldr r0, ._504 + strb r5, [r0] + b ._506 +._505: + .align 2, 0 +._504: + .word _nakamuraData5 +._499: + ldrb r1, [r4] + mov r0, #0x64 + mul r0, r0, r1 + ldr r1, ._507 + add r0, r0, r1 + mov r1, #0xb + bl GetMonData + cmp r0, #0 + bne ._506 @cond_branch +._500: + strb r0, [r4] +._506: + pop {r4, r5, r6} + pop {r0} + bx r0 +._508: + .align 2, 0 +._507: + .word gPlayerParty + + thumb_func_end debug_sub_8161028 + + thumb_func_start debug_sub_81610BC +debug_sub_81610BC: + push {lr} + ldr r0, ._511 + ldrh r1, [r0, #0x2e] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._509 @cond_branch + mov r0, #0x1 + neg r0, r0 + b ._510 +._512: + .align 2, 0 +._511: + .word gMain +._509: + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._513 @cond_branch + mov r0, #0x1 +._510: + bl debug_sub_8161028 + ldr r0, ._515 + ldrb r1, [r0] + mov r0, #0x64 + mul r0, r0, r1 + ldr r1, ._515 + 4 + add r0, r0, r1 + bl debug_sub_8160E50 + mov r0, #0x0 + b ._518 +._516: + .align 2, 0 +._515: + .word _nakamuraData5 + .word gPlayerParty +._513: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + bne ._517 @cond_branch + mov r0, #0x0 + b ._518 +._517: + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + bl CloseMenu + mov r0, #0x1 +._518: + pop {r1} + bx r1 + + thumb_func_end debug_sub_81610BC + + thumb_func_start DebugMenu_EffortValues +DebugMenu_EffortValues: + push {lr} + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + ldr r1, ._519 + mov r0, #0x0 + strb r0, [r1] + bl debug_sub_8160DC0 + ldr r0, ._519 + 4 + bl debug_sub_8160E50 + ldr r1, ._519 + 8 + ldr r0, ._519 + 12 + str r0, [r1] + mov r0, #0x0 + pop {r1} + bx r1 +._520: + .align 2, 0 +._519: + .word _nakamuraData5 + .word gPlayerParty + .word gMenuCallback + .word debug_sub_81610BC+1 + + thumb_func_end DebugMenu_EffortValues + + thumb_func_start debug_sub_8161160 +debug_sub_8161160: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + mov r7, #0x0 + ldr r2, ._523 + ldr r1, ._523 + 4 + ldrh r0, [r2] + ldrh r3, [r1] + cmp r0, r3 + bhi ._521 @cond_branch + add r6, r0, #0 + ldrh r5, [r1] + b ._522 +._524: + .align 2, 0 +._523: + .word _nakamuraData6 + .word _nakamuraData8 +._521: + ldrh r6, [r1] + ldrh r5, [r2] +._522: + mov r4, #0x0 + ldr r0, ._529 + ldrh r0, [r0] + cmp r4, r0 + bcs ._525 @cond_branch + ldr r0, ._529 + 4 + mov r8, r0 +._528: + bl Random + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r2, r8 + ldrh r1, [r2] + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + cmp r0, r6 + bcc ._527 @cond_branch + cmp r0, r5 + bhi ._527 @cond_branch + add r0, r7, #1 + lsl r0, r0, #0x10 + lsr r7, r0, #0x10 +._527: + add r4, r4, #0x1 + ldr r0, ._529 + ldrh r0, [r0] + cmp r4, r0 + bcc ._528 @cond_branch +._525: + add r0, r7, #0 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._530: + .align 2, 0 +._529: + .word _nakamuraDataA + .word _nakamuraDataC + + thumb_func_end debug_sub_8161160 + + thumb_func_start debug_sub_81611D8 +debug_sub_81611D8: + push {r4, lr} + add sp, sp, #0xfffffff8 + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xf + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r0, ._531 + mov r1, #0x2 + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._531 + 4 + mov r1, #0x2 + mov r2, #0x3 + bl Menu_PrintText + ldr r0, ._531 + 8 + mov r1, #0x2 + mov r2, #0x5 + bl Menu_PrintText + ldr r0, ._531 + 12 + mov r1, #0x2 + mov r2, #0x7 + bl Menu_PrintText + ldr r0, ._531 + 16 + mov r1, #0x2 + mov r2, #0x9 + bl Menu_PrintText + ldr r0, ._531 + 20 + mov r1, #0xd + mov r2, #0x9 + bl Menu_PrintText + ldr r4, ._531 + 24 + add r0, r4, #0 + mov r1, #0xc + mov r2, #0x1 + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0xc + mov r2, #0x3 + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0xc + mov r2, #0x5 + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0xc + mov r2, #0x7 + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0xc + mov r2, #0x9 + bl Menu_PrintText + mov r0, #0x0 + str r0, [sp] + mov r0, #0xe + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x4 + bl InitMenu + add sp, sp, #0x8 + pop {r4} + pop {r0} + bx r0 +._532: + .align 2, 0 +._531: + .word Str_843E642 + .word Str_843E647 + .word Str_843E65A + .word Str_843E64C + .word Str_843E651 + .word Str_843E655 + .word Str_843E658 + + thumb_func_end debug_sub_81611D8 + + thumb_func_start debug_sub_8161290 +debug_sub_8161290: + push {r4, lr} + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + ldr r4, ._533 + add r0, r4, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x8 + mov r2, #0x9 + bl Menu_PrintText + pop {r4} + pop {r0} + bx r0 +._534: + .align 2, 0 +._533: + .word gStringVar1 + + thumb_func_end debug_sub_8161290 + + thumb_func_start debug_sub_81612B8 +debug_sub_81612B8: + push {r4, r5, lr} + add r4, r2, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + lsl r1, r1, #0x18 + asr r1, r1, #0x18 + ldrh r2, [r0] + add r1, r1, r2 + strh r1, [r0] + ldr r5, ._535 + ldrh r1, [r0] + add r0, r5, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r5, #0 + mov r1, #0x8 + add r2, r4, #0 + bl Menu_PrintText + pop {r4, r5} + pop {r0} + bx r0 +._536: + .align 2, 0 +._535: + .word gStringVar1 + + thumb_func_end debug_sub_81612B8 + + thumb_func_start debug_sub_81612EC +debug_sub_81612EC: + push {r4, r5, lr} + ldr r2, ._540 + ldrh r1, [r2, #0x2c] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + mov r5, #0x1 + cmp r0, #0 + beq ._537 @cond_branch + mov r5, #0x64 +._537: + ldrh r1, [r2, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._538 @cond_branch + mov r0, #0x1 + neg r0, r0 + b ._539 +._541: + .align 2, 0 +._540: + .word gMain +._538: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._542 @cond_branch + mov r0, #0x1 +._539: + bl Menu_MoveCursor +._565: + mov r0, #0x0 + b ._543 +._542: + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._544 @cond_branch + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + asr r4, r0, #0x18 + cmp r4, #0 + bne ._545 @cond_branch + ldr r0, ._550 + neg r1, r5 + mov r2, #0x1 + bl debug_sub_81612B8 +._545: + cmp r4, #0x1 + bne ._546 @cond_branch + ldr r0, ._550 + 4 + neg r1, r5 + mov r2, #0x3 + bl debug_sub_81612B8 +._546: + cmp r4, #0x2 + bne ._547 @cond_branch + ldr r0, ._550 + 8 + neg r1, r5 + mov r2, #0x5 + bl debug_sub_81612B8 +._547: + cmp r4, #0x3 + bne ._565 @cond_branch + ldr r0, ._550 + 12 + neg r1, r5 + mov r2, #0x7 + bl debug_sub_81612B8 + b ._565 +._551: + .align 2, 0 +._550: + .word _nakamuraData6 + .word _nakamuraData8 + .word _nakamuraDataC + .word _nakamuraDataA +._544: + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._552 @cond_branch + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + asr r4, r0, #0x18 + cmp r4, #0 + bne ._553 @cond_branch + ldr r0, ._558 + add r1, r5, #0 + mov r2, #0x1 + bl debug_sub_81612B8 +._553: + cmp r4, #0x1 + bne ._554 @cond_branch + ldr r0, ._558 + 4 + add r1, r5, #0 + mov r2, #0x3 + bl debug_sub_81612B8 +._554: + cmp r4, #0x2 + bne ._555 @cond_branch + ldr r0, ._558 + 8 + add r1, r5, #0 + mov r2, #0x5 + bl debug_sub_81612B8 +._555: + cmp r4, #0x3 + bne ._565 @cond_branch + ldr r0, ._558 + 12 + add r1, r5, #0 + mov r2, #0x7 + bl debug_sub_81612B8 + b ._565 +._559: + .align 2, 0 +._558: + .word _nakamuraData6 + .word _nakamuraData8 + .word _nakamuraDataC + .word _nakamuraDataA +._552: + ldrh r1, [r2, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._560 @cond_branch + ldr r0, ._563 + ldrh r0, [r0] + cmp r0, #0 + beq ._565 @cond_branch + mov r0, #0x5 + bl PlaySE + bl debug_sub_8161160 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl debug_sub_8161290 + b ._565 +._564: + .align 2, 0 +._563: + .word _nakamuraDataC +._560: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._565 @cond_branch + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + bl CloseMenu + mov r0, #0x1 +._543: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_81612EC + + thumb_func_start DebugMenu_RandomNumberTest +DebugMenu_RandomNumberTest: + push {lr} + ldr r0, ._566 + mov r1, #0x0 + strh r1, [r0] + ldr r0, ._566 + 4 + strh r1, [r0] + ldr r0, ._566 + 8 + strh r1, [r0] + ldr r0, ._566 + 12 + strh r1, [r0] + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_EraseWindowRect + bl debug_sub_81611D8 + ldr r1, ._566 + 16 + ldr r0, ._566 + 20 + str r0, [r1] + mov r0, #0x0 + pop {r1} + bx r1 +._567: + .align 2, 0 +._566: + .word _nakamuraData6 + .word _nakamuraData8 + .word _nakamuraDataC + .word _nakamuraDataA + .word gMenuCallback + .word debug_sub_81612EC+1 + + thumb_func_end DebugMenu_RandomNumberTest + + .align 2, 0 + +.endif diff --git a/asm/nohara_debug_menu.s b/asm/nohara_debug_menu.s new file mode 100644 index 000000000..88e6f1868 --- /dev/null +++ b/asm/nohara_debug_menu.s @@ -0,0 +1,2198 @@ +.if DEBUG + + .include "constants/gba_constants.inc" + .include "include/macros.inc" + + .text + + thumb_func_start InitNoharaDebugMenu +InitNoharaDebugMenu: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x13 + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._1 + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x12 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._1 + 4 + ldr r0, ._1 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._2: + .align 2, 0 +._1: + .word gUnknown_Debug_083C4938 + .word gMenuCallback + .word debug_sub_808F414+1 + + thumb_func_end InitNoharaDebugMenu + + thumb_func_start debug_sub_808F414 +debug_sub_808F414: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + beq ._3 @cond_branch + add r0, r0, #0x1 + cmp r1, r0 + beq ._4 @cond_branch + ldr r2, ._6 + ldr r0, ._6 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] +._3: + mov r0, #0x0 + b ._5 +._7: + .align 2, 0 +._6: + .word gMenuCallback + .word gUnknown_Debug_083C4938 +._4: + bl CloseMenu + mov r0, #0x1 +._5: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808F414 + + thumb_func_start NoharaDebugMenu_TV +NoharaDebugMenu_TV: + push {lr} + add sp, sp, #0xfffffff8 + ldr r1, ._8 + mov r0, #0x0 + strb r0, [r1] + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xa + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._8 + 4 + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x9 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._8 + 8 + ldr r0, ._8 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._9: + .align 2, 0 +._8: + .word gDebug_03000726 + .word gUnknown_Debug_083C4B8C + .word gMenuCallback + .word debug_sub_808F4AC+1 + + thumb_func_end NoharaDebugMenu_TV + + thumb_func_start debug_sub_808F4AC +debug_sub_808F4AC: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + beq ._10 @cond_branch + add r0, r0, #0x1 + cmp r1, r0 + beq ._11 @cond_branch + ldr r2, ._13 + ldr r0, ._13 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] +._10: + mov r0, #0x0 + b ._12 +._14: + .align 2, 0 +._13: + .word gMenuCallback + .word gUnknown_Debug_083C4B8C +._11: + bl CloseMenu + mov r0, #0x1 +._12: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808F4AC + + thumb_func_start debug_sub_808F4EC +debug_sub_808F4EC: + push {lr} + bl debug_sub_808F6BC + ldr r0, ._15 + bl sub_8071F40 + mov r0, #0x3 + mov r1, #0x3 + mov r2, #0x1 + bl DisplayYesNoMenu + ldr r1, ._15 + 4 + ldr r0, ._15 + 8 + str r0, [r1] + pop {r0} + bx r0 +._16: + .align 2, 0 +._15: + .word gUnknown_Debug_083C4980 + .word gMenuCallback + .word debug_sub_808F648+1 + + thumb_func_end debug_sub_808F4EC + + thumb_func_start debug_sub_808F518 +debug_sub_808F518: + push {r4, lr} + mov r2, #0x0 + ldr r4, ._20 + ldr r3, ._20 + 4 +._19: + lsl r0, r2, #0x3 + add r0, r0, r2 + lsl r0, r0, #0x2 + add r1, r0, r4 + add r0, r1, r3 + ldrb r0, [r0] + sub r0, r0, #0x15 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x13 + bhi ._18 @cond_branch + ldr r0, ._20 + 8 + add r1, r1, r0 + ldrb r0, [r1] + cmp r0, #0 + bne ._18 @cond_branch + mov r0, #0x1 + strb r0, [r1] +._18: + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x17 + bls ._19 @cond_branch + pop {r4} + pop {r0} + bx r0 +._21: + .align 2, 0 +._20: + .word gSaveBlock1 + .word 0x2738 + .word 0x2739 + + thumb_func_end debug_sub_808F518 + + thumb_func_start debug_sub_808F560 +debug_sub_808F560: + push {r4, lr} + mov r1, #0x0 + ldr r4, ._23 + ldr r3, ._23 + 4 + mov r2, #0x0 +._22: + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r4 + add r0, r0, r3 + strb r2, [r0] + add r0, r1, #1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + cmp r1, #0x17 + bls ._22 @cond_branch + bl CloseMenu + mov r0, #0x1 + pop {r4} + pop {r1} + bx r1 +._24: + .align 2, 0 +._23: + .word gSaveBlock1 + .word 0x2739 + + thumb_func_end debug_sub_808F560 + + thumb_func_start debug_sub_808F594 +debug_sub_808F594: + push {r4, r5, r6, lr} + mov r2, #0x0 + ldr r6, ._27 + ldr r5, ._27 + 4 + ldr r4, ._27 + 8 + mov r3, #0x1 +._26: + lsl r0, r2, #0x3 + add r0, r0, r2 + lsl r0, r0, #0x2 + add r1, r0, r6 + add r0, r1, r5 + ldrb r0, [r0] + cmp r0, #0 + beq ._25 @cond_branch + add r0, r1, r4 + strb r3, [r0] +._25: + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x17 + bls ._26 @cond_branch + bl CloseMenu + mov r0, #0x1 + pop {r4, r5, r6} + pop {r1} + bx r1 +._28: + .align 2, 0 +._27: + .word gSaveBlock1 + .word 0x2738 + .word 0x2739 + + thumb_func_end debug_sub_808F594 + + thumb_func_start debug_sub_808F5D8 +debug_sub_808F5D8: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + mov r4, #0x0 + ldr r6, ._30 + ldr r7, ._30 + 4 + add r0, r7, #1 + mov r8, r0 +._29: + ldr r5, ._30 + 8 + strh r4, [r5] + bl GetSlotMachineId + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r6, #0 + mov r2, #0x0 + mov r3, #0x1 + bl ConvertIntToDecimalStringN + lsl r0, r4, #0x1 + add r0, r0, r4 + lsl r0, r0, #0x2 + add r1, r0, r7 + ldrb r1, [r1] + add r0, r0, r8 + ldrb r2, [r0] + add r0, r6, #0 + bl Menu_PrintText + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0xb + bls ._29 @cond_branch + mov r0, #0x0 + strh r0, [r5] + ldr r1, ._30 + 12 + ldr r0, ._30 + 16 + str r0, [r1] + mov r0, #0x0 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._31: + .align 2, 0 +._30: + .word gStringVar1 + .word gUnknown_Debug_083C4BD4 + .word gSpecialVar_0x8004 + .word gMenuCallback + .word debug_sub_8090278+1 + + thumb_func_end debug_sub_808F5D8 + + thumb_func_start debug_sub_808F648 +debug_sub_808F648: + push {lr} + ldr r0, ._35 + ldrh r1, [r0, #0x2e] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._32 @cond_branch + mov r0, #0xa + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xd + bl Menu_EraseWindowRect + ldr r0, ._35 + 4 + ldrb r1, [r0] + mov r2, #0x1 + eor r1, r1, r2 + strb r1, [r0] + cmp r1, #0 + beq ._33 @cond_branch + bl debug_sub_808F7B4 + b ._40 +._36: + .align 2, 0 +._35: + .word gMain + .word gDebug_03000726 +._33: + bl debug_sub_808F6BC + b ._40 +._32: + bl Menu_ProcessInputNoWrap_ + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._43 @cond_branch + cmp r1, r0 + bgt ._39 @cond_branch + sub r0, r0, #0x1 + cmp r1, r0 + beq ._40 @cond_branch + b ._43 +._39: + cmp r1, #0 + beq ._42 @cond_branch + b ._43 +._40: + mov r0, #0x0 + b ._44 +._42: + bl debug_sub_808F518 +._43: + bl CloseMenu + mov r0, #0x1 +._44: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808F648 + + thumb_func_start debug_sub_808F6BC +debug_sub_808F6BC: + push {r4, r5, r6, lr} + mov r4, #0x0 + ldr r5, ._48 + ldr r6, ._48 + 4 +._45: + lsl r0, r4, #0x3 + add r0, r0, r4 + lsl r0, r0, #0x2 + add r0, r0, r6 + ldr r1, ._48 + 8 + add r0, r0, r1 + ldrb r1, [r0] + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + lsl r1, r4, #0x19 + mov r0, #0xa0 + lsl r0, r0, #0x14 + add r1, r1, r0 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0x0 + bl Menu_PrintText + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x4 + bls ._45 @cond_branch + mov r4, #0x5 + ldr r5, ._48 + ldr r6, ._48 + 4 +._50: + lsl r0, r4, #0x3 + add r0, r0, r4 + lsl r0, r0, #0x2 + add r0, r0, r6 + ldr r1, ._48 + 8 + add r0, r0, r1 + ldrb r1, [r0] + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + cmp r4, #0xe + bhi ._46 @cond_branch + lsl r1, r4, #0x19 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0x3 + bl Menu_PrintText + b ._47 +._49: + .align 2, 0 +._48: + .word gStringVar1 + .word gSaveBlock1 + .word 0x2738 +._46: + lsl r1, r4, #0x19 + mov r0, #0xec + lsl r0, r0, #0x18 + add r1, r1, r0 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0x6 + bl Menu_PrintText +._47: + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x17 + bls ._50 @cond_branch + mov r4, #0x0 + ldr r5, ._53 +._55: + ldr r0, ._53 + 4 + lsl r1, r4, #0x2 + add r1, r1, r0 + ldr r0, ._53 + 8 + add r1, r1, r0 + ldrb r1, [r1] + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + cmp r4, #0x7 + bhi ._51 @cond_branch + lsl r1, r4, #0x19 + mov r0, #0xa0 + lsl r0, r0, #0x14 + add r1, r1, r0 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0x9 + bl Menu_PrintText + b ._52 +._54: + .align 2, 0 +._53: + .word gStringVar1 + .word gSaveBlock1 + .word 0x2abc +._51: + lsl r1, r4, #0x19 + mov r0, #0xfa + lsl r0, r0, #0x18 + add r1, r1, r0 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0xc + bl Menu_PrintText +._52: + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0xf + bls ._55 @cond_branch + pop {r4, r5, r6} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808F6BC + + thumb_func_start debug_sub_808F7B4 +debug_sub_808F7B4: + push {r4, r5, r6, lr} + mov r4, #0x0 + ldr r5, ._59 + ldr r6, ._59 + 4 +._56: + lsl r0, r4, #0x3 + add r0, r0, r4 + lsl r0, r0, #0x2 + add r0, r0, r6 + ldr r1, ._59 + 8 + add r0, r0, r1 + ldrb r1, [r0] + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + lsl r1, r4, #0x19 + mov r0, #0xa0 + lsl r0, r0, #0x14 + add r1, r1, r0 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0x0 + bl Menu_PrintText + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x4 + bls ._56 @cond_branch + mov r4, #0x5 + ldr r5, ._59 + ldr r6, ._59 + 4 +._61: + lsl r0, r4, #0x3 + add r0, r0, r4 + lsl r0, r0, #0x2 + add r0, r0, r6 + ldr r1, ._59 + 8 + add r0, r0, r1 + ldrb r1, [r0] + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + cmp r4, #0xe + bhi ._57 @cond_branch + lsl r1, r4, #0x19 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0x3 + bl Menu_PrintText + b ._58 +._60: + .align 2, 0 +._59: + .word gStringVar1 + .word gSaveBlock1 + .word 0x2739 +._57: + lsl r1, r4, #0x19 + mov r0, #0xec + lsl r0, r0, #0x18 + add r1, r1, r0 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0x6 + bl Menu_PrintText +._58: + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x17 + bls ._61 @cond_branch + mov r4, #0x0 + ldr r5, ._64 +._66: + ldr r0, ._64 + 4 + lsl r1, r4, #0x2 + add r1, r1, r0 + ldr r0, ._64 + 8 + add r1, r1, r0 + ldrb r1, [r1] + add r0, r5, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + cmp r4, #0x7 + bhi ._62 @cond_branch + lsl r1, r4, #0x19 + mov r0, #0xa0 + lsl r0, r0, #0x14 + add r1, r1, r0 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0x9 + bl Menu_PrintText + b ._63 +._65: + .align 2, 0 +._64: + .word gStringVar1 + .word gSaveBlock1 + .word 0x2abd +._62: + lsl r1, r4, #0x19 + mov r0, #0xfa + lsl r0, r0, #0x18 + add r1, r1, r0 + lsr r1, r1, #0x18 + add r0, r5, #0 + mov r2, #0xc + bl Menu_PrintText +._63: + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0xf + bls ._66 @cond_branch + pop {r4, r5, r6} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808F7B4 + + thumb_func_start debug_sub_808F8AC +debug_sub_808F8AC: + push {lr} + ldr r0, ._67 + bl FlagSet + ldr r0, ._67 + 4 + bl FlagSet + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._68: + .align 2, 0 +._67: + .word 0x832 + .word 0x818 + + thumb_func_end debug_sub_808F8AC + + thumb_func_start debug_sub_808F8CC +debug_sub_808F8CC: + push {r4, lr} + ldr r1, ._69 + mov r0, #0x0 + strb r0, [r1] + ldr r0, ._69 + 4 + bl sub_8071F40 + mov r0, #0xd + mov r1, #0x6 + mov r2, #0x1a + mov r3, #0x8 + bl Menu_BlankWindowRect + ldr r0, ._69 + 8 + ldr r0, [r0] + mov r1, #0xe + mov r2, #0x7 + bl Menu_PrintText + mov r0, #0x16 + mov r1, #0x1 + mov r2, #0x18 + mov r3, #0x2 + bl Menu_BlankWindowRect + ldr r4, ._69 + 12 + add r0, r4, #0 + mov r1, #0x0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x17 + mov r2, #0x1 + bl Menu_PrintText + ldr r1, ._69 + 16 + ldr r0, ._69 + 20 + str r0, [r1] + pop {r4} + pop {r0} + bx r0 +._70: + .align 2, 0 +._69: + .word gDebug_03000724 + .word gUnknown_Debug_083C49CA + .word gUnknown_Debug_083C4ABD+0xf + .word gStringVar1 + .word gMenuCallback + .word debug_sub_808F93C+1 + + thumb_func_end debug_sub_808F8CC + + thumb_func_start debug_sub_808F93C +debug_sub_808F93C: + push {r4, lr} + mov r2, #0x0 + ldr r0, ._83 + ldrh r1, [r0, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._71 @cond_branch + ldr r1, ._83 + 4 + ldrb r0, [r1] + add r0, r0, #0x1 + strb r0, [r1] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x18 + bne ._72 @cond_branch + strb r2, [r1] +._72: + mov r0, #0x5 + bl PlaySE + mov r2, #0x1 +._71: + ldr r0, ._83 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._73 @cond_branch + ldr r1, ._83 + 4 + ldrb r0, [r1] + cmp r0, #0 + bne ._74 @cond_branch + mov r0, #0x18 + strb r0, [r1] +._74: + ldrb r0, [r1] + sub r0, r0, #0x1 + strb r0, [r1] + mov r0, #0x5 + bl PlaySE + mov r2, #0x1 +._73: + ldr r0, ._83 + ldrh r1, [r0, #0x2e] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._75 @cond_branch + ldr r1, ._83 + 8 + ldrb r0, [r1] + add r0, r0, #0x1 + strb r0, [r1] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0xc + bne ._76 @cond_branch + mov r0, #0x0 + strb r0, [r1] +._76: + mov r0, #0x5 + bl PlaySE + mov r2, #0x1 +._75: + ldr r0, ._83 + ldrh r1, [r0, #0x2e] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._77 @cond_branch + ldr r1, ._83 + 8 + ldrb r0, [r1] + cmp r0, #0 + bne ._78 @cond_branch + mov r0, #0xc + strb r0, [r1] +._78: + ldrb r0, [r1] + sub r0, r0, #0x1 + strb r0, [r1] + mov r0, #0x5 + bl PlaySE + mov r2, #0x1 +._77: + cmp r2, #0 + beq ._79 @cond_branch + mov r0, #0xd + mov r1, #0x6 + mov r2, #0x1a + mov r3, #0x8 + bl Menu_BlankWindowRect + ldr r1, ._83 + 12 + ldr r0, ._83 + 8 + ldrb r0, [r0] + lsl r0, r0, #0x2 + add r0, r0, r1 + ldr r0, [r0] + mov r1, #0xe + mov r2, #0x7 + bl Menu_PrintText + mov r0, #0x16 + mov r1, #0x1 + mov r2, #0x18 + mov r3, #0x2 + bl Menu_BlankWindowRect + ldr r4, ._83 + 16 + ldr r0, ._83 + 4 + ldrb r1, [r0] + add r0, r4, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x17 + mov r2, #0x1 + bl Menu_PrintText +._79: + ldr r4, ._83 + ldrh r1, [r4, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._80 @cond_branch + mov r0, #0x15 + bl PlaySE + ldr r0, ._83 + 4 + ldrb r0, [r0] + ldr r2, ._83 + 20 + ldr r1, ._83 + 8 + ldrb r1, [r1] + add r1, r1, r2 + ldrb r1, [r1] + bl debug_sub_808FA88 +._80: + ldrh r1, [r4, #0x2e] + mov r0, #0xa + and r0, r0, r1 + cmp r0, #0 + bne ._81 @cond_branch + mov r0, #0x0 + b ._82 +._84: + .align 2, 0 +._83: + .word gMain + .word gDebug_03000725 + .word gDebug_03000724 + .word gUnknown_Debug_083C4ABD+0xf + .word gStringVar1 + .word gUnknown_Debug_083C4ABD +._81: + ldr r0, ._85 + bl sub_80BF588 + bl CloseMenu + mov r0, #0x1 +._82: + pop {r4} + pop {r1} + bx r1 +._86: + .align 2, 0 +._85: + .word gSaveBlock1+0x2738 + + thumb_func_end debug_sub_808F93C + + thumb_func_start debug_sub_808FA88 +debug_sub_808FA88: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + add sp, sp, #0xffffffcc + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + lsl r1, r1, #0x18 + lsr r7, r1, #0x18 + bl GetLeadMonIndex + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r9, r0 + ldr r3, ._92 + lsl r4, r6, #0x3 + add r2, r4, r6 + lsl r2, r2, #0x2 + add r0, r2, r3 + ldr r5, ._92 + 4 + add r1, r0, r5 + strb r7, [r1] + ldr r1, ._92 + 8 + add r0, r0, r1 + mov r1, #0x1 + strb r1, [r0] + mov r1, #0x0 + ldr r0, ._92 + 12 + add r5, r3, r0 + mov r3, #0x1 +._87: + add r0, r1, r2 + add r0, r0, r5 + strb r3, [r0] + add r0, r1, #1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + cmp r1, #0x21 + bls ._87 @cond_branch + add r0, r7, #0 + bl GetTVChannelByShowType + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + add r1, r0, #0 + cmp r0, #0x3 + beq ._88 @cond_branch + cmp r0, #0x3 + bgt ._89 @cond_branch + cmp r0, #0x2 + beq ._90 @cond_branch + b ._95 +._93: + .align 2, 0 +._92: + .word gSaveBlock1 + .word 0x2738 + .word 0x2739 + .word 0x273a +._89: + cmp r1, #0x4 + bne ._95 @cond_branch +._90: + add r0, r4, r6 + lsl r0, r0, #0x2 + ldr r1, ._96 + add r0, r0, r1 + bl sub_80BE160 + b ._95 +._97: + .align 2, 0 +._96: + .word gSaveBlock1+0x2738 +._88: + add r0, r4, r6 + lsl r0, r0, #0x2 + ldr r1, ._100 + add r0, r0, r1 + bl sub_80BE138 +._95: + sub r0, r7, #1 + cmp r0, #0x28 + bls ._98 @cond_branch + b ._173 +._98: + lsl r0, r0, #0x2 + ldr r1, ._100 + 4 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._101: + .align 2, 0 +._100: + .word gSaveBlock1+0x2738 + .word ._102 +._102: + .word ._104 + .word ._104 + .word ._105 + .word ._173 + .word ._107 + .word ._108 + .word ._109 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._123 + .word ._124 + .word ._125 + .word ._126 + .word ._127 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._173 + .word ._143 +._104: + add r0, r4, r6 + lsl r0, r0, #0x2 + ldr r1, ._145 + add r4, r0, r1 + mov r2, #0x1 + strh r2, [r4, #0x2] + add r1, r1, #0x10 + add r0, r0, r1 + ldr r1, ._145 + 4 + bl StringCopy + mov r0, #0x5 + strb r0, [r4, #0x18] + b ._173 +._146: + .align 2, 0 +._145: + .word gSaveBlock1+0x2738 + .word gSaveBlock2 +._105: + add r4, r4, r6 + lsl r4, r4, #0x2 + ldr r6, ._148 + add r1, r4, r6 + mov r8, r1 + mov r0, #0x1 + strh r0, [r1, #0x2] + add r0, r6, #5 + add r0, r4, r0 + ldr r1, ._148 + 4 + bl StringCopy + mov r0, #0x64 + mov r5, r9 + mul r5, r5, r0 + ldr r0, ._148 + 8 + add r5, r5, r0 + add r6, r6, #0x10 + add r4, r4, r6 + add r0, r5, #0 + mov r1, #0x2 + add r2, r4, #0 + bl GetMonData + mov r0, #0x5 + mov r1, r8 + strb r0, [r1, #0xd] + add r0, r5, #0 + mov r1, #0x3 + bl GetMonData + mov r5, r8 + strb r0, [r5, #0xe] + b ._173 +._149: + .align 2, 0 +._148: + .word gSaveBlock1+0x2738 + .word gSaveBlock2 + .word gPlayerParty +._107: + mov r0, #0x64 + mov r1, r9 + mul r1, r1, r0 + mov r8, r1 + ldr r0, ._151 + add r8, r8, r0 + mov r0, r8 + mov r1, #0xb + bl GetMonData + add r4, r4, r6 + lsl r4, r4, #0x2 + ldr r5, ._151 + 4 + add r6, r4, r5 + strh r0, [r6, #0x2] + mov r0, #0x1 + strh r0, [r6, #0x1c] + add r0, r5, #0 + add r0, r0, #0xf + add r0, r4, r0 + ldr r1, ._151 + 8 + bl StringCopy + add r5, r5, #0x4 + add r4, r4, r5 + mov r0, r8 + mov r1, #0x2 + add r2, r4, #0 + bl GetMonData + mov r0, #0x5 + strb r0, [r6, #0x1e] + mov r0, r8 + mov r1, #0x3 + bl GetMonData + strb r0, [r6, #0x1f] + b ._173 +._152: + .align 2, 0 +._151: + .word gPlayerParty + .word gSaveBlock1+0x2738 + .word gSaveBlock2 +._108: + add r4, r4, r6 + lsl r4, r4, #0x2 + ldr r6, ._154 + add r5, r4, r6 + mov r8, r5 + mov r0, #0x1 + strh r0, [r5, #0x2] + add r0, r6, #0 + add r0, r0, #0x16 + add r0, r4, r0 + ldr r1, ._154 + 4 + bl StringCopy + mov r0, #0x64 + mov r5, r9 + mul r5, r5, r0 + ldr r0, ._154 + 8 + add r5, r5, r0 + add r6, r6, #0x8 + add r4, r4, r6 + add r0, r5, #0 + mov r1, #0x2 + add r2, r4, #0 + bl GetMonData + mov r0, #0x5 + mov r1, r8 + strb r0, [r1, #0x1e] + add r0, r5, #0 + mov r1, #0x3 + bl GetMonData + mov r5, r8 + strb r0, [r5, #0x1f] + b ._173 +._155: + .align 2, 0 +._154: + .word gSaveBlock1+0x2738 + .word gSaveBlock2 + .word gPlayerParty +._109: + add r4, r4, r6 + lsl r4, r4, #0x2 + ldr r5, ._157 + add r6, r4, r5 + mov r0, #0x1 + strh r0, [r6, #0xa] + strh r0, [r6, #0x14] + add r0, r5, #2 + add r0, r4, r0 + ldr r1, ._157 + 4 + mov r8, r1 + bl StringCopy + add r5, r5, #0xc + add r4, r4, r5 + add r0, r4, #0 + mov r1, r8 + bl StringCopy + mov r0, #0x5 + strb r0, [r6, #0x1d] + b ._173 +._158: + .align 2, 0 +._157: + .word gSaveBlock1+0x2738 + .word gSaveBlock2 +._143: + add r0, r4, r6 + lsl r0, r0, #0x2 + ldr r1, ._160 + add r0, r0, r1 + mov r1, #0x1 + strh r1, [r0, #0xc] + strh r1, [r0, #0x16] + b ._173 +._161: + .align 2, 0 +._160: + .word gSaveBlock1+0x2738 +._123: + add r4, r4, r6 + lsl r4, r4, #0x2 + ldr r0, ._163 + add r4, r4, r0 + ldr r1, ._163 + 4 + mov r0, sp + mov r2, #0x8 + bl memcpy + add r5, sp, #0x8 + ldr r1, ._163 + 8 + add r0, r5, #0 + mov r2, #0xb + bl memcpy + mov r0, #0xff + strb r0, [r4, #0x12] + add r0, r4, #0 + add r0, r0, #0x13 + mov r1, sp + bl StringCopy + add r0, r4, #4 + add r1, r5, #0 + bl StringCopy + mov r0, #0xc + strb r0, [r4, #0xf] + mov r0, #0x28 + strh r0, [r4, #0x10] + mov r0, #0x5 + strb r0, [r4, #0x2] + strb r0, [r4, #0x3] + b ._173 +._164: + .align 2, 0 +._163: + .word gSaveBlock1+0x2738 + .word gUnknown_Debug_083C4C64 + .word gUnknown_Debug_083C4C6C +._124: + add r0, r4, r6 + lsl r0, r0, #0x2 + ldr r1, ._168 + add r5, r0, r1 + add r4, sp, #0x14 + ldr r1, ._168 + 4 + add r0, r4, #0 + mov r2, #0x8 + bl memcpy + add r1, r4, #0 + mov r3, #0xfe + mov r2, #0x2 + add r0, r5, #0 + add r0, r0, #0x10 +._165: + strh r3, [r0] + sub r0, r0, #0x2 + sub r2, r2, #0x1 + cmp r2, #0 + bge ._165 @cond_branch + mov r0, #0x1 + strb r0, [r5, #0x2] + mov r0, #0x28 + strb r0, [r5, #0x12] + add r0, r5, #0 + add r0, r0, #0x13 + add r3, r5, #6 + mov r6, #0x1e + add r2, r5, #0 + add r2, r2, #0xa +._166: + strh r6, [r2] + sub r2, r2, #0x2 + cmp r2, r3 + bge ._166 @cond_branch + bl StringCopy + mov r0, #0x5 + strb r0, [r5, #0x3] + b ._173 +._169: + .align 2, 0 +._168: + .word gSaveBlock1+0x2738 + .word gUnknown_Debug_083C4C64 +._125: + add r4, r4, r6 + lsl r4, r4, #0x2 + ldr r0, ._171 + add r4, r4, r0 + add r5, sp, #0x1c + ldr r1, ._171 + 4 + add r0, r5, #0 + mov r2, #0x8 + bl memcpy + mov r0, #0x28 + strh r0, [r4, #0xc] + strh r0, [r4, #0xe] + mov r0, #0x3 + strb r0, [r4, #0x12] + mov r0, #0xff + strb r0, [r4, #0x10] + mov r0, #0x1 + strb r0, [r4, #0x11] + add r0, r4, #0 + add r0, r0, #0x13 + add r1, r5, #0 + bl StringCopy + mov r0, #0x5 + strb r0, [r4, #0x2] + b ._173 +._172: + .align 2, 0 +._171: + .word gSaveBlock1+0x2738 + .word gUnknown_Debug_083C4C64 +._126: + add r4, r4, r6 + lsl r4, r4, #0x2 + ldr r0, ._174 + add r4, r4, r0 + add r5, sp, #0x24 + ldr r1, ._174 + 4 + add r0, r5, #0 + mov r2, #0x8 + bl memcpy + mov r0, #0xff + strb r0, [r4, #0x2] + mov r0, #0x0 + strb r0, [r4, #0x3] + mov r0, #0x28 + strh r0, [r4, #0x4] + add r0, r4, #0 + add r0, r0, #0x13 + add r1, r5, #0 + bl StringCopy + mov r0, #0x5 + strb r0, [r4, #0x6] + b ._173 +._175: + .align 2, 0 +._174: + .word gSaveBlock1+0x2738 + .word gUnknown_Debug_083C4C64 +._127: + add r4, r4, r6 + lsl r4, r4, #0x2 + ldr r0, ._176 + add r4, r4, r0 + add r5, sp, #0x2c + ldr r1, ._176 + 4 + add r0, r5, #0 + mov r2, #0x8 + bl memcpy + ldr r0, ._176 + 8 + strh r0, [r4, #0x2] + mov r0, #0x1 + neg r0, r0 + strh r0, [r4, #0x6] + mov r0, #0x28 + strh r0, [r4, #0x4] + strh r0, [r4, #0x8] + mov r0, #0x3 + strb r0, [r4, #0xa] + add r0, r4, #0 + add r0, r0, #0x13 + add r1, r5, #0 + bl StringCopy + mov r0, #0x5 + strb r0, [r4, #0xb] +._173: + add sp, sp, #0x34 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._177: + .align 2, 0 +._176: + .word gSaveBlock1+0x2738 + .word gUnknown_Debug_083C4C64 + .word 0xffff + + thumb_func_end debug_sub_808FA88 + + thumb_func_start debug_sub_808FEBC +debug_sub_808FEBC: + push {lr} + bl ClearTVShowData + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end debug_sub_808FEBC + + thumb_func_start debug_sub_808FECC +debug_sub_808FECC: + push {r4, lr} + ldr r1, ._178 + mov r0, #0x0 + strb r0, [r1] + ldr r0, ._178 + 4 + bl sub_8071F40 + mov r0, #0xd + mov r1, #0x6 + mov r2, #0x17 + mov r3, #0x8 + bl Menu_BlankWindowRect + ldr r0, ._178 + 8 + ldr r0, [r0] + mov r1, #0xe + mov r2, #0x7 + bl Menu_PrintText + mov r0, #0x16 + mov r1, #0x1 + mov r2, #0x18 + mov r3, #0x2 + bl Menu_BlankWindowRect + ldr r4, ._178 + 12 + add r0, r4, #0 + mov r1, #0x0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x17 + mov r2, #0x1 + bl Menu_PrintText + ldr r1, ._178 + 16 + ldr r0, ._178 + 20 + str r0, [r1] + pop {r4} + pop {r0} + bx r0 +._179: + .align 2, 0 +._178: + .word gDebug_03000724 + .word gUnknown_Debug_083C49CA + .word gUnknown_Debug_083C4B20+0x4 + .word gStringVar1 + .word gMenuCallback + .word debug_sub_808FF3C+1 + + thumb_func_end debug_sub_808FECC + + thumb_func_start debug_sub_808FF3C +debug_sub_808FF3C: + push {r4, lr} + mov r2, #0x0 + ldr r0, ._192 + ldrh r1, [r0, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._180 @cond_branch + ldr r1, ._192 + 4 + ldrb r0, [r1] + add r0, r0, #0x1 + strb r0, [r1] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x10 + bne ._181 @cond_branch + strb r2, [r1] +._181: + mov r0, #0x5 + bl PlaySE + mov r2, #0x1 +._180: + ldr r0, ._192 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._182 @cond_branch + ldr r1, ._192 + 4 + ldrb r0, [r1] + cmp r0, #0 + bne ._183 @cond_branch + mov r0, #0x10 + strb r0, [r1] +._183: + ldrb r0, [r1] + sub r0, r0, #0x1 + strb r0, [r1] + mov r0, #0x5 + bl PlaySE + mov r2, #0x1 +._182: + ldr r0, ._192 + ldrh r1, [r0, #0x2e] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._184 @cond_branch + ldr r1, ._192 + 8 + ldrb r0, [r1] + add r0, r0, #0x1 + strb r0, [r1] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x3 + bne ._185 @cond_branch + mov r0, #0x0 + strb r0, [r1] +._185: + mov r0, #0x5 + bl PlaySE + mov r2, #0x1 +._184: + ldr r0, ._192 + ldrh r1, [r0, #0x2e] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._186 @cond_branch + ldr r1, ._192 + 8 + ldrb r0, [r1] + cmp r0, #0 + bne ._187 @cond_branch + mov r0, #0x3 + strb r0, [r1] +._187: + ldrb r0, [r1] + sub r0, r0, #0x1 + strb r0, [r1] + mov r0, #0x5 + bl PlaySE + mov r2, #0x1 +._186: + cmp r2, #0 + beq ._188 @cond_branch + mov r0, #0xd + mov r1, #0x6 + mov r2, #0x17 + mov r3, #0x8 + bl Menu_BlankWindowRect + ldr r1, ._192 + 12 + ldr r0, ._192 + 8 + ldrb r0, [r0] + lsl r0, r0, #0x2 + add r0, r0, r1 + ldr r0, [r0] + mov r1, #0xe + mov r2, #0x7 + bl Menu_PrintText + mov r0, #0x16 + mov r1, #0x1 + mov r2, #0x18 + mov r3, #0x2 + bl Menu_BlankWindowRect + ldr r4, ._192 + 16 + ldr r0, ._192 + 4 + ldrb r1, [r0] + add r0, r4, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x17 + mov r2, #0x1 + bl Menu_PrintText +._188: + ldr r4, ._192 + ldrh r1, [r4, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._189 @cond_branch + mov r0, #0x15 + bl PlaySE + ldr r0, ._192 + 4 + ldrb r0, [r0] + ldr r2, ._192 + 20 + ldr r1, ._192 + 8 + ldrb r1, [r1] + add r1, r1, r2 + ldrb r1, [r1] + bl debug_sub_8090080 +._189: + ldrh r1, [r4, #0x2e] + mov r0, #0xa + and r0, r0, r1 + cmp r0, #0 + bne ._190 @cond_branch + mov r0, #0x0 + b ._191 +._193: + .align 2, 0 +._192: + .word gMain + .word gDebug_03000725 + .word gDebug_03000724 + .word gUnknown_Debug_083C4B20+0x4 + .word gStringVar1 + .word gUnknown_Debug_083C4B20 +._190: + bl sub_80BEC40 + bl CloseMenu + mov r0, #0x1 +._191: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808FF3C + + thumb_func_start debug_sub_8090080 +debug_sub_8090080: + lsl r0, r0, #0x18 + ldr r2, ._194 + lsr r0, r0, #0x16 + add r0, r0, r2 + ldr r3, ._194 + 4 + add r2, r0, r3 + strb r1, [r2] + ldr r1, ._194 + 8 + add r2, r0, r1 + mov r1, #0x1 + strb r1, [r2] + add r3, r3, #0x2 + add r0, r0, r3 + mov r1, #0x4 + strh r1, [r0] + bx lr +._195: + .align 2, 0 +._194: + .word gSaveBlock1 + .word 0x2abc + .word 0x2abd + + thumb_func_end debug_sub_8090080 + + thumb_func_start debug_sub_80900AC +debug_sub_80900AC: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + mov r7, #0x0 + mov r5, #0x0 + ldr r0, ._202 + mov r8, r0 +._198: + lsl r0, r5, #0x3 + add r0, r0, r5 + lsl r0, r0, #0x2 + mov r1, r8 + add r6, r0, r1 + ldr r1, ._202 + 4 + add r0, r6, r1 + ldrb r4, [r0] + cmp r4, #0 + bne ._196 @cond_branch + cmp r7, #0xc + bne ._197 @cond_branch + mov r7, #0x0 +._197: + ldr r0, ._202 + 8 + add r0, r7, r0 + ldrb r1, [r0] + add r0, r5, #0 + bl debug_sub_808FA88 + ldr r1, ._202 + 12 + add r0, r6, r1 + strb r4, [r0] + add r0, r7, #1 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._196: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x17 + bls ._198 @cond_branch + mov r7, #0x0 + mov r5, #0x0 +._201: + ldr r0, ._202 + lsl r1, r5, #0x2 + add r1, r1, r0 + ldr r0, ._202 + 16 + add r1, r1, r0 + ldrb r0, [r1] + cmp r0, #0 + bne ._199 @cond_branch + cmp r7, #0x3 + bne ._200 @cond_branch + mov r7, #0x0 +._200: + ldr r0, ._202 + 20 + add r0, r7, r0 + ldrb r1, [r0] + add r0, r5, #0 + bl debug_sub_8090080 + add r0, r7, #1 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._199: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0xf + bls ._201 @cond_branch + bl CloseMenu + mov r0, #0x1 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._203: + .align 2, 0 +._202: + .word gSaveBlock1 + .word 0x2738 + .word gUnknown_Debug_083C4ABD + .word 0x2739 + .word 0x2abc + .word gUnknown_Debug_083C4B20 + + thumb_func_end debug_sub_80900AC + + thumb_func_start NoharaDebugMenu_Fan +NoharaDebugMenu_Fan: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xb + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._204 + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0xa + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._204 + 4 + ldr r0, ._204 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._205: + .align 2, 0 +._204: + .word gUnknown_Debug_083C4D28 + .word gMenuCallback + .word debug_sub_80901A4+1 + + thumb_func_end NoharaDebugMenu_Fan + + thumb_func_start debug_sub_80901A4 +debug_sub_80901A4: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + beq ._206 @cond_branch + add r0, r0, #0x1 + cmp r1, r0 + beq ._207 @cond_branch + ldr r2, ._209 + ldr r0, ._209 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] +._206: + mov r0, #0x0 + b ._208 +._210: + .align 2, 0 +._209: + .word gMenuCallback + .word gUnknown_Debug_083C4D28 +._207: + bl CloseMenu + mov r0, #0x1 +._208: + pop {r1} + bx r1 + + thumb_func_end debug_sub_80901A4 + + thumb_func_start debug_sub_80901E4 +debug_sub_80901E4: + push {lr} + bl ResetFanClub + bl sub_810FAA0 + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end debug_sub_80901E4 + + thumb_func_start debug_sub_80901F8 +debug_sub_80901F8: + push {lr} + bl sub_810FB9C + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._211 + ldr r1, ._211 + 4 + add r0, r0, r1 + ldrb r0, [r0] + sub r0, r0, #0x8 + lsl r0, r0, #0x2 + add r0, r0, r2 + ldr r0, [r0] + mov r1, #0xe + mov r2, #0x7 + bl Menu_PrintText + ldr r1, ._211 + 8 + ldr r0, ._211 + 12 + str r0, [r1] + mov r0, #0x0 + pop {r1} + bx r1 +._212: + .align 2, 0 +._211: + .word gUnknown_Debug_083C4CA8 + .word gUnknown_083F8408 + .word gMenuCallback + .word debug_sub_8090278+1 + + thumb_func_end debug_sub_80901F8 + + thumb_func_start debug_sub_8090238 +debug_sub_8090238: + push {lr} + bl sub_810FC18 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._213 + ldr r1, ._213 + 4 + add r0, r0, r1 + ldrb r0, [r0] + sub r0, r0, #0x8 + lsl r0, r0, #0x2 + add r0, r0, r2 + ldr r0, [r0] + mov r1, #0xe + mov r2, #0x7 + bl Menu_PrintText + ldr r1, ._213 + 8 + ldr r0, ._213 + 12 + str r0, [r1] + mov r0, #0x0 + pop {r1} + bx r1 +._214: + .align 2, 0 +._213: + .word gUnknown_Debug_083C4CA8 + .word gUnknown_083F8410 + .word gMenuCallback + .word debug_sub_8090278+1 + + thumb_func_end debug_sub_8090238 + + thumb_func_start debug_sub_8090278 +debug_sub_8090278: + push {lr} + ldr r0, ._217 + ldrh r1, [r0, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + bne ._215 @cond_branch + mov r0, #0x0 + b ._216 +._218: + .align 2, 0 +._217: + .word gMain +._215: + bl CloseMenu + mov r0, #0x1 +._216: + pop {r1} + bx r1 + + thumb_func_end debug_sub_8090278 + + thumb_func_start debug_sub_809029C +debug_sub_809029C: + push {r4, lr} + ldr r4, ._219 + ldr r0, ._219 + 4 + ldr r1, ._219 + 8 + add r0, r0, r1 + ldrh r0, [r0] + mov r1, #0x7f + and r1, r1, r0 + add r0, r4, #0 + mov r2, #0x0 + mov r3, #0x2 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x10 + mov r2, #0x7 + bl Menu_PrintText + ldr r1, ._219 + 12 + ldr r0, ._219 + 16 + str r0, [r1] + mov r0, #0x0 + pop {r4} + pop {r1} + bx r1 +._220: + .align 2, 0 +._219: + .word gStringVar1 + .word gSaveBlock1 + .word 0x13c2 + .word gMenuCallback + .word debug_sub_8090278+1 + + thumb_func_end debug_sub_809029C + + thumb_func_start debug_sub_80902E4 +debug_sub_80902E4: + push {lr} + ldr r1, ._221 + ldrh r0, [r1, #0xe] + add r0, r0, #0x6 + strh r0, [r1, #0xe] + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._222: + .align 2, 0 +._221: + .word gSaveBlock2 + + thumb_func_end debug_sub_80902E4 + + thumb_func_start debug_sub_80902FC +debug_sub_80902FC: + push {lr} + mov r0, #0x0 + bl sub_810FB10 + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end debug_sub_80902FC + + thumb_func_start debug_sub_8090310 +debug_sub_8090310: + push {lr} + mov r0, #0x1 + bl sub_810FB10 + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end debug_sub_8090310 + + thumb_func_start debug_sub_8090324 +debug_sub_8090324: + push {lr} + mov r0, #0x2 + bl sub_810FB10 + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end debug_sub_8090324 + + thumb_func_start debug_sub_8090338 +debug_sub_8090338: + push {lr} + mov r0, #0x3 + bl sub_810FB10 + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end debug_sub_8090338 + + thumb_func_start NoharaDebugMenu_BattleVSDad +NoharaDebugMenu_BattleVSDad: + push {lr} + ldr r0, ._223 + mov r1, #0x6 + bl VarSet + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._224: + .align 2, 0 +._223: + .word 0x4085 + + thumb_func_end NoharaDebugMenu_BattleVSDad + + thumb_func_start NoharaDebugMenu_DadAfterBattle +NoharaDebugMenu_DadAfterBattle: + push {lr} + ldr r0, ._225 + mov r1, #0x7 + bl VarSet + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._226: + .align 2, 0 +._225: + .word 0x4085 + + thumb_func_end NoharaDebugMenu_DadAfterBattle + + thumb_func_start NoharaDebugMenu_SootopolisCity +NoharaDebugMenu_SootopolisCity: + push {lr} + mov r0, #0x81 + bl FlagSet + mov r0, #0x71 + bl FlagSet + ldr r0, ._227 + bl FlagClear + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._228: + .align 2, 0 +._227: + .word 0x32f + + thumb_func_end NoharaDebugMenu_SootopolisCity + + thumb_func_start NoharaDebugMenu_Embark +NoharaDebugMenu_Embark: + push {lr} + ldr r0, ._229 + bl FlagClear + ldr r0, ._229 + 4 + mov r1, #0x1 + bl VarSet + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._230: + .align 2, 0 +._229: + .word 0x2e3 + .word 0x4090 + + thumb_func_end NoharaDebugMenu_Embark + + thumb_func_start NoharaDebugMenu_Yes9999 +NoharaDebugMenu_Yes9999: + push {lr} + ldr r0, ._231 + ldr r1, ._231 + 4 + bl VarSet + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._232: + .align 2, 0 +._231: + .word 0x4048 + .word 0x270f + + thumb_func_end NoharaDebugMenu_Yes9999 + + thumb_func_start NoharaDebugMenu_LegendsFlagOn +NoharaDebugMenu_LegendsFlagOn: + push {lr} + mov r0, #0xe4 + bl FlagSet + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end NoharaDebugMenu_LegendsFlagOn + + thumb_func_start NoharaDebugMenu_AddNumWinningStreaks +NoharaDebugMenu_AddNumWinningStreaks: + push {lr} + ldr r0, ._235 + ldr r1, ._235 + 4 + add r2, r0, r1 + ldrh r1, [r2] + cmp r1, #0x31 + bhi ._233 @cond_branch + mov r0, #0x32 + b ._244 +._236: + .align 2, 0 +._235: + .word gSaveBlock2 + .word 0x572 +._233: + cmp r1, #0x63 + bhi ._237 @cond_branch + mov r0, #0x64 + b ._244 +._237: + ldr r0, ._241 + cmp r1, r0 + bhi ._239 @cond_branch + add r0, r0, #0x1 + b ._244 +._242: + .align 2, 0 +._241: + .word 0x3e7 +._239: + ldr r0, ._245 + cmp r1, r0 + bhi ._243 @cond_branch + ldr r0, ._245 + 4 + b ._244 +._246: + .align 2, 0 +._245: + .word 0x1387 + .word 0x2706 +._243: + ldr r0, ._248 + cmp r1, r0 + bhi ._247 @cond_branch + add r0, r0, #0xa +._244: + strh r0, [r2] +._247: + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._249: + .align 2, 0 +._248: + .word 0x2705 + + thumb_func_end NoharaDebugMenu_AddNumWinningStreaks + + .align 2, 0 + +.endif diff --git a/asm/taya_debug_window.s b/asm/taya_debug_window.s new file mode 100644 index 000000000..1c25de5f6 --- /dev/null +++ b/asm/taya_debug_window.s @@ -0,0 +1,2054 @@ +.if DEBUG + + .include "constants/gba_constants.inc" + .include "include/macros.inc" + + .text + + thumb_func_start TayaDebugMenu_Trend +TayaDebugMenu_Trend: + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, r9 + mov r5, r8 + push {r5, r6, r7} + add sp, sp, #0xffffffd8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1e + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r5, ._3 + mov r7, #0x0 + mov r0, #0x1 + add r0, r0, sp + mov sl, r0 + mov r9, sp + mov r0, #0x0 + mov r8, r0 + add r6, sp, #0x20 +._2: + ldrb r1, [r5, #0x1] + mov r0, #0x40 + and r0, r0, r1 + mov r1, #0xa1 + cmp r0, #0 + beq ._1 @cond_branch + mov r1, #0xa2 +._1: + mov r0, r9 + strb r1, [r0] + ldrh r1, [r5, #0x4] + add r0, r6, #0 + bl EasyChat_GetWordText + mov r0, sl + add r1, r6, #0 + mov r2, #0x0 + mov r3, #0x7 + bl StringCopyPadded + add r4, r0, #0 + ldrh r1, [r5, #0x6] + add r0, r6, #0 + bl EasyChat_GetWordText + add r0, r4, #0 + add r1, r6, #0 + mov r2, #0x0 + mov r3, #0x8 + bl StringCopyPadded + add r4, r0, #0 + ldrb r1, [r5] + lsl r1, r1, #0x19 + lsr r1, r1, #0x19 + mov r2, #0x1 + mov r3, #0x3 + bl ConvertIntToDecimalStringN + add r4, r0, #0 + mov r0, r8 + strb r0, [r4] + add r4, r4, #0x1 + ldrh r1, [r5] + lsl r1, r1, #0x12 + lsr r1, r1, #0x19 + add r0, r4, #0 + mov r2, #0x1 + mov r3, #0x3 + bl ConvertIntToDecimalStringN + add r4, r0, #0 + mov r0, r8 + strb r0, [r4] + add r4, r4, #0x1 + ldrh r1, [r5, #0x2] + add r0, r4, #0 + mov r2, #0x1 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + lsl r2, r7, #0x1 + add r2, r2, #0x1 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + mov r0, sp + mov r1, #0x1 + bl Menu_PrintText + add r5, r5, #0x8 + add r0, r7, #1 + lsl r0, r0, #0x10 + lsr r7, r0, #0x10 + cmp r7, #0x4 + bls ._2 @cond_branch + ldr r1, ._3 + 4 + ldr r0, ._3 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x28 + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._4: + .align 2, 0 +._3: + .word gSaveBlock1+0x2dd4 + .word gMenuCallback + .word debug_sub_8090808+1 + + thumb_func_end TayaDebugMenu_Trend + + thumb_func_start debug_sub_8090808 +debug_sub_8090808: + push {lr} + ldr r0, ._7 + ldrh r1, [r0, #0x2e] + mov r0, #0x3 + and r0, r0, r1 + cmp r0, #0 + bne ._5 @cond_branch + mov r0, #0x0 + b ._6 +._8: + .align 2, 0 +._7: + .word gMain +._5: + bl Menu_EraseScreen + bl CloseMenu + mov r0, #0x1 +._6: + pop {r1} + bx r1 + + thumb_func_end debug_sub_8090808 + + thumb_func_start TayaDebugMenu_TrendR +TayaDebugMenu_TrendR: + push {r4, r5, r6, r7, lr} + mov r0, #0x0 + ldr r7, ._11 +._10: + mov r4, #0x0 + lsl r5, r0, #0x3 + add r6, r0, #1 +._9: + bl Random + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0x16 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl sub_80EB72C + lsl r1, r4, #0x1 + add r1, r1, r5 + add r1, r1, r7 + strh r0, [r1] + add r0, r4, #1 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + cmp r4, #0x1 + bls ._9 @cond_branch + lsl r0, r6, #0x10 + lsr r0, r0, #0x10 + cmp r0, #0x4 + bls ._10 @cond_branch + bl Menu_EraseScreen + bl CloseMenu + mov r0, #0x1 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._12: + .align 2, 0 +._11: + .word gSaveBlock1+0x2dd8 + + thumb_func_end TayaDebugMenu_TrendR + + thumb_func_start debug_sub_8090880 +debug_sub_8090880: + push {lr} + bl UpdatePaletteFade + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._13 @cond_branch + mov r0, #0x0 + b ._14 +._13: + bl sub_80E60D8 + mov r0, #0x1 +._14: + pop {r1} + bx r1 + + thumb_func_end debug_sub_8090880 + + thumb_func_start debug_sub_809089C +debug_sub_809089C: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + beq ._15 @cond_branch + add r0, r0, #0x1 + cmp r1, r0 + bne ._16 @cond_branch + bl CloseMenu + mov r0, #0x1 + b ._17 +._16: + ldr r2, ._19 + ldr r0, ._19 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + strh r0, [r2] + ldrh r0, [r2] + sub r0, r0, #0x5 + cmp r0, #0x7 + bhi ._27 @cond_branch + lsl r0, r0, #0x2 + ldr r1, ._19 + 8 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._20: + .align 2, 0 +._19: + .word gSpecialVar_0x8004 + .word gUnknown_Debug_083C4EC0 + .word ._21 +._21: + .word ._29 + .word ._27 + .word ._29 + .word ._29 + .word ._27 + .word ._27 + .word ._29 + .word ._29 +._29: + ldr r0, ._30 + mov r1, #0x0 + strh r1, [r0] + ldr r0, ._30 + 4 + strh r1, [r0] +._27: + mov r0, #0x1 + mov r1, #0x0 + bl FadeScreen + ldr r1, ._30 + 8 + ldr r0, ._30 + 12 + str r0, [r1] +._15: + mov r0, #0x0 +._17: + pop {r1} + bx r1 +._31: + .align 2, 0 +._30: + .word gSpecialVar_0x8005 + .word gSpecialVar_0x8006 + .word gMenuCallback + .word debug_sub_8090880+1 + + thumb_func_end debug_sub_809089C + + thumb_func_start TayaDebugMenu_SimpleText +TayaDebugMenu_SimpleText: + push {lr} + add sp, sp, #0xfffffff8 + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xc + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._32 + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0xb + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._32 + 4 + ldr r0, ._32 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._33: + .align 2, 0 +._32: + .word gUnknown_Debug_083C4EC0 + .word gMenuCallback + .word debug_sub_809089C+1 + + thumb_func_end TayaDebugMenu_SimpleText + + thumb_func_start debug_sub_8090984 +debug_sub_8090984: + push {r4, r5, r6, r7, lr} + bl Menu_ProcessInput + lsl r2, r0, #0x18 + asr r1, r2, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + beq ._34 @cond_branch + add r0, r0, #0x1 + cmp r1, r0 + beq ._46 @cond_branch + cmp r1, #0x4 + bgt ._36 @cond_branch + lsr r0, r2, #0x18 + bl debug_sub_810B32C + b ._46 +._34: + mov r0, #0x0 + b ._38 +._36: + cmp r1, #0x5 + bne ._39 @cond_branch + bl sub_80F7F30 + b ._46 +._39: + cmp r1, #0x6 + bne ._41 @cond_branch + mov r4, #0x0 + ldr r0, ._44 + add r1, r0, #2 + mov ip, r1 + ldr r7, ._44 + 4 + ldr r1, ._44 + 8 + add r6, r0, r1 + add r5, r0, #0 + add r5, r5, #0xe +._42: + lsl r1, r4, #0x1 + mov r0, ip + add r3, r1, r0 + add r0, r1, r7 + ldrh r2, [r0] + strh r2, [r3] + add r0, r1, r5 + strh r2, [r0] + add r1, r6, r1 + strh r2, [r1] + add r0, r4, #1 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + cmp r4, #0x2 + bls ._42 @cond_branch + b ._46 +._45: + .align 2, 0 +._44: + .word gSaveBlock1+0x2d94 + .word gUnknown_Debug_083C4F08 + .word 0xfffffd94 +._41: + cmp r1, #0x7 + bne ._46 @cond_branch + mov r4, #0x0 +._47: + lsl r0, r4, #0x18 + lsr r0, r0, #0x18 + bl sub_80EB890 + add r0, r4, #1 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + cmp r4, #0x20 + bls ._47 @cond_branch +._46: + bl CloseMenu + mov r0, #0x1 +._38: + pop {r4, r5, r6, r7} + pop {r1} + bx r1 + + thumb_func_end debug_sub_8090984 + + thumb_func_start TayaDebugMenu_OldMan +TayaDebugMenu_OldMan: + push {lr} + add sp, sp, #0xfffffff8 + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xa + mov r3, #0x11 + bl Menu_DrawStdWindowFrame + ldr r3, ._48 + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0x8 + bl Menu_PrintItems + bl GetCurrentMauvilleOldMan + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + str r0, [sp] + mov r0, #0x9 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x8 + bl InitMenu + ldr r1, ._48 + 4 + ldr r0, ._48 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._49: + .align 2, 0 +._48: + .word gUnknown_Debug_083C4F54 + .word gMenuCallback + .word debug_sub_8090984+1 + + thumb_func_end TayaDebugMenu_OldMan + + thumb_func_start TayaDebugMenu_LanettesPC +TayaDebugMenu_LanettesPC: + push {lr} + bl Menu_EraseScreen + bl ShowPokemonStorageSystem + mov r0, #0x1 + pop {r1} + bx r1 + + thumb_func_end TayaDebugMenu_LanettesPC + + thumb_func_start TayaDebugMenu_TownFlags +TayaDebugMenu_TownFlags: + push {lr} + ldr r0, ._50 + bl FlagSet + mov r0, #0x81 + lsl r0, r0, #0x4 + bl FlagSet + ldr r0, ._50 + 4 + bl FlagSet + ldr r0, ._50 + 8 + bl FlagSet + ldr r0, ._50 + 12 + bl FlagSet + ldr r0, ._50 + 16 + bl FlagSet + ldr r0, ._50 + 20 + bl FlagSet + ldr r0, ._50 + 24 + bl FlagSet + ldr r0, ._50 + 28 + bl FlagSet + ldr r0, ._50 + 32 + bl FlagSet + ldr r0, ._50 + 36 + bl FlagSet + ldr r0, ._50 + 40 + bl FlagSet + ldr r0, ._50 + 44 + bl FlagSet + ldr r0, ._50 + 48 + bl FlagSet + ldr r0, ._50 + 52 + bl FlagSet + ldr r0, ._50 + 56 + bl FlagSet + ldr r0, ._50 + 60 + bl FlagSet + ldr r0, ._50 + 64 + bl FlagSet + ldr r0, ._50 + 68 + bl FlagSet + ldr r0, ._50 + 72 + bl FlagSet + ldr r0, ._50 + 76 + bl FlagSet + ldr r0, ._50 + 80 + bl FlagSet + ldr r0, ._50 + 84 + bl FlagSet + ldr r0, ._50 + 88 + bl FlagSet + ldr r0, ._50 + 92 + bl FlagSet + ldr r0, ._50 + 96 + bl FlagSet + ldr r0, ._50 + 100 + bl FlagSet + ldr r0, ._50 + 104 + bl FlagSet + ldr r0, ._50 + 108 + bl FlagSet + ldr r0, ._50 + 112 + bl FlagSet + ldr r0, ._50 + 116 + bl FlagSet + ldr r0, ._50 + 120 + bl FlagSet + mov r0, #0x84 + lsl r0, r0, #0x4 + bl FlagSet + ldr r0, ._50 + 124 + bl FlagSet + ldr r0, ._50 + 128 + bl FlagSet + ldr r0, ._50 + 132 + bl FlagSet + ldr r0, ._50 + 136 + bl FlagSet + ldr r0, ._50 + 140 + bl FlagSet + ldr r0, ._50 + 144 + bl FlagSet + ldr r0, ._50 + 148 + bl FlagSet + ldr r0, ._50 + 152 + bl FlagSet + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._51: + .align 2, 0 +._50: + .word 0x80f + .word 0x811 + .word 0x812 + .word 0x813 + .word 0x814 + .word 0x815 + .word 0x816 + .word 0x817 + .word 0x818 + .word 0x819 + .word 0x81a + .word 0x81b + .word 0x81c + .word 0x81d + .word 0x81e + .word 0x848 + .word 0x849 + .word 0x84a + .word 0x854 + .word 0x855 + .word 0x856 + .word 0x857 + .word 0x858 + .word 0x859 + .word 0x85a + .word 0x85b + .word 0x85c + .word 0x83c + .word 0x83d + .word 0x83e + .word 0x83f + .word 0x841 + .word 0x842 + .word 0x843 + .word 0x844 + .word 0x845 + .word 0x846 + .word 0x847 + .word 0x83b + + thumb_func_end TayaDebugMenu_TownFlags + + thumb_func_start TayaDebugMenu_AwardARibbon +TayaDebugMenu_AwardARibbon: + push {lr} + mov r0, #0x1 + neg r0, r0 + mov r1, #0x10 + mov r2, #0x0 + bl BlendPalettes + ldr r0, ._52 + bl SetMainCallback2 + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._53: + .align 2, 0 +._52: + .word debug_sub_80915BC+1 + + thumb_func_end TayaDebugMenu_AwardARibbon + + thumb_func_start debug_sub_8090C44 +debug_sub_8090C44: + push {r4, r5, lr} + ldr r4, ._54 + sub r5, r4, #1 + ldrh r1, [r5, #0x8] + add r0, r4, #0 + mov r2, #0x2 + mov r3, #0x5 + bl ConvertIntToDecimalStringN + add r0, r4, #0 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0x0 + mov r2, #0x5 + bl StringFill + ldrb r0, [r5] + add r0, r0, r4 + mov r1, #0x79 + strb r1, [r0] + add r0, r4, #0 + mov r1, #0x1 + mov r2, #0x3 + bl Menu_PrintText + pop {r4, r5} + pop {r0} + bx r0 +._55: + .align 2, 0 +._54: + .word gSharedMem+1 + + thumb_func_end debug_sub_8090C44 + + thumb_func_start debug_sub_8090C88 +debug_sub_8090C88: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add sp, sp, #0xfffffffc + mov r0, #0x1 + mov r8, r0 + ldr r2, ._59 + ldrh r1, [r2, #0x2e] + mov r0, #0x20 + and r0, r0, r1 + add r3, r2, #0 + cmp r0, #0 + beq ._57 @cond_branch + ldr r1, ._59 + 4 + ldrb r0, [r1] + cmp r0, #0 + beq ._57 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] + b ._62 +._60: + .align 2, 0 +._59: + .word gMain + .word gSharedMem +._67: + add r0, r0, #0x1 + strb r0, [r1] + b ._62 +._77: + strh r1, [r7, #0x8] + b ._62 +._79: + ldr r0, ._64 + ldrh r0, [r0, #0x8] + bl SetLotteryNumber16_Unused +._78: + bl CloseMenu + mov r0, #0x1 + b ._63 +._65: + .align 2, 0 +._64: + .word gSharedMem +._57: + ldrh r1, [r3, #0x2e] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._66 @cond_branch + ldr r1, ._81 + ldrb r0, [r1] + cmp r0, #0x3 + bls ._67 @cond_branch +._66: + ldrh r1, [r3, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._68 @cond_branch + ldr r0, ._81 + ldrh r1, [r0, #0x8] + str r1, [r0, #0xc] + ldr r1, ._81 + 4 + strh r1, [r0, #0x10] + mov r4, #0x0 + ldrb r1, [r0] + add r7, r0, #0 + cmp r4, r1 + bcs ._69 @cond_branch + add r5, r7, #0 + add r6, r1, #0 +._70: + ldrh r0, [r5, #0x10] + mov r1, #0xa + str r3, [sp] + bl __udivsi3 + strh r0, [r5, #0x10] + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + ldr r3, [sp] + cmp r4, r6 + bcc ._70 @cond_branch +._69: + ldrh r1, [r7, #0x10] + ldr r0, [r7, #0xc] + add r0, r0, r1 + str r0, [r7, #0xc] + ldr r1, ._81 + 8 + cmp r0, r1 + ble ._71 @cond_branch + str r1, [r7, #0xc] +._71: + ldrh r0, [r7, #0x8] + ldr r1, [r7, #0xc] + cmp r0, r1 + bne ._77 @cond_branch +._68: + ldrh r1, [r3, #0x30] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._73 @cond_branch + ldr r0, ._81 + ldrh r1, [r0, #0x8] + str r1, [r0, #0xc] + ldr r1, ._81 + 4 + strh r1, [r0, #0x10] + mov r4, #0x0 + ldrb r1, [r0] + add r7, r0, #0 + cmp r4, r1 + bcs ._74 @cond_branch + add r5, r7, #0 + add r6, r1, #0 +._75: + ldrh r0, [r5, #0x10] + mov r1, #0xa + str r3, [sp] + bl __udivsi3 + strh r0, [r5, #0x10] + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + ldr r3, [sp] + cmp r4, r6 + bcc ._75 @cond_branch +._74: + add r2, r7, #0 + ldrh r1, [r2, #0x10] + ldr r0, [r2, #0xc] + sub r0, r0, r1 + str r0, [r2, #0xc] + cmp r0, #0 + bge ._76 @cond_branch + mov r0, #0x0 + str r0, [r2, #0xc] +._76: + ldrh r0, [r2, #0x8] + ldr r1, [r2, #0xc] + cmp r0, r1 + bne ._77 @cond_branch +._73: + ldrh r2, [r3, #0x2e] + mov r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + bne ._78 @cond_branch + mov r0, #0x1 + and r0, r0, r2 + cmp r0, #0 + bne ._79 @cond_branch + mov r0, #0x0 + mov r8, r0 +._62: + mov r0, r8 + cmp r0, #0 + beq ._80 @cond_branch + bl debug_sub_8090C44 +._80: + mov r0, #0x0 +._63: + add sp, sp, #0x4 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._82: + .align 2, 0 +._81: + .word gSharedMem + .word 0x2710 + .word 0xffff + + thumb_func_end debug_sub_8090C88 + + thumb_func_start TayaDebugMenu_PKMNLottery +TayaDebugMenu_PKMNLottery: + push {lr} + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x6 + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + bl RetrieveLotteryNumber + ldr r2, ._83 + ldr r0, ._83 + 4 + ldrh r0, [r0] + mov r1, #0x0 + strh r0, [r2, #0x8] + strb r1, [r2] + bl debug_sub_8090C44 + ldr r1, ._83 + 8 + ldr r0, ._83 + 12 + str r0, [r1] + mov r0, #0x0 + pop {r1} + bx r1 +._84: + .align 2, 0 +._83: + .word gSharedMem + .word gSpecialVar_Result + .word gMenuCallback + .word debug_sub_8090C88+1 + + thumb_func_end TayaDebugMenu_PKMNLottery + + thumb_func_start TayaDebugMenu_Trainer +TayaDebugMenu_Trainer: + push {r4, r5, lr} + mov r4, #0x0 + ldr r5, ._86 +._85: + lsl r0, r4, #0x4 + add r0, r0, r5 + ldrh r0, [r0] + bl SetTrainerFlag + add r0, r4, #1 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + cmp r4, #0x37 + bls ._85 @cond_branch + ldr r0, ._86 + 4 + bl SetTrainerFlag + mov r0, #0x85 + lsl r0, r0, #0x1 + bl SetTrainerFlag + ldr r0, ._86 + 8 + bl SetTrainerFlag + mov r0, #0x86 + lsl r0, r0, #0x1 + bl SetTrainerFlag + ldr r0, ._86 + 12 + bl SetTrainerFlag + mov r0, #0x87 + lsl r0, r0, #0x1 + bl SetTrainerFlag + ldr r0, ._86 + 16 + bl SetTrainerFlag + mov r0, #0x88 + lsl r0, r0, #0x1 + bl SetTrainerFlag + ldr r0, ._86 + 20 + bl SetTrainerFlag + mov r0, #0x83 + lsl r0, r0, #0x1 + bl SetTrainerFlag + ldr r0, ._86 + 24 + bl SetTrainerFlag + mov r0, #0x84 + lsl r0, r0, #0x1 + bl SetTrainerFlag + ldr r0, ._86 + 28 + bl SetTrainerFlag + bl CloseMenu + mov r0, #0x1 + pop {r4, r5} + pop {r1} + bx r1 +._87: + .align 2, 0 +._86: + .word gTrainerEyeTrainers + .word 0x109 + .word 0x10b + .word 0x10d + .word 0x10f + .word 0x105 + .word 0x107 + .word 0x14f + + thumb_func_end TayaDebugMenu_Trainer + + thumb_func_start TayaDebugMenu_PokenavD +TayaDebugMenu_PokenavD: + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, r9 + mov r5, r8 + push {r5, r6, r7} + add sp, sp, #0xffffffe4 + bl Menu_DisplayDialogueFrame + mov r0, #0x0 + mov sl, r0 + mov r6, #0x1 + mov r7, #0xff + mov r1, #0x3 + mov r9, r1 +._93: + ldr r4, ._94 + add r0, r4, #0 + ldr r1, ._94 + 4 + bl StringCopy + mov r5, sl + add r5, r5, #0x1 + add r1, r5, r4 + mov r0, #0xff + strb r0, [r1] + add r0, r4, #0 + mov r1, #0x2 + mov r2, #0xf + bl Menu_PrintText + mov r0, #0x0 + mov r8, r0 + str r5, [sp, #0x14] + mov r1, sl + lsl r1, r1, #0x2 + str r1, [sp, #0x18] +._91: + bl Random + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + add r0, r0, #0x1 + str r0, [sp, #0x10] + bl Random + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0x64 + bl __umodsi3 + add r0, r0, #0x1 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + bl Random + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0xc1 + lsl r1, r1, #0x1 + bl __umodsi3 + add r0, r0, #0x1 + lsl r0, r0, #0x10 + lsr r3, r0, #0x10 + cmp r3, #0xfb + bls ._89 @cond_branch + add r0, r3, #0 + add r0, r0, #0x19 + lsl r0, r0, #0x10 + lsr r3, r0, #0x10 + ldr r0, ._94 + 8 + cmp r3, r0 + bls ._89 @cond_branch + mov r3, #0x1 +._89: + ldr r0, [sp, #0x18] + add r0, r0, sl + lsl r4, r0, #0x4 + sub r4, r4, r0 + lsl r4, r4, #0x5 + mov r1, r8 + lsl r0, r1, #0x2 + add r0, r0, r8 + lsl r0, r0, #0x4 + ldr r1, ._94 + 12 + add r0, r0, r1 + add r4, r4, r0 + lsl r2, r5, #0x18 + lsr r2, r2, #0x18 + mov r0, #0x0 + str r0, [sp] + str r0, [sp, #0x4] + str r6, [sp, #0x8] + ldr r0, [sp, #0x10] + str r0, [sp, #0xc] + add r0, r4, #0 + add r1, r3, #0 + mov r3, #0x20 + bl CreateBoxMon + bl Random + add r1, r7, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x16 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r7, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x17 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r7, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x18 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r7, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x21 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r7, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x2f + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r7, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x30 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + add r1, r1, #0x1 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x32 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + add r1, r1, #0x1 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x33 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + add r1, r1, #0x1 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x34 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + add r1, r1, #0x1 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x36 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + mov r1, r9 + and r1, r1, r0 + add r1, r1, #0x1 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x35 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x43 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x44 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x45 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x46 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x47 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x48 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x49 + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x4a + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x4b + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x4c + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x4d + add r2, sp, #0x10 + bl SetBoxMonData + bl Random + add r1, r6, #0 + and r1, r1, r0 + str r1, [sp, #0x10] + add r0, r4, #0 + mov r1, #0x4e + add r2, sp, #0x10 + bl SetBoxMonData + mov r0, r8 + add r0, r0, #0x1 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r8, r0 + cmp r0, #0x1d + bhi ._90 @cond_branch + b ._91 +._90: + ldr r1, [sp, #0x14] + lsl r0, r1, #0x10 + lsr r0, r0, #0x10 + mov sl, r0 + cmp r0, #0xd + bhi ._92 @cond_branch + b ._93 +._92: + bl TayaDebugMenu_TownFlags + bl TayaDebugMenu_Trainer + bl CloseMenu + mov r0, #0x1 + add sp, sp, #0x1c + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._95: + .align 2, 0 +._94: + .word gSharedMem + .word gUnknown_Debug_083C4F94 + .word 0x19b + .word gPokemonStorage+0x4 + + thumb_func_end TayaDebugMenu_PokenavD + + thumb_func_start TayaDebugMenu_8091190 +TayaDebugMenu_8091190: + push {r4, r5, lr} + add sp, sp, #0xfffffff8 + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r3, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r3, r0 + beq ._96 @cond_branch + add r0, r0, #0x1 + cmp r3, r0 + beq ._97 @cond_branch + ldr r2, ._99 + ldr r1, ._99 + 4 + ldr r0, ._99 + 8 + ldrb r0, [r0] + lsl r0, r0, #0x18 + asr r0, r0, #0x18 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, [r0] + lsl r0, r3, #0x3 + add r0, r0, r1 + ldr r0, [r0, #0x4] + str r0, [r2] +._106: + mov r0, #0x0 + b ._98 +._100: + .align 2, 0 +._99: + .word gMenuCallback + .word gUnknown_Debug_83C5068 + .word unk_2030224 +._96: + ldr r3, ._107 + ldrb r4, [r3] + ldr r2, ._107 + 4 + ldrh r1, [r2, #0x2e] + mov r0, #0x20 + and r0, r0, r1 + add r5, r3, #0 + cmp r0, #0 + beq ._102 @cond_branch + sub r0, r4, #1 + strb r0, [r5] + lsl r0, r0, #0x18 + cmp r0, #0 + bge ._102 @cond_branch + mov r0, #0x1 + strb r0, [r5] +._102: + ldrh r1, [r2, #0x2e] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._104 @cond_branch + ldrb r0, [r5] + add r0, r0, #0x1 + strb r0, [r5] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x1 + bls ._104 @cond_branch + mov r0, #0x0 + strb r0, [r5] +._104: + lsl r0, r4, #0x18 + asr r0, r0, #0x18 + mov r1, #0x0 + ldrsb r1, [r5, r1] + cmp r0, r1 + beq ._106 @cond_branch + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xb + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r4, ._107 + 8 + mov r0, #0x0 + ldrsb r0, [r5, r0] + lsl r0, r0, #0x3 + add r0, r0, r4 + ldrb r2, [r0, #0x4] + ldr r3, [r0] + mov r0, #0x1 + mov r1, #0x1 + bl Menu_PrintItems + mov r0, #0x0 + ldrsb r0, [r5, r0] + lsl r0, r0, #0x3 + add r0, r0, r4 + ldrb r3, [r0, #0x4] + mov r0, #0x0 + str r0, [sp] + mov r0, #0xa + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + bl InitMenu + b ._106 +._108: + .align 2, 0 +._107: + .word unk_2030224 + .word gMain + .word gUnknown_Debug_83C5068 +._97: + bl CloseMenu + mov r0, #0x1 +._98: + add sp, sp, #0x8 + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end TayaDebugMenu_8091190 + + thumb_func_start InitTayaDebugWindow +InitTayaDebugWindow: + push {lr} + add sp, sp, #0xfffffff8 + ldr r1, ._109 + mov r0, #0x0 + strb r0, [r1] + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xb + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r0, ._109 + 4 + ldr r3, [r0] + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0xa + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._109 + 8 + ldr r0, ._109 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._110: + .align 2, 0 +._109: + .word unk_2030224 + .word gUnknown_Debug_83C5068 + .word gMenuCallback + .word TayaDebugMenu_8091190+1 + + thumb_func_end InitTayaDebugWindow + + thumb_func_start debug_sub_80912D8 +debug_sub_80912D8: + push {lr} + ldr r0, ._113 + ldrb r1, [r0, #0x7] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._111 @cond_branch + mov r0, #0x0 + b ._112 +._114: + .align 2, 0 +._113: + .word gPaletteFade +._111: + ldr r0, ._115 + bl SetMainCallback2 + mov r0, #0x1 +._112: + pop {r1} + bx r1 +._116: + .align 2, 0 +._115: + .word debug_sub_8110F28+1 + + thumb_func_end debug_sub_80912D8 + + thumb_func_start debug_sub_8091300 +debug_sub_8091300: + push {lr} + mov r0, #0x1 + mov r1, #0x0 + bl FadeScreen + ldr r1, ._117 + ldr r0, ._117 + 4 + str r0, [r1] + mov r0, #0x0 + pop {r1} + bx r1 +._118: + .align 2, 0 +._117: + .word gMenuCallback + .word debug_sub_80912D8+1 + + thumb_func_end debug_sub_8091300 + + thumb_func_start debug_sub_8091320 +debug_sub_8091320: + push {lr} + bl LoadOam + bl ProcessSpriteCopyRequests + bl TransferPlttBuffer + pop {r0} + bx r0 + + thumb_func_end debug_sub_8091320 + + thumb_func_start debug_sub_8091334 +debug_sub_8091334: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + bl AnimateSprites + bl BuildOamBuffer + ldr r3, ._123 + add r0, r3, #0 + add r0, r0, #0x52 + ldrb r4, [r0] + cmp r4, #0 + beq ._119 @cond_branch + cmp r4, #0x1 + bne ._120 @cond_branch + b ._121 +._120: + b ._162 +._124: + .align 2, 0 +._123: + .word gSharedMem +._119: + add r5, r3, #0 + add r5, r5, #0x55 + strb r4, [r5] + ldr r2, ._131 + ldrh r1, [r2, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + mov r9, r2 + cmp r0, #0 + beq ._126 @cond_branch + add r1, r3, #0 + add r1, r1, #0x54 + ldrb r0, [r1] + cmp r0, #0 + beq ._126 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] + mov r0, #0x1 + strb r0, [r5] +._126: + mov r0, r9 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + ldr r5, ._131 + 4 + cmp r0, #0 + beq ._133 @cond_branch + add r0, r5, #0 + add r0, r0, #0x53 + ldrb r0, [r0] + cmp r0, #0x2 + beq ._128 @cond_branch + add r1, r5, #0 + add r1, r1, #0x54 + ldrb r0, [r1] + cmp r0, #0x4 + bhi ._133 @cond_branch + b ._130 +._132: + .align 2, 0 +._131: + .word gMain + .word gSharedMem +._128: + add r1, r5, #0 + add r1, r1, #0x54 + ldrb r0, [r1] + cmp r0, #0x3 + bhi ._133 @cond_branch +._130: + add r0, r0, #0x1 + strb r0, [r1] + add r1, r1, #0x1 + mov r0, #0x1 + strb r0, [r1] +._133: + mov r2, r9 + ldrh r1, [r2, #0x2e] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._135 @cond_branch + add r1, r5, #0 + add r1, r1, #0x53 + ldrb r0, [r1] + cmp r0, #0 + beq ._135 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] + add r1, r1, #0x2 + mov r0, #0x1 + strb r0, [r1] +._135: + mov r3, r9 + ldrh r1, [r3, #0x2e] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._140 @cond_branch + add r0, r5, #0 + add r0, r0, #0x54 + ldrb r0, [r0] + cmp r0, #0x5 + beq ._137 @cond_branch + add r1, r5, #0 + add r1, r1, #0x53 + ldrb r0, [r1] + cmp r0, #0x1 + bhi ._140 @cond_branch + b ._139 +._137: + add r1, r5, #0 + add r1, r1, #0x53 + ldrb r0, [r1] + cmp r0, #0 + bne ._140 @cond_branch +._139: + add r0, r0, #0x1 + strb r0, [r1] + add r1, r1, #0x2 + mov r0, #0x1 + strb r0, [r1] +._140: + add r0, r5, #0 + add r0, r0, #0x55 + ldrb r0, [r0] + cmp r0, #0 + bne ._141 @cond_branch + mov r0, r9 + ldrh r2, [r0, #0x2e] + mov r0, #0x1 + and r0, r0, r2 + cmp r0, #0 + beq ._142 @cond_branch + ldr r2, ._145 + add r3, r5, #0 + add r3, r3, #0x53 + add r0, r5, #0 + add r0, r0, #0x54 + ldrb r1, [r0] + lsl r0, r1, #0x1 + add r0, r0, r1 + ldrb r3, [r3] + add r0, r0, r3 + lsl r0, r0, #0x3 + add r0, r0, r2 + ldrh r0, [r0, #0x4] + sub r0, r0, #0x32 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + cmp r0, #0x4 + bhi ._143 @cond_branch + add r1, r5, #0 + add r1, r1, #0x56 + mov r0, #0x4 + b ._144 +._146: + .align 2, 0 +._145: + .word gUnknown_Debug_083C50EC +._143: + add r1, r5, #0 + add r1, r1, #0x56 + mov r0, #0x1 +._144: + strb r0, [r1] + add r1, r5, #0 + add r1, r1, #0x52 + mov r0, #0x1 + strb r0, [r1] + b ._162 +._142: + mov r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + bne ._148 @cond_branch + b ._162 +._148: + mov r0, #0x1 + neg r0, r0 + mov r1, #0x10 + mov r2, #0x0 + bl BlendPalettes + ldr r0, ._151 + bl SetMainCallback2 + b ._162 +._152: + .align 2, 0 +._151: + .word sub_80546F0+1 +._121: + add r5, r3, #0 + add r5, r5, #0x55 + mov r0, #0x0 + strb r0, [r5] + ldr r2, ._159 + ldrh r1, [r2, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + mov r9, r2 + cmp r0, #0 + beq ._154 @cond_branch + add r2, r3, #0 + add r2, r2, #0x53 + add r0, r3, #0 + add r0, r0, #0x54 + ldrb r1, [r0] + lsl r0, r1, #0x1 + add r0, r0, r1 + ldrb r2, [r2] + add r0, r0, r2 + add r2, r0, r3 + add r0, r3, #0 + add r0, r0, #0x56 + ldrb r1, [r2] + ldrb r0, [r0] + cmp r1, r0 + bcs ._154 @cond_branch + add r0, r1, #1 + strb r0, [r2] + strb r4, [r5] +._154: + mov r2, r9 + ldrh r1, [r2, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + ldr r5, ._159 + 4 + cmp r0, #0 + beq ._156 @cond_branch + add r2, r5, #0 + add r2, r2, #0x53 + add r0, r5, #0 + add r0, r0, #0x54 + ldrb r1, [r0] + lsl r0, r1, #0x1 + add r0, r0, r1 + ldrb r2, [r2] + add r0, r0, r2 + add r1, r0, r5 + ldrb r0, [r1] + cmp r0, #0 + beq ._156 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] + add r1, r5, #0 + add r1, r1, #0x55 + mov r0, #0x1 + strb r0, [r1] +._156: + add r6, r5, #0 + add r0, r6, #0 + add r0, r0, #0x55 + ldrb r7, [r0] + cmp r7, #0 + beq ._157 @cond_branch +._141: + bl debug_sub_80916AC + b ._162 +._160: + .align 2, 0 +._159: + .word gMain + .word gSharedMem +._157: + mov r3, r9 + ldrh r1, [r3, #0x2e] + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._161 @cond_branch + ldr r0, ._164 + ldr r1, ._164 + 4 + mov ip, r1 + mov r2, #0x53 + add r2, r2, r6 + mov r8, r2 + add r4, r6, #0 + add r4, r4, #0x54 + ldrb r2, [r4] + lsl r1, r2, #0x1 + add r1, r1, r2 + mov r3, r8 + ldrb r3, [r3] + add r1, r1, r3 + lsl r1, r1, #0x3 + add r1, r1, ip + ldrh r1, [r1, #0x4] + bl GetMonData + ldrb r2, [r4] + lsl r1, r2, #0x1 + add r1, r1, r2 + mov r2, r8 + ldrb r2, [r2] + add r1, r1, r2 + add r1, r1, r6 + strb r0, [r1] + bl debug_sub_80916AC + add r0, r6, #0 + add r0, r0, #0x52 + strb r7, [r0] +._161: + mov r3, r9 + ldrh r1, [r3, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._162 @cond_branch + ldr r2, ._164 + 4 + add r0, r6, #0 + add r0, r0, #0x53 + ldrb r4, [r0] + add r0, r0, #0x1 + ldrb r1, [r0] + lsl r0, r1, #0x1 + add r3, r0, r1 + add r0, r3, r4 + lsl r0, r0, #0x3 + add r1, r0, r2 + ldrh r0, [r1, #0x4] + cmp r0, #0 + beq ._163 @cond_branch + ldr r0, ._164 + ldrh r1, [r1, #0x4] + add r2, r4, r6 + add r2, r3, r2 + bl SetMonData +._163: + add r0, r5, #0 + add r0, r0, #0x52 + strb r7, [r0] +._162: + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._165: + .align 2, 0 +._164: + .word gPlayerParty + .word gUnknown_Debug_083C50EC + + thumb_func_end debug_sub_8091334 + + thumb_func_start debug_sub_80915BC +debug_sub_80915BC: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + ldr r0, ._168 + mov r1, #0x0 + strh r1, [r0] + add r0, r0, #0x2 + strh r1, [r0] + mov r1, #0x0 + ldr r0, ._168 + 4 + mov r8, r0 + ldr r7, ._168 + 8 +._171: + mov r4, #0x0 + lsl r0, r1, #0x1 + add r6, r1, #1 + add r5, r0, r1 +._170: + add r0, r5, r4 + lsl r0, r0, #0x3 + add r0, r0, r8 + ldrh r1, [r0, #0x4] + cmp r1, #0 + beq ._166 @cond_branch + ldr r0, ._168 + 12 + bl GetMonData + add r1, r4, r5 + add r1, r1, r7 + strb r0, [r1] + b ._167 +._169: + .align 2, 0 +._168: + .word 0x4000010 + .word gUnknown_Debug_083C50EC + .word gSharedMem + .word gPlayerParty +._166: + add r0, r4, r5 + add r0, r0, r7 + strb r1, [r0] +._167: + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x2 + bls ._170 @cond_branch + lsl r0, r6, #0x18 + lsr r1, r0, #0x18 + cmp r1, #0x5 + bls ._171 @cond_branch + ldr r4, ._172 + add r0, r4, #0 + bl Text_LoadWindowTemplate + add r0, r4, #0 + bl InitMenuWindow + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x3 + bl Menu_DrawStdWindowFrame + ldr r0, ._172 + 4 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + mov r0, #0x0 + mov r1, #0x4 + mov r2, #0x1d + mov r3, #0x11 + bl Menu_DrawStdWindowFrame + mov r0, #0x0 + mov r1, #0x12 + mov r2, #0x1d + mov r3, #0x15 + bl Menu_DrawStdWindowFrame + mov r1, #0x80 + lsl r1, r1, #0x13 + mov r2, #0x8a + lsl r2, r2, #0x5 + add r0, r2, #0 + strh r0, [r1] + ldr r2, ._172 + 8 + add r0, r2, #0 + add r0, r0, #0x53 + mov r1, #0x0 + strb r1, [r0] + add r0, r0, #0x1 + strb r1, [r0] + sub r0, r0, #0x2 + strb r1, [r0] + bl debug_sub_80916AC + ldr r0, ._172 + 12 + bl SetVBlankCallback + ldr r0, ._172 + 16 + bl SetMainCallback2 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._173: + .align 2, 0 +._172: + .word gWindowTemplate_81E7224 + .word gUnknown_Debug_083C517C + .word gSharedMem + .word debug_sub_8091320+1 + .word debug_sub_8091334+1 + + thumb_func_end debug_sub_80915BC + + thumb_func_start debug_sub_80916AC +debug_sub_80916AC: + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, r9 + mov r5, r8 + push {r5, r6, r7} + add sp, sp, #0xfffffffc + mov r6, #0x0 + ldr r0, ._177 + mov sl, r0 + mov r1, #0x0 + mov r8, r1 +._182: + ldr r2, ._177 + 4 + mov r5, #0x0 + lsl r0, r6, #0x1 + mov r9, r0 + add r1, r6, #1 + str r1, [sp] +._181: + mov r0, sl + add r0, r0, #0x53 + ldrb r0, [r0] + cmp r0, r5 + bne ._175 @cond_branch + ldr r1, ._177 + 8 + ldrb r0, [r1] + cmp r0, r6 + bne ._175 @cond_branch + mov r0, #0xef + b ._176 +._178: + .align 2, 0 +._177: + .word gSharedMem + .word gSharedMem+0x12 + .word gSharedMem+0x54 +._175: + mov r0, r8 + strb r0, [r2] + add r2, r2, #0x1 +._176: + strb r0, [r2] + add r2, r2, #0x1 + mov r1, r9 + add r4, r1, r6 + add r0, r4, r5 + lsl r0, r0, #0x3 + ldr r1, ._183 + add r0, r0, r1 + ldr r1, [r0] + add r0, r2, #0 + bl StringCopy + add r2, r0, #0 + mov r0, r8 + strb r0, [r2] + add r2, r2, #0x1 + ldr r7, ._183 + 4 + add r4, r5, r4 + add r4, r4, r7 + ldrb r1, [r4] + add r0, r2, #0 + mov r2, #0x0 + mov r3, #0x1 + bl ConvertIntToDecimalStringN + add r2, r0, #0 + mov r1, r8 + strb r1, [r2] + add r2, r2, #0x1 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x2 + bhi ._179 @cond_branch + cmp r6, #0x5 + bne ._181 @cond_branch + cmp r5, #0x2 + bne ._181 @cond_branch +._179: + sub r1, r2, #1 + mov r0, #0xff + strb r0, [r1] + mov r2, r9 + add r2, r2, #0x5 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + add r0, r7, #0 + add r0, r0, #0x12 + mov r1, #0x1 + bl Menu_PrintText + ldr r1, [sp] + lsl r0, r1, #0x18 + lsr r6, r0, #0x18 + cmp r6, #0x5 + bls ._182 @cond_branch + add sp, sp, #0x4 + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._184: + .align 2, 0 +._183: + .word gUnknown_Debug_083C50EC + .word gSharedMem + + thumb_func_end debug_sub_80916AC + + .align 2, 0 + +.endif diff --git a/asm/tomomichi_debug_menu.s b/asm/tomomichi_debug_menu.s new file mode 100644 index 000000000..e6e0db8d6 --- /dev/null +++ b/asm/tomomichi_debug_menu.s @@ -0,0 +1,8100 @@ +.if DEBUG + + .include "constants/gba_constants.inc" + .include "include/macros.inc" + + thumb_func_start InitTomomichiDebugWindow +InitTomomichiDebugWindow: + push {lr} + bl debug_sub_808B874 + mov r0, #0x0 + pop {r1} + bx r1 + + thumb_func_end InitTomomichiDebugWindow + + thumb_func_start debug_sub_808B868 +debug_sub_808B868: + push {lr} + bl c2_exit_to_overworld_1_continue_scripts_restart_music + pop {r0} + bx r0 + + thumb_func_end debug_sub_808B868 + + thumb_func_start debug_sub_808B874 +debug_sub_808B874: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xd + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._1 + mov r0, #0x1 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + ldr r0, ._1 + 4 + ldrb r0, [r0] + str r0, [sp] + mov r0, #0xc + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._1 + 8 + ldr r0, ._1 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._2: + .align 2, 0 +._1: + .word gUnknown_Debug_083C0CBA + .word gDebug_0300071D + .word gMenuCallback + .word debug_sub_808B8C8+1 + + thumb_func_end debug_sub_808B874 + + thumb_func_start debug_sub_808B8C8 +debug_sub_808B8C8: + push {r4, lr} + ldr r4, ._7 + ldrh r1, [r4, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._3 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + bl Menu_MoveCursor + ldr r1, ._7 + 4 + strb r0, [r1] +._3: + ldrh r1, [r4, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._4 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + bl Menu_MoveCursor + ldr r1, ._7 + 4 + strb r0, [r1] +._4: + ldrh r1, [r4, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._5 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r1, ._7 + 8 + ldr r0, ._7 + 4 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r1, r1, #0x4 + add r0, r0, r1 + ldr r0, [r0] + bl _call_via_r0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + b ._10 +._8: + .align 2, 0 +._7: + .word gMain + .word gDebug_0300071D + .word gUnknown_Debug_083C0CBA +._5: + mov r0, #0xa + and r0, r0, r1 + cmp r0, #0 + bne ._9 @cond_branch + mov r0, #0x0 + b ._10 +._9: + bl CloseMenu + mov r0, #0x1 +._10: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808B8C8 + + thumb_func_start TomomichiDebugMenu_ContestGraphics +TomomichiDebugMenu_ContestGraphics: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x14 + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r0, ._11 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r3, ._11 + 4 + mov r0, #0x2 + mov r1, #0x3 + mov r2, #0x4 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x13 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x4 + bl InitMenu + ldr r1, ._11 + 8 + ldr r0, ._11 + 12 + str r0, [r1] + ldr r0, ._11 + 16 + mov r2, #0x1 + strh r2, [r0] + ldr r1, ._11 + 20 + ldr r0, ._11 + 24 + str r0, [r1] + ldr r0, ._11 + 28 + str r4, [r0] + ldr r0, ._11 + 32 + strb r2, [r0] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._12: + .align 2, 0 +._11: + .word gUnknown_Debug_083C0CF4 + .word gUnknown_Debug_083C0D2C + .word gMenuCallback + .word debug_sub_808BC48+1 + .word gDebug_03000700 + .word gDebug_03000704 + .word 0x6f33 + .word gDebug_03000708 + .word gDebug_0300070C + + thumb_func_end TomomichiDebugMenu_ContestGraphics + + thumb_func_start TomomichiDebugMenu_ArtMusGraphics +TomomichiDebugMenu_ArtMusGraphics: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x14 + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r0, ._13 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r3, ._13 + 4 + mov r0, #0x2 + mov r1, #0x3 + mov r2, #0x4 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x13 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x4 + bl InitMenu + ldr r1, ._13 + 8 + ldr r0, ._13 + 12 + str r0, [r1] + ldr r0, ._13 + 16 + mov r2, #0x1 + strh r2, [r0] + ldr r1, ._13 + 20 + ldr r0, ._13 + 24 + str r0, [r1] + ldr r0, ._13 + 28 + str r4, [r0] + ldr r0, ._13 + 32 + strb r2, [r0] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._14: + .align 2, 0 +._13: + .word gUnknown_Debug_083C0D4C + .word gUnknown_Debug_083C0D83 + .word gMenuCallback + .word debug_sub_808BCBC+1 + .word gDebug_03000700 + .word gDebug_03000704 + .word 0x6f33 + .word gDebug_03000708 + .word gDebug_0300070D + + thumb_func_end TomomichiDebugMenu_ArtMusGraphics + + thumb_func_start TomomichiDebugMenu_PreviewData +TomomichiDebugMenu_PreviewData: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x14 + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r0, ._15 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r3, ._15 + 4 + mov r0, #0x2 + mov r1, #0x3 + mov r2, #0x4 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x13 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x4 + bl InitMenu + ldr r1, ._15 + 8 + ldr r0, ._15 + 12 + str r0, [r1] + ldr r0, ._15 + 16 + mov r2, #0x1 + strh r2, [r0] + ldr r1, ._15 + 20 + ldr r0, ._15 + 24 + str r0, [r1] + ldr r0, ._15 + 28 + str r4, [r0] + ldr r0, ._15 + 32 + strb r2, [r0] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._16: + .align 2, 0 +._15: + .word gUnknown_Debug_083C0DA4 + .word gUnknown_Debug_083C0DD4 + .word gMenuCallback + .word debug_sub_808BD30+1 + .word gDebug_03000700 + .word gDebug_03000704 + .word 0x6f33 + .word gDebug_03000708 + .word gDebug_0300070E + + thumb_func_end TomomichiDebugMenu_PreviewData + + thumb_func_start TomomichiDebugMenu_TrickHouse +TomomichiDebugMenu_TrickHouse: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0x7 + bl Menu_DrawStdWindowFrame + ldr r0, ._17 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r3, ._17 + 4 + mov r0, #0x2 + mov r1, #0x3 + mov r2, #0x2 + bl Menu_PrintItems + ldr r0, ._17 + 8 + ldrb r0, [r0] + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x2 + bl InitMenu + ldr r1, ._17 + 12 + ldr r0, ._17 + 16 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._18: + .align 2, 0 +._17: + .word gUnknown_Debug_083C0DF4 + .word gUnknown_Debug_083C0E15 + .word gDebug_0300071E + .word gMenuCallback + .word debug_sub_808BDA4+1 + + thumb_func_end TomomichiDebugMenu_TrickHouse + + thumb_func_start TomomichiDebugMenu_ControlEvents +TomomichiDebugMenu_ControlEvents: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + ldr r3, ._19 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x2 + bl Menu_PrintItems + ldr r0, ._19 + 4 + ldrb r0, [r0] + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x2 + bl InitMenu + ldr r1, ._19 + 8 + ldr r0, ._19 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._20: + .align 2, 0 +._19: + .word gUnknown_Debug_083C0E32 + .word gDebug_0300071F + .word gMenuCallback + .word debug_sub_808BE2C+1 + + thumb_func_end TomomichiDebugMenu_ControlEvents + + thumb_func_start TomomichiDebugMenu_ControlFlags +TomomichiDebugMenu_ControlFlags: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._21 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + ldr r0, ._21 + 4 + ldrb r0, [r0] + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._21 + 8 + ldr r0, ._21 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._22: + .align 2, 0 +._21: + .word gUnknown_Debug_083C0E7F + .word gDebug_03000720 + .word gMenuCallback + .word debug_sub_808BEB4+1 + + thumb_func_end TomomichiDebugMenu_ControlFlags + + thumb_func_start TomomichiDebugMenu_ControlWorks +TomomichiDebugMenu_ControlWorks: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r3, ._23 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x6 + bl Menu_PrintItems + ldr r0, ._23 + 4 + ldrb r0, [r0] + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x6 + bl InitMenu + ldr r1, ._23 + 8 + ldr r0, ._23 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._24: + .align 2, 0 +._23: + .word gUnknown_Debug_083C0EF1 + .word gDebug_03000721 + .word gMenuCallback + .word debug_sub_808BF3C+1 + + thumb_func_end TomomichiDebugMenu_ControlWorks + + thumb_func_start debug_sub_808BC48 +debug_sub_808BC48: + push {r4, lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + asr r0, r0, #0x18 + cmp r0, #0x1 + beq ._25 @cond_branch + cmp r0, #0x1 + bgt ._26 @cond_branch + cmp r0, #0 + beq ._27 @cond_branch + b ._32 +._26: + cmp r0, #0x2 + beq ._29 @cond_branch + b ._32 +._27: + bl debug_sub_808ED0C + b ._32 +._25: + bl debug_sub_808ED9C + b ._32 +._29: + bl debug_sub_808EE3C +._32: + mov r0, #0x0 + bl debug_sub_808EF8C + lsl r0, r4, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + beq ._36 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + bne ._34 @cond_branch + bl CloseMenu + mov r0, #0x1 + b ._35 +._34: + cmp r1, #0x3 + bne ._36 @cond_branch + ldr r0, ._37 + ldr r1, ._37 + 4 + ldr r1, [r1, #0x1c] + str r1, [r0] +._36: + mov r0, #0x0 +._35: + pop {r4} + pop {r1} + bx r1 +._38: + .align 2, 0 +._37: + .word gMenuCallback + .word gUnknown_Debug_083C0D2C + + thumb_func_end debug_sub_808BC48 + + thumb_func_start debug_sub_808BCBC +debug_sub_808BCBC: + push {r4, lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + asr r0, r0, #0x18 + cmp r0, #0x1 + beq ._39 @cond_branch + cmp r0, #0x1 + bgt ._40 @cond_branch + cmp r0, #0 + beq ._41 @cond_branch + b ._46 +._40: + cmp r0, #0x2 + beq ._43 @cond_branch + b ._46 +._41: + bl debug_sub_808ED0C + b ._46 +._39: + bl debug_sub_808ED9C + b ._46 +._43: + bl debug_sub_808EE9C +._46: + mov r0, #0x1 + bl debug_sub_808EF8C + lsl r0, r4, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + beq ._50 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + bne ._48 @cond_branch + bl CloseMenu + mov r0, #0x1 + b ._49 +._48: + cmp r1, #0x3 + bne ._50 @cond_branch + ldr r0, ._51 + ldr r1, ._51 + 4 + ldr r1, [r1, #0x1c] + str r1, [r0] +._50: + mov r0, #0x0 +._49: + pop {r4} + pop {r1} + bx r1 +._52: + .align 2, 0 +._51: + .word gMenuCallback + .word gUnknown_Debug_083C0D83 + + thumb_func_end debug_sub_808BCBC + + thumb_func_start debug_sub_808BD30 +debug_sub_808BD30: + push {r4, lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + asr r0, r0, #0x18 + cmp r0, #0x1 + beq ._53 @cond_branch + cmp r0, #0x1 + bgt ._54 @cond_branch + cmp r0, #0 + beq ._55 @cond_branch + b ._60 +._54: + cmp r0, #0x2 + beq ._57 @cond_branch + b ._60 +._55: + bl debug_sub_808ED0C + b ._60 +._53: + bl debug_sub_808ED9C + b ._60 +._57: + bl debug_sub_808EF14 +._60: + mov r0, #0x2 + bl debug_sub_808EF8C + lsl r0, r4, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + beq ._64 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + bne ._62 @cond_branch + bl CloseMenu + mov r0, #0x1 + b ._63 +._62: + cmp r1, #0x3 + bne ._64 @cond_branch + ldr r0, ._65 + ldr r1, ._65 + 4 + ldr r1, [r1, #0x1c] + str r1, [r0] +._64: + mov r0, #0x0 +._63: + pop {r4} + pop {r1} + bx r1 +._66: + .align 2, 0 +._65: + .word gMenuCallback + .word gUnknown_Debug_083C0DD4 + + thumb_func_end debug_sub_808BD30 + + thumb_func_start debug_sub_808BDA4 +debug_sub_808BDA4: + push {r4, lr} + ldr r4, ._71 + ldrh r1, [r4, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._67 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + bl Menu_MoveCursor + ldr r1, ._71 + 4 + strb r0, [r1] +._67: + ldrh r1, [r4, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._68 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + bl Menu_MoveCursor + ldr r1, ._71 + 4 + strb r0, [r1] +._68: + ldrh r1, [r4, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._69 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r1, ._71 + 8 + ldr r0, ._71 + 4 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r1, r1, #0x4 + add r0, r0, r1 + ldr r0, [r0] + bl _call_via_r0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + b ._74 +._72: + .align 2, 0 +._71: + .word gMain + .word gDebug_0300071E + .word gUnknown_Debug_083C0E15 +._69: + mov r0, #0xa + and r0, r0, r1 + cmp r0, #0 + bne ._73 @cond_branch + mov r0, #0x0 + b ._74 +._73: + bl CloseMenu + mov r0, #0x1 +._74: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808BDA4 + + thumb_func_start debug_sub_808BE2C +debug_sub_808BE2C: + push {r4, lr} + ldr r4, ._79 + ldrh r1, [r4, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._75 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + bl Menu_MoveCursor + ldr r1, ._79 + 4 + strb r0, [r1] +._75: + ldrh r1, [r4, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._76 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + bl Menu_MoveCursor + ldr r1, ._79 + 4 + strb r0, [r1] +._76: + ldrh r1, [r4, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._77 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r1, ._79 + 8 + ldr r0, ._79 + 4 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r1, r1, #0x4 + add r0, r0, r1 + ldr r0, [r0] + bl _call_via_r0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + b ._82 +._80: + .align 2, 0 +._79: + .word gMain + .word gDebug_0300071F + .word gUnknown_Debug_083C0E32 +._77: + mov r0, #0xa + and r0, r0, r1 + cmp r0, #0 + bne ._81 @cond_branch + mov r0, #0x0 + b ._82 +._81: + bl CloseMenu + mov r0, #0x1 +._82: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808BE2C + + thumb_func_start debug_sub_808BEB4 +debug_sub_808BEB4: + push {r4, lr} + ldr r4, ._87 + ldrh r1, [r4, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._83 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + bl Menu_MoveCursor + ldr r1, ._87 + 4 + strb r0, [r1] +._83: + ldrh r1, [r4, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._84 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + bl Menu_MoveCursor + ldr r1, ._87 + 4 + strb r0, [r1] +._84: + ldrh r1, [r4, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._85 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r1, ._87 + 8 + ldr r0, ._87 + 4 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r1, r1, #0x4 + add r0, r0, r1 + ldr r0, [r0] + bl _call_via_r0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + b ._90 +._88: + .align 2, 0 +._87: + .word gMain + .word gDebug_03000720 + .word gUnknown_Debug_083C0E7F +._85: + mov r0, #0xa + and r0, r0, r1 + cmp r0, #0 + bne ._89 @cond_branch + mov r0, #0x0 + b ._90 +._89: + bl CloseMenu + mov r0, #0x1 +._90: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808BEB4 + + thumb_func_start debug_sub_808BF3C +debug_sub_808BF3C: + push {r4, lr} + ldr r4, ._95 + ldrh r1, [r4, #0x2e] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._91 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + bl Menu_MoveCursor + ldr r1, ._95 + 4 + strb r0, [r1] +._91: + ldrh r1, [r4, #0x2e] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._92 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + bl Menu_MoveCursor + ldr r1, ._95 + 4 + strb r0, [r1] +._92: + ldrh r1, [r4, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._93 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r1, ._95 + 8 + ldr r0, ._95 + 4 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r1, r1, #0x4 + add r0, r0, r1 + ldr r0, [r0] + bl _call_via_r0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + b ._98 +._96: + .align 2, 0 +._95: + .word gMain + .word gDebug_03000721 + .word gUnknown_Debug_083C0EF1 +._93: + mov r0, #0xa + and r0, r0, r1 + cmp r0, #0 + bne ._97 @cond_branch + mov r0, #0x0 + b ._98 +._97: + bl CloseMenu + mov r0, #0x1 +._98: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808BF3C + + thumb_func_start debug_sub_808BFC4 +debug_sub_808BFC4: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._99 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._99 + 4 + ldr r0, ._99 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._100: + .align 2, 0 +._99: + .word gUnknown_Debug_083C0F79 + .word gMenuCallback + .word debug_sub_808C064+1 + + thumb_func_end debug_sub_808BFC4 + + thumb_func_start debug_sub_808C014 +debug_sub_808C014: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r3, ._101 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x6 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x6 + bl InitMenu + ldr r1, ._101 + 4 + ldr r0, ._101 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._102: + .align 2, 0 +._101: + .word gUnknown_Debug_083C0FFC + .word gMenuCallback + .word debug_sub_808C0A8+1 + + thumb_func_end debug_sub_808C014 + + thumb_func_start debug_sub_808C064 +debug_sub_808C064: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._103 @cond_branch + mov r0, #0x0 + b ._106 +._103: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._105 @cond_branch + ldr r2, ._107 + ldr r0, ._107 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._106 +._108: + .align 2, 0 +._107: + .word gMenuCallback + .word gUnknown_Debug_083C0F79 +._105: + bl CloseMenu + mov r0, #0x1 +._106: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808C064 + + thumb_func_start debug_sub_808C0A8 +debug_sub_808C0A8: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._109 @cond_branch + mov r0, #0x0 + b ._112 +._109: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._111 @cond_branch + ldr r2, ._113 + ldr r0, ._113 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._112 +._114: + .align 2, 0 +._113: + .word gMenuCallback + .word gUnknown_Debug_083C0FFC +._111: + bl CloseMenu + mov r0, #0x1 +._112: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808C0A8 + + thumb_func_start debug_sub_808C0EC +debug_sub_808C0EC: + push {lr} + ldr r0, ._115 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._116: + .align 2, 0 +._115: + .word DebugScript_081C1CFE + + thumb_func_end debug_sub_808C0EC + + thumb_func_start debug_sub_808C104 +debug_sub_808C104: + push {lr} + ldr r0, ._117 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._118: + .align 2, 0 +._117: + .word DebugScript_081C1D07 + + thumb_func_end debug_sub_808C104 + + thumb_func_start debug_sub_808C11C +debug_sub_808C11C: + push {lr} + ldr r0, ._119 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._120: + .align 2, 0 +._119: + .word DebugScript_081C1D1E + + thumb_func_end debug_sub_808C11C + + thumb_func_start debug_sub_808C134 +debug_sub_808C134: + push {lr} + ldr r0, ._121 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._122: + .align 2, 0 +._121: + .word DebugScript_081C1D24 + + thumb_func_end debug_sub_808C134 + + thumb_func_start debug_sub_808C14C +debug_sub_808C14C: + push {lr} + ldr r0, ._123 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._124: + .align 2, 0 +._123: + .word DebugScript_081C1D2A + + thumb_func_end debug_sub_808C14C + + thumb_func_start debug_sub_808C164 +debug_sub_808C164: + push {lr} + ldr r0, ._125 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._126: + .align 2, 0 +._125: + .word DebugScript_081C1D35 + + thumb_func_end debug_sub_808C164 + + thumb_func_start debug_sub_808C17C +debug_sub_808C17C: + push {lr} + ldr r0, ._127 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._128: + .align 2, 0 +._127: + .word DebugScript_081C1D46 + + thumb_func_end debug_sub_808C17C + + thumb_func_start debug_sub_808C194 +debug_sub_808C194: + push {lr} + ldr r0, ._129 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._130: + .align 2, 0 +._129: + .word DebugScript_081C221F + + thumb_func_end debug_sub_808C194 + + thumb_func_start debug_sub_808C1AC +debug_sub_808C1AC: + push {lr} + ldr r0, ._131 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._132: + .align 2, 0 +._131: + .word DebugScript_081C23E2 + + thumb_func_end debug_sub_808C1AC + + thumb_func_start debug_sub_808C1C4 +debug_sub_808C1C4: + push {lr} + ldr r0, ._133 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._134: + .align 2, 0 +._133: + .word DebugScript_081C23E6 + + thumb_func_end debug_sub_808C1C4 + + thumb_func_start debug_sub_808C1DC +debug_sub_808C1DC: + push {lr} + ldr r0, ._135 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._136: + .align 2, 0 +._135: + .word DebugScript_081C23F6 + + thumb_func_end debug_sub_808C1DC + + thumb_func_start debug_sub_808C1F4 +debug_sub_808C1F4: + push {lr} + ldr r0, ._137 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._138: + .align 2, 0 +._137: + .word DebugScript_081C2482 + + thumb_func_end debug_sub_808C1F4 + + thumb_func_start debug_sub_808C20C +debug_sub_808C20C: + push {lr} + ldr r0, ._139 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._140: + .align 2, 0 +._139: + .word DebugScript_081C23FD + + thumb_func_end debug_sub_808C20C + + thumb_func_start debug_sub_808C224 +debug_sub_808C224: + push {lr} + ldr r0, ._141 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._142: + .align 2, 0 +._141: + .word DebugScript_081C2518 + + thumb_func_end debug_sub_808C224 + + thumb_func_start debug_sub_808C23C +debug_sub_808C23C: + push {lr} + ldr r0, ._143 + bl ScriptContext1_SetupScript + bl CloseMenu + mov r0, #0x1 + pop {r1} + bx r1 +._144: + .align 2, 0 +._143: + .word DebugScript_081C2507 + + thumb_func_end debug_sub_808C23C + + thumb_func_start TomomichiDebugMenu_ContestGraphics_Show +TomomichiDebugMenu_ContestGraphics_Show: + push {lr} + add sp, sp, #0xfffffffc + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r1, ._145 + ldr r0, ._145 + 4 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x4 + pop {r1} + bx r1 +._146: + .align 2, 0 +._145: + .word gMenuCallback + .word debug_sub_808C280+1 + + thumb_func_end TomomichiDebugMenu_ContestGraphics_Show + + thumb_func_start debug_sub_808C280 +debug_sub_808C280: + push {lr} + bl UpdatePaletteFade + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._147 @cond_branch + mov r0, #0x0 + b ._148 +._147: + bl CloseMenu + mov r0, #0x0 + bl debug_sub_808F168 + ldr r0, ._149 + bl SetMainCallback2 + ldr r1, ._149 + 4 + ldr r0, ._149 + 8 + str r0, [r1, #0x8] + mov r0, #0x1 +._148: + pop {r1} + bx r1 +._150: + .align 2, 0 +._149: + .word CB2_ContestPainting+1 + .word gMain + .word debug_sub_808B868+1 + + thumb_func_end debug_sub_808C280 + + thumb_func_start TomomichiDebugMenu_MuseumGraphics_Show +TomomichiDebugMenu_MuseumGraphics_Show: + push {lr} + add sp, sp, #0xfffffffc + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r1, ._151 + ldr r0, ._151 + 4 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x4 + pop {r1} + bx r1 +._152: + .align 2, 0 +._151: + .word gMenuCallback + .word debug_sub_808C2E4+1 + + thumb_func_end TomomichiDebugMenu_MuseumGraphics_Show + + thumb_func_start debug_sub_808C2E4 +debug_sub_808C2E4: + push {lr} + bl UpdatePaletteFade + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._153 @cond_branch + mov r0, #0x0 + b ._154 +._153: + bl CloseMenu + mov r0, #0x1 + bl debug_sub_808F168 + ldr r0, ._155 + bl SetMainCallback2 + ldr r1, ._155 + 4 + ldr r0, ._155 + 8 + str r0, [r1, #0x8] + mov r0, #0x1 +._154: + pop {r1} + bx r1 +._156: + .align 2, 0 +._155: + .word CB2_ContestPainting+1 + .word gMain + .word debug_sub_808B868+1 + + thumb_func_end debug_sub_808C2E4 + + thumb_func_start debug_sub_808C31C +debug_sub_808C31C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._157 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._157 + 4 + ldr r0, ._157 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._158: + .align 2, 0 +._157: + .word gUnknown_Debug_083C2828 + .word gMenuCallback + .word debug_sub_808C36C+1 + + thumb_func_end debug_sub_808C31C + + thumb_func_start debug_sub_808C36C +debug_sub_808C36C: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._159 @cond_branch + mov r0, #0x0 + b ._162 +._159: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._161 @cond_branch + ldr r2, ._163 + ldr r0, ._163 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._162 +._164: + .align 2, 0 +._163: + .word gMenuCallback + .word gUnknown_Debug_083C2828 +._161: + bl CloseMenu + mov r0, #0x1 +._162: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808C36C + + thumb_func_start debug_sub_808C3B0 +debug_sub_808C3B0: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._165 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r0, ._165 + 4 + strb r4, [r0] + ldr r1, ._165 + 8 + ldr r0, ._165 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._166: + .align 2, 0 +._165: + .word gUnknown_Debug_083C2938 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C3B0 + + thumb_func_start debug_sub_808C408 +debug_sub_808C408: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._167 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._167 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._167 + 8 + ldr r0, ._167 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._168: + .align 2, 0 +._167: + .word gUnknown_Debug_083C2A48 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C408 + + thumb_func_start debug_sub_808C460 +debug_sub_808C460: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._169 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._169 + 4 + mov r0, #0x2 + strb r0, [r1] + ldr r1, ._169 + 8 + ldr r0, ._169 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._170: + .align 2, 0 +._169: + .word gUnknown_Debug_083C2B4C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C460 + + thumb_func_start debug_sub_808C4B8 +debug_sub_808C4B8: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._171 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._171 + 4 + mov r0, #0x3 + strb r0, [r1] + ldr r1, ._171 + 8 + ldr r0, ._171 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._172: + .align 2, 0 +._171: + .word gUnknown_Debug_083C2C80 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C4B8 + + thumb_func_start debug_sub_808C510 +debug_sub_808C510: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._173 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._173 + 4 + mov r0, #0x4 + strb r0, [r1] + ldr r1, ._173 + 8 + ldr r0, ._173 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._174: + .align 2, 0 +._173: + .word gUnknown_Debug_083C2D8C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C510 + + thumb_func_start debug_sub_808C568 +debug_sub_808C568: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._175 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._175 + 4 + mov r0, #0x5 + strb r0, [r1] + ldr r1, ._175 + 8 + ldr r0, ._175 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._176: + .align 2, 0 +._175: + .word gUnknown_Debug_083C2EB0 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C568 + + thumb_func_start debug_sub_808C5C0 +debug_sub_808C5C0: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._177 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._177 + 4 + mov r0, #0x6 + strb r0, [r1] + ldr r1, ._177 + 8 + ldr r0, ._177 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._178: + .align 2, 0 +._177: + .word gUnknown_Debug_083C2FE0 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C5C0 + + thumb_func_start debug_sub_808C618 +debug_sub_808C618: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._179 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._179 + 4 + mov r0, #0x7 + strb r0, [r1] + ldr r1, ._179 + 8 + ldr r0, ._179 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._180: + .align 2, 0 +._179: + .word gUnknown_Debug_083C3100 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C618 + + thumb_func_start debug_sub_808C670 +debug_sub_808C670: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x7 + bl Menu_DrawStdWindowFrame + ldr r3, ._181 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x3 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x3 + bl InitMenu + ldr r1, ._181 + 4 + mov r0, #0x8 + strb r0, [r1] + ldr r1, ._181 + 8 + ldr r0, ._181 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._182: + .align 2, 0 +._181: + .word gUnknown_Debug_083C3194 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808C6C8+1 + + thumb_func_end debug_sub_808C670 + + thumb_func_start debug_sub_808C6C8 +debug_sub_808C6C8: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._186 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808C714 + ldrb r0, [r5] + bl debug_sub_808C764 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._183 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._184 @cond_branch +._183: + mov r0, #0x0 + b ._185 +._187: + .align 2, 0 +._186: + .word gDebug_0300070F +._184: + bl CloseMenu + mov r0, #0x1 +._185: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808C6C8 + + thumb_func_start debug_sub_808C714 +debug_sub_808C714: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._191 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._190 @cond_branch + ldr r0, ._191 + 4 + lsl r1, r2, #0x3 + add r1, r1, r2 + add r1, r1, r3 + lsl r1, r1, #0x1 + add r1, r1, r0 + ldrh r4, [r1] + add r0, r4, #0 + bl FlagGet + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._189 @cond_branch + add r0, r4, #0 + bl FlagSet + b ._190 +._192: + .align 2, 0 +._191: + .word gMain + .word gUnknown_Debug_83C31E6 +._189: + add r0, r4, #0 + bl FlagClear +._190: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808C714 + + thumb_func_start debug_sub_808C764 +debug_sub_808C764: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._195 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._193 @cond_branch + ldr r0, ._195 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._194: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl FlagGet + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + neg r2, r0 + orr r2, r2, r0 + lsr r2, r2, #0x1f + mov r0, #0x1c + add r1, r4, #0 + bl debug_sub_808F2E0 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._194 @cond_branch +._193: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._196: + .align 2, 0 +._195: + .word gUnknown_Debug_083C31DC + .word gUnknown_Debug_83C31E6 + + thumb_func_end debug_sub_808C764 + + thumb_func_start debug_sub_808C7C8 +debug_sub_808C7C8: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._197 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._197 + 4 + ldr r0, ._197 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._198: + .align 2, 0 +._197: + .word gUnknown_Debug_083C1CE8 + .word gMenuCallback + .word debug_sub_808C818+1 + + thumb_func_end debug_sub_808C7C8 + + thumb_func_start debug_sub_808C818 +debug_sub_808C818: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._199 @cond_branch + mov r0, #0x0 + b ._202 +._199: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._201 @cond_branch + ldr r2, ._203 + ldr r0, ._203 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._202 +._204: + .align 2, 0 +._203: + .word gMenuCallback + .word gUnknown_Debug_083C1CE8 +._201: + bl CloseMenu + mov r0, #0x1 +._202: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808C818 + + thumb_func_start debug_sub_808C85C +debug_sub_808C85C: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._205 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r0, ._205 + 4 + strb r4, [r0] + ldr r1, ._205 + 8 + ldr r0, ._205 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._206: + .align 2, 0 +._205: + .word gUnknown_Debug_083C1E0C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808C85C + + thumb_func_start debug_sub_808C8B4 +debug_sub_808C8B4: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._207 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._207 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._207 + 8 + ldr r0, ._207 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._208: + .align 2, 0 +._207: + .word gUnknown_Debug_083C1F38 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808C8B4 + + thumb_func_start debug_sub_808C90C +debug_sub_808C90C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._209 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._209 + 4 + mov r0, #0x2 + strb r0, [r1] + ldr r1, ._209 + 8 + ldr r0, ._209 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._210: + .align 2, 0 +._209: + .word gUnknown_Debug_083C206C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808C90C + + thumb_func_start debug_sub_808C964 +debug_sub_808C964: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._211 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._211 + 4 + mov r0, #0x3 + strb r0, [r1] + ldr r1, ._211 + 8 + ldr r0, ._211 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._212: + .align 2, 0 +._211: + .word gUnknown_Debug_083C2190 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808C964 + + thumb_func_start debug_sub_808C9BC +debug_sub_808C9BC: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r3, ._213 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x6 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x6 + bl InitMenu + ldr r1, ._213 + 4 + mov r0, #0x4 + strb r0, [r1] + ldr r1, ._213 + 8 + ldr r0, ._213 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._214: + .align 2, 0 +._213: + .word gUnknown_Debug_083C2264 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808C9BC + + thumb_func_start debug_sub_808CA14 +debug_sub_808CA14: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._215 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._215 + 4 + mov r0, #0x5 + strb r0, [r1] + ldr r1, ._215 + 8 + ldr r0, ._215 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._216: + .align 2, 0 +._215: + .word gUnknown_Debug_083C2370 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808CA14 + + thumb_func_start debug_sub_808CA6C +debug_sub_808CA6C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._217 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._217 + 4 + mov r0, #0x6 + strb r0, [r1] + ldr r1, ._217 + 8 + ldr r0, ._217 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._218: + .align 2, 0 +._217: + .word gUnknown_Debug_083C248C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808CA6C + + thumb_func_start debug_sub_808CAC4 +debug_sub_808CAC4: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._219 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._219 + 4 + mov r0, #0x7 + strb r0, [r1] + ldr r1, ._219 + 8 + ldr r0, ._219 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._220: + .align 2, 0 +._219: + .word gUnknown_Debug_083C259C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808CAC4 + + thumb_func_start debug_sub_808CB1C +debug_sub_808CB1C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._221 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._221 + 4 + mov r0, #0x8 + strb r0, [r1] + ldr r1, ._221 + 8 + ldr r0, ._221 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._222: + .align 2, 0 +._221: + .word gUnknown_Debug_083C26C8 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CB74+1 + + thumb_func_end debug_sub_808CB1C + + thumb_func_start debug_sub_808CB74 +debug_sub_808CB74: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._226 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808CBC0 + ldrb r0, [r5] + bl debug_sub_808CC10 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._223 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._224 @cond_branch +._223: + mov r0, #0x0 + b ._225 +._227: + .align 2, 0 +._226: + .word gDebug_0300070F +._224: + bl CloseMenu + mov r0, #0x1 +._225: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808CB74 + + thumb_func_start debug_sub_808CBC0 +debug_sub_808CBC0: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._231 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._230 @cond_branch + ldr r0, ._231 + 4 + lsl r1, r2, #0x3 + add r1, r1, r2 + add r1, r1, r3 + lsl r1, r1, #0x1 + add r1, r1, r0 + ldrh r4, [r1] + add r0, r4, #0 + bl FlagGet + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._229 @cond_branch + add r0, r4, #0 + bl FlagSet + b ._230 +._232: + .align 2, 0 +._231: + .word gMain + .word gUnknown_Debug_083C271A +._229: + add r0, r4, #0 + bl FlagClear +._230: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808CBC0 + + thumb_func_start debug_sub_808CC10 +debug_sub_808CC10: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._235 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._233 @cond_branch + ldr r0, ._235 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._234: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl FlagGet + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + neg r2, r0 + orr r2, r2, r0 + lsr r2, r2, #0x1f + mov r0, #0x1c + add r1, r4, #0 + bl debug_sub_808F2E0 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._234 @cond_branch +._233: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._236: + .align 2, 0 +._235: + .word gUnknown_Debug_083C2710 + .word gUnknown_Debug_083C271A + + thumb_func_end debug_sub_808CC10 + + thumb_func_start debug_sub_808CC74 +debug_sub_808CC74: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0x7 + bl Menu_DrawStdWindowFrame + ldr r3, ._237 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x3 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x3 + bl InitMenu + ldr r1, ._237 + 4 + ldr r0, ._237 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._238: + .align 2, 0 +._237: + .word gUnknown_Debug_083C1ADC + .word gMenuCallback + .word debug_sub_808CCC4+1 + + thumb_func_end debug_sub_808CC74 + + thumb_func_start debug_sub_808CCC4 +debug_sub_808CCC4: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._239 @cond_branch + mov r0, #0x0 + b ._242 +._239: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._241 @cond_branch + ldr r2, ._243 + ldr r0, ._243 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._242 +._244: + .align 2, 0 +._243: + .word gMenuCallback + .word gUnknown_Debug_083C1ADC +._241: + bl CloseMenu + mov r0, #0x1 +._242: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808CCC4 + + thumb_func_start debug_sub_808CD08 +debug_sub_808CD08: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x11 + bl Menu_DrawStdWindowFrame + ldr r3, ._245 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x8 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x8 + bl InitMenu + ldr r0, ._245 + 4 + strb r4, [r0] + ldr r1, ._245 + 8 + ldr r0, ._245 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._246: + .align 2, 0 +._245: + .word gUnknown_Debug_083C1B7C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CE10+1 + + thumb_func_end debug_sub_808CD08 + + thumb_func_start debug_sub_808CD60 +debug_sub_808CD60: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x9 + bl Menu_DrawStdWindowFrame + ldr r3, ._247 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x4 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x4 + bl InitMenu + ldr r1, ._247 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._247 + 8 + ldr r0, ._247 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._248: + .align 2, 0 +._247: + .word gUnknown_Debug_083C1BF0 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CE10+1 + + thumb_func_end debug_sub_808CD60 + + thumb_func_start debug_sub_808CDB8 +debug_sub_808CDB8: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x3 + bl Menu_DrawStdWindowFrame + ldr r3, ._249 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x1 + bl InitMenu + ldr r1, ._249 + 4 + mov r0, #0x2 + strb r0, [r1] + ldr r1, ._249 + 8 + ldr r0, ._249 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._250: + .align 2, 0 +._249: + .word gUnknown_Debug_083C1C2C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808CE10+1 + + thumb_func_end debug_sub_808CDB8 + + thumb_func_start debug_sub_808CE10 +debug_sub_808CE10: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._254 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808CE5C + ldrb r0, [r5] + bl debug_sub_808CEAC + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._251 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._252 @cond_branch +._251: + mov r0, #0x0 + b ._253 +._255: + .align 2, 0 +._254: + .word gDebug_0300070F +._252: + bl CloseMenu + mov r0, #0x1 +._253: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808CE10 + + thumb_func_start debug_sub_808CE5C +debug_sub_808CE5C: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._259 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._258 @cond_branch + ldr r0, ._259 + 4 + lsl r1, r2, #0x3 + add r1, r1, r2 + add r1, r1, r3 + lsl r1, r1, #0x1 + add r1, r1, r0 + ldrh r4, [r1] + add r0, r4, #0 + bl FlagGet + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._257 @cond_branch + add r0, r4, #0 + bl FlagSet + b ._258 +._260: + .align 2, 0 +._259: + .word gMain + .word gUnknown_Debug_083C1C38 +._257: + add r0, r4, #0 + bl FlagClear +._258: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808CE5C + + thumb_func_start debug_sub_808CEAC +debug_sub_808CEAC: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._263 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._261 @cond_branch + ldr r0, ._263 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._262: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl FlagGet + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + neg r2, r0 + orr r2, r2, r0 + lsr r2, r2, #0x1f + mov r0, #0x1c + add r1, r4, #0 + bl debug_sub_808F2E0 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._262 @cond_branch +._261: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._264: + .align 2, 0 +._263: + .word gUnknown_Debug_083C1C34 + .word gUnknown_Debug_083C1C38 + + thumb_func_end debug_sub_808CEAC + + thumb_func_start debug_sub_808CF10 +debug_sub_808CF10: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._265 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._265 + 4 + ldr r0, ._265 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._266: + .align 2, 0 +._265: + .word gUnknown_Debug_083C1330 + .word gMenuCallback + .word debug_sub_808CF60+1 + + thumb_func_end debug_sub_808CF10 + + thumb_func_start debug_sub_808CF60 +debug_sub_808CF60: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._267 @cond_branch + mov r0, #0x0 + b ._270 +._267: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._269 @cond_branch + ldr r2, ._271 + ldr r0, ._271 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._270 +._272: + .align 2, 0 +._271: + .word gMenuCallback + .word gUnknown_Debug_083C1330 +._269: + bl CloseMenu + mov r0, #0x1 +._270: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808CF60 + + thumb_func_start debug_sub_808CFA4 +debug_sub_808CFA4: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x11 + bl Menu_DrawStdWindowFrame + ldr r3, ._273 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x8 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x8 + bl InitMenu + ldr r0, ._273 + 4 + strb r4, [r0] + ldr r1, ._273 + 8 + ldr r0, ._273 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._274: + .align 2, 0 +._273: + .word gUnknown_Debug_083C13D8 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808CFA4 + + thumb_func_start debug_sub_808CFFC +debug_sub_808CFFC: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._275 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._275 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._275 + 8 + ldr r0, ._275 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._276: + .align 2, 0 +._275: + .word gUnknown_Debug_083C1465 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808CFFC + + thumb_func_start debug_sub_808D054 +debug_sub_808D054: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._277 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._277 + 4 + mov r0, #0x2 + strb r0, [r1] + ldr r1, ._277 + 8 + ldr r0, ._277 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._278: + .align 2, 0 +._277: + .word gUnknown_Debug_083C1503 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808D054 + + thumb_func_start debug_sub_808D0AC +debug_sub_808D0AC: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x9 + bl Menu_DrawStdWindowFrame + ldr r3, ._279 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x4 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x4 + bl InitMenu + ldr r1, ._279 + 4 + mov r0, #0x3 + strb r0, [r1] + ldr r1, ._279 + 8 + ldr r0, ._279 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._280: + .align 2, 0 +._279: + .word gUnknown_Debug_083C158A + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808D0AC + + thumb_func_start debug_sub_808D104 +debug_sub_808D104: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._281 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._281 + 4 + mov r0, #0x4 + strb r0, [r1] + ldr r1, ._281 + 8 + ldr r0, ._281 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._282: + .align 2, 0 +._281: + .word gUnknown_Debug_083C1647 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808D104 + + thumb_func_start debug_sub_808D15C +debug_sub_808D15C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._283 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._283 + 4 + mov r0, #0x5 + strb r0, [r1] + ldr r1, ._283 + 8 + ldr r0, ._283 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._284: + .align 2, 0 +._283: + .word gUnknown_Debug_083C1712 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808D15C + + thumb_func_start debug_sub_808D1B4 +debug_sub_808D1B4: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._285 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._285 + 4 + mov r0, #0x6 + strb r0, [r1] + ldr r1, ._285 + 8 + ldr r0, ._285 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._286: + .align 2, 0 +._285: + .word gUnknown_Debug_083C17F8 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808D1B4 + + thumb_func_start debug_sub_808D20C +debug_sub_808D20C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._287 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._287 + 4 + mov r0, #0x7 + strb r0, [r1] + ldr r1, ._287 + 8 + ldr r0, ._287 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._288: + .align 2, 0 +._287: + .word gUnknown_Debug_083C18B8 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808D20C + + thumb_func_start debug_sub_808D264 +debug_sub_808D264: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r3, ._289 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x5 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x5 + bl InitMenu + ldr r1, ._289 + 4 + mov r0, #0x8 + strb r0, [r1] + ldr r1, ._289 + 8 + ldr r0, ._289 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._290: + .align 2, 0 +._289: + .word gDebug_0x83C1974 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D2BC+1 + + thumb_func_end debug_sub_808D264 + + thumb_func_start debug_sub_808D2BC +debug_sub_808D2BC: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._294 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808D308 + ldrb r0, [r5] + bl debug_sub_808D358 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._291 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._292 @cond_branch +._291: + mov r0, #0x0 + b ._293 +._295: + .align 2, 0 +._294: + .word gDebug_0300070F +._292: + bl CloseMenu + mov r0, #0x1 +._293: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808D2BC + + thumb_func_start debug_sub_808D308 +debug_sub_808D308: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._299 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._298 @cond_branch + ldr r0, ._299 + 4 + lsl r1, r2, #0x3 + add r1, r1, r2 + add r1, r1, r3 + lsl r1, r1, #0x1 + add r1, r1, r0 + ldrh r4, [r1] + add r0, r4, #0 + bl FlagGet + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._297 @cond_branch + add r0, r4, #0 + bl FlagSet + b ._298 +._300: + .align 2, 0 +._299: + .word gMain + .word gUnknown_Debug_083C19C6 +._297: + add r0, r4, #0 + bl FlagClear +._298: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808D308 + + thumb_func_start debug_sub_808D358 +debug_sub_808D358: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._303 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._301 @cond_branch + ldr r0, ._303 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._302: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl FlagGet + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + neg r2, r0 + orr r2, r2, r0 + lsr r2, r2, #0x1f + mov r0, #0x1c + add r1, r4, #0 + bl debug_sub_808F2E0 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._302 @cond_branch +._301: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._304: + .align 2, 0 +._303: + .word gUnknown_Debug_083C19BC + .word gUnknown_Debug_083C19C6 + + thumb_func_end debug_sub_808D358 + + thumb_func_start debug_sub_808D3BC +debug_sub_808D3BC: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + ldr r3, ._305 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x2 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x2 + bl InitMenu + ldr r1, ._305 + 4 + ldr r0, ._305 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._306: + .align 2, 0 +._305: + .word gUnknown_Debug_083C105C + .word gMenuCallback + .word debug_sub_808D40C+1 + + thumb_func_end debug_sub_808D3BC + + thumb_func_start debug_sub_808D40C +debug_sub_808D40C: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._307 @cond_branch + mov r0, #0x0 + b ._310 +._307: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._309 @cond_branch + ldr r2, ._311 + ldr r0, ._311 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._310 +._312: + .align 2, 0 +._311: + .word gMenuCallback + .word gUnknown_Debug_083C105C +._309: + bl CloseMenu + mov r0, #0x1 +._310: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808D40C + + thumb_func_start debug_sub_808D450 +debug_sub_808D450: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._313 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r0, ._313 + 4 + strb r4, [r0] + ldr r1, ._313 + 8 + ldr r0, ._313 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._314: + .align 2, 0 +._313: + .word gUnknown_Debug_083C10BD + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D500+1 + + thumb_func_end debug_sub_808D450 + + thumb_func_start debug_sub_808D4A8 +debug_sub_808D4A8: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._315 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._315 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._315 + 8 + ldr r0, ._315 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._316: + .align 2, 0 +._315: + .word gUnknown_Debug_083C1149 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D500+1 + + thumb_func_end debug_sub_808D4A8 + + thumb_func_start debug_sub_808D500 +debug_sub_808D500: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._320 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808D54C + ldrb r0, [r5] + bl debug_sub_808D59C + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._317 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._318 @cond_branch +._317: + mov r0, #0x0 + b ._319 +._321: + .align 2, 0 +._320: + .word gDebug_0300070F +._318: + bl CloseMenu + mov r0, #0x1 +._319: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808D500 + + thumb_func_start debug_sub_808D54C +debug_sub_808D54C: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._325 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._324 @cond_branch + ldr r0, ._325 + 4 + lsl r1, r2, #0x3 + add r1, r1, r2 + add r1, r1, r3 + lsl r1, r1, #0x1 + add r1, r1, r0 + ldrh r4, [r1] + add r0, r4, #0 + bl FlagGet + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._323 @cond_branch + add r0, r4, #0 + bl FlagSet + b ._324 +._326: + .align 2, 0 +._325: + .word gMain + .word gUnknown_Debug_083C1196 +._323: + add r0, r4, #0 + bl FlagClear +._324: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808D54C + + thumb_func_start debug_sub_808D59C +debug_sub_808D59C: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._329 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._327 @cond_branch + ldr r0, ._329 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._328: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl FlagGet + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + neg r2, r0 + orr r2, r2, r0 + lsr r2, r2, #0x1f + mov r0, #0x1c + add r1, r4, #0 + bl debug_sub_808F2E0 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._328 @cond_branch +._327: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._330: + .align 2, 0 +._329: + .word gUnknown_Debug_083C1194 + .word gUnknown_Debug_083C1196 + + thumb_func_end debug_sub_808D59C + + thumb_func_start debug_sub_808D600 +debug_sub_808D600: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + ldr r3, ._331 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x2 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x2 + bl InitMenu + ldr r1, ._331 + 4 + ldr r0, ._331 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._332: + .align 2, 0 +._331: + .word gUnknown_Debug_083C11CC + .word gMenuCallback + .word debug_sub_808D650+1 + + thumb_func_end debug_sub_808D600 + + thumb_func_start debug_sub_808D650 +debug_sub_808D650: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._333 @cond_branch + mov r0, #0x0 + b ._336 +._333: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._335 @cond_branch + ldr r2, ._337 + ldr r0, ._337 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._336 +._338: + .align 2, 0 +._337: + .word gMenuCallback + .word gUnknown_Debug_083C11CC +._335: + bl CloseMenu + mov r0, #0x1 +._336: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808D650 + + thumb_func_start debug_sub_808D694 +debug_sub_808D694: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._339 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r0, ._339 + 4 + strb r4, [r0] + ldr r1, ._339 + 8 + ldr r0, ._339 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._340: + .align 2, 0 +._339: + .word gUnknown_Debug_083C1212 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D744+1 + + thumb_func_end debug_sub_808D694 + + thumb_func_start debug_sub_808D6EC +debug_sub_808D6EC: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._341 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._341 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._341 + 8 + ldr r0, ._341 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._342: + .align 2, 0 +._341: + .word gUnknown_Debug_083C1288 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D744+1 + + thumb_func_end debug_sub_808D6EC + + thumb_func_start debug_sub_808D744 +debug_sub_808D744: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._346 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808D790 + ldrb r0, [r5] + bl debug_sub_808D7E0 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._343 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._344 @cond_branch +._343: + mov r0, #0x0 + b ._345 +._347: + .align 2, 0 +._346: + .word gDebug_0300070F +._344: + bl CloseMenu + mov r0, #0x1 +._345: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808D744 + + thumb_func_start debug_sub_808D790 +debug_sub_808D790: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._351 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._350 @cond_branch + ldr r0, ._351 + 4 + lsl r1, r2, #0x3 + add r1, r1, r2 + add r1, r1, r3 + lsl r1, r1, #0x1 + add r1, r1, r0 + ldrh r4, [r1] + add r0, r4, #0 + bl FlagGet + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._349 @cond_branch + add r0, r4, #0 + bl FlagSet + b ._350 +._352: + .align 2, 0 +._351: + .word gMain + .word gUnknown_Debug_083C12D2 +._349: + add r0, r4, #0 + bl FlagClear +._350: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808D790 + + thumb_func_start debug_sub_808D7E0 +debug_sub_808D7E0: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._355 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._353 @cond_branch + ldr r0, ._355 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._354: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl FlagGet + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + neg r2, r0 + orr r2, r2, r0 + lsr r2, r2, #0x1f + mov r0, #0x1c + add r1, r4, #0 + bl debug_sub_808F2E0 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._354 @cond_branch +._353: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._356: + .align 2, 0 +._355: + .word gUnknown_Debug_083C12D0 + .word gUnknown_Debug_083C12D2 + + thumb_func_end debug_sub_808D7E0 + + thumb_func_start debug_sub_808D844 +debug_sub_808D844: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1c + mov r3, #0x3 + bl Menu_DrawStdWindowFrame + ldr r3, ._357 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1b + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x1 + bl InitMenu + ldr r1, ._357 + 4 + ldr r0, ._357 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._358: + .align 2, 0 +._357: + .word gUnknown_Debug_083C1A78 + .word gMenuCallback + .word debug_sub_808D894+1 + + thumb_func_end debug_sub_808D844 + + thumb_func_start debug_sub_808D894 +debug_sub_808D894: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r3, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r3, r0 + bne ._359 @cond_branch + mov r0, #0x0 + b ._362 +._359: + mov r0, #0x1 + neg r0, r0 + cmp r3, r0 + beq ._361 @cond_branch + ldr r2, ._363 + ldr r1, ._363 + 4 + lsl r0, r3, #0x3 + add r0, r0, r1 + ldr r0, [r0, #0x4] + str r0, [r2] + mov r0, #0x0 + b ._362 +._364: + .align 2, 0 +._363: + .word gMenuCallback + .word gUnknown_Debug_083C1A78 +._361: + bl CloseMenu + mov r0, #0x1 +._362: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808D894 + + thumb_func_start debug_sub_808D8D8 +debug_sub_808D8D8: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + ldr r3, ._365 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x2 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x2 + bl InitMenu + ldr r0, ._365 + 4 + strb r4, [r0] + ldr r1, ._365 + 8 + ldr r0, ._365 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._366: + .align 2, 0 +._365: + .word gUnknown_Debug_083C1A9C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808D930+1 + + thumb_func_end debug_sub_808D8D8 + + thumb_func_start debug_sub_808D930 +debug_sub_808D930: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._370 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808D97C + ldrb r0, [r5] + bl debug_sub_808D9CC + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._367 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._368 @cond_branch +._367: + mov r0, #0x0 + b ._369 +._371: + .align 2, 0 +._370: + .word gDebug_0300070F +._368: + bl CloseMenu + mov r0, #0x1 +._369: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808D930 + + thumb_func_start debug_sub_808D97C +debug_sub_808D97C: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._375 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._374 @cond_branch + ldr r0, ._375 + 4 + lsl r1, r2, #0x3 + add r1, r1, r2 + add r1, r1, r3 + lsl r1, r1, #0x1 + add r1, r1, r0 + ldrh r4, [r1] + add r0, r4, #0 + bl FlagGet + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._373 @cond_branch + add r0, r4, #0 + bl FlagSet + b ._374 +._376: + .align 2, 0 +._375: + .word gMain + .word gUnknown_Debug_083C1AAE +._373: + add r0, r4, #0 + bl FlagClear +._374: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_sub_808D97C + + thumb_func_start debug_sub_808D9CC +debug_sub_808D9CC: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._379 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._377 @cond_branch + ldr r0, ._379 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._378: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl FlagGet + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + neg r2, r0 + orr r2, r2, r0 + lsr r2, r2, #0x1f + mov r0, #0x1c + add r1, r4, #0 + bl debug_sub_808F2E0 + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._378 @cond_branch +._377: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._380: + .align 2, 0 +._379: + .word gUnknown_Debug_083C1AAC + .word gUnknown_Debug_083C1AAE + + thumb_func_end debug_sub_808D9CC + + thumb_func_start debug_sub_808DA30 +debug_sub_808DA30: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x3 + bl Menu_DrawStdWindowFrame + ldr r3, ._381 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x1 + bl InitMenu + ldr r1, ._381 + 4 + ldr r0, ._381 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._382: + .align 2, 0 +._381: + .word gUnknown_Debug_083C103A + .word gMenuCallback + .word debug_sub_808DA80+1 + + thumb_func_end debug_sub_808DA30 + + thumb_func_start debug_sub_808DA80 +debug_sub_808DA80: + push {r4, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + bl debug_sub_808DAD4 + bl debug_sub_808DABC + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._383 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._384 @cond_branch +._383: + mov r0, #0x0 + b ._385 +._384: + bl CloseMenu + mov r0, #0x1 +._385: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808DA80 + + thumb_func_start debug_sub_808DABC +debug_sub_808DABC: + push {lr} + ldr r0, ._386 + ldrh r2, [r0] + mov r0, #0x18 + mov r1, #0x1 + bl debug_sub_808F31C + pop {r0} + bx r0 +._387: + .align 2, 0 +._386: + .word gSpecialVar_Result + + thumb_func_end debug_sub_808DABC + + thumb_func_start debug_sub_808DAD4 +debug_sub_808DAD4: + push {lr} + ldr r0, ._390 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._388 @cond_branch + mov r2, #0x1 + b ._389 +._391: + .align 2, 0 +._390: + .word gMain +._388: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._392 @cond_branch + ldr r2, ._393 +._389: + ldr r1, ._393 + 4 + ldrh r0, [r1] + add r0, r2, r0 + strh r0, [r1] +._392: + pop {r0} + bx r0 +._394: + .align 2, 0 +._393: + .word 0xffff + .word gSpecialVar_Result + + thumb_func_end debug_sub_808DAD4 + + thumb_func_start debug_sub_808DB0C +debug_sub_808DB0C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._395 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._395 + 4 + ldr r0, ._395 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._396: + .align 2, 0 +._395: + .word gUnknown_Debug_083C3D08 + .word gMenuCallback + .word debug_sub_808DB5C+1 + + thumb_func_end debug_sub_808DB0C + + thumb_func_start debug_sub_808DB5C +debug_sub_808DB5C: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._397 @cond_branch + mov r0, #0x0 + b ._400 +._397: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._399 @cond_branch + ldr r2, ._401 + ldr r0, ._401 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._400 +._402: + .align 2, 0 +._401: + .word gMenuCallback + .word gUnknown_Debug_083C3D08 +._399: + bl CloseMenu + mov r0, #0x1 +._400: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808DB5C + + thumb_func_start debug_sub_808DBA0 +debug_sub_808DBA0: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x11 + bl Menu_DrawStdWindowFrame + ldr r3, ._403 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x8 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x8 + bl InitMenu + ldr r0, ._403 + 4 + strb r4, [r0] + ldr r1, ._403 + 8 + ldr r0, ._403 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._404: + .align 2, 0 +._403: + .word gUnknown_Debug_083C432C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DBA0 + + thumb_func_start debug_sub_808DBF8 +debug_sub_808DBF8: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._405 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._405 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._405 + 8 + ldr r0, ._405 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._406: + .align 2, 0 +._405: + .word gUnknown_Debug_083C436C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DBF8 + + thumb_func_start debug_sub_808DC50 +debug_sub_808DC50: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._407 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._407 + 4 + mov r0, #0x2 + strb r0, [r1] + ldr r1, ._407 + 8 + ldr r0, ._407 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._408: + .align 2, 0 +._407: + .word gUnknown_Debug_083C43B4 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DC50 + + thumb_func_start debug_sub_808DCA8 +debug_sub_808DCA8: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._409 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._409 + 4 + mov r0, #0x3 + strb r0, [r1] + ldr r1, ._409 + 8 + ldr r0, ._409 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._410: + .align 2, 0 +._409: + .word gUnknown_Debug_083C43FC + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DCA8 + + thumb_func_start debug_sub_808DD00 +debug_sub_808DD00: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._411 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._411 + 4 + mov r0, #0x4 + strb r0, [r1] + ldr r1, ._411 + 8 + ldr r0, ._411 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._412: + .align 2, 0 +._411: + .word gUnknown_Debug_083C4444 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DD00 + + thumb_func_start debug_sub_808DD58 +debug_sub_808DD58: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._413 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._413 + 4 + mov r0, #0x5 + strb r0, [r1] + ldr r1, ._413 + 8 + ldr r0, ._413 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._414: + .align 2, 0 +._413: + .word gUnknown_Debug_083C448C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DD58 + + thumb_func_start debug_sub_808DDB0 +debug_sub_808DDB0: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r3, ._415 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x6 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x6 + bl InitMenu + ldr r1, ._415 + 4 + mov r0, #0x6 + strb r0, [r1] + ldr r1, ._415 + 8 + ldr r0, ._415 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._416: + .align 2, 0 +._415: + .word gUnknown_Debug_83C44C4 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DDB0 + + thumb_func_start debug_sub_808DE08 +debug_sub_808DE08: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._417 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._417 + 4 + mov r0, #0x7 + strb r0, [r1] + ldr r1, ._417 + 8 + ldr r0, ._417 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._418: + .align 2, 0 +._417: + .word gUnknown_Debug_83C44EC + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DE08 + + thumb_func_start debug_sub_808DE60 +debug_sub_808DE60: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._419 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._419 + 4 + mov r0, #0x8 + strb r0, [r1] + ldr r1, ._419 + 8 + ldr r0, ._419 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._420: + .align 2, 0 +._419: + .word gUnknown_Debug_083C4534 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808DEB8+1 + + thumb_func_end debug_sub_808DE60 + + thumb_func_start debug_sub_808DEB8 +debug_sub_808DEB8: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._424 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808DF64 + ldrb r0, [r5] + bl debug_sub_808DF04 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._421 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._422 @cond_branch +._421: + mov r0, #0x0 + b ._423 +._425: + .align 2, 0 +._424: + .word gDebug_0300070F +._422: + bl CloseMenu + mov r0, #0x1 +._423: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808DEB8 + + thumb_func_start debug_sub_808DF04 +debug_sub_808DF04: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._428 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._426 @cond_branch + ldr r0, ._428 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._427: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl VarGet + add r2, r0, #0 + lsl r2, r2, #0x10 + lsr r2, r2, #0x10 + mov r0, #0x18 + add r1, r4, #0 + bl debug_sub_808F31C + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._427 @cond_branch +._426: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._429: + .align 2, 0 +._428: + .word gUnknown_Debug_083C457C + .word gUnknown_Debug_083C4586 + + thumb_func_end debug_sub_808DF04 + + thumb_func_start debug_sub_808DF64 +debug_sub_808DF64: + push {r4, r5, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._432 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._430 @cond_branch + mov r5, #0x1 + b ._431 +._433: + .align 2, 0 +._432: + .word gMain +._430: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._434 @cond_branch + ldr r5, ._435 +._431: + ldr r1, ._435 + 4 + lsl r0, r2, #0x3 + add r0, r0, r2 + add r0, r0, r3 + lsl r0, r0, #0x1 + add r0, r0, r1 + ldrh r4, [r0] + add r0, r4, #0 + bl VarGet + add r1, r0, #0 + add r1, r5, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r4, #0 + bl VarSet +._434: + pop {r4, r5} + pop {r0} + bx r0 +._436: + .align 2, 0 +._435: + .word 0xffff + .word gUnknown_Debug_083C4586 + + thumb_func_end debug_sub_808DF64 + + thumb_func_start debug_sub_808DFC0 +debug_sub_808DFC0: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r3, ._437 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x6 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x6 + bl InitMenu + ldr r1, ._437 + 4 + ldr r0, ._437 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._438: + .align 2, 0 +._437: + .word gUnknown_Debug_083C377C + .word gMenuCallback + .word debug_sub_808E010+1 + + thumb_func_end debug_sub_808DFC0 + + thumb_func_start debug_sub_808E010 +debug_sub_808E010: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._439 @cond_branch + mov r0, #0x0 + b ._442 +._439: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._441 @cond_branch + ldr r2, ._443 + ldr r0, ._443 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._442 +._444: + .align 2, 0 +._443: + .word gMenuCallback + .word gUnknown_Debug_083C377C +._441: + bl CloseMenu + mov r0, #0x1 +._442: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808E010 + + thumb_func_start debug_sub_808E054 +debug_sub_808E054: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r3, ._445 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x6 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x6 + bl InitMenu + ldr r0, ._445 + 4 + strb r4, [r0] + ldr r1, ._445 + 8 + ldr r0, ._445 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._446: + .align 2, 0 +._445: + .word gUnknown_Debug_083C3AA0 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E264+1 + + thumb_func_end debug_sub_808E054 + + thumb_func_start debug_sub_808E0AC +debug_sub_808E0AC: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r3, ._447 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x5 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x5 + bl InitMenu + ldr r1, ._447 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._447 + 8 + ldr r0, ._447 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._448: + .align 2, 0 +._447: + .word gUnknown_Debug_83C3AE0 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E264+1 + + thumb_func_end debug_sub_808E0AC + + thumb_func_start debug_sub_808E104 +debug_sub_808E104: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._449 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._449 + 4 + mov r0, #0x2 + strb r0, [r1] + ldr r1, ._449 + 8 + ldr r0, ._449 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._450: + .align 2, 0 +._449: + .word gUnknown_Debug_83C3B28 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E264+1 + + thumb_func_end debug_sub_808E104 + + thumb_func_start debug_sub_808E15C +debug_sub_808E15C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + ldr r3, ._451 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x2 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x2 + bl InitMenu + ldr r1, ._451 + 4 + mov r0, #0x3 + strb r0, [r1] + ldr r1, ._451 + 8 + ldr r0, ._451 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._452: + .align 2, 0 +._451: + .word gUnknown_Debug_83C3B70 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E264+1 + + thumb_func_end debug_sub_808E15C + + thumb_func_start debug_sub_808E1B4 +debug_sub_808E1B4: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._453 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._453 + 4 + mov r0, #0x4 + strb r0, [r1] + ldr r1, ._453 + 8 + ldr r0, ._453 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._454: + .align 2, 0 +._453: + .word gUnknown_Debug_83C3BB8 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E264+1 + + thumb_func_end debug_sub_808E1B4 + + thumb_func_start debug_sub_808E20C +debug_sub_808E20C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r3, ._455 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x6 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x6 + bl InitMenu + ldr r1, ._455 + 4 + mov r0, #0x5 + strb r0, [r1] + ldr r1, ._455 + 8 + ldr r0, ._455 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._456: + .align 2, 0 +._455: + .word gUnknown_Debug_83C3C00 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E264+1 + + thumb_func_end debug_sub_808E20C + + thumb_func_start debug_sub_808E264 +debug_sub_808E264: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._460 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808E310 + ldrb r0, [r5] + bl debug_sub_808E2B0 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._457 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._458 @cond_branch +._457: + mov r0, #0x0 + b ._459 +._461: + .align 2, 0 +._460: + .word gDebug_0300070F +._458: + bl CloseMenu + mov r0, #0x1 +._459: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808E264 + + thumb_func_start debug_sub_808E2B0 +debug_sub_808E2B0: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._464 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._462 @cond_branch + ldr r0, ._464 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._463: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl VarGet + add r2, r0, #0 + lsl r2, r2, #0x10 + lsr r2, r2, #0x10 + mov r0, #0x18 + add r1, r4, #0 + bl debug_sub_808F31C + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._463 @cond_branch +._462: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._465: + .align 2, 0 +._464: + .word gUnknown_Debug_083C3C48 + .word gUnknown_Debug_83C3C4E + + thumb_func_end debug_sub_808E2B0 + + thumb_func_start debug_sub_808E310 +debug_sub_808E310: + push {r4, r5, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._468 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._466 @cond_branch + mov r5, #0x1 + b ._467 +._469: + .align 2, 0 +._468: + .word gMain +._466: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._470 @cond_branch + ldr r5, ._471 +._467: + ldr r1, ._471 + 4 + lsl r0, r2, #0x3 + add r0, r0, r2 + add r0, r0, r3 + lsl r0, r0, #0x1 + add r0, r0, r1 + ldrh r4, [r0] + add r0, r4, #0 + bl VarGet + add r1, r0, #0 + add r1, r5, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r4, #0 + bl VarSet +._470: + pop {r4, r5} + pop {r0} + bx r0 +._472: + .align 2, 0 +._471: + .word 0xffff + .word gUnknown_Debug_83C3C4E + + thumb_func_end debug_sub_808E310 + + thumb_func_start debug_sub_808E36C +debug_sub_808E36C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r3, ._473 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x5 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x5 + bl InitMenu + ldr r1, ._473 + 4 + ldr r0, ._473 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._474: + .align 2, 0 +._473: + .word gUnknown_Debug_083C32AC + .word gMenuCallback + .word debug_sub_808E3BC+1 + + thumb_func_end debug_sub_808E36C + + thumb_func_start debug_sub_808E3BC +debug_sub_808E3BC: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._475 @cond_branch + mov r0, #0x0 + b ._478 +._475: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._477 @cond_branch + ldr r2, ._479 + ldr r0, ._479 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._478 +._480: + .align 2, 0 +._479: + .word gMenuCallback + .word gUnknown_Debug_083C32AC +._477: + bl CloseMenu + mov r0, #0x1 +._478: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808E3BC + + thumb_func_start debug_sub_808E400 +debug_sub_808E400: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x7 + bl Menu_DrawStdWindowFrame + ldr r3, ._481 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x3 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x3 + bl InitMenu + ldr r0, ._481 + 4 + strb r4, [r0] + ldr r1, ._481 + 8 + ldr r0, ._481 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._482: + .align 2, 0 +._481: + .word gUnknown_Debug_083C347C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E5B8+1 + + thumb_func_end debug_sub_808E400 + + thumb_func_start debug_sub_808E458 +debug_sub_808E458: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + ldr r3, ._483 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x2 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x2 + bl InitMenu + ldr r1, ._483 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._483 + 8 + ldr r0, ._483 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._484: + .align 2, 0 +._483: + .word gUnknown_Debug_083C3494 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E5B8+1 + + thumb_func_end debug_sub_808E458 + + thumb_func_start debug_sub_808E4B0 +debug_sub_808E4B0: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r3, ._485 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x6 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x6 + bl InitMenu + ldr r1, ._485 + 4 + mov r0, #0x2 + strb r0, [r1] + ldr r1, ._485 + 8 + ldr r0, ._485 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._486: + .align 2, 0 +._485: + .word gUnknown_Debug_083C34A4 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E5B8+1 + + thumb_func_end debug_sub_808E4B0 + + thumb_func_start debug_sub_808E508 +debug_sub_808E508: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._487 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r1, ._487 + 4 + mov r0, #0x3 + strb r0, [r1] + ldr r1, ._487 + 8 + ldr r0, ._487 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._488: + .align 2, 0 +._487: + .word gUnknown_Debug_083C34D4 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E5B8+1 + + thumb_func_end debug_sub_808E508 + + thumb_func_start debug_sub_808E560 +debug_sub_808E560: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xb + bl Menu_DrawStdWindowFrame + ldr r3, ._489 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x5 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x5 + bl InitMenu + ldr r1, ._489 + 4 + mov r0, #0x4 + strb r0, [r1] + ldr r1, ._489 + 8 + ldr r0, ._489 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._490: + .align 2, 0 +._489: + .word gUnknown_Debug_083C351C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E5B8+1 + + thumb_func_end debug_sub_808E560 + + thumb_func_start debug_sub_808E5B8 +debug_sub_808E5B8: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._494 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808E604 + ldrb r0, [r5] + bl debug_sub_808E660 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._491 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._492 @cond_branch +._491: + mov r0, #0x0 + b ._493 +._495: + .align 2, 0 +._494: + .word gDebug_0300070F +._492: + bl CloseMenu + mov r0, #0x1 +._493: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808E5B8 + + thumb_func_start debug_sub_808E604 +debug_sub_808E604: + push {r4, r5, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._498 + ldrh r1, [r0, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._496 @cond_branch + mov r5, #0x1 + b ._497 +._499: + .align 2, 0 +._498: + .word gMain +._496: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._500 @cond_branch + ldr r5, ._501 +._497: + ldr r1, ._501 + 4 + lsl r0, r2, #0x3 + add r0, r0, r2 + add r0, r0, r3 + lsl r0, r0, #0x1 + add r0, r0, r1 + ldrh r4, [r0] + add r0, r4, #0 + bl VarGet + add r1, r0, #0 + add r1, r5, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r4, #0 + bl VarSet +._500: + pop {r4, r5} + pop {r0} + bx r0 +._502: + .align 2, 0 +._501: + .word 0xffff + .word gUnknown_Debug_083C354A + + thumb_func_end debug_sub_808E604 + + thumb_func_start debug_sub_808E660 +debug_sub_808E660: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._505 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._503 @cond_branch + ldr r0, ._505 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._504: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl VarGet + add r2, r0, #0 + lsl r2, r2, #0x10 + lsr r2, r2, #0x10 + mov r0, #0x18 + add r1, r4, #0 + bl debug_sub_808F31C + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._504 @cond_branch +._503: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._506: + .align 2, 0 +._505: + .word gUnknown_Debug_083C3544 + .word gUnknown_Debug_083C354A + + thumb_func_end debug_sub_808E660 + + thumb_func_start debug_sub_808E6C0 +debug_sub_808E6C0: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + ldr r3, ._507 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x2 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x2 + bl InitMenu + ldr r1, ._507 + 4 + ldr r0, ._507 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._508: + .align 2, 0 +._507: + .word gUnknown_Debug_083C4644 + .word gMenuCallback + .word debug_sub_808E710+1 + + thumb_func_end debug_sub_808E6C0 + + thumb_func_start debug_sub_808E710 +debug_sub_808E710: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._509 @cond_branch + mov r0, #0x0 + b ._512 +._509: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._511 @cond_branch + ldr r2, ._513 + ldr r0, ._513 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._512 +._514: + .align 2, 0 +._513: + .word gMenuCallback + .word gUnknown_Debug_083C4644 +._511: + bl CloseMenu + mov r0, #0x1 +._512: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808E710 + + thumb_func_start debug_sub_808E754 +debug_sub_808E754: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._515 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r0, ._515 + 4 + strb r4, [r0] + ldr r1, ._515 + 8 + ldr r0, ._515 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._516: + .align 2, 0 +._515: + .word gUnknown_Debug_083C470C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E804+1 + + thumb_func_end debug_sub_808E754 + + thumb_func_start debug_sub_808E7AC +debug_sub_808E7AC: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._517 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._517 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._517 + 8 + ldr r0, ._517 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._518: + .align 2, 0 +._517: + .word gUnknown_Debug_083C4754C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808E804+1 + + thumb_func_end debug_sub_808E7AC + + thumb_func_start debug_sub_808E804 +debug_sub_808E804: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._522 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808E850 + ldrb r0, [r5] + bl debug_sub_808E8AC + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._519 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._520 @cond_branch +._519: + mov r0, #0x0 + b ._521 +._523: + .align 2, 0 +._522: + .word gDebug_0300070F +._520: + bl CloseMenu + mov r0, #0x1 +._521: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808E804 + + thumb_func_start debug_sub_808E850 +debug_sub_808E850: + push {r4, r5, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._526 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._524 @cond_branch + mov r5, #0x1 + b ._525 +._527: + .align 2, 0 +._526: + .word gMain +._524: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._528 @cond_branch + ldr r5, ._529 +._525: + ldr r1, ._529 + 4 + lsl r0, r2, #0x3 + add r0, r0, r2 + add r0, r0, r3 + lsl r0, r0, #0x1 + add r0, r0, r1 + ldrh r4, [r0] + add r0, r4, #0 + bl VarGet + add r1, r0, #0 + add r1, r5, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r4, #0 + bl VarSet +._528: + pop {r4, r5} + pop {r0} + bx r0 +._530: + .align 2, 0 +._529: + .word 0xffff + .word gUnknown_Debug_083C478E + + thumb_func_end debug_sub_808E850 + + thumb_func_start debug_sub_808E8AC +debug_sub_808E8AC: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._533 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._531 @cond_branch + ldr r0, ._533 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._532: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl VarGet + add r2, r0, #0 + lsl r2, r2, #0x10 + lsr r2, r2, #0x10 + mov r0, #0x18 + add r1, r4, #0 + bl debug_sub_808F31C + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._532 @cond_branch +._531: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._534: + .align 2, 0 +._533: + .word gUnknown_Debug_083C478C + .word gUnknown_Debug_083C478E + + thumb_func_end debug_sub_808E8AC + + thumb_func_start debug_sub_808E90C +debug_sub_808E90C: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x18 + mov r3, #0x5 + bl Menu_DrawStdWindowFrame + ldr r3, ._535 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x2 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x17 + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x2 + bl InitMenu + ldr r1, ._535 + 4 + ldr r0, ._535 + 8 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._536: + .align 2, 0 +._535: + .word gUnknown_Debug_083C35C4 + .word gMenuCallback + .word debug_sub_808E95C+1 + + thumb_func_end debug_sub_808E90C + + thumb_func_start debug_sub_808E95C +debug_sub_808E95C: + push {lr} + bl Menu_ProcessInput + lsl r0, r0, #0x18 + asr r1, r0, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r1, r0 + bne ._537 @cond_branch + mov r0, #0x0 + b ._540 +._537: + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._539 @cond_branch + ldr r2, ._541 + ldr r0, ._541 + 4 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r0, [r1] + str r0, [r2] + mov r0, #0x0 + b ._540 +._542: + .align 2, 0 +._541: + .word gMenuCallback + .word gUnknown_Debug_083C35C4 +._539: + bl CloseMenu + mov r0, #0x1 +._540: + pop {r1} + bx r1 + + thumb_func_end debug_sub_808E95C + + thumb_func_start debug_sub_808E9A0 +debug_sub_808E9A0: + push {r4, lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r3, ._543 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x9 + bl Menu_PrintItems + mov r4, #0x0 + str r4, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x9 + bl InitMenu + ldr r0, ._543 + 4 + strb r4, [r0] + ldr r1, ._543 + 8 + ldr r0, ._543 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r4} + pop {r1} + bx r1 +._544: + .align 2, 0 +._543: + .word gUnknown_Debug_083C369C + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808EA50+1 + + thumb_func_end debug_sub_808E9A0 + + thumb_func_start debug_sub_808E9F8 +debug_sub_808E9F8: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r3, ._545 + mov r0, #0x2 + mov r1, #0x1 + mov r2, #0x7 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0x1c + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0x7 + bl InitMenu + ldr r1, ._545 + 4 + mov r0, #0x1 + strb r0, [r1] + ldr r1, ._545 + 8 + ldr r0, ._545 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._546: + .align 2, 0 +._545: + .word gUnknown_Debug_083C36E4 + .word gDebug_0300070F + .word gMenuCallback + .word debug_sub_808EA50+1 + + thumb_func_end debug_sub_808E9F8 + + thumb_func_start debug_sub_808EA50 +debug_sub_808EA50: + push {r4, r5, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + add r1, r0, #0 + ldr r5, ._550 + ldrb r0, [r5] + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + bl debug_sub_808EAFC + ldrb r0, [r5] + bl debug_sub_808EA9C + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._547 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._548 @cond_branch +._547: + mov r0, #0x0 + b ._549 +._551: + .align 2, 0 +._550: + .word gDebug_0300070F +._548: + bl CloseMenu + mov r0, #0x1 +._549: + pop {r4, r5} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808EA50 + + thumb_func_start debug_sub_808EA9C +debug_sub_808EA9C: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + mov r5, #0x0 + ldr r0, ._554 + add r0, r1, r0 + ldrb r2, [r0] + cmp r5, r2 + bcs ._552 @cond_branch + ldr r0, ._554 + 4 + mov r8, r0 + lsl r0, r1, #0x3 + add r0, r0, r1 + lsl r7, r0, #0x1 + add r6, r2, #0 +._553: + lsl r0, r5, #0x1 + add r4, r0, #1 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + add r0, r0, r7 + add r0, r0, r8 + ldrh r0, [r0] + bl VarGet + add r2, r0, #0 + lsl r2, r2, #0x10 + lsr r2, r2, #0x10 + mov r0, #0x18 + add r1, r4, #0 + bl debug_sub_808F31C + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, r6 + bcc ._553 @cond_branch +._552: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._555: + .align 2, 0 +._554: + .word gUnknown_Debug_083C371C + .word gUnknown_Debug_083C371E + + thumb_func_end debug_sub_808EA9C + + thumb_func_start debug_sub_808EAFC +debug_sub_808EAFC: + push {r4, r5, lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + ldr r0, ._558 + ldrh r1, [r0, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._556 @cond_branch + mov r5, #0x1 + b ._557 +._559: + .align 2, 0 +._558: + .word gMain +._556: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._560 @cond_branch + ldr r5, ._561 +._557: + ldr r1, ._561 + 4 + lsl r0, r2, #0x3 + add r0, r0, r2 + add r0, r0, r3 + lsl r0, r0, #0x1 + add r0, r0, r1 + ldrh r4, [r0] + add r0, r4, #0 + bl VarGet + add r1, r0, #0 + add r1, r5, r1 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r4, #0 + bl VarSet +._560: + pop {r4, r5} + pop {r0} + bx r0 +._562: + .align 2, 0 +._561: + .word 0xffff + .word gUnknown_Debug_083C371E + + thumb_func_end debug_sub_808EAFC + + thumb_func_start debug_sub_808EB58 +debug_sub_808EB58: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xc + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r0, ._563 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r3, ._563 + 4 + mov r0, #0x2 + mov r1, #0x3 + mov r2, #0x8 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0xb + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x8 + bl InitMenu + ldr r1, ._563 + 8 + ldr r0, ._563 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._564: + .align 2, 0 +._563: + .word gUnknown_Debug_083C47B2 + .word gUnknown_Debug_083C47F0 + .word gMenuCallback + .word debug_sub_808EC10+1 + + thumb_func_end debug_sub_808EB58 + + thumb_func_start debug_sub_808EBB4 +debug_sub_808EBB4: + push {lr} + add sp, sp, #0xfffffff8 + bl Menu_EraseScreen + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xd + mov r3, #0xd + bl Menu_DrawStdWindowFrame + ldr r0, ._565 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r3, ._565 + 4 + mov r0, #0x2 + mov r1, #0x3 + mov r2, #0x5 + bl Menu_PrintItems + mov r0, #0x0 + str r0, [sp] + mov r0, #0xc + str r0, [sp, #0x4] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x5 + bl InitMenu + ldr r1, ._565 + 8 + ldr r0, ._565 + 12 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x8 + pop {r1} + bx r1 +._566: + .align 2, 0 +._565: + .word gUnknown_Debug_083C4830 + .word gUnknown_Debug_083C4888 + .word gMenuCallback + .word debug_sub_808EC5C+1 + + thumb_func_end debug_sub_808EBB4 + + thumb_func_start debug_sub_808EC10 +debug_sub_808EC10: + push {r4, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._568 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._568 @cond_branch + ldr r1, ._570 + lsl r0, r2, #0x18 + asr r0, r0, #0x18 + ldr r2, ._570 + 4 + add r1, r1, r2 + strh r0, [r1] + bl CloseMenu + mov r0, #0x1 + b ._569 +._571: + .align 2, 0 +._570: + .word gSaveBlock1 + .word 0x13c8 +._568: + mov r0, #0x0 +._569: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808EC10 + + thumb_func_start debug_sub_808EC5C +debug_sub_808EC5C: + push {r4, lr} + bl Menu_ProcessInput + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl Menu_GetCursorPos + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + lsl r4, r4, #0x18 + asr r4, r4, #0x18 + mov r0, #0x2 + neg r0, r0 + cmp r4, r0 + beq ._573 @cond_branch + mov r0, #0x1 + neg r0, r0 + cmp r4, r0 + beq ._573 @cond_branch + ldr r0, ._575 + lsl r1, r1, #0x18 + asr r1, r1, #0x8 + lsr r1, r1, #0x10 + bl VarSet + bl CloseMenu + mov r0, #0x1 + b ._574 +._576: + .align 2, 0 +._575: + .word 0x40a7 +._573: + mov r0, #0x0 +._574: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_sub_808EC5C + + thumb_func_start debug_sub_808ECA4 +debug_sub_808ECA4: + push {lr} + add sp, sp, #0xfffffffc + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r1, ._577 + ldr r0, ._577 + 4 + str r0, [r1] + mov r0, #0x0 + add sp, sp, #0x4 + pop {r1} + bx r1 +._578: + .align 2, 0 +._577: + .word gMenuCallback + .word debug_sub_808ECD0+1 + + thumb_func_end debug_sub_808ECA4 + + thumb_func_start debug_sub_808ECD0 +debug_sub_808ECD0: + push {lr} + bl UpdatePaletteFade + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._579 @cond_branch + mov r0, #0x0 + b ._580 +._579: + bl CloseMenu + mov r0, #0x2 + bl debug_sub_808F168 + ldr r0, ._581 + bl SetMainCallback2 + ldr r1, ._581 + 4 + ldr r0, ._581 + 8 + str r0, [r1, #0x8] + mov r0, #0x1 +._580: + pop {r1} + bx r1 +._582: + .align 2, 0 +._581: + .word CB2_ContestPainting+1 + .word gMain + .word debug_sub_808B868+1 + + thumb_func_end debug_sub_808ECD0 + + thumb_func_start TomomichiDebugMenu_Config +TomomichiDebugMenu_Config: + mov r0, #0x0 + bx lr + + thumb_func_end TomomichiDebugMenu_Config + + thumb_func_start debug_sub_808ED0C +debug_sub_808ED0C: + push {lr} + ldr r2, ._590 + ldrh r1, [r2, #0x30] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._584 @cond_branch + ldr r1, ._590 + 4 + ldrh r0, [r1] + cmp r0, #0x1 + beq ._584 @cond_branch + sub r0, r0, #0x1 + strh r0, [r1] +._584: + ldrh r1, [r2, #0x30] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._586 @cond_branch + ldr r3, ._590 + 4 + ldrh r1, [r3] + ldr r0, ._590 + 8 + cmp r1, r0 + beq ._586 @cond_branch + add r0, r1, #1 + strh r0, [r3] +._586: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._587 @cond_branch + ldr r1, ._590 + 4 + ldrh r0, [r1] + cmp r0, #0xa + bls ._588 @cond_branch + sub r0, r0, #0xa + b ._589 +._591: + .align 2, 0 +._590: + .word gMain + .word gDebug_03000700 + .word 0x19b +._588: + mov r0, #0x1 +._589: + strh r0, [r1] +._587: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._592 @cond_branch + ldr r2, ._595 + ldrh r1, [r2] + ldr r0, ._595 + 4 + cmp r1, r0 + bhi ._593 @cond_branch + add r0, r1, #0 + add r0, r0, #0xa + b ._594 +._596: + .align 2, 0 +._595: + .word gDebug_03000700 + .word 0x191 +._593: + ldr r1, ._597 + add r0, r1, #0 +._594: + strh r0, [r2] +._592: + pop {r0} + bx r0 +._598: + .align 2, 0 +._597: + .word 0x19b + + thumb_func_end debug_sub_808ED0C + + thumb_func_start debug_sub_808ED9C +debug_sub_808ED9C: + push {lr} + ldr r2, ._606 + ldrh r1, [r2, #0x30] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._600 @cond_branch + ldr r1, ._606 + 4 + ldr r0, [r1] + cmp r0, #0 + beq ._600 @cond_branch + sub r0, r0, #0x1 + str r0, [r1] +._600: + ldrh r1, [r2, #0x30] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._602 @cond_branch + ldr r3, ._606 + 4 + ldr r1, [r3] + mov r0, #0x1 + neg r0, r0 + cmp r1, r0 + beq ._602 @cond_branch + add r0, r1, #1 + str r0, [r3] +._602: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._603 @cond_branch + ldr r1, ._606 + 4 + ldr r0, [r1] + cmp r0, #0xf + bls ._604 @cond_branch + sub r0, r0, #0x10 + b ._605 +._607: + .align 2, 0 +._606: + .word gMain + .word gDebug_03000708 +._604: + mov r0, #0x0 +._605: + str r0, [r1] +._603: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._608 @cond_branch + ldr r3, ._611 + ldr r1, [r3] + mov r0, #0x11 + neg r0, r0 + cmp r1, r0 + bhi ._609 @cond_branch + add r0, r1, #0 + add r0, r0, #0x10 + b ._610 +._612: + .align 2, 0 +._611: + .word gDebug_03000708 +._609: + mov r0, #0x1 + neg r0, r0 +._610: + str r0, [r3] +._608: + ldrh r2, [r2, #0x2e] + mov r1, #0xc0 + lsl r1, r1, #0x2 + add r0, r1, #0 + and r0, r0, r2 + cmp r0, r1 + bne ._613 @cond_branch + ldr r1, ._614 + mov r0, #0x1 + neg r0, r0 + str r0, [r1] +._613: + pop {r0} + bx r0 +._615: + .align 2, 0 +._614: + .word gDebug_03000708 + + thumb_func_end debug_sub_808ED9C + + thumb_func_start debug_sub_808EE3C +debug_sub_808EE3C: + push {lr} + ldr r2, ._622 + ldrh r1, [r2, #0x30] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._617 @cond_branch + ldr r1, ._622 + 4 + ldrb r0, [r1] + cmp r0, #0x1 + beq ._617 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] +._617: + ldrh r1, [r2, #0x30] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._619 @cond_branch + ldr r1, ._622 + 4 + ldrb r0, [r1] + cmp r0, #0x5 + beq ._619 @cond_branch + add r0, r0, #0x1 + strb r0, [r1] +._619: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._620 @cond_branch + ldr r1, ._622 + 4 + mov r0, #0x1 + strb r0, [r1] +._620: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._621 @cond_branch + ldr r1, ._622 + 4 + mov r0, #0x5 + strb r0, [r1] +._621: + pop {r0} + bx r0 +._623: + .align 2, 0 +._622: + .word gMain + .word gDebug_0300070C + + thumb_func_end debug_sub_808EE3C + + thumb_func_start debug_sub_808EE9C +debug_sub_808EE9C: + push {lr} + ldr r2, ._631 + ldrh r1, [r2, #0x30] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._625 @cond_branch + ldr r1, ._631 + 4 + ldrb r0, [r1] + cmp r0, #0x1 + beq ._625 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] +._625: + ldrh r1, [r2, #0x30] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._627 @cond_branch + ldr r1, ._631 + 4 + ldrb r0, [r1] + cmp r0, #0xf + beq ._627 @cond_branch + add r0, r0, #0x1 + strb r0, [r1] +._627: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._628 @cond_branch + ldr r1, ._631 + 4 + ldrb r0, [r1] + cmp r0, #0xa + bls ._629 @cond_branch + sub r0, r0, #0xa + b ._630 +._632: + .align 2, 0 +._631: + .word gMain + .word gDebug_0300070D +._629: + mov r0, #0x0 +._630: + strb r0, [r1] +._628: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._633 @cond_branch + ldr r1, ._636 + ldrb r0, [r1] + cmp r0, #0x5 + bhi ._634 @cond_branch + add r0, r0, #0xa + b ._635 +._637: + .align 2, 0 +._636: + .word gDebug_0300070D +._634: + mov r0, #0xf +._635: + strb r0, [r1] +._633: + pop {r0} + bx r0 + + thumb_func_end debug_sub_808EE9C + + thumb_func_start debug_sub_808EF14 +debug_sub_808EF14: + push {lr} + ldr r2, ._645 + ldrh r1, [r2, #0x30] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._639 @cond_branch + ldr r1, ._645 + 4 + ldrb r0, [r1] + cmp r0, #0x1 + beq ._639 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] +._639: + ldrh r1, [r2, #0x30] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._641 @cond_branch + ldr r1, ._645 + 4 + ldrb r0, [r1] + cmp r0, #0xf + beq ._641 @cond_branch + add r0, r0, #0x1 + strb r0, [r1] +._641: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._642 @cond_branch + ldr r1, ._645 + 4 + ldrb r0, [r1] + cmp r0, #0xa + bls ._643 @cond_branch + sub r0, r0, #0xa + b ._644 +._646: + .align 2, 0 +._645: + .word gMain + .word gDebug_0300070E +._643: + mov r0, #0x0 +._644: + strb r0, [r1] +._642: + ldrh r1, [r2, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._647 @cond_branch + ldr r1, ._650 + ldrb r0, [r1] + cmp r0, #0x5 + bhi ._648 @cond_branch + add r0, r0, #0xa + b ._649 +._651: + .align 2, 0 +._650: + .word gDebug_0300070E +._648: + mov r0, #0xf +._649: + strb r0, [r1] +._647: + pop {r0} + bx r0 + + thumb_func_end debug_sub_808EF14 + + thumb_func_start debug_sub_808EF8C +debug_sub_808EF8C: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + cmp r6, #0x2 + bgt ._653 @cond_branch + cmp r6, #0 + blt ._653 @cond_branch + mov r3, #0x0 + ldr r0, ._656 + mov r8, r0 + ldr r4, ._656 + 4 + mov r7, #0x7 + mov r5, #0xf +._658: + sub r0, r7, r3 + lsl r0, r0, #0x2 + mov r1, r8 + ldr r2, [r1] + LSR r2, r0 + and r2, r2, r5 + cmp r2, #0x9 + bhi ._654 @cond_branch + add r1, r3, r4 + add r0, r2, #0 + add r0, r0, #0xa1 + b ._655 +._657: + .align 2, 0 +._656: + .word gDebug_03000708 + .word gDebug_03000710 +._654: + add r1, r3, r4 + add r0, r2, #0 + sub r0, r0, #0x4f +._655: + strb r0, [r1] + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + cmp r3, #0x7 + bls ._658 @cond_branch + ldr r0, ._666 + mov r1, #0xff + strb r1, [r0, #0x8] + mov r1, #0xc + mov r2, #0x5 + bl Menu_PrintText +._653: + mov r3, #0x0 + ldr r7, ._666 + ldr r5, ._666 + 4 + ldr r2, ._666 + 8 + mov r8, r2 + add r4, r7, #0 + mov r2, #0x0 +._659: + add r1, r3, #1 + add r0, r1, r4 + strb r2, [r0] + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + cmp r3, #0x9 + bls ._659 @cond_branch + mov r3, #0x0 + ldrh r2, [r5] + mov r0, #0xb + add r1, r2, #0 + mul r1, r1, r0 + mov r2, r8 + add r0, r1, r2 + ldrb r0, [r0] + cmp r0, #0xff + beq ._661 @cond_branch + ldr r0, ._666 + mov ip, r0 + mov r5, r8 + add r4, r1, #0 +._662: + add r1, r3, #1 + mov r0, ip + add r2, r1, r0 + add r0, r3, r4 + add r0, r0, r5 + ldrb r0, [r0] + strb r0, [r2] + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + add r0, r3, r4 + add r0, r0, r5 + ldrb r0, [r0] + cmp r0, #0xff + beq ._661 @cond_branch + cmp r3, #0x9 + bls ._662 @cond_branch +._661: + mov r0, #0xb1 + strb r0, [r7] + mov r0, #0xb2 + strb r0, [r7, #0xb] + mov r0, #0xff + strb r0, [r7, #0xc] + cmp r6, #0x2 + bgt ._664 @cond_branch + cmp r6, #0 + blt ._664 @cond_branch + add r0, r7, #0 + mov r1, #0x8 + mov r2, #0x1 + bl Menu_PrintText + b ._665 +._667: + .align 2, 0 +._666: + .word gDebug_03000710 + .word gDebug_03000700 + .word gSpeciesNames +._664: + ldr r0, ._672 + mov r1, #0xc + mov r2, #0x1 + bl Menu_PrintText +._665: + ldr r5, ._672 + mov r0, #0xff + strb r0, [r5, #0x3] + ldr r4, ._672 + 4 + ldrh r0, [r4] + mov r1, #0x64 + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5] + ldrh r0, [r4] + mov r1, #0x64 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0xa + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x1] + ldrh r0, [r4] + mov r1, #0xa + bl __umodsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x2] + add r0, r5, #0 + mov r1, #0xc + mov r2, #0x3 + bl Menu_PrintText + cmp r6, #0x1 + beq ._668 @cond_branch + cmp r6, #0x1 + bgt ._669 @cond_branch + cmp r6, #0 + beq ._670 @cond_branch + b ._679 +._673: + .align 2, 0 +._672: + .word gDebug_03000710 + .word gDebug_03000700 +._669: + cmp r6, #0x2 + beq ._674 @cond_branch + b ._679 +._670: + ldr r4, ._677 + b ._676 +._678: + .align 2, 0 +._677: + .word gDebug_0300070C +._668: + ldr r4, ._680 +._676: + ldrb r0, [r4] + mov r1, #0x64 + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5] + ldrb r0, [r4] + mov r1, #0x64 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0xa + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x1] + ldrb r0, [r4] + mov r1, #0xa + bl __umodsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x2] + add r0, r5, #0 + mov r1, #0xc + mov r2, #0x7 + bl Menu_PrintText + b ._679 +._681: + .align 2, 0 +._680: + .word gDebug_0300070D +._674: + ldr r4, ._682 + ldrb r0, [r4] + mov r1, #0x64 + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5] + ldrb r0, [r4] + mov r1, #0x64 + bl __umodsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0xa + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x1] + ldrb r0, [r4] + mov r1, #0xa + bl __umodsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x2] + add r0, r5, #0 + mov r1, #0xc + mov r2, #0x7 + bl Menu_PrintText +._679: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._683: + .align 2, 0 +._682: + .word gDebug_0300070E + + thumb_func_end debug_sub_808EF8C + + thumb_func_start debug_sub_808F168 +debug_sub_808F168: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + ldr r4, ._686 + ldr r0, ._686 + 4 + ldrh r0, [r0] + strh r0, [r4, #0x8] + ldr r0, ._686 + 8 + ldr r0, [r0] + str r0, [r4, #0x4] + ldr r0, ._686 + 12 + ldr r0, [r0] + str r0, [r4] + cmp r1, #0x5 + bls ._684 @cond_branch + b ._707 +._684: + lsl r0, r1, #0x2 + ldr r1, ._686 + 16 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._687: + .align 2, 0 +._686: + .word +0x2015de0 + .word gDebug_03000700 + .word gDebug_03000704 + .word gDebug_03000708 + .word ._688 +._688: + .word ._689 + .word ._690 + .word ._691 + .word ._692 + .word ._693 + .word ._694 +._689: + ldr r0, ._696 + ldr r2, ._696 + 4 + add r1, r0, r2 + mov r2, #0x0 + strb r2, [r1] + ldr r1, ._696 + 8 + add r0, r0, r1 + strb r2, [r0] + ldr r0, ._696 + 12 + ldrb r0, [r0] + sub r0, r0, #0x1 + strb r0, [r4, #0xa] + add r0, r4, #0 + add r0, r0, #0x16 + ldr r1, ._696 + 16 + bl StringCopy + b ._704 +._697: + .align 2, 0 +._696: + .word +0x2000000 + .word 0x15ddf + .word 0x15dde + .word gDebug_0300070C + .word gUnknown_Debug_083C48BB +._690: + ldr r1, ._699 + ldr r0, ._699 + 4 + add r2, r1, r0 + mov r0, #0x0 + strb r0, [r2] + ldr r2, ._699 + 8 + add r1, r1, r2 + mov r0, #0x8 + strb r0, [r1] + ldr r0, ._699 + 12 + ldrb r0, [r0] + sub r0, r0, #0x1 + b ._698 +._700: + .align 2, 0 +._699: + .word +0x2000000 + .word 0x15ddf + .word 0x15dde + .word gDebug_0300070D +._691: + ldr r1, ._702 + ldr r0, ._702 + 4 + add r2, r1, r0 + mov r0, #0x1 + strb r0, [r2] + ldr r2, ._702 + 8 + add r1, r1, r2 + mov r0, #0x8 + strb r0, [r1] + ldr r0, ._702 + 12 + ldrb r0, [r0] + sub r0, r0, #0x1 + strb r0, [r4, #0xa] + b ._707 +._703: + .align 2, 0 +._702: + .word +0x2000000 + .word 0x15ddf + .word 0x15dde + .word gDebug_0300070E +._692: + ldr r1, ._705 + ldr r2, ._705 + 4 + add r0, r1, r2 + mov r2, #0x0 + strb r2, [r0] + ldr r0, ._705 + 8 + add r1, r1, r0 + mov r0, #0x8 + strb r0, [r1] + strb r2, [r4, #0xa] + b ._704 +._706: + .align 2, 0 +._705: + .word +0x2000000 + .word 0x15ddf + .word 0x15dde +._693: + ldr r1, ._708 + ldr r0, ._708 + 4 + add r2, r1, r0 + mov r0, #0x0 + strb r0, [r2] + ldr r2, ._708 + 8 + add r1, r1, r2 + mov r0, #0x8 + strb r0, [r1] + mov r0, #0x3 +._698: + strb r0, [r4, #0xa] +._704: + add r0, r4, #0 + add r0, r0, #0xb + ldr r1, ._708 + 12 + bl StringCopy + b ._707 +._709: + .align 2, 0 +._708: + .word +0x2000000 + .word 0x15ddf + .word 0x15dde + .word gUnknown_Debug_083C48B0 +._694: + ldr r1, ._710 + ldr r0, ._710 + 4 + add r2, r1, r0 + mov r0, #0x0 + strb r0, [r2] + ldr r2, ._710 + 8 + add r1, r1, r2 + mov r0, #0x8 + strb r0, [r1] + mov r0, #0x9 + strb r0, [r4, #0xa] + add r0, r4, #0 + add r0, r0, #0xb + ldr r1, ._710 + 12 + bl StringCopy +._707: + pop {r4} + pop {r0} + bx r0 +._711: + .align 2, 0 +._710: + .word +0x2000000 + .word 0x15ddf + .word 0x15dde + .word gUnknown_Debug_083C48B0 + + thumb_func_end debug_sub_808F168 + + thumb_func_start debug_sub_808F2E0 +debug_sub_808F2E0: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + lsl r1, r1, #0x18 + lsr r3, r1, #0x18 + lsl r2, r2, #0x18 + cmp r2, #0 + bne ._712 @cond_branch + ldr r1, ._714 + mov r0, #0xa1 + b ._713 +._715: + .align 2, 0 +._714: + .word gDebug_03000710 +._712: + ldr r1, ._716 + mov r0, #0xa2 +._713: + strb r0, [r1] + mov r0, #0xff + strb r0, [r1, #0x1] + add r0, r1, #0 + add r1, r4, #0 + add r2, r3, #0 + bl Menu_PrintText + pop {r4} + pop {r0} + bx r0 +._717: + .align 2, 0 +._716: + .word gDebug_03000710 + + thumb_func_end debug_sub_808F2E0 + + thumb_func_start debug_sub_808F31C +debug_sub_808F31C: + push {r4, r5, r6, lr} + mov r6, r9 + mov r5, r8 + push {r5, r6} + mov r8, r0 + mov r9, r1 + add r4, r2, #0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r8, r0 + mov r0, r9 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r9, r0 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + ldr r5, ._718 + ldr r6, ._718 + 4 + add r0, r4, #0 + add r1, r6, #0 + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5] + add r0, r4, #0 + add r1, r6, #0 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r6, #0xfa + lsl r6, r6, #0x2 + add r1, r6, #0 + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x1] + add r0, r4, #0 + add r1, r6, #0 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0x64 + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x2] + add r0, r4, #0 + mov r1, #0x64 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0xa + bl __udivsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x3] + add r0, r4, #0 + mov r1, #0xa + bl __umodsi3 + add r0, r0, #0xa1 + strb r0, [r5, #0x4] + mov r0, #0xff + strb r0, [r5, #0x5] + add r0, r5, #0 + mov r1, r8 + mov r2, r9 + bl Menu_PrintText + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6} + pop {r0} + bx r0 +._719: + .align 2, 0 +._718: + .word gDebug_03000710 + .word 0x2710 + + thumb_func_end debug_sub_808F31C + + thumb_func_start debug_nullsub_66 +debug_nullsub_66: + bx lr + + thumb_func_end debug_nullsub_66 + + .align 2, 0 + +.endif diff --git a/asm/unk_debug_menu_3.s b/asm/unk_debug_menu_3.s new file mode 100644 index 000000000..e1be20589 --- /dev/null +++ b/asm/unk_debug_menu_3.s @@ -0,0 +1,747 @@ +.if DEBUG + + .include "constants/gba_constants.inc" + .include "include/macros.inc" + + .text + + thumb_func_start debug_sub_813C404 +debug_sub_813C404: + push {r4, r5, r6, lr} + add r6, r0, #0 + ldr r5, ._1 + ldr r4, ._1 + 4 + sub r5, r5, r4 + add r1, r4, #0 + add r2, r5, #0 + bl memcpy + add r0, r6, #0 + add r1, r4, #0 + bl unref_sub_812620C + add r0, r5, #0 + pop {r4, r5, r6} + pop {r1} + bx r1 +._2: + .align 2, 0 +._1: + .word gUnknown_Debug_845DDB2 + .word gUnknown_Debug_845DAE1 + + thumb_func_end debug_sub_813C404 + + thumb_func_start debug_sub_813C430 +debug_sub_813C430: + push {r4, r5, r6, lr} + add r6, r0, #0 + ldr r5, ._3 + ldr r4, ._3 + 4 + sub r5, r5, r4 + add r1, r4, #0 + add r2, r5, #0 + bl memcpy + add r0, r6, #0 + add r1, r4, #0 + bl unref_sub_812620C + add r0, r5, #0 + pop {r4, r5, r6} + pop {r1} + bx r1 +._4: + .align 2, 0 +._3: + .word gUnknown_Debug_845E402 + .word gUnknown_Debug_845E3E0 + + thumb_func_end debug_sub_813C430 + + thumb_func_start debug_sub_813C45C +debug_sub_813C45C: + push {r4, r5, r6, lr} + add r6, r0, #0 + ldr r5, ._5 + ldr r4, ._5 + 4 + sub r5, r5, r4 + add r1, r4, #0 + add r2, r5, #0 + bl memcpy + add r0, r6, #0 + add r1, r4, #0 + bl unref_sub_812620C + add r0, r5, #0 + pop {r4, r5, r6} + pop {r1} + bx r1 +._6: + .align 2, 0 +._5: + .word gUnknown_Debug_845E443 + .word gUnknown_Debug_845E422 + + thumb_func_end debug_sub_813C45C + + thumb_func_start debug_sub_813C488 +debug_sub_813C488: + push {r4, r5, r6, lr} + add r6, r0, #0 + ldr r5, ._7 + ldr r4, ._7 + 4 + sub r5, r5, r4 + add r1, r4, #0 + add r2, r5, #0 + bl memcpy + add r0, r6, #0 + add r1, r4, #0 + bl unref_sub_812620C + add r0, r5, #0 + pop {r4, r5, r6} + pop {r1} + bx r1 +._8: + .align 2, 0 +._7: + .word gUnknown_Debug_845E422 + .word gUnknown_Debug_845E402 + + thumb_func_end debug_sub_813C488 + + thumb_func_start debug_sub_813C4B4 +debug_sub_813C4B4: + push {r4, lr} + ldr r4, ._9 + ldr r1, ._9 + 4 + sub r4, r4, r1 + add r2, r4, #0 + bl memcpy + add r0, r4, #0 + pop {r4} + pop {r1} + bx r1 +._10: + .align 2, 0 +._9: + .word gUnknown_Debug_845E619 + .word gUnknown_Debug_845E606 + + thumb_func_end debug_sub_813C4B4 + + thumb_func_start debug_sub_813C4D4 +debug_sub_813C4D4: + push {r4, r5, r6, lr} + add r6, r0, #0 + ldr r5, ._11 + ldr r4, ._11 + 4 + sub r5, r5, r4 + add r1, r4, #0 + add r2, r5, #0 + bl memcpy + add r0, r6, #0 + add r1, r4, #0 + bl unref_sub_81261B4 + add r0, r5, #0 + pop {r4, r5, r6} + pop {r1} + bx r1 +._12: + .align 2, 0 +._11: + .word gUnknown_Debug_845E712 + .word gUnknown_Debug_845E619 + + thumb_func_end debug_sub_813C4D4 + + thumb_func_start debug_sub_813C500 +debug_sub_813C500: + push {r4, r5, r6, lr} + add r6, r0, #0 + ldr r5, ._13 + ldr r4, ._13 + 4 + sub r5, r5, r4 + add r1, r4, #0 + add r2, r5, #0 + bl memcpy + add r0, r6, #0 + add r1, r4, #0 + bl unref_sub_812620C + add r0, r5, #0 + pop {r4, r5, r6} + pop {r1} + bx r1 +._14: + .align 2, 0 +._13: + .word gUnknown_Debug_845E797 + .word gUnknown_Debug_845E712 + + thumb_func_end debug_sub_813C500 + + thumb_func_start debug_sub_813C52C +debug_sub_813C52C: + push {r4, r5, r6, lr} + mov r6, r9 + mov r5, r8 + push {r5, r6} + mov r8, r0 + lsl r5, r1, #0x10 + lsr r0, r5, #0x10 + mov r9, r0 + ldr r6, ._15 + ldr r4, ._15 + 4 + sub r6, r6, r4 + mov r0, r8 + add r1, r4, #0 + add r2, r6, #0 + bl memcpy + ldr r0, ._15 + 8 + sub r0, r0, r4 + add r0, r0, r8 + add r0, r0, #0x3 + mov r1, r9 + strb r1, [r0] + lsr r5, r5, #0x18 + strb r5, [r0, #0x1] + mov r0, r8 + add r1, r4, #0 + bl unref_sub_812620C + add r0, r6, #0 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6} + pop {r1} + bx r1 +._16: + .align 2, 0 +._15: + .word gUnknown_Debug_845E7BB + .word gUnknown_Debug_845E797 + .word gUnknown_Debug_845E7B5 + + thumb_func_end debug_sub_813C52C + + thumb_func_start debug_sub_813C580 +debug_sub_813C580: + push {lr} + mov r1, #0xd + bl debug_sub_813C52C + pop {r1} + bx r1 + + thumb_func_end debug_sub_813C580 + + thumb_func_start debug_sub_813C58C +debug_sub_813C58C: + push {lr} + mov r1, #0x4 + bl debug_sub_813C52C + pop {r1} + bx r1 + + thumb_func_end debug_sub_813C58C + + thumb_func_start debug_sub_813C598 +debug_sub_813C598: + push {lr} + mov r1, #0x85 + bl debug_sub_813C52C + pop {r1} + bx r1 + + thumb_func_end debug_sub_813C598 + + thumb_func_start debug_sub_813C5A4 +debug_sub_813C5A4: + push {lr} + ldr r1, ._17 + bl debug_sub_813C52C + pop {r1} + bx r1 +._18: + .align 2, 0 +._17: + .word 0x121 + + thumb_func_end debug_sub_813C5A4 + + thumb_func_start debug_sub_813C5B4 +debug_sub_813C5B4: + push {r4, r5, r6, r7, lr} + add r4, r0, #0 + ldr r7, ._23 + ldr r0, ._23 + 4 + ldr r1, ._23 + 8 + sub r0, r0, r1 + add r6, r0, r4 + ldr r0, ._23 + 12 + sub r5, r0, r1 + ldr r0, ._23 + 16 + mov r1, #0x0 + mov r2, #0x0 + bl GetEnigmaBerryChecksum + mov r2, #0x0 + ldr r3, ._23 + 20 + mov r1, #0x0 +._19: + add r0, r4, r2 + strb r1, [r0] + add r2, r2, #0x1 + cmp r2, r3 + ble ._19 @cond_branch + mov r2, #0x0 + cmp r2, r5 + bcs ._20 @cond_branch + ldr r3, ._23 + 8 +._21: + add r0, r4, r2 + add r1, r2, r3 + ldrb r1, [r1] + strb r1, [r0] + add r2, r2, #0x1 + cmp r2, r5 + bcc ._21 @cond_branch +._20: + mov r2, #0x0 + ldr r3, ._23 + 24 +._22: + add r0, r6, r2 + add r1, r7, r2 + ldrb r1, [r1] + strb r1, [r0] + add r2, r2, #0x1 + cmp r2, r3 + bls ._22 @cond_branch + bl ClearEnigmaBerries + ldr r1, ._23 + 8 + add r0, r4, #0 + bl unref_sub_81261B4 + add r0, r5, #0 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._24: + .align 2, 0 +._23: + .word gSaveBlock1+0x3160 + .word gUnknown_Debug_845DDD6 + .word gUnknown_Debug_845DDB2 + .word gUnknown_Debug_845E306 + .word Str_842E23C + .word 0xfff + .word 0x52f + + thumb_func_end debug_sub_813C5B4 + + thumb_func_start debug_sub_813C638 +debug_sub_813C638: + push {r4, r5, r6, lr} + mov r6, r8 + push {r6} + add sp, sp, #0xffffffec + mov r8, r0 + add r4, r1, #0 + add r5, r2, #0 + add r6, r3, #0 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + lsl r5, r5, #0x18 + lsr r5, r5, #0x18 + lsl r6, r6, #0x10 + lsr r6, r6, #0x10 + bl ZeroMonData + mov r0, #0x0 + str r0, [sp] + str r0, [sp, #0x4] + mov r0, #0x1 + str r0, [sp, #0x8] + ldr r0, ._25 + str r0, [sp, #0xc] + mov r0, r8 + add r1, r4, #0 + add r2, r5, #0 + mov r3, #0x20 + bl CreateMon + ldr r2, ._25 + 4 + mov r0, r8 + mov r1, #0x7 + bl SetMonData + ldr r2, ._25 + 8 + mov r0, r8 + mov r1, #0x2 + bl SetMonData + str r6, [sp, #0x10] + mov r0, r8 + mov r1, #0xc + add r2, sp, #0x10 + bl SetMonData + add sp, sp, #0x14 + pop {r3} + mov r8, r3 + pop {r4, r5, r6} + pop {r0} + bx r0 +._26: + .align 2, 0 +._25: + .word 0x270f + .word Str_842E240 + .word Str_842E248 + + thumb_func_end debug_sub_813C638 + + thumb_func_start debug_sub_813C6AC +debug_sub_813C6AC: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add sp, sp, #0xfffffff8 + add r6, r0, #0 + add r5, r1, #0 + add r0, r5, #0 + bl ClearMailStruct + add r0, r6, #0 + mov r1, #0xc + bl GetMonData + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r8, r0 + bl ItemIsMail + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._27 @cond_branch + add r4, r5, #0 + add r4, r4, #0x12 + add r7, r5, #0 + add r7, r7, #0x1a + mov r1, #0x9 + add r0, r5, #0 + add r0, r0, #0x10 +._28: + strh r1, [r0] + sub r1, r1, #0x1 + sub r0, r0, #0x2 + cmp r0, r5 + bge ._28 @cond_branch + add r0, r6, #0 + mov r1, #0x7 + mov r2, sp + bl GetMonData + add r0, r4, #0 + mov r1, sp + mov r2, #0x8 + bl StringCopyN + add r0, r6, #0 + mov r1, #0x1 + bl GetMonData + add r1, r7, #0 + bl write_word_to_mem + add r0, r6, #0 + mov r1, #0xb + bl GetMonData + add r4, r0, #0 + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + add r0, r6, #0 + mov r1, #0x0 + bl GetMonData + add r1, r0, #0 + add r0, r4, #0 + bl SpeciesToMailSpecies + strh r0, [r5, #0x1e] + mov r0, r8 + strh r0, [r5, #0x20] +._27: + add sp, sp, #0x8 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 + + thumb_func_end debug_sub_813C6AC + + thumb_func_start debug_sub_813C740 +debug_sub_813C740: + push {r4, r5, r6, lr} + mov r6, sl + mov r5, r9 + mov r4, r8 + push {r4, r5, r6} + add sp, sp, #0xffffffd0 + add r6, r0, #0 + ldr r0, ._29 + mov r8, r0 + ldr r1, ._29 + 4 + ldr r5, ._29 + 8 + sub r1, r1, r0 + mov r9, r1 + add r0, r6, #0 + mov r1, r8 + mov r2, r9 + bl memcpy + add r0, r5, #0 + mov r1, #0x19 + mov r2, #0x5 + mov r3, #0x0 + bl debug_sub_813C638 + add r4, sp, #0x24 + mov r0, #0x1 + mov sl, r0 + mov r1, sl + strb r1, [r4] + add r0, r5, #0 + mov r1, #0x2d + add r2, r4, #0 + bl SetMonData + mov r0, #0x3 + strb r0, [r4] + add r0, r5, #0 + mov r1, #0x20 + add r2, r4, #0 + bl SetMonData + mov r0, #0xff + strb r0, [r4] + add r0, r5, #0 + mov r1, #0x23 + add r2, r4, #0 + bl SetMonData + ldr r1, ._29 + 12 + add r0, r4, #0 + mov r2, #0xb + bl StringCopyN + add r0, r5, #0 + mov r1, #0x2 + add r2, r4, #0 + bl SetMonData + mov r0, sl + strb r0, [r4] + add r0, r5, #0 + mov r1, #0x3 + add r2, r4, #0 + bl SetMonData + ldr r0, ._29 + 16 + add r0, r6, r0 + mov r1, r8 + sub r0, r0, r1 + add r1, r5, #0 + mov r2, #0x64 + bl memcpy + ldr r0, ._29 + 20 + add r6, r6, r0 + mov r0, r8 + sub r6, r6, r0 + add r0, r6, #0 + mov r1, sp + mov r2, #0x24 + bl memcpy + mov r0, r9 + add sp, sp, #0x30 + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6} + pop {r1} + bx r1 +._30: + .align 2, 0 +._29: + .word gUnknown_Debug_845E443 + .word gUnknown_Debug_845E4EF + .word gEnemyParty + .word Str_842E238 + .word gUnknown_Debug_845E467 + .word gUnknown_Debug_845E4CB + + thumb_func_end debug_sub_813C740 + + thumb_func_start debug_sub_813C810 +debug_sub_813C810: + push {r4, r5, r6, lr} + mov r6, r8 + push {r6} + add sp, sp, #0xffffffdc + add r6, r0, #0 + ldr r5, ._31 + ldr r0, ._31 + 4 + ldr r4, ._31 + 8 + sub r0, r0, r5 + mov r8, r0 + add r0, r6, #0 + add r1, r5, #0 + mov r2, r8 + bl memcpy + add r0, r4, #0 + mov r1, #0xc9 + mov r2, #0x15 + mov r3, #0x82 + bl debug_sub_813C638 + add r0, r4, #0 + mov r1, sp + bl debug_sub_813C6AC + ldr r0, ._31 + 12 + add r0, r6, r0 + sub r0, r0, r5 + add r1, r4, #0 + mov r2, #0x64 + bl memcpy + ldr r0, ._31 + 16 + add r0, r6, r0 + sub r0, r0, r5 + mov r1, sp + mov r2, #0x24 + bl memcpy + add r0, r6, #0 + add r1, r5, #0 + bl unref_sub_812620C + mov r0, r8 + add sp, sp, #0x24 + pop {r3} + mov r8, r3 + pop {r4, r5, r6} + pop {r1} + bx r1 +._32: + .align 2, 0 +._31: + .word gUnknown_Debug_845E443 + .word gUnknown_Debug_845E4EF + .word gEnemyParty + .word gUnknown_Debug_845E467 + .word gUnknown_Debug_845E4CB + + thumb_func_end debug_sub_813C810 + + thumb_func_start debug_sub_813C888 +debug_sub_813C888: + push {r4, r5, r6, lr} + mov r6, r8 + push {r6} + add sp, sp, #0xffffffdc + add r6, r0, #0 + ldr r5, ._33 + ldr r0, ._33 + 4 + ldr r4, ._33 + 8 + sub r0, r0, r5 + mov r8, r0 + add r0, r6, #0 + add r1, r5, #0 + mov r2, r8 + bl memcpy + add r0, r4, #0 + mov r1, #0xc9 + mov r2, #0x15 + mov r3, #0x82 + bl debug_sub_813C638 + add r0, r4, #0 + mov r1, sp + bl debug_sub_813C6AC + mov r0, #0x0 + strh r0, [r4, #0x1c] + ldr r0, ._33 + 12 + add r0, r6, r0 + sub r0, r0, r5 + add r1, r4, #0 + mov r2, #0x64 + bl memcpy + ldr r0, ._33 + 16 + add r0, r6, r0 + sub r0, r0, r5 + mov r1, sp + mov r2, #0x24 + bl memcpy + add r0, r6, #0 + add r1, r5, #0 + bl unref_sub_812620C + mov r0, r8 + add sp, sp, #0x24 + pop {r3} + mov r8, r3 + pop {r4, r5, r6} + pop {r1} + bx r1 +._34: + .align 2, 0 +._33: + .word gUnknown_Debug_845E443 + .word gUnknown_Debug_845E4EF + .word gEnemyParty + .word gUnknown_Debug_845E467 + .word gUnknown_Debug_845E4CB + + thumb_func_end debug_sub_813C888 + + thumb_func_start debug_sub_813C904 +debug_sub_813C904: + push {r4, lr} + ldr r4, ._35 + add r0, r4, #0 + mov r1, #0x5 + mov r2, #0x32 + mov r3, #0xb7 + bl debug_sub_813C638 + add r0, r4, #0 + add r0, r0, #0x64 + mov r1, #0x8 + mov r2, #0x32 + mov r3, #0xc4 + bl debug_sub_813C638 + add r4, r4, #0xc8 + add r0, r4, #0 + mov r1, #0x2 + mov r2, #0x32 + mov r3, #0x8d + bl debug_sub_813C638 + pop {r4} + pop {r0} + bx r0 +._36: + .align 2, 0 +._35: + .word gPlayerParty + + thumb_func_end debug_sub_813C904 + + thumb_func_start debug_sub_813C93C +debug_sub_813C93C: + push {r4, r5, r6, lr} + add sp, sp, #0xffffff44 + add r4, r0, #0 + ldr r6, ._37 + ldr r5, ._37 + 4 + sub r5, r5, r6 + add r1, r6, #0 + add r2, r5, #0 + bl memcpy + bl SavePlayerParty + bl debug_sub_813C904 + ldr r1, ._37 + 8 + ldr r2, ._37 + 12 + mov r0, sp + bl debug_sub_8075DB4 + bl LoadPlayerParty + ldr r0, ._37 + 16 + add r4, r4, r0 + sub r4, r4, r6 + add r0, r4, #0 + mov r1, sp + mov r2, #0xbc + bl memcpy + add r0, r5, #0 + add sp, sp, #0xbc + pop {r4, r5, r6} + pop {r1} + bx r1 +._38: + .align 2, 0 +._37: + .word gUnknown_Debug_845E4EF + .word gUnknown_Debug_845E606 + .word Str_842E253+5 @ weird... + .word 0x270f + .word gUnknown_Debug_845E506 + + thumb_func_end debug_sub_813C93C + + .align 2, 0 + +.endif diff --git a/asm/watanabe_debug_menu.s b/asm/watanabe_debug_menu.s new file mode 100644 index 000000000..6c56dab67 --- /dev/null +++ b/asm/watanabe_debug_menu.s @@ -0,0 +1,9578 @@ +.if DEBUG + + .include "constants/gba_constants.inc" + .include "include/macros.inc" + + .text + + thumb_func_start debug_69 +debug_69: + bx lr + + thumb_func_end debug_69 + + thumb_func_start debug_80C35DC +debug_80C35DC: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add sp, sp, #0xfffffff8 + mov r0, #0x0 + bl SetVBlankCallback + mov r0, #0x80 + lsl r0, r0, #0x13 + mov r1, #0x0 + strh r1, [r0] + add r0, r0, #0xe + strh r1, [r0] + sub r0, r0, #0x2 + strh r1, [r0] + sub r0, r0, #0x2 + strh r1, [r0] + sub r0, r0, #0x2 + strh r1, [r0] + add r0, r0, #0x14 + strh r1, [r0] + add r0, r0, #0x2 + strh r1, [r0] + sub r0, r0, #0x6 + strh r1, [r0] + add r0, r0, #0x2 + strh r1, [r0] + sub r0, r0, #0x6 + strh r1, [r0] + add r0, r0, #0x2 + strh r1, [r0] + sub r0, r0, #0x6 + strh r1, [r0] + add r0, r0, #0x2 + strh r1, [r0] + mov r3, #0xc0 + lsl r3, r3, #0x13 + mov r4, #0xc0 + lsl r4, r4, #0x9 + add r0, sp, #0x4 + mov r8, r0 + mov r2, sp + mov r6, #0x0 + ldr r1, ._2 + mov r5, #0x80 + lsl r5, r5, #0x5 + ldr r7, ._2 + 4 + mov r0, #0x81 + lsl r0, r0, #0x18 + mov ip, r0 +._1: + strh r6, [r2] + mov r0, sp + str r0, [r1] + str r3, [r1, #0x4] + str r7, [r1, #0x8] + ldr r0, [r1, #0x8] + add r3, r3, r5 + sub r4, r4, r5 + cmp r4, r5 + bhi ._1 @cond_branch + strh r6, [r2] + mov r2, sp + str r2, [r1] + str r3, [r1, #0x4] + lsr r0, r4, #0x1 + mov r2, ip + orr r0, r0, r2 + str r0, [r1, #0x8] + ldr r0, [r1, #0x8] + mov r0, #0xe0 + lsl r0, r0, #0x13 + mov r3, #0x80 + lsl r3, r3, #0x3 + mov r4, #0x0 + str r4, [sp, #0x4] + ldr r2, ._2 + mov r1, r8 + str r1, [r2] + str r0, [r2, #0x4] + lsr r0, r3, #0x2 + mov r1, #0x85 + lsl r1, r1, #0x18 + orr r0, r0, r1 + str r0, [r2, #0x8] + ldr r0, [r2, #0x8] + mov r1, #0xa0 + lsl r1, r1, #0x13 + mov r0, sp + strh r4, [r0] + str r0, [r2] + str r1, [r2, #0x4] + lsr r3, r3, #0x1 + mov r0, #0x81 + lsl r0, r0, #0x18 + orr r3, r3, r0 + str r3, [r2, #0x8] + ldr r0, [r2, #0x8] + bl ResetPaletteFade + bl ScanlineEffect_Stop + bl ResetTasks + bl ResetSpriteData + bl ResetPaletteFade + bl FreeAllSpritePalettes + ldr r0, ._2 + 8 + bl LoadSpriteSheet + ldr r0, ._2 + 12 + bl LoadSpritePalette + ldr r0, ._2 + 16 + bl Text_LoadWindowTemplate + ldr r0, ._2 + 20 + bl InitMenuWindow + add sp, sp, #0x8 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._3: + .align 2, 0 +._2: + .word 0x40000d4 + .word 0x81000800 + .word stru_83F8828 + .word stru_83F8838 + .word gWindowTemplate_81E6C3C + .word gWindowTemplate_81E6CE4 + + thumb_func_end debug_80C35DC + + thumb_func_start debug_80C36F4 +debug_80C36F4: + push {lr} + bl RunTasks + bl AnimateSprites + bl BuildOamBuffer + bl UpdatePaletteFade + pop {r0} + bx r0 + + thumb_func_end debug_80C36F4 + + thumb_func_start debug_80C370C +debug_80C370C: + push {lr} + ldr r0, ._6 + ldrb r1, [r0, #0x7] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + bne ._4 @cond_branch + ldr r0, ._6 + 4 + bl SetMainCallback2 + b ._5 +._7: + .align 2, 0 +._6: + .word gPaletteFade + .word debug_80C36F4+1 +._4: + bl AnimateSprites + bl BuildOamBuffer + bl UpdatePaletteFade +._5: + pop {r0} + bx r0 + + thumb_func_end debug_80C370C + + thumb_func_start debug_80C373C +debug_80C373C: + push {lr} + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + bl DestroyTask + bl ScriptContext2_Disable + ldr r0, ._8 + bl SetMainCallback2 + pop {r0} + bx r0 +._9: + .align 2, 0 +._8: + .word sub_80546F0+1 + + thumb_func_end debug_80C373C + + thumb_func_start debug_80C3758 +debug_80C3758: + push {lr} + bl LoadOam + bl ProcessSpriteCopyRequests + bl TransferPlttBuffer + pop {r0} + bx r0 + + thumb_func_end debug_80C3758 + + thumb_func_start debug_80C376C +debug_80C376C: + push {r4, r5, r6, r7, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + lsl r1, r1, #0x18 + lsr r7, r1, #0x18 + lsl r2, r2, #0x18 + lsr r6, r2, #0x18 + mov r1, #0x0 + mov r2, #0x0 +._10: + mov r3, sp + add r0, r3, r1 + strb r2, [r0] + add r0, r1, #1 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + cmp r1, #0x2 + bls ._10 @cond_branch + mov r1, sp + mov r0, #0xff + strb r0, [r1, #0x3] + mov r4, #0x0 + add r0, r5, #0 + mov r1, #0x64 + bl __udivsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0 + beq ._11 @cond_branch + mov r1, sp + add r0, r0, #0xa1 + strb r0, [r1] + mov r4, #0x1 +._11: + add r0, r5, #0 + mov r1, #0x64 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0xa + bl __udivsi3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0 + bne ._12 @cond_branch + cmp r4, #0 + beq ._13 @cond_branch +._12: + mov r1, sp + add r0, r0, #0xa1 + strb r0, [r1, #0x1] +._13: + mov r4, sp + add r0, r5, #0 + mov r1, #0x64 + bl __umodsi3 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0xa + bl __umodsi3 + add r0, r0, #0xa1 + strb r0, [r4, #0x2] + mov r0, sp + add r1, r7, #0 + add r2, r6, #0 + bl Menu_PrintText + add sp, sp, #0x4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 + + thumb_func_end debug_80C376C + + thumb_func_start debug_80C3800 +debug_80C3800: + push {r4, r5, r6, r7, lr} + add sp, sp, #0xfffffff4 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + lsl r1, r1, #0x18 + lsr r6, r1, #0x18 + lsl r2, r2, #0x18 + lsr r5, r2, #0x18 + mov r3, #0x0 + ldr r2, ._18 + mov r1, #0x0 +._14: + mov r7, sp + add r0, r7, r3 + strb r1, [r0] + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + cmp r3, #0x9 + bls ._14 @cond_branch + add r1, r7, r3 + mov r0, #0xff + strb r0, [r1] + mov r3, #0x0 + mov r0, #0xb + add r1, r4, #0 + mul r1, r1, r0 + add r0, r1, r2 + ldrb r0, [r0] + cmp r0, #0xff + beq ._16 @cond_branch + add r4, r2, #0 + add r2, r1, #0 +._17: + mov r0, sp + add r1, r0, r3 + add r0, r3, r2 + add r0, r0, r4 + ldrb r0, [r0] + strb r0, [r1] + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + add r0, r3, r2 + add r0, r0, r4 + ldrb r0, [r0] + cmp r0, #0xff + beq ._16 @cond_branch + cmp r3, #0x9 + bls ._17 @cond_branch +._16: + mov r0, sp + add r1, r6, #0 + add r2, r5, #0 + bl Menu_PrintText + add sp, sp, #0xc + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._19: + .align 2, 0 +._18: + .word gSpeciesNames + + thumb_func_end debug_80C3800 + + thumb_func_start debug_80C3878 +debug_80C3878: + push {lr} + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + cmp r0, #0 + beq ._20 @cond_branch + cmp r0, #0x1 + beq ._21 @cond_branch +._20: + cmp r1, #0x1 + bls ._22 @cond_branch + sub r0, r1, #1 + b ._23 +._22: + ldr r1, ._25 + b ._28 +._26: + .align 2, 0 +._25: + .word 0x19b +._21: + mov r0, #0xcd + lsl r0, r0, #0x1 + cmp r1, r0 + bhi ._27 @cond_branch + add r0, r1, #1 +._23: + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + b ._28 +._27: + mov r1, #0x1 +._28: + add r0, r1, #0 + pop {r1} + bx r1 + + thumb_func_end debug_80C3878 + + thumb_func_start debug_80C38B4 +debug_80C38B4: + push {lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + lsl r1, r1, #0x10 + lsr r0, r1, #0x10 + cmp r2, #0 + beq ._29 @cond_branch + cmp r2, #0x1 + beq ._30 @cond_branch +._29: + cmp r0, #0 + beq ._31 @cond_branch + sub r0, r0, #0x1 + b ._32 +._31: + mov r0, #0x52 + b ._35 +._30: + cmp r0, #0x51 + bhi ._34 @cond_branch + add r0, r0, #0x1 +._32: + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + b ._35 +._34: + mov r0, #0x0 +._35: + pop {r1} + bx r1 + + thumb_func_end debug_80C38B4 + + thumb_func_start debug_80C38E4 +debug_80C38E4: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add sp, sp, #0xfffffffc + add r4, r2, #0 + add r5, r3, #0 + ldr r6, [sp, #0x1c] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r8, r0 + lsl r1, r1, #0x18 + lsr r7, r1, #0x18 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + lsl r5, r5, #0x18 + lsr r5, r5, #0x18 + lsl r6, r6, #0x18 + lsr r6, r6, #0x18 + ldr r1, ._37 + mov r0, sp + mov r2, #0x2 + bl memcpy + add r0, r7, #0 + add r1, r4, #0 + add r2, r7, #0 + add r3, r5, #0 + bl Menu_BlankWindowRect + cmp r6, #0 + beq ._36 @cond_branch + mov r0, sp + add r1, r7, #0 + mov r2, r8 + bl Menu_PrintText +._36: + add sp, sp, #0x4 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._38: + .align 2, 0 +._37: + .word gUnknown_Debug_083F7FD4 + + thumb_func_end debug_80C38E4 + + thumb_func_start debug_80C393C +debug_80C393C: + push {lr} + ldr r1, ._39 + mov r0, #0x1e + bl ProgramFlashSectorAndVerify + pop {r0} + bx r0 +._40: + .align 2, 0 +._39: + .word gUnknown_Debug_083F7FD6 + + thumb_func_end debug_80C393C + + thumb_func_start InitWatanabeDebugMenu +InitWatanabeDebugMenu: + push {r4, lr} + ldr r0, ._46 + ldr r1, ._46 + 4 + add r4, r0, r1 + ldrb r0, [r4] + cmp r0, #0x1 + beq ._41 @cond_branch + cmp r0, #0x1 + ble ._42 @cond_branch + cmp r0, #0x2 + beq ._43 @cond_branch + cmp r0, #0x3 + beq ._44 @cond_branch +._42: + bl save_serialize_map + bl sub_8125E2C + mov r0, #0x1 + strb r0, [r4] + b ._51 +._47: + .align 2, 0 +._46: + .word gMain + .word 0x43c +._41: + bl sub_8125E6C + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._51 @cond_branch + b ._49 +._43: + mov r0, #0x37 + bl PlaySE +._49: + ldrb r0, [r4] + add r0, r0, #0x1 + strb r0, [r4] + b ._51 +._44: + bl IsSEPlaying + lsl r0, r0, #0x18 + cmp r0, #0 + bne ._51 @cond_branch + bl ScriptContext2_Disable + ldr r0, ._52 + bl SetMainCallback2 +._51: + pop {r4} + pop {r0} + bx r0 +._53: + .align 2, 0 +._52: + .word sub_80546F0+1 + + thumb_func_end InitWatanabeDebugMenu + + thumb_func_start InitSizeComparison +InitSizeComparison: + push {r4, lr} + add sp, sp, #0xfffffffc + bl debug_80C35DC + ldr r1, ._54 + mov r0, #0x1 + strb r0, [r1] + ldr r0, ._54 + 4 + mov r1, #0x80 + lsl r1, r1, #0x1 + mov r2, #0x20 + bl LoadPalette + ldr r3, ._54 + 8 + ldrh r2, [r3] + mov r0, #0x0 + strh r0, [r3] + ldr r4, ._54 + 12 + ldrh r0, [r4] + mov r1, #0x1 + orr r0, r0, r1 + strh r0, [r4] + strh r2, [r3] + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x10 + mov r3, #0x0 + bl BeginNormalPaletteFade + ldr r0, ._54 + 16 + bl SetVBlankCallback + ldr r0, ._54 + 20 + bl SetMainCallback2 + mov r1, #0x80 + lsl r1, r1, #0x13 + mov r2, #0x8a + lsl r2, r2, #0x5 + add r0, r2, #0 + strh r0, [r1] + ldr r0, ._54 + 24 + mov r1, #0x0 + bl CreateTask + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._54 + 28 + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x3 + add r1, r1, r2 + mov r0, #0xfc + strh r0, [r1, #0x8] + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._55: + .align 2, 0 +._54: + .word gReservedSpritePaletteCount + .word gUnknown_Debug_20389EC + .word 0x4000208 + .word 0x4000200 + .word debug_80C3758+1 + .word debug_80C370C+1 + .word debug_80C3A50+1 + .word gTasks + + thumb_func_end InitSizeComparison + + thumb_func_start debug_80C3A50 +debug_80C3A50: + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, r9 + mov r5, r8 + push {r5, r6, r7} + add sp, sp, #0xffffffd8 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r1, ._56 + lsl r2, r0, #0x2 + add r0, r2, r0 + lsl r0, r0, #0x3 + add r7, r0, r1 + ldrh r0, [r7, #0x8] + str r0, [sp, #0x4] + bl NationalPokedexNumToSpecies + mov r1, sp + strh r0, [r1, #0x8] + add r2, r0, #0 + lsl r2, r2, #0x10 + str r2, [sp, #0xc] + lsr r2, r2, #0x10 + mov r9, r2 + ldr r3, ._56 + 4 + mov r8, r3 + mov r0, #0x6 + mov r1, #0x0 + mov r2, #0x17 + mov r3, #0x9 + bl Menu_DrawStdWindowFrame + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x5 + mov r3, #0x9 + bl Menu_DrawStdWindowFrame + ldr r5, ._56 + 8 + add r0, r5, #0 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + ldr r4, ._56 + 12 + add r0, r4, #0 + mov r1, #0x1 + mov r2, #0x5 + bl Menu_PrintText + mov r0, #0x18 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x9 + bl Menu_DrawStdWindowFrame + add r0, r5, #0 + mov r1, #0x19 + mov r2, #0x1 + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0x19 + mov r2, #0x5 + bl Menu_PrintText + mov r0, #0x0 + mov r1, #0xa + mov r2, #0xb + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r0, ._56 + 16 + mov r1, #0x1 + mov r2, #0xb + bl Menu_PrintText + ldr r0, ._56 + 20 + mov r1, #0x1 + mov r2, #0xd + bl Menu_PrintText + ldr r0, ._56 + 24 + mov r1, #0x1 + mov r2, #0xf + bl Menu_PrintText + ldr r0, ._56 + 28 + mov r1, #0x1 + mov r2, #0x11 + bl Menu_PrintText + mov r0, #0xc + mov r1, #0xa + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r0, ._56 + 32 + mov r1, #0xd + mov r2, #0xb + bl Menu_PrintText + ldr r0, ._56 + 36 + mov r1, #0xd + mov r2, #0xd + bl Menu_PrintText + mov r0, #0xc + mov r1, #0x10 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + ldr r0, ._56 + 40 + mov r1, #0xd + mov r2, #0x11 + bl Menu_PrintText + ldr r0, ._56 + 44 + mov r1, #0x18 + mov r2, #0x11 + bl Menu_PrintText + mov r0, r9 + mov r1, #0x12 + mov r2, #0x11 + bl debug_80C3800 + mov r1, r8 + ldrb r0, [r1, #0x8] + mov r1, #0x98 + mov r2, #0x28 + mov r3, #0x0 + bl sub_8091A4C + mov r2, sp + strh r0, [r2, #0x10] + add r3, r0, #0 + lsl r3, r3, #0x10 + str r3, [sp, #0x18] + lsr r0, r3, #0x10 + str r0, [sp, #0x14] + lsl r4, r0, #0x4 + add r4, r4, r0 + lsl r4, r4, #0x2 + ldr r1, ._56 + 48 + add r4, r4, r1 + ldrb r1, [r4, #0x1] + mov r2, #0x4 + neg r2, r2 + mov sl, r2 + mov r0, sl + and r0, r0, r1 + mov r3, #0x1 + orr r0, r0, r3 + strb r0, [r4, #0x1] + ldrb r1, [r4, #0x3] + mov r0, #0x3f + neg r0, r0 + mov r9, r0 + and r0, r0, r1 + mov r1, #0x4 + orr r0, r0, r1 + strb r0, [r4, #0x3] + ldrb r1, [r4, #0x5] + sub r2, r2, #0x9 + mov r8, r2 + mov r0, r8 + and r0, r0, r1 + mov r3, #0xf + and r0, r0, r3 + strb r0, [r4, #0x5] + mov r0, #0x0 + bl GetSpritePaletteTagByPaletteNum + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl FreeSpritePaletteByTag + ldr r0, ._56 + 52 + ldr r1, [sp, #0x4] + lsl r5, r1, #0x3 + add r5, r5, r1 + lsl r5, r5, #0x2 + add r5, r5, r0 + ldrh r6, [r5, #0x20] + strh r6, [r4, #0x26] + ldrh r4, [r5, #0x1e] + str r4, [sp] + mov r0, #0x2 + add r1, r4, #0 + mov r2, #0x0 + mov r3, #0x0 + bl SetOamMatrix + mov r2, sp + ldrh r2, [r2, #0x14] + strh r2, [r7, #0xe] + strh r6, [r7, #0x10] + strh r4, [r7, #0x14] + ldr r0, [sp, #0x4] + mov r1, #0x58 + mov r2, #0x28 + mov r3, #0x1 + bl sub_80918EC + mov r3, sp + strh r0, [r3, #0x1c] + lsl r0, r0, #0x10 + str r0, [sp, #0x24] + lsr r1, r0, #0x10 + str r1, [sp, #0x20] + lsl r4, r1, #0x4 + add r4, r4, r1 + lsl r4, r4, #0x2 + ldr r2, ._56 + 48 + add r4, r4, r2 + ldrb r0, [r4, #0x1] + mov r3, sl + and r3, r3, r0 + mov r0, #0x1 + orr r3, r3, r0 + strb r3, [r4, #0x1] + ldrb r0, [r4, #0x3] + mov r1, r9 + and r1, r1, r0 + mov r0, #0x2 + orr r1, r1, r0 + strb r1, [r4, #0x3] + ldrb r0, [r4, #0x5] + mov r2, r8 + and r2, r2, r0 + mov r3, #0xf + and r2, r2, r3 + strb r2, [r4, #0x5] + mov r0, #0x0 + bl GetSpritePaletteTagByPaletteNum + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl FreeSpritePaletteByTag + ldrh r0, [r5, #0x1c] + mov r8, r0 + strh r0, [r4, #0x26] + ldrh r4, [r5, #0x1a] + str r4, [sp] + mov r0, #0x1 + add r1, r4, #0 + mov r2, #0x0 + mov r3, #0x0 + bl SetOamMatrix + mov r1, sp + ldrh r1, [r1, #0x20] + strh r1, [r7, #0xc] + mov r2, r8 + strh r2, [r7, #0x12] + strh r4, [r7, #0x16] + mov r3, #0x0 + strh r3, [r7, #0x18] + strh r3, [r7, #0x1a] + ldr r1, ._56 + 56 + ldr r2, ._56 + 60 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x2 + mov r0, #0x1f + strh r0, [r1] + ldr r2, ._56 + 64 + mov r3, #0x18 + ldsh r1, [r7, r3] + lsl r1, r1, #0x6 + add r0, r1, #0 + add r0, r0, #0x38 + lsl r0, r0, #0x8 + add r1, r1, #0x78 + add r0, r0, r1 + strh r0, [r2] + ldr r1, ._56 + 68 + ldr r2, ._56 + 72 + add r0, r2, #0 + strh r0, [r1] + sub r1, r1, #0x2 + ldr r3, ._56 + 76 + add r0, r3, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._56 + 80 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0xa + mov r0, #0xe1 + strh r0, [r1] + ldr r0, ._56 + 84 + mov r3, #0x0 + strh r3, [r0] + add r1, r1, #0x4 + mov r0, #0x7 + strh r0, [r1] + mov r2, #0x80 + lsl r2, r2, #0x13 + ldrh r0, [r2] + mov r3, #0xc0 + lsl r3, r3, #0x7 + add r1, r3, #0 + orr r0, r0, r1 + strh r0, [r2] + ldr r0, ._56 + 88 + str r0, [r7] + add sp, sp, #0x28 + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._57: + .align 2, 0 +._56: + .word gTasks + .word gSaveBlock2 + .word gUnknown_Debug_083F7FD6+0x4 + .word gUnknown_Debug_083F7FDE + .word gUnknown_Debug_083F7FE2 + .word gUnknown_Debug_083F7FED + .word gUnknown_Debug_083F7FF6 + .word gUnknown_Debug_083F8001 + .word gUnknown_Debug_083F800C + .word gUnknown_Debug_083F8019 + .word gUnknown_Debug_083F8022 + .word gUnknown_Debug_083F8028 + .word gSprites + .word gPokedexEntries + .word 0x4000048 + .word 0x3f1f + .word 0x4000040 + .word 0x4000044 + .word 0x848 + .word 0x31bf + .word 0x14f + .word 0x4000052 + .word debug_80C3D2C+1 + + thumb_func_end debug_80C3A50 + + thumb_func_start debug_80C3D2C +debug_80C3D2C: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + add r7, r6, #0 + ldr r4, ._60 + ldrh r1, [r4, #0x2e] + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._58 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r0, ._60 + 4 + bl SetMainCallback2 + ldr r1, ._60 + 8 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._60 + 12 + str r1, [r0] + b ._117 +._61: + .align 2, 0 +._60: + .word gMain + .word debug_80C370C+1 + .word gTasks + .word debug_80C373C+1 +._58: + mov r5, #0x1 + add r0, r5, #0 + and r0, r0, r1 + cmp r0, #0 + beq ._62 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r1, ._64 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldrh r1, [r0, #0x18] + mov r2, #0x1 + eor r1, r1, r2 + strh r1, [r0, #0x18] + b ._117 +._65: + .align 2, 0 +._64: + .word gTasks +._62: + ldrh r1, [r4, #0x30] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._66 @cond_branch + ldr r1, ._70 + lsl r2, r6, #0x2 + add r0, r2, r6 + lsl r0, r0, #0x3 + add r3, r0, r1 + mov r5, #0x18 + ldsh r0, [r3, r5] + mov r8, r1 + cmp r0, #0 + beq ._67 @cond_branch + ldrh r1, [r4, #0x2c] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._68 @cond_branch + ldrh r0, [r3, #0x14] + add r0, r0, #0x10 + b ._69 +._71: + .align 2, 0 +._70: + .word gTasks +._68: + ldrh r0, [r3, #0x14] + add r0, r0, #0x1 +._69: + strh r0, [r3, #0x14] + add r0, r2, r7 + lsl r0, r0, #0x3 + mov r2, r8 + add r1, r0, r2 + ldrh r0, [r1, #0x14] + mov r6, #0x80 + lsl r6, r6, #0x8 + cmp r0, r6 + bhi ._72 @cond_branch + b ._117 +._72: + strh r6, [r1, #0x14] + b ._117 +._67: + ldrh r1, [r4, #0x2c] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._75 @cond_branch + ldrh r0, [r3, #0x16] + add r0, r0, #0x10 + b ._76 +._75: + ldrh r0, [r3, #0x16] + add r0, r0, #0x1 +._76: + strh r0, [r3, #0x16] + add r0, r2, r7 + lsl r0, r0, #0x3 + mov r4, r8 + add r1, r0, r4 + ldrh r0, [r1, #0x16] + mov r6, #0x80 + lsl r6, r6, #0x8 + cmp r0, r6 + bhi ._77 @cond_branch + b ._117 +._77: + strh r6, [r1, #0x16] + b ._117 +._66: + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._80 @cond_branch + ldr r1, ._84 + lsl r2, r6, #0x2 + add r0, r2, r6 + lsl r0, r0, #0x3 + add r3, r0, r1 + mov r5, #0x18 + ldsh r0, [r3, r5] + mov r8, r1 + cmp r0, #0 + beq ._81 @cond_branch + ldrh r1, [r4, #0x2c] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._82 @cond_branch + ldrh r0, [r3, #0x14] + sub r0, r0, #0x10 + b ._83 +._85: + .align 2, 0 +._84: + .word gTasks +._82: + ldrh r0, [r3, #0x14] + sub r0, r0, #0x1 +._83: + strh r0, [r3, #0x14] + add r0, r2, r7 + lsl r0, r0, #0x3 + mov r2, r8 + add r1, r0, r2 + mov r4, #0x14 + ldsh r0, [r1, r4] + cmp r0, #0xff + ble ._86 @cond_branch + b ._117 +._86: + mov r0, #0x80 + lsl r0, r0, #0x1 + strh r0, [r1, #0x14] + b ._117 +._81: + ldrh r1, [r4, #0x2c] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._89 @cond_branch + ldrh r0, [r3, #0x16] + sub r0, r0, #0x10 + b ._90 +._89: + ldrh r0, [r3, #0x16] + sub r0, r0, #0x1 +._90: + strh r0, [r3, #0x16] + add r0, r2, r7 + lsl r0, r0, #0x3 + mov r5, r8 + add r1, r0, r5 + mov r2, #0x16 + ldsh r0, [r1, r2] + cmp r0, #0xff + ble ._91 @cond_branch + b ._117 +._91: + mov r0, #0x80 + lsl r0, r0, #0x1 + strh r0, [r1, #0x16] + b ._117 +._80: + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._94 @cond_branch + ldr r0, ._97 + lsl r1, r6, #0x2 + add r1, r1, r6 + lsl r1, r1, #0x3 + add r1, r1, r0 + mov r4, #0x18 + ldsh r0, [r1, r4] + cmp r0, #0 + beq ._95 @cond_branch + ldrh r0, [r1, #0x10] + sub r0, r0, #0x1 + strh r0, [r1, #0x10] + b ._117 +._98: + .align 2, 0 +._97: + .word gTasks +._95: + ldrh r0, [r1, #0x12] + sub r0, r0, #0x1 + strh r0, [r1, #0x12] + b ._117 +._94: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._100 @cond_branch + ldr r0, ._103 + lsl r1, r6, #0x2 + add r1, r1, r6 + lsl r1, r1, #0x3 + add r1, r1, r0 + mov r5, #0x18 + ldsh r0, [r1, r5] + cmp r0, #0 + beq ._101 @cond_branch + ldrh r0, [r1, #0x10] + add r0, r0, #0x1 + strh r0, [r1, #0x10] + b ._117 +._104: + .align 2, 0 +._103: + .word gTasks +._101: + ldrh r0, [r1, #0x12] + add r0, r0, #0x1 + strh r0, [r1, #0x12] + b ._117 +._100: + mov r0, #0x8 + and r0, r0, r1 + cmp r0, #0 + beq ._106 @cond_branch + ldr r2, ._109 + lsl r3, r6, #0x2 + add r0, r3, r6 + lsl r0, r0, #0x3 + add r6, r0, r2 + ldrh r4, [r6, #0x8] + mov r0, #0x8 + ldsh r1, [r6, r0] + ldr r0, ._109 + 4 + mov r8, r2 + add r2, r3, #0 + cmp r1, r0 + bgt ._107 @cond_branch + add r0, r4, #1 + strh r0, [r6, #0x8] + b ._108 +._110: + .align 2, 0 +._109: + .word gTasks + .word 0x181 +._107: + strh r5, [r6, #0x8] +._108: + add r4, r2, r7 + lsl r4, r4, #0x3 + add r4, r4, r8 + mov r2, #0xc + ldsh r1, [r4, r2] + b ._111 +._106: + mov r0, #0x4 + and r0, r0, r1 + cmp r0, #0 + beq ._112 @cond_branch + ldr r1, ._115 + lsl r2, r6, #0x2 + add r0, r2, r6 + lsl r0, r0, #0x3 + add r3, r0, r1 + ldrh r6, [r3, #0x8] + mov r4, #0x8 + ldsh r0, [r3, r4] + mov r8, r1 + cmp r0, #0x1 + ble ._113 @cond_branch + sub r0, r6, #1 + b ._114 +._116: + .align 2, 0 +._115: + .word gTasks +._113: + mov r0, #0xc1 + lsl r0, r0, #0x1 +._114: + strh r0, [r3, #0x8] + add r4, r2, r7 + lsl r4, r4, #0x3 + add r4, r4, r8 + mov r5, #0xc + ldsh r1, [r4, r5] +._111: + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + ldr r5, ._118 + add r0, r0, r5 + bl DestroySprite + mov r0, #0xe + ldsh r1, [r4, r0] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r5 + bl DestroySprite + ldr r0, ._118 + 4 + str r0, [r4] + b ._117 +._119: + .align 2, 0 +._118: + .word gSprites + .word debug_80C3A50+1 +._112: + ldr r0, ._120 + lsl r5, r7, #0x2 + add r5, r5, r7 + lsl r5, r5, #0x3 + add r5, r5, r0 + ldrh r4, [r5, #0x16] + ldrh r6, [r5, #0x12] + str r4, [sp] + mov r0, #0x1 + add r1, r4, #0 + mov r2, #0x0 + mov r3, #0x0 + bl SetOamMatrix + add r0, r4, #0 + mov r1, #0x1 + mov r2, #0x3 + mov r3, #0x4 + bl debug_80C68CC + add r0, r6, #0 + mov r1, #0x1 + mov r2, #0x7 + mov r3, #0x4 + bl debug_80C68CC + ldr r2, ._120 + 4 + mov r8, r2 + mov r4, #0xc + ldsh r1, [r5, r4] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r8 + strh r6, [r0, #0x26] + ldrh r4, [r5, #0x14] + ldrh r6, [r5, #0x10] + str r4, [sp] + mov r0, #0x2 + add r1, r4, #0 + mov r2, #0x0 + mov r3, #0x0 + bl SetOamMatrix + add r0, r4, #0 + mov r1, #0x19 + mov r2, #0x3 + mov r3, #0x4 + bl debug_80C68CC + add r0, r6, #0 + mov r1, #0x19 + mov r2, #0x7 + mov r3, #0x4 + bl debug_80C68CC + mov r0, #0xe + ldsh r1, [r5, r0] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r8 + strh r6, [r0, #0x26] + ldr r2, ._120 + 8 + mov r4, #0x18 + ldsh r1, [r5, r4] + lsl r1, r1, #0x6 + add r0, r1, #0 + add r0, r0, #0x38 + lsl r0, r0, #0x8 + add r1, r1, #0x78 + add r0, r0, r1 + strh r0, [r2] +._117: + add sp, sp, #0x4 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._121: + .align 2, 0 +._120: + .word gTasks + .word gSprites + .word 0x4000040 + + thumb_func_end debug_80C3D2C + + thumb_func_start debug_80C405C +debug_80C405C: + push {r4, r5, lr} + add r4, r0, #0 + lsl r1, r1, #0x10 + lsr r5, r1, #0x10 + mov r2, #0x0 + mov r1, #0x0 +._122: + add r0, r4, r2 + strb r1, [r0] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x9 + bls ._122 @cond_branch + add r0, r4, r2 + mov r1, #0xff + strb r1, [r0] + mov r0, #0xae + strb r0, [r4] + cmp r5, #0 + beq ._125 @cond_branch + mov r2, #0x0 + ldr r3, ._127 + mov r0, #0xb + add r1, r5, #0 + mul r1, r1, r0 + add r0, r1, r3 + ldrb r0, [r0] + cmp r0, #0xff + beq ._125 @cond_branch + add r5, r3, #0 + add r3, r1, #0 +._126: + add r1, r4, r2 + add r0, r2, r3 + add r0, r0, r5 + ldrb r0, [r0] + strb r0, [r1] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + add r0, r2, r3 + add r0, r0, r5 + ldrb r0, [r0] + cmp r0, #0xff + beq ._125 @cond_branch + cmp r2, #0x9 + bls ._126 @cond_branch +._125: + pop {r4, r5} + pop {r0} + bx r0 +._128: + .align 2, 0 +._127: + .word gSpeciesNames + + thumb_func_end debug_80C405C + + thumb_func_start debug_80C40C4 +debug_80C40C4: + push {r4, r5, r6, r7, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 + mov r5, #0x0 + mov r6, sp +._135: + cmp r7, #0 + beq ._129 @cond_branch + mov r0, #0x64 + add r1, r5, #0 + mul r1, r1, r0 + ldr r0, ._132 + add r4, r1, r0 + add r0, r4, #0 + mov r1, #0xb + bl GetMonData + cmp r0, #0 + beq ._134 @cond_branch + add r0, r4, #0 + bl CalculateMonStats + add r0, r4, #0 + mov r1, #0x3a + bl GetMonData + strh r0, [r6] + add r0, r4, #0 + mov r1, #0x39 + mov r2, sp + bl SetMonData + b ._134 +._133: + .align 2, 0 +._132: + .word gEnemyParty +._129: + mov r0, #0x64 + add r1, r5, #0 + mul r1, r1, r0 + ldr r0, ._136 + add r4, r1, r0 + add r0, r4, #0 + mov r1, #0xb + bl GetMonData + cmp r0, #0 + beq ._134 @cond_branch + add r0, r4, #0 + bl CalculateMonStats + add r0, r4, #0 + mov r1, #0x3a + bl GetMonData + strh r0, [r6] + add r0, r4, #0 + mov r1, #0x39 + mov r2, sp + bl SetMonData +._134: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x5 + bls ._135 @cond_branch + add sp, sp, #0x4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._137: + .align 2, 0 +._136: + .word gPlayerParty + + thumb_func_end debug_80C40C4 + + thumb_func_start InitBattleForDebug +InitBattleForDebug: + push {lr} + bl SavePlayerParty + ldr r1, ._138 + ldr r0, ._138 + 4 + ldrb r2, [r0, #0x8] + mov r0, #0x0 + strb r2, [r1, #0xd] + strb r0, [r1] + strb r0, [r1, #0x1] + strb r0, [r1, #0x2] + strb r0, [r1, #0x3] + strb r0, [r1, #0x4] + strb r0, [r1, #0x5] + strb r0, [r1, #0x6] + strb r0, [r1, #0x7] + strb r0, [r1, #0x8] + strb r0, [r1, #0xc] + ldr r1, ._138 + 8 + str r0, [r1] + bl ZeroPlayerPartyMons + bl ZeroEnemyPartyMons + mov r0, #0x0 + bl debug_80C4214 + ldr r0, ._138 + 12 + mov r1, #0x0 + bl CreateTask + pop {r0} + bx r0 +._139: + .align 2, 0 +._138: + .word gUnknown_Debug_2038A0C + .word gSaveBlock2 + .word byte_3005E30 + .word debug_80C47BC+1 + + thumb_func_end InitBattleForDebug + + thumb_func_start debug_80C41A8 +debug_80C41A8: + push {lr} + ldr r1, ._140 + mov r0, #0x0 + strb r0, [r1, #0x1] + strb r0, [r1, #0x2] + bl ZeroPlayerPartyMons + bl ZeroEnemyPartyMons + mov r0, #0x0 + bl debug_80C4214 + ldr r0, ._140 + 4 + mov r1, #0x0 + bl CreateTask + pop {r0} + bx r0 +._141: + .align 2, 0 +._140: + .word gUnknown_Debug_2038A0C + .word debug_80C47BC+1 + + thumb_func_end debug_80C41A8 + + thumb_func_start debug_80C41D4 +debug_80C41D4: + push {lr} + mov r0, #0x0 + bl debug_80C40C4 + mov r0, #0x0 + bl debug_80C4214 + ldr r0, ._142 + mov r1, #0x0 + bl CreateTask + pop {r0} + bx r0 +._143: + .align 2, 0 +._142: + .word debug_80C42B8+1 + + thumb_func_end debug_80C41D4 + + thumb_func_start debug_80C41F4 +debug_80C41F4: + push {lr} + mov r0, #0x1 + bl debug_80C40C4 + mov r0, #0x1 + bl debug_80C4214 + ldr r0, ._144 + mov r1, #0x0 + bl CreateTask + pop {r0} + bx r0 +._145: + .align 2, 0 +._144: + .word debug_80C42B8+1 + + thumb_func_end debug_80C41F4 + + thumb_func_start debug_80C4214 +debug_80C4214: + push {r4, r5, r6, lr} + bl debug_80C35DC + ldr r6, ._146 + mov r4, #0x0 + strh r4, [r6] + ldr r5, ._146 + 4 + strh r4, [r5] + ldr r0, ._146 + 8 + strh r4, [r0] + add r0, r0, #0x4 + strh r4, [r0] + ldr r1, ._146 + 12 + ldr r2, ._146 + 16 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x2 + mov r0, #0x31 + strh r0, [r1] + add r1, r1, #0x6 + mov r0, #0xe1 + strh r0, [r1] + ldr r0, ._146 + 20 + strh r4, [r0] + add r1, r1, #0x4 + mov r0, #0x7 + strh r0, [r1] + ldr r3, ._146 + 24 + ldrh r2, [r3] + strh r4, [r3] + ldr r4, ._146 + 28 + ldrh r0, [r4] + mov r1, #0x1 + orr r0, r0, r1 + strh r0, [r4] + strh r2, [r3] + ldr r0, ._146 + 32 + bl SetVBlankCallback + ldr r0, ._146 + 36 + bl SetMainCallback2 + mov r1, #0x80 + lsl r1, r1, #0x13 + ldr r2, ._146 + 40 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._146 + 44 + add r0, r1, #0 + strh r0, [r6] + ldr r2, ._146 + 48 + add r0, r2, #0 + strh r0, [r5] + pop {r4, r5, r6} + pop {r0} + bx r0 +._147: + .align 2, 0 +._146: + .word 0x4000040 + .word 0x4000044 + .word 0x4000042 + .word 0x4000048 + .word 0x1111 + .word 0x4000052 + .word 0x4000208 + .word 0x4000200 + .word debug_80C3758+1 + .word debug_80C370C+1 + .word 0x7140 + .word 0x1ef + .word 0x819f + + thumb_func_end debug_80C4214 + + thumb_func_start debug_80C42B8 +debug_80C42B8: + push {r4, r5, lr} + add sp, sp, #0xffffffe4 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + ldr r1, ._150 + mov r0, sp + mov r2, #0xc + bl memcpy + add r4, sp, #0xc + ldr r1, ._150 + 4 + add r0, r4, #0 + mov r2, #0xd + bl memcpy + mov r0, #0x0 + mov r1, #0x10 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r0, sp + mov r1, #0x1 + mov r2, #0x11 + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0x14 + mov r2, #0x11 + bl Menu_PrintText + bl debug_80C4694 + bl debug_80C4704 + ldr r0, ._150 + 8 + ldrb r0, [r0] + cmp r0, #0 + beq ._148 @cond_branch + ldr r0, ._150 + 12 + lsl r1, r5, #0x2 + add r1, r1, r5 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._150 + 16 + b ._149 +._151: + .align 2, 0 +._150: + .word gUnknown_Debug_083F8194 + .word gUnknown_Debug_083F81A0 + .word gUnknown_Debug_2038A0C + .word gTasks + .word debug_80C44EC+1 +._148: + ldr r0, ._152 + lsl r1, r5, #0x2 + add r1, r1, r5 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._152 + 4 +._149: + str r0, [r1] + add sp, sp, #0x1c + pop {r4, r5} + pop {r0} + bx r0 +._153: + .align 2, 0 +._152: + .word gTasks + .word debug_80C4348+1 + + thumb_func_end debug_80C42B8 + + thumb_func_start debug_80C4348 +debug_80C4348: + push {r4, lr} + add sp, sp, #0xfffffffc + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r0, ._154 + ldrb r0, [r0, #0x1] + lsl r0, r0, #0x19 + mov r1, #0xc0 + lsl r1, r1, #0x12 + add r0, r0, r1 + lsr r0, r0, #0x18 + mov r1, #0x1 + str r1, [sp] + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r1, ._154 + 4 + ldr r2, ._154 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + add r2, r2, #0x8 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._154 + 12 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._154 + 16 + str r1, [r0] + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._155: + .align 2, 0 +._154: + .word gUnknown_Debug_2038A0C + .word 0x4000042 + .word 0x177 + .word gTasks + .word debug_80C43A8+1 + + thumb_func_end debug_80C4348 + + thumb_func_start debug_80C43A8 +debug_80C43A8: + push {r4, r5, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + ldr r1, ._158 + ldrh r2, [r1, #0x2e] + mov r0, #0x1 + and r0, r0, r2 + add r3, r1, #0 + cmp r0, #0 + beq ._156 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r0, ._158 + 4 + ldrb r1, [r0, #0x1] + mov r0, #0x64 + mul r0, r0, r1 + ldr r1, ._158 + 8 + add r0, r0, r1 + ldr r1, ._158 + 12 + bl debug_sub_80A433C + add r0, r4, #0 + bl DestroyTask + b ._180 +._159: + .align 2, 0 +._158: + .word gMain + .word gUnknown_Debug_2038A0C + .word gPlayerParty + .word debug_80C41D4+1 +._156: + mov r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + beq ._160 @cond_branch + ldr r0, ._162 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._162 + 4 + str r0, [r1] + b ._180 +._163: + .align 2, 0 +._162: + .word gTasks + .word debug_80C4F48+1 +._160: + mov r0, #0x8 + and r0, r0, r2 + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + cmp r1, #0 + beq ._164 @cond_branch + bl debug_80C4774 + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._180 @cond_branch + mov r0, #0x5 + bl PlaySE + bl CalculatePlayerPartyCount + bl CalculateEnemyPartyCount + ldr r0, ._167 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._167 + 4 + str r0, [r1] + b ._180 +._168: + .align 2, 0 +._167: + .word gTasks + .word debug_80C4D14+1 +._164: + mov r0, #0x88 + lsl r0, r0, #0x1 + and r0, r0, r2 + cmp r0, #0 + beq ._169 @cond_branch + str r1, [sp] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r0, ._171 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._171 + 4 + str r0, [r1] + b ._180 +._172: + .align 2, 0 +._171: + .word gTasks + .word debug_80C44EC+1 +._169: + ldrh r1, [r3, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._174 @cond_branch + ldr r1, ._176 + ldrb r0, [r1, #0x1] + cmp r0, #0 + beq ._174 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1, #0x1] + b ._175 +._177: + .align 2, 0 +._176: + .word gUnknown_Debug_2038A0C +._174: + ldrh r1, [r3, #0x30] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._180 @cond_branch + ldr r5, ._181 + ldrb r0, [r5, #0x1] + cmp r0, #0x4 + bhi ._180 @cond_branch + add r1, r0, #0 + mov r0, #0x64 + mul r0, r0, r1 + ldr r1, ._181 + 4 + add r0, r0, r1 + mov r1, #0xb + bl GetMonData + cmp r0, #0 + beq ._180 @cond_branch + ldrb r0, [r5, #0x1] + add r0, r0, #0x1 + strb r0, [r5, #0x1] +._175: + ldr r1, ._181 + 8 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._181 + 12 + str r1, [r0] +._180: + add sp, sp, #0x4 + pop {r4, r5} + pop {r0} + bx r0 +._182: + .align 2, 0 +._181: + .word gUnknown_Debug_2038A0C + .word gPlayerParty + .word gTasks + .word debug_80C4348+1 + + thumb_func_end debug_80C43A8 + + thumb_func_start debug_80C44EC +debug_80C44EC: + push {r4, lr} + add sp, sp, #0xfffffffc + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r0, ._183 + ldrb r0, [r0, #0x2] + lsl r0, r0, #0x19 + mov r1, #0xc0 + lsl r1, r1, #0x12 + add r0, r0, r1 + lsr r0, r0, #0x18 + mov r1, #0x1 + str r1, [sp] + mov r1, #0x10 + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r1, ._183 + 4 + ldr r2, ._183 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._183 + 12 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._183 + 16 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._183 + 20 + str r1, [r0] + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._184: + .align 2, 0 +._183: + .word gUnknown_Debug_2038A0C + .word 0x4000042 + .word 0x79ef + .word 0x17f + .word gTasks + .word debug_80C4550+1 + + thumb_func_end debug_80C44EC + + thumb_func_start debug_80C4550 +debug_80C4550: + push {r4, r5, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + ldr r1, ._187 + ldrh r2, [r1, #0x2e] + mov r0, #0x1 + and r0, r0, r2 + add r3, r1, #0 + cmp r0, #0 + beq ._185 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r0, ._187 + 4 + ldrb r1, [r0, #0x2] + mov r0, #0x64 + mul r0, r0, r1 + ldr r1, ._187 + 8 + add r0, r0, r1 + ldr r1, ._187 + 12 + bl debug_sub_80A433C + add r0, r4, #0 + bl DestroyTask + b ._209 +._188: + .align 2, 0 +._187: + .word gMain + .word gUnknown_Debug_2038A0C + .word gEnemyParty + .word debug_80C41F4+1 +._185: + mov r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + beq ._189 @cond_branch + ldr r0, ._191 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._191 + 4 + str r0, [r1] + b ._209 +._192: + .align 2, 0 +._191: + .word gTasks + .word debug_80C4F48+1 +._189: + mov r0, #0x8 + and r0, r0, r2 + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + cmp r1, #0 + beq ._193 @cond_branch + bl debug_80C4774 + lsl r0, r0, #0x18 + cmp r0, #0 + beq ._209 @cond_branch + mov r0, #0x5 + bl PlaySE + bl CalculatePlayerPartyCount + bl CalculateEnemyPartyCount + ldr r0, ._196 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._196 + 4 + str r0, [r1] + b ._209 +._197: + .align 2, 0 +._196: + .word gTasks + .word debug_80C4D14+1 +._193: + mov r0, #0x88 + lsl r0, r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + beq ._198 @cond_branch + str r1, [sp] + mov r0, #0x0 + mov r1, #0x10 + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r0, ._200 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._200 + 4 + str r0, [r1] + b ._209 +._201: + .align 2, 0 +._200: + .word gTasks + .word debug_80C4348+1 +._198: + ldrh r1, [r3, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._203 @cond_branch + ldr r1, ._205 + ldrb r0, [r1, #0x2] + cmp r0, #0 + beq ._203 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1, #0x2] + b ._204 +._206: + .align 2, 0 +._205: + .word gUnknown_Debug_2038A0C +._203: + ldrh r1, [r3, #0x30] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._209 @cond_branch + ldr r5, ._210 + ldrb r0, [r5, #0x2] + cmp r0, #0x4 + bhi ._209 @cond_branch + add r1, r0, #0 + mov r0, #0x64 + mul r0, r0, r1 + ldr r1, ._210 + 4 + add r0, r0, r1 + mov r1, #0xb + bl GetMonData + cmp r0, #0 + beq ._209 @cond_branch + ldrb r0, [r5, #0x2] + add r0, r0, #0x1 + strb r0, [r5, #0x2] +._204: + ldr r1, ._210 + 8 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._210 + 12 + str r1, [r0] +._209: + add sp, sp, #0x4 + pop {r4, r5} + pop {r0} + bx r0 +._211: + .align 2, 0 +._210: + .word gUnknown_Debug_2038A0C + .word gEnemyParty + .word gTasks + .word debug_80C44EC+1 + + thumb_func_end debug_80C4550 + + thumb_func_start debug_80C4694 +debug_80C4694: + push {r4, r5, lr} + add sp, sp, #0xffffffe4 + ldr r1, ._213 + mov r0, sp + mov r2, #0xd + bl memcpy + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xe + mov r3, #0xf + bl Menu_DrawStdWindowFrame + mov r0, sp + mov r1, #0x2 + mov r2, #0x1 + bl Menu_PrintText + mov r4, #0x0 + add r5, sp, #0x10 +._212: + mov r0, #0x64 + mul r0, r0, r4 + ldr r1, ._213 + 4 + add r0, r0, r1 + mov r1, #0xb + bl GetMonData + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r5, #0 + bl debug_80C405C + lsl r2, r4, #0x19 + mov r0, #0xc0 + lsl r0, r0, #0x12 + add r2, r2, r0 + lsr r2, r2, #0x18 + add r0, r5, #0 + mov r1, #0x2 + bl Menu_PrintText + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x5 + bls ._212 @cond_branch + add sp, sp, #0x1c + pop {r4, r5} + pop {r0} + bx r0 +._214: + .align 2, 0 +._213: + .word gUnknown_Debug_083F81AD + .word gPlayerParty + + thumb_func_end debug_80C4694 + + thumb_func_start debug_80C4704 +debug_80C4704: + push {r4, r5, lr} + add sp, sp, #0xffffffe4 + ldr r1, ._216 + mov r0, sp + mov r2, #0xd + bl memcpy + mov r0, #0xf + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + mov r0, sp + mov r1, #0x11 + mov r2, #0x1 + bl Menu_PrintText + mov r4, #0x0 + add r5, sp, #0x10 +._215: + mov r0, #0x64 + mul r0, r0, r4 + ldr r1, ._216 + 4 + add r0, r0, r1 + mov r1, #0xb + bl GetMonData + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + add r0, r5, #0 + bl debug_80C405C + lsl r2, r4, #0x19 + mov r0, #0xc0 + lsl r0, r0, #0x12 + add r2, r2, r0 + lsr r2, r2, #0x18 + add r0, r5, #0 + mov r1, #0x11 + bl Menu_PrintText + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x5 + bls ._215 @cond_branch + add sp, sp, #0x1c + pop {r4, r5} + pop {r0} + bx r0 +._217: + .align 2, 0 +._216: + .word gUnknown_Debug_083F81BA + .word gEnemyParty + + thumb_func_end debug_80C4704 + + thumb_func_start debug_80C4774 +debug_80C4774: + push {r4, lr} + ldr r0, ._221 + ldrb r0, [r0, #0xc] + sub r0, r0, #0x1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0x64 + add r4, r0, #0 + mul r4, r4, r1 + ldr r0, ._221 + 4 + add r0, r4, r0 + mov r1, #0xb + bl GetMonData + cmp r0, #0 + beq ._219 @cond_branch + ldr r0, ._221 + 8 + add r0, r4, r0 + mov r1, #0xb + bl GetMonData + cmp r0, #0 + beq ._219 @cond_branch + mov r0, #0x1 + b ._220 +._222: + .align 2, 0 +._221: + .word gUnknown_Debug_2038A0C + .word gPlayerParty + .word gEnemyParty +._219: + mov r0, #0x0 +._220: + pop {r4} + pop {r1} + bx r1 + + thumb_func_end debug_80C4774 + + thumb_func_start debug_80C47BC +debug_80C47BC: + push {r4, r5, r6, r7, lr} + add sp, sp, #0xffffffc0 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 + ldr r1, ._224 + mov r0, sp + mov r2, #0xf + bl memcpy + add r4, sp, #0x10 + ldr r1, ._224 + 4 + add r0, r4, #0 + mov r2, #0xd + bl memcpy + add r6, sp, #0x20 + ldr r1, ._224 + 8 + add r0, r6, #0 + mov r2, #0xf + bl memcpy + add r5, sp, #0x30 + ldr r1, ._224 + 12 + add r0, r5, #0 + mov r2, #0x10 + bl memcpy + mov r0, #0x0 + mov r1, #0x10 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r0, sp + mov r1, #0x1 + mov r2, #0x11 + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0x14 + mov r2, #0x11 + bl Menu_PrintText + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xe + mov r3, #0xf + bl Menu_DrawStdWindowFrame + add r0, r6, #0 + mov r1, #0x2 + mov r2, #0x1 + bl Menu_PrintText + mov r4, #0x0 + ldr r6, ._224 + 16 +._223: + lsl r0, r4, #0x3 + add r0, r0, r6 + ldr r0, [r0] + lsl r2, r4, #0x19 + mov r1, #0xc0 + lsl r1, r1, #0x12 + add r2, r2, r1 + lsr r2, r2, #0x18 + mov r1, #0x2 + bl Menu_PrintText + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x4 + bls ._223 @cond_branch + mov r0, #0xf + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + add r0, r5, #0 + mov r1, #0x11 + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._224 + 20 + ldrb r0, [r0, #0x4] + bl debug_80C4C44 + ldr r1, ._224 + 24 + lsl r0, r7, #0x2 + add r0, r0, r7 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._224 + 28 + str r1, [r0] + add sp, sp, #0x40 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._225: + .align 2, 0 +._224: + .word gUnknown_Debug_083F81C7 + .word gUnknown_Debug_083F81A0 + .word gUnknown_Debug_083F81D6 + .word gUnknown_Debug_083F81E5 + .word gUnknown_Debug_083F8068 + .word gUnknown_Debug_2038A0C + .word gTasks + .word debug_80C48A0+1 + + thumb_func_end debug_80C47BC + + thumb_func_start debug_80C48A0 +debug_80C48A0: + push {r4, lr} + add sp, sp, #0xfffffffc + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r0, ._226 + ldrb r0, [r0, #0x3] + lsl r0, r0, #0x19 + mov r1, #0xc0 + lsl r1, r1, #0x12 + add r0, r0, r1 + lsr r0, r0, #0x18 + mov r1, #0x1 + str r1, [sp] + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r1, ._226 + 4 + ldr r2, ._226 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + add r2, r2, #0x8 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._226 + 12 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._226 + 16 + str r1, [r0] + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._227: + .align 2, 0 +._226: + .word gUnknown_Debug_2038A0C + .word 0x4000042 + .word 0x177 + .word gTasks + .word debug_80C4900+1 + + thumb_func_end debug_80C48A0 + + thumb_func_start debug_80C4900 +debug_80C4900: + push {r4, r5, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + ldr r1, ._230 + ldrh r2, [r1, #0x2e] + mov r0, #0x2 + and r0, r0, r2 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + add r3, r1, #0 + cmp r4, #0 + beq ._228 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + mov r4, #0x0 + str r4, [sp] + mov r1, #0x0 + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r0, ._230 + 4 + bl SetMainCallback2 + bl LoadPlayerParty + ldr r1, ._230 + 8 + ldr r0, ._230 + 12 + ldrb r0, [r0, #0xd] + strb r0, [r1, #0x8] + ldr r0, ._230 + 16 + mov r1, #0x0 + strh r4, [r0] + ldr r0, ._230 + 20 + strb r1, [r0] + ldr r1, ._230 + 24 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._230 + 28 + b ._229 +._231: + .align 2, 0 +._230: + .word gMain + .word debug_80C370C+1 + .word gSaveBlock2 + .word gUnknown_Debug_2038A0C + .word gBattleTypeFlags + .word gUnknown_02023A14_50 + .word gTasks + .word debug_80C373C+1 +._228: + mov r0, #0x8 + and r0, r0, r2 + cmp r0, #0 + bne ._232 @cond_branch + mov r0, #0x1 + and r0, r0, r2 + cmp r0, #0 + beq ._233 @cond_branch +._232: + mov r0, #0x5 + bl PlaySE + ldr r1, ._236 + ldr r3, ._236 + 4 + ldr r2, ._236 + 8 + ldrb r0, [r2, #0x3] + lsl r0, r0, #0x3 + add r0, r0, r3 + ldrb r0, [r0, #0x4] + strh r0, [r1] + ldr r1, ._236 + 12 + mov r0, #0x8 + strb r0, [r1] + ldrb r0, [r2, #0x3] + lsl r0, r0, #0x3 + add r0, r0, r3 + ldrb r0, [r0, #0x5] + strb r0, [r2, #0xc] + ldrb r0, [r2, #0x3] + sub r0, r0, #0x1 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x1 + bhi ._234 @cond_branch + str r4, [sp] + mov r0, #0x0 + mov r1, #0x1 + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r0, ._236 + 16 + lsl r1, r5, #0x2 + add r1, r1, r5 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._236 + 20 + str r0, [r1] + b ._247 +._237: + .align 2, 0 +._236: + .word gBattleTypeFlags + .word gUnknown_Debug_083F8068 + .word gUnknown_Debug_2038A0C + .word gUnknown_02023A14_50 + .word gTasks + .word debug_80C4A60+1 +._234: + ldr r0, ._239 + lsl r1, r5, #0x2 + add r1, r1, r5 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._239 + 4 + str r0, [r1] + b ._247 +._240: + .align 2, 0 +._239: + .word gTasks + .word debug_80C4F48+1 +._233: + ldrh r1, [r3, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._242 @cond_branch + ldr r1, ._244 + ldrb r0, [r1, #0x3] + cmp r0, #0 + beq ._242 @cond_branch + sub r0, r0, #0x1 + b ._243 +._245: + .align 2, 0 +._244: + .word gUnknown_Debug_2038A0C +._242: + ldrh r1, [r3, #0x30] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._247 @cond_branch + ldr r1, ._248 + ldrb r0, [r1, #0x3] + cmp r0, #0x1 + bhi ._247 @cond_branch + add r0, r0, #0x1 +._243: + strb r0, [r1, #0x3] + ldr r1, ._248 + 4 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._248 + 8 +._229: + str r1, [r0] +._247: + add sp, sp, #0x4 + pop {r4, r5} + pop {r0} + bx r0 +._249: + .align 2, 0 +._248: + .word gUnknown_Debug_2038A0C + .word gTasks + .word debug_80C48A0+1 + + thumb_func_end debug_80C4900 + + thumb_func_start debug_80C4A60 +debug_80C4A60: + push {r4, lr} + add sp, sp, #0xfffffffc + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r0, ._250 + ldrb r0, [r0, #0x5] + lsl r0, r0, #0x19 + mov r1, #0xc0 + lsl r1, r1, #0x12 + add r0, r0, r1 + lsr r0, r0, #0x18 + mov r1, #0x1 + str r1, [sp] + mov r1, #0x10 + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r1, ._250 + 4 + ldr r2, ._250 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._250 + 12 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._250 + 16 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._250 + 20 + str r1, [r0] + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._251: + .align 2, 0 +._250: + .word gUnknown_Debug_2038A0C + .word 0x4000042 + .word 0x79ef + .word 0x17f + .word gTasks + .word debug_80C4AC4+1 + + thumb_func_end debug_80C4A60 + + thumb_func_start debug_80C4AC4 +debug_80C4AC4: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + ldr r7, ._255 + ldrb r0, [r7, #0x4] + mov ip, r0 + ldrb r5, [r7, #0x5] + mov r1, ip + add r0, r1, r5 + lsl r0, r0, #0x18 + lsr r1, r0, #0x18 + ldr r2, ._255 + 4 + mov r8, r2 + ldrh r2, [r2, #0x2e] + mov r3, #0x1 + and r3, r3, r2 + add r4, r7, #0 + cmp r3, #0 + beq ._252 @cond_branch + ldr r0, ._255 + 8 + lsl r1, r1, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r1, [r1] + ldr r3, ._255 + 12 + ldr r2, [r3] + add r0, r2, #0 + and r0, r0, r1 + cmp r0, #0 + beq ._253 @cond_branch + ldr r0, ._255 + 16 + eor r1, r1, r0 + and r2, r2, r1 + b ._254 +._256: + .align 2, 0 +._255: + .word gUnknown_Debug_2038A0C + .word gMain + .word gUnknown_Debug_083F80D8 + .word byte_3005E30 + .word 0xffff +._253: + orr r2, r2, r1 +._254: + str r2, [r3] + ldrb r0, [r4, #0x4] + bl debug_80C4C44 + ldr r1, ._258 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._258 + 4 + str r1, [r0] + b ._274 +._259: + .align 2, 0 +._258: + .word gTasks + .word debug_80C4A60+1 +._252: + mov r0, #0x2 + and r0, r0, r2 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + cmp r4, #0 + beq ._260 @cond_branch + str r3, [sp] + mov r0, #0x0 + mov r1, #0x10 + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r0, ._262 + lsl r1, r6, #0x2 + add r1, r1, r6 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._262 + 4 + b ._261 +._263: + .align 2, 0 +._262: + .word gTasks + .word debug_80C48A0+1 +._260: + mov r0, #0x8 + and r0, r0, r2 + cmp r0, #0 + beq ._264 @cond_branch + mov r0, #0x5 + bl PlaySE + ldr r1, ._266 + mov r2, #0x80 + lsl r2, r2, #0x3 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._266 + 4 + ldrb r2, [r1, #0x1] + mov r0, #0x11 + neg r0, r0 + and r0, r0, r2 + strb r0, [r1, #0x1] + mov r0, #0xac + strb r0, [r1, #0x2] + mov r0, #0xff + strb r0, [r1, #0x3] + strb r4, [r1, #0x9] + strb r4, [r1, #0xa] + strb r4, [r1, #0xb] + strb r4, [r1, #0xc] + ldr r1, ._266 + 8 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._266 + 12 + str r1, [r0] + b ._274 +._267: + .align 2, 0 +._266: + .word gTrainerBattleOpponent + .word +0x2017000 + .word gTasks + .word debug_80C4F48+1 +._264: + mov r0, r8 + ldrh r1, [r0, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._268 @cond_branch + lsl r0, r5, #0x18 + cmp r0, #0 + beq ._269 @cond_branch + sub r0, r5, #1 + strb r0, [r7, #0x5] + b ._277 +._269: + mov r1, ip + lsl r0, r1, #0x18 + cmp r0, #0 + beq ._277 @cond_branch + mov r0, ip + sub r0, r0, #0x1 + b ._272 +._268: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._274 @cond_branch + lsl r0, r5, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x8 + bhi ._274 @cond_branch + cmp r0, #0x4 + bhi ._275 @cond_branch + add r0, r5, #1 + strb r0, [r7, #0x5] + b ._277 +._275: + mov r2, ip + lsl r0, r2, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x3 + bhi ._277 @cond_branch + mov r0, ip + add r0, r0, #0x1 +._272: + strb r0, [r7, #0x4] + ldrb r0, [r7, #0x4] + bl debug_80C4C44 +._277: + ldr r0, ._278 + lsl r1, r6, #0x2 + add r1, r1, r6 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._278 + 4 +._261: + str r0, [r1] +._274: + add sp, sp, #0x4 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._279: + .align 2, 0 +._278: + .word gTasks + .word debug_80C4A60+1 + + thumb_func_end debug_80C4AC4 + + thumb_func_start debug_80C4C44 +debug_80C4C44: + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, r9 + mov r5, r8 + push {r5, r6, r7} + add sp, sp, #0xfffffff0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov sl, r0 + mov r2, #0x0 + mov r5, sp +._290: + mov r0, sl + add r6, r2, r0 + add r4, r6, #0 + add r1, r2, #1 + mov r8, r1 + cmp r4, #0x9 + bgt ._280 @cond_branch + mov r3, #0x0 + ldr r1, ._288 + lsl r0, r4, #0x3 + add r0, r0, r1 + ldr r0, [r0] + ldrb r0, [r0] + ldr r7, ._288 + 4 + mov r9, r7 + lsl r2, r2, #0x1 + mov ip, r2 + cmp r0, #0xff + beq ._282 @cond_branch + add r7, r1, #0 +._283: + add r0, r3, #3 + mov r1, sp + add r2, r1, r0 + lsl r1, r6, #0x3 + add r1, r1, r7 + ldr r0, [r1] + add r0, r0, r3 + ldrb r0, [r0] + strb r0, [r2] + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + ldr r0, [r1] + add r0, r0, r3 + ldrb r0, [r0] + cmp r0, #0xff + beq ._282 @cond_branch + cmp r3, #0xb + bls ._283 @cond_branch +._282: + cmp r3, #0xb + bhi ._284 @cond_branch + mov r1, #0x0 +._285: + add r0, r3, #3 + add r0, r0, sp + strb r1, [r0] + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + cmp r3, #0xb + bls ._285 @cond_branch +._284: + mov r0, #0xff + strb r0, [r5, #0xe] + mov r0, #0xfc + strb r0, [r5] + mov r2, #0x1 + strb r2, [r5, #0x1] + add r1, r2, #0 + LSL r1, r4 + mov r3, r9 + ldr r0, [r3] + and r0, r0, r1 + cmp r0, #0 + beq ._286 @cond_branch + mov r0, #0x3 + strb r0, [r5, #0x2] + b ._287 +._289: + .align 2, 0 +._288: + .word gUnknown_Debug_083F80D8 + .word byte_3005E30 +._286: + strb r2, [r5, #0x2] +._287: + mov r2, ip + add r2, r2, #0x3 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + mov r0, sp + mov r1, #0x11 + bl Menu_PrintText +._280: + mov r7, r8 + lsl r0, r7, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x5 + bls ._290 @cond_branch + add sp, sp, #0x10 + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 + + thumb_func_end debug_80C4C44 + + thumb_func_start debug_80C4D14 +debug_80C4D14: + push {r4, r5, r6, lr} + add sp, sp, #0xffffffd0 + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r1, ._291 + mov r0, sp + mov r2, #0xf + bl memcpy + add r5, sp, #0x10 + ldr r1, ._291 + 4 + add r0, r5, #0 + mov r2, #0xd + bl memcpy + add r6, sp, #0x20 + ldr r1, ._291 + 8 + add r0, r6, #0 + mov r2, #0xf + bl memcpy + mov r0, #0x0 + mov r1, #0x10 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r0, sp + mov r1, #0x1 + mov r2, #0x11 + bl Menu_PrintText + add r0, r5, #0 + mov r1, #0x14 + mov r2, #0x11 + bl Menu_PrintText + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xe + mov r3, #0xf + bl Menu_DrawStdWindowFrame + add r0, r6, #0 + mov r1, #0x2 + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._291 + 12 + ldrb r0, [r0, #0x6] + bl debug_80C4F00 + mov r0, #0xf + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r1, ._291 + 16 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._291 + 20 + str r1, [r0] + add sp, sp, #0x30 + pop {r4, r5, r6} + pop {r0} + bx r0 +._292: + .align 2, 0 +._291: + .word gUnknown_Debug_083F81C7 + .word gUnknown_Debug_083F81F5 + .word gUnknown_Debug_083F8202 + .word gUnknown_Debug_2038A0C + .word gTasks + .word debug_80C4DB8+1 + + thumb_func_end debug_80C4D14 + + thumb_func_start debug_80C4DB8 +debug_80C4DB8: + push {r4, lr} + add sp, sp, #0xfffffffc + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r0, ._293 + ldrb r0, [r0, #0x7] + lsl r0, r0, #0x19 + mov r1, #0xc0 + lsl r1, r1, #0x12 + add r0, r0, r1 + lsr r0, r0, #0x18 + mov r1, #0x1 + str r1, [sp] + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r1, ._293 + 4 + ldr r2, ._293 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + add r2, r2, #0x8 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._293 + 12 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._293 + 16 + str r1, [r0] + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._294: + .align 2, 0 +._293: + .word gUnknown_Debug_2038A0C + .word 0x4000042 + .word 0x177 + .word gTasks + .word debug_80C4E18+1 + + thumb_func_end debug_80C4DB8 + + thumb_func_start debug_80C4E18 +debug_80C4E18: + push {r4, r5, r6, r7, lr} + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + ldr r5, ._297 + ldrb r3, [r5, #0x6] + ldrb r2, [r5, #0x7] + add r0, r3, r2 + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + ldr r7, ._297 + 4 + ldrh r1, [r7, #0x2e] + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._295 @cond_branch + ldr r0, ._297 + 8 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._297 + 12 + b ._296 +._298: + .align 2, 0 +._297: + .word gUnknown_Debug_2038A0C + .word gMain + .word gTasks + .word debug_80C42B8+1 +._295: + mov r0, #0x8 + and r0, r0, r1 + cmp r0, #0 + bne ._299 @cond_branch + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._300 @cond_branch +._299: + mov r0, #0x5 + bl PlaySE + ldr r2, ._302 + ldr r1, ._302 + 4 + lsl r0, r6, #0x3 + add r0, r0, r1 + ldrb r0, [r0, #0x4] + strb r0, [r2] + ldr r1, ._302 + 8 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._302 + 12 + str r1, [r0] + b ._310 +._303: + .align 2, 0 +._302: + .word gBattleTerrain + .word gUnknown_Debug_083F814C + .word gTasks + .word debug_80C5158+1 +._300: + ldrh r1, [r7, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._304 @cond_branch + lsl r0, r2, #0x18 + cmp r0, #0 + beq ._305 @cond_branch + sub r0, r2, #1 + strb r0, [r5, #0x7] + b ._313 +._305: + lsl r0, r3, #0x18 + cmp r0, #0 + beq ._313 @cond_branch + sub r0, r3, #1 + b ._308 +._304: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._310 @cond_branch + lsl r0, r2, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x7 + bhi ._310 @cond_branch + cmp r0, #0x4 + bhi ._311 @cond_branch + add r0, r2, #1 + strb r0, [r5, #0x7] + b ._313 +._311: + lsl r0, r3, #0x18 + lsr r0, r0, #0x18 + cmp r0, #0x2 + bhi ._313 @cond_branch + add r0, r3, #1 +._308: + strb r0, [r5, #0x6] + ldrb r0, [r5, #0x6] + bl debug_80C4F00 +._313: + ldr r0, ._314 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._314 + 4 +._296: + str r0, [r1] +._310: + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._315: + .align 2, 0 +._314: + .word gTasks + .word debug_80C4DB8+1 + + thumb_func_end debug_80C4E18 + + thumb_func_start debug_80C4F00 +debug_80C4F00: + push {r4, r5, r6, lr} + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + mov r0, #0x1 + mov r1, #0x3 + mov r2, #0xd + mov r3, #0xe + bl Menu_BlankWindowRect + mov r4, #0x0 + ldr r6, ._318 +._317: + cmp r4, #0x8 + bhi ._316 @cond_branch + add r0, r4, r5 + lsl r0, r0, #0x3 + add r0, r0, r6 + ldr r0, [r0] + lsl r2, r4, #0x19 + mov r1, #0xc0 + lsl r1, r1, #0x12 + add r2, r2, r1 + lsr r2, r2, #0x18 + mov r1, #0x2 + bl Menu_PrintText +._316: + add r0, r4, #1 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + cmp r4, #0x5 + bls ._317 @cond_branch + pop {r4, r5, r6} + pop {r0} + bx r0 +._319: + .align 2, 0 +._318: + .word gUnknown_Debug_083F814C + + thumb_func_end debug_80C4F00 + + thumb_func_start debug_80C4F48 +debug_80C4F48: + push {r4, r5, r6, lr} + mov r6, r9 + mov r5, r8 + push {r5, r6} + add sp, sp, #0xffffffc4 + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r1, ._320 + mov r0, sp + mov r2, #0x11 + bl memcpy + add r6, sp, #0x14 + ldr r1, ._320 + 4 + add r0, r6, #0 + mov r2, #0xd + bl memcpy + add r5, sp, #0x24 + ldr r1, ._320 + 8 + add r0, r5, #0 + mov r2, #0xd + bl memcpy + add r0, sp, #0x34 + mov r9, r0 + ldr r1, ._320 + 12 + mov r2, #0x4 + bl memcpy + add r0, sp, #0x38 + mov r8, r0 + ldr r1, ._320 + 16 + mov r2, #0x4 + bl memcpy + mov r0, #0x0 + mov r1, #0x10 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r0, sp + mov r1, #0x1 + mov r2, #0x11 + bl Menu_PrintText + add r0, r6, #0 + mov r1, #0x14 + mov r2, #0x11 + bl Menu_PrintText + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0xe + mov r3, #0xf + bl Menu_DrawStdWindowFrame + add r0, r5, #0 + mov r1, #0x2 + mov r2, #0x1 + bl Menu_PrintText + mov r0, #0x1 + mov r1, #0x3 + mov r2, #0xd + mov r3, #0xe + bl Menu_BlankWindowRect + add r0, r5, #0 + mov r1, #0x2 + mov r2, #0x1 + bl Menu_PrintText + mov r0, r9 + mov r1, #0x2 + mov r2, #0x3 + bl Menu_PrintText + mov r0, r8 + mov r1, #0x2 + mov r2, #0x5 + bl Menu_PrintText + mov r0, #0xf + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0xf + bl Menu_DrawStdWindowFrame + ldr r1, ._320 + 20 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._320 + 24 + str r1, [r0] + add sp, sp, #0x3c + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6} + pop {r0} + bx r0 +._321: + .align 2, 0 +._320: + .word gUnknown_Debug_083F8211 + .word gUnknown_Debug_083F81A0 + .word gUnknown_Debug_083F8222 + .word gUnknown_Debug_083F822F + .word gUnknown_Debug_083F8233 + .word gTasks + .word debug_80C5038+1 + + thumb_func_end debug_80C4F48 + + thumb_func_start debug_80C5038 +debug_80C5038: + push {r4, lr} + add sp, sp, #0xfffffffc + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + ldr r0, ._322 + ldrb r0, [r0, #0x8] + lsl r0, r0, #0x19 + mov r1, #0xc0 + lsl r1, r1, #0x12 + add r0, r0, r1 + lsr r0, r0, #0x18 + mov r1, #0x1 + str r1, [sp] + mov r2, #0x1 + mov r3, #0xe + bl debug_80C38E4 + ldr r1, ._322 + 4 + ldr r2, ._322 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + add r2, r2, #0x8 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._322 + 12 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._322 + 16 + str r1, [r0] + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._323: + .align 2, 0 +._322: + .word gUnknown_Debug_2038A0C + .word 0x4000042 + .word 0x177 + .word gTasks + .word debug_80C5098+1 + + thumb_func_end debug_80C5038 + + thumb_func_start debug_80C5098 +debug_80C5098: + push {r4, lr} + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + ldr r1, ._326 + ldrh r2, [r1, #0x2e] + mov r0, #0x2 + and r0, r0, r2 + add r3, r1, #0 + cmp r0, #0 + beq ._324 @cond_branch + ldr r0, ._326 + 4 + lsl r1, r4, #0x2 + add r1, r1, r4 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._326 + 8 + str r0, [r1] + b ._339 +._327: + .align 2, 0 +._326: + .word gMain + .word gTasks + .word debug_80C47BC+1 +._324: + mov r0, #0x8 + and r0, r0, r2 + cmp r0, #0 + bne ._328 @cond_branch + mov r0, #0x1 + and r0, r0, r2 + cmp r0, #0 + beq ._329 @cond_branch +._328: + mov r0, #0x5 + bl PlaySE + ldr r1, ._331 + ldr r0, ._331 + 4 + ldrb r0, [r0, #0x8] + strb r0, [r1, #0x8] + ldr r1, ._331 + 8 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._331 + 12 + b ._330 +._332: + .align 2, 0 +._331: + .word gSaveBlock2 + .word gUnknown_Debug_2038A0C + .word gTasks + .word debug_80C42B8+1 +._329: + ldrh r1, [r3, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._334 @cond_branch + ldr r1, ._336 + ldrb r0, [r1, #0x8] + cmp r0, #0 + beq ._334 @cond_branch + sub r0, r0, #0x1 + b ._335 +._337: + .align 2, 0 +._336: + .word gUnknown_Debug_2038A0C +._334: + ldrh r1, [r3, #0x30] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._339 @cond_branch + ldr r1, ._340 + ldrb r0, [r1, #0x8] + cmp r0, #0 + bne ._339 @cond_branch + add r0, r0, #0x1 +._335: + strb r0, [r1, #0x8] + ldr r1, ._340 + 4 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._340 + 8 +._330: + str r1, [r0] +._339: + pop {r4} + pop {r0} + bx r0 +._341: + .align 2, 0 +._340: + .word gUnknown_Debug_2038A0C + .word gTasks + .word debug_80C5038+1 + + thumb_func_end debug_80C5098 + + thumb_func_start debug_80C5158 +debug_80C5158: + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._342 + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x3 + add r1, r1, r2 + ldr r0, ._342 + 4 + str r0, [r1] + bx lr +._343: + .align 2, 0 +._342: + .word gTasks + .word debug_80C5174+1 + + thumb_func_end debug_80C5158 + + thumb_func_start debug_80C5174 +debug_80C5174: + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._344 + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x3 + add r1, r1, r2 + ldr r0, ._344 + 4 + str r0, [r1] + bx lr +._345: + .align 2, 0 +._344: + .word gTasks + .word debug_80C5190+1 + + thumb_func_end debug_80C5174 + + thumb_func_start debug_80C5190 +debug_80C5190: + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._346 + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x3 + add r1, r1, r2 + ldr r0, ._346 + 4 + str r0, [r1] + bx lr +._347: + .align 2, 0 +._346: + .word gTasks + .word debug_80C51AC+1 + + thumb_func_end debug_80C5190 + + thumb_func_start debug_80C51AC +debug_80C51AC: + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._348 + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x3 + add r1, r1, r2 + ldr r0, ._348 + 4 + str r0, [r1] + bx lr +._349: + .align 2, 0 +._348: + .word gTasks + .word debug_80C51C8+1 + + thumb_func_end debug_80C51AC + + thumb_func_start debug_80C51C8 +debug_80C51C8: + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._350 + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x3 + add r1, r1, r2 + ldr r0, ._350 + 4 + str r0, [r1] + bx lr +._351: + .align 2, 0 +._350: + .word gTasks + .word debug_80C51E4+1 + + thumb_func_end debug_80C51C8 + + thumb_func_start debug_80C51E4 +debug_80C51E4: + push {lr} + bl sub_80408BC + ldr r0, ._352 + ldr r1, ._352 + 4 + str r1, [r0, #0x8] + ldr r0, ._352 + 8 + bl SetMainCallback2 + pop {r0} + bx r0 +._353: + .align 2, 0 +._352: + .word gMain + .word debug_80C41A8+1 + .word unref_sub_800D684+1 + + thumb_func_end debug_80C51E4 + + thumb_func_start debug_80C5208 +debug_80C5208: + push {r4, r5, r6, lr} + ldr r1, ._355 + ldr r0, ._355 + 4 + str r0, [r1] + mov r3, #0x0 + add r6, r1, #0 + ldr r4, ._355 + 8 + add r5, r6, #0 + mov r2, #0x0 +._354: + ldr r0, [r5] + lsl r1, r3, #0x2 + add r0, r0, #0x64 + add r0, r0, r1 + str r2, [r0] + add r0, r3, #1 + lsl r0, r0, #0x10 + lsr r3, r0, #0x10 + cmp r3, #0x3f + bls ._354 @cond_branch + ldr r2, [r6] + mov r0, #0xfc + str r0, [r2, #0x64] + ldrb r1, [r4, #0xa] + ldrb r0, [r4, #0xb] + lsl r0, r0, #0x8 + orr r1, r1, r0 + ldrb r0, [r4, #0xc] + lsl r0, r0, #0x10 + orr r1, r1, r0 + ldrb r0, [r4, #0xd] + lsl r0, r0, #0x18 + orr r1, r1, r0 + str r1, [r2, #0x70] + bl Random + add r4, r0, #0 + bl Random + ldr r1, [r6] + lsl r4, r4, #0x10 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + orr r4, r4, r0 + str r4, [r1, #0x74] + mov r0, #0x1 + str r0, [r1, #0x68] + str r0, [r1, #0x6c] + bl debug_80C5C94 + pop {r4, r5, r6} + pop {r0} + bx r0 +._356: + .align 2, 0 +._355: + .word gUnknown_Debug_2038A1C + .word +0x2018000 + .word gSaveBlock2 + + thumb_func_end debug_80C5208 + + thumb_func_start debug_80C527C +debug_80C527C: + push {r4, r5, r6, r7, lr} + add r6, r0, #0 + mov r5, #0x0 + ldr r7, ._359 +._361: + mov r0, #0x64 + add r1, r5, #0 + mul r1, r1, r0 + ldr r0, ._359 + 4 + add r4, r1, r0 + add r0, r4, #0 + mov r1, #0xb + mov r2, #0x0 + bl GetMonData + cmp r0, #0 + bne ._357 @cond_branch + add r0, r4, #0 + add r1, r6, #0 + mov r2, #0x64 + bl memcpy + add r0, r5, #1 + strb r0, [r7] + mov r0, #0x0 + b ._358 +._360: + .align 2, 0 +._359: + .word gPlayerPartyCount + .word gPlayerParty +._357: + add r0, r5, #1 + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + cmp r5, #0x5 + bls ._361 @cond_branch + ldr r0, ._362 + ldr r0, [r0] + bl SendMonToPC + mov r0, #0x1 +._358: + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._363: + .align 2, 0 +._362: + .word gUnknown_Debug_2038A1C + + thumb_func_end debug_80C527C + + thumb_func_start InitCreatePokemon +InitCreatePokemon: + push {r4, r5, lr} + add sp, sp, #0xffffffd4 + ldr r1, ._364 + add r0, sp, #0x4 + mov r2, #0x25 + bl memcpy + bl debug_80C35DC + mov r0, #0x1 + neg r0, r0 + mov r4, #0x0 + str r4, [sp] + mov r1, #0x0 + mov r2, #0x10 + mov r3, #0x0 + bl BeginNormalPaletteFade + ldr r0, ._364 + 4 + mov r5, #0x0 + strh r4, [r0] + add r0, r0, #0x2 + strh r4, [r0] + add r0, r0, #0x2 + strh r4, [r0] + ldr r3, ._364 + 8 + ldrh r2, [r3] + strh r4, [r3] + ldr r4, ._364 + 12 + ldrh r0, [r4] + mov r1, #0x1 + orr r0, r0, r1 + strh r0, [r4] + strh r2, [r3] + ldr r2, ._364 + 16 + ldrh r0, [r2] + mov r1, #0x8 + orr r0, r0, r1 + strh r0, [r2] + ldr r0, ._364 + 20 + bl SetVBlankCallback + ldr r0, ._364 + 24 + bl SetMainCallback2 + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x3 + bl Menu_DrawStdWindowFrame + add r0, sp, #0x4 + mov r1, #0x1 + mov r2, #0x1 + bl Menu_PrintText + mov r1, #0x80 + lsl r1, r1, #0x13 + mov r2, #0x8a + lsl r2, r2, #0x5 + add r0, r2, #0 + strh r0, [r1] + ldr r0, ._364 + 28 + mov r1, #0x0 + bl CreateTask + bl debug_80C5208 + ldr r1, ._364 + 32 + ldr r0, [r1] + mov r2, #0xb4 + lsl r2, r2, #0x1 + add r0, r0, r2 + strb r5, [r0] + ldr r0, [r1] + ldr r1, ._364 + 36 + add r0, r0, r1 + strb r5, [r0] + add sp, sp, #0x2c + pop {r4, r5} + pop {r0} + bx r0 +._365: + .align 2, 0 +._364: + .word gUnknown_Debug_083F8733 + .word 0x4000050 + .word 0x4000208 + .word 0x4000200 + .word 0x4000004 + .word debug_80C3758+1 + .word debug_80C370C+1 + .word debug_80C53A4+1 + .word gUnknown_Debug_2038A1C + .word 0x169 + + thumb_func_end InitCreatePokemon + + thumb_func_start debug_80C53A4 +debug_80C53A4: + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + ldr r2, ._366 + lsl r1, r0, #0x2 + add r1, r1, r0 + lsl r1, r1, #0x3 + add r1, r1, r2 + ldr r0, ._366 + 4 + str r0, [r1] + bx lr +._367: + .align 2, 0 +._366: + .word gTasks + .word debug_80C53C0+1 + + thumb_func_end debug_80C53A4 + + thumb_func_start debug_80C53C0 +debug_80C53C0: + push {r4, lr} + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + bl debug_80C6384 + mov r0, #0x0 + bl debug_80C627C + ldr r1, ._368 + lsl r0, r4, #0x2 + add r0, r0, r4 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._368 + 4 + str r1, [r0] + pop {r4} + pop {r0} + bx r0 +._369: + .align 2, 0 +._368: + .word gTasks + .word debug_80C53F0+1 + + thumb_func_end debug_80C53C0 + + thumb_func_start debug_80C53F0 +debug_80C53F0: + push {r4, r5, r6, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r5, r0, #0x18 + ldr r0, ._372 + ldrh r1, [r0, #0x2e] + mov r2, #0x1 + and r2, r2, r1 + add r4, r0, #0 + cmp r2, #0 + beq ._370 @cond_branch + ldr r0, ._372 + 4 + ldr r3, [r0] + mov r0, #0xb2 + lsl r0, r0, #0x1 + add r2, r3, r0 + ldr r1, ._372 + 8 + mov r4, #0xb4 + lsl r4, r4, #0x1 + add r0, r3, r4 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r6, ._372 + 12 + add r1, r3, r6 + ldrb r1, [r1] + ldr r0, [r0] + add r0, r0, r1 + ldrb r1, [r0] + lsl r1, r1, #0x2 + add r0, r3, #0 + add r0, r0, #0x64 + add r0, r0, r1 + ldr r0, [r0] + str r0, [r2] + mov r0, #0xb5 + lsl r0, r0, #0x1 + add r1, r3, r0 + mov r0, #0x0 + strb r0, [r1] + bl debug_80C643C + ldr r1, ._372 + 16 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._372 + 20 + b ._375 +._373: + .align 2, 0 +._372: + .word gMain + .word gUnknown_Debug_2038A1C + .word gUnknown_Debug_083F8698 + .word 0x169 + .word gTasks + .word debug_80C55E4+1 +._370: + mov r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._374 @cond_branch + mov r0, #0x1 + neg r0, r0 + str r2, [sp] + mov r1, #0x0 + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r0, ._376 + bl SetMainCallback2 + ldr r1, ._376 + 4 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._376 + 8 + b ._375 +._377: + .align 2, 0 +._376: + .word debug_80C370C+1 + .word gTasks + .word debug_80C373C+1 +._374: + mov r0, #0x8 + and r0, r0, r1 + cmp r0, #0 + beq ._378 @cond_branch + mov r0, #0x5 + bl PlaySE + bl debug_80C5FFC + ldr r0, ._381 + ldr r0, [r0] + bl debug_80C527C + add r4, r0, #0 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + mov r0, #0x3 + mov r1, #0x8 + mov r2, #0x1a + mov r3, #0xb + bl Menu_DrawStdWindowFrame + cmp r4, #0 + beq ._379 @cond_branch + ldr r0, ._381 + 4 + mov r1, #0x4 + mov r2, #0x9 + bl Menu_PrintText + b ._380 +._382: + .align 2, 0 +._381: + .word gUnknown_Debug_2038A1C + .word gUnknown_Debug_083F872A +._379: + ldr r0, ._384 + mov r1, #0x4 + mov r2, #0x9 + bl Menu_PrintText +._380: + ldr r0, ._384 + 4 + lsl r1, r5, #0x2 + add r1, r1, r5 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._384 + 8 + str r0, [r1] + b ._400 +._385: + .align 2, 0 +._384: + .word gUnknown_Debug_083F8720 + .word gTasks + .word debug_80C5708+1 +._378: + mov r0, #0x4 + and r0, r0, r1 + cmp r0, #0 + beq ._386 @cond_branch + ldr r0, ._388 + ldr r0, [r0] + ldr r4, [r0, #0x64] + lsl r4, r4, #0x10 + lsr r4, r4, #0x10 + add r0, r4, #0 + mov r1, #0x2 + bl GetSetPokedexFlag + add r0, r4, #0 + mov r1, #0x3 + bl GetSetPokedexFlag + mov r0, #0x5 + bl PlaySE + b ._400 +._389: + .align 2, 0 +._388: + .word gUnknown_Debug_2038A1C +._386: + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._390 @cond_branch + mov r0, #0x2 + bl debug_80C627C + b ._400 +._390: + mov r0, #0x80 + and r0, r0, r1 + lsl r0, r0, #0x10 + lsr r3, r0, #0x10 + cmp r3, #0 + beq ._392 @cond_branch + mov r0, #0x1 + bl debug_80C627C + b ._400 +._392: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._395 @cond_branch + ldr r2, ._397 + ldr r0, [r2] + mov r6, #0xb4 + lsl r6, r6, #0x1 + add r1, r0, r6 + ldrb r0, [r1] + cmp r0, #0 + beq ._395 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] + ldr r0, [r2] + ldr r1, ._397 + 4 + add r0, r0, r1 + strb r3, [r0] + b ._396 +._398: + .align 2, 0 +._397: + .word gUnknown_Debug_2038A1C + .word 0x169 +._395: + ldrh r1, [r4, #0x2e] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._400 @cond_branch + ldr r3, ._401 + ldr r0, [r3] + mov r4, #0xb4 + lsl r4, r4, #0x1 + add r2, r0, r4 + ldrb r0, [r2] + cmp r0, #0x4 + bhi ._400 @cond_branch + add r0, r0, #0x1 + mov r1, #0x0 + strb r0, [r2] + ldr r0, [r3] + ldr r6, ._401 + 4 + add r0, r0, r6 + strb r1, [r0] +._396: + ldr r1, ._401 + 8 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._401 + 12 +._375: + str r1, [r0] +._400: + add sp, sp, #0x4 + pop {r4, r5, r6} + pop {r0} + bx r0 +._402: + .align 2, 0 +._401: + .word gUnknown_Debug_2038A1C + .word 0x169 + .word gTasks + .word debug_80C53C0+1 + + thumb_func_end debug_80C53F0 + + thumb_func_start debug_80C55E4 +debug_80C55E4: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + add r6, r3, #0 + ldr r1, ._405 + ldr r2, ._405 + 4 + ldr r0, [r2] + mov ip, r0 + mov r0, #0xb4 + lsl r0, r0, #0x1 + add r0, r0, ip + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._405 + 8 + add r1, r1, ip + ldrb r1, [r1] + ldr r0, [r0] + add r0, r0, r1 + ldrb r5, [r0] + add r7, r5, #0 + ldr r1, ._405 + 12 + ldrh r4, [r1, #0x2e] + mov r0, #0x1 + and r0, r0, r4 + mov r8, r2 + add r2, r1, #0 + cmp r0, #0 + beq ._403 @cond_branch + ldr r0, ._405 + 16 + lsl r1, r3, #0x2 + add r1, r1, r3 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._405 + 20 + str r0, [r1] + b ._422 +._406: + .align 2, 0 +._405: + .word gUnknown_Debug_083F8698 + .word gUnknown_Debug_2038A1C + .word 0x169 + .word gMain + .word gTasks + .word debug_80C53C0+1 +._403: + mov r0, #0x2 + and r0, r0, r4 + cmp r0, #0 + beq ._407 @cond_branch + lsl r1, r5, #0x2 + mov r0, ip + add r0, r0, #0x64 + add r0, r0, r1 + mov r1, #0xb2 + lsl r1, r1, #0x1 + add r1, r1, ip + ldr r1, [r1] + str r1, [r0] + ldr r1, ._409 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._409 + 4 + str r1, [r0] + b ._422 +._410: + .align 2, 0 +._409: + .word gTasks + .word debug_80C53C0+1 +._407: + ldrh r1, [r2, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._411 @cond_branch + mov r0, #0x1 + b ._412 +._411: + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._413 @cond_branch + mov r0, #0x2 +._412: + bl debug_80C6544 + bl debug_80C643C + b ._422 +._413: + ldr r0, ._419 + lsl r1, r7, #0x3 + add r0, r0, #0x4 + add r1, r1, r0 + ldr r1, [r1] + ldrb r0, [r1, #0x9] + cmp r0, #0xff + beq ._422 @cond_branch + mov r0, #0x20 + and r0, r0, r4 + cmp r0, #0 + beq ._417 @cond_branch + mov r0, #0xb5 + lsl r0, r0, #0x1 + add ip, ip, r0 + mov r0, ip + ldrb r3, [r0] + ldrb r0, [r1, #0x9] + sub r0, r0, #0x1 + cmp r3, r0 + bge ._417 @cond_branch + add r0, r3, #1 + mov r1, ip + strb r0, [r1] + bl debug_80C643C + b ._422 +._420: + .align 2, 0 +._419: + .word gUnknown_Debug_083F8554 +._417: + ldrh r1, [r2, #0x2e] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._422 @cond_branch + mov r2, r8 + ldr r0, [r2] + mov r2, #0xb5 + lsl r2, r2, #0x1 + add r1, r0, r2 + ldrb r0, [r1] + cmp r0, #0 + beq ._422 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1] + bl debug_80C643C +._422: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 + + thumb_func_end debug_80C55E4 + + thumb_func_start debug_80C5708 +debug_80C5708: + push {lr} + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + ldr r0, ._424 + ldrh r1, [r0, #0x2e] + mov r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._423 @cond_branch + ldr r0, ._424 + 4 + lsl r1, r2, #0x2 + add r1, r1, r2 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._424 + 8 + str r0, [r1] +._423: + pop {r0} + bx r0 +._425: + .align 2, 0 +._424: + .word gMain + .word gTasks + .word debug_80C53C0+1 + + thumb_func_end debug_80C5708 + + thumb_func_start debug_80C5738 +debug_80C5738: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + add r6, r0, #0 + lsl r1, r1, #0x18 + lsr r4, r1, #0x18 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + mov r8, r2 + cmp r4, #0xfe + bne ._426 @cond_branch + ldr r1, ._428 + mov r2, #0x7 + bl debug_80C689C + add r0, r6, #7 + ldr r7, ._428 + 4 + ldr r1, [r7] + add r1, r1, #0xf0 + ldr r1, [r1] + mov r2, #0x3 + mov r3, #0x1 + bl debug_80C6678 + mov r4, #0x0 + strb r4, [r6, #0x13] + strb r4, [r6, #0x14] + add r0, r6, #0 + add r0, r0, #0x15 + ldr r1, ._428 + 8 + mov r2, #0x7 + bl debug_80C689C + add r0, r6, #0 + add r0, r0, #0x1c + ldr r1, [r7] + add r1, r1, #0xf4 + ldr r1, [r1] + mov r2, #0x3 + mov r3, #0x1 + bl debug_80C6678 + add r0, r6, #0 + add r0, r0, #0x28 + strb r4, [r0] + add r0, r0, #0x1 + strb r4, [r0] + add r0, r0, #0x1 + ldr r1, ._428 + 12 + mov r2, #0x9 + bl debug_80C689C + add r0, r6, #0 + add r0, r0, #0x31 + ldr r1, [r7] + add r1, r1, #0xf8 +._431: + ldr r1, [r1] + mov r2, #0x3 + mov r3, #0x1 + bl debug_80C6678 + b ._517 +._429: + .align 2, 0 +._428: + .word gUnknown_Debug_083F850A + .word gUnknown_Debug_2038A1C + .word gUnknown_Debug_083F8514 + .word gUnknown_Debug_083F851C +._426: + cmp r4, #0xfd + bne ._430 @cond_branch + ldr r1, ._432 + add r0, r6, #0 + mov r2, #0x9 + bl debug_80C689C + add r0, r6, #0 + add r0, r0, #0x9 + ldr r7, ._432 + 4 + ldr r1, [r7] + add r1, r1, #0xfc + ldr r1, [r1] + mov r2, #0x3 + mov r3, #0x1 + bl debug_80C6678 + mov r4, #0x0 + strb r4, [r6, #0x15] + strb r4, [r6, #0x16] + add r0, r6, #0 + add r0, r0, #0x17 + ldr r1, ._432 + 8 + mov r2, #0x9 + bl debug_80C689C + add r0, r6, #0 + add r0, r0, #0x20 + ldr r1, [r7] + mov r2, #0x80 + lsl r2, r2, #0x1 + add r1, r1, r2 + ldr r1, [r1] + mov r2, #0x3 + mov r3, #0x1 + bl debug_80C6678 + add r0, r6, #0 + add r0, r0, #0x2c + strb r4, [r0] + add r0, r0, #0x1 + strb r4, [r0] + add r0, r0, #0x1 + ldr r1, ._432 + 12 + mov r2, #0x9 + bl debug_80C689C + add r0, r6, #0 + add r0, r0, #0x37 + ldr r1, [r7] + mov r3, #0x82 + lsl r3, r3, #0x1 + add r1, r1, r3 + b ._431 +._433: + .align 2, 0 +._432: + .word gUnknown_Debug_083F8524 + .word gUnknown_Debug_2038A1C + .word gUnknown_Debug_083F852D + .word gUnknown_Debug_083F8537 +._430: + mov r1, #0x0 + lsl r5, r4, #0x3 + mov r2, #0x0 +._434: + add r0, r6, r1 + strb r2, [r0] + add r0, r1, #1 + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + cmp r1, #0xb + bls ._434 @cond_branch + ldr r0, ._437 + add r0, r5, r0 + ldr r1, [r0] + add r0, r6, #0 + mov r2, #0xb + bl debug_80C689C + mov r1, #0xc + mov r2, #0xff +._435: + add r0, r6, r1 + strb r2, [r0] + add r0, r1, #1 + lsl r0, r0, #0x10 + lsr r1, r0, #0x10 + cmp r1, #0xff + bls ._435 @cond_branch + ldr r0, ._437 + add r0, r0, #0x4 + add r0, r5, r0 + ldr r0, [r0] + ldrb r2, [r0, #0x9] + lsl r0, r2, #0x1a + lsr r5, r0, #0x18 + cmp r4, #0x22 + bhi ._436 @cond_branch + lsl r0, r4, #0x2 + ldr r1, ._437 + 4 + add r1, r0, r1 + ldr r1, [r1] + add r7, r0, #0 + mov pc, r1 +._438: + .align 2, 0 +._437: + .word gUnknown_Debug_083F8554 + .word ._439 +._439: + .word ._440 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._445 + .word ._446 + .word ._450 + .word ._450 + .word ._450 + .word ._450 + .word ._451 + .word ._452 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._472 + .word ._473 + .word ._474 +._436: + mov r0, #0xff + strb r0, [r6] + b ._517 +._440: + add r0, r6, #0 + add r0, r0, #0xa + ldr r1, ._477 + mov r9, r1 + ldr r1, [r1] + add r1, r1, #0x64 + add r1, r1, r7 + ldr r1, [r1] + mov r3, r8 + bl debug_80C6678 + add r1, r5, r6 + mov r0, #0x0 + strb r0, [r1, #0xa] + mov r0, #0xfc + strb r0, [r1, #0xb] + mov r0, #0x1 + strb r0, [r1, #0xc] + mov r2, r8 + strb r2, [r1, #0xd] + add r4, r5, #0 + add r4, r4, #0xe + add r4, r6, r4 + mov r3, r9 + ldr r0, [r3] + add r0, r0, #0x64 + add r0, r0, r7 + ldrh r0, [r0] + bl NationalPokedexNumToSpecies + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r1, #0xb + mul r1, r1, r0 + ldr r0, ._477 + 4 + add r1, r1, r0 + add r0, r4, #0 + mov r2, #0xa + bl debug_80C689C + b ._517 +._478: + .align 2, 0 +._477: + .word gUnknown_Debug_2038A1C + .word gSpeciesNames +._445: + ldr r0, ._483 + ldr r0, [r0] + add r0, r0, #0x64 + add r0, r0, r7 + ldr r0, [r0] + cmp r0, #0x1 + beq ._479 @cond_branch + cmp r0, #0x1 + bcc ._480 @cond_branch + cmp r0, #0x2 + beq ._481 @cond_branch + b ._517 +._484: + .align 2, 0 +._483: + .word gUnknown_Debug_2038A1C +._480: + add r0, r6, #0 + add r0, r0, #0xa + ldr r1, ._486 + b ._488 +._487: + .align 2, 0 +._486: + .word gUnknown_Debug_083F8546 +._479: + add r0, r6, #0 + add r0, r0, #0xa + ldr r1, ._489 + b ._488 +._490: + .align 2, 0 +._489: + .word gUnknown_Debug_083F8541 +._481: + add r0, r6, #0 + add r0, r0, #0xa + ldr r1, ._492 +._488: + mov r2, #0x2 + bl debug_80C689C + b ._517 +._493: + .align 2, 0 +._492: + .word gUnknown_Debug_083F8544 +._450: + add r0, r6, #0 + add r0, r0, #0xa + ldr r4, ._495 + ldr r1, [r4] + add r1, r1, #0x64 + add r1, r1, r7 + ldr r1, [r1] + mov r3, r8 + bl debug_80C6678 + add r1, r5, r6 + mov r0, #0x0 + strb r0, [r1, #0xa] + mov r0, #0xfc + strb r0, [r1, #0xb] + mov r0, #0x1 + strb r0, [r1, #0xc] + mov r0, r8 + strb r0, [r1, #0xd] + add r0, r5, #0 + add r0, r0, #0xe + add r0, r6, r0 + ldr r1, [r4] + add r1, r1, #0x64 + add r1, r1, r7 + ldr r2, [r1] + mov r1, #0xd + mul r1, r1, r2 + ldr r2, ._495 + 4 + add r1, r1, r2 + b ._494 +._496: + .align 2, 0 +._495: + .word gUnknown_Debug_2038A1C + .word gMoveNames +._451: + add r0, r6, #0 + add r0, r0, #0xa + ldr r4, ._499 + ldr r1, [r4] + add r1, r1, #0x64 + add r1, r1, r7 + ldr r1, [r1] + mov r3, r8 + bl debug_80C6678 + add r1, r5, r6 + mov r0, #0x0 + strb r0, [r1, #0xa] + mov r0, #0xfc + strb r0, [r1, #0xb] + mov r0, #0x1 + strb r0, [r1, #0xc] + mov r2, r8 + strb r2, [r1, #0xd] + ldr r0, [r4] + add r0, r0, #0x64 + add r0, r0, r7 + ldr r0, [r0] + cmp r0, #0 + beq ._497 @cond_branch + add r4, r5, #0 + add r4, r4, #0xe + add r4, r6, r4 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl ItemId_GetItem + add r1, r0, #0 + add r0, r4, #0 + b ._498 +._500: + .align 2, 0 +._499: + .word gUnknown_Debug_2038A1C +._497: + add r0, r5, #0 + add r0, r0, #0xe + add r0, r6, r0 + ldr r1, ._502 +._498: + mov r2, #0x9 + bl debug_80C689C + b ._517 +._503: + .align 2, 0 +._502: + .word gUnknown_Debug_083F8541 +._452: + add r6, r6, #0xc + ldr r4, ._505 + ldr r0, [r4] + ldr r0, [r0, #0x64] + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl NationalPokedexNumToSpecies + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + ldr r1, [r4] + add r1, r1, #0x64 + add r1, r1, r7 + ldrb r1, [r1] + bl GetAbilityBySpecies + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r1, #0xd + mul r1, r1, r0 + ldr r0, ._505 + 4 + add r1, r1, r0 + add r0, r6, #0 +._494: + mov r2, #0xc + bl debug_80C689C + b ._517 +._506: + .align 2, 0 +._505: + .word gUnknown_Debug_2038A1C + .word gAbilityNames +._474: + add r0, r6, #0 + add r0, r0, #0xa + ldr r2, ._508 + ldr r1, ._508 + 4 + ldr r1, [r1] + add r1, r1, #0x64 + add r1, r1, r7 + ldr r1, [r1] + lsl r1, r1, #0x3 + add r1, r1, r2 + ldr r1, [r1] + b ._514 +._509: + .align 2, 0 +._508: + .word gUnknown_Debug_083F86E8 + .word gUnknown_Debug_2038A1C +._472: + add r0, r6, #0 + add r0, r0, #0xc + ldr r1, ._511 + ldr r1, [r1] + add r1, r1, #0x64 + add r1, r1, r7 + ldr r1, [r1] + mov r3, r8 + bl debug_80C6678 + b ._517 +._512: + .align 2, 0 +._511: + .word gUnknown_Debug_2038A1C +._473: + ldr r0, ._515 + ldr r0, [r0] + add r0, r0, #0x64 + add r0, r0, r7 + ldr r0, [r0] + cmp r0, #0 + beq ._513 @cond_branch + add r0, r6, #0 + add r0, r0, #0xa + ldr r1, ._515 + 4 + b ._514 +._516: + .align 2, 0 +._515: + .word gUnknown_Debug_2038A1C + .word gUnknown_Debug_083F854A +._513: + add r0, r6, #0 + add r0, r0, #0xa + ldr r1, ._518 +._514: + mov r2, #0x4 + bl debug_80C689C + b ._517 +._519: + .align 2, 0 +._518: + .word gUnknown_Debug_083F854D +._446: + add r0, r6, #0 + add r0, r0, #0xa + ldr r2, ._520 + ldr r1, ._520 + 4 + ldr r1, [r1] + add r1, r1, #0x64 + add r1, r1, r7 + ldr r1, [r1] + lsl r1, r1, #0x2 + add r1, r1, r2 + ldr r1, [r1] + mov r2, #0x5 + bl debug_80C689C +._517: + mov r0, #0x0 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r1} + bx r1 +._521: + .align 2, 0 +._520: + .word gNatureNames + .word gUnknown_Debug_2038A1C + + thumb_func_end debug_80C5738 + + thumb_func_start debug_80C5B60 +debug_80C5B60: + lsl r0, r0, #0x18 + ldr r1, ._522 + ldr r1, [r1] + lsr r0, r0, #0x16 + add r1, r1, #0x64 + add r1, r1, r0 + ldr r0, [r1] + bx lr +._523: + .align 2, 0 +._522: + .word gUnknown_Debug_2038A1C + + thumb_func_end debug_80C5B60 + + thumb_func_start debug_80C5B74 +debug_80C5B74: + push {r4, r5, r6, lr} + add r6, r0, #0 + lsl r1, r1, #0x18 + lsr r2, r1, #0x18 + cmp r2, #0x18 + bhi ._540 @cond_branch + lsl r0, r2, #0x2 + ldr r1, ._526 + add r1, r0, r1 + ldr r1, [r1] + add r3, r0, #0 + mov pc, r1 +._527: + .align 2, 0 +._526: + .word ._525 +._525: + .word ._532 + .word ._529 + .word ._530 + .word ._532 + .word ._532 + .word ._540 + .word ._540 + .word ._540 + .word ._540 + .word ._540 + .word ._540 + .word ._540 + .word ._540 + .word ._552 + .word ._552 + .word ._552 + .word ._552 + .word ._552 + .word ._552 + .word ._552 + .word ._552 + .word ._552 + .word ._552 + .word ._552 + .word ._552 +._540: + ldr r0, ._554 + ldr r0, [r0] + lsl r1, r2, #0x2 + add r0, r0, #0x64 + add r0, r0, r1 + str r6, [r0] + b ._562 +._555: + .align 2, 0 +._554: + .word gUnknown_Debug_2038A1C +._532: + ldr r0, ._557 + ldr r0, [r0] + add r0, r0, #0x64 + add r0, r0, r3 + str r6, [r0] + bl debug_80C5C94 + b ._562 +._558: + .align 2, 0 +._557: + .word gUnknown_Debug_2038A1C +._529: + ldr r4, ._560 + ldr r1, [r4] + add r0, r1, #0 + add r0, r0, #0x64 + add r0, r0, r3 + str r6, [r0] + ldr r0, [r1, #0x64] + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl NationalPokedexNumToSpecies + ldr r5, [r4] + ldr r4, ._560 + 4 + lsl r2, r6, #0x2 + ldr r3, ._560 + 8 + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + lsl r1, r0, #0x3 + sub r1, r1, r0 + lsl r1, r1, #0x2 + add r1, r1, r3 + ldrb r1, [r1, #0x13] + mov r0, #0xca + lsl r0, r0, #0x1 + mul r0, r0, r1 + add r2, r2, r0 + add r2, r2, r4 + ldr r0, [r2] + str r0, [r5, #0x6c] + bl debug_80C5C94 + b ._562 +._561: + .align 2, 0 +._560: + .word gUnknown_Debug_2038A1C + .word gExperienceTables + .word gBaseStats +._530: + ldr r0, ._563 + ldr r0, [r0] + add r0, r0, #0x64 + add r0, r0, r3 + str r6, [r0] + bl debug_80C5DEC + b ._562 +._564: + .align 2, 0 +._563: + .word gUnknown_Debug_2038A1C +._552: + ldr r0, ._565 + ldr r0, [r0] + add r0, r0, #0x64 + add r0, r0, r3 + str r6, [r0] + bl debug_80C5EF4 +._562: + pop {r4, r5, r6} + pop {r0} + bx r0 +._566: + .align 2, 0 +._565: + .word gUnknown_Debug_2038A1C + + thumb_func_end debug_80C5B74 + + thumb_func_start debug_80C5C94 +debug_80C5C94: + push {r4, r5, r6, lr} + add sp, sp, #0xfffffff0 + ldr r6, ._567 + ldr r2, [r6] + add r0, r2, #0 + add r0, r0, #0x98 + ldr r4, [r0] + mov r1, #0x1f + and r4, r4, r1 + add r0, r0, #0x8 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0x5 + orr r4, r4, r0 + add r0, r2, #0 + add r0, r0, #0xa8 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0xa + orr r4, r4, r0 + add r0, r2, #0 + add r0, r0, #0xb0 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0xf + orr r4, r4, r0 + add r0, r2, #0 + add r0, r0, #0xb8 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0x14 + orr r4, r4, r0 + add r0, r2, #0 + add r0, r0, #0xc0 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0x19 + orr r4, r4, r0 + ldr r0, [r2, #0x64] + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl NationalPokedexNumToSpecies + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + ldr r0, [r6] + ldr r2, [r0, #0x68] + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + mov r5, #0x1 + str r5, [sp] + ldr r3, [r0, #0x74] + str r3, [sp, #0x4] + str r5, [sp, #0x8] + ldr r3, [r0, #0x70] + str r3, [sp, #0xc] + add r3, r4, #0 + bl CreateMon + ldr r0, [r6] + bl GetMonGender + ldr r1, [r6] + add r0, r0, #0x2 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + str r0, [r1, #0x78] + add r0, r1, #0 + bl GetNature + ldr r1, [r6] + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + str r0, [r1, #0x7c] + add r0, r1, #0 + mov r1, #0xd + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + add r1, r0, #0 + add r1, r1, #0x80 + str r2, [r1] + mov r1, #0xe + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + add r1, r0, #0 + add r1, r1, #0x84 + str r2, [r1] + mov r1, #0xf + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + add r1, r0, #0 + add r1, r1, #0x88 + str r2, [r1] + mov r1, #0x10 + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + add r1, r0, #0 + add r1, r1, #0x8c + str r2, [r1] + mov r1, #0x19 + bl GetMonData + add r1, r0, #0 + ldr r0, [r6] + str r1, [r0, #0x6c] + mov r1, #0x3a + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + add r1, r0, #0 + add r1, r1, #0xf0 + str r2, [r1] + mov r1, #0x3b + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + add r1, r0, #0 + add r1, r1, #0xf4 + str r2, [r1] + mov r1, #0x3c + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + add r1, r0, #0 + add r1, r1, #0xf8 + str r2, [r1] + mov r1, #0x3d + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + add r1, r0, #0 + add r1, r1, #0xfc + str r2, [r1] + mov r1, #0x3e + bl GetMonData + add r2, r0, #0 + ldr r0, [r6] + mov r3, #0x80 + lsl r3, r3, #0x1 + add r1, r0, r3 + str r2, [r1] + mov r1, #0x3f + bl GetMonData + ldr r1, [r6] + mov r2, #0x82 + lsl r2, r2, #0x1 + add r1, r1, r2 + str r0, [r1] + add sp, sp, #0x10 + pop {r4, r5, r6} + pop {r0} + bx r0 +._568: + .align 2, 0 +._567: + .word gUnknown_Debug_2038A1C + + thumb_func_end debug_80C5C94 + + thumb_func_start debug_80C5DEC +debug_80C5DEC: + push {r4, lr} + add sp, sp, #0xfffffffc + mov r0, #0x0 + str r0, [sp] + ldr r4, ._569 + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0x6c + mov r1, #0x19 + bl SetMonData + ldr r0, [r4] + mov r1, #0xd + mov r2, sp + bl SetMonData + ldr r0, [r4] + mov r1, #0xe + mov r2, sp + bl SetMonData + ldr r0, [r4] + mov r1, #0xf + mov r2, sp + bl SetMonData + ldr r0, [r4] + mov r1, #0x10 + mov r2, sp + bl SetMonData + ldr r0, [r4] + bl CalculateMonStats + ldr r0, [r4] + bl GiveMonInitialMoveset + ldr r0, [r4] + mov r1, #0x38 + bl GetMonData + add r1, r0, #0 + ldr r0, [r4] + str r1, [r0, #0x68] + mov r1, #0xd + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0x80 + str r2, [r1] + mov r1, #0xe + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0x84 + str r2, [r1] + mov r1, #0xf + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0x88 + str r2, [r1] + mov r1, #0x10 + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0x8c + str r2, [r1] + mov r1, #0x3a + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0xf0 + str r2, [r1] + mov r1, #0x3b + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0xf4 + str r2, [r1] + mov r1, #0x3c + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0xf8 + str r2, [r1] + mov r1, #0x3d + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0xfc + str r2, [r1] + mov r1, #0x3e + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + mov r3, #0x80 + lsl r3, r3, #0x1 + add r1, r0, r3 + str r2, [r1] + mov r1, #0x3f + bl GetMonData + ldr r1, [r4] + mov r2, #0x82 + lsl r2, r2, #0x1 + add r1, r1, r2 + str r0, [r1] + add sp, sp, #0x4 + pop {r4} + pop {r0} + bx r0 +._570: + .align 2, 0 +._569: + .word gUnknown_Debug_2038A1C + + thumb_func_end debug_80C5DEC + + thumb_func_start debug_80C5EF4 +debug_80C5EF4: + push {r4, lr} + ldr r4, ._571 + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0x98 + mov r1, #0x27 + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0x9c + mov r1, #0x1a + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xa0 + mov r1, #0x28 + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xa4 + mov r1, #0x1b + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xa8 + mov r1, #0x29 + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xac + mov r1, #0x1c + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xb0 + mov r1, #0x2a + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xb4 + mov r1, #0x1d + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xb8 + mov r1, #0x2b + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xbc + mov r1, #0x1e + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xc0 + mov r1, #0x2c + bl SetMonData + ldr r0, [r4] + add r2, r0, #0 + add r2, r2, #0xc4 + mov r1, #0x1f + bl SetMonData + ldr r0, [r4] + bl CalculateMonStats + ldr r0, [r4] + mov r1, #0x3a + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0xf0 + str r2, [r1] + mov r1, #0x3b + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0xf4 + str r2, [r1] + mov r1, #0x3c + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0xf8 + str r2, [r1] + mov r1, #0x3d + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + add r1, r0, #0 + add r1, r1, #0xfc + str r2, [r1] + mov r1, #0x3e + bl GetMonData + add r2, r0, #0 + ldr r0, [r4] + mov r3, #0x80 + lsl r3, r3, #0x1 + add r1, r0, r3 + str r2, [r1] + mov r1, #0x3f + bl GetMonData + ldr r1, [r4] + mov r2, #0x82 + lsl r2, r2, #0x1 + add r1, r1, r2 + str r0, [r1] + pop {r4} + pop {r0} + bx r0 +._572: + .align 2, 0 +._571: + .word gUnknown_Debug_2038A1C + + thumb_func_end debug_80C5EF4 + + thumb_func_start debug_80C5FFC +debug_80C5FFC: + push {r4, r5, r6, r7, lr} + add sp, sp, #0xffffffe0 + ldr r1, ._578 + add r0, sp, #0x10 + mov r2, #0x4 + bl memcpy + add r7, sp, #0x14 + ldr r1, ._578 + 4 + add r0, r7, #0 + mov r2, #0x8 + bl memcpy + ldr r5, ._578 + 8 + ldr r2, [r5] + add r0, r2, #0 + add r0, r0, #0x98 + ldr r4, [r0] + mov r1, #0x1f + and r4, r4, r1 + add r0, r0, #0x8 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0x5 + orr r4, r4, r0 + add r0, r2, #0 + add r0, r0, #0xa8 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0xa + orr r4, r4, r0 + add r0, r2, #0 + add r0, r0, #0xb0 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0xf + orr r4, r4, r0 + add r0, r2, #0 + add r0, r0, #0xb8 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0x14 + orr r4, r4, r0 + add r0, r2, #0 + add r0, r0, #0xc0 + ldr r0, [r0] + and r0, r0, r1 + lsl r0, r0, #0x19 + orr r4, r4, r0 + ldr r0, [r2, #0x64] + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl NationalPokedexNumToSpecies + add r1, r0, #0 + lsl r1, r1, #0x10 + lsr r1, r1, #0x10 + ldr r0, [r5] + ldr r2, [r0, #0x68] + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + lsl r4, r4, #0x18 + lsr r4, r4, #0x18 + mov r6, #0x1 + str r6, [sp] + ldr r3, [r0, #0x74] + str r3, [sp, #0x4] + str r6, [sp, #0x8] + ldr r3, [r0, #0x70] + str r3, [sp, #0xc] + add r3, r4, #0 + bl CreateMon + ldr r2, [r5] + add r0, r2, #0 + add r0, r0, #0x80 + ldr r0, [r0] + cmp r0, #0 + beq ._573 @cond_branch + lsl r1, r0, #0x10 + lsr r1, r1, #0x10 + add r0, r2, #0 + mov r2, #0x0 + bl SetMonMoveSlot +._573: + ldr r2, [r5] + add r0, r2, #0 + add r0, r0, #0x84 + ldr r0, [r0] + cmp r0, #0 + beq ._574 @cond_branch + lsl r1, r0, #0x10 + lsr r1, r1, #0x10 + add r0, r2, #0 + mov r2, #0x1 + bl SetMonMoveSlot +._574: + ldr r2, [r5] + add r0, r2, #0 + add r0, r0, #0x88 + ldr r0, [r0] + cmp r0, #0 + beq ._575 @cond_branch + lsl r1, r0, #0x10 + lsr r1, r1, #0x10 + add r0, r2, #0 + mov r2, #0x2 + bl SetMonMoveSlot +._575: + ldr r2, [r5] + add r0, r2, #0 + add r0, r0, #0x8c + ldr r0, [r0] + cmp r0, #0 + beq ._576 @cond_branch + lsl r1, r0, #0x10 + lsr r1, r1, #0x10 + add r0, r2, #0 + mov r2, #0x3 + bl SetMonMoveSlot +._576: + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0x6c + mov r1, #0x19 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0x98 + mov r1, #0x27 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0x9c + mov r1, #0x1a + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xa0 + mov r1, #0x28 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xa4 + mov r1, #0x1b + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xa8 + mov r1, #0x29 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xac + mov r1, #0x1c + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xb0 + mov r1, #0x2a + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xb4 + mov r1, #0x1d + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xb8 + mov r1, #0x2b + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xbc + mov r1, #0x1e + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xc0 + mov r1, #0x2c + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xc4 + mov r1, #0x1f + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xc8 + mov r1, #0x16 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xcc + mov r1, #0x17 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xd0 + mov r1, #0x18 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xd4 + mov r1, #0x21 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xd8 + mov r1, #0x2f + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xdc + mov r1, #0x30 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xe0 + mov r1, #0x20 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xe4 + mov r1, #0x22 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0x90 + mov r1, #0xc + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0x94 + mov r1, #0x2e + bl SetMonData + ldr r0, [r5] + add r1, r0, #0 + add r1, r1, #0xec + ldr r2, [r1] + lsl r2, r2, #0x3 + ldr r1, ._578 + 12 + add r2, r2, r1 + mov r1, #0x37 + bl SetMonData + ldr r0, [r5] + add r2, r0, #0 + add r2, r2, #0xe8 + mov r1, #0x2d + bl SetMonData + ldr r1, [r5] + add r0, r1, #0 + add r0, r0, #0xe8 + ldr r0, [r0] + cmp r0, #0 + beq ._577 @cond_branch + add r0, r1, #0 + mov r1, #0x2 + add r2, sp, #0x10 + bl SetMonData + add r2, sp, #0x1c + strb r6, [r2] + ldr r0, [r5] + mov r1, #0x3 + bl SetMonData +._577: + ldr r0, [r5] + mov r1, #0x7 + add r2, r7, #0 + bl SetMonData + mov r2, sp + add r2, r2, #0x1e + mov r0, #0xff + strh r0, [r2] + ldr r0, [r5] + mov r1, #0x23 + bl SetMonData + ldr r0, [r5] + bl CalculateMonStats + add sp, sp, #0x20 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._579: + .align 2, 0 +._578: + .word gUnknown_Debug_083F8758 + .word gUnknown_Debug_083F875C + .word gUnknown_Debug_2038A1C + .word gUnknown_Debug_083F86E8+0x4 + + thumb_func_end debug_80C5FFC + + thumb_func_start debug_80C627C +debug_80C627C: + push {r4, r5, r6, lr} + add sp, sp, #0xfffffff8 + lsl r0, r0, #0x18 + lsr r4, r0, #0x18 + add r6, r4, #0 + ldr r1, ._584 + mov r0, sp + mov r2, #0x2 + bl memcpy + add r5, sp, #0x4 + ldr r1, ._584 + 4 + add r0, r5, #0 + mov r2, #0x2 + bl memcpy + cmp r4, #0x1 + beq ._580 @cond_branch + cmp r4, #0x1 + bgt ._581 @cond_branch + cmp r4, #0 + beq ._582 @cond_branch + b ._595 +._585: + .align 2, 0 +._584: + .word gUnknown_Debug_083F7FD4 + .word gUnknown_Debug_083F8764 +._581: + cmp r6, #0x2 + beq ._586 @cond_branch + b ._595 +._582: + ldr r0, ._589 + ldr r0, [r0] + ldr r1, ._589 + 4 + add r0, r0, r1 + b ._588 +._590: + .align 2, 0 +._589: + .word gUnknown_Debug_2038A1C + .word 0x169 +._580: + ldr r4, ._593 + ldr r3, [r4] + ldr r1, ._593 + 4 + add r0, r3, r1 + ldrb r2, [r0] + ldr r1, ._593 + 8 + mov r6, #0xb4 + lsl r6, r6, #0x1 + add r0, r3, r6 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r1 + ldrb r0, [r0, #0x4] + sub r0, r0, #0x1 + cmp r2, r0 + bge ._595 @cond_branch + lsl r2, r2, #0x19 + mov r0, #0xa0 + lsl r0, r0, #0x13 + add r2, r2, r0 + lsr r2, r2, #0x18 + add r0, r5, #0 + mov r1, #0x1 + bl Menu_PrintText + ldr r0, [r4] + ldr r2, ._593 + 4 + add r1, r0, r2 + ldrb r0, [r1] + add r0, r0, #0x1 + strb r0, [r1] + ldr r0, [r4] + add r0, r0, r2 +._588: + ldrb r2, [r0] + lsl r2, r2, #0x19 + mov r6, #0xa0 + lsl r6, r6, #0x13 + add r2, r2, r6 + lsr r2, r2, #0x18 + mov r0, sp + mov r1, #0x1 + bl Menu_PrintText + b ._595 +._594: + .align 2, 0 +._593: + .word gUnknown_Debug_2038A1C + .word 0x169 + .word gUnknown_Debug_083F8698 +._586: + ldr r4, ._596 + ldr r0, [r4] + ldr r2, ._596 + 4 + add r1, r0, r2 + ldrb r0, [r1] + cmp r0, #0 + beq ._595 @cond_branch + add r2, r0, #0 + lsl r2, r2, #0x19 + mov r6, #0xa0 + lsl r6, r6, #0x13 + add r2, r2, r6 + lsr r2, r2, #0x18 + add r0, r5, #0 + mov r1, #0x1 + bl Menu_PrintText + ldr r0, [r4] + ldr r2, ._596 + 4 + add r1, r0, r2 + ldrb r0, [r1] + sub r0, r0, #0x1 + strb r0, [r1] + ldr r0, [r4] + add r0, r0, r2 + ldrb r2, [r0] + lsl r2, r2, #0x19 + add r2, r2, r6 + lsr r2, r2, #0x18 + mov r0, sp + mov r1, #0x1 + bl Menu_PrintText +._595: + add sp, sp, #0x8 + pop {r4, r5, r6} + pop {r0} + bx r0 +._597: + .align 2, 0 +._596: + .word gUnknown_Debug_2038A1C + .word 0x169 + + thumb_func_end debug_80C627C + + thumb_func_start debug_80C6384 +debug_80C6384: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + mov r0, #0x0 + mov r1, #0x4 + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r5, #0x0 + ldr r3, ._600 + ldr r1, ._600 + 4 + ldr r0, [r1] + mov r2, #0xb4 + lsl r2, r2, #0x1 + add r0, r0, r2 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r3 + ldr r0, [r0] + ldrb r0, [r0] + cmp r0, #0xff + beq ._598 @cond_branch + add r4, r1, #0 + ldr r0, ._600 + 8 + mov r9, r0 + mov r8, r3 + add r7, r2, #0 + mov r6, #0x1 +._599: + ldr r0, [r4] + add r0, r0, r9 + mov r1, #0xfc + strb r1, [r0] + ldr r0, [r4] + add r1, r1, #0x70 + add r0, r0, r1 + strb r6, [r0] + ldr r0, [r4] + ldr r2, ._600 + 12 + add r0, r0, r2 + strb r6, [r0] + ldr r1, [r4] + add r2, r2, #0x1 + add r0, r1, r2 + add r1, r1, r7 + ldrb r1, [r1] + lsl r1, r1, #0x3 + add r1, r1, r8 + ldr r1, [r1] + add r1, r1, r5 + ldrb r1, [r1] + mov r2, #0x1 + bl debug_80C5738 + ldr r0, [r4] + add r0, r0, r9 + lsl r2, r5, #0x19 + mov r1, #0xa0 + lsl r1, r1, #0x13 + add r2, r2, r1 + lsr r2, r2, #0x18 + mov r1, #0x2 + bl Menu_PrintText + add r0, r5, #1 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + ldr r0, [r4] + add r0, r0, r7 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r8 + ldr r0, [r0] + add r0, r0, r5 + ldrb r0, [r0] + cmp r0, #0xff + bne ._599 @cond_branch +._598: + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._601: + .align 2, 0 +._600: + .word gUnknown_Debug_083F8698 + .word gUnknown_Debug_2038A1C + .word 0x16b + .word 0x16d + + thumb_func_end debug_80C6384 + + thumb_func_start debug_80C643C +debug_80C643C: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + mov r0, #0x2 + mov r1, #0x5 + mov r2, #0x1c + mov r3, #0x12 + bl Menu_BlankWindowRect + mov r5, #0x0 + ldr r6, ._605 + ldr r1, ._605 + 4 + ldr r0, [r1] + mov r3, #0xb4 + lsl r3, r3, #0x1 + add r0, r0, r3 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r6 + ldr r0, [r0] + ldrb r0, [r0] + cmp r0, #0xff + beq ._602 @cond_branch + add r4, r1, #0 + mov r0, #0x1 + mov r8, r0 +._607: + ldr r0, [r4] + ldr r7, ._605 + 8 + add r2, r0, r7 + mov r0, #0xfc + strb r0, [r2] + ldr r0, [r4] + mov r2, #0xb6 + lsl r2, r2, #0x1 + add r0, r0, r2 + mov r7, r8 + strb r7, [r0] + ldr r2, [r4] + ldr r7, ._605 + 12 + add r0, r2, r7 + ldrb r0, [r0] + cmp r5, r0 + bne ._603 @cond_branch + ldr r0, ._605 + 16 + add r2, r2, r0 + mov r0, #0x2 + strb r0, [r2] + ldr r1, [r1] + mov r2, #0xb7 + lsl r2, r2, #0x1 + add r0, r1, r2 + add r1, r1, r3 + ldrb r1, [r1] + lsl r1, r1, #0x3 + add r1, r1, r6 + ldr r1, [r1] + add r1, r1, r5 + ldrb r1, [r1] + mov r2, #0x2 + bl debug_80C5738 + b ._604 +._606: + .align 2, 0 +._605: + .word gUnknown_Debug_083F8698 + .word gUnknown_Debug_2038A1C + .word 0x16b + .word 0x169 + .word 0x16d +._603: + ldr r3, ._608 + add r0, r2, r3 + mov r7, r8 + strb r7, [r0] + ldr r1, [r1] + mov r2, #0xb7 + lsl r2, r2, #0x1 + add r0, r1, r2 + ldr r2, ._608 + 4 + sub r3, r3, #0x5 + add r1, r1, r3 + ldrb r1, [r1] + lsl r1, r1, #0x3 + add r1, r1, r2 + ldr r1, [r1] + add r1, r1, r5 + ldrb r1, [r1] + mov r2, #0x1 + bl debug_80C5738 +._604: + ldr r0, [r4] + ldr r7, ._608 + 8 + add r0, r0, r7 + lsl r2, r5, #0x19 + mov r1, #0xa0 + lsl r1, r1, #0x13 + add r2, r2, r1 + lsr r2, r2, #0x18 + mov r1, #0x2 + bl Menu_PrintText + add r0, r5, #1 + lsl r0, r0, #0x10 + lsr r5, r0, #0x10 + ldr r6, ._608 + 4 + add r1, r4, #0 + ldr r0, [r4] + mov r3, #0xb4 + lsl r3, r3, #0x1 + add r0, r0, r3 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r6 + ldr r0, [r0] + add r0, r0, r5 + ldrb r0, [r0] + cmp r0, #0xff + bne ._607 @cond_branch +._602: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._609: + .align 2, 0 +._608: + .word 0x16d + .word gUnknown_Debug_083F8698 + .word 0x16b + + thumb_func_end debug_80C643C + + thumb_func_start debug_80C6544 +debug_80C6544: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r9, r0 + ldr r0, ._614 + mov r8, r0 + ldr r6, ._614 + 4 + ldr r1, [r6] + mov r5, #0xb4 + lsl r5, r5, #0x1 + add r0, r1, r5 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r8 + ldr r4, ._614 + 8 + add r1, r1, r4 + ldrb r1, [r1] + ldr r0, [r0] + add r0, r0, r1 + ldrb r0, [r0] + bl debug_80C5B60 + add r7, r0, #0 + ldr r2, ._614 + 12 + ldr r3, [r6] + add r5, r3, r5 + ldrb r0, [r5] + lsl r0, r0, #0x3 + add r0, r0, r8 + add r4, r3, r4 + ldrb r1, [r4] + ldr r0, [r0] + add r0, r0, r1 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r2, r2, #0x4 + add r0, r0, r2 + ldr r1, [r0] + ldr r5, [r1] + ldr r4, [r1, #0x4] + ldr r2, ._614 + 16 + mov r6, #0xb5 + lsl r6, r6, #0x1 + add r0, r3, r6 + ldrb r0, [r0] + lsl r0, r0, #0x2 + add r0, r0, r2 + ldr r3, [r0] + ldrb r0, [r1, #0x8] + cmp r0, #0 + bne ._623 @cond_branch + mov r0, r9 + cmp r0, #0x1 + beq ._611 @cond_branch + cmp r0, #0x2 + beq ._612 @cond_branch + b ._623 +._615: + .align 2, 0 +._614: + .word gUnknown_Debug_083F8698 + .word gUnknown_Debug_2038A1C + .word 0x169 + .word gUnknown_Debug_083F8554 + .word gUnknown_Debug_083F8768 +._611: + sub r0, r4, r3 + cmp r7, r0 + bcs ._616 @cond_branch + add r7, r7, r3 + b ._623 +._616: + cmp r7, r4 + bcc ._622 @cond_branch + b ._619 +._612: + add r0, r5, r3 + cmp r7, r0 + bls ._620 @cond_branch + sub r7, r7, r3 + b ._623 +._620: + cmp r7, r5 + bls ._622 @cond_branch +._619: + add r7, r5, #0 + b ._623 +._622: + add r7, r4, #0 +._623: + ldr r1, ._624 + ldr r0, ._624 + 4 + ldr r2, [r0] + mov r3, #0xb4 + lsl r3, r3, #0x1 + add r0, r2, r3 + ldrb r0, [r0] + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r6, ._624 + 8 + add r1, r2, r6 + ldrb r1, [r1] + ldr r0, [r0] + add r0, r0, r1 + ldrb r1, [r0] + add r0, r7, #0 + bl debug_80C5B74 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._625: + .align 2, 0 +._624: + .word gUnknown_Debug_083F8698 + .word gUnknown_Debug_2038A1C + .word 0x169 + + thumb_func_end debug_80C6544 + + thumb_func_start debug_80C6630 +debug_80C6630: + push {r4, r5, lr} + add r4, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + lsl r3, r3, #0x18 + lsr r3, r3, #0x18 + mov r0, #0xfc + strb r0, [r4] + add r4, r4, #0x1 + mov r0, #0x1 + strb r0, [r4] + add r4, r4, #0x1 + cmp r2, #0x2 + bne ._626 @cond_branch + ldr r0, ._629 + ldr r0, [r0] + mov r5, #0xb5 + lsl r5, r5, #0x1 + add r0, r0, r5 + ldrb r0, [r0] + cmp r3, r0 + beq ._627 @cond_branch + strb r2, [r4] + b ._628 +._630: + .align 2, 0 +._629: + .word gUnknown_Debug_2038A1C +._627: + mov r0, #0x4 +._626: + strb r0, [r4] +._628: + add r0, r1, #0 + add r0, r0, #0xa1 + strb r0, [r4, #0x1] + pop {r4, r5} + pop {r0} + bx r0 + + thumb_func_end debug_80C6630 + + thumb_func_start debug_80C6678 +debug_80C6678: + push {r4, r5, r6, r7, lr} + mov r7, r9 + mov r6, r8 + push {r6, r7} + mov r9, r0 + add r6, r1, #0 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + lsl r3, r3, #0x18 + lsr r3, r3, #0x18 + mov r8, r3 + mov r7, #0x0 + sub r0, r2, #1 + cmp r0, #0x9 + bhi ._644 @cond_branch + lsl r0, r0, #0x2 + ldr r1, ._633 + add r0, r0, r1 + ldr r0, [r0] + mov pc, r0 +._634: + .align 2, 0 +._633: + .word ._632 +._632: + .word ._635 + .word ._636 + .word ._637 + .word ._638 + .word ._639 + .word ._640 + .word ._641 + .word ._642 + .word ._643 + .word ._644 +._644: + mov r0, r9 + add r4, r0, r7 + ldr r5, ._645 + add r0, r6, #0 + add r1, r5, #0 + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x9 + bl debug_80C6630 + add r0, r6, #0 + add r1, r5, #0 + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._643: + mov r1, r9 + add r4, r1, r7 + ldr r5, ._645 + 4 + add r0, r6, #0 + add r1, r5, #0 + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x8 + bl debug_80C6630 + add r0, r6, #0 + add r1, r5, #0 + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._642: + mov r0, r9 + add r4, r0, r7 + ldr r5, ._645 + 8 + add r0, r6, #0 + add r1, r5, #0 + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x7 + bl debug_80C6630 + add r0, r6, #0 + add r1, r5, #0 + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._641: + mov r1, r9 + add r4, r1, r7 + ldr r5, ._645 + 12 + add r0, r6, #0 + add r1, r5, #0 + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x6 + bl debug_80C6630 + add r0, r6, #0 + add r1, r5, #0 + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._640: + mov r0, r9 + add r4, r0, r7 + ldr r5, ._645 + 16 + add r0, r6, #0 + add r1, r5, #0 + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x5 + bl debug_80C6630 + add r0, r6, #0 + add r1, r5, #0 + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._639: + mov r1, r9 + add r4, r1, r7 + ldr r5, ._645 + 20 + add r0, r6, #0 + add r1, r5, #0 + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x4 + bl debug_80C6630 + add r0, r6, #0 + add r1, r5, #0 + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._638: + mov r0, r9 + add r4, r0, r7 + mov r5, #0xfa + lsl r5, r5, #0x2 + add r0, r6, #0 + add r1, r5, #0 + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x3 + bl debug_80C6630 + add r0, r6, #0 + add r1, r5, #0 + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._637: + mov r1, r9 + add r4, r1, r7 + add r0, r6, #0 + mov r1, #0x64 + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x2 + bl debug_80C6630 + add r0, r6, #0 + mov r1, #0x64 + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._636: + mov r0, r9 + add r4, r0, r7 + add r0, r6, #0 + mov r1, #0xa + bl __udivsi3 + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + add r0, r4, #0 + mov r2, r8 + mov r3, #0x1 + bl debug_80C6630 + add r0, r6, #0 + mov r1, #0xa + bl __umodsi3 + add r6, r0, #0 + add r0, r7, #4 + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 +._635: + mov r1, r9 + add r0, r1, r7 + lsl r1, r6, #0x18 + lsr r1, r1, #0x18 + mov r2, r8 + mov r3, #0x0 + bl debug_80C6630 + pop {r3, r4} + mov r8, r3 + mov r9, r4 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._646: + .align 2, 0 +._645: + .word 0x3b9aca00 + .word 0x5f5e100 + .word 0x989680 + .word 0xf4240 + .word 0x186a0 + .word 0x2710 + + thumb_func_end debug_80C6678 + + thumb_func_start debug_80C689C +debug_80C689C: + push {r4, r5, lr} + add r5, r0, #0 + add r4, r1, #0 + lsl r2, r2, #0x18 + lsr r2, r2, #0x18 + mov r3, #0x0 + ldrb r0, [r4] + b ._647 +._649: + add r1, r5, r3 + add r0, r4, r3 + ldrb r0, [r0] + strb r0, [r1] + add r0, r3, #1 + lsl r0, r0, #0x18 + lsr r3, r0, #0x18 + add r0, r4, r3 + ldrb r0, [r0] +._647: + cmp r0, #0xff + beq ._648 @cond_branch + cmp r3, r2 + bcc ._649 @cond_branch +._648: + pop {r4, r5} + pop {r0} + bx r0 + + thumb_func_end debug_80C689C + + thumb_func_start debug_80C68CC +debug_80C68CC: + push {r4, r5, r6, r7, lr} + add sp, sp, #0xfffffff8 + lsl r0, r0, #0x10 + lsr r4, r0, #0x10 + lsl r1, r1, #0x18 + lsr r6, r1, #0x18 + lsl r2, r2, #0x18 + lsr r5, r2, #0x18 + lsl r3, r3, #0x18 + lsr r3, r3, #0x18 + mov r2, #0x0 + mov r1, #0x0 +._650: + mov r7, sp + add r0, r7, r2 + strb r1, [r0] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x3 + bls ._650 @cond_branch + mov r1, sp + mov r0, #0xff + strb r0, [r1, #0x4] + cmp r3, #0x2 + beq ._651 @cond_branch + cmp r3, #0x2 + bgt ._652 @cond_branch + cmp r3, #0x1 + beq ._653 @cond_branch + b ._654 +._652: + cmp r3, #0x3 + beq ._655 @cond_branch +._654: + mov r1, sp + lsr r0, r4, #0xc + strb r0, [r1] +._655: + mov r1, sp + mov r0, #0xf0 + lsl r0, r0, #0x4 + and r0, r0, r4 + lsr r0, r0, #0x8 + strb r0, [r1, #0x1] +._651: + mov r1, sp + mov r0, #0xf0 + and r0, r0, r4 + lsr r0, r0, #0x4 + strb r0, [r1, #0x2] +._653: + mov r2, sp + mov r1, #0xf + add r0, r4, #0 + and r0, r0, r1 + strb r0, [r2, #0x3] + mov r2, #0x0 +._658: + mov r0, sp + add r1, r0, r2 + ldrb r0, [r1] + cmp r0, #0x9 + bhi ._656 @cond_branch + add r0, r0, #0xa1 + b ._657 +._656: + add r0, r0, #0xb1 +._657: + strb r0, [r1] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x3 + bls ._658 @cond_branch + mov r0, #0x4 + sub r0, r0, r3 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + add r0, r0, sp + add r1, r6, #0 + add r2, r5, #0 + bl Menu_PrintText + add sp, sp, #0x8 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 + + thumb_func_end debug_80C68CC + + thumb_func_start InitSeePokemonGraphics +InitSeePokemonGraphics: + push {r4, r5, r6, lr} + add sp, sp, #0xfffffff8 + bl debug_80C35DC + ldr r1, ._659 + ldr r2, ._659 + 4 + ldr r0, ._659 + 8 + str r1, [r0] + str r2, [r0, #0x4] + ldr r1, ._659 + 12 + str r1, [r0, #0x8] + ldr r0, [r0, #0x8] + ldr r0, ._659 + 16 + mov r1, #0x80 + mov r2, #0x60 + bl LoadPalette + ldr r1, ._659 + 20 + add r0, sp, #0x4 + strh r1, [r0] + mov r1, #0x0 + mov r2, #0x2 + bl LoadPalette + mov r0, #0x1 + neg r0, r0 + mov r5, #0x0 + str r5, [sp] + mov r1, #0x0 + mov r2, #0x10 + mov r3, #0x0 + bl BeginNormalPaletteFade + ldr r0, ._659 + 24 + mov r6, #0x0 + strh r5, [r0] + add r0, r0, #0x4 + strh r5, [r0] + sub r0, r0, #0x2 + strh r5, [r0] + add r0, r0, #0x4 + strh r5, [r0] + ldr r1, ._659 + 28 + mov r0, #0x3f + strh r0, [r1] + add r1, r1, #0x2 + mov r0, #0x1f + strh r0, [r1] + add r1, r1, #0x6 + mov r0, #0xf1 + strh r0, [r1] + ldr r0, ._659 + 32 + strh r5, [r0] + add r1, r1, #0x4 + mov r0, #0x7 + strh r0, [r1] + ldr r3, ._659 + 36 + ldrh r2, [r3] + strh r5, [r3] + ldr r4, ._659 + 40 + ldrh r0, [r4] + mov r1, #0x1 + orr r0, r0, r1 + strh r0, [r4] + strh r2, [r3] + ldr r0, ._659 + 44 + bl SetVBlankCallback + ldr r0, ._659 + 48 + bl SetMainCallback2 + bl sub_809D51C + ldr r1, ._659 + 52 + ldr r2, ._659 + 56 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x2 + ldr r2, ._659 + 60 + add r0, r2, #0 + strh r0, [r1] + sub r1, r1, #0xa + mov r2, #0xcd + lsl r2, r2, #0x6 + add r0, r2, #0 + strh r0, [r1] + ldr r0, ._659 + 64 + mov r1, #0x0 + bl CreateTask + ldr r1, ._659 + 68 + ldr r0, ._659 + 72 + str r0, [r1] + ldr r1, ._659 + 76 + strh r1, [r0] + strb r6, [r0, #0x2] + strb r6, [r0, #0x3] + strb r6, [r0, #0x5] + strb r6, [r0, #0x7] + strb r6, [r0, #0xa] + strb r6, [r0, #0x8] + ldr r4, ._659 + 80 + add r0, r4, #0 + mov r1, #0x6c + mov r2, #0x74 + mov r3, #0x0 + bl CreateSprite + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + ldr r6, ._659 + 84 + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + strh r5, [r0, #0x2e] + mov r1, #0x0 + bl StartSpriteAnim + add r0, r4, #0 + mov r1, #0x6c + mov r2, #0x74 + mov r3, #0x0 + bl CreateSprite + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + mov r1, #0x1 + strh r1, [r0, #0x2e] + bl StartSpriteAnim + add r0, r4, #0 + mov r1, #0x6c + mov r2, #0x74 + mov r3, #0x0 + bl CreateSprite + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + mov r1, #0x2 + strh r1, [r0, #0x2e] + bl StartSpriteAnim + add sp, sp, #0x8 + pop {r4, r5, r6} + pop {r0} + bx r0 +._660: + .align 2, 0 +._659: + .word byte_83F88EC + .word 0x600e000 + .word 0x40000d4 + .word 0x80000400 + .word word_83F888C + .word 0x7fff + .word 0x4000040 + .word 0x4000048 + .word 0x4000052 + .word 0x4000208 + .word 0x4000200 + .word debug_80C3758+1 + .word debug_80C370C+1 + .word 0x4000008 + .word 0x1f0b + .word 0x1e0a + .word debug_80C6B00+1 + .word gUnknown_Debug_2038A20 + .word +0x2018000 + .word 0x115 + .word gSpriteTemplate_83F8874 + .word gSprites + + thumb_func_end InitSeePokemonGraphics + + thumb_func_start debug_80C6B00 +debug_80C6B00: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add sp, sp, #0xffffffec + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 + ldr r1, ._666 + mov r0, sp + mov r2, #0x12 + bl memcpy + mov r0, #0xa + mov r1, #0x0 + mov r2, #0xf + mov r3, #0x7 + bl Menu_DrawStdWindowFrame + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x9 + mov r3, #0x9 + bl Menu_DrawStdWindowFrame + mov r0, #0x0 + mov r1, #0xa + mov r2, #0x9 + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r0, #0x10 + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x7 + bl Menu_DrawStdWindowFrame + ldr r0, ._666 + 4 + mov r1, #0x11 + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._666 + 8 + mov r1, #0x1b + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._666 + 12 + mov r1, #0x11 + mov r2, #0x5 + bl Menu_PrintText + mov r0, #0xa + mov r1, #0x8 + mov r2, #0x1d + mov r3, #0xc + bl Menu_DrawStdWindowFrame + mov r2, #0x0 + ldr r4, ._666 + 16 + ldr r0, ._666 + 20 + add r3, r0, #0 +._661: + lsl r0, r2, #0x1 + add r0, r0, r4 + add r1, r2, r3 + strh r1, [r0] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0xe + bls ._661 @cond_branch + mov r2, #0x0 + ldr r5, ._666 + 24 + lsl r6, r7, #0x2 + mov r8, r6 + ldr r4, ._666 + 28 + ldr r0, ._666 + 32 + add r3, r0, #0 +._662: + lsl r0, r2, #0x1 + add r0, r0, r4 + add r1, r2, r3 + strh r1, [r0] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0xe + bls ._662 @cond_branch + add r0, r5, #0 + mov r1, #0x14 + mov r2, #0xa + bl Menu_PrintText + mov r0, #0xa + mov r1, #0xd + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r1, sp + mov r0, #0x23 + strb r0, [r1] + mov r2, #0x0 + ldr r4, ._666 + 36 + mov r5, #0x93 + lsl r5, r5, #0x8 + add r3, r5, #0 +._663: + lsl r1, r2, #0x1 + add r1, r1, r4 + mov r6, sp + add r0, r6, r2 + ldrb r0, [r0] + add r0, r0, r3 + strh r0, [r1] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x11 + bls ._663 @cond_branch + mov r1, sp + mov r0, #0x24 + strb r0, [r1] + mov r2, #0x0 + ldr r5, ._666 + 40 + ldr r4, ._666 + 44 + mov r0, #0x93 + lsl r0, r0, #0x8 + add r3, r0, #0 +._664: + lsl r1, r2, #0x1 + add r1, r1, r4 + mov r6, sp + add r0, r6, r2 + ldrb r0, [r0] + add r0, r0, r3 + strh r0, [r1] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x11 + bls ._664 @cond_branch + mov r1, sp + mov r0, #0x25 + strb r0, [r1] + mov r2, #0x0 + ldr r4, ._666 + 48 + mov r0, #0x93 + lsl r0, r0, #0x8 + add r3, r0, #0 +._665: + lsl r1, r2, #0x1 + add r1, r1, r4 + mov r6, sp + add r0, r6, r2 + ldrb r0, [r0] + add r0, r0, r3 + strh r0, [r1] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x11 + bls ._665 @cond_branch + add r0, r5, #0 + mov r1, #0xf + mov r2, #0x11 + bl Menu_PrintText + ldr r1, ._666 + 52 + ldr r2, ._666 + 56 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r5, ._666 + 60 + add r0, r5, #0 + strh r0, [r1] + ldr r1, ._666 + 64 + mov r6, r8 + add r0, r6, r7 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._666 + 68 + str r1, [r0] + add sp, sp, #0x14 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._667: + .align 2, 0 +._666: + .word gUnknown_Debug_083F8815 + .word gUnknown_Debug_083F87D0 + .word gUnknown_Debug_083F87D8 + .word gUnknown_Debug_083F87E0 + .word 0x600fa56 + .word 0xa311 + .word gUnknown_Debug_083F87F4 + .word 0x600f256 + .word 0x8301 + .word 0x600f396 + .word gUnknown_Debug_083F8801 + .word 0x600f3d6 + .word 0x600f416 + .word 0x4000040 + .word 0x51ef + .word 0x699f + .word gTasks + .word debug_80C6CB8+1 + + thumb_func_end debug_80C6B00 + + thumb_func_start debug_80C6CB8 +debug_80C6CB8: + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, r9 + mov r5, r8 + push {r5, r6, r7} + add sp, sp, #0xfffffff4 + mov sl, r0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov sl, r0 + ldr r5, ._668 + ldr r4, [r5] + ldrh r2, [r4] + lsl r0, r2, #0x3 + ldr r1, ._668 + 4 + add r0, r0, r1 + ldr r1, ._668 + 8 + lsl r2, r2, #0x2 + add r2, r2, r1 + ldrb r1, [r2] + ldrb r2, [r2, #0x1] + ldr r3, ._668 + 12 + mov r8, r3 + ldr r6, [r3] + str r6, [sp, #0x8] + ldr r3, [r3, #0x4] + str r3, [sp] + ldrh r3, [r4] + str r3, [sp, #0x4] + add r3, r6, #0 + bl DecompressPicFromTable_2 + ldr r0, [r5] + ldrh r0, [r0] + lsl r0, r0, #0x3 + ldr r7, ._668 + 16 + add r0, r0, r7 + bl LoadCompressedObjectPalette + ldr r0, [r5] + ldrh r0, [r0] + mov r1, #0x1 + bl GetMonSpriteTemplate_803C56C + ldr r0, ._668 + 20 + mov r1, #0x28 + mov r2, #0x28 + mov r3, #0x0 + bl CreateSprite + ldr r1, [r5] + strb r0, [r1, #0x2] + ldr r2, [r5] + ldrb r1, [r2, #0x2] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + ldr r1, ._668 + 24 + add r0, r0, r1 + ldr r3, ._668 + 28 + mov r9, r3 + str r3, [r0] + ldrb r0, [r2, #0x2] + lsl r1, r0, #0x4 + add r1, r1, r0 + lsl r1, r1, #0x2 + ldr r6, ._668 + 32 + add r1, r1, r6 + ldrb r2, [r1, #0x5] + mov r6, #0xd + neg r6, r6 + add r0, r6, #0 + and r0, r0, r2 + strb r0, [r1, #0x5] + ldr r4, [r5] + ldrh r2, [r4] + lsl r0, r2, #0x3 + ldr r1, ._668 + 36 + add r0, r0, r1 + ldr r1, ._668 + 40 + lsl r2, r2, #0x2 + add r2, r2, r1 + ldrb r1, [r2] + ldrb r2, [r2, #0x1] + mov r7, r8 + ldr r3, [r7, #0x8] + str r3, [sp] + ldrh r3, [r4] + str r3, [sp, #0x4] + ldr r3, [sp, #0x8] + bl DecompressPicFromTable_2 + ldr r0, [r5] + ldrh r0, [r0] + lsl r0, r0, #0x3 + ldr r1, ._668 + 16 + add r0, r0, r1 + bl LoadCompressedObjectPalette + ldr r0, [r5] + ldrh r0, [r0] + mov r1, #0x2 + bl GetMonSpriteTemplate_803C56C + ldr r0, ._668 + 20 + mov r1, #0x28 + mov r2, #0x78 + mov r3, #0x0 + bl CreateSprite + ldr r1, [r5] + strb r0, [r1, #0x3] + ldr r2, [r5] + ldrb r1, [r2, #0x3] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + ldr r3, ._668 + 24 + add r0, r0, r3 + mov r7, r9 + str r7, [r0] + ldrb r1, [r2, #0x3] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + ldr r1, ._668 + 32 + add r0, r0, r1 + ldrb r1, [r0, #0x5] + and r6, r6, r1 + strb r6, [r0, #0x5] + ldr r0, [r5] + ldrh r0, [r0] + ldr r1, ._668 + 44 + mov r2, #0x0 + str r2, [sp] + str r2, [sp, #0x4] + mov r2, #0x68 + mov r3, #0x2c + bl CreateMonIcon + ldr r1, [r5] + strb r0, [r1, #0x4] + ldr r0, [r5] + ldrh r0, [r0] + bl SpeciesToNationalPokedexNum + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + mov r2, #0xff + lsl r2, r2, #0x2 + mov r1, #0x2 + bl sub_8091738 + ldr r1, ._668 + 48 + ldr r3, ._668 + 52 + add r0, r3, #0 + strh r0, [r1] + add r1, r1, #0x2 + ldr r6, ._668 + 56 + add r0, r6, #0 + strh r0, [r1] + add r1, r1, #0x3e + ldr r7, ._668 + 60 + add r0, r7, #0 + strh r0, [r1] + add r1, r1, #0x2 + ldr r2, ._668 + 64 + add r0, r2, #0 + strh r0, [r1] + ldr r0, [r5] + ldrh r0, [r0] + mov r1, #0x11 + mov r2, #0x3 + bl debug_80C3800 + ldr r0, [r5] + ldrh r0, [r0] + mov r1, #0x1a + mov r2, #0x5 + bl debug_80C376C + ldr r2, [r5] + ldrb r1, [r2, #0x2] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + ldr r3, ._668 + 32 + add r0, r0, r3 + ldrb r0, [r0, #0x5] + lsr r0, r0, #0x4 + strb r0, [r2, #0x6] + ldr r0, [r5] + ldrb r0, [r0, #0x6] + lsl r0, r0, #0x5 + ldr r4, ._668 + 68 + add r0, r0, r4 + ldr r6, ._668 + 72 + add r1, r4, r6 + mov r2, #0x10 + bl CpuSet + ldr r0, [r5] + ldrb r0, [r0, #0x6] + lsl r0, r0, #0x5 + add r0, r0, r4 + ldr r1, ._668 + 76 + mov r2, #0x10 + bl CpuSet + ldr r1, ._668 + 80 + mov r7, sl + lsl r0, r7, #0x2 + add r0, r0, sl + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._668 + 84 + str r1, [r0] + ldr r0, [r5] + mov r1, #0x0 + strb r1, [r0, #0x9] + bl StopCryAndClearCrySongs + ldr r0, [r5] + ldrh r0, [r0] + mov r1, #0x0 + bl PlayCry1 + add sp, sp, #0xc + pop {r3, r4, r5} + mov r8, r3 + mov r9, r4 + mov sl, r5 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._669: + .align 2, 0 +._668: + .word gUnknown_Debug_2038A20 + .word gMonFrontPicTable + .word gMonFrontPicCoords + .word gUnknown_081FAF4C + .word gMonPaletteTable + .word gUnknown_02024E8C + .word gSprites+0x1c + .word debug_69+1 + .word gSprites + .word gMonBackPicTable + .word gMonBackPicCoords + .word sub_809D62C+1 + .word 0x600f858 + .word 0xf3fc + .word 0xf3fd + .word 0xf3fe + .word 0xf3ff + .word gPlttBufferUnfaded+0x200 + .word 0xffffff00 + .word gPlttBufferFaded+0x100 + .word gTasks + .word debug_80C6EE8+1 + + thumb_func_end debug_80C6CB8 + + thumb_func_start debug_80C6EE8 +debug_80C6EE8: + push {r4, r5, r6, lr} + add r6, r0, #0 + lsl r6, r6, #0x18 + lsr r6, r6, #0x18 + ldr r4, ._670 + ldr r5, ._670 + 4 + ldr r1, [r5] + add r1, r1, #0x10 + add r0, r4, #0 + mov r2, #0x10 + bl CpuSet + ldr r0, ._670 + 8 + add r4, r4, r0 + ldr r3, [r5] + ldrb r0, [r3, #0x7] + add r0, r0, #0x81 + lsl r0, r0, #0x1 + add r0, r0, r4 + ldrh r4, [r0] + mov r1, #0x1f + and r1, r1, r4 + ldrb r2, [r3, #0xc] + mov r0, #0x20 + neg r0, r0 + and r0, r0, r2 + orr r0, r0, r1 + strb r0, [r3, #0xc] + ldr r3, [r5] + mov r1, #0xf8 + lsl r1, r1, #0x2 + and r1, r1, r4 + ldrh r2, [r3, #0xc] + ldr r0, ._670 + 12 + and r0, r0, r2 + orr r0, r0, r1 + strh r0, [r3, #0xc] + mov r1, #0xf8 + lsl r1, r1, #0x7 + and r1, r1, r4 + lsr r1, r1, #0x8 + ldrb r2, [r3, #0xd] + mov r0, #0x7d + neg r0, r0 + and r0, r0, r2 + orr r0, r0, r1 + strb r0, [r3, #0xd] + ldr r2, [r5] + ldrb r1, [r2, #0xd] + mov r0, #0x7f + and r0, r0, r1 + strb r0, [r2, #0xd] + ldr r0, [r5] + ldrb r0, [r0, #0x7] + add r0, r0, #0x1 + mov r1, #0xb + mov r2, #0xa + mov r3, #0x2 + bl debug_80C68CC + ldr r0, ._670 + 16 + mov r1, #0xd + mov r2, #0xa + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0xe + mov r2, #0xa + mov r3, #0x4 + bl debug_80C68CC + ldr r1, ._670 + 20 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._670 + 24 + str r1, [r0] + pop {r4, r5, r6} + pop {r0} + bx r0 +._671: + .align 2, 0 +._670: + .word gPlttBufferUnfaded+0x100 + .word gUnknown_Debug_2038A20 + .word 0xffffff00 + .word 0xfffffc1f + .word gUnknown_Debug_083F8813 + .word gTasks + .word debug_80C6FA8+1 + + thumb_func_end debug_80C6EE8 + + thumb_func_start debug_80C6FA8 +debug_80C6FA8: + push {r4, r5, r6, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + ldr r1, ._674 + ldrh r2, [r1, #0x2e] + mov r0, #0x2 + and r0, r0, r2 + add r4, r1, #0 + cmp r0, #0 + beq ._672 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r0, ._674 + 4 + bl SetMainCallback2 + ldr r1, ._674 + 8 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._674 + 12 + str r1, [r0] + b ._703 +._675: + .align 2, 0 +._674: + .word gMain + .word debug_80C370C+1 + .word gTasks + .word debug_80C373C+1 +._672: + ldrh r1, [r4, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._676 @cond_branch + ldr r4, ._678 + ldr r0, [r4] + ldrh r1, [r0] + mov r0, #0x0 + b ._677 +._679: + .align 2, 0 +._678: + .word gUnknown_Debug_2038A20 +._676: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._680 @cond_branch + ldr r4, ._682 + ldr r0, [r4] + ldrh r1, [r0] + mov r0, #0x1 +._677: + bl debug_80C3878 + ldr r1, [r4] + strh r0, [r1] + ldr r1, ._682 + 4 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._682 + 8 + str r1, [r0] + b ._703 +._683: + .align 2, 0 +._682: + .word gUnknown_Debug_2038A20 + .word gTasks + .word debug_80C71FC+1 +._680: + mov r3, #0x1 + and r3, r3, r2 + cmp r3, #0 + beq ._684 @cond_branch + ldr r0, ._686 + ldr r1, [r0] + mov r0, #0x1 + strb r0, [r1, #0x5] + ldr r1, ._686 + 4 + ldr r2, ._686 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._686 + 12 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._686 + 16 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._686 + 20 + str r1, [r0] + b ._703 +._687: + .align 2, 0 +._686: + .word gUnknown_Debug_2038A20 + .word 0x4000040 + .word 0x51ef + .word 0x4167 + .word gTasks + .word debug_80C7294+1 +._684: + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._689 @cond_branch + ldr r1, ._691 + ldr r2, [r1] + ldrb r0, [r2, #0x7] + cmp r0, #0xd + bhi ._689 @cond_branch + lsl r0, r0, #0x1 + ldr r2, ._691 + 4 + add r0, r0, r2 + strh r3, [r0] + ldr r1, [r1] + ldrb r0, [r1, #0x7] + add r0, r0, #0x1 + strb r0, [r1, #0x7] + b ._695 +._692: + .align 2, 0 +._691: + .word gUnknown_Debug_2038A20 + .word 0x5000102 +._689: + ldrh r1, [r4, #0x30] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._694 @cond_branch + ldr r2, ._696 + ldr r1, [r2] + ldrb r0, [r1, #0x7] + cmp r0, #0 + beq ._694 @cond_branch + lsl r0, r0, #0x1 + ldr r1, ._696 + 4 + add r0, r0, r1 + mov r1, #0x0 + strh r1, [r0] + ldr r1, [r2] + ldrb r0, [r1, #0x7] + sub r0, r0, #0x1 + strb r0, [r1, #0x7] + b ._695 +._697: + .align 2, 0 +._696: + .word gUnknown_Debug_2038A20 + .word 0x5000102 +._694: + ldrh r1, [r4, #0x2e] + mov r0, #0x8 + and r0, r0, r1 + cmp r0, #0 + beq ._698 @cond_branch + ldr r4, ._701 + ldr r2, [r4] + ldrb r0, [r2, #0x9] + mov r1, #0x1 + eor r0, r0, r1 + strb r0, [r2, #0x9] + ldr r1, [r4] + ldrb r0, [r1, #0x9] + cmp r0, #0 + beq ._699 @cond_branch + ldrh r0, [r1] + mov r1, #0x0 + mov r2, #0x0 + bl GetMonSpritePalFromOtIdPersonality + ldr r1, [r4] + ldrb r1, [r1, #0x6] + lsl r1, r1, #0x14 + mov r2, #0x80 + lsl r2, r2, #0x11 + add r1, r1, r2 + lsr r1, r1, #0x10 + mov r2, #0x20 + bl LoadCompressedPalette + b ._700 +._702: + .align 2, 0 +._701: + .word gUnknown_Debug_2038A20 +._699: + ldrh r0, [r1] + mov r1, #0x0 + mov r2, #0x9 + bl GetMonSpritePalFromOtIdPersonality + ldr r1, [r4] + ldrb r1, [r1, #0x6] + lsl r1, r1, #0x14 + mov r2, #0x80 + lsl r2, r2, #0x11 + add r1, r1, r2 + lsr r1, r1, #0x10 + mov r2, #0x20 + bl LoadCompressedPalette +._700: + ldr r5, ._704 + ldr r0, [r5] + ldrb r0, [r0, #0x6] + lsl r0, r0, #0x5 + ldr r4, ._704 + 4 + add r0, r0, r4 + ldr r2, ._704 + 8 + add r1, r4, r2 + mov r2, #0x10 + bl CpuSet + ldr r0, [r5] + ldrb r0, [r0, #0x6] + lsl r0, r0, #0x5 + add r0, r0, r4 + ldr r1, ._704 + 12 + mov r2, #0x10 + bl CpuSet +._695: + ldr r1, ._704 + 16 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._704 + 20 + str r1, [r0] + b ._703 +._705: + .align 2, 0 +._704: + .word gUnknown_Debug_2038A20 + .word gPlttBufferUnfaded+0x200 + .word 0xffffff00 + .word gPlttBufferFaded+0x100 + .word gTasks + .word debug_80C6EE8+1 +._698: + mov r0, #0x4 + and r0, r0, r1 + cmp r0, #0 + beq ._706 @cond_branch + bl StopCryAndClearCrySongs + ldr r0, ._707 + ldr r0, [r0] + ldrh r0, [r0] + mov r1, #0x0 + bl PlayCry1 +._706: + ldr r2, ._707 + ldr r1, [r2] + ldrb r0, [r1, #0x8] + add r0, r0, #0x4 + strb r0, [r1, #0x8] + ldr r3, [r2] + ldrb r1, [r3, #0x8] + mov r0, #0x1f + and r0, r0, r1 + strb r0, [r3, #0x8] + ldr r0, [r2] + ldrb r1, [r0, #0x7] + lsl r1, r1, #0x1 + ldr r2, ._707 + 4 + add r1, r1, r2 + ldr r2, ._707 + 8 + ldrb r0, [r0, #0x8] + lsl r0, r0, #0x1 + add r0, r0, r2 + ldrh r0, [r0] + strh r0, [r1] +._703: + add sp, sp, #0x4 + pop {r4, r5, r6} + pop {r0} + bx r0 +._708: + .align 2, 0 +._707: + .word gUnknown_Debug_2038A20 + .word 0x5000142 + .word gUnknown_Debug_083F8790 + + thumb_func_end debug_80C6FA8 + + thumb_func_start debug_80C71FC +debug_80C71FC: + push {r4, r5, r6, lr} + add r5, r0, #0 + lsl r5, r5, #0x18 + lsr r5, r5, #0x18 + ldr r6, ._709 + ldr r4, ._709 + 4 + ldr r0, [r4] + ldrb r1, [r0, #0x2] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + ldrb r0, [r0, #0x5] + lsr r0, r0, #0x4 + bl GetSpritePaletteTagByPaletteNum + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl FreeSpritePaletteByTag + ldr r0, [r4] + ldrb r1, [r0, #0x2] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + bl DestroySprite + ldr r0, [r4] + ldrb r1, [r0, #0x3] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + ldrb r0, [r0, #0x5] + lsr r0, r0, #0x4 + bl GetSpritePaletteTagByPaletteNum + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl FreeSpritePaletteByTag + ldr r0, [r4] + ldrb r1, [r0, #0x3] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + bl DestroySprite + ldr r0, [r4] + ldrb r1, [r0, #0x4] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + bl sub_809D510 + ldr r1, ._709 + 8 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._709 + 12 + str r1, [r0] + pop {r4, r5, r6} + pop {r0} + bx r0 +._710: + .align 2, 0 +._709: + .word gSprites + .word gUnknown_Debug_2038A20 + .word gTasks + .word debug_80C6CB8+1 + + thumb_func_end debug_80C71FC + + thumb_func_start debug_80C7294 +debug_80C7294: + push {r4, r5, r6, r7, lr} + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 + ldr r0, ._713 + ldrh r2, [r0, #0x2e] + mov r1, #0x1 + and r1, r1, r2 + add r3, r0, #0 + cmp r1, #0 + beq ._711 @cond_branch + ldr r0, ._713 + 4 + ldr r1, [r0] + mov r0, #0x0 + strb r0, [r1, #0x5] + ldr r1, ._713 + 8 + ldr r2, ._713 + 12 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._713 + 16 + add r0, r2, #0 + strh r0, [r1] + b ._712 +._714: + .align 2, 0 +._713: + .word gMain + .word gUnknown_Debug_2038A20 + .word 0x4000040 + .word 0x51ef + .word 0x699f +._711: + mov r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + beq ._715 @cond_branch + ldr r6, ._717 + ldr r0, [r6] + strb r1, [r0, #0x5] + ldr r1, ._717 + 4 + ldr r2, ._717 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._717 + 12 + add r0, r2, #0 + strh r0, [r1] + ldr r0, [r6] + add r0, r0, #0x10 + ldr r4, ._717 + 16 + add r1, r4, #0 + mov r2, #0x10 + bl CpuSet + ldr r0, [r6] + add r0, r0, #0x10 + ldr r5, ._717 + 20 + add r1, r5, #0 + mov r2, #0x10 + bl CpuSet + ldr r1, [r6] + add r0, r1, #0 + add r0, r0, #0x10 + ldrb r1, [r1, #0x6] + lsl r1, r1, #0x5 + mov r2, #0x80 + lsl r2, r2, #0x1 + add r4, r4, r2 + add r1, r1, r4 + mov r2, #0x10 + bl CpuSet + ldr r1, [r6] + add r0, r1, #0 + add r0, r0, #0x10 + ldrb r1, [r1, #0x6] + lsl r1, r1, #0x5 + mov r2, #0x80 + lsl r2, r2, #0x1 + add r5, r5, r2 + add r1, r1, r5 + mov r2, #0x10 + bl CpuSet +._712: + ldr r1, ._717 + 24 + lsl r0, r7, #0x2 + add r0, r0, r7 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._717 + 28 + str r1, [r0] + b ._754 +._718: + .align 2, 0 +._717: + .word gUnknown_Debug_2038A20 + .word 0x4000040 + .word 0x51ef + .word 0x699f + .word gPlttBufferUnfaded+0x100 + .word gPlttBufferFaded+0x100 + .word gTasks + .word debug_80C6EE8+1 +._715: + ldrh r1, [r3, #0x30] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._720 @cond_branch + ldr r0, ._722 + ldr r1, [r0] + ldrb r0, [r1, #0xa] + cmp r0, #0x1 + bhi ._720 @cond_branch + add r0, r0, #0x1 + strb r0, [r1, #0xa] + b ._754 +._723: + .align 2, 0 +._722: + .word gUnknown_Debug_2038A20 +._720: + ldrh r1, [r3, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._725 @cond_branch + ldr r0, ._727 + ldr r1, [r0] + ldrb r0, [r1, #0xa] + cmp r0, #0 + beq ._725 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1, #0xa] + b ._754 +._728: + .align 2, 0 +._727: + .word gUnknown_Debug_2038A20 +._725: + ldrh r1, [r3, #0x30] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._729 @cond_branch + ldr r0, ._734 + ldr r2, [r0] + ldrb r0, [r2, #0xa] + cmp r0, #0x1 + beq ._730 @cond_branch + cmp r0, #0x1 + bgt ._731 @cond_branch + cmp r0, #0 + beq ._732 @cond_branch + b ._754 +._735: + .align 2, 0 +._734: + .word gUnknown_Debug_2038A20 +._731: + cmp r0, #0x2 + beq ._736 @cond_branch + b ._754 +._732: + ldrb r3, [r2, #0xc] + lsl r1, r3, #0x1b + lsr r0, r1, #0x1b + cmp r0, #0x1e + bhi ._761 @cond_branch + add r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + mov r1, #0x20 + neg r1, r1 + and r1, r1, r3 + orr r1, r1, r0 + strb r1, [r2, #0xc] + b ._761 +._730: + ldrh r3, [r2, #0xc] + lsl r1, r3, #0x16 + lsr r0, r1, #0x1b + cmp r0, #0x1e + bhi ._761 @cond_branch + add r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + lsl r0, r0, #0x5 + ldr r1, ._742 + and r1, r1, r3 + orr r1, r1, r0 + strh r1, [r2, #0xc] + b ._761 +._743: + .align 2, 0 +._742: + .word 0xfffffc1f +._736: + ldrb r3, [r2, #0xd] + lsl r1, r3, #0x19 + lsr r0, r1, #0x1b + cmp r0, #0x1e + bhi ._761 @cond_branch + add r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + lsl r0, r0, #0x2 + mov r1, #0x7d + neg r1, r1 + and r1, r1, r3 + orr r1, r1, r0 + strb r1, [r2, #0xd] + b ._761 +._729: + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._754 @cond_branch + ldr r0, ._751 + ldr r3, [r0] + ldrb r0, [r3, #0xa] + cmp r0, #0x1 + beq ._747 @cond_branch + cmp r0, #0x1 + bgt ._748 @cond_branch + cmp r0, #0 + beq ._749 @cond_branch + b ._754 +._752: + .align 2, 0 +._751: + .word gUnknown_Debug_2038A20 +._748: + cmp r0, #0x2 + beq ._753 @cond_branch + b ._754 +._749: + ldrb r2, [r3, #0xc] + mov r0, #0x1f + and r0, r0, r2 + cmp r0, #0 + beq ._761 @cond_branch + lsl r0, r2, #0x1b + lsr r0, r0, #0x1b + sub r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + mov r1, #0x20 + neg r1, r1 + and r1, r1, r2 + orr r1, r1, r0 + strb r1, [r3, #0xc] + b ._761 +._747: + ldrh r2, [r3, #0xc] + mov r0, #0xf8 + lsl r0, r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + beq ._761 @cond_branch + lsl r0, r2, #0x16 + lsr r0, r0, #0x1b + sub r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + lsl r0, r0, #0x5 + ldr r1, ._759 + and r1, r1, r2 + orr r1, r1, r0 + strh r1, [r3, #0xc] + b ._761 +._760: + .align 2, 0 +._759: + .word 0xfffffc1f +._753: + ldrb r2, [r3, #0xd] + mov r0, #0x7c + and r0, r0, r2 + cmp r0, #0 + beq ._761 @cond_branch + lsl r0, r2, #0x19 + lsr r0, r0, #0x1b + sub r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + lsl r0, r0, #0x2 + mov r1, #0x7d + neg r1, r1 + and r1, r1, r2 + orr r1, r1, r0 + strb r1, [r3, #0xd] +._761: + ldr r0, ._762 + lsl r1, r7, #0x2 + add r1, r1, r7 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._762 + 4 + str r0, [r1] +._754: + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._763: + .align 2, 0 +._762: + .word gTasks + .word debug_80C74E4+1 + + thumb_func_end debug_80C7294 + + thumb_func_start debug_80C74E4 +debug_80C74E4: + push {r4, r5, r6, lr} + mov r6, r8 + push {r6} + add r5, r0, #0 + lsl r5, r5, #0x18 + lsr r5, r5, #0x18 + ldr r0, ._764 + ldr r3, [r0] + ldrb r0, [r3, #0xc] + lsl r0, r0, #0x1b + lsr r0, r0, #0x1b + ldrh r2, [r3, #0xc] + mov r1, #0xf8 + lsl r1, r1, #0x2 + and r1, r1, r2 + add r0, r0, r1 + ldrb r1, [r3, #0xd] + lsl r1, r1, #0x19 + lsr r1, r1, #0x1b + lsl r1, r1, #0xa + add r0, r0, r1 + ldr r6, ._764 + 4 + ldrb r1, [r3, #0x7] + add r1, r1, #0x81 + lsl r1, r1, #0x1 + add r1, r1, r6 + strh r0, [r1] + ldr r1, ._764 + 8 + mov r8, r1 + ldrb r1, [r3, #0x7] + add r1, r1, #0x81 + lsl r1, r1, #0x1 + add r1, r1, r8 + strh r0, [r1] + ldrb r1, [r3, #0x6] + lsl r1, r1, #0x4 + ldrb r2, [r3, #0x7] + ldr r4, ._764 + 12 + add r2, r2, r4 + add r1, r1, r2 + lsl r1, r1, #0x1 + add r1, r1, r6 + strh r0, [r1] + ldrb r1, [r3, #0x6] + lsl r1, r1, #0x4 + ldrb r2, [r3, #0x7] + add r2, r2, r4 + add r1, r1, r2 + lsl r1, r1, #0x1 + add r1, r1, r8 + strh r0, [r1] + mov r1, #0xe + mov r2, #0xa + mov r3, #0x4 + bl debug_80C68CC + ldr r1, ._764 + 16 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._764 + 20 + str r1, [r0] + pop {r3} + mov r8, r3 + pop {r4, r5, r6} + pop {r0} + bx r0 +._765: + .align 2, 0 +._764: + .word gUnknown_Debug_2038A20 + .word gPlttBufferUnfaded + .word gPlttBufferFaded + .word 0x101 + .word gTasks + .word debug_80C7294+1 + + thumb_func_end debug_80C74E4 + + thumb_func_start debug_80C7584 +debug_80C7584: + push {r4, lr} + add r2, r0, #0 + ldr r0, ._771 + ldr r3, [r0] + ldrb r1, [r3, #0x5] + add r4, r0, #0 + cmp r1, #0 + beq ._766 @cond_branch + mov r1, #0x2e + ldsh r0, [r2, r1] + cmp r0, #0x1 + beq ._767 @cond_branch + cmp r0, #0x1 + ble ._768 @cond_branch + cmp r0, #0x2 + beq ._769 @cond_branch +._768: + ldrb r0, [r3, #0xc] + lsl r0, r0, #0x1b + b ._773 +._772: + .align 2, 0 +._771: + .word gUnknown_Debug_2038A20 +._767: + ldrh r0, [r3, #0xc] + lsl r0, r0, #0x16 + b ._773 +._769: + ldrb r0, [r3, #0xd] + lsl r0, r0, #0x19 +._773: + lsr r0, r0, #0x1b + lsl r0, r0, #0x2 + strh r0, [r2, #0x24] + mov r1, #0x2e + ldsh r0, [r2, r1] + lsl r0, r0, #0x3 + strh r0, [r2, #0x26] + ldrh r0, [r2, #0x30] + add r3, r0, #1 + strh r3, [r2, #0x30] + mov r0, #0x2e + ldsh r1, [r2, r0] + ldr r0, [r4] + ldrb r0, [r0, #0xa] + cmp r1, r0 + bne ._775 @cond_branch + mov r0, #0x8 + and r3, r3, r0 + cmp r3, #0 + bne ._775 @cond_branch +._766: + add r0, r2, #0 + add r0, r0, #0x3e + ldrb r1, [r0] + mov r2, #0x4 + orr r1, r1, r2 + strb r1, [r0] + b ._776 +._775: + add r2, r2, #0x3e + ldrb r1, [r2] + mov r0, #0x5 + neg r0, r0 + and r0, r0, r1 + strb r0, [r2] +._776: + pop {r4} + pop {r0} + bx r0 + + thumb_func_end debug_80C7584 + + thumb_func_start InitSeeTrainers +InitSeeTrainers: + push {r4, r5, r6, lr} + add sp, sp, #0xfffffffc + bl debug_80C35DC + ldr r1, ._777 + ldr r2, ._777 + 4 + ldr r0, ._777 + 8 + str r1, [r0] + str r2, [r0, #0x4] + ldr r1, ._777 + 12 + str r1, [r0, #0x8] + ldr r0, [r0, #0x8] + ldr r0, ._777 + 16 + mov r1, #0x80 + mov r2, #0x60 + bl LoadPalette + mov r0, #0x1 + neg r0, r0 + mov r5, #0x0 + str r5, [sp] + mov r1, #0x0 + mov r2, #0x10 + mov r3, #0x0 + bl BeginNormalPaletteFade + ldr r0, ._777 + 20 + mov r6, #0x0 + strh r5, [r0] + add r0, r0, #0x4 + strh r5, [r0] + sub r0, r0, #0x2 + strh r5, [r0] + add r0, r0, #0x4 + strh r5, [r0] + ldr r1, ._777 + 24 + mov r0, #0x3f + strh r0, [r1] + add r1, r1, #0x2 + mov r0, #0x1f + strh r0, [r1] + add r1, r1, #0x6 + mov r0, #0xf1 + strh r0, [r1] + ldr r0, ._777 + 28 + strh r5, [r0] + add r1, r1, #0x4 + mov r0, #0x7 + strh r0, [r1] + ldr r3, ._777 + 32 + ldrh r2, [r3] + strh r5, [r3] + ldr r4, ._777 + 36 + ldrh r0, [r4] + mov r1, #0x1 + orr r0, r0, r1 + strh r0, [r4] + strh r2, [r3] + ldr r0, ._777 + 40 + bl SetVBlankCallback + ldr r0, ._777 + 44 + bl SetMainCallback2 + ldr r1, ._777 + 48 + ldr r2, ._777 + 52 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x2 + ldr r2, ._777 + 56 + add r0, r2, #0 + strh r0, [r1] + sub r1, r1, #0xa + mov r2, #0xcd + lsl r2, r2, #0x6 + add r0, r2, #0 + strh r0, [r1] + ldr r0, ._777 + 60 + mov r1, #0x0 + bl CreateTask + ldr r1, ._777 + 64 + ldr r0, ._777 + 68 + str r0, [r1] + strh r5, [r0] + strb r6, [r0, #0x2] + strb r6, [r0, #0x3] + strb r6, [r0, #0x5] + strb r6, [r0, #0x7] + strb r6, [r0, #0xa] + strb r6, [r0, #0x8] + ldr r4, ._777 + 72 + add r0, r4, #0 + mov r1, #0x6c + mov r2, #0x74 + mov r3, #0x0 + bl CreateSprite + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + ldr r6, ._777 + 76 + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + strh r5, [r0, #0x2e] + mov r1, #0x0 + bl StartSpriteAnim + add r0, r4, #0 + mov r1, #0x6c + mov r2, #0x74 + mov r3, #0x0 + bl CreateSprite + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + mov r1, #0x1 + strh r1, [r0, #0x2e] + bl StartSpriteAnim + add r0, r4, #0 + mov r1, #0x6c + mov r2, #0x74 + mov r3, #0x0 + bl CreateSprite + add r1, r0, #0 + lsl r1, r1, #0x18 + lsr r1, r1, #0x18 + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + mov r1, #0x2 + strh r1, [r0, #0x2e] + bl StartSpriteAnim + add sp, sp, #0x4 + pop {r4, r5, r6} + pop {r0} + bx r0 +._778: + .align 2, 0 +._777: + .word byte_83F88EC + .word 0x600e000 + .word 0x40000d4 + .word 0x80000400 + .word word_83F888C + .word 0x4000040 + .word 0x4000048 + .word 0x4000052 + .word 0x4000208 + .word 0x4000200 + .word debug_80C3758+1 + .word debug_80C370C+1 + .word 0x4000008 + .word 0x1f0b + .word 0x1e0a + .word debug_80C777C+1 + .word gUnknown_Debug_2038A20 + .word +0x2018000 + .word gSpriteTemplate_83F8874 + .word gSprites + + thumb_func_end InitSeeTrainers + + thumb_func_start debug_80C777C +debug_80C777C: + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + add sp, sp, #0xffffffec + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 + ldr r1, ._784 + mov r0, sp + mov r2, #0x12 + bl memcpy + mov r0, #0x9 + mov r1, #0x0 + mov r2, #0xe + mov r3, #0x7 + bl Menu_DrawStdWindowFrame + mov r0, #0x0 + mov r1, #0x0 + mov r2, #0x9 + mov r3, #0x9 + bl Menu_DrawStdWindowFrame + mov r0, #0x0 + mov r1, #0xa + mov r2, #0x9 + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r0, #0xe + mov r1, #0x0 + mov r2, #0x1d + mov r3, #0x7 + bl Menu_DrawStdWindowFrame + ldr r0, ._784 + 4 + mov r1, #0xf + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._784 + 8 + mov r1, #0x19 + mov r2, #0x1 + bl Menu_PrintText + ldr r0, ._784 + 12 + mov r1, #0xf + mov r2, #0x5 + bl Menu_PrintText + mov r0, #0xa + mov r1, #0x8 + mov r2, #0x1d + mov r3, #0xc + bl Menu_DrawStdWindowFrame + mov r2, #0x0 + ldr r4, ._784 + 16 + ldr r0, ._784 + 20 + add r3, r0, #0 +._779: + lsl r0, r2, #0x1 + add r0, r0, r4 + add r1, r2, r3 + strh r1, [r0] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0xe + bls ._779 @cond_branch + mov r2, #0x0 + ldr r5, ._784 + 24 + lsl r6, r7, #0x2 + mov r8, r6 + ldr r4, ._784 + 28 + ldr r0, ._784 + 32 + add r3, r0, #0 +._780: + lsl r0, r2, #0x1 + add r0, r0, r4 + add r1, r2, r3 + strh r1, [r0] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0xe + bls ._780 @cond_branch + add r0, r5, #0 + mov r1, #0x14 + mov r2, #0xa + bl Menu_PrintText + mov r0, #0xa + mov r1, #0xd + mov r2, #0x1d + mov r3, #0x13 + bl Menu_DrawStdWindowFrame + mov r1, sp + mov r0, #0x23 + strb r0, [r1] + mov r2, #0x0 + ldr r4, ._784 + 36 + mov r5, #0x93 + lsl r5, r5, #0x8 + add r3, r5, #0 +._781: + lsl r1, r2, #0x1 + add r1, r1, r4 + mov r6, sp + add r0, r6, r2 + ldrb r0, [r0] + add r0, r0, r3 + strh r0, [r1] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x11 + bls ._781 @cond_branch + mov r1, sp + mov r0, #0x24 + strb r0, [r1] + mov r2, #0x0 + ldr r5, ._784 + 40 + ldr r4, ._784 + 44 + mov r0, #0x93 + lsl r0, r0, #0x8 + add r3, r0, #0 +._782: + lsl r1, r2, #0x1 + add r1, r1, r4 + mov r6, sp + add r0, r6, r2 + ldrb r0, [r0] + add r0, r0, r3 + strh r0, [r1] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x11 + bls ._782 @cond_branch + mov r1, sp + mov r0, #0x25 + strb r0, [r1] + mov r2, #0x0 + ldr r4, ._784 + 48 + mov r0, #0x93 + lsl r0, r0, #0x8 + add r3, r0, #0 +._783: + lsl r1, r2, #0x1 + add r1, r1, r4 + mov r6, sp + add r0, r6, r2 + ldrb r0, [r0] + add r0, r0, r3 + strh r0, [r1] + add r0, r2, #1 + lsl r0, r0, #0x18 + lsr r2, r0, #0x18 + cmp r2, #0x11 + bls ._783 @cond_branch + add r0, r5, #0 + mov r1, #0xf + mov r2, #0x11 + bl Menu_PrintText + ldr r1, ._784 + 52 + ldr r2, ._784 + 56 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r5, ._784 + 60 + add r0, r5, #0 + strh r0, [r1] + ldr r1, ._784 + 64 + mov r6, r8 + add r0, r6, r7 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._784 + 68 + str r1, [r0] + add sp, sp, #0x14 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._785: + .align 2, 0 +._784: + .word gUnknown_Debug_083F8815 + .word gUnknown_Debug_083F87D0 + .word gUnknown_Debug_083F87D8 + .word gUnknown_Debug_083F87E0 + .word 0x600fa56 + .word 0xa311 + .word gUnknown_Debug_083F87F4 + .word 0x600f256 + .word 0x8301 + .word 0x600f396 + .word gUnknown_Debug_083F8801 + .word 0x600f3d6 + .word 0x600f416 + .word 0x4000040 + .word 0x51ef + .word 0x699f + .word gTasks + .word debug_80C7934+1 + + thumb_func_end debug_80C777C + + thumb_func_start debug_80C7934 +debug_80C7934: + push {r4, r5, r6, lr} + mov r6, r8 + push {r6} + add sp, sp, #0xfffffff8 + mov r8, r0 + lsl r0, r0, #0x18 + lsr r0, r0, #0x18 + mov r8, r0 + ldr r5, ._786 + ldr r6, [r5] + ldrh r2, [r6] + lsl r0, r2, #0x3 + ldr r1, ._786 + 4 + add r0, r0, r1 + ldr r1, ._786 + 8 + lsl r2, r2, #0x2 + add r2, r2, r1 + ldrb r1, [r2] + ldrb r2, [r2, #0x1] + ldr r4, ._786 + 12 + ldr r3, [r4] + ldr r4, [r4, #0x4] + str r4, [sp] + ldrh r4, [r6] + str r4, [sp, #0x4] + bl DecompressPicFromTable_2 + ldr r0, [r5] + ldrh r0, [r0] + lsl r0, r0, #0x3 + ldr r1, ._786 + 16 + add r0, r0, r1 + bl LoadCompressedObjectPalette + ldr r0, [r5] + ldrh r0, [r0] + mov r1, #0x1 + bl GetMonSpriteTemplate_803C5A0 + ldr r0, ._786 + 20 + mov r1, #0x28 + mov r2, #0x28 + mov r3, #0x0 + bl CreateSprite + ldr r1, [r5] + mov r6, #0x0 + strb r0, [r1, #0x2] + ldr r4, ._786 + 24 + ldr r2, [r5] + ldrb r1, [r2, #0x2] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r1, r4, #0 + add r1, r1, #0x1c + add r0, r0, r1 + ldr r1, ._786 + 28 + str r1, [r0] + ldrb r0, [r2, #0x2] + lsl r1, r0, #0x4 + add r1, r1, r0 + lsl r1, r1, #0x2 + add r1, r1, r4 + ldrb r2, [r1, #0x5] + mov r0, #0xd + neg r0, r0 + and r0, r0, r2 + strb r0, [r1, #0x5] + ldr r0, [r5] + ldrh r0, [r0] + mov r1, #0x1a + mov r2, #0x5 + bl debug_80C376C + ldr r2, [r5] + ldrb r1, [r2, #0x2] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r4 + ldrb r0, [r0, #0x5] + lsr r0, r0, #0x4 + strb r0, [r2, #0x6] + ldr r0, [r5] + ldrb r0, [r0, #0x6] + lsl r0, r0, #0x5 + ldr r4, ._786 + 32 + add r0, r0, r4 + ldr r2, ._786 + 36 + add r1, r4, r2 + mov r2, #0x10 + bl CpuSet + ldr r0, [r5] + ldrb r0, [r0, #0x6] + lsl r0, r0, #0x5 + add r0, r0, r4 + ldr r1, ._786 + 40 + mov r2, #0x10 + bl CpuSet + ldr r1, ._786 + 44 + mov r2, r8 + lsl r0, r2, #0x2 + add r0, r0, r8 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._786 + 48 + str r1, [r0] + ldr r0, [r5] + strb r6, [r0, #0x9] + add sp, sp, #0x8 + pop {r3} + mov r8, r3 + pop {r4, r5, r6} + pop {r0} + bx r0 +._787: + .align 2, 0 +._786: + .word gUnknown_Debug_2038A20 + .word gTrainerFrontPicTable + .word gTrainerFrontPicCoords + .word gUnknown_081FAF4C + .word gTrainerFrontPicPaletteTable + .word gUnknown_02024E8C + .word gSprites + .word debug_69+1 + .word gPlttBufferUnfaded+0x200 + .word 0xffffff00 + .word gPlttBufferFaded+0x100 + .word gTasks + .word debug_80C7A54+1 + + thumb_func_end debug_80C7934 + + thumb_func_start debug_80C7A54 +debug_80C7A54: + push {r4, r5, r6, lr} + add r6, r0, #0 + lsl r6, r6, #0x18 + lsr r6, r6, #0x18 + ldr r4, ._788 + ldr r5, ._788 + 4 + ldr r1, [r5] + add r1, r1, #0x10 + add r0, r4, #0 + mov r2, #0x10 + bl CpuSet + ldr r0, ._788 + 8 + add r4, r4, r0 + ldr r3, [r5] + ldrb r0, [r3, #0x7] + add r0, r0, #0x81 + lsl r0, r0, #0x1 + add r0, r0, r4 + ldrh r4, [r0] + mov r1, #0x1f + and r1, r1, r4 + ldrb r2, [r3, #0xc] + mov r0, #0x20 + neg r0, r0 + and r0, r0, r2 + orr r0, r0, r1 + strb r0, [r3, #0xc] + ldr r3, [r5] + mov r1, #0xf8 + lsl r1, r1, #0x2 + and r1, r1, r4 + ldrh r2, [r3, #0xc] + ldr r0, ._788 + 12 + and r0, r0, r2 + orr r0, r0, r1 + strh r0, [r3, #0xc] + mov r1, #0xf8 + lsl r1, r1, #0x7 + and r1, r1, r4 + lsr r1, r1, #0x8 + ldrb r2, [r3, #0xd] + mov r0, #0x7d + neg r0, r0 + and r0, r0, r2 + orr r0, r0, r1 + strb r0, [r3, #0xd] + ldr r2, [r5] + ldrb r1, [r2, #0xd] + mov r0, #0x7f + and r0, r0, r1 + strb r0, [r2, #0xd] + ldr r0, [r5] + ldrb r0, [r0, #0x7] + add r0, r0, #0x1 + mov r1, #0xb + mov r2, #0xa + mov r3, #0x2 + bl debug_80C68CC + ldr r0, ._788 + 16 + mov r1, #0xd + mov r2, #0xa + bl Menu_PrintText + add r0, r4, #0 + mov r1, #0xe + mov r2, #0xa + mov r3, #0x4 + bl debug_80C68CC + ldr r1, ._788 + 20 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._788 + 24 + str r1, [r0] + pop {r4, r5, r6} + pop {r0} + bx r0 +._789: + .align 2, 0 +._788: + .word gPlttBufferUnfaded+0x100 + .word gUnknown_Debug_2038A20 + .word 0xffffff00 + .word 0xfffffc1f + .word gUnknown_Debug_083F8813 + .word gTasks + .word debug_80C7B14+1 + + thumb_func_end debug_80C7A54 + + thumb_func_start debug_80C7B14 +debug_80C7B14: + push {r4, r5, r6, lr} + add sp, sp, #0xfffffffc + lsl r0, r0, #0x18 + lsr r6, r0, #0x18 + ldr r1, ._792 + ldrh r3, [r1, #0x2e] + mov r0, #0x2 + and r0, r0, r3 + add r4, r1, #0 + cmp r0, #0 + beq ._790 @cond_branch + mov r0, #0x5 + bl PlaySE + mov r0, #0x1 + neg r0, r0 + mov r1, #0x0 + str r1, [sp] + mov r2, #0x0 + mov r3, #0x10 + bl BeginNormalPaletteFade + ldr r0, ._792 + 4 + bl SetMainCallback2 + ldr r1, ._792 + 8 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._792 + 12 + str r1, [r0] + b ._821 +._793: + .align 2, 0 +._792: + .word gMain + .word debug_80C370C+1 + .word gTasks + .word debug_80C373C+1 +._790: + ldrh r1, [r4, #0x30] + mov r0, #0x80 + lsl r0, r0, #0x1 + and r0, r0, r1 + cmp r0, #0 + beq ._794 @cond_branch + ldr r4, ._796 + ldr r0, [r4] + ldrh r1, [r0] + mov r0, #0x0 + b ._795 +._797: + .align 2, 0 +._796: + .word gUnknown_Debug_2038A20 +._794: + mov r0, #0x80 + lsl r0, r0, #0x2 + and r0, r0, r1 + cmp r0, #0 + beq ._798 @cond_branch + ldr r4, ._800 + ldr r0, [r4] + ldrh r1, [r0] + mov r0, #0x1 +._795: + bl debug_80C38B4 + ldr r1, [r4] + strh r0, [r1] + ldr r1, ._800 + 4 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._800 + 8 + str r1, [r0] + b ._821 +._801: + .align 2, 0 +._800: + .word gUnknown_Debug_2038A20 + .word gTasks + .word debug_80C7D44+1 +._798: + mov r2, #0x1 + and r2, r2, r3 + cmp r2, #0 + beq ._802 @cond_branch + ldr r0, ._804 + ldr r1, [r0] + mov r0, #0x1 + strb r0, [r1, #0x5] + ldr r1, ._804 + 4 + ldr r2, ._804 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._804 + 12 + add r0, r2, #0 + strh r0, [r1] + ldr r1, ._804 + 16 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._804 + 20 + str r1, [r0] + b ._821 +._805: + .align 2, 0 +._804: + .word gUnknown_Debug_2038A20 + .word 0x4000040 + .word 0x51ef + .word 0x4167 + .word gTasks + .word debug_80C7DDC+1 +._802: + mov r0, #0x10 + and r0, r0, r1 + ldr r3, ._809 + cmp r0, #0 + beq ._807 @cond_branch + ldr r1, [r3] + ldrb r0, [r1, #0x7] + cmp r0, #0xd + bhi ._807 @cond_branch + lsl r0, r0, #0x1 + ldr r1, ._809 + 4 + add r0, r0, r1 + strh r2, [r0] + ldr r1, [r3] + ldrb r0, [r1, #0x7] + add r0, r0, #0x1 + strb r0, [r1, #0x7] + b ._813 +._810: + .align 2, 0 +._809: + .word gUnknown_Debug_2038A20 + .word 0x5000102 +._807: + ldrh r1, [r4, #0x30] + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._812 @cond_branch + ldr r1, [r3] + ldrb r0, [r1, #0x7] + cmp r0, #0 + beq ._812 @cond_branch + lsl r0, r0, #0x1 + ldr r2, ._814 + add r0, r0, r2 + mov r1, #0x0 + strh r1, [r0] + ldr r1, [r3] + ldrb r0, [r1, #0x7] + sub r0, r0, #0x1 + strb r0, [r1, #0x7] + b ._813 +._815: + .align 2, 0 +._814: + .word 0x5000102 +._812: + ldrh r1, [r4, #0x2e] + mov r0, #0x8 + and r0, r0, r1 + cmp r0, #0 + beq ._816 @cond_branch + ldr r4, ._819 + ldr r2, [r4] + ldrb r0, [r2, #0x9] + mov r1, #0x1 + eor r0, r0, r1 + strb r0, [r2, #0x9] + ldr r1, [r4] + ldrb r0, [r1, #0x9] + cmp r0, #0 + beq ._817 @cond_branch + ldrh r0, [r1] + mov r1, #0x0 + mov r2, #0x0 + bl GetMonSpritePalFromOtIdPersonality + ldr r1, [r4] + ldrb r1, [r1, #0x6] + lsl r1, r1, #0x14 + mov r2, #0x80 + lsl r2, r2, #0x11 + add r1, r1, r2 + lsr r1, r1, #0x10 + mov r2, #0x20 + bl LoadCompressedPalette + b ._818 +._820: + .align 2, 0 +._819: + .word gUnknown_Debug_2038A20 +._817: + ldrh r0, [r1] + mov r1, #0x0 + mov r2, #0x9 + bl GetMonSpritePalFromOtIdPersonality + ldr r1, [r4] + ldrb r1, [r1, #0x6] + lsl r1, r1, #0x14 + mov r2, #0x80 + lsl r2, r2, #0x11 + add r1, r1, r2 + lsr r1, r1, #0x10 + mov r2, #0x20 + bl LoadCompressedPalette +._818: + ldr r5, ._822 + ldr r0, [r5] + ldrb r0, [r0, #0x6] + lsl r0, r0, #0x5 + ldr r4, ._822 + 4 + add r0, r0, r4 + ldr r2, ._822 + 8 + add r1, r4, r2 + mov r2, #0x10 + bl CpuSet + ldr r0, [r5] + ldrb r0, [r0, #0x6] + lsl r0, r0, #0x5 + add r0, r0, r4 + ldr r1, ._822 + 12 + mov r2, #0x10 + bl CpuSet +._813: + ldr r1, ._822 + 16 + lsl r0, r6, #0x2 + add r0, r0, r6 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._822 + 20 + str r1, [r0] + b ._821 +._823: + .align 2, 0 +._822: + .word gUnknown_Debug_2038A20 + .word gPlttBufferUnfaded+0x200 + .word 0xffffff00 + .word gPlttBufferFaded+0x100 + .word gTasks + .word debug_80C7A54+1 +._816: + ldr r1, [r3] + ldrb r0, [r1, #0x8] + add r0, r0, #0x4 + strb r0, [r1, #0x8] + ldr r2, [r3] + ldrb r1, [r2, #0x8] + mov r0, #0x1f + and r0, r0, r1 + strb r0, [r2, #0x8] + ldr r0, [r3] + ldrb r1, [r0, #0x7] + lsl r1, r1, #0x1 + ldr r2, ._824 + add r1, r1, r2 + ldr r2, ._824 + 4 + ldrb r0, [r0, #0x8] + lsl r0, r0, #0x1 + add r0, r0, r2 + ldrh r0, [r0] + strh r0, [r1] +._821: + add sp, sp, #0x4 + pop {r4, r5, r6} + pop {r0} + bx r0 +._825: + .align 2, 0 +._824: + .word 0x5000142 + .word gUnknown_Debug_083F8790 + + thumb_func_end debug_80C7B14 + + thumb_func_start debug_80C7D44 +debug_80C7D44: + push {r4, r5, r6, lr} + add r5, r0, #0 + lsl r5, r5, #0x18 + lsr r5, r5, #0x18 + ldr r6, ._826 + ldr r4, ._826 + 4 + ldr r0, [r4] + ldrb r1, [r0, #0x2] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + ldrb r0, [r0, #0x5] + lsr r0, r0, #0x4 + bl GetSpritePaletteTagByPaletteNum + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl FreeSpritePaletteByTag + ldr r0, [r4] + ldrb r1, [r0, #0x2] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + bl DestroySprite + ldr r0, [r4] + ldrb r1, [r0, #0x3] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + ldrb r0, [r0, #0x5] + lsr r0, r0, #0x4 + bl GetSpritePaletteTagByPaletteNum + lsl r0, r0, #0x10 + lsr r0, r0, #0x10 + bl FreeSpritePaletteByTag + ldr r0, [r4] + ldrb r1, [r0, #0x3] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + bl DestroySprite + ldr r0, [r4] + ldrb r1, [r0, #0x4] + lsl r0, r1, #0x4 + add r0, r0, r1 + lsl r0, r0, #0x2 + add r0, r0, r6 + bl sub_809D510 + ldr r1, ._826 + 8 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._826 + 12 + str r1, [r0] + pop {r4, r5, r6} + pop {r0} + bx r0 +._827: + .align 2, 0 +._826: + .word gSprites + .word gUnknown_Debug_2038A20 + .word gTasks + .word debug_80C7934+1 + + thumb_func_end debug_80C7D44 + + thumb_func_start debug_80C7DDC +debug_80C7DDC: + push {r4, r5, r6, r7, lr} + lsl r0, r0, #0x18 + lsr r7, r0, #0x18 + ldr r0, ._830 + ldrh r2, [r0, #0x2e] + mov r1, #0x1 + and r1, r1, r2 + add r3, r0, #0 + cmp r1, #0 + beq ._828 @cond_branch + ldr r0, ._830 + 4 + ldr r1, [r0] + mov r0, #0x0 + strb r0, [r1, #0x5] + ldr r1, ._830 + 8 + ldr r2, ._830 + 12 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._830 + 16 + add r0, r2, #0 + strh r0, [r1] + b ._829 +._831: + .align 2, 0 +._830: + .word gMain + .word gUnknown_Debug_2038A20 + .word 0x4000040 + .word 0x51ef + .word 0x699f +._828: + mov r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + beq ._832 @cond_branch + ldr r6, ._834 + ldr r0, [r6] + strb r1, [r0, #0x5] + ldr r1, ._834 + 4 + ldr r2, ._834 + 8 + add r0, r2, #0 + strh r0, [r1] + add r1, r1, #0x4 + ldr r2, ._834 + 12 + add r0, r2, #0 + strh r0, [r1] + ldr r0, [r6] + add r0, r0, #0x10 + ldr r4, ._834 + 16 + add r1, r4, #0 + mov r2, #0x10 + bl CpuSet + ldr r0, [r6] + add r0, r0, #0x10 + ldr r5, ._834 + 20 + add r1, r5, #0 + mov r2, #0x10 + bl CpuSet + ldr r1, [r6] + add r0, r1, #0 + add r0, r0, #0x10 + ldrb r1, [r1, #0x6] + lsl r1, r1, #0x5 + mov r2, #0x80 + lsl r2, r2, #0x1 + add r4, r4, r2 + add r1, r1, r4 + mov r2, #0x10 + bl CpuSet + ldr r1, [r6] + add r0, r1, #0 + add r0, r0, #0x10 + ldrb r1, [r1, #0x6] + lsl r1, r1, #0x5 + mov r2, #0x80 + lsl r2, r2, #0x1 + add r5, r5, r2 + add r1, r1, r5 + mov r2, #0x10 + bl CpuSet +._829: + ldr r1, ._834 + 24 + lsl r0, r7, #0x2 + add r0, r0, r7 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._834 + 28 + str r1, [r0] + b ._871 +._835: + .align 2, 0 +._834: + .word gUnknown_Debug_2038A20 + .word 0x4000040 + .word 0x51ef + .word 0x699f + .word gPlttBufferUnfaded+0x100 + .word gPlttBufferFaded+0x100 + .word gTasks + .word debug_80C7A54+1 +._832: + ldrh r1, [r3, #0x30] + mov r0, #0x80 + and r0, r0, r1 + cmp r0, #0 + beq ._837 @cond_branch + ldr r0, ._839 + ldr r1, [r0] + ldrb r0, [r1, #0xa] + cmp r0, #0x1 + bhi ._837 @cond_branch + add r0, r0, #0x1 + strb r0, [r1, #0xa] + b ._871 +._840: + .align 2, 0 +._839: + .word gUnknown_Debug_2038A20 +._837: + ldrh r1, [r3, #0x30] + mov r0, #0x40 + and r0, r0, r1 + cmp r0, #0 + beq ._842 @cond_branch + ldr r0, ._844 + ldr r1, [r0] + ldrb r0, [r1, #0xa] + cmp r0, #0 + beq ._842 @cond_branch + sub r0, r0, #0x1 + strb r0, [r1, #0xa] + b ._871 +._845: + .align 2, 0 +._844: + .word gUnknown_Debug_2038A20 +._842: + ldrh r1, [r3, #0x30] + mov r0, #0x10 + and r0, r0, r1 + cmp r0, #0 + beq ._846 @cond_branch + ldr r0, ._851 + ldr r2, [r0] + ldrb r0, [r2, #0xa] + cmp r0, #0x1 + beq ._847 @cond_branch + cmp r0, #0x1 + bgt ._848 @cond_branch + cmp r0, #0 + beq ._849 @cond_branch + b ._871 +._852: + .align 2, 0 +._851: + .word gUnknown_Debug_2038A20 +._848: + cmp r0, #0x2 + beq ._853 @cond_branch + b ._871 +._849: + ldrb r3, [r2, #0xc] + lsl r1, r3, #0x1b + lsr r0, r1, #0x1b + cmp r0, #0x1e + bhi ._878 @cond_branch + add r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + mov r1, #0x20 + neg r1, r1 + and r1, r1, r3 + orr r1, r1, r0 + strb r1, [r2, #0xc] + b ._878 +._847: + ldrh r3, [r2, #0xc] + lsl r1, r3, #0x16 + lsr r0, r1, #0x1b + cmp r0, #0x1e + bhi ._878 @cond_branch + add r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + lsl r0, r0, #0x5 + ldr r1, ._859 + and r1, r1, r3 + orr r1, r1, r0 + strh r1, [r2, #0xc] + b ._878 +._860: + .align 2, 0 +._859: + .word 0xfffffc1f +._853: + ldrb r3, [r2, #0xd] + lsl r1, r3, #0x19 + lsr r0, r1, #0x1b + cmp r0, #0x1e + bhi ._878 @cond_branch + add r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + lsl r0, r0, #0x2 + mov r1, #0x7d + neg r1, r1 + and r1, r1, r3 + orr r1, r1, r0 + strb r1, [r2, #0xd] + b ._878 +._846: + mov r0, #0x20 + and r0, r0, r1 + cmp r0, #0 + beq ._871 @cond_branch + ldr r0, ._868 + ldr r3, [r0] + ldrb r0, [r3, #0xa] + cmp r0, #0x1 + beq ._864 @cond_branch + cmp r0, #0x1 + bgt ._865 @cond_branch + cmp r0, #0 + beq ._866 @cond_branch + b ._871 +._869: + .align 2, 0 +._868: + .word gUnknown_Debug_2038A20 +._865: + cmp r0, #0x2 + beq ._870 @cond_branch + b ._871 +._866: + ldrb r2, [r3, #0xc] + mov r0, #0x1f + and r0, r0, r2 + cmp r0, #0 + beq ._878 @cond_branch + lsl r0, r2, #0x1b + lsr r0, r0, #0x1b + sub r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + mov r1, #0x20 + neg r1, r1 + and r1, r1, r2 + orr r1, r1, r0 + strb r1, [r3, #0xc] + b ._878 +._864: + ldrh r2, [r3, #0xc] + mov r0, #0xf8 + lsl r0, r0, #0x2 + and r0, r0, r2 + cmp r0, #0 + beq ._878 @cond_branch + lsl r0, r2, #0x16 + lsr r0, r0, #0x1b + sub r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + lsl r0, r0, #0x5 + ldr r1, ._876 + and r1, r1, r2 + orr r1, r1, r0 + strh r1, [r3, #0xc] + b ._878 +._877: + .align 2, 0 +._876: + .word 0xfffffc1f +._870: + ldrb r2, [r3, #0xd] + mov r0, #0x7c + and r0, r0, r2 + cmp r0, #0 + beq ._878 @cond_branch + lsl r0, r2, #0x19 + lsr r0, r0, #0x1b + sub r0, r0, #0x1 + mov r1, #0x1f + and r0, r0, r1 + lsl r0, r0, #0x2 + mov r1, #0x7d + neg r1, r1 + and r1, r1, r2 + orr r1, r1, r0 + strb r1, [r3, #0xd] +._878: + ldr r0, ._879 + lsl r1, r7, #0x2 + add r1, r1, r7 + lsl r1, r1, #0x3 + add r1, r1, r0 + ldr r0, ._879 + 4 + str r0, [r1] +._871: + pop {r4, r5, r6, r7} + pop {r0} + bx r0 +._880: + .align 2, 0 +._879: + .word gTasks + .word debug_80C802C+1 + + thumb_func_end debug_80C7DDC + + thumb_func_start debug_80C802C +debug_80C802C: + push {r4, r5, r6, lr} + mov r6, r8 + push {r6} + add r5, r0, #0 + lsl r5, r5, #0x18 + lsr r5, r5, #0x18 + ldr r0, ._881 + ldr r3, [r0] + ldrb r0, [r3, #0xc] + lsl r0, r0, #0x1b + lsr r0, r0, #0x1b + ldrh r2, [r3, #0xc] + mov r1, #0xf8 + lsl r1, r1, #0x2 + and r1, r1, r2 + add r0, r0, r1 + ldrb r1, [r3, #0xd] + lsl r1, r1, #0x19 + lsr r1, r1, #0x1b + lsl r1, r1, #0xa + add r0, r0, r1 + ldr r6, ._881 + 4 + ldrb r1, [r3, #0x7] + add r1, r1, #0x81 + lsl r1, r1, #0x1 + add r1, r1, r6 + strh r0, [r1] + ldr r1, ._881 + 8 + mov r8, r1 + ldrb r1, [r3, #0x7] + add r1, r1, #0x81 + lsl r1, r1, #0x1 + add r1, r1, r8 + strh r0, [r1] + ldrb r1, [r3, #0x6] + lsl r1, r1, #0x4 + ldrb r2, [r3, #0x7] + ldr r4, ._881 + 12 + add r2, r2, r4 + add r1, r1, r2 + lsl r1, r1, #0x1 + add r1, r1, r6 + strh r0, [r1] + ldrb r1, [r3, #0x6] + lsl r1, r1, #0x4 + ldrb r2, [r3, #0x7] + add r2, r2, r4 + add r1, r1, r2 + lsl r1, r1, #0x1 + add r1, r1, r8 + strh r0, [r1] + mov r1, #0xe + mov r2, #0xa + mov r3, #0x4 + bl debug_80C68CC + ldr r1, ._881 + 16 + lsl r0, r5, #0x2 + add r0, r0, r5 + lsl r0, r0, #0x3 + add r0, r0, r1 + ldr r1, ._881 + 20 + str r1, [r0] + pop {r3} + mov r8, r3 + pop {r4, r5, r6} + pop {r0} + bx r0 +._882: + .align 2, 0 +._881: + .word gUnknown_Debug_2038A20 + .word gPlttBufferUnfaded + .word gPlttBufferFaded + .word 0x101 + .word gTasks + .word debug_80C7DDC+1 + + thumb_func_end debug_80C802C + + .align 2, 0 + +.endif -- cgit v1.2.3 From e50f5e906776a799ec69418168f032880e16384c Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Thu, 25 Jan 2018 19:36:54 -0600 Subject: more debug integrations --- asm/battle_1.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'asm') diff --git a/asm/battle_1.s b/asm/battle_1.s index 24553e020..8ed743677 100644 --- a/asm/battle_1.s +++ b/asm/battle_1.s @@ -809,7 +809,7 @@ sub_800DAB8: mov r2, #0x80 lsl r2, r2, #0x4 add r1, r4, #0 - bl gMysteryEventScriptCmdTableEnd+0x3cb4 @ uh, what? + bl CpuSet ldr r0, ._113 + 12 mov r1, #0x0 mov r2, #0x40 -- cgit v1.2.3 From 8aae2583eb851d1442b85e28d7bcb13a15c1818d Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Sat, 27 Jan 2018 16:41:07 -0600 Subject: add comments for pool loads --- asm/battle_1.s | 14 +- asm/battle_9.s | 36 +- asm/nakamura_debug_menu.s | 476 +++++++-------- asm/nohara_debug_menu.s | 340 +++++------ asm/pokemon_storage_system.s | 236 ++++---- asm/taya_debug_window.s | 252 ++++---- asm/tomomichi_debug_menu.s | 1160 ++++++++++++++++++------------------- asm/unk_debug_menu_3.s | 104 ++-- asm/watanabe_debug_menu.s | 1306 +++++++++++++++++++++--------------------- 9 files changed, 1962 insertions(+), 1962 deletions(-) (limited to 'asm') diff --git a/asm/battle_1.s b/asm/battle_1.s index 8ed743677..cd925e10d 100644 --- a/asm/battle_1.s +++ b/asm/battle_1.s @@ -800,34 +800,34 @@ sub_800DAB8: .syntax divided push {r4, r5, lr} add sp, sp, #0xfffffffc - ldr r0, ._113 + ldr r0, ._113 @ gUnknown_08D00000 mov r1, #0xc0 lsl r1, r1, #0x13 bl LZDecompressVram - ldr r0, ._113 + 4 - ldr r4, ._113 + 8 + ldr r0, ._113 + 4 @ gUnknown_08D00524 + ldr r4, ._113 + 8 @ 0x600c000 mov r2, #0x80 lsl r2, r2, #0x4 add r1, r4, #0 bl CpuSet - ldr r0, ._113 + 12 + ldr r0, ._113 + 12 @ gUnknown_08D004E0 mov r1, #0x0 mov r2, #0x40 bl LoadCompressedPalette bl sub_800D74C bl DrawMainBattleBackground - ldr r0, ._113 + 16 + ldr r0, ._113 + 16 @ gBattleTypeFlags ldrh r1, [r0] mov r0, #0x2 and r0, r0, r1 cmp r0, #0 beq ._112 @cond_branch - ldr r0, ._113 + 20 + ldr r0, ._113 + 20 @ 0x6000600 mov r1, #0x0 add r2, r4, #0 mov r3, #0x1 bl debug_sub_8008218 - ldr r5, ._113 + 24 + ldr r5, ._113 + 24 @ 0x101 mov r4, #0x1 str r4, [sp] add r0, r5, #0 diff --git a/asm/battle_9.s b/asm/battle_9.s index 62e2baae6..3f162df12 100644 --- a/asm/battle_9.s +++ b/asm/battle_9.s @@ -1392,7 +1392,7 @@ _08036AFE: sub_8036B0C: .syntax divided push {r4, r5, r6, lr} - ldr r5, ._205 + ldr r5, ._205 @ gBattleTypeFlags ldrh r1, [r5] mov r0, #0x8 and r0, r0, r1 @@ -1406,13 +1406,13 @@ sub_8036B0C: bne ._199 @cond_branch b ._200 ._199: - ldr r4, ._205 + 4 - ldr r0, ._205 + 8 + ldr r4, ._205 + 4 @ 0x2000000 + ldr r0, ._205 + 8 @ gActiveBank ldrb r0, [r0] bl GetBankIdentity lsl r0, r0, #0x18 lsr r0, r0, #0x19 - ldr r1, ._205 + 12 + ldr r1, ._205 + 12 @ 0x160c8 add r0, r0, r1 add r0, r0, r4 ldrb r0, [r0] @@ -1438,7 +1438,7 @@ sub_8036B0C: .align 2, 0 ._205: .word gBattleTypeFlags - .word +0x2000000 + .word 0x2000000 .word gActiveBank .word 0x160c8 ._203: @@ -1455,13 +1455,13 @@ sub_8036B0C: ._212: mov r0, #0x64 mul r0, r0, r4 - ldr r1, ._214 + ldr r1, ._214 @ gEnemyParty add r0, r0, r1 mov r1, #0x39 bl GetMonData cmp r0, #0 beq ._210 @cond_branch - ldr r1, ._214 + 4 + ldr r1, ._214 + 4 @ gBattlePartyID lsl r0, r6, #0x1 add r0, r0, r1 ldrh r0, [r0] @@ -1472,8 +1472,8 @@ sub_8036B0C: ldrh r0, [r0] cmp r4, r0 beq ._210 @cond_branch - ldr r1, ._214 + 8 - ldr r2, ._214 + 12 + ldr r1, ._214 + 8 @ 0x2000000 + ldr r2, ._214 + 12 @ 0x16068 add r0, r6, r2 add r0, r0, r1 ldrb r0, [r0] @@ -1489,23 +1489,23 @@ sub_8036B0C: cmp r4, #0x5 ble ._212 @cond_branch ._211: - ldr r0, ._214 + 16 + ldr r0, ._214 + 16 @ gActiveBank ldrb r0, [r0] bl GetBankIdentity - ldr r1, ._214 + 8 + ldr r1, ._214 + 8 @ 0x2000000 lsl r0, r0, #0x18 lsr r0, r0, #0x19 - ldr r3, ._214 + 20 + ldr r3, ._214 + 20 @ 0x160c8 add r0, r0, r3 add r0, r0, r1 strb r4, [r0] ._201: - ldr r4, ._214 + 16 + ldr r4, ._214 + 16 @ gActiveBank ldrb r0, [r4] bl GetBankIdentity - ldr r2, ._214 + 8 + ldr r2, ._214 + 8 @ 0x2000000 ldrb r1, [r4] - ldr r3, ._214 + 12 + ldr r3, ._214 + 12 @ 0x16068 add r1, r1, r3 add r1, r1, r2 lsl r0, r0, #0x18 @@ -1521,12 +1521,12 @@ sub_8036B0C: ._214: .word gEnemyParty .word gBattlePartyID - .word +0x2000000 + .word 0x2000000 .word 0x16068 .word gActiveBank .word 0x160c8 ._200: - ldr r0, ._218 + ldr r0, ._218 @ gUnknown_02023A14 ldrb r1, [r0] mov r0, #0x20 and r0, r0, r1 @@ -1537,7 +1537,7 @@ sub_8036B0C: cmp r0, #0 bne ._217 @cond_branch ._216: - ldr r0, ._218 + 4 + ldr r0, ._218 + 4 @ gActiveBank ldrb r0, [r0] mov r2, #0x1 eor r2, r2, r0 diff --git a/asm/nakamura_debug_menu.s b/asm/nakamura_debug_menu.s index 2ef359b48..21092fe4b 100644 --- a/asm/nakamura_debug_menu.s +++ b/asm/nakamura_debug_menu.s @@ -15,7 +15,7 @@ debug_sub_815F1B8: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._1 + ldr r3, ._1 @ _843E3DC mov r0, #0x10 mov r1, #0x1 mov r2, #0x9 @@ -43,8 +43,8 @@ debug_sub_815F1B8: InitNakamuraDebugMenu: push {lr} bl debug_sub_815F1B8 - ldr r1, ._3 - ldr r0, ._3 + 4 + ldr r1, ._3 @ gMenuCallback + ldr r0, ._3 + 4 @ debug_sub_815F214 str r0, [r1] mov r0, #0x0 pop {r1} @@ -60,7 +60,7 @@ InitNakamuraDebugMenu: thumb_func_start debug_sub_815F214 debug_sub_815F214: push {r4, lr} - ldr r4, ._9 + ldr r4, ._9 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -83,7 +83,7 @@ debug_sub_815F214: and r0, r0, r1 cmp r0, #0 beq ._7 @cond_branch - ldr r4, ._9 + 4 + ldr r4, ._9 + 4 @ _843E3DC bl Menu_GetCursorPos lsl r0, r0, #0x18 lsr r0, r0, #0x15 @@ -122,7 +122,7 @@ debug_sub_815F284: push {r4, lr} lsl r0, r0, #0x18 lsr r4, r0, #0x18 - ldr r0, ._14 + ldr r0, ._14 @ gPaletteFade ldrb r1, [r0, #0x7] mov r0, #0x80 and r0, r0, r1 @@ -151,10 +151,10 @@ debug_sub_815F2B4: add sp, sp, #0xfffffffc bl CloseMenu bl Menu_EraseScreen - ldr r1, ._16 - ldr r0, ._16 + 4 + ldr r1, ._16 @ gMain + ldr r0, ._16 + 4 @ sub_805469C str r0, [r1, #0x8] - ldr r0, ._16 + 8 + ldr r0, ._16 + 8 @ debug_sub_815F284 mov r1, #0x0 bl CreateTask mov r0, #0x1 @@ -191,9 +191,9 @@ debug_sub_815F2F4: lsl r1, r7, #0x2 add r0, r1, r7 lsl r2, r0, #0x5 - ldr r3, ._24 + ldr r3, ._24 @ gSaveBlock1 add r0, r2, r3 - ldr r5, ._24 + 4 + ldr r5, ._24 + 4 @ 0x1a08 add r0, r0, r5 ldrb r0, [r0] mov r9, r1 @@ -204,10 +204,10 @@ debug_sub_815F2F4: b ._19 ._18: mov r5, #0x0 - ldr r6, ._24 + 8 + ldr r6, ._24 + 8 @ gSaveBlock2 add r4, r7, #0 sub r4, r4, #0x46 - ldr r3, ._24 + 12 + ldr r3, ._24 + 12 @ gSaveBlock1 ._21: add r1, r5, r2 add r1, r1, r3 @@ -240,15 +240,15 @@ debug_sub_815F2F4: ._23: add r0, r0, r3 strb r4, [r0] - ldr r1, ._35 - ldr r2, ._35 + 4 + ldr r1, ._35 @ gSaveBlock1 + ldr r2, ._35 + 4 @ 0x1a08 add r2, r2, r1 mov sl, r2 mov r3, r9 add r0, r3, r7 lsl r6, r0, #0x5 add r1, r6, r1 - ldr r5, ._35 + 4 + ldr r5, ._35 + 4 @ 0x1a08 add r5, r5, r1 mov r8, r5 ._30: @@ -259,7 +259,7 @@ debug_sub_815F2F4: bl __umodsi3 lsl r0, r0, #0x10 lsr r0, r0, #0xe - ldr r1, ._35 + 8 + ldr r1, ._35 + 8 @ _843E424 add r0, r0, r1 ldrb r0, [r0] mov r2, r8 @@ -271,9 +271,9 @@ debug_sub_815F2F4: ldrb r3, [r3] cmp r0, r3 beq ._28 @cond_branch - ldr r4, ._35 + ldr r4, ._35 @ gSaveBlock1 add r0, r6, r4 - ldr r2, ._35 + 4 + ldr r2, ._35 + 4 @ 0x1a08 add r3, r0, r2 ._29: add r0, r5, #1 @@ -297,12 +297,12 @@ debug_sub_815F2F4: mov r5, r9 add r4, r5, r7 lsl r4, r4, #0x5 - ldr r1, ._35 + ldr r1, ._35 @ gSaveBlock1 add r3, r4, r1 lsl r0, r0, #0x10 lsr r0, r0, #0x10 mov r1, #0x1 - ldr r2, ._35 + 12 + ldr r2, ._35 + 12 @ 0x1a09 add r3, r3, r2 and r0, r0, r1 lsl r0, r0, #0x4 @@ -314,7 +314,7 @@ debug_sub_815F2F4: orr r1, r1, r0 strb r1, [r3] mov r5, #0x0 - ldr r6, ._35 + 16 + ldr r6, ._35 + 16 @ gSaveBlock1 ._31: bl Random add r1, r5, r4 @@ -329,7 +329,7 @@ debug_sub_815F2F4: mov r1, r9 add r0, r1, r7 lsl r4, r0, #0x5 - ldr r3, ._35 + 20 + ldr r3, ._35 + 20 @ gSaveBlock1 mov r2, #0x0 add r6, r3, #0 add r6, r6, #0x10 @@ -381,18 +381,18 @@ debug_sub_815F470: add r6, r0, #0 add r7, r1, #0 mov ip, r2 - ldr r2, ._39 - ldr r0, ._39 + 4 + ldr r2, ._39 @ gSaveBlock1 + ldr r0, ._39 + 4 @ _nakamuraData0 ldrb r1, [r0] lsl r0, r1, #0x2 add r0, r0, r1 lsl r0, r0, #0x5 add r0, r0, r2 - ldr r1, ._39 + 8 + ldr r1, ._39 + 8 @ 0x1a08 add r0, r0, r1 ldrb r4, [r0] mov r2, #0x0 - ldr r3, ._39 + 12 + ldr r3, ._39 + 12 @ _843E424 add r5, r3, #0 ._41: lsl r1, r2, #0x2 @@ -443,8 +443,8 @@ debug_sub_815F4D8: mov r2, #0xa mov r3, #0xa bl Menu_BlankWindowRect - ldr r6, ._43 - ldr r7, ._43 + 4 + ldr r6, ._43 @ gStringVar1 + ldr r7, ._43 + 4 @ _nakamuraData0 ldrb r1, [r7] add r0, r6, #0 mov r2, #0x0 @@ -454,13 +454,13 @@ debug_sub_815F4D8: mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r2, ._43 + 8 + ldr r2, ._43 + 8 @ gSaveBlock1 ldrb r1, [r7] lsl r0, r1, #0x2 add r0, r0, r1 lsl r0, r0, #0x5 add r0, r0, r2 - ldr r1, ._43 + 12 + ldr r1, ._43 + 12 @ 0x1a08 add r0, r0, r1 ldrb r0, [r0] cmp r0, #0 @@ -480,7 +480,7 @@ debug_sub_815F4D8: mov r1, #0x1 mov r2, #0x3 bl Menu_PrintText - ldr r0, ._43 + 16 + ldr r0, ._43 + 16 @ Str_843E550 mov r1, #0x1 mov r2, #0x5 bl Menu_PrintText @@ -494,7 +494,7 @@ debug_sub_815F4D8: mov r1, #0x2 mov r2, #0x5 bl Menu_PrintText - ldr r0, ._43 + 20 + ldr r0, ._43 + 20 @ Str_843E552 mov r1, #0x1 mov r2, #0x7 bl Menu_PrintText @@ -507,7 +507,7 @@ debug_sub_815F4D8: mov r1, #0x3 mov r2, #0x7 bl Menu_PrintText - ldr r0, ._43 + 24 + ldr r0, ._43 + 24 @ Str_843E554 mov r1, #0x1 mov r2, #0x9 bl Menu_PrintText @@ -541,7 +541,7 @@ debug_sub_815F4D8: thumb_func_start debug_sub_815F5C4 debug_sub_815F5C4: push {lr} - ldr r0, ._48 + ldr r0, ._48 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x20 and r0, r0, r1 @@ -549,7 +549,7 @@ debug_sub_815F5C4: lsr r2, r0, #0x10 cmp r2, #0 beq ._45 @cond_branch - ldr r1, ._48 + 4 + ldr r1, ._48 + 4 @ _nakamuraData0 ldrb r0, [r1] cmp r0, #0 bne ._46 @cond_branch @@ -568,7 +568,7 @@ debug_sub_815F5C4: and r0, r0, r1 cmp r0, #0 beq ._51 @cond_branch - ldr r1, ._54 + ldr r1, ._54 @ _nakamuraData0 ldrb r0, [r1] cmp r0, #0x13 bne ._52 @cond_branch @@ -605,11 +605,11 @@ debug_sub_815F5C4: thumb_func_start debug_sub_815F62C debug_sub_815F62C: push {lr} - ldr r1, ._59 + ldr r1, ._59 @ _nakamuraData0 mov r0, #0x0 strb r0, [r1] - ldr r1, ._59 + 4 - ldr r0, ._59 + 8 + ldr r1, ._59 + 4 @ gMenuCallback + ldr r0, ._59 + 8 @ debug_sub_815F5C4 str r0, [r1] mov r0, #0x0 mov r1, #0x0 @@ -637,12 +637,12 @@ debug_sub_815F62C: thumb_func_start debug_sub_815F668 debug_sub_815F668: push {r4, r5, r6, lr} - ldr r0, ._61 + ldr r0, ._61 @ _nakamuraData0 ldrb r0, [r0] lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x5 - ldr r0, ._61 + 4 + ldr r0, ._61 + 4 @ gSaveBlock1 add r1, r1, r0 ldrb r4, [r1, #0x3] lsl r4, r4, #0x18 @@ -654,8 +654,8 @@ debug_sub_815F668: orr r4, r4, r0 ldrb r0, [r1] orr r4, r4, r0 - ldr r5, ._61 + 8 - ldr r6, ._61 + 12 + ldr r5, ._61 + 8 @ gStringVar1 + ldr r6, ._61 + 12 @ 0x186a0 add r0, r4, #0 add r1, r6, #0 bl __udivsi3 @@ -701,13 +701,13 @@ debug_sub_815F6E4: mov r2, #0xb mov r3, #0x4 bl Menu_BlankWindowRect - ldr r4, ._63 - ldr r0, ._63 + 4 + ldr r4, ._63 @ gStringVar1 + ldr r0, ._63 + 4 @ _nakamuraData0 ldrb r0, [r0] lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x5 - ldr r0, ._63 + 8 + ldr r0, ._63 + 8 @ gSaveBlock1 add r1, r1, r0 add r0, r4, #0 mov r2, #0x7 @@ -738,8 +738,8 @@ debug_sub_815F72C: mov r2, #0xb mov r3, #0xa bl Menu_BlankWindowRect - ldr r4, ._66 - ldr r5, ._66 + 4 + ldr r4, ._66 @ gStringVar1 + ldr r5, ._66 + 4 @ _nakamuraData0 ldrb r1, [r5] add r0, r4, #0 mov r2, #0x0 @@ -749,13 +749,13 @@ debug_sub_815F72C: mov r1, #0x2 mov r2, #0x1 bl Menu_PrintText - ldr r2, ._66 + 8 + ldr r2, ._66 + 8 @ gSaveBlock1 ldrb r1, [r5] lsl r0, r1, #0x2 add r0, r0, r1 lsl r0, r0, #0x5 add r0, r0, r2 - ldr r1, ._66 + 12 + ldr r1, ._66 + 12 @ 0x1a08 add r0, r0, r1 ldrb r0, [r0] cmp r0, #0 @@ -784,8 +784,8 @@ debug_sub_815F788: mov r2, #0xb mov r3, #0x6 bl Menu_BlankWindowRect - ldr r0, ._68 - ldr r1, ._68 + 4 + ldr r0, ._68 @ Str_843E574 + ldr r1, ._68 + 4 @ _nakamuraData2 ldrb r1, [r1] add r1, r1, #0x2 lsl r1, r1, #0x18 @@ -805,7 +805,7 @@ debug_sub_815F788: thumb_func_start debug_sub_815F7B4 debug_sub_815F7B4: push {lr} - ldr r0, ._72 + ldr r0, ._72 @ _nakamuraData1 ldrb r0, [r0] cmp r0, #0 beq ._70 @cond_branch @@ -820,10 +820,10 @@ debug_sub_815F7B4: ._72: .word _nakamuraData1 ._70: - ldr r0, ._74 + ldr r0, ._74 @ _nakamuraData3 ldrb r0, [r0] lsl r0, r0, #0x1 - ldr r1, ._74 + 4 + ldr r1, ._74 + 4 @ Str_843E576 add r0, r0, r1 mov r1, #0xb mov r2, #0x1 @@ -842,12 +842,12 @@ debug_sub_815F7B4: thumb_func_start debug_sub_815F7F0 debug_sub_815F7F0: push {r4, r5, lr} - ldr r1, ._78 + ldr r1, ._78 @ _nakamuraData0 ldrb r2, [r1] lsl r1, r2, #0x2 add r1, r1, r2 lsl r1, r1, #0x5 - ldr r2, ._78 + 4 + ldr r2, ._78 + 4 @ gSaveBlock1 add r3, r1, r2 ldrb r1, [r3, #0x3] lsl r2, r1, #0x18 @@ -862,7 +862,7 @@ debug_sub_815F7F0: lsl r0, r0, #0x18 asr r1, r0, #0x18 mov r4, #0x9 - ldr r0, ._78 + 8 + ldr r0, ._78 + 8 @ _nakamuraData2 ldrb r0, [r0] cmp r4, r0 ble ._76 @cond_branch @@ -911,12 +911,12 @@ debug_sub_815F7F0: debug_sub_815F86C: push {r4, r5, r6, lr} lsl r0, r0, #0x18 - ldr r1, ._84 + ldr r1, ._84 @ _nakamuraData0 ldrb r2, [r1] lsl r1, r2, #0x2 add r1, r1, r2 lsl r1, r1, #0x5 - ldr r2, ._84 + 4 + ldr r2, ._84 + 4 @ gSaveBlock1 add r5, r1, r2 mov r2, #0x0 mov r3, #0x0 @@ -924,7 +924,7 @@ debug_sub_815F86C: asr r0, r0, #0x18 cmp r0, #0x64 bne ._80 @cond_branch - ldr r0, ._84 + 8 + ldr r0, ._84 + 8 @ _nakamuraData2 ldrb r1, [r0] cmp r1, #0x6 bhi ._100 @cond_branch @@ -945,12 +945,12 @@ debug_sub_815F86C: .word gSaveBlock1+0x1a0a .word _nakamuraData2 ._80: - ldr r0, ._87 + ldr r0, ._87 @ _nakamuraData3 ldrb r0, [r0] cmp r0, #0x4 bhi ._98 @cond_branch lsl r0, r0, #0x2 - ldr r1, ._87 + 4 + ldr r1, ._87 + 4 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 @@ -985,7 +985,7 @@ debug_sub_815F86C: mov r3, #0xa1 mov r2, #0xaa ._98: - ldr r4, ._101 + ldr r4, ._101 @ _nakamuraData2 ldrb r1, [r4] add r1, r5, r1 ldrb r0, [r1] @@ -1019,14 +1019,14 @@ debug_sub_815F86C: thumb_func_start debug_sub_815F930 debug_sub_815F930: push {r4, r5, lr} - ldr r0, ._107 + ldr r0, ._107 @ _nakamuraData1 ldrb r2, [r0] mov r4, #0xa cmp r2, #0 bne ._103 @cond_branch mov r4, #0x7 ._103: - ldr r5, ._107 + 4 + ldr r5, ._107 + 4 @ gMain ldrh r1, [r5, #0x30] mov r0, #0x40 and r0, r0, r1 @@ -1067,7 +1067,7 @@ debug_sub_815F930: lsr r3, r0, #0x10 cmp r3, #0 beq ._114 @cond_branch - ldr r1, ._117 + ldr r1, ._117 @ _nakamuraData2 ldrb r0, [r1] cmp r0, #0 bne ._115 @cond_branch @@ -1089,7 +1089,7 @@ debug_sub_815F930: and r0, r0, r1 cmp r0, #0 beq ._120 @cond_branch - ldr r2, ._123 + ldr r2, ._123 @ _nakamuraData2 ldrb r1, [r2] sub r0, r4, #1 cmp r1, r0 @@ -1112,7 +1112,7 @@ debug_sub_815F930: beq ._126 @cond_branch cmp r2, #0 bne ._127 @cond_branch - ldr r4, ._129 + ldr r4, ._129 @ _nakamuraData3 ldrb r0, [r4] add r0, r0, #0x1 mov r1, #0x5 @@ -1140,8 +1140,8 @@ debug_sub_815F930: mov r2, #0xb mov r3, #0x2 bl Menu_BlankWindowRect - ldr r1, ._133 - ldr r0, ._133 + 4 + ldr r1, ._133 @ gMenuCallback + ldr r0, ._133 + 4 @ debug_sub_815FA38 str r0, [r1] b ._136 ._134: @@ -1170,7 +1170,7 @@ debug_sub_815F930: thumb_func_start debug_sub_815FA38 debug_sub_815FA38: push {r4, lr} - ldr r0, ._139 + ldr r0, ._139 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -1201,7 +1201,7 @@ debug_sub_815FA38: lsr r2, r0, #0x10 cmp r2, #0 beq ._143 @cond_branch - ldr r1, ._146 + ldr r1, ._146 @ _nakamuraData0 ldrb r0, [r1] cmp r0, #0 bne ._144 @cond_branch @@ -1221,7 +1221,7 @@ debug_sub_815FA38: lsr r4, r0, #0x10 cmp r4, #0 beq ._149 @cond_branch - ldr r1, ._152 + ldr r1, ._152 @ _nakamuraData0 ldrb r0, [r1] cmp r0, #0x13 bne ._150 @cond_branch @@ -1243,30 +1243,30 @@ debug_sub_815FA38: and r0, r0, r1 cmp r0, #0 beq ._155 @cond_branch - ldr r1, ._159 + ldr r1, ._159 @ _nakamuraData0 ldrb r0, [r1] cmp r0, #0 beq ._161 @cond_branch - ldr r2, ._159 + 4 + ldr r2, ._159 + 4 @ gSaveBlock1 add r1, r0, #0 lsl r0, r1, #0x2 add r0, r0, r1 lsl r0, r0, #0x5 add r0, r0, r2 - ldr r1, ._159 + 8 + ldr r1, ._159 + 8 @ 0x1a08 add r0, r0, r1 ldrb r0, [r0] cmp r0, #0 beq ._161 @cond_branch bl Menu_GetCursorPos - ldr r1, ._159 + 12 + ldr r1, ._159 + 12 @ _nakamuraData1 strb r0, [r1] - ldr r0, ._159 + 16 + ldr r0, ._159 + 16 @ _nakamuraData2 strb r4, [r0] bl debug_sub_815F788 bl debug_sub_815F7B4 - ldr r1, ._159 + 20 - ldr r0, ._159 + 24 + ldr r1, ._159 + 20 @ gMenuCallback + ldr r0, ._159 + 24 @ debug_sub_815F930 str r0, [r1] b ._161 ._160: @@ -1297,13 +1297,13 @@ debug_sub_815FA38: debug_sub_815FB1C: push {lr} add sp, sp, #0xfffffff8 - ldr r0, ._162 + ldr r0, ._162 @ _nakamuraData0 mov r1, #0x0 strb r1, [r0] - ldr r0, ._162 + 4 + ldr r0, ._162 + 4 @ _nakamuraData3 strb r1, [r0] - ldr r1, ._162 + 8 - ldr r0, ._162 + 12 + ldr r1, ._162 + 8 @ gMenuCallback + ldr r0, ._162 + 12 @ debug_sub_815FA38 str r0, [r1] mov r0, #0x0 mov r1, #0x0 @@ -1342,7 +1342,7 @@ debug_sub_815FB1C: thumb_func_start debug_sub_815FB78 debug_sub_815FB78: push {lr} - ldr r0, ._166 + ldr r0, ._166 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -1407,15 +1407,15 @@ debug_sub_815FB78: debug_sub_815FBE8: push {r4, lr} add sp, sp, #0xfffffff8 - ldr r1, ._178 - ldr r0, ._178 + 4 + ldr r1, ._178 @ gMenuCallback + ldr r0, ._178 + 4 @ debug_sub_815FB78 str r0, [r1] mov r0, #0x0 mov r1, #0x0 mov r2, #0x1d mov r3, #0x13 bl Menu_EraseWindowRect - ldr r4, ._178 + 8 + ldr r4, ._178 + 8 @ gStringVar1 add r0, r4, #0 bl debug_sub_814A73C mov r0, #0x0 @@ -1427,7 +1427,7 @@ debug_sub_815FBE8: mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r0, ._178 + 12 + ldr r0, ._178 + 12 @ Str_843E580 mov r1, #0x2 mov r2, #0x3 bl Menu_PrintText @@ -1459,11 +1459,11 @@ debug_sub_815FBE8: debug_sub_815FC54: push {r4, r5, r6, r7, lr} mov r3, #0x0 - ldr r7, ._181 + ldr r7, ._181 @ gSaveBlock1 mov r6, #0xe8 lsl r6, r6, #0x3 - ldr r5, ._181 + 4 - ldr r4, ._181 + 8 + ldr r5, ._181 + 4 @ 0x3e7 + ldr r4, ._181 + 8 @ 0x742 ._180: lsl r1, r3, #0x2 add r1, r1, r7 @@ -1519,7 +1519,7 @@ debug_sub_815FCB4: lsl r4, r4, #0x18 lsr r4, r4, #0x18 mov r7, #0x0 - ldr r5, ._188 + ldr r5, ._188 @ gMapHeader ldr r0, [r5] ldr r0, [r0, #0x4] mov r1, #0x3 @@ -1543,7 +1543,7 @@ debug_sub_815FCB4: add r5, r6, #1 cmp r4, r0 bge ._184 @cond_branch - ldr r0, ._188 + ldr r0, ._188 @ gMapHeader mov r9, r0 ._186: add r0, r4, #7 @@ -1563,7 +1563,7 @@ debug_sub_815FCB4: add r0, r4, #1 lsl r0, r0, #0x10 lsr r4, r0, #0x10 - ldr r0, ._188 + ldr r0, ._188 @ gMapHeader ldr r0, [r0] ldr r0, [r0] cmp r4, r0 @@ -1607,7 +1607,7 @@ debug_sub_815FD40: sub r0, r0, #0x7 strh r0, [r4] mov r5, #0x0 - ldr r1, ._192 + ldr r1, ._192 @ gMapHeader ldr r0, [r1] ldr r0, [r0, #0x4] add r7, r4, #0 @@ -1650,7 +1650,7 @@ debug_sub_815FD40: add r0, r4, #1 lsl r0, r0, #0x10 lsr r4, r0, #0x10 - ldr r0, ._200 + ldr r0, ._200 @ gMapHeader ldr r0, [r0] ._191: ldr r0, [r0] @@ -1659,7 +1659,7 @@ debug_sub_815FD40: add r0, r5, #1 lsl r0, r0, #0x10 lsr r5, r0, #0x10 - ldr r1, ._200 + ldr r1, ._200 @ gMapHeader ldr r0, [r1] ldr r0, [r0, #0x4] cmp r5, r0 @@ -1683,7 +1683,7 @@ debug_sub_815FD40: thumb_func_start debug_sub_815FDE4 debug_sub_815FDE4: push {lr} - ldr r0, ._205 + ldr r0, ._205 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x1 and r0, r0, r1 @@ -1727,11 +1727,11 @@ debug_sub_815FE1C: mov r2, #0x10 mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r0, ._210 + ldr r0, ._210 @ Str_843E58D mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r6, ._210 + 4 + ldr r6, ._210 + 4 @ gStringVar1 mov r0, #0x0 bl debug_sub_815FCB4 add r1, r0, #0 @@ -1810,8 +1810,8 @@ debug_sub_815FE1C: mov r1, #0xb mov r2, #0x7 bl Menu_PrintText - ldr r0, ._210 + 8 - ldr r1, ._210 + 12 + ldr r0, ._210 + 8 @ gSaveBlock1 + ldr r1, ._210 + 12 @ 0x2dd6 add r0, r0, r1 ldrh r0, [r0] bl FeebasSeedRng @@ -1877,7 +1877,7 @@ debug_sub_815FE1C: ._208: cmp r5, #0x6 bne ._209 @cond_branch - ldr r4, ._210 + 4 + ldr r4, ._210 + 4 @ gStringVar1 bl debug_sub_815FD40 add r1, r0, #0 lsl r1, r1, #0x10 @@ -1890,8 +1890,8 @@ debug_sub_815FE1C: mov r1, #0x2 mov r2, #0x11 bl Menu_PrintText - ldr r1, ._210 + 16 - ldr r0, ._210 + 20 + ldr r1, ._210 + 16 @ gMenuCallback + ldr r0, ._210 + 20 @ debug_sub_815FDE4 str r0, [r1] mov r0, #0x0 pop {r4, r5, r6, r7} @@ -1924,18 +1924,18 @@ debug_sub_815FFDC: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r0, ._214 + ldr r0, ._214 @ Str_843E5D4 mov r1, #0x1 mov r2, #0xf bl Menu_PrintText mov r5, #0x0 - ldr r0, ._214 + 4 + ldr r0, ._214 + 4 @ _nakamuraStatic0 mov r8, r0 ._216: mov r0, #0x64 add r1, r5, #0 mul r1, r1, r0 - ldr r0, ._214 + 8 + ldr r0, ._214 + 8 @ gPlayerParty add r6, r1, r0 add r0, r6, #0 mov r1, #0xb @@ -1978,15 +1978,15 @@ debug_sub_815FFDC: lsr r5, r0, #0x18 cmp r5, #0x5 bls ._216 @cond_branch - ldr r1, ._217 + ldr r1, ._217 @ _nakamuraData4 mov r0, #0x0 strb r0, [r1] mov r0, #0xf mov r1, #0x1 mov r2, #0xff bl PrintTriangleCursorWithPalette - ldr r1, ._217 + 4 - ldr r0, ._217 + 8 + ldr r1, ._217 + 4 @ gMenuCallback + ldr r0, ._217 + 8 @ debug_sub_8160498 str r0, [r1] pop {r3} mov r8, r3 @@ -2008,14 +2008,14 @@ debug_sub_816009C: add r2, r0, #0 lsl r2, r2, #0x18 lsr r2, r2, #0x18 - ldr r1, ._219 + ldr r1, ._219 @ _nakamuraStatic0 lsl r0, r2, #0x2 add r0, r0, r1 mov r3, #0x0 ldsh r1, [r0, r3] mov r0, #0xb mul r0, r0, r1 - ldr r1, ._219 + 4 + ldr r1, ._219 + 4 @ gSpeciesNames add r0, r0, r1 lsl r2, r2, #0x1 add r2, r2, #0x1 @@ -2040,20 +2040,20 @@ debug_sub_81600D0: lsl r0, r0, #0x18 lsr r4, r0, #0x18 add r5, r4, #0 - ldr r1, ._223 + ldr r1, ._223 @ Str_843E5F0 mov r0, sp mov r2, #0x2 bl memcpy mov r0, #0x64 mul r0, r0, r4 - ldr r1, ._223 + 4 + ldr r1, ._223 + 4 @ gPlayerParty add r0, r0, r1 bl GetMonGender lsl r0, r0, #0x18 lsr r0, r0, #0x18 cmp r0, #0 bne ._221 @cond_branch - ldr r0, ._223 + 8 + ldr r0, ._223 + 8 @ gOtherText_MaleSymbol2 b ._222 ._224: .align 2, 0 @@ -2064,7 +2064,7 @@ debug_sub_81600D0: ._221: cmp r0, #0xfe bne ._225 @cond_branch - ldr r0, ._227 + ldr r0, ._227 @ gOtherText_FemaleSymbolAndLv ._222: lsl r2, r4, #0x1 add r2, r2, #0x1 @@ -2099,8 +2099,8 @@ debug_sub_816013C: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r5, ._229 - ldr r1, ._229 + 4 + ldr r5, ._229 @ gStringVar1 + ldr r1, ._229 + 4 @ _nakamuraStatic0 lsl r0, r4, #0x2 add r0, r0, r1 mov r1, #0x2 @@ -2143,7 +2143,7 @@ debug_sub_816017C: mov r0, #0x10 mov r2, #0x1c bl Menu_BlankWindowRect - ldr r1, ._232 + ldr r1, ._232 @ _nakamuraStatic0 lsl r0, r4, #0x2 add r0, r0, r1 mov r1, #0x0 @@ -2177,7 +2177,7 @@ debug_sub_81601C8: lsr r5, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r1, ._239 + ldr r1, ._239 @ _nakamuraStatic0 lsl r0, r5, #0x2 add r2, r0, r1 mov r4, #0x0 @@ -2206,7 +2206,7 @@ debug_sub_81601C8: lsl r0, r0, #0x11 cmp r1, r0 ble ._237 @cond_branch - ldr r1, ._239 + 4 + ldr r1, ._239 + 4 @ 0xfffffe65 add r0, r2, r1 strh r0, [r4] ._237: @@ -2215,13 +2215,13 @@ debug_sub_81601C8: ldsh r0, [r4, r2] cmp r0, #0 bge ._238 @cond_branch - ldr r2, ._239 + 8 + ldr r2, ._239 + 8 @ 0x19b add r0, r1, r2 strh r0, [r4] ._238: mov r0, #0x64 mul r0, r0, r5 - ldr r1, ._239 + 12 + ldr r1, ._239 + 12 @ gPlayerParty add r0, r0, r1 ldrh r1, [r4] ldrb r2, [r4, #0x2] @@ -2252,7 +2252,7 @@ debug_sub_8160258: push {lr} lsl r0, r0, #0x18 lsr r2, r0, #0x18 - ldr r1, ._242 + ldr r1, ._242 @ _nakamuraStatic0 lsl r0, r2, #0x2 add r0, r0, r1 mov r1, #0x0 @@ -2279,7 +2279,7 @@ debug_sub_816027C: add r4, r0, #0 lsl r1, r1, #0x18 lsr r2, r1, #0x18 - ldr r1, ._247 + ldr r1, ._247 @ _nakamuraStatic0 lsl r0, r4, #0x2 add r3, r0, r1 mov r1, #0x0 @@ -2307,9 +2307,9 @@ debug_sub_816027C: ._246: mov r0, #0x64 mul r4, r4, r0 - ldr r0, ._247 + 4 + ldr r0, ._247 + 4 @ gPlayerParty add r4, r4, r0 - ldr r2, ._247 + 8 + ldr r2, ._247 + 8 @ gBaseStats mov r0, #0x0 ldsh r1, [r3, r0] lsl r0, r1, #0x3 @@ -2324,7 +2324,7 @@ debug_sub_816027C: mov r0, #0x2 ldrsb r0, [r3, r0] lsl r0, r0, #0x2 - ldr r1, ._247 + 12 + ldr r1, ._247 + 12 @ gExperienceTables add r0, r0, r1 add r2, r2, r0 add r0, r4, #0 @@ -2370,7 +2370,7 @@ debug_sub_8160308: mov r9, r0 mov r0, r9 mul r0, r0, r2 - ldr r7, ._254 + ldr r7, ._254 @ gPlayerParty add r6, r0, r7 ._251: add r0, r6, #0 @@ -2407,11 +2407,11 @@ debug_sub_8160308: cmp r2, #0x4 bls ._252 @cond_branch bl CalculatePlayerPartyCount - ldr r4, ._254 + 4 + ldr r4, ._254 + 4 @ gPlayerPartyCount ldrb r1, [r4] cmp r1, #0 bne ._253 @cond_branch - ldr r0, ._254 + ldr r0, ._254 @ gPlayerParty str r1, [sp] str r1, [sp, #0x4] str r1, [sp, #0x8] @@ -2445,7 +2445,7 @@ debug_sub_81603B8: lsr r6, r0, #0x18 mov r0, #0x5 bl PlaySE - ldr r7, ._259 + ldr r7, ._259 @ _nakamuraData4 ldrb r4, [r7] add r0, r4, #0 mov r1, #0x6 @@ -2457,7 +2457,7 @@ debug_sub_81603B8: bl __umodsi3 lsl r0, r0, #0x18 lsr r4, r0, #0x18 - ldr r0, ._259 + 4 + ldr r0, ._259 + 4 @ _843E5D1 add r0, r5, r0 ldrb r2, [r0] lsl r3, r4, #0x1 @@ -2489,7 +2489,7 @@ debug_sub_81603B8: ._258: strb r0, [r7] ._256: - ldr r1, ._264 + ldr r1, ._264 @ _nakamuraData4 cmp r6, #0x1 bne ._261 @cond_branch cmp r4, #0x5 @@ -2543,7 +2543,7 @@ debug_sub_81603B8: bl __umodsi3 add r1, r0, #0 lsl r1, r1, #0x18 - ldr r0, ._272 + ldr r0, ._272 @ _843E5D1 add r0, r5, r0 ldrb r0, [r0] lsr r1, r1, #0x17 @@ -2565,7 +2565,7 @@ debug_sub_81603B8: thumb_func_start debug_sub_8160498 debug_sub_8160498: push {r4, lr} - ldr r1, ._276 + ldr r1, ._276 @ gMain ldrh r2, [r1, #0x2e] mov r0, #0x40 and r0, r0, r2 @@ -2607,7 +2607,7 @@ debug_sub_8160498: and r0, r0, r1 cmp r0, #0 beq ._284 @cond_branch - ldr r4, ._289 + ldr r4, ._289 @ _nakamuraData4 ldrb r0, [r4] cmp r0, #0x5 bhi ._285 @cond_branch @@ -2649,7 +2649,7 @@ debug_sub_8160498: and r0, r0, r1 cmp r0, #0 beq ._291 @cond_branch - ldr r4, ._294 + ldr r4, ._294 @ _nakamuraData4 ldrb r0, [r4] cmp r0, #0x5 bhi ._304 @cond_branch @@ -2666,7 +2666,7 @@ debug_sub_8160498: and r0, r0, r1 cmp r0, #0 beq ._296 @cond_branch - ldr r4, ._301 + ldr r4, ._301 @ _nakamuraData4 ldrb r0, [r4] cmp r0, #0x5 bhi ._297 @cond_branch @@ -2709,7 +2709,7 @@ debug_sub_8160498: and r0, r0, r1 cmp r0, #0 beq ._303 @cond_branch - ldr r4, ._308 + ldr r4, ._308 @ _nakamuraData4 ldrb r0, [r4] cmp r0, #0x5 bhi ._304 @cond_branch @@ -2790,7 +2790,7 @@ debug_sub_816062C: mov r0, #0x64 mov r4, r8 mul r4, r4, r0 - ldr r0, ._316 + ldr r0, ._316 @ gPlayerParty add r4, r4, r0 add r0, r4, #0 mov r1, #0xb @@ -2801,7 +2801,7 @@ debug_sub_816062C: bl GetMonGender lsl r0, r0, #0x18 lsr r2, r0, #0x18 - ldr r1, ._316 + 4 + ldr r1, ._316 + 4 @ gBaseStats lsl r0, r7, #0x3 sub r0, r0, r7 lsl r0, r0, #0x2 @@ -2818,7 +2818,7 @@ debug_sub_816062C: mov r1, r8 mul r1, r1, r0 add r0, r1, #0 - ldr r1, ._316 + ldr r1, ._316 @ gPlayerParty add r0, r0, r1 bl GetMonGender lsl r0, r0, #0x18 @@ -2862,12 +2862,12 @@ debug_sub_816062C: mov r0, #0x64 mov r4, r8 mul r4, r4, r0 - ldr r0, ._323 + ldr r0, ._323 @ gPlayerParty add r4, r4, r0 add r0, r4, #0 mov r1, #0x42 bl GetMonData - ldr r0, ._323 + 4 + ldr r0, ._323 + 4 @ _nakamuraStatic0 add r0, r0, r9 ldrh r1, [r0] ldrb r2, [r0, #0x2] @@ -2978,7 +2978,7 @@ debug_sub_8160714: cmp r0, #0x31 ble ._334 @cond_branch ._333: - ldr r1, ._336 + ldr r1, ._336 @ ContestStatsText_GoldPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0xe @@ -2990,7 +2990,7 @@ debug_sub_8160714: ._334: cmp r7, #0x4 bne ._338 @cond_branch - ldr r1, ._340 + ldr r1, ._340 @ ContestStatsText_WhitePokeBlock add r0, r6, #0 bl StringCopy mov r0, #0xd @@ -3026,7 +3026,7 @@ debug_sub_8160714: cmp r4, #0x4 bne ._346 @cond_branch ._345: - ldr r1, ._348 + ldr r1, ._348 @ ContestStatsText_BlackPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0xc @@ -3038,7 +3038,7 @@ debug_sub_8160714: ._346: cmp r7, #0x3 bne ._350 @cond_branch - ldr r1, ._352 + ldr r1, ._352 @ ContestStatsText_GrayPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0xb @@ -3091,7 +3091,7 @@ debug_sub_8160714: ._360: cmp r2, #0 bne ._361 @cond_branch - ldr r1, ._363 + ldr r1, ._363 @ ContestStatsText_PurplePokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x6 @@ -3103,7 +3103,7 @@ debug_sub_8160714: ._361: cmp r2, #0x1 bne ._365 @cond_branch - ldr r1, ._367 + ldr r1, ._367 @ ContestStatsText_IndigoPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x7 @@ -3115,7 +3115,7 @@ debug_sub_8160714: ._365: cmp r2, #0x2 bne ._369 @cond_branch - ldr r1, ._371 + ldr r1, ._371 @ ContestStatsText_BrownPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x8 @@ -3127,7 +3127,7 @@ debug_sub_8160714: ._369: cmp r2, #0x3 bne ._373 @cond_branch - ldr r1, ._375 + ldr r1, ._375 @ ContestStatsText_LiteBluePokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x9 @@ -3139,7 +3139,7 @@ debug_sub_8160714: ._373: cmp r2, #0x4 bne ._377 @cond_branch - ldr r1, ._379 + ldr r1, ._379 @ ContestStatsText_OlivePokeBlock add r0, r6, #0 bl StringCopy mov r0, #0xa @@ -3160,7 +3160,7 @@ debug_sub_8160714: ldsh r0, [r0, r1] cmp r0, #0 beq ._383 @cond_branch - ldr r1, ._385 + ldr r1, ._385 @ ContestStatsText_RedPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x1 @@ -3174,7 +3174,7 @@ debug_sub_8160714: ldrh r0, [r0, #0x2] cmp r0, #0 beq ._387 @cond_branch - ldr r1, ._389 + ldr r1, ._389 @ ContestStatsText_BluePokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x2 @@ -3189,7 +3189,7 @@ debug_sub_8160714: ldsh r0, [r0, r4] cmp r0, #0 beq ._391 @cond_branch - ldr r1, ._393 + ldr r1, ._393 @ ContestStatsText_PinkPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x3 @@ -3204,7 +3204,7 @@ debug_sub_8160714: ldsh r0, [r0, r1] cmp r0, #0 beq ._395 @cond_branch - ldr r1, ._397 + ldr r1, ._397 @ ContestStatsText_GreenPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x4 @@ -3219,7 +3219,7 @@ debug_sub_8160714: ldsh r0, [r0, r4] cmp r0, #0 beq ._399 @cond_branch - ldr r1, ._401 + ldr r1, ._401 @ ContestStatsText_YellowPokeBlock add r0, r6, #0 bl StringCopy mov r0, #0x5 @@ -3229,7 +3229,7 @@ debug_sub_8160714: ._401: .word ContestStatsText_YellowPokeBlock ._399: - ldr r1, ._403 + ldr r1, ._403 @ gOtherText_FiveQuestions add r0, r6, #0 bl StringCopy mov r0, #0x0 @@ -3393,10 +3393,10 @@ debug_sub_8160A80: lsl r0, r0, #0x18 lsr r0, r0, #0x18 add r2, r0, #0 - ldr r1, ._422 + ldr r1, ._422 @ _nakamuraStatic18 cmp r0, #0 bne ._420 @cond_branch - ldr r4, ._422 + 4 + ldr r4, ._422 + 4 @ gStringVar1 ldrb r1, [r1, #0x1] add r0, r4, #0 bl debug_sub_816097C @@ -3413,7 +3413,7 @@ debug_sub_8160A80: ._420: cmp r0, #0x1 bne ._424 @cond_branch - ldr r4, ._426 + ldr r4, ._426 @ gStringVar1 ldrb r1, [r1, #0x2] add r0, r4, #0 bl debug_sub_816097C @@ -3429,7 +3429,7 @@ debug_sub_8160A80: ._424: cmp r0, #0x2 bne ._428 @cond_branch - ldr r4, ._430 + ldr r4, ._430 @ gStringVar1 ldrb r1, [r1, #0x3] add r0, r4, #0 bl debug_sub_816097C @@ -3445,7 +3445,7 @@ debug_sub_8160A80: ._428: cmp r0, #0x3 bne ._432 @cond_branch - ldr r4, ._434 + ldr r4, ._434 @ gStringVar1 ldrb r1, [r1, #0x4] add r0, r4, #0 bl debug_sub_816097C @@ -3461,7 +3461,7 @@ debug_sub_8160A80: ._432: cmp r0, #0x4 bne ._436 @cond_branch - ldr r4, ._438 + ldr r4, ._438 @ gStringVar1 ldrb r1, [r1, #0x5] add r0, r4, #0 bl debug_sub_816097C @@ -3477,7 +3477,7 @@ debug_sub_8160A80: ._436: cmp r2, #0x5 bne ._440 @cond_branch - ldr r4, ._441 + ldr r4, ._441 @ gStringVar1 ldrb r1, [r1, #0x6] add r0, r4, #0 bl debug_sub_816097C @@ -3505,7 +3505,7 @@ debug_sub_8160B50: lsl r1, r1, #0x18 lsr r1, r1, #0x18 add r4, r1, #0 - ldr r2, ._445 + ldr r2, ._445 @ _nakamuraStatic18 cmp r0, #0 bne ._443 @cond_branch ldrb r0, [r2, #0x1] @@ -3560,8 +3560,8 @@ debug_sub_8160B50: thumb_func_start debug_sub_8160BB0 debug_sub_8160BB0: push {r4, r5, lr} - ldr r5, ._456 - ldr r4, ._456 + 4 + ldr r5, ._456 @ gStringVar1 + ldr r4, ._456 + 4 @ _nakamuraStatic18 add r0, r5, #0 add r1, r4, #0 bl debug_sub_8160714 @@ -3596,27 +3596,27 @@ debug_sub_8160BE4: mov r3, #0xf bl Menu_DrawStdWindowFrame bl debug_sub_8160BB0 - ldr r0, ._459 + ldr r0, ._459 @ gContestStatsText_Spicy mov r1, #0x2 mov r2, #0x3 bl Menu_PrintText - ldr r0, ._459 + 4 + ldr r0, ._459 + 4 @ gContestStatsText_Dry mov r1, #0x2 mov r2, #0x5 bl Menu_PrintText - ldr r0, ._459 + 8 + ldr r0, ._459 + 8 @ gContestStatsText_Sweet mov r1, #0x2 mov r2, #0x7 bl Menu_PrintText - ldr r0, ._459 + 12 + ldr r0, ._459 + 12 @ gContestStatsText_Bitter mov r1, #0x2 mov r2, #0x9 bl Menu_PrintText - ldr r0, ._459 + 16 + ldr r0, ._459 + 16 @ gContestStatsText_Sour mov r1, #0x2 mov r2, #0xb bl Menu_PrintText - ldr r0, ._459 + 20 + ldr r0, ._459 + 20 @ gContestStatsText_Tasty mov r1, #0x2 mov r2, #0xd bl Menu_PrintText @@ -3657,7 +3657,7 @@ debug_sub_8160BE4: thumb_func_start debug_sub_8160C7C debug_sub_8160C7C: push {r4, lr} - ldr r2, ._469 + ldr r2, ._469 @ _nakamuraStatic18 mov r1, #0x0 ldrb r0, [r2] cmp r0, #0xc @@ -3727,7 +3727,7 @@ debug_sub_8160C7C: thumb_func_start debug_sub_8160CF4 debug_sub_8160CF4: push {lr} - ldr r2, ._473 + ldr r2, ._473 @ gMain ldrh r1, [r2, #0x30] mov r0, #0x40 and r0, r0, r1 @@ -3820,8 +3820,8 @@ debug_sub_8160D98: mov r3, #0x13 bl Menu_EraseWindowRect bl debug_sub_8160BE4 - ldr r1, ._485 - ldr r0, ._485 + 4 + ldr r1, ._485 @ gMenuCallback + ldr r0, ._485 + 4 @ debug_sub_8160CF4 str r0, [r1] mov r0, #0x0 pop {r1} @@ -3842,39 +3842,39 @@ debug_sub_8160DC0: mov r2, #0x16 mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r0, ._487 + ldr r0, ._487 @ gOtherText_Slash mov r1, #0xb mov r2, #0x1 bl Menu_PrintText - ldr r0, ._487 + 4 + ldr r0, ._487 + 4 @ Str_843E5F2 mov r1, #0x2 mov r2, #0x3 bl Menu_PrintText - ldr r0, ._487 + 8 + ldr r0, ._487 + 8 @ Str_843E5FB mov r1, #0x2 mov r2, #0x5 bl Menu_PrintText - ldr r0, ._487 + 12 + ldr r0, ._487 + 12 @ Str_843E606 mov r1, #0x2 mov r2, #0x7 bl Menu_PrintText - ldr r0, ._487 + 16 + ldr r0, ._487 + 16 @ Str_843E611 mov r1, #0x2 mov r2, #0x9 bl Menu_PrintText - ldr r0, ._487 + 20 + ldr r0, ._487 + 20 @ Str_843E61C mov r1, #0x2 mov r2, #0xb bl Menu_PrintText - ldr r0, ._487 + 24 + ldr r0, ._487 + 24 @ Str_843E627 mov r1, #0x2 mov r2, #0xd bl Menu_PrintText - ldr r0, ._487 + 28 + ldr r0, ._487 + 28 @ Str_843E637 mov r1, #0x2 mov r2, #0xf bl Menu_PrintText - ldr r0, ._487 + 32 + ldr r0, ._487 + 32 @ Str_843E632 mov r1, #0x2 mov r2, #0x11 bl Menu_PrintText @@ -3904,7 +3904,7 @@ debug_sub_8160E50: mov r2, #0xa mov r3, #0x2 bl Menu_BlankWindowRect - ldr r5, ._489 + ldr r5, ._489 @ gStringVar1 add r0, r6, #0 mov r1, #0x2 add r2, r5, #0 @@ -3923,7 +3923,7 @@ debug_sub_8160E50: bl GetMonData mov r1, #0xb mul r0, r0, r1 - ldr r1, ._489 + 4 + ldr r1, ._489 + 4 @ gSpeciesNames add r0, r0, r1 mov r1, #0xc mov r2, #0x1 @@ -4110,7 +4110,7 @@ debug_sub_8161028: neg r0, r0 cmp r1, r0 bne ._491 @cond_branch - ldr r0, ._496 + ldr r0, ._496 @ _nakamuraData5 ldrb r0, [r0] cmp r0, #0 bne ._492 @cond_branch @@ -4120,7 +4120,7 @@ debug_sub_8161028: asr r4, r0, #0x10 mov r0, #0x64 mul r0, r0, r4 - ldr r1, ._496 + 4 + ldr r1, ._496 + 4 @ gPlayerParty add r0, r0, r1 mov r1, #0xb bl GetMonData @@ -4132,7 +4132,7 @@ debug_sub_8161028: cmp r0, #0 bge ._494 @cond_branch ._492: - ldr r1, ._496 + ldr r1, ._496 @ _nakamuraData5 ldrb r0, [r1] add r0, r0, r6 strb r0, [r1] @@ -4145,7 +4145,7 @@ debug_sub_8161028: ._491: cmp r1, #0x1 bne ._506 @cond_branch - ldr r4, ._501 + ldr r4, ._501 @ _nakamuraData5 ldrb r0, [r4] add r0, r0, r6 strb r0, [r4] @@ -4160,7 +4160,7 @@ debug_sub_8161028: ._501: .word _nakamuraData5 ._493: - ldr r0, ._504 + ldr r0, ._504 @ _nakamuraData5 strb r5, [r0] b ._506 ._505: @@ -4171,7 +4171,7 @@ debug_sub_8161028: ldrb r1, [r4] mov r0, #0x64 mul r0, r0, r1 - ldr r1, ._507 + ldr r1, ._507 @ gPlayerParty add r0, r0, r1 mov r1, #0xb bl GetMonData @@ -4193,7 +4193,7 @@ debug_sub_8161028: thumb_func_start debug_sub_81610BC debug_sub_81610BC: push {lr} - ldr r0, ._511 + ldr r0, ._511 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x20 and r0, r0, r1 @@ -4214,11 +4214,11 @@ debug_sub_81610BC: mov r0, #0x1 ._510: bl debug_sub_8161028 - ldr r0, ._515 + ldr r0, ._515 @ _nakamuraData5 ldrb r1, [r0] mov r0, #0x64 mul r0, r0, r1 - ldr r1, ._515 + 4 + ldr r1, ._515 + 4 @ gPlayerParty add r0, r0, r1 bl debug_sub_8160E50 mov r0, #0x0 @@ -4257,14 +4257,14 @@ DebugMenu_EffortValues: mov r2, #0x1d mov r3, #0x13 bl Menu_EraseWindowRect - ldr r1, ._519 + ldr r1, ._519 @ _nakamuraData5 mov r0, #0x0 strb r0, [r1] bl debug_sub_8160DC0 - ldr r0, ._519 + 4 + ldr r0, ._519 + 4 @ gPlayerParty bl debug_sub_8160E50 - ldr r1, ._519 + 8 - ldr r0, ._519 + 12 + ldr r1, ._519 + 8 @ gMenuCallback + ldr r0, ._519 + 12 @ debug_sub_81610BC str r0, [r1] mov r0, #0x0 pop {r1} @@ -4285,8 +4285,8 @@ debug_sub_8161160: mov r7, r8 push {r7} mov r7, #0x0 - ldr r2, ._523 - ldr r1, ._523 + 4 + ldr r2, ._523 @ _nakamuraData6 + ldr r1, ._523 + 4 @ _nakamuraData8 ldrh r0, [r2] ldrh r3, [r1] cmp r0, r3 @@ -4304,11 +4304,11 @@ debug_sub_8161160: ldrh r5, [r2] ._522: mov r4, #0x0 - ldr r0, ._529 + ldr r0, ._529 @ _nakamuraDataA ldrh r0, [r0] cmp r4, r0 bcs ._525 @cond_branch - ldr r0, ._529 + 4 + ldr r0, ._529 + 4 @ _nakamuraDataC mov r8, r0 ._528: bl Random @@ -4328,7 +4328,7 @@ debug_sub_8161160: lsr r7, r0, #0x10 ._527: add r4, r4, #0x1 - ldr r0, ._529 + ldr r0, ._529 @ _nakamuraDataA ldrh r0, [r0] cmp r4, r0 bcc ._528 @cond_branch @@ -4356,31 +4356,31 @@ debug_sub_81611D8: mov r2, #0xf mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r0, ._531 + ldr r0, ._531 @ Str_843E642 mov r1, #0x2 mov r2, #0x1 bl Menu_PrintText - ldr r0, ._531 + 4 + ldr r0, ._531 + 4 @ Str_843E647 mov r1, #0x2 mov r2, #0x3 bl Menu_PrintText - ldr r0, ._531 + 8 + ldr r0, ._531 + 8 @ Str_843E65A mov r1, #0x2 mov r2, #0x5 bl Menu_PrintText - ldr r0, ._531 + 12 + ldr r0, ._531 + 12 @ Str_843E64C mov r1, #0x2 mov r2, #0x7 bl Menu_PrintText - ldr r0, ._531 + 16 + ldr r0, ._531 + 16 @ Str_843E651 mov r1, #0x2 mov r2, #0x9 bl Menu_PrintText - ldr r0, ._531 + 20 + ldr r0, ._531 + 20 @ Str_843E655 mov r1, #0xd mov r2, #0x9 bl Menu_PrintText - ldr r4, ._531 + 24 + ldr r4, ._531 + 24 @ Str_843E658 add r0, r4, #0 mov r1, #0xc mov r2, #0x1 @@ -4433,7 +4433,7 @@ debug_sub_8161290: add r1, r0, #0 lsl r1, r1, #0x10 lsr r1, r1, #0x10 - ldr r4, ._533 + ldr r4, ._533 @ gStringVar1 add r0, r4, #0 mov r2, #0x1 mov r3, #0x5 @@ -4463,7 +4463,7 @@ debug_sub_81612B8: ldrh r2, [r0] add r1, r1, r2 strh r1, [r0] - ldr r5, ._535 + ldr r5, ._535 @ gStringVar1 ldrh r1, [r0] add r0, r5, #0 mov r2, #0x1 @@ -4486,7 +4486,7 @@ debug_sub_81612B8: thumb_func_start debug_sub_81612EC debug_sub_81612EC: push {r4, r5, lr} - ldr r2, ._540 + ldr r2, ._540 @ gMain ldrh r1, [r2, #0x2c] mov r0, #0x80 lsl r0, r0, #0x1 @@ -4529,28 +4529,28 @@ debug_sub_81612EC: asr r4, r0, #0x18 cmp r4, #0 bne ._545 @cond_branch - ldr r0, ._550 + ldr r0, ._550 @ _nakamuraData6 neg r1, r5 mov r2, #0x1 bl debug_sub_81612B8 ._545: cmp r4, #0x1 bne ._546 @cond_branch - ldr r0, ._550 + 4 + ldr r0, ._550 + 4 @ _nakamuraData8 neg r1, r5 mov r2, #0x3 bl debug_sub_81612B8 ._546: cmp r4, #0x2 bne ._547 @cond_branch - ldr r0, ._550 + 8 + ldr r0, ._550 + 8 @ _nakamuraDataC neg r1, r5 mov r2, #0x5 bl debug_sub_81612B8 ._547: cmp r4, #0x3 bne ._565 @cond_branch - ldr r0, ._550 + 12 + ldr r0, ._550 + 12 @ _nakamuraDataA neg r1, r5 mov r2, #0x7 bl debug_sub_81612B8 @@ -4572,28 +4572,28 @@ debug_sub_81612EC: asr r4, r0, #0x18 cmp r4, #0 bne ._553 @cond_branch - ldr r0, ._558 + ldr r0, ._558 @ _nakamuraData6 add r1, r5, #0 mov r2, #0x1 bl debug_sub_81612B8 ._553: cmp r4, #0x1 bne ._554 @cond_branch - ldr r0, ._558 + 4 + ldr r0, ._558 + 4 @ _nakamuraData8 add r1, r5, #0 mov r2, #0x3 bl debug_sub_81612B8 ._554: cmp r4, #0x2 bne ._555 @cond_branch - ldr r0, ._558 + 8 + ldr r0, ._558 + 8 @ _nakamuraDataC add r1, r5, #0 mov r2, #0x5 bl debug_sub_81612B8 ._555: cmp r4, #0x3 bne ._565 @cond_branch - ldr r0, ._558 + 12 + ldr r0, ._558 + 12 @ _nakamuraDataA add r1, r5, #0 mov r2, #0x7 bl debug_sub_81612B8 @@ -4611,7 +4611,7 @@ debug_sub_81612EC: and r0, r0, r1 cmp r0, #0 beq ._560 @cond_branch - ldr r0, ._563 + ldr r0, ._563 @ _nakamuraDataC ldrh r0, [r0] cmp r0, #0 beq ._565 @cond_branch @@ -4648,14 +4648,14 @@ debug_sub_81612EC: thumb_func_start DebugMenu_RandomNumberTest DebugMenu_RandomNumberTest: push {lr} - ldr r0, ._566 + ldr r0, ._566 @ _nakamuraData6 mov r1, #0x0 strh r1, [r0] - ldr r0, ._566 + 4 + ldr r0, ._566 + 4 @ _nakamuraData8 strh r1, [r0] - ldr r0, ._566 + 8 + ldr r0, ._566 + 8 @ _nakamuraDataC strh r1, [r0] - ldr r0, ._566 + 12 + ldr r0, ._566 + 12 @ _nakamuraDataA strh r1, [r0] mov r0, #0x0 mov r1, #0x0 @@ -4663,8 +4663,8 @@ DebugMenu_RandomNumberTest: mov r3, #0x13 bl Menu_EraseWindowRect bl debug_sub_81611D8 - ldr r1, ._566 + 16 - ldr r0, ._566 + 20 + ldr r1, ._566 + 16 @ gMenuCallback + ldr r0, ._566 + 20 @ debug_sub_81612EC str r0, [r1] mov r0, #0x0 pop {r1} diff --git a/asm/nohara_debug_menu.s b/asm/nohara_debug_menu.s index 88e6f1868..003f34798 100644 --- a/asm/nohara_debug_menu.s +++ b/asm/nohara_debug_menu.s @@ -15,7 +15,7 @@ InitNoharaDebugMenu: mov r2, #0x13 mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._1 + ldr r3, ._1 @ gUnknown_Debug_083C4938 mov r0, #0x1 mov r1, #0x1 mov r2, #0x9 @@ -29,8 +29,8 @@ InitNoharaDebugMenu: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._1 + 4 - ldr r0, ._1 + 8 + ldr r1, ._1 + 4 @ gMenuCallback + ldr r0, ._1 + 8 @ debug_sub_808F414 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -58,8 +58,8 @@ debug_sub_808F414: add r0, r0, #0x1 cmp r1, r0 beq ._4 @cond_branch - ldr r2, ._6 - ldr r0, ._6 + 4 + ldr r2, ._6 @ gMenuCallback + ldr r0, ._6 + 4 @ gUnknown_Debug_083C4938 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -86,7 +86,7 @@ debug_sub_808F414: NoharaDebugMenu_TV: push {lr} add sp, sp, #0xfffffff8 - ldr r1, ._8 + ldr r1, ._8 @ gDebug_03000726 mov r0, #0x0 strb r0, [r1] bl Menu_EraseScreen @@ -95,7 +95,7 @@ NoharaDebugMenu_TV: mov r2, #0xa mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._8 + 4 + ldr r3, ._8 + 4 @ gUnknown_Debug_083C4B8C mov r0, #0x1 mov r1, #0x1 mov r2, #0x9 @@ -109,8 +109,8 @@ NoharaDebugMenu_TV: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._8 + 8 - ldr r0, ._8 + 12 + ldr r1, ._8 + 8 @ gMenuCallback + ldr r0, ._8 + 12 @ debug_sub_808F4AC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -139,8 +139,8 @@ debug_sub_808F4AC: add r0, r0, #0x1 cmp r1, r0 beq ._11 @cond_branch - ldr r2, ._13 - ldr r0, ._13 + 4 + ldr r2, ._13 @ gMenuCallback + ldr r0, ._13 + 4 @ gUnknown_Debug_083C4B8C lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -167,14 +167,14 @@ debug_sub_808F4AC: debug_sub_808F4EC: push {lr} bl debug_sub_808F6BC - ldr r0, ._15 + ldr r0, ._15 @ gUnknown_Debug_083C4980 bl sub_8071F40 mov r0, #0x3 mov r1, #0x3 mov r2, #0x1 bl DisplayYesNoMenu - ldr r1, ._15 + 4 - ldr r0, ._15 + 8 + ldr r1, ._15 + 4 @ gMenuCallback + ldr r0, ._15 + 8 @ debug_sub_808F648 str r0, [r1] pop {r0} bx r0 @@ -191,8 +191,8 @@ debug_sub_808F4EC: debug_sub_808F518: push {r4, lr} mov r2, #0x0 - ldr r4, ._20 - ldr r3, ._20 + 4 + ldr r4, ._20 @ gSaveBlock1 + ldr r3, ._20 + 4 @ 0x2738 ._19: lsl r0, r2, #0x3 add r0, r0, r2 @@ -205,7 +205,7 @@ debug_sub_808F518: lsr r0, r0, #0x18 cmp r0, #0x13 bhi ._18 @cond_branch - ldr r0, ._20 + 8 + ldr r0, ._20 + 8 @ 0x2739 add r1, r1, r0 ldrb r0, [r1] cmp r0, #0 @@ -234,8 +234,8 @@ debug_sub_808F518: debug_sub_808F560: push {r4, lr} mov r1, #0x0 - ldr r4, ._23 - ldr r3, ._23 + 4 + ldr r4, ._23 @ gSaveBlock1 + ldr r3, ._23 + 4 @ 0x2739 mov r2, #0x0 ._22: lsl r0, r1, #0x3 @@ -266,9 +266,9 @@ debug_sub_808F560: debug_sub_808F594: push {r4, r5, r6, lr} mov r2, #0x0 - ldr r6, ._27 - ldr r5, ._27 + 4 - ldr r4, ._27 + 8 + ldr r6, ._27 @ gSaveBlock1 + ldr r5, ._27 + 4 @ 0x2738 + ldr r4, ._27 + 8 @ 0x2739 mov r3, #0x1 ._26: lsl r0, r2, #0x3 @@ -307,12 +307,12 @@ debug_sub_808F5D8: mov r7, r8 push {r7} mov r4, #0x0 - ldr r6, ._30 - ldr r7, ._30 + 4 + ldr r6, ._30 @ gStringVar1 + ldr r7, ._30 + 4 @ gUnknown_Debug_083C4BD4 add r0, r7, #1 mov r8, r0 ._29: - ldr r5, ._30 + 8 + ldr r5, ._30 + 8 @ gSpecialVar_0x8004 strh r4, [r5] bl GetSlotMachineId add r1, r0, #0 @@ -338,8 +338,8 @@ debug_sub_808F5D8: bls ._29 @cond_branch mov r0, #0x0 strh r0, [r5] - ldr r1, ._30 + 12 - ldr r0, ._30 + 16 + ldr r1, ._30 + 12 @ gMenuCallback + ldr r0, ._30 + 16 @ debug_sub_8090278 str r0, [r1] mov r0, #0x0 pop {r3} @@ -361,7 +361,7 @@ debug_sub_808F5D8: thumb_func_start debug_sub_808F648 debug_sub_808F648: push {lr} - ldr r0, ._35 + ldr r0, ._35 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x20 and r0, r0, r1 @@ -372,7 +372,7 @@ debug_sub_808F648: mov r2, #0x1d mov r3, #0xd bl Menu_EraseWindowRect - ldr r0, ._35 + 4 + ldr r0, ._35 + 4 @ gDebug_03000726 ldrb r1, [r0] mov r2, #0x1 eor r1, r1, r2 @@ -425,14 +425,14 @@ debug_sub_808F648: debug_sub_808F6BC: push {r4, r5, r6, lr} mov r4, #0x0 - ldr r5, ._48 - ldr r6, ._48 + 4 + ldr r5, ._48 @ gStringVar1 + ldr r6, ._48 + 4 @ gSaveBlock1 ._45: lsl r0, r4, #0x3 add r0, r0, r4 lsl r0, r0, #0x2 add r0, r0, r6 - ldr r1, ._48 + 8 + ldr r1, ._48 + 8 @ 0x2738 add r0, r0, r1 ldrb r1, [r0] add r0, r5, #0 @@ -453,14 +453,14 @@ debug_sub_808F6BC: cmp r4, #0x4 bls ._45 @cond_branch mov r4, #0x5 - ldr r5, ._48 - ldr r6, ._48 + 4 + ldr r5, ._48 @ gStringVar1 + ldr r6, ._48 + 4 @ gSaveBlock1 ._50: lsl r0, r4, #0x3 add r0, r0, r4 lsl r0, r0, #0x2 add r0, r0, r6 - ldr r1, ._48 + 8 + ldr r1, ._48 + 8 @ 0x2738 add r0, r0, r1 ldrb r1, [r0] add r0, r5, #0 @@ -497,12 +497,12 @@ debug_sub_808F6BC: cmp r4, #0x17 bls ._50 @cond_branch mov r4, #0x0 - ldr r5, ._53 + ldr r5, ._53 @ gStringVar1 ._55: - ldr r0, ._53 + 4 + ldr r0, ._53 + 4 @ gSaveBlock1 lsl r1, r4, #0x2 add r1, r1, r0 - ldr r0, ._53 + 8 + ldr r0, ._53 + 8 @ 0x2abc add r1, r1, r0 ldrb r1, [r1] add r0, r5, #0 @@ -551,14 +551,14 @@ debug_sub_808F6BC: debug_sub_808F7B4: push {r4, r5, r6, lr} mov r4, #0x0 - ldr r5, ._59 - ldr r6, ._59 + 4 + ldr r5, ._59 @ gStringVar1 + ldr r6, ._59 + 4 @ gSaveBlock1 ._56: lsl r0, r4, #0x3 add r0, r0, r4 lsl r0, r0, #0x2 add r0, r0, r6 - ldr r1, ._59 + 8 + ldr r1, ._59 + 8 @ 0x2739 add r0, r0, r1 ldrb r1, [r0] add r0, r5, #0 @@ -579,14 +579,14 @@ debug_sub_808F7B4: cmp r4, #0x4 bls ._56 @cond_branch mov r4, #0x5 - ldr r5, ._59 - ldr r6, ._59 + 4 + ldr r5, ._59 @ gStringVar1 + ldr r6, ._59 + 4 @ gSaveBlock1 ._61: lsl r0, r4, #0x3 add r0, r0, r4 lsl r0, r0, #0x2 add r0, r0, r6 - ldr r1, ._59 + 8 + ldr r1, ._59 + 8 @ 0x2739 add r0, r0, r1 ldrb r1, [r0] add r0, r5, #0 @@ -623,12 +623,12 @@ debug_sub_808F7B4: cmp r4, #0x17 bls ._61 @cond_branch mov r4, #0x0 - ldr r5, ._64 + ldr r5, ._64 @ gStringVar1 ._66: - ldr r0, ._64 + 4 + ldr r0, ._64 + 4 @ gSaveBlock1 lsl r1, r4, #0x2 add r1, r1, r0 - ldr r0, ._64 + 8 + ldr r0, ._64 + 8 @ 0x2abd add r1, r1, r0 ldrb r1, [r1] add r0, r5, #0 @@ -676,9 +676,9 @@ debug_sub_808F7B4: thumb_func_start debug_sub_808F8AC debug_sub_808F8AC: push {lr} - ldr r0, ._67 + ldr r0, ._67 @ 0x832 bl FlagSet - ldr r0, ._67 + 4 + ldr r0, ._67 + 4 @ 0x818 bl FlagSet bl CloseMenu mov r0, #0x1 @@ -695,17 +695,17 @@ debug_sub_808F8AC: thumb_func_start debug_sub_808F8CC debug_sub_808F8CC: push {r4, lr} - ldr r1, ._69 + ldr r1, ._69 @ gDebug_03000724 mov r0, #0x0 strb r0, [r1] - ldr r0, ._69 + 4 + ldr r0, ._69 + 4 @ gUnknown_Debug_083C49CA bl sub_8071F40 mov r0, #0xd mov r1, #0x6 mov r2, #0x1a mov r3, #0x8 bl Menu_BlankWindowRect - ldr r0, ._69 + 8 + ldr r0, ._69 + 8 @ gUnknown_Debug_083C4ABD ldr r0, [r0] mov r1, #0xe mov r2, #0x7 @@ -715,7 +715,7 @@ debug_sub_808F8CC: mov r2, #0x18 mov r3, #0x2 bl Menu_BlankWindowRect - ldr r4, ._69 + 12 + ldr r4, ._69 + 12 @ gStringVar1 add r0, r4, #0 mov r1, #0x0 mov r2, #0x0 @@ -725,8 +725,8 @@ debug_sub_808F8CC: mov r1, #0x17 mov r2, #0x1 bl Menu_PrintText - ldr r1, ._69 + 16 - ldr r0, ._69 + 20 + ldr r1, ._69 + 16 @ gMenuCallback + ldr r0, ._69 + 20 @ debug_sub_808F93C str r0, [r1] pop {r4} pop {r0} @@ -747,13 +747,13 @@ debug_sub_808F8CC: debug_sub_808F93C: push {r4, lr} mov r2, #0x0 - ldr r0, ._83 + ldr r0, ._83 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x40 and r0, r0, r1 cmp r0, #0 beq ._71 @cond_branch - ldr r1, ._83 + 4 + ldr r1, ._83 + 4 @ gDebug_03000725 ldrb r0, [r1] add r0, r0, #0x1 strb r0, [r1] @@ -767,13 +767,13 @@ debug_sub_808F93C: bl PlaySE mov r2, #0x1 ._71: - ldr r0, ._83 + ldr r0, ._83 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 and r0, r0, r1 cmp r0, #0 beq ._73 @cond_branch - ldr r1, ._83 + 4 + ldr r1, ._83 + 4 @ gDebug_03000725 ldrb r0, [r1] cmp r0, #0 bne ._74 @cond_branch @@ -787,13 +787,13 @@ debug_sub_808F93C: bl PlaySE mov r2, #0x1 ._73: - ldr r0, ._83 + ldr r0, ._83 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x10 and r0, r0, r1 cmp r0, #0 beq ._75 @cond_branch - ldr r1, ._83 + 8 + ldr r1, ._83 + 8 @ gDebug_03000724 ldrb r0, [r1] add r0, r0, #0x1 strb r0, [r1] @@ -808,13 +808,13 @@ debug_sub_808F93C: bl PlaySE mov r2, #0x1 ._75: - ldr r0, ._83 + ldr r0, ._83 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x20 and r0, r0, r1 cmp r0, #0 beq ._77 @cond_branch - ldr r1, ._83 + 8 + ldr r1, ._83 + 8 @ gDebug_03000724 ldrb r0, [r1] cmp r0, #0 bne ._78 @cond_branch @@ -835,8 +835,8 @@ debug_sub_808F93C: mov r2, #0x1a mov r3, #0x8 bl Menu_BlankWindowRect - ldr r1, ._83 + 12 - ldr r0, ._83 + 8 + ldr r1, ._83 + 12 @ gUnknown_Debug_083C4ABD + ldr r0, ._83 + 8 @ gDebug_03000724 ldrb r0, [r0] lsl r0, r0, #0x2 add r0, r0, r1 @@ -849,8 +849,8 @@ debug_sub_808F93C: mov r2, #0x18 mov r3, #0x2 bl Menu_BlankWindowRect - ldr r4, ._83 + 16 - ldr r0, ._83 + 4 + ldr r4, ._83 + 16 @ gStringVar1 + ldr r0, ._83 + 4 @ gDebug_03000725 ldrb r1, [r0] add r0, r4, #0 mov r2, #0x0 @@ -861,7 +861,7 @@ debug_sub_808F93C: mov r2, #0x1 bl Menu_PrintText ._79: - ldr r4, ._83 + ldr r4, ._83 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x1 and r0, r0, r1 @@ -869,10 +869,10 @@ debug_sub_808F93C: beq ._80 @cond_branch mov r0, #0x15 bl PlaySE - ldr r0, ._83 + 4 + ldr r0, ._83 + 4 @ gDebug_03000725 ldrb r0, [r0] - ldr r2, ._83 + 20 - ldr r1, ._83 + 8 + ldr r2, ._83 + 20 @ gUnknown_Debug_083C4ABD + ldr r1, ._83 + 8 @ gDebug_03000724 ldrb r1, [r1] add r1, r1, r2 ldrb r1, [r1] @@ -895,7 +895,7 @@ debug_sub_808F93C: .word gStringVar1 .word gUnknown_Debug_083C4ABD ._81: - ldr r0, ._85 + ldr r0, ._85 @ gSaveBlock1 bl sub_80BF588 bl CloseMenu mov r0, #0x1 @@ -925,20 +925,20 @@ debug_sub_808FA88: lsl r0, r0, #0x18 lsr r0, r0, #0x18 mov r9, r0 - ldr r3, ._92 + ldr r3, ._92 @ gSaveBlock1 lsl r4, r6, #0x3 add r2, r4, r6 lsl r2, r2, #0x2 add r0, r2, r3 - ldr r5, ._92 + 4 + ldr r5, ._92 + 4 @ 0x2738 add r1, r0, r5 strb r7, [r1] - ldr r1, ._92 + 8 + ldr r1, ._92 + 8 @ 0x2739 add r0, r0, r1 mov r1, #0x1 strb r1, [r0] mov r1, #0x0 - ldr r0, ._92 + 12 + ldr r0, ._92 + 12 @ 0x273a add r5, r3, r0 mov r3, #0x1 ._87: @@ -975,7 +975,7 @@ debug_sub_808FA88: ._90: add r0, r4, r6 lsl r0, r0, #0x2 - ldr r1, ._96 + ldr r1, ._96 @ gSaveBlock1 add r0, r0, r1 bl sub_80BE160 b ._95 @@ -986,7 +986,7 @@ debug_sub_808FA88: ._88: add r0, r4, r6 lsl r0, r0, #0x2 - ldr r1, ._100 + ldr r1, ._100 @ gSaveBlock1 add r0, r0, r1 bl sub_80BE138 ._95: @@ -996,7 +996,7 @@ debug_sub_808FA88: b ._173 ._98: lsl r0, r0, #0x2 - ldr r1, ._100 + 4 + ldr r1, ._100 + 4 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 @@ -1050,13 +1050,13 @@ debug_sub_808FA88: ._104: add r0, r4, r6 lsl r0, r0, #0x2 - ldr r1, ._145 + ldr r1, ._145 @ gSaveBlock1 add r4, r0, r1 mov r2, #0x1 strh r2, [r4, #0x2] add r1, r1, #0x10 add r0, r0, r1 - ldr r1, ._145 + 4 + ldr r1, ._145 + 4 @ gSaveBlock2 bl StringCopy mov r0, #0x5 strb r0, [r4, #0x18] @@ -1069,19 +1069,19 @@ debug_sub_808FA88: ._105: add r4, r4, r6 lsl r4, r4, #0x2 - ldr r6, ._148 + ldr r6, ._148 @ gSaveBlock1 add r1, r4, r6 mov r8, r1 mov r0, #0x1 strh r0, [r1, #0x2] add r0, r6, #5 add r0, r4, r0 - ldr r1, ._148 + 4 + ldr r1, ._148 + 4 @ gSaveBlock2 bl StringCopy mov r0, #0x64 mov r5, r9 mul r5, r5, r0 - ldr r0, ._148 + 8 + ldr r0, ._148 + 8 @ gPlayerParty add r5, r5, r0 add r6, r6, #0x10 add r4, r4, r6 @@ -1109,14 +1109,14 @@ debug_sub_808FA88: mov r1, r9 mul r1, r1, r0 mov r8, r1 - ldr r0, ._151 + ldr r0, ._151 @ gPlayerParty add r8, r8, r0 mov r0, r8 mov r1, #0xb bl GetMonData add r4, r4, r6 lsl r4, r4, #0x2 - ldr r5, ._151 + 4 + ldr r5, ._151 + 4 @ gSaveBlock1 add r6, r4, r5 strh r0, [r6, #0x2] mov r0, #0x1 @@ -1124,7 +1124,7 @@ debug_sub_808FA88: add r0, r5, #0 add r0, r0, #0xf add r0, r4, r0 - ldr r1, ._151 + 8 + ldr r1, ._151 + 8 @ gSaveBlock2 bl StringCopy add r5, r5, #0x4 add r4, r4, r5 @@ -1148,7 +1148,7 @@ debug_sub_808FA88: ._108: add r4, r4, r6 lsl r4, r4, #0x2 - ldr r6, ._154 + ldr r6, ._154 @ gSaveBlock1 add r5, r4, r6 mov r8, r5 mov r0, #0x1 @@ -1156,12 +1156,12 @@ debug_sub_808FA88: add r0, r6, #0 add r0, r0, #0x16 add r0, r4, r0 - ldr r1, ._154 + 4 + ldr r1, ._154 + 4 @ gSaveBlock2 bl StringCopy mov r0, #0x64 mov r5, r9 mul r5, r5, r0 - ldr r0, ._154 + 8 + ldr r0, ._154 + 8 @ gPlayerParty add r5, r5, r0 add r6, r6, #0x8 add r4, r4, r6 @@ -1187,14 +1187,14 @@ debug_sub_808FA88: ._109: add r4, r4, r6 lsl r4, r4, #0x2 - ldr r5, ._157 + ldr r5, ._157 @ gSaveBlock1 add r6, r4, r5 mov r0, #0x1 strh r0, [r6, #0xa] strh r0, [r6, #0x14] add r0, r5, #2 add r0, r4, r0 - ldr r1, ._157 + 4 + ldr r1, ._157 + 4 @ gSaveBlock2 mov r8, r1 bl StringCopy add r5, r5, #0xc @@ -1213,7 +1213,7 @@ debug_sub_808FA88: ._143: add r0, r4, r6 lsl r0, r0, #0x2 - ldr r1, ._160 + ldr r1, ._160 @ gSaveBlock1 add r0, r0, r1 mov r1, #0x1 strh r1, [r0, #0xc] @@ -1226,14 +1226,14 @@ debug_sub_808FA88: ._123: add r4, r4, r6 lsl r4, r4, #0x2 - ldr r0, ._163 + ldr r0, ._163 @ gSaveBlock1 add r4, r4, r0 - ldr r1, ._163 + 4 + ldr r1, ._163 + 4 @ gUnknown_Debug_083C4C64 mov r0, sp mov r2, #0x8 bl memcpy add r5, sp, #0x8 - ldr r1, ._163 + 8 + ldr r1, ._163 + 8 @ gUnknown_Debug_083C4C6C add r0, r5, #0 mov r2, #0xb bl memcpy @@ -1263,10 +1263,10 @@ debug_sub_808FA88: ._124: add r0, r4, r6 lsl r0, r0, #0x2 - ldr r1, ._168 + ldr r1, ._168 @ gSaveBlock1 add r5, r0, r1 add r4, sp, #0x14 - ldr r1, ._168 + 4 + ldr r1, ._168 + 4 @ gUnknown_Debug_083C4C64 add r0, r4, #0 mov r2, #0x8 bl memcpy @@ -1308,10 +1308,10 @@ debug_sub_808FA88: ._125: add r4, r4, r6 lsl r4, r4, #0x2 - ldr r0, ._171 + ldr r0, ._171 @ gSaveBlock1 add r4, r4, r0 add r5, sp, #0x1c - ldr r1, ._171 + 4 + ldr r1, ._171 + 4 @ gUnknown_Debug_083C4C64 add r0, r5, #0 mov r2, #0x8 bl memcpy @@ -1339,10 +1339,10 @@ debug_sub_808FA88: ._126: add r4, r4, r6 lsl r4, r4, #0x2 - ldr r0, ._174 + ldr r0, ._174 @ gSaveBlock1 add r4, r4, r0 add r5, sp, #0x24 - ldr r1, ._174 + 4 + ldr r1, ._174 + 4 @ gUnknown_Debug_083C4C64 add r0, r5, #0 mov r2, #0x8 bl memcpy @@ -1367,14 +1367,14 @@ debug_sub_808FA88: ._127: add r4, r4, r6 lsl r4, r4, #0x2 - ldr r0, ._176 + ldr r0, ._176 @ gSaveBlock1 add r4, r4, r0 add r5, sp, #0x2c - ldr r1, ._176 + 4 + ldr r1, ._176 + 4 @ gUnknown_Debug_083C4C64 add r0, r5, #0 mov r2, #0x8 bl memcpy - ldr r0, ._176 + 8 + ldr r0, ._176 + 8 @ 0xffff strh r0, [r4, #0x2] mov r0, #0x1 neg r0, r0 @@ -1421,17 +1421,17 @@ debug_sub_808FEBC: thumb_func_start debug_sub_808FECC debug_sub_808FECC: push {r4, lr} - ldr r1, ._178 + ldr r1, ._178 @ gDebug_03000724 mov r0, #0x0 strb r0, [r1] - ldr r0, ._178 + 4 + ldr r0, ._178 + 4 @ gUnknown_Debug_083C49CA bl sub_8071F40 mov r0, #0xd mov r1, #0x6 mov r2, #0x17 mov r3, #0x8 bl Menu_BlankWindowRect - ldr r0, ._178 + 8 + ldr r0, ._178 + 8 @ gUnknown_Debug_083C4B20 ldr r0, [r0] mov r1, #0xe mov r2, #0x7 @@ -1441,7 +1441,7 @@ debug_sub_808FECC: mov r2, #0x18 mov r3, #0x2 bl Menu_BlankWindowRect - ldr r4, ._178 + 12 + ldr r4, ._178 + 12 @ gStringVar1 add r0, r4, #0 mov r1, #0x0 mov r2, #0x0 @@ -1451,8 +1451,8 @@ debug_sub_808FECC: mov r1, #0x17 mov r2, #0x1 bl Menu_PrintText - ldr r1, ._178 + 16 - ldr r0, ._178 + 20 + ldr r1, ._178 + 16 @ gMenuCallback + ldr r0, ._178 + 20 @ debug_sub_808FF3C str r0, [r1] pop {r4} pop {r0} @@ -1473,13 +1473,13 @@ debug_sub_808FECC: debug_sub_808FF3C: push {r4, lr} mov r2, #0x0 - ldr r0, ._192 + ldr r0, ._192 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x40 and r0, r0, r1 cmp r0, #0 beq ._180 @cond_branch - ldr r1, ._192 + 4 + ldr r1, ._192 + 4 @ gDebug_03000725 ldrb r0, [r1] add r0, r0, #0x1 strb r0, [r1] @@ -1493,13 +1493,13 @@ debug_sub_808FF3C: bl PlaySE mov r2, #0x1 ._180: - ldr r0, ._192 + ldr r0, ._192 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 and r0, r0, r1 cmp r0, #0 beq ._182 @cond_branch - ldr r1, ._192 + 4 + ldr r1, ._192 + 4 @ gDebug_03000725 ldrb r0, [r1] cmp r0, #0 bne ._183 @cond_branch @@ -1513,13 +1513,13 @@ debug_sub_808FF3C: bl PlaySE mov r2, #0x1 ._182: - ldr r0, ._192 + ldr r0, ._192 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x10 and r0, r0, r1 cmp r0, #0 beq ._184 @cond_branch - ldr r1, ._192 + 8 + ldr r1, ._192 + 8 @ gDebug_03000724 ldrb r0, [r1] add r0, r0, #0x1 strb r0, [r1] @@ -1534,13 +1534,13 @@ debug_sub_808FF3C: bl PlaySE mov r2, #0x1 ._184: - ldr r0, ._192 + ldr r0, ._192 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x20 and r0, r0, r1 cmp r0, #0 beq ._186 @cond_branch - ldr r1, ._192 + 8 + ldr r1, ._192 + 8 @ gDebug_03000724 ldrb r0, [r1] cmp r0, #0 bne ._187 @cond_branch @@ -1561,8 +1561,8 @@ debug_sub_808FF3C: mov r2, #0x17 mov r3, #0x8 bl Menu_BlankWindowRect - ldr r1, ._192 + 12 - ldr r0, ._192 + 8 + ldr r1, ._192 + 12 @ gUnknown_Debug_083C4B20 + ldr r0, ._192 + 8 @ gDebug_03000724 ldrb r0, [r0] lsl r0, r0, #0x2 add r0, r0, r1 @@ -1575,8 +1575,8 @@ debug_sub_808FF3C: mov r2, #0x18 mov r3, #0x2 bl Menu_BlankWindowRect - ldr r4, ._192 + 16 - ldr r0, ._192 + 4 + ldr r4, ._192 + 16 @ gStringVar1 + ldr r0, ._192 + 4 @ gDebug_03000725 ldrb r1, [r0] add r0, r4, #0 mov r2, #0x0 @@ -1587,7 +1587,7 @@ debug_sub_808FF3C: mov r2, #0x1 bl Menu_PrintText ._188: - ldr r4, ._192 + ldr r4, ._192 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x1 and r0, r0, r1 @@ -1595,10 +1595,10 @@ debug_sub_808FF3C: beq ._189 @cond_branch mov r0, #0x15 bl PlaySE - ldr r0, ._192 + 4 + ldr r0, ._192 + 4 @ gDebug_03000725 ldrb r0, [r0] - ldr r2, ._192 + 20 - ldr r1, ._192 + 8 + ldr r2, ._192 + 20 @ gUnknown_Debug_083C4B20 + ldr r1, ._192 + 8 @ gDebug_03000724 ldrb r1, [r1] add r1, r1, r2 ldrb r1, [r1] @@ -1634,13 +1634,13 @@ debug_sub_808FF3C: thumb_func_start debug_sub_8090080 debug_sub_8090080: lsl r0, r0, #0x18 - ldr r2, ._194 + ldr r2, ._194 @ gSaveBlock1 lsr r0, r0, #0x16 add r0, r0, r2 - ldr r3, ._194 + 4 + ldr r3, ._194 + 4 @ 0x2abc add r2, r0, r3 strb r1, [r2] - ldr r1, ._194 + 8 + ldr r1, ._194 + 8 @ 0x2abd add r2, r0, r1 mov r1, #0x1 strb r1, [r2] @@ -1665,7 +1665,7 @@ debug_sub_80900AC: push {r7} mov r7, #0x0 mov r5, #0x0 - ldr r0, ._202 + ldr r0, ._202 @ gSaveBlock1 mov r8, r0 ._198: lsl r0, r5, #0x3 @@ -1673,7 +1673,7 @@ debug_sub_80900AC: lsl r0, r0, #0x2 mov r1, r8 add r6, r0, r1 - ldr r1, ._202 + 4 + ldr r1, ._202 + 4 @ 0x2738 add r0, r6, r1 ldrb r4, [r0] cmp r4, #0 @@ -1682,12 +1682,12 @@ debug_sub_80900AC: bne ._197 @cond_branch mov r7, #0x0 ._197: - ldr r0, ._202 + 8 + ldr r0, ._202 + 8 @ gUnknown_Debug_083C4ABD add r0, r7, r0 ldrb r1, [r0] add r0, r5, #0 bl debug_sub_808FA88 - ldr r1, ._202 + 12 + ldr r1, ._202 + 12 @ 0x2739 add r0, r6, r1 strb r4, [r0] add r0, r7, #1 @@ -1702,10 +1702,10 @@ debug_sub_80900AC: mov r7, #0x0 mov r5, #0x0 ._201: - ldr r0, ._202 + ldr r0, ._202 @ gSaveBlock1 lsl r1, r5, #0x2 add r1, r1, r0 - ldr r0, ._202 + 16 + ldr r0, ._202 + 16 @ 0x2abc add r1, r1, r0 ldrb r0, [r1] cmp r0, #0 @@ -1714,7 +1714,7 @@ debug_sub_80900AC: bne ._200 @cond_branch mov r7, #0x0 ._200: - ldr r0, ._202 + 20 + ldr r0, ._202 + 20 @ gUnknown_Debug_083C4B20 add r0, r7, r0 ldrb r1, [r0] add r0, r5, #0 @@ -1757,7 +1757,7 @@ NoharaDebugMenu_Fan: mov r2, #0xb mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._204 + ldr r3, ._204 @ gUnknown_Debug_083C4D28 mov r0, #0x1 mov r1, #0x1 mov r2, #0x9 @@ -1771,8 +1771,8 @@ NoharaDebugMenu_Fan: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._204 + 4 - ldr r0, ._204 + 8 + ldr r1, ._204 + 4 @ gMenuCallback + ldr r0, ._204 + 8 @ debug_sub_80901A4 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1800,8 +1800,8 @@ debug_sub_80901A4: add r0, r0, #0x1 cmp r1, r0 beq ._207 @cond_branch - ldr r2, ._209 - ldr r0, ._209 + 4 + ldr r2, ._209 @ gMenuCallback + ldr r0, ._209 + 4 @ gUnknown_Debug_083C4D28 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -1842,8 +1842,8 @@ debug_sub_80901F8: bl sub_810FB9C lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._211 - ldr r1, ._211 + 4 + ldr r2, ._211 @ gUnknown_Debug_083C4CA8 + ldr r1, ._211 + 4 @ gUnknown_083F8408 add r0, r0, r1 ldrb r0, [r0] sub r0, r0, #0x8 @@ -1853,8 +1853,8 @@ debug_sub_80901F8: mov r1, #0xe mov r2, #0x7 bl Menu_PrintText - ldr r1, ._211 + 8 - ldr r0, ._211 + 12 + ldr r1, ._211 + 8 @ gMenuCallback + ldr r0, ._211 + 12 @ debug_sub_8090278 str r0, [r1] mov r0, #0x0 pop {r1} @@ -1875,8 +1875,8 @@ debug_sub_8090238: bl sub_810FC18 lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._213 - ldr r1, ._213 + 4 + ldr r2, ._213 @ gUnknown_Debug_083C4CA8 + ldr r1, ._213 + 4 @ gUnknown_083F8410 add r0, r0, r1 ldrb r0, [r0] sub r0, r0, #0x8 @@ -1886,8 +1886,8 @@ debug_sub_8090238: mov r1, #0xe mov r2, #0x7 bl Menu_PrintText - ldr r1, ._213 + 8 - ldr r0, ._213 + 12 + ldr r1, ._213 + 8 @ gMenuCallback + ldr r0, ._213 + 12 @ debug_sub_8090278 str r0, [r1] mov r0, #0x0 pop {r1} @@ -1905,7 +1905,7 @@ debug_sub_8090238: thumb_func_start debug_sub_8090278 debug_sub_8090278: push {lr} - ldr r0, ._217 + ldr r0, ._217 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x1 and r0, r0, r1 @@ -1929,9 +1929,9 @@ debug_sub_8090278: thumb_func_start debug_sub_809029C debug_sub_809029C: push {r4, lr} - ldr r4, ._219 - ldr r0, ._219 + 4 - ldr r1, ._219 + 8 + ldr r4, ._219 @ gStringVar1 + ldr r0, ._219 + 4 @ gSaveBlock1 + ldr r1, ._219 + 8 @ 0x13c2 add r0, r0, r1 ldrh r0, [r0] mov r1, #0x7f @@ -1944,8 +1944,8 @@ debug_sub_809029C: mov r1, #0x10 mov r2, #0x7 bl Menu_PrintText - ldr r1, ._219 + 12 - ldr r0, ._219 + 16 + ldr r1, ._219 + 12 @ gMenuCallback + ldr r0, ._219 + 16 @ debug_sub_8090278 str r0, [r1] mov r0, #0x0 pop {r4} @@ -1965,7 +1965,7 @@ debug_sub_809029C: thumb_func_start debug_sub_80902E4 debug_sub_80902E4: push {lr} - ldr r1, ._221 + ldr r1, ._221 @ gSaveBlock2 ldrh r0, [r1, #0xe] add r0, r0, #0x6 strh r0, [r1, #0xe] @@ -2031,7 +2031,7 @@ debug_sub_8090338: thumb_func_start NoharaDebugMenu_BattleVSDad NoharaDebugMenu_BattleVSDad: push {lr} - ldr r0, ._223 + ldr r0, ._223 @ 0x4085 mov r1, #0x6 bl VarSet bl CloseMenu @@ -2048,7 +2048,7 @@ NoharaDebugMenu_BattleVSDad: thumb_func_start NoharaDebugMenu_DadAfterBattle NoharaDebugMenu_DadAfterBattle: push {lr} - ldr r0, ._225 + ldr r0, ._225 @ 0x4085 mov r1, #0x7 bl VarSet bl CloseMenu @@ -2069,7 +2069,7 @@ NoharaDebugMenu_SootopolisCity: bl FlagSet mov r0, #0x71 bl FlagSet - ldr r0, ._227 + ldr r0, ._227 @ 0x32f bl FlagClear bl CloseMenu mov r0, #0x1 @@ -2085,9 +2085,9 @@ NoharaDebugMenu_SootopolisCity: thumb_func_start NoharaDebugMenu_Embark NoharaDebugMenu_Embark: push {lr} - ldr r0, ._229 + ldr r0, ._229 @ 0x2e3 bl FlagClear - ldr r0, ._229 + 4 + ldr r0, ._229 + 4 @ 0x4090 mov r1, #0x1 bl VarSet bl CloseMenu @@ -2105,8 +2105,8 @@ NoharaDebugMenu_Embark: thumb_func_start NoharaDebugMenu_Yes9999 NoharaDebugMenu_Yes9999: push {lr} - ldr r0, ._231 - ldr r1, ._231 + 4 + ldr r0, ._231 @ 0x4048 + ldr r1, ._231 + 4 @ 0x270f bl VarSet bl CloseMenu mov r0, #0x1 @@ -2135,8 +2135,8 @@ NoharaDebugMenu_LegendsFlagOn: thumb_func_start NoharaDebugMenu_AddNumWinningStreaks NoharaDebugMenu_AddNumWinningStreaks: push {lr} - ldr r0, ._235 - ldr r1, ._235 + 4 + ldr r0, ._235 @ gSaveBlock2 + ldr r1, ._235 + 4 @ 0x572 add r2, r0, r1 ldrh r1, [r2] cmp r1, #0x31 @@ -2154,7 +2154,7 @@ NoharaDebugMenu_AddNumWinningStreaks: mov r0, #0x64 b ._244 ._237: - ldr r0, ._241 + ldr r0, ._241 @ 0x3e7 cmp r1, r0 bhi ._239 @cond_branch add r0, r0, #0x1 @@ -2164,10 +2164,10 @@ NoharaDebugMenu_AddNumWinningStreaks: ._241: .word 0x3e7 ._239: - ldr r0, ._245 + ldr r0, ._245 @ 0x1387 cmp r1, r0 bhi ._243 @cond_branch - ldr r0, ._245 + 4 + ldr r0, ._245 + 4 @ 0x2706 b ._244 ._246: .align 2, 0 @@ -2175,7 +2175,7 @@ NoharaDebugMenu_AddNumWinningStreaks: .word 0x1387 .word 0x2706 ._243: - ldr r0, ._248 + ldr r0, ._248 @ 0x2705 cmp r1, r0 bhi ._247 @cond_branch add r0, r0, #0xa diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s index 6e6e17db3..a0fa06f14 100644 --- a/asm/pokemon_storage_system.s +++ b/asm/pokemon_storage_system.s @@ -1047,10 +1047,10 @@ debug_sub_80A3904: lsl r1, r5, #0x2 add r1, r1, r5 lsl r1, r1, #0x4 - ldr r2, ._163 + ldr r2, ._163 @ gPokemonStorage add r1, r1, r2 add r6, r3, r1 - ldr r2, ._163 + 4 + ldr r2, ._163 + 4 @ gUnknown_Debug_083E05F0 lsl r1, r7, #0x1 add r1, r1, r2 ldrh r4, [r1] @@ -1983,8 +1983,8 @@ sub_8096874: @ 8096874 sub_8096884: .syntax divided push {r4, lr} - ldr r0, ._223 - ldr r1, ._223 + 4 + ldr r0, ._223 @ gMain + ldr r1, ._223 + 4 @ 0x43c add r0, r0, r1 ldrb r0, [r0] cmp r0, #0x9 @@ -1992,7 +1992,7 @@ sub_8096884: b ._222 ._221: lsl r0, r0, #0x2 - ldr r1, ._223 + 8 + ldr r1, ._223 + 8 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 @@ -2021,7 +2021,7 @@ sub_8096884: mov r4, #0x0 strh r4, [r0] bl sub_8096804 - ldr r0, ._237 + ldr r0, ._237 @ unk_2038790 strb r4, [r0] b ._250 ._238: @@ -2029,7 +2029,7 @@ sub_8096884: ._237: .word unk_2038790 ._227: - ldr r0, ._240 + ldr r0, ._240 @ gWindowTemplate_81E6D00 bl Text_LoadWindowTemplate b ._250 ._241: @@ -2037,7 +2037,7 @@ sub_8096884: ._240: .word gWindowTemplate_81E6D00 ._228: - ldr r0, ._243 + ldr r0, ._243 @ gWindowTemplate_81E6D00 bl InitMenuWindow bl Menu_EraseScreen b ._250 @@ -2063,17 +2063,17 @@ sub_8096884: bl sub_8098400 b ._250 ._234: - ldr r0, ._251 + ldr r0, ._251 @ gPokemonStorage ldrb r0, [r0] bl sub_8099BF8 - ldr r2, ._251 + 4 - ldr r1, ._251 + 8 + ldr r2, ._251 + 4 @ 0x2000000 + ldr r1, ._251 + 8 @ 0x12bc add r0, r2, r1 mov r1, #0xa strh r1, [r0] - ldr r1, ._251 + 12 + ldr r1, ._251 + 12 @ 0x12be add r2, r2, r1 - ldr r1, ._251 + 16 + ldr r1, ._251 + 16 @ 0xdacb strh r1, [r2] bl sub_80F727C bl sub_80F7404 @@ -2082,21 +2082,21 @@ sub_8096884: .align 2, 0 ._251: .word gPokemonStorage - .word +0x2000000 + .word 0x2000000 .word 0x12bc .word 0x12be .word 0xdacb ._235: bl sub_8096874 - ldr r0, ._253 + ldr r0, ._253 @ sub_8096BF0 bl sub_8096BE0 - ldr r0, ._253 + 4 + ldr r0, ._253 + 4 @ sub_8096B38 bl SetMainCallback2 - ldr r0, ._253 + 8 + ldr r0, ._253 + 8 @ sub_8096AFC bl SetVBlankCallback ._250: - ldr r1, ._253 + 12 - ldr r0, ._253 + 16 + ldr r1, ._253 + 12 @ gMain + ldr r0, ._253 + 16 @ 0x43c add r1, r1, r0 ldrb r0, [r1] add r0, r0, #0x1 @@ -2392,19 +2392,19 @@ _08096AF8: .4byte 0x0000043c debug_sub_80A4300: .syntax divided push {lr} - ldr r1, ._296 + ldr r1, ._296 @ gUnknown_0203847D mov r0, #0x0 strb r0, [r1] - ldr r1, ._296 + 4 + ldr r1, ._296 + 4 @ 0x2000000 mov r0, #0x0 strb r0, [r1, #0x5] bl sub_8096884 - ldr r0, ._296 + 8 + ldr r0, ._296 + 8 @ gMain ldr r1, [r0, #0x4] - ldr r0, ._296 + 12 + ldr r0, ._296 + 12 @ sub_8096B38 cmp r1, r0 bne ._295 @cond_branch - ldr r1, ._296 + 16 + ldr r1, ._296 + 16 @ unk_2038790 mov r0, #0x1 strb r0, [r1] ._295: @@ -2414,7 +2414,7 @@ debug_sub_80A4300: .align 2, 0 ._296: .word gUnknown_0203847D - .word +0x2000000 + .word 0x2000000 .word gMain .word sub_8096B38+1 .word unk_2038790 @@ -2425,11 +2425,11 @@ debug_sub_80A4300: debug_sub_80A433C: .syntax divided push {lr} - ldr r2, ._298 + ldr r2, ._298 @ unk_2038794 str r1, [r2] - ldr r1, ._298 + 4 + ldr r1, ._298 + 4 @ unk_2038798 str r0, [r1] - ldr r0, ._298 + 8 + ldr r0, ._298 + 8 @ debug_sub_80A4300 bl SetMainCallback2 pop {r0} bx r0 @@ -2447,7 +2447,7 @@ debug_sub_80A435C: .syntax divided push {r4, r5, lr} add sp, sp, #0xfffffffc - ldr r5, ._303 + ldr r5, ._303 @ 0x2000000 ldrb r4, [r5, #0x4] cmp r4, #0 beq ._300 @cond_branch @@ -2457,9 +2457,9 @@ debug_sub_80A435C: ._304: .align 2, 0 ._303: - .word +0x2000000 + .word 0x2000000 ._300: - ldr r0, ._306 + ldr r0, ._306 @ unk_2038798 ldr r0, [r0] bl unref_sub_809CB94 mov r0, #0x1 @@ -2482,7 +2482,7 @@ debug_sub_80A435C: lsl r0, r0, #0x18 cmp r0, #0 bne ._308 @cond_branch - ldr r0, ._309 + ldr r0, ._309 @ unk_2038794 ldr r0, [r0] bl _call_via_r0 ._308: @@ -2700,21 +2700,21 @@ _08096C80: .4byte sub_8096C84 sub_8096C84: .syntax divided push {r4, lr} - ldr r0, ._347 + ldr r0, ._347 @ 0x2000000 ldrb r0, [r0, #0x4] cmp r0, #0x6 bls ._345 @cond_branch b ._466 ._345: lsl r0, r0, #0x2 - ldr r1, ._347 + 4 + ldr r1, ._347 + 4 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 ._348: .align 2, 0 ._347: - .word +0x2000000 + .word 0x2000000 .word ._349 ._349: .word ._350 @@ -2734,7 +2734,7 @@ sub_8096C84: b ._466 ._357: lsl r0, r0, #0x2 - ldr r1, ._360 + ldr r1, ._360 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 @@ -2762,16 +2762,16 @@ sub_8096C84: ._362: mov r0, #0x5 bl PlaySE - ldr r1, ._379 + ldr r1, ._379 @ 0x2000000 mov r0, #0x1 strb r0, [r1, #0x4] b ._466 ._380: .align 2, 0 ._379: - .word +0x2000000 + .word 0x2000000 ._366: - ldr r4, ._383 + ldr r4, ._383 @ 0x2000000 ldrb r0, [r4, #0x5] cmp r0, #0x2 beq ._381 @cond_branch @@ -2783,10 +2783,10 @@ sub_8096C84: ._384: .align 2, 0 ._383: - .word +0x2000000 + .word 0x2000000 ._381: bl sub_809B0D4 - ldr r0, ._386 + ldr r0, ._386 @ sub_8096FC8 bl sub_8096BE0 b ._466 ._387: @@ -2794,7 +2794,7 @@ sub_8096C84: ._386: .word sub_8096FC8+1 ._367: - ldr r4, ._394 + ldr r4, ._394 @ 0x2000000 ldrb r0, [r4, #0x5] cmp r0, #0x2 beq ._388 @cond_branch @@ -2804,7 +2804,7 @@ sub_8096C84: lsl r0, r0, #0x18 cmp r0, #0 beq ._391 @cond_branch - ldr r1, ._394 + 4 + ldr r1, ._394 + 4 @ 0x11f2 add r0, r4, r1 ldrh r0, [r0] bl ItemIsMail @@ -2813,23 +2813,23 @@ sub_8096C84: beq ._391 @cond_branch b ._392 ._391: - ldr r0, ._394 + 8 + ldr r0, ._394 + 8 @ sub_8097004 bl sub_8096BE0 b ._466 ._395: .align 2, 0 ._394: - .word +0x2000000 + .word 0x2000000 .word 0x11f2 .word sub_8097004+1 ._365: - ldr r0, ._399 + ldr r0, ._399 @ unk_2038790 ldrb r0, [r0] cmp r0, #0 beq ._396 @cond_branch b ._466 ._396: - ldr r0, ._399 + 4 + ldr r0, ._399 + 4 @ sub_8097BA0 bl sub_8096BE0 b ._466 ._400: @@ -2838,13 +2838,13 @@ sub_8096C84: .word unk_2038790 .word sub_8097BA0+1 ._377: - ldr r0, ._404 + ldr r0, ._404 @ unk_2038790 ldrb r0, [r0] cmp r0, #0 beq ._401 @cond_branch b ._466 ._401: - ldr r0, ._404 + 4 + ldr r0, ._404 + 4 @ sub_8097CC0 bl sub_8096BE0 b ._466 ._405: @@ -2855,7 +2855,7 @@ sub_8096C84: ._368: mov r0, #0x5 bl PlaySE - ldr r0, ._407 + ldr r0, ._407 @ sub_809789C bl sub_8096BE0 b ._466 ._408: @@ -2865,7 +2865,7 @@ sub_8096C84: ._369: mov r0, #0x5 bl PlaySE - ldr r0, ._410 + ldr r0, ._410 @ sub_8097078 bl sub_8096BE0 b ._466 ._411: @@ -2875,11 +2875,11 @@ sub_8096C84: ._370: mov r0, #0x5 bl PlaySE - ldr r4, ._414 - ldr r0, ._414 + 4 + ldr r4, ._414 @ 0x2000000 + ldr r0, ._414 + 4 @ gPokemonStorage ldrb r0, [r0] add r0, r0, #0x1 - ldr r2, ._414 + 8 + ldr r2, ._414 + 8 @ 0x8b2 add r1, r4, r2 strh r0, [r1] cmp r0, #0xd @@ -2889,17 +2889,17 @@ sub_8096C84: ._415: .align 2, 0 ._414: - .word +0x2000000 + .word 0x2000000 .word gPokemonStorage .word 0x8b2 ._371: mov r0, #0x5 bl PlaySE - ldr r4, ._418 - ldr r0, ._418 + 4 + ldr r4, ._418 @ 0x2000000 + ldr r0, ._418 + 4 @ gPokemonStorage ldrb r0, [r0] sub r0, r0, #0x1 - ldr r2, ._418 + 8 + ldr r2, ._418 + 8 @ 0x8b2 add r1, r4, r2 strh r0, [r1] cmp r0, #0 @@ -2916,7 +2916,7 @@ sub_8096C84: ._419: .align 2, 0 ._418: - .word +0x2000000 + .word 0x2000000 .word gPokemonStorage .word 0x8b2 ._372: @@ -2924,8 +2924,8 @@ sub_8096C84: lsl r0, r0, #0x18 cmp r0, #0 bne ._428 @cond_branch - ldr r4, ._423 - ldr r1, ._423 + 4 + ldr r4, ._423 @ 0x2000000 + ldr r1, ._423 + 4 @ 0x11f2 add r0, r4, r1 ldrh r0, [r0] bl ItemIsMail @@ -2939,12 +2939,12 @@ sub_8096C84: ._424: .align 2, 0 ._423: - .word +0x2000000 + .word 0x2000000 .word 0x11f2 ._421: mov r0, #0x5 bl PlaySE - ldr r0, ._426 + ldr r0, ._426 @ sub_809746C bl sub_8096BE0 b ._466 ._427: @@ -2958,7 +2958,7 @@ sub_8096C84: bne ._428 @cond_branch mov r0, #0x5 bl PlaySE - ldr r0, ._430 + ldr r0, ._430 @ sub_80972A8 bl sub_8096BE0 b ._466 ._431: @@ -2971,18 +2971,18 @@ sub_8096C84: cmp r0, #0 bne ._432 @cond_branch ._428: - ldr r1, ._434 + ldr r1, ._434 @ 0x2000000 mov r0, #0x4 strb r0, [r1, #0x4] b ._466 ._435: .align 2, 0 ._434: - .word +0x2000000 + .word 0x2000000 ._432: mov r0, #0x5 bl PlaySE - ldr r0, ._437 + ldr r0, ._437 @ c3_0808DC50 bl sub_8096BE0 b ._466 ._438: @@ -2992,7 +2992,7 @@ sub_8096C84: ._373: mov r0, #0x5 bl PlaySE - ldr r0, ._440 + ldr r0, ._440 @ sub_8097390 bl sub_8096BE0 b ._466 ._441: @@ -3002,7 +3002,7 @@ sub_8096C84: ._376: mov r0, #0x5 bl PlaySE - ldr r0, ._443 + ldr r0, ._443 @ sub_80972FC bl sub_8096BE0 b ._466 ._444: @@ -3023,8 +3023,8 @@ sub_8096C84: ._446: bl sub_8098710 ._447: - ldr r4, ._450 - ldr r2, ._450 + 4 + ldr r4, ._450 @ 0x2000000 + ldr r2, ._450 + 4 @ 0x11f6 add r0, r4, r2 ldrb r0, [r0] cmp r0, #0 @@ -3037,20 +3037,20 @@ sub_8096C84: ._451: .align 2, 0 ._450: - .word +0x2000000 + .word 0x2000000 .word 0x11f6 ._352: bl sub_8099D34 lsl r0, r0, #0x18 cmp r0, #0 bne ._466 @cond_branch - ldr r1, ._456 - ldr r0, ._456 + 4 - ldr r2, ._456 + 8 + ldr r1, ._456 @ gPokemonStorage + ldr r0, ._456 + 4 @ 0x2000000 + ldr r2, ._456 + 8 @ 0x8b2 add r0, r0, r2 ldrh r0, [r0] strb r0, [r1] - ldr r0, ._456 + 12 + ldr r0, ._456 + 12 @ gUnknown_0203847C ldrb r0, [r0] cmp r0, #0 bne ._455 @cond_branch @@ -3065,11 +3065,11 @@ sub_8096C84: .align 2, 0 ._456: .word gPokemonStorage - .word +0x2000000 + .word 0x2000000 .word 0x8b2 .word gUnknown_0203847C ._353: - ldr r0, ._460 + ldr r0, ._460 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0xf3 and r0, r0, r1 @@ -3077,7 +3077,7 @@ sub_8096C84: beq ._466 @cond_branch bl sub_8098A5C ._455: - ldr r1, ._460 + 4 + ldr r1, ._460 + 4 @ 0x2000000 mov r0, #0x0 strb r0, [r1, #0x4] b ._466 @@ -3085,7 +3085,7 @@ sub_8096C84: .align 2, 0 ._460: .word gMain - .word +0x2000000 + .word 0x2000000 ._354: mov r0, #0x20 bl PlaySE @@ -3097,23 +3097,23 @@ sub_8096C84: mov r0, #0x16 ._462: bl sub_8098898 - ldr r1, ._464 + ldr r1, ._464 @ 0x2000000 mov r0, #0x6 strb r0, [r1, #0x4] b ._466 ._465: .align 2, 0 ._464: - .word +0x2000000 + .word 0x2000000 ._356: - ldr r0, ._467 + ldr r0, ._467 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0xf3 and r0, r0, r1 cmp r0, #0 beq ._466 @cond_branch bl sub_8098A5C - ldr r0, ._467 + 4 + ldr r0, ._467 + 4 @ sub_8096C84 bl sub_8096BE0 ._466: pop {r4} @@ -3594,21 +3594,21 @@ _08097074: .4byte sub_8096C84 sub_8097078: .syntax divided push {r4, lr} - ldr r0, ._495 + ldr r0, ._495 @ 0x2000000 ldrb r0, [r0, #0x4] cmp r0, #0x5 bls ._493 @cond_branch b ._597 ._493: lsl r0, r0, #0x2 - ldr r1, ._495 + 4 + ldr r1, ._495 + 4 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 ._496: .align 2, 0 ._495: - .word +0x2000000 + .word 0x2000000 .word ._497 ._497: .word ._498 @@ -3621,14 +3621,14 @@ sub_8097078: mov r0, #0x4 bl sub_8098898 bl sub_809CE84 - ldr r1, ._505 + ldr r1, ._505 @ 0x2000000 mov r0, #0x1 strb r0, [r1, #0x4] b ._597 ._506: .align 2, 0 ._505: - .word +0x2000000 + .word 0x2000000 ._499: bl sub_809CF30 add r0, r0, #0x1 @@ -3639,7 +3639,7 @@ sub_8097078: b ._597 ._507: lsl r0, r0, #0x2 - ldr r1, ._510 + ldr r1, ._510 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 @@ -3684,7 +3684,7 @@ sub_8097078: .word ._545 ._513: bl sub_8098A5C - ldr r0, ._547 + ldr r0, ._547 @ sub_8096C84 bl sub_8096BE0 b ._597 ._548: @@ -3699,7 +3699,7 @@ sub_8097078: mov r0, #0x5 bl PlaySE bl sub_8098A5C - ldr r0, ._551 + ldr r0, ._551 @ sub_80972A8 bl sub_8096BE0 b ._597 ._552: @@ -3710,7 +3710,7 @@ sub_8097078: mov r0, #0x5 bl PlaySE bl sub_8098A5C - ldr r0, ._554 + ldr r0, ._554 @ sub_80972FC bl sub_8096BE0 b ._597 ._555: @@ -3725,7 +3725,7 @@ sub_8097078: mov r0, #0x5 bl PlaySE bl sub_8098A5C - ldr r0, ._558 + ldr r0, ._558 @ c3_0808DC50 bl sub_8096BE0 b ._597 ._559: @@ -3736,7 +3736,7 @@ sub_8097078: mov r0, #0x5 bl PlaySE bl sub_8098A5C - ldr r0, ._561 + ldr r0, ._561 @ sub_8097390 bl sub_8096BE0 b ._597 ._562: @@ -3748,8 +3748,8 @@ sub_8097078: lsl r0, r0, #0x18 cmp r0, #0 bne ._563 @cond_branch - ldr r4, ._566 - ldr r1, ._566 + 4 + ldr r4, ._566 @ 0x2000000 + ldr r1, ._566 + 4 @ 0x11f2 add r0, r4, r1 ldrh r0, [r0] bl ItemIsMail @@ -3759,13 +3759,13 @@ sub_8097078: mov r0, #0x5 bl PlaySE bl sub_8098A5C - ldr r0, ._566 + 8 + ldr r0, ._566 + 8 @ sub_809746C bl sub_8096BE0 b ._597 ._567: .align 2, 0 ._566: - .word +0x2000000 + .word 0x2000000 .word 0x11f2 .word sub_809746C+1 ._520: @@ -3774,17 +3774,17 @@ sub_8097078: cmp r0, #0 beq ._568 @cond_branch ._563: - ldr r1, ._570 + ldr r1, ._570 @ 0x2000000 mov r0, #0x2 strb r0, [r1, #0x4] b ._597 ._571: .align 2, 0 ._570: - .word +0x2000000 + .word 0x2000000 ._568: - ldr r4, ._574 - ldr r1, ._574 + 4 + ldr r4, ._574 @ 0x2000000 + ldr r1, ._574 + 4 @ 0x11f9 add r0, r4, r1 ldrb r0, [r0] cmp r0, #0 @@ -3795,10 +3795,10 @@ sub_8097078: ._575: .align 2, 0 ._574: - .word +0x2000000 + .word 0x2000000 .word 0x11f9 ._572: - ldr r1, ._578 + ldr r1, ._578 @ 0x11f2 add r0, r4, r1 ldrh r0, [r0] bl ItemIsMail @@ -3816,7 +3816,7 @@ sub_8097078: ._576: mov r0, #0x5 bl PlaySE - ldr r0, ._581 + ldr r0, ._581 @ sub_8097594 bl sub_8096BE0 b ._597 ._582: @@ -3826,7 +3826,7 @@ sub_8097078: ._519: mov r0, #0x5 bl PlaySE - ldr r0, ._584 + ldr r0, ._584 @ sub_8097788 bl sub_8096BE0 b ._597 ._585: @@ -3836,7 +3836,7 @@ sub_8097078: ._521: mov r0, #0x5 bl PlaySE - ldr r0, ._587 + ldr r0, ._587 @ sub_80977E4 bl sub_8096BE0 b ._597 ._588: @@ -3847,7 +3847,7 @@ sub_8097078: mov r0, #0x5 bl PlaySE bl sub_8098A5C - ldr r0, ._590 + ldr r0, ._590 @ debug_sub_80A435C bl sub_8096BE0 b ._597 ._591: @@ -3870,23 +3870,23 @@ sub_8097078: mov r0, #0x16 ._593: bl sub_8098898 - ldr r1, ._595 + ldr r1, ._595 @ 0x2000000 mov r0, #0x5 strb r0, [r1, #0x4] b ._597 ._596: .align 2, 0 ._595: - .word +0x2000000 + .word 0x2000000 ._503: - ldr r0, ._598 + ldr r0, ._598 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0xf3 and r0, r0, r1 cmp r0, #0 beq ._597 @cond_branch bl sub_8098A5C - ldr r0, ._598 + 4 + ldr r0, ._598 + 4 @ sub_8096C84 bl sub_8096BE0 ._597: pop {r4} @@ -15164,7 +15164,7 @@ debug_sub_80AA40C: sub_809CAB0: .syntax divided push {lr} - ldr r0, ._2088 + ldr r0, ._2088 @ unk_2038790 ldrb r0, [r0] cmp r0, #0 beq ._2086 @cond_branch @@ -15181,7 +15181,7 @@ sub_809CAB0: bl sub_809AB8C lsl r0, r0, #0x10 lsr r1, r0, #0x10 - ldr r0, ._2094 + ldr r0, ._2094 @ gUnknown_083B6DB4 ldr r0, [r0] ldrb r0, [r0, #0x5] cmp r0, #0x1 @@ -15212,7 +15212,7 @@ sub_809CAB0: bl sub_809CDEC b ._2109 ._2096: - ldr r0, ._2105 + ldr r0, ._2105 @ gUnknown_020384E6 ldrb r0, [r0] cmp r0, #0 beq ._2102 @cond_branch @@ -15241,12 +15241,12 @@ sub_809CAB0: ._2109: mov r0, #0x6 bl sub_809CDEC - ldr r0, ._2114 + ldr r0, ._2114 @ gUnknown_083B6DB4 ldr r0, [r0] ldrb r0, [r0, #0x5] cmp r0, #0x2 bne ._2113 @cond_branch - ldr r0, ._2114 + 4 + ldr r0, ._2114 + 4 @ gUnknown_020384E4 ldrb r0, [r0] lsl r0, r0, #0x18 asr r0, r0, #0x18 diff --git a/asm/taya_debug_window.s b/asm/taya_debug_window.s index 1c25de5f6..68d27390d 100644 --- a/asm/taya_debug_window.s +++ b/asm/taya_debug_window.s @@ -19,7 +19,7 @@ TayaDebugMenu_Trend: mov r2, #0x1e mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r5, ._3 + ldr r5, ._3 @ gSaveBlock1 mov r7, #0x0 mov r0, #0x1 add r0, r0, sp @@ -96,8 +96,8 @@ TayaDebugMenu_Trend: lsr r7, r0, #0x10 cmp r7, #0x4 bls ._2 @cond_branch - ldr r1, ._3 + 4 - ldr r0, ._3 + 8 + ldr r1, ._3 + 4 @ gMenuCallback + ldr r0, ._3 + 8 @ debug_sub_8090808 str r0, [r1] mov r0, #0x0 add sp, sp, #0x28 @@ -120,7 +120,7 @@ TayaDebugMenu_Trend: thumb_func_start debug_sub_8090808 debug_sub_8090808: push {lr} - ldr r0, ._7 + ldr r0, ._7 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x3 and r0, r0, r1 @@ -146,7 +146,7 @@ debug_sub_8090808: TayaDebugMenu_TrendR: push {r4, r5, r6, r7, lr} mov r0, #0x0 - ldr r7, ._11 + ldr r7, ._11 @ gSaveBlock1 ._10: mov r4, #0x0 lsl r5, r0, #0x3 @@ -221,8 +221,8 @@ debug_sub_809089C: mov r0, #0x1 b ._17 ._16: - ldr r2, ._19 - ldr r0, ._19 + 4 + ldr r2, ._19 @ gSpecialVar_0x8004 + ldr r0, ._19 + 4 @ gUnknown_Debug_083C4EC0 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -233,7 +233,7 @@ debug_sub_809089C: cmp r0, #0x7 bhi ._27 @cond_branch lsl r0, r0, #0x2 - ldr r1, ._19 + 8 + ldr r1, ._19 + 8 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 @@ -253,17 +253,17 @@ debug_sub_809089C: .word ._29 .word ._29 ._29: - ldr r0, ._30 + ldr r0, ._30 @ gSpecialVar_0x8005 mov r1, #0x0 strh r1, [r0] - ldr r0, ._30 + 4 + ldr r0, ._30 + 4 @ gSpecialVar_0x8006 strh r1, [r0] ._27: mov r0, #0x1 mov r1, #0x0 bl FadeScreen - ldr r1, ._30 + 8 - ldr r0, ._30 + 12 + ldr r1, ._30 + 8 @ gMenuCallback + ldr r0, ._30 + 12 @ debug_sub_8090880 str r0, [r1] ._15: mov r0, #0x0 @@ -289,7 +289,7 @@ TayaDebugMenu_SimpleText: mov r2, #0xc mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._32 + ldr r3, ._32 @ gUnknown_Debug_083C4EC0 mov r0, #0x1 mov r1, #0x1 mov r2, #0x9 @@ -303,8 +303,8 @@ TayaDebugMenu_SimpleText: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._32 + 4 - ldr r0, ._32 + 8 + ldr r1, ._32 + 4 @ gMenuCallback + ldr r0, ._32 + 8 @ debug_sub_809089C str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -349,11 +349,11 @@ debug_sub_8090984: cmp r1, #0x6 bne ._41 @cond_branch mov r4, #0x0 - ldr r0, ._44 + ldr r0, ._44 @ gSaveBlock1 add r1, r0, #2 mov ip, r1 - ldr r7, ._44 + 4 - ldr r1, ._44 + 8 + ldr r7, ._44 + 4 @ gUnknown_Debug_083C4F08 + ldr r1, ._44 + 8 @ 0xfffffd94 add r6, r0, r1 add r5, r0, #0 add r5, r5, #0xe @@ -412,7 +412,7 @@ TayaDebugMenu_OldMan: mov r2, #0xa mov r3, #0x11 bl Menu_DrawStdWindowFrame - ldr r3, ._48 + ldr r3, ._48 @ gUnknown_Debug_083C4F54 mov r0, #0x1 mov r1, #0x1 mov r2, #0x8 @@ -428,8 +428,8 @@ TayaDebugMenu_OldMan: mov r2, #0x1 mov r3, #0x8 bl InitMenu - ldr r1, ._48 + 4 - ldr r0, ._48 + 8 + ldr r1, ._48 + 4 @ gMenuCallback + ldr r0, ._48 + 8 @ debug_sub_8090984 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -458,89 +458,89 @@ TayaDebugMenu_LanettesPC: thumb_func_start TayaDebugMenu_TownFlags TayaDebugMenu_TownFlags: push {lr} - ldr r0, ._50 + ldr r0, ._50 @ 0x80f bl FlagSet mov r0, #0x81 lsl r0, r0, #0x4 bl FlagSet - ldr r0, ._50 + 4 + ldr r0, ._50 + 4 @ 0x811 bl FlagSet - ldr r0, ._50 + 8 + ldr r0, ._50 + 8 @ 0x812 bl FlagSet - ldr r0, ._50 + 12 + ldr r0, ._50 + 12 @ 0x813 bl FlagSet - ldr r0, ._50 + 16 + ldr r0, ._50 + 16 @ 0x814 bl FlagSet - ldr r0, ._50 + 20 + ldr r0, ._50 + 20 @ 0x815 bl FlagSet - ldr r0, ._50 + 24 + ldr r0, ._50 + 24 @ 0x816 bl FlagSet - ldr r0, ._50 + 28 + ldr r0, ._50 + 28 @ 0x817 bl FlagSet - ldr r0, ._50 + 32 + ldr r0, ._50 + 32 @ 0x818 bl FlagSet - ldr r0, ._50 + 36 + ldr r0, ._50 + 36 @ 0x819 bl FlagSet - ldr r0, ._50 + 40 + ldr r0, ._50 + 40 @ 0x81a bl FlagSet - ldr r0, ._50 + 44 + ldr r0, ._50 + 44 @ 0x81b bl FlagSet - ldr r0, ._50 + 48 + ldr r0, ._50 + 48 @ 0x81c bl FlagSet - ldr r0, ._50 + 52 + ldr r0, ._50 + 52 @ 0x81d bl FlagSet - ldr r0, ._50 + 56 + ldr r0, ._50 + 56 @ 0x81e bl FlagSet - ldr r0, ._50 + 60 + ldr r0, ._50 + 60 @ 0x848 bl FlagSet - ldr r0, ._50 + 64 + ldr r0, ._50 + 64 @ 0x849 bl FlagSet - ldr r0, ._50 + 68 + ldr r0, ._50 + 68 @ 0x84a bl FlagSet - ldr r0, ._50 + 72 + ldr r0, ._50 + 72 @ 0x854 bl FlagSet - ldr r0, ._50 + 76 + ldr r0, ._50 + 76 @ 0x855 bl FlagSet - ldr r0, ._50 + 80 + ldr r0, ._50 + 80 @ 0x856 bl FlagSet - ldr r0, ._50 + 84 + ldr r0, ._50 + 84 @ 0x857 bl FlagSet - ldr r0, ._50 + 88 + ldr r0, ._50 + 88 @ 0x858 bl FlagSet - ldr r0, ._50 + 92 + ldr r0, ._50 + 92 @ 0x859 bl FlagSet - ldr r0, ._50 + 96 + ldr r0, ._50 + 96 @ 0x85a bl FlagSet - ldr r0, ._50 + 100 + ldr r0, ._50 + 100 @ 0x85b bl FlagSet - ldr r0, ._50 + 104 + ldr r0, ._50 + 104 @ 0x85c bl FlagSet - ldr r0, ._50 + 108 + ldr r0, ._50 + 108 @ 0x83c bl FlagSet - ldr r0, ._50 + 112 + ldr r0, ._50 + 112 @ 0x83d bl FlagSet - ldr r0, ._50 + 116 + ldr r0, ._50 + 116 @ 0x83e bl FlagSet - ldr r0, ._50 + 120 + ldr r0, ._50 + 120 @ 0x83f bl FlagSet mov r0, #0x84 lsl r0, r0, #0x4 bl FlagSet - ldr r0, ._50 + 124 + ldr r0, ._50 + 124 @ 0x841 bl FlagSet - ldr r0, ._50 + 128 + ldr r0, ._50 + 128 @ 0x842 bl FlagSet - ldr r0, ._50 + 132 + ldr r0, ._50 + 132 @ 0x843 bl FlagSet - ldr r0, ._50 + 136 + ldr r0, ._50 + 136 @ 0x844 bl FlagSet - ldr r0, ._50 + 140 + ldr r0, ._50 + 140 @ 0x845 bl FlagSet - ldr r0, ._50 + 144 + ldr r0, ._50 + 144 @ 0x846 bl FlagSet - ldr r0, ._50 + 148 + ldr r0, ._50 + 148 @ 0x847 bl FlagSet - ldr r0, ._50 + 152 + ldr r0, ._50 + 152 @ 0x83b bl FlagSet bl CloseMenu mov r0, #0x1 @@ -599,7 +599,7 @@ TayaDebugMenu_AwardARibbon: mov r1, #0x10 mov r2, #0x0 bl BlendPalettes - ldr r0, ._52 + ldr r0, ._52 @ debug_sub_80915BC bl SetMainCallback2 bl CloseMenu mov r0, #0x1 @@ -615,7 +615,7 @@ TayaDebugMenu_AwardARibbon: thumb_func_start debug_sub_8090C44 debug_sub_8090C44: push {r4, r5, lr} - ldr r4, ._54 + ldr r4, ._54 @ gSharedMem sub r5, r4, #1 ldrh r1, [r5, #0x8] add r0, r4, #0 @@ -656,14 +656,14 @@ debug_sub_8090C88: add sp, sp, #0xfffffffc mov r0, #0x1 mov r8, r0 - ldr r2, ._59 + ldr r2, ._59 @ gMain ldrh r1, [r2, #0x2e] mov r0, #0x20 and r0, r0, r1 add r3, r2, #0 cmp r0, #0 beq ._57 @cond_branch - ldr r1, ._59 + 4 + ldr r1, ._59 + 4 @ gSharedMem ldrb r0, [r1] cmp r0, #0 beq ._57 @cond_branch @@ -683,7 +683,7 @@ debug_sub_8090C88: strh r1, [r7, #0x8] b ._62 ._79: - ldr r0, ._64 + ldr r0, ._64 @ gSharedMem ldrh r0, [r0, #0x8] bl SetLotteryNumber16_Unused ._78: @@ -700,7 +700,7 @@ debug_sub_8090C88: and r0, r0, r1 cmp r0, #0 beq ._66 @cond_branch - ldr r1, ._81 + ldr r1, ._81 @ gSharedMem ldrb r0, [r1] cmp r0, #0x3 bls ._67 @cond_branch @@ -710,10 +710,10 @@ debug_sub_8090C88: and r0, r0, r1 cmp r0, #0 beq ._68 @cond_branch - ldr r0, ._81 + ldr r0, ._81 @ gSharedMem ldrh r1, [r0, #0x8] str r1, [r0, #0xc] - ldr r1, ._81 + 4 + ldr r1, ._81 + 4 @ 0x2710 strh r1, [r0, #0x10] mov r4, #0x0 ldrb r1, [r0] @@ -739,7 +739,7 @@ debug_sub_8090C88: ldr r0, [r7, #0xc] add r0, r0, r1 str r0, [r7, #0xc] - ldr r1, ._81 + 8 + ldr r1, ._81 + 8 @ 0xffff cmp r0, r1 ble ._71 @cond_branch str r1, [r7, #0xc] @@ -754,10 +754,10 @@ debug_sub_8090C88: and r0, r0, r1 cmp r0, #0 beq ._73 @cond_branch - ldr r0, ._81 + ldr r0, ._81 @ gSharedMem ldrh r1, [r0, #0x8] str r1, [r0, #0xc] - ldr r1, ._81 + 4 + ldr r1, ._81 + 4 @ 0x2710 strh r1, [r0, #0x10] mov r4, #0x0 ldrb r1, [r0] @@ -837,15 +837,15 @@ TayaDebugMenu_PKMNLottery: mov r3, #0x5 bl Menu_DrawStdWindowFrame bl RetrieveLotteryNumber - ldr r2, ._83 - ldr r0, ._83 + 4 + ldr r2, ._83 @ gSharedMem + ldr r0, ._83 + 4 @ gSpecialVar_Result ldrh r0, [r0] mov r1, #0x0 strh r0, [r2, #0x8] strb r1, [r2] bl debug_sub_8090C44 - ldr r1, ._83 + 8 - ldr r0, ._83 + 12 + ldr r1, ._83 + 8 @ gMenuCallback + ldr r0, ._83 + 12 @ debug_sub_8090C88 str r0, [r1] mov r0, #0x0 pop {r1} @@ -864,7 +864,7 @@ TayaDebugMenu_PKMNLottery: TayaDebugMenu_Trainer: push {r4, r5, lr} mov r4, #0x0 - ldr r5, ._86 + ldr r5, ._86 @ gTrainerEyeTrainers ._85: lsl r0, r4, #0x4 add r0, r0, r5 @@ -875,37 +875,37 @@ TayaDebugMenu_Trainer: lsr r4, r0, #0x10 cmp r4, #0x37 bls ._85 @cond_branch - ldr r0, ._86 + 4 + ldr r0, ._86 + 4 @ 0x109 bl SetTrainerFlag mov r0, #0x85 lsl r0, r0, #0x1 bl SetTrainerFlag - ldr r0, ._86 + 8 + ldr r0, ._86 + 8 @ 0x10b bl SetTrainerFlag mov r0, #0x86 lsl r0, r0, #0x1 bl SetTrainerFlag - ldr r0, ._86 + 12 + ldr r0, ._86 + 12 @ 0x10d bl SetTrainerFlag mov r0, #0x87 lsl r0, r0, #0x1 bl SetTrainerFlag - ldr r0, ._86 + 16 + ldr r0, ._86 + 16 @ 0x10f bl SetTrainerFlag mov r0, #0x88 lsl r0, r0, #0x1 bl SetTrainerFlag - ldr r0, ._86 + 20 + ldr r0, ._86 + 20 @ 0x105 bl SetTrainerFlag mov r0, #0x83 lsl r0, r0, #0x1 bl SetTrainerFlag - ldr r0, ._86 + 24 + ldr r0, ._86 + 24 @ 0x107 bl SetTrainerFlag mov r0, #0x84 lsl r0, r0, #0x1 bl SetTrainerFlag - ldr r0, ._86 + 28 + ldr r0, ._86 + 28 @ 0x14f bl SetTrainerFlag bl CloseMenu mov r0, #0x1 @@ -942,9 +942,9 @@ TayaDebugMenu_PokenavD: mov r1, #0x3 mov r9, r1 ._93: - ldr r4, ._94 + ldr r4, ._94 @ gSharedMem add r0, r4, #0 - ldr r1, ._94 + 4 + ldr r1, ._94 + 4 @ gUnknown_Debug_083C4F94 bl StringCopy mov r5, sl add r5, r5, #0x1 @@ -990,7 +990,7 @@ TayaDebugMenu_PokenavD: add r0, r0, #0x19 lsl r0, r0, #0x10 lsr r3, r0, #0x10 - ldr r0, ._94 + 8 + ldr r0, ._94 + 8 @ 0x19b cmp r3, r0 bls ._89 @cond_branch mov r3, #0x1 @@ -1004,7 +1004,7 @@ TayaDebugMenu_PokenavD: lsl r0, r1, #0x2 add r0, r0, r8 lsl r0, r0, #0x4 - ldr r1, ._94 + 12 + ldr r1, ._94 + 12 @ gPokemonStorage add r0, r0, r1 add r4, r4, r0 lsl r2, r5, #0x18 @@ -1261,9 +1261,9 @@ TayaDebugMenu_8091190: add r0, r0, #0x1 cmp r3, r0 beq ._97 @cond_branch - ldr r2, ._99 - ldr r1, ._99 + 4 - ldr r0, ._99 + 8 + ldr r2, ._99 @ gMenuCallback + ldr r1, ._99 + 4 @ gUnknown_Debug_83C5068 + ldr r0, ._99 + 8 @ unk_2030224 ldrb r0, [r0] lsl r0, r0, #0x18 asr r0, r0, #0x18 @@ -1284,9 +1284,9 @@ TayaDebugMenu_8091190: .word gUnknown_Debug_83C5068 .word unk_2030224 ._96: - ldr r3, ._107 + ldr r3, ._107 @ unk_2030224 ldrb r4, [r3] - ldr r2, ._107 + 4 + ldr r2, ._107 + 4 @ gMain ldrh r1, [r2, #0x2e] mov r0, #0x20 and r0, r0, r1 @@ -1328,7 +1328,7 @@ TayaDebugMenu_8091190: mov r2, #0xb mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r4, ._107 + 8 + ldr r4, ._107 + 8 @ gUnknown_Debug_83C5068 mov r0, #0x0 ldrsb r0, [r5, r0] lsl r0, r0, #0x3 @@ -1373,7 +1373,7 @@ TayaDebugMenu_8091190: InitTayaDebugWindow: push {lr} add sp, sp, #0xfffffff8 - ldr r1, ._109 + ldr r1, ._109 @ unk_2030224 mov r0, #0x0 strb r0, [r1] bl Menu_EraseScreen @@ -1382,7 +1382,7 @@ InitTayaDebugWindow: mov r2, #0xb mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r0, ._109 + 4 + ldr r0, ._109 + 4 @ gUnknown_Debug_83C5068 ldr r3, [r0] mov r0, #0x1 mov r1, #0x1 @@ -1397,8 +1397,8 @@ InitTayaDebugWindow: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._109 + 8 - ldr r0, ._109 + 12 + ldr r1, ._109 + 8 @ gMenuCallback + ldr r0, ._109 + 12 @ TayaDebugMenu_8091190 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1417,7 +1417,7 @@ InitTayaDebugWindow: thumb_func_start debug_sub_80912D8 debug_sub_80912D8: push {lr} - ldr r0, ._113 + ldr r0, ._113 @ gPaletteFade ldrb r1, [r0, #0x7] mov r0, #0x80 and r0, r0, r1 @@ -1430,7 +1430,7 @@ debug_sub_80912D8: ._113: .word gPaletteFade ._111: - ldr r0, ._115 + ldr r0, ._115 @ debug_sub_8110F28 bl SetMainCallback2 mov r0, #0x1 ._112: @@ -1449,8 +1449,8 @@ debug_sub_8091300: mov r0, #0x1 mov r1, #0x0 bl FadeScreen - ldr r1, ._117 - ldr r0, ._117 + 4 + ldr r1, ._117 @ gMenuCallback + ldr r0, ._117 + 4 @ debug_sub_80912D8 str r0, [r1] mov r0, #0x0 pop {r1} @@ -1482,7 +1482,7 @@ debug_sub_8091334: push {r6, r7} bl AnimateSprites bl BuildOamBuffer - ldr r3, ._123 + ldr r3, ._123 @ gSharedMem add r0, r3, #0 add r0, r0, #0x52 ldrb r4, [r0] @@ -1501,7 +1501,7 @@ debug_sub_8091334: add r5, r3, #0 add r5, r5, #0x55 strb r4, [r5] - ldr r2, ._131 + ldr r2, ._131 @ gMain ldrh r1, [r2, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -1522,7 +1522,7 @@ debug_sub_8091334: ldrh r1, [r0, #0x2e] mov r0, #0x80 and r0, r0, r1 - ldr r5, ._131 + 4 + ldr r5, ._131 + 4 @ gSharedMem cmp r0, #0 beq ._133 @cond_branch add r0, r5, #0 @@ -1612,7 +1612,7 @@ debug_sub_8091334: and r0, r0, r2 cmp r0, #0 beq ._142 @cond_branch - ldr r2, ._145 + ldr r2, ._145 @ gUnknown_Debug_083C50EC add r3, r5, #0 add r3, r3, #0x53 add r0, r5, #0 @@ -1661,7 +1661,7 @@ debug_sub_8091334: mov r1, #0x10 mov r2, #0x0 bl BlendPalettes - ldr r0, ._151 + ldr r0, ._151 @ sub_80546F0 bl SetMainCallback2 b ._162 ._152: @@ -1673,7 +1673,7 @@ debug_sub_8091334: add r5, r5, #0x55 mov r0, #0x0 strb r0, [r5] - ldr r2, ._159 + ldr r2, ._159 @ gMain ldrh r1, [r2, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -1704,7 +1704,7 @@ debug_sub_8091334: ldrh r1, [r2, #0x2e] mov r0, #0x80 and r0, r0, r1 - ldr r5, ._159 + 4 + ldr r5, ._159 + 4 @ gSharedMem cmp r0, #0 beq ._156 @cond_branch add r2, r5, #0 @@ -1748,8 +1748,8 @@ debug_sub_8091334: and r0, r0, r1 cmp r0, #0 beq ._161 @cond_branch - ldr r0, ._164 - ldr r1, ._164 + 4 + ldr r0, ._164 @ gPlayerParty + ldr r1, ._164 + 4 @ gUnknown_Debug_083C50EC mov ip, r1 mov r2, #0x53 add r2, r2, r6 @@ -1785,7 +1785,7 @@ debug_sub_8091334: and r0, r0, r1 cmp r0, #0 beq ._162 @cond_branch - ldr r2, ._164 + 4 + ldr r2, ._164 + 4 @ gUnknown_Debug_083C50EC add r0, r6, #0 add r0, r0, #0x53 ldrb r4, [r0] @@ -1799,7 +1799,7 @@ debug_sub_8091334: ldrh r0, [r1, #0x4] cmp r0, #0 beq ._163 @cond_branch - ldr r0, ._164 + ldr r0, ._164 @ gPlayerParty ldrh r1, [r1, #0x4] add r2, r4, r6 add r2, r3, r2 @@ -1828,15 +1828,15 @@ debug_sub_80915BC: push {r4, r5, r6, r7, lr} mov r7, r8 push {r7} - ldr r0, ._168 + ldr r0, ._168 @ 0x4000010 mov r1, #0x0 strh r1, [r0] add r0, r0, #0x2 strh r1, [r0] mov r1, #0x0 - ldr r0, ._168 + 4 + ldr r0, ._168 + 4 @ gUnknown_Debug_083C50EC mov r8, r0 - ldr r7, ._168 + 8 + ldr r7, ._168 + 8 @ gSharedMem ._171: mov r4, #0x0 lsl r0, r1, #0x1 @@ -1849,7 +1849,7 @@ debug_sub_80915BC: ldrh r1, [r0, #0x4] cmp r1, #0 beq ._166 @cond_branch - ldr r0, ._168 + 12 + ldr r0, ._168 + 12 @ gPlayerParty bl GetMonData add r1, r4, r5 add r1, r1, r7 @@ -1876,7 +1876,7 @@ debug_sub_80915BC: lsr r1, r0, #0x18 cmp r1, #0x5 bls ._171 @cond_branch - ldr r4, ._172 + ldr r4, ._172 @ gWindowTemplate_81E7224 add r0, r4, #0 bl Text_LoadWindowTemplate add r0, r4, #0 @@ -1887,7 +1887,7 @@ debug_sub_80915BC: mov r2, #0x1d mov r3, #0x3 bl Menu_DrawStdWindowFrame - ldr r0, ._172 + 4 + ldr r0, ._172 + 4 @ gUnknown_Debug_083C517C mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText @@ -1907,7 +1907,7 @@ debug_sub_80915BC: lsl r2, r2, #0x5 add r0, r2, #0 strh r0, [r1] - ldr r2, ._172 + 8 + ldr r2, ._172 + 8 @ gSharedMem add r0, r2, #0 add r0, r0, #0x53 mov r1, #0x0 @@ -1917,9 +1917,9 @@ debug_sub_80915BC: sub r0, r0, #0x2 strb r1, [r0] bl debug_sub_80916AC - ldr r0, ._172 + 12 + ldr r0, ._172 + 12 @ debug_sub_8091320 bl SetVBlankCallback - ldr r0, ._172 + 16 + ldr r0, ._172 + 16 @ debug_sub_8091334 bl SetMainCallback2 pop {r3} mov r8, r3 @@ -1946,12 +1946,12 @@ debug_sub_80916AC: push {r5, r6, r7} add sp, sp, #0xfffffffc mov r6, #0x0 - ldr r0, ._177 + ldr r0, ._177 @ gSharedMem mov sl, r0 mov r1, #0x0 mov r8, r1 ._182: - ldr r2, ._177 + 4 + ldr r2, ._177 + 4 @ gSharedMem mov r5, #0x0 lsl r0, r6, #0x1 mov r9, r0 @@ -1963,7 +1963,7 @@ debug_sub_80916AC: ldrb r0, [r0] cmp r0, r5 bne ._175 @cond_branch - ldr r1, ._177 + 8 + ldr r1, ._177 + 8 @ gSharedMem ldrb r0, [r1] cmp r0, r6 bne ._175 @cond_branch @@ -1986,7 +1986,7 @@ debug_sub_80916AC: add r4, r1, r6 add r0, r4, r5 lsl r0, r0, #0x3 - ldr r1, ._183 + ldr r1, ._183 @ gUnknown_Debug_083C50EC add r0, r0, r1 ldr r1, [r0] add r0, r2, #0 @@ -1995,7 +1995,7 @@ debug_sub_80916AC: mov r0, r8 strb r0, [r2] add r2, r2, #0x1 - ldr r7, ._183 + 4 + ldr r7, ._183 + 4 @ gSharedMem add r4, r5, r4 add r4, r4, r7 ldrb r1, [r4] diff --git a/asm/tomomichi_debug_menu.s b/asm/tomomichi_debug_menu.s index e6e0db8d6..c0dfe38e0 100644 --- a/asm/tomomichi_debug_menu.s +++ b/asm/tomomichi_debug_menu.s @@ -32,12 +32,12 @@ debug_sub_808B874: mov r2, #0xd mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._1 + ldr r3, ._1 @ gUnknown_Debug_083C0CBA mov r0, #0x1 mov r1, #0x1 mov r2, #0x7 bl Menu_PrintItems - ldr r0, ._1 + 4 + ldr r0, ._1 + 4 @ gDebug_0300071D ldrb r0, [r0] str r0, [sp] mov r0, #0xc @@ -47,8 +47,8 @@ debug_sub_808B874: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._1 + 8 - ldr r0, ._1 + 12 + ldr r1, ._1 + 8 @ gMenuCallback + ldr r0, ._1 + 12 @ debug_sub_808B8C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -67,7 +67,7 @@ debug_sub_808B874: thumb_func_start debug_sub_808B8C8 debug_sub_808B8C8: push {r4, lr} - ldr r4, ._7 + ldr r4, ._7 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -78,7 +78,7 @@ debug_sub_808B8C8: mov r0, #0x1 neg r0, r0 bl Menu_MoveCursor - ldr r1, ._7 + 4 + ldr r1, ._7 + 4 @ gDebug_0300071D strb r0, [r1] ._3: ldrh r1, [r4, #0x2e] @@ -90,7 +90,7 @@ debug_sub_808B8C8: bl PlaySE mov r0, #0x1 bl Menu_MoveCursor - ldr r1, ._7 + 4 + ldr r1, ._7 + 4 @ gDebug_0300071D strb r0, [r1] ._4: ldrh r1, [r4, #0x2e] @@ -100,8 +100,8 @@ debug_sub_808B8C8: beq ._5 @cond_branch mov r0, #0x5 bl PlaySE - ldr r1, ._7 + 8 - ldr r0, ._7 + 4 + ldr r1, ._7 + 8 @ gUnknown_Debug_083C0CBA + ldr r0, ._7 + 4 @ gDebug_0300071D ldrb r0, [r0] lsl r0, r0, #0x3 add r1, r1, #0x4 @@ -144,11 +144,11 @@ TomomichiDebugMenu_ContestGraphics: mov r2, #0x14 mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r0, ._11 + ldr r0, ._11 @ gUnknown_Debug_083C0CF4 mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r3, ._11 + 4 + ldr r3, ._11 + 4 @ gUnknown_Debug_083C0D2C mov r0, #0x2 mov r1, #0x3 mov r2, #0x4 @@ -162,18 +162,18 @@ TomomichiDebugMenu_ContestGraphics: mov r2, #0x3 mov r3, #0x4 bl InitMenu - ldr r1, ._11 + 8 - ldr r0, ._11 + 12 + ldr r1, ._11 + 8 @ gMenuCallback + ldr r0, ._11 + 12 @ debug_sub_808BC48 str r0, [r1] - ldr r0, ._11 + 16 + ldr r0, ._11 + 16 @ gDebug_03000700 mov r2, #0x1 strh r2, [r0] - ldr r1, ._11 + 20 - ldr r0, ._11 + 24 + ldr r1, ._11 + 20 @ gDebug_03000704 + ldr r0, ._11 + 24 @ 0x6f33 str r0, [r1] - ldr r0, ._11 + 28 + ldr r0, ._11 + 28 @ gDebug_03000708 str r4, [r0] - ldr r0, ._11 + 32 + ldr r0, ._11 + 32 @ gDebug_0300070C strb r2, [r0] mov r0, #0x0 add sp, sp, #0x8 @@ -205,11 +205,11 @@ TomomichiDebugMenu_ArtMusGraphics: mov r2, #0x14 mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r0, ._13 + ldr r0, ._13 @ gUnknown_Debug_083C0D4C mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r3, ._13 + 4 + ldr r3, ._13 + 4 @ gUnknown_Debug_083C0D83 mov r0, #0x2 mov r1, #0x3 mov r2, #0x4 @@ -223,18 +223,18 @@ TomomichiDebugMenu_ArtMusGraphics: mov r2, #0x3 mov r3, #0x4 bl InitMenu - ldr r1, ._13 + 8 - ldr r0, ._13 + 12 + ldr r1, ._13 + 8 @ gMenuCallback + ldr r0, ._13 + 12 @ debug_sub_808BCBC str r0, [r1] - ldr r0, ._13 + 16 + ldr r0, ._13 + 16 @ gDebug_03000700 mov r2, #0x1 strh r2, [r0] - ldr r1, ._13 + 20 - ldr r0, ._13 + 24 + ldr r1, ._13 + 20 @ gDebug_03000704 + ldr r0, ._13 + 24 @ 0x6f33 str r0, [r1] - ldr r0, ._13 + 28 + ldr r0, ._13 + 28 @ gDebug_03000708 str r4, [r0] - ldr r0, ._13 + 32 + ldr r0, ._13 + 32 @ gDebug_0300070D strb r2, [r0] mov r0, #0x0 add sp, sp, #0x8 @@ -266,11 +266,11 @@ TomomichiDebugMenu_PreviewData: mov r2, #0x14 mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r0, ._15 + ldr r0, ._15 @ gUnknown_Debug_083C0DA4 mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r3, ._15 + 4 + ldr r3, ._15 + 4 @ gUnknown_Debug_083C0DD4 mov r0, #0x2 mov r1, #0x3 mov r2, #0x4 @@ -284,18 +284,18 @@ TomomichiDebugMenu_PreviewData: mov r2, #0x3 mov r3, #0x4 bl InitMenu - ldr r1, ._15 + 8 - ldr r0, ._15 + 12 + ldr r1, ._15 + 8 @ gMenuCallback + ldr r0, ._15 + 12 @ debug_sub_808BD30 str r0, [r1] - ldr r0, ._15 + 16 + ldr r0, ._15 + 16 @ gDebug_03000700 mov r2, #0x1 strh r2, [r0] - ldr r1, ._15 + 20 - ldr r0, ._15 + 24 + ldr r1, ._15 + 20 @ gDebug_03000704 + ldr r0, ._15 + 24 @ 0x6f33 str r0, [r1] - ldr r0, ._15 + 28 + ldr r0, ._15 + 28 @ gDebug_03000708 str r4, [r0] - ldr r0, ._15 + 32 + ldr r0, ._15 + 32 @ gDebug_0300070E strb r2, [r0] mov r0, #0x0 add sp, sp, #0x8 @@ -327,16 +327,16 @@ TomomichiDebugMenu_TrickHouse: mov r2, #0x18 mov r3, #0x7 bl Menu_DrawStdWindowFrame - ldr r0, ._17 + ldr r0, ._17 @ gUnknown_Debug_083C0DF4 mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r3, ._17 + 4 + ldr r3, ._17 + 4 @ gUnknown_Debug_083C0E15 mov r0, #0x2 mov r1, #0x3 mov r2, #0x2 bl Menu_PrintItems - ldr r0, ._17 + 8 + ldr r0, ._17 + 8 @ gDebug_0300071E ldrb r0, [r0] str r0, [sp] mov r0, #0x17 @@ -346,8 +346,8 @@ TomomichiDebugMenu_TrickHouse: mov r2, #0x3 mov r3, #0x2 bl InitMenu - ldr r1, ._17 + 12 - ldr r0, ._17 + 16 + ldr r1, ._17 + 12 @ gMenuCallback + ldr r0, ._17 + 16 @ debug_sub_808BDA4 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -374,12 +374,12 @@ TomomichiDebugMenu_ControlEvents: mov r2, #0x18 mov r3, #0x5 bl Menu_DrawStdWindowFrame - ldr r3, ._19 + ldr r3, ._19 @ gUnknown_Debug_083C0E32 mov r0, #0x2 mov r1, #0x1 mov r2, #0x2 bl Menu_PrintItems - ldr r0, ._19 + 4 + ldr r0, ._19 + 4 @ gDebug_0300071F ldrb r0, [r0] str r0, [sp] mov r0, #0x17 @@ -389,8 +389,8 @@ TomomichiDebugMenu_ControlEvents: mov r2, #0x1 mov r3, #0x2 bl InitMenu - ldr r1, ._19 + 8 - ldr r0, ._19 + 12 + ldr r1, ._19 + 8 @ gMenuCallback + ldr r0, ._19 + 12 @ debug_sub_808BE2C str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -416,12 +416,12 @@ TomomichiDebugMenu_ControlFlags: mov r2, #0x18 mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._21 + ldr r3, ._21 @ gUnknown_Debug_083C0E7F mov r0, #0x2 mov r1, #0x1 mov r2, #0x7 bl Menu_PrintItems - ldr r0, ._21 + 4 + ldr r0, ._21 + 4 @ gDebug_03000720 ldrb r0, [r0] str r0, [sp] mov r0, #0x17 @@ -431,8 +431,8 @@ TomomichiDebugMenu_ControlFlags: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._21 + 8 - ldr r0, ._21 + 12 + ldr r1, ._21 + 8 @ gMenuCallback + ldr r0, ._21 + 12 @ debug_sub_808BEB4 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -458,12 +458,12 @@ TomomichiDebugMenu_ControlWorks: mov r2, #0x18 mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r3, ._23 + ldr r3, ._23 @ gUnknown_Debug_083C0EF1 mov r0, #0x2 mov r1, #0x1 mov r2, #0x6 bl Menu_PrintItems - ldr r0, ._23 + 4 + ldr r0, ._23 + 4 @ gDebug_03000721 ldrb r0, [r0] str r0, [sp] mov r0, #0x17 @@ -473,8 +473,8 @@ TomomichiDebugMenu_ControlWorks: mov r2, #0x1 mov r3, #0x6 bl InitMenu - ldr r1, ._23 + 8 - ldr r0, ._23 + 12 + ldr r1, ._23 + 8 @ gMenuCallback + ldr r0, ._23 + 12 @ debug_sub_808BF3C str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -537,8 +537,8 @@ debug_sub_808BC48: ._34: cmp r1, #0x3 bne ._36 @cond_branch - ldr r0, ._37 - ldr r1, ._37 + 4 + ldr r0, ._37 @ gMenuCallback + ldr r1, ._37 + 4 @ gUnknown_Debug_083C0D2C ldr r1, [r1, #0x1c] str r1, [r0] ._36: @@ -602,8 +602,8 @@ debug_sub_808BCBC: ._48: cmp r1, #0x3 bne ._50 @cond_branch - ldr r0, ._51 - ldr r1, ._51 + 4 + ldr r0, ._51 @ gMenuCallback + ldr r1, ._51 + 4 @ gUnknown_Debug_083C0D83 ldr r1, [r1, #0x1c] str r1, [r0] ._50: @@ -667,8 +667,8 @@ debug_sub_808BD30: ._62: cmp r1, #0x3 bne ._64 @cond_branch - ldr r0, ._65 - ldr r1, ._65 + 4 + ldr r0, ._65 @ gMenuCallback + ldr r1, ._65 + 4 @ gUnknown_Debug_083C0DD4 ldr r1, [r1, #0x1c] str r1, [r0] ._64: @@ -688,7 +688,7 @@ debug_sub_808BD30: thumb_func_start debug_sub_808BDA4 debug_sub_808BDA4: push {r4, lr} - ldr r4, ._71 + ldr r4, ._71 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -699,7 +699,7 @@ debug_sub_808BDA4: mov r0, #0x1 neg r0, r0 bl Menu_MoveCursor - ldr r1, ._71 + 4 + ldr r1, ._71 + 4 @ gDebug_0300071E strb r0, [r1] ._67: ldrh r1, [r4, #0x2e] @@ -711,7 +711,7 @@ debug_sub_808BDA4: bl PlaySE mov r0, #0x1 bl Menu_MoveCursor - ldr r1, ._71 + 4 + ldr r1, ._71 + 4 @ gDebug_0300071E strb r0, [r1] ._68: ldrh r1, [r4, #0x2e] @@ -721,8 +721,8 @@ debug_sub_808BDA4: beq ._69 @cond_branch mov r0, #0x5 bl PlaySE - ldr r1, ._71 + 8 - ldr r0, ._71 + 4 + ldr r1, ._71 + 8 @ gUnknown_Debug_083C0E15 + ldr r0, ._71 + 4 @ gDebug_0300071E ldrb r0, [r0] lsl r0, r0, #0x3 add r1, r1, #0x4 @@ -758,7 +758,7 @@ debug_sub_808BDA4: thumb_func_start debug_sub_808BE2C debug_sub_808BE2C: push {r4, lr} - ldr r4, ._79 + ldr r4, ._79 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -769,7 +769,7 @@ debug_sub_808BE2C: mov r0, #0x1 neg r0, r0 bl Menu_MoveCursor - ldr r1, ._79 + 4 + ldr r1, ._79 + 4 @ gDebug_0300071F strb r0, [r1] ._75: ldrh r1, [r4, #0x2e] @@ -781,7 +781,7 @@ debug_sub_808BE2C: bl PlaySE mov r0, #0x1 bl Menu_MoveCursor - ldr r1, ._79 + 4 + ldr r1, ._79 + 4 @ gDebug_0300071F strb r0, [r1] ._76: ldrh r1, [r4, #0x2e] @@ -791,8 +791,8 @@ debug_sub_808BE2C: beq ._77 @cond_branch mov r0, #0x5 bl PlaySE - ldr r1, ._79 + 8 - ldr r0, ._79 + 4 + ldr r1, ._79 + 8 @ gUnknown_Debug_083C0E32 + ldr r0, ._79 + 4 @ gDebug_0300071F ldrb r0, [r0] lsl r0, r0, #0x3 add r1, r1, #0x4 @@ -828,7 +828,7 @@ debug_sub_808BE2C: thumb_func_start debug_sub_808BEB4 debug_sub_808BEB4: push {r4, lr} - ldr r4, ._87 + ldr r4, ._87 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -839,7 +839,7 @@ debug_sub_808BEB4: mov r0, #0x1 neg r0, r0 bl Menu_MoveCursor - ldr r1, ._87 + 4 + ldr r1, ._87 + 4 @ gDebug_03000720 strb r0, [r1] ._83: ldrh r1, [r4, #0x2e] @@ -851,7 +851,7 @@ debug_sub_808BEB4: bl PlaySE mov r0, #0x1 bl Menu_MoveCursor - ldr r1, ._87 + 4 + ldr r1, ._87 + 4 @ gDebug_03000720 strb r0, [r1] ._84: ldrh r1, [r4, #0x2e] @@ -861,8 +861,8 @@ debug_sub_808BEB4: beq ._85 @cond_branch mov r0, #0x5 bl PlaySE - ldr r1, ._87 + 8 - ldr r0, ._87 + 4 + ldr r1, ._87 + 8 @ gUnknown_Debug_083C0E7F + ldr r0, ._87 + 4 @ gDebug_03000720 ldrb r0, [r0] lsl r0, r0, #0x3 add r1, r1, #0x4 @@ -898,7 +898,7 @@ debug_sub_808BEB4: thumb_func_start debug_sub_808BF3C debug_sub_808BF3C: push {r4, lr} - ldr r4, ._95 + ldr r4, ._95 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x40 and r0, r0, r1 @@ -909,7 +909,7 @@ debug_sub_808BF3C: mov r0, #0x1 neg r0, r0 bl Menu_MoveCursor - ldr r1, ._95 + 4 + ldr r1, ._95 + 4 @ gDebug_03000721 strb r0, [r1] ._91: ldrh r1, [r4, #0x2e] @@ -921,7 +921,7 @@ debug_sub_808BF3C: bl PlaySE mov r0, #0x1 bl Menu_MoveCursor - ldr r1, ._95 + 4 + ldr r1, ._95 + 4 @ gDebug_03000721 strb r0, [r1] ._92: ldrh r1, [r4, #0x2e] @@ -931,8 +931,8 @@ debug_sub_808BF3C: beq ._93 @cond_branch mov r0, #0x5 bl PlaySE - ldr r1, ._95 + 8 - ldr r0, ._95 + 4 + ldr r1, ._95 + 8 @ gUnknown_Debug_083C0EF1 + ldr r0, ._95 + 4 @ gDebug_03000721 ldrb r0, [r0] lsl r0, r0, #0x3 add r1, r1, #0x4 @@ -975,7 +975,7 @@ debug_sub_808BFC4: mov r2, #0x1c mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._99 + ldr r3, ._99 @ gUnknown_Debug_083C0F79 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -989,8 +989,8 @@ debug_sub_808BFC4: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._99 + 4 - ldr r0, ._99 + 8 + ldr r1, ._99 + 4 @ gMenuCallback + ldr r0, ._99 + 8 @ debug_sub_808C064 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1015,7 +1015,7 @@ debug_sub_808C014: mov r2, #0x1c mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r3, ._101 + ldr r3, ._101 @ gUnknown_Debug_083C0FFC mov r0, #0x2 mov r1, #0x1 mov r2, #0x6 @@ -1029,8 +1029,8 @@ debug_sub_808C014: mov r2, #0x1 mov r3, #0x6 bl InitMenu - ldr r1, ._101 + 4 - ldr r0, ._101 + 8 + ldr r1, ._101 + 4 @ gMenuCallback + ldr r0, ._101 + 8 @ debug_sub_808C0A8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1062,8 +1062,8 @@ debug_sub_808C064: neg r0, r0 cmp r1, r0 beq ._105 @cond_branch - ldr r2, ._107 - ldr r0, ._107 + 4 + ldr r2, ._107 @ gMenuCallback + ldr r0, ._107 + 4 @ gUnknown_Debug_083C0F79 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -1102,8 +1102,8 @@ debug_sub_808C0A8: neg r0, r0 cmp r1, r0 beq ._111 @cond_branch - ldr r2, ._113 - ldr r0, ._113 + 4 + ldr r2, ._113 @ gMenuCallback + ldr r0, ._113 + 4 @ gUnknown_Debug_083C0FFC lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -1128,7 +1128,7 @@ debug_sub_808C0A8: thumb_func_start debug_sub_808C0EC debug_sub_808C0EC: push {lr} - ldr r0, ._115 + ldr r0, ._115 @ DebugScript_081C1CFE bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1144,7 +1144,7 @@ debug_sub_808C0EC: thumb_func_start debug_sub_808C104 debug_sub_808C104: push {lr} - ldr r0, ._117 + ldr r0, ._117 @ DebugScript_081C1D07 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1160,7 +1160,7 @@ debug_sub_808C104: thumb_func_start debug_sub_808C11C debug_sub_808C11C: push {lr} - ldr r0, ._119 + ldr r0, ._119 @ DebugScript_081C1D1E bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1176,7 +1176,7 @@ debug_sub_808C11C: thumb_func_start debug_sub_808C134 debug_sub_808C134: push {lr} - ldr r0, ._121 + ldr r0, ._121 @ DebugScript_081C1D24 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1192,7 +1192,7 @@ debug_sub_808C134: thumb_func_start debug_sub_808C14C debug_sub_808C14C: push {lr} - ldr r0, ._123 + ldr r0, ._123 @ DebugScript_081C1D2A bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1208,7 +1208,7 @@ debug_sub_808C14C: thumb_func_start debug_sub_808C164 debug_sub_808C164: push {lr} - ldr r0, ._125 + ldr r0, ._125 @ DebugScript_081C1D35 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1224,7 +1224,7 @@ debug_sub_808C164: thumb_func_start debug_sub_808C17C debug_sub_808C17C: push {lr} - ldr r0, ._127 + ldr r0, ._127 @ DebugScript_081C1D46 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1240,7 +1240,7 @@ debug_sub_808C17C: thumb_func_start debug_sub_808C194 debug_sub_808C194: push {lr} - ldr r0, ._129 + ldr r0, ._129 @ DebugScript_081C221F bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1256,7 +1256,7 @@ debug_sub_808C194: thumb_func_start debug_sub_808C1AC debug_sub_808C1AC: push {lr} - ldr r0, ._131 + ldr r0, ._131 @ DebugScript_081C23E2 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1272,7 +1272,7 @@ debug_sub_808C1AC: thumb_func_start debug_sub_808C1C4 debug_sub_808C1C4: push {lr} - ldr r0, ._133 + ldr r0, ._133 @ DebugScript_081C23E6 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1288,7 +1288,7 @@ debug_sub_808C1C4: thumb_func_start debug_sub_808C1DC debug_sub_808C1DC: push {lr} - ldr r0, ._135 + ldr r0, ._135 @ DebugScript_081C23F6 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1304,7 +1304,7 @@ debug_sub_808C1DC: thumb_func_start debug_sub_808C1F4 debug_sub_808C1F4: push {lr} - ldr r0, ._137 + ldr r0, ._137 @ DebugScript_081C2482 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1320,7 +1320,7 @@ debug_sub_808C1F4: thumb_func_start debug_sub_808C20C debug_sub_808C20C: push {lr} - ldr r0, ._139 + ldr r0, ._139 @ DebugScript_081C23FD bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1336,7 +1336,7 @@ debug_sub_808C20C: thumb_func_start debug_sub_808C224 debug_sub_808C224: push {lr} - ldr r0, ._141 + ldr r0, ._141 @ DebugScript_081C2518 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1352,7 +1352,7 @@ debug_sub_808C224: thumb_func_start debug_sub_808C23C debug_sub_808C23C: push {lr} - ldr r0, ._143 + ldr r0, ._143 @ DebugScript_081C2507 bl ScriptContext1_SetupScript bl CloseMenu mov r0, #0x1 @@ -1376,8 +1376,8 @@ TomomichiDebugMenu_ContestGraphics_Show: mov r2, #0x0 mov r3, #0x10 bl BeginNormalPaletteFade - ldr r1, ._145 - ldr r0, ._145 + 4 + ldr r1, ._145 @ gMenuCallback + ldr r0, ._145 + 4 @ debug_sub_808C280 str r0, [r1] mov r0, #0x0 add sp, sp, #0x4 @@ -1404,10 +1404,10 @@ debug_sub_808C280: bl CloseMenu mov r0, #0x0 bl debug_sub_808F168 - ldr r0, ._149 + ldr r0, ._149 @ CB2_ContestPainting bl SetMainCallback2 - ldr r1, ._149 + 4 - ldr r0, ._149 + 8 + ldr r1, ._149 + 4 @ gMain + ldr r0, ._149 + 8 @ debug_sub_808B868 str r0, [r1, #0x8] mov r0, #0x1 ._148: @@ -1433,8 +1433,8 @@ TomomichiDebugMenu_MuseumGraphics_Show: mov r2, #0x0 mov r3, #0x10 bl BeginNormalPaletteFade - ldr r1, ._151 - ldr r0, ._151 + 4 + ldr r1, ._151 @ gMenuCallback + ldr r0, ._151 + 4 @ debug_sub_808C2E4 str r0, [r1] mov r0, #0x0 add sp, sp, #0x4 @@ -1461,10 +1461,10 @@ debug_sub_808C2E4: bl CloseMenu mov r0, #0x1 bl debug_sub_808F168 - ldr r0, ._155 + ldr r0, ._155 @ CB2_ContestPainting bl SetMainCallback2 - ldr r1, ._155 + 4 - ldr r0, ._155 + 8 + ldr r1, ._155 + 4 @ gMain + ldr r0, ._155 + 8 @ debug_sub_808B868 str r0, [r1, #0x8] mov r0, #0x1 ._154: @@ -1489,7 +1489,7 @@ debug_sub_808C31C: mov r2, #0x1c mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._157 + ldr r3, ._157 @ gUnknown_Debug_083C2828 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1503,8 +1503,8 @@ debug_sub_808C31C: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._157 + 4 - ldr r0, ._157 + 8 + ldr r1, ._157 + 4 @ gMenuCallback + ldr r0, ._157 + 8 @ debug_sub_808C36C str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1536,8 +1536,8 @@ debug_sub_808C36C: neg r0, r0 cmp r1, r0 beq ._161 @cond_branch - ldr r2, ._163 - ldr r0, ._163 + 4 + ldr r2, ._163 @ gMenuCallback + ldr r0, ._163 + 4 @ gUnknown_Debug_083C2828 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -1569,7 +1569,7 @@ debug_sub_808C3B0: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._165 + ldr r3, ._165 @ gUnknown_Debug_083C2938 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1583,10 +1583,10 @@ debug_sub_808C3B0: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r0, ._165 + 4 + ldr r0, ._165 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._165 + 8 - ldr r0, ._165 + 12 + ldr r1, ._165 + 8 @ gMenuCallback + ldr r0, ._165 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1613,7 +1613,7 @@ debug_sub_808C408: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._167 + ldr r3, ._167 @ gUnknown_Debug_083C2A48 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1627,11 +1627,11 @@ debug_sub_808C408: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._167 + 4 + ldr r1, ._167 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._167 + 8 - ldr r0, ._167 + 12 + ldr r1, ._167 + 8 @ gMenuCallback + ldr r0, ._167 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1657,7 +1657,7 @@ debug_sub_808C460: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._169 + ldr r3, ._169 @ gUnknown_Debug_083C2B4C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1671,11 +1671,11 @@ debug_sub_808C460: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._169 + 4 + ldr r1, ._169 + 4 @ gDebug_0300070F mov r0, #0x2 strb r0, [r1] - ldr r1, ._169 + 8 - ldr r0, ._169 + 12 + ldr r1, ._169 + 8 @ gMenuCallback + ldr r0, ._169 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1701,7 +1701,7 @@ debug_sub_808C4B8: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._171 + ldr r3, ._171 @ gUnknown_Debug_083C2C80 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1715,11 +1715,11 @@ debug_sub_808C4B8: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._171 + 4 + ldr r1, ._171 + 4 @ gDebug_0300070F mov r0, #0x3 strb r0, [r1] - ldr r1, ._171 + 8 - ldr r0, ._171 + 12 + ldr r1, ._171 + 8 @ gMenuCallback + ldr r0, ._171 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1745,7 +1745,7 @@ debug_sub_808C510: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._173 + ldr r3, ._173 @ gUnknown_Debug_083C2D8C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1759,11 +1759,11 @@ debug_sub_808C510: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._173 + 4 + ldr r1, ._173 + 4 @ gDebug_0300070F mov r0, #0x4 strb r0, [r1] - ldr r1, ._173 + 8 - ldr r0, ._173 + 12 + ldr r1, ._173 + 8 @ gMenuCallback + ldr r0, ._173 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1789,7 +1789,7 @@ debug_sub_808C568: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._175 + ldr r3, ._175 @ gUnknown_Debug_083C2EB0 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1803,11 +1803,11 @@ debug_sub_808C568: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._175 + 4 + ldr r1, ._175 + 4 @ gDebug_0300070F mov r0, #0x5 strb r0, [r1] - ldr r1, ._175 + 8 - ldr r0, ._175 + 12 + ldr r1, ._175 + 8 @ gMenuCallback + ldr r0, ._175 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1833,7 +1833,7 @@ debug_sub_808C5C0: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._177 + ldr r3, ._177 @ gUnknown_Debug_083C2FE0 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1847,11 +1847,11 @@ debug_sub_808C5C0: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._177 + 4 + ldr r1, ._177 + 4 @ gDebug_0300070F mov r0, #0x6 strb r0, [r1] - ldr r1, ._177 + 8 - ldr r0, ._177 + 12 + ldr r1, ._177 + 8 @ gMenuCallback + ldr r0, ._177 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1877,7 +1877,7 @@ debug_sub_808C618: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._179 + ldr r3, ._179 @ gUnknown_Debug_083C3100 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -1891,11 +1891,11 @@ debug_sub_808C618: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._179 + 4 + ldr r1, ._179 + 4 @ gDebug_0300070F mov r0, #0x7 strb r0, [r1] - ldr r1, ._179 + 8 - ldr r0, ._179 + 12 + ldr r1, ._179 + 8 @ gMenuCallback + ldr r0, ._179 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1921,7 +1921,7 @@ debug_sub_808C670: mov r2, #0x1d mov r3, #0x7 bl Menu_DrawStdWindowFrame - ldr r3, ._181 + ldr r3, ._181 @ gUnknown_Debug_083C3194 mov r0, #0x2 mov r1, #0x1 mov r2, #0x3 @@ -1935,11 +1935,11 @@ debug_sub_808C670: mov r2, #0x1 mov r3, #0x3 bl InitMenu - ldr r1, ._181 + 4 + ldr r1, ._181 + 4 @ gDebug_0300070F mov r0, #0x8 strb r0, [r1] - ldr r1, ._181 + 8 - ldr r0, ._181 + 12 + ldr r1, ._181 + 8 @ gMenuCallback + ldr r0, ._181 + 12 @ debug_sub_808C6C8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -1964,7 +1964,7 @@ debug_sub_808C6C8: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._186 + ldr r5, ._186 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -2005,14 +2005,14 @@ debug_sub_808C714: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._191 + ldr r0, ._191 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 and r0, r0, r1 cmp r0, #0 beq ._190 @cond_branch - ldr r0, ._191 + 4 + ldr r0, ._191 + 4 @ gUnknown_Debug_83C31E6 lsl r1, r2, #0x3 add r1, r1, r2 add r1, r1, r3 @@ -2050,12 +2050,12 @@ debug_sub_808C764: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._195 + ldr r0, ._195 @ gUnknown_Debug_083C31DC add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._193 @cond_branch - ldr r0, ._195 + 4 + ldr r0, ._195 + 4 @ gUnknown_Debug_83C31E6 mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -2107,7 +2107,7 @@ debug_sub_808C7C8: mov r2, #0x1c mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._197 + ldr r3, ._197 @ gUnknown_Debug_083C1CE8 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2121,8 +2121,8 @@ debug_sub_808C7C8: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._197 + 4 - ldr r0, ._197 + 8 + ldr r1, ._197 + 4 @ gMenuCallback + ldr r0, ._197 + 8 @ debug_sub_808C818 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2154,8 +2154,8 @@ debug_sub_808C818: neg r0, r0 cmp r1, r0 beq ._201 @cond_branch - ldr r2, ._203 - ldr r0, ._203 + 4 + ldr r2, ._203 @ gMenuCallback + ldr r0, ._203 + 4 @ gUnknown_Debug_083C1CE8 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -2187,7 +2187,7 @@ debug_sub_808C85C: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._205 + ldr r3, ._205 @ gUnknown_Debug_083C1E0C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2201,10 +2201,10 @@ debug_sub_808C85C: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r0, ._205 + 4 + ldr r0, ._205 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._205 + 8 - ldr r0, ._205 + 12 + ldr r1, ._205 + 8 @ gMenuCallback + ldr r0, ._205 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2231,7 +2231,7 @@ debug_sub_808C8B4: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._207 + ldr r3, ._207 @ gUnknown_Debug_083C1F38 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2245,11 +2245,11 @@ debug_sub_808C8B4: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._207 + 4 + ldr r1, ._207 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._207 + 8 - ldr r0, ._207 + 12 + ldr r1, ._207 + 8 @ gMenuCallback + ldr r0, ._207 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2275,7 +2275,7 @@ debug_sub_808C90C: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._209 + ldr r3, ._209 @ gUnknown_Debug_083C206C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2289,11 +2289,11 @@ debug_sub_808C90C: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._209 + 4 + ldr r1, ._209 + 4 @ gDebug_0300070F mov r0, #0x2 strb r0, [r1] - ldr r1, ._209 + 8 - ldr r0, ._209 + 12 + ldr r1, ._209 + 8 @ gMenuCallback + ldr r0, ._209 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2319,7 +2319,7 @@ debug_sub_808C964: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._211 + ldr r3, ._211 @ gUnknown_Debug_083C2190 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2333,11 +2333,11 @@ debug_sub_808C964: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._211 + 4 + ldr r1, ._211 + 4 @ gDebug_0300070F mov r0, #0x3 strb r0, [r1] - ldr r1, ._211 + 8 - ldr r0, ._211 + 12 + ldr r1, ._211 + 8 @ gMenuCallback + ldr r0, ._211 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2363,7 +2363,7 @@ debug_sub_808C9BC: mov r2, #0x1d mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r3, ._213 + ldr r3, ._213 @ gUnknown_Debug_083C2264 mov r0, #0x2 mov r1, #0x1 mov r2, #0x6 @@ -2377,11 +2377,11 @@ debug_sub_808C9BC: mov r2, #0x1 mov r3, #0x6 bl InitMenu - ldr r1, ._213 + 4 + ldr r1, ._213 + 4 @ gDebug_0300070F mov r0, #0x4 strb r0, [r1] - ldr r1, ._213 + 8 - ldr r0, ._213 + 12 + ldr r1, ._213 + 8 @ gMenuCallback + ldr r0, ._213 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2407,7 +2407,7 @@ debug_sub_808CA14: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._215 + ldr r3, ._215 @ gUnknown_Debug_083C2370 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2421,11 +2421,11 @@ debug_sub_808CA14: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._215 + 4 + ldr r1, ._215 + 4 @ gDebug_0300070F mov r0, #0x5 strb r0, [r1] - ldr r1, ._215 + 8 - ldr r0, ._215 + 12 + ldr r1, ._215 + 8 @ gMenuCallback + ldr r0, ._215 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2451,7 +2451,7 @@ debug_sub_808CA6C: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._217 + ldr r3, ._217 @ gUnknown_Debug_083C248C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2465,11 +2465,11 @@ debug_sub_808CA6C: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._217 + 4 + ldr r1, ._217 + 4 @ gDebug_0300070F mov r0, #0x6 strb r0, [r1] - ldr r1, ._217 + 8 - ldr r0, ._217 + 12 + ldr r1, ._217 + 8 @ gMenuCallback + ldr r0, ._217 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2495,7 +2495,7 @@ debug_sub_808CAC4: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._219 + ldr r3, ._219 @ gUnknown_Debug_083C259C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2509,11 +2509,11 @@ debug_sub_808CAC4: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._219 + 4 + ldr r1, ._219 + 4 @ gDebug_0300070F mov r0, #0x7 strb r0, [r1] - ldr r1, ._219 + 8 - ldr r0, ._219 + 12 + ldr r1, ._219 + 8 @ gMenuCallback + ldr r0, ._219 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2539,7 +2539,7 @@ debug_sub_808CB1C: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._221 + ldr r3, ._221 @ gUnknown_Debug_083C26C8 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -2553,11 +2553,11 @@ debug_sub_808CB1C: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._221 + 4 + ldr r1, ._221 + 4 @ gDebug_0300070F mov r0, #0x8 strb r0, [r1] - ldr r1, ._221 + 8 - ldr r0, ._221 + 12 + ldr r1, ._221 + 8 @ gMenuCallback + ldr r0, ._221 + 12 @ debug_sub_808CB74 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2582,7 +2582,7 @@ debug_sub_808CB74: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._226 + ldr r5, ._226 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -2623,14 +2623,14 @@ debug_sub_808CBC0: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._231 + ldr r0, ._231 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 and r0, r0, r1 cmp r0, #0 beq ._230 @cond_branch - ldr r0, ._231 + 4 + ldr r0, ._231 + 4 @ gUnknown_Debug_083C271A lsl r1, r2, #0x3 add r1, r1, r2 add r1, r1, r3 @@ -2668,12 +2668,12 @@ debug_sub_808CC10: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._235 + ldr r0, ._235 @ gUnknown_Debug_083C2710 add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._233 @cond_branch - ldr r0, ._235 + 4 + ldr r0, ._235 + 4 @ gUnknown_Debug_083C271A mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -2725,7 +2725,7 @@ debug_sub_808CC74: mov r2, #0x1c mov r3, #0x7 bl Menu_DrawStdWindowFrame - ldr r3, ._237 + ldr r3, ._237 @ gUnknown_Debug_083C1ADC mov r0, #0x2 mov r1, #0x1 mov r2, #0x3 @@ -2739,8 +2739,8 @@ debug_sub_808CC74: mov r2, #0x1 mov r3, #0x3 bl InitMenu - ldr r1, ._237 + 4 - ldr r0, ._237 + 8 + ldr r1, ._237 + 4 @ gMenuCallback + ldr r0, ._237 + 8 @ debug_sub_808CCC4 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2772,8 +2772,8 @@ debug_sub_808CCC4: neg r0, r0 cmp r1, r0 beq ._241 @cond_branch - ldr r2, ._243 - ldr r0, ._243 + 4 + ldr r2, ._243 @ gMenuCallback + ldr r0, ._243 + 4 @ gUnknown_Debug_083C1ADC lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -2805,7 +2805,7 @@ debug_sub_808CD08: mov r2, #0x1d mov r3, #0x11 bl Menu_DrawStdWindowFrame - ldr r3, ._245 + ldr r3, ._245 @ gUnknown_Debug_083C1B7C mov r0, #0x2 mov r1, #0x1 mov r2, #0x8 @@ -2819,10 +2819,10 @@ debug_sub_808CD08: mov r2, #0x1 mov r3, #0x8 bl InitMenu - ldr r0, ._245 + 4 + ldr r0, ._245 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._245 + 8 - ldr r0, ._245 + 12 + ldr r1, ._245 + 8 @ gMenuCallback + ldr r0, ._245 + 12 @ debug_sub_808CE10 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2849,7 +2849,7 @@ debug_sub_808CD60: mov r2, #0x1d mov r3, #0x9 bl Menu_DrawStdWindowFrame - ldr r3, ._247 + ldr r3, ._247 @ gUnknown_Debug_083C1BF0 mov r0, #0x2 mov r1, #0x1 mov r2, #0x4 @@ -2863,11 +2863,11 @@ debug_sub_808CD60: mov r2, #0x1 mov r3, #0x4 bl InitMenu - ldr r1, ._247 + 4 + ldr r1, ._247 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._247 + 8 - ldr r0, ._247 + 12 + ldr r1, ._247 + 8 @ gMenuCallback + ldr r0, ._247 + 12 @ debug_sub_808CE10 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2893,7 +2893,7 @@ debug_sub_808CDB8: mov r2, #0x1d mov r3, #0x3 bl Menu_DrawStdWindowFrame - ldr r3, ._249 + ldr r3, ._249 @ gUnknown_Debug_083C1C2C mov r0, #0x2 mov r1, #0x1 mov r2, #0x1 @@ -2907,11 +2907,11 @@ debug_sub_808CDB8: mov r2, #0x1 mov r3, #0x1 bl InitMenu - ldr r1, ._249 + 4 + ldr r1, ._249 + 4 @ gDebug_0300070F mov r0, #0x2 strb r0, [r1] - ldr r1, ._249 + 8 - ldr r0, ._249 + 12 + ldr r1, ._249 + 8 @ gMenuCallback + ldr r0, ._249 + 12 @ debug_sub_808CE10 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -2936,7 +2936,7 @@ debug_sub_808CE10: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._254 + ldr r5, ._254 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -2977,14 +2977,14 @@ debug_sub_808CE5C: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._259 + ldr r0, ._259 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 and r0, r0, r1 cmp r0, #0 beq ._258 @cond_branch - ldr r0, ._259 + 4 + ldr r0, ._259 + 4 @ gUnknown_Debug_083C1C38 lsl r1, r2, #0x3 add r1, r1, r2 add r1, r1, r3 @@ -3022,12 +3022,12 @@ debug_sub_808CEAC: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._263 + ldr r0, ._263 @ gUnknown_Debug_083C1C34 add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._261 @cond_branch - ldr r0, ._263 + 4 + ldr r0, ._263 + 4 @ gUnknown_Debug_083C1C38 mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -3079,7 +3079,7 @@ debug_sub_808CF10: mov r2, #0x1c mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._265 + ldr r3, ._265 @ gUnknown_Debug_083C1330 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -3093,8 +3093,8 @@ debug_sub_808CF10: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._265 + 4 - ldr r0, ._265 + 8 + ldr r1, ._265 + 4 @ gMenuCallback + ldr r0, ._265 + 8 @ debug_sub_808CF60 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3126,8 +3126,8 @@ debug_sub_808CF60: neg r0, r0 cmp r1, r0 beq ._269 @cond_branch - ldr r2, ._271 - ldr r0, ._271 + 4 + ldr r2, ._271 @ gMenuCallback + ldr r0, ._271 + 4 @ gUnknown_Debug_083C1330 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -3159,7 +3159,7 @@ debug_sub_808CFA4: mov r2, #0x1d mov r3, #0x11 bl Menu_DrawStdWindowFrame - ldr r3, ._273 + ldr r3, ._273 @ gUnknown_Debug_083C13D8 mov r0, #0x2 mov r1, #0x1 mov r2, #0x8 @@ -3173,10 +3173,10 @@ debug_sub_808CFA4: mov r2, #0x1 mov r3, #0x8 bl InitMenu - ldr r0, ._273 + 4 + ldr r0, ._273 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._273 + 8 - ldr r0, ._273 + 12 + ldr r1, ._273 + 8 @ gMenuCallback + ldr r0, ._273 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3203,7 +3203,7 @@ debug_sub_808CFFC: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._275 + ldr r3, ._275 @ gUnknown_Debug_083C1465 mov r0, #0x2 mov r1, #0x1 mov r2, #0x7 @@ -3217,11 +3217,11 @@ debug_sub_808CFFC: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._275 + 4 + ldr r1, ._275 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._275 + 8 - ldr r0, ._275 + 12 + ldr r1, ._275 + 8 @ gMenuCallback + ldr r0, ._275 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3247,7 +3247,7 @@ debug_sub_808D054: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._277 + ldr r3, ._277 @ gUnknown_Debug_083C1503 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -3261,11 +3261,11 @@ debug_sub_808D054: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._277 + 4 + ldr r1, ._277 + 4 @ gDebug_0300070F mov r0, #0x2 strb r0, [r1] - ldr r1, ._277 + 8 - ldr r0, ._277 + 12 + ldr r1, ._277 + 8 @ gMenuCallback + ldr r0, ._277 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3291,7 +3291,7 @@ debug_sub_808D0AC: mov r2, #0x1d mov r3, #0x9 bl Menu_DrawStdWindowFrame - ldr r3, ._279 + ldr r3, ._279 @ gUnknown_Debug_083C158A mov r0, #0x2 mov r1, #0x1 mov r2, #0x4 @@ -3305,11 +3305,11 @@ debug_sub_808D0AC: mov r2, #0x1 mov r3, #0x4 bl InitMenu - ldr r1, ._279 + 4 + ldr r1, ._279 + 4 @ gDebug_0300070F mov r0, #0x3 strb r0, [r1] - ldr r1, ._279 + 8 - ldr r0, ._279 + 12 + ldr r1, ._279 + 8 @ gMenuCallback + ldr r0, ._279 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3335,7 +3335,7 @@ debug_sub_808D104: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._281 + ldr r3, ._281 @ gUnknown_Debug_083C1647 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -3349,11 +3349,11 @@ debug_sub_808D104: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._281 + 4 + ldr r1, ._281 + 4 @ gDebug_0300070F mov r0, #0x4 strb r0, [r1] - ldr r1, ._281 + 8 - ldr r0, ._281 + 12 + ldr r1, ._281 + 8 @ gMenuCallback + ldr r0, ._281 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3379,7 +3379,7 @@ debug_sub_808D15C: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._283 + ldr r3, ._283 @ gUnknown_Debug_083C1712 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -3393,11 +3393,11 @@ debug_sub_808D15C: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._283 + 4 + ldr r1, ._283 + 4 @ gDebug_0300070F mov r0, #0x5 strb r0, [r1] - ldr r1, ._283 + 8 - ldr r0, ._283 + 12 + ldr r1, ._283 + 8 @ gMenuCallback + ldr r0, ._283 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3423,7 +3423,7 @@ debug_sub_808D1B4: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._285 + ldr r3, ._285 @ gUnknown_Debug_083C17F8 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -3437,11 +3437,11 @@ debug_sub_808D1B4: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._285 + 4 + ldr r1, ._285 + 4 @ gDebug_0300070F mov r0, #0x6 strb r0, [r1] - ldr r1, ._285 + 8 - ldr r0, ._285 + 12 + ldr r1, ._285 + 8 @ gMenuCallback + ldr r0, ._285 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3467,7 +3467,7 @@ debug_sub_808D20C: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._287 + ldr r3, ._287 @ gUnknown_Debug_083C18B8 mov r0, #0x2 mov r1, #0x1 mov r2, #0x7 @@ -3481,11 +3481,11 @@ debug_sub_808D20C: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._287 + 4 + ldr r1, ._287 + 4 @ gDebug_0300070F mov r0, #0x7 strb r0, [r1] - ldr r1, ._287 + 8 - ldr r0, ._287 + 12 + ldr r1, ._287 + 8 @ gMenuCallback + ldr r0, ._287 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3511,7 +3511,7 @@ debug_sub_808D264: mov r2, #0x1d mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r3, ._289 + ldr r3, ._289 @ gDebug_0x83C1974 mov r0, #0x2 mov r1, #0x1 mov r2, #0x5 @@ -3525,11 +3525,11 @@ debug_sub_808D264: mov r2, #0x1 mov r3, #0x5 bl InitMenu - ldr r1, ._289 + 4 + ldr r1, ._289 + 4 @ gDebug_0300070F mov r0, #0x8 strb r0, [r1] - ldr r1, ._289 + 8 - ldr r0, ._289 + 12 + ldr r1, ._289 + 8 @ gMenuCallback + ldr r0, ._289 + 12 @ debug_sub_808D2BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3554,7 +3554,7 @@ debug_sub_808D2BC: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._294 + ldr r5, ._294 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -3595,14 +3595,14 @@ debug_sub_808D308: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._299 + ldr r0, ._299 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 and r0, r0, r1 cmp r0, #0 beq ._298 @cond_branch - ldr r0, ._299 + 4 + ldr r0, ._299 + 4 @ gUnknown_Debug_083C19C6 lsl r1, r2, #0x3 add r1, r1, r2 add r1, r1, r3 @@ -3640,12 +3640,12 @@ debug_sub_808D358: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._303 + ldr r0, ._303 @ gUnknown_Debug_083C19BC add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._301 @cond_branch - ldr r0, ._303 + 4 + ldr r0, ._303 + 4 @ gUnknown_Debug_083C19C6 mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -3697,7 +3697,7 @@ debug_sub_808D3BC: mov r2, #0x1c mov r3, #0x5 bl Menu_DrawStdWindowFrame - ldr r3, ._305 + ldr r3, ._305 @ gUnknown_Debug_083C105C mov r0, #0x2 mov r1, #0x1 mov r2, #0x2 @@ -3711,8 +3711,8 @@ debug_sub_808D3BC: mov r2, #0x1 mov r3, #0x2 bl InitMenu - ldr r1, ._305 + 4 - ldr r0, ._305 + 8 + ldr r1, ._305 + 4 @ gMenuCallback + ldr r0, ._305 + 8 @ debug_sub_808D40C str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3744,8 +3744,8 @@ debug_sub_808D40C: neg r0, r0 cmp r1, r0 beq ._309 @cond_branch - ldr r2, ._311 - ldr r0, ._311 + 4 + ldr r2, ._311 @ gMenuCallback + ldr r0, ._311 + 4 @ gUnknown_Debug_083C105C lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -3777,7 +3777,7 @@ debug_sub_808D450: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._313 + ldr r3, ._313 @ gUnknown_Debug_083C10BD mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -3791,10 +3791,10 @@ debug_sub_808D450: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r0, ._313 + 4 + ldr r0, ._313 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._313 + 8 - ldr r0, ._313 + 12 + ldr r1, ._313 + 8 @ gMenuCallback + ldr r0, ._313 + 12 @ debug_sub_808D500 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3821,7 +3821,7 @@ debug_sub_808D4A8: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._315 + ldr r3, ._315 @ gUnknown_Debug_083C1149 mov r0, #0x2 mov r1, #0x1 mov r2, #0x7 @@ -3835,11 +3835,11 @@ debug_sub_808D4A8: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._315 + 4 + ldr r1, ._315 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._315 + 8 - ldr r0, ._315 + 12 + ldr r1, ._315 + 8 @ gMenuCallback + ldr r0, ._315 + 12 @ debug_sub_808D500 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -3864,7 +3864,7 @@ debug_sub_808D500: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._320 + ldr r5, ._320 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -3905,14 +3905,14 @@ debug_sub_808D54C: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._325 + ldr r0, ._325 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 and r0, r0, r1 cmp r0, #0 beq ._324 @cond_branch - ldr r0, ._325 + 4 + ldr r0, ._325 + 4 @ gUnknown_Debug_083C1196 lsl r1, r2, #0x3 add r1, r1, r2 add r1, r1, r3 @@ -3950,12 +3950,12 @@ debug_sub_808D59C: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._329 + ldr r0, ._329 @ gUnknown_Debug_083C1194 add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._327 @cond_branch - ldr r0, ._329 + 4 + ldr r0, ._329 + 4 @ gUnknown_Debug_083C1196 mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -4007,7 +4007,7 @@ debug_sub_808D600: mov r2, #0x1c mov r3, #0x5 bl Menu_DrawStdWindowFrame - ldr r3, ._331 + ldr r3, ._331 @ gUnknown_Debug_083C11CC mov r0, #0x2 mov r1, #0x1 mov r2, #0x2 @@ -4021,8 +4021,8 @@ debug_sub_808D600: mov r2, #0x1 mov r3, #0x2 bl InitMenu - ldr r1, ._331 + 4 - ldr r0, ._331 + 8 + ldr r1, ._331 + 4 @ gMenuCallback + ldr r0, ._331 + 8 @ debug_sub_808D650 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4054,8 +4054,8 @@ debug_sub_808D650: neg r0, r0 cmp r1, r0 beq ._335 @cond_branch - ldr r2, ._337 - ldr r0, ._337 + 4 + ldr r2, ._337 @ gMenuCallback + ldr r0, ._337 + 4 @ gUnknown_Debug_083C11CC lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -4087,7 +4087,7 @@ debug_sub_808D694: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._339 + ldr r3, ._339 @ gUnknown_Debug_083C1212 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -4101,10 +4101,10 @@ debug_sub_808D694: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r0, ._339 + 4 + ldr r0, ._339 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._339 + 8 - ldr r0, ._339 + 12 + ldr r1, ._339 + 8 @ gMenuCallback + ldr r0, ._339 + 12 @ debug_sub_808D744 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4131,7 +4131,7 @@ debug_sub_808D6EC: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._341 + ldr r3, ._341 @ gUnknown_Debug_083C1288 mov r0, #0x2 mov r1, #0x1 mov r2, #0x7 @@ -4145,11 +4145,11 @@ debug_sub_808D6EC: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._341 + 4 + ldr r1, ._341 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._341 + 8 - ldr r0, ._341 + 12 + ldr r1, ._341 + 8 @ gMenuCallback + ldr r0, ._341 + 12 @ debug_sub_808D744 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4174,7 +4174,7 @@ debug_sub_808D744: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._346 + ldr r5, ._346 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -4215,14 +4215,14 @@ debug_sub_808D790: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._351 + ldr r0, ._351 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 and r0, r0, r1 cmp r0, #0 beq ._350 @cond_branch - ldr r0, ._351 + 4 + ldr r0, ._351 + 4 @ gUnknown_Debug_083C12D2 lsl r1, r2, #0x3 add r1, r1, r2 add r1, r1, r3 @@ -4260,12 +4260,12 @@ debug_sub_808D7E0: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._355 + ldr r0, ._355 @ gUnknown_Debug_083C12D0 add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._353 @cond_branch - ldr r0, ._355 + 4 + ldr r0, ._355 + 4 @ gUnknown_Debug_083C12D2 mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -4317,7 +4317,7 @@ debug_sub_808D844: mov r2, #0x1c mov r3, #0x3 bl Menu_DrawStdWindowFrame - ldr r3, ._357 + ldr r3, ._357 @ gUnknown_Debug_083C1A78 mov r0, #0x2 mov r1, #0x1 mov r2, #0x1 @@ -4331,8 +4331,8 @@ debug_sub_808D844: mov r2, #0x1 mov r3, #0x1 bl InitMenu - ldr r1, ._357 + 4 - ldr r0, ._357 + 8 + ldr r1, ._357 + 4 @ gMenuCallback + ldr r0, ._357 + 8 @ debug_sub_808D894 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4364,8 +4364,8 @@ debug_sub_808D894: neg r0, r0 cmp r3, r0 beq ._361 @cond_branch - ldr r2, ._363 - ldr r1, ._363 + 4 + ldr r2, ._363 @ gMenuCallback + ldr r1, ._363 + 4 @ gUnknown_Debug_083C1A78 lsl r0, r3, #0x3 add r0, r0, r1 ldr r0, [r0, #0x4] @@ -4396,7 +4396,7 @@ debug_sub_808D8D8: mov r2, #0x1d mov r3, #0x5 bl Menu_DrawStdWindowFrame - ldr r3, ._365 + ldr r3, ._365 @ gUnknown_Debug_083C1A9C mov r0, #0x2 mov r1, #0x1 mov r2, #0x2 @@ -4410,10 +4410,10 @@ debug_sub_808D8D8: mov r2, #0x1 mov r3, #0x2 bl InitMenu - ldr r0, ._365 + 4 + ldr r0, ._365 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._365 + 8 - ldr r0, ._365 + 12 + ldr r1, ._365 + 8 @ gMenuCallback + ldr r0, ._365 + 12 @ debug_sub_808D930 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4439,7 +4439,7 @@ debug_sub_808D930: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._370 + ldr r5, ._370 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -4480,14 +4480,14 @@ debug_sub_808D97C: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._375 + ldr r0, ._375 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 and r0, r0, r1 cmp r0, #0 beq ._374 @cond_branch - ldr r0, ._375 + 4 + ldr r0, ._375 + 4 @ gUnknown_Debug_083C1AAE lsl r1, r2, #0x3 add r1, r1, r2 add r1, r1, r3 @@ -4525,12 +4525,12 @@ debug_sub_808D9CC: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._379 + ldr r0, ._379 @ gUnknown_Debug_083C1AAC add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._377 @cond_branch - ldr r0, ._379 + 4 + ldr r0, ._379 + 4 @ gUnknown_Debug_083C1AAE mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -4582,7 +4582,7 @@ debug_sub_808DA30: mov r2, #0x1d mov r3, #0x3 bl Menu_DrawStdWindowFrame - ldr r3, ._381 + ldr r3, ._381 @ gUnknown_Debug_083C103A mov r0, #0x2 mov r1, #0x1 mov r2, #0x1 @@ -4596,8 +4596,8 @@ debug_sub_808DA30: mov r2, #0x1 mov r3, #0x1 bl InitMenu - ldr r1, ._381 + 4 - ldr r0, ._381 + 8 + ldr r1, ._381 + 4 @ gMenuCallback + ldr r0, ._381 + 8 @ debug_sub_808DA80 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4648,7 +4648,7 @@ debug_sub_808DA80: thumb_func_start debug_sub_808DABC debug_sub_808DABC: push {lr} - ldr r0, ._386 + ldr r0, ._386 @ gSpecialVar_Result ldrh r2, [r0] mov r0, #0x18 mov r1, #0x1 @@ -4665,7 +4665,7 @@ debug_sub_808DABC: thumb_func_start debug_sub_808DAD4 debug_sub_808DAD4: push {lr} - ldr r0, ._390 + ldr r0, ._390 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 @@ -4684,9 +4684,9 @@ debug_sub_808DAD4: and r0, r0, r1 cmp r0, #0 beq ._392 @cond_branch - ldr r2, ._393 + ldr r2, ._393 @ 0xffff ._389: - ldr r1, ._393 + 4 + ldr r1, ._393 + 4 @ gSpecialVar_Result ldrh r0, [r1] add r0, r2, r0 strh r0, [r1] @@ -4711,7 +4711,7 @@ debug_sub_808DB0C: mov r2, #0x18 mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._395 + ldr r3, ._395 @ gUnknown_Debug_083C3D08 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -4725,8 +4725,8 @@ debug_sub_808DB0C: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._395 + 4 - ldr r0, ._395 + 8 + ldr r1, ._395 + 4 @ gMenuCallback + ldr r0, ._395 + 8 @ debug_sub_808DB5C str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4758,8 +4758,8 @@ debug_sub_808DB5C: neg r0, r0 cmp r1, r0 beq ._399 @cond_branch - ldr r2, ._401 - ldr r0, ._401 + 4 + ldr r2, ._401 @ gMenuCallback + ldr r0, ._401 + 4 @ gUnknown_Debug_083C3D08 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -4791,7 +4791,7 @@ debug_sub_808DBA0: mov r2, #0x1d mov r3, #0x11 bl Menu_DrawStdWindowFrame - ldr r3, ._403 + ldr r3, ._403 @ gUnknown_Debug_083C432C mov r0, #0x2 mov r1, #0x1 mov r2, #0x8 @@ -4805,10 +4805,10 @@ debug_sub_808DBA0: mov r2, #0x1 mov r3, #0x8 bl InitMenu - ldr r0, ._403 + 4 + ldr r0, ._403 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._403 + 8 - ldr r0, ._403 + 12 + ldr r1, ._403 + 8 @ gMenuCallback + ldr r0, ._403 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4835,7 +4835,7 @@ debug_sub_808DBF8: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._405 + ldr r3, ._405 @ gUnknown_Debug_083C436C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -4849,11 +4849,11 @@ debug_sub_808DBF8: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._405 + 4 + ldr r1, ._405 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._405 + 8 - ldr r0, ._405 + 12 + ldr r1, ._405 + 8 @ gMenuCallback + ldr r0, ._405 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4879,7 +4879,7 @@ debug_sub_808DC50: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._407 + ldr r3, ._407 @ gUnknown_Debug_083C43B4 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -4893,11 +4893,11 @@ debug_sub_808DC50: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._407 + 4 + ldr r1, ._407 + 4 @ gDebug_0300070F mov r0, #0x2 strb r0, [r1] - ldr r1, ._407 + 8 - ldr r0, ._407 + 12 + ldr r1, ._407 + 8 @ gMenuCallback + ldr r0, ._407 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4923,7 +4923,7 @@ debug_sub_808DCA8: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._409 + ldr r3, ._409 @ gUnknown_Debug_083C43FC mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -4937,11 +4937,11 @@ debug_sub_808DCA8: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._409 + 4 + ldr r1, ._409 + 4 @ gDebug_0300070F mov r0, #0x3 strb r0, [r1] - ldr r1, ._409 + 8 - ldr r0, ._409 + 12 + ldr r1, ._409 + 8 @ gMenuCallback + ldr r0, ._409 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -4967,7 +4967,7 @@ debug_sub_808DD00: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._411 + ldr r3, ._411 @ gUnknown_Debug_083C4444 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -4981,11 +4981,11 @@ debug_sub_808DD00: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._411 + 4 + ldr r1, ._411 + 4 @ gDebug_0300070F mov r0, #0x4 strb r0, [r1] - ldr r1, ._411 + 8 - ldr r0, ._411 + 12 + ldr r1, ._411 + 8 @ gMenuCallback + ldr r0, ._411 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5011,7 +5011,7 @@ debug_sub_808DD58: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._413 + ldr r3, ._413 @ gUnknown_Debug_083C448C mov r0, #0x2 mov r1, #0x1 mov r2, #0x7 @@ -5025,11 +5025,11 @@ debug_sub_808DD58: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._413 + 4 + ldr r1, ._413 + 4 @ gDebug_0300070F mov r0, #0x5 strb r0, [r1] - ldr r1, ._413 + 8 - ldr r0, ._413 + 12 + ldr r1, ._413 + 8 @ gMenuCallback + ldr r0, ._413 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5055,7 +5055,7 @@ debug_sub_808DDB0: mov r2, #0x1d mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r3, ._415 + ldr r3, ._415 @ gUnknown_Debug_83C44C4 mov r0, #0x2 mov r1, #0x1 mov r2, #0x6 @@ -5069,11 +5069,11 @@ debug_sub_808DDB0: mov r2, #0x1 mov r3, #0x6 bl InitMenu - ldr r1, ._415 + 4 + ldr r1, ._415 + 4 @ gDebug_0300070F mov r0, #0x6 strb r0, [r1] - ldr r1, ._415 + 8 - ldr r0, ._415 + 12 + ldr r1, ._415 + 8 @ gMenuCallback + ldr r0, ._415 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5099,7 +5099,7 @@ debug_sub_808DE08: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._417 + ldr r3, ._417 @ gUnknown_Debug_83C44EC mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -5113,11 +5113,11 @@ debug_sub_808DE08: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._417 + 4 + ldr r1, ._417 + 4 @ gDebug_0300070F mov r0, #0x7 strb r0, [r1] - ldr r1, ._417 + 8 - ldr r0, ._417 + 12 + ldr r1, ._417 + 8 @ gMenuCallback + ldr r0, ._417 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5143,7 +5143,7 @@ debug_sub_808DE60: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._419 + ldr r3, ._419 @ gUnknown_Debug_083C4534 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -5157,11 +5157,11 @@ debug_sub_808DE60: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._419 + 4 + ldr r1, ._419 + 4 @ gDebug_0300070F mov r0, #0x8 strb r0, [r1] - ldr r1, ._419 + 8 - ldr r0, ._419 + 12 + ldr r1, ._419 + 8 @ gMenuCallback + ldr r0, ._419 + 12 @ debug_sub_808DEB8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5186,7 +5186,7 @@ debug_sub_808DEB8: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._424 + ldr r5, ._424 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -5228,12 +5228,12 @@ debug_sub_808DF04: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._428 + ldr r0, ._428 @ gUnknown_Debug_083C457C add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._426 @cond_branch - ldr r0, ._428 + 4 + ldr r0, ._428 + 4 @ gUnknown_Debug_083C4586 mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -5280,7 +5280,7 @@ debug_sub_808DF64: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._432 + ldr r0, ._432 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 @@ -5299,9 +5299,9 @@ debug_sub_808DF64: and r0, r0, r1 cmp r0, #0 beq ._434 @cond_branch - ldr r5, ._435 + ldr r5, ._435 @ 0xffff ._431: - ldr r1, ._435 + 4 + ldr r1, ._435 + 4 @ gUnknown_Debug_083C4586 lsl r0, r2, #0x3 add r0, r0, r2 add r0, r0, r3 @@ -5338,7 +5338,7 @@ debug_sub_808DFC0: mov r2, #0x18 mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r3, ._437 + ldr r3, ._437 @ gUnknown_Debug_083C377C mov r0, #0x2 mov r1, #0x1 mov r2, #0x6 @@ -5352,8 +5352,8 @@ debug_sub_808DFC0: mov r2, #0x1 mov r3, #0x6 bl InitMenu - ldr r1, ._437 + 4 - ldr r0, ._437 + 8 + ldr r1, ._437 + 4 @ gMenuCallback + ldr r0, ._437 + 8 @ debug_sub_808E010 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5385,8 +5385,8 @@ debug_sub_808E010: neg r0, r0 cmp r1, r0 beq ._441 @cond_branch - ldr r2, ._443 - ldr r0, ._443 + 4 + ldr r2, ._443 @ gMenuCallback + ldr r0, ._443 + 4 @ gUnknown_Debug_083C377C lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -5418,7 +5418,7 @@ debug_sub_808E054: mov r2, #0x1d mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r3, ._445 + ldr r3, ._445 @ gUnknown_Debug_083C3AA0 mov r0, #0x2 mov r1, #0x1 mov r2, #0x6 @@ -5432,10 +5432,10 @@ debug_sub_808E054: mov r2, #0x1 mov r3, #0x6 bl InitMenu - ldr r0, ._445 + 4 + ldr r0, ._445 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._445 + 8 - ldr r0, ._445 + 12 + ldr r1, ._445 + 8 @ gMenuCallback + ldr r0, ._445 + 12 @ debug_sub_808E264 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5462,7 +5462,7 @@ debug_sub_808E0AC: mov r2, #0x1d mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r3, ._447 + ldr r3, ._447 @ gUnknown_Debug_83C3AE0 mov r0, #0x2 mov r1, #0x1 mov r2, #0x5 @@ -5476,11 +5476,11 @@ debug_sub_808E0AC: mov r2, #0x1 mov r3, #0x5 bl InitMenu - ldr r1, ._447 + 4 + ldr r1, ._447 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._447 + 8 - ldr r0, ._447 + 12 + ldr r1, ._447 + 8 @ gMenuCallback + ldr r0, ._447 + 12 @ debug_sub_808E264 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5506,7 +5506,7 @@ debug_sub_808E104: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._449 + ldr r3, ._449 @ gUnknown_Debug_83C3B28 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -5520,11 +5520,11 @@ debug_sub_808E104: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._449 + 4 + ldr r1, ._449 + 4 @ gDebug_0300070F mov r0, #0x2 strb r0, [r1] - ldr r1, ._449 + 8 - ldr r0, ._449 + 12 + ldr r1, ._449 + 8 @ gMenuCallback + ldr r0, ._449 + 12 @ debug_sub_808E264 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5550,7 +5550,7 @@ debug_sub_808E15C: mov r2, #0x1d mov r3, #0x5 bl Menu_DrawStdWindowFrame - ldr r3, ._451 + ldr r3, ._451 @ gUnknown_Debug_83C3B70 mov r0, #0x2 mov r1, #0x1 mov r2, #0x2 @@ -5564,11 +5564,11 @@ debug_sub_808E15C: mov r2, #0x1 mov r3, #0x2 bl InitMenu - ldr r1, ._451 + 4 + ldr r1, ._451 + 4 @ gDebug_0300070F mov r0, #0x3 strb r0, [r1] - ldr r1, ._451 + 8 - ldr r0, ._451 + 12 + ldr r1, ._451 + 8 @ gMenuCallback + ldr r0, ._451 + 12 @ debug_sub_808E264 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5594,7 +5594,7 @@ debug_sub_808E1B4: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._453 + ldr r3, ._453 @ gUnknown_Debug_83C3BB8 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -5608,11 +5608,11 @@ debug_sub_808E1B4: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._453 + 4 + ldr r1, ._453 + 4 @ gDebug_0300070F mov r0, #0x4 strb r0, [r1] - ldr r1, ._453 + 8 - ldr r0, ._453 + 12 + ldr r1, ._453 + 8 @ gMenuCallback + ldr r0, ._453 + 12 @ debug_sub_808E264 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5638,7 +5638,7 @@ debug_sub_808E20C: mov r2, #0x1d mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r3, ._455 + ldr r3, ._455 @ gUnknown_Debug_83C3C00 mov r0, #0x2 mov r1, #0x1 mov r2, #0x6 @@ -5652,11 +5652,11 @@ debug_sub_808E20C: mov r2, #0x1 mov r3, #0x6 bl InitMenu - ldr r1, ._455 + 4 + ldr r1, ._455 + 4 @ gDebug_0300070F mov r0, #0x5 strb r0, [r1] - ldr r1, ._455 + 8 - ldr r0, ._455 + 12 + ldr r1, ._455 + 8 @ gMenuCallback + ldr r0, ._455 + 12 @ debug_sub_808E264 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5681,7 +5681,7 @@ debug_sub_808E264: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._460 + ldr r5, ._460 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -5723,12 +5723,12 @@ debug_sub_808E2B0: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._464 + ldr r0, ._464 @ gUnknown_Debug_083C3C48 add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._462 @cond_branch - ldr r0, ._464 + 4 + ldr r0, ._464 + 4 @ gUnknown_Debug_83C3C4E mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -5775,7 +5775,7 @@ debug_sub_808E310: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._468 + ldr r0, ._468 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 @@ -5794,9 +5794,9 @@ debug_sub_808E310: and r0, r0, r1 cmp r0, #0 beq ._470 @cond_branch - ldr r5, ._471 + ldr r5, ._471 @ 0xffff ._467: - ldr r1, ._471 + 4 + ldr r1, ._471 + 4 @ gUnknown_Debug_83C3C4E lsl r0, r2, #0x3 add r0, r0, r2 add r0, r0, r3 @@ -5833,7 +5833,7 @@ debug_sub_808E36C: mov r2, #0x18 mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r3, ._473 + ldr r3, ._473 @ gUnknown_Debug_083C32AC mov r0, #0x2 mov r1, #0x1 mov r2, #0x5 @@ -5847,8 +5847,8 @@ debug_sub_808E36C: mov r2, #0x1 mov r3, #0x5 bl InitMenu - ldr r1, ._473 + 4 - ldr r0, ._473 + 8 + ldr r1, ._473 + 4 @ gMenuCallback + ldr r0, ._473 + 8 @ debug_sub_808E3BC str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5880,8 +5880,8 @@ debug_sub_808E3BC: neg r0, r0 cmp r1, r0 beq ._477 @cond_branch - ldr r2, ._479 - ldr r0, ._479 + 4 + ldr r2, ._479 @ gMenuCallback + ldr r0, ._479 + 4 @ gUnknown_Debug_083C32AC lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -5913,7 +5913,7 @@ debug_sub_808E400: mov r2, #0x1d mov r3, #0x7 bl Menu_DrawStdWindowFrame - ldr r3, ._481 + ldr r3, ._481 @ gUnknown_Debug_083C347C mov r0, #0x2 mov r1, #0x1 mov r2, #0x3 @@ -5927,10 +5927,10 @@ debug_sub_808E400: mov r2, #0x1 mov r3, #0x3 bl InitMenu - ldr r0, ._481 + 4 + ldr r0, ._481 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._481 + 8 - ldr r0, ._481 + 12 + ldr r1, ._481 + 8 @ gMenuCallback + ldr r0, ._481 + 12 @ debug_sub_808E5B8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -5957,7 +5957,7 @@ debug_sub_808E458: mov r2, #0x1d mov r3, #0x5 bl Menu_DrawStdWindowFrame - ldr r3, ._483 + ldr r3, ._483 @ gUnknown_Debug_083C3494 mov r0, #0x2 mov r1, #0x1 mov r2, #0x2 @@ -5971,11 +5971,11 @@ debug_sub_808E458: mov r2, #0x1 mov r3, #0x2 bl InitMenu - ldr r1, ._483 + 4 + ldr r1, ._483 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._483 + 8 - ldr r0, ._483 + 12 + ldr r1, ._483 + 8 @ gMenuCallback + ldr r0, ._483 + 12 @ debug_sub_808E5B8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6001,7 +6001,7 @@ debug_sub_808E4B0: mov r2, #0x1d mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r3, ._485 + ldr r3, ._485 @ gUnknown_Debug_083C34A4 mov r0, #0x2 mov r1, #0x1 mov r2, #0x6 @@ -6015,11 +6015,11 @@ debug_sub_808E4B0: mov r2, #0x1 mov r3, #0x6 bl InitMenu - ldr r1, ._485 + 4 + ldr r1, ._485 + 4 @ gDebug_0300070F mov r0, #0x2 strb r0, [r1] - ldr r1, ._485 + 8 - ldr r0, ._485 + 12 + ldr r1, ._485 + 8 @ gMenuCallback + ldr r0, ._485 + 12 @ debug_sub_808E5B8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6045,7 +6045,7 @@ debug_sub_808E508: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._487 + ldr r3, ._487 @ gUnknown_Debug_083C34D4 mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -6059,11 +6059,11 @@ debug_sub_808E508: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r1, ._487 + 4 + ldr r1, ._487 + 4 @ gDebug_0300070F mov r0, #0x3 strb r0, [r1] - ldr r1, ._487 + 8 - ldr r0, ._487 + 12 + ldr r1, ._487 + 8 @ gMenuCallback + ldr r0, ._487 + 12 @ debug_sub_808E5B8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6089,7 +6089,7 @@ debug_sub_808E560: mov r2, #0x1d mov r3, #0xb bl Menu_DrawStdWindowFrame - ldr r3, ._489 + ldr r3, ._489 @ gUnknown_Debug_083C351C mov r0, #0x2 mov r1, #0x1 mov r2, #0x5 @@ -6103,11 +6103,11 @@ debug_sub_808E560: mov r2, #0x1 mov r3, #0x5 bl InitMenu - ldr r1, ._489 + 4 + ldr r1, ._489 + 4 @ gDebug_0300070F mov r0, #0x4 strb r0, [r1] - ldr r1, ._489 + 8 - ldr r0, ._489 + 12 + ldr r1, ._489 + 8 @ gMenuCallback + ldr r0, ._489 + 12 @ debug_sub_808E5B8 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6132,7 +6132,7 @@ debug_sub_808E5B8: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._494 + ldr r5, ._494 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -6173,7 +6173,7 @@ debug_sub_808E604: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._498 + ldr r0, ._498 @ gMain ldrh r1, [r0, #0x30] mov r0, #0x80 lsl r0, r0, #0x1 @@ -6192,9 +6192,9 @@ debug_sub_808E604: and r0, r0, r1 cmp r0, #0 beq ._500 @cond_branch - ldr r5, ._501 + ldr r5, ._501 @ 0xffff ._497: - ldr r1, ._501 + 4 + ldr r1, ._501 + 4 @ gUnknown_Debug_083C354A lsl r0, r2, #0x3 add r0, r0, r2 add r0, r0, r3 @@ -6229,12 +6229,12 @@ debug_sub_808E660: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._505 + ldr r0, ._505 @ gUnknown_Debug_083C3544 add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._503 @cond_branch - ldr r0, ._505 + 4 + ldr r0, ._505 + 4 @ gUnknown_Debug_083C354A mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -6284,7 +6284,7 @@ debug_sub_808E6C0: mov r2, #0x18 mov r3, #0x5 bl Menu_DrawStdWindowFrame - ldr r3, ._507 + ldr r3, ._507 @ gUnknown_Debug_083C4644 mov r0, #0x2 mov r1, #0x1 mov r2, #0x2 @@ -6298,8 +6298,8 @@ debug_sub_808E6C0: mov r2, #0x1 mov r3, #0x2 bl InitMenu - ldr r1, ._507 + 4 - ldr r0, ._507 + 8 + ldr r1, ._507 + 4 @ gMenuCallback + ldr r0, ._507 + 8 @ debug_sub_808E710 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6331,8 +6331,8 @@ debug_sub_808E710: neg r0, r0 cmp r1, r0 beq ._511 @cond_branch - ldr r2, ._513 - ldr r0, ._513 + 4 + ldr r2, ._513 @ gMenuCallback + ldr r0, ._513 + 4 @ gUnknown_Debug_083C4644 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -6364,7 +6364,7 @@ debug_sub_808E754: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._515 + ldr r3, ._515 @ gUnknown_Debug_083C470C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -6378,10 +6378,10 @@ debug_sub_808E754: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r0, ._515 + 4 + ldr r0, ._515 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._515 + 8 - ldr r0, ._515 + 12 + ldr r1, ._515 + 8 @ gMenuCallback + ldr r0, ._515 + 12 @ debug_sub_808E804 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6408,7 +6408,7 @@ debug_sub_808E7AC: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._517 + ldr r3, ._517 @ gUnknown_Debug_083C4754C mov r0, #0x2 mov r1, #0x1 mov r2, #0x7 @@ -6422,11 +6422,11 @@ debug_sub_808E7AC: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._517 + 4 + ldr r1, ._517 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._517 + 8 - ldr r0, ._517 + 12 + ldr r1, ._517 + 8 @ gMenuCallback + ldr r0, ._517 + 12 @ debug_sub_808E804 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6451,7 +6451,7 @@ debug_sub_808E804: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._522 + ldr r5, ._522 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -6492,7 +6492,7 @@ debug_sub_808E850: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._526 + ldr r0, ._526 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 @@ -6511,9 +6511,9 @@ debug_sub_808E850: and r0, r0, r1 cmp r0, #0 beq ._528 @cond_branch - ldr r5, ._529 + ldr r5, ._529 @ 0xffff ._525: - ldr r1, ._529 + 4 + ldr r1, ._529 + 4 @ gUnknown_Debug_083C478E lsl r0, r2, #0x3 add r0, r0, r2 add r0, r0, r3 @@ -6548,12 +6548,12 @@ debug_sub_808E8AC: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._533 + ldr r0, ._533 @ gUnknown_Debug_083C478C add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._531 @cond_branch - ldr r0, ._533 + 4 + ldr r0, ._533 + 4 @ gUnknown_Debug_083C478E mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -6603,7 +6603,7 @@ debug_sub_808E90C: mov r2, #0x18 mov r3, #0x5 bl Menu_DrawStdWindowFrame - ldr r3, ._535 + ldr r3, ._535 @ gUnknown_Debug_083C35C4 mov r0, #0x2 mov r1, #0x1 mov r2, #0x2 @@ -6617,8 +6617,8 @@ debug_sub_808E90C: mov r2, #0x1 mov r3, #0x2 bl InitMenu - ldr r1, ._535 + 4 - ldr r0, ._535 + 8 + ldr r1, ._535 + 4 @ gMenuCallback + ldr r0, ._535 + 8 @ debug_sub_808E95C str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6650,8 +6650,8 @@ debug_sub_808E95C: neg r0, r0 cmp r1, r0 beq ._539 @cond_branch - ldr r2, ._541 - ldr r0, ._541 + 4 + ldr r2, ._541 @ gMenuCallback + ldr r0, ._541 + 4 @ gUnknown_Debug_083C35C4 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -6683,7 +6683,7 @@ debug_sub_808E9A0: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r3, ._543 + ldr r3, ._543 @ gUnknown_Debug_083C369C mov r0, #0x2 mov r1, #0x1 mov r2, #0x9 @@ -6697,10 +6697,10 @@ debug_sub_808E9A0: mov r2, #0x1 mov r3, #0x9 bl InitMenu - ldr r0, ._543 + 4 + ldr r0, ._543 + 4 @ gDebug_0300070F strb r4, [r0] - ldr r1, ._543 + 8 - ldr r0, ._543 + 12 + ldr r1, ._543 + 8 @ gMenuCallback + ldr r0, ._543 + 12 @ debug_sub_808EA50 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6727,7 +6727,7 @@ debug_sub_808E9F8: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r3, ._545 + ldr r3, ._545 @ gUnknown_Debug_083C36E4 mov r0, #0x2 mov r1, #0x1 mov r2, #0x7 @@ -6741,11 +6741,11 @@ debug_sub_808E9F8: mov r2, #0x1 mov r3, #0x7 bl InitMenu - ldr r1, ._545 + 4 + ldr r1, ._545 + 4 @ gDebug_0300070F mov r0, #0x1 strb r0, [r1] - ldr r1, ._545 + 8 - ldr r0, ._545 + 12 + ldr r1, ._545 + 8 @ gMenuCallback + ldr r0, ._545 + 12 @ debug_sub_808EA50 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6770,7 +6770,7 @@ debug_sub_808EA50: lsr r4, r4, #0x18 bl Menu_GetCursorPos add r1, r0, #0 - ldr r5, ._550 + ldr r5, ._550 @ gDebug_0300070F ldrb r0, [r5] lsl r1, r1, #0x18 lsr r1, r1, #0x18 @@ -6812,12 +6812,12 @@ debug_sub_808EA9C: lsl r0, r0, #0x18 lsr r1, r0, #0x18 mov r5, #0x0 - ldr r0, ._554 + ldr r0, ._554 @ gUnknown_Debug_083C371C add r0, r1, r0 ldrb r2, [r0] cmp r5, r2 bcs ._552 @cond_branch - ldr r0, ._554 + 4 + ldr r0, ._554 + 4 @ gUnknown_Debug_083C371E mov r8, r0 lsl r0, r1, #0x3 add r0, r0, r1 @@ -6864,7 +6864,7 @@ debug_sub_808EAFC: lsr r2, r0, #0x18 lsl r1, r1, #0x18 lsr r3, r1, #0x18 - ldr r0, ._558 + ldr r0, ._558 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x80 lsl r0, r0, #0x1 @@ -6883,9 +6883,9 @@ debug_sub_808EAFC: and r0, r0, r1 cmp r0, #0 beq ._560 @cond_branch - ldr r5, ._561 + ldr r5, ._561 @ 0xffff ._557: - ldr r1, ._561 + 4 + ldr r1, ._561 + 4 @ gUnknown_Debug_083C371E lsl r0, r2, #0x3 add r0, r0, r2 add r0, r0, r3 @@ -6922,11 +6922,11 @@ debug_sub_808EB58: mov r2, #0xc mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r0, ._563 + ldr r0, ._563 @ gUnknown_Debug_083C47B2 mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r3, ._563 + 4 + ldr r3, ._563 + 4 @ gUnknown_Debug_083C47F0 mov r0, #0x2 mov r1, #0x3 mov r2, #0x8 @@ -6940,8 +6940,8 @@ debug_sub_808EB58: mov r2, #0x3 mov r3, #0x8 bl InitMenu - ldr r1, ._563 + 8 - ldr r0, ._563 + 12 + ldr r1, ._563 + 8 @ gMenuCallback + ldr r0, ._563 + 12 @ debug_sub_808EC10 str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -6967,11 +6967,11 @@ debug_sub_808EBB4: mov r2, #0xd mov r3, #0xd bl Menu_DrawStdWindowFrame - ldr r0, ._565 + ldr r0, ._565 @ gUnknown_Debug_083C4830 mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r3, ._565 + 4 + ldr r3, ._565 + 4 @ gUnknown_Debug_083C4888 mov r0, #0x2 mov r1, #0x3 mov r2, #0x5 @@ -6985,8 +6985,8 @@ debug_sub_808EBB4: mov r2, #0x3 mov r3, #0x5 bl InitMenu - ldr r1, ._565 + 8 - ldr r0, ._565 + 12 + ldr r1, ._565 + 8 @ gMenuCallback + ldr r0, ._565 + 12 @ debug_sub_808EC5C str r0, [r1] mov r0, #0x0 add sp, sp, #0x8 @@ -7022,10 +7022,10 @@ debug_sub_808EC10: neg r0, r0 cmp r4, r0 beq ._568 @cond_branch - ldr r1, ._570 + ldr r1, ._570 @ gSaveBlock1 lsl r0, r2, #0x18 asr r0, r0, #0x18 - ldr r2, ._570 + 4 + ldr r2, ._570 + 4 @ 0x13c8 add r1, r1, r2 strh r0, [r1] bl CloseMenu @@ -7065,7 +7065,7 @@ debug_sub_808EC5C: neg r0, r0 cmp r4, r0 beq ._573 @cond_branch - ldr r0, ._575 + ldr r0, ._575 @ 0x40a7 lsl r1, r1, #0x18 asr r1, r1, #0x8 lsr r1, r1, #0x10 @@ -7097,8 +7097,8 @@ debug_sub_808ECA4: mov r2, #0x0 mov r3, #0x10 bl BeginNormalPaletteFade - ldr r1, ._577 - ldr r0, ._577 + 4 + ldr r1, ._577 @ gMenuCallback + ldr r0, ._577 + 4 @ debug_sub_808ECD0 str r0, [r1] mov r0, #0x0 add sp, sp, #0x4 @@ -7125,10 +7125,10 @@ debug_sub_808ECD0: bl CloseMenu mov r0, #0x2 bl debug_sub_808F168 - ldr r0, ._581 + ldr r0, ._581 @ CB2_ContestPainting bl SetMainCallback2 - ldr r1, ._581 + 4 - ldr r0, ._581 + 8 + ldr r1, ._581 + 4 @ gMain + ldr r0, ._581 + 8 @ debug_sub_808B868 str r0, [r1, #0x8] mov r0, #0x1 ._580: @@ -7153,13 +7153,13 @@ TomomichiDebugMenu_Config: thumb_func_start debug_sub_808ED0C debug_sub_808ED0C: push {lr} - ldr r2, ._590 + ldr r2, ._590 @ gMain ldrh r1, [r2, #0x30] mov r0, #0x20 and r0, r0, r1 cmp r0, #0 beq ._584 @cond_branch - ldr r1, ._590 + 4 + ldr r1, ._590 + 4 @ gDebug_03000700 ldrh r0, [r1] cmp r0, #0x1 beq ._584 @cond_branch @@ -7171,9 +7171,9 @@ debug_sub_808ED0C: and r0, r0, r1 cmp r0, #0 beq ._586 @cond_branch - ldr r3, ._590 + 4 + ldr r3, ._590 + 4 @ gDebug_03000700 ldrh r1, [r3] - ldr r0, ._590 + 8 + ldr r0, ._590 + 8 @ 0x19b cmp r1, r0 beq ._586 @cond_branch add r0, r1, #1 @@ -7185,7 +7185,7 @@ debug_sub_808ED0C: and r0, r0, r1 cmp r0, #0 beq ._587 @cond_branch - ldr r1, ._590 + 4 + ldr r1, ._590 + 4 @ gDebug_03000700 ldrh r0, [r1] cmp r0, #0xa bls ._588 @cond_branch @@ -7208,9 +7208,9 @@ debug_sub_808ED0C: and r0, r0, r1 cmp r0, #0 beq ._592 @cond_branch - ldr r2, ._595 + ldr r2, ._595 @ gDebug_03000700 ldrh r1, [r2] - ldr r0, ._595 + 4 + ldr r0, ._595 + 4 @ 0x191 cmp r1, r0 bhi ._593 @cond_branch add r0, r1, #0 @@ -7222,7 +7222,7 @@ debug_sub_808ED0C: .word gDebug_03000700 .word 0x191 ._593: - ldr r1, ._597 + ldr r1, ._597 @ 0x19b add r0, r1, #0 ._594: strh r0, [r2] @@ -7239,13 +7239,13 @@ debug_sub_808ED0C: thumb_func_start debug_sub_808ED9C debug_sub_808ED9C: push {lr} - ldr r2, ._606 + ldr r2, ._606 @ gMain ldrh r1, [r2, #0x30] mov r0, #0x20 and r0, r0, r1 cmp r0, #0 beq ._600 @cond_branch - ldr r1, ._606 + 4 + ldr r1, ._606 + 4 @ gDebug_03000708 ldr r0, [r1] cmp r0, #0 beq ._600 @cond_branch @@ -7257,7 +7257,7 @@ debug_sub_808ED9C: and r0, r0, r1 cmp r0, #0 beq ._602 @cond_branch - ldr r3, ._606 + 4 + ldr r3, ._606 + 4 @ gDebug_03000708 ldr r1, [r3] mov r0, #0x1 neg r0, r0 @@ -7272,7 +7272,7 @@ debug_sub_808ED9C: and r0, r0, r1 cmp r0, #0 beq ._603 @cond_branch - ldr r1, ._606 + 4 + ldr r1, ._606 + 4 @ gDebug_03000708 ldr r0, [r1] cmp r0, #0xf bls ._604 @cond_branch @@ -7294,7 +7294,7 @@ debug_sub_808ED9C: and r0, r0, r1 cmp r0, #0 beq ._608 @cond_branch - ldr r3, ._611 + ldr r3, ._611 @ gDebug_03000708 ldr r1, [r3] mov r0, #0x11 neg r0, r0 @@ -7320,7 +7320,7 @@ debug_sub_808ED9C: and r0, r0, r2 cmp r0, r1 bne ._613 @cond_branch - ldr r1, ._614 + ldr r1, ._614 @ gDebug_03000708 mov r0, #0x1 neg r0, r0 str r0, [r1] @@ -7337,13 +7337,13 @@ debug_sub_808ED9C: thumb_func_start debug_sub_808EE3C debug_sub_808EE3C: push {lr} - ldr r2, ._622 + ldr r2, ._622 @ gMain ldrh r1, [r2, #0x30] mov r0, #0x20 and r0, r0, r1 cmp r0, #0 beq ._617 @cond_branch - ldr r1, ._622 + 4 + ldr r1, ._622 + 4 @ gDebug_0300070C ldrb r0, [r1] cmp r0, #0x1 beq ._617 @cond_branch @@ -7355,7 +7355,7 @@ debug_sub_808EE3C: and r0, r0, r1 cmp r0, #0 beq ._619 @cond_branch - ldr r1, ._622 + 4 + ldr r1, ._622 + 4 @ gDebug_0300070C ldrb r0, [r1] cmp r0, #0x5 beq ._619 @cond_branch @@ -7368,7 +7368,7 @@ debug_sub_808EE3C: and r0, r0, r1 cmp r0, #0 beq ._620 @cond_branch - ldr r1, ._622 + 4 + ldr r1, ._622 + 4 @ gDebug_0300070C mov r0, #0x1 strb r0, [r1] ._620: @@ -7378,7 +7378,7 @@ debug_sub_808EE3C: and r0, r0, r1 cmp r0, #0 beq ._621 @cond_branch - ldr r1, ._622 + 4 + ldr r1, ._622 + 4 @ gDebug_0300070C mov r0, #0x5 strb r0, [r1] ._621: @@ -7395,13 +7395,13 @@ debug_sub_808EE3C: thumb_func_start debug_sub_808EE9C debug_sub_808EE9C: push {lr} - ldr r2, ._631 + ldr r2, ._631 @ gMain ldrh r1, [r2, #0x30] mov r0, #0x20 and r0, r0, r1 cmp r0, #0 beq ._625 @cond_branch - ldr r1, ._631 + 4 + ldr r1, ._631 + 4 @ gDebug_0300070D ldrb r0, [r1] cmp r0, #0x1 beq ._625 @cond_branch @@ -7413,7 +7413,7 @@ debug_sub_808EE9C: and r0, r0, r1 cmp r0, #0 beq ._627 @cond_branch - ldr r1, ._631 + 4 + ldr r1, ._631 + 4 @ gDebug_0300070D ldrb r0, [r1] cmp r0, #0xf beq ._627 @cond_branch @@ -7426,7 +7426,7 @@ debug_sub_808EE9C: and r0, r0, r1 cmp r0, #0 beq ._628 @cond_branch - ldr r1, ._631 + 4 + ldr r1, ._631 + 4 @ gDebug_0300070D ldrb r0, [r1] cmp r0, #0xa bls ._629 @cond_branch @@ -7448,7 +7448,7 @@ debug_sub_808EE9C: and r0, r0, r1 cmp r0, #0 beq ._633 @cond_branch - ldr r1, ._636 + ldr r1, ._636 @ gDebug_0300070D ldrb r0, [r1] cmp r0, #0x5 bhi ._634 @cond_branch @@ -7471,13 +7471,13 @@ debug_sub_808EE9C: thumb_func_start debug_sub_808EF14 debug_sub_808EF14: push {lr} - ldr r2, ._645 + ldr r2, ._645 @ gMain ldrh r1, [r2, #0x30] mov r0, #0x20 and r0, r0, r1 cmp r0, #0 beq ._639 @cond_branch - ldr r1, ._645 + 4 + ldr r1, ._645 + 4 @ gDebug_0300070E ldrb r0, [r1] cmp r0, #0x1 beq ._639 @cond_branch @@ -7489,7 +7489,7 @@ debug_sub_808EF14: and r0, r0, r1 cmp r0, #0 beq ._641 @cond_branch - ldr r1, ._645 + 4 + ldr r1, ._645 + 4 @ gDebug_0300070E ldrb r0, [r1] cmp r0, #0xf beq ._641 @cond_branch @@ -7502,7 +7502,7 @@ debug_sub_808EF14: and r0, r0, r1 cmp r0, #0 beq ._642 @cond_branch - ldr r1, ._645 + 4 + ldr r1, ._645 + 4 @ gDebug_0300070E ldrb r0, [r1] cmp r0, #0xa bls ._643 @cond_branch @@ -7524,7 +7524,7 @@ debug_sub_808EF14: and r0, r0, r1 cmp r0, #0 beq ._647 @cond_branch - ldr r1, ._650 + ldr r1, ._650 @ gDebug_0300070E ldrb r0, [r1] cmp r0, #0x5 bhi ._648 @cond_branch @@ -7556,9 +7556,9 @@ debug_sub_808EF8C: cmp r6, #0 blt ._653 @cond_branch mov r3, #0x0 - ldr r0, ._656 + ldr r0, ._656 @ gDebug_03000708 mov r8, r0 - ldr r4, ._656 + 4 + ldr r4, ._656 + 4 @ gDebug_03000710 mov r7, #0x7 mov r5, #0xf ._658: @@ -7590,7 +7590,7 @@ debug_sub_808EF8C: lsr r3, r0, #0x18 cmp r3, #0x7 bls ._658 @cond_branch - ldr r0, ._666 + ldr r0, ._666 @ gDebug_03000710 mov r1, #0xff strb r1, [r0, #0x8] mov r1, #0xc @@ -7598,9 +7598,9 @@ debug_sub_808EF8C: bl Menu_PrintText ._653: mov r3, #0x0 - ldr r7, ._666 - ldr r5, ._666 + 4 - ldr r2, ._666 + 8 + ldr r7, ._666 @ gDebug_03000710 + ldr r5, ._666 + 4 @ gDebug_03000700 + ldr r2, ._666 + 8 @ gSpeciesNames mov r8, r2 add r4, r7, #0 mov r2, #0x0 @@ -7622,7 +7622,7 @@ debug_sub_808EF8C: ldrb r0, [r0] cmp r0, #0xff beq ._661 @cond_branch - ldr r0, ._666 + ldr r0, ._666 @ gDebug_03000710 mov ip, r0 mov r5, r8 add r4, r1, #0 @@ -7666,15 +7666,15 @@ debug_sub_808EF8C: .word gDebug_03000700 .word gSpeciesNames ._664: - ldr r0, ._672 + ldr r0, ._672 @ gDebug_03000710 mov r1, #0xc mov r2, #0x1 bl Menu_PrintText ._665: - ldr r5, ._672 + ldr r5, ._672 @ gDebug_03000710 mov r0, #0xff strb r0, [r5, #0x3] - ldr r4, ._672 + 4 + ldr r4, ._672 + 4 @ gDebug_03000700 ldrh r0, [r4] mov r1, #0x64 bl __udivsi3 @@ -7715,14 +7715,14 @@ debug_sub_808EF8C: beq ._674 @cond_branch b ._679 ._670: - ldr r4, ._677 + ldr r4, ._677 @ gDebug_0300070C b ._676 ._678: .align 2, 0 ._677: .word gDebug_0300070C ._668: - ldr r4, ._680 + ldr r4, ._680 @ gDebug_0300070D ._676: ldrb r0, [r4] mov r1, #0x64 @@ -7753,7 +7753,7 @@ debug_sub_808EF8C: ._680: .word gDebug_0300070D ._674: - ldr r4, ._682 + ldr r4, ._682 @ gDebug_0300070E ldrb r0, [r4] mov r1, #0x64 bl __udivsi3 @@ -7795,14 +7795,14 @@ debug_sub_808F168: push {r4, lr} lsl r0, r0, #0x18 lsr r1, r0, #0x18 - ldr r4, ._686 - ldr r0, ._686 + 4 + ldr r4, ._686 @ 0x2015de0 + ldr r0, ._686 + 4 @ gDebug_03000700 ldrh r0, [r0] strh r0, [r4, #0x8] - ldr r0, ._686 + 8 + ldr r0, ._686 + 8 @ gDebug_03000704 ldr r0, [r0] str r0, [r4, #0x4] - ldr r0, ._686 + 12 + ldr r0, ._686 + 12 @ gDebug_03000708 ldr r0, [r0] str r0, [r4] cmp r1, #0x5 @@ -7810,14 +7810,14 @@ debug_sub_808F168: b ._707 ._684: lsl r0, r1, #0x2 - ldr r1, ._686 + 16 + ldr r1, ._686 + 16 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 ._687: .align 2, 0 ._686: - .word +0x2015de0 + .word 0x2015de0 .word gDebug_03000700 .word gDebug_03000704 .word gDebug_03000708 @@ -7830,63 +7830,63 @@ debug_sub_808F168: .word ._693 .word ._694 ._689: - ldr r0, ._696 - ldr r2, ._696 + 4 + ldr r0, ._696 @ 0x2000000 + ldr r2, ._696 + 4 @ 0x15ddf add r1, r0, r2 mov r2, #0x0 strb r2, [r1] - ldr r1, ._696 + 8 + ldr r1, ._696 + 8 @ 0x15dde add r0, r0, r1 strb r2, [r0] - ldr r0, ._696 + 12 + ldr r0, ._696 + 12 @ gDebug_0300070C ldrb r0, [r0] sub r0, r0, #0x1 strb r0, [r4, #0xa] add r0, r4, #0 add r0, r0, #0x16 - ldr r1, ._696 + 16 + ldr r1, ._696 + 16 @ gUnknown_Debug_083C48BB bl StringCopy b ._704 ._697: .align 2, 0 ._696: - .word +0x2000000 + .word 0x2000000 .word 0x15ddf .word 0x15dde .word gDebug_0300070C .word gUnknown_Debug_083C48BB ._690: - ldr r1, ._699 - ldr r0, ._699 + 4 + ldr r1, ._699 @ 0x2000000 + ldr r0, ._699 + 4 @ 0x15ddf add r2, r1, r0 mov r0, #0x0 strb r0, [r2] - ldr r2, ._699 + 8 + ldr r2, ._699 + 8 @ 0x15dde add r1, r1, r2 mov r0, #0x8 strb r0, [r1] - ldr r0, ._699 + 12 + ldr r0, ._699 + 12 @ gDebug_0300070D ldrb r0, [r0] sub r0, r0, #0x1 b ._698 ._700: .align 2, 0 ._699: - .word +0x2000000 + .word 0x2000000 .word 0x15ddf .word 0x15dde .word gDebug_0300070D ._691: - ldr r1, ._702 - ldr r0, ._702 + 4 + ldr r1, ._702 @ 0x2000000 + ldr r0, ._702 + 4 @ 0x15ddf add r2, r1, r0 mov r0, #0x1 strb r0, [r2] - ldr r2, ._702 + 8 + ldr r2, ._702 + 8 @ 0x15dde add r1, r1, r2 mov r0, #0x8 strb r0, [r1] - ldr r0, ._702 + 12 + ldr r0, ._702 + 12 @ gDebug_0300070E ldrb r0, [r0] sub r0, r0, #0x1 strb r0, [r4, #0xa] @@ -7894,17 +7894,17 @@ debug_sub_808F168: ._703: .align 2, 0 ._702: - .word +0x2000000 + .word 0x2000000 .word 0x15ddf .word 0x15dde .word gDebug_0300070E ._692: - ldr r1, ._705 - ldr r2, ._705 + 4 + ldr r1, ._705 @ 0x2000000 + ldr r2, ._705 + 4 @ 0x15ddf add r0, r1, r2 mov r2, #0x0 strb r2, [r0] - ldr r0, ._705 + 8 + ldr r0, ._705 + 8 @ 0x15dde add r1, r1, r0 mov r0, #0x8 strb r0, [r1] @@ -7913,16 +7913,16 @@ debug_sub_808F168: ._706: .align 2, 0 ._705: - .word +0x2000000 + .word 0x2000000 .word 0x15ddf .word 0x15dde ._693: - ldr r1, ._708 - ldr r0, ._708 + 4 + ldr r1, ._708 @ 0x2000000 + ldr r0, ._708 + 4 @ 0x15ddf add r2, r1, r0 mov r0, #0x0 strb r0, [r2] - ldr r2, ._708 + 8 + ldr r2, ._708 + 8 @ 0x15dde add r1, r1, r2 mov r0, #0x8 strb r0, [r1] @@ -7932,23 +7932,23 @@ debug_sub_808F168: ._704: add r0, r4, #0 add r0, r0, #0xb - ldr r1, ._708 + 12 + ldr r1, ._708 + 12 @ gUnknown_Debug_083C48B0 bl StringCopy b ._707 ._709: .align 2, 0 ._708: - .word +0x2000000 + .word 0x2000000 .word 0x15ddf .word 0x15dde .word gUnknown_Debug_083C48B0 ._694: - ldr r1, ._710 - ldr r0, ._710 + 4 + ldr r1, ._710 @ 0x2000000 + ldr r0, ._710 + 4 @ 0x15ddf add r2, r1, r0 mov r0, #0x0 strb r0, [r2] - ldr r2, ._710 + 8 + ldr r2, ._710 + 8 @ 0x15dde add r1, r1, r2 mov r0, #0x8 strb r0, [r1] @@ -7956,7 +7956,7 @@ debug_sub_808F168: strb r0, [r4, #0xa] add r0, r4, #0 add r0, r0, #0xb - ldr r1, ._710 + 12 + ldr r1, ._710 + 12 @ gUnknown_Debug_083C48B0 bl StringCopy ._707: pop {r4} @@ -7965,7 +7965,7 @@ debug_sub_808F168: ._711: .align 2, 0 ._710: - .word +0x2000000 + .word 0x2000000 .word 0x15ddf .word 0x15dde .word gUnknown_Debug_083C48B0 @@ -7982,7 +7982,7 @@ debug_sub_808F2E0: lsl r2, r2, #0x18 cmp r2, #0 bne ._712 @cond_branch - ldr r1, ._714 + ldr r1, ._714 @ gDebug_03000710 mov r0, #0xa1 b ._713 ._715: @@ -7990,7 +7990,7 @@ debug_sub_808F2E0: ._714: .word gDebug_03000710 ._712: - ldr r1, ._716 + ldr r1, ._716 @ gDebug_03000710 mov r0, #0xa2 ._713: strb r0, [r1] @@ -8028,8 +8028,8 @@ debug_sub_808F31C: mov r9, r0 lsl r4, r4, #0x10 lsr r4, r4, #0x10 - ldr r5, ._718 - ldr r6, ._718 + 4 + ldr r5, ._718 @ gDebug_03000710 + ldr r6, ._718 + 4 @ 0x2710 add r0, r4, #0 add r1, r6, #0 bl __udivsi3 diff --git a/asm/unk_debug_menu_3.s b/asm/unk_debug_menu_3.s index e1be20589..2e4bef06c 100644 --- a/asm/unk_debug_menu_3.s +++ b/asm/unk_debug_menu_3.s @@ -9,8 +9,8 @@ debug_sub_813C404: push {r4, r5, r6, lr} add r6, r0, #0 - ldr r5, ._1 - ldr r4, ._1 + 4 + ldr r5, ._1 @ gUnknown_Debug_845DDB2 + ldr r4, ._1 + 4 @ gUnknown_Debug_845DAE1 sub r5, r5, r4 add r1, r4, #0 add r2, r5, #0 @@ -34,8 +34,8 @@ debug_sub_813C404: debug_sub_813C430: push {r4, r5, r6, lr} add r6, r0, #0 - ldr r5, ._3 - ldr r4, ._3 + 4 + ldr r5, ._3 @ gUnknown_Debug_845E402 + ldr r4, ._3 + 4 @ gUnknown_Debug_845E3E0 sub r5, r5, r4 add r1, r4, #0 add r2, r5, #0 @@ -59,8 +59,8 @@ debug_sub_813C430: debug_sub_813C45C: push {r4, r5, r6, lr} add r6, r0, #0 - ldr r5, ._5 - ldr r4, ._5 + 4 + ldr r5, ._5 @ gUnknown_Debug_845E443 + ldr r4, ._5 + 4 @ gUnknown_Debug_845E422 sub r5, r5, r4 add r1, r4, #0 add r2, r5, #0 @@ -84,8 +84,8 @@ debug_sub_813C45C: debug_sub_813C488: push {r4, r5, r6, lr} add r6, r0, #0 - ldr r5, ._7 - ldr r4, ._7 + 4 + ldr r5, ._7 @ gUnknown_Debug_845E422 + ldr r4, ._7 + 4 @ gUnknown_Debug_845E402 sub r5, r5, r4 add r1, r4, #0 add r2, r5, #0 @@ -108,8 +108,8 @@ debug_sub_813C488: thumb_func_start debug_sub_813C4B4 debug_sub_813C4B4: push {r4, lr} - ldr r4, ._9 - ldr r1, ._9 + 4 + ldr r4, ._9 @ gUnknown_Debug_845E619 + ldr r1, ._9 + 4 @ gUnknown_Debug_845E606 sub r4, r4, r1 add r2, r4, #0 bl memcpy @@ -129,8 +129,8 @@ debug_sub_813C4B4: debug_sub_813C4D4: push {r4, r5, r6, lr} add r6, r0, #0 - ldr r5, ._11 - ldr r4, ._11 + 4 + ldr r5, ._11 @ gUnknown_Debug_845E712 + ldr r4, ._11 + 4 @ gUnknown_Debug_845E619 sub r5, r5, r4 add r1, r4, #0 add r2, r5, #0 @@ -154,8 +154,8 @@ debug_sub_813C4D4: debug_sub_813C500: push {r4, r5, r6, lr} add r6, r0, #0 - ldr r5, ._13 - ldr r4, ._13 + 4 + ldr r5, ._13 @ gUnknown_Debug_845E797 + ldr r4, ._13 + 4 @ gUnknown_Debug_845E712 sub r5, r5, r4 add r1, r4, #0 add r2, r5, #0 @@ -185,14 +185,14 @@ debug_sub_813C52C: lsl r5, r1, #0x10 lsr r0, r5, #0x10 mov r9, r0 - ldr r6, ._15 - ldr r4, ._15 + 4 + ldr r6, ._15 @ gUnknown_Debug_845E7BB + ldr r4, ._15 + 4 @ gUnknown_Debug_845E797 sub r6, r6, r4 mov r0, r8 add r1, r4, #0 add r2, r6, #0 bl memcpy - ldr r0, ._15 + 8 + ldr r0, ._15 + 8 @ gUnknown_Debug_845E7B5 sub r0, r0, r4 add r0, r0, r8 add r0, r0, #0x3 @@ -252,7 +252,7 @@ debug_sub_813C598: thumb_func_start debug_sub_813C5A4 debug_sub_813C5A4: push {lr} - ldr r1, ._17 + ldr r1, ._17 @ 0x121 bl debug_sub_813C52C pop {r1} bx r1 @@ -267,19 +267,19 @@ debug_sub_813C5A4: debug_sub_813C5B4: push {r4, r5, r6, r7, lr} add r4, r0, #0 - ldr r7, ._23 - ldr r0, ._23 + 4 - ldr r1, ._23 + 8 + ldr r7, ._23 @ gSaveBlock1 + ldr r0, ._23 + 4 @ gUnknown_Debug_845DDD6 + ldr r1, ._23 + 8 @ gUnknown_Debug_845DDB2 sub r0, r0, r1 add r6, r0, r4 - ldr r0, ._23 + 12 + ldr r0, ._23 + 12 @ gUnknown_Debug_845E306 sub r5, r0, r1 - ldr r0, ._23 + 16 + ldr r0, ._23 + 16 @ Str_842E23C mov r1, #0x0 mov r2, #0x0 bl GetEnigmaBerryChecksum mov r2, #0x0 - ldr r3, ._23 + 20 + ldr r3, ._23 + 20 @ 0xfff mov r1, #0x0 ._19: add r0, r4, r2 @@ -290,7 +290,7 @@ debug_sub_813C5B4: mov r2, #0x0 cmp r2, r5 bcs ._20 @cond_branch - ldr r3, ._23 + 8 + ldr r3, ._23 + 8 @ gUnknown_Debug_845DDB2 ._21: add r0, r4, r2 add r1, r2, r3 @@ -301,7 +301,7 @@ debug_sub_813C5B4: bcc ._21 @cond_branch ._20: mov r2, #0x0 - ldr r3, ._23 + 24 + ldr r3, ._23 + 24 @ 0x52f ._22: add r0, r6, r2 add r1, r7, r2 @@ -311,7 +311,7 @@ debug_sub_813C5B4: cmp r2, r3 bls ._22 @cond_branch bl ClearEnigmaBerries - ldr r1, ._23 + 8 + ldr r1, ._23 + 8 @ gUnknown_Debug_845DDB2 add r0, r4, #0 bl unref_sub_81261B4 add r0, r5, #0 @@ -353,18 +353,18 @@ debug_sub_813C638: str r0, [sp, #0x4] mov r0, #0x1 str r0, [sp, #0x8] - ldr r0, ._25 + ldr r0, ._25 @ 0x270f str r0, [sp, #0xc] mov r0, r8 add r1, r4, #0 add r2, r5, #0 mov r3, #0x20 bl CreateMon - ldr r2, ._25 + 4 + ldr r2, ._25 + 4 @ Str_842E240 mov r0, r8 mov r1, #0x7 bl SetMonData - ldr r2, ._25 + 8 + ldr r2, ._25 + 8 @ Str_842E248 mov r0, r8 mov r1, #0x2 bl SetMonData @@ -468,10 +468,10 @@ debug_sub_813C740: push {r4, r5, r6} add sp, sp, #0xffffffd0 add r6, r0, #0 - ldr r0, ._29 + ldr r0, ._29 @ gUnknown_Debug_845E443 mov r8, r0 - ldr r1, ._29 + 4 - ldr r5, ._29 + 8 + ldr r1, ._29 + 4 @ gUnknown_Debug_845E4EF + ldr r5, ._29 + 8 @ gEnemyParty sub r1, r1, r0 mov r9, r1 add r0, r6, #0 @@ -504,7 +504,7 @@ debug_sub_813C740: mov r1, #0x23 add r2, r4, #0 bl SetMonData - ldr r1, ._29 + 12 + ldr r1, ._29 + 12 @ Str_842E238 add r0, r4, #0 mov r2, #0xb bl StringCopyN @@ -518,14 +518,14 @@ debug_sub_813C740: mov r1, #0x3 add r2, r4, #0 bl SetMonData - ldr r0, ._29 + 16 + ldr r0, ._29 + 16 @ gUnknown_Debug_845E467 add r0, r6, r0 mov r1, r8 sub r0, r0, r1 add r1, r5, #0 mov r2, #0x64 bl memcpy - ldr r0, ._29 + 20 + ldr r0, ._29 + 20 @ gUnknown_Debug_845E4CB add r6, r6, r0 mov r0, r8 sub r6, r6, r0 @@ -561,9 +561,9 @@ debug_sub_813C810: push {r6} add sp, sp, #0xffffffdc add r6, r0, #0 - ldr r5, ._31 - ldr r0, ._31 + 4 - ldr r4, ._31 + 8 + ldr r5, ._31 @ gUnknown_Debug_845E443 + ldr r0, ._31 + 4 @ gUnknown_Debug_845E4EF + ldr r4, ._31 + 8 @ gEnemyParty sub r0, r0, r5 mov r8, r0 add r0, r6, #0 @@ -578,13 +578,13 @@ debug_sub_813C810: add r0, r4, #0 mov r1, sp bl debug_sub_813C6AC - ldr r0, ._31 + 12 + ldr r0, ._31 + 12 @ gUnknown_Debug_845E467 add r0, r6, r0 sub r0, r0, r5 add r1, r4, #0 mov r2, #0x64 bl memcpy - ldr r0, ._31 + 16 + ldr r0, ._31 + 16 @ gUnknown_Debug_845E4CB add r0, r6, r0 sub r0, r0, r5 mov r1, sp @@ -618,9 +618,9 @@ debug_sub_813C888: push {r6} add sp, sp, #0xffffffdc add r6, r0, #0 - ldr r5, ._33 - ldr r0, ._33 + 4 - ldr r4, ._33 + 8 + ldr r5, ._33 @ gUnknown_Debug_845E443 + ldr r0, ._33 + 4 @ gUnknown_Debug_845E4EF + ldr r4, ._33 + 8 @ gEnemyParty sub r0, r0, r5 mov r8, r0 add r0, r6, #0 @@ -637,13 +637,13 @@ debug_sub_813C888: bl debug_sub_813C6AC mov r0, #0x0 strh r0, [r4, #0x1c] - ldr r0, ._33 + 12 + ldr r0, ._33 + 12 @ gUnknown_Debug_845E467 add r0, r6, r0 sub r0, r0, r5 add r1, r4, #0 mov r2, #0x64 bl memcpy - ldr r0, ._33 + 16 + ldr r0, ._33 + 16 @ gUnknown_Debug_845E4CB add r0, r6, r0 sub r0, r0, r5 mov r1, sp @@ -673,7 +673,7 @@ debug_sub_813C888: thumb_func_start debug_sub_813C904 debug_sub_813C904: push {r4, lr} - ldr r4, ._35 + ldr r4, ._35 @ gPlayerParty add r0, r4, #0 mov r1, #0x5 mov r2, #0x32 @@ -706,20 +706,20 @@ debug_sub_813C93C: push {r4, r5, r6, lr} add sp, sp, #0xffffff44 add r4, r0, #0 - ldr r6, ._37 - ldr r5, ._37 + 4 + ldr r6, ._37 @ gUnknown_Debug_845E4EF + ldr r5, ._37 + 4 @ gUnknown_Debug_845E606 sub r5, r5, r6 add r1, r6, #0 add r2, r5, #0 bl memcpy bl SavePlayerParty bl debug_sub_813C904 - ldr r1, ._37 + 8 - ldr r2, ._37 + 12 + ldr r1, ._37 + 8 @ Str_842E253 + ldr r2, ._37 + 12 @ 0x270f mov r0, sp bl debug_sub_8075DB4 bl LoadPlayerParty - ldr r0, ._37 + 16 + ldr r0, ._37 + 16 @ gUnknown_Debug_845E506 add r4, r4, r0 sub r4, r4, r6 add r0, r4, #0 diff --git a/asm/watanabe_debug_menu.s b/asm/watanabe_debug_menu.s index 6c56dab67..7f613b7a3 100644 --- a/asm/watanabe_debug_menu.s +++ b/asm/watanabe_debug_menu.s @@ -55,10 +55,10 @@ debug_80C35DC: mov r8, r0 mov r2, sp mov r6, #0x0 - ldr r1, ._2 + ldr r1, ._2 @ 0x40000d4 mov r5, #0x80 lsl r5, r5, #0x5 - ldr r7, ._2 + 4 + ldr r7, ._2 + 4 @ 0x81000800 mov r0, #0x81 lsl r0, r0, #0x18 mov ip, r0 @@ -88,7 +88,7 @@ debug_80C35DC: lsl r3, r3, #0x3 mov r4, #0x0 str r4, [sp, #0x4] - ldr r2, ._2 + ldr r2, ._2 @ 0x40000d4 mov r1, r8 str r1, [r2] str r0, [r2, #0x4] @@ -116,13 +116,13 @@ debug_80C35DC: bl ResetSpriteData bl ResetPaletteFade bl FreeAllSpritePalettes - ldr r0, ._2 + 8 + ldr r0, ._2 + 8 @ stru_83F8828 bl LoadSpriteSheet - ldr r0, ._2 + 12 + ldr r0, ._2 + 12 @ stru_83F8838 bl LoadSpritePalette - ldr r0, ._2 + 16 + ldr r0, ._2 + 16 @ gWindowTemplate_81E6C3C bl Text_LoadWindowTemplate - ldr r0, ._2 + 20 + ldr r0, ._2 + 20 @ gWindowTemplate_81E6CE4 bl InitMenuWindow add sp, sp, #0x8 pop {r3} @@ -157,13 +157,13 @@ debug_80C36F4: thumb_func_start debug_80C370C debug_80C370C: push {lr} - ldr r0, ._6 + ldr r0, ._6 @ gPaletteFade ldrb r1, [r0, #0x7] mov r0, #0x80 and r0, r0, r1 cmp r0, #0 bne ._4 @cond_branch - ldr r0, ._6 + 4 + ldr r0, ._6 + 4 @ debug_80C36F4 bl SetMainCallback2 b ._5 ._7: @@ -188,7 +188,7 @@ debug_80C373C: lsr r0, r0, #0x18 bl DestroyTask bl ScriptContext2_Disable - ldr r0, ._8 + ldr r0, ._8 @ sub_80546F0 bl SetMainCallback2 pop {r0} bx r0 @@ -297,7 +297,7 @@ debug_80C3800: lsl r2, r2, #0x18 lsr r5, r2, #0x18 mov r3, #0x0 - ldr r2, ._18 + ldr r2, ._18 @ gSpeciesNames mov r1, #0x0 ._14: mov r7, sp @@ -371,7 +371,7 @@ debug_80C3878: sub r0, r1, #1 b ._23 ._22: - ldr r1, ._25 + ldr r1, ._25 @ 0x19b b ._28 ._26: .align 2, 0 @@ -451,7 +451,7 @@ debug_80C38E4: lsr r5, r5, #0x18 lsl r6, r6, #0x18 lsr r6, r6, #0x18 - ldr r1, ._37 + ldr r1, ._37 @ gUnknown_Debug_083F7FD4 mov r0, sp mov r2, #0x2 bl memcpy @@ -483,7 +483,7 @@ debug_80C38E4: thumb_func_start debug_80C393C debug_80C393C: push {lr} - ldr r1, ._39 + ldr r1, ._39 @ gUnknown_Debug_083F7FD6 mov r0, #0x1e bl ProgramFlashSectorAndVerify pop {r0} @@ -498,8 +498,8 @@ debug_80C393C: thumb_func_start InitWatanabeDebugMenu InitWatanabeDebugMenu: push {r4, lr} - ldr r0, ._46 - ldr r1, ._46 + 4 + ldr r0, ._46 @ gMain + ldr r1, ._46 + 4 @ 0x43c add r4, r0, r1 ldrb r0, [r4] cmp r0, #0x1 @@ -541,7 +541,7 @@ InitWatanabeDebugMenu: cmp r0, #0 bne ._51 @cond_branch bl ScriptContext2_Disable - ldr r0, ._52 + ldr r0, ._52 @ sub_80546F0 bl SetMainCallback2 ._51: pop {r4} @@ -559,19 +559,19 @@ InitSizeComparison: push {r4, lr} add sp, sp, #0xfffffffc bl debug_80C35DC - ldr r1, ._54 + ldr r1, ._54 @ gReservedSpritePaletteCount mov r0, #0x1 strb r0, [r1] - ldr r0, ._54 + 4 + ldr r0, ._54 + 4 @ gUnknown_Debug_20389EC mov r1, #0x80 lsl r1, r1, #0x1 mov r2, #0x20 bl LoadPalette - ldr r3, ._54 + 8 + ldr r3, ._54 + 8 @ 0x4000208 ldrh r2, [r3] mov r0, #0x0 strh r0, [r3] - ldr r4, ._54 + 12 + ldr r4, ._54 + 12 @ 0x4000200 ldrh r0, [r4] mov r1, #0x1 orr r0, r0, r1 @@ -584,9 +584,9 @@ InitSizeComparison: mov r2, #0x10 mov r3, #0x0 bl BeginNormalPaletteFade - ldr r0, ._54 + 16 + ldr r0, ._54 + 16 @ debug_80C3758 bl SetVBlankCallback - ldr r0, ._54 + 20 + ldr r0, ._54 + 20 @ debug_80C370C bl SetMainCallback2 mov r1, #0x80 lsl r1, r1, #0x13 @@ -594,12 +594,12 @@ InitSizeComparison: lsl r2, r2, #0x5 add r0, r2, #0 strh r0, [r1] - ldr r0, ._54 + 24 + ldr r0, ._54 + 24 @ debug_80C3A50 mov r1, #0x0 bl CreateTask lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._54 + 28 + ldr r2, ._54 + 28 @ gTasks lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x3 @@ -634,7 +634,7 @@ debug_80C3A50: add sp, sp, #0xffffffd8 lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r1, ._56 + ldr r1, ._56 @ gTasks lsl r2, r0, #0x2 add r0, r2, r0 lsl r0, r0, #0x3 @@ -649,7 +649,7 @@ debug_80C3A50: str r2, [sp, #0xc] lsr r2, r2, #0x10 mov r9, r2 - ldr r3, ._56 + 4 + ldr r3, ._56 + 4 @ gSaveBlock2 mov r8, r3 mov r0, #0x6 mov r1, #0x0 @@ -661,12 +661,12 @@ debug_80C3A50: mov r2, #0x5 mov r3, #0x9 bl Menu_DrawStdWindowFrame - ldr r5, ._56 + 8 + ldr r5, ._56 + 8 @ gUnknown_Debug_083F7FD6 add r0, r5, #0 mov r1, #0x1 mov r2, #0x1 bl Menu_PrintText - ldr r4, ._56 + 12 + ldr r4, ._56 + 12 @ gUnknown_Debug_083F7FDE add r0, r4, #0 mov r1, #0x1 mov r2, #0x5 @@ -689,19 +689,19 @@ debug_80C3A50: mov r2, #0xb mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r0, ._56 + 16 + ldr r0, ._56 + 16 @ gUnknown_Debug_083F7FE2 mov r1, #0x1 mov r2, #0xb bl Menu_PrintText - ldr r0, ._56 + 20 + ldr r0, ._56 + 20 @ gUnknown_Debug_083F7FED mov r1, #0x1 mov r2, #0xd bl Menu_PrintText - ldr r0, ._56 + 24 + ldr r0, ._56 + 24 @ gUnknown_Debug_083F7FF6 mov r1, #0x1 mov r2, #0xf bl Menu_PrintText - ldr r0, ._56 + 28 + ldr r0, ._56 + 28 @ gUnknown_Debug_083F8001 mov r1, #0x1 mov r2, #0x11 bl Menu_PrintText @@ -710,11 +710,11 @@ debug_80C3A50: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r0, ._56 + 32 + ldr r0, ._56 + 32 @ gUnknown_Debug_083F800C mov r1, #0xd mov r2, #0xb bl Menu_PrintText - ldr r0, ._56 + 36 + ldr r0, ._56 + 36 @ gUnknown_Debug_083F8019 mov r1, #0xd mov r2, #0xd bl Menu_PrintText @@ -723,11 +723,11 @@ debug_80C3A50: mov r2, #0x1d mov r3, #0x13 bl Menu_DrawStdWindowFrame - ldr r0, ._56 + 40 + ldr r0, ._56 + 40 @ gUnknown_Debug_083F8022 mov r1, #0xd mov r2, #0x11 bl Menu_PrintText - ldr r0, ._56 + 44 + ldr r0, ._56 + 44 @ gUnknown_Debug_083F8028 mov r1, #0x18 mov r2, #0x11 bl Menu_PrintText @@ -751,7 +751,7 @@ debug_80C3A50: lsl r4, r0, #0x4 add r4, r4, r0 lsl r4, r4, #0x2 - ldr r1, ._56 + 48 + ldr r1, ._56 + 48 @ gSprites add r4, r4, r1 ldrb r1, [r4, #0x1] mov r2, #0x4 @@ -783,7 +783,7 @@ debug_80C3A50: lsl r0, r0, #0x10 lsr r0, r0, #0x10 bl FreeSpritePaletteByTag - ldr r0, ._56 + 52 + ldr r0, ._56 + 52 @ gPokedexEntries ldr r1, [sp, #0x4] lsl r5, r1, #0x3 add r5, r5, r1 @@ -817,7 +817,7 @@ debug_80C3A50: lsl r4, r1, #0x4 add r4, r4, r1 lsl r4, r4, #0x2 - ldr r2, ._56 + 48 + ldr r2, ._56 + 48 @ gSprites add r4, r4, r2 ldrb r0, [r4, #0x1] mov r3, sl @@ -861,14 +861,14 @@ debug_80C3A50: mov r3, #0x0 strh r3, [r7, #0x18] strh r3, [r7, #0x1a] - ldr r1, ._56 + 56 - ldr r2, ._56 + 60 + ldr r1, ._56 + 56 @ 0x4000048 + ldr r2, ._56 + 60 @ 0x3f1f add r0, r2, #0 strh r0, [r1] add r1, r1, #0x2 mov r0, #0x1f strh r0, [r1] - ldr r2, ._56 + 64 + ldr r2, ._56 + 64 @ 0x4000040 mov r3, #0x18 ldsh r1, [r7, r3] lsl r1, r1, #0x6 @@ -878,22 +878,22 @@ debug_80C3A50: add r1, r1, #0x78 add r0, r0, r1 strh r0, [r2] - ldr r1, ._56 + 68 - ldr r2, ._56 + 72 + ldr r1, ._56 + 68 @ 0x4000044 + ldr r2, ._56 + 72 @ 0x848 add r0, r2, #0 strh r0, [r1] sub r1, r1, #0x2 - ldr r3, ._56 + 76 + ldr r3, ._56 + 76 @ 0x31bf add r0, r3, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._56 + 80 + ldr r2, ._56 + 80 @ 0x14f add r0, r2, #0 strh r0, [r1] add r1, r1, #0xa mov r0, #0xe1 strh r0, [r1] - ldr r0, ._56 + 84 + ldr r0, ._56 + 84 @ 0x4000052 mov r3, #0x0 strh r3, [r0] add r1, r1, #0x4 @@ -907,7 +907,7 @@ debug_80C3A50: add r1, r3, #0 orr r0, r0, r1 strh r0, [r2] - ldr r0, ._56 + 88 + ldr r0, ._56 + 88 @ debug_80C3D2C str r0, [r7] add sp, sp, #0x28 pop {r3, r4, r5} @@ -955,7 +955,7 @@ debug_80C3D2C: lsl r0, r0, #0x18 lsr r6, r0, #0x18 add r7, r6, #0 - ldr r4, ._60 + ldr r4, ._60 @ gMain ldrh r1, [r4, #0x2e] mov r0, #0x2 and r0, r0, r1 @@ -970,14 +970,14 @@ debug_80C3D2C: mov r2, #0x0 mov r3, #0x10 bl BeginNormalPaletteFade - ldr r0, ._60 + 4 + ldr r0, ._60 + 4 @ debug_80C370C bl SetMainCallback2 - ldr r1, ._60 + 8 + ldr r1, ._60 + 8 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._60 + 12 + ldr r1, ._60 + 12 @ debug_80C373C str r1, [r0] b ._117 ._61: @@ -995,7 +995,7 @@ debug_80C3D2C: beq ._62 @cond_branch mov r0, #0x5 bl PlaySE - ldr r1, ._64 + ldr r1, ._64 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 @@ -1015,7 +1015,7 @@ debug_80C3D2C: and r0, r0, r1 cmp r0, #0 beq ._66 @cond_branch - ldr r1, ._70 + ldr r1, ._70 @ gTasks lsl r2, r6, #0x2 add r0, r2, r6 lsl r0, r0, #0x3 @@ -1089,7 +1089,7 @@ debug_80C3D2C: and r0, r0, r1 cmp r0, #0 beq ._80 @cond_branch - ldr r1, ._84 + ldr r1, ._84 @ gTasks lsl r2, r6, #0x2 add r0, r2, r6 lsl r0, r0, #0x3 @@ -1165,7 +1165,7 @@ debug_80C3D2C: and r0, r0, r1 cmp r0, #0 beq ._94 @cond_branch - ldr r0, ._97 + ldr r0, ._97 @ gTasks lsl r1, r6, #0x2 add r1, r1, r6 lsl r1, r1, #0x3 @@ -1192,7 +1192,7 @@ debug_80C3D2C: and r0, r0, r1 cmp r0, #0 beq ._100 @cond_branch - ldr r0, ._103 + ldr r0, ._103 @ gTasks lsl r1, r6, #0x2 add r1, r1, r6 lsl r1, r1, #0x3 @@ -1219,7 +1219,7 @@ debug_80C3D2C: and r0, r0, r1 cmp r0, #0 beq ._106 @cond_branch - ldr r2, ._109 + ldr r2, ._109 @ gTasks lsl r3, r6, #0x2 add r0, r3, r6 lsl r0, r0, #0x3 @@ -1227,7 +1227,7 @@ debug_80C3D2C: ldrh r4, [r6, #0x8] mov r0, #0x8 ldsh r1, [r6, r0] - ldr r0, ._109 + 4 + ldr r0, ._109 + 4 @ 0x181 mov r8, r2 add r2, r3, #0 cmp r1, r0 @@ -1254,7 +1254,7 @@ debug_80C3D2C: and r0, r0, r1 cmp r0, #0 beq ._112 @cond_branch - ldr r1, ._115 + ldr r1, ._115 @ gTasks lsl r2, r6, #0x2 add r0, r2, r6 lsl r0, r0, #0x3 @@ -1285,7 +1285,7 @@ debug_80C3D2C: lsl r0, r1, #0x4 add r0, r0, r1 lsl r0, r0, #0x2 - ldr r5, ._118 + ldr r5, ._118 @ gSprites add r0, r0, r5 bl DestroySprite mov r0, #0xe @@ -1295,7 +1295,7 @@ debug_80C3D2C: lsl r0, r0, #0x2 add r0, r0, r5 bl DestroySprite - ldr r0, ._118 + 4 + ldr r0, ._118 + 4 @ debug_80C3A50 str r0, [r4] b ._117 ._119: @@ -1304,7 +1304,7 @@ debug_80C3D2C: .word gSprites .word debug_80C3A50+1 ._112: - ldr r0, ._120 + ldr r0, ._120 @ gTasks lsl r5, r7, #0x2 add r5, r5, r7 lsl r5, r5, #0x3 @@ -1327,7 +1327,7 @@ debug_80C3D2C: mov r2, #0x7 mov r3, #0x4 bl debug_80C68CC - ldr r2, ._120 + 4 + ldr r2, ._120 + 4 @ gSprites mov r8, r2 mov r4, #0xc ldsh r1, [r5, r4] @@ -1361,7 +1361,7 @@ debug_80C3D2C: lsl r0, r0, #0x2 add r0, r0, r8 strh r6, [r0, #0x26] - ldr r2, ._120 + 8 + ldr r2, ._120 + 8 @ 0x4000040 mov r4, #0x18 ldsh r1, [r5, r4] lsl r1, r1, #0x6 @@ -1411,7 +1411,7 @@ debug_80C405C: cmp r5, #0 beq ._125 @cond_branch mov r2, #0x0 - ldr r3, ._127 + ldr r3, ._127 @ gSpeciesNames mov r0, #0xb add r1, r5, #0 mul r1, r1, r0 @@ -1462,7 +1462,7 @@ debug_80C40C4: mov r0, #0x64 add r1, r5, #0 mul r1, r1, r0 - ldr r0, ._132 + ldr r0, ._132 @ gEnemyParty add r4, r1, r0 add r0, r4, #0 mov r1, #0xb @@ -1488,7 +1488,7 @@ debug_80C40C4: mov r0, #0x64 add r1, r5, #0 mul r1, r1, r0 - ldr r0, ._136 + ldr r0, ._136 @ gPlayerParty add r4, r1, r0 add r0, r4, #0 mov r1, #0xb @@ -1526,8 +1526,8 @@ debug_80C40C4: InitBattleForDebug: push {lr} bl SavePlayerParty - ldr r1, ._138 - ldr r0, ._138 + 4 + ldr r1, ._138 @ gUnknown_Debug_2038A0C + ldr r0, ._138 + 4 @ gSaveBlock2 ldrb r2, [r0, #0x8] mov r0, #0x0 strb r2, [r1, #0xd] @@ -1541,13 +1541,13 @@ InitBattleForDebug: strb r0, [r1, #0x7] strb r0, [r1, #0x8] strb r0, [r1, #0xc] - ldr r1, ._138 + 8 + ldr r1, ._138 + 8 @ byte_3005E30 str r0, [r1] bl ZeroPlayerPartyMons bl ZeroEnemyPartyMons mov r0, #0x0 bl debug_80C4214 - ldr r0, ._138 + 12 + ldr r0, ._138 + 12 @ debug_80C47BC mov r1, #0x0 bl CreateTask pop {r0} @@ -1565,7 +1565,7 @@ InitBattleForDebug: thumb_func_start debug_80C41A8 debug_80C41A8: push {lr} - ldr r1, ._140 + ldr r1, ._140 @ gUnknown_Debug_2038A0C mov r0, #0x0 strb r0, [r1, #0x1] strb r0, [r1, #0x2] @@ -1573,7 +1573,7 @@ debug_80C41A8: bl ZeroEnemyPartyMons mov r0, #0x0 bl debug_80C4214 - ldr r0, ._140 + 4 + ldr r0, ._140 + 4 @ debug_80C47BC mov r1, #0x0 bl CreateTask pop {r0} @@ -1593,7 +1593,7 @@ debug_80C41D4: bl debug_80C40C4 mov r0, #0x0 bl debug_80C4214 - ldr r0, ._142 + ldr r0, ._142 @ debug_80C42B8 mov r1, #0x0 bl CreateTask pop {r0} @@ -1612,7 +1612,7 @@ debug_80C41F4: bl debug_80C40C4 mov r0, #0x1 bl debug_80C4214 - ldr r0, ._144 + ldr r0, ._144 @ debug_80C42B8 mov r1, #0x0 bl CreateTask pop {r0} @@ -1628,17 +1628,17 @@ debug_80C41F4: debug_80C4214: push {r4, r5, r6, lr} bl debug_80C35DC - ldr r6, ._146 + ldr r6, ._146 @ 0x4000040 mov r4, #0x0 strh r4, [r6] - ldr r5, ._146 + 4 + ldr r5, ._146 + 4 @ 0x4000044 strh r4, [r5] - ldr r0, ._146 + 8 + ldr r0, ._146 + 8 @ 0x4000042 strh r4, [r0] add r0, r0, #0x4 strh r4, [r0] - ldr r1, ._146 + 12 - ldr r2, ._146 + 16 + ldr r1, ._146 + 12 @ 0x4000048 + ldr r2, ._146 + 16 @ 0x1111 add r0, r2, #0 strh r0, [r1] add r1, r1, #0x2 @@ -1647,33 +1647,33 @@ debug_80C4214: add r1, r1, #0x6 mov r0, #0xe1 strh r0, [r1] - ldr r0, ._146 + 20 + ldr r0, ._146 + 20 @ 0x4000052 strh r4, [r0] add r1, r1, #0x4 mov r0, #0x7 strh r0, [r1] - ldr r3, ._146 + 24 + ldr r3, ._146 + 24 @ 0x4000208 ldrh r2, [r3] strh r4, [r3] - ldr r4, ._146 + 28 + ldr r4, ._146 + 28 @ 0x4000200 ldrh r0, [r4] mov r1, #0x1 orr r0, r0, r1 strh r0, [r4] strh r2, [r3] - ldr r0, ._146 + 32 + ldr r0, ._146 + 32 @ debug_80C3758 bl SetVBlankCallback - ldr r0, ._146 + 36 + ldr r0, ._146 + 36 @ debug_80C370C bl SetMainCallback2 mov r1, #0x80 lsl r1, r1, #0x13 - ldr r2, ._146 + 40 + ldr r2, ._146 + 40 @ 0x7140 add r0, r2, #0 strh r0, [r1] - ldr r1, ._146 + 44 + ldr r1, ._146 + 44 @ 0x1ef add r0, r1, #0 strh r0, [r6] - ldr r2, ._146 + 48 + ldr r2, ._146 + 48 @ 0x819f add r0, r2, #0 strh r0, [r5] pop {r4, r5, r6} @@ -1704,12 +1704,12 @@ debug_80C42B8: add sp, sp, #0xffffffe4 lsl r0, r0, #0x18 lsr r5, r0, #0x18 - ldr r1, ._150 + ldr r1, ._150 @ gUnknown_Debug_083F8194 mov r0, sp mov r2, #0xc bl memcpy add r4, sp, #0xc - ldr r1, ._150 + 4 + ldr r1, ._150 + 4 @ gUnknown_Debug_083F81A0 add r0, r4, #0 mov r2, #0xd bl memcpy @@ -1728,16 +1728,16 @@ debug_80C42B8: bl Menu_PrintText bl debug_80C4694 bl debug_80C4704 - ldr r0, ._150 + 8 + ldr r0, ._150 + 8 @ gUnknown_Debug_2038A0C ldrb r0, [r0] cmp r0, #0 beq ._148 @cond_branch - ldr r0, ._150 + 12 + ldr r0, ._150 + 12 @ gTasks lsl r1, r5, #0x2 add r1, r1, r5 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._150 + 16 + ldr r0, ._150 + 16 @ debug_80C44EC b ._149 ._151: .align 2, 0 @@ -1748,12 +1748,12 @@ debug_80C42B8: .word gTasks .word debug_80C44EC+1 ._148: - ldr r0, ._152 + ldr r0, ._152 @ gTasks lsl r1, r5, #0x2 add r1, r1, r5 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._152 + 4 + ldr r0, ._152 + 4 @ debug_80C4348 ._149: str r0, [r1] add sp, sp, #0x1c @@ -1775,7 +1775,7 @@ debug_80C4348: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r0, ._154 + ldr r0, ._154 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x1] lsl r0, r0, #0x19 mov r1, #0xc0 @@ -1787,20 +1787,20 @@ debug_80C4348: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r1, ._154 + 4 - ldr r2, ._154 + 8 + ldr r1, ._154 + 4 @ 0x4000042 + ldr r2, ._154 + 8 @ 0x177 add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 add r2, r2, #0x8 add r0, r2, #0 strh r0, [r1] - ldr r1, ._154 + 12 + ldr r1, ._154 + 12 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._154 + 16 + ldr r1, ._154 + 16 @ debug_80C43A8 str r1, [r0] add sp, sp, #0x4 pop {r4} @@ -1823,7 +1823,7 @@ debug_80C43A8: add sp, sp, #0xfffffffc lsl r0, r0, #0x18 lsr r4, r0, #0x18 - ldr r1, ._158 + ldr r1, ._158 @ gMain ldrh r2, [r1, #0x2e] mov r0, #0x1 and r0, r0, r2 @@ -1832,13 +1832,13 @@ debug_80C43A8: beq ._156 @cond_branch mov r0, #0x5 bl PlaySE - ldr r0, ._158 + 4 + ldr r0, ._158 + 4 @ gUnknown_Debug_2038A0C ldrb r1, [r0, #0x1] mov r0, #0x64 mul r0, r0, r1 - ldr r1, ._158 + 8 + ldr r1, ._158 + 8 @ gPlayerParty add r0, r0, r1 - ldr r1, ._158 + 12 + ldr r1, ._158 + 12 @ debug_80C41D4 bl debug_sub_80A433C add r0, r4, #0 bl DestroyTask @@ -1855,12 +1855,12 @@ debug_80C43A8: and r0, r0, r2 cmp r0, #0 beq ._160 @cond_branch - ldr r0, ._162 + ldr r0, ._162 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._162 + 4 + ldr r0, ._162 + 4 @ debug_80C4F48 str r0, [r1] b ._180 ._163: @@ -1883,12 +1883,12 @@ debug_80C43A8: bl PlaySE bl CalculatePlayerPartyCount bl CalculateEnemyPartyCount - ldr r0, ._167 + ldr r0, ._167 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._167 + 4 + ldr r0, ._167 + 4 @ debug_80C4D14 str r0, [r1] b ._180 ._168: @@ -1908,12 +1908,12 @@ debug_80C43A8: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r0, ._171 + ldr r0, ._171 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._171 + 4 + ldr r0, ._171 + 4 @ debug_80C44EC str r0, [r1] b ._180 ._172: @@ -1927,7 +1927,7 @@ debug_80C43A8: and r0, r0, r1 cmp r0, #0 beq ._174 @cond_branch - ldr r1, ._176 + ldr r1, ._176 @ gUnknown_Debug_2038A0C ldrb r0, [r1, #0x1] cmp r0, #0 beq ._174 @cond_branch @@ -1944,14 +1944,14 @@ debug_80C43A8: and r0, r0, r1 cmp r0, #0 beq ._180 @cond_branch - ldr r5, ._181 + ldr r5, ._181 @ gUnknown_Debug_2038A0C ldrb r0, [r5, #0x1] cmp r0, #0x4 bhi ._180 @cond_branch add r1, r0, #0 mov r0, #0x64 mul r0, r0, r1 - ldr r1, ._181 + 4 + ldr r1, ._181 + 4 @ gPlayerParty add r0, r0, r1 mov r1, #0xb bl GetMonData @@ -1961,12 +1961,12 @@ debug_80C43A8: add r0, r0, #0x1 strb r0, [r5, #0x1] ._175: - ldr r1, ._181 + 8 + ldr r1, ._181 + 8 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._181 + 12 + ldr r1, ._181 + 12 @ debug_80C4348 str r1, [r0] ._180: add sp, sp, #0x4 @@ -1990,7 +1990,7 @@ debug_80C44EC: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r0, ._183 + ldr r0, ._183 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x2] lsl r0, r0, #0x19 mov r1, #0xc0 @@ -2003,20 +2003,20 @@ debug_80C44EC: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r1, ._183 + 4 - ldr r2, ._183 + 8 + ldr r1, ._183 + 4 @ 0x4000042 + ldr r2, ._183 + 8 @ 0x79ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._183 + 12 + ldr r2, ._183 + 12 @ 0x17f add r0, r2, #0 strh r0, [r1] - ldr r1, ._183 + 16 + ldr r1, ._183 + 16 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._183 + 20 + ldr r1, ._183 + 20 @ debug_80C4550 str r1, [r0] add sp, sp, #0x4 pop {r4} @@ -2040,7 +2040,7 @@ debug_80C4550: add sp, sp, #0xfffffffc lsl r0, r0, #0x18 lsr r4, r0, #0x18 - ldr r1, ._187 + ldr r1, ._187 @ gMain ldrh r2, [r1, #0x2e] mov r0, #0x1 and r0, r0, r2 @@ -2049,13 +2049,13 @@ debug_80C4550: beq ._185 @cond_branch mov r0, #0x5 bl PlaySE - ldr r0, ._187 + 4 + ldr r0, ._187 + 4 @ gUnknown_Debug_2038A0C ldrb r1, [r0, #0x2] mov r0, #0x64 mul r0, r0, r1 - ldr r1, ._187 + 8 + ldr r1, ._187 + 8 @ gEnemyParty add r0, r0, r1 - ldr r1, ._187 + 12 + ldr r1, ._187 + 12 @ debug_80C41F4 bl debug_sub_80A433C add r0, r4, #0 bl DestroyTask @@ -2072,12 +2072,12 @@ debug_80C4550: and r0, r0, r2 cmp r0, #0 beq ._189 @cond_branch - ldr r0, ._191 + ldr r0, ._191 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._191 + 4 + ldr r0, ._191 + 4 @ debug_80C4F48 str r0, [r1] b ._209 ._192: @@ -2100,12 +2100,12 @@ debug_80C4550: bl PlaySE bl CalculatePlayerPartyCount bl CalculateEnemyPartyCount - ldr r0, ._196 + ldr r0, ._196 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._196 + 4 + ldr r0, ._196 + 4 @ debug_80C4D14 str r0, [r1] b ._209 ._197: @@ -2125,12 +2125,12 @@ debug_80C4550: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r0, ._200 + ldr r0, ._200 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._200 + 4 + ldr r0, ._200 + 4 @ debug_80C4348 str r0, [r1] b ._209 ._201: @@ -2144,7 +2144,7 @@ debug_80C4550: and r0, r0, r1 cmp r0, #0 beq ._203 @cond_branch - ldr r1, ._205 + ldr r1, ._205 @ gUnknown_Debug_2038A0C ldrb r0, [r1, #0x2] cmp r0, #0 beq ._203 @cond_branch @@ -2161,14 +2161,14 @@ debug_80C4550: and r0, r0, r1 cmp r0, #0 beq ._209 @cond_branch - ldr r5, ._210 + ldr r5, ._210 @ gUnknown_Debug_2038A0C ldrb r0, [r5, #0x2] cmp r0, #0x4 bhi ._209 @cond_branch add r1, r0, #0 mov r0, #0x64 mul r0, r0, r1 - ldr r1, ._210 + 4 + ldr r1, ._210 + 4 @ gEnemyParty add r0, r0, r1 mov r1, #0xb bl GetMonData @@ -2178,12 +2178,12 @@ debug_80C4550: add r0, r0, #0x1 strb r0, [r5, #0x2] ._204: - ldr r1, ._210 + 8 + ldr r1, ._210 + 8 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._210 + 12 + ldr r1, ._210 + 12 @ debug_80C44EC str r1, [r0] ._209: add sp, sp, #0x4 @@ -2204,7 +2204,7 @@ debug_80C4550: debug_80C4694: push {r4, r5, lr} add sp, sp, #0xffffffe4 - ldr r1, ._213 + ldr r1, ._213 @ gUnknown_Debug_083F81AD mov r0, sp mov r2, #0xd bl memcpy @@ -2222,7 +2222,7 @@ debug_80C4694: ._212: mov r0, #0x64 mul r0, r0, r4 - ldr r1, ._213 + 4 + ldr r1, ._213 + 4 @ gPlayerParty add r0, r0, r1 mov r1, #0xb bl GetMonData @@ -2260,7 +2260,7 @@ debug_80C4694: debug_80C4704: push {r4, r5, lr} add sp, sp, #0xffffffe4 - ldr r1, ._216 + ldr r1, ._216 @ gUnknown_Debug_083F81BA mov r0, sp mov r2, #0xd bl memcpy @@ -2278,7 +2278,7 @@ debug_80C4704: ._215: mov r0, #0x64 mul r0, r0, r4 - ldr r1, ._216 + 4 + ldr r1, ._216 + 4 @ gEnemyParty add r0, r0, r1 mov r1, #0xb bl GetMonData @@ -2315,7 +2315,7 @@ debug_80C4704: thumb_func_start debug_80C4774 debug_80C4774: push {r4, lr} - ldr r0, ._221 + ldr r0, ._221 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0xc] sub r0, r0, #0x1 lsl r0, r0, #0x18 @@ -2323,13 +2323,13 @@ debug_80C4774: mov r1, #0x64 add r4, r0, #0 mul r4, r4, r1 - ldr r0, ._221 + 4 + ldr r0, ._221 + 4 @ gPlayerParty add r0, r4, r0 mov r1, #0xb bl GetMonData cmp r0, #0 beq ._219 @cond_branch - ldr r0, ._221 + 8 + ldr r0, ._221 + 8 @ gEnemyParty add r0, r4, r0 mov r1, #0xb bl GetMonData @@ -2358,22 +2358,22 @@ debug_80C47BC: add sp, sp, #0xffffffc0 lsl r0, r0, #0x18 lsr r7, r0, #0x18 - ldr r1, ._224 + ldr r1, ._224 @ gUnknown_Debug_083F81C7 mov r0, sp mov r2, #0xf bl memcpy add r4, sp, #0x10 - ldr r1, ._224 + 4 + ldr r1, ._224 + 4 @ gUnknown_Debug_083F81A0 add r0, r4, #0 mov r2, #0xd bl memcpy add r6, sp, #0x20 - ldr r1, ._224 + 8 + ldr r1, ._224 + 8 @ gUnknown_Debug_083F81D6 add r0, r6, #0 mov r2, #0xf bl memcpy add r5, sp, #0x30 - ldr r1, ._224 + 12 + ldr r1, ._224 + 12 @ gUnknown_Debug_083F81E5 add r0, r5, #0 mov r2, #0x10 bl memcpy @@ -2400,7 +2400,7 @@ debug_80C47BC: mov r2, #0x1 bl Menu_PrintText mov r4, #0x0 - ldr r6, ._224 + 16 + ldr r6, ._224 + 16 @ gUnknown_Debug_083F8068 ._223: lsl r0, r4, #0x3 add r0, r0, r6 @@ -2426,15 +2426,15 @@ debug_80C47BC: mov r1, #0x11 mov r2, #0x1 bl Menu_PrintText - ldr r0, ._224 + 20 + ldr r0, ._224 + 20 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x4] bl debug_80C4C44 - ldr r1, ._224 + 24 + ldr r1, ._224 + 24 @ gTasks lsl r0, r7, #0x2 add r0, r0, r7 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._224 + 28 + ldr r1, ._224 + 28 @ debug_80C48A0 str r1, [r0] add sp, sp, #0x40 pop {r4, r5, r6, r7} @@ -2461,7 +2461,7 @@ debug_80C48A0: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r0, ._226 + ldr r0, ._226 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x3] lsl r0, r0, #0x19 mov r1, #0xc0 @@ -2473,20 +2473,20 @@ debug_80C48A0: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r1, ._226 + 4 - ldr r2, ._226 + 8 + ldr r1, ._226 + 4 @ 0x4000042 + ldr r2, ._226 + 8 @ 0x177 add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 add r2, r2, #0x8 add r0, r2, #0 strh r0, [r1] - ldr r1, ._226 + 12 + ldr r1, ._226 + 12 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._226 + 16 + ldr r1, ._226 + 16 @ debug_80C4900 str r1, [r0] add sp, sp, #0x4 pop {r4} @@ -2509,7 +2509,7 @@ debug_80C4900: add sp, sp, #0xfffffffc lsl r0, r0, #0x18 lsr r5, r0, #0x18 - ldr r1, ._230 + ldr r1, ._230 @ gMain ldrh r2, [r1, #0x2e] mov r0, #0x2 and r0, r0, r2 @@ -2528,24 +2528,24 @@ debug_80C4900: mov r2, #0x0 mov r3, #0x10 bl BeginNormalPaletteFade - ldr r0, ._230 + 4 + ldr r0, ._230 + 4 @ debug_80C370C bl SetMainCallback2 bl LoadPlayerParty - ldr r1, ._230 + 8 - ldr r0, ._230 + 12 + ldr r1, ._230 + 8 @ gSaveBlock2 + ldr r0, ._230 + 12 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0xd] strb r0, [r1, #0x8] - ldr r0, ._230 + 16 + ldr r0, ._230 + 16 @ gBattleTypeFlags mov r1, #0x0 strh r4, [r0] - ldr r0, ._230 + 20 + ldr r0, ._230 + 20 @ gUnknown_02023A14_50 strb r1, [r0] - ldr r1, ._230 + 24 + ldr r1, ._230 + 24 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._230 + 28 + ldr r1, ._230 + 28 @ debug_80C373C b ._229 ._231: .align 2, 0 @@ -2570,15 +2570,15 @@ debug_80C4900: ._232: mov r0, #0x5 bl PlaySE - ldr r1, ._236 - ldr r3, ._236 + 4 - ldr r2, ._236 + 8 + ldr r1, ._236 @ gBattleTypeFlags + ldr r3, ._236 + 4 @ gUnknown_Debug_083F8068 + ldr r2, ._236 + 8 @ gUnknown_Debug_2038A0C ldrb r0, [r2, #0x3] lsl r0, r0, #0x3 add r0, r0, r3 ldrb r0, [r0, #0x4] strh r0, [r1] - ldr r1, ._236 + 12 + ldr r1, ._236 + 12 @ gUnknown_02023A14_50 mov r0, #0x8 strb r0, [r1] ldrb r0, [r2, #0x3] @@ -2598,12 +2598,12 @@ debug_80C4900: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r0, ._236 + 16 + ldr r0, ._236 + 16 @ gTasks lsl r1, r5, #0x2 add r1, r1, r5 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._236 + 20 + ldr r0, ._236 + 20 @ debug_80C4A60 str r0, [r1] b ._247 ._237: @@ -2616,12 +2616,12 @@ debug_80C4900: .word gTasks .word debug_80C4A60+1 ._234: - ldr r0, ._239 + ldr r0, ._239 @ gTasks lsl r1, r5, #0x2 add r1, r1, r5 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._239 + 4 + ldr r0, ._239 + 4 @ debug_80C4F48 str r0, [r1] b ._247 ._240: @@ -2635,7 +2635,7 @@ debug_80C4900: and r0, r0, r1 cmp r0, #0 beq ._242 @cond_branch - ldr r1, ._244 + ldr r1, ._244 @ gUnknown_Debug_2038A0C ldrb r0, [r1, #0x3] cmp r0, #0 beq ._242 @cond_branch @@ -2651,19 +2651,19 @@ debug_80C4900: and r0, r0, r1 cmp r0, #0 beq ._247 @cond_branch - ldr r1, ._248 + ldr r1, ._248 @ gUnknown_Debug_2038A0C ldrb r0, [r1, #0x3] cmp r0, #0x1 bhi ._247 @cond_branch add r0, r0, #0x1 ._243: strb r0, [r1, #0x3] - ldr r1, ._248 + 4 + ldr r1, ._248 + 4 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._248 + 8 + ldr r1, ._248 + 8 @ debug_80C48A0 ._229: str r1, [r0] ._247: @@ -2687,7 +2687,7 @@ debug_80C4A60: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r0, ._250 + ldr r0, ._250 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x5] lsl r0, r0, #0x19 mov r1, #0xc0 @@ -2700,20 +2700,20 @@ debug_80C4A60: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r1, ._250 + 4 - ldr r2, ._250 + 8 + ldr r1, ._250 + 4 @ 0x4000042 + ldr r2, ._250 + 8 @ 0x79ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._250 + 12 + ldr r2, ._250 + 12 @ 0x17f add r0, r2, #0 strh r0, [r1] - ldr r1, ._250 + 16 + ldr r1, ._250 + 16 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._250 + 20 + ldr r1, ._250 + 20 @ debug_80C4AC4 str r1, [r0] add sp, sp, #0x4 pop {r4} @@ -2739,7 +2739,7 @@ debug_80C4AC4: add sp, sp, #0xfffffffc lsl r0, r0, #0x18 lsr r6, r0, #0x18 - ldr r7, ._255 + ldr r7, ._255 @ gUnknown_Debug_2038A0C ldrb r0, [r7, #0x4] mov ip, r0 ldrb r5, [r7, #0x5] @@ -2747,7 +2747,7 @@ debug_80C4AC4: add r0, r1, r5 lsl r0, r0, #0x18 lsr r1, r0, #0x18 - ldr r2, ._255 + 4 + ldr r2, ._255 + 4 @ gMain mov r8, r2 ldrh r2, [r2, #0x2e] mov r3, #0x1 @@ -2755,18 +2755,18 @@ debug_80C4AC4: add r4, r7, #0 cmp r3, #0 beq ._252 @cond_branch - ldr r0, ._255 + 8 + ldr r0, ._255 + 8 @ gUnknown_Debug_083F80D8 lsl r1, r1, #0x3 add r0, r0, #0x4 add r1, r1, r0 ldr r1, [r1] - ldr r3, ._255 + 12 + ldr r3, ._255 + 12 @ byte_3005E30 ldr r2, [r3] add r0, r2, #0 and r0, r0, r1 cmp r0, #0 beq ._253 @cond_branch - ldr r0, ._255 + 16 + ldr r0, ._255 + 16 @ 0xffff eor r1, r1, r0 and r2, r2, r1 b ._254 @@ -2784,12 +2784,12 @@ debug_80C4AC4: str r2, [r3] ldrb r0, [r4, #0x4] bl debug_80C4C44 - ldr r1, ._258 + ldr r1, ._258 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._258 + 4 + ldr r1, ._258 + 4 @ debug_80C4A60 str r1, [r0] b ._274 ._259: @@ -2810,12 +2810,12 @@ debug_80C4AC4: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r0, ._262 + ldr r0, ._262 @ gTasks lsl r1, r6, #0x2 add r1, r1, r6 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._262 + 4 + ldr r0, ._262 + 4 @ debug_80C48A0 b ._261 ._263: .align 2, 0 @@ -2829,12 +2829,12 @@ debug_80C4AC4: beq ._264 @cond_branch mov r0, #0x5 bl PlaySE - ldr r1, ._266 + ldr r1, ._266 @ gTrainerBattleOpponent mov r2, #0x80 lsl r2, r2, #0x3 add r0, r2, #0 strh r0, [r1] - ldr r1, ._266 + 4 + ldr r1, ._266 + 4 @ 0x2017000 ldrb r2, [r1, #0x1] mov r0, #0x11 neg r0, r0 @@ -2848,19 +2848,19 @@ debug_80C4AC4: strb r4, [r1, #0xa] strb r4, [r1, #0xb] strb r4, [r1, #0xc] - ldr r1, ._266 + 8 + ldr r1, ._266 + 8 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._266 + 12 + ldr r1, ._266 + 12 @ debug_80C4F48 str r1, [r0] b ._274 ._267: .align 2, 0 ._266: .word gTrainerBattleOpponent - .word +0x2017000 + .word 0x2017000 .word gTasks .word debug_80C4F48+1 ._264: @@ -2911,12 +2911,12 @@ debug_80C4AC4: ldrb r0, [r7, #0x4] bl debug_80C4C44 ._277: - ldr r0, ._278 + ldr r0, ._278 @ gTasks lsl r1, r6, #0x2 add r1, r1, r6 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._278 + 4 + ldr r0, ._278 + 4 @ debug_80C4A60 ._261: str r0, [r1] ._274: @@ -2956,12 +2956,12 @@ debug_80C4C44: cmp r4, #0x9 bgt ._280 @cond_branch mov r3, #0x0 - ldr r1, ._288 + ldr r1, ._288 @ gUnknown_Debug_083F80D8 lsl r0, r4, #0x3 add r0, r0, r1 ldr r0, [r0] ldrb r0, [r0] - ldr r7, ._288 + 4 + ldr r7, ._288 + 4 @ byte_3005E30 mov r9, r7 lsl r2, r2, #0x1 mov ip, r2 @@ -3057,17 +3057,17 @@ debug_80C4D14: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r1, ._291 + ldr r1, ._291 @ gUnknown_Debug_083F81C7 mov r0, sp mov r2, #0xf bl memcpy add r5, sp, #0x10 - ldr r1, ._291 + 4 + ldr r1, ._291 + 4 @ gUnknown_Debug_083F81F5 add r0, r5, #0 mov r2, #0xd bl memcpy add r6, sp, #0x20 - ldr r1, ._291 + 8 + ldr r1, ._291 + 8 @ gUnknown_Debug_083F8202 add r0, r6, #0 mov r2, #0xf bl memcpy @@ -3093,7 +3093,7 @@ debug_80C4D14: mov r1, #0x2 mov r2, #0x1 bl Menu_PrintText - ldr r0, ._291 + 12 + ldr r0, ._291 + 12 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x6] bl debug_80C4F00 mov r0, #0xf @@ -3101,12 +3101,12 @@ debug_80C4D14: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r1, ._291 + 16 + ldr r1, ._291 + 16 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._291 + 20 + ldr r1, ._291 + 20 @ debug_80C4DB8 str r1, [r0] add sp, sp, #0x30 pop {r4, r5, r6} @@ -3131,7 +3131,7 @@ debug_80C4DB8: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r0, ._293 + ldr r0, ._293 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x7] lsl r0, r0, #0x19 mov r1, #0xc0 @@ -3143,20 +3143,20 @@ debug_80C4DB8: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r1, ._293 + 4 - ldr r2, ._293 + 8 + ldr r1, ._293 + 4 @ 0x4000042 + ldr r2, ._293 + 8 @ 0x177 add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 add r2, r2, #0x8 add r0, r2, #0 strh r0, [r1] - ldr r1, ._293 + 12 + ldr r1, ._293 + 12 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._293 + 16 + ldr r1, ._293 + 16 @ debug_80C4E18 str r1, [r0] add sp, sp, #0x4 pop {r4} @@ -3178,24 +3178,24 @@ debug_80C4E18: push {r4, r5, r6, r7, lr} lsl r0, r0, #0x18 lsr r4, r0, #0x18 - ldr r5, ._297 + ldr r5, ._297 @ gUnknown_Debug_2038A0C ldrb r3, [r5, #0x6] ldrb r2, [r5, #0x7] add r0, r3, r2 lsl r0, r0, #0x18 lsr r6, r0, #0x18 - ldr r7, ._297 + 4 + ldr r7, ._297 + 4 @ gMain ldrh r1, [r7, #0x2e] mov r0, #0x2 and r0, r0, r1 cmp r0, #0 beq ._295 @cond_branch - ldr r0, ._297 + 8 + ldr r0, ._297 + 8 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._297 + 12 + ldr r0, ._297 + 12 @ debug_80C42B8 b ._296 ._298: .align 2, 0 @@ -3216,18 +3216,18 @@ debug_80C4E18: ._299: mov r0, #0x5 bl PlaySE - ldr r2, ._302 - ldr r1, ._302 + 4 + ldr r2, ._302 @ gBattleTerrain + ldr r1, ._302 + 4 @ gUnknown_Debug_083F814C lsl r0, r6, #0x3 add r0, r0, r1 ldrb r0, [r0, #0x4] strb r0, [r2] - ldr r1, ._302 + 8 + ldr r1, ._302 + 8 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._302 + 12 + ldr r1, ._302 + 12 @ debug_80C5158 str r1, [r0] b ._310 ._303: @@ -3280,12 +3280,12 @@ debug_80C4E18: ldrb r0, [r5, #0x6] bl debug_80C4F00 ._313: - ldr r0, ._314 + ldr r0, ._314 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._314 + 4 + ldr r0, ._314 + 4 @ debug_80C4DB8 ._296: str r0, [r1] ._310: @@ -3311,7 +3311,7 @@ debug_80C4F00: mov r3, #0xe bl Menu_BlankWindowRect mov r4, #0x0 - ldr r6, ._318 + ldr r6, ._318 @ gUnknown_Debug_083F814C ._317: cmp r4, #0x8 bhi ._316 @cond_branch @@ -3352,28 +3352,28 @@ debug_80C4F48: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r1, ._320 + ldr r1, ._320 @ gUnknown_Debug_083F8211 mov r0, sp mov r2, #0x11 bl memcpy add r6, sp, #0x14 - ldr r1, ._320 + 4 + ldr r1, ._320 + 4 @ gUnknown_Debug_083F81A0 add r0, r6, #0 mov r2, #0xd bl memcpy add r5, sp, #0x24 - ldr r1, ._320 + 8 + ldr r1, ._320 + 8 @ gUnknown_Debug_083F8222 add r0, r5, #0 mov r2, #0xd bl memcpy add r0, sp, #0x34 mov r9, r0 - ldr r1, ._320 + 12 + ldr r1, ._320 + 12 @ gUnknown_Debug_083F822F mov r2, #0x4 bl memcpy add r0, sp, #0x38 mov r8, r0 - ldr r1, ._320 + 16 + ldr r1, ._320 + 16 @ gUnknown_Debug_083F8233 mov r2, #0x4 bl memcpy mov r0, #0x0 @@ -3420,12 +3420,12 @@ debug_80C4F48: mov r2, #0x1d mov r3, #0xf bl Menu_DrawStdWindowFrame - ldr r1, ._320 + 20 + ldr r1, ._320 + 20 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._320 + 24 + ldr r1, ._320 + 24 @ debug_80C5038 str r1, [r0] add sp, sp, #0x3c pop {r3, r4} @@ -3454,7 +3454,7 @@ debug_80C5038: add r4, r0, #0 lsl r4, r4, #0x18 lsr r4, r4, #0x18 - ldr r0, ._322 + ldr r0, ._322 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x8] lsl r0, r0, #0x19 mov r1, #0xc0 @@ -3466,20 +3466,20 @@ debug_80C5038: mov r2, #0x1 mov r3, #0xe bl debug_80C38E4 - ldr r1, ._322 + 4 - ldr r2, ._322 + 8 + ldr r1, ._322 + 4 @ 0x4000042 + ldr r2, ._322 + 8 @ 0x177 add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 add r2, r2, #0x8 add r0, r2, #0 strh r0, [r1] - ldr r1, ._322 + 12 + ldr r1, ._322 + 12 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._322 + 16 + ldr r1, ._322 + 16 @ debug_80C5098 str r1, [r0] add sp, sp, #0x4 pop {r4} @@ -3501,19 +3501,19 @@ debug_80C5098: push {r4, lr} lsl r0, r0, #0x18 lsr r4, r0, #0x18 - ldr r1, ._326 + ldr r1, ._326 @ gMain ldrh r2, [r1, #0x2e] mov r0, #0x2 and r0, r0, r2 add r3, r1, #0 cmp r0, #0 beq ._324 @cond_branch - ldr r0, ._326 + 4 + ldr r0, ._326 + 4 @ gTasks lsl r1, r4, #0x2 add r1, r1, r4 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._326 + 8 + ldr r0, ._326 + 8 @ debug_80C47BC str r0, [r1] b ._339 ._327: @@ -3534,16 +3534,16 @@ debug_80C5098: ._328: mov r0, #0x5 bl PlaySE - ldr r1, ._331 - ldr r0, ._331 + 4 + ldr r1, ._331 @ gSaveBlock2 + ldr r0, ._331 + 4 @ gUnknown_Debug_2038A0C ldrb r0, [r0, #0x8] strb r0, [r1, #0x8] - ldr r1, ._331 + 8 + ldr r1, ._331 + 8 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._331 + 12 + ldr r1, ._331 + 12 @ debug_80C42B8 b ._330 ._332: .align 2, 0 @@ -3558,7 +3558,7 @@ debug_80C5098: and r0, r0, r1 cmp r0, #0 beq ._334 @cond_branch - ldr r1, ._336 + ldr r1, ._336 @ gUnknown_Debug_2038A0C ldrb r0, [r1, #0x8] cmp r0, #0 beq ._334 @cond_branch @@ -3574,19 +3574,19 @@ debug_80C5098: and r0, r0, r1 cmp r0, #0 beq ._339 @cond_branch - ldr r1, ._340 + ldr r1, ._340 @ gUnknown_Debug_2038A0C ldrb r0, [r1, #0x8] cmp r0, #0 bne ._339 @cond_branch add r0, r0, #0x1 ._335: strb r0, [r1, #0x8] - ldr r1, ._340 + 4 + ldr r1, ._340 + 4 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._340 + 8 + ldr r1, ._340 + 8 @ debug_80C5038 ._330: str r1, [r0] ._339: @@ -3606,12 +3606,12 @@ debug_80C5098: debug_80C5158: lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._342 + ldr r2, ._342 @ gTasks lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x3 add r1, r1, r2 - ldr r0, ._342 + 4 + ldr r0, ._342 + 4 @ debug_80C5174 str r0, [r1] bx lr ._343: @@ -3626,12 +3626,12 @@ debug_80C5158: debug_80C5174: lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._344 + ldr r2, ._344 @ gTasks lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x3 add r1, r1, r2 - ldr r0, ._344 + 4 + ldr r0, ._344 + 4 @ debug_80C5190 str r0, [r1] bx lr ._345: @@ -3646,12 +3646,12 @@ debug_80C5174: debug_80C5190: lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._346 + ldr r2, ._346 @ gTasks lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x3 add r1, r1, r2 - ldr r0, ._346 + 4 + ldr r0, ._346 + 4 @ debug_80C51AC str r0, [r1] bx lr ._347: @@ -3666,12 +3666,12 @@ debug_80C5190: debug_80C51AC: lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._348 + ldr r2, ._348 @ gTasks lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x3 add r1, r1, r2 - ldr r0, ._348 + 4 + ldr r0, ._348 + 4 @ debug_80C51C8 str r0, [r1] bx lr ._349: @@ -3686,12 +3686,12 @@ debug_80C51AC: debug_80C51C8: lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._350 + ldr r2, ._350 @ gTasks lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x3 add r1, r1, r2 - ldr r0, ._350 + 4 + ldr r0, ._350 + 4 @ debug_80C51E4 str r0, [r1] bx lr ._351: @@ -3706,10 +3706,10 @@ debug_80C51C8: debug_80C51E4: push {lr} bl sub_80408BC - ldr r0, ._352 - ldr r1, ._352 + 4 + ldr r0, ._352 @ gMain + ldr r1, ._352 + 4 @ debug_80C41A8 str r1, [r0, #0x8] - ldr r0, ._352 + 8 + ldr r0, ._352 + 8 @ unref_sub_800D684 bl SetMainCallback2 pop {r0} bx r0 @@ -3725,12 +3725,12 @@ debug_80C51E4: thumb_func_start debug_80C5208 debug_80C5208: push {r4, r5, r6, lr} - ldr r1, ._355 - ldr r0, ._355 + 4 + ldr r1, ._355 @ gUnknown_Debug_2038A1C + ldr r0, ._355 + 4 @ 0x2018000 str r0, [r1] mov r3, #0x0 add r6, r1, #0 - ldr r4, ._355 + 8 + ldr r4, ._355 + 8 @ gSaveBlock2 add r5, r6, #0 mov r2, #0x0 ._354: @@ -3778,7 +3778,7 @@ debug_80C5208: .align 2, 0 ._355: .word gUnknown_Debug_2038A1C - .word +0x2018000 + .word 0x2018000 .word gSaveBlock2 thumb_func_end debug_80C5208 @@ -3788,12 +3788,12 @@ debug_80C527C: push {r4, r5, r6, r7, lr} add r6, r0, #0 mov r5, #0x0 - ldr r7, ._359 + ldr r7, ._359 @ gPlayerPartyCount ._361: mov r0, #0x64 add r1, r5, #0 mul r1, r1, r0 - ldr r0, ._359 + 4 + ldr r0, ._359 + 4 @ gPlayerParty add r4, r1, r0 add r0, r4, #0 mov r1, #0xb @@ -3820,7 +3820,7 @@ debug_80C527C: lsr r5, r0, #0x18 cmp r5, #0x5 bls ._361 @cond_branch - ldr r0, ._362 + ldr r0, ._362 @ gUnknown_Debug_2038A1C ldr r0, [r0] bl SendMonToPC mov r0, #0x1 @@ -3839,7 +3839,7 @@ debug_80C527C: InitCreatePokemon: push {r4, r5, lr} add sp, sp, #0xffffffd4 - ldr r1, ._364 + ldr r1, ._364 @ gUnknown_Debug_083F8733 add r0, sp, #0x4 mov r2, #0x25 bl memcpy @@ -3852,30 +3852,30 @@ InitCreatePokemon: mov r2, #0x10 mov r3, #0x0 bl BeginNormalPaletteFade - ldr r0, ._364 + 4 + ldr r0, ._364 + 4 @ 0x4000050 mov r5, #0x0 strh r4, [r0] add r0, r0, #0x2 strh r4, [r0] add r0, r0, #0x2 strh r4, [r0] - ldr r3, ._364 + 8 + ldr r3, ._364 + 8 @ 0x4000208 ldrh r2, [r3] strh r4, [r3] - ldr r4, ._364 + 12 + ldr r4, ._364 + 12 @ 0x4000200 ldrh r0, [r4] mov r1, #0x1 orr r0, r0, r1 strh r0, [r4] strh r2, [r3] - ldr r2, ._364 + 16 + ldr r2, ._364 + 16 @ 0x4000004 ldrh r0, [r2] mov r1, #0x8 orr r0, r0, r1 strh r0, [r2] - ldr r0, ._364 + 20 + ldr r0, ._364 + 20 @ debug_80C3758 bl SetVBlankCallback - ldr r0, ._364 + 24 + ldr r0, ._364 + 24 @ debug_80C370C bl SetMainCallback2 mov r0, #0x0 mov r1, #0x0 @@ -3892,18 +3892,18 @@ InitCreatePokemon: lsl r2, r2, #0x5 add r0, r2, #0 strh r0, [r1] - ldr r0, ._364 + 28 + ldr r0, ._364 + 28 @ debug_80C53A4 mov r1, #0x0 bl CreateTask bl debug_80C5208 - ldr r1, ._364 + 32 + ldr r1, ._364 + 32 @ gUnknown_Debug_2038A1C ldr r0, [r1] mov r2, #0xb4 lsl r2, r2, #0x1 add r0, r0, r2 strb r5, [r0] ldr r0, [r1] - ldr r1, ._364 + 36 + ldr r1, ._364 + 36 @ 0x169 add r0, r0, r1 strb r5, [r0] add sp, sp, #0x2c @@ -3930,12 +3930,12 @@ InitCreatePokemon: debug_80C53A4: lsl r0, r0, #0x18 lsr r0, r0, #0x18 - ldr r2, ._366 + ldr r2, ._366 @ gTasks lsl r1, r0, #0x2 add r1, r1, r0 lsl r1, r1, #0x3 add r1, r1, r2 - ldr r0, ._366 + 4 + ldr r0, ._366 + 4 @ debug_80C53C0 str r0, [r1] bx lr ._367: @@ -3955,12 +3955,12 @@ debug_80C53C0: bl debug_80C6384 mov r0, #0x0 bl debug_80C627C - ldr r1, ._368 + ldr r1, ._368 @ gTasks lsl r0, r4, #0x2 add r0, r0, r4 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._368 + 4 + ldr r1, ._368 + 4 @ debug_80C53F0 str r1, [r0] pop {r4} pop {r0} @@ -3979,26 +3979,26 @@ debug_80C53F0: add sp, sp, #0xfffffffc lsl r0, r0, #0x18 lsr r5, r0, #0x18 - ldr r0, ._372 + ldr r0, ._372 @ gMain ldrh r1, [r0, #0x2e] mov r2, #0x1 and r2, r2, r1 add r4, r0, #0 cmp r2, #0 beq ._370 @cond_branch - ldr r0, ._372 + 4 + ldr r0, ._372 + 4 @ gUnknown_Debug_2038A1C ldr r3, [r0] mov r0, #0xb2 lsl r0, r0, #0x1 add r2, r3, r0 - ldr r1, ._372 + 8 + ldr r1, ._372 + 8 @ gUnknown_Debug_083F8698 mov r4, #0xb4 lsl r4, r4, #0x1 add r0, r3, r4 ldrb r0, [r0] lsl r0, r0, #0x3 add r0, r0, r1 - ldr r6, ._372 + 12 + ldr r6, ._372 + 12 @ 0x169 add r1, r3, r6 ldrb r1, [r1] ldr r0, [r0] @@ -4016,12 +4016,12 @@ debug_80C53F0: mov r0, #0x0 strb r0, [r1] bl debug_80C643C - ldr r1, ._372 + 16 + ldr r1, ._372 + 16 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._372 + 20 + ldr r1, ._372 + 20 @ debug_80C55E4 b ._375 ._373: .align 2, 0 @@ -4044,14 +4044,14 @@ debug_80C53F0: mov r2, #0x0 mov r3, #0x10 bl BeginNormalPaletteFade - ldr r0, ._376 + ldr r0, ._376 @ debug_80C370C bl SetMainCallback2 - ldr r1, ._376 + 4 + ldr r1, ._376 + 4 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._376 + 8 + ldr r1, ._376 + 8 @ debug_80C373C b ._375 ._377: .align 2, 0 @@ -4067,7 +4067,7 @@ debug_80C53F0: mov r0, #0x5 bl PlaySE bl debug_80C5FFC - ldr r0, ._381 + ldr r0, ._381 @ gUnknown_Debug_2038A1C ldr r0, [r0] bl debug_80C527C add r4, r0, #0 @@ -4080,7 +4080,7 @@ debug_80C53F0: bl Menu_DrawStdWindowFrame cmp r4, #0 beq ._379 @cond_branch - ldr r0, ._381 + 4 + ldr r0, ._381 + 4 @ gUnknown_Debug_083F872A mov r1, #0x4 mov r2, #0x9 bl Menu_PrintText @@ -4091,17 +4091,17 @@ debug_80C53F0: .word gUnknown_Debug_2038A1C .word gUnknown_Debug_083F872A ._379: - ldr r0, ._384 + ldr r0, ._384 @ gUnknown_Debug_083F8720 mov r1, #0x4 mov r2, #0x9 bl Menu_PrintText ._380: - ldr r0, ._384 + 4 + ldr r0, ._384 + 4 @ gTasks lsl r1, r5, #0x2 add r1, r1, r5 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._384 + 8 + ldr r0, ._384 + 8 @ debug_80C5708 str r0, [r1] b ._400 ._385: @@ -4115,7 +4115,7 @@ debug_80C53F0: and r0, r0, r1 cmp r0, #0 beq ._386 @cond_branch - ldr r0, ._388 + ldr r0, ._388 @ gUnknown_Debug_2038A1C ldr r0, [r0] ldr r4, [r0, #0x64] lsl r4, r4, #0x10 @@ -4157,7 +4157,7 @@ debug_80C53F0: and r0, r0, r1 cmp r0, #0 beq ._395 @cond_branch - ldr r2, ._397 + ldr r2, ._397 @ gUnknown_Debug_2038A1C ldr r0, [r2] mov r6, #0xb4 lsl r6, r6, #0x1 @@ -4168,7 +4168,7 @@ debug_80C53F0: sub r0, r0, #0x1 strb r0, [r1] ldr r0, [r2] - ldr r1, ._397 + 4 + ldr r1, ._397 + 4 @ 0x169 add r0, r0, r1 strb r3, [r0] b ._396 @@ -4184,7 +4184,7 @@ debug_80C53F0: and r0, r0, r1 cmp r0, #0 beq ._400 @cond_branch - ldr r3, ._401 + ldr r3, ._401 @ gUnknown_Debug_2038A1C ldr r0, [r3] mov r4, #0xb4 lsl r4, r4, #0x1 @@ -4196,16 +4196,16 @@ debug_80C53F0: mov r1, #0x0 strb r0, [r2] ldr r0, [r3] - ldr r6, ._401 + 4 + ldr r6, ._401 + 4 @ 0x169 add r0, r0, r6 strb r1, [r0] ._396: - ldr r1, ._401 + 8 + ldr r1, ._401 + 8 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._401 + 12 + ldr r1, ._401 + 12 @ debug_80C53C0 ._375: str r1, [r0] ._400: @@ -4231,8 +4231,8 @@ debug_80C55E4: lsl r0, r0, #0x18 lsr r3, r0, #0x18 add r6, r3, #0 - ldr r1, ._405 - ldr r2, ._405 + 4 + ldr r1, ._405 @ gUnknown_Debug_083F8698 + ldr r2, ._405 + 4 @ gUnknown_Debug_2038A1C ldr r0, [r2] mov ip, r0 mov r0, #0xb4 @@ -4241,14 +4241,14 @@ debug_80C55E4: ldrb r0, [r0] lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._405 + 8 + ldr r1, ._405 + 8 @ 0x169 add r1, r1, ip ldrb r1, [r1] ldr r0, [r0] add r0, r0, r1 ldrb r5, [r0] add r7, r5, #0 - ldr r1, ._405 + 12 + ldr r1, ._405 + 12 @ gMain ldrh r4, [r1, #0x2e] mov r0, #0x1 and r0, r0, r4 @@ -4256,12 +4256,12 @@ debug_80C55E4: add r2, r1, #0 cmp r0, #0 beq ._403 @cond_branch - ldr r0, ._405 + 16 + ldr r0, ._405 + 16 @ gTasks lsl r1, r3, #0x2 add r1, r1, r3 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._405 + 20 + ldr r0, ._405 + 20 @ debug_80C53C0 str r0, [r1] b ._422 ._406: @@ -4287,12 +4287,12 @@ debug_80C55E4: add r1, r1, ip ldr r1, [r1] str r1, [r0] - ldr r1, ._409 + ldr r1, ._409 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._409 + 4 + ldr r1, ._409 + 4 @ debug_80C53C0 str r1, [r0] b ._422 ._410: @@ -4319,7 +4319,7 @@ debug_80C55E4: bl debug_80C643C b ._422 ._413: - ldr r0, ._419 + ldr r0, ._419 @ gUnknown_Debug_083F8554 lsl r1, r7, #0x3 add r0, r0, #0x4 add r1, r1, r0 @@ -4380,18 +4380,18 @@ debug_80C5708: push {lr} lsl r0, r0, #0x18 lsr r2, r0, #0x18 - ldr r0, ._424 + ldr r0, ._424 @ gMain ldrh r1, [r0, #0x2e] mov r0, #0x1 and r0, r0, r1 cmp r0, #0 beq ._423 @cond_branch - ldr r0, ._424 + 4 + ldr r0, ._424 + 4 @ gTasks lsl r1, r2, #0x2 add r1, r1, r2 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._424 + 8 + ldr r0, ._424 + 8 @ debug_80C53C0 str r0, [r1] ._423: pop {r0} @@ -4419,11 +4419,11 @@ debug_80C5738: mov r8, r2 cmp r4, #0xfe bne ._426 @cond_branch - ldr r1, ._428 + ldr r1, ._428 @ gUnknown_Debug_083F850A mov r2, #0x7 bl debug_80C689C add r0, r6, #7 - ldr r7, ._428 + 4 + ldr r7, ._428 + 4 @ gUnknown_Debug_2038A1C ldr r1, [r7] add r1, r1, #0xf0 ldr r1, [r1] @@ -4435,7 +4435,7 @@ debug_80C5738: strb r4, [r6, #0x14] add r0, r6, #0 add r0, r0, #0x15 - ldr r1, ._428 + 8 + ldr r1, ._428 + 8 @ gUnknown_Debug_083F8514 mov r2, #0x7 bl debug_80C689C add r0, r6, #0 @@ -4452,7 +4452,7 @@ debug_80C5738: add r0, r0, #0x1 strb r4, [r0] add r0, r0, #0x1 - ldr r1, ._428 + 12 + ldr r1, ._428 + 12 @ gUnknown_Debug_083F851C mov r2, #0x9 bl debug_80C689C add r0, r6, #0 @@ -4475,13 +4475,13 @@ debug_80C5738: ._426: cmp r4, #0xfd bne ._430 @cond_branch - ldr r1, ._432 + ldr r1, ._432 @ gUnknown_Debug_083F8524 add r0, r6, #0 mov r2, #0x9 bl debug_80C689C add r0, r6, #0 add r0, r0, #0x9 - ldr r7, ._432 + 4 + ldr r7, ._432 + 4 @ gUnknown_Debug_2038A1C ldr r1, [r7] add r1, r1, #0xfc ldr r1, [r1] @@ -4493,7 +4493,7 @@ debug_80C5738: strb r4, [r6, #0x16] add r0, r6, #0 add r0, r0, #0x17 - ldr r1, ._432 + 8 + ldr r1, ._432 + 8 @ gUnknown_Debug_083F852D mov r2, #0x9 bl debug_80C689C add r0, r6, #0 @@ -4512,7 +4512,7 @@ debug_80C5738: add r0, r0, #0x1 strb r4, [r0] add r0, r0, #0x1 - ldr r1, ._432 + 12 + ldr r1, ._432 + 12 @ gUnknown_Debug_083F8537 mov r2, #0x9 bl debug_80C689C add r0, r6, #0 @@ -4541,7 +4541,7 @@ debug_80C5738: lsr r1, r0, #0x10 cmp r1, #0xb bls ._434 @cond_branch - ldr r0, ._437 + ldr r0, ._437 @ gUnknown_Debug_083F8554 add r0, r5, r0 ldr r1, [r0] add r0, r6, #0 @@ -4557,7 +4557,7 @@ debug_80C5738: lsr r1, r0, #0x10 cmp r1, #0xff bls ._435 @cond_branch - ldr r0, ._437 + ldr r0, ._437 @ gUnknown_Debug_083F8554 add r0, r0, #0x4 add r0, r5, r0 ldr r0, [r0] @@ -4567,7 +4567,7 @@ debug_80C5738: cmp r4, #0x22 bhi ._436 @cond_branch lsl r0, r4, #0x2 - ldr r1, ._437 + 4 + ldr r1, ._437 + 4 @ add r1, r0, r1 ldr r1, [r1] add r7, r0, #0 @@ -4620,7 +4620,7 @@ debug_80C5738: ._440: add r0, r6, #0 add r0, r0, #0xa - ldr r1, ._477 + ldr r1, ._477 @ gUnknown_Debug_2038A1C mov r9, r1 ldr r1, [r1] add r1, r1, #0x64 @@ -4650,7 +4650,7 @@ debug_80C5738: lsr r0, r0, #0x10 mov r1, #0xb mul r1, r1, r0 - ldr r0, ._477 + 4 + ldr r0, ._477 + 4 @ gSpeciesNames add r1, r1, r0 add r0, r4, #0 mov r2, #0xa @@ -4662,7 +4662,7 @@ debug_80C5738: .word gUnknown_Debug_2038A1C .word gSpeciesNames ._445: - ldr r0, ._483 + ldr r0, ._483 @ gUnknown_Debug_2038A1C ldr r0, [r0] add r0, r0, #0x64 add r0, r0, r7 @@ -4681,7 +4681,7 @@ debug_80C5738: ._480: add r0, r6, #0 add r0, r0, #0xa - ldr r1, ._486 + ldr r1, ._486 @ gUnknown_Debug_083F8546 b ._488 ._487: .align 2, 0 @@ -4690,7 +4690,7 @@ debug_80C5738: ._479: add r0, r6, #0 add r0, r0, #0xa - ldr r1, ._489 + ldr r1, ._489 @ gUnknown_Debug_083F8541 b ._488 ._490: .align 2, 0 @@ -4699,7 +4699,7 @@ debug_80C5738: ._481: add r0, r6, #0 add r0, r0, #0xa - ldr r1, ._492 + ldr r1, ._492 @ gUnknown_Debug_083F8544 ._488: mov r2, #0x2 bl debug_80C689C @@ -4711,7 +4711,7 @@ debug_80C5738: ._450: add r0, r6, #0 add r0, r0, #0xa - ldr r4, ._495 + ldr r4, ._495 @ gUnknown_Debug_2038A1C ldr r1, [r4] add r1, r1, #0x64 add r1, r1, r7 @@ -4736,7 +4736,7 @@ debug_80C5738: ldr r2, [r1] mov r1, #0xd mul r1, r1, r2 - ldr r2, ._495 + 4 + ldr r2, ._495 + 4 @ gMoveNames add r1, r1, r2 b ._494 ._496: @@ -4747,7 +4747,7 @@ debug_80C5738: ._451: add r0, r6, #0 add r0, r0, #0xa - ldr r4, ._499 + ldr r4, ._499 @ gUnknown_Debug_2038A1C ldr r1, [r4] add r1, r1, #0x64 add r1, r1, r7 @@ -4786,7 +4786,7 @@ debug_80C5738: add r0, r5, #0 add r0, r0, #0xe add r0, r6, r0 - ldr r1, ._502 + ldr r1, ._502 @ gUnknown_Debug_083F8541 ._498: mov r2, #0x9 bl debug_80C689C @@ -4797,7 +4797,7 @@ debug_80C5738: .word gUnknown_Debug_083F8541 ._452: add r6, r6, #0xc - ldr r4, ._505 + ldr r4, ._505 @ gUnknown_Debug_2038A1C ldr r0, [r4] ldr r0, [r0, #0x64] lsl r0, r0, #0x10 @@ -4814,7 +4814,7 @@ debug_80C5738: lsr r0, r0, #0x18 mov r1, #0xd mul r1, r1, r0 - ldr r0, ._505 + 4 + ldr r0, ._505 + 4 @ gAbilityNames add r1, r1, r0 add r0, r6, #0 ._494: @@ -4829,8 +4829,8 @@ debug_80C5738: ._474: add r0, r6, #0 add r0, r0, #0xa - ldr r2, ._508 - ldr r1, ._508 + 4 + ldr r2, ._508 @ gUnknown_Debug_083F86E8 + ldr r1, ._508 + 4 @ gUnknown_Debug_2038A1C ldr r1, [r1] add r1, r1, #0x64 add r1, r1, r7 @@ -4847,7 +4847,7 @@ debug_80C5738: ._472: add r0, r6, #0 add r0, r0, #0xc - ldr r1, ._511 + ldr r1, ._511 @ gUnknown_Debug_2038A1C ldr r1, [r1] add r1, r1, #0x64 add r1, r1, r7 @@ -4860,7 +4860,7 @@ debug_80C5738: ._511: .word gUnknown_Debug_2038A1C ._473: - ldr r0, ._515 + ldr r0, ._515 @ gUnknown_Debug_2038A1C ldr r0, [r0] add r0, r0, #0x64 add r0, r0, r7 @@ -4869,7 +4869,7 @@ debug_80C5738: beq ._513 @cond_branch add r0, r6, #0 add r0, r0, #0xa - ldr r1, ._515 + 4 + ldr r1, ._515 + 4 @ gUnknown_Debug_083F854A b ._514 ._516: .align 2, 0 @@ -4879,7 +4879,7 @@ debug_80C5738: ._513: add r0, r6, #0 add r0, r0, #0xa - ldr r1, ._518 + ldr r1, ._518 @ gUnknown_Debug_083F854D ._514: mov r2, #0x4 bl debug_80C689C @@ -4891,8 +4891,8 @@ debug_80C5738: ._446: add r0, r6, #0 add r0, r0, #0xa - ldr r2, ._520 - ldr r1, ._520 + 4 + ldr r2, ._520 @ gNatureNames + ldr r1, ._520 + 4 @ gUnknown_Debug_2038A1C ldr r1, [r1] add r1, r1, #0x64 add r1, r1, r7 @@ -4921,7 +4921,7 @@ debug_80C5738: thumb_func_start debug_80C5B60 debug_80C5B60: lsl r0, r0, #0x18 - ldr r1, ._522 + ldr r1, ._522 @ gUnknown_Debug_2038A1C ldr r1, [r1] lsr r0, r0, #0x16 add r1, r1, #0x64 @@ -4944,7 +4944,7 @@ debug_80C5B74: cmp r2, #0x18 bhi ._540 @cond_branch lsl r0, r2, #0x2 - ldr r1, ._526 + ldr r1, ._526 @ add r1, r0, r1 ldr r1, [r1] add r3, r0, #0 @@ -4980,7 +4980,7 @@ debug_80C5B74: .word ._552 .word ._552 ._540: - ldr r0, ._554 + ldr r0, ._554 @ gUnknown_Debug_2038A1C ldr r0, [r0] lsl r1, r2, #0x2 add r0, r0, #0x64 @@ -4992,7 +4992,7 @@ debug_80C5B74: ._554: .word gUnknown_Debug_2038A1C ._532: - ldr r0, ._557 + ldr r0, ._557 @ gUnknown_Debug_2038A1C ldr r0, [r0] add r0, r0, #0x64 add r0, r0, r3 @@ -5004,7 +5004,7 @@ debug_80C5B74: ._557: .word gUnknown_Debug_2038A1C ._529: - ldr r4, ._560 + ldr r4, ._560 @ gUnknown_Debug_2038A1C ldr r1, [r4] add r0, r1, #0 add r0, r0, #0x64 @@ -5015,9 +5015,9 @@ debug_80C5B74: lsr r0, r0, #0x10 bl NationalPokedexNumToSpecies ldr r5, [r4] - ldr r4, ._560 + 4 + ldr r4, ._560 + 4 @ gExperienceTables lsl r2, r6, #0x2 - ldr r3, ._560 + 8 + ldr r3, ._560 + 8 @ gBaseStats lsl r0, r0, #0x10 lsr r0, r0, #0x10 lsl r1, r0, #0x3 @@ -5041,7 +5041,7 @@ debug_80C5B74: .word gExperienceTables .word gBaseStats ._530: - ldr r0, ._563 + ldr r0, ._563 @ gUnknown_Debug_2038A1C ldr r0, [r0] add r0, r0, #0x64 add r0, r0, r3 @@ -5053,7 +5053,7 @@ debug_80C5B74: ._563: .word gUnknown_Debug_2038A1C ._552: - ldr r0, ._565 + ldr r0, ._565 @ gUnknown_Debug_2038A1C ldr r0, [r0] add r0, r0, #0x64 add r0, r0, r3 @@ -5074,7 +5074,7 @@ debug_80C5B74: debug_80C5C94: push {r4, r5, r6, lr} add sp, sp, #0xfffffff0 - ldr r6, ._567 + ldr r6, ._567 @ gUnknown_Debug_2038A1C ldr r2, [r6] add r0, r2, #0 add r0, r0, #0x98 @@ -5239,7 +5239,7 @@ debug_80C5DEC: add sp, sp, #0xfffffffc mov r0, #0x0 str r0, [sp] - ldr r4, ._569 + ldr r4, ._569 @ gUnknown_Debug_2038A1C ldr r0, [r4] add r2, r0, #0 add r2, r2, #0x6c @@ -5356,7 +5356,7 @@ debug_80C5DEC: thumb_func_start debug_80C5EF4 debug_80C5EF4: push {r4, lr} - ldr r4, ._571 + ldr r4, ._571 @ gUnknown_Debug_2038A1C ldr r0, [r4] add r2, r0, #0 add r2, r2, #0x98 @@ -5477,16 +5477,16 @@ debug_80C5EF4: debug_80C5FFC: push {r4, r5, r6, r7, lr} add sp, sp, #0xffffffe0 - ldr r1, ._578 + ldr r1, ._578 @ gUnknown_Debug_083F8758 add r0, sp, #0x10 mov r2, #0x4 bl memcpy add r7, sp, #0x14 - ldr r1, ._578 + 4 + ldr r1, ._578 + 4 @ gUnknown_Debug_083F875C add r0, r7, #0 mov r2, #0x8 bl memcpy - ldr r5, ._578 + 8 + ldr r5, ._578 + 8 @ gUnknown_Debug_2038A1C ldr r2, [r5] add r0, r2, #0 add r0, r0, #0x98 @@ -5712,7 +5712,7 @@ debug_80C5FFC: add r1, r1, #0xec ldr r2, [r1] lsl r2, r2, #0x3 - ldr r1, ._578 + 12 + ldr r1, ._578 + 12 @ gUnknown_Debug_083F86E8 add r2, r2, r1 mov r1, #0x37 bl SetMonData @@ -5771,12 +5771,12 @@ debug_80C627C: lsl r0, r0, #0x18 lsr r4, r0, #0x18 add r6, r4, #0 - ldr r1, ._584 + ldr r1, ._584 @ gUnknown_Debug_083F7FD4 mov r0, sp mov r2, #0x2 bl memcpy add r5, sp, #0x4 - ldr r1, ._584 + 4 + ldr r1, ._584 + 4 @ gUnknown_Debug_083F8764 add r0, r5, #0 mov r2, #0x2 bl memcpy @@ -5797,9 +5797,9 @@ debug_80C627C: beq ._586 @cond_branch b ._595 ._582: - ldr r0, ._589 + ldr r0, ._589 @ gUnknown_Debug_2038A1C ldr r0, [r0] - ldr r1, ._589 + 4 + ldr r1, ._589 + 4 @ 0x169 add r0, r0, r1 b ._588 ._590: @@ -5808,12 +5808,12 @@ debug_80C627C: .word gUnknown_Debug_2038A1C .word 0x169 ._580: - ldr r4, ._593 + ldr r4, ._593 @ gUnknown_Debug_2038A1C ldr r3, [r4] - ldr r1, ._593 + 4 + ldr r1, ._593 + 4 @ 0x169 add r0, r3, r1 ldrb r2, [r0] - ldr r1, ._593 + 8 + ldr r1, ._593 + 8 @ gUnknown_Debug_083F8698 mov r6, #0xb4 lsl r6, r6, #0x1 add r0, r3, r6 @@ -5833,7 +5833,7 @@ debug_80C627C: mov r1, #0x1 bl Menu_PrintText ldr r0, [r4] - ldr r2, ._593 + 4 + ldr r2, ._593 + 4 @ 0x169 add r1, r0, r2 ldrb r0, [r1] add r0, r0, #0x1 @@ -5858,9 +5858,9 @@ debug_80C627C: .word 0x169 .word gUnknown_Debug_083F8698 ._586: - ldr r4, ._596 + ldr r4, ._596 @ gUnknown_Debug_2038A1C ldr r0, [r4] - ldr r2, ._596 + 4 + ldr r2, ._596 + 4 @ 0x169 add r1, r0, r2 ldrb r0, [r1] cmp r0, #0 @@ -5875,7 +5875,7 @@ debug_80C627C: mov r1, #0x1 bl Menu_PrintText ldr r0, [r4] - ldr r2, ._596 + 4 + ldr r2, ._596 + 4 @ 0x169 add r1, r0, r2 ldrb r0, [r1] sub r0, r0, #0x1 @@ -5914,8 +5914,8 @@ debug_80C6384: mov r3, #0x13 bl Menu_DrawStdWindowFrame mov r5, #0x0 - ldr r3, ._600 - ldr r1, ._600 + 4 + ldr r3, ._600 @ gUnknown_Debug_083F8698 + ldr r1, ._600 + 4 @ gUnknown_Debug_2038A1C ldr r0, [r1] mov r2, #0xb4 lsl r2, r2, #0x1 @@ -5928,7 +5928,7 @@ debug_80C6384: cmp r0, #0xff beq ._598 @cond_branch add r4, r1, #0 - ldr r0, ._600 + 8 + ldr r0, ._600 + 8 @ 0x16b mov r9, r0 mov r8, r3 add r7, r2, #0 @@ -5943,7 +5943,7 @@ debug_80C6384: add r0, r0, r1 strb r6, [r0] ldr r0, [r4] - ldr r2, ._600 + 12 + ldr r2, ._600 + 12 @ 0x16d add r0, r0, r2 strb r6, [r0] ldr r1, [r4] @@ -6008,8 +6008,8 @@ debug_80C643C: mov r3, #0x12 bl Menu_BlankWindowRect mov r5, #0x0 - ldr r6, ._605 - ldr r1, ._605 + 4 + ldr r6, ._605 @ gUnknown_Debug_083F8698 + ldr r1, ._605 + 4 @ gUnknown_Debug_2038A1C ldr r0, [r1] mov r3, #0xb4 lsl r3, r3, #0x1 @@ -6026,7 +6026,7 @@ debug_80C643C: mov r8, r0 ._607: ldr r0, [r4] - ldr r7, ._605 + 8 + ldr r7, ._605 + 8 @ 0x16b add r2, r0, r7 mov r0, #0xfc strb r0, [r2] @@ -6037,12 +6037,12 @@ debug_80C643C: mov r7, r8 strb r7, [r0] ldr r2, [r4] - ldr r7, ._605 + 12 + ldr r7, ._605 + 12 @ 0x169 add r0, r2, r7 ldrb r0, [r0] cmp r5, r0 bne ._603 @cond_branch - ldr r0, ._605 + 16 + ldr r0, ._605 + 16 @ 0x16d add r2, r2, r0 mov r0, #0x2 strb r0, [r2] @@ -6069,7 +6069,7 @@ debug_80C643C: .word 0x169 .word 0x16d ._603: - ldr r3, ._608 + ldr r3, ._608 @ 0x16d add r0, r2, r3 mov r7, r8 strb r7, [r0] @@ -6077,7 +6077,7 @@ debug_80C643C: mov r2, #0xb7 lsl r2, r2, #0x1 add r0, r1, r2 - ldr r2, ._608 + 4 + ldr r2, ._608 + 4 @ gUnknown_Debug_083F8698 sub r3, r3, #0x5 add r1, r1, r3 ldrb r1, [r1] @@ -6090,7 +6090,7 @@ debug_80C643C: bl debug_80C5738 ._604: ldr r0, [r4] - ldr r7, ._608 + 8 + ldr r7, ._608 + 8 @ 0x16b add r0, r0, r7 lsl r2, r5, #0x19 mov r1, #0xa0 @@ -6102,7 +6102,7 @@ debug_80C643C: add r0, r5, #1 lsl r0, r0, #0x10 lsr r5, r0, #0x10 - ldr r6, ._608 + 4 + ldr r6, ._608 + 4 @ gUnknown_Debug_083F8698 add r1, r4, #0 ldr r0, [r4] mov r3, #0xb4 @@ -6140,9 +6140,9 @@ debug_80C6544: lsl r0, r0, #0x18 lsr r0, r0, #0x18 mov r9, r0 - ldr r0, ._614 + ldr r0, ._614 @ gUnknown_Debug_083F8698 mov r8, r0 - ldr r6, ._614 + 4 + ldr r6, ._614 + 4 @ gUnknown_Debug_2038A1C ldr r1, [r6] mov r5, #0xb4 lsl r5, r5, #0x1 @@ -6150,7 +6150,7 @@ debug_80C6544: ldrb r0, [r0] lsl r0, r0, #0x3 add r0, r0, r8 - ldr r4, ._614 + 8 + ldr r4, ._614 + 8 @ 0x169 add r1, r1, r4 ldrb r1, [r1] ldr r0, [r0] @@ -6158,7 +6158,7 @@ debug_80C6544: ldrb r0, [r0] bl debug_80C5B60 add r7, r0, #0 - ldr r2, ._614 + 12 + ldr r2, ._614 + 12 @ gUnknown_Debug_083F8554 ldr r3, [r6] add r5, r3, r5 ldrb r0, [r5] @@ -6175,7 +6175,7 @@ debug_80C6544: ldr r1, [r0] ldr r5, [r1] ldr r4, [r1, #0x4] - ldr r2, ._614 + 16 + ldr r2, ._614 + 16 @ gUnknown_Debug_083F8768 mov r6, #0xb5 lsl r6, r6, #0x1 add r0, r3, r6 @@ -6225,8 +6225,8 @@ debug_80C6544: ._622: add r7, r4, #0 ._623: - ldr r1, ._624 - ldr r0, ._624 + 4 + ldr r1, ._624 @ gUnknown_Debug_083F8698 + ldr r0, ._624 + 4 @ gUnknown_Debug_2038A1C ldr r2, [r0] mov r3, #0xb4 lsl r3, r3, #0x1 @@ -6234,7 +6234,7 @@ debug_80C6544: ldrb r0, [r0] lsl r0, r0, #0x3 add r0, r0, r1 - ldr r6, ._624 + 8 + ldr r6, ._624 + 8 @ 0x169 add r1, r2, r6 ldrb r1, [r1] ldr r0, [r0] @@ -6275,7 +6275,7 @@ debug_80C6630: add r4, r4, #0x1 cmp r2, #0x2 bne ._626 @cond_branch - ldr r0, ._629 + ldr r0, ._629 @ gUnknown_Debug_2038A1C ldr r0, [r0] mov r5, #0xb5 lsl r5, r5, #0x1 @@ -6321,7 +6321,7 @@ debug_80C6678: cmp r0, #0x9 bhi ._644 @cond_branch lsl r0, r0, #0x2 - ldr r1, ._633 + ldr r1, ._633 @ add r0, r0, r1 ldr r0, [r0] mov pc, r0 @@ -6343,7 +6343,7 @@ debug_80C6678: ._644: mov r0, r9 add r4, r0, r7 - ldr r5, ._645 + ldr r5, ._645 @ 0x3b9aca00 add r0, r6, #0 add r1, r5, #0 bl __udivsi3 @@ -6364,7 +6364,7 @@ debug_80C6678: ._643: mov r1, r9 add r4, r1, r7 - ldr r5, ._645 + 4 + ldr r5, ._645 + 4 @ 0x5f5e100 add r0, r6, #0 add r1, r5, #0 bl __udivsi3 @@ -6385,7 +6385,7 @@ debug_80C6678: ._642: mov r0, r9 add r4, r0, r7 - ldr r5, ._645 + 8 + ldr r5, ._645 + 8 @ 0x989680 add r0, r6, #0 add r1, r5, #0 bl __udivsi3 @@ -6406,7 +6406,7 @@ debug_80C6678: ._641: mov r1, r9 add r4, r1, r7 - ldr r5, ._645 + 12 + ldr r5, ._645 + 12 @ 0xf4240 add r0, r6, #0 add r1, r5, #0 bl __udivsi3 @@ -6427,7 +6427,7 @@ debug_80C6678: ._640: mov r0, r9 add r4, r0, r7 - ldr r5, ._645 + 16 + ldr r5, ._645 + 16 @ 0x186a0 add r0, r6, #0 add r1, r5, #0 bl __udivsi3 @@ -6448,7 +6448,7 @@ debug_80C6678: ._639: mov r1, r9 add r4, r1, r7 - ldr r5, ._645 + 20 + ldr r5, ._645 + 20 @ 0x2710 add r0, r6, #0 add r1, r5, #0 bl __udivsi3 @@ -6683,19 +6683,19 @@ InitSeePokemonGraphics: push {r4, r5, r6, lr} add sp, sp, #0xfffffff8 bl debug_80C35DC - ldr r1, ._659 - ldr r2, ._659 + 4 - ldr r0, ._659 + 8 + ldr r1, ._659 @ byte_83F88EC + ldr r2, ._659 + 4 @ 0x600e000 + ldr r0, ._659 + 8 @ 0x40000d4 str r1, [r0] str r2, [r0, #0x4] - ldr r1, ._659 + 12 + ldr r1, ._659 + 12 @ 0x80000400 str r1, [r0, #0x8] ldr r0, [r0, #0x8] - ldr r0, ._659 + 16 + ldr r0, ._659 + 16 @ word_83F888C mov r1, #0x80 mov r2, #0x60 bl LoadPalette - ldr r1, ._659 + 20 + ldr r1, ._659 + 20 @ 0x7fff add r0, sp, #0x4 strh r1, [r0] mov r1, #0x0 @@ -6709,7 +6709,7 @@ InitSeePokemonGraphics: mov r2, #0x10 mov r3, #0x0 bl BeginNormalPaletteFade - ldr r0, ._659 + 24 + ldr r0, ._659 + 24 @ 0x4000040 mov r6, #0x0 strh r5, [r0] add r0, r0, #0x4 @@ -6718,7 +6718,7 @@ InitSeePokemonGraphics: strh r5, [r0] add r0, r0, #0x4 strh r5, [r0] - ldr r1, ._659 + 28 + ldr r1, ._659 + 28 @ 0x4000048 mov r0, #0x3f strh r0, [r1] add r1, r1, #0x2 @@ -6727,31 +6727,31 @@ InitSeePokemonGraphics: add r1, r1, #0x6 mov r0, #0xf1 strh r0, [r1] - ldr r0, ._659 + 32 + ldr r0, ._659 + 32 @ 0x4000052 strh r5, [r0] add r1, r1, #0x4 mov r0, #0x7 strh r0, [r1] - ldr r3, ._659 + 36 + ldr r3, ._659 + 36 @ 0x4000208 ldrh r2, [r3] strh r5, [r3] - ldr r4, ._659 + 40 + ldr r4, ._659 + 40 @ 0x4000200 ldrh r0, [r4] mov r1, #0x1 orr r0, r0, r1 strh r0, [r4] strh r2, [r3] - ldr r0, ._659 + 44 + ldr r0, ._659 + 44 @ debug_80C3758 bl SetVBlankCallback - ldr r0, ._659 + 48 + ldr r0, ._659 + 48 @ debug_80C370C bl SetMainCallback2 bl sub_809D51C - ldr r1, ._659 + 52 - ldr r2, ._659 + 56 + ldr r1, ._659 + 52 @ 0x4000008 + ldr r2, ._659 + 56 @ 0x1f0b add r0, r2, #0 strh r0, [r1] add r1, r1, #0x2 - ldr r2, ._659 + 60 + ldr r2, ._659 + 60 @ 0x1e0a add r0, r2, #0 strh r0, [r1] sub r1, r1, #0xa @@ -6759,13 +6759,13 @@ InitSeePokemonGraphics: lsl r2, r2, #0x6 add r0, r2, #0 strh r0, [r1] - ldr r0, ._659 + 64 + ldr r0, ._659 + 64 @ debug_80C6B00 mov r1, #0x0 bl CreateTask - ldr r1, ._659 + 68 - ldr r0, ._659 + 72 + ldr r1, ._659 + 68 @ gUnknown_Debug_2038A20 + ldr r0, ._659 + 72 @ 0x2018000 str r0, [r1] - ldr r1, ._659 + 76 + ldr r1, ._659 + 76 @ 0x115 strh r1, [r0] strb r6, [r0, #0x2] strb r6, [r0, #0x3] @@ -6773,7 +6773,7 @@ InitSeePokemonGraphics: strb r6, [r0, #0x7] strb r6, [r0, #0xa] strb r6, [r0, #0x8] - ldr r4, ._659 + 80 + ldr r4, ._659 + 80 @ gSpriteTemplate_83F8874 add r0, r4, #0 mov r1, #0x6c mov r2, #0x74 @@ -6782,7 +6782,7 @@ InitSeePokemonGraphics: add r1, r0, #0 lsl r1, r1, #0x18 lsr r1, r1, #0x18 - ldr r6, ._659 + 84 + ldr r6, ._659 + 84 @ gSprites lsl r0, r1, #0x4 add r0, r0, r1 lsl r0, r0, #0x2 @@ -6845,7 +6845,7 @@ InitSeePokemonGraphics: .word 0x1e0a .word debug_80C6B00+1 .word gUnknown_Debug_2038A20 - .word +0x2018000 + .word 0x2018000 .word 0x115 .word gSpriteTemplate_83F8874 .word gSprites @@ -6860,7 +6860,7 @@ debug_80C6B00: add sp, sp, #0xffffffec lsl r0, r0, #0x18 lsr r7, r0, #0x18 - ldr r1, ._666 + ldr r1, ._666 @ gUnknown_Debug_083F8815 mov r0, sp mov r2, #0x12 bl memcpy @@ -6884,15 +6884,15 @@ debug_80C6B00: mov r2, #0x1d mov r3, #0x7 bl Menu_DrawStdWindowFrame - ldr r0, ._666 + 4 + ldr r0, ._666 + 4 @ gUnknown_Debug_083F87D0 mov r1, #0x11 mov r2, #0x1 bl Menu_PrintText - ldr r0, ._666 + 8 + ldr r0, ._666 + 8 @ gUnknown_Debug_083F87D8 mov r1, #0x1b mov r2, #0x1 bl Menu_PrintText - ldr r0, ._666 + 12 + ldr r0, ._666 + 12 @ gUnknown_Debug_083F87E0 mov r1, #0x11 mov r2, #0x5 bl Menu_PrintText @@ -6902,8 +6902,8 @@ debug_80C6B00: mov r3, #0xc bl Menu_DrawStdWindowFrame mov r2, #0x0 - ldr r4, ._666 + 16 - ldr r0, ._666 + 20 + ldr r4, ._666 + 16 @ 0x600fa56 + ldr r0, ._666 + 20 @ 0xa311 add r3, r0, #0 ._661: lsl r0, r2, #0x1 @@ -6916,11 +6916,11 @@ debug_80C6B00: cmp r2, #0xe bls ._661 @cond_branch mov r2, #0x0 - ldr r5, ._666 + 24 + ldr r5, ._666 + 24 @ gUnknown_Debug_083F87F4 lsl r6, r7, #0x2 mov r8, r6 - ldr r4, ._666 + 28 - ldr r0, ._666 + 32 + ldr r4, ._666 + 28 @ 0x600f256 + ldr r0, ._666 + 32 @ 0x8301 add r3, r0, #0 ._662: lsl r0, r2, #0x1 @@ -6945,7 +6945,7 @@ debug_80C6B00: mov r0, #0x23 strb r0, [r1] mov r2, #0x0 - ldr r4, ._666 + 36 + ldr r4, ._666 + 36 @ 0x600f396 mov r5, #0x93 lsl r5, r5, #0x8 add r3, r5, #0 @@ -6966,8 +6966,8 @@ debug_80C6B00: mov r0, #0x24 strb r0, [r1] mov r2, #0x0 - ldr r5, ._666 + 40 - ldr r4, ._666 + 44 + ldr r5, ._666 + 40 @ gUnknown_Debug_083F8801 + ldr r4, ._666 + 44 @ 0x600f3d6 mov r0, #0x93 lsl r0, r0, #0x8 add r3, r0, #0 @@ -6988,7 +6988,7 @@ debug_80C6B00: mov r0, #0x25 strb r0, [r1] mov r2, #0x0 - ldr r4, ._666 + 48 + ldr r4, ._666 + 48 @ 0x600f416 mov r0, #0x93 lsl r0, r0, #0x8 add r3, r0, #0 @@ -7009,20 +7009,20 @@ debug_80C6B00: mov r1, #0xf mov r2, #0x11 bl Menu_PrintText - ldr r1, ._666 + 52 - ldr r2, ._666 + 56 + ldr r1, ._666 + 52 @ 0x4000040 + ldr r2, ._666 + 56 @ 0x51ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r5, ._666 + 60 + ldr r5, ._666 + 60 @ 0x699f add r0, r5, #0 strh r0, [r1] - ldr r1, ._666 + 64 + ldr r1, ._666 + 64 @ gTasks mov r6, r8 add r0, r6, r7 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._666 + 68 + ldr r1, ._666 + 68 @ debug_80C6CB8 str r1, [r0] add sp, sp, #0x14 pop {r3} @@ -7066,18 +7066,18 @@ debug_80C6CB8: lsl r0, r0, #0x18 lsr r0, r0, #0x18 mov sl, r0 - ldr r5, ._668 + ldr r5, ._668 @ gUnknown_Debug_2038A20 ldr r4, [r5] ldrh r2, [r4] lsl r0, r2, #0x3 - ldr r1, ._668 + 4 + ldr r1, ._668 + 4 @ gMonFrontPicTable add r0, r0, r1 - ldr r1, ._668 + 8 + ldr r1, ._668 + 8 @ gMonFrontPicCoords lsl r2, r2, #0x2 add r2, r2, r1 ldrb r1, [r2] ldrb r2, [r2, #0x1] - ldr r3, ._668 + 12 + ldr r3, ._668 + 12 @ gUnknown_081FAF4C mov r8, r3 ldr r6, [r3] str r6, [sp, #0x8] @@ -7090,14 +7090,14 @@ debug_80C6CB8: ldr r0, [r5] ldrh r0, [r0] lsl r0, r0, #0x3 - ldr r7, ._668 + 16 + ldr r7, ._668 + 16 @ gMonPaletteTable add r0, r0, r7 bl LoadCompressedObjectPalette ldr r0, [r5] ldrh r0, [r0] mov r1, #0x1 bl GetMonSpriteTemplate_803C56C - ldr r0, ._668 + 20 + ldr r0, ._668 + 20 @ gUnknown_02024E8C mov r1, #0x28 mov r2, #0x28 mov r3, #0x0 @@ -7109,16 +7109,16 @@ debug_80C6CB8: lsl r0, r1, #0x4 add r0, r0, r1 lsl r0, r0, #0x2 - ldr r1, ._668 + 24 + ldr r1, ._668 + 24 @ gSprites add r0, r0, r1 - ldr r3, ._668 + 28 + ldr r3, ._668 + 28 @ debug_69 mov r9, r3 str r3, [r0] ldrb r0, [r2, #0x2] lsl r1, r0, #0x4 add r1, r1, r0 lsl r1, r1, #0x2 - ldr r6, ._668 + 32 + ldr r6, ._668 + 32 @ gSprites add r1, r1, r6 ldrb r2, [r1, #0x5] mov r6, #0xd @@ -7129,9 +7129,9 @@ debug_80C6CB8: ldr r4, [r5] ldrh r2, [r4] lsl r0, r2, #0x3 - ldr r1, ._668 + 36 + ldr r1, ._668 + 36 @ gMonBackPicTable add r0, r0, r1 - ldr r1, ._668 + 40 + ldr r1, ._668 + 40 @ gMonBackPicCoords lsl r2, r2, #0x2 add r2, r2, r1 ldrb r1, [r2] @@ -7146,14 +7146,14 @@ debug_80C6CB8: ldr r0, [r5] ldrh r0, [r0] lsl r0, r0, #0x3 - ldr r1, ._668 + 16 + ldr r1, ._668 + 16 @ gMonPaletteTable add r0, r0, r1 bl LoadCompressedObjectPalette ldr r0, [r5] ldrh r0, [r0] mov r1, #0x2 bl GetMonSpriteTemplate_803C56C - ldr r0, ._668 + 20 + ldr r0, ._668 + 20 @ gUnknown_02024E8C mov r1, #0x28 mov r2, #0x78 mov r3, #0x0 @@ -7165,7 +7165,7 @@ debug_80C6CB8: lsl r0, r1, #0x4 add r0, r0, r1 lsl r0, r0, #0x2 - ldr r3, ._668 + 24 + ldr r3, ._668 + 24 @ gSprites add r0, r0, r3 mov r7, r9 str r7, [r0] @@ -7173,14 +7173,14 @@ debug_80C6CB8: lsl r0, r1, #0x4 add r0, r0, r1 lsl r0, r0, #0x2 - ldr r1, ._668 + 32 + ldr r1, ._668 + 32 @ gSprites add r0, r0, r1 ldrb r1, [r0, #0x5] and r6, r6, r1 strb r6, [r0, #0x5] ldr r0, [r5] ldrh r0, [r0] - ldr r1, ._668 + 44 + ldr r1, ._668 + 44 @ sub_809D62C mov r2, #0x0 str r2, [sp] str r2, [sp, #0x4] @@ -7198,20 +7198,20 @@ debug_80C6CB8: lsl r2, r2, #0x2 mov r1, #0x2 bl sub_8091738 - ldr r1, ._668 + 48 - ldr r3, ._668 + 52 + ldr r1, ._668 + 48 @ 0x600f858 + ldr r3, ._668 + 52 @ 0xf3fc add r0, r3, #0 strh r0, [r1] add r1, r1, #0x2 - ldr r6, ._668 + 56 + ldr r6, ._668 + 56 @ 0xf3fd add r0, r6, #0 strh r0, [r1] add r1, r1, #0x3e - ldr r7, ._668 + 60 + ldr r7, ._668 + 60 @ 0xf3fe add r0, r7, #0 strh r0, [r1] add r1, r1, #0x2 - ldr r2, ._668 + 64 + ldr r2, ._668 + 64 @ 0xf3ff add r0, r2, #0 strh r0, [r1] ldr r0, [r5] @@ -7229,7 +7229,7 @@ debug_80C6CB8: lsl r0, r1, #0x4 add r0, r0, r1 lsl r0, r0, #0x2 - ldr r3, ._668 + 32 + ldr r3, ._668 + 32 @ gSprites add r0, r0, r3 ldrb r0, [r0, #0x5] lsr r0, r0, #0x4 @@ -7237,9 +7237,9 @@ debug_80C6CB8: ldr r0, [r5] ldrb r0, [r0, #0x6] lsl r0, r0, #0x5 - ldr r4, ._668 + 68 + ldr r4, ._668 + 68 @ gPlttBufferUnfaded add r0, r0, r4 - ldr r6, ._668 + 72 + ldr r6, ._668 + 72 @ 0xffffff00 add r1, r4, r6 mov r2, #0x10 bl CpuSet @@ -7247,16 +7247,16 @@ debug_80C6CB8: ldrb r0, [r0, #0x6] lsl r0, r0, #0x5 add r0, r0, r4 - ldr r1, ._668 + 76 + ldr r1, ._668 + 76 @ gPlttBufferFaded mov r2, #0x10 bl CpuSet - ldr r1, ._668 + 80 + ldr r1, ._668 + 80 @ gTasks mov r7, sl lsl r0, r7, #0x2 add r0, r0, sl lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._668 + 84 + ldr r1, ._668 + 84 @ debug_80C6EE8 str r1, [r0] ldr r0, [r5] mov r1, #0x0 @@ -7308,14 +7308,14 @@ debug_80C6EE8: add r6, r0, #0 lsl r6, r6, #0x18 lsr r6, r6, #0x18 - ldr r4, ._670 - ldr r5, ._670 + 4 + ldr r4, ._670 @ gPlttBufferUnfaded + ldr r5, ._670 + 4 @ gUnknown_Debug_2038A20 ldr r1, [r5] add r1, r1, #0x10 add r0, r4, #0 mov r2, #0x10 bl CpuSet - ldr r0, ._670 + 8 + ldr r0, ._670 + 8 @ 0xffffff00 add r4, r4, r0 ldr r3, [r5] ldrb r0, [r3, #0x7] @@ -7336,7 +7336,7 @@ debug_80C6EE8: lsl r1, r1, #0x2 and r1, r1, r4 ldrh r2, [r3, #0xc] - ldr r0, ._670 + 12 + ldr r0, ._670 + 12 @ 0xfffffc1f and r0, r0, r2 orr r0, r0, r1 strh r0, [r3, #0xc] @@ -7362,7 +7362,7 @@ debug_80C6EE8: mov r2, #0xa mov r3, #0x2 bl debug_80C68CC - ldr r0, ._670 + 16 + ldr r0, ._670 + 16 @ gUnknown_Debug_083F8813 mov r1, #0xd mov r2, #0xa bl Menu_PrintText @@ -7371,12 +7371,12 @@ debug_80C6EE8: mov r2, #0xa mov r3, #0x4 bl debug_80C68CC - ldr r1, ._670 + 20 + ldr r1, ._670 + 20 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._670 + 24 + ldr r1, ._670 + 24 @ debug_80C6FA8 str r1, [r0] pop {r4, r5, r6} pop {r0} @@ -7400,7 +7400,7 @@ debug_80C6FA8: add sp, sp, #0xfffffffc lsl r0, r0, #0x18 lsr r6, r0, #0x18 - ldr r1, ._674 + ldr r1, ._674 @ gMain ldrh r2, [r1, #0x2e] mov r0, #0x2 and r0, r0, r2 @@ -7416,14 +7416,14 @@ debug_80C6FA8: mov r2, #0x0 mov r3, #0x10 bl BeginNormalPaletteFade - ldr r0, ._674 + 4 + ldr r0, ._674 + 4 @ debug_80C370C bl SetMainCallback2 - ldr r1, ._674 + 8 + ldr r1, ._674 + 8 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._674 + 12 + ldr r1, ._674 + 12 @ debug_80C373C str r1, [r0] b ._703 ._675: @@ -7440,7 +7440,7 @@ debug_80C6FA8: and r0, r0, r1 cmp r0, #0 beq ._676 @cond_branch - ldr r4, ._678 + ldr r4, ._678 @ gUnknown_Debug_2038A20 ldr r0, [r4] ldrh r1, [r0] mov r0, #0x0 @@ -7455,7 +7455,7 @@ debug_80C6FA8: and r0, r0, r1 cmp r0, #0 beq ._680 @cond_branch - ldr r4, ._682 + ldr r4, ._682 @ gUnknown_Debug_2038A20 ldr r0, [r4] ldrh r1, [r0] mov r0, #0x1 @@ -7463,12 +7463,12 @@ debug_80C6FA8: bl debug_80C3878 ldr r1, [r4] strh r0, [r1] - ldr r1, ._682 + 4 + ldr r1, ._682 + 4 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._682 + 8 + ldr r1, ._682 + 8 @ debug_80C71FC str r1, [r0] b ._703 ._683: @@ -7482,24 +7482,24 @@ debug_80C6FA8: and r3, r3, r2 cmp r3, #0 beq ._684 @cond_branch - ldr r0, ._686 + ldr r0, ._686 @ gUnknown_Debug_2038A20 ldr r1, [r0] mov r0, #0x1 strb r0, [r1, #0x5] - ldr r1, ._686 + 4 - ldr r2, ._686 + 8 + ldr r1, ._686 + 4 @ 0x4000040 + ldr r2, ._686 + 8 @ 0x51ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._686 + 12 + ldr r2, ._686 + 12 @ 0x4167 add r0, r2, #0 strh r0, [r1] - ldr r1, ._686 + 16 + ldr r1, ._686 + 16 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._686 + 20 + ldr r1, ._686 + 20 @ debug_80C7294 str r1, [r0] b ._703 ._687: @@ -7516,13 +7516,13 @@ debug_80C6FA8: and r0, r0, r1 cmp r0, #0 beq ._689 @cond_branch - ldr r1, ._691 + ldr r1, ._691 @ gUnknown_Debug_2038A20 ldr r2, [r1] ldrb r0, [r2, #0x7] cmp r0, #0xd bhi ._689 @cond_branch lsl r0, r0, #0x1 - ldr r2, ._691 + 4 + ldr r2, ._691 + 4 @ 0x5000102 add r0, r0, r2 strh r3, [r0] ldr r1, [r1] @@ -7541,13 +7541,13 @@ debug_80C6FA8: and r0, r0, r1 cmp r0, #0 beq ._694 @cond_branch - ldr r2, ._696 + ldr r2, ._696 @ gUnknown_Debug_2038A20 ldr r1, [r2] ldrb r0, [r1, #0x7] cmp r0, #0 beq ._694 @cond_branch lsl r0, r0, #0x1 - ldr r1, ._696 + 4 + ldr r1, ._696 + 4 @ 0x5000102 add r0, r0, r1 mov r1, #0x0 strh r1, [r0] @@ -7567,7 +7567,7 @@ debug_80C6FA8: and r0, r0, r1 cmp r0, #0 beq ._698 @cond_branch - ldr r4, ._701 + ldr r4, ._701 @ gUnknown_Debug_2038A20 ldr r2, [r4] ldrb r0, [r2, #0x9] mov r1, #0x1 @@ -7610,13 +7610,13 @@ debug_80C6FA8: mov r2, #0x20 bl LoadCompressedPalette ._700: - ldr r5, ._704 + ldr r5, ._704 @ gUnknown_Debug_2038A20 ldr r0, [r5] ldrb r0, [r0, #0x6] lsl r0, r0, #0x5 - ldr r4, ._704 + 4 + ldr r4, ._704 + 4 @ gPlttBufferUnfaded add r0, r0, r4 - ldr r2, ._704 + 8 + ldr r2, ._704 + 8 @ 0xffffff00 add r1, r4, r2 mov r2, #0x10 bl CpuSet @@ -7624,16 +7624,16 @@ debug_80C6FA8: ldrb r0, [r0, #0x6] lsl r0, r0, #0x5 add r0, r0, r4 - ldr r1, ._704 + 12 + ldr r1, ._704 + 12 @ gPlttBufferFaded mov r2, #0x10 bl CpuSet ._695: - ldr r1, ._704 + 16 + ldr r1, ._704 + 16 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._704 + 20 + ldr r1, ._704 + 20 @ debug_80C6EE8 str r1, [r0] b ._703 ._705: @@ -7651,13 +7651,13 @@ debug_80C6FA8: cmp r0, #0 beq ._706 @cond_branch bl StopCryAndClearCrySongs - ldr r0, ._707 + ldr r0, ._707 @ gUnknown_Debug_2038A20 ldr r0, [r0] ldrh r0, [r0] mov r1, #0x0 bl PlayCry1 ._706: - ldr r2, ._707 + ldr r2, ._707 @ gUnknown_Debug_2038A20 ldr r1, [r2] ldrb r0, [r1, #0x8] add r0, r0, #0x4 @@ -7670,9 +7670,9 @@ debug_80C6FA8: ldr r0, [r2] ldrb r1, [r0, #0x7] lsl r1, r1, #0x1 - ldr r2, ._707 + 4 + ldr r2, ._707 + 4 @ 0x5000142 add r1, r1, r2 - ldr r2, ._707 + 8 + ldr r2, ._707 + 8 @ gUnknown_Debug_083F8790 ldrb r0, [r0, #0x8] lsl r0, r0, #0x1 add r0, r0, r2 @@ -7698,8 +7698,8 @@ debug_80C71FC: add r5, r0, #0 lsl r5, r5, #0x18 lsr r5, r5, #0x18 - ldr r6, ._709 - ldr r4, ._709 + 4 + ldr r6, ._709 @ gSprites + ldr r4, ._709 + 4 @ gUnknown_Debug_2038A20 ldr r0, [r4] ldrb r1, [r0, #0x2] lsl r0, r1, #0x4 @@ -7745,12 +7745,12 @@ debug_80C71FC: lsl r0, r0, #0x2 add r0, r0, r6 bl sub_809D510 - ldr r1, ._709 + 8 + ldr r1, ._709 + 8 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._709 + 12 + ldr r1, ._709 + 12 @ debug_80C6CB8 str r1, [r0] pop {r4, r5, r6} pop {r0} @@ -7770,23 +7770,23 @@ debug_80C7294: push {r4, r5, r6, r7, lr} lsl r0, r0, #0x18 lsr r7, r0, #0x18 - ldr r0, ._713 + ldr r0, ._713 @ gMain ldrh r2, [r0, #0x2e] mov r1, #0x1 and r1, r1, r2 add r3, r0, #0 cmp r1, #0 beq ._711 @cond_branch - ldr r0, ._713 + 4 + ldr r0, ._713 + 4 @ gUnknown_Debug_2038A20 ldr r1, [r0] mov r0, #0x0 strb r0, [r1, #0x5] - ldr r1, ._713 + 8 - ldr r2, ._713 + 12 + ldr r1, ._713 + 8 @ 0x4000040 + ldr r2, ._713 + 12 @ 0x51ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._713 + 16 + ldr r2, ._713 + 16 @ 0x699f add r0, r2, #0 strh r0, [r1] b ._712 @@ -7803,26 +7803,26 @@ debug_80C7294: and r0, r0, r2 cmp r0, #0 beq ._715 @cond_branch - ldr r6, ._717 + ldr r6, ._717 @ gUnknown_Debug_2038A20 ldr r0, [r6] strb r1, [r0, #0x5] - ldr r1, ._717 + 4 - ldr r2, ._717 + 8 + ldr r1, ._717 + 4 @ 0x4000040 + ldr r2, ._717 + 8 @ 0x51ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._717 + 12 + ldr r2, ._717 + 12 @ 0x699f add r0, r2, #0 strh r0, [r1] ldr r0, [r6] add r0, r0, #0x10 - ldr r4, ._717 + 16 + ldr r4, ._717 + 16 @ gPlttBufferUnfaded add r1, r4, #0 mov r2, #0x10 bl CpuSet ldr r0, [r6] add r0, r0, #0x10 - ldr r5, ._717 + 20 + ldr r5, ._717 + 20 @ gPlttBufferFaded add r1, r5, #0 mov r2, #0x10 bl CpuSet @@ -7849,12 +7849,12 @@ debug_80C7294: mov r2, #0x10 bl CpuSet ._712: - ldr r1, ._717 + 24 + ldr r1, ._717 + 24 @ gTasks lsl r0, r7, #0x2 add r0, r0, r7 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._717 + 28 + ldr r1, ._717 + 28 @ debug_80C6EE8 str r1, [r0] b ._754 ._718: @@ -7874,7 +7874,7 @@ debug_80C7294: and r0, r0, r1 cmp r0, #0 beq ._720 @cond_branch - ldr r0, ._722 + ldr r0, ._722 @ gUnknown_Debug_2038A20 ldr r1, [r0] ldrb r0, [r1, #0xa] cmp r0, #0x1 @@ -7892,7 +7892,7 @@ debug_80C7294: and r0, r0, r1 cmp r0, #0 beq ._725 @cond_branch - ldr r0, ._727 + ldr r0, ._727 @ gUnknown_Debug_2038A20 ldr r1, [r0] ldrb r0, [r1, #0xa] cmp r0, #0 @@ -7910,7 +7910,7 @@ debug_80C7294: and r0, r0, r1 cmp r0, #0 beq ._729 @cond_branch - ldr r0, ._734 + ldr r0, ._734 @ gUnknown_Debug_2038A20 ldr r2, [r0] ldrb r0, [r2, #0xa] cmp r0, #0x1 @@ -7953,7 +7953,7 @@ debug_80C7294: mov r1, #0x1f and r0, r0, r1 lsl r0, r0, #0x5 - ldr r1, ._742 + ldr r1, ._742 @ 0xfffffc1f and r1, r1, r3 orr r1, r1, r0 strh r1, [r2, #0xc] @@ -7983,7 +7983,7 @@ debug_80C7294: and r0, r0, r1 cmp r0, #0 beq ._754 @cond_branch - ldr r0, ._751 + ldr r0, ._751 @ gUnknown_Debug_2038A20 ldr r3, [r0] ldrb r0, [r3, #0xa] cmp r0, #0x1 @@ -8031,7 +8031,7 @@ debug_80C7294: mov r1, #0x1f and r0, r0, r1 lsl r0, r0, #0x5 - ldr r1, ._759 + ldr r1, ._759 @ 0xfffffc1f and r1, r1, r2 orr r1, r1, r0 strh r1, [r3, #0xc] @@ -8058,12 +8058,12 @@ debug_80C7294: orr r1, r1, r0 strb r1, [r3, #0xd] ._761: - ldr r0, ._762 + ldr r0, ._762 @ gTasks lsl r1, r7, #0x2 add r1, r1, r7 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._762 + 4 + ldr r0, ._762 + 4 @ debug_80C74E4 str r0, [r1] ._754: pop {r4, r5, r6, r7} @@ -8085,7 +8085,7 @@ debug_80C74E4: add r5, r0, #0 lsl r5, r5, #0x18 lsr r5, r5, #0x18 - ldr r0, ._764 + ldr r0, ._764 @ gUnknown_Debug_2038A20 ldr r3, [r0] ldrb r0, [r3, #0xc] lsl r0, r0, #0x1b @@ -8100,13 +8100,13 @@ debug_80C74E4: lsr r1, r1, #0x1b lsl r1, r1, #0xa add r0, r0, r1 - ldr r6, ._764 + 4 + ldr r6, ._764 + 4 @ gPlttBufferUnfaded ldrb r1, [r3, #0x7] add r1, r1, #0x81 lsl r1, r1, #0x1 add r1, r1, r6 strh r0, [r1] - ldr r1, ._764 + 8 + ldr r1, ._764 + 8 @ gPlttBufferFaded mov r8, r1 ldrb r1, [r3, #0x7] add r1, r1, #0x81 @@ -8116,7 +8116,7 @@ debug_80C74E4: ldrb r1, [r3, #0x6] lsl r1, r1, #0x4 ldrb r2, [r3, #0x7] - ldr r4, ._764 + 12 + ldr r4, ._764 + 12 @ 0x101 add r2, r2, r4 add r1, r1, r2 lsl r1, r1, #0x1 @@ -8134,12 +8134,12 @@ debug_80C74E4: mov r2, #0xa mov r3, #0x4 bl debug_80C68CC - ldr r1, ._764 + 16 + ldr r1, ._764 + 16 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._764 + 20 + ldr r1, ._764 + 20 @ debug_80C7294 str r1, [r0] pop {r3} mov r8, r3 @@ -8162,7 +8162,7 @@ debug_80C74E4: debug_80C7584: push {r4, lr} add r2, r0, #0 - ldr r0, ._771 + ldr r0, ._771 @ gUnknown_Debug_2038A20 ldr r3, [r0] ldrb r1, [r3, #0x5] add r4, r0, #0 @@ -8239,15 +8239,15 @@ InitSeeTrainers: push {r4, r5, r6, lr} add sp, sp, #0xfffffffc bl debug_80C35DC - ldr r1, ._777 - ldr r2, ._777 + 4 - ldr r0, ._777 + 8 + ldr r1, ._777 @ byte_83F88EC + ldr r2, ._777 + 4 @ 0x600e000 + ldr r0, ._777 + 8 @ 0x40000d4 str r1, [r0] str r2, [r0, #0x4] - ldr r1, ._777 + 12 + ldr r1, ._777 + 12 @ 0x80000400 str r1, [r0, #0x8] ldr r0, [r0, #0x8] - ldr r0, ._777 + 16 + ldr r0, ._777 + 16 @ word_83F888C mov r1, #0x80 mov r2, #0x60 bl LoadPalette @@ -8259,7 +8259,7 @@ InitSeeTrainers: mov r2, #0x10 mov r3, #0x0 bl BeginNormalPaletteFade - ldr r0, ._777 + 20 + ldr r0, ._777 + 20 @ 0x4000040 mov r6, #0x0 strh r5, [r0] add r0, r0, #0x4 @@ -8268,7 +8268,7 @@ InitSeeTrainers: strh r5, [r0] add r0, r0, #0x4 strh r5, [r0] - ldr r1, ._777 + 24 + ldr r1, ._777 + 24 @ 0x4000048 mov r0, #0x3f strh r0, [r1] add r1, r1, #0x2 @@ -8277,30 +8277,30 @@ InitSeeTrainers: add r1, r1, #0x6 mov r0, #0xf1 strh r0, [r1] - ldr r0, ._777 + 28 + ldr r0, ._777 + 28 @ 0x4000052 strh r5, [r0] add r1, r1, #0x4 mov r0, #0x7 strh r0, [r1] - ldr r3, ._777 + 32 + ldr r3, ._777 + 32 @ 0x4000208 ldrh r2, [r3] strh r5, [r3] - ldr r4, ._777 + 36 + ldr r4, ._777 + 36 @ 0x4000200 ldrh r0, [r4] mov r1, #0x1 orr r0, r0, r1 strh r0, [r4] strh r2, [r3] - ldr r0, ._777 + 40 + ldr r0, ._777 + 40 @ debug_80C3758 bl SetVBlankCallback - ldr r0, ._777 + 44 + ldr r0, ._777 + 44 @ debug_80C370C bl SetMainCallback2 - ldr r1, ._777 + 48 - ldr r2, ._777 + 52 + ldr r1, ._777 + 48 @ 0x4000008 + ldr r2, ._777 + 52 @ 0x1f0b add r0, r2, #0 strh r0, [r1] add r1, r1, #0x2 - ldr r2, ._777 + 56 + ldr r2, ._777 + 56 @ 0x1e0a add r0, r2, #0 strh r0, [r1] sub r1, r1, #0xa @@ -8308,11 +8308,11 @@ InitSeeTrainers: lsl r2, r2, #0x6 add r0, r2, #0 strh r0, [r1] - ldr r0, ._777 + 60 + ldr r0, ._777 + 60 @ debug_80C777C mov r1, #0x0 bl CreateTask - ldr r1, ._777 + 64 - ldr r0, ._777 + 68 + ldr r1, ._777 + 64 @ gUnknown_Debug_2038A20 + ldr r0, ._777 + 68 @ 0x2018000 str r0, [r1] strh r5, [r0] strb r6, [r0, #0x2] @@ -8321,7 +8321,7 @@ InitSeeTrainers: strb r6, [r0, #0x7] strb r6, [r0, #0xa] strb r6, [r0, #0x8] - ldr r4, ._777 + 72 + ldr r4, ._777 + 72 @ gSpriteTemplate_83F8874 add r0, r4, #0 mov r1, #0x6c mov r2, #0x74 @@ -8330,7 +8330,7 @@ InitSeeTrainers: add r1, r0, #0 lsl r1, r1, #0x18 lsr r1, r1, #0x18 - ldr r6, ._777 + 76 + ldr r6, ._777 + 76 @ gSprites lsl r0, r1, #0x4 add r0, r0, r1 lsl r0, r0, #0x2 @@ -8392,7 +8392,7 @@ InitSeeTrainers: .word 0x1e0a .word debug_80C777C+1 .word gUnknown_Debug_2038A20 - .word +0x2018000 + .word 0x2018000 .word gSpriteTemplate_83F8874 .word gSprites @@ -8406,7 +8406,7 @@ debug_80C777C: add sp, sp, #0xffffffec lsl r0, r0, #0x18 lsr r7, r0, #0x18 - ldr r1, ._784 + ldr r1, ._784 @ gUnknown_Debug_083F8815 mov r0, sp mov r2, #0x12 bl memcpy @@ -8430,15 +8430,15 @@ debug_80C777C: mov r2, #0x1d mov r3, #0x7 bl Menu_DrawStdWindowFrame - ldr r0, ._784 + 4 + ldr r0, ._784 + 4 @ gUnknown_Debug_083F87D0 mov r1, #0xf mov r2, #0x1 bl Menu_PrintText - ldr r0, ._784 + 8 + ldr r0, ._784 + 8 @ gUnknown_Debug_083F87D8 mov r1, #0x19 mov r2, #0x1 bl Menu_PrintText - ldr r0, ._784 + 12 + ldr r0, ._784 + 12 @ gUnknown_Debug_083F87E0 mov r1, #0xf mov r2, #0x5 bl Menu_PrintText @@ -8448,8 +8448,8 @@ debug_80C777C: mov r3, #0xc bl Menu_DrawStdWindowFrame mov r2, #0x0 - ldr r4, ._784 + 16 - ldr r0, ._784 + 20 + ldr r4, ._784 + 16 @ 0x600fa56 + ldr r0, ._784 + 20 @ 0xa311 add r3, r0, #0 ._779: lsl r0, r2, #0x1 @@ -8462,11 +8462,11 @@ debug_80C777C: cmp r2, #0xe bls ._779 @cond_branch mov r2, #0x0 - ldr r5, ._784 + 24 + ldr r5, ._784 + 24 @ gUnknown_Debug_083F87F4 lsl r6, r7, #0x2 mov r8, r6 - ldr r4, ._784 + 28 - ldr r0, ._784 + 32 + ldr r4, ._784 + 28 @ 0x600f256 + ldr r0, ._784 + 32 @ 0x8301 add r3, r0, #0 ._780: lsl r0, r2, #0x1 @@ -8491,7 +8491,7 @@ debug_80C777C: mov r0, #0x23 strb r0, [r1] mov r2, #0x0 - ldr r4, ._784 + 36 + ldr r4, ._784 + 36 @ 0x600f396 mov r5, #0x93 lsl r5, r5, #0x8 add r3, r5, #0 @@ -8512,8 +8512,8 @@ debug_80C777C: mov r0, #0x24 strb r0, [r1] mov r2, #0x0 - ldr r5, ._784 + 40 - ldr r4, ._784 + 44 + ldr r5, ._784 + 40 @ gUnknown_Debug_083F8801 + ldr r4, ._784 + 44 @ 0x600f3d6 mov r0, #0x93 lsl r0, r0, #0x8 add r3, r0, #0 @@ -8534,7 +8534,7 @@ debug_80C777C: mov r0, #0x25 strb r0, [r1] mov r2, #0x0 - ldr r4, ._784 + 48 + ldr r4, ._784 + 48 @ 0x600f416 mov r0, #0x93 lsl r0, r0, #0x8 add r3, r0, #0 @@ -8555,20 +8555,20 @@ debug_80C777C: mov r1, #0xf mov r2, #0x11 bl Menu_PrintText - ldr r1, ._784 + 52 - ldr r2, ._784 + 56 + ldr r1, ._784 + 52 @ 0x4000040 + ldr r2, ._784 + 56 @ 0x51ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r5, ._784 + 60 + ldr r5, ._784 + 60 @ 0x699f add r0, r5, #0 strh r0, [r1] - ldr r1, ._784 + 64 + ldr r1, ._784 + 64 @ gTasks mov r6, r8 add r0, r6, r7 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._784 + 68 + ldr r1, ._784 + 68 @ debug_80C7934 str r1, [r0] add sp, sp, #0x14 pop {r3} @@ -8610,18 +8610,18 @@ debug_80C7934: lsl r0, r0, #0x18 lsr r0, r0, #0x18 mov r8, r0 - ldr r5, ._786 + ldr r5, ._786 @ gUnknown_Debug_2038A20 ldr r6, [r5] ldrh r2, [r6] lsl r0, r2, #0x3 - ldr r1, ._786 + 4 + ldr r1, ._786 + 4 @ gTrainerFrontPicTable add r0, r0, r1 - ldr r1, ._786 + 8 + ldr r1, ._786 + 8 @ gTrainerFrontPicCoords lsl r2, r2, #0x2 add r2, r2, r1 ldrb r1, [r2] ldrb r2, [r2, #0x1] - ldr r4, ._786 + 12 + ldr r4, ._786 + 12 @ gUnknown_081FAF4C ldr r3, [r4] ldr r4, [r4, #0x4] str r4, [sp] @@ -8631,14 +8631,14 @@ debug_80C7934: ldr r0, [r5] ldrh r0, [r0] lsl r0, r0, #0x3 - ldr r1, ._786 + 16 + ldr r1, ._786 + 16 @ gTrainerFrontPicPaletteTable add r0, r0, r1 bl LoadCompressedObjectPalette ldr r0, [r5] ldrh r0, [r0] mov r1, #0x1 bl GetMonSpriteTemplate_803C5A0 - ldr r0, ._786 + 20 + ldr r0, ._786 + 20 @ gUnknown_02024E8C mov r1, #0x28 mov r2, #0x28 mov r3, #0x0 @@ -8646,7 +8646,7 @@ debug_80C7934: ldr r1, [r5] mov r6, #0x0 strb r0, [r1, #0x2] - ldr r4, ._786 + 24 + ldr r4, ._786 + 24 @ gSprites ldr r2, [r5] ldrb r1, [r2, #0x2] lsl r0, r1, #0x4 @@ -8655,7 +8655,7 @@ debug_80C7934: add r1, r4, #0 add r1, r1, #0x1c add r0, r0, r1 - ldr r1, ._786 + 28 + ldr r1, ._786 + 28 @ debug_69 str r1, [r0] ldrb r0, [r2, #0x2] lsl r1, r0, #0x4 @@ -8684,9 +8684,9 @@ debug_80C7934: ldr r0, [r5] ldrb r0, [r0, #0x6] lsl r0, r0, #0x5 - ldr r4, ._786 + 32 + ldr r4, ._786 + 32 @ gPlttBufferUnfaded add r0, r0, r4 - ldr r2, ._786 + 36 + ldr r2, ._786 + 36 @ 0xffffff00 add r1, r4, r2 mov r2, #0x10 bl CpuSet @@ -8694,16 +8694,16 @@ debug_80C7934: ldrb r0, [r0, #0x6] lsl r0, r0, #0x5 add r0, r0, r4 - ldr r1, ._786 + 40 + ldr r1, ._786 + 40 @ gPlttBufferFaded mov r2, #0x10 bl CpuSet - ldr r1, ._786 + 44 + ldr r1, ._786 + 44 @ gTasks mov r2, r8 lsl r0, r2, #0x2 add r0, r0, r8 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._786 + 48 + ldr r1, ._786 + 48 @ debug_80C7A54 str r1, [r0] ldr r0, [r5] strb r6, [r0, #0x9] @@ -8738,14 +8738,14 @@ debug_80C7A54: add r6, r0, #0 lsl r6, r6, #0x18 lsr r6, r6, #0x18 - ldr r4, ._788 - ldr r5, ._788 + 4 + ldr r4, ._788 @ gPlttBufferUnfaded + ldr r5, ._788 + 4 @ gUnknown_Debug_2038A20 ldr r1, [r5] add r1, r1, #0x10 add r0, r4, #0 mov r2, #0x10 bl CpuSet - ldr r0, ._788 + 8 + ldr r0, ._788 + 8 @ 0xffffff00 add r4, r4, r0 ldr r3, [r5] ldrb r0, [r3, #0x7] @@ -8766,7 +8766,7 @@ debug_80C7A54: lsl r1, r1, #0x2 and r1, r1, r4 ldrh r2, [r3, #0xc] - ldr r0, ._788 + 12 + ldr r0, ._788 + 12 @ 0xfffffc1f and r0, r0, r2 orr r0, r0, r1 strh r0, [r3, #0xc] @@ -8792,7 +8792,7 @@ debug_80C7A54: mov r2, #0xa mov r3, #0x2 bl debug_80C68CC - ldr r0, ._788 + 16 + ldr r0, ._788 + 16 @ gUnknown_Debug_083F8813 mov r1, #0xd mov r2, #0xa bl Menu_PrintText @@ -8801,12 +8801,12 @@ debug_80C7A54: mov r2, #0xa mov r3, #0x4 bl debug_80C68CC - ldr r1, ._788 + 20 + ldr r1, ._788 + 20 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._788 + 24 + ldr r1, ._788 + 24 @ debug_80C7B14 str r1, [r0] pop {r4, r5, r6} pop {r0} @@ -8830,7 +8830,7 @@ debug_80C7B14: add sp, sp, #0xfffffffc lsl r0, r0, #0x18 lsr r6, r0, #0x18 - ldr r1, ._792 + ldr r1, ._792 @ gMain ldrh r3, [r1, #0x2e] mov r0, #0x2 and r0, r0, r3 @@ -8846,14 +8846,14 @@ debug_80C7B14: mov r2, #0x0 mov r3, #0x10 bl BeginNormalPaletteFade - ldr r0, ._792 + 4 + ldr r0, ._792 + 4 @ debug_80C370C bl SetMainCallback2 - ldr r1, ._792 + 8 + ldr r1, ._792 + 8 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._792 + 12 + ldr r1, ._792 + 12 @ debug_80C373C str r1, [r0] b ._821 ._793: @@ -8870,7 +8870,7 @@ debug_80C7B14: and r0, r0, r1 cmp r0, #0 beq ._794 @cond_branch - ldr r4, ._796 + ldr r4, ._796 @ gUnknown_Debug_2038A20 ldr r0, [r4] ldrh r1, [r0] mov r0, #0x0 @@ -8885,7 +8885,7 @@ debug_80C7B14: and r0, r0, r1 cmp r0, #0 beq ._798 @cond_branch - ldr r4, ._800 + ldr r4, ._800 @ gUnknown_Debug_2038A20 ldr r0, [r4] ldrh r1, [r0] mov r0, #0x1 @@ -8893,12 +8893,12 @@ debug_80C7B14: bl debug_80C38B4 ldr r1, [r4] strh r0, [r1] - ldr r1, ._800 + 4 + ldr r1, ._800 + 4 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._800 + 8 + ldr r1, ._800 + 8 @ debug_80C7D44 str r1, [r0] b ._821 ._801: @@ -8912,24 +8912,24 @@ debug_80C7B14: and r2, r2, r3 cmp r2, #0 beq ._802 @cond_branch - ldr r0, ._804 + ldr r0, ._804 @ gUnknown_Debug_2038A20 ldr r1, [r0] mov r0, #0x1 strb r0, [r1, #0x5] - ldr r1, ._804 + 4 - ldr r2, ._804 + 8 + ldr r1, ._804 + 4 @ 0x4000040 + ldr r2, ._804 + 8 @ 0x51ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._804 + 12 + ldr r2, ._804 + 12 @ 0x4167 add r0, r2, #0 strh r0, [r1] - ldr r1, ._804 + 16 + ldr r1, ._804 + 16 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._804 + 20 + ldr r1, ._804 + 20 @ debug_80C7DDC str r1, [r0] b ._821 ._805: @@ -8944,7 +8944,7 @@ debug_80C7B14: ._802: mov r0, #0x10 and r0, r0, r1 - ldr r3, ._809 + ldr r3, ._809 @ gUnknown_Debug_2038A20 cmp r0, #0 beq ._807 @cond_branch ldr r1, [r3] @@ -8952,7 +8952,7 @@ debug_80C7B14: cmp r0, #0xd bhi ._807 @cond_branch lsl r0, r0, #0x1 - ldr r1, ._809 + 4 + ldr r1, ._809 + 4 @ 0x5000102 add r0, r0, r1 strh r2, [r0] ldr r1, [r3] @@ -8976,7 +8976,7 @@ debug_80C7B14: cmp r0, #0 beq ._812 @cond_branch lsl r0, r0, #0x1 - ldr r2, ._814 + ldr r2, ._814 @ 0x5000102 add r0, r0, r2 mov r1, #0x0 strh r1, [r0] @@ -8995,7 +8995,7 @@ debug_80C7B14: and r0, r0, r1 cmp r0, #0 beq ._816 @cond_branch - ldr r4, ._819 + ldr r4, ._819 @ gUnknown_Debug_2038A20 ldr r2, [r4] ldrb r0, [r2, #0x9] mov r1, #0x1 @@ -9038,13 +9038,13 @@ debug_80C7B14: mov r2, #0x20 bl LoadCompressedPalette ._818: - ldr r5, ._822 + ldr r5, ._822 @ gUnknown_Debug_2038A20 ldr r0, [r5] ldrb r0, [r0, #0x6] lsl r0, r0, #0x5 - ldr r4, ._822 + 4 + ldr r4, ._822 + 4 @ gPlttBufferUnfaded add r0, r0, r4 - ldr r2, ._822 + 8 + ldr r2, ._822 + 8 @ 0xffffff00 add r1, r4, r2 mov r2, #0x10 bl CpuSet @@ -9052,16 +9052,16 @@ debug_80C7B14: ldrb r0, [r0, #0x6] lsl r0, r0, #0x5 add r0, r0, r4 - ldr r1, ._822 + 12 + ldr r1, ._822 + 12 @ gPlttBufferFaded mov r2, #0x10 bl CpuSet ._813: - ldr r1, ._822 + 16 + ldr r1, ._822 + 16 @ gTasks lsl r0, r6, #0x2 add r0, r0, r6 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._822 + 20 + ldr r1, ._822 + 20 @ debug_80C7A54 str r1, [r0] b ._821 ._823: @@ -9086,9 +9086,9 @@ debug_80C7B14: ldr r0, [r3] ldrb r1, [r0, #0x7] lsl r1, r1, #0x1 - ldr r2, ._824 + ldr r2, ._824 @ 0x5000142 add r1, r1, r2 - ldr r2, ._824 + 4 + ldr r2, ._824 + 4 @ gUnknown_Debug_083F8790 ldrb r0, [r0, #0x8] lsl r0, r0, #0x1 add r0, r0, r2 @@ -9113,8 +9113,8 @@ debug_80C7D44: add r5, r0, #0 lsl r5, r5, #0x18 lsr r5, r5, #0x18 - ldr r6, ._826 - ldr r4, ._826 + 4 + ldr r6, ._826 @ gSprites + ldr r4, ._826 + 4 @ gUnknown_Debug_2038A20 ldr r0, [r4] ldrb r1, [r0, #0x2] lsl r0, r1, #0x4 @@ -9160,12 +9160,12 @@ debug_80C7D44: lsl r0, r0, #0x2 add r0, r0, r6 bl sub_809D510 - ldr r1, ._826 + 8 + ldr r1, ._826 + 8 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._826 + 12 + ldr r1, ._826 + 12 @ debug_80C7934 str r1, [r0] pop {r4, r5, r6} pop {r0} @@ -9185,23 +9185,23 @@ debug_80C7DDC: push {r4, r5, r6, r7, lr} lsl r0, r0, #0x18 lsr r7, r0, #0x18 - ldr r0, ._830 + ldr r0, ._830 @ gMain ldrh r2, [r0, #0x2e] mov r1, #0x1 and r1, r1, r2 add r3, r0, #0 cmp r1, #0 beq ._828 @cond_branch - ldr r0, ._830 + 4 + ldr r0, ._830 + 4 @ gUnknown_Debug_2038A20 ldr r1, [r0] mov r0, #0x0 strb r0, [r1, #0x5] - ldr r1, ._830 + 8 - ldr r2, ._830 + 12 + ldr r1, ._830 + 8 @ 0x4000040 + ldr r2, ._830 + 12 @ 0x51ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._830 + 16 + ldr r2, ._830 + 16 @ 0x699f add r0, r2, #0 strh r0, [r1] b ._829 @@ -9218,26 +9218,26 @@ debug_80C7DDC: and r0, r0, r2 cmp r0, #0 beq ._832 @cond_branch - ldr r6, ._834 + ldr r6, ._834 @ gUnknown_Debug_2038A20 ldr r0, [r6] strb r1, [r0, #0x5] - ldr r1, ._834 + 4 - ldr r2, ._834 + 8 + ldr r1, ._834 + 4 @ 0x4000040 + ldr r2, ._834 + 8 @ 0x51ef add r0, r2, #0 strh r0, [r1] add r1, r1, #0x4 - ldr r2, ._834 + 12 + ldr r2, ._834 + 12 @ 0x699f add r0, r2, #0 strh r0, [r1] ldr r0, [r6] add r0, r0, #0x10 - ldr r4, ._834 + 16 + ldr r4, ._834 + 16 @ gPlttBufferUnfaded add r1, r4, #0 mov r2, #0x10 bl CpuSet ldr r0, [r6] add r0, r0, #0x10 - ldr r5, ._834 + 20 + ldr r5, ._834 + 20 @ gPlttBufferFaded add r1, r5, #0 mov r2, #0x10 bl CpuSet @@ -9264,12 +9264,12 @@ debug_80C7DDC: mov r2, #0x10 bl CpuSet ._829: - ldr r1, ._834 + 24 + ldr r1, ._834 + 24 @ gTasks lsl r0, r7, #0x2 add r0, r0, r7 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._834 + 28 + ldr r1, ._834 + 28 @ debug_80C7A54 str r1, [r0] b ._871 ._835: @@ -9289,7 +9289,7 @@ debug_80C7DDC: and r0, r0, r1 cmp r0, #0 beq ._837 @cond_branch - ldr r0, ._839 + ldr r0, ._839 @ gUnknown_Debug_2038A20 ldr r1, [r0] ldrb r0, [r1, #0xa] cmp r0, #0x1 @@ -9307,7 +9307,7 @@ debug_80C7DDC: and r0, r0, r1 cmp r0, #0 beq ._842 @cond_branch - ldr r0, ._844 + ldr r0, ._844 @ gUnknown_Debug_2038A20 ldr r1, [r0] ldrb r0, [r1, #0xa] cmp r0, #0 @@ -9325,7 +9325,7 @@ debug_80C7DDC: and r0, r0, r1 cmp r0, #0 beq ._846 @cond_branch - ldr r0, ._851 + ldr r0, ._851 @ gUnknown_Debug_2038A20 ldr r2, [r0] ldrb r0, [r2, #0xa] cmp r0, #0x1 @@ -9368,7 +9368,7 @@ debug_80C7DDC: mov r1, #0x1f and r0, r0, r1 lsl r0, r0, #0x5 - ldr r1, ._859 + ldr r1, ._859 @ 0xfffffc1f and r1, r1, r3 orr r1, r1, r0 strh r1, [r2, #0xc] @@ -9398,7 +9398,7 @@ debug_80C7DDC: and r0, r0, r1 cmp r0, #0 beq ._871 @cond_branch - ldr r0, ._868 + ldr r0, ._868 @ gUnknown_Debug_2038A20 ldr r3, [r0] ldrb r0, [r3, #0xa] cmp r0, #0x1 @@ -9446,7 +9446,7 @@ debug_80C7DDC: mov r1, #0x1f and r0, r0, r1 lsl r0, r0, #0x5 - ldr r1, ._876 + ldr r1, ._876 @ 0xfffffc1f and r1, r1, r2 orr r1, r1, r0 strh r1, [r3, #0xc] @@ -9473,12 +9473,12 @@ debug_80C7DDC: orr r1, r1, r0 strb r1, [r3, #0xd] ._878: - ldr r0, ._879 + ldr r0, ._879 @ gTasks lsl r1, r7, #0x2 add r1, r1, r7 lsl r1, r1, #0x3 add r1, r1, r0 - ldr r0, ._879 + 4 + ldr r0, ._879 + 4 @ debug_80C802C str r0, [r1] ._871: pop {r4, r5, r6, r7} @@ -9500,7 +9500,7 @@ debug_80C802C: add r5, r0, #0 lsl r5, r5, #0x18 lsr r5, r5, #0x18 - ldr r0, ._881 + ldr r0, ._881 @ gUnknown_Debug_2038A20 ldr r3, [r0] ldrb r0, [r3, #0xc] lsl r0, r0, #0x1b @@ -9515,13 +9515,13 @@ debug_80C802C: lsr r1, r1, #0x1b lsl r1, r1, #0xa add r0, r0, r1 - ldr r6, ._881 + 4 + ldr r6, ._881 + 4 @ gPlttBufferUnfaded ldrb r1, [r3, #0x7] add r1, r1, #0x81 lsl r1, r1, #0x1 add r1, r1, r6 strh r0, [r1] - ldr r1, ._881 + 8 + ldr r1, ._881 + 8 @ gPlttBufferFaded mov r8, r1 ldrb r1, [r3, #0x7] add r1, r1, #0x81 @@ -9531,7 +9531,7 @@ debug_80C802C: ldrb r1, [r3, #0x6] lsl r1, r1, #0x4 ldrb r2, [r3, #0x7] - ldr r4, ._881 + 12 + ldr r4, ._881 + 12 @ 0x101 add r2, r2, r4 add r1, r1, r2 lsl r1, r1, #0x1 @@ -9549,12 +9549,12 @@ debug_80C802C: mov r2, #0xa mov r3, #0x4 bl debug_80C68CC - ldr r1, ._881 + 16 + ldr r1, ._881 + 16 @ gTasks lsl r0, r5, #0x2 add r0, r0, r5 lsl r0, r0, #0x3 add r0, r0, r1 - ldr r1, ._881 + 20 + ldr r1, ._881 + 20 @ debug_80C7DDC str r1, [r0] pop {r3} mov r8, r3 -- cgit v1.2.3 From c410df510012f7a6ccfc342b398cd5d407fb0bf6 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Wed, 31 Jan 2018 18:33:01 -0800 Subject: Start decompiling psychic.s --- asm/psychic.s | 934 ---------------------------------------------------------- 1 file changed, 934 deletions(-) (limited to 'asm') diff --git a/asm/psychic.s b/asm/psychic.s index f91ce950e..1f3e92e20 100644 --- a/asm/psychic.s +++ b/asm/psychic.s @@ -7,940 +7,6 @@ @ psychic - thumb_func_start sub_80DB74C -sub_80DB74C: @ 80DB74C - push {r4-r7,lr} - adds r6, r0, 0 - ldr r0, _080DB804 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080DB768 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080DB77E -_080DB768: - ldrb r1, [r6, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - movs r1, 0x8 - orrs r0, r1 - strb r0, [r6, 0x5] - adds r1, r6, 0 - adds r1, 0x43 - movs r0, 0xC8 - strb r0, [r1] -_080DB77E: - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080DB7DA - movs r0, 0x1 - bl GetBankByIdentity - lsls r0, 24 - lsrs r4, r0, 24 - adds r7, r4, 0 - adds r0, r4, 0 - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - eors r0, r1 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 - adds r0, r4, 0 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080DB7BC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8076034 -_080DB7BC: - movs r0, 0x2 - adds r4, r0, 0 - eors r4, r7 - adds r0, r4, 0 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080DB7DA - movs r0, 0x1 - eors r5, r0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8076034 -_080DB7DA: - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080DB810 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _080DB810 - ldr r0, _080DB804 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080DB808 - movs r0, 0x48 - strh r0, [r6, 0x20] - movs r0, 0x50 - b _080DB84A - .align 2, 0 -_080DB804: .4byte gAnimBankAttacker -_080DB808: - movs r0, 0xB0 - strh r0, [r6, 0x20] - movs r0, 0x28 - b _080DB84A -_080DB810: - ldr r5, _080DB880 @ =gAnimBankAttacker - ldrb r0, [r5] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080DB826 - ldr r1, _080DB884 @ =gBattleAnimArgs - ldrh r0, [r1] - negs r0, r0 - strh r0, [r1] -_080DB826: - ldrb r0, [r5] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - ldr r4, _080DB884 @ =gBattleAnimArgs - lsrs r0, 24 - ldrh r1, [r4] - adds r0, r1 - strh r0, [r6, 0x20] - ldrb r0, [r5] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - ldrh r4, [r4, 0x2] - adds r0, r4 -_080DB84A: - strh r0, [r6, 0x22] - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080DB85C - ldrh r0, [r6, 0x22] - adds r0, 0x9 - strh r0, [r6, 0x22] -_080DB85C: - ldr r0, _080DB884 @ =gBattleAnimArgs - ldrh r0, [r0, 0x4] - bl IndexOfSpritePaletteTag - lsls r0, 24 - lsrs r0, 20 - movs r1, 0x80 - lsls r1, 1 - adds r0, r1 - strh r0, [r6, 0x2E] - ldr r1, _080DB888 @ =sub_80DB88C - str r1, [r6, 0x1C] - adds r0, r6, 0 - bl _call_via_r1 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080DB880: .4byte gAnimBankAttacker -_080DB884: .4byte gBattleAnimArgs -_080DB888: .4byte sub_80DB88C - thumb_func_end sub_80DB74C - - thumb_func_start sub_80DB88C -sub_80DB88C: @ 80DB88C - push {lr} - adds r3, r0, 0 - ldr r2, _080DB8B0 @ =REG_BLDALPHA - ldrh r1, [r3, 0x34] - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r0, r1 - strh r0, [r2] - ldrh r1, [r3, 0x34] - movs r2, 0x34 - ldrsh r0, [r3, r2] - cmp r0, 0xD - bne _080DB8B8 - ldr r0, _080DB8B4 @ =sub_80DB8C0 - str r0, [r3, 0x1C] - b _080DB8BC - .align 2, 0 -_080DB8B0: .4byte REG_BLDALPHA -_080DB8B4: .4byte sub_80DB8C0 -_080DB8B8: - adds r0, r1, 0x1 - strh r0, [r3, 0x34] -_080DB8BC: - pop {r0} - bx r0 - thumb_func_end sub_80DB88C - - thumb_func_start sub_80DB8C0 -sub_80DB8C0: @ 80DB8C0 - push {r4-r7,lr} - adds r3, r0, 0 - ldrh r0, [r3, 0x30] - adds r0, 0x1 - strh r0, [r3, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - bne _080DB91E - movs r0, 0 - strh r0, [r3, 0x30] - ldrh r4, [r3, 0x2E] - ldr r1, _080DB924 @ =gPlttBufferFaded - adds r0, r4, 0 - adds r0, 0x8 - lsls r0, 1 - adds r0, r1 - ldrh r7, [r0] - movs r5, 0x8 - adds r6, r1, 0 - adds r1, r4, 0x7 - lsls r0, r4, 1 - adds r0, r6 - adds r2, r0, 0 - adds r2, 0x10 - lsls r1, 1 - adds r1, r6 -_080DB8F6: - ldrh r0, [r1] - strh r0, [r2] - subs r1, 0x2 - subs r2, 0x2 - subs r5, 0x1 - cmp r5, 0 - bgt _080DB8F6 - adds r0, r4, 0x1 - lsls r0, 1 - adds r0, r6 - strh r7, [r0] - ldrh r0, [r3, 0x32] - adds r0, 0x1 - strh r0, [r3, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x10 - bne _080DB91E - ldr r0, _080DB928 @ =sub_80DB92C - str r0, [r3, 0x1C] -_080DB91E: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080DB924: .4byte gPlttBufferFaded -_080DB928: .4byte sub_80DB92C - thumb_func_end sub_80DB8C0 - - thumb_func_start sub_80DB92C -sub_80DB92C: @ 80DB92C - push {r4-r6,lr} - adds r5, r0, 0 - ldr r2, _080DB9D4 @ =REG_BLDALPHA - ldrh r1, [r5, 0x34] - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r0, r1 - strh r0, [r2] - ldrh r0, [r5, 0x34] - subs r0, 0x1 - strh r0, [r5, 0x34] - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080DB9CC - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080DB9BC - movs r0, 0x1 - bl GetBankByIdentity - lsls r0, 24 - lsrs r4, r0, 24 - adds r6, r4, 0 - adds r0, r4, 0 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080DB98E - ldr r2, _080DB9D8 @ =gSprites - ldr r0, _080DB9DC @ =gObjectBankIDs - adds r0, r4, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] -_080DB98E: - movs r0, 0x2 - adds r4, r0, 0 - eors r4, r6 - adds r0, r4, 0 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080DB9BC - ldr r2, _080DB9D8 @ =gSprites - ldr r0, _080DB9DC @ =gObjectBankIDs - adds r0, r4, r0 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - adds r0, 0x3E - ldrb r2, [r0] - movs r1, 0x5 - negs r1, r1 - ands r1, r2 - strb r1, [r0] -_080DB9BC: - adds r2, r5, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r0, _080DB9E0 @ =sub_80DB9E4 - str r0, [r5, 0x1C] -_080DB9CC: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DB9D4: .4byte REG_BLDALPHA -_080DB9D8: .4byte gSprites -_080DB9DC: .4byte gObjectBankIDs -_080DB9E0: .4byte sub_80DB9E4 - thumb_func_end sub_80DB92C - - thumb_func_start sub_80DB9E4 -sub_80DB9E4: @ 80DB9E4 - push {r4-r6,lr} - adds r6, r0, 0 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080DBA3C - movs r0, 0x1 - bl GetBankByIdentity - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - eors r0, r1 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 - adds r0, r4, 0 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080DBA22 - adds r0, r5, 0 - bl sub_8076464 -_080DBA22: - movs r0, 0x2 - eors r4, r0 - adds r0, r4, 0 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080DBA3C - movs r0, 0x1 - eors r5, r0 - adds r0, r5, 0 - bl sub_8076464 -_080DBA3C: - ldr r0, _080DBA48 @ =DestroyAnimSprite - str r0, [r6, 0x1C] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DBA48: .4byte DestroyAnimSprite - thumb_func_end sub_80DB9E4 - - thumb_func_start sub_80DBA4C -sub_80DBA4C: @ 80DBA4C - push {r4-r6,lr} - adds r4, r0, 0 - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080DBAD8 - ldr r5, _080DBA98 @ =gBattleAnimArgs - movs r1, 0x6 - ldrsh r0, [r5, r1] - movs r6, 0 - cmp r0, 0 - bne _080DBA66 - movs r6, 0x1 -_080DBA66: - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080DBAAE - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _080DBAAE - ldr r0, _080DBA9C @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080DBAA0 - ldrh r0, [r5] - movs r1, 0x48 - subs r1, r0 - strh r1, [r4, 0x20] - ldrh r0, [r5, 0x2] - adds r0, 0x50 - strh r0, [r4, 0x22] - b _080DBAD0 - .align 2, 0 -_080DBA98: .4byte gBattleAnimArgs -_080DBA9C: .4byte gAnimBankAttacker -_080DBAA0: - ldrh r0, [r5] - adds r0, 0xB0 - strh r0, [r4, 0x20] - ldrh r0, [r5, 0x2] - adds r0, 0x28 - strh r0, [r4, 0x22] - b _080DBAD0 -_080DBAAE: - ldr r0, _080DBAC4 @ =gBattleAnimArgs - movs r1, 0x4 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080DBAC8 - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_80787B0 - b _080DBAD0 - .align 2, 0 -_080DBAC4: .4byte gBattleAnimArgs -_080DBAC8: - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_8078764 -_080DBAD0: - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - b _080DBAEC -_080DBAD8: - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x30 - ands r0, r1 - cmp r0, 0 - beq _080DBAEC - adds r0, r4, 0 - bl move_anim_8074EE0 -_080DBAEC: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80DBA4C - - thumb_func_start sub_80DBAF4 -sub_80DBAF4: @ 80DBAF4 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _080DBB3C @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080DBB44 - adds r0, r5, 0 - movs r1, 0x1 - bl StartSpriteAnim - ldrh r0, [r5, 0x20] - subs r0, 0x28 - strh r0, [r5, 0x20] - ldrh r0, [r5, 0x22] - adds r0, 0xA - strh r0, [r5, 0x22] - ldr r0, _080DBB40 @ =0x0000ffff - b _080DBB52 - .align 2, 0 -_080DBB3C: .4byte gAnimBankAttacker -_080DBB40: .4byte 0x0000ffff -_080DBB44: - ldrh r0, [r5, 0x20] - adds r0, 0x28 - strh r0, [r5, 0x20] - ldrh r0, [r5, 0x22] - subs r0, 0xA - strh r0, [r5, 0x22] - movs r0, 0x1 -_080DBB52: - strh r0, [r5, 0x30] - ldr r1, _080DBB68 @ =DestroyAnimSprite - adds r0, r5, 0 - bl StoreSpriteCallbackInData - ldr r0, _080DBB6C @ =sub_8078600 - str r0, [r5, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DBB68: .4byte DestroyAnimSprite -_080DBB6C: .4byte sub_8078600 - thumb_func_end sub_80DBAF4 - - thumb_func_start sub_80DBB70 -sub_80DBB70: @ 80DBB70 - push {r4-r7,lr} - adds r5, r0, 0 - ldr r6, _080DBBF4 @ =gAnimBankAttacker - ldrb r0, [r6] - movs r1, 0x1 - bl sub_807A100 - lsls r0, 16 - asrs r1, r0, 16 - lsrs r0, 31 - adds r1, r0 - lsls r1, 15 - lsrs r4, r1, 16 - ldrb r0, [r6] - movs r1, 0 - bl sub_807A100 - lsls r0, 16 - asrs r1, r0, 16 - lsrs r0, 31 - adds r1, r0 - asrs r1, 1 - negs r1, r1 - lsls r1, 16 - lsrs r7, r1, 16 - ldrb r0, [r6] - bl GetBankSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080DBBB6 - lsls r0, r4, 16 - negs r0, r0 - lsrs r4, r0, 16 -_080DBBB6: - ldrb r0, [r6] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - strh r0, [r5, 0x20] - ldrb r0, [r6] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - adds r0, r7 - strh r0, [r5, 0x22] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xF - bgt _080DBBE2 - movs r0, 0x10 - strh r0, [r5, 0x22] -_080DBBE2: - ldr r1, _080DBBF8 @ =sub_80DBC00 - adds r0, r5, 0 - bl StoreSpriteCallbackInData - ldr r0, _080DBBFC @ =sub_8078600 - str r0, [r5, 0x1C] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080DBBF4: .4byte gAnimBankAttacker -_080DBBF8: .4byte sub_80DBC00 -_080DBBFC: .4byte sub_8078600 - thumb_func_end sub_80DBB70 - - thumb_func_start sub_80DBC00 -sub_80DBC00: @ 80DBC00 - push {r4,lr} - adds r4, r0, 0 - ldrb r1, [r4, 0x1] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r4, 0x1] - ldr r0, _080DBC2C @ =gUnknown_083DA888 - str r0, [r4, 0x10] - movs r0, 0 - strh r0, [r4, 0x2E] - adds r0, r4, 0 - bl InitSpriteAffineAnim - ldr r0, _080DBC30 @ =sub_80DBC34 - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080DBC2C: .4byte gUnknown_083DA888 -_080DBC30: .4byte sub_80DBC34 - thumb_func_end sub_80DBC00 - - thumb_func_start sub_80DBC34 -sub_80DBC34: @ 80DBC34 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080DBC46 - cmp r0, 0x1 - beq _080DBC74 - b _080DBC8C -_080DBC46: - adds r0, r4, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080DBC8C - ldrb r0, [r4, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - ldrb r1, [r4, 0x1] - movs r0, 0x4 - negs r0, r0 - ands r0, r1 - strb r0, [r4, 0x1] - movs r0, 0x12 - strh r0, [r4, 0x30] - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - b _080DBC8C -_080DBC74: - ldrh r0, [r4, 0x30] - subs r0, 0x1 - strh r0, [r4, 0x30] - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080DBC8C - adds r0, r4, 0 - bl DestroyAnimSprite -_080DBC8C: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80DBC34 - - thumb_func_start sub_80DBC94 -sub_80DBC94: @ 80DBC94 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 3 - ldr r0, _080DBCC4 @ =gTasks - adds r4, r0 - movs r0, 0 - bl GetAnimBankSpriteId - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - strh r1, [r4, 0x8] - ldr r2, _080DBCC8 @ =gUnknown_083DA8A4 - adds r0, r4, 0 - bl sub_80798F4 - ldr r0, _080DBCCC @ =sub_80DBCD0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080DBCC4: .4byte gTasks -_080DBCC8: .4byte gUnknown_083DA8A4 -_080DBCCC: .4byte sub_80DBCD0 - thumb_func_end sub_80DBC94 - - thumb_func_start sub_80DBCD0 -sub_80DBCD0: @ 80DBCD0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _080DBCF8 @ =gTasks - adds r0, r1 - bl sub_807992C - lsls r0, 24 - cmp r0, 0 - bne _080DBCF0 - adds r0, r4, 0 - bl DestroyAnimVisualTask -_080DBCF0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080DBCF8: .4byte gTasks - thumb_func_end sub_80DBCD0 - - thumb_func_start sub_80DBCFC -sub_80DBCFC: @ 80DBCFC - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080DBD48 @ =gTasks - adds r4, r1, r0 - movs r0, 0 - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r0, 24 - movs r1, 0 - strh r0, [r4, 0x8] - strh r1, [r4, 0xA] - strh r1, [r4, 0xC] - ldr r0, _080DBD4C @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - movs r1, 0x8 - cmp r0, 0 - beq _080DBD30 - movs r1, 0x4 -_080DBD30: - strh r1, [r4, 0xE] - ldrb r1, [r4, 0x8] - ldr r2, _080DBD50 @ =gUnknown_083DA8C4 - adds r0, r4, 0 - bl sub_80798F4 - ldr r0, _080DBD54 @ =sub_80DBD58 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080DBD48: .4byte gTasks -_080DBD4C: .4byte gAnimBankAttacker -_080DBD50: .4byte gUnknown_083DA8C4 -_080DBD54: .4byte sub_80DBD58 - thumb_func_end sub_80DBCFC - - thumb_func_start sub_80DBD58 -sub_80DBD58: @ 80DBD58 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _080DBD78 @ =gTasks - adds r4, r0, r1 - movs r1, 0xA - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080DBD7C - cmp r0, 0x1 - beq _080DBD98 - b _080DBDF6 - .align 2, 0 -_080DBD78: .4byte gTasks -_080DBD7C: - adds r0, r4, 0 - bl sub_807992C - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x13 - ble _080DBDF6 - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - b _080DBDF6 -_080DBD98: - movs r1, 0xE - ldrsh r0, [r4, r1] - cmp r0, 0 - beq _080DBDC0 - ldr r2, _080DBDBC @ =gSprites - movs r0, 0x8 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x26] - subs r1, 0x8 - strh r1, [r0, 0x26] - ldrh r0, [r4, 0xE] - subs r0, 0x1 - strh r0, [r4, 0xE] - b _080DBDF6 - .align 2, 0 -_080DBDBC: .4byte gSprites -_080DBDC0: - ldr r3, _080DBDFC @ =gSprites - movs r0, 0x8 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - adds r0, 0x3E - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - movs r0, 0x8 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - movs r1, 0x88 - lsls r1, 1 - strh r1, [r0, 0x20] - ldrb r0, [r4, 0x8] - bl sub_8078F40 - adds r0, r5, 0 - bl DestroyAnimVisualTask -_080DBDF6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DBDFC: .4byte gSprites - thumb_func_end sub_80DBD58 - - thumb_func_start sub_80DBE00 -sub_80DBE00: @ 80DBE00 - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080DBE84 @ =gTasks - adds r5, r1, r0 - movs r0, 0 - movs r7, 0x10 - strh r7, [r5, 0xE] - strh r0, [r5, 0x10] - ldr r4, _080DBE88 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x24] - ldrb r0, [r4] - movs r1, 0x1 - bl sub_807A100 - lsls r0, 16 - asrs r0, 16 - movs r1, 0x3 - bl __divsi3 - lsls r0, 16 - lsrs r6, r0, 16 - ldrb r0, [r4] - movs r1, 0 - bl sub_807A100 - lsls r0, 16 - asrs r0, 16 - movs r1, 0x3 - bl __divsi3 - lsls r0, 16 - lsrs r0, 16 - adds r1, r0, 0 - cmp r0, r6 - bcs _080DBE6A - adds r1, r6, 0 -_080DBE6A: - strh r1, [r5, 0x20] - ldr r1, _080DBE8C @ =REG_BLDCNT - movs r2, 0xFD - lsls r2, 6 - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _080DBE90 @ =REG_BLDALPHA - strh r7, [r0] - ldr r0, _080DBE94 @ =sub_80DBE98 - str r0, [r5] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080DBE84: .4byte gTasks -_080DBE88: .4byte gAnimBankAttacker -_080DBE8C: .4byte REG_BLDCNT -_080DBE90: .4byte REG_BLDALPHA -_080DBE94: .4byte sub_80DBE98 - thumb_func_end sub_80DBE00 - thumb_func_start sub_80DBE98 sub_80DBE98: @ 80DBE98 push {r4-r6,lr} -- cgit v1.2.3 From 2d89da39c172c80a8d1ca6ad63e16a8d8e29d39d Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Wed, 31 Jan 2018 20:59:31 -0800 Subject: More psychic.s decompilation --- asm/psychic.s | 695 ---------------------------------------------------------- 1 file changed, 695 deletions(-) (limited to 'asm') diff --git a/asm/psychic.s b/asm/psychic.s index 1f3e92e20..e04832858 100644 --- a/asm/psychic.s +++ b/asm/psychic.s @@ -7,701 +7,6 @@ @ psychic - thumb_func_start sub_80DBE98 -sub_80DBE98: @ 80DBE98 - push {r4-r6,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _080DBEBC @ =gTasks - adds r4, r0, r1 - movs r0, 0x8 - ldrsh r1, [r4, r0] - cmp r1, 0x1 - beq _080DBF98 - cmp r1, 0x1 - bgt _080DBEC0 - cmp r1, 0 - beq _080DBECE - b _080DC014 - .align 2, 0 -_080DBEBC: .4byte gTasks -_080DBEC0: - cmp r1, 0x2 - bne _080DBEC6 - b _080DBFF4 -_080DBEC6: - cmp r1, 0x3 - bne _080DBECC - b _080DC004 -_080DBECC: - b _080DC014 -_080DBECE: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x8 - bgt _080DBEDE - b _080DC014 -_080DBEDE: - strh r1, [r4, 0xA] - ldr r0, _080DBF1C @ =gSpriteTemplate_83DA8DC - movs r2, 0x22 - ldrsh r1, [r4, r2] - movs r3, 0x24 - ldrsh r2, [r4, r3] - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - movs r0, 0xC - ldrsh r1, [r4, r0] - adds r1, 0x8 - lsls r1, 1 - adds r0, r4, 0 - adds r0, 0x8 - adds r0, r1 - strh r2, [r0] - cmp r2, 0x40 - beq _080DBF82 - movs r1, 0xC - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080DBF3C - cmp r0, 0x1 - bgt _080DBF20 - cmp r0, 0 - beq _080DBF2A - b _080DBF82 - .align 2, 0 -_080DBF1C: .4byte gSpriteTemplate_83DA8DC -_080DBF20: - cmp r0, 0x2 - beq _080DBF54 - cmp r0, 0x3 - beq _080DBF6C - b _080DBF82 -_080DBF2A: - ldr r0, _080DBF38 @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r4, 0x20] - b _080DBF7A - .align 2, 0 -_080DBF38: .4byte gSprites -_080DBF3C: - ldr r0, _080DBF50 @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r4, 0x20] - negs r0, r0 - strh r0, [r1, 0x24] - ldrh r0, [r4, 0x20] - b _080DBF80 - .align 2, 0 -_080DBF50: .4byte gSprites -_080DBF54: - ldr r1, _080DBF68 @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrh r1, [r4, 0x20] - strh r1, [r0, 0x24] - ldrh r1, [r4, 0x20] - strh r1, [r0, 0x26] - b _080DBF82 - .align 2, 0 -_080DBF68: .4byte gSprites -_080DBF6C: - ldr r0, _080DBF94 @ =gSprites - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r4, 0x20] - negs r0, r0 -_080DBF7A: - strh r0, [r1, 0x24] - ldrh r0, [r4, 0x20] - negs r0, r0 -_080DBF80: - strh r0, [r1, 0x26] -_080DBF82: - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x5 - bne _080DC014 - b _080DBFF4 - .align 2, 0 -_080DBF94: .4byte gSprites -_080DBF98: - ldrh r0, [r4, 0xA] - ands r1, r0 - cmp r1, 0 - beq _080DBFA8 - ldrh r0, [r4, 0xE] - subs r0, 0x1 - strh r0, [r4, 0xE] - b _080DBFAE -_080DBFA8: - ldrh r0, [r4, 0x10] - adds r0, 0x1 - strh r0, [r4, 0x10] -_080DBFAE: - ldr r2, _080DBFFC @ =REG_BLDALPHA - ldrh r0, [r4, 0x10] - lsls r0, 8 - ldrh r1, [r4, 0xE] - orrs r0, r1 - strh r0, [r2] - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x20 - bne _080DC014 - movs r5, 0x8 - adds r6, r4, 0 - adds r6, 0x8 -_080DBFCE: - lsls r0, r5, 1 - adds r1, r6, r0 - movs r2, 0 - ldrsh r0, [r1, r2] - cmp r0, 0x40 - beq _080DBFEA - adds r1, r0, 0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080DC000 @ =gSprites - adds r0, r1 - bl DestroySprite -_080DBFEA: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0xC - bls _080DBFCE -_080DBFF4: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080DC014 - .align 2, 0 -_080DBFFC: .4byte REG_BLDALPHA -_080DC000: .4byte gSprites -_080DC004: - ldr r0, _080DC01C @ =REG_BLDALPHA - movs r1, 0 - strh r1, [r0] - subs r0, 0x2 - strh r1, [r0] - adds r0, r2, 0 - bl DestroyAnimVisualTask -_080DC014: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DC01C: .4byte REG_BLDALPHA - thumb_func_end sub_80DBE98 - - thumb_func_start sub_80DC020 -sub_80DC020: @ 80DC020 - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x30 - ldrsh r1, [r4, r0] - movs r2, 0x2E - ldrsh r0, [r4, r2] - subs r0, 0xA - cmp r1, r0 - ble _080DC04A - ldrh r0, [r4, 0x30] - movs r1, 0x1 - ands r1, r0 - adds r3, r4, 0 - adds r3, 0x3E - lsls r1, 2 - ldrb r2, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] -_080DC04A: - movs r0, 0x30 - ldrsh r1, [r4, r0] - movs r2, 0x2E - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _080DC05C - adds r0, r4, 0 - bl DestroyAnimSprite -_080DC05C: - ldrh r0, [r4, 0x30] - adds r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80DC020 - - thumb_func_start sub_80DC068 -sub_80DC068: @ 80DC068 - push {r4-r6,lr} - adds r5, r0, 0 - ldr r6, _080DC0A4 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _080DC094 - ldr r4, _080DC0A8 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] -_080DC094: - ldrh r0, [r6, 0x2] - strh r0, [r5, 0x2E] - ldr r0, _080DC0AC @ =sub_80DC020 - str r0, [r5, 0x1C] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DC0A4: .4byte gBattleAnimArgs -_080DC0A8: .4byte gAnimBankAttacker -_080DC0AC: .4byte sub_80DC020 - thumb_func_end sub_80DC068 - - thumb_func_start sub_80DC0B0 -sub_80DC0B0: @ 80DC0B0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080DC10C @ =gTasks - adds r5, r1, r0 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080DC154 - ldr r0, _080DC110 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - bne _080DC120 - ldr r0, _080DC114 @ =0x0000fff6 - strh r0, [r5, 0x1C] - ldr r4, _080DC118 @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x5 - bl sub_807A100 - subs r0, 0x8 - strh r0, [r5, 0x1E] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r5, 0x20] - ldr r4, _080DC11C @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x5 - bl sub_807A100 - subs r0, 0x8 - strh r0, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x8 - b _080DC1DE - .align 2, 0 -_080DC10C: .4byte gTasks -_080DC110: .4byte gBattleAnimArgs -_080DC114: .4byte 0x0000fff6 -_080DC118: .4byte gAnimBankTarget -_080DC11C: .4byte gAnimBankAttacker -_080DC120: - movs r0, 0xA - strh r0, [r5, 0x1C] - ldr r4, _080DC14C @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x4 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r5, 0x1E] - ldrb r0, [r4] - movs r1, 0x3 - bl sub_807A100 - subs r0, 0x8 - strh r0, [r5, 0x20] - ldr r4, _080DC150 @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x4 - bl sub_807A100 - adds r0, 0x8 - b _080DC1D2 - .align 2, 0 -_080DC14C: .4byte gAnimBankAttacker -_080DC150: .4byte gAnimBankTarget -_080DC154: - ldr r0, _080DC198 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - bne _080DC1A8 - ldr r0, _080DC19C @ =0x0000fff6 - strh r0, [r5, 0x1C] - ldr r4, _080DC1A0 @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x4 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r5, 0x1E] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r5, 0x20] - ldr r4, _080DC1A4 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x4 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x8 - b _080DC1DE - .align 2, 0 -_080DC198: .4byte gBattleAnimArgs -_080DC19C: .4byte 0x0000fff6 -_080DC1A0: .4byte gAnimBankTarget -_080DC1A4: .4byte gAnimBankAttacker -_080DC1A8: - movs r0, 0xA - strh r0, [r5, 0x1C] - ldr r4, _080DC1F0 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x5 - bl sub_807A100 - subs r0, 0x8 - strh r0, [r5, 0x1E] - ldrb r0, [r4] - movs r1, 0x3 - bl sub_807A100 - subs r0, 0x8 - strh r0, [r5, 0x20] - ldr r4, _080DC1F4 @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x5 - bl sub_807A100 - subs r0, 0x8 -_080DC1D2: - strh r0, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0x3 - bl sub_807A100 - subs r0, 0x8 -_080DC1DE: - strh r0, [r5, 0x24] - movs r0, 0x6 - strh r0, [r5, 0xA] - ldr r0, _080DC1F8 @ =sub_80DC1FC - str r0, [r5] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DC1F0: .4byte gAnimBankAttacker -_080DC1F4: .4byte gAnimBankTarget -_080DC1F8: .4byte sub_80DC1FC - thumb_func_end sub_80DC0B0 - - thumb_func_start sub_80DC1FC -sub_80DC1FC: @ 80DC1FC - push {r4,r5,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _080DC21C @ =gTasks - adds r5, r0, r1 - movs r0, 0x8 - ldrsh r1, [r5, r0] - cmp r1, 0 - beq _080DC220 - cmp r1, 0x1 - beq _080DC294 - b _080DC2A8 - .align 2, 0 -_080DC21C: .4byte gTasks -_080DC220: - ldrh r0, [r5, 0xA] - adds r0, 0x1 - strh r0, [r5, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x6 - ble _080DC2A8 - strh r1, [r5, 0xA] - ldr r0, _080DC28C @ =gSpriteTemplate_83DA9AC - movs r2, 0x1E - ldrsh r1, [r5, r2] - movs r3, 0x20 - ldrsh r2, [r5, r3] - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _080DC274 - ldr r0, _080DC290 @ =gSprites - lsls r4, r1, 4 - adds r4, r1 - lsls r4, 2 - adds r4, r0 - movs r0, 0x10 - strh r0, [r4, 0x2E] - ldrh r0, [r5, 0x22] - strh r0, [r4, 0x32] - ldrh r0, [r5, 0x24] - strh r0, [r4, 0x36] - ldrh r0, [r5, 0x1C] - strh r0, [r4, 0x38] - adds r0, r4, 0 - bl sub_80786EC - ldrb r0, [r5, 0xC] - movs r1, 0x3 - ands r1, r0 - adds r0, r4, 0 - bl StartSpriteAffineAnim -_080DC274: - ldrh r0, [r5, 0xC] - adds r0, 0x1 - strh r0, [r5, 0xC] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xC - bne _080DC2A8 - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - b _080DC2A8 - .align 2, 0 -_080DC28C: .4byte gSpriteTemplate_83DA9AC -_080DC290: .4byte gSprites -_080DC294: - ldrh r0, [r5, 0xA] - adds r0, 0x1 - strh r0, [r5, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x11 - ble _080DC2A8 - adds r0, r2, 0 - bl DestroyAnimVisualTask -_080DC2A8: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80DC1FC - - thumb_func_start sub_80DC2B0 -sub_80DC2B0: @ 80DC2B0 - push {r4,lr} - adds r4, r0, 0 - bl sub_8078718 - lsls r0, 24 - cmp r0, 0 - beq _080DC2CE - ldrb r0, [r4, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - adds r0, r4, 0 - bl DestroySprite -_080DC2CE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80DC2B0 - - thumb_func_start sub_80DC2D4 -sub_80DC2D4: @ 80DC2D4 - push {r4-r6,lr} - sub sp, 0xC - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080DC30C @ =gTasks - adds r4, r1, r0 - ldr r0, _080DC310 @ =gAnimBankTarget - ldrb r0, [r0] - bl sub_8077FC0 - lsls r0, 24 - lsrs r1, r0, 24 - adds r0, r1, 0 - subs r0, 0x20 - strh r0, [r4, 0x24] - ldr r0, _080DC314 @ =gBattleAnimArgs - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0x1 - beq _080DC32A - cmp r0, 0x1 - bgt _080DC318 - cmp r0, 0 - beq _080DC31E - b _080DC346 - .align 2, 0 -_080DC30C: .4byte gTasks -_080DC310: .4byte gAnimBankTarget -_080DC314: .4byte gBattleAnimArgs -_080DC318: - cmp r0, 0x2 - beq _080DC336 - b _080DC346 -_080DC31E: - movs r0, 0x2 - strh r0, [r4, 0x1E] - movs r0, 0x5 - strh r0, [r4, 0x20] - movs r0, 0x40 - b _080DC33E -_080DC32A: - movs r0, 0x2 - strh r0, [r4, 0x1E] - movs r0, 0x5 - strh r0, [r4, 0x20] - movs r0, 0xC0 - b _080DC33E -_080DC336: - movs r0, 0x4 - strh r0, [r4, 0x1E] - strh r0, [r4, 0x20] - movs r0, 0 -_080DC33E: - strh r0, [r4, 0x22] - adds r0, r1, 0 - adds r0, 0x20 - strh r0, [r4, 0x26] -_080DC346: - movs r1, 0x24 - ldrsh r0, [r4, r1] - cmp r0, 0 - bge _080DC352 - movs r0, 0 - strh r0, [r4, 0x24] -_080DC352: - ldr r0, _080DC36C @ =gAnimBankTarget - ldrb r0, [r0] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080DC378 - ldr r0, _080DC370 @ =gBattle_BG1_X - ldrh r0, [r0] - strh r0, [r4, 0x1C] - ldr r0, _080DC374 @ =REG_BG1HOFS - b _080DC380 - .align 2, 0 -_080DC36C: .4byte gAnimBankTarget -_080DC370: .4byte gBattle_BG1_X -_080DC374: .4byte REG_BG1HOFS -_080DC378: - ldr r0, _080DC3E0 @ =gBattle_BG2_X - ldrh r0, [r0] - strh r0, [r4, 0x1C] - ldr r0, _080DC3E4 @ =REG_BG2HOFS -_080DC380: - str r0, [sp] - ldrh r1, [r4, 0x24] - lsls r3, r1, 16 - asrs r1, r3, 16 - movs r2, 0x24 - ldrsh r0, [r4, r2] - adds r0, 0x40 - cmp r1, r0 - bgt _080DC3BA - ldr r5, _080DC3E8 @ =gScanlineEffectRegBuffers - movs r0, 0xF0 - lsls r0, 3 - adds r6, r5, r0 -_080DC39A: - asrs r3, 16 - lsls r1, r3, 1 - adds r2, r1, r5 - ldrh r0, [r4, 0x1C] - strh r0, [r2] - adds r1, r6 - ldrh r0, [r4, 0x1C] - strh r0, [r1] - adds r3, 0x1 - lsls r3, 16 - asrs r1, r3, 16 - movs r2, 0x24 - ldrsh r0, [r4, r2] - adds r0, 0x40 - cmp r1, r0 - ble _080DC39A -_080DC3BA: - ldr r0, _080DC3EC @ =0xa2600001 - str r0, [sp, 0x4] - mov r1, sp - movs r2, 0 - movs r0, 0x1 - strb r0, [r1, 0x8] - mov r0, sp - strb r2, [r0, 0x9] - ldr r0, [sp] - ldr r1, [sp, 0x4] - ldr r2, [sp, 0x8] - bl ScanlineEffect_SetParams - ldr r0, _080DC3F0 @ =sub_80DC3F4 - str r0, [r4] - add sp, 0xC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080DC3E0: .4byte gBattle_BG2_X -_080DC3E4: .4byte REG_BG2HOFS -_080DC3E8: .4byte gScanlineEffectRegBuffers -_080DC3EC: .4byte 0xa2600001 -_080DC3F0: .4byte sub_80DC3F4 - thumb_func_end sub_80DC2D4 - thumb_func_start sub_80DC3F4 sub_80DC3F4: @ 80DC3F4 push {r4-r7,lr} -- cgit v1.2.3 From 513d85e2df9cdb288df6345107130c4bd144148d Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Thu, 1 Feb 2018 12:20:37 -0800 Subject: Finish decompiling psychic.s --- asm/psychic.s | 554 ---------------------------------------------------------- 1 file changed, 554 deletions(-) delete mode 100644 asm/psychic.s (limited to 'asm') diff --git a/asm/psychic.s b/asm/psychic.s deleted file mode 100644 index e04832858..000000000 --- a/asm/psychic.s +++ /dev/null @@ -1,554 +0,0 @@ - .include "constants/gba_constants.inc" - .include "include/macros.inc" - - .syntax unified - - .text - - @ psychic - - thumb_func_start sub_80DC3F4 -sub_80DC3F4: @ 80DC3F4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _080DC41C @ =gTasks - adds r5, r0, r1 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x1 - beq _080DC4CE - cmp r0, 0x1 - bgt _080DC420 - cmp r0, 0 - beq _080DC426 - b _080DC4E6 - .align 2, 0 -_080DC41C: .4byte gTasks -_080DC420: - cmp r0, 0x2 - beq _080DC4E0 - b _080DC4E6 -_080DC426: - ldrh r3, [r5, 0x22] - ldrh r4, [r5, 0x24] - movs r2, 0x24 - ldrsh r1, [r5, r2] - movs r2, 0x26 - ldrsh r0, [r5, r2] - cmp r1, r0 - bgt _080DC4BE - ldr r0, _080DC470 @ =gSineTable - mov r9, r0 - movs r7, 0x3 - ldr r1, _080DC474 @ =gScanlineEffectRegBuffers - mov r12, r1 - movs r2, 0xF0 - lsls r2, 3 - add r2, r12 - mov r8, r2 -_080DC448: - lsls r2, r3, 16 - asrs r0, r2, 15 - add r0, r9 - movs r3, 0 - ldrsh r0, [r0, r3] - movs r3, 0x20 - ldrsh r1, [r5, r3] - asrs r0, r1 - lsls r0, 16 - lsrs r1, r0, 16 - asrs r3, r0, 16 - adds r6, r2, 0 - cmp r3, 0 - ble _080DC478 - ldrh r1, [r5, 0xA] - adds r0, r7, 0 - ands r0, r1 - adds r0, r3, r0 - b _080DC484 - .align 2, 0 -_080DC470: .4byte gSineTable -_080DC474: .4byte gScanlineEffectRegBuffers -_080DC478: - cmp r3, 0 - bge _080DC488 - ldrh r1, [r5, 0xA] - adds r0, r7, 0 - ands r0, r1 - subs r0, r3, r0 -_080DC484: - lsls r0, 16 - lsrs r1, r0, 16 -_080DC488: - lsls r2, r4, 16 - asrs r2, 16 - lsls r3, r2, 1 - mov r0, r12 - adds r4, r3, r0 - ldrh r0, [r5, 0x1C] - lsls r1, 16 - asrs r1, 16 - adds r0, r1, r0 - strh r0, [r4] - add r3, r8 - ldrh r0, [r5, 0x1C] - adds r1, r0 - strh r1, [r3] - asrs r0, r6, 16 - ldrh r1, [r5, 0x1E] - adds r0, r1 - lsls r0, 16 - lsrs r3, r0, 16 - adds r2, 0x1 - lsls r2, 16 - lsrs r4, r2, 16 - asrs r2, 16 - movs r1, 0x26 - ldrsh r0, [r5, r1] - cmp r2, r0 - ble _080DC448 -_080DC4BE: - ldrh r0, [r5, 0xA] - adds r0, 0x1 - strh r0, [r5, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x17 - ble _080DC4E6 - b _080DC4D4 -_080DC4CE: - ldr r1, _080DC4DC @ =gScanlineEffect - movs r0, 0x3 - strb r0, [r1, 0x15] -_080DC4D4: - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - b _080DC4E6 - .align 2, 0 -_080DC4DC: .4byte gScanlineEffect -_080DC4E0: - adds r0, r2, 0 - bl DestroyAnimVisualTask -_080DC4E6: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80DC3F4 - - thumb_func_start sub_80DC4F4 -sub_80DC4F4: @ 80DC4F4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r4, r0, 24 - mov r8, r4 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _080DC528 @ =gTasks - adds r7, r0, r1 - bl AllocOamMatrix - lsls r0, 24 - lsrs r5, r0, 24 - mov r10, r5 - adds r6, r5, 0 - cmp r6, 0xFF - bne _080DC52C - adds r0, r4, 0 - bl DestroyAnimVisualTask - b _080DC5D6 - .align 2, 0 -_080DC528: .4byte gTasks -_080DC52C: - ldr r1, _080DC550 @ =gBattleAnimArgs - ldrb r0, [r1] - bl duplicate_obj_of_side_rel2move_in_transparent_mode - lsls r0, 16 - lsrs r1, r0, 16 - mov r9, r1 - asrs r0, 16 - cmp r0, 0 - bge _080DC554 - adds r0, r5, 0 - bl FreeOamMatrix - mov r0, r8 - bl DestroyAnimVisualTask - b _080DC5D6 - .align 2, 0 -_080DC550: .4byte gBattleAnimArgs -_080DC554: - ldr r2, _080DC5E4 @ =gSprites - lsls r4, r0, 4 - adds r4, r0 - lsls r4, 2 - adds r0, r2, 0 - adds r0, 0x1C - adds r0, r4, r0 - ldr r1, _080DC5E8 @ =SpriteCallbackDummy - str r1, [r0] - adds r4, r2 - ldrb r0, [r4, 0x1] - movs r1, 0x3 - orrs r0, r1 - strb r0, [r4, 0x1] - movs r0, 0x1F - ands r6, r0 - lsls r2, r6, 1 - ldrb r1, [r4, 0x3] - movs r0, 0x3F - negs r0, r0 - ands r0, r1 - orrs r0, r2 - strb r0, [r4, 0x3] - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - adds r1, r4, 0 - adds r1, 0x43 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - mov r1, r9 - lsls r0, r1, 24 - lsrs r0, 24 - movs r2, 0x80 - lsls r2, 1 - adds r1, r2, 0 - movs r3, 0 - bl obj_id_set_rotscale - ldrb r3, [r4, 0x1] - lsrs r1, r3, 6 - ldrb r2, [r4, 0x3] - lsrs r2, 6 - lsls r3, 30 - lsrs r3, 30 - adds r0, r4, 0 - bl CalcCenterToCornerVec - ldr r1, _080DC5EC @ =gBattleAnimArgs - ldrb r0, [r1] - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r0, 24 - strh r0, [r7, 0x22] - mov r0, r10 - strh r0, [r7, 0x24] - mov r1, r9 - strh r1, [r7, 0x26] - ldr r0, _080DC5F0 @ =sub_80DC5F4 - str r0, [r7] -_080DC5D6: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080DC5E4: .4byte gSprites -_080DC5E8: .4byte SpriteCallbackDummy -_080DC5EC: .4byte gBattleAnimArgs -_080DC5F0: .4byte sub_80DC5F4 - thumb_func_end sub_80DC4F4 - - thumb_func_start sub_80DC5F4 -sub_80DC5F4: @ 80DC5F4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - ldr r1, _080DC618 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080DC678 - cmp r0, 0x1 - bgt _080DC61C - cmp r0, 0 - beq _080DC626 - b _080DC6F8 - .align 2, 0 -_080DC618: .4byte gTasks -_080DC61C: - cmp r0, 0x2 - beq _080DC6C8 - cmp r0, 0x3 - beq _080DC6E8 - b _080DC6F8 -_080DC626: - ldrh r0, [r4, 0xA] - adds r0, 0x4 - strh r0, [r4, 0xA] - ldr r1, _080DC674 @ =gSineTable - movs r2, 0xA - ldrsh r0, [r4, r2] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - lsls r1, 16 - asrs r1, 17 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - subs r0, r1 - strh r0, [r4, 0xC] - ldrh r0, [r4, 0x26] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0xC - ldrsh r2, [r4, r1] - adds r1, r2, 0 - movs r3, 0 - bl obj_id_set_rotscale - ldrh r0, [r4, 0x26] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x22] - lsls r1, 24 - lsrs r1, 24 - bl sub_8079AB8 - movs r2, 0xA - ldrsh r0, [r4, r2] - cmp r0, 0x30 - bne _080DC6F8 - b _080DC6DA - .align 2, 0 -_080DC674: .4byte gSineTable -_080DC678: - ldrh r0, [r4, 0xA] - subs r0, 0x4 - strh r0, [r4, 0xA] - ldr r1, _080DC6C4 @ =gSineTable - movs r2, 0xA - ldrsh r0, [r4, r2] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - lsls r1, 16 - asrs r1, 17 - movs r2, 0x80 - lsls r2, 1 - adds r0, r2, 0 - subs r0, r1 - strh r0, [r4, 0xC] - ldrh r0, [r4, 0x26] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0xC - ldrsh r2, [r4, r1] - adds r1, r2, 0 - movs r3, 0 - bl obj_id_set_rotscale - ldrh r0, [r4, 0x26] - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r4, 0x22] - lsls r1, 24 - lsrs r1, 24 - bl sub_8079AB8 - movs r2, 0xA - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _080DC6F8 - b _080DC6DA - .align 2, 0 -_080DC6C4: .4byte gSineTable -_080DC6C8: - movs r0, 0x26 - ldrsh r1, [r4, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _080DC6E4 @ =gSprites - adds r0, r1 - bl obj_delete_but_dont_free_vram -_080DC6DA: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080DC6F8 - .align 2, 0 -_080DC6E4: .4byte gSprites -_080DC6E8: - ldrh r0, [r4, 0x24] - lsls r0, 24 - lsrs r0, 24 - bl FreeOamMatrix - adds r0, r5, 0 - bl DestroyAnimVisualTask -_080DC6F8: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80DC5F4 - - thumb_func_start sub_80DC700 -sub_80DC700: @ 80DC700 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - cmp r0, 0x1 - beq _080DC778 - cmp r0, 0x1 - bgt _080DC716 - cmp r0, 0 - beq _080DC720 - b _080DC818 -_080DC716: - cmp r0, 0x2 - beq _080DC7AA - cmp r0, 0x3 - beq _080DC808 - b _080DC818 -_080DC720: - ldr r4, _080DC76C @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080DC74E - ldrh r0, [r5, 0x22] - adds r0, 0xC - strh r0, [r5, 0x22] -_080DC74E: - movs r0, 0x8 - strh r0, [r5, 0x30] - ldr r1, _080DC770 @ =REG_BLDCNT - movs r2, 0xFD - lsls r2, 6 - adds r0, r2, 0 - strh r0, [r1] - ldr r2, _080DC774 @ =REG_BLDALPHA - ldrh r1, [r5, 0x30] - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r0, r1 - strh r0, [r2] - b _080DC7A2 - .align 2, 0 -_080DC76C: .4byte gAnimBankAttacker -_080DC770: .4byte REG_BLDCNT -_080DC774: .4byte REG_BLDALPHA -_080DC778: - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080DC818 - movs r0, 0x40 - negs r0, r0 - bl BattleAnimAdjustPanning - adds r1, r0, 0 - lsls r1, 24 - asrs r1, 24 - movs r0, 0xCB - bl PlaySE12WithPanning - adds r0, r5, 0 - movs r1, 0x1 - bl ChangeSpriteAffineAnim -_080DC7A2: - ldrh r0, [r5, 0x2E] - adds r0, 0x1 - strh r0, [r5, 0x2E] - b _080DC818 -_080DC7AA: - ldrh r0, [r5, 0x32] - adds r1, r0, 0x1 - strh r1, [r5, 0x32] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _080DC7E8 - movs r0, 0 - strh r0, [r5, 0x32] - ldrh r1, [r5, 0x30] - subs r1, 0x1 - strh r1, [r5, 0x30] - ldr r2, _080DC804 @ =REG_BLDALPHA - movs r0, 0x10 - subs r0, r1 - lsls r0, 8 - orrs r1, r0 - strh r1, [r2] - movs r1, 0x30 - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _080DC7E8 - ldrh r0, [r5, 0x2E] - adds r0, 0x1 - strh r0, [r5, 0x2E] - adds r2, r5, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] -_080DC7E8: - movs r0, 0xE0 - lsls r0, 2 - adds r2, r0, 0 - ldrh r1, [r5, 0x34] - adds r2, r1 - lsls r1, r2, 16 - asrs r1, 24 - ldrh r0, [r5, 0x26] - subs r0, r1 - strh r0, [r5, 0x26] - movs r0, 0xFF - ands r2, r0 - strh r2, [r5, 0x34] - b _080DC818 - .align 2, 0 -_080DC804: .4byte REG_BLDALPHA -_080DC808: - ldr r0, _080DC820 @ =REG_BLDCNT - movs r1, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, r5, 0 - bl DestroyAnimSprite -_080DC818: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DC820: .4byte REG_BLDCNT - thumb_func_end sub_80DC700 - - .align 2, 0 @ Don't pad with nop. -- cgit v1.2.3 From 07a44e30ff530d5018f870aba4c5710d1e83059b Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sat, 3 Feb 2018 11:58:21 -0800 Subject: Decompile more of dark.s --- asm/dark.s | 1071 ------------------------------------------------------------ 1 file changed, 1071 deletions(-) (limited to 'asm') diff --git a/asm/dark.s b/asm/dark.s index 9f6ad3278..572780621 100644 --- a/asm/dark.s +++ b/asm/dark.s @@ -7,1077 +7,6 @@ @ dark - thumb_func_start sub_80DFF1C -sub_80DFF1C: @ 80DFF1C - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _080DFF50 @ =gBattleAnimArgs - ldrh r0, [r5] - ldrh r1, [r4, 0x20] - adds r0, r1 - strh r0, [r4, 0x20] - ldrh r0, [r5, 0x2] - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] - ldrb r1, [r5, 0x4] - adds r0, r4, 0 - bl StartSpriteAffineAnim - ldrh r0, [r5, 0x6] - strh r0, [r4, 0x2E] - ldrh r0, [r5, 0x8] - strh r0, [r4, 0x30] - ldrh r0, [r5, 0xA] - strh r0, [r4, 0x32] - ldr r0, _080DFF54 @ =sub_80DFF58 - str r0, [r4, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DFF50: .4byte gBattleAnimArgs -_080DFF54: .4byte sub_80DFF58 - thumb_func_end sub_80DFF1C - - thumb_func_start sub_80DFF58 -sub_80DFF58: @ 80DFF58 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x2E] - ldrh r1, [r2, 0x36] - adds r0, r1 - strh r0, [r2, 0x36] - ldrh r1, [r2, 0x30] - ldrh r3, [r2, 0x38] - adds r1, r3 - strh r1, [r2, 0x38] - lsls r0, 16 - asrs r0, 24 - strh r0, [r2, 0x24] - lsls r1, 16 - asrs r1, 24 - strh r1, [r2, 0x26] - ldrh r0, [r2, 0x34] - adds r0, 0x1 - strh r0, [r2, 0x34] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x32 - ldrsh r1, [r2, r3] - cmp r0, r1 - bne _080DFF8E - ldr r0, _080DFF94 @ =sub_80DFF98 - str r0, [r2, 0x1C] -_080DFF8E: - pop {r0} - bx r0 - .align 2, 0 -_080DFF94: .4byte sub_80DFF98 - thumb_func_end sub_80DFF58 - - thumb_func_start sub_80DFF98 -sub_80DFF98: @ 80DFF98 - push {lr} - adds r3, r0, 0 - ldrh r1, [r3, 0x36] - ldrh r0, [r3, 0x2E] - subs r1, r0 - strh r1, [r3, 0x36] - ldrh r0, [r3, 0x38] - ldrh r2, [r3, 0x30] - subs r0, r2 - strh r0, [r3, 0x38] - lsls r1, 16 - asrs r1, 24 - strh r1, [r3, 0x24] - lsls r0, 16 - asrs r0, 24 - strh r0, [r3, 0x26] - ldrh r0, [r3, 0x34] - subs r0, 0x1 - strh r0, [r3, 0x34] - lsls r0, 16 - cmp r0, 0 - bne _080DFFCA - adds r0, r3, 0 - bl move_anim_8074EE0 -_080DFFCA: - pop {r0} - bx r0 - thumb_func_end sub_80DFF98 - - thumb_func_start sub_80DFFD0 -sub_80DFFD0: @ 80DFFD0 - push {r4-r7,lr} - adds r4, r0, 0 - ldr r0, _080DFFE4 @ =gBattleAnimArgs - movs r2, 0 - ldrsh r1, [r0, r2] - adds r3, r0, 0 - cmp r1, 0 - bne _080DFFEC - ldr r0, _080DFFE8 @ =gAnimBankAttacker - b _080DFFEE - .align 2, 0 -_080DFFE4: .4byte gBattleAnimArgs -_080DFFE8: .4byte gAnimBankAttacker -_080DFFEC: - ldr r0, _080E001C @ =gAnimBankTarget -_080DFFEE: - ldrb r5, [r0] - movs r6, 0x14 - ldrh r2, [r4, 0x4] - lsls r1, r2, 22 - lsrs r1, 22 - adds r1, 0x4 - ldr r7, _080E0020 @ =0x000003ff - adds r0, r7, 0 - ands r1, r0 - ldr r0, _080E0024 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x4] - movs r1, 0x2 - ldrsh r0, [r3, r1] - cmp r0, 0x1 - beq _080E004C - cmp r0, 0x1 - bgt _080E0028 - cmp r0, 0 - beq _080E0032 - b _080E00A0 - .align 2, 0 -_080E001C: .4byte gAnimBankTarget -_080E0020: .4byte 0x000003ff -_080E0024: .4byte 0xfffffc00 -_080E0028: - cmp r0, 0x2 - beq _080E0066 - cmp r0, 0x3 - beq _080E007E - b _080E00A0 -_080E0032: - adds r0, r5, 0 - movs r1, 0x5 - bl sub_807A100 - subs r0, 0x8 - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r4, 0x22] - b _080E00A0 -_080E004C: - adds r0, r5, 0 - movs r1, 0x5 - bl sub_807A100 - subs r0, 0xE - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x10 - strh r0, [r4, 0x22] - b _080E00A0 -_080E0066: - adds r0, r5, 0 - movs r1, 0x4 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x8 - b _080E0094 -_080E007E: - adds r0, r5, 0 - movs r1, 0x4 - bl sub_807A100 - adds r0, 0xE - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x10 -_080E0094: - strh r0, [r4, 0x22] - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - movs r6, 0xEC -_080E00A0: - movs r0, 0x20 - strh r0, [r4, 0x2E] - lsls r0, r6, 24 - asrs r0, 24 - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x32] - ldrh r0, [r4, 0x22] - adds r0, 0xC - strh r0, [r4, 0x36] - ldr r0, _080E00C8 @ =0x0000fff4 - strh r0, [r4, 0x38] - adds r0, r4, 0 - bl sub_80786EC - ldr r0, _080E00CC @ =sub_80E00D0 - str r0, [r4, 0x1C] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E00C8: .4byte 0x0000fff4 -_080E00CC: .4byte sub_80E00D0 - thumb_func_end sub_80DFFD0 - - thumb_func_start sub_80E00D0 -sub_80E00D0: @ 80E00D0 - push {r4,lr} - adds r4, r0, 0 - bl sub_8078718 - lsls r0, 24 - cmp r0, 0 - beq _080E00E4 - adds r0, r4, 0 - bl move_anim_8074EE0 -_080E00E4: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80E00D0 - - thumb_func_start sub_80E00EC -sub_80E00EC: @ 80E00EC - push {r4-r7,lr} - sub sp, 0x18 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080E0150 @ =gTasks - adds r5, r1, r0 - ldr r4, _080E0154 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x1F - movs r6, 0 - strh r0, [r5, 0x16] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - subs r0, 0x7 - strh r0, [r5, 0x14] - ldrh r1, [r5, 0x16] - strh r1, [r5, 0x12] - strh r0, [r5, 0x10] - subs r1, r0 - lsls r1, 8 - strh r1, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - subs r1, 0x20 - strh r1, [r5, 0x24] - adds r0, 0x20 - strh r0, [r5, 0x26] - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080E015C - ldr r0, _080E0158 @ =0x0000fff4 - b _080E015E - .align 2, 0 -_080E0150: .4byte gTasks -_080E0154: .4byte gAnimBankAttacker -_080E0158: .4byte 0x0000fff4 -_080E015C: - ldr r0, _080E01A8 @ =0x0000ffc0 -_080E015E: - strh r0, [r5, 0x18] - ldr r0, _080E01AC @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0xE] - cmp r0, 0x1 - bne _080E01C4 - add r4, sp, 0xC - adds r0, r4, 0 - bl sub_8078914 - ldr r0, _080E01B0 @ =gBattle_BG1_Y - ldrh r0, [r0] - strh r0, [r5, 0x1C] - ldr r1, _080E01B4 @ =REG_BLDCNT - ldr r2, _080E01B8 @ =0x00003f42 - adds r0, r2, 0 - strh r0, [r1] - ldrb r1, [r4, 0x8] - lsls r1, 4 - movs r0, 0 - movs r2, 0x20 - bl FillPalette - ldr r0, _080E01BC @ =REG_BG1VOFS - str r0, [sp] - movs r7, 0x2 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080E01F4 - ldr r1, _080E01C0 @ =gBattle_BG2_X - b _080E01EE - .align 2, 0 -_080E01A8: .4byte 0x0000ffc0 -_080E01AC: .4byte gAnimBankAttacker -_080E01B0: .4byte gBattle_BG1_Y -_080E01B4: .4byte REG_BLDCNT -_080E01B8: .4byte 0x00003f42 -_080E01BC: .4byte REG_BG1VOFS -_080E01C0: .4byte gBattle_BG2_X -_080E01C4: - ldr r0, _080E0278 @ =gBattle_BG2_Y - ldrh r0, [r0] - strh r0, [r5, 0x1C] - ldr r1, _080E027C @ =REG_BLDCNT - ldr r2, _080E0280 @ =0x00003f44 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - movs r1, 0x90 - movs r2, 0x20 - bl FillPalette - ldr r0, _080E0284 @ =REG_BG2VOFS - str r0, [sp] - movs r7, 0x4 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080E01F4 - ldr r1, _080E0288 @ =gBattle_BG1_X -_080E01EE: - ldrh r0, [r1] - adds r0, 0xF0 - strh r0, [r1] -_080E01F4: - ldr r0, _080E028C @ =0xa2600001 - str r0, [sp, 0x4] - mov r2, sp - movs r1, 0 - movs r0, 0x1 - strb r0, [r2, 0x8] - mov r0, sp - strb r1, [r0, 0x9] - strh r1, [r5, 0x1E] - movs r0, 0x10 - strh r0, [r5, 0x20] - strh r1, [r5, 0x8] - strh r1, [r5, 0xA] - strh r1, [r5, 0xC] - movs r0, 0x3 - bl sub_80E08CC - movs r3, 0 - ldr r4, _080E0290 @ =gScanlineEffectRegBuffers - movs r0, 0xF0 - lsls r0, 3 - adds r6, r4, r0 -_080E0220: - lsls r1, r3, 1 - adds r2, r1, r4 - ldrh r0, [r5, 0x1C] - strh r0, [r2] - adds r1, r6 - ldrh r0, [r5, 0x1C] - strh r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x6F - bls _080E0220 - ldr r0, [sp] - ldr r1, [sp, 0x4] - ldr r2, [sp, 0x8] - bl ScanlineEffect_SetParams - ldr r1, _080E0294 @ =REG_WINOUT - movs r0, 0x3F - eors r7, r0 - movs r2, 0xFC - lsls r2, 6 - adds r0, r2, 0 - orrs r7, r0 - strh r7, [r1] - subs r1, 0x2 - adds r2, 0x3F - adds r0, r2, 0 - strh r0, [r1] - ldr r2, _080E0298 @ =gBattle_WIN0H - ldrh r0, [r5, 0x24] - lsls r0, 8 - ldrh r1, [r5, 0x26] - orrs r0, r1 - strh r0, [r2] - ldr r1, _080E029C @ =gBattle_WIN0V - movs r0, 0xA0 - strh r0, [r1] - ldr r0, _080E02A0 @ =sub_80E02A4 - str r0, [r5] - add sp, 0x18 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E0278: .4byte gBattle_BG2_Y -_080E027C: .4byte REG_BLDCNT -_080E0280: .4byte 0x00003f44 -_080E0284: .4byte REG_BG2VOFS -_080E0288: .4byte gBattle_BG1_X -_080E028C: .4byte 0xa2600001 -_080E0290: .4byte gScanlineEffectRegBuffers -_080E0294: .4byte REG_WINOUT -_080E0298: .4byte gBattle_WIN0H -_080E029C: .4byte gBattle_WIN0V -_080E02A0: .4byte sub_80E02A4 - thumb_func_end sub_80E00EC - - thumb_func_start sub_80E02A4 -sub_80E02A4: @ 80E02A4 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _080E02C8 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bls _080E02BE - b _080E03B6 -_080E02BE: - lsls r0, 2 - ldr r1, _080E02CC @ =_080E02D0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080E02C8: .4byte gTasks -_080E02CC: .4byte _080E02D0 - .align 2, 0 -_080E02D0: - .4byte _080E02E4 - .4byte _080E0344 - .4byte _080E035E - .4byte _080E039C - .4byte _080E03B0 -_080E02E4: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _080E03B6 - movs r0, 0 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080E0314 - ldrh r1, [r4, 0x1E] - movs r2, 0x1E - ldrsh r0, [r4, r2] - cmp r0, 0xC - beq _080E0322 - adds r0, r1, 0x1 - strh r0, [r4, 0x1E] - b _080E0322 -_080E0314: - ldrh r1, [r4, 0x20] - movs r2, 0x20 - ldrsh r0, [r4, r2] - cmp r0, 0x8 - beq _080E0322 - subs r0, r1, 0x1 - strh r0, [r4, 0x20] -_080E0322: - ldr r2, _080E0340 @ =REG_BLDALPHA - ldrh r0, [r4, 0x20] - lsls r0, 8 - ldrh r1, [r4, 0x1E] - orrs r0, r1 - strh r0, [r2] - movs r1, 0x1E - ldrsh r0, [r4, r1] - cmp r0, 0xC - bne _080E03B6 - movs r2, 0x20 - ldrsh r0, [r4, r2] - cmp r0, 0x8 - bne _080E03B6 - b _080E03A2 - .align 2, 0 -_080E0340: .4byte REG_BLDALPHA -_080E0344: - ldrh r0, [r4, 0x10] - subs r0, 0x8 - strh r0, [r4, 0x10] - adds r0, r4, 0 - bl sub_80E079C - movs r0, 0x10 - ldrsh r1, [r4, r0] - movs r2, 0x18 - ldrsh r0, [r4, r2] - cmp r1, r0 - bge _080E03B6 - b _080E03A2 -_080E035E: - ldrh r0, [r4, 0x10] - subs r0, 0x8 - strh r0, [r4, 0x10] - adds r0, r4, 0 - bl sub_80E079C - ldrh r1, [r4, 0x24] - adds r1, 0x4 - strh r1, [r4, 0x24] - ldrh r0, [r4, 0x26] - subs r2, r0, 0x4 - strh r2, [r4, 0x26] - lsls r1, 16 - lsls r0, r2, 16 - cmp r1, r0 - blt _080E0380 - strh r2, [r4, 0x24] -_080E0380: - ldr r3, _080E0398 @ =gBattle_WIN0H - ldrh r2, [r4, 0x24] - lsls r0, r2, 8 - ldrh r1, [r4, 0x26] - orrs r0, r1 - strh r0, [r3] - lsls r2, 16 - lsls r1, 16 - cmp r2, r1 - bne _080E03B6 - b _080E03A2 - .align 2, 0 -_080E0398: .4byte gBattle_WIN0H -_080E039C: - ldr r1, _080E03AC @ =gScanlineEffect - movs r0, 0x3 - strb r0, [r1, 0x15] -_080E03A2: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080E03B6 - .align 2, 0 -_080E03AC: .4byte gScanlineEffect -_080E03B0: - adds r0, r2, 0 - bl DestroyAnimVisualTask -_080E03B6: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80E02A4 - - thumb_func_start sub_80E03BC -sub_80E03BC: @ 80E03BC - push {r4-r7,lr} - sub sp, 0x18 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _080E03E4 @ =gTasks - adds r5, r0, r1 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x4 - bls _080E03D8 - b _080E05F2 -_080E03D8: - lsls r0, 2 - ldr r1, _080E03E8 @ =_080E03EC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080E03E4: .4byte gTasks -_080E03E8: .4byte _080E03EC - .align 2, 0 -_080E03EC: - .4byte _080E0400 - .4byte _080E048C - .4byte _080E04D0 - .4byte _080E053C - .4byte _080E05A4 -_080E0400: - bl IsContest - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080E043C - ldr r0, _080E042C @ =gBattle_WIN0H - movs r1, 0 - strh r1, [r0] - ldr r0, _080E0430 @ =gBattle_WIN0V - strh r1, [r0] - ldr r0, _080E0434 @ =REG_WININ - ldr r2, _080E0438 @ =0x00003f3f - adds r1, r2, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, r4, 0 - bl DestroyAnimVisualTask - b _080E05F2 - .align 2, 0 -_080E042C: .4byte gBattle_WIN0H -_080E0430: .4byte gBattle_WIN0V -_080E0434: .4byte REG_WININ -_080E0438: .4byte 0x00003f3f -_080E043C: - ldr r0, _080E045C @ =gAnimBankTarget - ldrb r0, [r0] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0xE] - cmp r0, 0x1 - bne _080E046C - ldr r1, _080E0460 @ =REG_BLDCNT - ldr r2, _080E0464 @ =0x00003f42 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _080E0468 @ =gBattle_BG2_X - b _080E0476 - .align 2, 0 -_080E045C: .4byte gAnimBankTarget -_080E0460: .4byte REG_BLDCNT -_080E0464: .4byte 0x00003f42 -_080E0468: .4byte gBattle_BG2_X -_080E046C: - ldr r1, _080E0480 @ =REG_BLDCNT - ldr r2, _080E0484 @ =0x00003f44 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _080E0488 @ =gBattle_BG1_X -_080E0476: - ldrh r0, [r1] - adds r0, 0xF0 - strh r0, [r1] - b _080E0590 - .align 2, 0 -_080E0480: .4byte REG_BLDCNT -_080E0484: .4byte 0x00003f44 -_080E0488: .4byte gBattle_BG1_X -_080E048C: - movs r1, 0xE - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _080E04B4 - mov r0, sp - bl sub_8078914 - ldr r0, _080E04B0 @ =gBattle_BG1_Y - ldrh r0, [r0] - strh r0, [r5, 0x1C] - mov r0, sp - ldrb r1, [r0, 0x8] - lsls r1, 4 - movs r0, 0 - movs r2, 0x20 - bl FillPalette - b _080E04C4 - .align 2, 0 -_080E04B0: .4byte gBattle_BG1_Y -_080E04B4: - ldr r0, _080E04CC @ =gBattle_BG2_Y - ldrh r0, [r0] - strh r0, [r5, 0x1C] - movs r0, 0 - movs r1, 0x90 - movs r2, 0x20 - bl FillPalette -_080E04C4: - movs r0, 0x3 - bl sub_80E08CC - b _080E0590 - .align 2, 0 -_080E04CC: .4byte gBattle_BG2_Y -_080E04D0: - ldr r4, _080E051C @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x1F - movs r6, 0 - strh r0, [r5, 0x16] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - subs r0, 0x7 - strh r0, [r5, 0x14] - ldrh r1, [r5, 0x16] - subs r1, r0 - lsls r1, 8 - strh r1, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - subs r1, r0, 0x4 - strh r1, [r5, 0x24] - adds r0, 0x4 - strh r0, [r5, 0x26] - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080E0524 - ldr r0, _080E0520 @ =0x0000fff4 - b _080E0526 - .align 2, 0 -_080E051C: .4byte gAnimBankTarget -_080E0520: .4byte 0x0000fff4 -_080E0524: - ldr r0, _080E0538 @ =0x0000ffc0 -_080E0526: - strh r0, [r5, 0x18] - ldrh r0, [r5, 0x18] - strh r0, [r5, 0x10] - strh r0, [r5, 0x12] - movs r0, 0xC - strh r0, [r5, 0x1E] - movs r0, 0x8 - strh r0, [r5, 0x20] - b _080E0590 - .align 2, 0 -_080E0538: .4byte 0x0000ffc0 -_080E053C: - movs r2, 0xE - ldrsh r0, [r5, r2] - cmp r0, 0x1 - bne _080E054C - ldr r0, _080E0548 @ =REG_BG1VOFS - b _080E054E - .align 2, 0 -_080E0548: .4byte REG_BG1VOFS -_080E054C: - ldr r0, _080E0598 @ =REG_BG2VOFS -_080E054E: - str r0, [sp, 0xC] - movs r3, 0 - add r4, sp, 0xC - ldr r6, _080E059C @ =gScanlineEffectRegBuffers - movs r0, 0xF0 - lsls r0, 3 - adds r7, r6, r0 -_080E055C: - lsls r1, r3, 1 - adds r2, r1, r6 - ldrh r0, [r5, 0x1C] - adds r0, 0x9F - subs r0, r3 - strh r0, [r2] - adds r1, r7 - ldrh r0, [r5, 0x1C] - adds r0, 0x9F - subs r0, r3 - strh r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x6F - bls _080E055C - ldr r1, _080E05A0 @ =0xa2600001 - str r1, [r4, 0x4] - movs r2, 0 - movs r0, 0x1 - strb r0, [r4, 0x8] - strb r2, [r4, 0x9] - ldr r0, [sp, 0xC] - ldr r2, [r4, 0x8] - bl ScanlineEffect_SetParams -_080E0590: - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - b _080E05F2 - .align 2, 0 -_080E0598: .4byte REG_BG2VOFS -_080E059C: .4byte gScanlineEffectRegBuffers -_080E05A0: .4byte 0xa2600001 -_080E05A4: - movs r1, 0xE - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _080E05BC - ldr r1, _080E05B4 @ =REG_WINOUT - ldr r2, _080E05B8 @ =0x00003f3d - b _080E05C0 - .align 2, 0 -_080E05B4: .4byte REG_WINOUT -_080E05B8: .4byte 0x00003f3d -_080E05BC: - ldr r1, _080E05FC @ =REG_WINOUT - ldr r2, _080E0600 @ =0x00003f3b -_080E05C0: - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _080E0604 @ =REG_WININ - ldr r2, _080E0608 @ =0x00003f3f - adds r0, r2, 0 - strh r0, [r1] - ldr r2, _080E060C @ =gBattle_WIN0H - ldrh r0, [r5, 0x24] - lsls r0, 8 - ldrh r1, [r5, 0x26] - orrs r0, r1 - strh r0, [r2] - ldr r1, _080E0610 @ =gBattle_WIN0V - movs r0, 0xA0 - strh r0, [r1] - movs r0, 0 - strh r0, [r5, 0x8] - strh r0, [r5, 0xA] - strh r0, [r5, 0xC] - ldr r1, _080E0614 @ =REG_BLDALPHA - ldr r2, _080E0618 @ =0x0000080c - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _080E061C @ =sub_80E0620 - str r0, [r5] -_080E05F2: - add sp, 0x18 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E05FC: .4byte REG_WINOUT -_080E0600: .4byte 0x00003f3b -_080E0604: .4byte REG_WININ -_080E0608: .4byte 0x00003f3f -_080E060C: .4byte gBattle_WIN0H -_080E0610: .4byte gBattle_WIN0V -_080E0614: .4byte REG_BLDALPHA -_080E0618: .4byte 0x0000080c -_080E061C: .4byte sub_80E0620 - thumb_func_end sub_80E03BC - - thumb_func_start sub_80E0620 -sub_80E0620: @ 80E0620 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _080E0644 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bls _080E063A - b _080E0784 -_080E063A: - lsls r0, 2 - ldr r1, _080E0648 @ =_080E064C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080E0644: .4byte gTasks -_080E0648: .4byte _080E064C - .align 2, 0 -_080E064C: - .4byte _080E0660 - .4byte _080E068C - .4byte _080E06F4 - .4byte _080E0754 - .4byte _080E0768 -_080E0660: - ldrh r0, [r4, 0x12] - adds r0, 0x8 - strh r0, [r4, 0x12] - lsls r0, 16 - asrs r0, 16 - ldrh r2, [r4, 0x16] - movs r3, 0x16 - ldrsh r1, [r4, r3] - cmp r0, r1 - blt _080E0676 - strh r2, [r4, 0x12] -_080E0676: - adds r0, r4, 0 - bl sub_80E079C - movs r0, 0x12 - ldrsh r1, [r4, r0] - movs r2, 0x16 - ldrsh r0, [r4, r2] - cmp r1, r0 - beq _080E068A - b _080E0784 -_080E068A: - b _080E075A -_080E068C: - movs r3, 0x26 - ldrsh r0, [r4, r3] - movs r2, 0x24 - ldrsh r1, [r4, r2] - subs r0, r1 - cmp r0, 0x3F - bgt _080E06A8 - ldrh r0, [r4, 0x24] - subs r0, 0x4 - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x26] - adds r0, 0x4 - strh r0, [r4, 0x26] - b _080E06AC -_080E06A8: - movs r0, 0x1 - strh r0, [r4, 0xA] -_080E06AC: - ldr r2, _080E06F0 @ =gBattle_WIN0H - ldrh r0, [r4, 0x24] - lsls r0, 8 - ldrh r1, [r4, 0x26] - orrs r0, r1 - strh r0, [r2] - ldrh r0, [r4, 0x10] - adds r0, 0x8 - strh r0, [r4, 0x10] - lsls r0, 16 - asrs r0, 16 - ldrh r2, [r4, 0x14] - movs r3, 0x14 - ldrsh r1, [r4, r3] - cmp r0, r1 - blt _080E06CE - strh r2, [r4, 0x10] -_080E06CE: - adds r0, r4, 0 - bl sub_80E079C - movs r0, 0x10 - ldrsh r1, [r4, r0] - movs r2, 0x14 - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _080E0784 - movs r3, 0xA - ldrsh r0, [r4, r3] - cmp r0, 0 - beq _080E0784 - movs r0, 0 - strh r0, [r4, 0xA] - b _080E075A - .align 2, 0 -_080E06F0: .4byte gBattle_WIN0H -_080E06F4: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _080E0784 - movs r0, 0 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080E0724 - ldrh r1, [r4, 0x1E] - movs r2, 0x1E - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _080E0732 - subs r0, r1, 0x1 - strh r0, [r4, 0x1E] - b _080E0732 -_080E0724: - ldrh r1, [r4, 0x20] - movs r3, 0x20 - ldrsh r0, [r4, r3] - cmp r0, 0xF - bgt _080E0732 - adds r0, r1, 0x1 - strh r0, [r4, 0x20] -_080E0732: - ldr r2, _080E0750 @ =REG_BLDALPHA - ldrh r0, [r4, 0x20] - lsls r0, 8 - ldrh r1, [r4, 0x1E] - orrs r0, r1 - strh r0, [r2] - movs r1, 0x1E - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080E0784 - movs r2, 0x20 - ldrsh r0, [r4, r2] - cmp r0, 0x10 - bne _080E0784 - b _080E075A - .align 2, 0 -_080E0750: .4byte REG_BLDALPHA -_080E0754: - ldr r1, _080E0764 @ =gScanlineEffect - movs r0, 0x3 - strb r0, [r1, 0x15] -_080E075A: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080E0784 - .align 2, 0 -_080E0764: .4byte gScanlineEffect -_080E0768: - ldr r0, _080E078C @ =gBattle_WIN0H - movs r1, 0 - strh r1, [r0] - ldr r0, _080E0790 @ =gBattle_WIN0V - strh r1, [r0] - ldr r0, _080E0794 @ =REG_WININ - ldr r3, _080E0798 @ =0x00003f3f - adds r1, r3, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, r2, 0 - bl DestroyAnimVisualTask -_080E0784: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080E078C: .4byte gBattle_WIN0H -_080E0790: .4byte gBattle_WIN0V -_080E0794: .4byte REG_WININ -_080E0798: .4byte 0x00003f3f - thumb_func_end sub_80E0620 - thumb_func_start sub_80E079C sub_80E079C: @ 80E079C push {r4-r7,lr} -- cgit v1.2.3 From 338d2b0b1897899a6fa787f8baa4cf392f81b718 Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sun, 4 Feb 2018 12:34:18 -0800 Subject: Finish decompiling dark.s except one function --- asm/dark.s | 942 ------------------------------------------------------------- 1 file changed, 942 deletions(-) delete mode 100644 asm/dark.s (limited to 'asm') diff --git a/asm/dark.s b/asm/dark.s deleted file mode 100644 index 572780621..000000000 --- a/asm/dark.s +++ /dev/null @@ -1,942 +0,0 @@ - .include "constants/gba_constants.inc" - .include "include/macros.inc" - - .syntax unified - - .text - - @ dark - - thumb_func_start sub_80E079C -sub_80E079C: @ 80E079C - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - ldrh r0, [r6, 0x12] - ldrh r4, [r6, 0x10] - subs r0, r4 - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - beq _080E0890 - movs r2, 0x22 - ldrsh r0, [r6, r2] - bl __divsi3 - mov r8, r0 - movs r3, 0x14 - ldrsh r0, [r6, r3] - lsls r5, r0, 8 - lsls r0, r4, 16 - movs r4, 0 - cmp r0, 0 - ble _080E07FC - ldr r0, _080E0888 @ =gScanlineEffectRegBuffers - mov r12, r0 - ldr r7, _080E088C @ =gScanlineEffect -_080E07D0: - lsls r2, r4, 16 - asrs r2, 16 - lsls r3, r2, 1 - ldrb r1, [r7, 0x14] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 7 - adds r3, r0 - add r3, r12 - adds r1, r2, 0 - subs r1, 0x9F - ldrh r0, [r6, 0x1C] - subs r0, r1 - strh r0, [r3] - adds r2, 0x1 - lsls r2, 16 - lsrs r4, r2, 16 - asrs r2, 16 - movs r1, 0x10 - ldrsh r0, [r6, r1] - cmp r2, r0 - blt _080E07D0 -_080E07FC: - ldrh r4, [r6, 0x10] - lsls r3, r4, 16 - asrs r1, r3, 16 - movs r2, 0x12 - ldrsh r0, [r6, r2] - cmp r1, r0 - bgt _080E0846 - ldr r0, _080E0888 @ =gScanlineEffectRegBuffers - mov r12, r0 - ldr r7, _080E088C @ =gScanlineEffect -_080E0810: - asrs r4, r3, 16 - cmp r4, 0 - blt _080E0832 - asrs r1, r5, 8 - subs r1, r4 - lsls r3, r4, 1 - ldrb r2, [r7, 0x14] - lsls r0, r2, 4 - subs r0, r2 - lsls r0, 7 - adds r3, r0 - add r3, r12 - lsls r1, 16 - asrs r1, 16 - ldrh r2, [r6, 0x1C] - adds r1, r2 - strh r1, [r3] -_080E0832: - add r5, r8 - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - lsls r3, r4, 16 - asrs r1, r3, 16 - movs r2, 0x12 - ldrsh r0, [r6, r2] - cmp r1, r0 - ble _080E0810 -_080E0846: - movs r3, 0x1C - ldrsh r0, [r6, r3] - adds r0, 0x9F - lsls r2, r4, 16 - asrs r1, r2, 16 - subs r5, r0, r1 - movs r3, 0x16 - ldrsh r0, [r6, r3] - cmp r1, r0 - bge _080E08BE - ldr r7, _080E0888 @ =gScanlineEffectRegBuffers - ldr r4, _080E088C @ =gScanlineEffect -_080E085E: - asrs r3, r2, 16 - cmp r3, 0 - blt _080E0876 - lsls r2, r3, 1 - ldrb r1, [r4, 0x14] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 7 - adds r2, r0 - adds r2, r7 - strh r5, [r2] - subs r5, 0x1 -_080E0876: - adds r0, r3, 0x1 - lsls r2, r0, 16 - asrs r1, r2, 16 - movs r3, 0x16 - ldrsh r0, [r6, r3] - cmp r1, r0 - blt _080E085E - b _080E08BE - .align 2, 0 -_080E0888: .4byte gScanlineEffectRegBuffers -_080E088C: .4byte gScanlineEffect -_080E0890: - movs r1, 0x1C - ldrsh r0, [r6, r1] - adds r5, r0, 0 - adds r5, 0x9F - movs r4, 0 - ldr r3, _080E08C8 @ =gScanlineEffectRegBuffers - movs r2, 0xF0 - lsls r2, 3 - adds r6, r3, r2 -_080E08A2: - lsls r0, r4, 16 - asrs r0, 16 - lsls r2, r0, 1 - adds r1, r2, r3 - strh r5, [r1] - adds r2, r6 - strh r5, [r2] - subs r5, 0x1 - adds r0, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - asrs r0, 16 - cmp r0, 0x6F - ble _080E08A2 -_080E08BE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E08C8: .4byte gScanlineEffectRegBuffers - thumb_func_end sub_80E079C - - thumb_func_start sub_80E08CC -sub_80E08CC: @ 80E08CC - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - movs r4, 0 - ldr r7, _080E0914 @ =gSprites - movs r1, 0x3 - ands r0, r1 - lsls r5, r0, 2 - movs r0, 0xD - negs r0, r0 - adds r6, r0, 0 -_080E08E2: - lsls r0, r4, 24 - lsrs r0, 24 - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _080E0902 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r7 - ldrb r0, [r1, 0x5] - ands r0, r6 - orrs r0, r5 - strb r0, [r1, 0x5] -_080E0902: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x3 - bls _080E08E2 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E0914: .4byte gSprites - thumb_func_end sub_80E08CC - - thumb_func_start sub_80E0918 -sub_80E0918: @ 80E0918 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r6, _080E09B8 @ =gAnimBankAttacker - ldrb r0, [r6] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - eors r0, r1 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - ldrb r0, [r6] - adds r1, r4, 0 - bl sub_8076034 - ldr r0, _080E09BC @ =gSprites - mov r9, r0 - ldr r0, _080E09C0 @ =gObjectBankIDs - mov r8, r0 - ldrb r0, [r6] - add r0, r8 - ldrb r0, [r0] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r9 - adds r1, 0x3E - ldrb r2, [r1] - movs r7, 0x5 - negs r7, r7 - adds r0, r7, 0 - ands r0, r2 - strb r0, [r1] - ldrb r0, [r6] - movs r5, 0x2 - eors r0, r5 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080E09A2 - ldrb r0, [r6] - eors r0, r5 - movs r1, 0x1 - eors r4, r1 - adds r1, r4, 0 - bl sub_8076034 - ldrb r0, [r6] - eors r0, r5 - add r0, r8 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r9 - adds r0, 0x3E - ldrb r2, [r0] - adds r1, r7, 0 - ands r1, r2 - strb r1, [r0] -_080E09A2: - mov r0, r10 - bl DestroyAnimVisualTask - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E09B8: .4byte gAnimBankAttacker -_080E09BC: .4byte gSprites -_080E09C0: .4byte gObjectBankIDs - thumb_func_end sub_80E0918 - - thumb_func_start sub_80E09C4 -sub_80E09C4: @ 80E09C4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r4, _080E0A0C @ =gAnimBankAttacker - ldrb r0, [r4] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x1 - eors r0, r1 - negs r1, r0 - orrs r1, r0 - lsrs r5, r1, 31 - adds r0, r5, 0 - bl sub_8076464 - ldrb r1, [r4] - movs r0, 0x2 - eors r0, r1 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080E0A00 - movs r0, 0x1 - eors r5, r0 - adds r0, r5, 0 - bl sub_8076464 -_080E0A00: - adds r0, r6, 0 - bl DestroyAnimVisualTask - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080E0A0C: .4byte gAnimBankAttacker - thumb_func_end sub_80E09C4 - - thumb_func_start sub_80E0A10 -sub_80E0A10: @ 80E0A10 - push {r4,lr} - adds r4, r0, 0 - ldr r1, _080E0A40 @ =gBattleAnimArgs - ldrh r0, [r1] - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x20] - ldrh r0, [r1, 0x2] - ldrh r2, [r4, 0x22] - adds r0, r2 - strh r0, [r4, 0x22] - ldrb r1, [r1, 0x4] - adds r0, r4, 0 - bl StartSpriteAnim - ldr r0, _080E0A44 @ =sub_8078600 - str r0, [r4, 0x1C] - ldr r1, _080E0A48 @ =DestroyAnimSprite - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080E0A40: .4byte gBattleAnimArgs -_080E0A44: .4byte sub_8078600 -_080E0A48: .4byte DestroyAnimSprite - thumb_func_end sub_80E0A10 - - thumb_func_start sub_80E0A4C -sub_80E0A4C: @ 80E0A4C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - movs r7, 0 - ldr r0, _080E0B50 @ =gBattle_WIN0H - strh r7, [r0] - ldr r0, _080E0B54 @ =gBattle_WIN0V - strh r7, [r0] - ldr r1, _080E0B58 @ =REG_WININ - ldr r2, _080E0B5C @ =0x00003f3f - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r3, _080E0B60 @ =0x00003f3d - adds r0, r3, 0 - strh r0, [r1] - movs r2, 0x80 - lsls r2, 19 - ldrh r0, [r2] - movs r3, 0x80 - lsls r3, 8 - adds r1, r3, 0 - orrs r0, r1 - strh r0, [r2] - ldr r1, _080E0B64 @ =REG_BLDCNT - ldr r2, _080E0B68 @ =0x00003f42 - adds r0, r2, 0 - strh r0, [r1] - adds r1, 0x2 - ldr r3, _080E0B6C @ =0x00000c08 - adds r0, r3, 0 - strh r0, [r1] - ldr r5, _080E0B70 @ =REG_BG1CNT - ldrb r1, [r5] - movs r0, 0x4 - negs r0, r0 - mov r8, r0 - ands r0, r1 - strb r0, [r5] - ldrb r1, [r5, 0x1] - movs r0, 0x3F - ands r0, r1 - strb r0, [r5, 0x1] - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080E0AC4 - ldrb r0, [r5] - movs r1, 0xD - negs r1, r1 - ands r1, r0 - movs r0, 0x4 - orrs r1, r0 - strb r1, [r5] -_080E0AC4: - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - beq _080E0B40 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080E0B40 - ldr r4, _080E0B74 @ =gAnimBankAttacker - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - beq _080E0AF4 - ldrb r0, [r4] - bl GetBankIdentity - lsls r0, 24 - cmp r0, 0 - bne _080E0B40 -_080E0AF4: - ldrb r0, [r4] - movs r6, 0x2 - eors r0, r6 - bl IsAnimBankSpriteVisible - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080E0B40 - ldr r3, _080E0B78 @ =gSprites - ldr r1, _080E0B7C @ =gObjectBankIDs - ldrb r0, [r4] - eors r0, r6 - adds r0, r1 - ldrb r0, [r0] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r3 - ldrb r3, [r2, 0x5] - lsls r1, r3, 28 - lsrs r1, 30 - subs r1, 0x1 - movs r0, 0x3 - ands r1, r0 - lsls r1, 2 - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] - ldrb r1, [r5] - mov r0, r8 - ands r0, r1 - movs r1, 0x1 - orrs r0, r1 - strb r0, [r5] - movs r7, 0x1 -_080E0B40: - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080E0B84 - ldr r0, _080E0B80 @ =gSharedMem + 0x19348 - ldrh r5, [r0] - b _080E0BCC - .align 2, 0 -_080E0B50: .4byte gBattle_WIN0H -_080E0B54: .4byte gBattle_WIN0V -_080E0B58: .4byte REG_WININ -_080E0B5C: .4byte 0x00003f3f -_080E0B60: .4byte 0x00003f3d -_080E0B64: .4byte REG_BLDCNT -_080E0B68: .4byte 0x00003f42 -_080E0B6C: .4byte 0x00000c08 -_080E0B70: .4byte REG_BG1CNT -_080E0B74: .4byte gAnimBankAttacker -_080E0B78: .4byte gSprites -_080E0B7C: .4byte gObjectBankIDs -_080E0B80: .4byte gSharedMem + 0x19348 -_080E0B84: - ldr r4, _080E0BA4 @ =gAnimBankAttacker - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080E0BB0 - ldr r1, _080E0BA8 @ =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080E0BAC @ =gEnemyParty - b _080E0BC0 - .align 2, 0 -_080E0BA4: .4byte gAnimBankAttacker -_080E0BA8: .4byte gBattlePartyID -_080E0BAC: .4byte gEnemyParty -_080E0BB0: - ldr r1, _080E0C58 @ =gBattlePartyID - ldrb r0, [r4] - lsls r0, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080E0C5C @ =gPlayerParty -_080E0BC0: - adds r0, r1 - movs r1, 0xB - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 -_080E0BCC: - movs r0, 0 - bl GetAnimBankSpriteId - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _080E0C60 @ =gAnimBankAttacker - ldrb r0, [r0] - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_807A4A0 - lsls r0, 24 - lsrs r5, r0, 24 - mov r0, sp - bl sub_8078914 - ldr r1, [sp, 0x4] - movs r0, 0 - str r0, [sp, 0xC] - ldr r2, _080E0C64 @ =0x040000d4 - add r0, sp, 0xC - str r0, [r2] - str r1, [r2, 0x4] - ldr r0, _080E0C68 @ =0x85000400 - str r0, [r2, 0x8] - ldr r0, [r2, 0x8] - ldr r0, _080E0C6C @ =gUnknown_08D1D574 - bl LZDecompressVram - ldr r0, _080E0C70 @ =gUnknown_08D1D410 - ldr r1, [sp] - bl LZDecompressVram - ldr r0, _080E0C74 @ =gUnknown_08D1D54C - mov r1, sp - ldrb r1, [r1, 0x8] - lsls r1, 4 - movs r2, 0x20 - bl LoadCompressedPalette - ldr r2, _080E0C78 @ =gBattle_BG1_X - ldr r0, _080E0C7C @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x20] - negs r0, r0 - adds r0, 0x60 - strh r0, [r2] - ldr r2, _080E0C80 @ =gBattle_BG1_Y - ldrh r0, [r1, 0x22] - negs r0, r0 - adds r0, 0x20 - strh r0, [r2] - ldrb r0, [r1, 0x5] - lsrs r0, 4 - adds r0, 0x10 - adds r1, r0, 0 - ldr r2, _080E0C84 @ =gBattleAnimArgs - movs r3, 0x2 - ldrsh r0, [r2, r3] - cmp r0, 0 - bne _080E0C88 - adds r0, r1, 0 - movs r1, 0 - bl sub_8079108 - b _080E0C94 - .align 2, 0 -_080E0C58: .4byte gBattlePartyID -_080E0C5C: .4byte gPlayerParty -_080E0C60: .4byte gAnimBankAttacker -_080E0C64: .4byte 0x040000d4 -_080E0C68: .4byte 0x85000400 -_080E0C6C: .4byte gUnknown_08D1D574 -_080E0C70: .4byte gUnknown_08D1D410 -_080E0C74: .4byte gUnknown_08D1D54C -_080E0C78: .4byte gBattle_BG1_X -_080E0C7C: .4byte gSprites -_080E0C80: .4byte gBattle_BG1_Y -_080E0C84: .4byte gBattleAnimArgs -_080E0C88: - lsls r0, r1, 4 - ldrh r3, [r2, 0x4] - movs r1, 0x10 - movs r2, 0xB - bl BlendPalette -_080E0C94: - ldr r1, _080E0CC4 @ =gTasks - mov r2, r9 - lsls r0, r2, 2 - add r0, r9 - lsls r0, 3 - adds r0, r1 - strh r5, [r0, 0x8] - ldr r2, _080E0CC8 @ =gBattleAnimArgs - ldrh r1, [r2] - strh r1, [r0, 0xA] - ldrh r1, [r2, 0x2] - strh r1, [r0, 0xC] - ldrh r1, [r2, 0x4] - strh r1, [r0, 0xE] - strh r7, [r0, 0x14] - ldr r1, _080E0CCC @ =sub_80E0CD0 - str r1, [r0] - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E0CC4: .4byte gTasks -_080E0CC8: .4byte gBattleAnimArgs -_080E0CCC: .4byte sub_80E0CD0 - thumb_func_end sub_80E0A4C - - thumb_func_start sub_80E0CD0 -sub_80E0CD0: @ 80E0CD0 - push {r4-r7,lr} - sub sp, 0x10 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r1, _080E0DF0 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r4, r0, r1 - ldrh r0, [r4, 0x1C] - adds r0, 0x4 - movs r5, 0 - strh r0, [r4, 0x1C] - ldr r2, _080E0DF4 @ =gBattle_BG1_X - ldrh r3, [r2] - subs r1, r3, 0x4 - strh r1, [r2] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x80 - bne _080E0DE8 - strh r5, [r4, 0x1C] - adds r0, r3, 0 - adds r0, 0x7C - strh r0, [r2] - ldrh r0, [r4, 0x1E] - adds r0, 0x1 - strh r0, [r4, 0x1E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - bne _080E0DE8 - movs r0, 0 - bl sub_8076464 - ldr r0, _080E0DF8 @ =gBattle_WIN0H - strh r5, [r0] - ldr r0, _080E0DFC @ =gBattle_WIN0V - strh r5, [r0] - ldr r0, _080E0E00 @ =REG_WININ - ldr r2, _080E0E04 @ =0x00003f3f - adds r1, r2, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080E0D40 - ldr r2, _080E0E08 @ =REG_BG1CNT - ldrb r1, [r2] - movs r0, 0xD - negs r0, r0 - ands r0, r1 - strb r0, [r2] -_080E0D40: - movs r2, 0x80 - lsls r2, 19 - ldrh r0, [r2] - movs r3, 0x80 - lsls r3, 8 - adds r1, r3, 0 - eors r0, r1 - strh r0, [r2] - ldr r0, _080E0E0C @ =REG_BLDCNT - strh r5, [r0] - adds r0, 0x2 - strh r5, [r0] - movs r0, 0 - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r0, 24 - ldr r6, _080E0E10 @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r6 - ldrb r0, [r1, 0x5] - lsrs r0, 4 - adds r0, 0x10 - adds r1, r0, 0 - movs r2, 0xA - ldrsh r0, [r4, r2] - cmp r0, 0 - bne _080E0D84 - adds r0, r1, 0 - movs r1, 0x1 - bl sub_8079108 -_080E0D84: - movs r3, 0x8 - ldrsh r1, [r4, r3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - bl DestroySprite - mov r0, sp - bl sub_8078914 - ldr r2, [sp, 0x4] - str r5, [sp, 0xC] - ldr r1, _080E0E14 @ =0x040000d4 - add r0, sp, 0xC - str r0, [r1] - str r2, [r1, 0x4] - ldr r0, _080E0E18 @ =0x85000200 - str r0, [r1, 0x8] - ldr r0, [r1, 0x8] - movs r1, 0x14 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - bne _080E0DE2 - ldr r2, _080E0E1C @ =gObjectBankIDs - ldr r0, _080E0E20 @ =gAnimBankAttacker - ldrb r1, [r0] - movs r0, 0x2 - eors r0, r1 - adds r0, r2 - ldrb r0, [r0] - lsls r2, r0, 4 - adds r2, r0 - lsls r2, 2 - adds r2, r6 - ldrb r3, [r2, 0x5] - lsls r1, r3, 28 - lsrs r1, 30 - adds r1, 0x1 - movs r0, 0x3 - ands r1, r0 - lsls r1, 2 - movs r0, 0xD - negs r0, r0 - ands r0, r3 - orrs r0, r1 - strb r0, [r2, 0x5] -_080E0DE2: - adds r0, r7, 0 - bl DestroyAnimVisualTask -_080E0DE8: - add sp, 0x10 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E0DF0: .4byte gTasks -_080E0DF4: .4byte gBattle_BG1_X -_080E0DF8: .4byte gBattle_WIN0H -_080E0DFC: .4byte gBattle_WIN0V -_080E0E00: .4byte REG_WININ -_080E0E04: .4byte 0x00003f3f -_080E0E08: .4byte REG_BG1CNT -_080E0E0C: .4byte REG_BLDCNT -_080E0E10: .4byte gSprites -_080E0E14: .4byte 0x040000d4 -_080E0E18: .4byte 0x85000200 -_080E0E1C: .4byte gObjectBankIDs -_080E0E20: .4byte gAnimBankAttacker - thumb_func_end sub_80E0CD0 - - thumb_func_start sub_80E0E24 -sub_80E0E24: @ 80E0E24 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - ldr r0, _080E0E44 @ =gBattleAnimArgs - movs r2, 0 - ldrsh r1, [r0, r2] - adds r2, r0, 0 - cmp r1, 0x7 - bhi _080E0E88 - lsls r0, r1, 2 - ldr r1, _080E0E48 @ =_080E0E4C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080E0E44: .4byte gBattleAnimArgs -_080E0E48: .4byte _080E0E4C - .align 2, 0 -_080E0E4C: - .4byte _080E0E6C - .4byte _080E0E6C - .4byte _080E0E6C - .4byte _080E0E6C - .4byte _080E0E78 - .4byte _080E0E7C - .4byte _080E0E80 - .4byte _080E0E84 -_080E0E6C: - ldrb r0, [r2] - bl GetAnimBankSpriteId - lsls r0, 24 - lsrs r2, r0, 24 - b _080E0E8A -_080E0E78: - movs r4, 0 - b _080E0E90 -_080E0E7C: - movs r4, 0x2 - b _080E0E90 -_080E0E80: - movs r4, 0x1 - b _080E0E90 -_080E0E84: - movs r4, 0x3 - b _080E0E90 -_080E0E88: - movs r2, 0xFF -_080E0E8A: - movs r0, 0 - cmp r0, 0 - beq _080E0EB6 -_080E0E90: - adds r0, r4, 0 - bl GetBankByIdentity - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl IsAnimBankSpriteVisible - lsls r0, 24 - cmp r0, 0 - beq _080E0EB4 - ldr r0, _080E0EB0 @ =gObjectBankIDs - adds r0, r4, r0 - ldrb r2, [r0] - b _080E0EB6 - .align 2, 0 -_080E0EB0: .4byte gObjectBankIDs -_080E0EB4: - movs r2, 0xFF -_080E0EB6: - cmp r2, 0xFF - beq _080E0ED2 - ldr r1, _080E0EE0 @ =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x5] - lsrs r0, 4 - adds r0, 0x10 - ldr r1, _080E0EE4 @ =gBattleAnimArgs - ldrb r1, [r1, 0x2] - bl sub_8079108 -_080E0ED2: - adds r0, r5, 0 - bl DestroyAnimVisualTask - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080E0EE0: .4byte gSprites -_080E0EE4: .4byte gBattleAnimArgs - thumb_func_end sub_80E0E24 - - thumb_func_start sub_80E0EE8 -sub_80E0EE8: @ 80E0EE8 - push {lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r2, _080E0F14 @ =gAnimMoveTurn - ldrb r0, [r2] - cmp r0, 0x1 - bhi _080E0EFC - ldr r1, _080E0F18 @ =gBattleAnimArgs - movs r0, 0 - strh r0, [r1, 0xE] -_080E0EFC: - ldrb r0, [r2] - cmp r0, 0x2 - bne _080E0F08 - ldr r1, _080E0F18 @ =gBattleAnimArgs - movs r0, 0x1 - strh r0, [r1, 0xE] -_080E0F08: - adds r0, r3, 0 - bl DestroyAnimVisualTask - pop {r0} - bx r0 - .align 2, 0 -_080E0F14: .4byte gAnimMoveTurn -_080E0F18: .4byte gBattleAnimArgs - thumb_func_end sub_80E0EE8 - - .align 2, 0 @ Don't pad with nop. -- cgit v1.2.3 From ad13f21d2e672b6f3cf000987670b4cf84e3feff Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Sun, 4 Feb 2018 14:40:14 -0800 Subject: Start decompiling fight.s --- asm/fight.s | 131 ------------------------------------------------------------ 1 file changed, 131 deletions(-) (limited to 'asm') diff --git a/asm/fight.s b/asm/fight.s index e8e3299af..8dbf369dd 100644 --- a/asm/fight.s +++ b/asm/fight.s @@ -7,137 +7,6 @@ @ fight - thumb_func_start unc_080B08A0 -unc_080B08A0: @ 80D8FF0 - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _080D9020 @ =gBattleAnimArgs - movs r0, 0 - ldrsh r1, [r5, r0] - adds r0, r4, 0 - bl sub_807867C - ldrh r0, [r5, 0x2] - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] - movs r0, 0xF - strh r0, [r4, 0x2E] - ldr r0, _080D9024 @ =sub_80782D8 - str r0, [r4, 0x1C] - ldr r1, _080D9028 @ =DestroyAnimSprite - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9020: .4byte gBattleAnimArgs -_080D9024: .4byte sub_80782D8 -_080D9028: .4byte DestroyAnimSprite - thumb_func_end unc_080B08A0 - - thumb_func_start sub_80D902C -sub_80D902C: @ 80D902C - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _080D9070 @ =gBattleAnimArgs - movs r1, 0xE - ldrsh r0, [r4, r1] - cmp r0, 0x1 - bne _080D9054 - ldr r0, _080D9074 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D9054 - ldrh r0, [r4, 0x2] - negs r0, r0 - strh r0, [r4, 0x2] - ldrh r0, [r4, 0x6] - negs r0, r0 - strh r0, [r4, 0x6] -_080D9054: - ldr r4, _080D9070 @ =gBattleAnimArgs - ldrb r1, [r4, 0xC] - adds r0, r5, 0 - bl StartSpriteAnim - movs r0, 0 - strh r0, [r4, 0xC] - adds r0, r5, 0 - bl sub_8079534 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9070: .4byte gBattleAnimArgs -_080D9074: .4byte gAnimBankAttacker - thumb_func_end sub_80D902C - - thumb_func_start sub_80D9078 -sub_80D9078: @ 80D9078 - push {r4,lr} - adds r4, r0, 0 - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080D9094 - ldr r0, _080D90A0 @ =gBattleAnimArgs - ldrh r1, [r0, 0x2] - negs r1, r1 - strh r1, [r0, 0x2] - ldrh r1, [r0, 0x6] - negs r1, r1 - strh r1, [r0, 0x6] -_080D9094: - adds r0, r4, 0 - bl sub_80D902C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D90A0: .4byte gBattleAnimArgs - thumb_func_end sub_80D9078 - - thumb_func_start sub_80D90A4 -sub_80D90A4: @ 80D90A4 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _080D90C4 @ =gBattleAnimArgs - ldrb r1, [r4, 0x8] - bl StartSpriteAnim - movs r1, 0x6 - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080D90C8 - adds r0, r5, 0 - movs r1, 0x1 - bl sub_80787B0 - b _080D90D0 - .align 2, 0 -_080D90C4: .4byte gBattleAnimArgs -_080D90C8: - adds r0, r5, 0 - movs r1, 0x1 - bl sub_8078764 -_080D90D0: - ldr r0, _080D90E8 @ =gBattleAnimArgs - ldrh r0, [r0, 0x4] - strh r0, [r5, 0x2E] - ldr r0, _080D90EC @ =sub_80782D8 - str r0, [r5, 0x1C] - ldr r1, _080D90F0 @ =DestroyAnimSprite - adds r0, r5, 0 - bl StoreSpriteCallbackInData - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D90E8: .4byte gBattleAnimArgs -_080D90EC: .4byte sub_80782D8 -_080D90F0: .4byte DestroyAnimSprite - thumb_func_end sub_80D90A4 - thumb_func_start sub_80D90F4 sub_80D90F4: @ 80D90F4 push {r4-r7,lr} -- cgit v1.2.3 From 088e23007aa07e2ef0fcb5900664d2e6cec0853d Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Mon, 5 Feb 2018 20:10:31 -0800 Subject: Decompile more of fight.s --- asm/fight.s | 623 ------------------------------------------------------------ 1 file changed, 623 deletions(-) (limited to 'asm') diff --git a/asm/fight.s b/asm/fight.s index 8dbf369dd..45c39429d 100644 --- a/asm/fight.s +++ b/asm/fight.s @@ -7,629 +7,6 @@ @ fight - thumb_func_start sub_80D90F4 -sub_80D90F4: @ 80D90F4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r5, r0, 0 - ldr r0, _080D9110 @ =gBattleAnimArgs - movs r2, 0 - ldrsh r1, [r0, r2] - mov r9, r0 - cmp r1, 0 - bne _080D9118 - ldr r0, _080D9114 @ =gAnimBankAttacker - b _080D911A - .align 2, 0 -_080D9110: .4byte gBattleAnimArgs -_080D9114: .4byte gAnimBankAttacker -_080D9118: - ldr r0, _080D9260 @ =gAnimBankTarget -_080D911A: - ldrb r0, [r0] - mov r8, r0 - mov r4, r9 - movs r3, 0x4 - ldrsh r0, [r4, r3] - cmp r0, 0 - bge _080D9138 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x5 - bl __umodsi3 - strh r0, [r4, 0x4] -_080D9138: - ldrb r1, [r4, 0x4] - adds r0, r5, 0 - bl StartSpriteAnim - mov r0, r8 - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - mov r0, r8 - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - mov r0, r8 - movs r1, 0x1 - bl sub_807A100 - lsls r0, 16 - asrs r1, r0, 16 - lsrs r0, 31 - adds r1, r0 - lsls r1, 15 - lsrs r6, r1, 16 - mov r0, r8 - movs r1, 0 - bl sub_807A100 - lsls r0, 16 - asrs r0, 16 - cmp r0, 0 - bge _080D9182 - adds r0, 0x3 -_080D9182: - lsls r4, r0, 14 - lsrs r4, 16 - bl Random - lsls r0, 16 - lsrs r0, 16 - lsls r1, r6, 16 - asrs r1, 16 - bl __modsi3 - lsls r0, 16 - lsrs r6, r0, 16 - bl Random - lsls r0, 16 - lsrs r0, 16 - lsls r4, 16 - asrs r4, 16 - adds r1, r4, 0 - bl __modsi3 - lsls r0, 16 - lsrs r4, r0, 16 - bl Random - movs r7, 0x1 - adds r1, r7, 0 - ands r1, r0 - cmp r1, 0 - beq _080D91C4 - lsls r0, r6, 16 - negs r0, r0 - lsrs r6, r0, 16 -_080D91C4: - bl Random - adds r1, r7, 0 - ands r1, r0 - cmp r1, 0 - beq _080D91D6 - lsls r0, r4, 16 - negs r0, r0 - lsrs r4, r0, 16 -_080D91D6: - ldr r0, _080D9264 @ =gBanksBySide - add r0, r8 - ldrb r1, [r0] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - bne _080D91EC - lsls r0, r4, 16 - ldr r1, _080D9268 @ =0xfff00000 - adds r0, r1 - lsrs r4, r0, 16 -_080D91EC: - lsls r0, r6, 16 - asrs r0, 16 - ldrh r2, [r5, 0x20] - adds r0, r2 - strh r0, [r5, 0x20] - lsls r0, r4, 16 - asrs r0, 16 - ldrh r3, [r5, 0x22] - adds r0, r3 - strh r0, [r5, 0x22] - mov r1, r9 - ldrh r0, [r1, 0x2] - strh r0, [r5, 0x2E] - ldr r0, _080D926C @ =gBattleAnimSpriteTemplate_83DB4A8 - movs r2, 0x20 - ldrsh r1, [r5, r2] - movs r3, 0x22 - ldrsh r2, [r5, r3] - adds r3, r5, 0 - adds r3, 0x43 - ldrb r3, [r3] - adds r3, 0x1 - lsls r3, 24 - lsrs r3, 24 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x3C] - cmp r0, 0x40 - beq _080D9250 - movs r0, 0x3C - ldrsh r1, [r5, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r4, _080D9270 @ =gSprites - adds r0, r4 - movs r1, 0 - bl StartSpriteAffineAnim - movs r2, 0x3C - ldrsh r1, [r5, r2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r4, 0x1C - adds r0, r4 - ldr r1, _080D9274 @ =SpriteCallbackDummy - str r1, [r0] -_080D9250: - ldr r0, _080D9278 @ =sub_80D927C - str r0, [r5, 0x1C] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D9260: .4byte gAnimBankTarget -_080D9264: .4byte gBanksBySide -_080D9268: .4byte 0xfff00000 -_080D926C: .4byte gBattleAnimSpriteTemplate_83DB4A8 -_080D9270: .4byte gSprites -_080D9274: .4byte SpriteCallbackDummy -_080D9278: .4byte sub_80D927C - thumb_func_end sub_80D90F4 - - thumb_func_start sub_80D927C -sub_80D927C: @ 80D927C - push {r4,r5,lr} - adds r5, r0, 0 - ldrh r1, [r5, 0x2E] - movs r2, 0x2E - ldrsh r0, [r5, r2] - cmp r0, 0 - bne _080D92C4 - movs r1, 0x3C - ldrsh r0, [r5, r1] - cmp r0, 0x40 - beq _080D92B8 - ldr r4, _080D92C0 @ =gSprites - adds r1, r0, 0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r0, [r0, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - movs r0, 0x3C - ldrsh r1, [r5, r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - bl DestroySprite -_080D92B8: - adds r0, r5, 0 - bl DestroyAnimSprite - b _080D92C8 - .align 2, 0 -_080D92C0: .4byte gSprites -_080D92C4: - subs r0, r1, 0x1 - strh r0, [r5, 0x2E] -_080D92C8: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80D927C - - thumb_func_start sub_80D92D0 -sub_80D92D0: @ 80D92D0 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x1 - bl sub_8078764 - movs r0, 0x1E - strh r0, [r4, 0x2E] - ldr r0, _080D92F0 @ =gBattleAnimArgs - movs r1, 0x4 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080D92F4 - ldrh r0, [r4, 0x20] - subs r0, 0x14 - strh r0, [r4, 0x32] - b _080D9306 - .align 2, 0 -_080D92F0: .4byte gBattleAnimArgs -_080D92F4: - ldrh r0, [r4, 0x20] - adds r0, 0x14 - strh r0, [r4, 0x32] - adds r2, r4, 0 - adds r2, 0x3F - ldrb r0, [r2] - movs r1, 0x1 - orrs r0, r1 - strb r0, [r2] -_080D9306: - ldrh r0, [r4, 0x22] - subs r0, 0x14 - strh r0, [r4, 0x36] - ldr r0, _080D9320 @ =sub_8078B34 - str r0, [r4, 0x1C] - ldr r1, _080D9324 @ =sub_80D9328 - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D9320: .4byte sub_8078B34 -_080D9324: .4byte sub_80D9328 - thumb_func_end sub_80D92D0 - - thumb_func_start sub_80D9328 -sub_80D9328: @ 80D9328 - push {r4-r6,lr} - adds r5, r0, 0 - ldrh r0, [r5, 0x38] - adds r0, 0x1 - movs r6, 0 - strh r0, [r5, 0x38] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB - bne _080D9368 - ldrh r2, [r5, 0x20] - ldrh r4, [r5, 0x24] - subs r0, r2, r4 - strh r0, [r5, 0x32] - ldrh r1, [r5, 0x22] - ldrh r3, [r5, 0x26] - subs r0, r1, r3 - strh r0, [r5, 0x36] - movs r0, 0x8 - strh r0, [r5, 0x2E] - adds r2, r4 - strh r2, [r5, 0x20] - adds r1, r3 - strh r1, [r5, 0x22] - strh r6, [r5, 0x26] - strh r6, [r5, 0x24] - ldr r0, _080D9370 @ =sub_8078B34 - str r0, [r5, 0x1C] - ldr r1, _080D9374 @ =DestroyAnimSprite - adds r0, r5, 0 - bl StoreSpriteCallbackInData -_080D9368: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080D9370: .4byte sub_8078B34 -_080D9374: .4byte DestroyAnimSprite - thumb_func_end sub_80D9328 - - thumb_func_start sub_80D9378 -sub_80D9378: @ 80D9378 - push {r4-r6,lr} - adds r6, r0, 0 - ldr r0, _080D93F4 @ =gAnimBankAttacker - ldrb r1, [r0] - movs r0, 0x2 - ldr r2, _080D93F8 @ =gAnimBankTarget - eors r0, r1 - ldrb r1, [r2] - cmp r0, r1 - bne _080D93A4 - ldrb r0, [r2] - bl GetBankIdentity - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080D93A4 - ldr r1, _080D93FC @ =gBattleAnimArgs - movs r2, 0 - ldrsh r0, [r1, r2] - negs r0, r0 - strh r0, [r1] -_080D93A4: - adds r0, r6, 0 - movs r1, 0x1 - bl sub_8078764 - ldr r0, _080D93F4 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D93C2 - ldr r1, _080D93FC @ =gBattleAnimArgs - ldrh r0, [r1, 0x4] - negs r0, r0 - strh r0, [r1, 0x4] -_080D93C2: - ldr r4, _080D93FC @ =gBattleAnimArgs - ldrh r0, [r4, 0x6] - movs r5, 0 - strh r0, [r6, 0x2E] - ldrh r0, [r6, 0x20] - strh r0, [r6, 0x30] - ldrh r1, [r4, 0x4] - adds r0, r1 - strh r0, [r6, 0x32] - ldrh r0, [r6, 0x22] - strh r0, [r6, 0x34] - strh r0, [r6, 0x36] - adds r0, r6, 0 - bl obj_translate_based_on_private_1_2_3_4 - ldrh r0, [r4, 0xA] - strh r0, [r6, 0x38] - ldrh r0, [r4, 0x8] - strh r0, [r6, 0x3A] - strh r5, [r6, 0x3C] - ldr r0, _080D9400 @ =sub_80D9404 - str r0, [r6, 0x1C] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080D93F4: .4byte gAnimBankAttacker -_080D93F8: .4byte gAnimBankTarget -_080D93FC: .4byte gBattleAnimArgs -_080D9400: .4byte sub_80D9404 - thumb_func_end sub_80D9378 - - thumb_func_start sub_80D9404 -sub_80D9404: @ 80D9404 - push {r4,lr} - adds r4, r0, 0 - bl sub_8078B5C - lsls r0, 24 - cmp r0, 0 - bne _080D9430 - ldrh r0, [r4, 0x3C] - lsls r0, 16 - asrs r0, 24 - movs r2, 0x38 - ldrsh r1, [r4, r2] - bl Sin - ldrh r1, [r4, 0x26] - adds r0, r1 - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x3A] - ldrh r2, [r4, 0x3C] - adds r0, r2 - strh r0, [r4, 0x3C] - b _080D9436 -_080D9430: - adds r0, r4, 0 - bl DestroyAnimSprite -_080D9436: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D9404 - - thumb_func_start sub_80D943C -sub_80D943C: @ 80D943C - push {r4,r5,lr} - adds r4, r0, 0 - movs r1, 0x1 - bl sub_8078764 - ldr r5, _080D9468 @ =gBattleAnimArgs - ldrb r1, [r5, 0x4] - adds r0, r4, 0 - bl StartSpriteAnim - ldrh r0, [r5, 0x6] - strh r0, [r4, 0x2E] - ldr r0, _080D946C @ =sub_80782D8 - str r0, [r4, 0x1C] - ldr r1, _080D9470 @ =sub_80D9474 - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9468: .4byte gBattleAnimArgs -_080D946C: .4byte sub_80782D8 -_080D9470: .4byte sub_80D9474 - thumb_func_end sub_80D943C - - thumb_func_start sub_80D9474 -sub_80D9474: @ 80D9474 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0 - bl StartSpriteAffineAnim - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x14 - strh r0, [r4, 0x2E] - ldr r0, _080D94A0 @ =sub_80782D8 - str r0, [r4, 0x1C] - ldr r1, _080D94A4 @ =DestroyAnimSprite - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D94A0: .4byte sub_80782D8 -_080D94A4: .4byte DestroyAnimSprite - thumb_func_end sub_80D9474 - - thumb_func_start sub_80D94A8 -sub_80D94A8: @ 80D94A8 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x1 - bl sub_8078764 - ldr r0, _080D94C4 @ =gBattleAnimArgs - ldrh r0, [r0, 0x4] - strh r0, [r4, 0x2E] - ldr r0, _080D94C8 @ =sub_80D94CC - str r0, [r4, 0x1C] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D94C4: .4byte gBattleAnimArgs -_080D94C8: .4byte sub_80D94CC - thumb_func_end sub_80D94A8 - - thumb_func_start sub_80D94CC -sub_80D94CC: @ 80D94CC - push {r4,r5,lr} - adds r5, r0, 0 - ldrh r0, [r5, 0x2E] - subs r0, 0x1 - strh r0, [r5, 0x2E] - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080D9510 - movs r0, 0x6 - strh r0, [r5, 0x2E] - ldr r4, _080D9518 @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x32] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x36] - ldr r0, _080D951C @ =sub_8078B34 - str r0, [r5, 0x1C] - ldr r1, _080D9520 @ =sub_80D9524 - adds r0, r5, 0 - bl StoreSpriteCallbackInData -_080D9510: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9518: .4byte gAnimBankTarget -_080D951C: .4byte sub_8078B34 -_080D9520: .4byte sub_80D9524 - thumb_func_end sub_80D94CC - - thumb_func_start sub_80D9524 -sub_80D9524: @ 80D9524 - push {lr} - movs r1, 0xF - strh r1, [r0, 0x2E] - ldr r1, _080D9538 @ =sub_80782D8 - str r1, [r0, 0x1C] - ldr r1, _080D953C @ =DestroyAnimSprite - bl StoreSpriteCallbackInData - pop {r0} - bx r0 - .align 2, 0 -_080D9538: .4byte sub_80782D8 -_080D953C: .4byte DestroyAnimSprite - thumb_func_end sub_80D9524 - - thumb_func_start sub_80D9540 -sub_80D9540: @ 80D9540 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x2E - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080D956C - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8078764 - ldr r1, _080D9568 @ =gBattleAnimArgs - ldrh r0, [r1, 0x4] - strh r0, [r4, 0x30] - ldrh r0, [r1, 0x6] - strh r0, [r4, 0x32] - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - b _080D95C8 - .align 2, 0 -_080D9568: .4byte gBattleAnimArgs -_080D956C: - ldrh r0, [r4, 0x30] - ldrh r2, [r4, 0x36] - adds r0, r2 - strh r0, [r4, 0x36] - lsls r0, 16 - asrs r0, 24 - strh r0, [r4, 0x24] - movs r1, 0x34 - ldrsh r0, [r4, r1] - movs r2, 0x32 - ldrsh r1, [r4, r2] - bl Sin - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x34] - adds r0, 0x3 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x34] - cmp r0, 0x64 - ble _080D95BA - movs r0, 0x34 - ldrsh r1, [r4, r0] - lsrs r0, r1, 31 - adds r0, r1, r0 - asrs r0, 1 - lsls r0, 1 - subs r1, r0 - adds r3, r4, 0 - adds r3, 0x3E - movs r0, 0x1 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r3] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] -_080D95BA: - movs r1, 0x34 - ldrsh r0, [r4, r1] - cmp r0, 0x78 - ble _080D95C8 - adds r0, r4, 0 - bl DestroyAnimSprite -_080D95C8: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D9540 - thumb_func_start sub_80D95D0 sub_80D95D0: @ 80D95D0 push {r4,r5,lr} -- cgit v1.2.3 From fbf34c79f3a9a290cdaae612d589a1b48411e41f Mon Sep 17 00:00:00 2001 From: Marcus Huderle Date: Tue, 6 Feb 2018 21:30:46 -0800 Subject: Finish decompiling fight.s --- asm/fight.s | 995 ------------------------------------------------------------ 1 file changed, 995 deletions(-) delete mode 100644 asm/fight.s (limited to 'asm') diff --git a/asm/fight.s b/asm/fight.s deleted file mode 100644 index 45c39429d..000000000 --- a/asm/fight.s +++ /dev/null @@ -1,995 +0,0 @@ - .include "constants/gba_constants.inc" - .include "include/macros.inc" - - .syntax unified - - .text - - @ fight - - thumb_func_start sub_80D95D0 -sub_80D95D0: @ 80D95D0 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, _080D95E4 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080D95EC - ldr r4, _080D95E8 @ =gAnimBankAttacker - b _080D95EE - .align 2, 0 -_080D95E4: .4byte gBattleAnimArgs -_080D95E8: .4byte gAnimBankAttacker -_080D95EC: - ldr r4, _080D9634 @ =gAnimBankTarget -_080D95EE: - ldrb r0, [r4] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - ldr r1, _080D9638 @ =gBattleAnimArgs - ldrh r0, [r1, 0x2] - ldrh r2, [r5, 0x20] - adds r0, r2 - movs r2, 0 - strh r0, [r5, 0x20] - ldrh r0, [r1, 0x4] - ldrh r3, [r5, 0x22] - adds r0, r3 - strh r0, [r5, 0x22] - strh r2, [r5, 0x2E] - ldrh r0, [r1, 0x6] - strh r0, [r5, 0x30] - ldrh r0, [r1, 0x8] - strh r0, [r5, 0x32] - strh r2, [r5, 0x34] - ldr r0, _080D963C @ =sub_80D9640 - str r0, [r5, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9634: .4byte gAnimBankTarget -_080D9638: .4byte gBattleAnimArgs -_080D963C: .4byte sub_80D9640 - thumb_func_end sub_80D95D0 - - thumb_func_start sub_80D9640 -sub_80D9640: @ 80D9640 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - cmp r2, 0 - beq _080D9652 - cmp r2, 0x1 - beq _080D9676 - b _080D96B0 -_080D9652: - ldrh r0, [r1, 0x30] - subs r0, 0x1 - strh r0, [r1, 0x30] - lsls r0, 16 - cmp r0, 0 - bne _080D96B0 - movs r2, 0x32 - ldrsh r0, [r1, r2] - cmp r0, 0 - bne _080D966E - adds r0, r1, 0 - bl DestroyAnimSprite - b _080D96B0 -_080D966E: - ldrh r0, [r1, 0x2E] - adds r0, 0x1 - strh r0, [r1, 0x2E] - b _080D96B0 -_080D9676: - ldrh r0, [r1, 0x30] - adds r0, 0x1 - strh r0, [r1, 0x30] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _080D969E - movs r0, 0 - strh r0, [r1, 0x30] - ldrh r0, [r1, 0x34] - adds r0, 0x1 - strh r0, [r1, 0x34] - ands r0, r2 - lsls r0, 16 - cmp r0, 0 - beq _080D969A - movs r0, 0x2 - b _080D969C -_080D969A: - ldr r0, _080D96B4 @ =0x0000fffe -_080D969C: - strh r0, [r1, 0x24] -_080D969E: - ldrh r0, [r1, 0x32] - subs r0, 0x1 - strh r0, [r1, 0x32] - lsls r0, 16 - cmp r0, 0 - bne _080D96B0 - adds r0, r1, 0 - bl DestroyAnimSprite -_080D96B0: - pop {r0} - bx r0 - .align 2, 0 -_080D96B4: .4byte 0x0000fffe - thumb_func_end sub_80D9640 - - thumb_func_start sub_80D96B8 -sub_80D96B8: @ 80D96B8 - push {r4-r6,lr} - adds r5, r0, 0 - ldr r6, _080D96DC @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r6, r1] - cmp r0, 0 - bne _080D96E4 - ldr r4, _080D96E0 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - ldrh r2, [r6, 0x4] - adds r0, r2 - b _080D96F6 - .align 2, 0 -_080D96DC: .4byte gBattleAnimArgs -_080D96E0: .4byte gAnimBankAttacker -_080D96E4: - ldr r4, _080D9740 @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - ldrh r1, [r6, 0x4] - adds r0, r1 -_080D96F6: - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - ldrh r6, [r6, 0x6] - adds r0, r6 - strh r0, [r5, 0x22] - ldrh r2, [r5, 0x4] - lsls r1, r2, 22 - lsrs r1, 22 - ldr r3, _080D9744 @ =gBattleAnimArgs - movs r4, 0x2 - ldrsh r0, [r3, r4] - lsls r0, 4 - adds r1, r0 - ldr r4, _080D9748 @ =0x000003ff - adds r0, r4, 0 - ands r1, r0 - ldr r0, _080D974C @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r5, 0x4] - movs r1, 0 - movs r0, 0 - strh r0, [r5, 0x2E] - movs r2, 0x2 - ldrsh r0, [r3, r2] - cmp r0, 0x1 - beq _080D9764 - cmp r0, 0x1 - bgt _080D9750 - cmp r0, 0 - beq _080D975A - b _080D978A - .align 2, 0 -_080D9740: .4byte gAnimBankTarget -_080D9744: .4byte gBattleAnimArgs -_080D9748: .4byte 0x000003ff -_080D974C: .4byte 0xfffffc00 -_080D9750: - cmp r0, 0x2 - beq _080D9774 - cmp r0, 0x3 - beq _080D9784 - b _080D978A -_080D975A: - ldr r0, _080D9760 @ =0x0000fffd - b _080D9784 - .align 2, 0 -_080D9760: .4byte 0x0000fffd -_080D9764: - movs r0, 0x3 - strh r0, [r5, 0x3A] - ldr r0, _080D9770 @ =0x0000fffd - strh r0, [r5, 0x3C] - b _080D9792 - .align 2, 0 -_080D9770: .4byte 0x0000fffd -_080D9774: - ldr r0, _080D9780 @ =0x0000fffd - strh r0, [r5, 0x3A] - movs r0, 0x3 - strh r0, [r5, 0x3C] - b _080D9792 - .align 2, 0 -_080D9780: .4byte 0x0000fffd -_080D9784: - strh r0, [r5, 0x3A] - strh r0, [r5, 0x3C] - b _080D9792 -_080D978A: - adds r0, r5, 0 - bl DestroyAnimSprite - b _080D9796 -_080D9792: - ldr r0, _080D979C @ =sub_80D97A0 - str r0, [r5, 0x1C] -_080D9796: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080D979C: .4byte sub_80D97A0 - thumb_func_end sub_80D96B8 - - thumb_func_start sub_80D97A0 -sub_80D97A0: @ 80D97A0 - push {lr} - adds r1, r0, 0 - ldrh r0, [r1, 0x3A] - ldrh r2, [r1, 0x20] - adds r0, r2 - strh r0, [r1, 0x20] - ldrh r0, [r1, 0x3C] - ldrh r2, [r1, 0x22] - adds r0, r2 - strh r0, [r1, 0x22] - ldrh r0, [r1, 0x2E] - adds r0, 0x1 - strh r0, [r1, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x28 - ble _080D97C8 - adds r0, r1, 0 - bl DestroyAnimSprite -_080D97C8: - pop {r0} - bx r0 - thumb_func_end sub_80D97A0 - - thumb_func_start sub_80D97CC -sub_80D97CC: @ 80D97CC - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, _080D9818 @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080D9828 - ldr r4, _080D981C @ =gBankAttacker - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - ldr r0, _080D9820 @ =gAnimBankAttacker - ldrb r0, [r0] - bl sub_8079ED4 - movs r1, 0x3 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r5, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r5, 0x5] - ldr r0, _080D9824 @ =gAnimBankTarget - b _080D9844 - .align 2, 0 -_080D9818: .4byte gBattleAnimArgs -_080D981C: .4byte gBankAttacker -_080D9820: .4byte gAnimBankAttacker -_080D9824: .4byte gAnimBankTarget -_080D9828: - ldr r0, _080D9860 @ =gAnimBankTarget - ldrb r0, [r0] - bl sub_8079ED4 - movs r1, 0x3 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r5, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r5, 0x5] - ldr r0, _080D9864 @ =gAnimBankAttacker -_080D9844: - ldrb r0, [r0] - strh r0, [r5, 0x3C] - movs r0, 0 - strh r0, [r5, 0x2E] - movs r0, 0xC - strh r0, [r5, 0x30] - movs r0, 0x8 - strh r0, [r5, 0x32] - ldr r0, _080D9868 @ =sub_80D986C - str r0, [r5, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9860: .4byte gAnimBankTarget -_080D9864: .4byte gAnimBankAttacker -_080D9868: .4byte sub_80D986C - thumb_func_end sub_80D97CC - - thumb_func_start sub_80D986C -sub_80D986C: @ 80D986C - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xB4 - bne _080D98C6 - ldr r1, _080D98CC @ =REG_BLDCNT - movs r0, 0 - strh r0, [r1] - movs r0, 0x10 - strh r0, [r4, 0x2E] - ldrh r0, [r4, 0x20] - strh r0, [r4, 0x30] - ldrh r0, [r4, 0x3C] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x32] - ldrh r0, [r4, 0x22] - strh r0, [r4, 0x34] - ldrh r0, [r4, 0x3C] - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4, 0x36] - adds r0, r4, 0 - bl obj_translate_based_on_private_1_2_3_4 - ldr r1, _080D98D0 @ =move_anim_8074EE0 - adds r0, r4, 0 - bl StoreSpriteCallbackInData - ldr r0, _080D98D4 @ =sub_8078BB8 - str r0, [r4, 0x1C] -_080D98C6: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D98CC: .4byte REG_BLDCNT -_080D98D0: .4byte move_anim_8074EE0 -_080D98D4: .4byte sub_8078BB8 - thumb_func_end sub_80D986C - - thumb_func_start sub_80D98D8 -sub_80D98D8: @ 80D98D8 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r4, _080D9924 @ =gBattleAnimArgs - ldrh r0, [r4] - strh r0, [r5, 0x20] - movs r2, 0x78 - strh r2, [r5, 0x22] - ldrh r0, [r4, 0x6] - strh r0, [r5, 0x2E] - adds r0, r5, 0 - adds r0, 0x36 - adds r1, r5, 0 - adds r1, 0x38 - lsls r2, 8 - bl sub_8079BF4 - ldrh r0, [r4, 0x2] - strh r0, [r5, 0x3A] - ldrh r2, [r5, 0x4] - lsls r1, r2, 22 - lsrs r1, 22 - movs r3, 0x4 - ldrsh r0, [r4, r3] - lsls r0, 2 - adds r1, r0 - ldr r3, _080D9928 @ =0x000003ff - adds r0, r3, 0 - ands r1, r0 - ldr r0, _080D992C @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r5, 0x4] - ldr r0, _080D9930 @ =sub_80D9934 - str r0, [r5, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9924: .4byte gBattleAnimArgs -_080D9928: .4byte 0x000003ff -_080D992C: .4byte 0xfffffc00 -_080D9930: .4byte sub_80D9934 - thumb_func_end sub_80D98D8 - - thumb_func_start sub_80D9934 -sub_80D9934: @ 80D9934 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - movs r1, 0x2E - ldrsh r0, [r7, r1] - cmp r0, 0 - beq _080D9986 - movs r2, 0x36 - ldrsh r0, [r7, r2] - movs r2, 0x38 - ldrsh r1, [r7, r2] - bl sub_8079BFC - adds r4, r0, 0 - movs r1, 0x3A - ldrsh r0, [r7, r1] - subs r4, r0 - adds r0, r7, 0 - adds r0, 0x36 - adds r1, r7, 0 - adds r1, 0x38 - adds r2, r4, 0 - bl sub_8079BF4 - asrs r4, 8 - strh r4, [r7, 0x22] - lsls r4, 16 - asrs r4, 16 - movs r0, 0x8 - negs r0, r0 - cmp r4, r0 - bge _080D997E - adds r0, r7, 0 - bl DestroyAnimSprite - b _080D99DC -_080D997E: - ldrh r0, [r7, 0x2E] - subs r0, 0x1 - strh r0, [r7, 0x2E] - b _080D99DC -_080D9986: - ldr r4, _080D99E8 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - adds r6, r0, 0 - lsls r6, 24 - lsrs r6, 24 - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r2, _080D99EC @ =gAnimBankTarget - mov r8, r2 - ldrb r0, [r2] - movs r1, 0x2 - bl GetBankPosition - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - mov r1, r8 - ldrb r0, [r1] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - subs r4, r6 - strh r4, [r7, 0x2E] - lsrs r0, 24 - subs r0, r5 - strh r0, [r7, 0x30] - ldrh r0, [r7, 0x20] - lsls r0, 4 - strh r0, [r7, 0x32] - ldrh r0, [r7, 0x22] - lsls r0, 4 - strh r0, [r7, 0x34] - ldr r0, _080D99F0 @ =sub_80D99F4 - str r0, [r7, 0x1C] -_080D99DC: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D99E8: .4byte gAnimBankAttacker -_080D99EC: .4byte gAnimBankTarget -_080D99F0: .4byte sub_80D99F4 - thumb_func_end sub_80D9934 - - thumb_func_start sub_80D99F4 -sub_80D99F4: @ 80D99F4 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x2E] - ldrh r1, [r2, 0x32] - adds r0, r1 - strh r0, [r2, 0x32] - ldrh r1, [r2, 0x30] - ldrh r3, [r2, 0x34] - adds r1, r3 - strh r1, [r2, 0x34] - lsls r0, 16 - asrs r0, 20 - strh r0, [r2, 0x20] - lsls r1, 16 - asrs r3, r1, 20 - strh r3, [r2, 0x22] - adds r0, 0x8 - lsls r0, 16 - movs r1, 0x80 - lsls r1, 17 - cmp r0, r1 - bhi _080D9A2E - adds r1, r3, 0 - movs r0, 0x8 - negs r0, r0 - cmp r1, r0 - blt _080D9A2E - cmp r1, 0x78 - ble _080D9A34 -_080D9A2E: - adds r0, r2, 0 - bl DestroyAnimSprite -_080D9A34: - pop {r0} - bx r0 - thumb_func_end sub_80D99F4 - - thumb_func_start sub_80D9A38 -sub_80D9A38: @ 80D9A38 - push {r4,r5,lr} - adds r5, r0, 0 - ldr r0, _080D9A6C @ =gBattleAnimArgs - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080D9A7C - ldr r4, _080D9A70 @ =gBankAttacker - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - ldr r0, _080D9A74 @ =gAnimBankTarget - ldrb r4, [r0] - ldr r0, _080D9A78 @ =gAnimBankAttacker - b _080D9A82 - .align 2, 0 -_080D9A6C: .4byte gBattleAnimArgs -_080D9A70: .4byte gBankAttacker -_080D9A74: .4byte gAnimBankTarget -_080D9A78: .4byte gAnimBankAttacker -_080D9A7C: - ldr r0, _080D9AB4 @ =gAnimBankAttacker - ldrb r4, [r0] - ldr r0, _080D9AB8 @ =gAnimBankTarget -_080D9A82: - ldrb r0, [r0] - bl sub_8079ED4 - movs r1, 0x3 - ands r1, r0 - lsls r1, 2 - ldrb r2, [r5, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r5, 0x5] - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080D9ABC - ldrb r2, [r5, 0x3] - lsls r1, r2, 26 - lsrs r1, 27 - movs r0, 0x8 - orrs r1, r0 - lsls r1, 1 - subs r0, 0x47 - b _080D9AD6 - .align 2, 0 -_080D9AB4: .4byte gAnimBankAttacker -_080D9AB8: .4byte gAnimBankTarget -_080D9ABC: - adds r0, r4, 0 - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080D9ADC - ldrb r2, [r5, 0x3] - lsls r1, r2, 26 - lsrs r1, 27 - movs r0, 0x18 - orrs r1, r0 - lsls r1, 1 - subs r0, 0x57 -_080D9AD6: - ands r0, r2 - orrs r0, r1 - strb r0, [r5, 0x3] -_080D9ADC: - movs r0, 0x10 - strh r0, [r5, 0x2E] - ldrh r0, [r5, 0x20] - strh r0, [r5, 0x30] - adds r0, r4, 0 - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x22] - strh r0, [r5, 0x34] - adds r0, r4, 0 - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x36] - adds r0, r5, 0 - bl obj_translate_based_on_private_1_2_3_4 - ldr r1, _080D9B1C @ =DestroyAnimSprite - adds r0, r5, 0 - bl StoreSpriteCallbackInData - ldr r0, _080D9B20 @ =sub_8078BB8 - str r0, [r5, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080D9B1C: .4byte DestroyAnimSprite -_080D9B20: .4byte sub_8078BB8 - thumb_func_end sub_80D9A38 - - thumb_func_start sub_80D9B24 -sub_80D9B24: @ 80D9B24 - push {r4,lr} - adds r4, r0, 0 - movs r0, 0x2E - ldrsh r1, [r4, r0] - movs r2, 0x36 - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _080D9B3A - adds r0, r4, 0 - bl DestroyAnimSprite -_080D9B3A: - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D9B24 - - thumb_func_start sub_80D9B48 -sub_80D9B48: @ 80D9B48 - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, _080D9BC4 @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x2 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x20] - ldrb r0, [r4] - movs r1, 0x3 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0x22] - ldr r1, _080D9BC8 @ =gBattleAnimArgs - ldrh r0, [r1, 0x6] - strh r0, [r5, 0x30] - ldrh r0, [r1] - strh r0, [r5, 0x32] - ldrh r0, [r1, 0x2] - strh r0, [r5, 0x34] - ldrh r0, [r1, 0x4] - strh r0, [r5, 0x36] - ldr r0, _080D9BCC @ =gAnimMoveTurn - ldrb r6, [r0] - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080D9B92 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_080D9B92: - movs r0, 0x1 - ands r6, r0 - cmp r6, 0 - beq _080D9BA6 - ldrh r0, [r5, 0x32] - negs r0, r0 - strh r0, [r5, 0x32] - ldrh r0, [r5, 0x30] - adds r0, 0x1 - strh r0, [r5, 0x30] -_080D9BA6: - ldrh r1, [r5, 0x30] - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl StartSpriteAnim - ldrh r0, [r5, 0x32] - strh r0, [r5, 0x24] - ldrh r0, [r5, 0x34] - strh r0, [r5, 0x26] - ldr r0, _080D9BD0 @ =sub_80D9B24 - str r0, [r5, 0x1C] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080D9BC4: .4byte gAnimBankTarget -_080D9BC8: .4byte gBattleAnimArgs -_080D9BCC: .4byte gAnimMoveTurn -_080D9BD0: .4byte sub_80D9B24 - thumb_func_end sub_80D9B48 - - thumb_func_start sub_80D9BD4 -sub_80D9BD4: @ 80D9BD4 - push {r4,lr} - adds r4, r0, 0 - ldr r0, _080D9BEC @ =gBattleAnimArgs - movs r1, 0x4 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080D9BF0 - adds r0, r4, 0 - movs r1, 0 - bl sub_80787B0 - b _080D9BF8 - .align 2, 0 -_080D9BEC: .4byte gBattleAnimArgs -_080D9BF0: - adds r0, r4, 0 - movs r1, 0 - bl sub_8078764 -_080D9BF8: - bl IsContest - lsls r0, 24 - cmp r0, 0 - beq _080D9C0C - adds r0, r4, 0 - movs r1, 0x2 - bl StartSpriteAnim - b _080D9C22 -_080D9C0C: - ldr r0, _080D9C34 @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - beq _080D9C22 - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAnim -_080D9C22: - ldr r0, _080D9C38 @ =sub_8078600 - str r0, [r4, 0x1C] - ldr r1, _080D9C3C @ =DestroyAnimSprite - adds r0, r4, 0 - bl StoreSpriteCallbackInData - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080D9C34: .4byte gAnimBankAttacker -_080D9C38: .4byte sub_8078600 -_080D9C3C: .4byte DestroyAnimSprite - thumb_func_end sub_80D9BD4 - - thumb_func_start sub_80D9C40 -sub_80D9C40: @ 80D9C40 - push {r4,lr} - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _080D9C7A - ldrh r0, [r4, 0x30] - adds r0, 0x28 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x30] - movs r1, 0x30 - ldrsh r0, [r4, r1] - movs r1, 0x2 - bl Sin - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x2E] - adds r0, 0x1 - strh r0, [r4, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x28 - ble _080D9C7A - adds r0, r4, 0 - bl DestroyAnimSprite -_080D9C7A: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80D9C40 - - thumb_func_start sub_80D9C80 -sub_80D9C80: @ 80D9C80 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - ldr r1, _080D9CB0 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080D9CB8 - cmp r0, 0x1 - bgt _080D9CD2 - cmp r0, 0 - bne _080D9CD2 - movs r0, 0 - bl sub_80789D4 - ldr r0, _080D9CB4 @ =gBattleAnimArgs - ldrh r0, [r0] - strh r0, [r4, 0x18] - b _080D9CCA - .align 2, 0 -_080D9CB0: .4byte gTasks -_080D9CB4: .4byte gBattleAnimArgs -_080D9CB8: - ldrh r0, [r4, 0x18] - subs r0, 0x1 - strh r0, [r4, 0x18] - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080D9CDE -_080D9CCA: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080D9CDE -_080D9CD2: - movs r2, 0xA0 - lsls r2, 3 - adds r0, r2, 0 - ldrh r1, [r4, 0x1A] - adds r0, r1 - strh r0, [r4, 0x1A] -_080D9CDE: - movs r2, 0xB0 - lsls r2, 4 - adds r0, r2, 0 - ldrh r1, [r4, 0x1C] - adds r0, r1 - strh r0, [r4, 0x1C] - ldr r0, _080D9D0C @ =gAnimBankTarget - ldrb r0, [r0] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080D9D14 - ldr r1, _080D9D10 @ =gBattle_BG3_X - ldrh r0, [r4, 0x1A] - lsls r0, 16 - asrs r0, 24 - ldrh r2, [r1] - adds r0, r2 - strh r0, [r1] - adds r7, r1, 0 - b _080D9D24 - .align 2, 0 -_080D9D0C: .4byte gAnimBankTarget -_080D9D10: .4byte gBattle_BG3_X -_080D9D14: - ldr r2, _080D9D64 @ =gBattle_BG3_X - ldrh r1, [r4, 0x1A] - lsls r1, 16 - asrs r1, 24 - ldrh r0, [r2] - subs r0, r1 - strh r0, [r2] - adds r7, r2, 0 -_080D9D24: - ldr r3, _080D9D68 @ =gBattle_BG3_Y - ldrh r2, [r4, 0x1C] - lsls r0, r2, 16 - asrs r0, 24 - ldrh r1, [r3] - adds r0, r1 - strh r0, [r3] - movs r0, 0xFF - ldrb r1, [r4, 0x1A] - movs r5, 0 - strh r1, [r4, 0x1A] - ands r0, r2 - strh r0, [r4, 0x1C] - ldr r0, _080D9D6C @ =gBattleAnimArgs - movs r2, 0xE - ldrsh r1, [r0, r2] - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _080D9D5C - strh r5, [r7] - strh r5, [r3] - movs r0, 0x1 - bl sub_80789D4 - adds r0, r6, 0 - bl DestroyAnimVisualTask -_080D9D5C: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080D9D64: .4byte gBattle_BG3_X -_080D9D68: .4byte gBattle_BG3_Y -_080D9D6C: .4byte gBattleAnimArgs - thumb_func_end sub_80D9C80 - - .align 2, 0 @ Don't pad with nop. -- cgit v1.2.3