summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorMarcus Huderle <huderlem@gmail.com>2018-06-25 17:50:27 -0500
committerMarcus Huderle <huderlem@gmail.com>2018-06-25 17:50:27 -0500
commit605f8ac1141daf66d3428923e004f82f5a5e1594 (patch)
treea3e5fae5d271175c7f10b6b455fcdc7f0fdd553e /asm
parente88e39d5fda1644f77e41fd652d4310612da7532 (diff)
parent659437f07a44b6f560bb58d6c12d141ed8ba7643 (diff)
Merge branch 'master' into contest_link_80C2020
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_1.s2208
-rw-r--r--asm/battle_9.s2840
-rw-r--r--asm/battle_anim_812C144.s5497
-rw-r--r--asm/battle_anim_813F0F4.s58
-rw-r--r--asm/contest_effect.s2941
-rw-r--r--asm/contest_link_80C2020.s299
-rw-r--r--asm/contest_painting_effects.s (renamed from asm/cute_sketch.s)0
-rw-r--r--asm/current.s2389
-rw-r--r--asm/decompress.s350
-rw-r--r--asm/flying.s643
-rw-r--r--asm/ghost.s1139
-rw-r--r--asm/ground.s46
-rw-r--r--asm/ice.s109
-rw-r--r--asm/nakamura_debug_menu.s4686
-rw-r--r--asm/nohara_debug_menu.s2198
-rw-r--r--asm/normal.s62
-rw-r--r--asm/pc_screen_effect.s546
-rw-r--r--asm/pokedex_area_screen.s2370
-rw-r--r--asm/pokedex_cry_screen.s1016
-rw-r--r--asm/pokemon_storage_system.s8
-rw-r--r--asm/pokenav.s34
-rw-r--r--asm/taya_debug_window.s2054
-rw-r--r--asm/tomomichi_debug_menu.s8100
-rw-r--r--asm/unk_debug_menu_3.s747
-rw-r--r--asm/watanabe_debug_menu.s9578
-rw-r--r--asm/water.s28
26 files changed, 938 insertions, 49008 deletions
diff --git a/asm/battle_1.s b/asm/battle_1.s
deleted file mode 100644
index cd925e10d..000000000
--- a/asm/battle_1.s
+++ /dev/null
@@ -1,2208 +0,0 @@
- .include "constants/gba_constants.inc"
-
- .include "include/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start unref_sub_800D42C
-unref_sub_800D42C: @ 800D42C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x24
- mov r9, r0
- str r1, [sp]
- str r2, [sp, 0x4]
- adds r5, r3, 0
- movs r0, 0x1
- mov r1, r9
- ands r0, r1
- cmp r0, 0
- bne _0800D44C
- b _0800D5E4
-_0800D44C:
- asrs r0, r1, 1
- adds r0, 0x4
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
- movs r0, 0
- ldr r2, [sp]
- cmp r0, r2
- blt _0800D460
- b _0800D674
-_0800D460:
- movs r4, 0x8
- subs r1, r4, r1
- str r1, [sp, 0x10]
-_0800D466:
- movs r7, 0
- adds r0, 0x1
- str r0, [sp, 0x14]
- ldr r0, [sp, 0x10]
- cmp r7, r0
- bge _0800D4E2
- ldr r1, [sp, 0x8]
- lsls r1, 8
- str r1, [sp, 0x18]
- movs r2, 0
- mov r10, r2
- mov r0, r9
- movs r4, 0x8
- subs r0, r4, r0
- str r0, [sp, 0xC]
-_0800D484:
- movs r3, 0
- asrs r0, r7, 1
- adds r1, r7, 0
- movs r2, 0x1
- ands r1, r2
- str r1, [sp, 0x20]
- lsls r0, 8
- mov r8, r0
- mov r12, r5
-_0800D496:
- lsls r1, r3, 5
- ldr r4, [sp, 0x18]
- adds r0, r5, r4
- adds r0, r1
- mov r1, r8
- adds r2, r0, r1
- mov r1, r12
- add r1, r8
- movs r6, 0xF
-_0800D4A8:
- ldr r4, [sp, 0x20]
- cmp r4, 0
- bne _0800D4B8
- strb r4, [r1]
- add r4, sp, 0x20
- ldrb r4, [r4]
- strb r4, [r2, 0x10]
- b _0800D4C6
-_0800D4B8:
- mov r0, r10
- strb r0, [r1, 0x10]
- movs r4, 0x80
- lsls r4, 1
- adds r4, r2, r4
- str r4, [sp, 0x1C]
- strb r0, [r4]
-_0800D4C6:
- adds r2, 0x1
- adds r1, 0x1
- subs r6, 0x1
- cmp r6, 0
- bge _0800D4A8
- movs r0, 0x20
- add r12, r0
- adds r3, 0x1
- cmp r3, 0x7
- ble _0800D496
- adds r7, 0x1
- ldr r1, [sp, 0xC]
- cmp r7, r1
- blt _0800D484
-_0800D4E2:
- movs r7, 0
- movs r2, 0
-_0800D4E6:
- movs r6, 0
- adds r4, r7, 0x1
- mov r8, r4
- lsls r4, r7, 5
-_0800D4EE:
- adds r0, r6, 0x1
- mov r10, r0
- lsls r1, r6, 8
- adds r0, r1, 0
- adds r0, 0xC0
- adds r0, r5, r0
- adds r0, r4
- adds r1, r5, r1
- adds r1, r4
- movs r3, 0x1F
-_0800D502:
- strb r2, [r1]
- strb r2, [r0]
- adds r0, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _0800D502
- mov r6, r10
- cmp r6, 0x7
- ble _0800D4EE
- mov r7, r8
- cmp r7, 0x1
- ble _0800D4E6
- mov r1, r9
- cmp r1, 0x5
- bne _0800D528
- movs r2, 0x90
- lsls r2, 1
- adds r5, r2
-_0800D528:
- movs r7, 0
- cmp r7, r9
- bge _0800D5BE
-_0800D52E:
- movs r3, 0
- adds r7, 0x1
- mov r8, r7
- cmp r3, r9
- bge _0800D59E
-_0800D538:
- adds r3, 0x1
- mov r10, r3
- ldr r4, [sp, 0x4]
- adds r4, 0x20
- adds r7, r5, 0
- adds r7, 0x20
- movs r0, 0x12
- adds r0, r5
- mov r12, r0
- ldr r2, [sp, 0x4]
- adds r3, r5, 0
- movs r6, 0x3
-_0800D550:
- ldrb r0, [r2]
- mov r1, r12
- strb r0, [r1]
- ldrb r0, [r2, 0x1]
- strb r0, [r1, 0x1]
- ldrb r0, [r2, 0x2]
- strb r0, [r1, 0x1E]
- ldrb r0, [r2, 0x3]
- strb r0, [r1, 0x1F]
- movs r0, 0x81
- lsls r0, 1
- adds r1, r3, r0
- ldrb r0, [r2, 0x10]
- strb r0, [r1]
- ldr r0, _0800D5A8 @ =0x00000103
- adds r1, r3, r0
- ldrb r0, [r2, 0x11]
- strb r0, [r1]
- movs r0, 0x90
- lsls r0, 1
- adds r1, r3, r0
- ldrb r0, [r2, 0x12]
- strb r0, [r1]
- ldr r0, _0800D5AC @ =0x00000121
- adds r1, r3, r0
- ldrb r0, [r2, 0x13]
- strb r0, [r1]
- movs r1, 0x4
- add r12, r1
- adds r2, 0x4
- adds r3, 0x4
- subs r6, 0x1
- cmp r6, 0
- bge _0800D550
- str r4, [sp, 0x4]
- adds r5, r7, 0
- mov r3, r10
- cmp r3, r9
- blt _0800D538
-_0800D59E:
- mov r2, r9
- cmp r2, 0x7
- bne _0800D5B0
- adds r5, 0x20
- b _0800D5B8
- .align 2, 0
-_0800D5A8: .4byte 0x00000103
-_0800D5AC: .4byte 0x00000121
-_0800D5B0:
- mov r4, r9
- cmp r4, 0x5
- bne _0800D5B8
- adds r5, 0x60
-_0800D5B8:
- mov r7, r8
- cmp r7, r9
- blt _0800D52E
-_0800D5BE:
- mov r0, r9
- cmp r0, 0x7
- bne _0800D5CC
- movs r1, 0x80
- lsls r1, 1
- adds r5, r1
- b _0800D5D8
-_0800D5CC:
- mov r2, r9
- cmp r2, 0x5
- bne _0800D5D8
- movs r4, 0xF0
- lsls r4, 1
- adds r5, r4
-_0800D5D8:
- ldr r0, [sp, 0x14]
- ldr r1, [sp]
- cmp r0, r1
- bge _0800D5E2
- b _0800D466
-_0800D5E2:
- b _0800D674
-_0800D5E4:
- movs r6, 0
- ldr r2, [sp]
- cmp r6, r2
- bge _0800D674
-_0800D5EC:
- adds r6, 0x1
- mov r10, r6
- mov r4, r9
- cmp r4, 0x6
- bne _0800D604
- movs r0, 0
- movs r3, 0xFF
-_0800D5FA:
- strb r0, [r5]
- adds r5, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _0800D5FA
-_0800D604:
- movs r7, 0
- cmp r7, r9
- bge _0800D658
-_0800D60A:
- adds r7, 0x1
- mov r8, r7
- mov r1, r9
- lsls r0, r1, 5
- cmp r1, 0x6
- bne _0800D624
- movs r1, 0
- movs r3, 0x1F
-_0800D61A:
- strb r1, [r5]
- adds r5, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _0800D61A
-_0800D624:
- adds r1, r0, 0
- cmp r1, 0
- ble _0800D63E
- adds r3, r1, 0
-_0800D62C:
- ldr r2, [sp, 0x4]
- ldrb r0, [r2]
- strb r0, [r5]
- adds r2, 0x1
- str r2, [sp, 0x4]
- adds r5, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _0800D62C
-_0800D63E:
- mov r4, r9
- cmp r4, 0x6
- bne _0800D652
- movs r0, 0
- movs r3, 0x1F
-_0800D648:
- strb r0, [r5]
- adds r5, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _0800D648
-_0800D652:
- mov r7, r8
- cmp r7, r9
- blt _0800D60A
-_0800D658:
- mov r0, r9
- cmp r0, 0x6
- bne _0800D66C
- movs r0, 0
- movs r3, 0xFF
-_0800D662:
- strb r0, [r5]
- adds r5, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _0800D662
-_0800D66C:
- mov r6, r10
- ldr r1, [sp]
- cmp r6, r1
- blt _0800D5EC
-_0800D674:
- add sp, 0x24
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end unref_sub_800D42C
-
- thumb_func_start unref_sub_800D684
-unref_sub_800D684: @ 800D684
- push {lr}
- bl ResetSpriteData
- ldr r0, _0800D6B8 @ =gSpriteTemplate_81F96D0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0800D6BC @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1]
- ldr r0, _0800D6C0 @ =sub_800D6C4
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_0800D6B8: .4byte gSpriteTemplate_81F96D0
-_0800D6BC: .4byte gSprites
-_0800D6C0: .4byte sub_800D6C4
- thumb_func_end unref_sub_800D684
-
- thumb_func_start sub_800D6C4
-sub_800D6C4: @ 800D6C4
- push {lr}
- bl AnimateSprites
- bl BuildOamBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_800D6C4
-
- thumb_func_start sub_800D6D4
-sub_800D6D4: @ 800D6D4
- push {r4,r5,lr}
- ldr r3, _0800D72C @ =0x04000208
- ldrh r2, [r3]
- movs r5, 0
- strh r5, [r3]
- ldr r4, _0800D730 @ =0x04000200
- ldrh r0, [r4]
- movs r1, 0x1
- orrs r0, r1
- strh r0, [r4]
- strh r2, [r3]
- ldr r1, _0800D734 @ =REG_DISPSTAT
- movs r0, 0x8
- strh r0, [r1]
- adds r1, 0x4
- movs r2, 0x98
- lsls r2, 8
- adds r0, r2, 0
- strh r0, [r1]
- adds r1, 0x2
- ldr r2, _0800D738 @ =0x00009c04
- adds r0, r2, 0
- strh r0, [r1]
- adds r1, 0x2
- ldr r2, _0800D73C @ =0x00005e05
- adds r0, r2, 0
- strh r0, [r1]
- adds r1, 0x2
- ldr r2, _0800D740 @ =0x00005a0b
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, _0800D744 @ =REG_BLDCNT
- strh r5, [r0]
- adds r0, 0x2
- strh r5, [r0]
- adds r0, 0x2
- strh r5, [r0]
- subs r1, 0xE
- ldr r2, _0800D748 @ =0x0000bf40
- adds r0, r2, 0
- strh r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0800D72C: .4byte 0x04000208
-_0800D730: .4byte 0x04000200
-_0800D734: .4byte REG_DISPSTAT
-_0800D738: .4byte 0x00009c04
-_0800D73C: .4byte 0x00005e05
-_0800D740: .4byte 0x00005a0b
-_0800D744: .4byte REG_BLDCNT
-_0800D748: .4byte 0x0000bf40
- thumb_func_end sub_800D6D4
-
- thumb_func_start sub_800D74C
-sub_800D74C: @ 800D74C
- push {r4,lr}
- movs r0, 0x12
- bl TextWindow_SetBaseTileNum
- ldr r4, _0800D79C @ =gUnknown_03004210
- adds r0, r4, 0
- movs r1, 0x1
- bl TextWindow_LoadStdFrameGraphicsOverridePal
- movs r0, 0x22
- bl TextWindow_SetBaseTileNum
- adds r0, r4, 0
- movs r1, 0x1
- bl TextWindow_LoadStdFrameGraphicsOverridePal
- ldr r3, _0800D7A0 @ =gPlttBufferUnfaded
- adds r0, r3, 0
- adds r0, 0xB8
- ldr r1, _0800D7A4 @ =0x00007fe0
- strh r1, [r0]
- adds r2, r3, 0
- adds r2, 0xBA
- ldr r1, _0800D7A8 @ =0x00002529
- strh r1, [r2]
- adds r2, 0x2
- ldr r1, _0800D7AC @ =0x00007fff
- strh r1, [r2]
- adds r2, 0x2
- ldr r1, _0800D7B0 @ =0x0000675a
- strh r1, [r2]
- ldr r1, _0800D7B4 @ =gPlttBufferFaded + 0xB8
- movs r2, 0x4
- bl CpuSet
- bl sub_8032A38
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800D79C: .4byte gUnknown_03004210
-_0800D7A0: .4byte gPlttBufferUnfaded
-_0800D7A4: .4byte 0x00007fe0
-_0800D7A8: .4byte 0x00002529
-_0800D7AC: .4byte 0x00007fff
-_0800D7B0: .4byte 0x0000675a
-_0800D7B4: .4byte gPlttBufferFaded + 0xB8
- thumb_func_end sub_800D74C
-
- thumb_func_start DrawMainBattleBackground
-DrawMainBattleBackground: @ 800D7B8
- push {r4,r5,lr}
- ldr r0, _0800D7DC @ =gBattleTypeFlags
- ldrh r1, [r0]
- ldr r0, _0800D7E0 @ =0x00000902
- ands r0, r1
- cmp r0, 0
- beq _0800D7F8
- ldr r0, _0800D7E4 @ =gBattleTerrainTiles_Building
- ldr r1, _0800D7E8 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D7EC @ =gBattleTerrainTilemap_Building
- ldr r1, _0800D7F0 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800D7F4 @ =gBattleTerrainPalette_BattleTower
- b _0800DA66
- .align 2, 0
-_0800D7DC: .4byte gBattleTypeFlags
-_0800D7E0: .4byte 0x00000902
-_0800D7E4: .4byte gBattleTerrainTiles_Building
-_0800D7E8: .4byte 0x06008000
-_0800D7EC: .4byte gBattleTerrainTilemap_Building
-_0800D7F0: .4byte 0x0600d000
-_0800D7F4: .4byte gBattleTerrainPalette_BattleTower
-_0800D7F8:
- movs r0, 0x80
- lsls r0, 5
- ands r0, r1
- cmp r0, 0
- beq _0800D860
- ldr r0, _0800D820 @ =gGameVersion
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0800D838
- ldr r0, _0800D824 @ =gBattleTerrainTiles_Cave
- ldr r1, _0800D828 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D82C @ =gBattleTerrainTilemap_Cave
- ldr r1, _0800D830 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800D834 @ =gBattleTerrainPalette_Groudon
- b _0800DA66
- .align 2, 0
-_0800D820: .4byte gGameVersion
-_0800D824: .4byte gBattleTerrainTiles_Cave
-_0800D828: .4byte 0x06008000
-_0800D82C: .4byte gBattleTerrainTilemap_Cave
-_0800D830: .4byte 0x0600d000
-_0800D834: .4byte gBattleTerrainPalette_Groudon
-_0800D838:
- ldr r0, _0800D84C @ =gBattleTerrainTiles_Water
- ldr r1, _0800D850 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D854 @ =gBattleTerrainTilemap_Water
- ldr r1, _0800D858 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800D85C @ =gBattleTerrainPalette_Kyogre
- b _0800DA66
- .align 2, 0
-_0800D84C: .4byte gBattleTerrainTiles_Water
-_0800D850: .4byte 0x06008000
-_0800D854: .4byte gBattleTerrainTilemap_Water
-_0800D858: .4byte 0x0600d000
-_0800D85C: .4byte gBattleTerrainPalette_Kyogre
-_0800D860:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0800D8D8
- ldr r2, _0800D890 @ =gTrainers
- ldr r0, _0800D894 @ =gTrainerBattleOpponent
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0x19
- bne _0800D8AC
- ldr r0, _0800D898 @ =gBattleTerrainTiles_Building
- ldr r1, _0800D89C @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D8A0 @ =gBattleTerrainTilemap_Building
- ldr r1, _0800D8A4 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800D8A8 @ =gBattleTerrainPalette_BuildingLeader
- b _0800DA66
- .align 2, 0
-_0800D890: .4byte gTrainers
-_0800D894: .4byte gTrainerBattleOpponent
-_0800D898: .4byte gBattleTerrainTiles_Building
-_0800D89C: .4byte 0x06008000
-_0800D8A0: .4byte gBattleTerrainTilemap_Building
-_0800D8A4: .4byte 0x0600d000
-_0800D8A8: .4byte gBattleTerrainPalette_BuildingLeader
-_0800D8AC:
- cmp r0, 0x20
- bne _0800D8D8
- ldr r0, _0800D8C4 @ =gBattleTerrainTiles_Stadium
- ldr r1, _0800D8C8 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D8CC @ =gBattleTerrainTilemap_Stadium
- ldr r1, _0800D8D0 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800D8D4 @ =gBattleTerrainPalette_StadiumSteven
- b _0800DA66
- .align 2, 0
-_0800D8C4: .4byte gBattleTerrainTiles_Stadium
-_0800D8C8: .4byte 0x06008000
-_0800D8CC: .4byte gBattleTerrainTilemap_Stadium
-_0800D8D0: .4byte 0x0600d000
-_0800D8D4: .4byte gBattleTerrainPalette_StadiumSteven
-_0800D8D8:
- bl sav1_map_get_battletype
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8
- bls _0800D8E6
- b _0800DA9E
-_0800D8E6:
- lsls r0, 2
- ldr r1, _0800D8F0 @ =_0800D8F4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0800D8F0: .4byte _0800D8F4
- .align 2, 0
-_0800D8F4:
- .4byte _0800D918
- .4byte _0800D964
- .4byte _0800D98C
- .4byte _0800D9B4
- .4byte _0800D9DC
- .4byte _0800DA04
- .4byte _0800DA2C
- .4byte _0800DA54
- .4byte _0800DA84
-_0800D918:
- ldr r4, _0800D954 @ =gBattleTerrainTable
- ldr r5, _0800D958 @ =gBattleTerrain
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- ldr r1, _0800D95C @ =0x06008000
- bl LZDecompressVram
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0x4
- adds r0, r1
- ldr r0, [r0]
- ldr r1, _0800D960 @ =0x0600d000
- bl LZDecompressVram
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r4, 0x10
- adds r0, r4
- ldr r0, [r0]
- b _0800DA66
- .align 2, 0
-_0800D954: .4byte gBattleTerrainTable
-_0800D958: .4byte gBattleTerrain
-_0800D95C: .4byte 0x06008000
-_0800D960: .4byte 0x0600d000
-_0800D964:
- ldr r0, _0800D978 @ =gBattleTerrainTiles_Building
- ldr r1, _0800D97C @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D980 @ =gBattleTerrainTilemap_Building
- ldr r1, _0800D984 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800D988 @ =gBattleTerrainPalette_BuildingGym
- b _0800DA66
- .align 2, 0
-_0800D978: .4byte gBattleTerrainTiles_Building
-_0800D97C: .4byte 0x06008000
-_0800D980: .4byte gBattleTerrainTilemap_Building
-_0800D984: .4byte 0x0600d000
-_0800D988: .4byte gBattleTerrainPalette_BuildingGym
-_0800D98C:
- ldr r0, _0800D9A0 @ =gBattleTerrainTiles_Stadium
- ldr r1, _0800D9A4 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D9A8 @ =gBattleTerrainTilemap_Stadium
- ldr r1, _0800D9AC @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800D9B0 @ =gBattleTerrainPalette_StadiumMagma
- b _0800DA66
- .align 2, 0
-_0800D9A0: .4byte gBattleTerrainTiles_Stadium
-_0800D9A4: .4byte 0x06008000
-_0800D9A8: .4byte gBattleTerrainTilemap_Stadium
-_0800D9AC: .4byte 0x0600d000
-_0800D9B0: .4byte gBattleTerrainPalette_StadiumMagma
-_0800D9B4:
- ldr r0, _0800D9C8 @ =gBattleTerrainTiles_Stadium
- ldr r1, _0800D9CC @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D9D0 @ =gBattleTerrainTilemap_Stadium
- ldr r1, _0800D9D4 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800D9D8 @ =gBattleTerrainPalette_StadiumAqua
- b _0800DA66
- .align 2, 0
-_0800D9C8: .4byte gBattleTerrainTiles_Stadium
-_0800D9CC: .4byte 0x06008000
-_0800D9D0: .4byte gBattleTerrainTilemap_Stadium
-_0800D9D4: .4byte 0x0600d000
-_0800D9D8: .4byte gBattleTerrainPalette_StadiumAqua
-_0800D9DC:
- ldr r0, _0800D9F0 @ =gBattleTerrainTiles_Stadium
- ldr r1, _0800D9F4 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800D9F8 @ =gBattleTerrainTilemap_Stadium
- ldr r1, _0800D9FC @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800DA00 @ =gBattleTerrainPalette_StadiumSidney
- b _0800DA66
- .align 2, 0
-_0800D9F0: .4byte gBattleTerrainTiles_Stadium
-_0800D9F4: .4byte 0x06008000
-_0800D9F8: .4byte gBattleTerrainTilemap_Stadium
-_0800D9FC: .4byte 0x0600d000
-_0800DA00: .4byte gBattleTerrainPalette_StadiumSidney
-_0800DA04:
- ldr r0, _0800DA18 @ =gBattleTerrainTiles_Stadium
- ldr r1, _0800DA1C @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800DA20 @ =gBattleTerrainTilemap_Stadium
- ldr r1, _0800DA24 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800DA28 @ =gBattleTerrainPalette_StadiumPhoebe
- b _0800DA66
- .align 2, 0
-_0800DA18: .4byte gBattleTerrainTiles_Stadium
-_0800DA1C: .4byte 0x06008000
-_0800DA20: .4byte gBattleTerrainTilemap_Stadium
-_0800DA24: .4byte 0x0600d000
-_0800DA28: .4byte gBattleTerrainPalette_StadiumPhoebe
-_0800DA2C:
- ldr r0, _0800DA40 @ =gBattleTerrainTiles_Stadium
- ldr r1, _0800DA44 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800DA48 @ =gBattleTerrainTilemap_Stadium
- ldr r1, _0800DA4C @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800DA50 @ =gBattleTerrainPalette_StadiumGlacia
- b _0800DA66
- .align 2, 0
-_0800DA40: .4byte gBattleTerrainTiles_Stadium
-_0800DA44: .4byte 0x06008000
-_0800DA48: .4byte gBattleTerrainTilemap_Stadium
-_0800DA4C: .4byte 0x0600d000
-_0800DA50: .4byte gBattleTerrainPalette_StadiumGlacia
-_0800DA54:
- ldr r0, _0800DA70 @ =gBattleTerrainTiles_Stadium
- ldr r1, _0800DA74 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800DA78 @ =gBattleTerrainTilemap_Stadium
- ldr r1, _0800DA7C @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800DA80 @ =gBattleTerrainPalette_StadiumDrake
-_0800DA66:
- movs r1, 0x20
- movs r2, 0x60
- bl LoadCompressedPalette
- b _0800DA9E
- .align 2, 0
-_0800DA70: .4byte gBattleTerrainTiles_Stadium
-_0800DA74: .4byte 0x06008000
-_0800DA78: .4byte gBattleTerrainTilemap_Stadium
-_0800DA7C: .4byte 0x0600d000
-_0800DA80: .4byte gBattleTerrainPalette_StadiumDrake
-_0800DA84:
- ldr r0, _0800DAA4 @ =gBattleTerrainTiles_Building
- ldr r1, _0800DAA8 @ =0x06008000
- bl LZDecompressVram
- ldr r0, _0800DAAC @ =gBattleTerrainTilemap_Building
- ldr r1, _0800DAB0 @ =0x0600d000
- bl LZDecompressVram
- ldr r0, _0800DAB4 @ =gBattleTerrainPalette_BattleTower
- movs r1, 0x20
- movs r2, 0x60
- bl LoadCompressedPalette
-_0800DA9E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0800DAA4: .4byte gBattleTerrainTiles_Building
-_0800DAA8: .4byte 0x06008000
-_0800DAAC: .4byte gBattleTerrainTilemap_Building
-_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 @ gUnknown_08D00000
- mov r1, #0xc0
- lsl r1, r1, #0x13
- bl LZDecompressVram
- 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 @ gUnknown_08D004E0
- mov r1, #0x0
- mov r2, #0x40
- bl LoadCompressedPalette
- bl sub_800D74C
- bl DrawMainBattleBackground
- 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 @ 0x6000600
- mov r1, #0x0
- add r2, r4, #0
- mov r3, #0x1
- bl debug_sub_8008218
- ldr r5, ._113 + 24 @ 0x101
- 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}
- ldr r0, _0800DAE8 @ =gUnknown_08D00000
- movs r1, 0xC0
- lsls r1, 19
- bl LZDecompressVram
- ldr r0, _0800DAEC @ =gUnknown_08D00524
- ldr r1, _0800DAF0 @ =0x0600c000
- movs r2, 0x80
- lsls r2, 4
- bl CpuSet
- ldr r0, _0800DAF4 @ =gUnknown_08D004E0
- movs r1, 0
- movs r2, 0x40
- bl LoadCompressedPalette
- bl sub_800D74C
- bl DrawMainBattleBackground
- pop {r0}
- bx r0
- .align 2, 0
-_0800DAE8: .4byte gUnknown_08D00000
-_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
- push {r4-r7,lr}
- sub sp, 0xC
- adds r7, r2, 0
- lsls r0, 24
- lsrs r2, r0, 24
- adds r5, r2, 0
- lsls r1, 24
- lsrs r3, r1, 24
- movs r4, 0
- ldr r0, _0800DB38 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0800DBB4
- ldr r0, _0800DB3C @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- movs r2, 0x12
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _0800DB52
- cmp r3, 0x1
- beq _0800DB7A
- cmp r3, 0x1
- bgt _0800DB40
- cmp r3, 0
- beq _0800DB4A
- b _0800DB84
- .align 2, 0
-_0800DB38: .4byte gBattleTypeFlags
-_0800DB3C: .4byte gTasks
-_0800DB40:
- cmp r3, 0x2
- beq _0800DB4E
- cmp r3, 0x3
- beq _0800DB6E
- b _0800DB84
-_0800DB4A:
- ldrh r0, [r1, 0xE]
- b _0800DB70
-_0800DB4E:
- ldrh r1, [r1, 0xE]
- b _0800DB7C
-_0800DB52:
- cmp r3, 0x1
- beq _0800DB6E
- cmp r3, 0x1
- bgt _0800DB60
- cmp r3, 0
- beq _0800DB6A
- b _0800DB84
-_0800DB60:
- cmp r3, 0x2
- beq _0800DB76
- cmp r3, 0x3
- beq _0800DB7A
- b _0800DB84
-_0800DB6A:
- ldrh r0, [r1, 0xE]
- b _0800DB70
-_0800DB6E:
- ldrh r0, [r1, 0x10]
-_0800DB70:
- movs r4, 0x3F
- ands r4, r0
- b _0800DB84
-_0800DB76:
- ldrh r1, [r1, 0xE]
- b _0800DB7C
-_0800DB7A:
- ldrh r1, [r1, 0x10]
-_0800DB7C:
- movs r0, 0xFC
- lsls r0, 4
- ands r0, r1
- lsrs r4, r0, 6
-_0800DB84:
- movs r3, 0
- movs r6, 0x3
- ldr r0, _0800DBB0 @ =0x00006001
- adds r5, r0, 0
- mov r2, sp
-_0800DB8E:
- lsls r1, r3, 1
- adds r0, r6, 0
- lsls r0, r1
- ands r0, r4
- asrs r0, r1
- adds r0, r5
- strh r0, [r2]
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x2
- ble _0800DB8E
- mov r0, sp
- adds r1, r7, 0
- movs r2, 0x3
- bl CpuSet
- b _0800DC12
- .align 2, 0
-_0800DBB0: .4byte 0x00006001
-_0800DBB4:
- ldr r0, _0800DBD0 @ =gSharedMem
- ldr r1, _0800DBD4 @ =0x000160cb
- adds r0, r1
- ldrb r0, [r0]
- cmp r3, r0
- bne _0800DBDC
- ldr r1, _0800DBD8 @ =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- ldrh r4, [r0, 0xE]
- b _0800DBE8
- .align 2, 0
-_0800DBD0: .4byte gSharedMem
-_0800DBD4: .4byte 0x000160cb
-_0800DBD8: .4byte gTasks
-_0800DBDC:
- ldr r1, _0800DC1C @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldrh r4, [r0, 0x10]
-_0800DBE8:
- movs r3, 0
- movs r6, 0x3
- ldr r2, _0800DC20 @ =0x00006001
- adds r5, r2, 0
- mov r2, sp
-_0800DBF2:
- lsls r1, r3, 1
- adds r0, r6, 0
- lsls r0, r1
- ands r0, r4
- asrs r0, r1
- adds r0, r5
- strh r0, [r2]
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x5
- ble _0800DBF2
- mov r0, sp
- adds r1, r7, 0
- movs r2, 0x6
- bl CpuSet
-_0800DC12:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800DC1C: .4byte gTasks
-_0800DC20: .4byte 0x00006001
- thumb_func_end sub_800DAF8
-
- .section .text_800DC24
-
- thumb_func_start sub_800DE30
-sub_800DE30: @ 800DE30
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r1, _0800DE64 @ =gTasks
- lsls r0, 2
- mov r10, r0
- add r0, r9
- lsls r0, 3
- adds r6, r0, r1
- movs r1, 0x8
- ldrsh r0, [r6, r1]
- cmp r0, 0x1
- bne _0800DE58
- b _0800DF9C
-_0800DE58:
- cmp r0, 0x1
- bgt _0800DE68
- cmp r0, 0
- beq _0800DE70
- b _0800E212
- .align 2, 0
-_0800DE64: .4byte gTasks
-_0800DE68:
- cmp r0, 0x2
- bne _0800DE6E
- b _0800E03C
-_0800DE6E:
- b _0800E212
-_0800DE70:
- ldr r0, _0800DED0 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0800DEE0
- ldr r0, _0800DED4 @ =gLinkPlayers
- ldr r2, _0800DED8 @ =gUnknown_081F9680
- mov r8, r2
- adds r7, r0, 0
- adds r7, 0x8
- movs r5, 0x3
-_0800DE88:
- ldrb r0, [r7, 0x10]
- movs r1, 0x3
- ands r1, r0
- str r1, [sp, 0x8]
- lsls r4, r1, 1
- adds r4, r1
- lsls r4, 2
- mov r2, r8
- adds r0, r4, r2
- ldr r1, [r0]
- str r1, [sp, 0xC]
- ldrh r2, [r0, 0x4]
- ldrb r3, [r0, 0x6]
- ldrb r0, [r0, 0x7]
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- adds r0, r1, 0
- adds r1, r7, 0
- bl Text_InitWindow8002E4C
- ldr r0, [sp, 0xC]
- bl Text_PrintWindow8002F44
- ldr r2, _0800DEDC @ =gUnknown_081F9680 + 0x8
- adds r4, r2
- ldr r2, [r4]
- mov r0, r9
- ldr r1, [sp, 0x8]
- bl sub_800DAF8
- adds r7, 0x1C
- subs r5, 0x1
- cmp r5, 0
- bge _0800DE88
- b _0800DF70
- .align 2, 0
-_0800DED0: .4byte gBattleTypeFlags
-_0800DED4: .4byte gLinkPlayers
-_0800DED8: .4byte gUnknown_081F9680
-_0800DEDC: .4byte gUnknown_081F9680 + 0x8
-_0800DEE0:
- ldr r0, _0800DF84 @ =gSharedMem
- ldr r5, _0800DF88 @ =0x000160cb
- adds r0, r5
- ldrb r7, [r0]
- movs r0, 0x1
- adds r6, r7, 0
- eors r6, r0
- adds r1, r6, 0
- ldr r2, _0800DF8C @ =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r2
- ldrh r0, [r0, 0x18]
- cmp r0, 0
- beq _0800DF04
- adds r6, r7, 0
- adds r7, r1, 0
-_0800DF04:
- ldr r0, _0800DF90 @ =gUnknown_081F9680
- mov r8, r0
- adds r0, 0x30
- mov r1, r8
- ldr r4, [r1, 0x30]
- lsls r1, r7, 3
- subs r1, r7
- lsls r1, 2
- ldr r2, _0800DF94 @ =gLinkPlayers + 0x8
- adds r1, r2
- ldrh r2, [r0, 0x4]
- ldrb r3, [r0, 0x6]
- ldrb r0, [r0, 0x7]
- str r0, [sp]
- movs r5, 0x1
- str r5, [sp, 0x4]
- adds r0, r4, 0
- bl Text_InitWindow8002E4C
- adds r0, r4, 0
- bl Text_PrintWindow8002F44
- mov r0, r8
- ldr r2, [r0, 0x38]
- mov r0, r9
- adds r1, r7, 0
- bl sub_800DAF8
- mov r0, r8
- adds r0, 0x3C
- mov r1, r8
- ldr r4, [r1, 0x3C]
- lsls r1, r6, 3
- subs r1, r6
- lsls r1, 2
- ldr r2, _0800DF94 @ =gLinkPlayers + 0x8
- adds r1, r2
- ldrh r2, [r0, 0x4]
- ldrb r3, [r0, 0x6]
- ldrb r0, [r0, 0x7]
- str r0, [sp]
- str r5, [sp, 0x4]
- adds r0, r4, 0
- bl Text_InitWindow8002E4C
- adds r0, r4, 0
- bl Text_PrintWindow8002F44
- mov r5, r8
- ldr r2, [r5, 0x44]
- mov r0, r9
- adds r1, r6, 0
- bl sub_800DAF8
-_0800DF70:
- ldr r0, _0800DF98 @ =gTasks
- mov r1, r10
- add r1, r9
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _0800E212
- .align 2, 0
-_0800DF84: .4byte gSharedMem
-_0800DF88: .4byte 0x000160cb
-_0800DF8C: .4byte gLinkPlayers
-_0800DF90: .4byte gUnknown_081F9680
-_0800DF94: .4byte gLinkPlayers + 0x8
-_0800DF98: .4byte gTasks
-_0800DF9C:
- ldr r0, _0800E010 @ =0x00002710
- bl AllocSpritePalette
- lsls r0, 24
- ldr r2, _0800E014 @ =gPlttBufferUnfaded
- lsrs r0, 19
- ldr r1, _0800E018 @ =0x0000021e
- adds r0, r1
- adds r2, r0, r2
- ldr r1, _0800E01C @ =gPlttBufferFaded
- adds r0, r1
- ldr r1, _0800E020 @ =0x00007fff
- strh r1, [r0]
- strh r1, [r2]
- ldr r0, _0800E024 @ =gSpriteTemplate_81F9574
- movs r1, 0x6C
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- ldr r4, _0800E028 @ =gSharedMem
- ldr r2, _0800E02C @ =0x0001608a
- adds r7, r4, r2
- strb r0, [r7]
- ldr r0, _0800E030 @ =gSpriteTemplate_81F958C
- movs r1, 0x84
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- ldr r5, _0800E034 @ =0x0001608b
- adds r4, r5
- strb r0, [r4]
- ldr r3, _0800E038 @ =gSprites
- ldrb r1, [r7]
- 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]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- ldrh r0, [r6, 0x8]
- adds r0, 0x1
- strh r0, [r6, 0x8]
- b _0800E212
- .align 2, 0
-_0800E010: .4byte 0x00002710
-_0800E014: .4byte gPlttBufferUnfaded
-_0800E018: .4byte 0x0000021e
-_0800E01C: .4byte gPlttBufferFaded
-_0800E020: .4byte 0x00007fff
-_0800E024: .4byte gSpriteTemplate_81F9574
-_0800E028: .4byte gSharedMem
-_0800E02C: .4byte 0x0001608a
-_0800E030: .4byte gSpriteTemplate_81F958C
-_0800E034: .4byte 0x0001608b
-_0800E038: .4byte gSprites
-_0800E03C:
- movs r1, 0x12
- ldrsh r0, [r6, r1]
- cmp r0, 0
- beq _0800E0A4
- ldr r4, _0800E090 @ =gBattle_BG1_X
- ldrh r0, [r6, 0xA]
- bl Sin2
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _0800E056
- adds r0, 0x1F
-_0800E056:
- asrs r1, r0, 5
- movs r2, 0x14
- negs r2, r2
- adds r0, r2, 0
- subs r0, r1
- strh r0, [r4]
- ldr r4, _0800E094 @ =gBattle_BG2_X
- ldrh r0, [r6, 0xC]
- bl Sin2
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _0800E074
- adds r0, 0x1F
-_0800E074:
- asrs r1, r0, 5
- movs r5, 0x8C
- negs r5, r5
- adds r0, r5, 0
- subs r0, r1
- strh r0, [r4]
- ldr r0, _0800E098 @ =gBattle_BG1_Y
- ldr r2, _0800E09C @ =0x0000ffdc
- adds r1, r2, 0
- strh r1, [r0]
- ldr r0, _0800E0A0 @ =gBattle_BG2_Y
- strh r1, [r0]
- b _0800E110
- .align 2, 0
-_0800E090: .4byte gBattle_BG1_X
-_0800E094: .4byte gBattle_BG2_X
-_0800E098: .4byte gBattle_BG1_Y
-_0800E09C: .4byte 0x0000ffdc
-_0800E0A0: .4byte gBattle_BG2_Y
-_0800E0A4:
- ldr r4, _0800E134 @ =gBattle_BG1_X
- ldrh r0, [r6, 0xA]
- bl Sin2
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _0800E0B6
- adds r0, 0x1F
-_0800E0B6:
- asrs r1, r0, 5
- movs r5, 0x14
- negs r5, r5
- adds r0, r5, 0
- subs r0, r1
- strh r0, [r4]
- ldr r4, _0800E138 @ =gBattle_BG1_Y
- ldrh r0, [r6, 0xA]
- bl Cos2
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _0800E0D4
- adds r0, 0x1F
-_0800E0D4:
- asrs r0, 5
- subs r0, 0xA4
- strh r0, [r4]
- ldr r4, _0800E13C @ =gBattle_BG2_X
- ldrh r0, [r6, 0xC]
- bl Sin2
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _0800E0EC
- adds r0, 0x1F
-_0800E0EC:
- asrs r1, r0, 5
- movs r2, 0x8C
- negs r2, r2
- adds r0, r2, 0
- subs r0, r1
- strh r0, [r4]
- ldr r4, _0800E140 @ =gBattle_BG2_Y
- ldrh r0, [r6, 0xC]
- bl Cos2
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _0800E10A
- adds r0, 0x1F
-_0800E10A:
- asrs r0, 5
- subs r0, 0xA4
- strh r0, [r4]
-_0800E110:
- ldr r1, _0800E144 @ =gTasks
- mov r5, r9
- lsls r0, r5, 2
- add r0, r9
- lsls r0, 3
- adds r1, r0, r1
- ldrh r0, [r1, 0xC]
- movs r2, 0xC
- ldrsh r7, [r1, r2]
- cmp r7, 0
- beq _0800E148
- subs r0, 0x2
- strh r0, [r1, 0xC]
- ldrh r0, [r1, 0xA]
- adds r0, 0x2
- strh r0, [r1, 0xA]
- b _0800E212
- .align 2, 0
-_0800E134: .4byte gBattle_BG1_X
-_0800E138: .4byte gBattle_BG1_Y
-_0800E13C: .4byte gBattle_BG2_X
-_0800E140: .4byte gBattle_BG2_Y
-_0800E144: .4byte gTasks
-_0800E148:
- movs r5, 0x12
- ldrsh r0, [r1, r5]
- cmp r0, 0
- beq _0800E154
- bl PrintLinkBattleWinLossTie
-_0800E154:
- movs r0, 0x78
- bl PlaySE
- mov r0, r9
- bl DestroyTask
- ldr r4, _0800E224 @ =gSprites
- ldr r0, _0800E228 @ =gSharedMem
- mov r8, r0
- ldr r1, _0800E22C @ =0x0001608a
- add r1, r8
- mov r9, r1
- ldrb r0, [r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- ldr r5, _0800E230 @ =0x0001608b
- add r8, r5
- mov r0, r8
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- mov r1, r8
- ldrb r0, [r1]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r4
- ldrh r3, [r2, 0x4]
- lsls r1, r3, 22
- lsrs r1, 22
- adds r1, 0x40
- ldr r5, _0800E234 @ =0x000003ff
- adds r0, r5, 0
- ands r1, r0
- ldr r0, _0800E238 @ =0xfffffc00
- ands r0, r3
- orrs r0, r1
- strh r0, [r2, 0x4]
- mov r0, r9
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r7, [r0, 0x2E]
- mov r2, r8
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x1
- strh r1, [r0, 0x2E]
- mov r5, r9
- ldrb r1, [r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x20]
- strh r1, [r0, 0x30]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x20]
- strh r1, [r0, 0x30]
- ldrb r1, [r5]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r7, [r0, 0x32]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r7, [r0, 0x32]
-_0800E212:
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800E224: .4byte gSprites
-_0800E228: .4byte gSharedMem
-_0800E22C: .4byte 0x0001608a
-_0800E230: .4byte 0x0001608b
-_0800E234: .4byte 0x000003ff
-_0800E238: .4byte 0xfffffc00
- thumb_func_end sub_800DE30
-
- thumb_func_start sub_800E23C
-sub_800E23C: @ 800E23C
- push {r4,r5,lr}
- ldr r0, _0800E29C @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0800E2DC
- ldr r0, _0800E2A0 @ =gVersusFrameGfx
- ldr r1, _0800E2A4 @ =0x06004000
- bl LZDecompressVram
- ldr r4, _0800E2A8 @ =gVersusFrameTilemap
- ldr r1, _0800E2AC @ =0x0600e000
- adds r0, r4, 0
- bl LZDecompressVram
- ldr r1, _0800E2B0 @ =0x0600f000
- adds r0, r4, 0
- bl LZDecompressVram
- ldr r0, _0800E2B4 @ =gUnknown_08E5DC2C
- ldr r1, _0800E2B8 @ =0x06010000
- bl LZDecompressVram
- ldr r0, _0800E2BC @ =gVersusFramePal
- movs r1, 0x60
- movs r2, 0x20
- bl LoadCompressedPalette
- ldr r1, _0800E2C0 @ =REG_BG1CNT
- ldr r2, _0800E2C4 @ =0x00005c04
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, _0800E2C8 @ =REG_WININ
- movs r1, 0x36
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- ldr r0, _0800E2CC @ =gBattle_BG1_Y
- ldr r2, _0800E2D0 @ =0x0000ff5c
- adds r1, r2, 0
- strh r1, [r0]
- ldr r0, _0800E2D4 @ =gBattle_BG2_Y
- strh r1, [r0]
- ldr r0, _0800E2D8 @ =gUnknown_081F95A4
- bl LoadCompressedObjectPic
- b _0800E3FC
- .align 2, 0
-_0800E29C: .4byte gBattleTypeFlags
-_0800E2A0: .4byte gVersusFrameGfx
-_0800E2A4: .4byte 0x06004000
-_0800E2A8: .4byte gVersusFrameTilemap
-_0800E2AC: .4byte 0x0600e000
-_0800E2B0: .4byte 0x0600f000
-_0800E2B4: .4byte gUnknown_08E5DC2C
-_0800E2B8: .4byte 0x06010000
-_0800E2BC: .4byte gVersusFramePal
-_0800E2C0: .4byte REG_BG1CNT
-_0800E2C4: .4byte 0x00005c04
-_0800E2C8: .4byte REG_WININ
-_0800E2CC: .4byte gBattle_BG1_Y
-_0800E2D0: .4byte 0x0000ff5c
-_0800E2D4: .4byte gBattle_BG2_Y
-_0800E2D8: .4byte gUnknown_081F95A4
-_0800E2DC:
- ldr r0, _0800E2F0 @ =0x00000902
- ands r0, r1
- cmp r0, 0
- beq _0800E300
- ldr r0, _0800E2F4 @ =gBattleTerrainAnimTiles_Building
- ldr r1, _0800E2F8 @ =0x06004000
- bl LZDecompressVram
- ldr r0, _0800E2FC @ =gBattleTerrainAnimTilemap_Building
- b _0800E3D2
- .align 2, 0
-_0800E2F0: .4byte 0x00000902
-_0800E2F4: .4byte gBattleTerrainAnimTiles_Building
-_0800E2F8: .4byte 0x06004000
-_0800E2FC: .4byte gBattleTerrainAnimTilemap_Building
-_0800E300:
- movs r0, 0x80
- lsls r0, 5
- ands r0, r1
- cmp r0, 0
- beq _0800E348
- ldr r0, _0800E320 @ =gGameVersion
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0800E330
- ldr r0, _0800E324 @ =gBattleTerrainAnimTiles_Cave
- ldr r1, _0800E328 @ =0x06004000
- bl LZDecompressVram
- ldr r0, _0800E32C @ =gBattleTerrainAnimTilemap_Cave
- b _0800E3D2
- .align 2, 0
-_0800E320: .4byte gGameVersion
-_0800E324: .4byte gBattleTerrainAnimTiles_Cave
-_0800E328: .4byte 0x06004000
-_0800E32C: .4byte gBattleTerrainAnimTilemap_Cave
-_0800E330:
- ldr r0, _0800E33C @ =gBattleTerrainAnimTiles_Underwater
- ldr r1, _0800E340 @ =0x06004000
- bl LZDecompressVram
- ldr r0, _0800E344 @ =gBattleTerrainAnimTilemap_Underwater
- b _0800E3D2
- .align 2, 0
-_0800E33C: .4byte gBattleTerrainAnimTiles_Underwater
-_0800E340: .4byte 0x06004000
-_0800E344: .4byte gBattleTerrainAnimTilemap_Underwater
-_0800E348:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0800E3A0
- ldr r2, _0800E370 @ =gTrainers
- ldr r0, _0800E374 @ =gTrainerBattleOpponent
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0x19
- bne _0800E384
- ldr r0, _0800E378 @ =gBattleTerrainAnimTiles_Building
- ldr r1, _0800E37C @ =0x06004000
- bl LZDecompressVram
- ldr r0, _0800E380 @ =gBattleTerrainAnimTilemap_Building
- b _0800E3D2
- .align 2, 0
-_0800E370: .4byte gTrainers
-_0800E374: .4byte gTrainerBattleOpponent
-_0800E378: .4byte gBattleTerrainAnimTiles_Building
-_0800E37C: .4byte 0x06004000
-_0800E380: .4byte gBattleTerrainAnimTilemap_Building
-_0800E384:
- cmp r0, 0x20
- bne _0800E3A0
- ldr r0, _0800E394 @ =gBattleTerrainAnimTiles_Building
- ldr r1, _0800E398 @ =0x06004000
- bl LZDecompressVram
- ldr r0, _0800E39C @ =gBattleTerrainAnimTilemap_Building
- b _0800E3D2
- .align 2, 0
-_0800E394: .4byte gBattleTerrainAnimTiles_Building
-_0800E398: .4byte 0x06004000
-_0800E39C: .4byte gBattleTerrainAnimTilemap_Building
-_0800E3A0:
- bl sav1_map_get_battletype
- lsls r0, 24
- cmp r0, 0
- bne _0800E3EC
- ldr r4, _0800E3DC @ =gBattleTerrainTable
- ldr r5, _0800E3E0 @ =gBattleTerrain
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x8
- adds r0, r1
- ldr r0, [r0]
- ldr r1, _0800E3E4 @ =0x06004000
- bl LZDecompressVram
- ldrb r1, [r5]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r4, 0xC
- adds r0, r4
- ldr r0, [r0]
-_0800E3D2:
- ldr r1, _0800E3E8 @ =0x0600e000
- bl LZDecompressVram
- b _0800E3FC
- .align 2, 0
-_0800E3DC: .4byte gBattleTerrainTable
-_0800E3E0: .4byte gBattleTerrain
-_0800E3E4: .4byte 0x06004000
-_0800E3E8: .4byte 0x0600e000
-_0800E3EC:
- ldr r0, _0800E404 @ =gBattleTerrainAnimTiles_Building
- ldr r1, _0800E408 @ =0x06004000
- bl LZDecompressVram
- ldr r0, _0800E40C @ =gBattleTerrainAnimTilemap_Building
- ldr r1, _0800E410 @ =0x0600e000
- bl LZDecompressVram
-_0800E3FC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0800E404: .4byte gBattleTerrainAnimTiles_Building
-_0800E408: .4byte 0x06004000
-_0800E40C: .4byte gBattleTerrainAnimTilemap_Building
-_0800E410: .4byte 0x0600e000
- thumb_func_end sub_800E23C
-
- thumb_func_start sub_800E414
-sub_800E414: @ 800E414
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- movs r4, 0
- cmp r0, 0x6
- bls _0800E422
- b _0800E7BA
-_0800E422:
- lsls r0, 2
- ldr r1, _0800E42C @ =_0800E430
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0800E42C: .4byte _0800E430
- .align 2, 0
-_0800E430:
- .4byte _0800E44C
- .4byte _0800E45C
- .4byte _0800E474
- .4byte _0800E484
- .4byte _0800E590
- .4byte _0800E69C
- .4byte _0800E7B4
-_0800E44C:
- ldr r0, _0800E458 @ =gUnknown_08D00000
- movs r1, 0xC0
- lsls r1, 19
- bl LZDecompressVram
- b _0800E7BC
- .align 2, 0
-_0800E458: .4byte gUnknown_08D00000
-_0800E45C:
- ldr r0, _0800E46C @ =gUnknown_08D00524
- ldr r1, _0800E470 @ =0x0600c000
- movs r2, 0x80
- lsls r2, 4
- bl CpuSet
- b _0800E7BC
- .align 2, 0
-_0800E46C: .4byte gUnknown_08D00524
-_0800E470: .4byte 0x0600c000
-_0800E474:
- ldr r0, _0800E480 @ =gUnknown_08D004E0
- movs r1, 0
- movs r2, 0x40
- bl LoadCompressedPalette
- b _0800E7BC
- .align 2, 0
-_0800E480: .4byte gUnknown_08D004E0
-_0800E484:
- ldr r0, _0800E4A8 @ =gBattleTypeFlags
- ldrh r1, [r0]
- ldr r0, _0800E4AC @ =0x00000902
- ands r0, r1
- cmp r0, 0
- beq _0800E492
- b _0800E57C
-_0800E492:
- movs r0, 0x80
- lsls r0, 5
- ands r0, r1
- cmp r0, 0
- beq _0800E4C0
- ldr r0, _0800E4B0 @ =gGameVersion
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0800E4B8
- ldr r0, _0800E4B4 @ =gBattleTerrainTiles_Cave
- b _0800E57E
- .align 2, 0
-_0800E4A8: .4byte gBattleTypeFlags
-_0800E4AC: .4byte 0x00000902
-_0800E4B0: .4byte gGameVersion
-_0800E4B4: .4byte gBattleTerrainTiles_Cave
-_0800E4B8:
- ldr r0, _0800E4BC @ =gBattleTerrainTiles_Water
- b _0800E57E
- .align 2, 0
-_0800E4BC: .4byte gBattleTerrainTiles_Water
-_0800E4C0:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0800E4F0
- ldr r2, _0800E4E4 @ =gTrainers
- ldr r0, _0800E4E8 @ =gTrainerBattleOpponent
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0x19
- beq _0800E57C
- cmp r0, 0x20
- bne _0800E4F0
- ldr r0, _0800E4EC @ =gBattleTerrainTiles_Stadium
- b _0800E57E
- .align 2, 0
-_0800E4E4: .4byte gTrainers
-_0800E4E8: .4byte gTrainerBattleOpponent
-_0800E4EC: .4byte gBattleTerrainTiles_Stadium
-_0800E4F0:
- bl sav1_map_get_battletype
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8
- bls _0800E4FE
- b _0800E7BC
-_0800E4FE:
- lsls r0, 2
- ldr r1, _0800E508 @ =_0800E50C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0800E508: .4byte _0800E50C
- .align 2, 0
-_0800E50C:
- .4byte _0800E530
- .4byte _0800E57C
- .4byte _0800E54C
- .4byte _0800E554
- .4byte _0800E55C
- .4byte _0800E564
- .4byte _0800E56C
- .4byte _0800E574
- .4byte _0800E57C
-_0800E530:
- ldr r2, _0800E544 @ =gBattleTerrainTable
- ldr r0, _0800E548 @ =gBattleTerrain
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- b _0800E57E
- .align 2, 0
-_0800E544: .4byte gBattleTerrainTable
-_0800E548: .4byte gBattleTerrain
-_0800E54C:
- ldr r0, _0800E550 @ =gBattleTerrainTiles_Stadium
- b _0800E57E
- .align 2, 0
-_0800E550: .4byte gBattleTerrainTiles_Stadium
-_0800E554:
- ldr r0, _0800E558 @ =gBattleTerrainTiles_Stadium
- b _0800E57E
- .align 2, 0
-_0800E558: .4byte gBattleTerrainTiles_Stadium
-_0800E55C:
- ldr r0, _0800E560 @ =gBattleTerrainTiles_Stadium
- b _0800E57E
- .align 2, 0
-_0800E560: .4byte gBattleTerrainTiles_Stadium
-_0800E564:
- ldr r0, _0800E568 @ =gBattleTerrainTiles_Stadium
- b _0800E57E
- .align 2, 0
-_0800E568: .4byte gBattleTerrainTiles_Stadium
-_0800E56C:
- ldr r0, _0800E570 @ =gBattleTerrainTiles_Stadium
- b _0800E57E
- .align 2, 0
-_0800E570: .4byte gBattleTerrainTiles_Stadium
-_0800E574:
- ldr r0, _0800E578 @ =gBattleTerrainTiles_Stadium
- b _0800E57E
- .align 2, 0
-_0800E578: .4byte gBattleTerrainTiles_Stadium
-_0800E57C:
- ldr r0, _0800E588 @ =gBattleTerrainTiles_Building
-_0800E57E:
- ldr r1, _0800E58C @ =0x06008000
- bl LZDecompressVram
- b _0800E7BC
- .align 2, 0
-_0800E588: .4byte gBattleTerrainTiles_Building
-_0800E58C: .4byte 0x06008000
-_0800E590:
- ldr r0, _0800E5B4 @ =gBattleTypeFlags
- ldrh r1, [r0]
- ldr r0, _0800E5B8 @ =0x00000902
- ands r0, r1
- cmp r0, 0
- beq _0800E59E
- b _0800E688
-_0800E59E:
- movs r0, 0x80
- lsls r0, 5
- ands r0, r1
- cmp r0, 0
- beq _0800E5CC
- ldr r0, _0800E5BC @ =gGameVersion
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0800E5C4
- ldr r0, _0800E5C0 @ =gBattleTerrainTilemap_Cave
- b _0800E68A
- .align 2, 0
-_0800E5B4: .4byte gBattleTypeFlags
-_0800E5B8: .4byte 0x00000902
-_0800E5BC: .4byte gGameVersion
-_0800E5C0: .4byte gBattleTerrainTilemap_Cave
-_0800E5C4:
- ldr r0, _0800E5C8 @ =gBattleTerrainTilemap_Water
- b _0800E68A
- .align 2, 0
-_0800E5C8: .4byte gBattleTerrainTilemap_Water
-_0800E5CC:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0800E5FC
- ldr r2, _0800E5F0 @ =gTrainers
- ldr r0, _0800E5F4 @ =gTrainerBattleOpponent
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0x19
- beq _0800E688
- cmp r0, 0x20
- bne _0800E5FC
- ldr r0, _0800E5F8 @ =gBattleTerrainTilemap_Stadium
- b _0800E68A
- .align 2, 0
-_0800E5F0: .4byte gTrainers
-_0800E5F4: .4byte gTrainerBattleOpponent
-_0800E5F8: .4byte gBattleTerrainTilemap_Stadium
-_0800E5FC:
- bl sav1_map_get_battletype
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8
- bls _0800E60A
- b _0800E7BC
-_0800E60A:
- lsls r0, 2
- ldr r1, _0800E614 @ =_0800E618
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0800E614: .4byte _0800E618
- .align 2, 0
-_0800E618:
- .4byte _0800E63C
- .4byte _0800E688
- .4byte _0800E658
- .4byte _0800E660
- .4byte _0800E668
- .4byte _0800E670
- .4byte _0800E678
- .4byte _0800E680
- .4byte _0800E688
-_0800E63C:
- ldr r2, _0800E650 @ =gBattleTerrainTable
- ldr r0, _0800E654 @ =gBattleTerrain
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, 0x4
- adds r0, r2
- ldr r0, [r0]
- b _0800E68A
- .align 2, 0
-_0800E650: .4byte gBattleTerrainTable
-_0800E654: .4byte gBattleTerrain
-_0800E658:
- ldr r0, _0800E65C @ =gBattleTerrainTilemap_Stadium
- b _0800E68A
- .align 2, 0
-_0800E65C: .4byte gBattleTerrainTilemap_Stadium
-_0800E660:
- ldr r0, _0800E664 @ =gBattleTerrainTilemap_Stadium
- b _0800E68A
- .align 2, 0
-_0800E664: .4byte gBattleTerrainTilemap_Stadium
-_0800E668:
- ldr r0, _0800E66C @ =gBattleTerrainTilemap_Stadium
- b _0800E68A
- .align 2, 0
-_0800E66C: .4byte gBattleTerrainTilemap_Stadium
-_0800E670:
- ldr r0, _0800E674 @ =gBattleTerrainTilemap_Stadium
- b _0800E68A
- .align 2, 0
-_0800E674: .4byte gBattleTerrainTilemap_Stadium
-_0800E678:
- ldr r0, _0800E67C @ =gBattleTerrainTilemap_Stadium
- b _0800E68A
- .align 2, 0
-_0800E67C: .4byte gBattleTerrainTilemap_Stadium
-_0800E680:
- ldr r0, _0800E684 @ =gBattleTerrainTilemap_Stadium
- b _0800E68A
- .align 2, 0
-_0800E684: .4byte gBattleTerrainTilemap_Stadium
-_0800E688:
- ldr r0, _0800E694 @ =gBattleTerrainTilemap_Building
-_0800E68A:
- ldr r1, _0800E698 @ =0x0600d000
- bl LZDecompressVram
- b _0800E7BC
- .align 2, 0
-_0800E694: .4byte gBattleTerrainTilemap_Building
-_0800E698: .4byte 0x0600d000
-_0800E69C:
- ldr r0, _0800E6C0 @ =gBattleTypeFlags
- ldrh r1, [r0]
- ldr r0, _0800E6C4 @ =0x00000902
- ands r0, r1
- cmp r0, 0
- beq _0800E6AA
- b _0800E7A4
-_0800E6AA:
- movs r0, 0x80
- lsls r0, 5
- ands r0, r1
- cmp r0, 0
- beq _0800E6D8
- ldr r0, _0800E6C8 @ =gGameVersion
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0800E6D0
- ldr r0, _0800E6CC @ =gBattleTerrainPalette_Groudon
- b _0800E7A6
- .align 2, 0
-_0800E6C0: .4byte gBattleTypeFlags
-_0800E6C4: .4byte 0x00000902
-_0800E6C8: .4byte gGameVersion
-_0800E6CC: .4byte gBattleTerrainPalette_Groudon
-_0800E6D0:
- ldr r0, _0800E6D4 @ =gBattleTerrainPalette_Kyogre
- b _0800E7A6
- .align 2, 0
-_0800E6D4: .4byte gBattleTerrainPalette_Kyogre
-_0800E6D8:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0800E710
- ldr r2, _0800E6F8 @ =gTrainers
- ldr r0, _0800E6FC @ =gTrainerBattleOpponent
- ldrh r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0x19
- bne _0800E704
- ldr r0, _0800E700 @ =gBattleTerrainPalette_BuildingLeader
- b _0800E7A6
- .align 2, 0
-_0800E6F8: .4byte gTrainers
-_0800E6FC: .4byte gTrainerBattleOpponent
-_0800E700: .4byte gBattleTerrainPalette_BuildingLeader
-_0800E704:
- cmp r0, 0x20
- bne _0800E710
- ldr r0, _0800E70C @ =gBattleTerrainPalette_StadiumSteven
- b _0800E7A6
- .align 2, 0
-_0800E70C: .4byte gBattleTerrainPalette_StadiumSteven
-_0800E710:
- bl sav1_map_get_battletype
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8
- bhi _0800E7BC
- lsls r0, 2
- ldr r1, _0800E728 @ =_0800E72C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0800E728: .4byte _0800E72C
- .align 2, 0
-_0800E72C:
- .4byte _0800E750
- .4byte _0800E76C
- .4byte _0800E774
- .4byte _0800E77C
- .4byte _0800E784
- .4byte _0800E78C
- .4byte _0800E794
- .4byte _0800E79C
- .4byte _0800E7A4
-_0800E750:
- ldr r2, _0800E764 @ =gBattleTerrainTable
- ldr r0, _0800E768 @ =gBattleTerrain
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, 0x10
- adds r0, r2
- ldr r0, [r0]
- b _0800E7A6
- .align 2, 0
-_0800E764: .4byte gBattleTerrainTable
-_0800E768: .4byte gBattleTerrain
-_0800E76C:
- ldr r0, _0800E770 @ =gBattleTerrainPalette_BuildingGym
- b _0800E7A6
- .align 2, 0
-_0800E770: .4byte gBattleTerrainPalette_BuildingGym
-_0800E774:
- ldr r0, _0800E778 @ =gBattleTerrainPalette_StadiumMagma
- b _0800E7A6
- .align 2, 0
-_0800E778: .4byte gBattleTerrainPalette_StadiumMagma
-_0800E77C:
- ldr r0, _0800E780 @ =gBattleTerrainPalette_StadiumAqua
- b _0800E7A6
- .align 2, 0
-_0800E780: .4byte gBattleTerrainPalette_StadiumAqua
-_0800E784:
- ldr r0, _0800E788 @ =gBattleTerrainPalette_StadiumSidney
- b _0800E7A6
- .align 2, 0
-_0800E788: .4byte gBattleTerrainPalette_StadiumSidney
-_0800E78C:
- ldr r0, _0800E790 @ =gBattleTerrainPalette_StadiumPhoebe
- b _0800E7A6
- .align 2, 0
-_0800E790: .4byte gBattleTerrainPalette_StadiumPhoebe
-_0800E794:
- ldr r0, _0800E798 @ =gBattleTerrainPalette_StadiumGlacia
- b _0800E7A6
- .align 2, 0
-_0800E798: .4byte gBattleTerrainPalette_StadiumGlacia
-_0800E79C:
- ldr r0, _0800E7A0 @ =gBattleTerrainPalette_StadiumDrake
- b _0800E7A6
- .align 2, 0
-_0800E7A0: .4byte gBattleTerrainPalette_StadiumDrake
-_0800E7A4:
- ldr r0, _0800E7B0 @ =gBattleTerrainPalette_BattleTower
-_0800E7A6:
- movs r1, 0x20
- movs r2, 0x60
- bl LoadCompressedPalette
- b _0800E7BC
- .align 2, 0
-_0800E7B0: .4byte gBattleTerrainPalette_BattleTower
-_0800E7B4:
- bl sub_800D74C
- b _0800E7BC
-_0800E7BA:
- movs r4, 0x1
-_0800E7BC:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_800E414
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_9.s b/asm/battle_9.s
deleted file mode 100644
index 3f162df12..000000000
--- a/asm/battle_9.s
+++ /dev/null
@@ -1,2840 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "include/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start AI_SwitchIfPerishSong
-AI_SwitchIfPerishSong: @ 8035FEC
- push {lr}
- ldr r1, _08036038 @ =gStatuses3
- ldr r0, _0803603C @ =gActiveBank
- ldrb r2, [r0]
- lsls r0, r2, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0803604C
- ldr r0, _08036040 @ =gDisableStructs
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0xF]
- lsls r0, 28
- cmp r0, 0
- bne _0803604C
- adds r0, r2, 0
- bl GetBankIdentity
- ldr r1, _08036044 @ =gSharedMem
- lsls r0, 24
- lsrs r0, 25
- ldr r2, _08036048 @ =0x000160c8
- adds r0, r2
- adds r0, r1
- movs r1, 0x6
- strb r1, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl Emitcmd33
- movs r0, 0x1
- b _0803604E
- .align 2, 0
-_08036038: .4byte gStatuses3
-_0803603C: .4byte gActiveBank
-_08036040: .4byte gDisableStructs
-_08036044: .4byte gSharedMem
-_08036048: .4byte 0x000160c8
-_0803604C:
- movs r0, 0
-_0803604E:
- pop {r1}
- bx r1
- thumb_func_end AI_SwitchIfPerishSong
-
- thumb_func_start AI_SwitchIfWonderguard
-AI_SwitchIfWonderguard: @ 8036054
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, _0803606C @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080360A0
- b _080361C8
- .align 2, 0
-_0803606C: .4byte gBattleTypeFlags
-_08036070:
- ldr r0, _08036094 @ =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- ldr r1, _08036098 @ =gSharedMem
- lsls r0, 24
- lsrs r0, 25
- ldr r2, _0803609C @ =0x000160c8
- adds r0, r2
- adds r0, r1
- strb r6, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl Emitcmd33
- movs r0, 0x1
- b _080361CA
- .align 2, 0
-_08036094: .4byte gActiveBank
-_08036098: .4byte gSharedMem
-_0803609C: .4byte 0x000160c8
-_080360A0:
- ldr r4, _080361D8 @ =gBattleMons
- movs r0, 0
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x58
- muls r0, r1
- adds r0, r4
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x19
- beq _080360BC
- b _080361C8
-_080360BC:
- movs r0, 0
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r2, r0, 24
- movs r6, 0
- adds r7, r4, 0
- movs r5, 0x58
- adds r0, r2, 0
- muls r0, r5
- adds r4, r0, r7
- movs r3, 0x20
- adds r3, r4
- mov r8, r3
-_080360D8:
- lsls r1, r6, 1
- ldr r0, _080361DC @ =gActiveBank
- ldrb r0, [r0]
- muls r0, r5
- adds r1, r0
- adds r0, r7, 0
- adds r0, 0xC
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _08036104
- ldrh r1, [r4]
- mov r3, r8
- ldrb r2, [r3]
- bl AI_TypeCalc
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- bne _080361C8
-_08036104:
- adds r6, 0x1
- cmp r6, 0x3
- ble _080360D8
- movs r6, 0
- ldr r0, _080361E0 @ =gEnemyParty
- mov r9, r0
-_08036110:
- movs r0, 0x64
- adds r5, r6, 0
- muls r5, r0
- mov r2, r9
- adds r4, r5, r2
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080361C2
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _080361C2
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080361C2
- ldr r1, _080361E4 @ =gBattlePartyID
- ldr r0, _080361DC @ =gActiveBank
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- beq _080361C2
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- adds r0, r4, 0
- movs r1, 0x2E
- bl GetMonData
- movs r0, 0
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r2, r0, 24
- movs r4, 0
- mov r8, r5
- ldr r1, _080361D8 @ =gBattleMons
- movs r0, 0x58
- muls r0, r2
- adds r5, r0, r1
- adds r7, r5, 0
- adds r7, 0x20
-_0803617C:
- adds r1, r4, 0
- adds r1, 0xD
- mov r0, r8
- add r0, r9
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- beq _080361BC
- ldrh r1, [r5]
- ldrb r2, [r7]
- bl AI_TypeCalc
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _080361BC
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _080361BC
- b _08036070
-_080361BC:
- adds r4, 0x1
- cmp r4, 0x3
- ble _0803617C
-_080361C2:
- adds r6, 0x1
- cmp r6, 0x5
- ble _08036110
-_080361C8:
- movs r0, 0
-_080361CA:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080361D8: .4byte gBattleMons
-_080361DC: .4byte gActiveBank
-_080361E0: .4byte gEnemyParty
-_080361E4: .4byte gBattlePartyID
- thumb_func_end AI_SwitchIfWonderguard
-
- thumb_func_start sub_80361E8
-sub_80361E8: @ 80361E8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r0, 0x1
- bl ai_has_super_effective_move_on_field
- lsls r0, 24
- cmp r0, 0
- beq _08036214
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- beq _08036214
- b _08036400
-_08036214:
- ldr r1, _0803627C @ =gLastLandedMoves
- ldr r5, _08036280 @ =gActiveBank
- ldrb r3, [r5]
- lsls r0, r3, 1
- adds r4, r0, r1
- ldrh r1, [r4]
- cmp r1, 0
- bne _08036226
- b _08036400
-_08036226:
- ldr r0, _08036284 @ =0x0000ffff
- cmp r1, r0
- bne _0803622E
- b _08036400
-_0803622E:
- ldr r2, _08036288 @ =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _08036242
- b _08036400
-_08036242:
- ldr r0, _0803628C @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080362AE
- mov r8, r3
- mov r0, r8
- bl GetBankIdentity
- movs r4, 0x2
- eors r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByIdentity
- ldr r1, _08036290 @ =gAbsentBankFlags
- ldrb r1, [r1]
- ldr r2, _08036294 @ =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08036298
- ldrb r7, [r5]
- b _080362B2
- .align 2, 0
-_0803627C: .4byte gLastLandedMoves
-_08036280: .4byte gActiveBank
-_08036284: .4byte 0x0000ffff
-_08036288: .4byte gBattleMoves
-_0803628C: .4byte gBattleTypeFlags
-_08036290: .4byte gAbsentBankFlags
-_08036294: .4byte gBitTable
-_08036298:
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r7, r0, 24
- b _080362B2
-_080362AE:
- adds r7, r3, 0
- mov r8, r7
-_080362B2:
- ldr r3, _080362D4 @ =gBattleMoves
- ldr r1, _080362D8 @ =gLastLandedMoves
- ldr r2, _080362DC @ =gActiveBank
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x2]
- adds r1, r2, 0
- cmp r0, 0xA
- bne _080362E0
- movs r0, 0x12
- b _080362F2
- .align 2, 0
-_080362D4: .4byte gBattleMoves
-_080362D8: .4byte gLastLandedMoves
-_080362DC: .4byte gActiveBank
-_080362E0:
- cmp r0, 0xB
- bne _080362EA
- movs r2, 0xB
- mov r10, r2
- b _080362F4
-_080362EA:
- cmp r0, 0xD
- beq _080362F0
- b _08036400
-_080362F0:
- movs r0, 0xA
-_080362F2:
- mov r10, r0
-_080362F4:
- ldr r2, _08036308 @ =gBattleMons
- ldrb r1, [r1]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, r10
- bne _0803633C
- b _08036400
- .align 2, 0
-_08036308: .4byte gBattleMons
-_0803630C:
- ldr r0, _08036330 @ =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- ldr r1, _08036334 @ =gSharedMem
- lsls r0, 24
- lsrs r0, 25
- ldr r2, _08036338 @ =0x000160c8
- adds r0, r2
- adds r0, r1
- strb r6, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl Emitcmd33
- movs r0, 0x1
- b _08036402
- .align 2, 0
-_08036330: .4byte gActiveBank
-_08036334: .4byte gSharedMem
-_08036338: .4byte 0x000160c8
-_0803633C:
- movs r6, 0
- ldr r0, _080363CC @ =gBaseStats
- mov r9, r0
-_08036342:
- movs r0, 0x64
- adds r1, r6, 0
- muls r1, r0
- ldr r0, _080363D0 @ =gEnemyParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080363FA
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _080363FA
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080363FA
- ldr r1, _080363D4 @ =gBattlePartyID
- mov r2, r8
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- beq _080363FA
- lsls r0, r7, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- beq _080363FA
- ldr r1, _080363D8 @ =gSharedMem
- ldr r0, _080363DC @ =0x00016068
- add r0, r8
- adds r0, r1
- ldrb r0, [r0]
- cmp r6, r0
- beq _080363FA
- ldr r2, _080363DC @ =0x00016068
- adds r0, r7, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r6, r0
- beq _080363FA
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r5, 0
- movs r1, 0x2E
- bl GetMonData
- cmp r0, 0
- beq _080363E0
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- add r0, r9
- ldrb r0, [r0, 0x17]
- b _080363EA
- .align 2, 0
-_080363CC: .4byte gBaseStats
-_080363D0: .4byte gEnemyParty
-_080363D4: .4byte gBattlePartyID
-_080363D8: .4byte gSharedMem
-_080363DC: .4byte 0x00016068
-_080363E0:
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- add r0, r9
- ldrb r0, [r0, 0x16]
-_080363EA:
- cmp r10, r0
- bne _080363FA
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- bne _0803630C
-_080363FA:
- adds r6, 0x1
- cmp r6, 0x5
- ble _08036342
-_08036400:
- movs r0, 0
-_08036402:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80361E8
-
- thumb_func_start AI_SwitchIfNaturalCure
-AI_SwitchIfNaturalCure: @ 8036410
- push {r4,r5,lr}
- ldr r3, _08036468 @ =gBattleMons
- ldr r5, _0803646C @ =gActiveBank
- ldrb r4, [r5]
- movs r0, 0x58
- adds r2, r4, 0
- muls r2, r0
- adds r0, r3, 0
- adds r0, 0x4C
- adds r0, r2, r0
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- beq _080364D8
- adds r1, r2, r3
- adds r0, r1, 0
- adds r0, 0x20
- ldrb r0, [r0]
- cmp r0, 0x1E
- bne _080364D8
- ldrh r0, [r1, 0x2C]
- ldrh r1, [r1, 0x28]
- lsrs r0, 1
- cmp r1, r0
- bcc _080364D8
- ldr r1, _08036470 @ =gLastLandedMoves
- lsls r0, r4, 1
- adds r0, r1
- ldrh r1, [r0]
- cmp r1, 0
- beq _08036456
- ldr r0, _08036474 @ =0x0000ffff
- cmp r1, r0
- bne _08036478
-_08036456:
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _08036478
- ldrb r0, [r5]
- b _080364E0
- .align 2, 0
-_08036468: .4byte gBattleMons
-_0803646C: .4byte gActiveBank
-_08036470: .4byte gLastLandedMoves
-_08036474: .4byte 0x0000ffff
-_08036478:
- ldr r2, _080364A4 @ =gBattleMoves
- ldr r1, _080364A8 @ =gLastLandedMoves
- ldr r4, _080364AC @ =gActiveBank
- ldrb r0, [r4]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _080364B0
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _080364B0
- ldrb r0, [r4]
- b _080364E0
- .align 2, 0
-_080364A4: .4byte gBattleMoves
-_080364A8: .4byte gLastLandedMoves
-_080364AC: .4byte gActiveBank
-_080364B0:
- movs r0, 0x8
- movs r1, 0x1
- bl sub_80366A4
- lsls r0, 24
- cmp r0, 0
- bne _080364FE
- movs r0, 0x4
- movs r1, 0x1
- bl sub_80366A4
- lsls r0, 24
- cmp r0, 0
- bne _080364FE
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- bne _080364DC
-_080364D8:
- movs r0, 0
- b _08036500
-_080364DC:
- ldr r0, _08036508 @ =gActiveBank
- ldrb r0, [r0]
-_080364E0:
- bl GetBankIdentity
- ldr r1, _0803650C @ =gSharedMem
- lsls r0, 24
- lsrs r0, 25
- ldr r2, _08036510 @ =0x000160c8
- adds r0, r2
- adds r0, r1
- movs r1, 0x6
- strb r1, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl Emitcmd33
-_080364FE:
- movs r0, 0x1
-_08036500:
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08036508: .4byte gActiveBank
-_0803650C: .4byte gSharedMem
-_08036510: .4byte 0x000160c8
- thumb_func_end AI_SwitchIfNaturalCure
-
- thumb_func_start ai_has_super_effective_move_on_field
-ai_has_super_effective_move_on_field: @ 8036514
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r0, 0
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, _080365AC @ =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, _080365B0 @ =gBitTable
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0803659C
- movs r4, 0
- ldr r6, _080365B4 @ =gBattleMons
- movs r7, 0x58
- adds r0, r3, 0
- muls r0, r7
- adds r5, r0, r6
- movs r0, 0x20
- adds r0, r5
- mov r9, r0
-_08036550:
- lsls r1, r4, 1
- ldr r0, _080365B8 @ =gActiveBank
- ldrb r0, [r0]
- muls r0, r7
- adds r1, r0
- adds r0, r6, 0
- adds r0, 0xC
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _08036596
- ldrh r1, [r5]
- mov r3, r9
- ldrb r2, [r3]
- bl AI_TypeCalc
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _08036596
- mov r0, r8
- cmp r0, 0
- bne _080365C0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _080365C0
-_08036596:
- adds r4, 0x1
- cmp r4, 0x3
- ble _08036550
-_0803659C:
- ldr r0, _080365BC @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080365C4
- b _0803663E
- .align 2, 0
-_080365AC: .4byte gAbsentBankFlags
-_080365B0: .4byte gBitTable
-_080365B4: .4byte gBattleMons
-_080365B8: .4byte gActiveBank
-_080365BC: .4byte gBattleTypeFlags
-_080365C0:
- movs r0, 0x1
- b _08036640
-_080365C4:
- movs r0, 0x2
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, _0803664C @ =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, _08036650 @ =gBitTable
- lsls r0, r3, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0803663E
- movs r4, 0
- ldr r6, _08036654 @ =gBattleMons
- movs r7, 0x58
- adds r0, r3, 0
- muls r0, r7
- adds r5, r0, r6
- movs r3, 0x20
- adds r3, r5
- mov r9, r3
-_080365F2:
- lsls r1, r4, 1
- ldr r0, _08036658 @ =gActiveBank
- ldrb r0, [r0]
- muls r0, r7
- adds r1, r0
- adds r0, r6, 0
- adds r0, 0xC
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _08036638
- ldrh r1, [r5]
- mov r3, r9
- ldrb r2, [r3]
- bl AI_TypeCalc
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _08036638
- mov r0, r8
- cmp r0, 0
- bne _080365C0
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _080365C0
-_08036638:
- adds r4, 0x1
- cmp r4, 0x3
- ble _080365F2
-_0803663E:
- movs r0, 0
-_08036640:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0803664C: .4byte gAbsentBankFlags
-_08036650: .4byte gBitTable
-_08036654: .4byte gBattleMons
-_08036658: .4byte gActiveBank
- thumb_func_end ai_has_super_effective_move_on_field
-
- thumb_func_start AI_AreStatsRaised
-AI_AreStatsRaised: @ 803665C
- push {r4,lr}
- movs r4, 0
- ldr r1, _0803669C @ =gBattleMons
- ldr r0, _080366A0 @ =gActiveBank
- ldrb r2, [r0]
- movs r0, 0x58
- muls r0, r2
- adds r1, 0x18
- adds r2, r0, r1
- movs r3, 0x7
-_08036670:
- ldrb r1, [r2]
- movs r0, 0
- ldrsb r0, [r2, r0]
- cmp r0, 0x6
- ble _08036686
- subs r1, 0x6
- lsls r0, r4, 24
- asrs r0, 24
- adds r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
-_08036686:
- adds r2, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _08036670
- movs r0, 0
- cmp r4, 0x3
- bls _08036696
- movs r0, 0x1
-_08036696:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0803669C: .4byte gBattleMons
-_080366A0: .4byte gActiveBank
- thumb_func_end AI_AreStatsRaised
-
- thumb_func_start sub_80366A4
-sub_80366A4: @ 80366A4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp, 0x4]
- ldr r1, _08036730 @ =gLastLandedMoves
- ldr r5, _08036734 @ =gActiveBank
- ldrb r3, [r5]
- lsls r0, r3, 1
- adds r4, r0, r1
- ldrh r1, [r4]
- cmp r1, 0
- bne _080366CE
- b _080368D8
-_080366CE:
- ldr r0, _08036738 @ =0x0000ffff
- cmp r1, r0
- bne _080366D6
- b _080368D8
-_080366D6:
- ldr r0, _0803673C @ =gUnknown_02024C5C
- adds r0, r3, r0
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _080366E2
- b _080368D8
-_080366E2:
- ldr r2, _08036740 @ =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0
- bne _080366F6
- b _080368D8
-_080366F6:
- ldr r0, _08036744 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08036798
- mov r9, r3
- mov r0, r9
- bl GetBankIdentity
- movs r4, 0x2
- eors r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByIdentity
- ldr r1, _08036748 @ =gAbsentBankFlags
- ldrb r1, [r1]
- ldr r2, _0803674C @ =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08036750
- ldrb r5, [r5]
- mov r10, r5
- b _0803679C
- .align 2, 0
-_08036730: .4byte gLastLandedMoves
-_08036734: .4byte gActiveBank
-_08036738: .4byte 0x0000ffff
-_0803673C: .4byte gUnknown_02024C5C
-_08036740: .4byte gBattleMoves
-_08036744: .4byte gBattleTypeFlags
-_08036748: .4byte gAbsentBankFlags
-_0803674C: .4byte gBitTable
-_08036750:
- ldrb r0, [r5]
- bl GetBankIdentity
- eors r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- b _0803679C
-_08036768:
- ldr r0, _0803678C @ =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- ldr r1, _08036790 @ =gSharedMem
- lsls r0, 24
- lsrs r0, 25
- ldr r2, _08036794 @ =0x000160c8
- adds r0, r2
- adds r0, r1
- strb r6, [r0]
- movs r0, 0x1
- movs r1, 0x2
- movs r2, 0
- bl Emitcmd33
- movs r0, 0x1
- b _080368DA
- .align 2, 0
-_0803678C: .4byte gActiveBank
-_08036790: .4byte gSharedMem
-_08036794: .4byte 0x000160c8
-_08036798:
- mov r9, r3
- mov r10, r9
-_0803679C:
- movs r6, 0
-_0803679E:
- movs r0, 0x64
- adds r1, r6, 0
- muls r1, r0
- ldr r0, _08036830 @ =gEnemyParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _080367B6
- b _080368D0
-_080367B6:
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- bne _080367C4
- b _080368D0
-_080367C4:
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080368D0
- ldr r1, _08036834 @ =gBattlePartyID
- mov r2, r9
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- beq _080368D0
- mov r2, r10
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r6, r0
- beq _080368D0
- ldr r1, _08036838 @ =gSharedMem
- ldr r0, _0803683C @ =0x00016068
- add r0, r9
- adds r0, r1
- ldrb r0, [r0]
- cmp r6, r0
- beq _080368D0
- ldr r0, _0803683C @ =0x00016068
- add r0, r10
- adds r0, r1
- ldrb r0, [r0]
- cmp r6, r0
- beq _080368D0
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r5, 0
- movs r1, 0x2E
- bl GetMonData
- cmp r0, 0
- beq _08036844
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- ldr r1, _08036840 @ =gBaseStats
- adds r0, r1
- ldrb r2, [r0, 0x17]
- b _08036850
- .align 2, 0
-_08036830: .4byte gEnemyParty
-_08036834: .4byte gBattlePartyID
-_08036838: .4byte gSharedMem
-_0803683C: .4byte 0x00016068
-_08036840: .4byte gBaseStats
-_08036844:
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- ldr r2, _080368EC @ =gBaseStats
- adds r0, r2
- ldrb r2, [r0, 0x16]
-_08036850:
- ldr r1, _080368F0 @ =gLastLandedMoves
- ldr r5, _080368F4 @ =gActiveBank
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- adds r1, r4, 0
- bl AI_TypeCalc
- ldr r1, [sp]
- ands r1, r0
- cmp r1, 0
- beq _080368D0
- ldr r1, _080368F8 @ =gUnknown_02024C5C
- ldrb r0, [r5]
- adds r0, r1
- ldrb r0, [r0]
- mov r9, r0
- movs r4, 0
- movs r0, 0x64
- adds r1, r6, 0
- muls r1, r0
- mov r8, r1
- ldr r1, _080368FC @ =gBattleMons
- movs r0, 0x58
- mov r2, r9
- muls r2, r0
- adds r0, r2, 0
- adds r5, r0, r1
- adds r7, r5, 0
- adds r7, 0x20
-_0803688E:
- ldr r0, _08036900 @ =gEnemyParty
- adds r1, r4, 0
- adds r1, 0xD
- add r0, r8
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- beq _080368CA
- ldrh r1, [r5]
- ldrb r2, [r7]
- bl AI_TypeCalc
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _080368CA
- bl Random
- lsls r0, 16
- lsrs r0, 16
- ldr r1, [sp, 0x4]
- bl __modsi3
- cmp r0, 0
- bne _080368CA
- b _08036768
-_080368CA:
- adds r4, 0x1
- cmp r4, 0x3
- ble _0803688E
-_080368D0:
- adds r6, 0x1
- cmp r6, 0x5
- bgt _080368D8
- b _0803679E
-_080368D8:
- movs r0, 0
-_080368DA:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080368EC: .4byte gBaseStats
-_080368F0: .4byte gLastLandedMoves
-_080368F4: .4byte gActiveBank
-_080368F8: .4byte gUnknown_02024C5C
-_080368FC: .4byte gBattleMons
-_08036900: .4byte gEnemyParty
- thumb_func_end sub_80366A4
-
- thumb_func_start AI_ShouldSwitch
-AI_ShouldSwitch: @ 8036904
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- ldr r6, _080369E0 @ =gBattleMons
- ldr r4, _080369E4 @ =gActiveBank
- ldrb r2, [r4]
- movs r5, 0x58
- adds r0, r2, 0
- muls r0, r5
- adds r1, r6, 0
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- ldr r1, _080369E8 @ =0x0400e000
- ands r0, r1
- cmp r0, 0
- beq _0803692A
- b _08036AFC
-_0803692A:
- ldr r0, _080369EC @ =gStatuses3
- lsls r1, r2, 2
- adds r1, r0
- ldr r1, [r1]
- movs r0, 0x80
- lsls r0, 3
- ands r1, r0
- cmp r1, 0
- beq _0803693E
- b _08036AFC
-_0803693E:
- str r1, [sp]
- movs r0, 0xC
- adds r1, r2, 0
- movs r2, 0x17
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08036956
- b _08036AFC
-_08036956:
- ldrb r1, [r4]
- str r0, [sp]
- movs r0, 0xC
- movs r2, 0x47
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _0803696E
- b _08036AFC
-_0803696E:
- str r0, [sp]
- movs r0, 0xE
- movs r1, 0
- movs r2, 0x2A
- movs r3, 0
- bl AbilityBattleEffects
- lsls r0, 24
- cmp r0, 0
- beq _080369A0
- ldrb r0, [r4]
- muls r0, r5
- adds r1, r0, r6
- adds r0, r1, 0
- adds r0, 0x21
- ldrb r0, [r0]
- cmp r0, 0x8
- bne _08036994
- b _08036AFC
-_08036994:
- adds r0, r1, 0
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0x8
- bne _080369A0
- b _08036AFC
-_080369A0:
- movs r0, 0
- mov r8, r0
- ldr r0, _080369F0 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08036A12
- ldr r4, _080369E4 @ =gActiveBank
- ldrb r7, [r4]
- adds r0, r7, 0
- bl GetBankIdentity
- movs r5, 0x2
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByIdentity
- ldr r1, _080369F4 @ =gAbsentBankFlags
- ldrb r1, [r1]
- ldr r2, _080369F8 @ =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _080369FC
- ldrb r6, [r4]
- b _08036A18
- .align 2, 0
-_080369E0: .4byte gBattleMons
-_080369E4: .4byte gActiveBank
-_080369E8: .4byte 0x0400e000
-_080369EC: .4byte gStatuses3
-_080369F0: .4byte gBattleTypeFlags
-_080369F4: .4byte gAbsentBankFlags
-_080369F8: .4byte gBitTable
-_080369FC:
- ldrb r0, [r4]
- bl GetBankIdentity
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r6, r0, 24
- b _08036A18
-_08036A12:
- ldr r0, _08036AE8 @ =gActiveBank
- ldrb r6, [r0]
- adds r7, r6, 0
-_08036A18:
- movs r5, 0
-_08036A1A:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _08036AEC @ =gEnemyParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08036A7E
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _08036A7E
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _08036A7E
- ldr r1, _08036AF0 @ =gBattlePartyID
- lsls r0, r7, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r5, r0
- beq _08036A7E
- lsls r0, r6, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r5, r0
- beq _08036A7E
- ldr r1, _08036AF4 @ =gSharedMem
- ldr r2, _08036AF8 @ =0x00016068
- adds r0, r7, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r5, r0
- beq _08036A7E
- adds r0, r6, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r5, r0
- beq _08036A7E
- movs r0, 0x1
- add r8, r0
-_08036A7E:
- adds r5, 0x1
- cmp r5, 0x5
- ble _08036A1A
- mov r2, r8
- cmp r2, 0
- beq _08036AFC
- bl AI_SwitchIfPerishSong
- lsls r0, 24
- cmp r0, 0
- bne _08036AE4
- bl AI_SwitchIfWonderguard
- lsls r0, 24
- cmp r0, 0
- bne _08036AE4
- bl sub_80361E8
- lsls r0, 24
- cmp r0, 0
- bne _08036AE4
- bl AI_SwitchIfNaturalCure
- lsls r0, 24
- cmp r0, 0
- bne _08036AE4
- movs r0, 0
- bl ai_has_super_effective_move_on_field
- lsls r0, 24
- cmp r0, 0
- bne _08036AFC
- bl AI_AreStatsRaised
- lsls r0, 24
- cmp r0, 0
- bne _08036AFC
- movs r0, 0x8
- movs r1, 0x2
- bl sub_80366A4
- lsls r0, 24
- cmp r0, 0
- bne _08036AE4
- movs r0, 0x4
- movs r1, 0x3
- bl sub_80366A4
- lsls r0, 24
- cmp r0, 0
- beq _08036AFC
-_08036AE4:
- movs r0, 0x1
- b _08036AFE
- .align 2, 0
-_08036AE8: .4byte gActiveBank
-_08036AEC: .4byte gEnemyParty
-_08036AF0: .4byte gBattlePartyID
-_08036AF4: .4byte gSharedMem
-_08036AF8: .4byte 0x00016068
-_08036AFC:
- movs r0, 0
-_08036AFE:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- 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 @ gBattleTypeFlags
- 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 @ 0x2000000
- ldr r0, ._205 + 8 @ gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- lsl r0, r0, #0x18
- lsr r0, r0, #0x19
- ldr r1, ._205 + 12 @ 0x160c8
- 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 @ gEnemyParty
- add r0, r0, r1
- mov r1, #0x39
- bl GetMonData
- cmp r0, #0
- beq ._210 @cond_branch
- ldr r1, ._214 + 4 @ gBattlePartyID
- 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 @ 0x2000000
- ldr r2, ._214 + 12 @ 0x16068
- 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 @ gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- ldr r1, ._214 + 8 @ 0x2000000
- lsl r0, r0, #0x18
- lsr r0, r0, #0x19
- ldr r3, ._214 + 20 @ 0x160c8
- add r0, r0, r3
- add r0, r0, r1
- strb r4, [r0]
-._201:
- ldr r4, ._214 + 16 @ gActiveBank
- ldrb r0, [r4]
- bl GetBankIdentity
- ldr r2, ._214 + 8 @ 0x2000000
- ldrb r1, [r4]
- ldr r3, ._214 + 12 @ 0x16068
- 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 @ gUnknown_02023A14
- 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 @ gActiveBank
- 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}
- ldr r5, _08036B68 @ =gBattleTypeFlags
- ldrh r1, [r5]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- bne _08036B1C
- b _08036C2E
-_08036B1C:
- bl AI_ShouldSwitch
- lsls r0, 24
- cmp r0, 0
- bne _08036B28
- b _08036C24
-_08036B28:
- ldr r4, _08036B6C @ =gSharedMem
- ldr r0, _08036B70 @ =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r0, 25
- ldr r1, _08036B74 @ =0x000160c8
- adds r0, r1
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x6
- bne _08036BEA
- bl sub_8036CD4
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x6
- bne _08036BD4
- ldrh r1, [r5]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08036B78
- movs r0, 0x1
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- b _08036B8C
- .align 2, 0
-_08036B68: .4byte gBattleTypeFlags
-_08036B6C: .4byte gSharedMem
-_08036B70: .4byte gActiveBank
-_08036B74: .4byte 0x000160c8
-_08036B78:
- movs r0, 0x1
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0x3
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r5, r0, 24
-_08036B8C:
- movs r4, 0
-_08036B8E:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _08036C0C @ =gEnemyParty
- adds r0, r1
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08036BCE
- ldr r1, _08036C10 @ =gBattlePartyID
- lsls r0, r6, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r4, r0
- beq _08036BCE
- lsls r0, r5, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r4, r0
- beq _08036BCE
- ldr r1, _08036C14 @ =gSharedMem
- ldr r2, _08036C18 @ =0x00016068
- adds r0, r6, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r4, r0
- beq _08036BCE
- adds r0, r5, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r4, r0
- bne _08036BD4
-_08036BCE:
- adds r4, 0x1
- cmp r4, 0x5
- ble _08036B8E
-_08036BD4:
- ldr r0, _08036C1C @ =gActiveBank
- ldrb r0, [r0]
- bl GetBankIdentity
- ldr r1, _08036C14 @ =gSharedMem
- lsls r0, 24
- lsrs r0, 25
- ldr r3, _08036C20 @ =0x000160c8
- adds r0, r3
- adds r0, r1
- strb r4, [r0]
-_08036BEA:
- ldr r4, _08036C1C @ =gActiveBank
- ldrb r0, [r4]
- bl GetBankIdentity
- ldr r2, _08036C14 @ =gSharedMem
- ldrb r1, [r4]
- ldr r3, _08036C18 @ =0x00016068
- adds r1, r3
- adds r1, r2
- lsls r0, 24
- lsrs r0, 25
- adds r3, 0x60
- adds r0, r3
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- b _08036C40
- .align 2, 0
-_08036C0C: .4byte gEnemyParty
-_08036C10: .4byte gBattlePartyID
-_08036C14: .4byte gSharedMem
-_08036C18: .4byte 0x00016068
-_08036C1C: .4byte gActiveBank
-_08036C20: .4byte 0x000160c8
-_08036C24:
- bl AI_ShouldUseItem
- lsls r0, 24
- cmp r0, 0
- bne _08036C40
-_08036C2E:
- ldr r0, _08036C48 @ =gActiveBank
- ldrb r0, [r0]
- movs r2, 0x1
- eors r2, r0
- lsls r2, 8
- movs r0, 0x1
- movs r1, 0
- bl Emitcmd33
-_08036C40:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08036C48: .4byte gActiveBank
- thumb_func_end sub_8036B0C
-.endif
-
- thumb_func_start sub_8036C4C
-sub_8036C4C: @ 8036C4C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- adds r6, r3, 0
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- movs r7, 0
- ldr r0, _08036CD0 @ =gTypeEffectiveness
- mov r10, r0
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _08036CBE
- mov r5, r10
-_08036C7A:
- ldrb r0, [r5]
- cmp r0, 0xFE
- beq _08036CB0
- ldr r1, [sp]
- cmp r0, r1
- bne _08036CB0
- ldrb r4, [r5, 0x1]
- cmp r4, r9
- bne _08036C9A
- ldrb r1, [r6]
- ldrb r0, [r5, 0x2]
- muls r0, r1
- movs r1, 0xA
- bl __divsi3
- strb r0, [r6]
-_08036C9A:
- cmp r4, r8
- bne _08036CB0
- cmp r9, r8
- beq _08036CB0
- ldrb r1, [r6]
- ldrb r0, [r5, 0x2]
- muls r0, r1
- movs r1, 0xA
- bl __divsi3
- strb r0, [r6]
-_08036CB0:
- adds r5, 0x3
- adds r7, 0x3
- mov r1, r10
- adds r0, r7, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08036C7A
-_08036CBE:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08036CD0: .4byte gTypeEffectiveness
- thumb_func_end sub_8036C4C
-
- thumb_func_start sub_8036CD4
-sub_8036CD4: @ 8036CD4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x1C
- ldr r0, _08036D1C @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08036D78
- ldr r4, _08036D20 @ =gActiveBank
- ldrb r0, [r4]
- str r0, [sp, 0xC]
- bl GetBankIdentity
- movs r5, 0x2
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByIdentity
- ldr r1, _08036D24 @ =gAbsentBankFlags
- ldrb r1, [r1]
- ldr r2, _08036D28 @ =gBitTable
- lsls r0, 24
- lsrs r0, 22
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08036D2C
- ldrb r4, [r4]
- str r4, [sp, 0x10]
- b _08036D42
- .align 2, 0
-_08036D1C: .4byte gBattleTypeFlags
-_08036D20: .4byte gActiveBank
-_08036D24: .4byte gAbsentBankFlags
-_08036D28: .4byte gBitTable
-_08036D2C:
- ldrb r0, [r4]
- bl GetBankIdentity
- eors r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x10]
-_08036D42:
- bl Random
- movs r3, 0x2
- ands r0, r3
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- ldr r0, _08036D70 @ =gAbsentBankFlags
- ldrb r1, [r0]
- ldr r2, _08036D74 @ =gBitTable
- mov r4, r10
- lsls r0, r4, 2
- adds r0, r2
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _08036D8C
- eors r4, r3
- lsls r0, r4, 24
- lsrs r0, 24
- mov r10, r0
- b _08036D8C
- .align 2, 0
-_08036D70: .4byte gAbsentBankFlags
-_08036D74: .4byte gBitTable
-_08036D78:
- movs r0, 0
- bl GetBankByIdentity
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- ldr r0, _08036E5C @ =gActiveBank
- ldrb r0, [r0]
- str r0, [sp, 0x10]
- str r0, [sp, 0xC]
-_08036D8C:
- movs r0, 0
- mov r9, r0
- mov r1, sp
- str r1, [sp, 0x14]
-_08036D94:
- movs r2, 0
- str r2, [sp, 0x4]
- movs r3, 0x6
- str r3, [sp, 0x8]
- movs r7, 0
- ldr r4, _08036E60 @ =gBitTable
- mov r8, r4
-_08036DA2:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, _08036E64 @ =gEnemyParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- beq _08036E7C
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08036E7C
- mov r1, r8
- ldr r0, [r1]
- mov r2, r9
- ands r0, r2
- cmp r0, 0
- bne _08036E7C
- ldr r1, _08036E68 @ =gBattlePartyID
- ldr r3, [sp, 0xC]
- lsls r0, r3, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- beq _08036E7C
- ldr r4, [sp, 0x10]
- lsls r0, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- beq _08036E7C
- ldr r1, _08036E6C @ =gSharedMem
- ldr r2, _08036E70 @ =0x00016068
- adds r0, r3, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r7, r0
- beq _08036E7C
- adds r0, r4, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r7, r0
- beq _08036E7C
- ldr r1, _08036E74 @ =gBaseStats
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- adds r0, r1
- ldrb r5, [r0, 0x6]
- ldrb r6, [r0, 0x7]
- movs r0, 0xA
- ldr r3, [sp, 0x14]
- strb r0, [r3]
- movs r0, 0x58
- mov r4, r10
- muls r4, r0
- ldr r0, _08036E78 @ =gBattleMons
- adds r4, r0
- adds r0, r4, 0
- adds r0, 0x21
- ldrb r0, [r0]
- adds r1, r5, 0
- adds r2, r6, 0
- mov r3, sp
- bl sub_8036C4C
- adds r4, 0x22
- ldrb r0, [r4]
- adds r1, r5, 0
- adds r2, r6, 0
- mov r3, sp
- bl sub_8036C4C
- ldr r2, [sp, 0x4]
- ldr r1, [sp, 0x14]
- ldrb r1, [r1]
- cmp r2, r1
- bcs _08036E8A
- ldr r2, [sp, 0x14]
- ldrb r2, [r2]
- str r2, [sp, 0x4]
- lsls r0, r7, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
- b _08036E8A
- .align 2, 0
-_08036E5C: .4byte gActiveBank
-_08036E60: .4byte gBitTable
-_08036E64: .4byte gEnemyParty
-_08036E68: .4byte gBattlePartyID
-_08036E6C: .4byte gSharedMem
-_08036E70: .4byte 0x00016068
-_08036E74: .4byte gBaseStats
-_08036E78: .4byte gBattleMons
-_08036E7C:
- mov r3, r8
- ldr r0, [r3]
- mov r4, r9
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r0, 24
- mov r9, r0
-_08036E8A:
- movs r0, 0x4
- add r8, r0
- adds r7, 0x1
- cmp r7, 0x5
- ble _08036DA2
- ldr r1, [sp, 0x8]
- cmp r1, 0x6
- beq _08036EF8
- movs r7, 0
- movs r0, 0x64
- adds r5, r1, 0
- muls r5, r0
- ldr r6, _08036EEC @ =gEnemyParty
-_08036EA4:
- adds r1, r7, 0
- adds r1, 0xD
- adds r0, r5, r6
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- beq _08036ECA
- ldr r0, _08036EF0 @ =gActiveBank
- ldrb r1, [r0]
- adds r0, r4, 0
- mov r2, r10
- bl TypeCalc
- movs r1, 0x2
- ands r1, r0
- cmp r1, 0
- bne _08036ED0
-_08036ECA:
- adds r7, 0x1
- cmp r7, 0x3
- ble _08036EA4
-_08036ED0:
- cmp r7, 0x4
- beq _08036ED6
- b _08036FEE
-_08036ED6:
- ldr r2, [sp, 0x8]
- lsls r0, r2, 2
- ldr r3, _08036EF4 @ =gBitTable
- adds r0, r3
- ldr r0, [r0]
- mov r4, r9
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r0, 24
- b _08036EFA
- .align 2, 0
-_08036EEC: .4byte gEnemyParty
-_08036EF0: .4byte gActiveBank
-_08036EF4: .4byte gBitTable
-_08036EF8:
- movs r0, 0x3F
-_08036EFA:
- mov r9, r0
- mov r1, r9
- cmp r1, 0x3F
- beq _08036F04
- b _08036D94
-_08036F04:
- ldr r0, _08037000 @ =gDynamicBasePower
- movs r2, 0
- strh r2, [r0]
- ldr r0, _08037004 @ =gSharedMem
- ldr r3, _08037008 @ =0x0001601c
- adds r1, r0, r3
- strb r2, [r1]
- ldr r4, _0803700C @ =0x0001601f
- adds r0, r4
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, _08037010 @ =gBattleMoveFlags
- strb r2, [r0]
- ldr r0, _08037014 @ =gCritMultiplier
- strb r1, [r0]
- movs r0, 0
- str r0, [sp, 0x4]
- movs r1, 0x6
- str r1, [sp, 0x8]
- movs r7, 0
-_08036F2C:
- movs r0, 0x64
- adds r6, r7, 0
- muls r6, r0
- ldr r2, _08037018 @ =gEnemyParty
- adds r4, r6, r2
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- adds r3, r7, 0x1
- str r3, [sp, 0x18]
- cmp r0, 0
- beq _08036FE8
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08036FE8
- ldr r1, _0803701C @ =gBattlePartyID
- ldr r4, [sp, 0xC]
- lsls r0, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- beq _08036FE8
- ldr r2, [sp, 0x10]
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- beq _08036FE8
- ldr r1, _08037004 @ =gSharedMem
- ldr r3, _08037020 @ =0x00016068
- adds r0, r4, r3
- adds r0, r1
- ldrb r0, [r0]
- cmp r7, r0
- beq _08036FE8
- adds r0, r2, r3
- adds r0, r1
- ldrb r0, [r0]
- cmp r7, r0
- beq _08036FE8
- movs r5, 0
- mov r9, r6
- ldr r4, _08037024 @ =gBattleMoveDamage
- mov r8, r4
- ldr r6, _08037028 @ =gActiveBank
-_08036F90:
- adds r1, r5, 0
- adds r1, 0xD
- ldr r0, _08037018 @ =gEnemyParty
- add r0, r9
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- movs r0, 0
- mov r1, r8
- str r0, [r1]
- cmp r4, 0
- beq _08036FCC
- ldr r0, _0803702C @ =gBattleMoves
- lsls r1, r4, 1
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- cmp r0, 0x1
- beq _08036FCC
- ldrb r0, [r6]
- mov r1, r10
- bl AI_CalcDmg
- ldrb r1, [r6]
- adds r0, r4, 0
- mov r2, r10
- bl TypeCalc
-_08036FCC:
- mov r2, r8
- ldr r0, [r2]
- ldr r3, [sp, 0x4]
- cmp r3, r0
- bge _08036FE2
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- lsls r0, r7, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
-_08036FE2:
- adds r5, 0x1
- cmp r5, 0x3
- ble _08036F90
-_08036FE8:
- ldr r7, [sp, 0x18]
- cmp r7, 0x5
- ble _08036F2C
-_08036FEE:
- ldr r0, [sp, 0x8]
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08037000: .4byte gDynamicBasePower
-_08037004: .4byte gSharedMem
-_08037008: .4byte 0x0001601c
-_0803700C: .4byte 0x0001601f
-_08037010: .4byte gBattleMoveFlags
-_08037014: .4byte gCritMultiplier
-_08037018: .4byte gEnemyParty
-_0803701C: .4byte gBattlePartyID
-_08037020: .4byte 0x00016068
-_08037024: .4byte gBattleMoveDamage
-_08037028: .4byte gActiveBank
-_0803702C: .4byte gBattleMoves
- thumb_func_end sub_8036CD4
-
- thumb_func_start ai_identify_item_effect
-ai_identify_item_effect: @ 8037030
- push {r4,lr}
- adds r2, r1, 0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bne _08037040
- movs r0, 0x1
- b _08037086
-_08037040:
- ldrb r1, [r2, 0x4]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0803704E
- movs r0, 0x2
- b _08037086
-_0803704E:
- ldrb r4, [r2, 0x3]
- movs r3, 0x3F
- adds r0, r3, 0
- ands r0, r4
- cmp r0, 0
- beq _0803705E
- movs r0, 0x3
- b _08037086
-_0803705E:
- ldrb r1, [r2]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _08037074
- ldrb r0, [r2, 0x1]
- cmp r0, 0
- bne _08037074
- ldrb r0, [r2, 0x2]
- cmp r0, 0
- beq _08037078
-_08037074:
- movs r0, 0x4
- b _08037086
-_08037078:
- movs r0, 0x80
- ands r0, r4
- cmp r0, 0
- bne _08037084
- movs r0, 0x6
- b _08037086
-_08037084:
- movs r0, 0x5
-_08037086:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end ai_identify_item_effect
-
- thumb_func_start AI_ShouldUseItem
-AI_ShouldUseItem: @ 803708C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- movs r0, 0
- str r0, [sp]
- mov r8, r0
- mov r9, r0
-_080370A0:
- movs r0, 0x64
- mov r1, r9
- muls r1, r0
- ldr r0, _08037170 @ =gEnemyParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _080370DC
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _080370DC
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _080370DC
- ldr r0, [sp]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
-_080370DC:
- movs r1, 0x1
- add r9, r1
- mov r2, r9
- cmp r2, 0x5
- ble _080370A0
- movs r3, 0
- mov r9, r3
-_080370EA:
- ldr r4, _08037174 @ =gSharedMem + 0x16A00
- mov r0, r9
- cmp r0, 0
- beq _08037106
- adds r0, r4, 0
- adds r0, 0x2C
- ldrb r0, [r0]
- mov r1, r9
- subs r0, r1
- adds r0, 0x1
- ldr r2, [sp]
- cmp r2, r0
- ble _08037106
- b _080374EC
-_08037106:
- mov r3, r9
- lsls r1, r3, 1
- adds r0, r4, 0
- adds r0, 0x24
- adds r0, r1, r0
- ldrh r0, [r0]
- mov r10, r0
- str r1, [sp, 0x4]
- cmp r0, 0
- bne _0803711C
- b _080374EC
-_0803711C:
- ldr r1, _08037178 @ =gItemEffectTable
- subs r0, 0xD
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- cmp r1, 0
- bne _0803712C
- b _080374EC
-_0803712C:
- adds r5, r1, 0
- mov r0, r10
- cmp r0, 0xAF
- bne _08037136
- ldr r5, _0803717C @ =gSaveBlock1 + 0x3676
-_08037136:
- mov r1, r10
- lsls r0, r1, 24
- lsrs r0, 24
- adds r1, r5, 0
- bl ai_identify_item_effect
- ldr r2, _08037180 @ =0xfffe9600
- adds r4, r2
- ldr r3, _08037184 @ =gActiveBank
- ldrb r1, [r3]
- lsrs r1, 1
- ldr r2, _08037188 @ =0x000160d8
- adds r1, r2
- adds r1, r4
- strb r0, [r1]
- ldrb r0, [r3]
- lsrs r0, 1
- adds r0, r2
- adds r0, r4
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r0, 0x5
- bls _08037166
- b _080374A8
-_08037166:
- lsls r0, 2
- ldr r1, _0803718C @ =_08037190
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08037170: .4byte gEnemyParty
-_08037174: .4byte gSharedMem + 0x16A00
-_08037178: .4byte gItemEffectTable
-_0803717C: .4byte gSaveBlock1 + 0x3676
-_08037180: .4byte 0xfffe9600
-_08037184: .4byte gActiveBank
-_08037188: .4byte 0x000160d8
-_0803718C: .4byte _08037190
- .align 2, 0
-_08037190:
- .4byte _080371A8
- .4byte _080371D0
- .4byte _0803721C
- .4byte _08037388
- .4byte _08037468
- .4byte _080374F8
-_080371A8:
- ldr r2, _080371C8 @ =gBattleMons
- ldr r0, _080371CC @ =gActiveBank
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r1, [r0, 0x2C]
- ldrh r0, [r0, 0x28]
- lsrs r1, 2
- cmp r0, r1
- bcc _080371C0
- b _080374A8
-_080371C0:
- cmp r0, 0
- bne _080371C6
- b _080374A8
-_080371C6:
- b _08037450
- .align 2, 0
-_080371C8: .4byte gBattleMons
-_080371CC: .4byte gActiveBank
-_080371D0:
- mov r0, r10
- movs r1, 0x4
- movs r2, 0x4
- bl GetItemEffectParamOffset
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _080371E4
- b _080374A8
-_080371E4:
- ldr r2, _08037214 @ =gBattleMons
- ldr r0, _08037218 @ =gActiveBank
- ldrb r1, [r0]
- movs r0, 0x58
- muls r0, r1
- adds r1, r0, r2
- ldrh r2, [r1, 0x28]
- cmp r2, 0
- bne _080371F8
- b _080374A8
-_080371F8:
- ldrh r3, [r1, 0x2C]
- lsrs r0, r3, 2
- cmp r2, r0
- bcs _08037202
- b _08037496
-_08037202:
- adds r0, r2, 0
- subs r0, r3, r0
- adds r1, r5, r4
- ldrb r1, [r1]
- cmp r0, r1
- bgt _08037210
- b _080374A8
-_08037210:
- b _08037496
- .align 2, 0
-_08037214: .4byte gBattleMons
-_08037218: .4byte gActiveBank
-_0803721C:
- ldr r2, _08037378 @ =gSharedMem
- ldr r3, _0803737C @ =gActiveBank
- ldrb r0, [r3]
- lsrs r0, 1
- ldr r6, _08037380 @ =0x000160da
- adds r0, r6
- adds r0, r2
- movs r1, 0
- mov r12, r1
- movs r1, 0
- strb r1, [r0]
- ldrb r1, [r5, 0x3]
- movs r7, 0x20
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08037264
- ldr r1, _08037384 @ =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- beq _08037264
- lsrs r1, r4, 1
- adds r1, r6
- adds r1, r2
- ldrb r0, [r1]
- orrs r0, r7
- strb r0, [r1]
- movs r0, 0x1
- mov r8, r0
-_08037264:
- ldrb r1, [r5, 0x3]
- movs r6, 0x10
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080372A0
- ldr r1, _08037384 @ =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- bne _0803728E
- movs r0, 0x80
- ands r1, r0
- cmp r1, 0
- beq _080372A0
-_0803728E:
- lsrs r1, r4, 1
- ldr r0, _08037380 @ =0x000160da
- adds r1, r0
- adds r1, r2
- ldrb r0, [r1]
- orrs r0, r6
- strb r0, [r1]
- movs r1, 0x1
- mov r8, r1
-_080372A0:
- ldrb r1, [r5, 0x3]
- movs r6, 0x8
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080372D4
- ldr r1, _08037384 @ =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080372D4
- lsrs r0, r4, 1
- ldr r1, _08037380 @ =0x000160da
- adds r0, r1
- adds r0, r2
- ldrb r1, [r0]
- orrs r1, r6
- strb r1, [r0]
- movs r0, 0x1
- mov r8, r0
-_080372D4:
- ldrb r1, [r5, 0x3]
- movs r6, 0x4
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08037308
- ldr r1, _08037384 @ =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08037308
- lsrs r0, r4, 1
- ldr r1, _08037380 @ =0x000160da
- adds r0, r1
- adds r0, r2
- ldrb r1, [r0]
- orrs r1, r6
- strb r1, [r0]
- movs r0, 0x1
- mov r8, r0
-_08037308:
- ldrb r1, [r5, 0x3]
- movs r6, 0x2
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0803733C
- ldr r1, _08037384 @ =gBattleMons
- ldrb r4, [r3]
- movs r0, 0x58
- muls r0, r4
- adds r1, 0x4C
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0803733C
- lsrs r0, r4, 1
- ldr r1, _08037380 @ =0x000160da
- adds r0, r1
- adds r0, r2
- ldrb r1, [r0]
- orrs r1, r6
- strb r1, [r0]
- movs r0, 0x1
- mov r8, r0
-_0803733C:
- ldrb r1, [r5, 0x3]
- movs r4, 0x1
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0803734A
- b _080374A8
-_0803734A:
- ldr r1, _08037384 @ =gBattleMons
- ldrb r3, [r3]
- movs r0, 0x58
- muls r0, r3
- adds r1, 0x50
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0x7
- ands r0, r1
- cmp r0, 0
- bne _08037362
- b _080374A8
-_08037362:
- lsrs r0, r3, 1
- ldr r1, _08037380 @ =0x000160da
- adds r0, r1
- adds r0, r2
- ldrb r1, [r0]
- orrs r1, r4
- strb r1, [r0]
- movs r2, 0x1
- mov r8, r2
- b _080374AE
- .align 2, 0
-_08037378: .4byte gSharedMem
-_0803737C: .4byte gActiveBank
-_08037380: .4byte 0x000160da
-_08037384: .4byte gBattleMons
-_08037388:
- ldr r6, _08037458 @ =gSharedMem
- ldr r4, _0803745C @ =gActiveBank
- ldrb r0, [r4]
- lsrs r0, 1
- ldr r3, _08037460 @ =0x000160da
- adds r0, r3
- adds r0, r6
- movs r1, 0
- mov r12, r1
- movs r1, 0
- strb r1, [r0]
- ldr r1, _08037464 @ =gDisableStructs
- ldrb r2, [r4]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x16]
- cmp r0, 0
- beq _080374A8
- ldrb r1, [r5]
- movs r7, 0xF
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- beq _080373CA
- lsrs r0, r2, 1
- adds r0, r3
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
-_080373CA:
- ldrb r1, [r5, 0x1]
- movs r2, 0xF0
- mov r8, r2
- mov r0, r8
- ands r0, r1
- cmp r0, 0
- beq _080373E8
- ldrb r0, [r4]
- lsrs r0, 1
- adds r0, r3
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0]
-_080373E8:
- ldrb r1, [r5, 0x1]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- beq _08037402
- ldrb r0, [r4]
- lsrs r0, 1
- adds r0, r3
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_08037402:
- ldrb r1, [r5, 0x2]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- beq _0803741C
- ldrb r0, [r4]
- lsrs r0, 1
- adds r0, r3
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0]
-_0803741C:
- ldrb r1, [r5, 0x2]
- mov r0, r8
- ands r0, r1
- cmp r0, 0
- beq _08037436
- ldrb r0, [r4]
- lsrs r0, 1
- adds r0, r3
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
-_08037436:
- ldrb r1, [r5]
- movs r0, 0x30
- ands r0, r1
- cmp r0, 0
- beq _08037450
- ldrb r0, [r4]
- lsrs r0, 1
- adds r0, r3
- adds r0, r6
- ldrb r1, [r0]
- movs r2, 0x80
- orrs r1, r2
- strb r1, [r0]
-_08037450:
- movs r3, 0x1
- mov r8, r3
- b _080374AE
- .align 2, 0
-_08037458: .4byte gSharedMem
-_0803745C: .4byte gActiveBank
-_08037460: .4byte 0x000160da
-_08037464: .4byte gDisableStructs
-_08037468:
- ldr r4, _0803749C @ =gActiveBank
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r2, _080374A0 @ =gDisableStructs
- ldrb r1, [r4]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x16]
- cmp r0, 0
- beq _080374A8
- ldr r0, _080374A4 @ =gSideTimers
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x2]
- cmp r0, 0
- bne _080374A8
-_08037496:
- movs r0, 0x1
- mov r8, r0
- b _080374AE
- .align 2, 0
-_0803749C: .4byte gActiveBank
-_080374A0: .4byte gDisableStructs
-_080374A4: .4byte gSideTimers
-_080374A8:
- mov r1, r8
- cmp r1, 0
- beq _080374EC
-_080374AE:
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0
- bl Emitcmd33
- ldr r1, _080374DC @ =gSharedMem
- ldr r0, _080374E0 @ =gActiveBank
- ldrb r0, [r0]
- lsrs r0, 1
- lsls r0, 1
- ldr r2, _080374E4 @ =0x000160d4
- adds r0, r2
- adds r0, r1
- movs r2, 0
- mov r3, r10
- strb r3, [r0]
- ldr r0, _080374E8 @ =0x00016a24
- adds r1, r0
- ldr r3, [sp, 0x4]
- adds r1, r3, r1
- strh r2, [r1]
- mov r0, r8
- b _080374FA
- .align 2, 0
-_080374DC: .4byte gSharedMem
-_080374E0: .4byte gActiveBank
-_080374E4: .4byte 0x000160d4
-_080374E8: .4byte 0x00016a24
-_080374EC:
- movs r0, 0x1
- add r9, r0
- mov r1, r9
- cmp r1, 0x3
- bgt _080374F8
- b _080370EA
-_080374F8:
- movs r0, 0
-_080374FA:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end AI_ShouldUseItem
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_anim_812C144.s b/asm/battle_anim_812C144.s
index d748a78f1..ec7a7211f 100644
--- a/asm/battle_anim_812C144.s
+++ b/asm/battle_anim_812C144.s
@@ -4,5317 +4,6 @@
.syntax unified
.text
-
- thumb_func_start sub_812C144
-sub_812C144: @ 812C144
- push {lr}
- adds r2, r0, 0
- ldr r1, _0812C168 @ =gBattleAnimArgs
- ldrh r0, [r1]
- ldrh r3, [r2, 0x20]
- adds r0, r3
- strh r0, [r2, 0x20]
- ldrh r0, [r1, 0x2]
- ldrh r3, [r2, 0x22]
- adds r0, r3
- strh r0, [r2, 0x22]
- movs r3, 0x6
- ldrsh r0, [r1, r3]
- cmp r0, 0
- bne _0812C16C
- ldrh r0, [r1, 0x4]
- b _0812C170
- .align 2, 0
-_0812C168: .4byte gBattleAnimArgs
-_0812C16C:
- ldrh r0, [r1, 0x4]
- negs r0, r0
-_0812C170:
- strh r0, [r2, 0x2E]
- ldrh r0, [r1, 0x8]
- strh r0, [r2, 0x30]
- ldr r0, _0812C180 @ =sub_812C184
- str r0, [r2, 0x1C]
- pop {r0}
- bx r0
- .align 2, 0
-_0812C180: .4byte sub_812C184
- thumb_func_end sub_812C144
-
- thumb_func_start sub_812C184
-sub_812C184: @ 812C184
- push {lr}
- adds r3, r0, 0
- movs r1, 0x30
- ldrsh r0, [r3, r1]
- cmp r0, 0
- ble _0812C1C4
- ldrh r1, [r3, 0x32]
- lsls r0, r1, 16
- asrs r0, 24
- strh r0, [r3, 0x24]
- ldrh r0, [r3, 0x2E]
- adds r1, r0
- strh r1, [r3, 0x32]
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- ldrb r2, [r0]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- ldrh r0, [r3, 0x30]
- subs r0, 0x1
- strh r0, [r3, 0x30]
- b _0812C1CA
-_0812C1C4:
- adds r0, r3, 0
- bl DestroyAnimSprite
-_0812C1CA:
- pop {r0}
- bx r0
- thumb_func_end sub_812C184
-
- thumb_func_start sub_812C1D0
-sub_812C1D0: @ 812C1D0
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r6, _0812C21C @ =gAnimBankTarget
- ldrb r0, [r6]
- movs r1, 0x2
- bl GetBankPosition
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 8
- movs r0, 0x80
- lsls r0, 12
- adds r4, r0
- asrs r4, 16
- ldrb r0, [r6]
- movs r1, 0x3
- bl GetBankPosition
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 8
- movs r0, 0x80
- lsls r0, 12
- adds r1, r0
- asrs r1, 16
- adds r0, r4, 0
- movs r2, 0
- bl sub_8046234
- adds r0, r5, 0
- bl DestroyAnimVisualTask
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C21C: .4byte gAnimBankTarget
- thumb_func_end sub_812C1D0
-
- thumb_func_start sub_812C220
-sub_812C220: @ 812C220
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x5A
- strh r0, [r4, 0x2E]
- ldr r0, _0812C258 @ =WaitAnimForDuration
- str r0, [r4, 0x1C]
- movs r0, 0x7
- strh r0, [r4, 0x30]
- ldr r1, _0812C25C @ =sub_812C268
- adds r0, r4, 0
- bl StoreSpriteCallbackInData
- ldr r1, _0812C260 @ =REG_BLDCNT
- movs r2, 0xFD
- lsls r2, 6
- adds r0, r2, 0
- strh r0, [r1]
- ldr r2, _0812C264 @ =REG_BLDALPHA
- ldrh r1, [r4, 0x30]
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r0, r1
- strh r0, [r2]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C258: .4byte WaitAnimForDuration
-_0812C25C: .4byte sub_812C268
-_0812C260: .4byte REG_BLDCNT
-_0812C264: .4byte REG_BLDALPHA
- thumb_func_end sub_812C220
-
- thumb_func_start sub_812C268
-sub_812C268: @ 812C268
- push {lr}
- adds r3, r0, 0
- ldr r2, _0812C29C @ =REG_BLDALPHA
- ldrh r1, [r3, 0x30]
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r0, r1
- strh r0, [r2]
- ldrh r0, [r3, 0x30]
- subs r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- cmp r0, 0
- bge _0812C296
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0812C2A0 @ =sub_812C2A4
- str r0, [r3, 0x1C]
-_0812C296:
- pop {r0}
- bx r0
- .align 2, 0
-_0812C29C: .4byte REG_BLDALPHA
-_0812C2A0: .4byte sub_812C2A4
- thumb_func_end sub_812C268
-
- thumb_func_start sub_812C2A4
-sub_812C2A4: @ 812C2A4
- push {lr}
- ldr r1, _0812C2B8 @ =REG_BLDCNT
- movs r2, 0
- strh r2, [r1]
- adds r1, 0x2
- strh r2, [r1]
- bl DestroyAnimSprite
- pop {r0}
- bx r0
- .align 2, 0
-_0812C2B8: .4byte REG_BLDCNT
- thumb_func_end sub_812C2A4
-
- thumb_func_start sub_812C2BC
-sub_812C2BC: @ 812C2BC
- push {r4-r7,lr}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r4, _0812C348 @ =gAnimBankTarget
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- adds r7, r0, 0
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- adds r6, r0, 0
- adds r0, r5, 0
- movs r1, 0x1
- bl sub_8078764
- ldrh r0, [r5, 0x20]
- subs r0, r7
- lsls r0, 16
- asrs r0, 16
- ldrh r1, [r5, 0x22]
- subs r1, r6
- lsls r1, 16
- asrs r1, 16
- bl ArcTan2Neg
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 23
- adds r0, r1
- lsrs r4, r0, 16
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _0812C31A
- movs r1, 0x80
- lsls r1, 7
- adds r0, r4, r1
- lsls r0, 16
- lsrs r4, r0, 16
-_0812C31A:
- movs r3, 0x80
- lsls r3, 1
- str r4, [sp]
- adds r0, r5, 0
- movs r1, 0
- adds r2, r3, 0
- bl sub_8078FDC
- ldr r0, _0812C34C @ =gBattleAnimArgs
- ldrh r0, [r0, 0x4]
- strh r0, [r5, 0x2E]
- strh r7, [r5, 0x32]
- strh r6, [r5, 0x36]
- ldr r0, _0812C350 @ =StartTranslateAnimSpriteByDeltas
- str r0, [r5, 0x1C]
- ldr r1, _0812C354 @ =DestroyAnimSprite
- adds r0, r5, 0
- bl StoreSpriteCallbackInData
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C348: .4byte gAnimBankTarget
-_0812C34C: .4byte gBattleAnimArgs
-_0812C350: .4byte StartTranslateAnimSpriteByDeltas
-_0812C354: .4byte DestroyAnimSprite
- thumb_func_end sub_812C2BC
-
- thumb_func_start sub_812C358
-sub_812C358: @ 812C358
- ldr r2, _0812C378 @ =REG_BLDCNT
- movs r3, 0xFD
- lsls r3, 6
- adds r1, r3, 0
- strh r1, [r2]
- adds r2, 0x2
- movs r3, 0x80
- lsls r3, 5
- adds r1, r3, 0
- strh r1, [r2]
- movs r1, 0x4
- strh r1, [r0, 0x2E]
- ldr r1, _0812C37C @ =sub_812C380
- str r1, [r0, 0x1C]
- bx lr
- .align 2, 0
-_0812C378: .4byte REG_BLDCNT
-_0812C37C: .4byte sub_812C380
- thumb_func_end sub_812C358
-
- thumb_func_start sub_812C380
-sub_812C380: @ 812C380
- push {r4,lr}
- adds r4, r0, 0
- ldr r2, _0812C3A0 @ =REG_BLDALPHA
- ldrh r1, [r4, 0x2E]
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r0, r1
- strh r0, [r2]
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _0812C3A4
- ldrh r0, [r4, 0x2E]
- subs r0, 0x1
- b _0812C3A8
- .align 2, 0
-_0812C3A0: .4byte REG_BLDALPHA
-_0812C3A4:
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
-_0812C3A8:
- strh r0, [r4, 0x2E]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0xF
- beq _0812C3B6
- cmp r0, 0x4
- bne _0812C3BE
-_0812C3B6:
- ldrh r0, [r4, 0x30]
- movs r1, 0x1
- eors r0, r1
- strh r0, [r4, 0x30]
-_0812C3BE:
- ldrh r0, [r4, 0x32]
- adds r1, r0, 0x1
- strh r1, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x46
- ble _0812C3FC
- ldr r0, _0812C404 @ =REG_BLDCNT
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- movs r0, 0
- strh r0, [r4, 0x32]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- subs r2, 0x12
- ldrb r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0812C408 @ =sub_812C40C
- str r0, [r4, 0x1C]
-_0812C3FC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C404: .4byte REG_BLDCNT
-_0812C408: .4byte sub_812C40C
- thumb_func_end sub_812C380
-
- thumb_func_start sub_812C40C
-sub_812C40C: @ 812C40C
- push {lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x32]
- adds r1, r0, 0x1
- strh r1, [r3, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x9
- ble _0812C448
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- subs r2, 0x12
- ldrb r1, [r2]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2]
- adds r0, r3, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0812C448
- ldr r0, _0812C44C @ =sub_812C450
- str r0, [r3, 0x1C]
-_0812C448:
- pop {r0}
- bx r0
- .align 2, 0
-_0812C44C: .4byte sub_812C450
- thumb_func_end sub_812C40C
-
- thumb_func_start sub_812C450
-sub_812C450: @ 812C450
- push {lr}
- adds r2, r0, 0
- movs r1, 0x34
- ldrsh r0, [r2, r1]
- cmp r0, 0x6
- bhi _0812C4A8
- lsls r0, 2
- ldr r1, _0812C468 @ =_0812C46C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0812C468: .4byte _0812C46C
- .align 2, 0
-_0812C46C:
- .4byte _0812C488
- .4byte _0812C488
- .4byte _0812C492
- .4byte _0812C492
- .4byte _0812C4A0
- .4byte _0812C4A0
- .4byte _0812C4A8
-_0812C488:
- movs r1, 0
- movs r0, 0x1
- strh r0, [r2, 0x24]
- strh r1, [r2, 0x26]
- b _0812C4B0
-_0812C492:
- ldr r0, _0812C49C @ =0x0000ffff
- strh r0, [r2, 0x24]
- movs r0, 0
- b _0812C4AE
- .align 2, 0
-_0812C49C: .4byte 0x0000ffff
-_0812C4A0:
- movs r0, 0
- strh r0, [r2, 0x24]
- movs r0, 0x1
- b _0812C4AE
-_0812C4A8:
- movs r0, 0
- strh r0, [r2, 0x24]
- ldr r0, _0812C4F0 @ =0x0000ffff
-_0812C4AE:
- strh r0, [r2, 0x26]
-_0812C4B0:
- ldrh r0, [r2, 0x34]
- adds r0, 0x1
- movs r3, 0
- strh r0, [r2, 0x34]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _0812C4C2
- strh r3, [r2, 0x34]
-_0812C4C2:
- ldrh r0, [r2, 0x36]
- adds r1, r0, 0x1
- strh r1, [r2, 0x36]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xF
- ble _0812C4EA
- movs r0, 0x10
- strh r0, [r2, 0x2E]
- strh r3, [r2, 0x30]
- ldr r1, _0812C4F4 @ =REG_BLDCNT
- movs r3, 0xFD
- lsls r3, 6
- adds r0, r3, 0
- strh r0, [r1]
- adds r1, 0x2
- ldrh r0, [r2, 0x2E]
- strh r0, [r1]
- ldr r0, _0812C4F8 @ =sub_812C4FC
- str r0, [r2, 0x1C]
-_0812C4EA:
- pop {r0}
- bx r0
- .align 2, 0
-_0812C4F0: .4byte 0x0000ffff
-_0812C4F4: .4byte REG_BLDCNT
-_0812C4F8: .4byte sub_812C4FC
- thumb_func_end sub_812C450
-
- thumb_func_start sub_812C4FC
-sub_812C4FC: @ 812C4FC
- push {r4,lr}
- adds r2, r0, 0
- ldr r4, _0812C558 @ =REG_BLDALPHA
- ldrh r1, [r2, 0x2E]
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r0, r1
- strh r0, [r4]
- ldrh r0, [r2, 0x30]
- adds r1, r0, 0x1
- strh r1, [r2, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _0812C526
- ldrh r0, [r2, 0x2E]
- subs r0, 0x1
- movs r1, 0
- strh r0, [r2, 0x2E]
- strh r1, [r2, 0x30]
-_0812C526:
- movs r1, 0x2E
- ldrsh r0, [r2, r1]
- cmp r0, 0
- bne _0812C53A
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r3]
-_0812C53A:
- movs r1, 0x2E
- ldrsh r0, [r2, r1]
- cmp r0, 0
- bge _0812C550
- ldr r1, _0812C55C @ =REG_BLDCNT
- movs r0, 0
- strh r0, [r1]
- strh r0, [r4]
- adds r0, r2, 0
- bl DestroyAnimSprite
-_0812C550:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C558: .4byte REG_BLDALPHA
-_0812C55C: .4byte REG_BLDCNT
- thumb_func_end sub_812C4FC
-
- thumb_func_start sub_812C560
-sub_812C560: @ 812C560
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0812C57C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, _0812C580 @ =sub_812C588
- str r0, [r1]
- ldr r1, _0812C584 @ =gAnimVisualTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- bx lr
- .align 2, 0
-_0812C57C: .4byte gTasks
-_0812C580: .4byte sub_812C588
-_0812C584: .4byte gAnimVisualTaskCount
- thumb_func_end sub_812C560
-
- thumb_func_start sub_812C588
-sub_812C588: @ 812C588
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80789BC
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r7, _0812C614 @ =gTasks
- lsls r5, r4, 2
- adds r1, r5, r4
- lsls r1, 3
- adds r1, r7
- ldrh r0, [r1, 0x12]
- adds r0, 0x1
- strh r0, [r1, 0x12]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- bne _0812C5F8
- ldr r0, _0812C618 @ =gPlttBufferFaded
- lsls r2, r6, 4
- adds r1, r2, 0
- adds r1, 0xB
- lsls r1, 1
- adds r1, r0
- ldrh r3, [r1]
- mov r8, r3
- movs r3, 0xA
- mov r9, r7
- adds r7, r5, 0
- mov r12, r0
- adds r5, r2, 0
- lsls r0, r6, 5
- add r0, r12
- adds r2, r0, 0
- adds r2, 0x14
-_0812C5D6:
- ldrh r0, [r2]
- strh r0, [r1]
- subs r2, 0x2
- subs r1, 0x2
- subs r3, 0x1
- cmp r3, 0
- bgt _0812C5D6
- adds r0, r5, 0x1
- lsls r0, 1
- add r0, r12
- movs r1, 0
- mov r2, r8
- strh r2, [r0]
- adds r0, r7, r4
- lsls r0, 3
- add r0, r9
- strh r1, [r0, 0x12]
-_0812C5F8:
- ldr r0, _0812C61C @ =gBattleAnimArgs
- ldrh r1, [r0, 0xE]
- ldr r0, _0812C620 @ =0x0000ffff
- cmp r1, r0
- bne _0812C608
- adds r0, r4, 0
- bl DestroyTask
-_0812C608:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C614: .4byte gTasks
-_0812C618: .4byte gPlttBufferFaded
-_0812C61C: .4byte gBattleAnimArgs
-_0812C620: .4byte 0x0000ffff
- thumb_func_end sub_812C588
-
- thumb_func_start sub_812C624
-sub_812C624: @ 812C624
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0812C640 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, _0812C644 @ =sub_812C64C
- str r0, [r1]
- ldr r1, _0812C648 @ =gAnimVisualTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- bx lr
- .align 2, 0
-_0812C640: .4byte gTasks
-_0812C644: .4byte sub_812C64C
-_0812C648: .4byte gAnimVisualTaskCount
- thumb_func_end sub_812C624
-
- thumb_func_start sub_812C64C
-sub_812C64C: @ 812C64C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- bl sub_80789BC
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r5, _0812C70C @ =gTasks
- mov r0, r8
- lsls r3, r0, 2
- adds r1, r3, r0
- lsls r1, 3
- adds r1, r5
- ldrh r0, [r1, 0x12]
- adds r0, 0x1
- strh r0, [r1, 0x12]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- bne _0812C6EE
- ldr r0, _0812C710 @ =gPlttBufferFaded
- lsls r2, r7, 4
- adds r1, r2, 0
- adds r1, 0xB
- lsls r1, 1
- adds r1, r0
- ldrh r6, [r1]
- movs r4, 0xA
- mov r10, r3
- mov r9, r0
- adds r5, r2, 0
- ldr r2, _0812C714 @ =gPlttBufferUnfaded
- mov r12, r2
- lsls r0, r7, 5
- add r0, r9
- adds r3, r0, 0
- adds r3, 0x14
-_0812C6A0:
- ldrh r0, [r3]
- strh r0, [r1]
- subs r3, 0x2
- subs r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bgt _0812C6A0
- adds r0, r5, 0x1
- lsls r0, 1
- add r0, r9
- strh r6, [r0]
- adds r1, r5, 0
- adds r1, 0xB
- lsls r1, 1
- add r1, r12
- ldrh r6, [r1]
- movs r4, 0xA
- lsls r0, r7, 5
- add r0, r12
- adds r2, r0, 0
- adds r2, 0x14
-_0812C6CA:
- ldrh r0, [r2]
- strh r0, [r1]
- subs r2, 0x2
- subs r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bgt _0812C6CA
- adds r0, r5, 0x1
- lsls r0, 1
- add r0, r12
- movs r1, 0
- strh r6, [r0]
- mov r0, r10
- add r0, r8
- lsls r0, 3
- ldr r2, _0812C70C @ =gTasks
- adds r0, r2
- strh r1, [r0, 0x12]
-_0812C6EE:
- ldr r0, _0812C718 @ =gBattleAnimArgs
- ldrh r1, [r0, 0xE]
- ldr r0, _0812C71C @ =0x0000ffff
- cmp r1, r0
- bne _0812C6FE
- mov r0, r8
- bl DestroyTask
-_0812C6FE:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C70C: .4byte gTasks
-_0812C710: .4byte gPlttBufferFaded
-_0812C714: .4byte gPlttBufferUnfaded
-_0812C718: .4byte gBattleAnimArgs
-_0812C71C: .4byte 0x0000ffff
- thumb_func_end sub_812C64C
-
- thumb_func_start sub_812C720
-sub_812C720: @ 812C720
- push {r4,r5,lr}
- sub sp, 0x4
- adds r4, r0, 0
- movs r1, 0x1
- bl InitAnimSpritePos
- ldr r0, _0812C784 @ =gAnimBankTarget
- ldrb r0, [r0]
- mov r5, sp
- adds r5, 0x2
- movs r1, 0
- mov r2, sp
- adds r3, r5, 0
- bl SetAverageBattlerPositions
- ldr r0, _0812C788 @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0812C754
- ldr r1, _0812C78C @ =gBattleAnimArgs
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
-_0812C754:
- ldr r1, _0812C78C @ =gBattleAnimArgs
- ldrh r0, [r1, 0x8]
- strh r0, [r4, 0x2E]
- mov r2, sp
- ldrh r0, [r1, 0x4]
- ldrh r2, [r2]
- adds r0, r2
- strh r0, [r4, 0x32]
- ldrh r0, [r1, 0x6]
- ldrh r5, [r5]
- adds r0, r5
- strh r0, [r4, 0x36]
- ldr r0, _0812C790 @ =0x0000ffce
- strh r0, [r4, 0x38]
- adds r0, r4, 0
- bl InitAnimSpriteTranslationOverDuration
- ldr r0, _0812C794 @ =sub_812C798
- str r0, [r4, 0x1C]
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C784: .4byte gAnimBankTarget
-_0812C788: .4byte gAnimBankAttacker
-_0812C78C: .4byte gBattleAnimArgs
-_0812C790: .4byte 0x0000ffce
-_0812C794: .4byte sub_812C798
- thumb_func_end sub_812C720
-
- thumb_func_start sub_812C798
-sub_812C798: @ 812C798
- push {r4,lr}
- adds r4, r0, 0
- bl TranslateAnimSpriteLinearAndSine
- lsls r0, 24
- cmp r0, 0
- beq _0812C7BA
- movs r1, 0
- movs r0, 0x1E
- strh r0, [r4, 0x2E]
- strh r1, [r4, 0x30]
- ldr r0, _0812C7C0 @ =WaitAnimForDuration
- str r0, [r4, 0x1C]
- ldr r1, _0812C7C4 @ =sub_812C7C8
- adds r0, r4, 0
- bl StoreSpriteCallbackInData
-_0812C7BA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C7C0: .4byte WaitAnimForDuration
-_0812C7C4: .4byte sub_812C7C8
- thumb_func_end sub_812C798
-
- thumb_func_start sub_812C7C8
-sub_812C7C8: @ 812C7C8
- push {lr}
- adds r3, r0, 0
- ldrh r1, [r3, 0x30]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0812C7F4
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- ldrb r2, [r0]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
-_0812C7F4:
- ldrh r0, [r3, 0x30]
- adds r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x10
- bne _0812C808
- adds r0, r3, 0
- bl DestroyAnimSprite
-_0812C808:
- pop {r0}
- bx r0
- thumb_func_end sub_812C7C8
-
- thumb_func_start sub_812C80C
-sub_812C80C: @ 812C80C
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_8078650
- ldr r5, _0812C83C @ =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]
- ldr r0, _0812C840 @ =sub_8078600
- str r0, [r4, 0x1C]
- ldr r1, _0812C844 @ =DestroyAnimSprite
- adds r0, r4, 0
- bl StoreSpriteCallbackInData
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C83C: .4byte gBattleAnimArgs
-_0812C840: .4byte sub_8078600
-_0812C844: .4byte DestroyAnimSprite
- thumb_func_end sub_812C80C
-
- thumb_func_start sub_812C848
-sub_812C848: @ 812C848
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0812C8A8
- adds r0, r4, 0
- bl sub_8078650
- ldr r5, _0812C884 @ =gBattleAnimArgs
- movs r2, 0
- ldrsh r1, [r5, r2]
- adds r0, r4, 0
- bl sub_807867C
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _0812C89C
- ldr r0, _0812C888 @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0812C88C
- ldrh r0, [r5, 0x4]
- b _0812C8A2
- .align 2, 0
-_0812C884: .4byte gBattleAnimArgs
-_0812C888: .4byte gAnimBankAttacker
-_0812C88C:
- movs r1, 0x4
- ldrsh r0, [r5, r1]
- negs r0, r0
- strh r0, [r4, 0x30]
- movs r2, 0x6
- ldrsh r0, [r5, r2]
- negs r0, r0
- b _0812C8A6
-_0812C89C:
- movs r1, 0x4
- ldrsh r0, [r5, r1]
- negs r0, r0
-_0812C8A2:
- strh r0, [r4, 0x30]
- ldrh r0, [r5, 0x6]
-_0812C8A6:
- strh r0, [r4, 0x32]
-_0812C8A8:
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- movs r3, 0xFF
- ldrh r1, [r4, 0x30]
- ldrh r2, [r4, 0x34]
- adds r1, r2
- strh r1, [r4, 0x34]
- ldrh r1, [r4, 0x32]
- ldrh r2, [r4, 0x36]
- adds r1, r2
- strh r1, [r4, 0x36]
- movs r2, 0x34
- ldrsh r1, [r4, r2]
- lsrs r2, r1, 31
- adds r1, r2
- asrs r1, 1
- strh r1, [r4, 0x24]
- ands r0, r3
- movs r1, 0x5
- bl Sin
- movs r2, 0x36
- ldrsh r1, [r4, r2]
- lsrs r2, r1, 31
- adds r1, r2
- asrs r1, 1
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x20]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xF0
- bls _0812C900
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0812C900:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_812C848
-
- thumb_func_start sub_812C908
-sub_812C908: @ 812C908
- push {lr}
- adds r2, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0812C91E
- adds r0, r2, 0
- bl DestroyAnimSprite
-_0812C91E:
- pop {r0}
- bx r0
- thumb_func_end sub_812C908
-
- thumb_func_start sub_812C924
-sub_812C924: @ 812C924
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0812C940 @ =gAnimBankTarget
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812C948
- ldr r1, _0812C944 @ =gBattleAnimArgs
- movs r0, 0
- b _0812C94C
- .align 2, 0
-_0812C940: .4byte gAnimBankTarget
-_0812C944: .4byte gBattleAnimArgs
-_0812C948:
- ldr r1, _0812C95C @ =gBattleAnimArgs
- movs r0, 0x1
-_0812C94C:
- strh r0, [r1, 0xE]
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C95C: .4byte gBattleAnimArgs
- thumb_func_end sub_812C924
-
- thumb_func_start sub_812C960
-sub_812C960: @ 812C960
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _0812C974 @ =gAnimMoveDmg
- ldr r0, [r0]
- cmp r0, 0
- ble _0812C97C
- ldr r1, _0812C978 @ =gBattleAnimArgs
- movs r0, 0
- b _0812C980
- .align 2, 0
-_0812C974: .4byte gAnimMoveDmg
-_0812C978: .4byte gBattleAnimArgs
-_0812C97C:
- ldr r1, _0812C98C @ =gBattleAnimArgs
- movs r0, 0x1
-_0812C980:
- strh r0, [r1, 0xE]
- adds r0, r2, 0
- bl DestroyAnimVisualTask
- pop {r0}
- bx r0
- .align 2, 0
-_0812C98C: .4byte gBattleAnimArgs
- thumb_func_end sub_812C960
-
- thumb_func_start sub_812C990
-sub_812C990: @ 812C990
- push {r4,lr}
- adds r4, r0, 0
- ldr r1, _0812C9EC @ =REG_WINOUT
- ldr r2, _0812C9F0 @ =0x00001f3f
- adds r0, r2, 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 r0, _0812C9F4 @ =gBattle_WIN0H
- movs r1, 0
- strh r1, [r0]
- ldr r0, _0812C9F8 @ =gBattle_WIN0V
- strh r1, [r0]
- ldr r0, _0812C9FC @ =REG_WIN0H
- strh r1, [r0]
- adds r0, 0x4
- strh r1, [r0]
- adds r0, r4, 0
- movs r1, 0
- bl sub_8078764
- ldrb r1, [r4, 0x1]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- movs r1, 0x8
- orrs r0, r1
- strb r0, [r4, 0x1]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0812CA00 @ =sub_812CA04
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812C9EC: .4byte REG_WINOUT
-_0812C9F0: .4byte 0x00001f3f
-_0812C9F4: .4byte gBattle_WIN0H
-_0812C9F8: .4byte gBattle_WIN0V
-_0812C9FC: .4byte REG_WIN0H
-_0812CA00: .4byte sub_812CA04
- thumb_func_end sub_812C990
-
- thumb_func_start sub_812CA04
-sub_812CA04: @ 812CA04
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0x5
- bhi _0812CAC4
- lsls r0, 2
- ldr r1, _0812CA1C @ =_0812CA20
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0812CA1C: .4byte _0812CA20
- .align 2, 0
-_0812CA20:
- .4byte _0812CA38
- .4byte _0812CA56
- .4byte _0812CA76
- .4byte _0812CA56
- .4byte _0812CA96
- .4byte _0812CAA6
-_0812CA38:
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0812CAC4
- b _0812CA9E
-_0812CA56:
- ldrh r0, [r4, 0x30]
- adds r0, 0x75
- strh r0, [r4, 0x30]
- lsls r0, 16
- asrs r0, 24
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x15
- bne _0812CAC4
- movs r0, 0
- strh r0, [r4, 0x32]
- b _0812CA9E
-_0812CA76:
- ldrh r0, [r4, 0x30]
- subs r0, 0x75
- strh r0, [r4, 0x30]
- lsls r0, 16
- asrs r0, 24
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x29
- bne _0812CAC4
- movs r0, 0
- strh r0, [r4, 0x32]
- b _0812CA9E
-_0812CA96:
- adds r0, r4, 0
- movs r1, 0x1
- bl ChangeSpriteAffineAnim
-_0812CA9E:
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- b _0812CAC4
-_0812CAA6:
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0812CAC4
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0812CACC @ =sub_812CAD0
- str r0, [r4, 0x1C]
-_0812CAC4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812CACC: .4byte sub_812CAD0
- thumb_func_end sub_812CA04
-
- thumb_func_start sub_812CAD0
-sub_812CAD0: @ 812CAD0
- push {r4,lr}
- ldr r2, _0812CAF4 @ =REG_WINOUT
- ldr r3, _0812CAF8 @ =0x00003f3f
- adds r1, r3, 0
- strh r1, [r2]
- movs r3, 0x80
- lsls r3, 19
- ldrh r1, [r3]
- movs r4, 0x80
- lsls r4, 8
- adds r2, r4, 0
- eors r1, r2
- strh r1, [r3]
- bl DestroyAnimSprite
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812CAF4: .4byte REG_WINOUT
-_0812CAF8: .4byte 0x00003f3f
- thumb_func_end sub_812CAD0
-
- thumb_func_start sub_812CAFC
-sub_812CAFC: @ 812CAFC
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r6, _0812CB70 @ =gBattleAnimArgs
- movs r1, 0x6
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _0812CB28
- ldr r4, _0812CB74 @ =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]
-_0812CB28:
- ldrh r0, [r6]
- ldrh r2, [r5, 0x20]
- adds r0, r2
- movs r3, 0
- strh r0, [r5, 0x20]
- ldrh r0, [r6, 0x2]
- ldrh r4, [r5, 0x22]
- adds r0, r4
- strh r0, [r5, 0x22]
- ldrh r2, [r5, 0x4]
- lsls r1, r2, 22
- lsrs r1, 22
- adds r1, 0x10
- ldr r4, _0812CB78 @ =0x000003ff
- adds r0, r4, 0
- ands r1, r0
- ldr r0, _0812CB7C @ =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x4]
- movs r1, 0x4
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _0812CB84
- ldrb r1, [r5, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r1
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r5, 0x3]
- ldr r0, _0812CB80 @ =0x0000fff4
- strh r0, [r5, 0x24]
- movs r0, 0x2
- b _0812CB8A
- .align 2, 0
-_0812CB70: .4byte gBattleAnimArgs
-_0812CB74: .4byte gAnimBankAttacker
-_0812CB78: .4byte 0x000003ff
-_0812CB7C: .4byte 0xfffffc00
-_0812CB80: .4byte 0x0000fff4
-_0812CB84:
- movs r0, 0xC
- strh r0, [r5, 0x24]
- ldr r0, _0812CBA8 @ =0x0000fffe
-_0812CB8A:
- strh r0, [r5, 0x30]
- ldr r1, _0812CBAC @ =gBattleAnimArgs
- ldrh r0, [r1, 0x8]
- strh r0, [r5, 0x2E]
- movs r2, 0x34
- ldrsh r0, [r5, r2]
- cmp r0, 0xFF
- beq _0812CB9E
- ldrh r0, [r1, 0x4]
- strh r0, [r5, 0x34]
-_0812CB9E:
- ldr r0, _0812CBB0 @ =sub_812CBB4
- str r0, [r5, 0x1C]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812CBA8: .4byte 0x0000fffe
-_0812CBAC: .4byte gBattleAnimArgs
-_0812CBB0: .4byte sub_812CBB4
- thumb_func_end sub_812CAFC
-
- thumb_func_start sub_812CBB4
-sub_812CBB4: @ 812CBB4
- push {r4,lr}
- adds r4, r0, 0
- ldrh r2, [r4, 0x32]
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0812CBF2
- ldrh r0, [r4, 0x30]
- ldrh r1, [r4, 0x24]
- adds r0, r1
- strh r0, [r4, 0x24]
- lsls r0, 16
- cmp r0, 0
- bne _0812CC12
- adds r0, r2, 0x1
- strh r0, [r4, 0x32]
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0812CC12
- movs r0, 0x40
- negs r0, r0
- bl BattleAnimAdjustPanning
- adds r1, r0, 0
- lsls r1, 24
- asrs r1, 24
- movs r0, 0xDE
- bl PlaySE1WithPanning
- b _0812CC12
-_0812CBF2:
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x30]
- subs r0, r1
- strh r0, [r4, 0x24]
- movs r1, 0x24
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bge _0812CC04
- negs r0, r0
-_0812CC04:
- cmp r0, 0xC
- bne _0812CC12
- ldrh r0, [r4, 0x2E]
- subs r0, 0x1
- strh r0, [r4, 0x2E]
- subs r0, r2, 0x1
- strh r0, [r4, 0x32]
-_0812CC12:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0812CC20
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0812CC20:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_812CBB4
-
- thumb_func_start sub_812CC28
-sub_812CC28: @ 812CC28
- push {lr}
- ldrb r2, [r0, 0x1]
- movs r1, 0xD
- negs r1, r1
- ands r1, r2
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0, 0x1]
- movs r1, 0xFF
- strh r1, [r0, 0x34]
- bl sub_812CAFC
- pop {r0}
- bx r0
- thumb_func_end sub_812CC28
-
- thumb_func_start sub_812CC44
-sub_812CC44: @ 812CC44
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _0812CC7A
- ldr r1, _0812CC88 @ =REG_WININ
- ldr r2, _0812CC8C @ =0x00001f3f
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, _0812CC90 @ =gBattle_WIN1H
- ldr r2, _0812CC94 @ =0x000098f0
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, _0812CC98 @ =gBattle_WIN1V
- movs r0, 0xA0
- strh r0, [r1]
- ldr r1, _0812CC9C @ =REG_WIN1H
- ldr r0, _0812CCA0 @ =gBattle_WIN0H
- ldrh r0, [r0]
- strh r0, [r1]
- adds r1, 0x4
- ldr r0, _0812CCA4 @ =gBattle_WIN0V
- ldrh r0, [r0]
- strh r0, [r1]
-_0812CC7A:
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812CC88: .4byte REG_WININ
-_0812CC8C: .4byte 0x00001f3f
-_0812CC90: .4byte gBattle_WIN1H
-_0812CC94: .4byte 0x000098f0
-_0812CC98: .4byte gBattle_WIN1V
-_0812CC9C: .4byte REG_WIN1H
-_0812CCA0: .4byte gBattle_WIN0H
-_0812CCA4: .4byte gBattle_WIN0V
- thumb_func_end sub_812CC44
-
- thumb_func_start sub_812CCA8
-sub_812CCA8: @ 812CCA8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _0812CCCA
- ldr r1, _0812CCD8 @ =REG_WININ
- ldr r2, _0812CCDC @ =0x00003f3f
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, _0812CCE0 @ =gBattle_WIN1H
- movs r1, 0
- strh r1, [r0]
- ldr r0, _0812CCE4 @ =gBattle_WIN1V
- strh r1, [r0]
-_0812CCCA:
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812CCD8: .4byte REG_WININ
-_0812CCDC: .4byte 0x00003f3f
-_0812CCE0: .4byte gBattle_WIN1H
-_0812CCE4: .4byte gBattle_WIN1V
- thumb_func_end sub_812CCA8
-
- thumb_func_start sub_812CCE8
-sub_812CCE8: @ 812CCE8
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r6, _0812CCFC @ =gBattleAnimArgs
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _0812CD04
- ldr r4, _0812CD00 @ =gAnimBankAttacker
- b _0812CD06
- .align 2, 0
-_0812CCFC: .4byte gBattleAnimArgs
-_0812CD00: .4byte gAnimBankAttacker
-_0812CD04:
- ldr r4, _0812CD58 @ =gAnimBankTarget
-_0812CD06:
- ldrb r0, [r4]
- movs r1, 0
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- ldrh r6, [r6, 0x2]
- adds r0, r6
- strh r0, [r5, 0x20]
- ldrb r0, [r4]
- movs r1, 0x1
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x22]
- ldr r2, _0812CD5C @ =gBattleAnimArgs
- ldrh r0, [r2, 0x4]
- strh r0, [r5, 0x26]
- movs r3, 0
- lsls r0, 16
- asrs r0, 16
- ldrh r4, [r2, 0x6]
- movs r6, 0x6
- ldrsh r1, [r2, r6]
- cmp r0, r1
- ble _0812CD3E
- movs r3, 0x1
-_0812CD3E:
- strh r3, [r5, 0x2E]
- movs r0, 0
- strh r0, [r5, 0x30]
- ldrh r0, [r2, 0x8]
- strh r0, [r5, 0x32]
- ldrh r0, [r2, 0xA]
- strh r0, [r5, 0x34]
- strh r4, [r5, 0x36]
- ldr r0, _0812CD60 @ =sub_812CD64
- str r0, [r5, 0x1C]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812CD58: .4byte gAnimBankTarget
-_0812CD5C: .4byte gBattleAnimArgs
-_0812CD60: .4byte sub_812CD64
- thumb_func_end sub_812CCE8
-
- thumb_func_start sub_812CD64
-sub_812CD64: @ 812CD64
- push {lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x32]
- ldrh r1, [r2, 0x30]
- adds r0, r1
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r2, 0x30]
- ldr r1, _0812CDAC @ =gSineTable
- movs r3, 0x30
- ldrsh r0, [r2, r3]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- lsls r0, 16
- asrs r0, 20
- strh r0, [r2, 0x24]
- ldrh r0, [r2, 0x34]
- ldrh r3, [r2, 0x26]
- adds r1, r0, r3
- strh r1, [r2, 0x26]
- movs r3, 0x2E
- ldrsh r0, [r2, r3]
- cmp r0, 0
- beq _0812CDB0
- lsls r0, r1, 16
- asrs r0, 16
- movs r3, 0x36
- ldrsh r1, [r2, r3]
- cmp r0, r1
- bge _0812CDC2
- adds r0, r2, 0
- bl DestroyAnimSprite
- b _0812CDC2
- .align 2, 0
-_0812CDAC: .4byte gSineTable
-_0812CDB0:
- lsls r0, r1, 16
- asrs r0, 16
- movs r3, 0x36
- ldrsh r1, [r2, r3]
- cmp r0, r1
- ble _0812CDC2
- adds r0, r2, 0
- bl DestroyAnimSprite
-_0812CDC2:
- pop {r0}
- bx r0
- thumb_func_end sub_812CD64
-
- thumb_func_start sub_812CDC8
-sub_812CDC8: @ 812CDC8
- push {r4-r7,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _0812CDE8 @ =gTasks
- adds r5, r1, r0
- ldr r0, _0812CDEC @ =gBattleAnimArgs
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _0812CDF4
- ldr r4, _0812CDF0 @ =gAnimBankAttacker
- b _0812CDF6
- .align 2, 0
-_0812CDE8: .4byte gTasks
-_0812CDEC: .4byte gBattleAnimArgs
-_0812CDF0: .4byte gAnimBankAttacker
-_0812CDF4:
- ldr r4, _0812CE3C @ =gAnimBankTarget
-_0812CDF6:
- ldrb r0, [r4]
- bl sub_8077FC0
- lsls r0, 24
- lsrs r6, r0, 24
- ldrb r0, [r4]
- bl GetBankIdentity_permutated
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r6, 0
- adds r1, r0, 0
- adds r1, 0x24
- movs r2, 0
- strh r1, [r5, 0x8]
- strh r1, [r5, 0xA]
- subs r0, 0x21
- strh r0, [r5, 0xC]
- cmp r0, 0
- bge _0812CE20
- strh r2, [r5, 0xC]
-_0812CE20:
- ldrh r0, [r5, 0x8]
- strh r0, [r5, 0xE]
- movs r0, 0x8
- strh r0, [r5, 0x10]
- ldr r1, _0812CE40 @ =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- strh r0, [r5, 0x12]
- strh r2, [r5, 0x14]
- strh r2, [r5, 0x16]
- cmp r7, 0x1
- bne _0812CE48
- ldr r0, _0812CE44 @ =gBattle_BG1_X
- b _0812CE4A
- .align 2, 0
-_0812CE3C: .4byte gAnimBankTarget
-_0812CE40: .4byte gBattleAnimArgs
-_0812CE44: .4byte gBattle_BG1_X
-_0812CE48:
- ldr r0, _0812CE68 @ =gBattle_BG2_X
-_0812CE4A:
- ldrh r2, [r0]
- strh r2, [r5, 0x18]
- adds r3, r2, 0
- adds r3, 0xF0
- strh r3, [r5, 0x1A]
- ldrh r0, [r1, 0x4]
- strh r0, [r5, 0x1C]
- movs r4, 0x4
- ldrsh r0, [r1, r4]
- cmp r0, 0
- bne _0812CE6C
- strh r3, [r5, 0x1E]
- ldrh r3, [r5, 0x18]
- b _0812CE70
- .align 2, 0
-_0812CE68: .4byte gBattle_BG2_X
-_0812CE6C:
- strh r2, [r5, 0x1E]
- ldrh r3, [r5, 0x1A]
-_0812CE70:
- movs r0, 0
- strh r0, [r5, 0x26]
- ldrh r1, [r5, 0xC]
- lsls r2, r1, 16
- asrs r1, r2, 16
- movs r6, 0xE
- ldrsh r0, [r5, r6]
- cmp r1, r0
- bgt _0812CEA6
- ldr r4, _0812CEB0 @ =gScanlineEffectRegBuffers
- movs r0, 0xF0
- lsls r0, 3
- adds r0, r4
- mov r12, r0
-_0812CE8C:
- asrs r2, 16
- lsls r1, r2, 1
- adds r0, r1, r4
- strh r3, [r0]
- add r1, r12
- strh r3, [r1]
- adds r2, 0x1
- lsls r2, 16
- asrs r1, r2, 16
- movs r6, 0xE
- ldrsh r0, [r5, r6]
- cmp r1, r0
- ble _0812CE8C
-_0812CEA6:
- cmp r7, 0x1
- bne _0812CEB8
- ldr r0, _0812CEB4 @ =REG_BG1HOFS
- b _0812CEBA
- .align 2, 0
-_0812CEB0: .4byte gScanlineEffectRegBuffers
-_0812CEB4: .4byte REG_BG1HOFS
-_0812CEB8:
- ldr r0, _0812CEE4 @ =REG_BG2HOFS
-_0812CEBA:
- str r0, [sp]
- ldr r0, _0812CEE8 @ =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, _0812CEEC @ =sub_812CEF0
- str r0, [r5]
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812CEE4: .4byte REG_BG2HOFS
-_0812CEE8: .4byte 0xa2600001
-_0812CEEC: .4byte sub_812CEF0
- thumb_func_end sub_812CDC8
-
- thumb_func_start sub_812CEF0
-sub_812CEF0: @ 812CEF0
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, _0812CF40 @ =gTasks
- adds r4, r0, r1
- ldrh r0, [r4, 0x8]
- ldrh r1, [r4, 0x12]
- subs r0, r1
- strh r0, [r4, 0x8]
- lsls r0, 16
- asrs r0, 16
- ldrh r2, [r4, 0xC]
- movs r3, 0xC
- ldrsh r1, [r4, r3]
- cmp r0, r1
- bge _0812CF18
- strh r2, [r4, 0x8]
-_0812CF18:
- ldrh r1, [r4, 0x10]
- movs r2, 0x10
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _0812CF44
- ldrh r0, [r4, 0xA]
- ldrh r1, [r4, 0x12]
- subs r0, r1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- ldrh r2, [r4, 0xC]
- movs r3, 0xC
- ldrsh r1, [r4, r3]
- cmp r0, r1
- bge _0812CF48
- strh r2, [r4, 0xA]
- movs r0, 0x1
- strh r0, [r4, 0x26]
- b _0812CF48
- .align 2, 0
-_0812CF40: .4byte gTasks
-_0812CF44:
- subs r0, r1, 0x1
- strh r0, [r4, 0x10]
-_0812CF48:
- ldrh r0, [r4, 0x14]
- adds r0, 0x1
- strh r0, [r4, 0x14]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _0812CF74
- movs r0, 0
- strh r0, [r4, 0x14]
- movs r1, 0
- movs r2, 0x16
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _0812CF66
- movs r1, 0x1
-_0812CF66:
- strh r1, [r4, 0x16]
- cmp r1, 0
- beq _0812CF70
- ldrh r0, [r4, 0x18]
- b _0812CF72
-_0812CF70:
- ldrh r0, [r4, 0x1A]
-_0812CF72:
- strh r0, [r4, 0x20]
-_0812CF74:
- ldrh r1, [r4, 0x8]
- lsls r3, r1, 16
- asrs r1, r3, 16
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bge _0812CFA8
- ldr r5, _0812D000 @ =gScanlineEffectRegBuffers
- movs r0, 0xF0
- lsls r0, 3
- adds r6, r5, r0
-_0812CF8A:
- asrs r3, 16
- lsls r1, r3, 1
- adds r2, r1, r5
- ldrh r0, [r4, 0x20]
- strh r0, [r2]
- adds r1, r6
- ldrh r0, [r4, 0x20]
- strh r0, [r1]
- adds r3, 0x1
- lsls r3, 16
- asrs r1, r3, 16
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r1, r0
- blt _0812CF8A
-_0812CFA8:
- ldrh r1, [r4, 0xA]
- lsls r3, r1, 16
- asrs r1, r3, 16
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bgt _0812CFDC
- ldr r5, _0812D000 @ =gScanlineEffectRegBuffers
- movs r0, 0xF0
- lsls r0, 3
- adds r6, r5, r0
-_0812CFBE:
- asrs r3, 16
- lsls r1, r3, 1
- adds r2, r1, r5
- ldrh r0, [r4, 0x1E]
- strh r0, [r2]
- adds r1, r6
- ldrh r0, [r4, 0x1E]
- strh r0, [r1]
- adds r3, 0x1
- lsls r3, 16
- asrs r1, r3, 16
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- cmp r1, r0
- ble _0812CFBE
-_0812CFDC:
- movs r3, 0x26
- ldrsh r0, [r4, r3]
- cmp r0, 0
- beq _0812CFF8
- movs r1, 0x1C
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _0812CFF2
- ldr r1, _0812D004 @ =gScanlineEffect
- movs r0, 0x3
- strb r0, [r1, 0x15]
-_0812CFF2:
- adds r0, r7, 0
- bl DestroyAnimVisualTask
-_0812CFF8:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D000: .4byte gScanlineEffectRegBuffers
-_0812D004: .4byte gScanlineEffect
- thumb_func_end sub_812CEF0
-
- thumb_func_start sub_812D008
-sub_812D008: @ 812D008
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- ldr r0, _0812D05C @ =gTasks
- adds r4, r0
- movs r5, 0
- strh r5, [r4, 0x8]
- strh r5, [r4, 0xA]
- ldr r6, _0812D060 @ =gAnimBankAttacker
- ldrb r0, [r6]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xC]
- ldrb r0, [r6]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xE]
- movs r0, 0x20
- strh r0, [r4, 0x10]
- ldr r0, _0812D064 @ =0x0000ffec
- strh r0, [r4, 0x12]
- strh r5, [r4, 0x14]
- movs r0, 0
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x26]
- ldr r0, _0812D068 @ =sub_812D06C
- str r0, [r4]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D05C: .4byte gTasks
-_0812D060: .4byte gAnimBankAttacker
-_0812D064: .4byte 0x0000ffec
-_0812D068: .4byte sub_812D06C
- thumb_func_end sub_812D008
-
- thumb_func_start sub_812D06C
-sub_812D06C: @ 812D06C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, _0812D098 @ =gTasks
- adds r6, r0, r1
- movs r1, 0x8
- ldrsh r0, [r6, r1]
- cmp r0, 0x5
- bls _0812D08C
- b _0812D246
-_0812D08C:
- lsls r0, 2
- ldr r1, _0812D09C @ =_0812D0A0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0812D098: .4byte gTasks
-_0812D09C: .4byte _0812D0A0
- .align 2, 0
-_0812D0A0:
- .4byte _0812D0B8
- .4byte _0812D178
- .4byte _0812D1A6
- .4byte _0812D1BA
- .4byte _0812D1D0
- .4byte _0812D238
-_0812D0B8:
- movs r0, 0xC
- ldrsh r2, [r6, r0]
- ldrh r1, [r6, 0xA]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0812D0CE
- movs r1, 0x10
- ldrsh r0, [r6, r1]
- subs r0, r2, r0
- b _0812D0D4
-_0812D0CE:
- movs r1, 0x10
- ldrsh r0, [r6, r1]
- adds r0, r2, r0
-_0812D0D4:
- lsls r0, 16
- lsrs r1, r0, 16
- ldrh r2, [r6, 0x12]
- ldrh r0, [r6, 0xE]
- adds r2, r0
- ldr r0, _0812D168 @ =gBattleAnimSpriteTemplate_83D7220
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- ldrb r4, [r6, 0xA]
- movs r3, 0x6
- subs r3, r4
- lsls r3, 24
- lsrs r3, 24
- bl CreateSprite
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x40
- negs r0, r0
- bl BattleAnimAdjustPanning
- adds r1, r0, 0
- lsls r1, 24
- asrs r1, 24
- movs r0, 0xBA
- bl PlaySE12WithPanning
- cmp r4, 0x40
- beq _0812D138
- ldr r5, _0812D16C @ =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r3, r1, r5
- ldrh r0, [r6, 0xA]
- movs r2, 0x1
- ands r2, r0
- adds r3, 0x3F
- ldrb r4, [r3]
- movs r0, 0x2
- negs r0, r0
- ands r0, r4
- orrs r0, r2
- strb r0, [r3]
- adds r5, 0x1C
- adds r1, r5
- ldr r0, _0812D170 @ =SpriteCallbackDummy
- str r0, [r1]
-_0812D138:
- ldrh r1, [r6, 0xA]
- movs r4, 0x1
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _0812D150
- ldrh r0, [r6, 0x10]
- subs r0, 0x6
- strh r0, [r6, 0x10]
- ldrh r0, [r6, 0x12]
- subs r0, 0x6
- strh r0, [r6, 0x12]
-_0812D150:
- ldrh r1, [r6, 0x26]
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _0812D174 @ =gUnknown_08402400
- adds r0, r6, 0
- bl sub_80798F4
- ldrh r0, [r6, 0xA]
- adds r0, 0x1
- strh r0, [r6, 0xA]
- strh r4, [r6, 0x8]
- b _0812D246
- .align 2, 0
-_0812D168: .4byte gBattleAnimSpriteTemplate_83D7220
-_0812D16C: .4byte gSprites
-_0812D170: .4byte SpriteCallbackDummy
-_0812D174: .4byte gUnknown_08402400
-_0812D178:
- adds r0, r6, 0
- bl sub_807992C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _0812D246
- movs r2, 0xA
- ldrsh r1, [r6, r2]
- cmp r1, 0x6
- bne _0812D198
- movs r0, 0x8
- strh r0, [r6, 0x14]
- movs r0, 0x3
- strh r0, [r6, 0x8]
- b _0812D246
-_0812D198:
- cmp r1, 0x2
- bgt _0812D19E
- movs r0, 0xA
-_0812D19E:
- strh r0, [r6, 0x14]
- movs r0, 0x2
- strh r0, [r6, 0x8]
- b _0812D246
-_0812D1A6:
- ldrh r0, [r6, 0x14]
- movs r2, 0x14
- ldrsh r1, [r6, r2]
- cmp r1, 0
- beq _0812D1B6
- subs r0, 0x1
- strh r0, [r6, 0x14]
- b _0812D246
-_0812D1B6:
- strh r1, [r6, 0x8]
- b _0812D246
-_0812D1BA:
- ldrh r1, [r6, 0x14]
- movs r2, 0x14
- ldrsh r0, [r6, r2]
- cmp r0, 0
- beq _0812D1CA
- subs r0, r1, 0x1
- strh r0, [r6, 0x14]
- b _0812D246
-_0812D1CA:
- movs r0, 0x4
- strh r0, [r6, 0x8]
- b _0812D246
-_0812D1D0:
- movs r5, 0
- movs r7, 0
- ldr r3, _0812D22C @ =gSprites
- movs r0, 0x1C
- adds r0, r3
- mov r8, r0
-_0812D1DC:
- lsls r0, r5, 4
- adds r0, r5
- lsls r4, r0, 2
- adds r0, r3, 0
- adds r0, 0x14
- adds r0, r4, r0
- ldr r1, [r0]
- ldr r0, _0812D230 @ =gBattleAnimSpriteTemplate_83D7220
- cmp r1, r0
- bne _0812D218
- adds r0, r4, r3
- strh r2, [r0, 0x2E]
- movs r1, 0x6
- strh r1, [r0, 0x30]
- movs r1, 0x2
- str r2, [sp]
- str r3, [sp, 0x4]
- bl StartSpriteAnim
- mov r0, r8
- adds r1, r4, r0
- ldr r0, _0812D234 @ =sub_812D254
- str r0, [r1]
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- ldr r2, [sp]
- ldr r3, [sp, 0x4]
- cmp r7, 0x6
- beq _0812D222
-_0812D218:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x3F
- bls _0812D1DC
-_0812D222:
- strh r7, [r6, 0x14]
- movs r0, 0x5
- strh r0, [r6, 0x8]
- b _0812D246
- .align 2, 0
-_0812D22C: .4byte gSprites
-_0812D230: .4byte gBattleAnimSpriteTemplate_83D7220
-_0812D234: .4byte sub_812D254
-_0812D238:
- movs r1, 0x14
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _0812D246
- adds r0, r2, 0
- bl DestroyAnimVisualTask
-_0812D246:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_812D06C
-
- thumb_func_start sub_812D254
-sub_812D254: @ 812D254
- push {r4,lr}
- adds r4, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0812D288
- ldr r3, _0812D290 @ =gTasks
- movs r0, 0x30
- ldrsh r1, [r4, r0]
- lsls r1, 1
- movs r0, 0x2E
- ldrsh r2, [r4, r0]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r3, 0x8
- adds r1, r3
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- adds r0, r4, 0
- bl DestroySprite
-_0812D288:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D290: .4byte gTasks
- thumb_func_end sub_812D254
-
- thumb_func_start sub_812D294
-sub_812D294: @ 812D294
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _0812D2A8
- adds r0, r5, 0
- movs r1, 0
- bl InitAnimSpritePos
-_0812D2A8:
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x27
- bgt _0812D2DA
- ldrh r0, [r5, 0x2E]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0812D2CC
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- b _0812D2D8
-_0812D2CC:
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
-_0812D2D8:
- strb r0, [r2]
-_0812D2DA:
- movs r2, 0x2E
- ldrsh r0, [r5, r2]
- cmp r0, 0x1E
- ble _0812D2F0
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_0812D2F0:
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0x3D
- bne _0812D33C
- ldr r1, _0812D344 @ =DestroyAnimSprite
- adds r0, r5, 0
- bl StoreSpriteCallbackInData
- ldrh r0, [r5, 0x24]
- ldrh r2, [r5, 0x20]
- adds r0, r2
- movs r1, 0
- strh r0, [r5, 0x20]
- ldrh r0, [r5, 0x26]
- ldrh r2, [r5, 0x22]
- adds r0, r2
- strh r0, [r5, 0x22]
- strh r1, [r5, 0x24]
- strh r1, [r5, 0x26]
- movs r0, 0x14
- strh r0, [r5, 0x2E]
- ldr r4, _0812D348 @ =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, _0812D34C @ =StartTranslateAnimSpriteByDeltas
- str r0, [r5, 0x1C]
-_0812D33C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D344: .4byte DestroyAnimSprite
-_0812D348: .4byte gAnimBankTarget
-_0812D34C: .4byte StartTranslateAnimSpriteByDeltas
- thumb_func_end sub_812D294
-
- thumb_func_start sub_812D350
-sub_812D350: @ 812D350
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, _0812D370 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _0812D374
- cmp r0, 0x1
- beq _0812D394
- b _0812D3A6
- .align 2, 0
-_0812D370: .4byte gTasks
-_0812D374:
- movs r0, 0
- bl GetAnimBankSpriteId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _0812D390 @ =gUnknown_084024B0
- adds r0, r4, 0
- bl sub_80798F4
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0812D3A6
- .align 2, 0
-_0812D390: .4byte gUnknown_084024B0
-_0812D394:
- adds r0, r4, 0
- bl sub_807992C
- lsls r0, 24
- cmp r0, 0
- bne _0812D3A6
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_0812D3A6:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_812D350
-
- thumb_func_start sub_812D3AC
-sub_812D3AC: @ 812D3AC
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r6, r0, 24
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _0812D40C
- cmp r0, 0x1
- bgt _0812D3CC
- cmp r0, 0
- beq _0812D3D6
- b _0812D4AE
-_0812D3CC:
- cmp r0, 0x2
- beq _0812D43C
- cmp r0, 0x3
- beq _0812D490
- b _0812D4AE
-_0812D3D6:
- ldr r4, _0812D408 @ =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]
- adds r0, r6, 0
- movs r1, 0
- bl sub_8078E70
- movs r0, 0x80
- lsls r0, 1
- strh r0, [r5, 0x30]
- strh r0, [r5, 0x32]
- b _0812D484
- .align 2, 0
-_0812D408: .4byte gAnimBankAttacker
-_0812D40C:
- ldrh r0, [r5, 0x30]
- adds r0, 0x60
- strh r0, [r5, 0x30]
- ldrh r0, [r5, 0x32]
- subs r0, 0x1A
- strh r0, [r5, 0x32]
- movs r2, 0x30
- ldrsh r1, [r5, r2]
- movs r0, 0x32
- ldrsh r2, [r5, r0]
- adds r0, r6, 0
- movs r3, 0
- bl obj_id_set_rotscale
- ldrh r0, [r5, 0x34]
- adds r0, 0x1
- strh r0, [r5, 0x34]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- bne _0812D43C
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
-_0812D43C:
- ldrh r0, [r5, 0x30]
- adds r0, 0x60
- strh r0, [r5, 0x30]
- ldrh r0, [r5, 0x32]
- adds r0, 0x30
- strh r0, [r5, 0x32]
- movs r2, 0x30
- ldrsh r1, [r5, r2]
- movs r0, 0x32
- ldrsh r2, [r5, r0]
- adds r0, r6, 0
- movs r3, 0
- bl obj_id_set_rotscale
- ldrh r0, [r5, 0x34]
- adds r0, 0x1
- strh r0, [r5, 0x34]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x9
- bne _0812D4AE
- movs r0, 0
- strh r0, [r5, 0x34]
- ldr r1, _0812D48C @ =gSprites
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- adds r0, r6, 0
- bl sub_8078F40
-_0812D484:
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
- b _0812D4AE
- .align 2, 0
-_0812D48C: .4byte gSprites
-_0812D490:
- ldrh r0, [r5, 0x26]
- subs r0, 0x6
- strh r0, [r5, 0x26]
- movs r1, 0x22
- ldrsh r0, [r5, r1]
- movs r2, 0x26
- ldrsh r1, [r5, r2]
- adds r0, r1
- movs r1, 0x20
- negs r1, r1
- cmp r0, r1
- bge _0812D4AE
- adds r0, r5, 0
- bl DestroyAnimSprite
-_0812D4AE:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_812D3AC
-
- thumb_func_start sub_812D4B4
-sub_812D4B4: @ 812D4B4
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _0812D4CC @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0812D4D4
- ldr r0, _0812D4D0 @ =0x0000fff0
- b _0812D4D8
- .align 2, 0
-_0812D4CC: .4byte gAnimBankAttacker
-_0812D4D0: .4byte 0x0000fff0
-_0812D4D4:
- movs r0, 0x80
- lsls r0, 1
-_0812D4D8:
- strh r0, [r4, 0x20]
- movs r0, 0
- strh r0, [r4, 0x22]
- ldr r0, _0812D4E8 @ =sub_812D4EC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D4E8: .4byte sub_812D4EC
- thumb_func_end sub_812D4B4
-
- thumb_func_start sub_812D4EC
-sub_812D4EC: @ 812D4EC
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- adds r0, 0x48
- strh r0, [r4, 0x2E]
- ldr r0, _0812D50C @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0812D510
- ldrh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 20
- b _0812D518
- .align 2, 0
-_0812D50C: .4byte gAnimBankAttacker
-_0812D510:
- ldrh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 20
- negs r0, r0
-_0812D518:
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x30]
- adds r0, 0x10
- strh r0, [r4, 0x30]
- lsls r0, 16
- asrs r0, 24
- ldrh r1, [r4, 0x26]
- adds r5, r0, r1
- strh r5, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x3
- bl __modsi3
- lsls r0, 16
- cmp r0, 0
- bne _0812D564
- ldr r0, _0812D584 @ =gSpriteTemplate_8402500
- ldrh r1, [r4, 0x24]
- ldrh r2, [r4, 0x20]
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- ldrh r2, [r4, 0x22]
- adds r2, r5
- lsls r2, 16
- asrs r2, 16
- adds r3, r4, 0
- adds r3, 0x43
- ldrb r3, [r3]
- adds r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- bl CreateSpriteAndAnimate
-_0812D564:
- movs r1, 0x20
- ldrsh r0, [r4, r1]
- movs r2, 0x24
- ldrsh r1, [r4, r2]
- adds r0, r1
- adds r0, 0x20
- movs r1, 0x98
- lsls r1, 1
- cmp r0, r1
- bls _0812D57E
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0812D57E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D584: .4byte gSpriteTemplate_8402500
- thumb_func_end sub_812D4EC
-
- thumb_func_start sub_812D588
-sub_812D588: @ 812D588
- push {r4,lr}
- adds r4, r0, 0
- bl Random
- movs r1, 0x3
- ands r0, r1
- cmp r0, 0
- bne _0812D5A2
- ldrh r2, [r4, 0x4]
- lsls r1, r2, 22
- lsrs r1, 22
- adds r1, 0x4
- b _0812D5AA
-_0812D5A2:
- ldrh r2, [r4, 0x4]
- lsls r1, r2, 22
- lsrs r1, 22
- adds r1, 0x5
-_0812D5AA:
- ldr r3, _0812D5DC @ =0x000003ff
- adds r0, r3, 0
- ands r1, r0
- ldr r0, _0812D5E0 @ =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r4, 0x4]
- bl Random
- movs r1, 0x7
- ands r0, r1
- adds r1, r0, 0
- cmp r1, 0x3
- ble _0812D5CC
- negs r0, r1
- lsls r0, 24
- lsrs r0, 24
-_0812D5CC:
- lsls r0, 24
- asrs r0, 24
- strh r0, [r4, 0x26]
- ldr r0, _0812D5E4 @ =sub_812D5E8
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812D5DC: .4byte 0x000003ff
-_0812D5E0: .4byte 0xfffffc00
-_0812D5E4: .4byte sub_812D5E8
- thumb_func_end sub_812D588
-
- thumb_func_start sub_812D5E8
-sub_812D5E8: @ 812D5E8
- push {lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x2E]
- adds r0, 0x1
- strh r0, [r3, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1D
- bgt _0812D62A
- ldrh r0, [r3, 0x30]
- adds r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x2
- bne _0812D65E
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- ldrb r2, [r0]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- movs r0, 0
- b _0812D65C
-_0812D62A:
- movs r1, 0x30
- ldrsh r0, [r3, r1]
- cmp r0, 0x2
- bne _0812D640
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_0812D640:
- movs r1, 0x30
- ldrsh r0, [r3, r1]
- cmp r0, 0x3
- bne _0812D658
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0812D670 @ =0x0000ffff
- strh r0, [r3, 0x30]
-_0812D658:
- ldrh r0, [r3, 0x30]
- adds r0, 0x1
-_0812D65C:
- strh r0, [r3, 0x30]
-_0812D65E:
- movs r1, 0x2E
- ldrsh r0, [r3, r1]
- cmp r0, 0x3C
- ble _0812D66C
- adds r0, r3, 0
- bl DestroySprite
-_0812D66C:
- pop {r0}
- bx r0
- .align 2, 0
-_0812D670: .4byte 0x0000ffff
- thumb_func_end sub_812D5E8
-
- thumb_func_start sub_812D674
-sub_812D674: @ 812D674
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r1, _0812D6AC @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0812D6B4
- movs r0, 0
- bl GetAnimBankSpriteId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _0812D6B0 @ =gUnknown_08402518
- adds r0, r4, 0
- bl sub_80798F4
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0812D6C6
- .align 2, 0
-_0812D6AC: .4byte gTasks
-_0812D6B0: .4byte gUnknown_08402518
-_0812D6B4:
- adds r0, r4, 0
- bl sub_807992C
- lsls r0, 24
- cmp r0, 0
- bne _0812D6C6
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_0812D6C6:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_812D674
-
- thumb_func_start sub_812D6CC
-sub_812D6CC: @ 812D6CC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r1, _0812D704 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0812D70C
- movs r0, 0
- bl GetAnimBankSpriteId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _0812D708 @ =gUnknown_08402540
- adds r0, r4, 0
- bl sub_80798F4
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0812D71E
- .align 2, 0
-_0812D704: .4byte gTasks
-_0812D708: .4byte gUnknown_08402540
-_0812D70C:
- adds r0, r4, 0
- bl sub_807992C
- lsls r0, 24
- cmp r0, 0
- bne _0812D71E
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_0812D71E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_812D6CC
-
- thumb_func_start sub_812D724
-sub_812D724: @ 812D724
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _0812D736
- cmp r0, 0x1
- beq _0812D760
- b _0812D788
-_0812D736:
- adds r0, r4, 0
- movs r1, 0
- bl InitAnimSpritePos
- movs r0, 0x90
- lsls r0, 4
- strh r0, [r4, 0x30]
- ldr r0, _0812D75C @ =gAnimBankAttacker
- ldrb r0, [r0]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- b _0812D788
- .align 2, 0
-_0812D75C: .4byte gAnimBankAttacker
-_0812D760:
- ldrh r2, [r4, 0x30]
- lsls r1, r2, 16
- asrs r1, 24
- ldrh r0, [r4, 0x26]
- subs r0, r1
- strh r0, [r4, 0x26]
- subs r2, 0x60
- strh r2, [r4, 0x30]
- movs r2, 0x22
- ldrsh r0, [r4, r2]
- movs r2, 0x26
- ldrsh r1, [r4, r2]
- adds r0, r1
- movs r2, 0x32
- ldrsh r1, [r4, r2]
- cmp r0, r1
- ble _0812D788
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0812D788:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_812D724
-
- thumb_func_start sub_812D790
-sub_812D790: @ 812D790
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r1, _0812D7C8 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0812D7D0
- movs r0, 0
- bl GetAnimBankSpriteId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _0812D7CC @ =gUnknown_08402590
- adds r0, r4, 0
- bl sub_80798F4
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0812D7E2
- .align 2, 0
-_0812D7C8: .4byte gTasks
-_0812D7CC: .4byte gUnknown_08402590
-_0812D7D0:
- adds r0, r4, 0
- bl sub_807992C
- lsls r0, 24
- cmp r0, 0
- bne _0812D7E2
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_0812D7E2:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_812D790
-
- thumb_func_start sub_812D7E8
-sub_812D7E8: @ 812D7E8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r1, _0812D818 @ =gTasks
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r3, r1, 0
- cmp r0, 0x4
- bls _0812D80E
- b _0812DAFA
-_0812D80E:
- lsls r0, 2
- ldr r1, _0812D81C @ =_0812D820
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0812D818: .4byte gTasks
-_0812D81C: .4byte _0812D820
- .align 2, 0
-_0812D820:
- .4byte _0812D834
- .4byte _0812D888
- .4byte _0812D8C4
- .4byte _0812DA48
- .4byte _0812DA84
-_0812D834:
- ldr r1, _0812D850 @ =REG_MOSAIC
- movs r0, 0
- strh r0, [r1]
- ldr r0, _0812D854 @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankIdentity_permutated
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812D85C
- ldr r0, _0812D858 @ =REG_BG1CNT
- b _0812D85E
- .align 2, 0
-_0812D850: .4byte REG_MOSAIC
-_0812D854: .4byte gAnimBankAttacker
-_0812D858: .4byte REG_BG1CNT
-_0812D85C:
- ldr r0, _0812D87C @ =REG_BG2CNT
-_0812D85E:
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- ldr r0, _0812D880 @ =gTasks
- mov r6, r8
- lsls r1, r6, 2
- add r1, r8
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812D884 @ =gBattleAnimArgs
- ldrh r0, [r0]
- strh r0, [r1, 0x1C]
- b _0812DA2A
- .align 2, 0
-_0812D87C: .4byte REG_BG2CNT
-_0812D880: .4byte gTasks
-_0812D884: .4byte gBattleAnimArgs
-_0812D888:
- mov r1, r8
- lsls r0, r1, 2
- add r0, r8
- lsls r0, 3
- adds r4, r0, r3
- ldrh r0, [r4, 0xC]
- adds r1, r0, 0x1
- strh r1, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- bgt _0812D8A2
- b _0812DAFA
-_0812D8A2:
- movs r0, 0
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- ldrh r2, [r4, 0xA]
- ldr r1, _0812D8C0 @ =REG_MOSAIC
- lsls r0, r2, 4
- orrs r0, r2
- strh r0, [r1]
- cmp r2, 0xF
- beq _0812D8BC
- b _0812DAFA
-_0812D8BC:
- b _0812DA78
- .align 2, 0
-_0812D8C0: .4byte REG_MOSAIC
-_0812D8C4:
- ldr r5, _0812D8F4 @ =gAnimBankAttacker
- ldrb r0, [r5]
- ldr r1, _0812D8F8 @ =gAnimBankTarget
- ldrb r1, [r1]
- mov r2, r8
- lsls r4, r2, 2
- adds r2, r4, r2
- lsls r2, 3
- adds r2, r3
- ldrb r2, [r2, 0x1C]
- bl sub_8031FC4
- ldrb r1, [r5]
- mov r0, sp
- bl sub_8078954
- bl IsContest
- lsls r0, 24
- mov r9, r4
- cmp r0, 0
- beq _0812D8FC
- movs r1, 0
- b _0812D906
- .align 2, 0
-_0812D8F4: .4byte gAnimBankAttacker
-_0812D8F8: .4byte gAnimBankTarget
-_0812D8FC:
- ldrb r0, [r5]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r1, r0, 24
-_0812D906:
- ldr r0, _0812D9CC @ =gUnknown_081FAF4C
- lsls r1, 2
- adds r1, r0
- ldr r2, _0812D9D0 @ =gBattleMonForms
- ldr r0, _0812D9D4 @ =gAnimBankAttacker
- ldrb r0, [r0]
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 11
- ldr r1, [r1]
- adds r1, r0
- ldr r2, [sp]
- ldr r0, _0812D9D8 @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _0812D9DC @ =0x84000200
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _0812DA20
- ldr r5, _0812D9E0 @ =gSharedMem + 0x19348
- ldrh r0, [r5]
- bl IsSpeciesNotUnown
- adds r4, r0, 0
- ldrh r0, [r5, 0x2]
- bl IsSpeciesNotUnown
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _0812D9A2
- ldr r6, [sp, 0x4]
- movs r5, 0
- movs r0, 0x7
- mov r12, r0
- movs r7, 0
-_0812D956:
- movs r4, 0
- adds r3, r7, r6
- mov r1, r12
- lsls r0, r1, 1
- adds r2, r0, r6
-_0812D960:
- ldrh r1, [r3]
- ldrh r0, [r2]
- strh r0, [r3]
- strh r1, [r2]
- adds r3, 0x2
- subs r2, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- ble _0812D960
- movs r2, 0x20
- add r12, r2
- adds r7, 0x40
- adds r5, 0x1
- cmp r5, 0x7
- ble _0812D956
- movs r5, 0
- movs r0, 0x80
- lsls r0, 3
- adds r3, r0, 0
-_0812D986:
- adds r2, r5, 0x1
- lsls r0, r5, 6
- adds r1, r0, r6
- movs r4, 0x7
-_0812D98E:
- ldrh r0, [r1]
- eors r0, r3
- strh r0, [r1]
- adds r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bge _0812D98E
- adds r5, r2, 0
- cmp r5, 0x7
- ble _0812D986
-_0812D9A2:
- ldr r0, _0812D9E0 @ =gSharedMem + 0x19348
- ldrh r0, [r0, 0x2]
- bl IsSpeciesNotUnown
- lsls r0, 24
- cmp r0, 0
- beq _0812D9F0
- ldr r3, _0812D9E4 @ =gSprites
- ldr r4, _0812D9E8 @ =gBankSpriteIds
- ldr r2, _0812D9D4 @ =gAnimBankAttacker
- ldrb r0, [r2]
- adds r0, r4
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r3, 0
- adds r1, 0x10
- adds r0, r1
- ldr r1, _0812D9EC @ =gSpriteAffineAnimTable_81E7C18
- b _0812DA0A
- .align 2, 0
-_0812D9CC: .4byte gUnknown_081FAF4C
-_0812D9D0: .4byte gBattleMonForms
-_0812D9D4: .4byte gAnimBankAttacker
-_0812D9D8: .4byte 0x040000d4
-_0812D9DC: .4byte 0x84000200
-_0812D9E0: .4byte gSharedMem + 0x19348
-_0812D9E4: .4byte gSprites
-_0812D9E8: .4byte gBankSpriteIds
-_0812D9EC: .4byte gSpriteAffineAnimTable_81E7C18
-_0812D9F0:
- ldr r3, _0812DA34 @ =gSprites
- ldr r4, _0812DA38 @ =gBankSpriteIds
- ldr r2, _0812DA3C @ =gAnimBankAttacker
- ldrb r0, [r2]
- adds r0, r4
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r3, 0
- adds r1, 0x10
- adds r0, r1
- ldr r1, _0812DA40 @ =gSpriteAffineAnimTable_81E7BEC
-_0812DA0A:
- str r1, [r0]
- ldrb r0, [r2]
- adds r0, r4
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0
- bl StartSpriteAffineAnim
-_0812DA20:
- ldr r0, _0812DA44 @ =gTasks
- mov r1, r9
- add r1, r8
- lsls r1, 3
- adds r1, r0
-_0812DA2A:
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _0812DAFA
- .align 2, 0
-_0812DA34: .4byte gSprites
-_0812DA38: .4byte gBankSpriteIds
-_0812DA3C: .4byte gAnimBankAttacker
-_0812DA40: .4byte gSpriteAffineAnimTable_81E7BEC
-_0812DA44: .4byte gTasks
-_0812DA48:
- mov r1, r8
- lsls r0, r1, 2
- add r0, r8
- lsls r0, 3
- adds r4, r0, r3
- ldrh r0, [r4, 0xC]
- adds r1, r0, 0x1
- strh r1, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _0812DAFA
- movs r0, 0
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
- strh r0, [r4, 0xA]
- ldrh r2, [r4, 0xA]
- ldr r1, _0812DA80 @ =REG_MOSAIC
- lsls r0, r2, 4
- orrs r0, r2
- strh r0, [r1]
- cmp r2, 0
- bne _0812DAFA
-_0812DA78:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0812DAFA
- .align 2, 0
-_0812DA80: .4byte REG_MOSAIC
-_0812DA84:
- ldr r1, _0812DAA0 @ =REG_MOSAIC
- movs r0, 0
- strh r0, [r1]
- ldr r0, _0812DAA4 @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankIdentity_permutated
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812DAAC
- ldr r2, _0812DAA8 @ =REG_BG1CNT
- b _0812DAAE
- .align 2, 0
-_0812DAA0: .4byte REG_MOSAIC
-_0812DAA4: .4byte gAnimBankAttacker
-_0812DAA8: .4byte REG_BG1CNT
-_0812DAAC:
- ldr r2, _0812DB08 @ =REG_BG2CNT
-_0812DAAE:
- ldrb r1, [r2]
- movs r0, 0x41
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _0812DAF4
- ldr r4, _0812DB0C @ =gAnimBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812DAF4
- ldr r0, _0812DB10 @ =gTasks
- mov r2, r8
- lsls r1, r2, 2
- add r1, r8
- lsls r1, 3
- adds r1, r0
- movs r6, 0x1C
- ldrsh r0, [r1, r6]
- cmp r0, 0
- bne _0812DAF4
- ldrb r0, [r4]
- lsls r1, r0, 2
- ldr r2, _0812DB14 @ =gSharedMem + 0x17800
- adds r1, r2
- ldrh r1, [r1, 0x2]
- bl sub_8032984
-_0812DAF4:
- mov r0, r8
- bl DestroyAnimVisualTask
-_0812DAFA:
- add sp, 0xC
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812DB08: .4byte REG_BG2CNT
-_0812DB0C: .4byte gAnimBankAttacker
-_0812DB10: .4byte gTasks
-_0812DB14: .4byte gSharedMem + 0x17800
- thumb_func_end sub_812D7E8
-
- thumb_func_start c3_80DFBE4
-c3_80DFBE4: @ 812DB18
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r4, _0812DB48 @ =gBattleAnimArgs
- ldr r3, _0812DB4C @ =gSprites
- ldr r2, _0812DB50 @ =gBankSpriteIds
- ldr r1, _0812DB54 @ =gAnimBankAttacker
- ldrb r1, [r1]
- adds r1, r2
- ldrb r2, [r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r3
- adds r1, 0x3E
- ldrb r1, [r1]
- lsls r1, 29
- lsrs r1, 31
- strh r1, [r4, 0xE]
- bl DestroyAnimVisualTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812DB48: .4byte gBattleAnimArgs
-_0812DB4C: .4byte gSprites
-_0812DB50: .4byte gBankSpriteIds
-_0812DB54: .4byte gAnimBankAttacker
- thumb_func_end c3_80DFBE4
-
- thumb_func_start sub_812DB58
-sub_812DB58: @ 812DB58
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _0812DB7C @ =gAnimBankAttacker
- ldrb r0, [r0]
- ldr r1, _0812DB80 @ =gAnimBankTarget
- ldrb r1, [r1]
- movs r2, 0x1
- bl sub_8031FC4
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812DB7C: .4byte gAnimBankAttacker
-_0812DB80: .4byte gAnimBankTarget
- thumb_func_end sub_812DB58
-
- thumb_func_start sub_812DB84
-sub_812DB84: @ 812DB84
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x10
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, _0812DBB4 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r2, r1, 0
- cmp r0, 0x4
- bls _0812DBA8
- b _0812DE80
-_0812DBA8:
- lsls r0, 2
- ldr r1, _0812DBB8 @ =_0812DBBC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0812DBB4: .4byte gTasks
-_0812DBB8: .4byte _0812DBBC
- .align 2, 0
-_0812DBBC:
- .4byte _0812DBD0
- .4byte _0812DCFC
- .4byte _0812DD4C
- .4byte _0812DDB6
- .4byte _0812DDEA
-_0812DBD0:
- ldr r1, _0812DC70 @ =REG_BLDCNT
- ldr r4, _0812DC74 @ =0x00003f42
- adds r0, r4, 0
- strh r0, [r1]
- adds r1, 0x2
- movs r2, 0x80
- lsls r2, 5
- adds r0, r2, 0
- strh r0, [r1]
- ldr r4, _0812DC78 @ =REG_BG1CNT
- ldrb r1, [r4, 0x1]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r4, 0x1]
- ldrb r1, [r4]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r4]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _0812DC12
- ldrb r0, [r4]
- movs r1, 0xD
- negs r1, r1
- ands r1, r0
- movs r0, 0x4
- orrs r1, r0
- strb r1, [r4]
-_0812DC12:
- mov r0, sp
- bl sub_8078914
- ldr r1, [sp, 0x4]
- movs r4, 0
- str r4, [sp, 0xC]
- ldr r2, _0812DC7C @ =0x040000d4
- add r0, sp, 0xC
- str r0, [r2]
- str r1, [r2, 0x4]
- ldr r0, _0812DC80 @ =0x85000400
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- ldr r0, _0812DC84 @ =gUnknown_08D2AA98
- bl LZDecompressVram
- ldr r0, _0812DC88 @ =gUnknown_08D2A9E0
- ldr r1, [sp]
- bl LZDecompressVram
- ldr r0, _0812DC8C @ =gUnknown_08D2AA80
- mov r1, sp
- ldrb r1, [r1, 0x8]
- lsls r1, 4
- movs r2, 0x20
- bl LoadCompressedPalette
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _0812DC9C
- mov r0, sp
- ldrb r0, [r0, 0x8]
- ldr r1, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_80763FC
- ldr r1, _0812DC90 @ =gBattle_BG1_X
- ldr r2, _0812DC94 @ =0x0000ffc8
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, _0812DC98 @ =gBattle_BG1_Y
- strh r4, [r0]
- b _0812DCCE
- .align 2, 0
-_0812DC70: .4byte REG_BLDCNT
-_0812DC74: .4byte 0x00003f42
-_0812DC78: .4byte REG_BG1CNT
-_0812DC7C: .4byte 0x040000d4
-_0812DC80: .4byte 0x85000400
-_0812DC84: .4byte gUnknown_08D2AA98
-_0812DC88: .4byte gUnknown_08D2A9E0
-_0812DC8C: .4byte gUnknown_08D2AA80
-_0812DC90: .4byte gBattle_BG1_X
-_0812DC94: .4byte 0x0000ffc8
-_0812DC98: .4byte gBattle_BG1_Y
-_0812DC9C:
- ldr r0, _0812DCB4 @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0812DCC0
- ldr r1, _0812DCB8 @ =gBattle_BG1_X
- ldr r4, _0812DCBC @ =0x0000ff79
- adds r0, r4, 0
- b _0812DCC6
- .align 2, 0
-_0812DCB4: .4byte gAnimBankAttacker
-_0812DCB8: .4byte gBattle_BG1_X
-_0812DCBC: .4byte 0x0000ff79
-_0812DCC0:
- ldr r1, _0812DCEC @ =gBattle_BG1_X
- ldr r2, _0812DCF0 @ =0x0000fff6
- adds r0, r2, 0
-_0812DCC6:
- strh r0, [r1]
- ldr r1, _0812DCF4 @ =gBattle_BG1_Y
- movs r0, 0
- strh r0, [r1]
-_0812DCCE:
- ldr r0, _0812DCF8 @ =gTasks
- lsls r1, r7, 2
- adds r1, r7
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812DCEC @ =gBattle_BG1_X
- ldrh r0, [r0]
- strh r0, [r1, 0x1C]
- ldr r0, _0812DCF4 @ =gBattle_BG1_Y
- ldrh r0, [r0]
- strh r0, [r1, 0x1E]
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- b _0812DDD2
- .align 2, 0
-_0812DCEC: .4byte gBattle_BG1_X
-_0812DCF0: .4byte 0x0000fff6
-_0812DCF4: .4byte gBattle_BG1_Y
-_0812DCF8: .4byte gTasks
-_0812DCFC:
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r3, r0, r2
- ldrh r0, [r3, 0x10]
- adds r1, r0, 0x1
- strh r1, [r3, 0x10]
- lsls r0, 16
- cmp r0, 0
- bgt _0812DD12
- b _0812DE80
-_0812DD12:
- movs r0, 0
- strh r0, [r3, 0x10]
- ldrh r0, [r3, 0xA]
- adds r0, 0x1
- strh r0, [r3, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xC
- ble _0812DD28
- movs r0, 0xC
- strh r0, [r3, 0xA]
-_0812DD28:
- ldr r2, _0812DD48 @ =REG_BLDALPHA
- ldrh r1, [r3, 0xA]
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r0, r1
- strh r0, [r2]
- movs r4, 0xA
- ldrsh r0, [r3, r4]
- cmp r0, 0xC
- beq _0812DD40
- b _0812DE80
-_0812DD40:
- ldrh r0, [r3, 0x8]
- adds r0, 0x1
- strh r0, [r3, 0x8]
- b _0812DE80
- .align 2, 0
-_0812DD48: .4byte REG_BLDALPHA
-_0812DD4C:
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r3, r0, r2
- ldrh r0, [r3, 0xA]
- subs r0, 0x1
- strh r0, [r3, 0xA]
- lsls r0, 16
- cmp r0, 0
- bge _0812DD64
- movs r0, 0
- strh r0, [r3, 0xA]
-_0812DD64:
- ldr r2, _0812DDA4 @ =REG_BLDALPHA
- ldrh r1, [r3, 0xA]
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r0, r1
- strh r0, [r2]
- movs r1, 0xA
- ldrsh r0, [r3, r1]
- cmp r0, 0
- beq _0812DD7C
- b _0812DE80
-_0812DD7C:
- ldr r2, _0812DDA8 @ =gBattle_BG1_X
- ldr r1, _0812DDAC @ =gUnknown_084025C0
- movs r4, 0xC
- ldrsh r0, [r3, r4]
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r3, 0x1C]
- adds r0, r1
- strh r0, [r2]
- ldrh r0, [r3, 0xC]
- adds r0, 0x1
- strh r0, [r3, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- bne _0812DDB0
- strh r0, [r3, 0x8]
- b _0812DE80
- .align 2, 0
-_0812DDA4: .4byte REG_BLDALPHA
-_0812DDA8: .4byte gBattle_BG1_X
-_0812DDAC: .4byte gUnknown_084025C0
-_0812DDB0:
- movs r0, 0x3
- strh r0, [r3, 0x8]
- b _0812DE80
-_0812DDB6:
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r1, r0, r2
- ldrh r0, [r1, 0xE]
- adds r0, 0x1
- strh r0, [r1, 0xE]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- bne _0812DE80
- movs r0, 0
- strh r0, [r1, 0xE]
- movs r0, 0x1
-_0812DDD2:
- strh r0, [r1, 0x8]
- movs r0, 0x40
- negs r0, r0
- bl BattleAnimAdjustPanning
- adds r1, r0, 0
- lsls r1, 24
- asrs r1, 24
- movs r0, 0xE4
- bl PlaySE12WithPanning
- b _0812DE80
-_0812DDEA:
- mov r0, sp
- bl sub_8078914
- ldr r2, [sp]
- movs r3, 0x80
- lsls r3, 6
- add r5, sp, 0xC
- movs r6, 0
- ldr r1, _0812DE90 @ =0x040000d4
- movs r4, 0x80
- lsls r4, 5
- mov r8, r5
- ldr r0, _0812DE94 @ =0x85000400
- mov r12, r0
- movs r0, 0x85
- lsls r0, 24
- mov r9, r0
-_0812DE0C:
- str r6, [sp, 0xC]
- mov r0, r8
- str r0, [r1]
- str r2, [r1, 0x4]
- mov r0, r12
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r2, r4
- subs r3, r4
- cmp r3, r4
- bhi _0812DE0C
- str r6, [sp, 0xC]
- str r5, [r1]
- str r2, [r1, 0x4]
- lsrs r0, r3, 2
- mov r2, r9
- orrs r0, r2
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- ldr r1, [sp, 0x4]
- movs r4, 0
- str r4, [sp, 0xC]
- ldr r0, _0812DE90 @ =0x040000d4
- str r5, [r0]
- str r1, [r0, 0x4]
- ldr r1, _0812DE98 @ =0x85000200
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _0812DE5A
- ldr r2, _0812DE9C @ =REG_BG1CNT
- ldrb r1, [r2]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_0812DE5A:
- ldr r2, _0812DE9C @ =REG_BG1CNT
- ldrb r1, [r2]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0812DEA0 @ =gBattle_BG1_X
- strh r4, [r0]
- ldr r0, _0812DEA4 @ =gBattle_BG1_Y
- strh r4, [r0]
- ldr r0, _0812DEA8 @ =REG_BLDCNT
- strh r4, [r0]
- adds r0, 0x2
- strh r4, [r0]
- adds r0, r7, 0
- bl DestroyAnimVisualTask
-_0812DE80:
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812DE90: .4byte 0x040000d4
-_0812DE94: .4byte 0x85000400
-_0812DE98: .4byte 0x85000200
-_0812DE9C: .4byte REG_BG1CNT
-_0812DEA0: .4byte gBattle_BG1_X
-_0812DEA4: .4byte gBattle_BG1_Y
-_0812DEA8: .4byte REG_BLDCNT
- thumb_func_end sub_812DB84
-
- thumb_func_start sub_812DEAC
-sub_812DEAC: @ 812DEAC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- adds r7, r0, 0
- bl Random
- lsls r0, 16
- movs r1, 0xFC
- lsls r1, 14
- ands r1, r0
- lsrs r5, r1, 16
- adds r1, r5, 0
- cmp r1, 0x1F
- ble _0812DED6
- movs r0, 0x20
- subs r0, r1
- lsls r0, 16
- lsrs r5, r0, 16
-_0812DED6:
- ldr r4, _0812DFD0 @ =gAnimBankAttacker
- ldrb r0, [r4]
- movs r1, 0
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- adds r0, r5
- strh r0, [r7, 0x20]
- ldrb r0, [r4]
- movs r1, 0x1
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- adds r0, 0x20
- strh r0, [r7, 0x22]
- ldr r1, _0812DFD4 @ =gBattleAnimArgs
- ldrh r0, [r1]
- strh r0, [r7, 0x30]
- ldrh r0, [r1, 0x2]
- strh r0, [r7, 0x32]
- ldr r4, _0812DFD8 @ =gBattleAnimSpriteTemplate_84025EC
- movs r0, 0x20
- ldrsh r1, [r7, r0]
- movs r0, 0x22
- ldrsh r2, [r7, r0]
- adds r5, r7, 0
- adds r5, 0x43
- ldrb r3, [r5]
- adds r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- adds r0, r4, 0
- bl CreateSprite
- mov r9, r0
- mov r1, r9
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- movs r0, 0x20
- ldrsh r1, [r7, r0]
- movs r0, 0x22
- ldrsh r2, [r7, r0]
- ldrb r3, [r5]
- adds r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- adds r0, r4, 0
- bl CreateSprite
- mov r8, r0
- mov r1, r8
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- mov r0, r9
- lsls r2, r0, 4
- add r2, r9
- lsls r2, 2
- ldr r1, _0812DFDC @ =gSprites
- mov r10, r1
- adds r5, r2, r1
- adds r0, r5, 0
- movs r1, 0x1
- str r2, [sp]
- bl StartSpriteAnim
- mov r0, r8
- lsls r6, r0, 4
- add r6, r8
- lsls r6, 2
- mov r1, r10
- adds r4, r6, r1
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAnim
- ldr r1, _0812DFD4 @ =gBattleAnimArgs
- ldrh r0, [r1]
- strh r0, [r5, 0x30]
- ldrh r0, [r1, 0x2]
- strh r0, [r5, 0x32]
- ldrh r0, [r1]
- strh r0, [r4, 0x30]
- ldrh r0, [r1, 0x2]
- strh r0, [r4, 0x32]
- ldr r0, _0812DFE0 @ =0x0000ffff
- strh r0, [r5, 0x3C]
- movs r0, 0x1
- negs r0, r0
- strh r0, [r4, 0x3C]
- adds r5, 0x3E
- ldrb r0, [r5]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r5]
- adds r4, 0x3E
- ldrb r0, [r4]
- orrs r0, r1
- strb r0, [r4]
- movs r0, 0x1C
- add r10, r0
- ldr r2, [sp]
- add r2, r10
- ldr r0, _0812DFE4 @ =sub_812E0F8
- str r0, [r2]
- add r6, r10
- str r0, [r6]
- mov r1, r9
- strh r1, [r7, 0x3A]
- mov r0, r8
- strh r0, [r7, 0x3C]
- ldr r0, _0812DFE8 @ =sub_812DFEC
- str r0, [r7, 0x1C]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812DFD0: .4byte gAnimBankAttacker
-_0812DFD4: .4byte gBattleAnimArgs
-_0812DFD8: .4byte gBattleAnimSpriteTemplate_84025EC
-_0812DFDC: .4byte gSprites
-_0812DFE0: .4byte 0x0000ffff
-_0812DFE4: .4byte sub_812E0F8
-_0812DFE8: .4byte sub_812DFEC
- thumb_func_end sub_812DEAC
-
- thumb_func_start sub_812DFEC
-sub_812DFEC: @ 812DFEC
- push {lr}
- adds r3, r0, 0
- ldrh r2, [r3, 0x32]
- ldrh r0, [r3, 0x34]
- adds r2, r0
- lsls r0, r2, 16
- asrs r0, 24
- ldrh r1, [r3, 0x26]
- subs r1, r0
- strh r1, [r3, 0x26]
- movs r0, 0xFF
- ands r2, r0
- strh r2, [r3, 0x34]
- movs r2, 0x36
- ldrsh r0, [r3, r2]
- cmp r0, 0
- bne _0812E03A
- lsls r0, r1, 16
- asrs r0, 16
- movs r1, 0x8
- negs r1, r1
- cmp r0, r1
- bge _0812E03A
- ldr r2, _0812E094 @ =gSprites
- movs r0, 0x3A
- ldrsh r1, [r3, 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]
- ldrh r0, [r3, 0x36]
- adds r0, 0x1
- strh r0, [r3, 0x36]
-_0812E03A:
- movs r1, 0x36
- ldrsh r0, [r3, r1]
- cmp r0, 0x1
- bne _0812E06E
- movs r2, 0x26
- ldrsh r1, [r3, r2]
- movs r0, 0x10
- negs r0, r0
- cmp r1, r0
- bge _0812E06E
- ldr r2, _0812E094 @ =gSprites
- movs r0, 0x3C
- ldrsh r1, [r3, 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]
- ldrh r0, [r3, 0x36]
- adds r0, 0x1
- strh r0, [r3, 0x36]
-_0812E06E:
- ldrh r0, [r3, 0x30]
- subs r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _0812E090
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0812E098 @ =sub_812E09C
- str r0, [r3, 0x1C]
-_0812E090:
- pop {r0}
- bx r0
- .align 2, 0
-_0812E094: .4byte gSprites
-_0812E098: .4byte sub_812E09C
- thumb_func_end sub_812DFEC
-
- thumb_func_start sub_812E09C
-sub_812E09C: @ 812E09C
- push {r4-r6,lr}
- adds r4, r0, 0
- ldr r5, _0812E0F0 @ =gSprites
- movs r0, 0x3A
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r3, r0, 2
- adds r6, r5, 0
- adds r6, 0x1C
- adds r0, r3, r6
- ldr r2, [r0]
- ldr r0, _0812E0F4 @ =SpriteCallbackDummy
- cmp r2, r0
- bne _0812E0E8
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldr r0, [r1]
- cmp r0, r2
- bne _0812E0E8
- adds r0, r3, r5
- bl DestroySprite
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0812E0E8:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812E0F0: .4byte gSprites
-_0812E0F4: .4byte SpriteCallbackDummy
- thumb_func_end sub_812E09C
-
- thumb_func_start sub_812E0F8
-sub_812E0F8: @ 812E0F8
- push {lr}
- adds r3, r0, 0
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _0812E144
- ldrh r2, [r3, 0x32]
- ldrh r1, [r3, 0x34]
- adds r2, r1
- lsls r1, r2, 16
- asrs r1, 24
- ldrh r0, [r3, 0x26]
- subs r0, r1
- strh r0, [r3, 0x26]
- movs r0, 0xFF
- ands r2, r0
- strh r2, [r3, 0x34]
- ldrh r0, [r3, 0x30]
- subs r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _0812E144
- mov r1, r12
- ldrb r0, [r1]
- movs r1, 0x4
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- ldr r0, _0812E148 @ =SpriteCallbackDummy
- str r0, [r3, 0x1C]
-_0812E144:
- pop {r0}
- bx r0
- .align 2, 0
-_0812E148: .4byte SpriteCallbackDummy
- thumb_func_end sub_812E0F8
-
- thumb_func_start sub_812E14C
-sub_812E14C: @ 812E14C
- push {r4-r6,lr}
- sub sp, 0x10
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, _0812E174 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0x5
- bls _0812E16A
- b _0812E476
-_0812E16A:
- lsls r0, 2
- ldr r1, _0812E178 @ =_0812E17C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0812E174: .4byte gTasks
-_0812E178: .4byte _0812E17C
- .align 2, 0
-_0812E17C:
- .4byte _0812E194
- .4byte _0812E300
- .4byte _0812E388
- .4byte _0812E3BC
- .4byte _0812E3E8
- .4byte _0812E420
-_0812E194:
- ldr r1, _0812E230 @ =REG_BLDCNT
- ldr r3, _0812E234 @ =0x00003f42
- adds r0, r3, 0
- strh r0, [r1]
- adds r1, 0x2
- ldr r2, _0812E238 @ =0x00000d03
- adds r0, r2, 0
- strh r0, [r1]
- ldr r4, _0812E23C @ =REG_BG1CNT
- ldrb r1, [r4, 0x1]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r4, 0x1]
- ldrb r1, [r4]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r4]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _0812E1D4
- ldrb r0, [r4]
- movs r1, 0xD
- negs r1, r1
- ands r1, r0
- movs r0, 0x4
- orrs r1, r0
- strb r1, [r4]
-_0812E1D4:
- mov r0, sp
- bl sub_8078914
- ldr r1, [sp, 0x4]
- movs r4, 0
- str r4, [sp, 0xC]
- ldr r2, _0812E240 @ =0x040000d4
- add r0, sp, 0xC
- str r0, [r2]
- str r1, [r2, 0x4]
- ldr r0, _0812E244 @ =0x85000400
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- ldr r0, _0812E248 @ =gUnknown_08D2AA98
- bl LZDecompressVram
- ldr r0, _0812E24C @ =gUnknown_08D2A9E0
- ldr r1, [sp]
- bl LZDecompressVram
- ldr r0, _0812E250 @ =gUnknown_08D2AA80
- mov r1, sp
- ldrb r1, [r1, 0x8]
- lsls r1, 4
- movs r2, 0x20
- bl LoadCompressedPalette
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _0812E260
- mov r0, sp
- ldrb r0, [r0, 0x8]
- ldr r1, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_80763FC
- ldr r1, _0812E254 @ =gBattle_BG1_X
- ldr r3, _0812E258 @ =0x0000ffc8
- adds r0, r3, 0
- strh r0, [r1]
- ldr r0, _0812E25C @ =gBattle_BG1_Y
- strh r4, [r0]
- b _0812E2D2
- .align 2, 0
-_0812E230: .4byte REG_BLDCNT
-_0812E234: .4byte 0x00003f42
-_0812E238: .4byte 0x00000d03
-_0812E23C: .4byte REG_BG1CNT
-_0812E240: .4byte 0x040000d4
-_0812E244: .4byte 0x85000400
-_0812E248: .4byte gUnknown_08D2AA98
-_0812E24C: .4byte gUnknown_08D2A9E0
-_0812E250: .4byte gUnknown_08D2AA80
-_0812E254: .4byte gBattle_BG1_X
-_0812E258: .4byte 0x0000ffc8
-_0812E25C: .4byte gBattle_BG1_Y
-_0812E260:
- ldr r0, _0812E2A0 @ =gAnimBankTarget
- ldrb r0, [r0]
- bl GetBankIdentity
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsDoubleBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812E2B4
- ldr r1, _0812E2A4 @ =gBattle_BG1_X
- cmp r4, 0x1
- bne _0812E284
- ldr r2, _0812E2A8 @ =0x0000ff65
- adds r0, r2, 0
- strh r0, [r1]
-_0812E284:
- cmp r4, 0x3
- bne _0812E28E
- ldr r3, _0812E2AC @ =0x0000ff8d
- adds r0, r3, 0
- strh r0, [r1]
-_0812E28E:
- cmp r4, 0
- bne _0812E296
- movs r0, 0xE
- strh r0, [r1]
-_0812E296:
- cmp r4, 0x2
- bne _0812E2CC
- ldr r1, _0812E2A4 @ =gBattle_BG1_X
- ldr r2, _0812E2B0 @ =0x0000ffec
- b _0812E2C8
- .align 2, 0
-_0812E2A0: .4byte gAnimBankTarget
-_0812E2A4: .4byte gBattle_BG1_X
-_0812E2A8: .4byte 0x0000ff65
-_0812E2AC: .4byte 0x0000ff8d
-_0812E2B0: .4byte 0x0000ffec
-_0812E2B4:
- cmp r4, 0x1
- bne _0812E2C0
- ldr r1, _0812E2EC @ =gBattle_BG1_X
- ldr r3, _0812E2F0 @ =0x0000ff79
- adds r0, r3, 0
- strh r0, [r1]
-_0812E2C0:
- cmp r4, 0
- bne _0812E2CC
- ldr r1, _0812E2EC @ =gBattle_BG1_X
- ldr r2, _0812E2F4 @ =0x0000fff6
-_0812E2C8:
- adds r0, r2, 0
- strh r0, [r1]
-_0812E2CC:
- ldr r1, _0812E2F8 @ =gBattle_BG1_Y
- movs r0, 0
- strh r0, [r1]
-_0812E2D2:
- ldr r0, _0812E2FC @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812E2EC @ =gBattle_BG1_X
- ldrh r0, [r0]
- strh r0, [r1, 0x1C]
- ldr r0, _0812E2F8 @ =gBattle_BG1_Y
- ldrh r0, [r0]
- strh r0, [r1, 0x1E]
- b _0812E380
- .align 2, 0
-_0812E2EC: .4byte gBattle_BG1_X
-_0812E2F0: .4byte 0x0000ff79
-_0812E2F4: .4byte 0x0000fff6
-_0812E2F8: .4byte gBattle_BG1_Y
-_0812E2FC: .4byte gTasks
-_0812E300:
- ldr r1, _0812E334 @ =gTasks
- lsls r4, r6, 2
- adds r0, r4, r6
- lsls r0, 3
- adds r5, r0, r1
- movs r0, 0
- strh r0, [r5, 0xE]
- ldr r0, _0812E338 @ =gAnimBankTarget
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812E344
- ldr r2, _0812E33C @ =gBattle_BG1_X
- ldr r1, _0812E340 @ =gUnknown_08402604
- movs r3, 0xC
- ldrsh r0, [r5, r3]
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r5, [r5, 0x1C]
- adds r0, r5
- b _0812E356
- .align 2, 0
-_0812E334: .4byte gTasks
-_0812E338: .4byte gAnimBankTarget
-_0812E33C: .4byte gBattle_BG1_X
-_0812E340: .4byte gUnknown_08402604
-_0812E344:
- ldr r2, _0812E374 @ =gBattle_BG1_X
- ldr r1, _0812E378 @ =gUnknown_08402604
- movs r3, 0xC
- ldrsh r0, [r5, r3]
- adds r0, r1
- movs r1, 0
- ldrsb r1, [r0, r1]
- ldrh r0, [r5, 0x1C]
- subs r0, r1
-_0812E356:
- strh r0, [r2]
- ldr r0, _0812E37C @ =gTasks
- adds r1, r4, r6
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0xC]
- adds r0, 0x1
- strh r0, [r1, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- bne _0812E380
- strh r0, [r1, 0x8]
- b _0812E476
- .align 2, 0
-_0812E374: .4byte gBattle_BG1_X
-_0812E378: .4byte gUnknown_08402604
-_0812E37C: .4byte gTasks
-_0812E380:
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _0812E476
-_0812E388:
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r4, r0, r4
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- bgt _0812E3A2
- movs r0, 0x5
- strh r0, [r4, 0xA]
-_0812E3A2:
- ldr r2, _0812E3B8 @ =REG_BLDALPHA
- ldrh r0, [r4, 0xA]
- lsls r0, 8
- movs r1, 0x3
- orrs r0, r1
- strh r0, [r2]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0x5
- bne _0812E476
- b _0812E3DC
- .align 2, 0
-_0812E3B8: .4byte REG_BLDALPHA
-_0812E3BC:
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r4, r0, r4
- ldrh r1, [r4, 0xE]
- adds r1, 0x1
- strh r1, [r4, 0xE]
- lsls r1, 16
- asrs r1, 16
- ldr r2, _0812E3E4 @ =gUnknown_08402608
- movs r3, 0xC
- ldrsh r0, [r4, r3]
- adds r0, r2
- ldrb r0, [r0]
- cmp r1, r0
- ble _0812E476
-_0812E3DC:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0812E476
- .align 2, 0
-_0812E3E4: .4byte gUnknown_08402608
-_0812E3E8:
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r4, r0, r4
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xD
- ble _0812E402
- movs r0, 0xD
- strh r0, [r4, 0xA]
-_0812E402:
- ldr r2, _0812E41C @ =REG_BLDALPHA
- ldrh r0, [r4, 0xA]
- lsls r0, 8
- movs r1, 0x3
- orrs r0, r1
- strh r0, [r2]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0xD
- bne _0812E476
- movs r0, 0x1
- strh r0, [r4, 0x8]
- b _0812E476
- .align 2, 0
-_0812E41C: .4byte REG_BLDALPHA
-_0812E420:
- mov r0, sp
- bl sub_8078914
- ldr r2, [sp, 0x4]
- movs r4, 0
- str r4, [sp, 0xC]
- ldr r1, _0812E480 @ =0x040000d4
- add r0, sp, 0xC
- str r0, [r1]
- str r2, [r1, 0x4]
- ldr r0, _0812E484 @ =0x85000200
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _0812E450
- ldr r2, _0812E488 @ =REG_BG1CNT
- ldrb r1, [r2]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
-_0812E450:
- ldr r2, _0812E488 @ =REG_BG1CNT
- ldrb r1, [r2]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _0812E48C @ =gBattle_BG1_X
- strh r4, [r0]
- ldr r0, _0812E490 @ =gBattle_BG1_Y
- strh r4, [r0]
- ldr r0, _0812E494 @ =REG_BLDCNT
- strh r4, [r0]
- adds r0, 0x2
- strh r4, [r0]
- adds r0, r6, 0
- bl DestroyAnimVisualTask
-_0812E476:
- add sp, 0x10
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812E480: .4byte 0x040000d4
-_0812E484: .4byte 0x85000200
-_0812E488: .4byte REG_BG1CNT
-_0812E48C: .4byte gBattle_BG1_X
-_0812E490: .4byte gBattle_BG1_Y
-_0812E494: .4byte REG_BLDCNT
- thumb_func_end sub_812E14C
-
- thumb_func_start sub_812E498
-sub_812E498: @ 812E498
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r1, _0812E4D0 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0812E4D8
- movs r0, 0
- bl GetAnimBankSpriteId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _0812E4D4 @ =gUnknown_08402610
- adds r0, r4, 0
- bl sub_80798F4
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0812E4EA
- .align 2, 0
-_0812E4D0: .4byte gTasks
-_0812E4D4: .4byte gUnknown_08402610
-_0812E4D8:
- adds r0, r4, 0
- bl sub_807992C
- lsls r0, 24
- cmp r0, 0
- bne _0812E4EA
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_0812E4EA:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_812E498
-
- thumb_func_start sub_812E4F0
-sub_812E4F0: @ 812E4F0
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- cmp r1, 0
- bne _0812E50E
- adds r0, r4, 0
- movs r1, 0
- bl InitAnimSpritePos
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- b _0812E562
-_0812E50E:
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- cmp r1, 0x14
- ble _0812E562
- ldrh r0, [r4, 0x30]
- adds r0, 0xA0
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x32]
- adds r0, 0x80
- strh r0, [r4, 0x32]
- ldr r0, _0812E53C @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _0812E540
- ldrh r0, [r4, 0x30]
- lsls r0, 16
- asrs r0, 24
- negs r0, r0
- b _0812E546
- .align 2, 0
-_0812E53C: .4byte gAnimBankAttacker
-_0812E540:
- ldrh r0, [r4, 0x30]
- lsls r0, 16
- asrs r0, 24
-_0812E546:
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 24
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x40
- ble _0812E562
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0812E562:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_812E4F0
-
- thumb_func_start sub_812E568
-sub_812E568: @ 812E568
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, _0812E58C @ =gTasks
- adds r4, r0, r1
- ldr r5, _0812E590 @ =gBattleAnimArgs
- movs r1, 0x2
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _0812E594
- adds r0, r2, 0
- bl DestroyAnimVisualTask
- b _0812E628
- .align 2, 0
-_0812E58C: .4byte gTasks
-_0812E590: .4byte gBattleAnimArgs
-_0812E594:
- movs r1, 0x4
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bge _0812E5A0
- movs r0, 0
- strh r0, [r5, 0x4]
-_0812E5A0:
- movs r1, 0x4
- ldrsh r0, [r5, r1]
- cmp r0, 0x2
- ble _0812E5AC
- movs r0, 0x2
- strh r0, [r5, 0x4]
-_0812E5AC:
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0xA]
- strh r0, [r4, 0xC]
- movs r0, 0x4
- ldrsh r1, [r5, r0]
- lsls r1, 1
- movs r0, 0x8
- subs r0, r1
- strh r0, [r4, 0xE]
- movs r1, 0x4
- ldrsh r0, [r5, r1]
- lsls r0, 7
- movs r1, 0x80
- lsls r1, 1
- adds r0, r1
- strh r0, [r4, 0x10]
- ldrh r0, [r5, 0x4]
- adds r0, 0x2
- strh r0, [r4, 0x12]
- ldrh r0, [r5, 0x2]
- subs r0, 0x1
- strh r0, [r4, 0x14]
- ldrb r0, [r5]
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x26]
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _0812E5F8
- ldr r0, _0812E5F4 @ =gAnimBankAttacker
- b _0812E5FA
- .align 2, 0
-_0812E5F4: .4byte gAnimBankAttacker
-_0812E5F8:
- ldr r0, _0812E630 @ =gAnimBankTarget
-_0812E5FA:
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812E618
- movs r1, 0x10
- ldrsh r0, [r4, r1]
- negs r0, r0
- strh r0, [r4, 0x10]
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- negs r0, r0
- strh r0, [r4, 0x12]
-_0812E618:
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- bl sub_8078E70
- ldr r0, _0812E634 @ =sub_812E638
- str r0, [r4]
-_0812E628:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812E630: .4byte gAnimBankTarget
-_0812E634: .4byte sub_812E638
- thumb_func_end sub_812E568
-
- thumb_func_start sub_812E638
-sub_812E638: @ 812E638
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0812E65C @ =gTasks
- adds r4, r0, r1
- movs r0, 0x8
- ldrsh r6, [r4, r0]
- cmp r6, 0x1
- beq _0812E6C0
- cmp r6, 0x1
- bgt _0812E660
- cmp r6, 0
- beq _0812E66C
- b _0812E798
- .align 2, 0
-_0812E65C: .4byte gTasks
-_0812E660:
- cmp r6, 0x2
- beq _0812E718
- cmp r6, 0x3
- bne _0812E66A
- b _0812E788
-_0812E66A:
- b _0812E798
-_0812E66C:
- ldr r2, _0812E6BC @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r4, 0x12]
- ldrh r2, [r0, 0x24]
- adds r1, r2
- strh r1, [r0, 0x24]
- ldrh r0, [r4, 0xC]
- ldrh r1, [r4, 0x10]
- subs r0, r1
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0xC]
- adds r1, r2, 0
- bl obj_id_set_rotscale
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8078F9C
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0xE
- ldrsh r1, [r4, r2]
- cmp r0, r1
- blt _0812E798
- strh r6, [r4, 0xA]
- b _0812E780
- .align 2, 0
-_0812E6BC: .4byte gSprites
-_0812E6C0:
- ldr r2, _0812E714 @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x24]
- ldrh r2, [r4, 0x12]
- subs r1, r2
- strh r1, [r0, 0x24]
- ldrh r0, [r4, 0x10]
- ldrh r1, [r4, 0xC]
- adds r0, r1
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0xC]
- adds r1, r2, 0
- bl obj_id_set_rotscale
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8078F9C
- ldrh r1, [r4, 0xA]
- adds r1, 0x1
- strh r1, [r4, 0xA]
- lsls r1, 16
- asrs r1, 16
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- lsls r0, 1
- cmp r1, r0
- blt _0812E798
- movs r0, 0
- strh r0, [r4, 0xA]
- b _0812E780
- .align 2, 0
-_0812E714: .4byte gSprites
-_0812E718:
- ldr r2, _0812E77C @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r4, 0x12]
- ldrh r2, [r0, 0x24]
- adds r1, r2
- movs r5, 0
- strh r1, [r0, 0x24]
- ldrh r0, [r4, 0xC]
- ldrh r1, [r4, 0x10]
- subs r0, r1
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0xC]
- adds r1, r2, 0
- bl obj_id_set_rotscale
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8078F9C
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0xE
- ldrsh r1, [r4, r2]
- cmp r0, r1
- blt _0812E798
- ldrh r1, [r4, 0x14]
- movs r2, 0x14
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _0812E780
- subs r0, r1, 0x1
- strh r0, [r4, 0x14]
- strh r5, [r4, 0xA]
- strh r5, [r4, 0x8]
- b _0812E798
- .align 2, 0
-_0812E77C: .4byte gSprites
-_0812E780:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0812E798
-_0812E788:
- ldrh r0, [r4, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8078F40
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_0812E798:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_812E638
-
- thumb_func_start sub_812E7A0
-sub_812E7A0: @ 812E7A0
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _0812E7BC @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _0812E7C4
- strh r0, [r4, 0x20]
- ldr r1, _0812E7C0 @ =gBattleAnimArgs
- ldrh r0, [r1]
- b _0812E7CE
- .align 2, 0
-_0812E7BC: .4byte gAnimBankAttacker
-_0812E7C0: .4byte gBattleAnimArgs
-_0812E7C4:
- movs r0, 0xF0
- strh r0, [r4, 0x20]
- ldr r1, _0812E7E8 @ =gBattleAnimArgs
- ldrh r0, [r1]
- subs r0, 0x1E
-_0812E7CE:
- strh r0, [r4, 0x22]
- ldrh r0, [r1, 0x4]
- strh r0, [r4, 0x32]
- ldrb r1, [r1, 0x2]
- adds r0, r4, 0
- bl StartSpriteAnim
- ldr r0, _0812E7EC @ =sub_812E7F0
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812E7E8: .4byte gBattleAnimArgs
-_0812E7EC: .4byte sub_812E7F0
- thumb_func_end sub_812E7A0
-
- thumb_func_start sub_812E7F0
-sub_812E7F0: @ 812E7F0
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- adds r0, 0x3
- strh r0, [r4, 0x2E]
- ldr r0, _0812E830 @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _0812E834
- ldrh r1, [r4, 0x20]
- adds r1, 0x5
- strh r1, [r4, 0x20]
- ldrh r0, [r4, 0x22]
- subs r0, 0x1
- strh r0, [r4, 0x22]
- lsls r1, 16
- asrs r1, 16
- cmp r1, 0xF0
- ble _0812E822
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0812E822:
- ldrh r1, [r4, 0x2E]
- movs r0, 0xFF
- ands r0, r1
- movs r1, 0x10
- bl Sin
- b _0812E858
- .align 2, 0
-_0812E830: .4byte gAnimBankAttacker
-_0812E834:
- ldrh r1, [r4, 0x20]
- subs r1, 0x5
- strh r1, [r4, 0x20]
- ldrh r0, [r4, 0x22]
- adds r0, 0x1
- strh r0, [r4, 0x22]
- lsls r1, 16
- cmp r1, 0
- bge _0812E84C
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0812E84C:
- ldrh r1, [r4, 0x2E]
- movs r0, 0xFF
- ands r0, r1
- movs r1, 0x10
- bl Cos
-_0812E858:
- strh r0, [r4, 0x26]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_812E7F0
-
- thumb_func_start sub_812E860
-sub_812E860: @ 812E860
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- ldr r0, _0812E8A8 @ =gTasks
- adds r4, r0
- movs r0, 0
- strh r0, [r4, 0x8]
- strh r0, [r4, 0xA]
- strh r0, [r4, 0xC]
- strh r0, [r4, 0xE]
- movs r0, 0x20
- strh r0, [r4, 0x20]
- movs r0, 0x40
- strh r0, [r4, 0x22]
- movs r0, 0x80
- lsls r0, 4
- strh r0, [r4, 0x24]
- ldr r0, _0812E8AC @ =gBattleAnimArgs
- ldrb r0, [r0]
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x26]
- movs r1, 0
- bl sub_8078E70
- ldr r0, _0812E8B0 @ =sub_812E8B4
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812E8A8: .4byte gTasks
-_0812E8AC: .4byte gBattleAnimArgs
-_0812E8B0: .4byte sub_812E8B4
- thumb_func_end sub_812E860
-
- thumb_func_start sub_812E8B4
-sub_812E8B4: @ 812E8B4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _0812E8E0 @ =gTasks
- adds r7, r0, r1
- movs r1, 0x8
- ldrsh r0, [r7, r1]
- mov r8, r0
- cmp r0, 0x1
- beq _0812E950
- cmp r0, 0x1
- bgt _0812E8E4
- cmp r0, 0
- beq _0812E8EC
- b _0812E9CA
- .align 2, 0
-_0812E8E0: .4byte gTasks
-_0812E8E4:
- mov r2, r8
- cmp r2, 0x2
- beq _0812E9B8
- b _0812E9CA
-_0812E8EC:
- movs r3, 0x80
- lsls r3, 2
- adds r0, r3, 0
- ldrh r1, [r7, 0xC]
- adds r2, r0, r1
- strh r2, [r7, 0xC]
- lsls r0, r2, 16
- asrs r0, 16
- ldrh r3, [r7, 0x24]
- mov r8, r3
- movs r3, 0x24
- ldrsh r1, [r7, r3]
- cmp r0, r1
- blt _0812E9CA
- mov r0, r8
- subs r5, r0, r2
- lsls r5, 16
- asrs r5, 16
- adds r6, r1, 0
- lsls r6, 1
- adds r0, r5, 0
- adds r1, r6, 0
- bl __divsi3
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- adds r1, r6, 0
- bl __modsi3
- lsls r0, 16
- lsrs r0, 16
- lsls r4, 16
- asrs r4, 16
- movs r1, 0x1
- ands r4, r1
- cmp r4, 0
- bne _0812E944
- lsls r0, 16
- asrs r0, 16
- mov r2, r8
- subs r0, r2, r0
- b _0812E9A2
-_0812E944:
- lsls r0, 16
- asrs r0, 16
- mov r3, r8
- subs r0, r3
- strh r0, [r7, 0xC]
- b _0812E9CA
-_0812E950:
- ldr r1, _0812E9A8 @ =0xfffffe00
- adds r0, r1, 0
- ldrh r2, [r7, 0xC]
- adds r1, r0, r2
- strh r1, [r7, 0xC]
- movs r3, 0xC
- ldrsh r0, [r7, r3]
- movs r2, 0x24
- ldrsh r6, [r7, r2]
- cmn r0, r6
- bgt _0812E9CA
- ldrh r3, [r7, 0x24]
- mov r9, r3
- mov r0, r9
- subs r4, r0, r1
- lsls r4, 16
- asrs r4, 16
- lsls r6, 1
- adds r0, r4, 0
- adds r1, r6, 0
- bl __divsi3
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r4, 0
- adds r1, r6, 0
- bl __modsi3
- lsls r0, 16
- lsrs r2, r0, 16
- mov r1, r8
- ands r1, r5
- lsls r0, r1, 16
- asrs r1, r0, 16
- cmp r1, 0
- bne _0812E9AC
- lsls r0, r2, 16
- asrs r0, 16
- mov r2, r9
- subs r0, r2
-_0812E9A2:
- strh r0, [r7, 0xC]
- strh r1, [r7, 0x8]
- b _0812E9CA
- .align 2, 0
-_0812E9A8: .4byte 0xfffffe00
-_0812E9AC:
- lsls r0, r2, 16
- asrs r0, 16
- mov r3, r9
- subs r0, r3, r0
- strh r0, [r7, 0xC]
- b _0812E9CA
-_0812E9B8:
- ldrh r0, [r7, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8078F40
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- b _0812EA40
-_0812E9CA:
- ldrh r0, [r7, 0x26]
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r7, 0xC]
- adds r1, r2, 0
- bl obj_id_set_rotscale
- ldrh r0, [r7, 0x26]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8078F9C
- ldr r2, _0812EA38 @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r7, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- movs r2, 0xC
- ldrsh r0, [r7, r2]
- cmp r0, 0
- bge _0812E9FE
- adds r0, 0x3F
-_0812E9FE:
- asrs r0, 6
- negs r0, r0
- strh r0, [r1, 0x24]
- ldrh r0, [r7, 0xA]
- adds r0, 0x1
- strh r0, [r7, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x8
- ble _0812EA40
- ldrh r1, [r7, 0x20]
- movs r3, 0x20
- ldrsh r0, [r7, r3]
- cmp r0, 0
- beq _0812EA3C
- subs r0, r1, 0x1
- strh r0, [r7, 0x20]
- ldrh r0, [r7, 0x24]
- ldrh r1, [r7, 0x22]
- subs r0, r1
- strh r0, [r7, 0x24]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xF
- bgt _0812EA40
- movs r0, 0x10
- strh r0, [r7, 0x24]
- b _0812EA40
- .align 2, 0
-_0812EA38: .4byte gSprites
-_0812EA3C:
- movs r0, 0x2
- strh r0, [r7, 0x8]
-_0812EA40:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_812E8B4
thumb_func_start sub_812EA4C
sub_812EA4C: @ 812EA4C
@@ -5332,13 +21,13 @@ sub_812EA4C: @ 812EA4C
ldr r4, _0812EAA8 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
@@ -5453,7 +142,7 @@ _0812EB4E:
strh r0, [r2, 0x1E]
mov r1, r8
ldrb r0, [r1]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r5, r0, 24
ldr r1, _0812EB8C @ =gTasks
@@ -5517,7 +206,7 @@ _0812EBC2:
cmp r0, 0
bne _0812EBE8
ldrb r0, [r6, 0x1E]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
lsls r2, r5, 4
cmp r0, 0
@@ -5895,13 +584,13 @@ sub_812EEA4: @ 812EEA4
ldr r5, _0812EEE0 @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x20]
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x22]
@@ -6045,7 +734,7 @@ sub_812EFC8: @ 812EFC8
lsrs r0, 24
str r0, [sp, 0x10]
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
bl IsContest
lsls r0, 24
cmp r0, 0
@@ -6065,13 +754,13 @@ _0812F000: .4byte gSharedMem + 0x19348
_0812F004:
ldr r0, _0812F070 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _0812F0AC
movs r0, 0
str r0, [sp, 0x14]
- ldr r6, _0812F074 @ =gBattlePartyID
+ ldr r6, _0812F074 @ =gBattlerPartyIndexes
ldr r4, _0812F078 @ =gAnimBankTarget
ldrb r0, [r4]
lsls r0, 1
@@ -6101,7 +790,7 @@ _0812F004:
cmp r0, 0
bne _0812F0A4
adds r0, r2, 0
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _0812F084
@@ -6114,7 +803,7 @@ _0812F004:
b _0812F092
.align 2, 0
_0812F070: .4byte gAnimBankAttacker
-_0812F074: .4byte gBattlePartyID
+_0812F074: .4byte gBattlerPartyIndexes
_0812F078: .4byte gAnimBankTarget
_0812F07C: .4byte gPlayerParty
_0812F080: .4byte gSharedMem + 0x17800
@@ -6143,7 +832,7 @@ _0812F0A6:
_0812F0AC:
movs r2, 0x1
str r2, [sp, 0x14]
- ldr r6, _0812F10C @ =gBattlePartyID
+ ldr r6, _0812F10C @ =gBattlerPartyIndexes
ldr r4, _0812F110 @ =gAnimBankTarget
ldrb r0, [r4]
lsls r0, 1
@@ -6173,7 +862,7 @@ _0812F0AC:
cmp r0, 0
bne _0812F138
adds r0, r2, 0
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _0812F120
@@ -6186,7 +875,7 @@ _0812F0AC:
adds r0, r1
b _0812F12C
.align 2, 0
-_0812F10C: .4byte gBattlePartyID
+_0812F10C: .4byte gBattlerPartyIndexes
_0812F110: .4byte gAnimBankTarget
_0812F114: .4byte gEnemyParty
_0812F118: .4byte gSharedMem + 0x17800
@@ -6219,13 +908,13 @@ _0812F13E:
ldr r5, _0812F21C @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
ldrb r0, [r5]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
mov r2, r10
lsls r1, r2, 16
@@ -6478,7 +1167,7 @@ _0812F342:
movs r0, 0x18
strh r0, [r4, 0x18]
adds r0, r5, 0
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -6503,12 +1192,12 @@ _0812F388:
strh r0, [r4, 0x24]
ldr r0, _0812F3C4 @ =gBattleAnimArgs
ldrb r0, [r0]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x26]
adds r0, r5, 0
- bl GetBankIdentity_permutated
+ bl GetBattlerPosition_permutated
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -6620,7 +1309,7 @@ sub_812F474: @ 812F474
ldr r1, _0812F4A8 @ =gTasks
adds r6, r0, r1
ldrb r0, [r6, 0x12]
- bl GetBankIdentity_permutated
+ bl GetBattlerPosition_permutated
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -6974,7 +1663,7 @@ sub_812F724: @ 812F724
strh r0, [r4, 0x8]
ldr r0, _0812F760 @ =gBattleAnimArgs
ldrb r0, [r0]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -7251,7 +1940,7 @@ sub_812F948: @ 812F948
bl StartSpriteAffineAnim
ldr r0, _0812F9A4 @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _0812F96E
@@ -7262,7 +1951,7 @@ _0812F96E:
ldr r4, _0812F9A8 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r6, 0x2]
@@ -7270,7 +1959,7 @@ _0812F96E:
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r6, [r6, 0x4]
@@ -7696,7 +2385,7 @@ sub_812FC68: @ 812FC68
strh r0, [r4, 0x14]
_0812FCAC:
ldrb r0, [r2]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _0812FCDC
@@ -7833,13 +2522,13 @@ _0812FDC2:
ldrb r4, [r0]
adds r0, r4, 0
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x10]
adds r0, r4, 0
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x12]
@@ -7850,7 +2539,7 @@ _0812FDC2:
strh r0, [r5, 0x14]
ldr r0, _0812FE14 @ =gBattleAnimArgs
ldrb r0, [r0]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -8123,7 +2812,7 @@ sub_812FFE4: @ 812FFE4
ldrh r0, [r1, 0x2]
strh r0, [r4, 0xA]
ldrb r0, [r1]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
ldr r2, _08130034 @ =gSprites
@@ -8250,7 +2939,7 @@ sub_81300F4: @ 81300F4
adds r5, r0, 0
ldr r6, _0813014C @ =gAnimBankAttacker
ldrb r0, [r6]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -8262,7 +2951,7 @@ sub_81300F4: @ 81300F4
_08130110:
ldrb r0, [r6]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
ldr r4, _08130150 @ =gBattleAnimArgs
lsrs r0, 24
@@ -8271,7 +2960,7 @@ _08130110:
strh r0, [r5, 0x20]
ldrb r0, [r6]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x2]
@@ -8315,7 +3004,7 @@ _08130172:
_08130180:
ldr r0, _081301AC @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _081301A0
@@ -8404,13 +3093,13 @@ _0813021C:
_08130226:
ldr r5, _0813025C @ =gAnimBankAttacker
ldrb r0, [r5]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _08130260
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
ldrb r0, [r5]
movs r1, 0
@@ -8431,7 +3120,7 @@ _0813025C: .4byte gAnimBankAttacker
_08130260:
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
ldrb r0, [r5]
movs r1, 0
@@ -8451,7 +3140,7 @@ _08130284:
ldr r5, _081302D8 @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
ldrb r0, [r5]
movs r1, 0
@@ -8470,13 +3159,13 @@ _081302A8:
ldr r4, _081302DC @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x22]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x24]
@@ -8840,14 +3529,14 @@ sub_8130554: @ 8130554
mov r10, r0
ldrb r0, [r0]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r7, 0x1E]
mov r1, r10
ldrb r0, [r1]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r7, 0x20]
@@ -8855,14 +3544,14 @@ sub_8130554: @ 8130554
mov r8, r0
ldrb r0, [r0]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r7, 0x22]
mov r1, r8
ldrb r0, [r1]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
mov r1, r8
ldrb r0, [r1]
@@ -8942,7 +3631,7 @@ _081305C6:
bl InitAnimSpriteTranslationOverDuration
mov r1, r10
ldrb r0, [r1]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -9163,7 +3852,7 @@ _081307FC:
strh r1, [r4, 0x3C]
adds r0, r5, 0
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x22]
@@ -9336,7 +4025,7 @@ _08130934:
ldrh r0, [r2, 0x2]
strh r0, [r4, 0x8]
ldrb r0, [r2]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -9470,7 +4159,7 @@ _08130A48:
_08130A4A:
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
@@ -9858,7 +4547,7 @@ sub_8130D20: @ 8130D20
ldr r0, _08130D7C @ =gTasks
adds r6, r1, r0
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x26]
@@ -9874,7 +4563,7 @@ sub_8130D20: @ 8130D20
ldr r5, _08130D80 @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
@@ -9882,7 +4571,7 @@ sub_8130D20: @ 8130D20
movs r0, 0x2
eors r0, r1
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -9900,7 +4589,7 @@ _08130D88: .4byte 0x0000ffff
_08130D8C:
ldr r0, _08130DA0 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _08130DA8
@@ -10165,7 +4854,7 @@ _08130F82:
ldrh r0, [r4, 0x3C]
lsls r0, 24
lsrs r0, 24
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -10323,14 +5012,14 @@ _081310C4:
lsls r0, 24
lsrs r0, 24
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r5, r0, 24
ldrh r0, [r4, 0x3C]
lsls r0, 24
lsrs r0, 24
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r1, r0, 24
_081310E4:
@@ -10547,12 +5236,12 @@ sub_8131264: @ 8131264
ldr r4, _081312A0 @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
ldrb r0, [r4]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _08131290
@@ -10614,7 +5303,7 @@ sub_81312E4: @ 81312E4
lsls r0, 24
lsrs r6, r0, 24
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r5, r0, 24
adds r2, r5, 0
@@ -10755,7 +5444,7 @@ sub_8131408: @ 8131408
lsls r0, 24
lsrs r6, r0, 24
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r3, r0, 24
ldr r1, _08131434 @ =gTasks
@@ -10933,7 +5622,7 @@ sub_8131564: @ 8131564
adds r5, r0, 0
ldr r4, _08131588 @ =gAnimBankTarget
ldrb r0, [r4]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _08131590
@@ -10960,7 +5649,7 @@ _081315A0:
ldr r0, _081315C0 @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
@@ -11473,7 +6162,7 @@ _0813197C:
.4byte _08131DC4
_08131990:
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r7, r0, 24
ldr r1, _081319DC @ =gTasks
@@ -11490,7 +6179,7 @@ _08131990:
strh r0, [r6, 0xA]
ldr r0, _081319E0 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
mov r9, r4
cmp r0, 0
@@ -11582,11 +6271,11 @@ _08131A70: .4byte gAnimBankAttacker
_08131A74:
ldr r4, _08131AD4 @ =gAnimBankAttacker
ldrb r0, [r4]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _08131B10
- ldr r7, _08131AD8 @ =gBattlePartyID
+ ldr r7, _08131AD8 @ =gBattlerPartyIndexes
ldrb r0, [r4]
lsls r0, 1
adds r0, r7
@@ -11626,14 +6315,14 @@ _08131A74:
b _08131AE6
.align 2, 0
_08131AD4: .4byte gAnimBankAttacker
-_08131AD8: .4byte gBattlePartyID
+_08131AD8: .4byte gBattlerPartyIndexes
_08131ADC: .4byte gPlayerParty
_08131AE0: .4byte gSharedMem + 0x17800
_08131AE4:
ldrh r5, [r1, 0x2]
_08131AE6:
movs r0, 0x1
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
ldr r2, _08131B0C @ =gSprites
lsls r0, 24
lsrs r0, 24
@@ -11653,7 +6342,7 @@ _08131AE6:
.align 2, 0
_08131B0C: .4byte gSprites
_08131B10:
- ldr r7, _08131B64 @ =gBattlePartyID
+ ldr r7, _08131B64 @ =gBattlerPartyIndexes
ldrb r0, [r4]
lsls r0, 1
adds r0, r7
@@ -11692,14 +6381,14 @@ _08131B10:
lsrs r5, r0, 16
b _08131B72
.align 2, 0
-_08131B64: .4byte gBattlePartyID
+_08131B64: .4byte gBattlerPartyIndexes
_08131B68: .4byte gEnemyParty
_08131B6C: .4byte gSharedMem + 0x17800
_08131B70:
ldrh r5, [r1, 0x2]
_08131B72:
movs r0, 0x1
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
ldr r2, _08131C04 @ =gSprites
lsls r0, 24
lsrs r0, 24
@@ -11719,7 +6408,7 @@ _08131B94:
ldr r0, _08131C0C @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
lsls r3, r6, 16
@@ -11795,7 +6484,7 @@ _08131C20:
strh r0, [r6, 0xA]
ldr r0, _08131C70 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
mov r9, r4
cmp r0, 0
@@ -11852,7 +6541,7 @@ _08131C8E:
bne _08131D0E
ldr r0, _08131CE4 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _08131CEC
@@ -11861,7 +6550,7 @@ _08131C8E:
ldr r0, _08131CE8 @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -11878,7 +6567,7 @@ _08131CEC:
ldr r0, _08131D30 @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -11916,7 +6605,7 @@ _08131D38: .4byte 0x0000ffff
_08131D3C: .4byte gTasks
_08131D40:
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r7, r0, 24
ldr r1, _08131D8C @ =gTasks
@@ -11936,7 +6625,7 @@ _08131D40:
bl sub_807A0F4
ldr r0, _08131D94 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
mov r9, r4
cmp r0, 0
@@ -11980,7 +6669,7 @@ _08131DB6:
_08131DC0: .4byte gTasks
_08131DC4:
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r7, r0, 24
ldr r1, _08131E38 @ =gTasks
@@ -11999,7 +6688,7 @@ _08131DC4:
mov r10, r0
ldrb r0, [r0]
str r2, [sp, 0x10]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
mov r9, r4
ldr r2, [sp, 0x10]
@@ -12024,7 +6713,7 @@ _08131DC4:
mov r1, r10
ldrb r0, [r1]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r3, r5, 0
@@ -12057,7 +6746,7 @@ _08131E44:
mov r2, r10
ldrb r0, [r2]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r3, r5, 0
@@ -12126,7 +6815,7 @@ _08131ECA:
ldr r0, _08131F54 @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r0, 0x10
@@ -12145,7 +6834,7 @@ _08131ECA:
strb r0, [r2]
ldr r0, _08131F5C @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -12155,7 +6844,7 @@ _08131ECA:
cmp r0, 0
bne _08131FF4
movs r0, 0x1
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
ldr r2, _08131F60 @ =gSprites
lsls r0, 24
lsrs r0, 24
@@ -12219,7 +6908,7 @@ _08131FA6:
strh r0, [r4, 0x32]
ldr r0, _08131FD0 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _08131FD4
@@ -12292,14 +6981,14 @@ _08132040:
ldr r0, _08132084 @ =gAnimBankAttacker
ldrb r0, [r0]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r5, r0, 0
ldr r0, _08132088 @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r2, r0, 0
@@ -12473,14 +7162,14 @@ sub_813219C: @ 813219C
ldr r0, _08132204 @ =gTasks
adds r4, r1, r0
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
movs r5, 0
strh r0, [r4, 0xE]
ldr r0, _08132208 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
movs r2, 0x1
negs r2, r2
@@ -12663,7 +7352,7 @@ sub_8132318: @ 8132318
adds r4, r0, 0
ldr r0, _0813236C @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
ldrh r0, [r4, 0x2E]
ldrh r1, [r4, 0x30]
@@ -12707,7 +7396,7 @@ sub_8132370: @ 8132370
adds r4, r0, 0
ldr r0, _081323A8 @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _081323B4
@@ -12764,7 +7453,7 @@ sub_81323E0: @ 81323E0
ldr r4, _08132424 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
@@ -12996,7 +7685,7 @@ sub_813257C: @ 813257C
strh r0, [r4, 0x8]
ldr r0, _081325B8 @ =gBattleAnimArgs
ldrb r0, [r0]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
diff --git a/asm/battle_anim_813F0F4.s b/asm/battle_anim_813F0F4.s
index a2e942ec9..df39aef31 100644
--- a/asm/battle_anim_813F0F4.s
+++ b/asm/battle_anim_813F0F4.s
@@ -915,11 +915,11 @@ sub_813F844: @ 813F844
adds r1, r0, r1
ldrb r1, [r1]
mov r9, r1
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _0813F88C
- ldr r1, _0813F884 @ =gBattlePartyID
+ ldr r1, _0813F884 @ =gBattlerPartyIndexes
ldrb r0, [r4]
lsls r0, 1
adds r0, r1
@@ -931,10 +931,10 @@ sub_813F844: @ 813F844
.align 2, 0
_0813F87C: .4byte gBankSpriteIds
_0813F880: .4byte gAnimBankAttacker
-_0813F884: .4byte gBattlePartyID
+_0813F884: .4byte gBattlerPartyIndexes
_0813F888: .4byte gPlayerParty
_0813F88C:
- ldr r1, _0813F8CC @ =gBattlePartyID
+ ldr r1, _0813F8CC @ =gBattlerPartyIndexes
ldrb r0, [r4]
lsls r0, 1
adds r0, r1
@@ -965,20 +965,20 @@ _0813F89C:
beq _0813F958
b _0813F982
.align 2, 0
-_0813F8CC: .4byte gBattlePartyID
+_0813F8CC: .4byte gBattlerPartyIndexes
_0813F8D0: .4byte gEnemyParty
_0813F8D4: .4byte gTasks
_0813F8D8:
ldr r5, _0813F950 @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
ldrb r0, [r5]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r1, r0, 0
lsls r1, 24
ldr r2, _0813F954 @ =gSprites
@@ -1238,14 +1238,14 @@ sub_813FA94: @ 813FA94
mov r8, r2
ldrb r0, [r2]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x30]
mov r1, r8
ldrb r0, [r1]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
subs r0, 0x10
@@ -1366,7 +1366,7 @@ _0813FBE0:
lsls r4, 24
lsrs r4, 24
movs r0, 0x1
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
lsls r0, 24
lsrs r0, 24
bl sub_8079E90
@@ -1400,14 +1400,14 @@ _0813FBE0:
mov r8, r1
ldrb r0, [r1]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r6, 0x30]
mov r1, r8
ldrb r0, [r1]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
subs r0, 0x10
@@ -1418,7 +1418,7 @@ _0813FBE0:
ldr r0, _0813FCAC @ =SpriteCallbackDummy
str r0, [r4]
movs r0, 0
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
ldr r1, _0813FCB0 @ =gBankSpriteIds
lsls r0, 24
lsrs r0, 24
@@ -1462,7 +1462,7 @@ sub_813FCBC: @ 813FCBC
lsrs r5, r0, 24
ldr r6, _0813FD1C @ =gSprites
movs r0, 0
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
ldr r1, _0813FD20 @ =gBankSpriteIds
lsls r0, 24
lsrs r0, 24
@@ -1519,7 +1519,7 @@ sub_813FD34: @ 813FD34
lsrs r5, r0, 24
ldr r6, _0813FD88 @ =gSprites
movs r0, 0
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
ldr r4, _0813FD8C @ =gBankSpriteIds
lsls r0, 24
lsrs r0, 24
@@ -1535,7 +1535,7 @@ sub_813FD34: @ 813FD34
cmp r0, 0
bge _0813FD80
movs r0, 0
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
lsls r0, 24
lsrs r0, 24
adds r0, r4
@@ -4619,7 +4619,7 @@ _08141562:
adds r0, r4
strh r0, [r5, 0x8]
ldrb r0, [r3]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _081415A4
@@ -4697,7 +4697,7 @@ _08141606:
adds r0, r2
strh r0, [r5, 0x8]
ldrb r0, [r3]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _0814163C
@@ -4739,7 +4739,7 @@ _08141654:
strh r1, [r0, 0x8]
ldr r0, _08141690 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
lsrs r2, r0, 24
cmp r2, 0
@@ -4817,7 +4817,7 @@ _081416EC:
_081416F2:
ldr r0, _08141708 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl GetBattlerPosition_permutated
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -5124,12 +5124,12 @@ _08141966:
ldrb r0, [r4, 0x8]
mov r8, r0
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r5, r0, 24
mov r0, r8
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r2, r0, 24
movs r1, 0x1E
@@ -5247,7 +5247,7 @@ _08141A44:
cmp r0, 0
bne _08141A8C
mov r0, r8
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
movs r1, 0x3F
cmp r0, 0
@@ -5483,11 +5483,11 @@ sub_8141C30: @ 8141C30
movs r0, 0x1E
strh r0, [r4, 0x2E]
movs r0, 0x1
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
lsls r0, 24
lsrs r0, 24
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
ldr r5, _08141CA4 @ =gBattleAnimArgs
lsrs r0, 24
@@ -5495,11 +5495,11 @@ sub_8141C30: @ 8141C30
adds r0, r1
strh r0, [r4, 0x32]
movs r0, 0x1
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
lsls r0, 24
lsrs r0, 24
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r5, [r5, 0x6]
@@ -5644,11 +5644,11 @@ sub_8141D7C: @ 8141D7C
lsls r4, 24
lsrs r4, 24
movs r0, 0
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
ldr r1, _08141DA4 @ =gAnimBankAttacker
strb r0, [r1]
movs r0, 0x1
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
ldr r1, _08141DA8 @ =gAnimBankTarget
strb r0, [r1]
adds r0, r4, 0
diff --git a/asm/contest_effect.s b/asm/contest_effect.s
deleted file mode 100644
index 341cb0903..000000000
--- a/asm/contest_effect.s
+++ /dev/null
@@ -1,2941 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "include/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start AreMovesContestCombo
-AreMovesContestCombo: @ 80B7D24
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 16
- lsls r1, 16
- ldr r2, _080B7D78 @ =gContestMoves
- lsrs r0, 13
- adds r0, r2
- ldrb r4, [r0, 0x2]
- mov r3, sp
- lsrs r1, 13
- adds r1, r2
- ldrb r0, [r1, 0x3]
- strb r0, [r3]
- mov r2, sp
- ldrb r0, [r1, 0x4]
- strb r0, [r2, 0x1]
- ldrb r0, [r1, 0x5]
- strb r0, [r2, 0x2]
- mov r0, sp
- ldrb r1, [r1, 0x6]
- strb r1, [r0, 0x3]
- cmp r4, 0
- beq _080B7D80
- mov r0, sp
- ldrb r0, [r0]
- cmp r4, r0
- beq _080B7D6E
- mov r0, sp
- ldrb r0, [r0, 0x1]
- cmp r4, r0
- beq _080B7D6E
- mov r0, sp
- ldrb r0, [r0, 0x2]
- cmp r4, r0
- beq _080B7D6E
- cmp r4, r1
- bne _080B7D80
-_080B7D6E:
- ldr r0, _080B7D7C @ =gComboStarterLookupTable
- adds r0, r4, r0
- ldrb r0, [r0]
- b _080B7D82
- .align 2, 0
-_080B7D78: .4byte gContestMoves
-_080B7D7C: .4byte gComboStarterLookupTable
-_080B7D80:
- movs r0, 0
-_080B7D82:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end AreMovesContestCombo
-
- thumb_func_start ContestEffect_00
-ContestEffect_00: @ 80B7D8C
- bx lr
- thumb_func_end ContestEffect_00
-
- thumb_func_start ContestEffect_01
-ContestEffect_01: @ 80B7D90
- push {lr}
- ldr r3, _080B7DB8 @ =gSharedMem + 0x192D0
- ldrb r1, [r3, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r3, 0
- subs r1, 0x70
- adds r0, r1
- ldrb r1, [r0, 0x10]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0, 0x10]
- ldrb r0, [r3, 0x11]
- movs r1, 0
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B7DB8: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_01
-
- thumb_func_start ContestEffect_02
-ContestEffect_02: @ 80B7DBC
- push {lr}
- ldr r3, _080B7DE4 @ =gSharedMem + 0x192D0
- ldrb r1, [r3, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r3, 0
- subs r1, 0x70
- adds r0, r1
- ldrb r1, [r0, 0x11]
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0, 0x11]
- ldrb r0, [r3, 0x11]
- movs r1, 0x1
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B7DE4: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_02
-
- thumb_func_start ContestEffect_03
-ContestEffect_03: @ 80B7DE8
- push {r4,lr}
- ldr r3, _080B7E30 @ =gSharedMem + 0x192D0
- ldrb r1, [r3, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r4, r3, 0
- subs r4, 0x70
- adds r0, r4
- ldrb r1, [r0, 0x10]
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0, 0x10]
- ldrb r0, [r3, 0x11]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0x15]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x15]
- ldrb r0, [r3, 0x11]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r2, [r1, 0xB]
- movs r0, 0x71
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0xB]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7E30: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_03
-
- thumb_func_start ContestEffect_04
-ContestEffect_04: @ 80B7E34
- push {lr}
- ldr r2, _080B7E58 @ =gSharedMem + 0x192D0
- ldrb r1, [r2, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r2, 0
- subs r1, 0x70
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0, 0x12]
- ldrb r0, [r2, 0x11]
- movs r1, 0x2
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B7E58: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_04
-
- thumb_func_start ContestEffect_05
-ContestEffect_05: @ 80B7E5C
- push {lr}
- ldr r3, _080B7E84 @ =gSharedMem + 0x192D0
- ldrb r1, [r3, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r3, 0
- subs r1, 0x70
- adds r0, r1
- ldrb r1, [r0, 0x10]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0, 0x10]
- ldrb r0, [r3, 0x11]
- movs r1, 0x3
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B7E84: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_05
-
- thumb_func_start ContestEffect_06
-ContestEffect_06: @ 80B7E88
- push {lr}
- ldr r2, _080B7EAC @ =gSharedMem + 0x192D0
- ldrb r1, [r2, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r2, 0
- subs r1, 0x70
- adds r0, r1
- movs r1, 0x14
- strb r1, [r0, 0xF]
- ldrb r0, [r2, 0x11]
- movs r1, 0x4
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B7EAC: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_06
-
- thumb_func_start ContestEffect_07
-ContestEffect_07: @ 80B7EB0
- push {lr}
- ldr r3, _080B7ED8 @ =gSharedMem + 0x192D0
- ldrb r1, [r3, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r3, 0
- subs r1, 0x70
- adds r0, r1
- ldrb r1, [r0, 0x10]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0, 0x10]
- ldrb r0, [r3, 0x11]
- movs r1, 0x5
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B7ED8: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_07
-
- thumb_func_start ContestEffect_08
-ContestEffect_08: @ 80B7EDC
- push {r4,lr}
- movs r2, 0
- ldr r3, _080B7F38 @ =gSharedMem + 0x192D0
- ldrb r0, [r3, 0x11]
- adds r1, r0, r3
- ldrb r0, [r1]
- cmp r0, 0
- beq _080B7F1A
- subs r0, 0x1
- ldrb r4, [r3]
- cmp r0, r4
- beq _080B7F0A
- adds r4, r3, 0
- adds r3, r1, 0
-_080B7EF8:
- adds r2, 0x1
- cmp r2, 0x3
- bgt _080B7F0A
- ldrb r0, [r3]
- subs r0, 0x1
- adds r1, r2, r4
- ldrb r1, [r1]
- cmp r0, r1
- bne _080B7EF8
-_080B7F0A:
- ldr r1, _080B7F38 @ =gSharedMem + 0x192D0
- strb r2, [r1, 0x8]
- movs r0, 0xFF
- strb r0, [r1, 0x9]
- bl sub_80B9120
- lsls r0, 24
- lsrs r2, r0, 24
-_080B7F1A:
- cmp r2, 0
- bne _080B7F28
- ldr r0, _080B7F38 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B7F28:
- ldr r0, _080B7F38 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7F38: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_08
-
- thumb_func_start ContestEffect_09
-ContestEffect_09: @ 80B7F3C
- push {r4-r6,lr}
- movs r2, 0
- ldr r1, _080B7F9C @ =gSharedMem + 0x192D0
- ldrb r0, [r1, 0x11]
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0
- beq _080B7F7C
- movs r3, 0
- adds r5, r1, 0
- adds r6, r5, 0
- adds r6, 0x8
-_080B7F54:
- adds r1, r2, r5
- ldrb r0, [r4]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080B7F64
- adds r0, r3, r6
- strb r2, [r0]
- adds r3, 0x1
-_080B7F64:
- adds r2, 0x1
- cmp r2, 0x3
- ble _080B7F54
- ldr r0, _080B7F9C @ =gSharedMem + 0x192D0
- adds r0, 0x8
- adds r0, r3, r0
- movs r1, 0xFF
- strb r1, [r0]
- bl sub_80B9120
- lsls r0, 24
- lsrs r2, r0, 24
-_080B7F7C:
- cmp r2, 0
- bne _080B7F8A
- ldr r0, _080B7F9C @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B7F8A:
- ldr r0, _080B7F9C @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7F9C: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_09
-
- thumb_func_start ContestEffect_14
-ContestEffect_14: @ 80B7FA0
- push {lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x14
- cmp r0, 0x1
- bls _080B7FC2
- movs r1, 0x3C
- cmp r0, 0x7
- bhi _080B7FC2
- movs r1, 0x28
-_080B7FC2:
- ldr r0, _080B7FD0 @ =gSharedMem + 0x192D0
- strh r1, [r0, 0x4]
- bl ContestEffect_08
- pop {r0}
- bx r0
- .align 2, 0
-_080B7FD0: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_14
-
- thumb_func_start ContestEffect_15
-ContestEffect_15: @ 80B7FD4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r7, 0
- ldr r0, _080B806C @ =gSharedMem + 0x192D0
- ldrb r6, [r0, 0x11]
- adds r1, r6, r0
- ldrb r1, [r1]
- mov r8, r0
- cmp r1, 0
- beq _080B804A
- movs r5, 0
- mov r4, r8
-_080B7FEE:
- adds r0, r6, r4
- adds r1, r5, r4
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080B8044
- strb r5, [r4, 0x8]
- movs r0, 0xFF
- strb r0, [r4, 0x9]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0
- beq _080B8032
- movs r1, 0xA
- cmp r0, 0x2
- bls _080B8032
- movs r1, 0x14
- cmp r0, 0x4
- bls _080B8032
- movs r1, 0x1E
- cmp r0, 0x6
- bls _080B8032
- movs r1, 0x3C
- cmp r0, 0x8
- bhi _080B8032
- movs r1, 0x28
-_080B8032:
- strh r1, [r4, 0x4]
- bl sub_80B9120
- lsls r0, 24
- cmp r0, 0
- beq _080B8044
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
-_080B8044:
- adds r5, 0x1
- cmp r5, 0x3
- ble _080B7FEE
-_080B804A:
- mov r1, r8
- ldrb r0, [r1, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- cmp r7, 0
- bne _080B8062
- mov r1, r8
- ldrb r0, [r1, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B8062:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B806C: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_15
-
- thumb_func_start ContestEffect_16
-ContestEffect_16: @ 80B8070
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r0, 0
- mov r9, r0
- ldr r0, _080B8108 @ =gSharedMem + 0x192D0
- ldrb r7, [r0, 0x11]
- adds r1, r7, r0
- ldrb r1, [r1]
- mov r10, r0
- cmp r1, 0
- beq _080B80E0
- movs r6, 0
- mov r8, r10
- mov r5, r10
- subs r5, 0x5B
-_080B8094:
- mov r1, r8
- adds r0, r7, r1
- adds r1, r6, r1
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080B80D8
- ldrb r1, [r5]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080B80D8
- lsls r0, r6, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_80B90C0
- lsls r0, 24
- cmp r0, 0
- beq _080B80D8
- ldrb r0, [r5]
- movs r2, 0x11
- negs r2, r2
- adds r1, r2, 0
- ands r0, r1
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r5]
- adds r0, r4, 0
- movs r1, 0x8
- bl sub_80B13EC
- movs r0, 0x1
- mov r9, r0
-_080B80D8:
- adds r5, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _080B8094
-_080B80E0:
- mov r1, r10
- ldrb r0, [r1, 0x11]
- movs r1, 0x7
- bl sub_80B13EC
- mov r2, r9
- cmp r2, 0
- bne _080B80FA
- mov r1, r10
- ldrb r0, [r1, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B80FA:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B8108: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_16
-
- thumb_func_start ContestEffect_17
-ContestEffect_17: @ 80B810C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r0, 0
- mov r9, r0
- ldr r0, _080B8150 @ =gSharedMem + 0x192D0
- ldrb r1, [r0, 0x11]
- mov r8, r1
- adds r1, r0
- ldrb r1, [r1]
- adds r6, r0, 0
- cmp r1, 0
- beq _080B817C
- movs r5, 0
- adds r4, r6, 0
- movs r7, 0
-_080B812E:
- mov r2, r8
- adds r0, r2, r4
- adds r1, r5, r4
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080B8172
- adds r0, r6, 0
- subs r0, 0x70
- adds r0, r7, r0
- ldrb r1, [r0, 0x15]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080B8154
- movs r0, 0x32
- b _080B8156
- .align 2, 0
-_080B8150: .4byte gSharedMem + 0x192D0
-_080B8154:
- movs r0, 0xA
-_080B8156:
- strh r0, [r4, 0x4]
- strb r5, [r4, 0x8]
- movs r0, 0xFF
- strb r0, [r4, 0x9]
- bl sub_80B9120
- lsls r0, 24
- cmp r0, 0
- beq _080B8172
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
-_080B8172:
- adds r7, 0x1C
- adds r5, 0x1
- ldr r6, _080B81A0 @ =gSharedMem + 0x192D0
- cmp r5, 0x3
- ble _080B812E
-_080B817C:
- ldrb r0, [r6, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- mov r0, r9
- cmp r0, 0
- bne _080B8192
- ldrb r0, [r6, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B8192:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B81A0: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_17
-
- thumb_func_start ContestEffect_18
-ContestEffect_18: @ 80B81A4
- push {r4,lr}
- ldr r4, _080B81D0 @ =gSharedMem + 0x192D0
- ldrb r1, [r4, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r4, 0
- subs r1, 0x70
- adds r0, r1
- ldrb r1, [r0, 0x11]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0, 0x11]
- bl ContestEffect_09
- ldrb r0, [r4, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B81D0: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_18
-
- thumb_func_start ContestEffect_19
-ContestEffect_19: @ 80B81D4
- push {r4,lr}
- ldr r4, _080B8208 @ =gSharedMem + 0x192D0
- ldrb r1, [r4, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r4, 0
- subs r1, 0x70
- adds r0, r1
- ldrh r0, [r0, 0x6]
- ldr r1, _080B820C @ =gContestMoves
- lsls r0, 3
- adds r0, r1
- ldrb r0, [r0, 0x1]
- lsls r0, 29
- lsrs r0, 29
- bl sub_80B9038
- ldrb r0, [r4, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B8208: .4byte gSharedMem + 0x192D0
-_080B820C: .4byte gContestMoves
- thumb_func_end ContestEffect_19
-
- thumb_func_start ContestEffect_20
-ContestEffect_20: @ 80B8210
- push {lr}
- movs r0, 0
- bl sub_80B9038
- ldr r0, _080B8228 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B8228: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_20
-
- thumb_func_start ContestEffect_21
-ContestEffect_21: @ 80B822C
- push {lr}
- movs r0, 0x1
- bl sub_80B9038
- ldr r0, _080B8244 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B8244: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_21
-
- thumb_func_start ContestEffect_22
-ContestEffect_22: @ 80B8248
- push {lr}
- movs r0, 0x2
- bl sub_80B9038
- ldr r0, _080B8260 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B8260: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_22
-
- thumb_func_start ContestEffect_23
-ContestEffect_23: @ 80B8264
- push {lr}
- movs r0, 0x3
- bl sub_80B9038
- ldr r0, _080B827C @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B827C: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_23
-
- thumb_func_start ContestEffect_24
-ContestEffect_24: @ 80B8280
- push {lr}
- movs r0, 0x4
- bl sub_80B9038
- ldr r0, _080B8298 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r0}
- bx r0
- .align 2, 0
-_080B8298: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_24
-
- thumb_func_start ContestEffect_25
-ContestEffect_25: @ 80B829C
- push {r4-r7,lr}
- movs r4, 0
- ldr r0, _080B82E0 @ =gSharedMem + 0x192D0
- ldrb r1, [r0, 0x11]
- adds r1, r0
- ldrb r1, [r1]
- adds r7, r0, 0
- cmp r1, 0x3
- beq _080B82F4
- movs r5, 0
- adds r6, r7, 0
-_080B82B2:
- ldrb r0, [r6, 0x11]
- adds r0, r6
- ldrb r0, [r0]
- adds r0, 0x1
- adds r1, r5, r6
- ldrb r1, [r1]
- cmp r0, r1
- bne _080B82EE
- lsls r0, r5, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_80B90C0
- lsls r0, 24
- cmp r0, 0
- beq _080B82E4
- adds r0, r4, 0
- bl sub_80B157C
- adds r0, r4, 0
- movs r1, 0xA
- b _080B82E8
- .align 2, 0
-_080B82E0: .4byte gSharedMem + 0x192D0
-_080B82E4:
- adds r0, r4, 0
- movs r1, 0x3C
-_080B82E8:
- bl sub_80B13EC
- movs r4, 0x1
-_080B82EE:
- adds r5, 0x1
- cmp r5, 0x3
- ble _080B82B2
-_080B82F4:
- ldrb r0, [r7, 0x11]
- movs r1, 0x9
- bl sub_80B13EC
- cmp r4, 0
- bne _080B8308
- ldrb r0, [r7, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B8308:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_25
-
- thumb_func_start ContestEffect_26
-ContestEffect_26: @ 80B8310
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x1C
- movs r0, 0
- mov r9, r0
- movs r1, 0
- str r1, [sp, 0x18]
- mov r0, sp
- movs r1, 0xFF
- movs r2, 0x5
- bl memset
- movs r6, 0
- movs r4, 0
- add r2, sp, 0x10
- mov r8, r2
- add r3, sp, 0x8
- mov r10, r3
- ldr r5, _080B8384 @ =gSharedMem + 0x192D0
- adds r7, r5, 0
- subs r7, 0x70
-_080B8340:
- ldrb r0, [r5, 0x11]
- adds r0, r5
- adds r1, r6, r5
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bcs _080B836E
- ldrb r1, [r7, 0xC]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080B836E
- lsls r0, r6, 24
- lsrs r0, 24
- bl Contest_IsMonsTurnDisabled
- lsls r0, 24
- cmp r0, 0
- bne _080B836E
- mov r1, sp
- adds r0, r1, r4
- strb r6, [r0]
- adds r4, 0x1
-_080B836E:
- adds r7, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _080B8340
- cmp r4, 0x1
- bne _080B8388
- movs r0, 0x3C
- mov r2, r8
- strh r0, [r2]
- b _080B83B6
- .align 2, 0
-_080B8384: .4byte gSharedMem + 0x192D0
-_080B8388:
- cmp r4, 0x2
- bne _080B8396
- movs r0, 0x1E
- mov r3, r8
- strh r0, [r3]
- strh r0, [r3, 0x2]
- b _080B83B6
-_080B8396:
- cmp r4, 0x3
- bne _080B83A6
- movs r0, 0x14
- mov r7, r8
- strh r0, [r7]
- strh r0, [r7, 0x2]
- strh r0, [r7, 0x4]
- b _080B83B6
-_080B83A6:
- mov r1, r8
- movs r2, 0
- mov r0, r8
- adds r0, 0x6
-_080B83AE:
- strh r2, [r0]
- subs r0, 0x2
- cmp r0, r1
- bge _080B83AE
-_080B83B6:
- movs r6, 0
- movs r7, 0
- mov r4, r10
-_080B83BC:
- ldr r0, _080B83F0 @ =gSharedMem + 0x19260
- adds r5, r7, r0
- ldrb r1, [r5, 0x15]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080B83FC
- lsls r0, r6, 24
- lsrs r0, 24
- bl sub_80B214C
- lsls r0, 24
- cmp r0, 0
- beq _080B83FC
- ldr r1, _080B83F4 @ =gContestMoves
- ldrh r0, [r5, 0x8]
- lsls r0, 3
- adds r0, r1
- ldrb r0, [r0, 0x2]
- ldr r1, _080B83F8 @ =gComboStarterLookupTable
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 1
- b _080B83FE
- .align 2, 0
-_080B83F0: .4byte gSharedMem + 0x19260
-_080B83F4: .4byte gContestMoves
-_080B83F8: .4byte gComboStarterLookupTable
-_080B83FC:
- movs r0, 0
-_080B83FE:
- strh r0, [r4]
- ldr r5, _080B8494 @ =gSharedMem + 0x19260
- adds r0, r7, r5
- ldrb r0, [r0, 0xD]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0xA
- bl __divsi3
- lsls r0, 24
- asrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 1
- ldrh r0, [r4]
- subs r0, r1
- strh r0, [r4]
- adds r7, 0x1C
- adds r4, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _080B83BC
- mov r2, r8
- movs r3, 0
- ldrsh r0, [r2, r3]
- cmp r0, 0
- beq _080B84CA
- movs r6, 0
- mov r0, sp
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _080B84CA
- adds r5, 0x7D
- mov r4, sp
-_080B8442:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- lsls r1, r6, 1
- add r1, r8
- movs r7, 0
- ldrsh r2, [r1, r7]
- ldrb r3, [r4]
- lsls r1, r3, 1
- add r1, r10
- movs r7, 0
- ldrsh r1, [r1, r7]
- adds r2, r1
- cmp r0, r2
- bge _080B8498
- adds r0, r3, 0
- bl sub_80B90C0
- lsls r0, 24
- cmp r0, 0
- beq _080B84A2
- ldrb r0, [r4]
- bl sub_80B157C
- ldrb r0, [r4]
- movs r1, 0xA
- bl sub_80B13EC
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- b _080B849C
- .align 2, 0
-_080B8494: .4byte gSharedMem + 0x19260
-_080B8498:
- movs r0, 0x1
- str r0, [sp, 0x18]
-_080B849C:
- ldr r1, [sp, 0x18]
- cmp r1, 0
- beq _080B84B8
-_080B84A2:
- movs r2, 0
- str r2, [sp, 0x18]
- ldrb r0, [r4]
- movs r1, 0x3C
- bl sub_80B13EC
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
-_080B84B8:
- ldrb r0, [r4]
- adds r0, r5
- movs r1, 0x1
- strb r1, [r0]
- adds r4, 0x1
- adds r6, 0x1
- ldrb r0, [r4]
- cmp r0, 0xFF
- bne _080B8442
-_080B84CA:
- ldr r4, _080B84F4 @ =gSharedMem + 0x192D0
- ldrb r0, [r4, 0x11]
- movs r1, 0xB
- bl sub_80B13EC
- mov r3, r9
- cmp r3, 0
- bne _080B84E2
- ldrb r0, [r4, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B84E2:
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B84F4: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_26
-
- thumb_func_start ContestEffect_27
-ContestEffect_27: @ 80B84F8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r0, 0
- mov r8, r0
- movs r6, 0
- ldr r7, _080B8580 @ =gSharedMem + 0x192D0
- adds r5, r7, 0
- subs r5, 0x63
-_080B850A:
- ldrb r0, [r7, 0x11]
- adds r0, r7
- adds r1, r6, r7
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080B8556
- movs r0, 0
- ldrsb r0, [r5, r0]
- cmp r0, 0
- ble _080B8556
- lsls r0, r6, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_80B90C0
- lsls r0, 24
- cmp r0, 0
- beq _080B8556
- movs r0, 0
- strb r0, [r5]
- ldrb r1, [r5, 0x3]
- movs r2, 0x31
- negs r2, r2
- adds r0, r2, 0
- ands r1, r0
- movs r0, 0x20
- orrs r1, r0
- strb r1, [r5, 0x3]
- adds r0, r4, 0
- movs r1, 0xD
- bl sub_80B13EC
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
-_080B8556:
- adds r5, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _080B850A
- ldr r4, _080B8580 @ =gSharedMem + 0x192D0
- ldrb r0, [r4, 0x11]
- movs r1, 0xC
- bl sub_80B13EC
- mov r0, r8
- cmp r0, 0
- bne _080B8576
- ldrb r0, [r4, 0x11]
- movs r1, 0x39
- bl sub_80B1404
-_080B8576:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B8580: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_27
-
- thumb_func_start ContestEffect_28
-ContestEffect_28: @ 80B8584
- push {r4-r7,lr}
- movs r7, 0
- movs r5, 0
- ldr r4, _080B85B0 @ =gSharedMem + 0x192D0
- movs r6, 0
-_080B858E:
- ldrb r0, [r4, 0x11]
- adds r0, r4
- adds r1, r5, r4
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080B85CE
- adds r0, r4, 0
- subs r0, 0x70
- adds r0, r6, r0
- ldrb r0, [r0, 0xD]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- ble _080B85B4
- movs r0, 0x28
- b _080B85B6
- .align 2, 0
-_080B85B0: .4byte gSharedMem + 0x192D0
-_080B85B4:
- movs r0, 0xA
-_080B85B6:
- strh r0, [r4, 0x4]
- strb r5, [r4, 0x8]
- movs r0, 0xFF
- strb r0, [r4, 0x9]
- bl sub_80B9120
- lsls r0, 24
- cmp r0, 0
- beq _080B85CE
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
-_080B85CE:
- adds r6, 0x1C
- adds r5, 0x1
- cmp r5, 0x3
- ble _080B858E
- ldr r4, _080B85F4 @ =gSharedMem + 0x192D0
- ldrb r0, [r4, 0x11]
- movs r1, 0xE
- bl sub_80B13EC
- cmp r7, 0
- bne _080B85EC
- ldrb r0, [r4, 0x11]
- movs r1, 0x39
- bl sub_80B1404
-_080B85EC:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B85F4: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_28
-
- thumb_func_start ContestEffect_29
-ContestEffect_29: @ 80B85F8
- push {r4,lr}
- ldr r0, _080B863C @ =gUnknown_02038696
- ldr r4, _080B8640 @ =gSharedMem + 0x192D0
- ldrb r2, [r4, 0x11]
- adds r0, r2, r0
- ldrb r0, [r0]
- cmp r0, 0
- bne _080B8636
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r0, r4, 0
- subs r0, 0x70
- adds r1, r0
- ldrh r0, [r1, 0x6]
- ldr r3, _080B8644 @ =gContestEffects
- ldr r2, _080B8648 @ =gContestMoves
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x1]
- lsls r0, 1
- ldrh r2, [r1, 0x2]
- adds r0, r2
- strh r0, [r1, 0x2]
- ldrb r0, [r4, 0x11]
- movs r1, 0xF
- bl sub_80B13EC
-_080B8636:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B863C: .4byte gUnknown_02038696
-_080B8640: .4byte gSharedMem + 0x192D0
-_080B8644: .4byte gContestEffects
-_080B8648: .4byte gContestMoves
- thumb_func_end ContestEffect_29
-
- thumb_func_start ContestEffect_30
-ContestEffect_30: @ 80B864C
- push {r4,lr}
- ldr r0, _080B8690 @ =gUnknown_02038696
- ldr r4, _080B8694 @ =gSharedMem + 0x192D0
- ldrb r2, [r4, 0x11]
- adds r0, r2, r0
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _080B868A
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r0, r4, 0
- subs r0, 0x70
- adds r1, r0
- ldrh r0, [r1, 0x6]
- ldr r3, _080B8698 @ =gContestEffects
- ldr r2, _080B869C @ =gContestMoves
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x1]
- lsls r0, 1
- ldrh r2, [r1, 0x2]
- adds r0, r2
- strh r0, [r1, 0x2]
- ldrb r0, [r4, 0x11]
- movs r1, 0x10
- bl sub_80B13EC
-_080B868A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B8690: .4byte gUnknown_02038696
-_080B8694: .4byte gSharedMem + 0x192D0
-_080B8698: .4byte gContestEffects
-_080B869C: .4byte gContestMoves
- thumb_func_end ContestEffect_30
-
- thumb_func_start ContestEffect_31
-ContestEffect_31: @ 80B86A0
- push {r4-r7,lr}
- movs r1, 0
- movs r3, 0
- ldr r4, _080B86EC @ =gSharedMem + 0x192D0
- ldrb r0, [r4, 0x11]
- adds r0, r4
- ldrb r5, [r0]
- movs r2, 0
- adds r6, r4, 0
- subs r6, 0x70
-_080B86B4:
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r5, r0
- bls _080B86C4
- adds r0, r2, r6
- movs r7, 0x2
- ldrsh r0, [r0, r7]
- adds r3, r0
-_080B86C4:
- adds r2, 0x1C
- adds r1, 0x1
- cmp r1, 0x3
- ble _080B86B4
- cmp r3, 0
- bge _080B86D2
- movs r3, 0
-_080B86D2:
- ldr r4, _080B86EC @ =gSharedMem + 0x192D0
- ldrb r2, [r4, 0x11]
- adds r0, r2, r4
- ldrb r0, [r0]
- cmp r0, 0
- beq _080B86E2
- cmp r3, 0
- bne _080B86F0
-_080B86E2:
- adds r0, r2, 0
- movs r1, 0x12
- bl sub_80B13EC
- b _080B8710
- .align 2, 0
-_080B86EC: .4byte gSharedMem + 0x192D0
-_080B86F0:
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r0, r4, 0
- subs r0, 0x70
- adds r1, r0
- lsrs r0, r3, 31
- adds r0, r3, r0
- asrs r0, 1
- ldrh r2, [r1, 0x2]
- adds r0, r2
- strh r0, [r1, 0x2]
- ldrb r0, [r4, 0x11]
- movs r1, 0x11
- bl sub_80B13EC
-_080B8710:
- ldr r4, _080B873C @ =gSharedMem + 0x192D0
- ldrb r1, [r4, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r5, r4, 0
- subs r5, 0x70
- adds r0, r5
- movs r7, 0x2
- ldrsh r0, [r0, r7]
- bl sub_80B9224
- ldrb r2, [r4, 0x11]
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r5
- strh r0, [r1, 0x2]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B873C: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_31
-
- thumb_func_start ContestEffect_32
-ContestEffect_32: @ 80B8740
- push {r4-r7,lr}
- movs r6, 0
- ldr r0, _080B8794 @ =gSharedMem + 0x192D0
- ldrb r1, [r0, 0x11]
- adds r3, r1, r0
- ldrb r1, [r3]
- adds r4, r0, 0
- cmp r1, 0
- beq _080B8788
- movs r2, 0
- adds r7, r4, 0
- adds r0, r1, 0
- subs r1, r0, 0x1
- movs r3, 0
- adds r5, r4, 0
- subs r5, 0x70
-_080B8760:
- adds r0, r2, r7
- ldrb r0, [r0]
- cmp r1, r0
- bne _080B876C
- adds r0, r3, r5
- ldrh r6, [r0, 0x2]
-_080B876C:
- adds r3, 0x1C
- adds r2, 0x1
- cmp r2, 0x3
- ble _080B8760
- adds r0, r4, 0
- ldrb r2, [r0, 0x11]
- adds r0, r2, r0
- ldrb r0, [r0]
- cmp r0, 0
- beq _080B8788
- lsls r0, r6, 16
- asrs r3, r0, 16
- cmp r3, 0
- bgt _080B8798
-_080B8788:
- ldrb r0, [r4, 0x11]
- movs r1, 0x14
- bl sub_80B13EC
- b _080B87B2
- .align 2, 0
-_080B8794: .4byte gSharedMem + 0x192D0
-_080B8798:
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r0, r4, 0
- subs r0, 0x70
- adds r1, r0
- ldrh r0, [r1, 0x2]
- adds r0, r3, r0
- strh r0, [r1, 0x2]
- ldrb r0, [r4, 0x11]
- movs r1, 0x13
- bl sub_80B13EC
-_080B87B2:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_32
-
- thumb_func_start ContestEffect_33
-ContestEffect_33: @ 80B87B8
- push {lr}
- ldr r0, _080B87D8 @ =gSharedMem + 0x192D0
- ldrb r2, [r0, 0x11]
- adds r1, r2, r0
- ldrb r3, [r1]
- mov r12, r0
- cmp r3, 0
- bne _080B87DC
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- mov r1, r12
- subs r1, 0x70
- adds r0, r1
- movs r1, 0xA
- b _080B87EE
- .align 2, 0
-_080B87D8: .4byte gSharedMem + 0x192D0
-_080B87DC:
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- mov r1, r12
- subs r1, 0x70
- adds r0, r1
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 2
-_080B87EE:
- strh r1, [r0, 0x2]
- cmp r3, 0
- bne _080B8800
- mov r1, r12
- ldrb r0, [r1, 0x11]
- movs r1, 0x15
- bl sub_80B13EC
- b _080B882A
-_080B8800:
- cmp r3, 0x1
- bne _080B8810
- mov r1, r12
- ldrb r0, [r1, 0x11]
- movs r1, 0x16
- bl sub_80B13EC
- b _080B882A
-_080B8810:
- cmp r3, 0x2
- bne _080B8820
- mov r1, r12
- ldrb r0, [r1, 0x11]
- movs r1, 0x17
- bl sub_80B13EC
- b _080B882A
-_080B8820:
- mov r1, r12
- ldrb r0, [r1, 0x11]
- movs r1, 0x18
- bl sub_80B13EC
-_080B882A:
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_33
-
- thumb_func_start ContestEffect_34
-ContestEffect_34: @ 80B8830
- push {r4,lr}
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0x2
- bhi _080B885C
- movs r4, 0xA
- ldr r0, _080B8858 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x1A
- bl sub_80B13EC
- b _080B88B0
- .align 2, 0
-_080B8858: .4byte gSharedMem + 0x192D0
-_080B885C:
- cmp r0, 0x5
- bhi _080B8874
- movs r4, 0x14
- ldr r0, _080B8870 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x1B
- bl sub_80B13EC
- b _080B88B0
- .align 2, 0
-_080B8870: .4byte gSharedMem + 0x192D0
-_080B8874:
- cmp r0, 0x7
- bhi _080B888C
- movs r4, 0x28
- ldr r0, _080B8888 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x1C
- bl sub_80B13EC
- b _080B88B0
- .align 2, 0
-_080B8888: .4byte gSharedMem + 0x192D0
-_080B888C:
- cmp r1, 0x8
- bhi _080B88A4
- movs r4, 0x3C
- ldr r0, _080B88A0 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x1D
- bl sub_80B13EC
- b _080B88B0
- .align 2, 0
-_080B88A0: .4byte gSharedMem + 0x192D0
-_080B88A4:
- movs r4, 0x50
- ldr r0, _080B88C8 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x1E
- bl sub_80B13EC
-_080B88B0:
- ldr r0, _080B88C8 @ =gSharedMem + 0x192D0
- ldrb r2, [r0, 0x11]
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- subs r0, 0x70
- adds r1, r0
- strh r4, [r1, 0x2]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B88C8: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_34
-
- thumb_func_start ContestEffect_35
-ContestEffect_35: @ 80B88CC
- push {r4-r7,lr}
- ldr r1, _080B8940 @ =gSharedMem + 0x192D0
- ldrb r0, [r1, 0x11]
- adds r0, r1
- movs r2, 0
- ldrsb r2, [r0, r2]
- subs r0, r2, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- mov r12, r1
- cmp r2, 0
- beq _080B8994
- ldrb r5, [r1]
- mov r6, r12
- subs r6, 0x70
-_080B88EA:
- movs r2, 0
- lsls r0, r4, 24
- asrs r1, r0, 24
- adds r4, r0, 0
- cmp r5, r1
- beq _080B8910
- ldr r3, _080B8940 @ =gSharedMem + 0x192D0
-_080B88F8:
- lsls r0, r2, 24
- movs r2, 0x80
- lsls r2, 17
- adds r0, r2
- lsrs r2, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- bgt _080B8910
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, r1
- bne _080B88F8
-_080B8910:
- lsls r2, 24
- asrs r1, r2, 24
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r3, r0, r6
- ldrb r1, [r3, 0xB]
- movs r0, 0x80
- ands r0, r1
- adds r7, r2, 0
- cmp r0, 0
- bne _080B8932
- ldrb r1, [r3, 0xC]
- movs r0, 0x7
- ands r0, r1
- cmp r0, 0
- beq _080B8944
-_080B8932:
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r4, r1
- lsrs r4, r0, 24
- cmp r0, 0
- blt _080B8994
- b _080B88EA
- .align 2, 0
-_080B8940: .4byte gSharedMem + 0x192D0
-_080B8944:
- mov r2, r12
- ldrb r1, [r2, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- mov r3, r12
- subs r3, 0x70
- adds r5, r0, r3
- ldrh r0, [r5, 0x6]
- ldr r4, _080B899C @ =gContestMoves
- lsls r0, 3
- adds r6, r0, r4
- ldrb r2, [r6, 0x1]
- lsls r2, 29
- asrs r1, r7, 24
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r0, [r0, 0x6]
- lsls r0, 3
- adds r0, r4
- ldrb r0, [r0, 0x1]
- lsls r0, 29
- cmp r2, r0
- bne _080B8994
- ldr r1, _080B89A0 @ =gContestEffects
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x1]
- lsls r0, 1
- ldrh r1, [r5, 0x2]
- adds r0, r1
- strh r0, [r5, 0x2]
- mov r2, r12
- ldrb r0, [r2, 0x11]
- movs r1, 0x1F
- bl sub_80B13EC
-_080B8994:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B899C: .4byte gContestMoves
-_080B89A0: .4byte gContestEffects
- thumb_func_end ContestEffect_35
-
- thumb_func_start ContestEffect_36
-ContestEffect_36: @ 80B89A4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, _080B8A28 @ =gSharedMem + 0x192D0
- ldrb r2, [r0, 0x11]
- adds r1, r2, r0
- ldrb r1, [r1]
- mov r8, r0
- cmp r1, 0
- beq _080B8A3C
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- mov r1, r8
- subs r1, 0x70
- adds r0, r1
- ldrh r0, [r0, 0x6]
- mov r9, r0
- movs r4, 0
- mov r6, r8
- ldr r0, _080B8A2C @ =gContestMoves
- mov r12, r0
- movs r7, 0
-_080B89D4:
- ldrb r2, [r6, 0x11]
- adds r0, r2, r6
- ldrb r0, [r0]
- subs r0, 0x1
- adds r1, r4, r6
- ldrb r1, [r1]
- cmp r0, r1
- bne _080B8A34
- mov r1, r9
- lsls r0, r1, 3
- mov r1, r12
- adds r3, r0, r1
- ldrb r1, [r3, 0x1]
- lsls r1, 29
- mov r5, r8
- subs r5, 0x70
- adds r0, r7, r5
- ldrh r0, [r0, 0x6]
- lsls r0, 3
- add r0, r12
- ldrb r0, [r0, 0x1]
- lsls r0, 29
- cmp r1, r0
- beq _080B8A34
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r5
- ldr r2, _080B8A30 @ =gContestEffects
- ldrb r0, [r3]
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- lsls r0, 1
- ldrh r2, [r1, 0x2]
- adds r0, r2
- strh r0, [r1, 0x2]
- ldrb r0, [r6, 0x11]
- movs r1, 0x20
- bl sub_80B13EC
- b _080B8A3C
- .align 2, 0
-_080B8A28: .4byte gSharedMem + 0x192D0
-_080B8A2C: .4byte gContestMoves
-_080B8A30: .4byte gContestEffects
-_080B8A34:
- adds r7, 0x1C
- adds r4, 0x1
- cmp r4, 0x3
- ble _080B89D4
-_080B8A3C:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_36
-
- thumb_func_start ContestEffect_37
-ContestEffect_37: @ 80B8A48
- push {r4-r7,lr}
- ldr r1, _080B8A94 @ =gSharedMem + 0x192D0
- ldrb r0, [r1, 0x11]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080B8AB0
- movs r5, 0
- adds r4, r1, 0
- adds r6, r4, 0
- subs r6, 0x70
- adds r7, r6, 0
-_080B8A60:
- ldrb r2, [r4, 0x11]
- adds r0, r2, r4
- ldrb r0, [r0]
- subs r0, 0x1
- adds r1, r5, r4
- ldrb r1, [r1]
- cmp r0, r1
- bne _080B8AA8
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r2, r0, r7
- movs r0, 0x2
- ldrsh r1, [r2, r0]
- movs r3, 0x2
- ldrsh r0, [r6, r3]
- cmp r1, r0
- ble _080B8A98
- adds r0, r1, 0
- lsls r0, 1
- strh r0, [r2, 0x2]
- ldrb r0, [r4, 0x11]
- movs r1, 0x21
- bl sub_80B13EC
- b _080B8AA8
- .align 2, 0
-_080B8A94: .4byte gSharedMem + 0x192D0
-_080B8A98:
- cmp r1, r0
- bge _080B8AA8
- movs r0, 0
- strh r0, [r2, 0x2]
- ldrb r0, [r4, 0x11]
- movs r1, 0x22
- bl sub_80B13EC
-_080B8AA8:
- adds r6, 0x1C
- adds r5, 0x1
- cmp r5, 0x3
- ble _080B8A60
-_080B8AB0:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_37
-
- thumb_func_start ContestEffect_38
-ContestEffect_38: @ 80B8AB8
- push {r4,r5,lr}
- ldr r4, _080B8AFC @ =gSharedMem + 0x192D0
- ldrb r2, [r4, 0x11]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r5, r4, 0
- subs r5, 0x70
- adds r1, r0, r5
- ldrb r3, [r1, 0xD]
- movs r0, 0xD
- ldrsb r0, [r1, r0]
- cmp r0, 0x1D
- bgt _080B8B00
- adds r0, r3, 0
- adds r0, 0xA
- strb r0, [r1, 0xD]
- ldrb r1, [r4, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r2, [r0, 0x10]
- movs r1, 0x31
- negs r1, r1
- ands r1, r2
- movs r2, 0x10
- orrs r1, r2
- strb r1, [r0, 0x10]
- ldrb r0, [r4, 0x11]
- movs r1, 0x23
- bl sub_80B13EC
- b _080B8B08
- .align 2, 0
-_080B8AFC: .4byte gSharedMem + 0x192D0
-_080B8B00:
- adds r0, r2, 0
- movs r1, 0x3A
- bl sub_80B13EC
-_080B8B08:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_38
-
- thumb_func_start ContestEffect_39
-ContestEffect_39: @ 80B8B10
- push {r4,lr}
- ldr r3, _080B8B48 @ =gSharedMem + 0x192D0
- ldrb r1, [r3, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r4, r3, 0
- subs r4, 0x70
- adds r0, r4
- ldrb r1, [r0, 0x11]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0, 0x11]
- ldrb r1, [r3, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0xD]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- beq _080B8B4C
- adds r0, r1, 0
- movs r1, 0x24
- bl sub_80B13EC
- b _080B8B54
- .align 2, 0
-_080B8B48: .4byte gSharedMem + 0x192D0
-_080B8B4C:
- adds r0, r1, 0
- movs r1, 0x3B
- bl sub_80B13EC
-_080B8B54:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_39
-
- thumb_func_start ContestEffect_40
-ContestEffect_40: @ 80B8B5C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- ldr r1, _080B8BE4 @ =gSharedMem + 0x19204
- ldrb r0, [r1, 0x1]
- cmp r0, 0x4
- bne _080B8B6E
- b _080B8C76
-_080B8B6E:
- movs r6, 0
- adds r7, r1, 0
- adds r7, 0xCC
- adds r3, r1, 0
- adds r3, 0x5C
-_080B8B78:
- lsls r1, r6, 24
- asrs r1, 24
- mov r0, sp
- adds r2, r0, r1
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x19]
- strb r0, [r2]
- adds r1, 0x1
- lsls r1, 24
- lsrs r6, r1, 24
- asrs r1, 24
- cmp r1, 0x3
- ble _080B8B78
- ldrb r0, [r7, 0x11]
- mov r2, sp
- adds r1, r2, r0
- movs r0, 0xFF
- strb r0, [r1]
- movs r6, 0
- mov r12, r7
- movs r4, 0x70
- negs r4, r4
- adds r4, r7
- mov r8, r4
-_080B8BAE:
- movs r5, 0
-_080B8BB0:
- lsls r0, r5, 24
- asrs r2, r0, 24
- mov r0, r12
- ldrb r0, [r0, 0x11]
- cmp r2, r0
- beq _080B8BE8
- lsls r0, r6, 24
- asrs r3, r0, 24
- mov r1, sp
- adds r4, r1, r2
- ldrb r0, [r4]
- cmp r3, r0
- bne _080B8BE8
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- add r1, r8
- lsls r0, r3, 24
- lsrs r0, 24
- ldrb r1, [r1, 0x19]
- cmp r0, r1
- bne _080B8BE8
- adds r0, r3, 0x1
- strb r0, [r4]
- b _080B8BF8
- .align 2, 0
-_080B8BE4: .4byte gSharedMem + 0x19204
-_080B8BE8:
- lsls r0, r5, 24
- movs r1, 0x80
- lsls r1, 17
- adds r0, r1
- lsrs r5, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _080B8BB0
-_080B8BF8:
- cmp r5, 0x4
- beq _080B8C0C
- lsls r0, r6, 24
- movs r2, 0x80
- lsls r2, 17
- adds r0, r2
- lsrs r6, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _080B8BAE
-_080B8C0C:
- ldrb r0, [r7, 0x11]
- mov r4, sp
- adds r1, r4, r0
- movs r0, 0
- strb r0, [r1]
- ldrb r0, [r7, 0x11]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r3, r7, 0
- subs r3, 0x70
- adds r1, r3
- ldrb r2, [r1, 0x10]
- movs r0, 0x3F
- ands r0, r2
- movs r2, 0x40
- orrs r0, r2
- strb r0, [r1, 0x10]
- movs r6, 0
-_080B8C32:
- lsls r1, r6, 24
- asrs r1, 24
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r3
- mov r4, sp
- adds r2, r4, r1
- ldrb r2, [r2]
- strb r2, [r0, 0x19]
- adds r1, 0x1
- lsls r1, 24
- lsrs r6, r1, 24
- asrs r1, 24
- cmp r1, 0x3
- ble _080B8C32
- ldrb r0, [r7, 0x11]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r0, r7, 0
- subs r0, 0x70
- adds r1, r0
- ldrb r2, [r1, 0x11]
- movs r0, 0x4
- negs r0, r0
- ands r0, r2
- movs r2, 0x1
- orrs r0, r2
- strb r0, [r1, 0x11]
- ldrb r0, [r7, 0x11]
- movs r1, 0x25
- bl sub_80B13EC
-_080B8C76:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_40
-
- thumb_func_start ContestEffect_41
-ContestEffect_41: @ 80B8C84
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- ldr r1, _080B8D14 @ =gSharedMem + 0x19204
- ldrb r0, [r1, 0x1]
- cmp r0, 0x4
- bne _080B8C98
- b _080B8DA6
-_080B8C98:
- movs r6, 0
- adds r7, r1, 0
- adds r7, 0xCC
- adds r3, r1, 0
- adds r3, 0x5C
-_080B8CA2:
- lsls r1, r6, 24
- asrs r1, 24
- mov r0, sp
- adds r2, r0, r1
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x19]
- strb r0, [r2]
- adds r1, 0x1
- lsls r1, 24
- lsrs r6, r1, 24
- asrs r1, 24
- cmp r1, 0x3
- ble _080B8CA2
- ldrb r0, [r7, 0x11]
- mov r2, sp
- adds r1, r2, r0
- movs r0, 0xFF
- strb r0, [r1]
- movs r6, 0x3
- mov r12, r7
- movs r4, 0x70
- negs r4, r4
- adds r4, r7
- mov r8, r4
- movs r0, 0x1
- negs r0, r0
- mov r9, r0
-_080B8CDE:
- movs r5, 0
-_080B8CE0:
- lsls r0, r5, 24
- asrs r2, r0, 24
- mov r1, r12
- ldrb r1, [r1, 0x11]
- cmp r2, r1
- beq _080B8D18
- lsls r0, r6, 24
- asrs r3, r0, 24
- mov r0, sp
- adds r4, r0, r2
- ldrb r1, [r4]
- cmp r3, r1
- bne _080B8D18
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- add r1, r8
- lsls r0, r3, 24
- lsrs r0, 24
- ldrb r1, [r1, 0x19]
- cmp r0, r1
- bne _080B8D18
- subs r0, r3, 0x1
- strb r0, [r4]
- b _080B8D28
- .align 2, 0
-_080B8D14: .4byte gSharedMem + 0x19204
-_080B8D18:
- lsls r0, r5, 24
- movs r2, 0x80
- lsls r2, 17
- adds r0, r2
- lsrs r5, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _080B8CE0
-_080B8D28:
- cmp r5, 0x4
- beq _080B8D3C
- lsls r0, r6, 24
- movs r4, 0xFF
- lsls r4, 24
- adds r0, r4
- lsrs r6, r0, 24
- asrs r0, 24
- cmp r0, r9
- bgt _080B8CDE
-_080B8D3C:
- ldrb r0, [r7, 0x11]
- mov r2, sp
- adds r1, r2, r0
- movs r0, 0x3
- strb r0, [r1]
- ldrb r0, [r7, 0x11]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r3, r7, 0
- subs r3, 0x70
- adds r1, r3
- ldrb r2, [r1, 0x10]
- movs r0, 0x3F
- ands r0, r2
- movs r2, 0x40
- orrs r0, r2
- strb r0, [r1, 0x10]
- movs r6, 0
-_080B8D62:
- lsls r1, r6, 24
- asrs r1, 24
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r3
- mov r4, sp
- adds r2, r4, r1
- ldrb r2, [r2]
- strb r2, [r0, 0x19]
- adds r1, 0x1
- lsls r1, 24
- lsrs r6, r1, 24
- asrs r1, 24
- cmp r1, 0x3
- ble _080B8D62
- ldrb r0, [r7, 0x11]
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r0, r7, 0
- subs r0, 0x70
- adds r1, r0
- ldrb r2, [r1, 0x11]
- movs r0, 0x4
- negs r0, r0
- ands r0, r2
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r1, 0x11]
- ldrb r0, [r7, 0x11]
- movs r1, 0x26
- bl sub_80B13EC
-_080B8DA6:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end ContestEffect_41
-
- thumb_func_start ContestEffect_42
-ContestEffect_42: @ 80B8DB4
- bx lr
- thumb_func_end ContestEffect_42
-
- thumb_func_start ContestEffect_43
-ContestEffect_43: @ 80B8DB8
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r1, _080B8E30 @ =gSharedMem + 0x19204
- ldrb r0, [r1, 0x1]
- cmp r0, 0x4
- beq _080B8EAE
- movs r6, 0
- add r3, sp, 0x4
- adds r5, r1, 0
- adds r5, 0x5C
- adds r4, r3, 0
-_080B8DCE:
- lsls r1, r6, 24
- asrs r1, 24
- mov r0, sp
- adds r2, r0, r1
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r0, [r0, 0x19]
- strb r0, [r2]
- adds r0, r4, r1
- strb r6, [r0]
- adds r1, 0x1
- lsls r1, 24
- lsrs r6, r1, 24
- asrs r1, 24
- cmp r1, 0x3
- ble _080B8DCE
- movs r6, 0
- adds r7, r3, 0
-_080B8DF6:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- lsls r2, r6, 24
- asrs r2, 24
- movs r1, 0x4
- subs r1, r2
- bl __modsi3
- lsls r0, 24
- lsrs r4, r0, 24
- movs r1, 0
-_080B8E10:
- lsls r0, r1, 24
- asrs r2, r0, 24
- adds r3, r7, r2
- ldrb r1, [r3]
- adds r5, r0, 0
- cmp r1, 0xFF
- beq _080B8E3A
- cmp r4, 0
- bne _080B8E34
- mov r1, sp
- adds r0, r1, r2
- strb r6, [r0]
- movs r0, 0xFF
- strb r0, [r3]
- b _080B8E48
- .align 2, 0
-_080B8E30: .4byte gSharedMem + 0x19204
-_080B8E34:
- subs r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080B8E3A:
- movs r3, 0x80
- lsls r3, 17
- adds r0, r5, r3
- lsrs r1, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _080B8E10
-_080B8E48:
- lsls r0, r6, 24
- movs r1, 0x80
- lsls r1, 17
- adds r0, r1
- lsrs r6, r0, 24
- asrs r0, 24
- cmp r0, 0x3
- ble _080B8DF6
- movs r6, 0
- ldr r4, _080B8EB8 @ =gSharedMem + 0x192D0
- adds r7, r4, 0
- subs r7, 0x70
- movs r3, 0x3F
- mov r12, r3
- movs r5, 0x80
-_080B8E66:
- lsls r2, r6, 24
- asrs r2, 24
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- adds r1, r7
- mov r3, sp
- adds r0, r3, r2
- ldrb r0, [r0]
- strb r0, [r1, 0x19]
- ldrb r3, [r1, 0x10]
- mov r0, r12
- ands r0, r3
- orrs r0, r5
- strb r0, [r1, 0x10]
- adds r2, 0x1
- lsls r2, 24
- lsrs r6, r2, 24
- asrs r2, 24
- cmp r2, 0x3
- ble _080B8E66
- ldrb r1, [r4, 0x11]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r4, 0
- subs r1, 0x70
- adds r0, r1
- ldrb r1, [r0, 0x11]
- movs r2, 0x3
- orrs r1, r2
- strb r1, [r0, 0x11]
- ldrb r0, [r4, 0x11]
- movs r1, 0x27
- bl sub_80B13EC
-_080B8EAE:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B8EB8: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_43
-
- thumb_func_start ContestEffect_44
-ContestEffect_44: @ 80B8EBC
- push {lr}
- ldr r3, _080B8EF0 @ =gContestMoves
- ldr r1, _080B8EF4 @ =gSharedMem + 0x192D0
- ldrb r2, [r1, 0x11]
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- subs r1, 0x70
- adds r2, r0, r1
- ldrh r0, [r2, 0x6]
- lsls r0, 3
- adds r0, r3
- ldrb r0, [r0, 0x1]
- lsls r0, 29
- ldr r1, _080B8EF8 @ =gSpecialVar_ContestCategory
- lsrs r0, 29
- ldrh r1, [r1]
- cmp r0, r1
- beq _080B8EEA
- ldrb r0, [r2, 0x11]
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0x11]
-_080B8EEA:
- pop {r0}
- bx r0
- .align 2, 0
-_080B8EF0: .4byte gContestMoves
-_080B8EF4: .4byte gSharedMem + 0x192D0
-_080B8EF8: .4byte gSpecialVar_ContestCategory
- thumb_func_end ContestEffect_44
-
- thumb_func_start ContestEffect_45
-ContestEffect_45: @ 80B8EFC
- push {r4-r7,lr}
- movs r7, 0
- movs r5, 0
- ldr r4, _080B8F34 @ =gSharedMem + 0x192D0
- movs r6, 0
-_080B8F06:
- ldrb r0, [r4, 0x11]
- adds r0, r4
- adds r1, r5, r4
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080B8F52
- adds r0, r4, 0
- subs r0, 0x70
- adds r1, r6, r0
- movs r2, 0x2
- ldrsh r0, [r1, r2]
- cmp r0, 0
- ble _080B8F38
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- strh r0, [r4, 0x4]
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- bl sub_80B9268
- b _080B8F3A
- .align 2, 0
-_080B8F34: .4byte gSharedMem + 0x192D0
-_080B8F38:
- movs r0, 0xA
-_080B8F3A:
- strh r0, [r4, 0x4]
- strb r5, [r4, 0x8]
- movs r0, 0xFF
- strb r0, [r4, 0x9]
- bl sub_80B9120
- lsls r0, 24
- cmp r0, 0
- beq _080B8F52
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
-_080B8F52:
- adds r6, 0x1C
- adds r5, 0x1
- cmp r5, 0x3
- ble _080B8F06
- cmp r7, 0
- bne _080B8F68
- ldr r0, _080B8F78 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B8F68:
- ldr r0, _080B8F78 @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x30
- bl sub_80B13EC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B8F78: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_45
-
- thumb_func_start ContestEffect_46
-ContestEffect_46: @ 80B8F7C
- push {r4,lr}
- ldr r0, _080B8F98 @ =gSharedMem + 0x19204
- movs r1, 0x13
- ldrsb r1, [r0, r1]
- cmp r1, 0
- bne _080B8F9C
- movs r4, 0xA
- adds r0, 0xCC
- ldrb r0, [r0, 0x11]
- movs r1, 0x1A
- bl sub_80B13EC
- b _080B8FDE
- .align 2, 0
-_080B8F98: .4byte gSharedMem + 0x19204
-_080B8F9C:
- cmp r1, 0x1
- bne _080B8FAE
- movs r4, 0x14
- adds r0, 0xCC
- ldrb r0, [r0, 0x11]
- movs r1, 0x1B
- bl sub_80B13EC
- b _080B8FDE
-_080B8FAE:
- cmp r1, 0x2
- bne _080B8FC0
- movs r4, 0x1E
- adds r0, 0xCC
- ldrb r0, [r0, 0x11]
- movs r1, 0x1C
- bl sub_80B13EC
- b _080B8FDE
-_080B8FC0:
- cmp r1, 0x3
- bne _080B8FD2
- movs r4, 0x32
- adds r0, 0xCC
- ldrb r0, [r0, 0x11]
- movs r1, 0x1D
- bl sub_80B13EC
- b _080B8FDE
-_080B8FD2:
- movs r4, 0x3C
- adds r0, 0xCC
- ldrb r0, [r0, 0x11]
- movs r1, 0x1E
- bl sub_80B13EC
-_080B8FDE:
- ldr r0, _080B8FF4 @ =gSharedMem + 0x192D0
- ldrb r2, [r0, 0x11]
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- subs r0, 0x70
- adds r1, r0
- strh r4, [r1, 0x2]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B8FF4: .4byte gSharedMem + 0x192D0
- thumb_func_end ContestEffect_46
-
- thumb_func_start ContestEffect_47
-ContestEffect_47: @ 80B8FF8
- push {lr}
- ldr r3, _080B9034 @ =gSharedMem + 0x19328
- ldrb r2, [r3, 0x1]
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- bne _080B902E
- movs r0, 0x1
- orrs r2, r0
- movs r0, 0x58
- negs r0, r0
- adds r0, r3
- mov r12, r0
- ldrb r1, [r0, 0x11]
- movs r0, 0x7
- ands r0, r1
- lsls r0, 1
- movs r1, 0xF
- negs r1, r1
- ands r2, r1
- orrs r2, r0
- strb r2, [r3, 0x1]
- mov r1, r12
- ldrb r0, [r1, 0x11]
- movs r1, 0x3D
- bl sub_80B13EC
-_080B902E:
- pop {r0}
- bx r0
- .align 2, 0
-_080B9034: .4byte gSharedMem + 0x19328
- thumb_func_end ContestEffect_47
-
- thumb_func_start sub_80B9038
-sub_80B9038: @ 80B9038
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r7, 0
- movs r5, 0
- ldr r4, _080B907C @ =gSharedMem + 0x192D0
- ldr r0, _080B9080 @ =gContestMoves
- mov r9, r0
- movs r6, 0
-_080B9052:
- ldrb r0, [r4, 0x11]
- adds r0, r4
- adds r1, r5, r4
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080B909A
- adds r0, r4, 0
- subs r0, 0x70
- adds r0, r6, r0
- ldrh r0, [r0, 0x6]
- lsls r0, 3
- add r0, r9
- ldrb r0, [r0, 0x1]
- lsls r0, 29
- lsrs r0, 29
- cmp r8, r0
- bne _080B9084
- movs r0, 0x28
- b _080B9086
- .align 2, 0
-_080B907C: .4byte gSharedMem + 0x192D0
-_080B9080: .4byte gContestMoves
-_080B9084:
- movs r0, 0xA
-_080B9086:
- strh r0, [r4, 0x4]
- strb r5, [r4, 0x8]
- movs r0, 0xFF
- strb r0, [r4, 0x9]
- bl sub_80B9120
- lsls r0, 24
- cmp r0, 0
- beq _080B909A
- adds r7, 0x1
-_080B909A:
- adds r6, 0x1C
- adds r5, 0x1
- cmp r5, 0x3
- ble _080B9052
- cmp r7, 0
- bne _080B90B0
- ldr r0, _080B90BC @ =gSharedMem + 0x192D0
- ldrb r0, [r0, 0x11]
- movs r1, 0x36
- bl sub_80B1404
-_080B90B0:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B90BC: .4byte gSharedMem + 0x192D0
- thumb_func_end sub_80B9038
-
- thumb_func_start sub_80B90C0
-sub_80B90C0: @ 80B90C0
- push {lr}
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r2, _080B90EC @ =gSharedMem + 0x192D0
- adds r0, r2, 0
- adds r0, 0xD
- adds r0, r3, r0
- movs r1, 0x1
- strb r1, [r0]
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- subs r2, 0x70
- adds r2, r0, r2
- ldrb r1, [r2, 0x10]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080B90F0
- adds r0, r3, 0
- movs r1, 0x2D
- b _080B9116
- .align 2, 0
-_080B90EC: .4byte gSharedMem + 0x192D0
-_080B90F0:
- ldrb r0, [r2, 0x12]
- cmp r0, 0
- bne _080B910E
- ldrb r1, [r2, 0xB]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080B911A
- ldrb r1, [r2, 0xC]
- movs r0, 0x6
- ands r0, r1
- cmp r0, 0
- bne _080B911A
- movs r0, 0x1
- b _080B911C
-_080B910E:
- subs r0, 0x1
- strb r0, [r2, 0x12]
- adds r0, r3, 0
- movs r1, 0x2C
-_080B9116:
- bl sub_80B13EC
-_080B911A:
- movs r0, 0
-_080B911C:
- pop {r1}
- bx r1
- thumb_func_end sub_80B90C0
-
- thumb_func_start sub_80B9120
-sub_80B9120: @ 80B9120
- push {r4-r7,lr}
- sub sp, 0xC
- mov r0, sp
- movs r1, 0
- movs r2, 0x8
- bl memset
- movs r7, 0
- ldr r1, _080B918C @ =gSharedMem + 0x192D0
- ldrb r0, [r1, 0x8]
- cmp r0, 0xFF
- beq _080B91D8
- adds r5, r1, 0
-_080B913A:
- adds r0, r5, 0
- adds r0, 0x8
- adds r0, r7, r0
- ldrb r4, [r0]
- adds r6, r4, 0
- adds r0, r4, 0
- str r1, [sp, 0x8]
- bl sub_80B90C0
- lsls r0, 24
- ldr r1, [sp, 0x8]
- cmp r0, 0
- beq _080B91C8
- ldrh r0, [r1, 0x4]
- strh r0, [r1, 0x6]
- lsls r0, r4, 3
- subs r0, r4
- lsls r0, 2
- subs r1, 0x70
- adds r2, r0, r1
- ldrb r1, [r2, 0x10]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080B9174
- movs r1, 0x6
- ldrsh r0, [r5, r1]
- lsls r0, 1
- strh r0, [r5, 0x6]
-_080B9174:
- ldrb r0, [r2, 0x10]
- movs r3, 0x1
- ands r3, r0
- cmp r3, 0
- beq _080B9190
- movs r0, 0xA
- strh r0, [r5, 0x6]
- adds r0, r4, 0
- movs r1, 0x2F
- bl sub_80B13EC
- b _080B91C8
- .align 2, 0
-_080B918C: .4byte gSharedMem + 0x192D0
-_080B9190:
- ldrb r1, [r2, 0xF]
- ldrh r0, [r5, 0x6]
- subs r0, r1
- adds r1, r0, 0
- strh r0, [r5, 0x6]
- lsls r0, 16
- cmp r0, 0
- bgt _080B91AC
- strh r3, [r5, 0x6]
- adds r0, r4, 0
- movs r1, 0x2E
- bl sub_80B13EC
- b _080B91C8
-_080B91AC:
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl sub_80B9200
- ldrb r1, [r5, 0x6]
- adds r0, r6, 0
- bl sub_80B141C
- lsls r0, r6, 1
- mov r2, sp
- adds r1, r2, r0
- ldrh r0, [r5, 0x6]
- strh r0, [r1]
-_080B91C8:
- adds r7, 0x1
- ldr r1, _080B91E8 @ =gSharedMem + 0x192D0
- adds r0, r1, 0
- adds r0, 0x8
- adds r0, r7, r0
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _080B913A
-_080B91D8:
- movs r7, 0
- mov r1, sp
-_080B91DC:
- movs r2, 0
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _080B91EC
- movs r0, 0x1
- b _080B91F6
- .align 2, 0
-_080B91E8: .4byte gSharedMem + 0x192D0
-_080B91EC:
- adds r1, 0x2
- adds r7, 0x1
- cmp r7, 0x3
- ble _080B91DC
- movs r0, 0
-_080B91F6:
- add sp, 0xC
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80B9120
-
- thumb_func_start sub_80B9200
-sub_80B9200: @ 80B9200
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, r0, 3
- subs r2, r0
- lsls r2, 2
- ldr r0, _080B9220 @ =gSharedMem + 0x19260
- adds r2, r0
- ldrh r0, [r2, 0x2]
- subs r0, r1
- strh r0, [r2, 0x2]
- ldrb r0, [r2, 0xE]
- adds r1, r0
- strb r1, [r2, 0xE]
- bx lr
- .align 2, 0
-_080B9220: .4byte gSharedMem + 0x19260
- thumb_func_end sub_80B9200
-
- thumb_func_start sub_80B9224
-sub_80B9224: @ 80B9224
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- asrs r4, r0, 16
- adds r0, r4, 0
- cmp r4, 0
- bge _080B9234
- negs r0, r4
-_080B9234:
- movs r1, 0xA
- bl __modsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r4, 0
- bge _080B9252
- lsls r0, 16
- asrs r1, r0, 16
- cmp r1, 0
- beq _080B925C
- adds r0, r4, 0
- subs r0, 0xA
- adds r0, r1, r0
- b _080B9258
-_080B9252:
- lsls r0, 16
- asrs r0, 16
- subs r0, r4, r0
-_080B9258:
- lsls r0, 16
- lsrs r5, r0, 16
-_080B925C:
- lsls r0, r5, 16
- asrs r0, 16
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80B9224
-
- thumb_func_start sub_80B9268
-sub_80B9268: @ 80B9268
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- asrs r4, r0, 16
- adds r0, r4, 0
- cmp r4, 0
- bge _080B9278
- negs r0, r4
-_080B9278:
- movs r1, 0xA
- bl __modsi3
- lsls r0, 16
- asrs r1, r0, 16
- cmp r1, 0
- beq _080B9290
- adds r0, r4, 0
- adds r0, 0xA
- subs r0, r1
- lsls r0, 16
- lsrs r5, r0, 16
-_080B9290:
- lsls r0, r5, 16
- asrs r0, 16
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80B9268
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/contest_link_80C2020.s b/asm/contest_link_80C2020.s
index eaa61e7eb..d9e10324b 100644
--- a/asm/contest_link_80C2020.s
+++ b/asm/contest_link_80C2020.s
@@ -5,6 +5,305 @@
.text
+ thumb_func_start sub_80C3158
+sub_80C3158: @ 80C3158
+ push {r4-r7,lr}
+ mov r7, r10
+ mov r6, r9
+ mov r5, r8
+ push {r5-r7}
+ sub sp, 0x1C
+ mov r9, r0
+ lsls r1, 24
+ lsrs r1, 24
+ lsls r2, r1, 4
+ adds r2, r1
+ lsls r2, 2
+ ldr r3, _080C32C0 @ =gSprites
+ adds r2, r3
+ mov r1, sp
+ ldrh r0, [r2, 0x4]
+ lsls r0, 22
+ lsrs r0, 22
+ strh r0, [r1]
+ mov r4, sp
+ movs r0, 0x2E
+ ldrsh r1, [r2, r0]
+ lsls r0, r1, 4
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r3
+ ldrh r0, [r0, 0x4]
+ lsls r0, 22
+ lsrs r0, 22
+ strh r0, [r4, 0x2]
+ movs r0, 0x30
+ ldrsh r1, [r2, r0]
+ lsls r0, r1, 4
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r3
+ ldrh r0, [r0, 0x4]
+ lsls r0, 22
+ lsrs r0, 22
+ strh r0, [r4, 0x4]
+ movs r0, 0x32
+ ldrsh r1, [r2, r0]
+ lsls r0, r1, 4
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r3
+ ldrh r0, [r0, 0x4]
+ lsls r0, 22
+ lsrs r0, 22
+ strh r0, [r4, 0x6]
+ ldr r1, _080C32C4 @ =gWindowTemplate_81E7278
+ mov r8, r1
+ ldr r7, _080C32C8 @ =0x06010000
+ ldr r2, _080C32CC @ =0x040000d4
+ ldr r6, _080C32D0 @ =0x85000100
+ mov r1, sp
+ movs r5, 0
+ add r3, sp, 0x8
+ movs r4, 0x3
+_080C31CE:
+ ldrh r0, [r1]
+ lsls r0, 5
+ adds r0, r7
+ str r5, [sp, 0x8]
+ str r3, [r2]
+ str r0, [r2, 0x4]
+ str r6, [r2, 0x8]
+ ldr r0, [r2, 0x8]
+ adds r1, 0x2
+ subs r4, 0x1
+ cmp r4, 0
+ bge _080C31CE
+ mov r0, r8
+ mov r1, r9
+ bl Text_GetStringWidthFromWindowTemplate
+ lsls r0, 24
+ lsrs r5, r0, 24
+ ldr r2, _080C32D4 @ =gDisplayedStringBattle
+ ldr r1, _080C32D8 @ =gUnknown_083D17E2
+ adds r0, r2, 0
+ bl StringCopy
+ adds r2, r0, 0
+ mvns r0, r5
+ adds r1, r0, 0x1
+ movs r0, 0x7
+ ands r1, r0
+ cmp r1, 0
+ beq _080C3218
+ movs r0, 0xFC
+ strb r0, [r2]
+ movs r0, 0x11
+ strb r0, [r2, 0x1]
+ lsrs r0, r1, 1
+ strb r0, [r2, 0x2]
+ adds r2, 0x3
+_080C3218:
+ adds r6, r5, 0x7
+ movs r1, 0x8
+ negs r1, r1
+ adds r0, r1, 0
+ ands r6, r0
+ lsls r6, 24
+ lsrs r5, r6, 24
+ adds r0, r2, 0
+ mov r1, r9
+ bl StringCopy
+ adds r2, r0, 0
+ movs r0, 0xFC
+ strb r0, [r2]
+ movs r0, 0x13
+ strb r0, [r2, 0x1]
+ strb r5, [r2, 0x2]
+ movs r0, 0xFF
+ strb r0, [r2, 0x3]
+ ldr r0, _080C32DC @ =gSharedMem + 0x18068
+ mov r10, r0
+ ldr r1, _080C32D4 @ =gDisplayedStringBattle
+ bl sub_80034D4
+ mov r0, sp
+ ldrh r4, [r0]
+ lsls r4, 5
+ ldr r1, _080C32C8 @ =0x06010000
+ adds r7, r4, r1
+ ldr r0, _080C32E0 @ =gUnknown_083D1624
+ mov r9, r0
+ ldr r1, _080C32E4 @ =REG_BG0CNT
+ mov r8, r1
+ adds r1, r7, 0
+ mov r2, r8
+ bl CpuSet
+ mov r5, r9
+ adds r5, 0x80
+ ldr r0, _080C32E8 @ =0x06010100
+ adds r1, r4, r0
+ adds r0, r5, 0
+ mov r2, r8
+ bl CpuSet
+ ldr r0, _080C32EC @ =0x06010200
+ adds r1, r4, r0
+ adds r0, r5, 0
+ mov r2, r8
+ bl CpuSet
+ mov r0, r9
+ adds r0, 0x40
+ ldr r1, _080C32F0 @ =0x06010300
+ adds r4, r1
+ adds r1, r4, 0
+ mov r2, r8
+ bl CpuSet
+ lsrs r5, r6, 27
+ movs r4, 0
+ cmp r4, r5
+ bgt _080C3382
+ mov r6, sp
+ mov r0, r10
+ adds r0, 0x20
+ str r0, [sp, 0xC]
+ mov r1, r10
+ str r1, [sp, 0x10]
+ ldr r0, _080C32F4 @ =0x0600fd20
+ str r0, [sp, 0x14]
+ ldr r1, _080C32F8 @ =0x0600fe20
+ str r1, [sp, 0x18]
+ ldr r0, _080C32FC @ =0x0600ff20
+ mov r10, r0
+ ldr r1, _080C3300 @ =0x06010020
+ mov r9, r1
+_080C32B2:
+ cmp r4, 0x6
+ bgt _080C3304
+ ldrh r0, [r6]
+ lsls r0, 5
+ mov r1, r9
+ b _080C3322
+ .align 2, 0
+_080C32C0: .4byte gSprites
+_080C32C4: .4byte gWindowTemplate_81E7278
+_080C32C8: .4byte 0x06010000
+_080C32CC: .4byte 0x040000d4
+_080C32D0: .4byte 0x85000100
+_080C32D4: .4byte gDisplayedStringBattle
+_080C32D8: .4byte gUnknown_083D17E2
+_080C32DC: .4byte gSharedMem + 0x18068
+_080C32E0: .4byte gUnknown_083D1624
+_080C32E4: .4byte REG_BG0CNT
+_080C32E8: .4byte 0x06010100
+_080C32EC: .4byte 0x06010200
+_080C32F0: .4byte 0x06010300
+_080C32F4: .4byte 0x0600fd20
+_080C32F8: .4byte 0x0600fe20
+_080C32FC: .4byte 0x0600ff20
+_080C3300: .4byte 0x06010020
+_080C3304:
+ cmp r4, 0xE
+ bgt _080C3310
+ ldrh r0, [r6, 0x2]
+ lsls r0, 5
+ mov r1, r10
+ b _080C3322
+_080C3310:
+ cmp r4, 0x16
+ bgt _080C331C
+ ldrh r0, [r6, 0x4]
+ lsls r0, 5
+ ldr r1, [sp, 0x18]
+ b _080C3322
+_080C331C:
+ ldrh r0, [r6, 0x6]
+ lsls r0, 5
+ ldr r1, [sp, 0x14]
+_080C3322:
+ adds r7, r0, r1
+ cmp r4, r5
+ beq _080C3382
+ ldr r0, _080C33D0 @ =gUnknown_083D16E4
+ adds r1, r7, 0
+ mov r2, r8
+ bl CpuSet
+ movs r0, 0xC0
+ lsls r0, 2
+ adds r1, r7, r0
+ ldr r0, _080C33D0 @ =gUnknown_083D16E4
+ adds r0, 0x20
+ mov r2, r8
+ bl CpuSet
+ movs r0, 0x80
+ lsls r0, 1
+ adds r1, r7, r0
+ ldr r0, [sp, 0x10]
+ mov r2, r8
+ bl CpuSet
+ movs r0, 0x80
+ lsls r0, 2
+ adds r1, r7, r0
+ ldr r0, [sp, 0xC]
+ mov r2, r8
+ bl CpuSet
+ ldr r1, [sp, 0xC]
+ adds r1, 0x40
+ str r1, [sp, 0xC]
+ ldr r0, [sp, 0x10]
+ adds r0, 0x40
+ str r0, [sp, 0x10]
+ ldr r1, [sp, 0x14]
+ adds r1, 0x20
+ str r1, [sp, 0x14]
+ ldr r0, [sp, 0x18]
+ adds r0, 0x20
+ str r0, [sp, 0x18]
+ movs r1, 0x20
+ add r10, r1
+ add r9, r1
+ adds r4, 0x1
+ cmp r4, r5
+ ble _080C32B2
+_080C3382:
+ ldr r4, _080C33D4 @ =gUnknown_083D1644
+ ldr r5, _080C33D8 @ =REG_BG0CNT
+ adds r0, r4, 0
+ adds r1, r7, 0
+ adds r2, r5, 0
+ bl CpuSet
+ adds r6, r4, 0
+ adds r6, 0x80
+ movs r0, 0x80
+ lsls r0, 1
+ adds r1, r7, r0
+ adds r0, r6, 0
+ adds r2, r5, 0
+ bl CpuSet
+ movs r0, 0x80
+ lsls r0, 2
+ adds r1, r7, r0
+ adds r0, r6, 0
+ adds r2, r5, 0
+ bl CpuSet
+ adds r4, 0x40
+ movs r0, 0xC0
+ lsls r0, 2
+ adds r1, r7, r0
+ adds r0, r4, 0
+ adds r2, r5, 0
+ bl CpuSet
+ add sp, 0x1C
+ pop {r3-r5}
+ mov r8, r3
+ mov r9, r4
+ mov r10, r5
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C33D0: .4byte gUnknown_083D16E4
+_080C33D4: .4byte gUnknown_083D1644
+_080C33D8: .4byte REG_BG0CNT
+ thumb_func_end sub_80C3158
+
thumb_func_start sub_80C33DC
sub_80C33DC: @ 80C33DC
push {r4-r6,lr}
diff --git a/asm/cute_sketch.s b/asm/contest_painting_effects.s
index bc72a6ef5..bc72a6ef5 100644
--- a/asm/cute_sketch.s
+++ b/asm/contest_painting_effects.s
diff --git a/asm/current.s b/asm/current.s
deleted file mode 100644
index fa3fec58a..000000000
--- a/asm/current.s
+++ /dev/null
@@ -1,2389 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "include/macros.inc"
-
- .syntax unified
-
- .text
-
- @ current
-
- thumb_func_start sub_80D648C
-sub_80D648C: @ 80D648C
- push {r4-r6,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl InitAnimSpritePos
- ldr r5, _080D6500 @ =gBattleAnimArgs
- ldrh r0, [r5, 0x6]
- strh r0, [r4, 0x2E]
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x30]
- ldr r6, _080D6504 @ =gAnimBankTarget
- ldrb r0, [r6]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- ldrb r0, [r6]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x36]
- adds r0, r4, 0
- bl InitAnimSpriteTranslationDeltas
- ldrh r0, [r5, 0x4]
- strh r0, [r4, 0x38]
- ldrh r0, [r5, 0xA]
- strh r0, [r4, 0x3A]
- ldrh r0, [r5, 0x8]
- strh r0, [r4, 0x3C]
- ldrh r2, [r4, 0x4]
- lsls r1, r2, 22
- lsrs r1, 22
- movs r3, 0xC
- ldrsh r0, [r5, r3]
- lsls r0, 2
- adds r1, r0
- ldr r3, _080D6508 @ =0x000003ff
- adds r0, r3, 0
- ands r1, r0
- ldr r0, _080D650C @ =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r4, 0x4]
- ldr r1, _080D6510 @ =sub_80D6514
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6500: .4byte gBattleAnimArgs
-_080D6504: .4byte gAnimBankTarget
-_080D6508: .4byte 0x000003ff
-_080D650C: .4byte 0xfffffc00
-_080D6510: .4byte sub_80D6514
- thumb_func_end sub_80D648C
-
- thumb_func_start sub_80D6514
-sub_80D6514: @ 80D6514
- push {r4,lr}
- adds r4, r0, 0
- bl TranslateAnimSpriteByDeltas
- lsls r0, 24
- cmp r0, 0
- bne _080D657E
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl Sin
- ldrh r1, [r4, 0x24]
- adds r0, r1
- strh r0, [r4, 0x24]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl Cos
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x3A]
- ldrh r2, [r4, 0x3C]
- adds r0, r2
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x3
- bl __modsi3
- lsls r0, 16
- cmp r0, 0
- bne _080D6584
- adds r3, r4, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- b _080D6584
-_080D657E:
- adds r0, r4, 0
- bl DestroyAnimSprite
-_080D6584:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80D6514
-
- thumb_func_start sub_80D658C
-sub_80D658C: @ 80D658C
- push {lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x38]
- subs r0, 0x1
- strh r0, [r3, 0x38]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _080D65C4
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- ldrb r2, [r0]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- ldrh r0, [r3, 0x36]
- strh r0, [r3, 0x38]
-_080D65C4:
- ldrh r0, [r3, 0x34]
- subs r1, r0, 0x1
- strh r1, [r3, 0x34]
- lsls r0, 16
- cmp r0, 0
- bgt _080D65D6
- adds r0, r3, 0
- bl DestroyAnimSprite
-_080D65D6:
- pop {r0}
- bx r0
- thumb_func_end sub_80D658C
-
- thumb_func_start sub_80D65DC
-sub_80D65DC: @ 80D65DC
- push {r4-r6,lr}
- adds r6, r0, 0
- ldr r0, _080D6644 @ =gMain
- ldr r1, _080D6648 @ =0x0000043d
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080D65FE
- ldr r0, _080D664C @ =gAnimBankTarget
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080D6606
-_080D65FE:
- ldr r1, _080D6650 @ =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- negs r0, r0
- strh r0, [r1, 0x2]
-_080D6606:
- ldr r5, _080D664C @ =gAnimBankTarget
- ldrb r0, [r5]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- ldr r4, _080D6650 @ =gBattleAnimArgs
- lsrs r0, 24
- ldrh r1, [r4, 0x2]
- adds r0, r1
- strh r0, [r6, 0x20]
- ldrb r0, [r5]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r4, 0x4]
- adds r0, r1
- strh r0, [r6, 0x22]
- ldrh r0, [r4]
- strh r0, [r6, 0x34]
- ldrh r0, [r4, 0x6]
- strh r0, [r6, 0x36]
- strh r0, [r6, 0x38]
- ldr r0, _080D6654 @ =sub_80D658C
- str r0, [r6, 0x1C]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6644: .4byte gMain
-_080D6648: .4byte 0x0000043d
-_080D664C: .4byte gAnimBankTarget
-_080D6650: .4byte gBattleAnimArgs
-_080D6654: .4byte sub_80D658C
- thumb_func_end sub_80D65DC
-
- thumb_func_start sub_80D6658
-sub_80D6658: @ 80D6658
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r1, _080D6674 @ =gBattleAnimArgs
- ldrh r0, [r1, 0x6]
- strh r0, [r5, 0x2E]
- movs r2, 0xE
- ldrsh r0, [r1, r2]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _080D667C
- ldr r0, _080D6678 @ =gAnimBankTarget
- b _080D667E
- .align 2, 0
-_080D6674: .4byte gBattleAnimArgs
-_080D6678: .4byte gAnimBankTarget
-_080D667C:
- ldr r0, _080D670C @ =gAnimBankAttacker
-_080D667E:
- ldrb r6, [r0]
- ldr r0, _080D6710 @ =gMain
- ldr r3, _080D6714 @ =0x0000043d
- adds r0, r3
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080D669C
- adds r0, r6, 0
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080D66A4
-_080D669C:
- ldr r1, _080D6718 @ =gBattleAnimArgs
- ldrh r0, [r1]
- negs r0, r0
- strh r0, [r1]
-_080D66A4:
- adds r0, r6, 0
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- ldr r4, _080D6718 @ =gBattleAnimArgs
- lsrs r0, 24
- ldrh r1, [r4]
- adds r0, r1
- strh r0, [r5, 0x20]
- adds r0, r6, 0
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- ldrh r2, [r4, 0x2]
- adds r0, r2
- strh r0, [r5, 0x22]
- ldrh r1, [r4, 0xE]
- ldr r0, _080D671C @ =0x00007fff
- ands r0, r1
- strh r0, [r5, 0x36]
- ldrh r0, [r4, 0x4]
- strh r0, [r5, 0x38]
- ldrh r0, [r4, 0xA]
- strh r0, [r5, 0x3A]
- ldrh r0, [r4, 0x8]
- strh r0, [r5, 0x3C]
- ldrh r2, [r5, 0x4]
- lsls r1, r2, 22
- lsrs r1, 22
- movs r3, 0xC
- ldrsh r0, [r4, r3]
- lsls r0, 2
- adds r1, r0
- ldr r3, _080D6720 @ =0x000003ff
- adds r0, r3, 0
- ands r1, r0
- ldr r0, _080D6724 @ =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r5, 0x4]
- ldr r1, _080D6728 @ =sub_80D672C
- str r1, [r5, 0x1C]
- adds r0, r5, 0
- bl _call_via_r1
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080D670C: .4byte gAnimBankAttacker
-_080D6710: .4byte gMain
-_080D6714: .4byte 0x0000043d
-_080D6718: .4byte gBattleAnimArgs
-_080D671C: .4byte 0x00007fff
-_080D6720: .4byte 0x000003ff
-_080D6724: .4byte 0xfffffc00
-_080D6728: .4byte sub_80D672C
- thumb_func_end sub_80D6658
-
- thumb_func_start sub_80D672C
-sub_80D672C: @ 80D672C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x3A]
- ldrh r1, [r4, 0x3C]
- adds r0, r1
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r2, 0x36
- ldrsh r1, [r4, r2]
- bl __modsi3
- cmp r0, 0
- bne _080D6782
- adds r3, r4, 0
- adds r3, 0x3E
- ldrb r2, [r3]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
-_080D6782:
- ldrh r0, [r4, 0x2E]
- subs r1, r0, 0x1
- strh r1, [r4, 0x2E]
- lsls r0, 16
- cmp r0, 0
- bgt _080D6794
- adds r0, r4, 0
- bl DestroyAnimSprite
-_080D6794:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80D672C
-
- thumb_func_start sub_80D679C
-sub_80D679C: @ 80D679C
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0
- bl sub_8078764
- ldrh r2, [r4, 0x4]
- lsls r1, r2, 22
- lsrs r1, 22
- ldr r3, _080D67D8 @ =gBattleAnimArgs
- movs r5, 0x6
- ldrsh r0, [r3, r5]
- lsls r0, 2
- adds r1, r0
- ldr r5, _080D67DC @ =0x000003ff
- adds r0, r5, 0
- ands r1, r0
- ldr r0, _080D67E0 @ =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r4, 0x4]
- movs r1, 0x6
- ldrsh r0, [r3, r1]
- cmp r0, 0x1
- bne _080D67E4
- ldrb r0, [r4, 0x3]
- movs r1, 0x3F
- negs r1, r1
- ands r1, r0
- movs r0, 0x10
- b _080D67F2
- .align 2, 0
-_080D67D8: .4byte gBattleAnimArgs
-_080D67DC: .4byte 0x000003ff
-_080D67E0: .4byte 0xfffffc00
-_080D67E4:
- cmp r0, 0x2
- bne _080D67F6
- ldrb r0, [r4, 0x3]
- movs r1, 0x3F
- negs r1, r1
- ands r1, r0
- movs r0, 0x20
-_080D67F2:
- orrs r1, r0
- strb r1, [r4, 0x3]
-_080D67F6:
- ldr r0, _080D6810 @ =gBattleAnimArgs
- ldrh r0, [r0, 0x4]
- strh r0, [r4, 0x2E]
- ldr r0, _080D6814 @ =WaitAnimForDuration
- str r0, [r4, 0x1C]
- ldr r1, _080D6818 @ =DestroyAnimSprite
- adds r0, r4, 0
- bl StoreSpriteCallbackInData
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6810: .4byte gBattleAnimArgs
-_080D6814: .4byte WaitAnimForDuration
-_080D6818: .4byte DestroyAnimSprite
- thumb_func_end sub_80D679C
-
- thumb_func_start sub_80D681C
-sub_80D681C: @ 80D681C
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r6, _080D6864 @ =gAnimBankTarget
- ldrb r0, [r6]
- movs r1, 0
- bl GetBankPosition
- ldr r1, _080D6868 @ =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r1
- lsls r0, 24
- ldr r5, _080D686C @ =gBattleAnimArgs
- lsrs r0, 24
- ldrh r1, [r5]
- adds r0, r1
- strh r0, [r4, 0x8]
- ldrb r0, [r6]
- movs r1, 0x1
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r5, 0x2]
- adds r0, r1
- strh r0, [r4, 0xA]
- ldrh r0, [r5, 0x4]
- strh r0, [r4, 0xC]
- ldr r0, _080D6870 @ =sub_80D6874
- str r0, [r4]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6864: .4byte gAnimBankTarget
-_080D6868: .4byte gTasks
-_080D686C: .4byte gBattleAnimArgs
-_080D6870: .4byte sub_80D6874
- thumb_func_end sub_80D681C
-
- thumb_func_start sub_80D6874
-sub_80D6874: @ 80D6874
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r5, 0
- movs r7, 0
- ldr r1, _080D68B4 @ =gTasks
- lsls r0, 2
- add r0, r9
- lsls r0, 3
- adds r0, r1
- ldrb r2, [r0, 0xC]
- str r2, [sp]
- ldrh r4, [r0, 0x8]
- ldrh r6, [r0, 0xA]
- movs r3, 0xC
- ldrsh r0, [r0, r3]
- mov r10, r1
- cmp r0, 0
- bne _080D68B8
- movs r0, 0
- mov r8, r0
- movs r2, 0x1
- movs r1, 0x10
- mov r12, r1
- b _080D68C2
- .align 2, 0
-_080D68B4: .4byte gTasks
-_080D68B8:
- movs r2, 0x10
- mov r12, r2
- movs r3, 0x8
- mov r8, r3
- movs r2, 0x4
-_080D68C2:
- mov r0, r9
- lsls r1, r0, 2
- adds r0, r1, r0
- lsls r0, 3
- add r0, r10
- movs r3, 0x1C
- ldrsh r0, [r0, r3]
- mov r10, r1
- cmp r0, 0xA
- bhi _080D69B8
- lsls r0, 2
- ldr r1, _080D68E0 @ =_080D68E4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080D68E0: .4byte _080D68E4
- .align 2, 0
-_080D68E4:
- .4byte _080D6910
- .4byte _080D69B8
- .4byte _080D6924
- .4byte _080D69B8
- .4byte _080D6944
- .4byte _080D69B8
- .4byte _080D695A
- .4byte _080D69B8
- .4byte _080D697C
- .4byte _080D69B8
- .4byte _080D69B0
-_080D6910:
- ldr r0, _080D6920 @ =gSpriteTemplate_83D9938
- lsls r1, r4, 16
- asrs r1, 16
- lsls r2, r6, 16
- asrs r2, 16
- mov r4, r12
- lsls r3, r4, 16
- b _080D6992
- .align 2, 0
-_080D6920: .4byte gSpriteTemplate_83D9938
-_080D6924:
- mov r0, r12
- lsls r3, r0, 17
- mov r1, r8
- adds r0, r1, r2
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldr r0, _080D6940 @ =gSpriteTemplate_83D9938
- lsls r1, r4, 16
- asrs r1, 16
- lsls r2, r6, 16
- asrs r2, 16
- b _080D6992
- .align 2, 0
-_080D6940: .4byte gSpriteTemplate_83D9938
-_080D6944:
- mov r3, r12
- lsls r0, r3, 16
- asrs r0, 16
- lsls r3, r0, 1
- adds r3, r0
- lsls r0, r2, 1
- add r0, r8
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- b _080D6986
-_080D695A:
- mov r0, r12
- lsls r3, r0, 18
- lsls r0, r2, 1
- adds r0, r2
- add r0, r8
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldr r0, _080D6978 @ =gSpriteTemplate_83D9938
- lsls r1, r4, 16
- asrs r1, 16
- lsls r2, r6, 16
- asrs r2, 16
- b _080D6992
- .align 2, 0
-_080D6978: .4byte gSpriteTemplate_83D9938
-_080D697C:
- mov r1, r12
- lsls r0, r1, 16
- asrs r0, 16
- lsls r3, r0, 2
- adds r3, r0
-_080D6986:
- ldr r0, _080D69AC @ =gSpriteTemplate_83D9938
- lsls r1, r4, 16
- asrs r1, 16
- lsls r2, r6, 16
- asrs r2, 16
- lsls r3, 16
-_080D6992:
- asrs r3, 16
- adds r2, r3
- lsls r2, 16
- asrs r2, 16
- movs r3, 0x2
- bl CreateSprite
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- b _080D69B8
- .align 2, 0
-_080D69AC: .4byte gSpriteTemplate_83D9938
-_080D69B0:
- mov r0, r9
- bl DestroyAnimVisualTask
- b _080D69FC
-_080D69B8:
- cmp r7, 0
- beq _080D69EC
- ldr r4, _080D6A0C @ =gSprites
- lsls r3, r5, 4
- adds r3, r5
- lsls r3, 2
- adds r0, r3, r4
- ldrh r5, [r0, 0x4]
- lsls r2, r5, 22
- lsrs r2, 22
- add r2, r8
- ldr r6, _080D6A10 @ =0x000003ff
- adds r1, r6, 0
- ands r2, r1
- ldr r1, _080D6A14 @ =0xfffffc00
- ands r1, r5
- orrs r1, r2
- strh r1, [r0, 0x4]
- mov r1, sp
- ldrh r1, [r1]
- strh r1, [r0, 0x2E]
- adds r4, 0x1C
- adds r3, r4
- ldr r1, [r3]
- bl _call_via_r1
-_080D69EC:
- ldr r0, _080D6A18 @ =gTasks
- mov r1, r10
- add r1, r9
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x1C]
- adds r0, 0x1
- strh r0, [r1, 0x1C]
-_080D69FC:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6A0C: .4byte gSprites
-_080D6A10: .4byte 0x000003ff
-_080D6A14: .4byte 0xfffffc00
-_080D6A18: .4byte gTasks
- thumb_func_end sub_80D6874
-
- thumb_func_start sub_80D6A1C
-sub_80D6A1C: @ 80D6A1C
- push {lr}
- adds r3, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r3, r1]
- cmp r0, 0
- bne _080D6A3E
- ldrb r1, [r3, 0x1]
- movs r2, 0x3F
- adds r0, r2, 0
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r3, 0x1]
- ldrb r0, [r3, 0x3]
- ands r2, r0
- strb r2, [r3, 0x3]
- b _080D6A52
-_080D6A3E:
- ldrb r2, [r3, 0x1]
- movs r1, 0x3F
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3, 0x1]
- ldrb r0, [r3, 0x3]
- ands r1, r0
- movs r0, 0x40
- orrs r1, r0
- strb r1, [r3, 0x3]
-_080D6A52:
- ldrh r0, [r3, 0x30]
- adds r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xF
- bne _080D6A66
- adds r0, r3, 0
- bl DestroySprite
-_080D6A66:
- pop {r0}
- bx r0
- thumb_func_end sub_80D6A1C
-
- thumb_func_start sub_80D6A6C
-sub_80D6A6C: @ 80D6A6C
- push {r4-r7,lr}
- adds r4, r0, 0
- ldr r0, _080D6AD4 @ =gBattleAnimArgs
- ldrh r1, [r0]
- ldrh r2, [r4, 0x20]
- adds r1, r2
- strh r1, [r4, 0x20]
- ldrh r0, [r0, 0x2]
- ldrh r3, [r4, 0x22]
- adds r0, r3
- strh r0, [r4, 0x22]
- ldr r0, _080D6AD8 @ =gBattleAnimSpriteTemplate_83D9950
- adds r1, 0x20
- lsls r1, 16
- asrs r1, 16
- movs r7, 0x22
- ldrsh r2, [r4, r7]
- adds r3, r4, 0
- adds r3, 0x43
- ldrb r3, [r3]
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r3, _080D6ADC @ =gSprites
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r6, r2, r3
- ldrh r5, [r6, 0x4]
- lsls r1, r5, 22
- lsrs r1, 22
- adds r1, 0x8
- ldr r7, _080D6AE0 @ =0x000003ff
- adds r0, r7, 0
- ands r1, r0
- ldr r0, _080D6AE4 @ =0xfffffc00
- ands r0, r5
- orrs r0, r1
- strh r0, [r6, 0x4]
- ldr r1, _080D6AE8 @ =gAnimVisualTaskCount
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- adds r3, 0x1C
- adds r2, r3
- ldr r0, _080D6AEC @ =sub_80D6AF0
- str r0, [r2]
- str r0, [r4, 0x1C]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6AD4: .4byte gBattleAnimArgs
-_080D6AD8: .4byte gBattleAnimSpriteTemplate_83D9950
-_080D6ADC: .4byte gSprites
-_080D6AE0: .4byte 0x000003ff
-_080D6AE4: .4byte 0xfffffc00
-_080D6AE8: .4byte gAnimVisualTaskCount
-_080D6AEC: .4byte sub_80D6AF0
- thumb_func_end sub_80D6A6C
-
- thumb_func_start sub_80D6AF0
-sub_80D6AF0: @ 80D6AF0
- push {lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x2E]
- adds r0, 0x1
- strh r0, [r3, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x3
- bne _080D6B24
- movs r0, 0
- strh r0, [r3, 0x2E]
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- ldrb r2, [r0]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
-_080D6B24:
- ldrh r0, [r3, 0x30]
- adds r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x33
- bne _080D6B38
- adds r0, r3, 0
- bl DestroyAnimSprite
-_080D6B38:
- pop {r0}
- bx r0
- thumb_func_end sub_80D6AF0
-
- thumb_func_start sub_80D6B3C
-sub_80D6B3C: @ 80D6B3C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080D6B5C @ =gTasks
- adds r5, r1, r0
- ldr r0, _080D6B60 @ =gBattleAnimArgs
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080D6B68
- ldr r4, _080D6B64 @ =gAnimBankAttacker
- b _080D6B6A
- .align 2, 0
-_080D6B5C: .4byte gTasks
-_080D6B60: .4byte gBattleAnimArgs
-_080D6B64: .4byte gAnimBankAttacker
-_080D6B68:
- ldr r4, _080D6BAC @ =gAnimBankTarget
-_080D6B6A:
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x24]
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x26]
- ldr r2, _080D6BB0 @ =gBattleAnimArgs
- ldrh r0, [r2, 0x2]
- movs r1, 0
- strh r0, [r5, 0x14]
- strh r1, [r5, 0x16]
- strh r1, [r5, 0x18]
- strh r1, [r5, 0x1A]
- strh r1, [r5, 0x1C]
- ldrh r0, [r2, 0x6]
- strh r0, [r5, 0x1E]
- strh r1, [r5, 0x20]
- ldrh r0, [r2, 0x4]
- strh r0, [r5, 0x22]
- ldr r0, _080D6BB4 @ =sub_80D6BB8
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6BAC: .4byte gAnimBankTarget
-_080D6BB0: .4byte gBattleAnimArgs
-_080D6BB4: .4byte sub_80D6BB8
- thumb_func_end sub_80D6B3C
-
- thumb_func_start sub_80D6BB8
-sub_80D6BB8: @ 80D6BB8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- adds r2, r6, 0
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, _080D6CA0 @ =gTasks
- adds r5, r0, r1
- movs r1, 0x14
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _080D6CB8
- ldrh r0, [r5, 0x20]
- adds r0, 0x1
- movs r7, 0
- strh r0, [r5, 0x20]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x22
- ldrsh r1, [r5, r2]
- cmp r0, r1
- ble _080D6CC6
- strh r7, [r5, 0x20]
- ldr r0, _080D6CA4 @ =gSpriteTemplate_83D99B8
- movs r3, 0x24
- ldrsh r1, [r5, r3]
- movs r3, 0x26
- ldrsh r2, [r5, r3]
- movs r3, 0x2
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _080D6CC6
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _080D6CA8 @ =gSprites
- adds r4, r0
- ldr r1, _080D6CAC @ =gUnknown_083D9968
- movs r2, 0x1A
- ldrsh r0, [r5, r2]
- lsls r0, 1
- adds r0, r1
- movs r3, 0
- ldrsb r3, [r0, r3]
- ldrh r0, [r4, 0x20]
- adds r3, r0
- strh r3, [r4, 0x20]
- movs r2, 0x1A
- ldrsh r0, [r5, r2]
- lsls r0, 1
- adds r1, 0x1
- adds r0, r1
- movs r2, 0
- ldrsb r2, [r0, r2]
- ldrh r0, [r4, 0x22]
- adds r2, r0
- strh r2, [r4, 0x22]
- movs r1, 0x18
- ldrsh r0, [r5, r1]
- lsls r1, r0, 2
- adds r1, r0
- movs r0, 0x28
- subs r0, r1
- strh r0, [r4, 0x2E]
- strh r3, [r4, 0x30]
- ldrh r0, [r5, 0x24]
- strh r0, [r4, 0x32]
- strh r2, [r4, 0x34]
- ldrh r0, [r5, 0x26]
- strh r0, [r4, 0x36]
- strh r6, [r4, 0x38]
- adds r0, r4, 0
- bl InitAnimSpriteTranslationDeltas
- ldr r1, _080D6CB0 @ =sub_80D6D00
- adds r0, r4, 0
- bl StoreSpriteCallbackInData
- ldr r0, _080D6CB4 @ =sub_8078600
- str r0, [r4, 0x1C]
- ldrh r0, [r5, 0x1A]
- adds r0, 0x1
- strh r0, [r5, 0x1A]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xF
- ble _080D6C70
- strh r7, [r5, 0x1A]
-_080D6C70:
- ldrh r0, [r5, 0x1C]
- adds r0, 0x1
- strh r0, [r5, 0x1C]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x1E
- ldrsh r1, [r5, r2]
- cmp r0, r1
- blt _080D6C92
- strh r7, [r5, 0x1C]
- ldrh r1, [r5, 0x18]
- movs r3, 0x18
- ldrsh r0, [r5, r3]
- cmp r0, 0x5
- bgt _080D6C92
- adds r0, r1, 0x1
- strh r0, [r5, 0x18]
-_080D6C92:
- ldrh r0, [r5, 0x16]
- adds r0, 0x1
- strh r0, [r5, 0x16]
- ldrh r0, [r5, 0x14]
- subs r0, 0x1
- strh r0, [r5, 0x14]
- b _080D6CC6
- .align 2, 0
-_080D6CA0: .4byte gTasks
-_080D6CA4: .4byte gSpriteTemplate_83D99B8
-_080D6CA8: .4byte gSprites
-_080D6CAC: .4byte gUnknown_083D9968
-_080D6CB0: .4byte sub_80D6D00
-_080D6CB4: .4byte sub_8078600
-_080D6CB8:
- movs r1, 0x16
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _080D6CC6
- adds r0, r2, 0
- bl DestroyAnimVisualTask
-_080D6CC6:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80D6BB8
-
- thumb_func_start sub_80D6CCC
-sub_80D6CCC: @ 80D6CCC
- push {r4,lr}
- adds r4, r0, 0
- bl TranslateAnimSpriteByDeltas
- lsls r0, 24
- cmp r0, 0
- beq _080D6CF4
- ldr r2, _080D6CFC @ =gTasks
- movs r0, 0x38
- ldrsh r1, [r4, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrh r1, [r0, 0x16]
- subs r1, 0x1
- strh r1, [r0, 0x16]
- adds r0, r4, 0
- bl DestroySprite
-_080D6CF4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6CFC: .4byte gTasks
- thumb_func_end sub_80D6CCC
-
- thumb_func_start sub_80D6D00
-sub_80D6D00: @ 80D6D00
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r0, _080D6D14 @ =sub_80D6CCC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6D14: .4byte sub_80D6CCC
- thumb_func_end sub_80D6D00
-
- thumb_func_start sub_80D6D18
-sub_80D6D18: @ 80D6D18
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _080D6D2C @ =gBattleAnimArgs
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080D6D34
- ldr r4, _080D6D30 @ =gAnimBankAttacker
- b _080D6D36
- .align 2, 0
-_080D6D2C: .4byte gBattleAnimArgs
-_080D6D30: .4byte gAnimBankAttacker
-_080D6D34:
- ldr r4, _080D6D64 @ =gAnimBankTarget
-_080D6D36:
- 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, _080D6D68 @ =move_anim_8074EE0
- adds r0, r5, 0
- bl StoreSpriteCallbackInData
- ldr r0, _080D6D6C @ =sub_80785E4
- str r0, [r5, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6D64: .4byte gAnimBankTarget
-_080D6D68: .4byte move_anim_8074EE0
-_080D6D6C: .4byte sub_80785E4
- thumb_func_end sub_80D6D18
-
- thumb_func_start sub_80D6D70
-sub_80D6D70: @ 80D6D70
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _080D6D84 @ =gBattleAnimArgs
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080D6D8C
- ldr r4, _080D6D88 @ =gAnimBankAttacker
- b _080D6D8E
- .align 2, 0
-_080D6D84: .4byte gBattleAnimArgs
-_080D6D88: .4byte gAnimBankAttacker
-_080D6D8C:
- ldr r4, _080D6DC8 @ =gAnimBankTarget
-_080D6D8E:
- 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, _080D6DCC @ =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- strh r0, [r5, 0x24]
- ldrh r0, [r1, 0x4]
- strh r0, [r5, 0x26]
- ldr r1, _080D6DD0 @ =DestroyAnimSprite
- adds r0, r5, 0
- bl StoreSpriteCallbackInData
- ldr r0, _080D6DD4 @ =sub_8078600
- str r0, [r5, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6DC8: .4byte gAnimBankTarget
-_080D6DCC: .4byte gBattleAnimArgs
-_080D6DD0: .4byte DestroyAnimSprite
-_080D6DD4: .4byte sub_8078600
- thumb_func_end sub_80D6D70
-
- thumb_func_start sub_80D6DD8
-sub_80D6DD8: @ 80D6DD8
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- ldr r4, _080D6E30 @ =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]
- movs r0, 0
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x3A]
- movs r0, 0x10
- strh r0, [r5, 0x3C]
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080D6E26
- movs r1, 0x3C
- ldrsh r0, [r5, r1]
- negs r0, r0
- strh r0, [r5, 0x3C]
-_080D6E26:
- ldr r0, _080D6E34 @ =sub_80D6E38
- str r0, [r5, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6E30: .4byte gAnimBankAttacker
-_080D6E34: .4byte sub_80D6E38
- thumb_func_end sub_80D6DD8
-
- thumb_func_start sub_80D6E38
-sub_80D6E38: @ 80D6E38
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080D6E4A
- cmp r0, 0x1
- beq _080D6E60
- b _080D6E90
-_080D6E4A:
- ldrh r0, [r4, 0x30]
- adds r0, 0x1
- strh r0, [r4, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x28
- ble _080D6E90
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- b _080D6E90
-_080D6E60:
- ldrh r2, [r4, 0x3C]
- ldrh r1, [r4, 0x20]
- adds r0, r2, r1
- strh r0, [r4, 0x20]
- ldr r3, _080D6E98 @ =gSprites
- movs r0, 0x3A
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x24]
- adds r2, r1
- strh r2, [r0, 0x24]
- ldrh r0, [r4, 0x20]
- adds r0, 0x50
- lsls r0, 16
- movs r1, 0xC8
- lsls r1, 17
- cmp r0, r1
- bls _080D6E90
- adds r0, r4, 0
- bl move_anim_8074EE0
-_080D6E90:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080D6E98: .4byte gSprites
- thumb_func_end sub_80D6E38
-
- thumb_func_start sub_80D6E9C
-sub_80D6E9C: @ 80D6E9C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- ldr r1, _080D6EC0 @ =gTasks
- adds r5, r0, r1
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _080D6F30
- cmp r0, 0x1
- bgt _080D6EC4
- cmp r0, 0
- beq _080D6ED0
- b _080D7000
- .align 2, 0
-_080D6EC0: .4byte gTasks
-_080D6EC4:
- cmp r0, 0x2
- beq _080D6F8C
- cmp r0, 0x3
- bne _080D6ECE
- b _080D6FE0
-_080D6ECE:
- b _080D7000
-_080D6ED0:
- movs r0, 0
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r0, 24
- movs r6, 0
- strh r0, [r5, 0x26]
- ldr r4, _080D6F04 @ =gAnimBankAttacker
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x24]
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080D6F0C
- ldr r0, _080D6F08 @ =0x0000ffe0
- strh r0, [r5, 0x24]
- movs r0, 0x2
- b _080D6F12
- .align 2, 0
-_080D6F04: .4byte gAnimBankAttacker
-_080D6F08: .4byte 0x0000ffe0
-_080D6F0C:
- movs r0, 0x20
- strh r0, [r5, 0x24]
- ldr r0, _080D6F28 @ =0x0000fffe
-_080D6F12:
- strh r0, [r5, 0x22]
- ldr r2, _080D6F2C @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r5, 0x24]
- strh r1, [r0, 0x24]
- b _080D6FD2
- .align 2, 0
-_080D6F28: .4byte 0x0000fffe
-_080D6F2C: .4byte gSprites
-_080D6F30:
- ldrh r0, [r5, 0xA]
- adds r0, 0x1
- strh r0, [r5, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _080D7000
- movs r0, 0
- strh r0, [r5, 0xA]
- ldr r4, _080D6F88 @ =gSprites
- movs r1, 0x26
- ldrsh r0, [r5, r1]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r4
- adds r2, 0x3E
- ldrb r3, [r2]
- lsls r0, r3, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- ldrh r1, [r5, 0x24]
- movs r2, 0x24
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _080D6FD2
- ldrh r2, [r5, 0x22]
- adds r2, r1, r2
- strh r2, [r5, 0x24]
- movs r0, 0x26
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r2, [r0, 0x24]
- b _080D7000
- .align 2, 0
-_080D6F88: .4byte gSprites
-_080D6F8C:
- ldrh r0, [r5, 0xA]
- adds r0, 0x1
- strh r0, [r5, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _080D7000
- movs r0, 0
- strh r0, [r5, 0xA]
- ldr r1, _080D6FDC @ =gSprites
- movs r2, 0x26
- ldrsh r0, [r5, r2]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- adds r2, 0x3E
- ldrb r3, [r2]
- lsls r0, r3, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r3
- orrs r0, r1
- strb r0, [r2]
- ldrh r0, [r5, 0xC]
- adds r0, 0x1
- strh r0, [r5, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x8
- bne _080D7000
-_080D6FD2:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- b _080D7000
- .align 2, 0
-_080D6FDC: .4byte gSprites
-_080D6FE0:
- ldr r2, _080D7008 @ =gSprites
- movs r0, 0x26
- ldrsh r1, [r5, 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]
- adds r0, r3, 0
- bl DestroyAnimVisualTask
-_080D7000:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080D7008: .4byte gSprites
- thumb_func_end sub_80D6E9C
-
- thumb_func_start sub_80D700C
-sub_80D700C: @ 80D700C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _080D7030 @ =gTasks
- adds r5, r0, r1
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- bne _080D7026
- b _080D714C
-_080D7026:
- cmp r0, 0x1
- bgt _080D7034
- cmp r0, 0
- beq _080D703C
- b _080D718E
- .align 2, 0
-_080D7030: .4byte gTasks
-_080D7034:
- cmp r0, 0x2
- bne _080D703A
- b _080D7180
-_080D703A:
- b _080D718E
-_080D703C:
- ldr r4, _080D707C @ =gAnimBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- movs r2, 0x1
- negs r2, r2
- adds r1, r2, 0
- cmp r0, 0
- bne _080D7052
- movs r1, 0x1
-_080D7052:
- movs r6, 0
- strh r1, [r5, 0xA]
- ldr r0, _080D7080 @ =gBattleAnimArgs
- movs r1, 0
- ldrsh r2, [r0, r1]
- adds r3, r0, 0
- cmp r2, 0
- beq _080D7088
- cmp r2, 0x4
- beq _080D70B0
- ldrh r1, [r3]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080D70E8
- movs r0, 0x80
- lsls r0, 1
- strh r0, [r5, 0xE]
- ldr r0, _080D7084 @ =0x0000fff0
- b _080D70F0
- .align 2, 0
-_080D707C: .4byte gAnimBankAttacker
-_080D7080: .4byte gBattleAnimArgs
-_080D7084: .4byte 0x0000fff0
-_080D7088:
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0xE]
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x12]
- movs r2, 0xA
- ldrsh r0, [r5, r2]
- lsls r0, 7
- adds r0, 0x78
- strh r0, [r5, 0x10]
- b _080D7126
-_080D70B0:
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r1, 7
- movs r0, 0x78
- subs r0, r1
- strh r0, [r5, 0xE]
- ldr r4, _080D70E4 @ =gAnimBankTarget
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x12]
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0xA
- ldrsh r1, [r5, r2]
- lsls r1, 5
- subs r0, r1
- strh r0, [r5, 0x10]
- b _080D7126
- .align 2, 0
-_080D70E4: .4byte gAnimBankTarget
-_080D70E8:
- ldr r0, _080D710C @ =0x0000fff0
- strh r0, [r5, 0xE]
- movs r0, 0x80
- lsls r0, 1
-_080D70F0:
- strh r0, [r5, 0x10]
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- bne _080D7110
- movs r2, 0
- ldrsh r0, [r3, r2]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 1
- movs r0, 0x50
- subs r0, r1
- strh r0, [r5, 0x12]
- b _080D7126
- .align 2, 0
-_080D710C: .4byte 0x0000fff0
-_080D7110:
- movs r0, 0
- ldrsh r1, [r3, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 1
- adds r0, 0x28
- strh r0, [r5, 0x12]
- ldrh r1, [r5, 0xE]
- ldrh r0, [r5, 0x10]
- strh r0, [r5, 0xE]
- strh r1, [r5, 0x10]
-_080D7126:
- movs r2, 0xE
- ldrsh r1, [r5, r2]
- movs r2, 0x10
- ldrsh r0, [r5, r2]
- cmp r1, r0
- bge _080D713C
- movs r1, 0
- movs r0, 0x1
- strh r0, [r5, 0xA]
- strh r1, [r5, 0x14]
- b _080D7178
-_080D713C:
- ldr r0, _080D7148 @ =0x0000ffff
- strh r0, [r5, 0xA]
- movs r0, 0x3
- strh r0, [r5, 0x14]
- b _080D7178
- .align 2, 0
-_080D7148: .4byte 0x0000ffff
-_080D714C:
- ldrh r0, [r5, 0xC]
- adds r0, 0x1
- strh r0, [r5, 0xC]
- lsls r0, 16
- cmp r0, 0
- ble _080D718E
- movs r0, 0
- strh r0, [r5, 0xC]
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80D7194
- lsls r0, 24
- cmp r0, 0
- bne _080D7178
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80D7194
- lsls r0, 24
- cmp r0, 0
- beq _080D718E
-_080D7178:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- b _080D718E
-_080D7180:
- movs r1, 0x16
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _080D718E
- adds r0, r4, 0
- bl DestroyAnimVisualTask
-_080D718E:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80D700C
-
- thumb_func_start sub_80D7194
-sub_80D7194: @ 80D7194
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _080D7220 @ =gSpriteTemplate_83D9B10
- movs r2, 0xE
- ldrsh r1, [r4, r2]
- movs r3, 0x12
- ldrsh r2, [r4, r3]
- movs r3, 0x23
- bl CreateSprite
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x40
- beq _080D71CA
- ldr r1, _080D7224 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- strh r5, [r0, 0x3A]
- movs r1, 0x7
- strh r1, [r0, 0x3C]
- ldrh r0, [r4, 0x16]
- adds r0, 0x1
- strh r0, [r4, 0x16]
-_080D71CA:
- ldrh r1, [r4, 0xA]
- ldrh r5, [r4, 0x14]
- adds r0, r1, r5
- strh r0, [r4, 0x14]
- lsls r0, 16
- cmp r0, 0
- bge _080D71DC
- movs r0, 0x3
- strh r0, [r4, 0x14]
-_080D71DC:
- movs r2, 0x14
- ldrsh r0, [r4, r2]
- cmp r0, 0x3
- ble _080D71E8
- movs r0, 0
- strh r0, [r4, 0x14]
-_080D71E8:
- movs r3, 0xA
- ldrsh r0, [r4, r3]
- lsls r0, 4
- ldrh r5, [r4, 0xE]
- adds r2, r0, r5
- strh r2, [r4, 0xE]
- lsls r0, r1, 16
- asrs r3, r0, 16
- cmp r3, 0x1
- bne _080D7208
- lsls r0, r2, 16
- asrs r0, 16
- movs r5, 0x10
- ldrsh r1, [r4, r5]
- cmp r0, r1
- bge _080D721C
-_080D7208:
- movs r0, 0x1
- negs r0, r0
- cmp r3, r0
- bne _080D7228
- lsls r0, r2, 16
- asrs r0, 16
- movs r2, 0x10
- ldrsh r1, [r4, r2]
- cmp r0, r1
- bgt _080D7228
-_080D721C:
- movs r0, 0x1
- b _080D722A
- .align 2, 0
-_080D7220: .4byte gSpriteTemplate_83D9B10
-_080D7224: .4byte gSprites
-_080D7228:
- movs r0, 0
-_080D722A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80D7194
-
- thumb_func_start sub_80D7230
-sub_80D7230: @ 80D7230
- 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, 0xC
- ble _080D7270
- ldr r3, _080D7278 @ =gTasks
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- lsls r1, 1
- movs r0, 0x3A
- ldrsh r2, [r4, r0]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r3, 0x8
- adds r1, r3
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- ldrb r0, [r4, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
- adds r0, r4, 0
- bl DestroySprite
-_080D7270:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080D7278: .4byte gTasks
- thumb_func_end sub_80D7230
-
- thumb_func_start sub_80D727C
-sub_80D727C: @ 80D727C
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _080D728E
- cmp r0, 0x1
- beq _080D72C0
- b _080D72D4
-_080D728E:
- ldr r4, _080D72BC @ =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]
- adds r0, r5, 0
- movs r1, 0x2
- bl StartSpriteAffineAnim
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
- b _080D72D4
- .align 2, 0
-_080D72BC: .4byte gAnimBankAttacker
-_080D72C0:
- adds r0, r5, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _080D72D4
- adds r0, r5, 0
- bl move_anim_8074EE0
-_080D72D4:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80D727C
-
- thumb_func_start sub_80D72DC
-sub_80D72DC: @ 80D72DC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, _080D7300 @ =gTasks
- adds r5, r0, r1
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x4
- bls _080D72F6
- b _080D7468
-_080D72F6:
- lsls r0, 2
- ldr r1, _080D7304 @ =_080D7308
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080D7300: .4byte gTasks
-_080D7304: .4byte _080D7308
- .align 2, 0
-_080D7308:
- .4byte _080D731C
- .4byte _080D73AC
- .4byte _080D73E8
- .4byte _080D7444
- .4byte _080D7454
-_080D731C:
- ldr r4, _080D73A0 @ =gAnimBankAttacker
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x14]
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x16]
- movs r0, 0x4
- strh r0, [r5, 0x18]
- ldr r0, _080D73A4 @ =gAnimBankTarget
- ldrb r0, [r0]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x1C]
- movs r2, 0x1C
- ldrsh r0, [r5, r2]
- movs r2, 0x14
- ldrsh r1, [r5, r2]
- subs r0, r1
- movs r1, 0x5
- bl __divsi3
- strh r0, [r5, 0x1A]
- movs r0, 0x7
- strh r0, [r5, 0x10]
- ldr r0, _080D73A8 @ =0x0000ffff
- strh r0, [r5, 0x12]
- movs r0, 0xC
- strh r0, [r5, 0x1E]
- subs r0, 0x4C
- bl BattleAnimAdjustPanning
- lsls r0, 24
- asrs r0, 24
- strh r0, [r5, 0x20]
- movs r0, 0x3F
- bl BattleAnimAdjustPanning
- lsls r0, 24
- asrs r0, 24
- strh r0, [r5, 0x22]
- ldrh r0, [r5, 0x20]
- strh r0, [r5, 0x24]
- movs r1, 0x22
- ldrsh r0, [r5, r1]
- movs r2, 0x20
- ldrsh r1, [r5, r2]
- subs r0, r1
- movs r1, 0x3
- bl __divsi3
- strh r0, [r5, 0x26]
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- b _080D7466
- .align 2, 0
-_080D73A0: .4byte gAnimBankAttacker
-_080D73A4: .4byte gAnimBankTarget
-_080D73A8: .4byte 0x0000ffff
-_080D73AC:
- ldrh r0, [r5, 0xA]
- adds r0, 0x1
- strh r0, [r5, 0xA]
- lsls r0, 16
- cmp r0, 0
- ble _080D73DC
- movs r0, 0
- strh r0, [r5, 0xA]
- adds r0, r5, 0
- adds r1, r2, 0
- bl sub_80D7470
- lsls r0, 24
- cmp r0, 0
- beq _080D73DC
- movs r1, 0xC
- ldrsh r0, [r5, r1]
- cmp r0, 0x5
- bne _080D73D6
- movs r0, 0x3
- b _080D73DA
-_080D73D6:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
-_080D73DA:
- strh r0, [r5, 0x8]
-_080D73DC:
- ldrh r1, [r5, 0x1E]
- movs r2, 0x1E
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _080D7468
- b _080D745E
-_080D73E8:
- ldrh r1, [r5, 0x1E]
- movs r2, 0x1E
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _080D73F6
- subs r0, r1, 0x1
- strh r0, [r5, 0x1E]
-_080D73F6:
- ldrh r0, [r5, 0xA]
- adds r0, 0x1
- movs r3, 0
- strh r0, [r5, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- ble _080D7468
- strh r3, [r5, 0xA]
- ldrh r1, [r5, 0xC]
- movs r2, 0x1
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _080D7422
- movs r0, 0x4
- strh r0, [r5, 0x16]
- movs r0, 0x44
- strh r0, [r5, 0x18]
- strh r3, [r5, 0x10]
- strh r2, [r5, 0x12]
- b _080D7432
-_080D7422:
- movs r0, 0x44
- strh r0, [r5, 0x16]
- movs r0, 0x4
- strh r0, [r5, 0x18]
- movs r0, 0x7
- strh r0, [r5, 0x10]
- ldr r0, _080D7440 @ =0x0000ffff
- strh r0, [r5, 0x12]
-_080D7432:
- movs r1, 0x1E
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _080D7464
- movs r0, 0x4
- b _080D7466
- .align 2, 0
-_080D7440: .4byte 0x0000ffff
-_080D7444:
- movs r1, 0xE
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _080D7468
- adds r0, r2, 0
- bl DestroyAnimVisualTask
- b _080D7468
-_080D7454:
- ldrh r1, [r5, 0x1E]
- movs r2, 0x1E
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _080D7464
-_080D745E:
- subs r0, r1, 0x1
- strh r0, [r5, 0x1E]
- b _080D7468
-_080D7464:
- movs r0, 0x1
-_080D7466:
- strh r0, [r5, 0x8]
-_080D7468:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80D72DC
-
- thumb_func_start sub_80D7470
-sub_80D7470: @ 80D7470
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _080D7538 @ =gSpriteTemplate_83D9B40
- movs r2, 0x14
- ldrsh r1, [r4, r2]
- movs r3, 0x16
- ldrsh r2, [r4, r3]
- movs r3, 0x23
- bl CreateSprite
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x40
- beq _080D74DC
- ldr r1, _080D753C @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r3, r0, r1
- ldrh r2, [r3, 0x4]
- lsls r1, r2, 22
- lsrs r1, 22
- ldrh r6, [r4, 0x10]
- adds r1, r6
- ldr r6, _080D7540 @ =0x000003ff
- adds r0, r6, 0
- ands r1, r0
- ldr r0, _080D7544 @ =0xfffffc00
- ands r0, r2
- orrs r0, r1
- strh r0, [r3, 0x4]
- ldrh r0, [r4, 0x12]
- ldrh r1, [r4, 0x10]
- adds r0, r1
- strh r0, [r4, 0x10]
- lsls r0, 16
- cmp r0, 0
- bge _080D74C4
- movs r0, 0x7
- strh r0, [r4, 0x10]
-_080D74C4:
- movs r2, 0x10
- ldrsh r0, [r4, r2]
- cmp r0, 0x7
- ble _080D74D0
- movs r0, 0
- strh r0, [r4, 0x10]
-_080D74D0:
- strh r5, [r3, 0x3A]
- movs r0, 0x3
- strh r0, [r3, 0x3C]
- ldrh r0, [r4, 0xE]
- adds r0, 0x1
- strh r0, [r4, 0xE]
-_080D74DC:
- movs r3, 0x10
- ldrsh r0, [r4, r3]
- cmp r0, 0
- bne _080D74FE
- movs r5, 0x12
- ldrsh r0, [r4, r5]
- cmp r0, 0
- ble _080D74FE
- ldrh r1, [r4, 0x26]
- ldrh r6, [r4, 0x24]
- adds r1, r6
- strh r1, [r4, 0x24]
- lsls r1, 24
- asrs r1, 24
- movs r0, 0x76
- bl PlaySE12WithPanning
-_080D74FE:
- movs r0, 0x12
- ldrsh r3, [r4, r0]
- ldrh r2, [r4, 0x16]
- cmp r3, 0
- bge _080D7514
- lsls r0, r2, 16
- asrs r0, 16
- movs r5, 0x18
- ldrsh r1, [r4, r5]
- cmp r0, r1
- ble _080D7524
-_080D7514:
- cmp r3, 0
- ble _080D7548
- lsls r0, r2, 16
- asrs r0, 16
- movs r6, 0x18
- ldrsh r1, [r4, r6]
- cmp r0, r1
- blt _080D7548
-_080D7524:
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0x1A]
- ldrh r1, [r4, 0x14]
- adds r0, r1
- strh r0, [r4, 0x14]
- movs r0, 0x1
- b _080D7554
- .align 2, 0
-_080D7538: .4byte gSpriteTemplate_83D9B40
-_080D753C: .4byte gSprites
-_080D7540: .4byte 0x000003ff
-_080D7544: .4byte 0xfffffc00
-_080D7548:
- movs r3, 0x12
- ldrsh r0, [r4, r3]
- lsls r0, 3
- adds r0, r2, r0
- strh r0, [r4, 0x16]
- movs r0, 0
-_080D7554:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80D7470
-
- thumb_func_start sub_80D755C
-sub_80D755C: @ 80D755C
- 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, 0xC
- ble _080D7592
- ldr r3, _080D7598 @ =gTasks
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- lsls r1, 1
- movs r0, 0x3A
- ldrsh r2, [r4, r0]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r3, 0x8
- adds r1, r3
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- adds r0, r4, 0
- bl DestroySprite
-_080D7592:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080D7598: .4byte gTasks
- thumb_func_end sub_80D755C
-
- thumb_func_start sub_80D759C
-sub_80D759C: @ 80D759C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, _080D75C0 @ =gTasks
- adds r5, r0, r1
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _080D7618
- cmp r0, 0x1
- bgt _080D75C4
- cmp r0, 0
- beq _080D75CA
- b _080D764E
- .align 2, 0
-_080D75C0: .4byte gTasks
-_080D75C4:
- cmp r0, 0x2
- beq _080D7640
- b _080D764E
-_080D75CA:
- ldr r0, _080D7614 @ =gAnimBankTarget
- ldrb r0, [r0]
- movs r1, 0x1
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- adds r0, 0x20
- strh r0, [r5, 0x26]
- strh r0, [r5, 0x24]
- cmp r0, 0x10
- ble _080D75F4
- adds r2, r0, 0
-_080D75E4:
- adds r1, r2, 0
- subs r1, 0x20
- adds r2, r1, 0
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x10
- bgt _080D75E4
- strh r1, [r5, 0x24]
-_080D75F4:
- ldr r4, _080D7614 @ =gAnimBankTarget
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x22]
- ldrb r0, [r4]
- bl sub_8079E90
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x2
- strh r0, [r5, 0x20]
- b _080D7638
- .align 2, 0
-_080D7614: .4byte gAnimBankTarget
-_080D7618:
- ldrh r0, [r5, 0xA]
- adds r0, 0x1
- strh r0, [r5, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _080D764E
- movs r0, 0
- strh r0, [r5, 0xA]
- adds r0, r5, 0
- adds r1, r2, 0
- bl sub_80D7654
- lsls r0, 24
- cmp r0, 0
- beq _080D764E
-_080D7638:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- b _080D764E
-_080D7640:
- movs r1, 0x1C
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _080D764E
- adds r0, r2, 0
- bl DestroyAnimVisualTask
-_080D764E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80D759C
-
- thumb_func_start sub_80D7654
-sub_80D7654: @ 80D7654
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _080D76B0 @ =gBattleAnimSpriteTemplate_83D97D0
- movs r2, 0x22
- ldrsh r1, [r4, r2]
- movs r3, 0x24
- ldrsh r2, [r4, r3]
- ldrh r3, [r4, 0x20]
- lsls r3, 24
- lsrs r3, 24
- bl CreateSprite
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _080D7698
- ldr r3, _080D76B4 @ =gSprites
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r3, 0
- adds r1, 0x1C
- adds r1, r0, r1
- ldr r2, _080D76B8 @ =sub_80D76C4
- str r2, [r1]
- adds r0, r3
- strh r5, [r0, 0x3A]
- movs r1, 0xA
- strh r1, [r0, 0x3C]
- ldrh r0, [r4, 0x1C]
- adds r0, 0x1
- strh r0, [r4, 0x1C]
-_080D7698:
- ldrh r2, [r4, 0x24]
- movs r0, 0x24
- ldrsh r1, [r4, r0]
- movs r3, 0x26
- ldrsh r0, [r4, r3]
- cmp r1, r0
- bge _080D76BC
- adds r0, r2, 0
- adds r0, 0x20
- strh r0, [r4, 0x24]
- movs r0, 0
- b _080D76BE
- .align 2, 0
-_080D76B0: .4byte gBattleAnimSpriteTemplate_83D97D0
-_080D76B4: .4byte gSprites
-_080D76B8: .4byte sub_80D76C4
-_080D76BC:
- movs r0, 0x1
-_080D76BE:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80D7654
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/decompress.s b/asm/decompress.s
new file mode 100644
index 000000000..99e449d8f
--- /dev/null
+++ b/asm/decompress.s
@@ -0,0 +1,350 @@
+ .include "constants/gba_constants.inc"
+
+ .include "include/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start unref_sub_800D42C
+unref_sub_800D42C: @ 800D42C
+ push {r4-r7,lr}
+ mov r7, r10
+ mov r6, r9
+ mov r5, r8
+ push {r5-r7}
+ sub sp, 0x24
+ mov r9, r0
+ str r1, [sp]
+ str r2, [sp, 0x4]
+ adds r5, r3, 0
+ movs r0, 0x1
+ mov r1, r9
+ ands r0, r1
+ cmp r0, 0
+ bne _0800D44C
+ b _0800D5E4
+_0800D44C:
+ asrs r0, r1, 1
+ adds r0, 0x4
+ lsls r0, 24
+ lsrs r0, 24
+ str r0, [sp, 0x8]
+ movs r0, 0
+ ldr r2, [sp]
+ cmp r0, r2
+ blt _0800D460
+ b _0800D674
+_0800D460:
+ movs r4, 0x8
+ subs r1, r4, r1
+ str r1, [sp, 0x10]
+_0800D466:
+ movs r7, 0
+ adds r0, 0x1
+ str r0, [sp, 0x14]
+ ldr r0, [sp, 0x10]
+ cmp r7, r0
+ bge _0800D4E2
+ ldr r1, [sp, 0x8]
+ lsls r1, 8
+ str r1, [sp, 0x18]
+ movs r2, 0
+ mov r10, r2
+ mov r0, r9
+ movs r4, 0x8
+ subs r0, r4, r0
+ str r0, [sp, 0xC]
+_0800D484:
+ movs r3, 0
+ asrs r0, r7, 1
+ adds r1, r7, 0
+ movs r2, 0x1
+ ands r1, r2
+ str r1, [sp, 0x20]
+ lsls r0, 8
+ mov r8, r0
+ mov r12, r5
+_0800D496:
+ lsls r1, r3, 5
+ ldr r4, [sp, 0x18]
+ adds r0, r5, r4
+ adds r0, r1
+ mov r1, r8
+ adds r2, r0, r1
+ mov r1, r12
+ add r1, r8
+ movs r6, 0xF
+_0800D4A8:
+ ldr r4, [sp, 0x20]
+ cmp r4, 0
+ bne _0800D4B8
+ strb r4, [r1]
+ add r4, sp, 0x20
+ ldrb r4, [r4]
+ strb r4, [r2, 0x10]
+ b _0800D4C6
+_0800D4B8:
+ mov r0, r10
+ strb r0, [r1, 0x10]
+ movs r4, 0x80
+ lsls r4, 1
+ adds r4, r2, r4
+ str r4, [sp, 0x1C]
+ strb r0, [r4]
+_0800D4C6:
+ adds r2, 0x1
+ adds r1, 0x1
+ subs r6, 0x1
+ cmp r6, 0
+ bge _0800D4A8
+ movs r0, 0x20
+ add r12, r0
+ adds r3, 0x1
+ cmp r3, 0x7
+ ble _0800D496
+ adds r7, 0x1
+ ldr r1, [sp, 0xC]
+ cmp r7, r1
+ blt _0800D484
+_0800D4E2:
+ movs r7, 0
+ movs r2, 0
+_0800D4E6:
+ movs r6, 0
+ adds r4, r7, 0x1
+ mov r8, r4
+ lsls r4, r7, 5
+_0800D4EE:
+ adds r0, r6, 0x1
+ mov r10, r0
+ lsls r1, r6, 8
+ adds r0, r1, 0
+ adds r0, 0xC0
+ adds r0, r5, r0
+ adds r0, r4
+ adds r1, r5, r1
+ adds r1, r4
+ movs r3, 0x1F
+_0800D502:
+ strb r2, [r1]
+ strb r2, [r0]
+ adds r0, 0x1
+ adds r1, 0x1
+ subs r3, 0x1
+ cmp r3, 0
+ bge _0800D502
+ mov r6, r10
+ cmp r6, 0x7
+ ble _0800D4EE
+ mov r7, r8
+ cmp r7, 0x1
+ ble _0800D4E6
+ mov r1, r9
+ cmp r1, 0x5
+ bne _0800D528
+ movs r2, 0x90
+ lsls r2, 1
+ adds r5, r2
+_0800D528:
+ movs r7, 0
+ cmp r7, r9
+ bge _0800D5BE
+_0800D52E:
+ movs r3, 0
+ adds r7, 0x1
+ mov r8, r7
+ cmp r3, r9
+ bge _0800D59E
+_0800D538:
+ adds r3, 0x1
+ mov r10, r3
+ ldr r4, [sp, 0x4]
+ adds r4, 0x20
+ adds r7, r5, 0
+ adds r7, 0x20
+ movs r0, 0x12
+ adds r0, r5
+ mov r12, r0
+ ldr r2, [sp, 0x4]
+ adds r3, r5, 0
+ movs r6, 0x3
+_0800D550:
+ ldrb r0, [r2]
+ mov r1, r12
+ strb r0, [r1]
+ ldrb r0, [r2, 0x1]
+ strb r0, [r1, 0x1]
+ ldrb r0, [r2, 0x2]
+ strb r0, [r1, 0x1E]
+ ldrb r0, [r2, 0x3]
+ strb r0, [r1, 0x1F]
+ movs r0, 0x81
+ lsls r0, 1
+ adds r1, r3, r0
+ ldrb r0, [r2, 0x10]
+ strb r0, [r1]
+ ldr r0, _0800D5A8 @ =0x00000103
+ adds r1, r3, r0
+ ldrb r0, [r2, 0x11]
+ strb r0, [r1]
+ movs r0, 0x90
+ lsls r0, 1
+ adds r1, r3, r0
+ ldrb r0, [r2, 0x12]
+ strb r0, [r1]
+ ldr r0, _0800D5AC @ =0x00000121
+ adds r1, r3, r0
+ ldrb r0, [r2, 0x13]
+ strb r0, [r1]
+ movs r1, 0x4
+ add r12, r1
+ adds r2, 0x4
+ adds r3, 0x4
+ subs r6, 0x1
+ cmp r6, 0
+ bge _0800D550
+ str r4, [sp, 0x4]
+ adds r5, r7, 0
+ mov r3, r10
+ cmp r3, r9
+ blt _0800D538
+_0800D59E:
+ mov r2, r9
+ cmp r2, 0x7
+ bne _0800D5B0
+ adds r5, 0x20
+ b _0800D5B8
+ .align 2, 0
+_0800D5A8: .4byte 0x00000103
+_0800D5AC: .4byte 0x00000121
+_0800D5B0:
+ mov r4, r9
+ cmp r4, 0x5
+ bne _0800D5B8
+ adds r5, 0x60
+_0800D5B8:
+ mov r7, r8
+ cmp r7, r9
+ blt _0800D52E
+_0800D5BE:
+ mov r0, r9
+ cmp r0, 0x7
+ bne _0800D5CC
+ movs r1, 0x80
+ lsls r1, 1
+ adds r5, r1
+ b _0800D5D8
+_0800D5CC:
+ mov r2, r9
+ cmp r2, 0x5
+ bne _0800D5D8
+ movs r4, 0xF0
+ lsls r4, 1
+ adds r5, r4
+_0800D5D8:
+ ldr r0, [sp, 0x14]
+ ldr r1, [sp]
+ cmp r0, r1
+ bge _0800D5E2
+ b _0800D466
+_0800D5E2:
+ b _0800D674
+_0800D5E4:
+ movs r6, 0
+ ldr r2, [sp]
+ cmp r6, r2
+ bge _0800D674
+_0800D5EC:
+ adds r6, 0x1
+ mov r10, r6
+ mov r4, r9
+ cmp r4, 0x6
+ bne _0800D604
+ movs r0, 0
+ movs r3, 0xFF
+_0800D5FA:
+ strb r0, [r5]
+ adds r5, 0x1
+ subs r3, 0x1
+ cmp r3, 0
+ bge _0800D5FA
+_0800D604:
+ movs r7, 0
+ cmp r7, r9
+ bge _0800D658
+_0800D60A:
+ adds r7, 0x1
+ mov r8, r7
+ mov r1, r9
+ lsls r0, r1, 5
+ cmp r1, 0x6
+ bne _0800D624
+ movs r1, 0
+ movs r3, 0x1F
+_0800D61A:
+ strb r1, [r5]
+ adds r5, 0x1
+ subs r3, 0x1
+ cmp r3, 0
+ bge _0800D61A
+_0800D624:
+ adds r1, r0, 0
+ cmp r1, 0
+ ble _0800D63E
+ adds r3, r1, 0
+_0800D62C:
+ ldr r2, [sp, 0x4]
+ ldrb r0, [r2]
+ strb r0, [r5]
+ adds r2, 0x1
+ str r2, [sp, 0x4]
+ adds r5, 0x1
+ subs r3, 0x1
+ cmp r3, 0
+ bne _0800D62C
+_0800D63E:
+ mov r4, r9
+ cmp r4, 0x6
+ bne _0800D652
+ movs r0, 0
+ movs r3, 0x1F
+_0800D648:
+ strb r0, [r5]
+ adds r5, 0x1
+ subs r3, 0x1
+ cmp r3, 0
+ bge _0800D648
+_0800D652:
+ mov r7, r8
+ cmp r7, r9
+ blt _0800D60A
+_0800D658:
+ mov r0, r9
+ cmp r0, 0x6
+ bne _0800D66C
+ movs r0, 0
+ movs r3, 0xFF
+_0800D662:
+ strb r0, [r5]
+ adds r5, 0x1
+ subs r3, 0x1
+ cmp r3, 0
+ bge _0800D662
+_0800D66C:
+ mov r6, r10
+ ldr r1, [sp]
+ cmp r6, r1
+ blt _0800D5EC
+_0800D674:
+ add sp, 0x24
+ pop {r3-r5}
+ mov r8, r3
+ mov r9, r4
+ mov r10, r5
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ thumb_func_end unref_sub_800D42C
+
+ .align 2, 0
diff --git a/asm/flying.s b/asm/flying.s
index 1862e3218..126f18206 100644
--- a/asm/flying.s
+++ b/asm/flying.s
@@ -7,601 +7,6 @@
@ flying
- thumb_func_start sub_80DA034
-sub_80DA034: @ 80DA034
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0
- bl sub_8078764
- ldrh r0, [r4, 0x22]
- adds r0, 0x14
- strh r0, [r4, 0x22]
- movs r0, 0xBF
- strh r0, [r4, 0x30]
- ldr r1, _080DA058 @ =sub_80DA05C
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA058: .4byte sub_80DA05C
- thumb_func_end sub_80DA034
-
- thumb_func_start sub_80DA05C
-sub_80DA05C: @ 80DA05C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- movs r1, 0x20
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x30]
- adds r0, 0x5
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x47
- bne _080DA096
- adds r0, r4, 0
- bl DestroyAnimSprite
-_080DA096:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DA05C
-
- thumb_func_start sub_80DA09C
-sub_80DA09C: @ 80DA09C
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080DA0CC @ =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- ldr r1, _080DA0D0 @ =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- strh r0, [r4, 0x8]
- ldrh r0, [r1]
- strh r0, [r4, 0xA]
- ldr r0, _080DA0D4 @ =0x00002719
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xC]
- ldr r0, _080DA0D8 @ =sub_80DA0DC
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA0CC: .4byte gTasks
-_080DA0D0: .4byte gBattleAnimArgs
-_080DA0D4: .4byte 0x00002719
-_080DA0D8: .4byte sub_80DA0DC
- thumb_func_end sub_80DA09C
-
- thumb_func_start sub_80DA0DC
-sub_80DA0DC: @ 80DA0DC
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r2, _080DA15C @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r3, r0, r2
- ldrh r0, [r3, 0x1C]
- adds r1, r0, 0x1
- strh r1, [r3, 0x1C]
- lsls r0, 16
- asrs r0, 16
- movs r4, 0xA
- ldrsh r1, [r3, r4]
- adds r7, r2, 0
- cmp r0, r1
- bne _080DA13A
- movs r0, 0
- strh r0, [r3, 0x1C]
- ldrb r0, [r3, 0xC]
- ldr r2, _080DA160 @ =gPlttBufferFaded
- lsls r0, 4
- movs r3, 0x84
- lsls r3, 1
- adds r1, r0, r3
- lsls r1, 1
- adds r1, r2
- ldrh r6, [r1]
- movs r4, 0x7
- mov r12, r0
- ldr r0, _080DA164 @ =0x00000107
- add r0, r12
- lsls r0, 1
- adds r3, r0, r2
-_080DA122:
- ldrh r0, [r3]
- strh r0, [r1]
- subs r3, 0x2
- subs r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bgt _080DA122
- ldr r0, _080DA168 @ =0x00000101
- add r0, r12
- lsls r0, 1
- adds r0, r2
- strh r6, [r0]
-_080DA13A:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r7
- ldrh r1, [r0, 0x8]
- subs r1, 0x1
- strh r1, [r0, 0x8]
- lsls r1, 16
- cmp r1, 0
- bne _080DA154
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_080DA154:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA15C: .4byte gTasks
-_080DA160: .4byte gPlttBufferFaded
-_080DA164: .4byte 0x00000107
-_080DA168: .4byte 0x00000101
- thumb_func_end sub_80DA0DC
-
- thumb_func_start sub_80DA16C
-sub_80DA16C: @ 80DA16C
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r1, 0x1
- bl InitAnimSpritePos
- ldr r0, _080DA1D8 @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080DA18C
- ldr r1, _080DA1DC @ =gBattleAnimArgs
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
-_080DA18C:
- ldr r4, _080DA1DC @ =gBattleAnimArgs
- ldrh r0, [r4, 0x8]
- strh r0, [r6, 0x2E]
- ldrh r0, [r6, 0x20]
- strh r0, [r6, 0x30]
- ldr r5, _080DA1E0 @ =gAnimBankTarget
- ldrb r0, [r5]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r4, 0x4]
- adds r0, r1
- strh r0, [r6, 0x32]
- ldrh r0, [r6, 0x22]
- strh r0, [r6, 0x34]
- ldrb r0, [r5]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- ldrh r4, [r4, 0x6]
- adds r0, r4
- strh r0, [r6, 0x36]
- adds r0, r6, 0
- bl InitAnimSpriteTranslationDeltas
- ldr r0, _080DA1E4 @ =sub_80785E4
- str r0, [r6, 0x1C]
- ldr r1, _080DA1E8 @ =sub_80DA1EC
- adds r0, r6, 0
- bl StoreSpriteCallbackInData
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA1D8: .4byte gAnimBankAttacker
-_080DA1DC: .4byte gBattleAnimArgs
-_080DA1E0: .4byte gAnimBankTarget
-_080DA1E4: .4byte sub_80785E4
-_080DA1E8: .4byte sub_80DA1EC
- thumb_func_end sub_80DA16C
-
- thumb_func_start sub_80DA1EC
-sub_80DA1EC: @ 80DA1EC
- push {r4,lr}
- adds r4, r0, 0
- bl TranslateAnimSpriteByDeltas
- lsls r0, 24
- cmp r0, 0
- beq _080DA200
- adds r0, r4, 0
- bl DestroyAnimSprite
-_080DA200:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DA1EC
-
- thumb_func_start sub_80DA208
-sub_80DA208: @ 80DA208
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r4, _080DA2A4 @ =gAnimBankAttacker
- ldrb r0, [r4]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080DA234
- ldr r1, _080DA2A8 @ =gBattleAnimArgs
- ldrh r0, [r1]
- negs r0, r0
- strh r0, [r1]
- ldrh r0, [r1, 0x2]
- negs r0, r0
- strh r0, [r1, 0x2]
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
- ldrh r0, [r1, 0x6]
- negs r0, r0
- strh r0, [r1, 0x6]
-_080DA234:
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _080DA24C
- ldr r0, _080DA2A8 @ =gBattleAnimArgs
- ldrh r1, [r0, 0x2]
- negs r1, r1
- strh r1, [r0, 0x2]
- ldrh r1, [r0, 0x6]
- negs r1, r1
- strh r1, [r0, 0x6]
-_080DA24C:
- 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
- ldr r2, _080DA2A8 @ =gBattleAnimArgs
- ldrh r1, [r2]
- ldrh r3, [r5, 0x20]
- adds r1, r3
- strh r1, [r5, 0x20]
- lsrs r0, 24
- ldrh r1, [r2, 0x2]
- adds r0, r1
- strh r0, [r5, 0x22]
- ldrh r0, [r2, 0x8]
- strh r0, [r5, 0x2E]
- movs r3, 0xC
- ldrsh r0, [r2, r3]
- cmp r0, 0
- bne _080DA2B0
- ldr r4, _080DA2AC @ =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]
- b _080DA2C2
- .align 2, 0
-_080DA2A4: .4byte gAnimBankAttacker
-_080DA2A8: .4byte gBattleAnimArgs
-_080DA2AC: .4byte gAnimBankTarget
-_080DA2B0:
- ldr r0, _080DA2F0 @ =gAnimBankTarget
- ldrb r0, [r0]
- adds r2, r5, 0
- adds r2, 0x32
- adds r3, r5, 0
- adds r3, 0x36
- movs r1, 0x1
- bl SetAverageBattlerPositions
-_080DA2C2:
- ldr r4, _080DA2F4 @ =gBattleAnimArgs
- ldrh r0, [r4, 0x4]
- ldrh r1, [r5, 0x32]
- adds r0, r1
- strh r0, [r5, 0x32]
- ldrh r0, [r4, 0x6]
- ldrh r3, [r5, 0x36]
- adds r0, r3
- strh r0, [r5, 0x36]
- ldr r0, _080DA2F8 @ =StartTranslateAnimSpriteByDeltas
- str r0, [r5, 0x1C]
- ldr r1, _080DA2FC @ =DestroyAnimSprite
- adds r0, r5, 0
- bl StoreSpriteCallbackInData
- ldrb r1, [r4, 0xA]
- adds r0, r5, 0
- bl SeekSpriteAnim
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA2F0: .4byte gAnimBankTarget
-_080DA2F4: .4byte gBattleAnimArgs
-_080DA2F8: .4byte StartTranslateAnimSpriteByDeltas
-_080DA2FC: .4byte DestroyAnimSprite
- thumb_func_end sub_80DA208
-
- thumb_func_start sub_80DA300
-sub_80DA300: @ 80DA300
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl InitAnimSpritePos
- ldr r1, _080DA33C @ =gBattleAnimArgs
- ldrh r0, [r1, 0x4]
- strh r0, [r4, 0x2E]
- ldrh r0, [r1, 0x6]
- strh r0, [r4, 0x30]
- ldr r0, _080DA340 @ =sub_80DA348
- str r0, [r4, 0x1C]
- movs r0, 0
- bl GetAnimBankSpriteId
- ldr r2, _080DA344 @ =gSprites
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA33C: .4byte gBattleAnimArgs
-_080DA340: .4byte sub_80DA348
-_080DA344: .4byte gSprites
- thumb_func_end sub_80DA300
-
- thumb_func_start sub_80DA348
-sub_80DA348: @ 80DA348
- push {lr}
- adds r2, r0, 0
- ldrh r1, [r2, 0x2E]
- movs r3, 0x2E
- ldrsh r0, [r2, r3]
- cmp r0, 0
- ble _080DA35C
- subs r0, r1, 0x1
- strh r0, [r2, 0x2E]
- b _080DA36E
-_080DA35C:
- ldrh r0, [r2, 0x30]
- ldrh r1, [r2, 0x32]
- adds r0, r1
- strh r0, [r2, 0x32]
- lsls r0, 16
- asrs r0, 24
- ldrh r1, [r2, 0x26]
- subs r1, r0
- strh r1, [r2, 0x26]
-_080DA36E:
- movs r3, 0x22
- ldrsh r0, [r2, r3]
- movs r3, 0x26
- ldrsh r1, [r2, r3]
- adds r0, r1
- movs r1, 0x20
- negs r1, r1
- cmp r0, r1
- bge _080DA386
- adds r0, r2, 0
- bl DestroyAnimSprite
-_080DA386:
- pop {r0}
- bx r0
- thumb_func_end sub_80DA348
-
- thumb_func_start sub_80DA38C
-sub_80DA38C: @ 80DA38C
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, _080DA3B4 @ =gAnimBankAttacker
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- beq _080DA3BC
- movs r0, 0x88
- lsls r0, 1
- strh r0, [r5, 0x20]
- ldr r0, _080DA3B8 @ =0x0000ffe0
- strh r0, [r5, 0x22]
- adds r0, r5, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- b _080DA3C2
- .align 2, 0
-_080DA3B4: .4byte gAnimBankAttacker
-_080DA3B8: .4byte 0x0000ffe0
-_080DA3BC:
- ldr r0, _080DA400 @ =0x0000ffe0
- strh r0, [r5, 0x20]
- strh r0, [r5, 0x22]
-_080DA3C2:
- ldr r0, _080DA404 @ =gBattleAnimArgs
- ldrh r0, [r0]
- strh r0, [r5, 0x2E]
- ldrh r0, [r5, 0x20]
- strh r0, [r5, 0x30]
- ldr r4, _080DA408 @ =gAnimBankTarget
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x32]
- ldrh r0, [r5, 0x22]
- strh r0, [r5, 0x34]
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x36]
- adds r0, r5, 0
- bl InitAnimSpriteTranslationDeltas
- ldr r0, _080DA40C @ =sub_80DA410
- str r0, [r5, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA400: .4byte 0x0000ffe0
-_080DA404: .4byte gBattleAnimArgs
-_080DA408: .4byte gAnimBankTarget
-_080DA40C: .4byte sub_80DA410
- thumb_func_end sub_80DA38C
-
- thumb_func_start sub_80DA410
-sub_80DA410: @ 80DA410
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x1
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl TranslateAnimSpriteByDeltas
- ldrh r1, [r4, 0x34]
- lsrs r0, r1, 8
- cmp r0, 0xC8
- bls _080DA438
- ldrh r0, [r4, 0x24]
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
- movs r0, 0
- strh r0, [r4, 0x24]
- movs r0, 0xFF
- ands r0, r1
- strh r0, [r4, 0x34]
-_080DA438:
- movs r1, 0x20
- ldrsh r0, [r4, r1]
- movs r2, 0x24
- ldrsh r1, [r4, r2]
- adds r0, r1
- adds r0, 0x20
- movs r1, 0x98
- lsls r1, 1
- cmp r0, r1
- bhi _080DA45A
- movs r1, 0x22
- ldrsh r0, [r4, r1]
- movs r2, 0x26
- ldrsh r1, [r4, r2]
- adds r0, r1
- cmp r0, 0xA0
- ble _080DA480
-_080DA45A:
- movs r0, 0
- bl GetAnimBankSpriteId
- ldr r2, _080DA488 @ =gSprites
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- adds r1, 0x3E
- ldrb r2, [r1]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- adds r0, r4, 0
- bl DestroyAnimSprite
-_080DA480:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA488: .4byte gSprites
- thumb_func_end sub_80DA410
-
- thumb_func_start sub_80DA48C
-sub_80DA48C: @ 80DA48C
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- subs r1, r0, 0x1
- strh r1, [r4, 0x2E]
- lsls r0, 16
- cmp r0, 0
- bgt _080DA4CC
- ldrb r0, [r4, 0x1]
- lsls r0, 30
- lsrs r0, 30
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080DA4BE
- 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]
-_080DA4BE:
- adds r0, r4, 0
- bl DestroySprite
- ldr r1, _080DA4D4 @ =gAnimVisualTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
-_080DA4CC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DA4D4: .4byte gAnimVisualTaskCount
- thumb_func_end sub_80DA48C
-
thumb_func_start sub_80DA4D8
sub_80DA4D8: @ 80DA4D8
push {r4-r7,lr}
@@ -627,7 +32,7 @@ _080DA500:
_080DA502:
ldrb r6, [r0]
adds r0, r6, 0
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _080DA518
@@ -638,7 +43,7 @@ _080DA502:
_080DA518:
adds r0, r6, 0
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
ldr r4, _080DA5B4 @ =gBattleAnimArgs
lsrs r0, 24
@@ -647,7 +52,7 @@ _080DA518:
strh r0, [r7, 0x20]
adds r0, r6, 0
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
ldrh r1, [r4, 0x2]
lsrs r0, 24
@@ -1733,13 +1138,13 @@ sub_80DAD30: @ 80DAD30
ldr r5, _080DAD7C @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x20]
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x22]
@@ -1784,7 +1189,7 @@ sub_80DAD84: @ 80DAD84
beq _080DADE0
adds r0, r2, 0
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r5, [r5, 0x6]
@@ -1799,7 +1204,7 @@ _080DADDC: .4byte gAnimBankTarget
_080DADE0:
adds r0, r2, 0
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r0, 0x28
@@ -1849,7 +1254,7 @@ _080DAE44:
ldr r0, _080DAEFC @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r5, [r5, 0x6]
@@ -2102,7 +1507,7 @@ _080DB024:
bne _080DB03C
ldr r0, _080DB090 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080DB052
@@ -2113,7 +1518,7 @@ _080DB03C:
bne _080DB058
ldr r0, _080DB094 @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _080DB058
@@ -2239,13 +1644,13 @@ sub_80DB0E8: @ 80DB0E8
ldr r5, _080DB190 @ =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
@@ -2293,7 +1698,7 @@ _080DB1A6:
movs r1, 0x1
bl InitAnimSpritePos
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
ldr r2, _080DB1D4 @ =gSprites
lsls r0, 24
lsrs r0, 24
@@ -2349,7 +1754,7 @@ _080DB210:
ldr r0, _080DB228 @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x22]
@@ -2385,7 +1790,7 @@ _080DB240:
cmp r0, r1
bge _080DB27E
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
ldr r2, _080DB284 @ =gSprites
lsls r0, 24
lsrs r0, 24
@@ -2423,7 +1828,7 @@ sub_80DB288: @ 80DB288
ldr r0, _080DB2C8 @ =sub_80DB2D0
str r0, [r4, 0x1C]
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
ldr r2, _080DB2CC @ =gSprites
lsls r0, 24
lsrs r0, 24
@@ -2566,13 +1971,13 @@ _080DB3A0:
_080DB3A2:
ldrb r0, [r4]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
@@ -2726,13 +2131,13 @@ _080DB4D4:
_080DB4D6:
ldrb r0, [r4]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r0, 0x20
@@ -2885,14 +2290,14 @@ sub_80DB5E4: @ 80DB5E4
ldr r6, _080DB698 @ =gAnimBankAttacker
ldrb r0, [r6]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
mov r1, r8
strh r0, [r1, 0x20]
ldrb r0, [r6]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r6, r0, 0
lsls r6, 24
lsrs r6, 24
@@ -3012,7 +2417,7 @@ unref_sub_80DB6E4: @ 80DB6E4
cmp r0, 0
bne _080DB71C
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
ldr r2, _080DB718 @ =gSprites
@@ -3030,7 +2435,7 @@ _080DB714: .4byte gBattleAnimArgs
_080DB718: .4byte gSprites
_080DB71C:
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
ldr r2, _080DB748 @ =gSprites
diff --git a/asm/ghost.s b/asm/ghost.s
index b5620910b..36487210d 100644
--- a/asm/ghost.s
+++ b/asm/ghost.s
@@ -7,1111 +7,6 @@
@ ghost
- thumb_func_start sub_80DDB6C
-sub_80DDB6C: @ 80DDB6C
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl InitAnimSpritePos
- ldr r0, _080DDBC8 @ =gBattleAnimArgs
- ldrh r0, [r0, 0x4]
- strh r0, [r4, 0x2E]
- ldrh r0, [r4, 0x20]
- strh r0, [r4, 0x30]
- ldr r5, _080DDBCC @ =gAnimBankTarget
- ldrb r0, [r5]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x22]
- strh r0, [r4, 0x34]
- ldrb r0, [r5]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x36]
- adds r0, r4, 0
- bl sub_8078BD4
- ldr r0, _080DDBD0 @ =sub_80DDBD8
- str r0, [r4, 0x1C]
- movs r0, 0x10
- strh r0, [r4, 0x3A]
- ldr r1, _080DDBD4 @ =REG_BLDCNT
- movs r2, 0xFD
- lsls r2, 6
- adds r0, r2, 0
- strh r0, [r1]
- adds r1, 0x2
- ldrh r0, [r4, 0x3A]
- strh r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080DDBC8: .4byte gBattleAnimArgs
-_080DDBCC: .4byte gAnimBankTarget
-_080DDBD0: .4byte sub_80DDBD8
-_080DDBD4: .4byte REG_BLDCNT
- thumb_func_end sub_80DDB6C
-
- thumb_func_start sub_80DDBD8
-sub_80DDBD8: @ 80DDBD8
- push {r4,lr}
- adds r4, r0, 0
- bl sub_80DDCC8
- adds r0, r4, 0
- bl TranslateAnimSpriteByDeltas
- lsls r0, 24
- cmp r0, 0
- beq _080DDBF8
- ldr r0, _080DDBF4 @ =sub_80DDC4C
- str r0, [r4, 0x1C]
- b _080DDC42
- .align 2, 0
-_080DDBF4: .4byte sub_80DDC4C
-_080DDBF8:
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- movs r1, 0xA
- bl Sin
- ldrh r1, [r4, 0x24]
- adds r0, r1
- strh r0, [r4, 0x24]
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- movs r1, 0xF
- bl Cos
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r2, [r4, 0x38]
- adds r0, r2, 0x5
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x38]
- ldrh r0, [r4, 0x38]
- lsls r2, 16
- asrs r2, 16
- cmp r2, 0
- beq _080DDC30
- cmp r2, 0xC4
- ble _080DDC42
-_080DDC30:
- lsls r0, 16
- cmp r0, 0
- ble _080DDC42
- ldr r0, _080DDC48 @ =gUnknown_0202F7D2
- movs r1, 0
- ldrsb r1, [r0, r1]
- movs r0, 0xC4
- bl PlaySE12WithPanning
-_080DDC42:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DDC48: .4byte gUnknown_0202F7D2
- thumb_func_end sub_80DDBD8
-
- thumb_func_start sub_80DDC4C
-sub_80DDC4C: @ 80DDC4C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x1
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl TranslateAnimSpriteByDeltas
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- movs r1, 0xA
- bl Sin
- ldrh r1, [r4, 0x24]
- adds r0, r1
- strh r0, [r4, 0x24]
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- movs r1, 0xF
- bl Cos
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r2, [r4, 0x38]
- adds r0, r2, 0x5
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x38]
- ldrh r0, [r4, 0x38]
- lsls r2, 16
- asrs r2, 16
- cmp r2, 0
- beq _080DDC92
- cmp r2, 0xC4
- ble _080DDC9E
-_080DDC92:
- lsls r0, 16
- cmp r0, 0
- ble _080DDC9E
- movs r0, 0xC4
- bl PlaySE
-_080DDC9E:
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080DDCBC
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, _080DDCB8 @ =sub_807861C
- str r0, [r4, 0x1C]
- b _080DDCC2
- .align 2, 0
-_080DDCB8: .4byte sub_807861C
-_080DDCBC:
- adds r0, r4, 0
- bl sub_80DDCC8
-_080DDCC2:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DDC4C
-
- thumb_func_start sub_80DDCC8
-sub_80DDCC8: @ 80DDCC8
- push {r4,lr}
- adds r3, r0, 0
- ldrh r2, [r3, 0x3A]
- movs r1, 0x3A
- ldrsh r0, [r3, r1]
- cmp r0, 0xFF
- ble _080DDCEC
- adds r0, r2, 0x1
- strh r0, [r3, 0x3A]
- lsls r0, 16
- ldr r1, _080DDCE8 @ =0x010d0000
- cmp r0, r1
- bne _080DDD4C
- movs r0, 0
- b _080DDD4A
- .align 2, 0
-_080DDCE8: .4byte 0x010d0000
-_080DDCEC:
- ldrh r1, [r3, 0x3C]
- adds r4, r1, 0x1
- strh r4, [r3, 0x3C]
- movs r0, 0xFF
- ands r0, r1
- cmp r0, 0
- bne _080DDD4C
- ldr r1, _080DDD10 @ =0xffffff00
- ands r1, r4
- strh r1, [r3, 0x3C]
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _080DDD14
- adds r0, r2, 0x1
- b _080DDD16
- .align 2, 0
-_080DDD10: .4byte 0xffffff00
-_080DDD14:
- subs r0, r2, 0x1
-_080DDD16:
- strh r0, [r3, 0x3A]
- ldr r2, _080DDD54 @ =REG_BLDALPHA
- ldrh r1, [r3, 0x3A]
- movs r0, 0x10
- subs r0, r1
- lsls r0, 8
- orrs r0, r1
- strh r0, [r2]
- movs r2, 0x3A
- ldrsh r0, [r3, r2]
- cmp r0, 0
- beq _080DDD32
- cmp r0, 0x10
- bne _080DDD3E
-_080DDD32:
- ldrh r0, [r3, 0x3C]
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- eors r0, r1
- strh r0, [r3, 0x3C]
-_080DDD3E:
- movs r1, 0x3A
- ldrsh r0, [r3, r1]
- cmp r0, 0
- bne _080DDD4C
- movs r0, 0x80
- lsls r0, 1
-_080DDD4A:
- strh r0, [r3, 0x3A]
-_080DDD4C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DDD54: .4byte REG_BLDALPHA
- thumb_func_end sub_80DDCC8
-
- thumb_func_start sub_80DDD58
-sub_80DDD58: @ 80DDD58
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl sub_8078764
- ldr r1, _080DDD74 @ =sub_80DDD78
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DDD74: .4byte sub_80DDD78
- thumb_func_end sub_80DDD58
-
- thumb_func_start sub_80DDD78
-sub_80DDD78: @ 80DDD78
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- movs r1, 0x20
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x2E]
- subs r0, 0x41
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x82
- bhi _080DDDAC
- ldrb r0, [r4, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r0
- movs r0, 0x8
- b _080DDDB6
-_080DDDAC:
- ldrb r0, [r4, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r0
- movs r0, 0x4
-_080DDDB6:
- orrs r1, r0
- strb r1, [r4, 0x5]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x13
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x2E]
- ldrh r0, [r4, 0x32]
- adds r0, 0x50
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 24
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x3C]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x3D
- bne _080DDDE8
- adds r0, r4, 0
- bl DestroyAnimSprite
-_080DDDE8:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DDD78
-
- thumb_func_start sub_80DDDF0
-sub_80DDDF0: @ 80DDDF0
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r1, _080DDE68 @ =REG_BLDCNT
- movs r2, 0xFD
- lsls r2, 6
- adds r0, r2, 0
- strh r0, [r1]
- adds r1, 0x2
- movs r2, 0x80
- lsls r2, 5
- adds r0, r2, 0
- strh r0, [r1]
- movs r0, 0
- bl GetAnimBankSpriteId
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_8078E70
- adds r0, r4, 0
- movs r1, 0x80
- movs r2, 0x80
- movs r3, 0
- bl obj_id_set_rotscale
- ldr r1, _080DDE6C @ =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldr r1, _080DDE70 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- movs r1, 0x80
- strh r1, [r0, 0x8]
- ldr r1, _080DDE74 @ =gBattleAnimArgs
- ldrh r1, [r1]
- strh r1, [r0, 0xA]
- strh r2, [r0, 0xC]
- movs r1, 0x10
- strh r1, [r0, 0xE]
- ldr r1, _080DDE78 @ =sub_80DDE7C
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080DDE68: .4byte REG_BLDCNT
-_080DDE6C: .4byte gSprites
-_080DDE70: .4byte gTasks
-_080DDE74: .4byte gBattleAnimArgs
-_080DDE78: .4byte sub_80DDE7C
- thumb_func_end sub_80DDDF0
-
- thumb_func_start sub_80DDE7C
-sub_80DDE7C: @ 80DDE7C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080DDEC4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r3, r1, r2
- ldrh r0, [r3, 0x1C]
- adds r0, 0x1
- strh r0, [r3, 0x1C]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x3
- bne _080DDEBE
- movs r0, 0
- strh r0, [r3, 0x1C]
- ldrh r1, [r3, 0xC]
- adds r1, 0x1
- strh r1, [r3, 0xC]
- ldrh r0, [r3, 0xE]
- subs r0, 0x1
- strh r0, [r3, 0xE]
- ldr r2, _080DDEC8 @ =REG_BLDALPHA
- lsls r0, 8
- orrs r1, r0
- strh r1, [r2]
- movs r1, 0xC
- ldrsh r0, [r3, r1]
- cmp r0, 0x9
- bne _080DDEBE
- ldr r0, _080DDECC @ =sub_80DDED0
- str r0, [r3]
-_080DDEBE:
- pop {r0}
- bx r0
- .align 2, 0
-_080DDEC4: .4byte gTasks
-_080DDEC8: .4byte REG_BLDALPHA
-_080DDECC: .4byte sub_80DDED0
- thumb_func_end sub_80DDE7C
-
- thumb_func_start sub_80DDED0
-sub_80DDED0: @ 80DDED0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r1, _080DDEF4 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r1, [r4, 0xA]
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _080DDEF8
- subs r0, r1, 0x1
- strh r0, [r4, 0xA]
- b _080DDF36
- .align 2, 0
-_080DDEF4: .4byte gTasks
-_080DDEF8:
- movs r0, 0
- bl GetAnimBankSpriteId
- lsls r0, 24
- lsrs r1, r0, 24
- ldrh r0, [r4, 0x8]
- adds r0, 0x8
- movs r6, 0
- strh r0, [r4, 0x8]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xFF
- bgt _080DDF22
- movs r0, 0x8
- ldrsh r2, [r4, r0]
- adds r0, r1, 0
- adds r1, r2, 0
- movs r3, 0
- bl obj_id_set_rotscale
- b _080DDF36
-_080DDF22:
- adds r0, r1, 0
- bl sub_8078F40
- adds r0, r5, 0
- bl DestroyAnimVisualTask
- ldr r0, _080DDF3C @ =REG_BLDCNT
- strh r6, [r0]
- adds r0, 0x2
- strh r6, [r0]
-_080DDF36:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080DDF3C: .4byte REG_BLDCNT
- thumb_func_end sub_80DDED0
-
- thumb_func_start sub_80DDF40
-sub_80DDF40: @ 80DDF40
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- adds r4, r0, 0
- ldrh r5, [r4, 0x20]
- ldrh r6, [r4, 0x22]
- ldr r0, _080DDFDC @ =gAnimBankAttacker
- mov r8, r0
- ldrb r0, [r0]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- mov r9, r1
- strh r0, [r4, 0x20]
- mov r1, r8
- ldrb r0, [r1]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x22]
- mov r1, r9
- strh r1, [r4, 0x2E]
- ldr r2, _080DDFE0 @ =gBattleAnimArgs
- ldrh r1, [r2]
- strh r1, [r4, 0x30]
- ldrh r1, [r2, 0x2]
- strh r1, [r4, 0x32]
- ldrh r1, [r2, 0x4]
- strh r1, [r4, 0x34]
- ldrh r1, [r4, 0x20]
- lsls r1, 4
- strh r1, [r4, 0x36]
- lsls r0, 4
- strh r0, [r4, 0x38]
- lsls r5, 16
- asrs r5, 16
- movs r1, 0x20
- ldrsh r0, [r4, r1]
- subs r5, r0
- lsls r5, 4
- movs r0, 0
- ldrsh r1, [r2, r0]
- lsls r1, 1
- adds r0, r5, 0
- str r2, [sp]
- bl __divsi3
- strh r0, [r4, 0x3A]
- lsls r6, 16
- asrs r6, 16
- movs r1, 0x22
- ldrsh r0, [r4, r1]
- subs r6, r0
- lsls r6, 4
- ldr r2, [sp]
- movs r0, 0
- ldrsh r1, [r2, r0]
- lsls r1, 1
- adds r0, r6, 0
- bl __divsi3
- strh r0, [r4, 0x3C]
- ldr r0, _080DDFE4 @ =sub_80DDFE8
- str r0, [r4, 0x1C]
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080DDFDC: .4byte gAnimBankAttacker
-_080DDFE0: .4byte gBattleAnimArgs
-_080DDFE4: .4byte sub_80DDFE8
- thumb_func_end sub_80DDF40
-
- thumb_func_start sub_80DDFE8
-sub_80DDFE8: @ 80DDFE8
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _080DE032
- cmp r0, 0x1
- bgt _080DDFFE
- cmp r0, 0
- beq _080DE008
- b _080DE0F6
-_080DDFFE:
- cmp r0, 0x2
- beq _080DE09C
- cmp r0, 0x3
- beq _080DE0F0
- b _080DE0F6
-_080DE008:
- ldrh r0, [r5, 0x3A]
- ldrh r2, [r5, 0x36]
- adds r0, r2
- strh r0, [r5, 0x36]
- ldrh r1, [r5, 0x3C]
- ldrh r2, [r5, 0x38]
- adds r1, r2
- strh r1, [r5, 0x38]
- lsls r0, 16
- asrs r0, 20
- strh r0, [r5, 0x20]
- lsls r1, 16
- asrs r1, 20
- strh r1, [r5, 0x22]
- ldrh r0, [r5, 0x30]
- subs r0, 0x1
- strh r0, [r5, 0x30]
- lsls r0, 16
- cmp r0, 0
- bgt _080DE0F6
- b _080DE0E2
-_080DE032:
- ldrh r0, [r5, 0x32]
- subs r0, 0x1
- strh r0, [r5, 0x32]
- lsls r0, 16
- cmp r0, 0
- bgt _080DE0F6
- ldr r4, _080DE098 @ =gAnimBankTarget
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x30]
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBankPosition
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x32]
- ldrh r0, [r5, 0x20]
- lsls r0, 4
- strh r0, [r5, 0x36]
- ldrh r0, [r5, 0x22]
- lsls r0, 4
- strh r0, [r5, 0x38]
- movs r1, 0x30
- ldrsh r0, [r5, r1]
- movs r2, 0x20
- ldrsh r1, [r5, r2]
- subs r0, r1
- lsls r0, 4
- movs r2, 0x34
- ldrsh r1, [r5, r2]
- bl __divsi3
- strh r0, [r5, 0x3A]
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- movs r2, 0x22
- ldrsh r1, [r5, r2]
- subs r0, r1
- lsls r0, 4
- movs r2, 0x34
- ldrsh r1, [r5, r2]
- bl __divsi3
- strh r0, [r5, 0x3C]
- b _080DE0E2
- .align 2, 0
-_080DE098: .4byte gAnimBankTarget
-_080DE09C:
- ldrh r0, [r5, 0x3A]
- ldrh r1, [r5, 0x36]
- adds r0, r1
- strh r0, [r5, 0x36]
- ldrh r1, [r5, 0x3C]
- ldrh r2, [r5, 0x38]
- adds r1, r2
- strh r1, [r5, 0x38]
- lsls r0, 16
- asrs r0, 20
- strh r0, [r5, 0x20]
- lsls r1, 16
- asrs r1, 20
- strh r1, [r5, 0x22]
- ldrh r0, [r5, 0x34]
- subs r0, 0x1
- strh r0, [r5, 0x34]
- lsls r0, 16
- cmp r0, 0
- bgt _080DE0F6
- ldr r4, _080DE0EC @ =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]
-_080DE0E2:
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
- b _080DE0F6
- .align 2, 0
-_080DE0EC: .4byte gAnimBankTarget
-_080DE0F0:
- adds r0, r5, 0
- bl move_anim_8074EE0
-_080DE0F6:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80DDFE8
-
- thumb_func_start sub_80DE0FC
-sub_80DE0FC: @ 80DE0FC
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl sub_8078764
- ldr r0, _080DE110 @ =sub_80DE114
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080DE110: .4byte sub_80DE114
- thumb_func_end sub_80DE0FC
-
- thumb_func_start sub_80DE114
-sub_80DE114: @ 80DE114
- push {r4-r6,lr}
- adds r3, r0, 0
- movs r5, 0
- movs r6, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080DE1AA
- adds r1, r3, 0
- adds r1, 0x3E
- ldrb r2, [r1]
- movs r0, 0x4
- ands r0, r2
- adds r4, r1, 0
- cmp r0, 0
- bne _080DE13E
- movs r0, 0x4
- orrs r0, r2
- strb r0, [r4]
-_080DE13E:
- movs r1, 0x2E
- ldrsh r0, [r3, r1]
- cmp r0, 0
- beq _080DE14E
- cmp r0, 0x1
- beq _080DE158
- movs r6, 0x1
- b _080DE162
-_080DE14E:
- movs r1, 0x30
- ldrsh r0, [r3, r1]
- cmp r0, 0x2
- bne _080DE162
- b _080DE166
-_080DE158:
- movs r1, 0x30
- ldrsh r0, [r3, r1]
- cmp r0, 0x4
- bne _080DE162
- movs r5, 0x1
-_080DE162:
- cmp r5, 0
- beq _080DE198
-_080DE166:
- ldrb r2, [r4]
- lsls r0, r2, 29
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- lsls r1, 2
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4]
- ldrh r0, [r3, 0x32]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r3, 0x32]
- strh r1, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- bne _080DE1AA
- strh r1, [r3, 0x32]
- ldrh r0, [r3, 0x2E]
- adds r0, 0x1
- strh r0, [r3, 0x2E]
- b _080DE1AA
-_080DE198:
- cmp r6, 0
- beq _080DE1A4
- adds r0, r3, 0
- bl DestroyAnimSprite
- b _080DE1AA
-_080DE1A4:
- ldrh r0, [r3, 0x30]
- adds r0, 0x1
- strh r0, [r3, 0x30]
-_080DE1AA:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80DE114
-
- thumb_func_start sub_80DE1B0
-sub_80DE1B0: @ 80DE1B0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _080DE1DC @ =gTasks
- adds r5, r0, r1
- movs r0, 0x1
- bl duplicate_obj_of_side_rel2move_in_transparent_mode
- movs r6, 0
- movs r1, 0
- strh r0, [r5, 0x8]
- lsls r0, 16
- cmp r0, 0
- bge _080DE1E0
- adds r0, r4, 0
- bl DestroyAnimVisualTask
- b _080DE2C0
- .align 2, 0
-_080DE1DC: .4byte gTasks
-_080DE1E0:
- strh r1, [r5, 0xA]
- movs r0, 0xF
- strh r0, [r5, 0xC]
- movs r0, 0x2
- strh r0, [r5, 0xE]
- strh r1, [r5, 0x10]
- ldr r1, _080DE244 @ =REG_BLDCNT
- movs r2, 0xFD
- lsls r2, 6
- adds r0, r2, 0
- strh r0, [r1]
- ldr r2, _080DE248 @ =REG_BLDALPHA
- ldrh r0, [r5, 0xE]
- lsls r0, 8
- ldrh r1, [r5, 0xC]
- orrs r0, r1
- strh r0, [r2]
- ldr r4, _080DE24C @ =gSprites
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x50
- strh r1, [r0, 0x2E]
- ldr r0, _080DE250 @ =gAnimBankTarget
- ldrb r0, [r0]
- bl GetBankSide
- lsls r0, 24
- cmp r0, 0
- bne _080DE258
- movs r2, 0x8
- ldrsh r1, [r5, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _080DE254 @ =0x0000ff70
- strh r1, [r0, 0x30]
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x70
- b _080DE276
- .align 2, 0
-_080DE244: .4byte REG_BLDCNT
-_080DE248: .4byte REG_BLDALPHA
-_080DE24C: .4byte gSprites
-_080DE250: .4byte gAnimBankTarget
-_080DE254: .4byte 0x0000ff70
-_080DE258:
- movs r2, 0x8
- ldrsh r1, [r5, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x90
- strh r1, [r0, 0x30]
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _080DE2C8 @ =0x0000ff90
-_080DE276:
- strh r1, [r0, 0x32]
- ldr r4, _080DE2CC @ =gSprites
- movs r2, 0x8
- ldrsh r1, [r5, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r2, 0
- strh r2, [r0, 0x34]
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r2, [r0, 0x36]
- movs r2, 0x8
- ldrsh r1, [r5, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _080DE2D0 @ =SpriteCallbackDummy
- bl StoreSpriteCallbackInData
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, 0x1C
- adds r0, r4
- ldr r1, _080DE2D4 @ =sub_8078394
- str r1, [r0]
- ldr r0, _080DE2D8 @ =sub_80DE2DC
- str r0, [r5]
-_080DE2C0:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080DE2C8: .4byte 0x0000ff90
-_080DE2CC: .4byte gSprites
-_080DE2D0: .4byte SpriteCallbackDummy
-_080DE2D4: .4byte sub_8078394
-_080DE2D8: .4byte sub_80DE2DC
- thumb_func_end sub_80DE1B0
-
- thumb_func_start sub_80DE2DC
-sub_80DE2DC: @ 80DE2DC
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, _080DE300 @ =gTasks
- adds r4, r0, r1
- movs r1, 0x10
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080DE37C
- cmp r0, 0x1
- bgt _080DE304
- cmp r0, 0
- beq _080DE30A
- b _080DE3A6
- .align 2, 0
-_080DE300: .4byte gTasks
-_080DE304:
- cmp r0, 0x2
- beq _080DE3A0
- b _080DE3A6
-_080DE30A:
- ldrh r1, [r4, 0xA]
- adds r1, 0x1
- strh r1, [r4, 0xA]
- movs r0, 0x3
- ands r0, r1
- strh r0, [r4, 0x12]
- cmp r0, 0x1
- bne _080DE328
- ldrh r1, [r4, 0xC]
- movs r2, 0xC
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _080DE328
- subs r0, r1, 0x1
- strh r0, [r4, 0xC]
-_080DE328:
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- cmp r0, 0x3
- bne _080DE33E
- ldrh r1, [r4, 0xE]
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- cmp r0, 0xF
- bgt _080DE33E
- adds r0, r1, 0x1
- strh r0, [r4, 0xE]
-_080DE33E:
- ldr r2, _080DE374 @ =REG_BLDALPHA
- ldrh r0, [r4, 0xE]
- lsls r0, 8
- ldrh r1, [r4, 0xC]
- orrs r0, r1
- strh r0, [r2]
- ldr r1, [r4, 0xC]
- movs r0, 0x80
- lsls r0, 13
- cmp r1, r0
- bne _080DE3A6
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0x50
- ble _080DE3A6
- movs r2, 0x8
- ldrsh r1, [r4, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080DE378 @ =gSprites
- adds r0, r1
- bl obj_delete_but_dont_free_vram
- movs r0, 0x1
- strh r0, [r4, 0x10]
- b _080DE3A6
- .align 2, 0
-_080DE374: .4byte REG_BLDALPHA
-_080DE378: .4byte gSprites
-_080DE37C:
- ldrh r0, [r4, 0x14]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r4, 0x14]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- ble _080DE3A6
- ldr r0, _080DE39C @ =REG_BLDCNT
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- ldrh r0, [r4, 0x10]
- adds r0, 0x1
- strh r0, [r4, 0x10]
- b _080DE3A6
- .align 2, 0
-_080DE39C: .4byte REG_BLDCNT
-_080DE3A0:
- adds r0, r2, 0
- bl DestroyAnimVisualTask
-_080DE3A6:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80DE2DC
-
- thumb_func_start sub_80DE3AC
-sub_80DE3AC: @ 80DE3AC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r2, _080DE3CC @ =gTasks
- adds r1, r2
- movs r2, 0
- strh r2, [r1, 0x26]
- ldr r2, _080DE3D0 @ =sub_80DE3D4
- str r2, [r1]
- bl _call_via_r2
- pop {r0}
- bx r0
- .align 2, 0
-_080DE3CC: .4byte gTasks
-_080DE3D0: .4byte sub_80DE3D4
- thumb_func_end sub_80DE3AC
-
thumb_func_start sub_80DE3D4
sub_80DE3D4: @ 80DE3D4
push {r4-r7,lr}
@@ -1127,7 +22,7 @@ sub_80DE3D4: @ 80DE3D4
adds r5, r0, r1
ldr r0, _080DE410 @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl GetBattlerPosition_permutated
lsls r0, 24
lsrs r6, r0, 24
movs r1, 0x26
@@ -1219,7 +114,7 @@ _080DE464:
movs r0, 0x10
strh r0, [r5, 0xE]
movs r0, 0x1
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
@@ -1487,7 +382,7 @@ sub_80DE6B0: @ 80DE6B0
adds r4, r0, r1
ldr r0, _080DE6E4 @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl GetBattlerPosition_permutated
lsls r0, 24
lsrs r6, r0, 24
movs r1, 0x26
@@ -1511,7 +406,7 @@ _080DE6EE:
movs r0, 0x3
strb r0, [r1, 0x15]
movs r0, 0x1
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x24]
@@ -1620,12 +515,12 @@ sub_80DE7B8: @ 80DE7B8
ldr r4, _080DE7F8 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r6, r0, 24
ldrb r0, [r4]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 8
movs r2, 0xE0
@@ -1642,12 +537,12 @@ _080DE800:
ldr r4, _080DE8C8 @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r6, r0, 24
ldrb r0, [r4]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 8
movs r2, 0xE0
@@ -1658,13 +553,13 @@ _080DE800:
_080DE824:
ldrb r0, [r4]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
mov r10, r0
ldrb r0, [r4]
movs r1, 0x1
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 8
movs r1, 0xE0
@@ -1816,7 +711,7 @@ sub_80DE918: @ 80DE918
ldr r4, _080DEA74 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
str r0, [sp, 0x4]
@@ -1868,7 +763,7 @@ _080DE98A:
beq _080DEA56
adds r0, r4, 0
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
mov r10, r0
@@ -2261,7 +1156,7 @@ sub_80DECB0: @ 80DECB0
strh r0, [r1]
ldr r0, _080DED08 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _080DECF4
@@ -2542,7 +1437,7 @@ sub_80DEF3C: @ 80DEF3C
bl InitAnimSpritePos
ldr r0, _080DEF68 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _080DEF70
@@ -2746,7 +1641,7 @@ sub_80DF0B8: @ 80DF0B8
strh r0, [r4, 0x24]
ldr r0, _080DF120 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080DF0DC
@@ -2880,7 +1775,7 @@ sub_80DF1A4: @ 80DF1A4
ldr r5, _080DF240 @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1A]
@@ -2993,7 +1888,7 @@ _080DF292:
strh r7, [r5, 0x2E]
ldr r0, _080DF2FC @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
movs r1, 0
lsls r0, 24
cmp r0, 0
diff --git a/asm/ground.s b/asm/ground.s
index ac3f909b5..82e56fcc0 100644
--- a/asm/ground.s
+++ b/asm/ground.s
@@ -14,13 +14,13 @@ sub_80E0F1C: @ 80E0F1C
ldr r5, _080E0F74 @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x20]
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x22]
@@ -29,13 +29,13 @@ sub_80E0F1C: @ 80E0F1C
ldr r5, _080E0F78 @ =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x32]
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x36]
@@ -79,13 +79,13 @@ sub_80E0F84: @ 80E0F84
ldr r4, _080E0FE0 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x32]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x36]
@@ -128,7 +128,7 @@ sub_80E1004: @ 80E1004
bl sub_8078764
ldr r0, _080E1064 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080E1024
@@ -143,7 +143,7 @@ _080E1024:
ldr r5, _080E106C @ =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r4, 0x4]
@@ -151,7 +151,7 @@ _080E1024:
strh r0, [r6, 0x32]
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r4, [r4, 0x6]
@@ -264,7 +264,7 @@ sub_80E1108: @ 80E1108
ldr r4, _080E1174 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r2, [r6, 0x2]
@@ -272,7 +272,7 @@ sub_80E1108: @ 80E1108
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r3, [r6, 0x4]
@@ -475,13 +475,13 @@ _080E12B0:
.4byte _080E1414
_080E12C4:
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1C]
ldr r0, _080E12EC @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl GetBattlerPosition_permutated
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1E]
@@ -670,7 +670,7 @@ sub_80E143C: @ 80E143C
lsls r0, 24
lsrs r5, r0, 24
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
ldr r2, _080E147C @ =gSprites
@@ -689,7 +689,7 @@ sub_80E143C: @ 80E143C
strh r4, [r1, 0x26]
ldr r0, _080E1480 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl GetBattlerPosition_permutated
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -768,7 +768,7 @@ sub_80E14DC: @ 80E14DC
_080E14FC: .4byte gTasks
_080E1500:
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1C]
@@ -848,13 +848,13 @@ _080E158C:
.4byte _080E165C
_080E15A0:
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1C]
ldr r0, _080E15C4 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankIdentity_permutated
+ bl GetBattlerPosition_permutated
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1E]
@@ -1082,7 +1082,7 @@ _080E1746:
_080E1762:
adds r0, r4, 0
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
adds r0, r6
@@ -1152,7 +1152,7 @@ _080E17EA:
ldrb r5, [r0]
adds r0, r5, 0
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldr r2, _080E184C @ =0x0000fff0
@@ -1288,7 +1288,7 @@ _080E18F8:
_080E1904: .4byte gBankSpriteIds
_080E1908:
ldrb r0, [r6]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x1A]
@@ -1700,7 +1700,7 @@ _080E1BE2:
adds r4, r0
adds r0, r5, 0
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
movs r1, 0x20
@@ -1711,7 +1711,7 @@ _080E1BE2:
strh r1, [r4, 0xA]
adds r0, r5, 0
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
movs r1, 0x40
diff --git a/asm/ice.s b/asm/ice.s
index 51140d998..a824a53ea 100644
--- a/asm/ice.s
+++ b/asm/ice.s
@@ -7,41 +7,6 @@
@ ice
- thumb_func_start sub_80D76C4
-sub_80D76C4: @ 80D76C4
- push {r4,lr}
- adds r4, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080D76F8
- ldr r3, _080D7700 @ =gTasks
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- lsls r1, 1
- movs r0, 0x3A
- ldrsh r2, [r4, r0]
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r3, 0x8
- adds r1, r3
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- adds r0, r4, 0
- bl DestroySprite
-_080D76F8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080D7700: .4byte gTasks
- thumb_func_end sub_80D76C4
-
thumb_func_start sub_80D7704
sub_80D7704: @ 80D7704
push {r4-r7,lr}
@@ -65,26 +30,26 @@ sub_80D7704: @ 80D7704
ldr r4, _080D7814 @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
mov r9, r0
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
mov r8, r0
ldr r4, _080D7818 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r3, r0, 24
ldrb r0, [r4]
movs r1, 0x3
str r3, [sp]
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r6, r0, 24
ldr r1, _080D781C @ =gBattleAnimArgs
@@ -329,13 +294,13 @@ sub_80D792C: @ 80D792C
ldr r0, _080D7960 @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x32]
ldr r0, _080D7964 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080D796C
@@ -359,7 +324,7 @@ _080D7976:
ldr r0, _080D79A8 @ =gAnimBankTarget
ldrb r0, [r0]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
ldr r1, _080D79A4 @ =gBattleAnimArgs
lsrs r0, 24
@@ -409,7 +374,7 @@ _080D79D0:
bl SetAverageBattlerPositions
ldr r0, _080D7A1C @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080D79F6
@@ -495,13 +460,13 @@ sub_80D7A64: @ 80D7A64
ldr r4, _080D7AB0 @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x32]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r6, [r6, 0x6]
@@ -523,7 +488,7 @@ _080D7AB4:
_080D7AC6:
ldr r0, _080D7AE4 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080D7AEC
@@ -649,7 +614,7 @@ sub_80D7BA0: @ 80D7BA0
strh r0, [r4, 0x2E]
ldr r0, _080D7BFC @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
ldr r1, _080D7C00 @ =0x0000ffec
cmp r0, 0
@@ -687,7 +652,7 @@ sub_80D7C08: @ 80D7C08
adds r4, r0, 0
ldr r0, _080D7C5C @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
ldr r1, _080D7C60 @ =0x0000ffec
cmp r0, 0
@@ -810,13 +775,13 @@ sub_80D7CD4: @ 80D7CD4
ldr r4, _080D7D1C @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x32]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x36]
@@ -836,7 +801,7 @@ _080D7D20:
_080D7D32:
ldr r0, _080D7D54 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080D7D5C
@@ -1039,7 +1004,7 @@ _080D7EAC:
bl SetAverageBattlerPositions
ldr r0, _080D7EF0 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080D7ED2
@@ -1108,7 +1073,7 @@ _080D7F34:
movs r1, 0
bl SetAverageBattlerPositions
ldrb r0, [r4]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080D7F60
@@ -1154,7 +1119,7 @@ _080D7F92:
movs r1, 0
bl SetAverageBattlerPositions
ldrb r0, [r4]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080D7FBC
@@ -1201,7 +1166,7 @@ _080D7FF6:
strh r0, [r5, 0x3A]
ldr r0, _080D803C @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _080D800C
@@ -1686,13 +1651,13 @@ sub_80D83E0: @ 80D83E0
ldr r5, _080D840C @ =gAnimBankAttacker
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x20]
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x22]
@@ -2074,12 +2039,12 @@ sub_80D8700: @ 80D8700
mov r8, r0
ldrb r0, [r0]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
adds r4, r0, 0
ldr r7, _080D87F0 @ =gAnimBankTarget
ldrb r0, [r7]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r4, 24
lsls r0, 24
cmp r4, r0
@@ -2119,7 +2084,7 @@ _080D8734:
cmp r0, 0
bne _080D8790
movs r0, 0x1
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
ldr r2, _080D87F8 @ =gSprites
lsls r0, 24
lsrs r0, 24
@@ -2140,13 +2105,13 @@ _080D8794:
ldr r4, _080D87EC @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x20]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x22]
@@ -2162,7 +2127,7 @@ _080D8794:
ldr r4, _080D87F0 @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r6, 0x6]
@@ -2189,7 +2154,7 @@ _080D87FC:
ldr r4, _080D886C @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r6, 0x6]
@@ -2202,7 +2167,7 @@ _080D87FC:
ldrb r0, [r4]
movs r1, 0x1
_080D8824:
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r6, [r6, 0x8]
@@ -2301,7 +2266,7 @@ _080D88D6:
ldr r6, _080D8928 @ =gAnimBankTarget
ldrb r0, [r6]
movs r1, 0
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x20]
@@ -2701,7 +2666,7 @@ sub_80D8BA8: @ 80D8BA8
ldrh r0, [r4, 0x2]
lsls r0, 20
lsrs r0, 24
- bl GetBankByIdentity
+ bl GetBattlerAtPosition
lsls r0, 24
lsrs r5, r0, 24
adds r0, r5, 0
@@ -2713,12 +2678,12 @@ sub_80D8BA8: @ 80D8BA8
str r0, [sp, 0x4]
adds r0, r5, 0
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r7, r0, 24
adds r0, r5, 0
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r6, r0, 24
mov r1, r8
@@ -3032,7 +2997,7 @@ _080D8E6A:
strh r0, [r5, 0x2E]
ldr r0, _080D8ED4 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080D8E92
@@ -3043,7 +3008,7 @@ _080D8E92:
ldr r4, _080D8ED8 @ =gAnimBankTarget
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r6, 0x4]
@@ -3051,7 +3016,7 @@ _080D8E92:
strh r0, [r5, 0x32]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
ldrh r1, [r6, 0x6]
diff --git a/asm/nakamura_debug_menu.s b/asm/nakamura_debug_menu.s
deleted file mode 100644
index 21092fe4b..000000000
--- a/asm/nakamura_debug_menu.s
+++ /dev/null
@@ -1,4686 +0,0 @@
-.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 @ _843E3DC
- 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 @ gMenuCallback
- ldr r0, ._3 + 4 @ debug_sub_815F214
- 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 @ gMain
- 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 @ _843E3DC
- 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 @ gPaletteFade
- 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 @ gMain
- ldr r0, ._16 + 4 @ sub_805469C
- str r0, [r1, #0x8]
- ldr r0, ._16 + 8 @ debug_sub_815F284
- 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 @ gSaveBlock1
- add r0, r2, r3
- ldr r5, ._24 + 4 @ 0x1a08
- 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 @ gSaveBlock2
- add r4, r7, #0
- sub r4, r4, #0x46
- ldr r3, ._24 + 12 @ gSaveBlock1
-._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 @ 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 @ 0x1a08
- 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 @ _843E424
- 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 @ gSaveBlock1
- add r0, r6, r4
- ldr r2, ._35 + 4 @ 0x1a08
- 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 @ gSaveBlock1
- add r3, r4, r1
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- mov r1, #0x1
- ldr r2, ._35 + 12 @ 0x1a09
- 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 @ gSaveBlock1
-._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 @ gSaveBlock1
- 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 @ 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 @ 0x1a08
- add r0, r0, r1
- ldrb r4, [r0]
- mov r2, #0x0
- ldr r3, ._39 + 12 @ _843E424
- 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 @ gStringVar1
- ldr r7, ._43 + 4 @ _nakamuraData0
- 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 @ gSaveBlock1
- ldrb r1, [r7]
- lsl r0, r1, #0x2
- add r0, r0, r1
- lsl r0, r0, #0x5
- add r0, r0, r2
- ldr r1, ._43 + 12 @ 0x1a08
- 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 @ Str_843E550
- 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 @ Str_843E552
- 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 @ Str_843E554
- 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 @ gMain
- 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 @ _nakamuraData0
- 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 @ _nakamuraData0
- 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 @ _nakamuraData0
- mov r0, #0x0
- strb r0, [r1]
- ldr r1, ._59 + 4 @ gMenuCallback
- ldr r0, ._59 + 8 @ debug_sub_815F5C4
- 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 @ _nakamuraData0
- ldrb r0, [r0]
- lsl r1, r0, #0x2
- add r1, r1, r0
- lsl r1, r1, #0x5
- ldr r0, ._61 + 4 @ gSaveBlock1
- 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 @ gStringVar1
- ldr r6, ._61 + 12 @ 0x186a0
- 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 @ 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 @ gSaveBlock1
- 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 @ gStringVar1
- ldr r5, ._66 + 4 @ _nakamuraData0
- 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 @ gSaveBlock1
- ldrb r1, [r5]
- lsl r0, r1, #0x2
- add r0, r0, r1
- lsl r0, r0, #0x5
- add r0, r0, r2
- ldr r1, ._66 + 12 @ 0x1a08
- 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 @ Str_843E574
- ldr r1, ._68 + 4 @ _nakamuraData2
- 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 @ _nakamuraData1
- 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 @ _nakamuraData3
- ldrb r0, [r0]
- lsl r0, r0, #0x1
- ldr r1, ._74 + 4 @ Str_843E576
- 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 @ _nakamuraData0
- ldrb r2, [r1]
- lsl r1, r2, #0x2
- add r1, r1, r2
- lsl r1, r1, #0x5
- ldr r2, ._78 + 4 @ gSaveBlock1
- 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 @ _nakamuraData2
- 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 @ _nakamuraData0
- ldrb r2, [r1]
- lsl r1, r2, #0x2
- add r1, r1, r2
- lsl r1, r1, #0x5
- ldr r2, ._84 + 4 @ gSaveBlock1
- 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 @ _nakamuraData2
- 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 @ _nakamuraData3
- 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 @ _nakamuraData2
- 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 @ _nakamuraData1
- ldrb r2, [r0]
- mov r4, #0xa
- cmp r2, #0
- bne ._103 @cond_branch
- mov r4, #0x7
-._103:
- ldr r5, ._107 + 4 @ gMain
- 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 @ _nakamuraData2
- 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 @ _nakamuraData2
- 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 @ _nakamuraData3
- 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 @ gMenuCallback
- ldr r0, ._133 + 4 @ debug_sub_815FA38
- 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 @ gMain
- 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 @ _nakamuraData0
- 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 @ _nakamuraData0
- 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 @ _nakamuraData0
- ldrb r0, [r1]
- cmp r0, #0
- beq ._161 @cond_branch
- 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 @ 0x1a08
- add r0, r0, r1
- ldrb r0, [r0]
- cmp r0, #0
- beq ._161 @cond_branch
- bl Menu_GetCursorPos
- ldr r1, ._159 + 12 @ _nakamuraData1
- strb r0, [r1]
- ldr r0, ._159 + 16 @ _nakamuraData2
- strb r4, [r0]
- bl debug_sub_815F788
- bl debug_sub_815F7B4
- ldr r1, ._159 + 20 @ gMenuCallback
- ldr r0, ._159 + 24 @ debug_sub_815F930
- 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 @ _nakamuraData0
- mov r1, #0x0
- strb r1, [r0]
- ldr r0, ._162 + 4 @ _nakamuraData3
- strb r1, [r0]
- ldr r1, ._162 + 8 @ gMenuCallback
- ldr r0, ._162 + 12 @ debug_sub_815FA38
- 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 @ gMain
- 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 @ 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 @ gStringVar1
- 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 @ Str_843E580
- 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 @ gSaveBlock1
- mov r6, #0xe8
- lsl r6, r6, #0x3
- ldr r5, ._181 + 4 @ 0x3e7
- ldr r4, ._181 + 8 @ 0x742
-._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 @ gMapHeader
- 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 @ gMapHeader
- 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 @ gMapHeader
- 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 @ gMapHeader
- 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 @ gMapHeader
- 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 @ gMapHeader
- 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 @ gMain
- 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 @ Str_843E58D
- mov r1, #0x1
- mov r2, #0x1
- bl Menu_PrintText
- ldr r6, ._210 + 4 @ gStringVar1
- 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 @ gSaveBlock1
- ldr r1, ._210 + 12 @ 0x2dd6
- 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 @ gStringVar1
- 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 @ gMenuCallback
- ldr r0, ._210 + 20 @ debug_sub_815FDE4
- 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 @ Str_843E5D4
- mov r1, #0x1
- mov r2, #0xf
- bl Menu_PrintText
- mov r5, #0x0
- ldr r0, ._214 + 4 @ _nakamuraStatic0
- mov r8, r0
-._216:
- mov r0, #0x64
- add r1, r5, #0
- mul r1, r1, r0
- ldr r0, ._214 + 8 @ gPlayerParty
- 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 @ _nakamuraData4
- mov r0, #0x0
- strb r0, [r1]
- mov r0, #0xf
- mov r1, #0x1
- mov r2, #0xff
- bl PrintTriangleCursorWithPalette
- ldr r1, ._217 + 4 @ gMenuCallback
- ldr r0, ._217 + 8 @ debug_sub_8160498
- 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 @ _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 @ gSpeciesNames
- 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 @ Str_843E5F0
- mov r0, sp
- mov r2, #0x2
- bl memcpy
- mov r0, #0x64
- mul r0, r0, r4
- 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 @ gOtherText_MaleSymbol2
- 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 @ gOtherText_FemaleSymbolAndLv
-._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 @ gStringVar1
- ldr r1, ._229 + 4 @ _nakamuraStatic0
- 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 @ _nakamuraStatic0
- 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 @ _nakamuraStatic0
- 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 @ 0xfffffe65
- 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 @ 0x19b
- add r0, r1, r2
- strh r0, [r4]
-._238:
- mov r0, #0x64
- mul r0, r0, r5
- ldr r1, ._239 + 12 @ gPlayerParty
- 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 @ _nakamuraStatic0
- 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 @ _nakamuraStatic0
- 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 @ gPlayerParty
- add r4, r4, r0
- ldr r2, ._247 + 8 @ gBaseStats
- 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 @ gExperienceTables
- 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 @ gPlayerParty
- 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 @ gPlayerPartyCount
- ldrb r1, [r4]
- cmp r1, #0
- bne ._253 @cond_branch
- ldr r0, ._254 @ gPlayerParty
- 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 @ _nakamuraData4
- 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 @ _843E5D1
- 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 @ _nakamuraData4
- 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 @ _843E5D1
- 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 @ gMain
- 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 @ _nakamuraData4
- 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 @ _nakamuraData4
- 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 @ _nakamuraData4
- 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 @ _nakamuraData4
- 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 @ gPlayerParty
- 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 @ gBaseStats
- 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 @ gPlayerParty
- 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 @ gPlayerParty
- add r4, r4, r0
- add r0, r4, #0
- mov r1, #0x42
- bl GetMonData
- ldr r0, ._323 + 4 @ _nakamuraStatic0
- 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 @ ContestStatsText_GoldPokeBlock
- 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 @ ContestStatsText_WhitePokeBlock
- 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 @ ContestStatsText_BlackPokeBlock
- 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 @ ContestStatsText_GrayPokeBlock
- 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 @ ContestStatsText_PurplePokeBlock
- 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 @ ContestStatsText_IndigoPokeBlock
- 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 @ ContestStatsText_BrownPokeBlock
- 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 @ ContestStatsText_LiteBluePokeBlock
- 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 @ ContestStatsText_OlivePokeBlock
- 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 @ ContestStatsText_RedPokeBlock
- 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 @ ContestStatsText_BluePokeBlock
- 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 @ ContestStatsText_PinkPokeBlock
- 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 @ ContestStatsText_GreenPokeBlock
- 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 @ ContestStatsText_YellowPokeBlock
- add r0, r6, #0
- bl StringCopy
- mov r0, #0x5
- b ._400
-._402:
- .align 2, 0
-._401:
- .word ContestStatsText_YellowPokeBlock
-._399:
- ldr r1, ._403 @ gOtherText_FiveQuestions
- 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 @ _nakamuraStatic18
- cmp r0, #0
- bne ._420 @cond_branch
- ldr r4, ._422 + 4 @ gStringVar1
- 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 @ gStringVar1
- 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 @ gStringVar1
- 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 @ gStringVar1
- 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 @ gStringVar1
- 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 @ gStringVar1
- 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 @ _nakamuraStatic18
- 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 @ gStringVar1
- ldr r4, ._456 + 4 @ _nakamuraStatic18
- 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 @ gContestStatsText_Spicy
- mov r1, #0x2
- mov r2, #0x3
- bl Menu_PrintText
- ldr r0, ._459 + 4 @ gContestStatsText_Dry
- mov r1, #0x2
- mov r2, #0x5
- bl Menu_PrintText
- ldr r0, ._459 + 8 @ gContestStatsText_Sweet
- mov r1, #0x2
- mov r2, #0x7
- bl Menu_PrintText
- ldr r0, ._459 + 12 @ gContestStatsText_Bitter
- mov r1, #0x2
- mov r2, #0x9
- bl Menu_PrintText
- ldr r0, ._459 + 16 @ gContestStatsText_Sour
- mov r1, #0x2
- mov r2, #0xb
- bl Menu_PrintText
- ldr r0, ._459 + 20 @ gContestStatsText_Tasty
- 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 @ _nakamuraStatic18
- 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 @ gMain
- 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 @ gMenuCallback
- ldr r0, ._485 + 4 @ debug_sub_8160CF4
- 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 @ gOtherText_Slash
- mov r1, #0xb
- mov r2, #0x1
- bl Menu_PrintText
- ldr r0, ._487 + 4 @ Str_843E5F2
- mov r1, #0x2
- mov r2, #0x3
- bl Menu_PrintText
- ldr r0, ._487 + 8 @ Str_843E5FB
- mov r1, #0x2
- mov r2, #0x5
- bl Menu_PrintText
- ldr r0, ._487 + 12 @ Str_843E606
- mov r1, #0x2
- mov r2, #0x7
- bl Menu_PrintText
- ldr r0, ._487 + 16 @ Str_843E611
- mov r1, #0x2
- mov r2, #0x9
- bl Menu_PrintText
- ldr r0, ._487 + 20 @ Str_843E61C
- mov r1, #0x2
- mov r2, #0xb
- bl Menu_PrintText
- ldr r0, ._487 + 24 @ Str_843E627
- mov r1, #0x2
- mov r2, #0xd
- bl Menu_PrintText
- ldr r0, ._487 + 28 @ Str_843E637
- mov r1, #0x2
- mov r2, #0xf
- bl Menu_PrintText
- ldr r0, ._487 + 32 @ Str_843E632
- 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 @ gStringVar1
- 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 @ gSpeciesNames
- 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 @ _nakamuraData5
- 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 @ gPlayerParty
- 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 @ _nakamuraData5
- 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 @ _nakamuraData5
- 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 @ _nakamuraData5
- 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 @ gPlayerParty
- 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 @ gMain
- 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 @ _nakamuraData5
- ldrb r1, [r0]
- mov r0, #0x64
- mul r0, r0, r1
- ldr r1, ._515 + 4 @ gPlayerParty
- 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 @ _nakamuraData5
- mov r0, #0x0
- strb r0, [r1]
- bl debug_sub_8160DC0
- ldr r0, ._519 + 4 @ gPlayerParty
- bl debug_sub_8160E50
- ldr r1, ._519 + 8 @ gMenuCallback
- ldr r0, ._519 + 12 @ debug_sub_81610BC
- 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 @ _nakamuraData6
- ldr r1, ._523 + 4 @ _nakamuraData8
- 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 @ _nakamuraDataA
- ldrh r0, [r0]
- cmp r4, r0
- bcs ._525 @cond_branch
- ldr r0, ._529 + 4 @ _nakamuraDataC
- 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 @ _nakamuraDataA
- 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 @ Str_843E642
- mov r1, #0x2
- mov r2, #0x1
- bl Menu_PrintText
- ldr r0, ._531 + 4 @ Str_843E647
- mov r1, #0x2
- mov r2, #0x3
- bl Menu_PrintText
- ldr r0, ._531 + 8 @ Str_843E65A
- mov r1, #0x2
- mov r2, #0x5
- bl Menu_PrintText
- ldr r0, ._531 + 12 @ Str_843E64C
- mov r1, #0x2
- mov r2, #0x7
- bl Menu_PrintText
- ldr r0, ._531 + 16 @ Str_843E651
- mov r1, #0x2
- mov r2, #0x9
- bl Menu_PrintText
- ldr r0, ._531 + 20 @ Str_843E655
- mov r1, #0xd
- mov r2, #0x9
- bl Menu_PrintText
- ldr r4, ._531 + 24 @ Str_843E658
- 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 @ gStringVar1
- 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 @ gStringVar1
- 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 @ gMain
- 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 @ _nakamuraData6
- neg r1, r5
- mov r2, #0x1
- bl debug_sub_81612B8
-._545:
- cmp r4, #0x1
- bne ._546 @cond_branch
- 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 @ _nakamuraDataC
- neg r1, r5
- mov r2, #0x5
- bl debug_sub_81612B8
-._547:
- cmp r4, #0x3
- bne ._565 @cond_branch
- ldr r0, ._550 + 12 @ _nakamuraDataA
- 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 @ _nakamuraData6
- add r1, r5, #0
- mov r2, #0x1
- bl debug_sub_81612B8
-._553:
- cmp r4, #0x1
- bne ._554 @cond_branch
- 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 @ _nakamuraDataC
- add r1, r5, #0
- mov r2, #0x5
- bl debug_sub_81612B8
-._555:
- cmp r4, #0x3
- bne ._565 @cond_branch
- ldr r0, ._558 + 12 @ _nakamuraDataA
- 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 @ _nakamuraDataC
- 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 @ _nakamuraData6
- mov r1, #0x0
- strh r1, [r0]
- ldr r0, ._566 + 4 @ _nakamuraData8
- strh r1, [r0]
- ldr r0, ._566 + 8 @ _nakamuraDataC
- strh r1, [r0]
- ldr r0, ._566 + 12 @ _nakamuraDataA
- 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 @ gMenuCallback
- ldr r0, ._566 + 20 @ debug_sub_81612EC
- 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
deleted file mode 100644
index 1bc077b90..000000000
--- a/asm/nohara_debug_menu.s
+++ /dev/null
@@ -1,2198 +0,0 @@
-.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 @ gUnknown_Debug_083C4938
- 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 @ gMenuCallback
- ldr r0, ._1 + 8 @ debug_sub_808F414
- 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 @ gMenuCallback
- ldr r0, ._6 + 4 @ gUnknown_Debug_083C4938
- 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 @ gDebug_03000726
- 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 @ gUnknown_Debug_083C4B8C
- 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 @ gMenuCallback
- ldr r0, ._8 + 12 @ debug_sub_808F4AC
- 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 @ gMenuCallback
- ldr r0, ._13 + 4 @ gUnknown_Debug_083C4B8C
- 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 @ gUnknown_Debug_083C4980
- bl sub_8071F40
- mov r0, #0x3
- mov r1, #0x3
- mov r2, #0x1
- bl DisplayYesNoMenu
- ldr r1, ._15 + 4 @ gMenuCallback
- ldr r0, ._15 + 8 @ debug_sub_808F648
- 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 @ gSaveBlock1
- ldr r3, ._20 + 4 @ 0x2738
-._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 @ 0x2739
- 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 @ gSaveBlock1
- ldr r3, ._23 + 4 @ 0x2739
- 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 @ gSaveBlock1
- ldr r5, ._27 + 4 @ 0x2738
- ldr r4, ._27 + 8 @ 0x2739
- 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 @ gStringVar1
- ldr r7, ._30 + 4 @ gUnknown_Debug_083C4BD4
- add r0, r7, #1
- mov r8, r0
-._29:
- ldr r5, ._30 + 8 @ gSpecialVar_0x8004
- 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 @ gMenuCallback
- ldr r0, ._30 + 16 @ debug_sub_8090278
- 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 @ gMain
- 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 @ gDebug_03000726
- 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 @ 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 @ 0x2738
- 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 @ 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 @ 0x2738
- 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 @ gStringVar1
-._55:
- ldr r0, ._53 + 4 @ gSaveBlock1
- lsl r1, r4, #0x2
- add r1, r1, r0
- ldr r0, ._53 + 8 @ 0x2abc
- 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 @ 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 @ 0x2739
- 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 @ 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 @ 0x2739
- 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 @ gStringVar1
-._66:
- ldr r0, ._64 + 4 @ gSaveBlock1
- lsl r1, r4, #0x2
- add r1, r1, r0
- ldr r0, ._64 + 8 @ 0x2abd
- 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 @ 0x832
- bl FlagSet
- ldr r0, ._67 + 4 @ 0x818
- 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 @ gDebug_03000724
- mov r0, #0x0
- strb r0, [r1]
- 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 @ gUnknown_Debug_083C4ACC
- 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 @ gStringVar1
- 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 @ gMenuCallback
- ldr r0, ._69 + 20 @ debug_sub_808F93C
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
-._70:
- .align 2, 0
-._69:
- .word gDebug_03000724
- .word gUnknown_Debug_083C49CA
- .word gUnknown_Debug_083C4ACC
- .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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x40
- and r0, r0, r1
- cmp r0, #0
- beq ._71 @cond_branch
- ldr r1, ._83 + 4 @ gDebug_03000725
- 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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x80
- and r0, r0, r1
- cmp r0, #0
- beq ._73 @cond_branch
- ldr r1, ._83 + 4 @ gDebug_03000725
- 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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x10
- and r0, r0, r1
- cmp r0, #0
- beq ._75 @cond_branch
- ldr r1, ._83 + 8 @ gDebug_03000724
- 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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._77 @cond_branch
- ldr r1, ._83 + 8 @ gDebug_03000724
- 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 @ gUnknown_Debug_083C4ACC
- ldr r0, ._83 + 8 @ gDebug_03000724
- 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 @ gStringVar1
- ldr r0, ._83 + 4 @ gDebug_03000725
- 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 @ gMain
- 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 @ gDebug_03000725
- ldrb r0, [r0]
- ldr r2, ._83 + 20 @ gUnknown_Debug_083C4ABD
- ldr r1, ._83 + 8 @ gDebug_03000724
- 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_083C4ACC
- .word gStringVar1
- .word gUnknown_Debug_083C4ABD
-._81:
- ldr r0, ._85 @ gSaveBlock1
- 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 @ gSaveBlock1
- lsl r4, r6, #0x3
- add r2, r4, r6
- lsl r2, r2, #0x2
- add r0, r2, r3
- ldr r5, ._92 + 4 @ 0x2738
- add r1, r0, r5
- strb r7, [r1]
- ldr r1, ._92 + 8 @ 0x2739
- add r0, r0, r1
- mov r1, #0x1
- strb r1, [r0]
- mov r1, #0x0
- ldr r0, ._92 + 12 @ 0x273a
- 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 @ gSaveBlock1
- 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 @ gSaveBlock1
- 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 @ gSaveBlock1
- add r4, r0, r1
- mov r2, #0x1
- strh r2, [r4, #0x2]
- add r1, r1, #0x10
- add r0, r0, r1
- ldr r1, ._145 + 4 @ gSaveBlock2
- 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 @ 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 @ gSaveBlock2
- bl StringCopy
- mov r0, #0x64
- mov r5, r9
- mul r5, r5, r0
- ldr r0, ._148 + 8 @ gPlayerParty
- 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 @ 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 @ gSaveBlock1
- 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 @ gSaveBlock2
- 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 @ gSaveBlock1
- 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 @ gSaveBlock2
- bl StringCopy
- mov r0, #0x64
- mov r5, r9
- mul r5, r5, r0
- ldr r0, ._154 + 8 @ gPlayerParty
- 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 @ 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 @ gSaveBlock2
- 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 @ gSaveBlock1
- 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 @ gSaveBlock1
- add r4, r4, r0
- ldr r1, ._163 + 4 @ gUnknown_Debug_083C4C64
- mov r0, sp
- mov r2, #0x8
- bl memcpy
- add r5, sp, #0x8
- ldr r1, ._163 + 8 @ gUnknown_Debug_083C4C6C
- 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 @ gSaveBlock1
- add r5, r0, r1
- add r4, sp, #0x14
- ldr r1, ._168 + 4 @ gUnknown_Debug_083C4C64
- 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 @ gSaveBlock1
- add r4, r4, r0
- add r5, sp, #0x1c
- ldr r1, ._171 + 4 @ gUnknown_Debug_083C4C64
- 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 @ gSaveBlock1
- add r4, r4, r0
- add r5, sp, #0x24
- ldr r1, ._174 + 4 @ gUnknown_Debug_083C4C64
- 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 @ gSaveBlock1
- add r4, r4, r0
- add r5, sp, #0x2c
- ldr r1, ._176 + 4 @ gUnknown_Debug_083C4C64
- add r0, r5, #0
- mov r2, #0x8
- bl memcpy
- ldr r0, ._176 + 8 @ 0xffff
- 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 @ gDebug_03000724
- mov r0, #0x0
- strb r0, [r1]
- 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 @ gUnknown_Debug_083C4B24
- 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 @ gStringVar1
- 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 @ gMenuCallback
- ldr r0, ._178 + 20 @ debug_sub_808FF3C
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
-._179:
- .align 2, 0
-._178:
- .word gDebug_03000724
- .word gUnknown_Debug_083C49CA
- .word gUnknown_Debug_083C4B24
- .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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x40
- and r0, r0, r1
- cmp r0, #0
- beq ._180 @cond_branch
- ldr r1, ._192 + 4 @ gDebug_03000725
- 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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x80
- and r0, r0, r1
- cmp r0, #0
- beq ._182 @cond_branch
- ldr r1, ._192 + 4 @ gDebug_03000725
- 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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x10
- and r0, r0, r1
- cmp r0, #0
- beq ._184 @cond_branch
- ldr r1, ._192 + 8 @ gDebug_03000724
- 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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._186 @cond_branch
- ldr r1, ._192 + 8 @ gDebug_03000724
- 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 @ gUnknown_Debug_083C4B24
- ldr r0, ._192 + 8 @ gDebug_03000724
- 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 @ gStringVar1
- ldr r0, ._192 + 4 @ gDebug_03000725
- 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 @ gMain
- 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 @ gDebug_03000725
- ldrb r0, [r0]
- ldr r2, ._192 + 20 @ gUnknown_Debug_083C4B20
- ldr r1, ._192 + 8 @ gDebug_03000724
- 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_083C4B24
- .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 @ gSaveBlock1
- lsr r0, r0, #0x16
- add r0, r0, r2
- ldr r3, ._194 + 4 @ 0x2abc
- add r2, r0, r3
- strb r1, [r2]
- ldr r1, ._194 + 8 @ 0x2abd
- 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 @ gSaveBlock1
- 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 @ 0x2738
- 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 @ gUnknown_Debug_083C4ABD
- add r0, r7, r0
- ldrb r1, [r0]
- add r0, r5, #0
- bl debug_sub_808FA88
- ldr r1, ._202 + 12 @ 0x2739
- 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 @ gSaveBlock1
- lsl r1, r5, #0x2
- add r1, r1, r0
- ldr r0, ._202 + 16 @ 0x2abc
- 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 @ gUnknown_Debug_083C4B20
- 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 @ gUnknown_Debug_083C4D28
- 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 @ gMenuCallback
- ldr r0, ._204 + 8 @ debug_sub_80901A4
- 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 @ gMenuCallback
- ldr r0, ._209 + 4 @ gUnknown_Debug_083C4D28
- 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 @ gUnknown_Debug_083C4CA8
- ldr r1, ._211 + 4 @ gUnknown_083F8408
- 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 @ gMenuCallback
- ldr r0, ._211 + 12 @ debug_sub_8090278
- 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 @ gUnknown_Debug_083C4CA8
- ldr r1, ._213 + 4 @ gUnknown_083F8410
- 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 @ gMenuCallback
- ldr r0, ._213 + 12 @ debug_sub_8090278
- 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 @ gMain
- 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 @ gStringVar1
- ldr r0, ._219 + 4 @ gSaveBlock1
- ldr r1, ._219 + 8 @ 0x13c2
- 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 @ gMenuCallback
- ldr r0, ._219 + 16 @ debug_sub_8090278
- 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 @ gSaveBlock2
- 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 @ 0x4085
- 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 @ 0x4085
- 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 @ 0x32f
- 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 @ 0x2e3
- bl FlagClear
- ldr r0, ._229 + 4 @ 0x4090
- 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 @ 0x4048
- ldr r1, ._231 + 4 @ 0x270f
- 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 @ gSaveBlock2
- ldr r1, ._235 + 4 @ 0x572
- 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 @ 0x3e7
- cmp r1, r0
- bhi ._239 @cond_branch
- add r0, r0, #0x1
- b ._244
-._242:
- .align 2, 0
-._241:
- .word 0x3e7
-._239:
- ldr r0, ._245 @ 0x1387
- cmp r1, r0
- bhi ._243 @cond_branch
- ldr r0, ._245 + 4 @ 0x2706
- b ._244
-._246:
- .align 2, 0
-._245:
- .word 0x1387
- .word 0x2706
-._243:
- ldr r0, ._248 @ 0x2705
- 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/normal.s b/asm/normal.s
index 732c049ab..55aae48fd 100644
--- a/asm/normal.s
+++ b/asm/normal.s
@@ -24,7 +24,7 @@ sub_80E1CB4: @ 80E1CB4
strh r0, [r4, 0x2E]
ldr r0, _080E1CF0 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0
@@ -1208,7 +1208,7 @@ _080E25A0:
cmp r0, 0x1
bhi _080E25F4
movs r4, 0
- ldr r5, _080E2600 @ =gNoOfAllBanks
+ ldr r5, _080E2600 @ =gBattlersCount
ldrb r0, [r5]
cmp r4, r0
bcs _080E25F4
@@ -1243,7 +1243,7 @@ _080E25FA:
pop {r0}
bx r0
.align 2, 0
-_080E2600: .4byte gNoOfAllBanks
+_080E2600: .4byte gBattlersCount
_080E2604: .4byte gSprites
_080E2608: .4byte gBankSpriteIds
thumb_func_end sub_80E255C
@@ -1538,7 +1538,7 @@ sub_80E2838: @ 80E2838
adds r4, r0, 0
ldr r0, _080E2868 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080E285C
@@ -1636,7 +1636,7 @@ sub_80E2908: @ 80E2908
adds r4, r0, 0
ldr r5, _080E2968 @ =gBattleAnimArgs
ldrb r0, [r5]
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x2E]
@@ -2512,13 +2512,13 @@ _080E2FAC:
bne _080E3028
ldr r5, _080E305C @ =gAnimBankAttacker
ldrb r0, [r5]
- bl GetBankIdentity
+ bl GetBattlerPosition
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
beq _080E2FDC
ldrb r0, [r5]
- bl GetBankIdentity
+ bl GetBattlerPosition
lsls r0, 24
cmp r0, 0
bne _080E3028
@@ -2585,11 +2585,11 @@ _080E3068: .4byte gSharedMem + 0x19348
_080E306C:
ldr r4, _080E308C @ =gAnimBankAttacker
ldrb r0, [r4]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080E3098
- ldr r1, _080E3090 @ =gBattlePartyID
+ ldr r1, _080E3090 @ =gBattlerPartyIndexes
ldrb r0, [r4]
lsls r0, 1
adds r0, r1
@@ -2600,10 +2600,10 @@ _080E306C:
b _080E30A8
.align 2, 0
_080E308C: .4byte gAnimBankAttacker
-_080E3090: .4byte gBattlePartyID
+_080E3090: .4byte gBattlerPartyIndexes
_080E3094: .4byte gEnemyParty
_080E3098:
- ldr r1, _080E3160 @ =gBattlePartyID
+ ldr r1, _080E3160 @ =gBattlerPartyIndexes
ldrb r0, [r4]
lsls r0, 1
adds r0, r1
@@ -2619,7 +2619,7 @@ _080E30A8:
lsrs r4, r0, 16
_080E30B4:
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r5, r0, 24
ldr r0, _080E3168 @ =gAnimBankAttacker
@@ -2697,7 +2697,7 @@ _080E3106:
pop {r0}
bx r0
.align 2, 0
-_080E3160: .4byte gBattlePartyID
+_080E3160: .4byte gBattlerPartyIndexes
_080E3164: .4byte gPlayerParty
_080E3168: .4byte gAnimBankAttacker
_080E316C: .4byte 0x040000d4
@@ -2784,7 +2784,7 @@ _080E3208:
adds r0, 0x2
strh r5, [r0]
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
ldr r0, _080E32CC @ =gSprites
mov r8, r0
movs r2, 0x8
@@ -3051,13 +3051,13 @@ _080E3432:
cmp r0, 0
bne _080E34A4
adds r0, r5, 0
- bl GetBankIdentity
+ bl GetBattlerPosition
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
beq _080E345E
adds r0, r5, 0
- bl GetBankIdentity
+ bl GetBattlerPosition
lsls r0, 24
cmp r0, 0
bne _080E34A4
@@ -3119,11 +3119,11 @@ _080E34DC: .4byte gBankSpriteIds
_080E34E0: .4byte gSharedMem + 0x19348
_080E34E4:
adds r0, r5, 0
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080E3508
- ldr r1, _080E3500 @ =gBattlePartyID
+ ldr r1, _080E3500 @ =gBattlerPartyIndexes
lsls r0, r5, 1
adds r0, r1
ldrh r1, [r0]
@@ -3132,10 +3132,10 @@ _080E34E4:
ldr r1, _080E3504 @ =gEnemyParty
b _080E3516
.align 2, 0
-_080E3500: .4byte gBattlePartyID
+_080E3500: .4byte gBattlerPartyIndexes
_080E3504: .4byte gEnemyParty
_080E3508:
- ldr r1, _080E3568 @ =gBattlePartyID
+ ldr r1, _080E3568 @ =gBattlerPartyIndexes
lsls r0, r5, 1
adds r0, r1
ldrh r1, [r0]
@@ -3182,7 +3182,7 @@ _080E3550:
bl LZDecompressVram
b _080E3580
.align 2, 0
-_080E3568: .4byte gBattlePartyID
+_080E3568: .4byte gBattlerPartyIndexes
_080E356C: .4byte gPlayerParty
_080E3570: .4byte gBankSpriteIds
_080E3574: .4byte gBattleStatMask1_Tilemap
@@ -3847,7 +3847,7 @@ sub_80E3A58: @ 80E3A58
beq _080E3A94
ldr r0, _080E3AC8 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080E3A94
@@ -3955,7 +3955,7 @@ sub_80E3B4C: @ 80E3B4C
lsrs r4, 24
ldr r0, _080E3B70 @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
ldr r1, _080E3B74 @ =gBattleAnimArgs
lsls r0, 24
lsrs r0, 24
@@ -3978,7 +3978,7 @@ sub_80E3B78: @ 80E3B78
lsrs r4, 24
ldr r0, _080E3B9C @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
ldr r1, _080E3BA0 @ =gBattleAnimArgs
lsls r0, 24
lsrs r0, 24
@@ -4206,11 +4206,11 @@ _080E3D50: .4byte REG_BG1CNT
_080E3D54: .4byte gSharedMem + 0x19348
_080E3D58:
adds r0, r7, 0
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
beq _080E3D7C
- ldr r1, _080E3D74 @ =gBattlePartyID
+ ldr r1, _080E3D74 @ =gBattlerPartyIndexes
lsls r0, r7, 1
adds r0, r1
ldrh r1, [r0]
@@ -4219,10 +4219,10 @@ _080E3D58:
ldr r1, _080E3D78 @ =gEnemyParty
b _080E3D8A
.align 2, 0
-_080E3D74: .4byte gBattlePartyID
+_080E3D74: .4byte gBattlerPartyIndexes
_080E3D78: .4byte gEnemyParty
_080E3D7C:
- ldr r1, _080E3E48 @ =gBattlePartyID
+ ldr r1, _080E3E48 @ =gBattlerPartyIndexes
lsls r0, r7, 1
adds r0, r1
ldrh r1, [r0]
@@ -4320,7 +4320,7 @@ _080E3DE6:
pop {r0}
bx r0
.align 2, 0
-_080E3E48: .4byte gBattlePartyID
+_080E3E48: .4byte gBattlerPartyIndexes
_080E3E4C: .4byte gPlayerParty
_080E3E50: .4byte gBankSpriteIds
_080E3E54: .4byte gBattle_BG1_X
@@ -4861,11 +4861,11 @@ sub_80E4264: @ 80E4264
lsrs r5, r0, 24
ldr r0, _080E428C @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
adds r4, r0, 0
ldr r0, _080E4290 @ =gAnimBankTarget
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r4, 24
lsls r0, 24
cmp r4, r0
diff --git a/asm/pc_screen_effect.s b/asm/pc_screen_effect.s
deleted file mode 100644
index 9d36df66c..000000000
--- a/asm/pc_screen_effect.s
+++ /dev/null
@@ -1,546 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "include/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80C5E38
-sub_80C5E38: @ 80C5E38
- push {r4-r7,lr}
- sub sp, 0x28
- adds r7, r0, 0
- ldr r0, _080C5EC8 @ =gUnknown_083D1898
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp, 0x18]
- str r1, [sp, 0x1C]
- ldr r0, _080C5ECC @ =gUnknown_083D18A0
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp, 0x20]
- str r1, [sp, 0x24]
- mov r1, sp
- ldr r0, _080C5ED0 @ =gSpriteTemplate_83D18C0
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldrh r3, [r7]
- lsls r2, r3, 16
- add r0, sp, 0x18
- ldrh r1, [r0, 0x4]
- orrs r1, r2
- str r1, [r0, 0x4]
- mov r1, sp
- movs r6, 0
- strh r3, [r1]
- ldrh r2, [r7, 0x2]
- ldr r5, _080C5ED4 @ =0xffff0000
- add r4, sp, 0x20
- ldr r1, [r4, 0x4]
- ands r1, r5
- orrs r1, r2
- str r1, [r4, 0x4]
- mov r1, sp
- strh r2, [r1, 0x2]
- bl LoadSpriteSheet
- adds r0, r4, 0
- bl LoadSpritePalette
- movs r0, 0x50
- strh r0, [r7, 0xC]
- strh r6, [r7, 0x8]
- strh r6, [r7, 0xA]
- ldrh r0, [r7, 0x2]
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x80
- lsls r1, 9
- lsls r1, r0
- bics r5, r1
- str r5, [r7, 0x10]
- ldrh r0, [r7, 0x4]
- cmp r0, 0
- bne _080C5EB2
- movs r0, 0x10
- strh r0, [r7, 0x4]
-_080C5EB2:
- ldrh r0, [r7, 0x6]
- cmp r0, 0
- bne _080C5EBC
- movs r0, 0x14
- strh r0, [r7, 0x6]
-_080C5EBC:
- ldr r0, _080C5ED8 @ =gUnknown_020387EC
- str r7, [r0]
- movs r5, 0
- ldr r6, _080C5EDC @ =gSprites
- b _080C5F4A
- .align 2, 0
-_080C5EC8: .4byte gUnknown_083D1898
-_080C5ECC: .4byte gUnknown_083D18A0
-_080C5ED0: .4byte gSpriteTemplate_83D18C0
-_080C5ED4: .4byte 0xffff0000
-_080C5ED8: .4byte gUnknown_020387EC
-_080C5EDC: .4byte gSprites
-_080C5EE0:
- lsls r2, r3, 4
- adds r1, r2, r3
- lsls r1, 2
- adds r1, r6
- ldrh r0, [r7, 0x4]
- strh r0, [r1, 0x2E]
- movs r0, 0x1
- strh r0, [r1, 0x30]
- ldr r1, _080C5EF4 @ =gSprites
- b _080C5F2A
- .align 2, 0
-_080C5EF4: .4byte gSprites
-_080C5EF8:
- lsls r1, r5, 21
- movs r0, 0x80
- lsls r0, 16
- adds r1, r0
- asrs r1, 16
- mov r0, sp
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x40
- beq _080C5F6E
- lsls r2, r3, 4
- adds r1, r2, r3
- lsls r1, 2
- adds r1, r6
- ldrh r0, [r7, 0x4]
- negs r0, r0
- strh r0, [r1, 0x2E]
- ldr r0, _080C5F88 @ =0x0000ffff
- strh r0, [r1, 0x30]
- ldr r1, _080C5F8C @ =gSprites
- lsls r4, r5, 5
-_080C5F2A:
- adds r0, r2, r3
- lsls r0, 2
- adds r0, r1
- adds r1, r4, 0
- adds r1, 0x8
- movs r2, 0
- strh r1, [r0, 0x32]
- strh r2, [r0, 0x36]
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_080C5F4A:
- cmp r5, 0x7
- bhi _080C5F6E
- cmp r5, 0x3
- bhi _080C5EF8
- lsls r4, r5, 5
- adds r1, r4, 0
- subs r1, 0x70
- lsls r1, 16
- asrs r1, 16
- mov r0, sp
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x40
- bne _080C5EE0
-_080C5F6E:
- ldr r1, _080C5F90 @ =REG_BLDCNT
- movs r0, 0xFF
- strh r0, [r1]
- adds r1, 0x4
- movs r0, 0x10
- strh r0, [r1]
- ldr r0, _080C5F94 @ =sub_80C6078
- bl sub_80C61B0
- add sp, 0x28
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080C5F88: .4byte 0x0000ffff
-_080C5F8C: .4byte gSprites
-_080C5F90: .4byte REG_BLDCNT
-_080C5F94: .4byte sub_80C6078
- thumb_func_end sub_80C5E38
-
- thumb_func_start sub_80C5F98
-sub_80C5F98: @ 80C5F98
- push {r4,lr}
- ldr r4, _080C5FB0 @ =gUnknown_020387EC
- ldr r2, [r4]
- ldrh r0, [r2, 0x8]
- cmp r0, 0x1
- beq _080C5FEC
- cmp r0, 0x1
- bgt _080C5FB4
- cmp r0, 0
- beq _080C5FBA
- b _080C602C
- .align 2, 0
-_080C5FB0: .4byte gUnknown_020387EC
-_080C5FB4:
- cmp r0, 0x2
- beq _080C6008
- b _080C602C
-_080C5FBA:
- ldrh r0, [r2, 0xC]
- ldrh r1, [r2, 0x6]
- subs r0, r1
- strh r0, [r2, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- bgt _080C6034
- ldr r0, [r2, 0x10]
- ldr r2, _080C5FE4 @ =0x0000ffff
- movs r1, 0x10
- bl BlendPalettes
- ldr r0, _080C5FE8 @ =sub_80C603C
- bl SetHBlankCallback
- ldr r1, [r4]
- movs r0, 0x1
- strh r0, [r1, 0xC]
- b _080C6000
- .align 2, 0
-_080C5FE4: .4byte 0x0000ffff
-_080C5FE8: .4byte sub_80C603C
-_080C5FEC:
- ldrh r0, [r2, 0xA]
- cmp r0, 0x8
- bne _080C6034
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- ldr r1, [r4]
-_080C6000:
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _080C6034
-_080C6008:
- ldr r0, _080C6030 @ =REG_BLDCNT
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x4
- strh r1, [r0]
- ldrh r0, [r2]
- bl FreeSpriteTilesByTag
- ldr r0, [r4]
- ldrh r0, [r0, 0x2]
- bl FreeSpritePaletteByTag
- bl ClearGpuRegBits
- ldr r1, [r4]
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_080C602C:
- movs r0, 0x1
- b _080C6036
- .align 2, 0
-_080C6030: .4byte REG_BLDCNT
-_080C6034:
- movs r0, 0
-_080C6036:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80C5F98
-
- thumb_func_start sub_80C603C
-sub_80C603C: @ 80C603C
- push {lr}
- sub sp, 0x4
- mov r2, sp
- ldr r0, _080C6060 @ =REG_VCOUNT
- ldrh r1, [r0]
- movs r3, 0xFF
- adds r0, r3, 0
- ands r0, r1
- strh r0, [r2]
- mov r0, sp
- ldrh r0, [r0]
- cmp r0, 0x50
- bne _080C6068
- ldr r1, _080C6064 @ =REG_BLDCNT
- movs r0, 0x8F
- strh r0, [r1]
- b _080C606C
- .align 2, 0
-_080C6060: .4byte REG_VCOUNT
-_080C6064: .4byte REG_BLDCNT
-_080C6068:
- ldr r0, _080C6074 @ =REG_BLDCNT
- strh r3, [r0]
-_080C606C:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080C6074: .4byte REG_BLDCNT
- thumb_func_end sub_80C603C
-
- thumb_func_start sub_80C6078
-sub_80C6078: @ 80C6078
- push {lr}
- sub sp, 0x4
- mov r2, sp
- ldr r0, _080C60B0 @ =REG_VCOUNT
- ldrh r1, [r0]
- movs r0, 0xFF
- ands r0, r1
- strh r0, [r2]
- mov r0, sp
- ldrh r1, [r0]
- ldr r0, _080C60B4 @ =gUnknown_020387EC
- ldr r0, [r0]
- movs r3, 0xC
- ldrsh r2, [r0, r3]
- movs r0, 0x50
- subs r0, r2
- cmp r1, r0
- ble _080C60BC
- mov r0, sp
- ldrh r1, [r0]
- adds r0, r2, 0
- adds r0, 0x50
- cmp r1, r0
- bge _080C60BC
- ldr r1, _080C60B8 @ =REG_BLDY
- movs r0, 0
- b _080C60C0
- .align 2, 0
-_080C60B0: .4byte REG_VCOUNT
-_080C60B4: .4byte gUnknown_020387EC
-_080C60B8: .4byte REG_BLDY
-_080C60BC:
- ldr r1, _080C60C8 @ =REG_BLDY
- movs r0, 0x10
-_080C60C0:
- strh r0, [r1]
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080C60C8: .4byte REG_BLDY
- thumb_func_end sub_80C6078
-
- thumb_func_start sub_80C60CC
-sub_80C60CC: @ 80C60CC
- push {r4,lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x2E]
- ldrh r1, [r2, 0x20]
- adds r0, r1
- strh r0, [r2, 0x20]
- adds r0, 0x8
- lsls r0, 16
- movs r1, 0x80
- lsls r1, 17
- cmp r0, r1
- bls _080C611C
- adds r0, r2, 0
- bl DestroySprite
- ldr r4, _080C6124 @ =gUnknown_020387EC
- ldr r1, [r4]
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- strh r0, [r1, 0xA]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x8
- bne _080C611C
- ldrh r0, [r1]
- bl FreeSpriteTilesByTag
- ldr r0, [r4]
- ldrh r0, [r0, 0x2]
- bl FreeSpritePaletteByTag
- ldr r0, [r4]
- ldr r0, [r0, 0x10]
- ldr r2, _080C6128 @ =0x0000ffff
- movs r1, 0
- bl BlendPalettes
- ldr r0, _080C612C @ =sub_80C6078
- bl SetHBlankCallback
-_080C611C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080C6124: .4byte gUnknown_020387EC
-_080C6128: .4byte 0x0000ffff
-_080C612C: .4byte sub_80C6078
- thumb_func_end sub_80C60CC
-
- thumb_func_start sub_80C6130
-sub_80C6130: @ 80C6130
- push {r4,r5,lr}
- adds r2, r0, 0
- movs r1, 0x36
- ldrsh r0, [r2, r1]
- cmp r0, 0
- bne _080C61AA
- ldr r1, _080C6184 @ =gUnknown_020387EC
- ldr r0, [r1]
- movs r3, 0xC
- ldrsh r4, [r0, r3]
- adds r5, r1, 0
- cmp r4, 0x1
- bne _080C61AA
- ldrh r0, [r2, 0x2E]
- ldrh r1, [r2, 0x20]
- adds r0, r1
- strh r0, [r2, 0x20]
- adds r0, 0xF
- lsls r0, 16
- movs r1, 0x87
- lsls r1, 17
- cmp r0, r1
- bhi _080C616C
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r1, [r3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
-_080C616C:
- movs r3, 0x30
- ldrsh r0, [r2, r3]
- cmp r0, 0
- ble _080C6188
- movs r0, 0x20
- ldrsh r1, [r2, r0]
- movs r3, 0x32
- ldrsh r0, [r2, r3]
- cmp r1, r0
- blt _080C6196
- b _080C6194
- .align 2, 0
-_080C6184: .4byte gUnknown_020387EC
-_080C6188:
- movs r0, 0x20
- ldrsh r1, [r2, r0]
- movs r3, 0x32
- ldrsh r0, [r2, r3]
- cmp r1, r0
- bgt _080C6196
-_080C6194:
- strh r4, [r2, 0x36]
-_080C6196:
- movs r1, 0x36
- ldrsh r0, [r2, r1]
- cmp r0, 0
- beq _080C61AA
- ldr r0, [r5]
- ldrh r1, [r0, 0xA]
- adds r1, 0x1
- strh r1, [r0, 0xA]
- ldrh r0, [r2, 0x32]
- strh r0, [r2, 0x20]
-_080C61AA:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80C6130
-
- thumb_func_start sub_80C61B0
-sub_80C61B0: @ 80C61B0
- push {r4-r6,lr}
- ldr r2, _080C61F0 @ =INTR_CHECK
- ldrh r1, [r2]
- movs r5, 0x2
- orrs r1, r5
- strh r1, [r2]
- ldr r3, _080C61F4 @ =REG_DISPSTAT
- ldrh r1, [r3]
- movs r2, 0x10
- orrs r1, r2
- strh r1, [r3]
- ldr r4, _080C61F8 @ =0x04000208
- ldrh r2, [r4]
- movs r6, 0
- strh r6, [r4]
- ldr r3, _080C61FC @ =0x04000200
- ldrh r1, [r3]
- orrs r1, r5
- strh r1, [r3]
- strh r2, [r4]
- ldr r2, _080C6200 @ =gMain
- ldrh r1, [r2, 0x1C]
- orrs r1, r5
- ldrh r3, [r2, 0x1C]
- orrs r1, r6
- strh r1, [r2, 0x1C]
- bl SetHBlankCallback
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080C61F0: .4byte INTR_CHECK
-_080C61F4: .4byte REG_DISPSTAT
-_080C61F8: .4byte 0x04000208
-_080C61FC: .4byte 0x04000200
-_080C6200: .4byte gMain
- thumb_func_end sub_80C61B0
-
- thumb_func_start ClearGpuRegBits
-ClearGpuRegBits: @ 80C6204
- push {r4,r5,lr}
- ldr r3, _080C6248 @ =INTR_CHECK
- ldrh r1, [r3]
- ldr r2, _080C624C @ =0x0000fffd
- adds r0, r2, 0
- ands r0, r1
- strh r0, [r3]
- ldr r3, _080C6250 @ =REG_DISPSTAT
- ldrh r1, [r3]
- ldr r0, _080C6254 @ =0x0000ffef
- ands r0, r1
- strh r0, [r3]
- ldr r4, _080C6258 @ =0x04000208
- ldrh r3, [r4]
- movs r0, 0
- strh r0, [r4]
- ldr r5, _080C625C @ =0x04000200
- ldrh r1, [r5]
- adds r0, r2, 0
- ands r0, r1
- strh r0, [r5]
- strh r3, [r4]
- ldr r0, _080C6260 @ =gMain
- ldrh r1, [r0, 0x1C]
- ands r2, r1
- ldrh r1, [r0, 0x1C]
- strh r2, [r0, 0x1C]
- movs r0, 0
- bl SetHBlankCallback
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080C6248: .4byte INTR_CHECK
-_080C624C: .4byte 0x0000fffd
-_080C6250: .4byte REG_DISPSTAT
-_080C6254: .4byte 0x0000ffef
-_080C6258: .4byte 0x04000208
-_080C625C: .4byte 0x04000200
-_080C6260: .4byte gMain
- thumb_func_end ClearGpuRegBits
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokedex_area_screen.s b/asm/pokedex_area_screen.s
deleted file mode 100644
index 779a5a0ed..000000000
--- a/asm/pokedex_area_screen.s
+++ /dev/null
@@ -1,2370 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "include/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start UnusedPokedexAreaScreen
-UnusedPokedexAreaScreen: @ 8110664
- push {lr}
- ldr r3, _08110678 @ =gSharedMem
- str r1, [r3, 0x4]
- str r2, [r3, 0x8]
- strh r0, [r3, 0xE]
- ldr r0, _0811067C @ =CB2_UnusedPokedexAreaScreen
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_08110678: .4byte gSharedMem
-_0811067C: .4byte CB2_UnusedPokedexAreaScreen
- thumb_func_end UnusedPokedexAreaScreen
-
- thumb_func_start CB2_UnusedPokedexAreaScreen
-CB2_UnusedPokedexAreaScreen: @ 8110680
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _0811069C @ =gMain
- ldr r1, _081106A0 @ =0x0000043c
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x7
- bls _08110692
- b _081107C0
-_08110692:
- lsls r0, 2
- ldr r1, _081106A4 @ =_081106A8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811069C: .4byte gMain
-_081106A0: .4byte 0x0000043c
-_081106A4: .4byte _081106A8
- .align 2, 0
-_081106A8:
- .4byte _081106C8
- .4byte _08110720
- .4byte _08110740
- .4byte _08110746
- .4byte _08110752
- .4byte _08110770
- .4byte _08110782
- .4byte _081107A8
-_081106C8:
- movs r0, 0
- bl SetVBlankCallback
- movs r1, 0x80
- lsls r1, 19
- movs r2, 0xC4
- lsls r2, 7
- adds r0, r2, 0
- strh r0, [r1]
- bl ResetPaletteFade
- bl ResetSpriteData
- bl ResetTasks
- bl FreeSpriteTileRanges
- bl FreeAllSpritePalettes
- ldr r0, _08110710 @ =REG_BG0HOFS
- movs r1, 0
- strh r1, [r0]
- ldr r2, _08110714 @ =REG_BG0VOFS
- ldr r3, _08110718 @ =0x0000fff8
- adds r0, r3, 0
- strh r0, [r2]
- ldr r0, _0811071C @ =REG_BG2VOFS
- strh r1, [r0]
- subs r0, 0x2
- strh r1, [r0]
- adds r0, 0x4
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- b _081107C0
- .align 2, 0
-_08110710: .4byte REG_BG0HOFS
-_08110714: .4byte REG_BG0VOFS
-_08110718: .4byte 0x0000fff8
-_0811071C: .4byte REG_BG2VOFS
-_08110720:
- ldr r4, _0811073C @ =gSharedMem + 0x6E8
- adds r0, r4, 0
- movs r1, 0
- bl InitRegionMap
- movs r0, 0x88
- lsls r0, 4
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x10
- bl StringFill
- b _081107C0
- .align 2, 0
-_0811073C: .4byte gSharedMem + 0x6E8
-_08110740:
- bl sub_8110824
- b _081107C0
-_08110746:
- bl DrawAreaGlow
- lsls r0, 24
- cmp r0, 0
- bne _081107CC
- b _081107C0
-_08110752:
- movs r0, 0x1
- movs r1, 0x1
- bl CreateRegionMapPlayerIcon
- movs r1, 0x8
- negs r1, r1
- movs r0, 0
- bl sub_80FB2A4
- ldr r0, _0811076C @ =sub_81107DC
- bl SetVBlankCallback
- b _081107C0
- .align 2, 0
-_0811076C: .4byte sub_81107DC
-_08110770:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- b _081107C0
-_08110782:
- ldr r1, _0811079C @ =REG_BLDCNT
- ldr r2, _081107A0 @ =0x00003f41
- adds r0, r2, 0
- strh r0, [r1]
- bl sub_8111084
- movs r1, 0x80
- lsls r1, 19
- ldr r3, _081107A4 @ =0x00007741
- adds r0, r3, 0
- strh r0, [r1]
- b _081107C0
- .align 2, 0
-_0811079C: .4byte REG_BLDCNT
-_081107A0: .4byte 0x00003f41
-_081107A4: .4byte 0x00007741
-_081107A8:
- ldr r0, _081107B8 @ =sub_8111288
- bl sub_8110814
- ldr r0, _081107BC @ =sub_81107F0
- bl SetMainCallback2
- b _081107CC
- .align 2, 0
-_081107B8: .4byte sub_8111288
-_081107BC: .4byte sub_81107F0
-_081107C0:
- ldr r1, _081107D4 @ =gMain
- ldr r0, _081107D8 @ =0x0000043c
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_081107CC:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081107D4: .4byte gMain
-_081107D8: .4byte 0x0000043c
- thumb_func_end CB2_UnusedPokedexAreaScreen
-
- thumb_func_start sub_81107DC
-sub_81107DC: @ 81107DC
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_81107DC
-
- thumb_func_start sub_81107F0
-sub_81107F0: @ 81107F0
- push {lr}
- ldr r0, _08110810 @ =gSharedMem
- ldr r0, [r0]
- bl _call_via_r0
- bl sub_8111110
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- .align 2, 0
-_08110810: .4byte gSharedMem
- thumb_func_end sub_81107F0
-
- thumb_func_start sub_8110814
-sub_8110814: @ 8110814
- ldr r1, _08110820 @ =gSharedMem
- str r0, [r1]
- movs r0, 0
- strh r0, [r1, 0xC]
- bx lr
- .align 2, 0
-_08110820: .4byte gSharedMem
- thumb_func_end sub_8110814
-
- thumb_func_start sub_8110824
-sub_8110824: @ 8110824
- ldr r0, _08110834 @ =gSharedMem
- movs r1, 0x8A
- lsls r1, 1
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- bx lr
- .align 2, 0
-_08110834: .4byte gSharedMem
- thumb_func_end sub_8110824
-
- thumb_func_start DrawAreaGlow
-DrawAreaGlow: @ 8110838
- push {lr}
- ldr r1, _08110854 @ =gSharedMem
- movs r2, 0x8A
- lsls r2, 1
- adds r0, r1, r2
- ldrh r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x5
- bhi _081108E4
- lsls r0, 2
- ldr r1, _08110858 @ =_0811085C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08110854: .4byte gSharedMem
-_08110858: .4byte _0811085C
- .align 2, 0
-_0811085C:
- .4byte _08110874
- .4byte _08110884
- .4byte _0811088A
- .4byte _0811089C
- .4byte _081108C0
- .4byte _081108D0
-_08110874:
- ldr r0, _08110880 @ =gSharedMem
- ldrh r0, [r0, 0xE]
- bl FindMapsWithMon
- b _081108F0
- .align 2, 0
-_08110880: .4byte gSharedMem
-_08110884:
- bl BuildAreaGlowTilemap
- b _081108F0
-_0811088A:
- ldr r0, _08110894 @ =gUnknown_083F8438
- ldr r1, _08110898 @ =0x0600c000
- bl LZ77UnCompVram
- b _081108F0
- .align 2, 0
-_08110894: .4byte gUnknown_083F8438
-_08110898: .4byte 0x0600c000
-_0811089C:
- ldr r1, _081108B0 @ =0x040000d4
- ldr r0, _081108B4 @ =gSharedMem + 0x116
- str r0, [r1]
- ldr r0, _081108B8 @ =0x0600f000
- str r0, [r1, 0x4]
- ldr r0, _081108BC @ =0x80000280
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- b _081108F0
- .align 2, 0
-_081108B0: .4byte 0x040000d4
-_081108B4: .4byte gSharedMem + 0x116
-_081108B8: .4byte 0x0600f000
-_081108BC: .4byte 0x80000280
-_081108C0:
- ldr r0, _081108CC @ =gUnknown_083F8418
- movs r1, 0
- movs r2, 0x20
- bl LoadPalette
- b _081108F0
- .align 2, 0
-_081108CC: .4byte gUnknown_083F8418
-_081108D0:
- ldr r1, _081108E8 @ =REG_BG0CNT
- ldr r3, _081108EC @ =0x00001e0d
- adds r0, r3, 0
- strh r0, [r1]
- movs r0, 0x8A
- lsls r0, 1
- adds r1, r2, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_081108E4:
- movs r0, 0
- b _08110900
- .align 2, 0
-_081108E8: .4byte REG_BG0CNT
-_081108EC: .4byte 0x00001e0d
-_081108F0:
- ldr r1, _08110904 @ =gSharedMem
- movs r2, 0x8A
- lsls r2, 1
- adds r1, r2
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0x1
-_08110900:
- pop {r1}
- bx r1
- .align 2, 0
-_08110904: .4byte gSharedMem
- thumb_func_end DrawAreaGlow
-
- thumb_func_start FindMapsWithMon
-FindMapsWithMon: @ 8110908
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 16
- lsrs r7, r0, 16
- .ifdef SAPPHIRE
- ldr r0, _sub_8110908_Latias @ =407
- .else
- @ Latios
- movs r0, 0xCC
- lsls r0, 1
- .endif
- cmp r7, r0
- bne _0811091E
- b _08110A44
-_0811091E:
- ldr r2, _08110988 @ =gSharedMem
- movs r1, 0x88
- lsls r1, 1
- adds r0, r2, r1
- movs r1, 0
- strh r1, [r0]
- movs r3, 0x89
- lsls r3, 1
- adds r0, r2, r3
- strh r1, [r0]
- movs r6, 0
- ldr r1, _0811098C @ =gUnknown_083F856C
-_08110936:
- lsls r0, r6, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r7
- bne _08110942
- b _08110A8C
-_08110942:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0
- beq _08110936
- movs r6, 0
- ldr r4, _08110990 @ =gUnknown_083F856E
- ldrh r0, [r4]
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _081109D0
- mov r8, r4
- adds r5, r4, 0x4
- mov r9, r1
-_08110960:
- lsls r0, r6, 1
- adds r1, r0, r6
- lsls r2, r1, 1
- mov r3, r8
- adds r1, r2, r3
- adds r3, r0, 0
- ldrh r1, [r1]
- cmp r7, r1
- bne _081109BA
- adds r0, r4, 0x2
- adds r0, r2, r0
- ldrh r0, [r0]
- cmp r0, 0x18
- beq _081109A6
- cmp r0, 0x18
- bgt _08110994
- cmp r0, 0
- beq _0811099A
- b _081109BA
- .align 2, 0
- .ifdef SAPPHIRE
-_sub_8110908_Latias: .4byte 407
- .endif
-_08110988: .4byte gSharedMem
-_0811098C: .4byte gUnknown_083F856C
-_08110990: .4byte gUnknown_083F856E
-_08110994:
- cmp r0, 0x1A
- beq _081109A6
- b _081109BA
-_0811099A:
- adds r0, r2, r5
- ldrh r1, [r0]
- movs r0, 0
- bl SetAreaHasMon
- b _081109BA
-_081109A6:
- adds r1, r3, r6
- lsls r1, 1
- mov r0, r8
- adds r0, 0x2
- adds r0, r1, r0
- ldrh r0, [r0]
- adds r1, r5
- ldrh r1, [r1]
- bl SetSpecialMapHasMon
-_081109BA:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r4, _08110A00 @ =gUnknown_083F856E
- lsls r0, r6, 1
- adds r0, r6
- lsls r0, 1
- adds r0, r4
- ldrh r0, [r0]
- cmp r0, r9
- bne _08110960
-_081109D0:
- movs r6, 0
- ldr r1, _08110A04 @ =gWildMonHeaders
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _08110A8C
-_081109DA:
- lsls r4, r6, 2
- adds r0, r4, r6
- lsls r0, 2
- adds r5, r0, r1
- adds r0, r5, 0
- adds r1, r7, 0
- bl MapHasMon
- lsls r0, 24
- cmp r0, 0
- beq _08110A28
- ldrb r0, [r5]
- cmp r0, 0x18
- beq _08110A18
- cmp r0, 0x18
- bgt _08110A08
- cmp r0, 0
- beq _08110A0E
- b _08110A28
- .align 2, 0
-_08110A00: .4byte gUnknown_083F856E
-_08110A04: .4byte gWildMonHeaders
-_08110A08:
- cmp r0, 0x1A
- beq _08110A18
- b _08110A28
-_08110A0E:
- ldrb r1, [r5, 0x1]
- movs r0, 0
- bl SetAreaHasMon
- b _08110A28
-_08110A18:
- ldr r0, _08110A40 @ =gWildMonHeaders
- adds r1, r4, r6
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1]
- ldrb r1, [r1, 0x1]
- bl SetSpecialMapHasMon
-_08110A28:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r1, _08110A40 @ =gWildMonHeaders
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _081109DA
- b _08110A8C
- .align 2, 0
-_08110A40: .4byte gWildMonHeaders
-_08110A44:
- ldr r4, _08110A7C @ =gSharedMem
- movs r0, 0x89
- lsls r0, 1
- adds r1, r4, r0
- movs r0, 0
- strh r0, [r1]
- ldr r0, _08110A80 @ =gSaveBlock1 + 0x3144
- ldrb r2, [r0, 0x13]
- cmp r2, 0
- beq _08110A84
- adds r0, r4, 0
- adds r0, 0x10
- adds r1, r4, 0
- adds r1, 0x11
- bl GetRoamerLocation
- ldrb r0, [r4, 0x10]
- ldrb r1, [r4, 0x11]
- bl Overworld_GetMapHeaderByGroupAndId
- ldrb r0, [r0, 0x14]
- strh r0, [r4, 0x12]
- movs r3, 0x88
- lsls r3, 1
- adds r1, r4, r3
- movs r0, 0x1
- strh r0, [r1]
- b _08110A8C
- .align 2, 0
-_08110A7C: .4byte gSharedMem
-_08110A80: .4byte gSaveBlock1 + 0x3144
-_08110A84:
- movs r1, 0x88
- lsls r1, 1
- adds r0, r4, r1
- strh r2, [r0]
-_08110A8C:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end FindMapsWithMon
-
- thumb_func_start SetAreaHasMon
-SetAreaHasMon: @ 8110A98
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r2, r0, 16
- lsls r1, 16
- lsrs r1, 16
- ldr r5, _08110AE0 @ =gSharedMem
- movs r0, 0x88
- lsls r0, 1
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0x3F
- bhi _08110AD8
- lsls r0, 2
- adds r0, r5
- strb r2, [r0, 0x10]
- ldrh r0, [r4]
- lsls r0, 2
- adds r0, r5
- strb r1, [r0, 0x11]
- adds r0, r2, 0
- bl Overworld_GetMapHeaderByGroupAndId
- ldrb r0, [r0, 0x14]
- bl sub_80FBA04
- ldrh r1, [r4]
- lsls r1, 2
- adds r1, r5
- strh r0, [r1, 0x12]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_08110AD8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08110AE0: .4byte gSharedMem
- thumb_func_end SetAreaHasMon
-
- thumb_func_start SetSpecialMapHasMon
-SetSpecialMapHasMon: @ 8110AE4
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r2, r0, 16
- lsls r1, 16
- lsrs r1, 16
- ldr r0, _08110B9C @ =gSharedMem
- movs r3, 0x89
- lsls r3, 1
- adds r0, r3
- ldrh r0, [r0]
- cmp r0, 0x1F
- bhi _08110B96
- adds r0, r2, 0
- bl Overworld_GetMapHeaderByGroupAndId
- adds r6, r0, 0
- ldrb r0, [r6, 0x14]
- cmp r0, 0x57
- bhi _08110B96
- movs r4, 0
- ldr r1, _08110BA0 @ =gUnknown_083F857A
- ldrh r0, [r1]
- cmp r0, 0x58
- beq _08110B42
- adds r5, r1, 0
-_08110B16:
- lsls r2, r4, 2
- adds r1, r2, r5
- ldrb r0, [r6, 0x14]
- ldrh r1, [r1]
- cmp r0, r1
- bne _08110B32
- adds r0, r5, 0x2
- adds r0, r2, r0
- ldrh r0, [r0]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _08110B96
-_08110B32:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r0, r4, 2
- adds r0, r5
- ldrh r0, [r0]
- cmp r0, 0x58
- bne _08110B16
-_08110B42:
- movs r4, 0
- ldr r0, _08110B9C @ =gSharedMem
- movs r1, 0x89
- lsls r1, 1
- adds r2, r0, r1
- ldrh r3, [r2]
- adds r1, r0, 0
- cmp r4, r3
- bcs _08110B76
- movs r0, 0xC4
- lsls r0, 3
- adds r5, r1, r0
- ldrh r0, [r5]
- ldrb r2, [r6, 0x14]
- cmp r0, r2
- beq _08110B76
-_08110B62:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r3
- bcs _08110B76
- lsls r0, r4, 1
- adds r0, r5
- ldrh r0, [r0]
- cmp r0, r2
- bne _08110B62
-_08110B76:
- movs r3, 0x89
- lsls r3, 1
- adds r2, r1, r3
- ldrh r0, [r2]
- cmp r4, r0
- bne _08110B96
- lsls r0, r4, 1
- movs r3, 0xC4
- lsls r3, 3
- adds r1, r3
- adds r0, r1
- ldrb r1, [r6, 0x14]
- strh r1, [r0]
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
-_08110B96:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08110B9C: .4byte gSharedMem
-_08110BA0: .4byte gUnknown_083F857A
- thumb_func_end SetSpecialMapHasMon
-
- thumb_func_start MapHasMon
-MapHasMon: @ 8110BA4
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- adds r6, r4, 0
- ldr r0, [r5, 0x4]
- adds r1, r4, 0
- movs r2, 0xC
- bl MonListHasMon
- lsls r0, 24
- cmp r0, 0
- bne _08110BF2
- ldr r0, [r5, 0x8]
- adds r1, r4, 0
- movs r2, 0x5
- bl MonListHasMon
- lsls r0, 24
- cmp r0, 0
- bne _08110BF2
- ldr r0, [r5, 0x10]
- adds r1, r4, 0
- movs r2, 0xC
- bl MonListHasMon
- lsls r0, 24
- cmp r0, 0
- bne _08110BF2
- ldr r0, [r5, 0xC]
- adds r1, r6, 0
- movs r2, 0x5
- bl MonListHasMon
- lsls r0, 24
- cmp r0, 0
- bne _08110BF2
- movs r0, 0
- b _08110BF4
-_08110BF2:
- movs r0, 0x1
-_08110BF4:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end MapHasMon
-
- thumb_func_start MonListHasMon
-MonListHasMon: @ 8110BFC
- push {r4,lr}
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 16
- lsrs r2, 16
- cmp r0, 0
- beq _08110C2A
- movs r3, 0
- cmp r3, r2
- bcs _08110C2A
- ldr r1, [r0, 0x4]
-_08110C12:
- lsls r0, r3, 2
- adds r0, r1
- ldrh r0, [r0, 0x2]
- cmp r0, r4
- bne _08110C20
- movs r0, 0x1
- b _08110C2C
-_08110C20:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, r2
- bcc _08110C12
-_08110C2A:
- movs r0, 0
-_08110C2C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end MonListHasMon
-
- thumb_func_start BuildAreaGlowTilemap
-BuildAreaGlowTilemap: @ 8110C34
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- ldr r1, _08110E5C @ =gUnknown_02039260
- movs r0, 0
- strh r0, [r1]
- mov r9, r1
- ldr r0, _08110E60 @ =gSharedMem
- mov r8, r0
- ldr r1, _08110E64 @ =gUnknown_02039262
- mov r12, r1
- mov r1, r9
- movs r4, 0x8B
- lsls r4, 1
- add r4, r8
- ldr r3, _08110E68 @ =0x0000027f
- movs r2, 0
-_08110C5C:
- ldrh r0, [r1]
- lsls r0, 1
- adds r0, r4
- strh r2, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r3
- bls _08110C5C
- movs r0, 0
- mov r3, r9
- strh r0, [r3]
- movs r1, 0x88
- lsls r1, 1
- add r1, r8
- ldrh r0, [r1]
- cmp r0, 0
- beq _08110D04
- ldr r4, _08110E6C @ =gUnknown_02039266
- movs r2, 0
- ldr r5, _08110E64 @ =gUnknown_02039262
- mov r0, r8
- str r0, [sp, 0x8]
- movs r1, 0x8B
- lsls r1, 1
- add r1, r8
- mov r10, r1
- ldr r6, _08110E70 @ =gUnknown_02039264
- mov r7, r9
-_08110C9A:
- strh r2, [r4]
- ldr r3, _08110E70 @ =gUnknown_02039264
- strh r2, [r3]
-_08110CA0:
- mov r0, r12
- strh r2, [r0]
-_08110CA4:
- ldrh r0, [r5]
- ldrh r1, [r6]
- str r2, [sp]
- bl GetRegionMapSectionAt_
- ldrh r1, [r7]
- lsls r1, 2
- ldr r3, [sp, 0x8]
- adds r1, r3
- lsls r0, 16
- lsrs r0, 16
- ldr r2, [sp]
- ldrh r1, [r1, 0x12]
- cmp r0, r1
- bne _08110CCC
- ldrh r0, [r4]
- lsls r0, 1
- add r0, r10
- ldr r1, _08110E74 @ =0x0000ffff
- strh r1, [r0]
-_08110CCC:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1F
- bls _08110CA4
- ldrh r0, [r6]
- adds r0, 0x1
- strh r0, [r6]
- lsls r0, 16
- lsrs r0, 16
- ldr r1, _08110E64 @ =gUnknown_02039262
- mov r12, r1
- cmp r0, 0x13
- bls _08110CA0
- ldrh r0, [r7]
- adds r0, 0x1
- strh r0, [r7]
- lsls r0, 16
- lsrs r0, 16
- ldr r3, _08110E78 @ =gSharedMem + 0x110
- ldrh r3, [r3]
- cmp r0, r3
- bcc _08110C9A
-_08110D04:
- movs r0, 0
- ldr r1, _08110E6C @ =gUnknown_02039266
- strh r0, [r1]
- ldr r3, _08110E70 @ =gUnknown_02039264
- strh r0, [r3]
- ldr r6, _08110E64 @ =gUnknown_02039262
- mov r10, r0
- adds r3, r1, 0
- ldr r5, _08110E7C @ =gSharedMem + 0x116
- ldr r4, _08110E74 @ =0x0000ffff
- ldr r7, _08110E70 @ =gUnknown_02039264
-_08110D1A:
- mov r0, r10
- strh r0, [r6]
-_08110D1E:
- ldrh r1, [r3]
- lsls r0, r1, 1
- adds r0, r5
- ldrh r0, [r0]
- cmp r0, r4
- bne _08110E10
- ldrh r0, [r6]
- cmp r0, 0
- beq _08110D42
- subs r0, r1, 0x1
- lsls r0, 1
- adds r2, r0, r5
- ldrh r1, [r2]
- cmp r1, r4
- beq _08110D42
- movs r0, 0x2
- orrs r0, r1
- strh r0, [r2]
-_08110D42:
- ldrh r0, [r6]
- cmp r0, 0x1F
- beq _08110D5C
- ldrh r0, [r3]
- adds r0, 0x1
- lsls r0, 1
- adds r2, r0, r5
- ldrh r1, [r2]
- cmp r1, r4
- beq _08110D5C
- movs r0, 0x1
- orrs r0, r1
- strh r0, [r2]
-_08110D5C:
- ldrh r0, [r7]
- cmp r0, 0
- beq _08110D76
- ldrh r0, [r3]
- subs r0, 0x20
- lsls r0, 1
- adds r2, r0, r5
- ldrh r1, [r2]
- cmp r1, r4
- beq _08110D76
- movs r0, 0x8
- orrs r0, r1
- strh r0, [r2]
-_08110D76:
- ldrh r0, [r7]
- cmp r0, 0x13
- beq _08110D90
- ldrh r0, [r3]
- adds r0, 0x20
- lsls r0, 1
- adds r2, r0, r5
- ldrh r1, [r2]
- cmp r1, r4
- beq _08110D90
- movs r0, 0x4
- orrs r0, r1
- strh r0, [r2]
-_08110D90:
- ldrh r0, [r6]
- cmp r0, 0
- beq _08110DB0
- ldrh r0, [r7]
- cmp r0, 0
- beq _08110DB0
- ldrh r0, [r3]
- subs r0, 0x21
- lsls r0, 1
- adds r2, r0, r5
- ldrh r1, [r2]
- cmp r1, r4
- beq _08110DB0
- movs r0, 0x10
- orrs r0, r1
- strh r0, [r2]
-_08110DB0:
- ldrh r0, [r6]
- cmp r0, 0x1F
- beq _08110DD0
- ldrh r0, [r7]
- cmp r0, 0
- beq _08110DD0
- ldrh r0, [r3]
- subs r0, 0x1F
- lsls r0, 1
- adds r2, r0, r5
- ldrh r1, [r2]
- cmp r1, r4
- beq _08110DD0
- movs r0, 0x40
- orrs r0, r1
- strh r0, [r2]
-_08110DD0:
- ldrh r0, [r6]
- cmp r0, 0
- beq _08110DF0
- ldrh r0, [r7]
- cmp r0, 0x13
- beq _08110DF0
- ldrh r0, [r3]
- adds r0, 0x1F
- lsls r0, 1
- adds r2, r0, r5
- ldrh r1, [r2]
- cmp r1, r4
- beq _08110DF0
- movs r0, 0x20
- orrs r0, r1
- strh r0, [r2]
-_08110DF0:
- ldrh r0, [r6]
- cmp r0, 0x1F
- beq _08110E10
- ldrh r0, [r7]
- cmp r0, 0x13
- beq _08110E10
- ldrh r0, [r3]
- adds r0, 0x21
- lsls r0, 1
- adds r2, r0, r5
- ldrh r1, [r2]
- cmp r1, r4
- beq _08110E10
- movs r0, 0x80
- orrs r0, r1
- strh r0, [r2]
-_08110E10:
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
- ldrh r0, [r6]
- adds r0, 0x1
- strh r0, [r6]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1F
- bhi _08110E26
- b _08110D1E
-_08110E26:
- ldrh r0, [r7]
- adds r0, 0x1
- strh r0, [r7]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x13
- bhi _08110E36
- b _08110D1A
-_08110E36:
- movs r0, 0
- mov r1, r9
- strh r0, [r1]
-_08110E3C:
- mov r3, r9
- ldrh r0, [r3]
- lsls r0, 1
- movs r4, 0x8B
- lsls r4, 1
- add r4, r8
- adds r3, r0, r4
- ldrh r2, [r3]
- adds r1, r2, 0
- ldr r0, _08110E74 @ =0x0000ffff
- cmp r1, r0
- bne _08110E80
- movs r0, 0x10
- strh r0, [r3]
- b _0811105E
- .align 2, 0
-_08110E5C: .4byte gUnknown_02039260
-_08110E60: .4byte gSharedMem
-_08110E64: .4byte gUnknown_02039262
-_08110E68: .4byte 0x0000027f
-_08110E6C: .4byte gUnknown_02039266
-_08110E70: .4byte gUnknown_02039264
-_08110E74: .4byte 0x0000ffff
-_08110E78: .4byte gSharedMem + 0x110
-_08110E7C: .4byte gSharedMem + 0x116
-_08110E80:
- cmp r1, 0
- bne _08110E86
- b _0811105E
-_08110E86:
- movs r0, 0x2
- ands r0, r2
- cmp r0, 0
- beq _08110E94
- ldr r0, _08110F28 @ =0x0000ffcf
- ands r0, r2
- strh r0, [r3]
-_08110E94:
- mov r1, r9
- ldrh r0, [r1]
- lsls r0, 1
- adds r2, r0, r4
- ldrh r1, [r2]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08110EAC
- ldr r0, _08110F2C @ =0x0000ff3f
- ands r0, r1
- strh r0, [r2]
-_08110EAC:
- mov r3, r9
- ldrh r0, [r3]
- lsls r0, 1
- adds r2, r0, r4
- ldrh r1, [r2]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08110EC4
- ldr r0, _08110F30 @ =0x0000ffaf
- ands r0, r1
- strh r0, [r2]
-_08110EC4:
- mov r1, r9
- ldrh r0, [r1]
- lsls r0, 1
- adds r2, r0, r4
- ldrh r1, [r2]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08110EDC
- ldr r0, _08110F34 @ =0x0000ff5f
- ands r0, r1
- strh r0, [r2]
-_08110EDC:
- ldr r6, _08110F38 @ =gUnknown_02039268
- mov r3, r9
- ldrh r0, [r3]
- lsls r0, 1
- adds r0, r4
- ldrh r1, [r0]
- movs r5, 0xF
- adds r0, r5, 0
- ands r0, r1
- strh r0, [r6]
- ldr r2, _08110F3C @ =gUnknown_0203926A
- ldrh r0, [r3]
- lsls r0, 1
- adds r0, r4
- ldrh r1, [r0]
- movs r0, 0xF0
- ands r0, r1
- strh r0, [r2]
- ldrh r1, [r3]
- adds r3, r2, 0
- cmp r0, 0
- bne _08110F0A
- b _0811105E
-_08110F0A:
- lsls r0, r1, 1
- adds r0, r4
- ldrh r2, [r0]
- adds r1, r5, 0
- ands r1, r2
- strh r1, [r0]
- ldrh r0, [r6]
- cmp r0, 0xA
- bls _08110F1E
- b _0811105E
-_08110F1E:
- lsls r0, 2
- ldr r1, _08110F40 @ =_08110F44
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08110F28: .4byte 0x0000ffcf
-_08110F2C: .4byte 0x0000ff3f
-_08110F30: .4byte 0x0000ffaf
-_08110F34: .4byte 0x0000ff5f
-_08110F38: .4byte gUnknown_02039268
-_08110F3C: .4byte gUnknown_0203926A
-_08110F40: .4byte _08110F44
- .align 2, 0
-_08110F44:
- .4byte _08110F70
- .4byte _08110FAC
- .4byte _08110F8E
- .4byte _0811105E
- .4byte _08111002
- .4byte _08111036
- .4byte _08111036
- .4byte _0811105E
- .4byte _08110FCE
- .4byte _0811104A
- .4byte _0811104A
-_08110F70:
- ldrh r0, [r3]
- lsls r1, r0, 16
- cmp r1, 0
- beq _0811105E
- mov r0, r9
- ldrh r2, [r0]
- lsls r2, 1
- movs r0, 0x8B
- lsls r0, 1
- add r0, r8
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x10
- lsrs r1, 20
- b _08110FC8
-_08110F8E:
- ldrh r0, [r3]
- lsls r1, r0, 16
- cmp r1, 0
- beq _0811105E
- mov r3, r9
- ldrh r2, [r3]
- lsls r2, 1
- movs r0, 0x8B
- lsls r0, 1
- add r0, r8
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x1E
- lsrs r1, 20
- b _08110FC8
-_08110FAC:
- ldrh r0, [r3]
- lsls r1, r0, 16
- cmp r1, 0
- beq _0811105E
- mov r0, r9
- ldrh r2, [r0]
- lsls r2, 1
- movs r0, 0x8B
- lsls r0, 1
- add r0, r8
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x20
- lsrs r1, 22
-_08110FC8:
- adds r0, r1
- strh r0, [r2]
- b _0811105E
-_08110FCE:
- ldrh r2, [r3]
- cmp r2, 0
- beq _0811105E
- movs r0, 0x80
- ands r0, r2
- lsls r0, 16
- lsrs r0, 16
- negs r0, r0
- lsrs r3, r0, 31
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- beq _08110FEC
- movs r0, 0x2
- orrs r3, r0
-_08110FEC:
- mov r0, r9
- ldrh r1, [r0]
- lsls r1, 1
- movs r0, 0x8B
- lsls r0, 1
- add r0, r8
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x20
- adds r0, r3
- b _0811105C
-_08111002:
- ldrh r2, [r3]
- cmp r2, 0
- beq _0811105E
- movs r0, 0x40
- ands r0, r2
- lsls r0, 16
- lsrs r0, 16
- negs r0, r0
- lsrs r3, r0, 31
- movs r0, 0x10
- ands r0, r2
- cmp r0, 0
- beq _08111020
- movs r0, 0x2
- orrs r3, r0
-_08111020:
- mov r0, r9
- ldrh r1, [r0]
- lsls r1, 1
- movs r0, 0x8B
- lsls r0, 1
- add r0, r8
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x21
- adds r0, r3
- b _0811105C
-_08111036:
- mov r3, r9
- ldrh r1, [r3]
- lsls r1, 1
- movs r0, 0x8B
- lsls r0, 1
- add r0, r8
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x27
- b _0811105C
-_0811104A:
- mov r0, r9
- ldrh r1, [r0]
- lsls r1, 1
- movs r0, 0x8B
- lsls r0, 1
- add r0, r8
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x25
-_0811105C:
- strh r0, [r1]
-_0811105E:
- mov r3, r9
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
- lsls r0, 16
- ldr r1, _08111080 @ =0x027f0000
- cmp r0, r1
- bhi _08111070
- b _08110E3C
-_08111070:
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08111080: .4byte 0x027f0000
- thumb_func_end BuildAreaGlowTilemap
-
- thumb_func_start sub_8111084
-sub_8111084: @ 8111084
- push {lr}
- ldr r0, _081110AC @ =gSharedMem
- movs r2, 0x89
- lsls r2, 1
- adds r1, r0, r2
- ldrh r1, [r1]
- adds r2, r0, 0
- cmp r1, 0
- beq _081110B4
- movs r3, 0x88
- lsls r3, 1
- adds r0, r2, r3
- ldrh r0, [r0]
- cmp r0, 0
- bne _081110B4
- ldr r0, _081110B0 @ =0x0000061e
- adds r1, r2, r0
- movs r0, 0x1
- b _081110BA
- .align 2, 0
-_081110AC: .4byte gSharedMem
-_081110B0: .4byte 0x0000061e
-_081110B4:
- ldr r3, _081110FC @ =0x0000061e
- adds r1, r2, r3
- movs r0, 0
-_081110BA:
- strb r0, [r1]
- ldr r1, _08111100 @ =0x00000616
- adds r0, r2, r1
- movs r1, 0
- strh r1, [r0]
- movs r3, 0xC3
- lsls r3, 3
- adds r0, r2, r3
- strh r1, [r0]
- adds r3, 0x2
- adds r0, r2, r3
- strh r1, [r0]
- ldr r0, _08111104 @ =0x0000061c
- adds r1, r2, r0
- movs r0, 0x40
- strh r0, [r1]
- adds r3, 0x5
- adds r1, r2, r3
- movs r0, 0x1
- strb r0, [r1]
- ldr r1, _08111108 @ =REG_BLDCNT
- ldr r2, _0811110C @ =0x00003f41
- adds r0, r2, 0
- strh r0, [r1]
- adds r1, 0x2
- movs r3, 0x80
- lsls r3, 5
- adds r0, r3, 0
- strh r0, [r1]
- bl sub_8111110
- pop {r0}
- bx r0
- .align 2, 0
-_081110FC: .4byte 0x0000061e
-_08111100: .4byte 0x00000616
-_08111104: .4byte 0x0000061c
-_08111108: .4byte REG_BLDCNT
-_0811110C: .4byte 0x00003f41
- thumb_func_end sub_8111084
-
- thumb_func_start sub_8111110
-sub_8111110: @ 8111110
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, _0811114C @ =gSharedMem
- ldr r2, _08111150 @ =0x0000061e
- adds r1, r0, r2
- ldrb r1, [r1]
- adds r5, r0, 0
- cmp r1, 0
- bne _081111DE
- ldr r3, _08111154 @ =0x00000616
- adds r1, r5, r3
- ldrh r0, [r1]
- cmp r0, 0
- bne _081111D8
- movs r1, 0xC3
- lsls r1, 3
- adds r0, r5, r1
- ldrh r1, [r0]
- adds r1, 0x1
- strh r1, [r0]
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- beq _08111158
- subs r2, 0x4
- adds r0, r5, r2
- b _0811115C
- .align 2, 0
-_0811114C: .4byte gSharedMem
-_08111150: .4byte 0x0000061e
-_08111154: .4byte 0x00000616
-_08111158:
- ldr r3, _081111C0 @ =0x0000061c
- adds r0, r5, r3
-_0811115C:
- ldrh r1, [r0]
- adds r1, 0x4
- movs r2, 0x7F
- ands r1, r2
- strh r1, [r0]
- ldr r2, _081111C4 @ =gSineTable
- ldr r1, _081111C8 @ =0x0000061a
- adds r0, r5, r1
- ldrh r0, [r0]
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- lsls r1, 16
- asrs r1, 20
- lsls r1, 16
- lsrs r1, 16
- ldr r3, _081111C0 @ =0x0000061c
- adds r0, r5, r3
- ldrh r0, [r0]
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- lsls r0, 16
- asrs r0, 20
- lsls r0, 16
- ldr r2, _081111CC @ =REG_BLDALPHA
- lsrs r0, 8
- orrs r1, r0
- strh r1, [r2]
- ldr r1, _081111D0 @ =0x00000616
- adds r0, r5, r1
- movs r2, 0
- strh r2, [r0]
- subs r3, 0x4
- adds r1, r5, r3
- ldrh r0, [r1]
- cmp r0, 0x40
- bne _0811126E
- strh r2, [r1]
- movs r1, 0x89
- lsls r1, 1
- adds r0, r5, r1
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811126E
- ldr r2, _081111D4 @ =0x0000061e
- adds r1, r5, r2
- movs r0, 0x1
- b _0811126C
- .align 2, 0
-_081111C0: .4byte 0x0000061c
-_081111C4: .4byte gSineTable
-_081111C8: .4byte 0x0000061a
-_081111CC: .4byte REG_BLDALPHA
-_081111D0: .4byte 0x00000616
-_081111D4: .4byte 0x0000061e
-_081111D8:
- subs r0, 0x1
- strh r0, [r1]
- b _0811126E
-_081111DE:
- ldr r3, _0811127C @ =0x00000616
- adds r1, r5, r3
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xC
- bls _0811126E
- movs r0, 0
- strh r0, [r1]
- ldr r0, _08111280 @ =0x0000061f
- adds r1, r5, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- movs r4, 0
- movs r2, 0x89
- lsls r2, 1
- adds r0, r5, r2
- ldrh r3, [r0]
- cmp r4, r3
- bcs _0811124C
- movs r2, 0xCC
- lsls r2, 3
- adds r2, r5
- mov r9, r2
- mov r8, r1
- movs r3, 0x1
- mov r12, r3
- adds r6, r0, 0
- movs r7, 0x5
- negs r7, r7
-_08111220:
- lsls r0, r4, 2
- add r0, r9
- ldr r3, [r0]
- mov r1, r8
- ldrb r0, [r1]
- movs r1, 0x1
- adds r3, 0x3E
- ands r1, r0
- mov r2, r12
- ands r1, r2
- lsls r1, 2
- ldrb r2, [r3]
- adds r0, r7, 0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldrh r3, [r6]
- cmp r4, r3
- bcc _08111220
-_0811124C:
- ldr r0, _08111280 @ =0x0000061f
- adds r1, r5, r0
- ldrb r0, [r1]
- cmp r0, 0x4
- bls _0811126E
- movs r0, 0x1
- strb r0, [r1]
- movs r1, 0x88
- lsls r1, 1
- adds r0, r5, r1
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811126E
- ldr r2, _08111284 @ =0x0000061e
- adds r1, r5, r2
- movs r0, 0
-_0811126C:
- strb r0, [r1]
-_0811126E:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811127C: .4byte 0x00000616
-_08111280: .4byte 0x0000061f
-_08111284: .4byte 0x0000061e
- thumb_func_end sub_8111110
-
- thumb_func_start sub_8111288
-sub_8111288: @ 8111288
- push {lr}
- ldr r1, _08111298 @ =gSharedMem
- ldrh r0, [r1, 0xC]
- cmp r0, 0
- beq _0811129C
- cmp r0, 0x1
- beq _081112A2
- b _081112B2
- .align 2, 0
-_08111298: .4byte gSharedMem
-_0811129C:
- movs r0, 0x1
- strh r0, [r1, 0xC]
- b _081112B2
-_081112A2:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _081112B2
- ldr r0, _081112B8 @ =sub_81112BC
- bl sub_8110814
-_081112B2:
- pop {r0}
- bx r0
- .align 2, 0
-_081112B8: .4byte sub_81112BC
- thumb_func_end sub_8111288
-
- thumb_func_start sub_81112BC
-sub_81112BC: @ 81112BC
- push {lr}
- ldr r0, _081112DC @ =gSharedMem
- ldrh r0, [r0, 0xC]
- cmp r0, 0
- bne _08111308
- ldr r0, _081112E0 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081112E8
- ldr r0, _081112E4 @ =sub_8111314
- bl sub_8110814
- b _08111308
- .align 2, 0
-_081112DC: .4byte gSharedMem
-_081112E0: .4byte gMain
-_081112E4: .4byte sub_8111314
-_081112E8:
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _08111302
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _08111308
- ldr r0, _0811130C @ =gSaveBlock2
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _08111308
-_08111302:
- ldr r0, _08111310 @ =sub_8111360
- bl sub_8110814
-_08111308:
- pop {r0}
- bx r0
- .align 2, 0
-_0811130C: .4byte gSaveBlock2
-_08111310: .4byte sub_8111360
- thumb_func_end sub_81112BC
-
- thumb_func_start sub_8111314
-sub_8111314: @ 8111314
- push {r4,lr}
- sub sp, 0x4
- ldr r4, _08111328 @ =gSharedMem
- ldrh r1, [r4, 0xC]
- cmp r1, 0
- beq _0811132C
- cmp r1, 0x1
- beq _08111344
- b _08111358
- .align 2, 0
-_08111328: .4byte gSharedMem
-_0811132C:
- movs r0, 0x15
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- b _08111358
-_08111344:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _08111358
- bl FreeRegionMapIconResources
- ldr r0, [r4, 0x4]
- bl SetMainCallback2
-_08111358:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8111314
-
- thumb_func_start sub_8111360
-sub_8111360: @ 8111360
- push {r4,lr}
- sub sp, 0x4
- ldr r4, _08111374 @ =gSharedMem
- ldrh r1, [r4, 0xC]
- cmp r1, 0
- beq _08111378
- cmp r1, 0x1
- beq _08111390
- b _081113A4
- .align 2, 0
-_08111374: .4byte gSharedMem
-_08111378:
- movs r0, 0x15
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- b _081113A4
-_08111390:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _081113A4
- bl FreeRegionMapIconResources
- ldr r0, [r4, 0x8]
- bl SetMainCallback2
-_081113A4:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8111360
-
- thumb_func_start ShowPokedexAreaScreen
-ShowPokedexAreaScreen: @ 81113AC
- push {r4,lr}
- ldr r2, _081113DC @ =gSharedMem
- movs r3, 0
- movs r4, 0
- strh r0, [r2, 0xE]
- ldr r0, _081113E0 @ =0x000006e4
- adds r2, r0
- str r1, [r2]
- strb r3, [r1]
- ldr r0, _081113E4 @ =Task_PokedexAreaScreen_0
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _081113E8 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081113DC: .4byte gSharedMem
-_081113E0: .4byte 0x000006e4
-_081113E4: .4byte Task_PokedexAreaScreen_0
-_081113E8: .4byte gTasks
- thumb_func_end ShowPokedexAreaScreen
-
- thumb_func_start Task_PokedexAreaScreen_0
-Task_PokedexAreaScreen_0: @ 81113EC
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, _08111414 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r2, r1, 0
- cmp r0, 0xB
- bls _0811140A
- b _08111540
-_0811140A:
- lsls r0, 2
- ldr r1, _08111418 @ =_0811141C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08111414: .4byte gTasks
-_08111418: .4byte _0811141C
- .align 2, 0
-_0811141C:
- .4byte _0811144C
- .4byte _08111488
- .4byte _08111496
- .4byte _081114B8
- .4byte _081114BE
- .4byte _081114CA
- .4byte _081114DE
- .4byte _081114E4
- .4byte _081114EA
- .4byte _081114F0
- .4byte _08111502
- .4byte _08111528
-_0811144C:
- movs r1, 0x80
- lsls r1, 19
- movs r3, 0xC4
- lsls r3, 7
- adds r0, r3, 0
- strh r0, [r1]
- ldr r0, _08111478 @ =REG_BG0HOFS
- movs r1, 0
- strh r1, [r0]
- ldr r2, _0811147C @ =REG_BG0VOFS
- ldr r3, _08111480 @ =0x0000fff8
- adds r0, r3, 0
- strh r0, [r2]
- ldr r0, _08111484 @ =REG_BG2VOFS
- strh r1, [r0]
- subs r0, 0x2
- strh r1, [r0]
- adds r0, 0x4
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- b _08111540
- .align 2, 0
-_08111478: .4byte REG_BG0HOFS
-_0811147C: .4byte REG_BG0VOFS
-_08111480: .4byte 0x0000fff8
-_08111484: .4byte REG_BG2VOFS
-_08111488:
- bl ResetPaletteFade
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- b _08111540
-_08111496:
- ldr r4, _081114B4 @ =gSharedMem + 0x6E8
- adds r0, r4, 0
- movs r1, 0
- bl InitRegionMap
- movs r0, 0x88
- lsls r0, 4
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x10
- bl StringFill
- b _08111540
- .align 2, 0
-_081114B4: .4byte gSharedMem + 0x6E8
-_081114B8:
- bl sub_8110824
- b _08111540
-_081114BE:
- bl DrawAreaGlow
- lsls r0, 24
- cmp r0, 0
- bne _08111550
- b _08111540
-_081114CA:
- movs r0, 0x1
- movs r1, 0x1
- bl CreateRegionMapPlayerIcon
- movs r1, 0x8
- negs r1, r1
- movs r0, 0
- bl sub_80FB2A4
- b _08111540
-_081114DE:
- bl CreateAreaMarkerSprites
- b _08111540
-_081114E4:
- bl LoadAreaUnknownGraphics
- b _08111540
-_081114EA:
- bl CreateAreaUnknownSprites
- b _08111540
-_081114F0:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- b _08111540
-_08111502:
- ldr r1, _0811151C @ =REG_BLDCNT
- ldr r2, _08111520 @ =0x00003f41
- adds r0, r2, 0
- strh r0, [r1]
- bl sub_8111084
- movs r1, 0x80
- lsls r1, 19
- ldr r3, _08111524 @ =0x00007741
- adds r0, r3, 0
- strh r0, [r1]
- b _08111540
- .align 2, 0
-_0811151C: .4byte REG_BLDCNT
-_08111520: .4byte 0x00003f41
-_08111524: .4byte 0x00007741
-_08111528:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r2
- ldr r1, _0811153C @ =Task_PokedexAreaScreen_1
- str r1, [r0]
- movs r1, 0
- strh r1, [r0, 0x8]
- b _08111550
- .align 2, 0
-_0811153C: .4byte Task_PokedexAreaScreen_1
-_08111540:
- ldr r0, _08111558 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_08111550:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08111558: .4byte gTasks
- thumb_func_end Task_PokedexAreaScreen_0
-
- thumb_func_start Task_PokedexAreaScreen_1
-Task_PokedexAreaScreen_1: @ 811155C
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8111110
- ldr r1, _08111584 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r5, r0, r1
- movs r0, 0x8
- ldrsh r1, [r5, r0]
- cmp r1, 0x1
- beq _081115B4
- cmp r1, 0x1
- bgt _08111588
- cmp r1, 0
- beq _0811159E
- b _08111590
- .align 2, 0
-_08111584: .4byte gTasks
-_08111588:
- cmp r1, 0x2
- beq _081115F8
- cmp r1, 0x3
- beq _0811160A
-_08111590:
- ldr r0, _081115AC @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0
- strh r0, [r1, 0x8]
-_0811159E:
- ldr r0, _081115B0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0811164C
- b _0811163C
- .align 2, 0
-_081115AC: .4byte gTasks
-_081115B0: .4byte gPaletteFade
-_081115B4:
- ldr r0, _081115CC @ =gMain
- ldrh r2, [r0, 0x2E]
- movs r3, 0x2
- adds r0, r3, 0
- ands r0, r2
- cmp r0, 0
- beq _081115D0
- strh r1, [r5, 0xA]
- movs r0, 0x3
- bl PlaySE
- b _0811163C
- .align 2, 0
-_081115CC: .4byte gMain
-_081115D0:
- movs r0, 0x10
- ands r0, r2
- cmp r0, 0
- bne _081115EA
- movs r0, 0x80
- lsls r0, 1
- ands r0, r2
- cmp r0, 0
- beq _0811164C
- ldr r0, _081115F4 @ =gSaveBlock2
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _0811164C
-_081115EA:
- strh r3, [r5, 0xA]
- movs r0, 0x6D
- bl PlaySE
- b _0811163C
- .align 2, 0
-_081115F4: .4byte gSaveBlock2
-_081115F8:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- b _0811163C
-_0811160A:
- ldr r0, _08111630 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0811164C
- bl DestroyAreaSprites
- ldr r0, _08111634 @ =gSharedMem
- ldr r1, _08111638 @ =0x000006e4
- adds r0, r1
- ldr r1, [r0]
- ldrh r0, [r5, 0xA]
- strb r0, [r1]
- adds r0, r4, 0
- bl DestroyTask
- b _0811164C
- .align 2, 0
-_08111630: .4byte gPaletteFade
-_08111634: .4byte gSharedMem
-_08111638: .4byte 0x000006e4
-_0811163C:
- ldr r0, _08111654 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_0811164C:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08111654: .4byte gTasks
- thumb_func_end Task_PokedexAreaScreen_1
-
- thumb_func_start CreateAreaMarkerSprites
-CreateAreaMarkerSprites: @ 8111658
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, _08111720 @ =gUnknown_083F858C
- bl LoadSpriteSheet
- ldr r0, _08111724 @ =gUnknown_083F8594
- bl LoadSpritePalette
- movs r5, 0
- movs r1, 0
- ldr r0, _08111728 @ =gSharedMem
- movs r3, 0x89
- lsls r3, 1
- adds r2, r0, r3
- ldrh r7, [r2]
- cmp r5, r7
- bge _0811170C
- adds r6, r0, 0
- mov r8, r2
-_08111680:
- lsls r0, r1, 16
- asrs r4, r0, 16
- lsls r1, r4, 1
- movs r2, 0xC4
- lsls r2, 3
- adds r0, r6, r2
- adds r1, r0
- ldr r2, _0811172C @ =gRegionMapLocations
- movs r3, 0
- ldrsh r0, [r1, r3]
- lsls r0, 3
- adds r0, r2
- ldrb r1, [r0]
- adds r1, 0x1
- lsls r1, 3
- adds r1, 0x4
- ldrb r2, [r0, 0x1]
- lsls r2, 19
- ldrb r3, [r0, 0x2]
- subs r3, 0x1
- lsls r3, 2
- ldrb r0, [r0, 0x3]
- subs r0, 0x1
- lsls r0, 2
- movs r7, 0xE0
- lsls r7, 13
- adds r2, r7
- asrs r2, 16
- adds r1, r3
- adds r2, r0
- ldr r0, _08111730 @ =gSpriteTemplate_83F85A4
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _081116FC
- ldr r0, _08111734 @ =gSprites
- lsls r2, r1, 4
- adds r2, r1
- lsls r2, 2
- adds r2, r0
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r3]
- adds r1, r5, 0
- lsls r0, r1, 16
- movs r3, 0x80
- lsls r3, 9
- adds r0, r3
- lsrs r5, r0, 16
- lsls r1, 16
- asrs r1, 14
- movs r7, 0xCC
- lsls r7, 3
- adds r0, r6, r7
- adds r1, r0
- str r2, [r1]
-_081116FC:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- asrs r0, 16
- mov r2, r8
- ldrh r2, [r2]
- cmp r0, r2
- blt _08111680
-_0811170C:
- ldr r0, _08111728 @ =gSharedMem
- movs r3, 0xDC
- lsls r3, 3
- adds r0, r3
- strh r5, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08111720: .4byte gUnknown_083F858C
-_08111724: .4byte gUnknown_083F8594
-_08111728: .4byte gSharedMem
-_0811172C: .4byte gRegionMapLocations
-_08111730: .4byte gSpriteTemplate_83F85A4
-_08111734: .4byte gSprites
- thumb_func_end CreateAreaMarkerSprites
-
- thumb_func_start DestroyAreaSprites
-DestroyAreaSprites: @ 8111738
- push {r4-r6,lr}
- movs r0, 0x2
- bl FreeSpriteTilesByTag
- movs r0, 0x2
- bl FreeSpritePaletteByTag
- movs r4, 0
- ldr r1, _081117A4 @ =gSharedMem
- movs r2, 0xDC
- lsls r2, 3
- adds r0, r1, r2
- ldrh r2, [r0]
- cmp r4, r2
- bcs _08111776
- adds r6, r1, 0
- adds r5, r0, 0
-_0811175A:
- lsls r0, r4, 2
- movs r2, 0xCC
- lsls r2, 3
- adds r1, r6, r2
- adds r0, r1
- ldr r0, [r0]
- bl DestroySprite
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldrh r0, [r5]
- cmp r4, r0
- bcc _0811175A
-_08111776:
- movs r0, 0x3
- bl FreeSpriteTilesByTag
- movs r0, 0x3
- bl FreeSpritePaletteByTag
- movs r4, 0
- ldr r5, _081117A8 @ =gSharedMem + 0xFA8
-_08111786:
- lsls r0, r4, 2
- adds r0, r5
- ldr r0, [r0]
- cmp r0, 0
- beq _08111794
- bl DestroySprite
-_08111794:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x2
- bls _08111786
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081117A4: .4byte gSharedMem
-_081117A8: .4byte gSharedMem + 0xFA8
- thumb_func_end DestroyAreaSprites
-
- thumb_func_start LoadAreaUnknownGraphics
-LoadAreaUnknownGraphics: @ 81117AC
- push {lr}
- sub sp, 0x8
- ldr r0, _081117D4 @ =gUnknown_083F8664
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- ldr r0, _081117D8 @ =gAreaUnknownTiles
- ldr r1, _081117DC @ =gSharedMem + 0xFB4
- bl LZ77UnCompWram
- mov r0, sp
- bl LoadSpriteSheet
- ldr r0, _081117E0 @ =gUnknown_083F865C
- bl LoadSpritePalette
- add sp, 0x8
- pop {r0}
- bx r0
- .align 2, 0
-_081117D4: .4byte gUnknown_083F8664
-_081117D8: .4byte gAreaUnknownTiles
-_081117DC: .4byte gSharedMem + 0xFB4
-_081117E0: .4byte gUnknown_083F865C
- thumb_func_end LoadAreaUnknownGraphics
-
- thumb_func_start CreateAreaUnknownSprites
-CreateAreaUnknownSprites: @ 81117E4
- push {r4-r7,lr}
- ldr r1, _08111810 @ =gSharedMem
- movs r2, 0x88
- lsls r2, 1
- adds r0, r1, r2
- ldr r0, [r0]
- cmp r0, 0
- beq _08111818
- movs r4, 0
- ldr r7, _08111814 @ =0x00000fa8
- adds r2, r1, r7
- movs r1, 0
-_081117FC:
- lsls r0, r4, 2
- adds r0, r2
- str r1, [r0]
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x2
- bls _081117FC
- b _0811188E
- .align 2, 0
-_08111810: .4byte gSharedMem
-_08111814: .4byte 0x00000fa8
-_08111818:
- movs r4, 0
- ldr r6, _08111868 @ =gSprites
- ldr r0, _0811186C @ =0x00000fa8
- adds r5, r1, r0
-_08111820:
- lsls r1, r4, 21
- movs r2, 0xA0
- lsls r2, 16
- adds r1, r2
- asrs r1, 16
- ldr r0, _08111870 @ =gSpriteTemplate_83F8674
- movs r2, 0x8C
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _0811187C
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- ldrh r3, [r2, 0x4]
- lsls r0, r3, 22
- lsrs r0, 22
- lsls r1, r4, 4
- adds r0, r1
- ldr r7, _08111874 @ =0x000003ff
- adds r1, r7, 0
- ands r0, r1
- ldr r7, _08111878 @ =0xfffffc00
- adds r1, r7, 0
- ands r3, r1
- orrs r3, r0
- strh r3, [r2, 0x4]
- lsls r0, r4, 2
- adds r0, r5
- str r2, [r0]
- b _08111884
- .align 2, 0
-_08111868: .4byte gSprites
-_0811186C: .4byte 0x00000fa8
-_08111870: .4byte gSpriteTemplate_83F8674
-_08111874: .4byte 0x000003ff
-_08111878: .4byte 0xfffffc00
-_0811187C:
- lsls r0, r4, 2
- adds r0, r5
- movs r1, 0
- str r1, [r0]
-_08111884:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x2
- bls _08111820
-_0811188E:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end CreateAreaUnknownSprites
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokedex_cry_screen.s b/asm/pokedex_cry_screen.s
deleted file mode 100644
index 00f8cfe14..000000000
--- a/asm/pokedex_cry_screen.s
+++ /dev/null
@@ -1,1016 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "include/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8119E3C
-sub_8119E3C: @ 8119E3C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r5, r0, 0
- lsls r1, 24
- lsrs r2, r1, 24
- movs r0, 0
- mov r9, r0
- ldr r6, _08119E60 @ =gUnknown_03005E98
- ldrb r0, [r6]
- cmp r0, 0x1
- beq _08119EE0
- cmp r0, 0x1
- bgt _08119E64
- cmp r0, 0
- beq _08119E6A
- b _08119F74
- .align 2, 0
-_08119E60: .4byte gUnknown_03005E98
-_08119E64:
- cmp r0, 0x2
- beq _08119F60
- b _08119F74
-_08119E6A:
- ldr r4, _08119ECC @ =gSharedMem + 0x1C000
- ldrh r0, [r5]
- movs r1, 0
- strh r0, [r4, 0x14]
- ldrb r0, [r5, 0x5]
- strb r0, [r4, 0x16]
- strb r1, [r4, 0x1A]
- strb r1, [r4, 0x1B]
- strb r1, [r4, 0x10]
- movs r0, 0x1C
- strb r0, [r4, 0x12]
- strb r1, [r4, 0x11]
- ldrb r1, [r5, 0x4]
- lsls r1, 19
- negs r1, r1
- asrs r1, 16
- adds r0, r2, 0
- movs r2, 0x1
- bl sub_811A350
- movs r0, 0
- mov r12, r6
- ldr r1, _08119ED0 @ =0x040000d4
- ldr r7, _08119ED4 @ =gUnknown_083FB718
- ldr r2, _08119ED8 @ =0xfffe4000
- adds r6, r4, r2
- ldr r5, _08119EDC @ =0x80000010
-_08119EA0:
- movs r3, 0
- adds r4, r0, 0x1
- lsls r2, r0, 5
-_08119EA6:
- str r7, [r1]
- adds r0, r2, r3
- lsls r0, 5
- adds r0, r6
- str r0, [r1, 0x4]
- str r5, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x1F
- bls _08119EA6
- lsls r0, r4, 24
- lsrs r0, 24
- cmp r0, 0x6
- bls _08119EA0
- mov r1, r12
- b _08119F50
- .align 2, 0
-_08119ECC: .4byte gSharedMem + 0x1C000
-_08119ED0: .4byte 0x040000d4
-_08119ED4: .4byte gUnknown_083FB718
-_08119ED8: .4byte 0xfffe4000
-_08119EDC: .4byte 0x80000010
-_08119EE0:
- ldrb r0, [r5, 0x2]
- lsls r0, 27
- lsrs r7, r0, 16
- ldrb r1, [r5, 0x3]
- lsls r1, 12
- ldrh r0, [r5]
- lsls r0, 18
- lsrs r0, 23
- adds r1, r0
- lsls r1, 16
- lsrs r6, r1, 16
- movs r0, 0
- ldr r2, _08119F58 @ =gSharedMem + 0x1C000
- mov r8, r2
- movs r1, 0xC0
- lsls r1, 19
- mov r12, r1
-_08119F02:
- movs r3, 0
- adds r4, r0, 0x1
- lsls r5, r0, 6
-_08119F08:
- lsls r1, r3, 1
- adds r1, r5
- adds r1, r7
- add r1, r12
- adds r2, r6, 0
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- strh r2, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x1F
- bls _08119F08
- lsls r0, r4, 24
- lsrs r0, 24
- cmp r0, 0x6
- bls _08119F02
- mov r2, r8
- ldrb r0, [r2, 0x16]
- movs r4, 0
- cmp r0, 0
- beq _08119F4E
- mov r5, r8
-_08119F38:
- adds r0, r4, 0
- movs r1, 0
- bl sub_811A1C8
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldrb r0, [r5, 0x16]
- lsls r0, 3
- cmp r4, r0
- blt _08119F38
-_08119F4E:
- ldr r1, _08119F5C @ =gUnknown_03005E98
-_08119F50:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08119F74
- .align 2, 0
-_08119F58: .4byte gSharedMem + 0x1C000
-_08119F5C: .4byte gUnknown_03005E98
-_08119F60:
- bl sub_811A324
- ldr r0, _08119F84 @ =gUnknown_083FB6F8
- ldrb r1, [r5, 0x3]
- lsls r1, 4
- movs r2, 0x20
- bl LoadPalette
- movs r0, 0x1
- mov r9, r0
-_08119F74:
- mov r0, r9
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08119F84: .4byte gUnknown_083FB6F8
- thumb_func_end sub_8119E3C
-
- thumb_func_start sub_8119F88
-sub_8119F88: @ 8119F88
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_811A324
- adds r0, r4, 0
- bl sub_811A15C
- ldr r1, _08119FC4 @ =gSharedMem + 0x1C000
- ldrb r0, [r1, 0x1B]
- cmp r0, 0
- beq _08119FA6
- subs r0, 0x1
- strb r0, [r1, 0x1B]
-_08119FA6:
- ldrb r0, [r1, 0x1A]
- cmp r0, 0
- beq _08119FC8
- subs r0, 0x1
- strb r0, [r1, 0x1A]
- lsls r0, 24
- cmp r0, 0
- bne _08119FC8
- ldrh r0, [r1, 0x18]
- bl sub_811A0A0
- bl sub_811A124
- b _0811A044
- .align 2, 0
-_08119FC4: .4byte gSharedMem + 0x1C000
-_08119FC8:
- ldr r5, _08119FD8 @ =gSharedMem + 0x1C000
- ldrb r0, [r5, 0x10]
- cmp r0, 0
- bne _08119FDC
- bl sub_811A124
- b _0811A044
- .align 2, 0
-_08119FD8: .4byte gSharedMem + 0x1C000
-_08119FDC:
- cmp r0, 0x1
- bne _08119FE6
- bl sub_811A0C0
- b _0811A006
-_08119FE6:
- cmp r0, 0x8
- bls _0811A006
- bl IsCryPlaying
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08119FFE
- bl sub_811A124
- strb r4, [r5, 0x10]
- b _0811A044
-_08119FFE:
- bl sub_811A0C0
- movs r0, 0x1
- strb r0, [r5, 0x10]
-_0811A006:
- ldr r5, _0811A04C @ =gSharedMem + 0x1C000
- ldrb r4, [r5, 0x10]
- subs r4, 0x1
- lsls r4, 25
- lsrs r4, 24
- ldrb r0, [r5, 0x16]
- lsls r0, 3
- ldrb r1, [r5, 0x11]
- adds r0, r1
- subs r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, r5
- ldrb r1, [r1]
- bl sub_811A1C8
- ldrb r0, [r5, 0x16]
- lsls r0, 3
- ldrb r1, [r5, 0x11]
- adds r0, r1
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- adds r4, 0x1
- adds r4, r5
- ldrb r1, [r4]
- bl sub_811A1C8
- ldrb r0, [r5, 0x10]
- adds r0, 0x1
- strb r0, [r5, 0x10]
-_0811A044:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A04C: .4byte gSharedMem + 0x1C000
- thumb_func_end sub_8119F88
-
- thumb_func_start sub_811A050
-sub_811A050: @ 811A050
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- adds r6, r5, 0
- ldr r0, _0811A08C @ =gMPlay_BGM
- ldr r0, [r0, 0x4]
- cmp r0, 0
- bge _0811A09A
- ldr r4, _0811A090 @ =gSharedMem + 0x1C000
- ldrb r0, [r4, 0x1A]
- cmp r0, 0
- bne _0811A09A
- ldrb r0, [r4, 0x1B]
- cmp r0, 0
- bne _0811A09A
- movs r0, 0x4
- strb r0, [r4, 0x1B]
- bl IsCryPlaying
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0811A094
- bl StopCry
- strh r5, [r4, 0x18]
- movs r0, 0x2
- strb r0, [r4, 0x1A]
- b _0811A09A
- .align 2, 0
-_0811A08C: .4byte gMPlay_BGM
-_0811A090: .4byte gSharedMem + 0x1C000
-_0811A094:
- adds r0, r6, 0
- bl sub_811A0A0
-_0811A09A:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_811A050
-
- thumb_func_start sub_811A0A0
-sub_811A0A0: @ 811A0A0
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0
- movs r2, 0x7D
- movs r3, 0xA
- bl PlayCry2
- ldr r1, _0811A0BC @ =gSharedMem + 0x1C000
- movs r0, 0x1
- strb r0, [r1, 0x10]
- pop {r0}
- bx r0
- .align 2, 0
-_0811A0BC: .4byte gSharedMem + 0x1C000
- thumb_func_end sub_811A0A0
-
- thumb_func_start sub_811A0C0
-sub_811A0C0: @ 811A0C0
- push {r4,lr}
- ldr r3, _0811A0D0 @ =gPcmDmaCounter
- movs r0, 0
- ldrsb r0, [r3, r0]
- cmp r0, 0x1
- bgt _0811A0D8
- ldr r0, _0811A0D4 @ =gSoundInfo + 0x350
- b _0811A0F0
- .align 2, 0
-_0811A0D0: .4byte gPcmDmaCounter
-_0811A0D4: .4byte gSoundInfo + 0x350
-_0811A0D8:
- ldr r2, _0811A11C @ =gSoundInfo
- ldrb r1, [r2, 0xB]
- movs r0, 0
- ldrsb r0, [r3, r0]
- subs r0, 0x1
- subs r1, r0
- ldr r0, [r2, 0x10]
- muls r0, r1
- movs r1, 0xD4
- lsls r1, 2
- adds r2, r1
- adds r0, r2
-_0811A0F0:
- movs r1, 0xC6
- lsls r1, 3
- adds r3, r0, r1
- movs r2, 0
- ldr r4, _0811A120 @ =gSharedMem + 0x1C000
-_0811A0FA:
- adds r1, r2, r4
- lsls r0, r2, 1
- adds r0, r3
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- lsls r0, 1
- strb r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _0811A0FA
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A11C: .4byte gSoundInfo
-_0811A120: .4byte gSharedMem + 0x1C000
- thumb_func_end sub_811A0C0
-
- thumb_func_start sub_811A124
-sub_811A124: @ 811A124
- push {r4,lr}
- ldr r4, _0811A158 @ =gSharedMem + 0x1C000
- ldrb r0, [r4, 0x16]
- lsls r0, 3
- ldrb r1, [r4, 0x11]
- adds r0, r1
- subs r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- bl sub_811A1C8
- ldrb r0, [r4, 0x16]
- lsls r0, 3
- ldrb r4, [r4, 0x11]
- adds r0, r4
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- bl sub_811A1C8
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A158: .4byte gSharedMem + 0x1C000
- thumb_func_end sub_811A124
-
- thumb_func_start sub_811A15C
-sub_811A15C: @ 811A15C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r4, _0811A1B4 @ =gSharedMem + 0x1C000
- ldrb r1, [r4, 0x11]
- movs r2, 0
- bl sub_811A350
- ldrb r0, [r4, 0x11]
- adds r0, 0x2
- strb r0, [r4, 0x11]
- ldrb r0, [r4, 0x11]
- lsrs r0, 3
- ldrb r2, [r4, 0x16]
- adds r1, r0, r2
- adds r2, r1, 0x1
- adds r0, r2, 0
- asrs r0, 5
- lsls r0, 5
- subs r0, r2, r0
- lsls r0, 16
- lsrs r3, r0, 16
- movs r1, 0
- ldr r2, _0811A1B8 @ =0x040000d4
- ldr r6, _0811A1BC @ =gUnknown_083FB718
- ldr r0, _0811A1C0 @ =0xfffe4000
- adds r5, r4, r0
- ldr r4, _0811A1C4 @ =0x80000010
-_0811A194:
- str r6, [r2]
- lsls r0, r1, 5
- adds r0, r3
- lsls r0, 5
- adds r0, r5
- str r0, [r2, 0x4]
- str r4, [r2, 0x8]
- ldr r0, [r2, 0x8]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x6
- bls _0811A194
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A1B4: .4byte gSharedMem + 0x1C000
-_0811A1B8: .4byte 0x040000d4
-_0811A1BC: .4byte gUnknown_083FB718
-_0811A1C0: .4byte 0xfffe4000
-_0811A1C4: .4byte 0x80000010
- thumb_func_end sub_811A15C
-
- thumb_func_start sub_811A1C8
-sub_811A1C8: @ 811A1C8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r5, r0, 24
- lsrs r4, r5, 24
- lsls r1, 24
- movs r0, 0xFE
- lsls r0, 23
- adds r1, r0
- lsrs r1, 16
- adds r0, r1, 0
- bl __floatsidf
- ldr r3, _0811A280 @ =0x00000000
- ldr r2, _0811A27C @ =0x40920000
- bl __divdf3
- bl __fixunsdfsi
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x37
- bls _0811A1FE
- movs r6, 0x37
-_0811A1FE:
- str r6, [sp]
- movs r7, 0x1
- ands r7, r4
- ldr r0, _0811A284 @ =gSharedMem + 0x1C000
- mov r10, r0
- lsrs r5, 27
- mov r8, r5
- ldr r0, _0811A288 @ =gUnknown_083FB738
- mov r1, r10
- ldrb r1, [r1, 0x12]
- cmp r6, r1
- bls _0811A298
- adds r0, r7, r0
- ldrb r0, [r0]
- mov r9, r0
- movs r2, 0x7
- ands r2, r4
-_0811A220:
- lsls r1, r6, 1
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 4
- adds r1, r0
- ldr r3, _0811A28C @ =gUnknown_083FB274
- adds r1, r3
- mov r3, r8
- lsls r0, r3, 5
- ldrh r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- ldr r1, _0811A290 @ =gSharedMem
- adds r5, r0, r1
- ldrb r4, [r5]
- mov r3, r9
- ands r4, r3
- strb r4, [r5]
- adds r0, r6, 0
- movs r1, 0x3
- str r2, [sp, 0x8]
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- movs r1, 0xF
- ands r0, r1
- lsls r1, r7, 4
- adds r0, r1
- ldr r1, _0811A294 @ =gUnknown_083FB73A
- adds r0, r1
- ldrb r0, [r0]
- orrs r4, r0
- strb r4, [r5]
- subs r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r2, [sp, 0x8]
- ldr r3, _0811A284 @ =gSharedMem + 0x1C000
- ldrb r3, [r3, 0x12]
- cmp r6, r3
- bhi _0811A220
- b _0811A2FA
- .align 2, 0
-_0811A27C: .4byte 0x40920000
-_0811A280: .4byte 0x00000000
-_0811A284: .4byte gSharedMem + 0x1C000
-_0811A288: .4byte gUnknown_083FB738
-_0811A28C: .4byte gUnknown_083FB274
-_0811A290: .4byte gSharedMem
-_0811A294: .4byte gUnknown_083FB73A
-_0811A298:
- lsls r1, r7, 4
- str r1, [sp, 0x4]
- adds r0, r7, r0
- ldrb r0, [r0]
- mov r9, r0
- movs r7, 0x7
- ands r7, r4
-_0811A2A6:
- lsls r1, r6, 1
- lsls r0, r7, 3
- adds r0, r7
- lsls r0, 4
- adds r1, r0
- ldr r2, _0811A314 @ =gUnknown_083FB274
- adds r1, r2
- mov r3, r8
- lsls r0, r3, 5
- ldrh r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- ldr r1, _0811A318 @ =gSharedMem
- adds r5, r0, r1
- ldrb r4, [r5]
- mov r2, r9
- ands r4, r2
- strb r4, [r5]
- adds r0, r6, 0
- movs r1, 0x3
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- movs r1, 0xF
- ands r0, r1
- ldr r3, [sp, 0x4]
- adds r0, r3
- ldr r1, _0811A31C @ =gUnknown_083FB73A
- adds r0, r1
- ldrb r0, [r0]
- orrs r4, r0
- strb r4, [r5]
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r2, _0811A320 @ =gSharedMem + 0x1C000
- ldrb r2, [r2, 0x12]
- cmp r6, r2
- bcc _0811A2A6
-_0811A2FA:
- mov r3, sp
- ldrb r0, [r3]
- mov r3, r10
- strb r0, [r3, 0x12]
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A314: .4byte gUnknown_083FB274
-_0811A318: .4byte gSharedMem
-_0811A31C: .4byte gUnknown_083FB73A
-_0811A320: .4byte gSharedMem + 0x1C000
- thumb_func_end sub_811A1C8
-
- thumb_func_start sub_811A324
-sub_811A324: @ 811A324
- ldr r2, _0811A344 @ =0x040000d4
- ldr r0, _0811A348 @ =gSharedMem
- str r0, [r2]
- movs r1, 0xE0
- lsls r1, 9
- adds r0, r1
- ldrh r0, [r0, 0x14]
- movs r1, 0xC0
- lsls r1, 19
- adds r0, r1
- str r0, [r2, 0x4]
- ldr r0, _0811A34C @ =0x80000e00
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- bx lr
- .align 2, 0
-_0811A344: .4byte 0x040000d4
-_0811A348: .4byte gSharedMem
-_0811A34C: .4byte 0x80000e00
- thumb_func_end sub_811A324
-
- thumb_func_start sub_811A350
-sub_811A350: @ 811A350
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- adds r3, r0, 0
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 24
- lsrs r2, 24
- cmp r0, 0x1
- beq _0811A38C
- cmp r0, 0x1
- bgt _0811A36E
- cmp r0, 0
- beq _0811A378
- b _0811A3C4
-_0811A36E:
- cmp r3, 0x2
- beq _0811A3A0
- cmp r3, 0x3
- beq _0811A3B4
- b _0811A3C4
-_0811A378:
- cmp r2, 0
- beq _0811A384
- ldr r0, _0811A380 @ =REG_BG0VOFS
- b _0811A3C2
- .align 2, 0
-_0811A380: .4byte REG_BG0VOFS
-_0811A384:
- ldr r0, _0811A388 @ =REG_BG0HOFS
- b _0811A3C2
- .align 2, 0
-_0811A388: .4byte REG_BG0HOFS
-_0811A38C:
- cmp r2, 0
- beq _0811A398
- ldr r0, _0811A394 @ =REG_BG1VOFS
- b _0811A3C2
- .align 2, 0
-_0811A394: .4byte REG_BG1VOFS
-_0811A398:
- ldr r0, _0811A39C @ =REG_BG1HOFS
- b _0811A3C2
- .align 2, 0
-_0811A39C: .4byte REG_BG1HOFS
-_0811A3A0:
- cmp r2, 0
- beq _0811A3AC
- ldr r0, _0811A3A8 @ =REG_BG2VOFS
- b _0811A3C2
- .align 2, 0
-_0811A3A8: .4byte REG_BG2VOFS
-_0811A3AC:
- ldr r0, _0811A3B0 @ =REG_BG2HOFS
- b _0811A3C2
- .align 2, 0
-_0811A3B0: .4byte REG_BG2HOFS
-_0811A3B4:
- cmp r2, 0
- beq _0811A3C0
- ldr r0, _0811A3BC @ =REG_BG3VOFS
- b _0811A3C2
- .align 2, 0
-_0811A3BC: .4byte REG_BG3VOFS
-_0811A3C0:
- ldr r0, _0811A3C8 @ =REG_BG3HOFS
-_0811A3C2:
- strh r1, [r0]
-_0811A3C4:
- pop {r0}
- bx r0
- .align 2, 0
-_0811A3C8: .4byte REG_BG3HOFS
- thumb_func_end sub_811A350
-
-.section .text_811A4F8
-
- thumb_func_start DestroyCryMeterNeedleSprite
-DestroyCryMeterNeedleSprite: @ 811A4F8
- push {r4,r5,lr}
- ldr r5, _0811A52C @ =gSprites
- ldr r4, _0811A530 @ =gSharedMem + 0x1C800
- ldrh r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r0, [r0, 0x5]
- lsrs r0, 4
- bl GetSpritePaletteTagByPaletteNum
- lsls r0, 16
- lsrs r0, 16
- bl FreeSpritePaletteByTag
- ldrh r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A52C: .4byte gSprites
-_0811A530: .4byte gSharedMem + 0x1C800
- thumb_func_end DestroyCryMeterNeedleSprite
-
- thumb_func_start sub_811A534
-sub_811A534: @ 811A534
- push {r4-r7,lr}
- sub sp, 0x14
- adds r7, r0, 0
- ldr r3, _0811A578 @ =gSprites
- ldr r5, _0811A57C @ =gSharedMem + 0x1C800
- ldrh r1, [r5, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r2, [r0, 0x1]
- movs r1, 0x4
- negs r1, r1
- ands r1, r2
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0, 0x1]
- ldrh r1, [r5, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0
- strh r1, [r0, 0x6]
- ldr r0, _0811A580 @ =0xfffff800
- adds r1, r5, r0
- ldrb r0, [r1, 0x10]
- cmp r0, 0x2
- beq _0811A5AA
- cmp r0, 0x2
- bgt _0811A584
- cmp r0, 0
- beq _0811A58A
- b _0811A5F4
- .align 2, 0
-_0811A578: .4byte gSprites
-_0811A57C: .4byte gSharedMem + 0x1C800
-_0811A580: .4byte 0xfffff800
-_0811A584:
- cmp r0, 0x6
- beq _0811A5E2
- b _0811A5F4
-_0811A58A:
- movs r0, 0x20
- strb r0, [r5, 0x1]
- movs r0, 0
- ldrsb r0, [r5, r0]
- cmp r0, 0
- ble _0811A5A4
- ldrb r0, [r5, 0x2]
- add r4, sp, 0xC
- cmp r0, 0x1
- beq _0811A5F6
- subs r0, 0x1
- strb r0, [r5, 0x2]
- b _0811A5F6
-_0811A5A4:
- movs r0, 0x5
- strb r0, [r5, 0x2]
- b _0811A5F4
-_0811A5AA:
- movs r3, 0
- movs r2, 0
- add r4, sp, 0xC
- adds r5, r1, 0
-_0811A5B2:
- lsls r1, r3, 24
- asrs r1, 24
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r1, r0
- bge _0811A5C0
- adds r3, r0, 0
-_0811A5C0:
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0xF
- bls _0811A5B2
- lsls r0, r3, 24
- asrs r0, 24
- movs r1, 0xD0
- muls r0, r1
- cmp r0, 0
- bge _0811A5D8
- adds r0, 0xFF
-_0811A5D8:
- lsls r0, 16
- asrs r0, 24
- bl sub_811A6D8
- b _0811A5F6
-_0811A5E2:
- ldr r1, _0811A620 @ =0xfffff80a
- adds r0, r5, r1
- ldrb r1, [r0]
- movs r0, 0xD0
- muls r0, r1
- lsls r0, 16
- asrs r0, 24
- bl sub_811A6D8
-_0811A5F4:
- add r4, sp, 0xC
-_0811A5F6:
- ldr r0, _0811A624 @ =gSharedMem + 0x1C800
- ldrb r3, [r0]
- movs r2, 0
- ldrsb r2, [r0, r2]
- ldrb r6, [r0, 0x1]
- movs r1, 0x1
- ldrsb r1, [r0, r1]
- adds r5, r0, 0
- cmp r2, r1
- beq _0811A63C
- cmp r2, r1
- bge _0811A628
- ldrb r0, [r5, 0x2]
- adds r0, r3, r0
- strb r0, [r5]
- lsls r0, 24
- asrs r0, 24
- cmp r0, r1
- ble _0811A63C
- b _0811A636
- .align 2, 0
-_0811A620: .4byte 0xfffff80a
-_0811A624: .4byte gSharedMem + 0x1C800
-_0811A628:
- ldrb r0, [r5, 0x2]
- subs r0, r3, r0
- strb r0, [r5]
- lsls r0, 24
- asrs r0, 24
- cmp r0, r1
- bge _0811A63C
-_0811A636:
- strb r6, [r5]
- movs r0, 0
- strb r0, [r5, 0x1]
-_0811A63C:
- ldr r2, _0811A6CC @ =0xffff0000
- ldr r0, [sp, 0x4]
- ands r0, r2
- movs r1, 0x80
- lsls r1, 1
- orrs r0, r1
- ldr r1, _0811A6D0 @ =0x0000ffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 17
- orrs r0, r1
- str r0, [sp, 0x4]
- movs r1, 0
- ldrsb r1, [r5, r1]
- lsls r1, 24
- lsrs r1, 16
- ldr r0, [sp, 0x8]
- ands r0, r2
- orrs r0, r1
- str r0, [sp, 0x8]
- add r0, sp, 0x4
- adds r1, r4, 0
- movs r2, 0x1
- movs r3, 0x2
- bl ObjAffineSet
- add r0, sp, 0xC
- ldrh r1, [r0]
- ldrh r2, [r4, 0x2]
- ldrh r3, [r4, 0x4]
- ldrh r0, [r4, 0x6]
- str r0, [sp]
- movs r0, 0
- bl SetOamMatrix
- ldr r2, _0811A6D4 @ =gSineTable
- movs r0, 0
- ldrsb r0, [r5, r0]
- adds r0, 0x7F
- movs r1, 0xFF
- ands r0, r1
- lsls r1, r0, 1
- adds r1, r2
- adds r0, 0x40
- lsls r0, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0
- ldrsh r1, [r1, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- cmp r0, 0
- bge _0811A6AA
- adds r0, 0xFF
-_0811A6AA:
- asrs r0, 8
- strh r0, [r7, 0x24]
- lsls r1, r2, 16
- asrs r1, 16
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- cmp r0, 0
- bge _0811A6BE
- adds r0, 0xFF
-_0811A6BE:
- asrs r0, 8
- strh r0, [r7, 0x26]
- add sp, 0x14
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A6CC: .4byte 0xffff0000
-_0811A6D0: .4byte 0x0000ffff
-_0811A6D4: .4byte gSineTable
- thumb_func_end sub_811A534
-
- thumb_func_start sub_811A6D8
-sub_811A6D8: @ 811A6D8
- push {lr}
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x20
- subs r2, r1, r0
- movs r0, 0xFF
- ands r2, r0
- adds r0, r2, 0
- subs r0, 0x21
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xBE
- bhi _0811A6F4
- movs r2, 0xE0
-_0811A6F4:
- ldr r1, _0811A700 @ =gSharedMem + 0x1C800
- strb r2, [r1, 0x1]
- movs r0, 0x5
- strb r0, [r1, 0x2]
- pop {r0}
- bx r0
- .align 2, 0
-_0811A700: .4byte gSharedMem + 0x1C800
- thumb_func_end sub_811A6D8
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index cee93a9e4..67655e63f 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -582,8 +582,8 @@ sub_809CB74: @ 809CB74
_0809CB90: .4byte gPokemonStorageSystemPtr
thumb_func_end sub_809CB74
- thumb_func_start unref_sub_809CB94
-unref_sub_809CB94: @ 809CB94
+ thumb_func_start debug_sub_809CB94
+debug_sub_809CB94: @ 809CB94
push {r4,lr}
adds r4, r0, 0
ldr r0, _0809CBBC @ =gUnknown_020384E4
@@ -636,7 +636,7 @@ _0809CBF6:
.align 2, 0
_0809CBFC: .4byte gPokemonStorage
_0809CC00: .4byte gUnknown_020384E5
- thumb_func_end unref_sub_809CB94
+ thumb_func_end debug_sub_809CB94
thumb_func_start sub_809CC04
sub_809CC04: @ 809CC04
@@ -896,7 +896,7 @@ sub_809CDEC: @ 809CDEC
ldr r0, [r0]
str r0, [r1]
str r3, [r1, 0x4]
- bl sub_8072CA4
+ bl GetStringWidthInMenuWindow
lsls r0, 24
lsrs r0, 24
adds r1, r0, 0x7
diff --git a/asm/pokenav.s b/asm/pokenav.s
index ca65b2e06..7fc2348f5 100644
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -1026,7 +1026,7 @@ _080F0E42:
adds r0, r4, 0
movs r2, 0x88
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
lsls r2, r5, 3
adds r0, r4, 0
_080F0E54:
@@ -1049,7 +1049,7 @@ _080F0E6C:
adds r0, r4, 0
movs r2, 0x88
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
lsls r2, r5, 3
adds r0, r4, 0
movs r1, 0x61
@@ -1270,7 +1270,7 @@ sub_80F0FFC: @ 80F0FFC
adds r1, r5, 0
movs r2, 0x58
movs r3, 0x2
- bl sub_8072C74
+ bl AlignStringInMenuWindow
adds r0, r4, 0
movs r1, 0
movs r2, 0x5
@@ -1880,7 +1880,7 @@ _080F152E:
adds r0, r6, 0
movs r2, 0x80
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
ldrh r0, [r5]
lsls r0, 3
adds r4, 0x4
@@ -1889,7 +1889,7 @@ _080F152E:
adds r0, r7, 0
movs r2, 0x80
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
b _080F158A
.align 2, 0
_080F1558: .4byte gUnknown_020388B4
@@ -1904,12 +1904,12 @@ _080F1570:
adds r1, r4, 0
movs r2, 0x80
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
adds r0, r7, 0
adds r1, r4, 0
movs r2, 0x80
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
_080F158A:
adds r0, r6, 0
movs r1, 0xC
@@ -2398,7 +2398,7 @@ sub_80F1934: @ 80F1934
adds r0, r5, 0
movs r2, 0x57
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
b _080F19B8
.align 2, 0
_080F1990: .4byte gUnknown_083DFEC4
@@ -2413,7 +2413,7 @@ _080F19AC:
adds r0, r5, 0
movs r2, 0x57
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
_080F19B8:
ldr r0, _080F19D4 @ =gUnknown_083DFEC4
ldr r0, [r0]
@@ -7975,7 +7975,7 @@ sub_80F443C: @ 80F443C
adds r1, r4, 0
movs r2, 0x38
movs r3, 0x1
- bl sub_8072C14
+ bl AlignInt1InMenuWindow
pop {r4}
pop {r1}
bx r1
@@ -7990,7 +7990,7 @@ sub_80F445C: @ 80F445C
lsrs r1, 16
movs r2, 0x17
movs r3, 0x1
- bl sub_8072C14
+ bl AlignInt1InMenuWindow
adds r4, r0, 0
movs r3, 0xFC
strb r3, [r4]
@@ -8016,7 +8016,7 @@ sub_80F445C: @ 80F445C
adds r0, r4, 0
movs r2, 0x32
movs r3, 0x1
- bl sub_8072C14
+ bl AlignInt1InMenuWindow
adds r4, r0, 0
pop {r4}
pop {r1}
@@ -8190,7 +8190,7 @@ sub_80F45A0: @ 80F45A0
ldr r1, _080F4604 @ =gOtherText_InParty
movs r2, 0x40
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
b _080F4624
.align 2, 0
_080F45F0: .4byte gUnknown_083DFEC4
@@ -8212,7 +8212,7 @@ _080F4608:
adds r1, r2
movs r2, 0x40
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
_080F4624:
ldr r0, _080F463C @ =gUnknown_083DFEC4
ldr r0, [r0]
@@ -8236,7 +8236,7 @@ _080F4644:
adds r1, r4, 0
movs r2, 0x68
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
lsls r0, r6, 1
adds r0, r6
lsls r0, 3
@@ -8246,7 +8246,7 @@ _080F4644:
adds r1, r4, 0
movs r2, 0x40
movs r3, 0
- bl sub_8072C74
+ bl AlignStringInMenuWindow
ldr r1, _080F4688 @ =0x00008937
adds r0, r5, r1
adds r0, r6
@@ -12397,7 +12397,7 @@ _080F6656:
adds r0, r5, 0
movs r2, 0x80
movs r3, 0x1
- bl sub_8072C14
+ bl AlignInt1InMenuWindow
adds r5, r0, 0
b _080F66CE
.align 2, 0
diff --git a/asm/taya_debug_window.s b/asm/taya_debug_window.s
deleted file mode 100644
index 68d27390d..000000000
--- a/asm/taya_debug_window.s
+++ /dev/null
@@ -1,2054 +0,0 @@
-.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 @ gSaveBlock1
- 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 @ gMenuCallback
- ldr r0, ._3 + 8 @ debug_sub_8090808
- 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 @ gMain
- 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 @ gSaveBlock1
-._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 @ gSpecialVar_0x8004
- ldr r0, ._19 + 4 @ gUnknown_Debug_083C4EC0
- 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 @ gSpecialVar_0x8005
- mov r1, #0x0
- strh r1, [r0]
- ldr r0, ._30 + 4 @ gSpecialVar_0x8006
- strh r1, [r0]
-._27:
- mov r0, #0x1
- mov r1, #0x0
- bl FadeScreen
- ldr r1, ._30 + 8 @ gMenuCallback
- ldr r0, ._30 + 12 @ debug_sub_8090880
- 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 @ gUnknown_Debug_083C4EC0
- 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 @ gMenuCallback
- ldr r0, ._32 + 8 @ debug_sub_809089C
- 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 @ gSaveBlock1
- add r1, r0, #2
- mov ip, r1
- ldr r7, ._44 + 4 @ gUnknown_Debug_083C4F08
- ldr r1, ._44 + 8 @ 0xfffffd94
- 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 @ gUnknown_Debug_083C4F54
- 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 @ gMenuCallback
- ldr r0, ._48 + 8 @ debug_sub_8090984
- 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 @ 0x80f
- bl FlagSet
- mov r0, #0x81
- lsl r0, r0, #0x4
- bl FlagSet
- ldr r0, ._50 + 4 @ 0x811
- bl FlagSet
- ldr r0, ._50 + 8 @ 0x812
- bl FlagSet
- ldr r0, ._50 + 12 @ 0x813
- bl FlagSet
- ldr r0, ._50 + 16 @ 0x814
- bl FlagSet
- ldr r0, ._50 + 20 @ 0x815
- bl FlagSet
- ldr r0, ._50 + 24 @ 0x816
- bl FlagSet
- ldr r0, ._50 + 28 @ 0x817
- bl FlagSet
- ldr r0, ._50 + 32 @ 0x818
- bl FlagSet
- ldr r0, ._50 + 36 @ 0x819
- bl FlagSet
- ldr r0, ._50 + 40 @ 0x81a
- bl FlagSet
- ldr r0, ._50 + 44 @ 0x81b
- bl FlagSet
- ldr r0, ._50 + 48 @ 0x81c
- bl FlagSet
- ldr r0, ._50 + 52 @ 0x81d
- bl FlagSet
- ldr r0, ._50 + 56 @ 0x81e
- bl FlagSet
- ldr r0, ._50 + 60 @ 0x848
- bl FlagSet
- ldr r0, ._50 + 64 @ 0x849
- bl FlagSet
- ldr r0, ._50 + 68 @ 0x84a
- bl FlagSet
- ldr r0, ._50 + 72 @ 0x854
- bl FlagSet
- ldr r0, ._50 + 76 @ 0x855
- bl FlagSet
- ldr r0, ._50 + 80 @ 0x856
- bl FlagSet
- ldr r0, ._50 + 84 @ 0x857
- bl FlagSet
- ldr r0, ._50 + 88 @ 0x858
- bl FlagSet
- ldr r0, ._50 + 92 @ 0x859
- bl FlagSet
- ldr r0, ._50 + 96 @ 0x85a
- bl FlagSet
- ldr r0, ._50 + 100 @ 0x85b
- bl FlagSet
- ldr r0, ._50 + 104 @ 0x85c
- bl FlagSet
- ldr r0, ._50 + 108 @ 0x83c
- bl FlagSet
- ldr r0, ._50 + 112 @ 0x83d
- bl FlagSet
- ldr r0, ._50 + 116 @ 0x83e
- bl FlagSet
- ldr r0, ._50 + 120 @ 0x83f
- bl FlagSet
- mov r0, #0x84
- lsl r0, r0, #0x4
- bl FlagSet
- ldr r0, ._50 + 124 @ 0x841
- bl FlagSet
- ldr r0, ._50 + 128 @ 0x842
- bl FlagSet
- ldr r0, ._50 + 132 @ 0x843
- bl FlagSet
- ldr r0, ._50 + 136 @ 0x844
- bl FlagSet
- ldr r0, ._50 + 140 @ 0x845
- bl FlagSet
- ldr r0, ._50 + 144 @ 0x846
- bl FlagSet
- ldr r0, ._50 + 148 @ 0x847
- bl FlagSet
- ldr r0, ._50 + 152 @ 0x83b
- 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 @ debug_sub_80915BC
- 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 @ gSharedMem
- 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 @ 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 @ gSharedMem
- 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 @ gSharedMem
- 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 @ gSharedMem
- 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 @ gSharedMem
- ldrh r1, [r0, #0x8]
- str r1, [r0, #0xc]
- ldr r1, ._81 + 4 @ 0x2710
- 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 @ 0xffff
- 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 @ gSharedMem
- ldrh r1, [r0, #0x8]
- str r1, [r0, #0xc]
- ldr r1, ._81 + 4 @ 0x2710
- 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 @ 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 @ gMenuCallback
- ldr r0, ._83 + 12 @ debug_sub_8090C88
- 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 @ gTrainerEyeTrainers
-._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 @ 0x109
- bl SetTrainerFlag
- mov r0, #0x85
- lsl r0, r0, #0x1
- bl SetTrainerFlag
- ldr r0, ._86 + 8 @ 0x10b
- bl SetTrainerFlag
- mov r0, #0x86
- lsl r0, r0, #0x1
- bl SetTrainerFlag
- ldr r0, ._86 + 12 @ 0x10d
- bl SetTrainerFlag
- mov r0, #0x87
- lsl r0, r0, #0x1
- bl SetTrainerFlag
- ldr r0, ._86 + 16 @ 0x10f
- bl SetTrainerFlag
- mov r0, #0x88
- lsl r0, r0, #0x1
- bl SetTrainerFlag
- ldr r0, ._86 + 20 @ 0x105
- bl SetTrainerFlag
- mov r0, #0x83
- lsl r0, r0, #0x1
- bl SetTrainerFlag
- ldr r0, ._86 + 24 @ 0x107
- bl SetTrainerFlag
- mov r0, #0x84
- lsl r0, r0, #0x1
- bl SetTrainerFlag
- ldr r0, ._86 + 28 @ 0x14f
- 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 @ gSharedMem
- add r0, r4, #0
- ldr r1, ._94 + 4 @ gUnknown_Debug_083C4F94
- 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 @ 0x19b
- 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 @ gPokemonStorage
- 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 @ 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
- 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 @ unk_2030224
- ldrb r4, [r3]
- ldr r2, ._107 + 4 @ gMain
- 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 @ gUnknown_Debug_83C5068
- 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 @ unk_2030224
- 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 @ gUnknown_Debug_83C5068
- 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 @ gMenuCallback
- ldr r0, ._109 + 12 @ TayaDebugMenu_8091190
- 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 @ gPaletteFade
- 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 @ debug_sub_8110F28
- 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 @ gMenuCallback
- ldr r0, ._117 + 4 @ debug_sub_80912D8
- 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 @ gSharedMem
- 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 @ gMain
- 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 @ gSharedMem
- 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 @ gUnknown_Debug_083C50EC
- 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 @ sub_80546F0
- 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 @ gMain
- 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 @ gSharedMem
- 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 @ gPlayerParty
- ldr r1, ._164 + 4 @ gUnknown_Debug_083C50EC
- 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 @ gUnknown_Debug_083C50EC
- 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 @ gPlayerParty
- 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 @ 0x4000010
- mov r1, #0x0
- strh r1, [r0]
- add r0, r0, #0x2
- strh r1, [r0]
- mov r1, #0x0
- ldr r0, ._168 + 4 @ gUnknown_Debug_083C50EC
- mov r8, r0
- ldr r7, ._168 + 8 @ gSharedMem
-._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 @ gPlayerParty
- 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 @ gWindowTemplate_81E7224
- 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 @ gUnknown_Debug_083C517C
- 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 @ gSharedMem
- 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 @ debug_sub_8091320
- bl SetVBlankCallback
- ldr r0, ._172 + 16 @ debug_sub_8091334
- 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 @ gSharedMem
- mov sl, r0
- mov r1, #0x0
- mov r8, r1
-._182:
- ldr r2, ._177 + 4 @ gSharedMem
- 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 @ gSharedMem
- 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 @ gUnknown_Debug_083C50EC
- 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 @ gSharedMem
- 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
deleted file mode 100644
index c0dfe38e0..000000000
--- a/asm/tomomichi_debug_menu.s
+++ /dev/null
@@ -1,8100 +0,0 @@
-.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 @ gUnknown_Debug_083C0CBA
- mov r0, #0x1
- mov r1, #0x1
- mov r2, #0x7
- bl Menu_PrintItems
- ldr r0, ._1 + 4 @ gDebug_0300071D
- 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 @ gMenuCallback
- ldr r0, ._1 + 12 @ debug_sub_808B8C8
- 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 @ gMain
- 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 @ gDebug_0300071D
- 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 @ gDebug_0300071D
- 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 @ gUnknown_Debug_083C0CBA
- ldr r0, ._7 + 4 @ gDebug_0300071D
- 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 @ gUnknown_Debug_083C0CF4
- mov r1, #0x1
- mov r2, #0x1
- bl Menu_PrintText
- ldr r3, ._11 + 4 @ gUnknown_Debug_083C0D2C
- 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 @ gMenuCallback
- ldr r0, ._11 + 12 @ debug_sub_808BC48
- str r0, [r1]
- ldr r0, ._11 + 16 @ gDebug_03000700
- mov r2, #0x1
- strh r2, [r0]
- ldr r1, ._11 + 20 @ gDebug_03000704
- ldr r0, ._11 + 24 @ 0x6f33
- str r0, [r1]
- ldr r0, ._11 + 28 @ gDebug_03000708
- str r4, [r0]
- ldr r0, ._11 + 32 @ gDebug_0300070C
- 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 @ gUnknown_Debug_083C0D4C
- mov r1, #0x1
- mov r2, #0x1
- bl Menu_PrintText
- ldr r3, ._13 + 4 @ gUnknown_Debug_083C0D83
- 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 @ gMenuCallback
- ldr r0, ._13 + 12 @ debug_sub_808BCBC
- str r0, [r1]
- ldr r0, ._13 + 16 @ gDebug_03000700
- mov r2, #0x1
- strh r2, [r0]
- ldr r1, ._13 + 20 @ gDebug_03000704
- ldr r0, ._13 + 24 @ 0x6f33
- str r0, [r1]
- ldr r0, ._13 + 28 @ gDebug_03000708
- str r4, [r0]
- ldr r0, ._13 + 32 @ gDebug_0300070D
- 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 @ gUnknown_Debug_083C0DA4
- mov r1, #0x1
- mov r2, #0x1
- bl Menu_PrintText
- ldr r3, ._15 + 4 @ gUnknown_Debug_083C0DD4
- 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 @ gMenuCallback
- ldr r0, ._15 + 12 @ debug_sub_808BD30
- str r0, [r1]
- ldr r0, ._15 + 16 @ gDebug_03000700
- mov r2, #0x1
- strh r2, [r0]
- ldr r1, ._15 + 20 @ gDebug_03000704
- ldr r0, ._15 + 24 @ 0x6f33
- str r0, [r1]
- ldr r0, ._15 + 28 @ gDebug_03000708
- str r4, [r0]
- ldr r0, ._15 + 32 @ gDebug_0300070E
- 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 @ gUnknown_Debug_083C0DF4
- mov r1, #0x1
- mov r2, #0x1
- bl Menu_PrintText
- ldr r3, ._17 + 4 @ gUnknown_Debug_083C0E15
- mov r0, #0x2
- mov r1, #0x3
- mov r2, #0x2
- bl Menu_PrintItems
- ldr r0, ._17 + 8 @ gDebug_0300071E
- 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 @ gMenuCallback
- ldr r0, ._17 + 16 @ debug_sub_808BDA4
- 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 @ gUnknown_Debug_083C0E32
- mov r0, #0x2
- mov r1, #0x1
- mov r2, #0x2
- bl Menu_PrintItems
- ldr r0, ._19 + 4 @ gDebug_0300071F
- 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 @ gMenuCallback
- ldr r0, ._19 + 12 @ debug_sub_808BE2C
- 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 @ gUnknown_Debug_083C0E7F
- mov r0, #0x2
- mov r1, #0x1
- mov r2, #0x7
- bl Menu_PrintItems
- ldr r0, ._21 + 4 @ gDebug_03000720
- 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 @ gMenuCallback
- ldr r0, ._21 + 12 @ debug_sub_808BEB4
- 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 @ gUnknown_Debug_083C0EF1
- mov r0, #0x2
- mov r1, #0x1
- mov r2, #0x6
- bl Menu_PrintItems
- ldr r0, ._23 + 4 @ gDebug_03000721
- 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 @ gMenuCallback
- ldr r0, ._23 + 12 @ debug_sub_808BF3C
- 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 @ gMenuCallback
- ldr r1, ._37 + 4 @ gUnknown_Debug_083C0D2C
- 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 @ gMenuCallback
- ldr r1, ._51 + 4 @ gUnknown_Debug_083C0D83
- 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 @ gMenuCallback
- ldr r1, ._65 + 4 @ gUnknown_Debug_083C0DD4
- 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 @ gMain
- 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 @ gDebug_0300071E
- 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 @ gDebug_0300071E
- 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 @ gUnknown_Debug_083C0E15
- ldr r0, ._71 + 4 @ gDebug_0300071E
- 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 @ gMain
- ldrh r1, [r4, #0x2e]
- mov r0, #0x40
- and r0, r0, r1
- cmp r0, #0
- beq ._75 @cond_branch
- mov r0, #0x5
- bl PlaySE
- mov r0, #0x1
- neg r0, r0
- bl Menu_MoveCursor
- ldr r1, ._79 + 4 @ gDebug_0300071F
- strb r0, [r1]
-._75:
- ldrh r1, [r4, #0x2e]
- mov r0, #0x80
- and r0, r0, r1
- cmp r0, #0
- beq ._76 @cond_branch
- mov r0, #0x5
- bl PlaySE
- mov r0, #0x1
- bl Menu_MoveCursor
- ldr r1, ._79 + 4 @ gDebug_0300071F
- strb r0, [r1]
-._76:
- ldrh r1, [r4, #0x2e]
- mov r0, #0x1
- and r0, r0, r1
- cmp r0, #0
- beq ._77 @cond_branch
- mov r0, #0x5
- bl PlaySE
- ldr r1, ._79 + 8 @ gUnknown_Debug_083C0E32
- ldr r0, ._79 + 4 @ gDebug_0300071F
- ldrb r0, [r0]
- lsl r0, r0, #0x3
- add r1, r1, #0x4
- add r0, r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- b ._82
-._80:
- .align 2, 0
-._79:
- .word gMain
- .word gDebug_0300071F
- .word gUnknown_Debug_083C0E32
-._77:
- mov r0, #0xa
- and r0, r0, r1
- cmp r0, #0
- bne ._81 @cond_branch
- mov r0, #0x0
- b ._82
-._81:
- bl CloseMenu
- mov r0, #0x1
-._82:
- pop {r4}
- pop {r1}
- bx r1
-
- thumb_func_end debug_sub_808BE2C
-
- thumb_func_start debug_sub_808BEB4
-debug_sub_808BEB4:
- push {r4, lr}
- ldr r4, ._87 @ gMain
- ldrh r1, [r4, #0x2e]
- mov r0, #0x40
- and r0, r0, r1
- cmp r0, #0
- beq ._83 @cond_branch
- mov r0, #0x5
- bl PlaySE
- mov r0, #0x1
- neg r0, r0
- bl Menu_MoveCursor
- ldr r1, ._87 + 4 @ gDebug_03000720
- strb r0, [r1]
-._83:
- ldrh r1, [r4, #0x2e]
- mov r0, #0x80
- and r0, r0, r1
- cmp r0, #0
- beq ._84 @cond_branch
- mov r0, #0x5
- bl PlaySE
- mov r0, #0x1
- bl Menu_MoveCursor
- ldr r1, ._87 + 4 @ gDebug_03000720
- strb r0, [r1]
-._84:
- ldrh r1, [r4, #0x2e]
- mov r0, #0x1
- and r0, r0, r1
- cmp r0, #0
- beq ._85 @cond_branch
- mov r0, #0x5
- bl PlaySE
- ldr r1, ._87 + 8 @ gUnknown_Debug_083C0E7F
- ldr r0, ._87 + 4 @ gDebug_03000720
- ldrb r0, [r0]
- lsl r0, r0, #0x3
- add r1, r1, #0x4
- add r0, r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- b ._90
-._88:
- .align 2, 0
-._87:
- .word gMain
- .word gDebug_03000720
- .word gUnknown_Debug_083C0E7F
-._85:
- mov r0, #0xa
- and r0, r0, r1
- cmp r0, #0
- bne ._89 @cond_branch
- mov r0, #0x0
- b ._90
-._89:
- bl CloseMenu
- mov r0, #0x1
-._90:
- pop {r4}
- pop {r1}
- bx r1
-
- thumb_func_end debug_sub_808BEB4
-
- thumb_func_start debug_sub_808BF3C
-debug_sub_808BF3C:
- push {r4, lr}
- ldr r4, ._95 @ gMain
- ldrh r1, [r4, #0x2e]
- mov r0, #0x40
- and r0, r0, r1
- cmp r0, #0
- beq ._91 @cond_branch
- mov r0, #0x5
- bl PlaySE
- mov r0, #0x1
- neg r0, r0
- bl Menu_MoveCursor
- ldr r1, ._95 + 4 @ gDebug_03000721
- strb r0, [r1]
-._91:
- ldrh r1, [r4, #0x2e]
- mov r0, #0x80
- and r0, r0, r1
- cmp r0, #0
- beq ._92 @cond_branch
- mov r0, #0x5
- bl PlaySE
- mov r0, #0x1
- bl Menu_MoveCursor
- ldr r1, ._95 + 4 @ gDebug_03000721
- strb r0, [r1]
-._92:
- ldrh r1, [r4, #0x2e]
- mov r0, #0x1
- and r0, r0, r1
- cmp r0, #0
- beq ._93 @cond_branch
- mov r0, #0x5
- bl PlaySE
- ldr r1, ._95 + 8 @ gUnknown_Debug_083C0EF1
- ldr r0, ._95 + 4 @ gDebug_03000721
- ldrb r0, [r0]
- lsl r0, r0, #0x3
- add r1, r1, #0x4
- add r0, r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- b ._98
-._96:
- .align 2, 0
-._95:
- .word gMain
- .word gDebug_03000721
- .word gUnknown_Debug_083C0EF1
-._93:
- mov r0, #0xa
- and r0, r0, r1
- cmp r0, #0
- bne ._97 @cond_branch
- mov r0, #0x0
- b ._98
-._97:
- bl CloseMenu
- mov r0, #0x1
-._98:
- pop {r4}
- pop {r1}
- bx r1
-
- thumb_func_end debug_sub_808BF3C
-
- thumb_func_start debug_sub_808BFC4
-debug_sub_808BFC4:
- push {lr}
- 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 @ gUnknown_Debug_083C0F79
- 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 @ gMenuCallback
- ldr r0, ._99 + 8 @ debug_sub_808C064
- 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 @ gUnknown_Debug_083C0FFC
- 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 @ gMenuCallback
- ldr r0, ._101 + 8 @ debug_sub_808C0A8
- 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 @ gMenuCallback
- ldr r0, ._107 + 4 @ gUnknown_Debug_083C0F79
- 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 @ gMenuCallback
- ldr r0, ._113 + 4 @ gUnknown_Debug_083C0FFC
- 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 @ DebugScript_081C1CFE
- 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 @ DebugScript_081C1D07
- 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 @ DebugScript_081C1D1E
- 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 @ DebugScript_081C1D24
- 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 @ DebugScript_081C1D2A
- 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 @ DebugScript_081C1D35
- 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 @ DebugScript_081C1D46
- 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 @ DebugScript_081C221F
- 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 @ DebugScript_081C23E2
- 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 @ DebugScript_081C23E6
- 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 @ DebugScript_081C23F6
- 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 @ DebugScript_081C2482
- 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 @ DebugScript_081C23FD
- 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 @ DebugScript_081C2518
- 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 @ DebugScript_081C2507
- 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 @ gMenuCallback
- ldr r0, ._145 + 4 @ debug_sub_808C280
- 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 @ CB2_ContestPainting
- bl SetMainCallback2
- ldr r1, ._149 + 4 @ gMain
- ldr r0, ._149 + 8 @ debug_sub_808B868
- 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 @ gMenuCallback
- ldr r0, ._151 + 4 @ debug_sub_808C2E4
- 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 @ CB2_ContestPainting
- bl SetMainCallback2
- ldr r1, ._155 + 4 @ gMain
- ldr r0, ._155 + 8 @ debug_sub_808B868
- 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 @ gUnknown_Debug_083C2828
- 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 @ gMenuCallback
- ldr r0, ._157 + 8 @ debug_sub_808C36C
- 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 @ gMenuCallback
- ldr r0, ._163 + 4 @ gUnknown_Debug_083C2828
- 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 @ gUnknown_Debug_083C2938
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._165 + 8 @ gMenuCallback
- ldr r0, ._165 + 12 @ debug_sub_808C6C8
- 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 @ gUnknown_Debug_083C2A48
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._167 + 8 @ gMenuCallback
- ldr r0, ._167 + 12 @ debug_sub_808C6C8
- 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 @ gUnknown_Debug_083C2B4C
- 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 @ gDebug_0300070F
- mov r0, #0x2
- strb r0, [r1]
- ldr r1, ._169 + 8 @ gMenuCallback
- ldr r0, ._169 + 12 @ debug_sub_808C6C8
- 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 @ gUnknown_Debug_083C2C80
- 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 @ gDebug_0300070F
- mov r0, #0x3
- strb r0, [r1]
- ldr r1, ._171 + 8 @ gMenuCallback
- ldr r0, ._171 + 12 @ debug_sub_808C6C8
- 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 @ gUnknown_Debug_083C2D8C
- 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 @ gDebug_0300070F
- mov r0, #0x4
- strb r0, [r1]
- ldr r1, ._173 + 8 @ gMenuCallback
- ldr r0, ._173 + 12 @ debug_sub_808C6C8
- 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 @ gUnknown_Debug_083C2EB0
- 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 @ gDebug_0300070F
- mov r0, #0x5
- strb r0, [r1]
- ldr r1, ._175 + 8 @ gMenuCallback
- ldr r0, ._175 + 12 @ debug_sub_808C6C8
- 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 @ gUnknown_Debug_083C2FE0
- 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 @ gDebug_0300070F
- mov r0, #0x6
- strb r0, [r1]
- ldr r1, ._177 + 8 @ gMenuCallback
- ldr r0, ._177 + 12 @ debug_sub_808C6C8
- 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 @ gUnknown_Debug_083C3100
- 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 @ gDebug_0300070F
- mov r0, #0x7
- strb r0, [r1]
- ldr r1, ._179 + 8 @ gMenuCallback
- ldr r0, ._179 + 12 @ debug_sub_808C6C8
- 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 @ gUnknown_Debug_083C3194
- 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 @ gDebug_0300070F
- mov r0, #0x8
- strb r0, [r1]
- ldr r1, ._181 + 8 @ gMenuCallback
- ldr r0, ._181 + 12 @ debug_sub_808C6C8
- 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 @ gDebug_0300070F
- 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 @ 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 @ gUnknown_Debug_83C31E6
- 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 @ gUnknown_Debug_083C31DC
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._193 @cond_branch
- ldr r0, ._195 + 4 @ gUnknown_Debug_83C31E6
- 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 @ gUnknown_Debug_083C1CE8
- 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 @ gMenuCallback
- ldr r0, ._197 + 8 @ debug_sub_808C818
- 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 @ gMenuCallback
- ldr r0, ._203 + 4 @ gUnknown_Debug_083C1CE8
- 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 @ gUnknown_Debug_083C1E0C
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._205 + 8 @ gMenuCallback
- ldr r0, ._205 + 12 @ debug_sub_808CB74
- 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 @ gUnknown_Debug_083C1F38
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._207 + 8 @ gMenuCallback
- ldr r0, ._207 + 12 @ debug_sub_808CB74
- 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 @ gUnknown_Debug_083C206C
- 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 @ gDebug_0300070F
- mov r0, #0x2
- strb r0, [r1]
- ldr r1, ._209 + 8 @ gMenuCallback
- ldr r0, ._209 + 12 @ debug_sub_808CB74
- 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 @ gUnknown_Debug_083C2190
- 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 @ gDebug_0300070F
- mov r0, #0x3
- strb r0, [r1]
- ldr r1, ._211 + 8 @ gMenuCallback
- ldr r0, ._211 + 12 @ debug_sub_808CB74
- 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 @ gUnknown_Debug_083C2264
- 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 @ gDebug_0300070F
- mov r0, #0x4
- strb r0, [r1]
- ldr r1, ._213 + 8 @ gMenuCallback
- ldr r0, ._213 + 12 @ debug_sub_808CB74
- 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 @ gUnknown_Debug_083C2370
- 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 @ gDebug_0300070F
- mov r0, #0x5
- strb r0, [r1]
- ldr r1, ._215 + 8 @ gMenuCallback
- ldr r0, ._215 + 12 @ debug_sub_808CB74
- 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 @ gUnknown_Debug_083C248C
- 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 @ gDebug_0300070F
- mov r0, #0x6
- strb r0, [r1]
- ldr r1, ._217 + 8 @ gMenuCallback
- ldr r0, ._217 + 12 @ debug_sub_808CB74
- 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 @ gUnknown_Debug_083C259C
- 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 @ gDebug_0300070F
- mov r0, #0x7
- strb r0, [r1]
- ldr r1, ._219 + 8 @ gMenuCallback
- ldr r0, ._219 + 12 @ debug_sub_808CB74
- 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 @ gUnknown_Debug_083C26C8
- 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 @ gDebug_0300070F
- mov r0, #0x8
- strb r0, [r1]
- ldr r1, ._221 + 8 @ gMenuCallback
- ldr r0, ._221 + 12 @ debug_sub_808CB74
- 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 @ gDebug_0300070F
- 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 @ 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 @ gUnknown_Debug_083C271A
- 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 @ gUnknown_Debug_083C2710
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._233 @cond_branch
- ldr r0, ._235 + 4 @ gUnknown_Debug_083C271A
- 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 @ gUnknown_Debug_083C1ADC
- 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 @ gMenuCallback
- ldr r0, ._237 + 8 @ debug_sub_808CCC4
- 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 @ gMenuCallback
- ldr r0, ._243 + 4 @ gUnknown_Debug_083C1ADC
- 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 @ gUnknown_Debug_083C1B7C
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._245 + 8 @ gMenuCallback
- ldr r0, ._245 + 12 @ debug_sub_808CE10
- 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 @ gUnknown_Debug_083C1BF0
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._247 + 8 @ gMenuCallback
- ldr r0, ._247 + 12 @ debug_sub_808CE10
- 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 @ gUnknown_Debug_083C1C2C
- 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 @ gDebug_0300070F
- mov r0, #0x2
- strb r0, [r1]
- ldr r1, ._249 + 8 @ gMenuCallback
- ldr r0, ._249 + 12 @ debug_sub_808CE10
- 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 @ gDebug_0300070F
- 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 @ 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 @ gUnknown_Debug_083C1C38
- 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 @ gUnknown_Debug_083C1C34
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._261 @cond_branch
- ldr r0, ._263 + 4 @ gUnknown_Debug_083C1C38
- 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 @ gUnknown_Debug_083C1330
- 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 @ gMenuCallback
- ldr r0, ._265 + 8 @ debug_sub_808CF60
- 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 @ gMenuCallback
- ldr r0, ._271 + 4 @ gUnknown_Debug_083C1330
- 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 @ gUnknown_Debug_083C13D8
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._273 + 8 @ gMenuCallback
- ldr r0, ._273 + 12 @ debug_sub_808D2BC
- 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 @ gUnknown_Debug_083C1465
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._275 + 8 @ gMenuCallback
- ldr r0, ._275 + 12 @ debug_sub_808D2BC
- 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 @ gUnknown_Debug_083C1503
- 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 @ gDebug_0300070F
- mov r0, #0x2
- strb r0, [r1]
- ldr r1, ._277 + 8 @ gMenuCallback
- ldr r0, ._277 + 12 @ debug_sub_808D2BC
- 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 @ gUnknown_Debug_083C158A
- 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 @ gDebug_0300070F
- mov r0, #0x3
- strb r0, [r1]
- ldr r1, ._279 + 8 @ gMenuCallback
- ldr r0, ._279 + 12 @ debug_sub_808D2BC
- 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 @ gUnknown_Debug_083C1647
- 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 @ gDebug_0300070F
- mov r0, #0x4
- strb r0, [r1]
- ldr r1, ._281 + 8 @ gMenuCallback
- ldr r0, ._281 + 12 @ debug_sub_808D2BC
- 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 @ gUnknown_Debug_083C1712
- 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 @ gDebug_0300070F
- mov r0, #0x5
- strb r0, [r1]
- ldr r1, ._283 + 8 @ gMenuCallback
- ldr r0, ._283 + 12 @ debug_sub_808D2BC
- 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 @ gUnknown_Debug_083C17F8
- 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 @ gDebug_0300070F
- mov r0, #0x6
- strb r0, [r1]
- ldr r1, ._285 + 8 @ gMenuCallback
- ldr r0, ._285 + 12 @ debug_sub_808D2BC
- 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 @ gUnknown_Debug_083C18B8
- 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 @ gDebug_0300070F
- mov r0, #0x7
- strb r0, [r1]
- ldr r1, ._287 + 8 @ gMenuCallback
- ldr r0, ._287 + 12 @ debug_sub_808D2BC
- 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 @ gDebug_0x83C1974
- 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 @ gDebug_0300070F
- mov r0, #0x8
- strb r0, [r1]
- ldr r1, ._289 + 8 @ gMenuCallback
- ldr r0, ._289 + 12 @ debug_sub_808D2BC
- 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 @ gDebug_0300070F
- 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 @ 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 @ gUnknown_Debug_083C19C6
- 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 @ gUnknown_Debug_083C19BC
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._301 @cond_branch
- ldr r0, ._303 + 4 @ gUnknown_Debug_083C19C6
- 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 @ gUnknown_Debug_083C105C
- 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 @ gMenuCallback
- ldr r0, ._305 + 8 @ debug_sub_808D40C
- 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 @ gMenuCallback
- ldr r0, ._311 + 4 @ gUnknown_Debug_083C105C
- 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 @ gUnknown_Debug_083C10BD
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._313 + 8 @ gMenuCallback
- ldr r0, ._313 + 12 @ debug_sub_808D500
- 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 @ gUnknown_Debug_083C1149
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._315 + 8 @ gMenuCallback
- ldr r0, ._315 + 12 @ debug_sub_808D500
- 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 @ gDebug_0300070F
- 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 @ 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 @ gUnknown_Debug_083C1196
- 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 @ gUnknown_Debug_083C1194
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._327 @cond_branch
- ldr r0, ._329 + 4 @ gUnknown_Debug_083C1196
- 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 @ gUnknown_Debug_083C11CC
- 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 @ gMenuCallback
- ldr r0, ._331 + 8 @ debug_sub_808D650
- 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 @ gMenuCallback
- ldr r0, ._337 + 4 @ gUnknown_Debug_083C11CC
- 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 @ gUnknown_Debug_083C1212
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._339 + 8 @ gMenuCallback
- ldr r0, ._339 + 12 @ debug_sub_808D744
- 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 @ gUnknown_Debug_083C1288
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._341 + 8 @ gMenuCallback
- ldr r0, ._341 + 12 @ debug_sub_808D744
- 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 @ gDebug_0300070F
- 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 @ 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 @ gUnknown_Debug_083C12D2
- 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 @ gUnknown_Debug_083C12D0
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._353 @cond_branch
- ldr r0, ._355 + 4 @ gUnknown_Debug_083C12D2
- 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 @ gUnknown_Debug_083C1A78
- 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 @ gMenuCallback
- ldr r0, ._357 + 8 @ debug_sub_808D894
- 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 @ gMenuCallback
- ldr r1, ._363 + 4 @ gUnknown_Debug_083C1A78
- 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 @ gUnknown_Debug_083C1A9C
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._365 + 8 @ gMenuCallback
- ldr r0, ._365 + 12 @ debug_sub_808D930
- 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 @ gDebug_0300070F
- 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 @ 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 @ gUnknown_Debug_083C1AAE
- 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 @ gUnknown_Debug_083C1AAC
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._377 @cond_branch
- ldr r0, ._379 + 4 @ gUnknown_Debug_083C1AAE
- 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 @ gUnknown_Debug_083C103A
- 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 @ gMenuCallback
- ldr r0, ._381 + 8 @ debug_sub_808DA80
- 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 @ gSpecialVar_Result
- 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 @ gMain
- 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 @ 0xffff
-._389:
- ldr r1, ._393 + 4 @ gSpecialVar_Result
- 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 @ gUnknown_Debug_083C3D08
- 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 @ gMenuCallback
- ldr r0, ._395 + 8 @ debug_sub_808DB5C
- 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 @ gMenuCallback
- ldr r0, ._401 + 4 @ gUnknown_Debug_083C3D08
- 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 @ gUnknown_Debug_083C432C
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._403 + 8 @ gMenuCallback
- ldr r0, ._403 + 12 @ debug_sub_808DEB8
- 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 @ gUnknown_Debug_083C436C
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._405 + 8 @ gMenuCallback
- ldr r0, ._405 + 12 @ debug_sub_808DEB8
- 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 @ gUnknown_Debug_083C43B4
- 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 @ gDebug_0300070F
- mov r0, #0x2
- strb r0, [r1]
- ldr r1, ._407 + 8 @ gMenuCallback
- ldr r0, ._407 + 12 @ debug_sub_808DEB8
- 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 @ gUnknown_Debug_083C43FC
- 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 @ gDebug_0300070F
- mov r0, #0x3
- strb r0, [r1]
- ldr r1, ._409 + 8 @ gMenuCallback
- ldr r0, ._409 + 12 @ debug_sub_808DEB8
- 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 @ gUnknown_Debug_083C4444
- 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 @ gDebug_0300070F
- mov r0, #0x4
- strb r0, [r1]
- ldr r1, ._411 + 8 @ gMenuCallback
- ldr r0, ._411 + 12 @ debug_sub_808DEB8
- 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 @ gUnknown_Debug_083C448C
- 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 @ gDebug_0300070F
- mov r0, #0x5
- strb r0, [r1]
- ldr r1, ._413 + 8 @ gMenuCallback
- ldr r0, ._413 + 12 @ debug_sub_808DEB8
- 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 @ gUnknown_Debug_83C44C4
- 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 @ gDebug_0300070F
- mov r0, #0x6
- strb r0, [r1]
- ldr r1, ._415 + 8 @ gMenuCallback
- ldr r0, ._415 + 12 @ debug_sub_808DEB8
- 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 @ gUnknown_Debug_83C44EC
- 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 @ gDebug_0300070F
- mov r0, #0x7
- strb r0, [r1]
- ldr r1, ._417 + 8 @ gMenuCallback
- ldr r0, ._417 + 12 @ debug_sub_808DEB8
- 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 @ gUnknown_Debug_083C4534
- 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 @ gDebug_0300070F
- mov r0, #0x8
- strb r0, [r1]
- ldr r1, ._419 + 8 @ gMenuCallback
- ldr r0, ._419 + 12 @ debug_sub_808DEB8
- 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 @ gDebug_0300070F
- 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 @ gUnknown_Debug_083C457C
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._426 @cond_branch
- ldr r0, ._428 + 4 @ gUnknown_Debug_083C4586
- 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 @ gMain
- 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 @ 0xffff
-._431:
- ldr r1, ._435 + 4 @ gUnknown_Debug_083C4586
- 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 @ gUnknown_Debug_083C377C
- 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 @ gMenuCallback
- ldr r0, ._437 + 8 @ debug_sub_808E010
- 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 @ gMenuCallback
- ldr r0, ._443 + 4 @ gUnknown_Debug_083C377C
- 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 @ gUnknown_Debug_083C3AA0
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._445 + 8 @ gMenuCallback
- ldr r0, ._445 + 12 @ debug_sub_808E264
- 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 @ gUnknown_Debug_83C3AE0
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._447 + 8 @ gMenuCallback
- ldr r0, ._447 + 12 @ debug_sub_808E264
- 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 @ gUnknown_Debug_83C3B28
- 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 @ gDebug_0300070F
- mov r0, #0x2
- strb r0, [r1]
- ldr r1, ._449 + 8 @ gMenuCallback
- ldr r0, ._449 + 12 @ debug_sub_808E264
- 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 @ gUnknown_Debug_83C3B70
- 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 @ gDebug_0300070F
- mov r0, #0x3
- strb r0, [r1]
- ldr r1, ._451 + 8 @ gMenuCallback
- ldr r0, ._451 + 12 @ debug_sub_808E264
- 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 @ gUnknown_Debug_83C3BB8
- 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 @ gDebug_0300070F
- mov r0, #0x4
- strb r0, [r1]
- ldr r1, ._453 + 8 @ gMenuCallback
- ldr r0, ._453 + 12 @ debug_sub_808E264
- 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 @ gUnknown_Debug_83C3C00
- 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 @ gDebug_0300070F
- mov r0, #0x5
- strb r0, [r1]
- ldr r1, ._455 + 8 @ gMenuCallback
- ldr r0, ._455 + 12 @ debug_sub_808E264
- 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 @ gDebug_0300070F
- 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 @ gUnknown_Debug_083C3C48
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._462 @cond_branch
- ldr r0, ._464 + 4 @ gUnknown_Debug_83C3C4E
- 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 @ gMain
- 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 @ 0xffff
-._467:
- ldr r1, ._471 + 4 @ gUnknown_Debug_83C3C4E
- 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 @ gUnknown_Debug_083C32AC
- 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 @ gMenuCallback
- ldr r0, ._473 + 8 @ debug_sub_808E3BC
- 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 @ gMenuCallback
- ldr r0, ._479 + 4 @ gUnknown_Debug_083C32AC
- 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 @ gUnknown_Debug_083C347C
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._481 + 8 @ gMenuCallback
- ldr r0, ._481 + 12 @ debug_sub_808E5B8
- 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 @ gUnknown_Debug_083C3494
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._483 + 8 @ gMenuCallback
- ldr r0, ._483 + 12 @ debug_sub_808E5B8
- 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 @ gUnknown_Debug_083C34A4
- 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 @ gDebug_0300070F
- mov r0, #0x2
- strb r0, [r1]
- ldr r1, ._485 + 8 @ gMenuCallback
- ldr r0, ._485 + 12 @ debug_sub_808E5B8
- 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 @ gUnknown_Debug_083C34D4
- 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 @ gDebug_0300070F
- mov r0, #0x3
- strb r0, [r1]
- ldr r1, ._487 + 8 @ gMenuCallback
- ldr r0, ._487 + 12 @ debug_sub_808E5B8
- 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 @ gUnknown_Debug_083C351C
- 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 @ gDebug_0300070F
- mov r0, #0x4
- strb r0, [r1]
- ldr r1, ._489 + 8 @ gMenuCallback
- ldr r0, ._489 + 12 @ debug_sub_808E5B8
- 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 @ gDebug_0300070F
- 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 @ gMain
- 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 @ 0xffff
-._497:
- ldr r1, ._501 + 4 @ gUnknown_Debug_083C354A
- 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 @ gUnknown_Debug_083C3544
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._503 @cond_branch
- ldr r0, ._505 + 4 @ gUnknown_Debug_083C354A
- 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 @ gUnknown_Debug_083C4644
- 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 @ gMenuCallback
- ldr r0, ._507 + 8 @ debug_sub_808E710
- 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 @ gMenuCallback
- ldr r0, ._513 + 4 @ gUnknown_Debug_083C4644
- 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 @ gUnknown_Debug_083C470C
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._515 + 8 @ gMenuCallback
- ldr r0, ._515 + 12 @ debug_sub_808E804
- 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 @ gUnknown_Debug_083C4754C
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._517 + 8 @ gMenuCallback
- ldr r0, ._517 + 12 @ debug_sub_808E804
- 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 @ gDebug_0300070F
- 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 @ gMain
- 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 @ 0xffff
-._525:
- ldr r1, ._529 + 4 @ gUnknown_Debug_083C478E
- 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 @ gUnknown_Debug_083C478C
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._531 @cond_branch
- ldr r0, ._533 + 4 @ gUnknown_Debug_083C478E
- 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 @ gUnknown_Debug_083C35C4
- 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 @ gMenuCallback
- ldr r0, ._535 + 8 @ debug_sub_808E95C
- 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 @ gMenuCallback
- ldr r0, ._541 + 4 @ gUnknown_Debug_083C35C4
- 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 @ gUnknown_Debug_083C369C
- 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 @ gDebug_0300070F
- strb r4, [r0]
- ldr r1, ._543 + 8 @ gMenuCallback
- ldr r0, ._543 + 12 @ debug_sub_808EA50
- 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 @ gUnknown_Debug_083C36E4
- 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 @ gDebug_0300070F
- mov r0, #0x1
- strb r0, [r1]
- ldr r1, ._545 + 8 @ gMenuCallback
- ldr r0, ._545 + 12 @ debug_sub_808EA50
- 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 @ gDebug_0300070F
- 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 @ gUnknown_Debug_083C371C
- add r0, r1, r0
- ldrb r2, [r0]
- cmp r5, r2
- bcs ._552 @cond_branch
- ldr r0, ._554 + 4 @ gUnknown_Debug_083C371E
- 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 @ gMain
- 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 @ 0xffff
-._557:
- ldr r1, ._561 + 4 @ gUnknown_Debug_083C371E
- 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 @ gUnknown_Debug_083C47B2
- mov r1, #0x1
- mov r2, #0x1
- bl Menu_PrintText
- ldr r3, ._563 + 4 @ gUnknown_Debug_083C47F0
- 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 @ gMenuCallback
- ldr r0, ._563 + 12 @ debug_sub_808EC10
- 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 @ gUnknown_Debug_083C4830
- mov r1, #0x1
- mov r2, #0x1
- bl Menu_PrintText
- ldr r3, ._565 + 4 @ gUnknown_Debug_083C4888
- 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 @ gMenuCallback
- ldr r0, ._565 + 12 @ debug_sub_808EC5C
- 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 @ gSaveBlock1
- lsl r0, r2, #0x18
- asr r0, r0, #0x18
- ldr r2, ._570 + 4 @ 0x13c8
- 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 @ 0x40a7
- 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 @ gMenuCallback
- ldr r0, ._577 + 4 @ debug_sub_808ECD0
- 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 @ CB2_ContestPainting
- bl SetMainCallback2
- ldr r1, ._581 + 4 @ gMain
- ldr r0, ._581 + 8 @ debug_sub_808B868
- 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 @ gMain
- ldrh r1, [r2, #0x30]
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._584 @cond_branch
- ldr r1, ._590 + 4 @ gDebug_03000700
- 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 @ gDebug_03000700
- ldrh r1, [r3]
- ldr r0, ._590 + 8 @ 0x19b
- 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 @ gDebug_03000700
- 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 @ gDebug_03000700
- ldrh r1, [r2]
- ldr r0, ._595 + 4 @ 0x191
- 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 @ 0x19b
- 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 @ gMain
- ldrh r1, [r2, #0x30]
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._600 @cond_branch
- ldr r1, ._606 + 4 @ gDebug_03000708
- 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 @ gDebug_03000708
- 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 @ gDebug_03000708
- 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 @ gDebug_03000708
- 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 @ gDebug_03000708
- 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 @ gMain
- ldrh r1, [r2, #0x30]
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._617 @cond_branch
- ldr r1, ._622 + 4 @ gDebug_0300070C
- 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 @ gDebug_0300070C
- 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 @ gDebug_0300070C
- 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 @ gDebug_0300070C
- 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 @ gMain
- ldrh r1, [r2, #0x30]
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._625 @cond_branch
- ldr r1, ._631 + 4 @ gDebug_0300070D
- 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 @ gDebug_0300070D
- 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 @ gDebug_0300070D
- 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 @ gDebug_0300070D
- 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 @ gMain
- ldrh r1, [r2, #0x30]
- mov r0, #0x20
- and r0, r0, r1
- cmp r0, #0
- beq ._639 @cond_branch
- ldr r1, ._645 + 4 @ gDebug_0300070E
- 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 @ gDebug_0300070E
- 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 @ gDebug_0300070E
- 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 @ gDebug_0300070E
- 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 @ gDebug_03000708
- mov r8, r0
- ldr r4, ._656 + 4 @ gDebug_03000710
- 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 @ gDebug_03000710
- mov r1, #0xff
- strb r1, [r0, #0x8]
- mov r1, #0xc
- mov r2, #0x5
- bl Menu_PrintText
-._653:
- mov r3, #0x0
- 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
-._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 @ gDebug_03000710
- 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 @ gDebug_03000710
- mov r1, #0xc
- mov r2, #0x1
- bl Menu_PrintText
-._665:
- ldr r5, ._672 @ gDebug_03000710
- mov r0, #0xff
- strb r0, [r5, #0x3]
- ldr r4, ._672 + 4 @ gDebug_03000700
- 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 @ gDebug_0300070C
- b ._676
-._678:
- .align 2, 0
-._677:
- .word gDebug_0300070C
-._668:
- ldr r4, ._680 @ gDebug_0300070D
-._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 @ gDebug_0300070E
- 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 @ 0x2015de0
- ldr r0, ._686 + 4 @ gDebug_03000700
- ldrh r0, [r0]
- strh r0, [r4, #0x8]
- ldr r0, ._686 + 8 @ gDebug_03000704
- ldr r0, [r0]
- str r0, [r4, #0x4]
- ldr r0, ._686 + 12 @ gDebug_03000708
- 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 @ 0x2000000
- ldr r2, ._696 + 4 @ 0x15ddf
- add r1, r0, r2
- mov r2, #0x0
- strb r2, [r1]
- ldr r1, ._696 + 8 @ 0x15dde
- add r0, r0, r1
- strb r2, [r0]
- 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 @ gUnknown_Debug_083C48BB
- 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 @ 0x2000000
- ldr r0, ._699 + 4 @ 0x15ddf
- add r2, r1, r0
- mov r0, #0x0
- strb r0, [r2]
- ldr r2, ._699 + 8 @ 0x15dde
- add r1, r1, r2
- mov r0, #0x8
- strb r0, [r1]
- ldr r0, ._699 + 12 @ gDebug_0300070D
- 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 @ 0x2000000
- ldr r0, ._702 + 4 @ 0x15ddf
- add r2, r1, r0
- mov r0, #0x1
- strb r0, [r2]
- ldr r2, ._702 + 8 @ 0x15dde
- add r1, r1, r2
- mov r0, #0x8
- strb r0, [r1]
- ldr r0, ._702 + 12 @ gDebug_0300070E
- 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 @ 0x2000000
- ldr r2, ._705 + 4 @ 0x15ddf
- add r0, r1, r2
- mov r2, #0x0
- strb r2, [r0]
- ldr r0, ._705 + 8 @ 0x15dde
- 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 @ 0x2000000
- ldr r0, ._708 + 4 @ 0x15ddf
- add r2, r1, r0
- mov r0, #0x0
- strb r0, [r2]
- ldr r2, ._708 + 8 @ 0x15dde
- 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 @ gUnknown_Debug_083C48B0
- bl StringCopy
- b ._707
-._709:
- .align 2, 0
-._708:
- .word 0x2000000
- .word 0x15ddf
- .word 0x15dde
- .word gUnknown_Debug_083C48B0
-._694:
- ldr r1, ._710 @ 0x2000000
- ldr r0, ._710 + 4 @ 0x15ddf
- add r2, r1, r0
- mov r0, #0x0
- strb r0, [r2]
- ldr r2, ._710 + 8 @ 0x15dde
- 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 @ gUnknown_Debug_083C48B0
- 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 @ gDebug_03000710
- mov r0, #0xa1
- b ._713
-._715:
- .align 2, 0
-._714:
- .word gDebug_03000710
-._712:
- ldr r1, ._716 @ gDebug_03000710
- 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 @ gDebug_03000710
- ldr r6, ._718 + 4 @ 0x2710
- 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
deleted file mode 100644
index aa156a99b..000000000
--- a/asm/unk_debug_menu_3.s
+++ /dev/null
@@ -1,747 +0,0 @@
-.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 @ gUnknown_Debug_845DDB2
- ldr r4, ._1 + 4 @ gUnknown_Debug_845DAE1
- 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 @ gUnknown_Debug_845E402
- ldr r4, ._3 + 4 @ gUnknown_Debug_845E3E0
- 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 @ gUnknown_Debug_845E443
- ldr r4, ._5 + 4 @ gUnknown_Debug_845E422
- 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 @ gUnknown_Debug_845E422
- ldr r4, ._7 + 4 @ gUnknown_Debug_845E402
- 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 @ gUnknown_Debug_845E619
- ldr r1, ._9 + 4 @ gUnknown_Debug_845E606
- 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 @ gUnknown_Debug_845E712
- ldr r4, ._11 + 4 @ gUnknown_Debug_845E619
- 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 @ gUnknown_Debug_845E797
- ldr r4, ._13 + 4 @ gUnknown_Debug_845E712
- 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 @ 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 @ gUnknown_Debug_845E7B5
- 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 @ 0x121
- 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 @ 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 @ gUnknown_Debug_845E306
- sub r5, r0, r1
- ldr r0, ._23 + 16 @ Str_842E23C
- mov r1, #0x0
- mov r2, #0x0
- bl debug_sub_80C2C18
- mov r2, #0x0
- ldr r3, ._23 + 20 @ 0xfff
- 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 @ gUnknown_Debug_845DDB2
-._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 @ 0x52f
-._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 @ gUnknown_Debug_845DDB2
- 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 @ 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 @ Str_842E240
- mov r0, r8
- mov r1, #0x7
- bl SetMonData
- ldr r2, ._25 + 8 @ Str_842E248
- 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 @ gUnknown_Debug_845E443
- mov r8, r0
- ldr r1, ._29 + 4 @ gUnknown_Debug_845E4EF
- ldr r5, ._29 + 8 @ gEnemyParty
- 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 @ Str_842E238
- 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 @ 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 @ gUnknown_Debug_845E4CB
- 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 @ 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
- 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 @ gUnknown_Debug_845E467
- add r0, r6, r0
- sub r0, r0, r5
- add r1, r4, #0
- mov r2, #0x64
- bl memcpy
- ldr r0, ._31 + 16 @ gUnknown_Debug_845E4CB
- 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 @ 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
- 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 @ gUnknown_Debug_845E467
- add r0, r6, r0
- sub r0, r0, r5
- add r1, r4, #0
- mov r2, #0x64
- bl memcpy
- ldr r0, ._33 + 16 @ gUnknown_Debug_845E4CB
- 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 @ gPlayerParty
- 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 @ 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 @ Str_842E253
- ldr r2, ._37 + 12 @ 0x270f
- mov r0, sp
- bl debug_sub_8075DB4
- bl LoadPlayerParty
- ldr r0, ._37 + 16 @ gUnknown_Debug_845E506
- 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
deleted file mode 100644
index 892c2262d..000000000
--- a/asm/watanabe_debug_menu.s
+++ /dev/null
@@ -1,9578 +0,0 @@
-.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 @ 0x40000d4
- mov r5, #0x80
- lsl r5, r5, #0x5
- ldr r7, ._2 + 4 @ 0x81000800
- 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 @ 0x40000d4
- 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 @ stru_83F8828
- bl LoadSpriteSheet
- ldr r0, ._2 + 12 @ stru_83F8838
- bl LoadSpritePalette
- ldr r0, ._2 + 16 @ gWindowTemplate_81E6C3C
- bl Text_LoadWindowTemplate
- ldr r0, ._2 + 20 @ gWindowTemplate_81E6CE4
- 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 @ gPaletteFade
- ldrb r1, [r0, #0x7]
- mov r0, #0x80
- and r0, r0, r1
- cmp r0, #0
- bne ._4 @cond_branch
- ldr r0, ._6 + 4 @ debug_80C36F4
- 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 @ sub_80546F0
- 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 @ gSpeciesNames
- 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 @ 0x19b
- 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 @ gUnknown_Debug_083F7FD4
- 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 @ gUnknown_Debug_083F7FD6
- 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 @ gMain
- ldr r1, ._46 + 4 @ 0x43c
- 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 @ sub_80546F0
- 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 @ gReservedSpritePaletteCount
- mov r0, #0x1
- strb r0, [r1]
- ldr r0, ._54 + 4 @ gUnknown_Debug_20389EC
- mov r1, #0x80
- lsl r1, r1, #0x1
- mov r2, #0x20
- bl LoadPalette
- ldr r3, ._54 + 8 @ 0x4000208
- ldrh r2, [r3]
- mov r0, #0x0
- strh r0, [r3]
- ldr r4, ._54 + 12 @ 0x4000200
- 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 @ debug_80C3758
- bl SetVBlankCallback
- ldr r0, ._54 + 20 @ debug_80C370C
- 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 @ debug_80C3A50
- mov r1, #0x0
- bl CreateTask
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- ldr r2, ._54 + 28 @ gTasks
- 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 @ gTasks
- 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 @ gSaveBlock2
- 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 @ gUnknown_Debug_083F7FD6
- add r0, r5, #0
- mov r1, #0x1
- mov r2, #0x1
- bl Menu_PrintText
- ldr r4, ._56 + 12 @ gUnknown_Debug_083F7FDE
- 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 @ gUnknown_Debug_083F7FE2
- mov r1, #0x1
- mov r2, #0xb
- bl Menu_PrintText
- ldr r0, ._56 + 20 @ gUnknown_Debug_083F7FED
- mov r1, #0x1
- mov r2, #0xd
- bl Menu_PrintText
- ldr r0, ._56 + 24 @ gUnknown_Debug_083F7FF6
- mov r1, #0x1
- mov r2, #0xf
- bl Menu_PrintText
- ldr r0, ._56 + 28 @ gUnknown_Debug_083F8001
- 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 @ gUnknown_Debug_083F800C
- mov r1, #0xd
- mov r2, #0xb
- bl Menu_PrintText
- ldr r0, ._56 + 36 @ gUnknown_Debug_083F8019
- 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 @ gUnknown_Debug_083F8022
- mov r1, #0xd
- mov r2, #0x11
- bl Menu_PrintText
- ldr r0, ._56 + 44 @ gUnknown_Debug_083F8028
- 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 @ gSprites
- 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 @ gPokedexEntries
- 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 @ gSprites
- 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 @ 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 @ 0x4000040
- 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 @ 0x4000044
- ldr r2, ._56 + 72 @ 0x848
- add r0, r2, #0
- strh r0, [r1]
- sub r1, r1, #0x2
- ldr r3, ._56 + 76 @ 0x31bf
- add r0, r3, #0
- strh r0, [r1]
- add r1, r1, #0x4
- 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 @ 0x4000052
- 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 @ debug_80C3D2C
- 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 @ gMain
- 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 @ debug_80C370C
- bl SetMainCallback2
- 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 @ debug_80C373C
- 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 @ gTasks
- 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 @ gTasks
- 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 @ gTasks
- 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 @ gTasks
- 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 @ gTasks
- 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 @ gTasks
- 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 @ 0x181
- 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 @ gTasks
- 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 @ gSprites
- 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 @ debug_80C3A50
- str r0, [r4]
- b ._117
-._119:
- .align 2, 0
-._118:
- .word gSprites
- .word debug_80C3A50+1
-._112:
- ldr r0, ._120 @ gTasks
- 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 @ gSprites
- 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 @ 0x4000040
- 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 @ gSpeciesNames
- 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 @ gEnemyParty
- 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 @ gPlayerParty
- 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 @ gUnknown_Debug_2038A0C
- ldr r0, ._138 + 4 @ gSaveBlock2
- 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 @ byte_3005E30
- str r0, [r1]
- bl ZeroPlayerPartyMons
- bl ZeroEnemyPartyMons
- mov r0, #0x0
- bl debug_80C4214
- ldr r0, ._138 + 12 @ debug_80C47BC
- 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 @ gUnknown_Debug_2038A0C
- 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 @ debug_80C47BC
- 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 @ debug_80C42B8
- 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 @ debug_80C42B8
- 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 @ 0x4000040
- mov r4, #0x0
- strh r4, [r6]
- ldr r5, ._146 + 4 @ 0x4000044
- strh r4, [r5]
- ldr r0, ._146 + 8 @ 0x4000042
- strh r4, [r0]
- add r0, r0, #0x4
- strh r4, [r0]
- ldr r1, ._146 + 12 @ 0x4000048
- ldr r2, ._146 + 16 @ 0x1111
- 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 @ 0x4000052
- strh r4, [r0]
- add r1, r1, #0x4
- mov r0, #0x7
- strh r0, [r1]
- ldr r3, ._146 + 24 @ 0x4000208
- ldrh r2, [r3]
- strh r4, [r3]
- 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 @ debug_80C3758
- bl SetVBlankCallback
- ldr r0, ._146 + 36 @ debug_80C370C
- bl SetMainCallback2
- mov r1, #0x80
- lsl r1, r1, #0x13
- ldr r2, ._146 + 40 @ 0x7140
- add r0, r2, #0
- strh r0, [r1]
- ldr r1, ._146 + 44 @ 0x1ef
- add r0, r1, #0
- strh r0, [r6]
- ldr r2, ._146 + 48 @ 0x819f
- 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 @ gUnknown_Debug_083F8194
- mov r0, sp
- mov r2, #0xc
- bl memcpy
- add r4, sp, #0xc
- ldr r1, ._150 + 4 @ gUnknown_Debug_083F81A0
- 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 @ gUnknown_Debug_2038A0C
- ldrb r0, [r0]
- cmp r0, #0
- beq ._148 @cond_branch
- 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 @ debug_80C44EC
- 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 @ gTasks
- lsl r1, r5, #0x2
- add r1, r1, r5
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._152 + 4 @ debug_80C4348
-._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 @ gUnknown_Debug_2038A0C
- 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 @ 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._154 + 16 @ debug_80C43A8
- 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 @ gMain
- 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 @ gUnknown_Debug_2038A0C
- ldrb r1, [r0, #0x1]
- mov r0, #0x64
- mul r0, r0, r1
- ldr r1, ._158 + 8 @ gPlayerParty
- add r0, r0, r1
- ldr r1, ._158 + 12 @ debug_80C41D4
- 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 @ gTasks
- lsl r1, r4, #0x2
- add r1, r1, r4
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._162 + 4 @ debug_80C4F48
- 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 @ gTasks
- lsl r1, r4, #0x2
- add r1, r1, r4
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._167 + 4 @ debug_80C4D14
- 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 @ gTasks
- lsl r1, r4, #0x2
- add r1, r1, r4
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._171 + 4 @ debug_80C44EC
- 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 @ gUnknown_Debug_2038A0C
- 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 @ 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 @ gPlayerParty
- 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._181 + 12 @ debug_80C4348
- 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 @ gUnknown_Debug_2038A0C
- 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 @ 0x4000042
- ldr r2, ._183 + 8 @ 0x79ef
- add r0, r2, #0
- strh r0, [r1]
- add r1, r1, #0x4
- ldr r2, ._183 + 12 @ 0x17f
- add r0, r2, #0
- strh r0, [r1]
- 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 @ debug_80C4550
- 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 @ gMain
- 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 @ gUnknown_Debug_2038A0C
- ldrb r1, [r0, #0x2]
- mov r0, #0x64
- mul r0, r0, r1
- ldr r1, ._187 + 8 @ gEnemyParty
- add r0, r0, r1
- ldr r1, ._187 + 12 @ debug_80C41F4
- 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 @ gTasks
- lsl r1, r4, #0x2
- add r1, r1, r4
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._191 + 4 @ debug_80C4F48
- 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 @ gTasks
- lsl r1, r4, #0x2
- add r1, r1, r4
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._196 + 4 @ debug_80C4D14
- 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 @ gTasks
- lsl r1, r4, #0x2
- add r1, r1, r4
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._200 + 4 @ debug_80C4348
- 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 @ gUnknown_Debug_2038A0C
- 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 @ 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 @ gEnemyParty
- 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._210 + 12 @ debug_80C44EC
- 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 @ gUnknown_Debug_083F81AD
- 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 @ gPlayerParty
- 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 @ gUnknown_Debug_083F81BA
- 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 @ gEnemyParty
- 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 @ gUnknown_Debug_2038A0C
- 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 @ gPlayerParty
- add r0, r4, r0
- mov r1, #0xb
- bl GetMonData
- cmp r0, #0
- beq ._219 @cond_branch
- ldr r0, ._221 + 8 @ gEnemyParty
- 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 @ gUnknown_Debug_083F81C7
- mov r0, sp
- mov r2, #0xf
- bl memcpy
- add r4, sp, #0x10
- ldr r1, ._224 + 4 @ gUnknown_Debug_083F81A0
- add r0, r4, #0
- mov r2, #0xd
- bl memcpy
- add r6, sp, #0x20
- ldr r1, ._224 + 8 @ gUnknown_Debug_083F81D6
- add r0, r6, #0
- mov r2, #0xf
- bl memcpy
- add r5, sp, #0x30
- ldr r1, ._224 + 12 @ gUnknown_Debug_083F81E5
- 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 @ gUnknown_Debug_083F8068
-._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 @ gUnknown_Debug_2038A0C
- ldrb r0, [r0, #0x4]
- bl debug_80C4C44
- 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 @ debug_80C48A0
- 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 @ gUnknown_Debug_2038A0C
- 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 @ 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._226 + 16 @ debug_80C4900
- 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 @ gMain
- 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 @ debug_80C370C
- bl SetMainCallback2
- bl LoadPlayerParty
- ldr r1, ._230 + 8 @ gSaveBlock2
- ldr r0, ._230 + 12 @ gUnknown_Debug_2038A0C
- ldrb r0, [r0, #0xd]
- strb r0, [r1, #0x8]
- ldr r0, ._230 + 16 @ gBattleTypeFlags
- mov r1, #0x0
- strh r4, [r0]
- ldr r0, ._230 + 20 @ gUnknown_02023A14_50
- strb r1, [r0]
- 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 @ debug_80C373C
- 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 @ 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 @ gUnknown_02023A14_50
- 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 @ gTasks
- lsl r1, r5, #0x2
- add r1, r1, r5
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._236 + 20 @ debug_80C4A60
- 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 @ gTasks
- lsl r1, r5, #0x2
- add r1, r1, r5
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._239 + 4 @ debug_80C4F48
- 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 @ gUnknown_Debug_2038A0C
- 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 @ 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 @ gTasks
- lsl r0, r5, #0x2
- add r0, r0, r5
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._248 + 8 @ debug_80C48A0
-._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 @ gUnknown_Debug_2038A0C
- 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 @ 0x4000042
- ldr r2, ._250 + 8 @ 0x79ef
- add r0, r2, #0
- strh r0, [r1]
- add r1, r1, #0x4
- ldr r2, ._250 + 12 @ 0x17f
- add r0, r2, #0
- strh r0, [r1]
- 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 @ debug_80C4AC4
- 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 @ gUnknown_Debug_2038A0C
- 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 @ gMain
- 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 @ gUnknown_Debug_083F80D8
- lsl r1, r1, #0x3
- add r0, r0, #0x4
- add r1, r1, r0
- ldr r1, [r1]
- 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 @ 0xffff
- 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 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._258 + 4 @ debug_80C4A60
- 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 @ gTasks
- lsl r1, r6, #0x2
- add r1, r1, r6
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._262 + 4 @ debug_80C48A0
- 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 @ gTrainerBattleOpponent
- mov r2, #0x80
- lsl r2, r2, #0x3
- add r0, r2, #0
- strh r0, [r1]
- ldr r1, ._266 + 4 @ 0x2017000
- 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 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._266 + 12 @ debug_80C4F48
- 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 @ gTasks
- lsl r1, r6, #0x2
- add r1, r1, r6
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._278 + 4 @ debug_80C4A60
-._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 @ gUnknown_Debug_083F80D8
- lsl r0, r4, #0x3
- add r0, r0, r1
- ldr r0, [r0]
- ldrb r0, [r0]
- ldr r7, ._288 + 4 @ byte_3005E30
- 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 @ gUnknown_Debug_083F81C7
- mov r0, sp
- mov r2, #0xf
- bl memcpy
- add r5, sp, #0x10
- ldr r1, ._291 + 4 @ gUnknown_Debug_083F81F5
- add r0, r5, #0
- mov r2, #0xd
- bl memcpy
- add r6, sp, #0x20
- ldr r1, ._291 + 8 @ gUnknown_Debug_083F8202
- 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 @ gUnknown_Debug_2038A0C
- 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._291 + 20 @ debug_80C4DB8
- 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 @ gUnknown_Debug_2038A0C
- 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 @ 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._293 + 16 @ debug_80C4E18
- 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 @ 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 @ gMain
- ldrh r1, [r7, #0x2e]
- mov r0, #0x2
- and r0, r0, r1
- cmp r0, #0
- beq ._295 @cond_branch
- 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 @ debug_80C42B8
- 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 @ 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._302 + 12 @ debug_80C5158
- 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 @ gTasks
- lsl r1, r4, #0x2
- add r1, r1, r4
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._314 + 4 @ debug_80C4DB8
-._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 @ gUnknown_Debug_083F814C
-._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 @ gUnknown_Debug_083F8211
- mov r0, sp
- mov r2, #0x11
- bl memcpy
- add r6, sp, #0x14
- ldr r1, ._320 + 4 @ gUnknown_Debug_083F81A0
- add r0, r6, #0
- mov r2, #0xd
- bl memcpy
- add r5, sp, #0x24
- 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 @ gUnknown_Debug_083F822F
- mov r2, #0x4
- bl memcpy
- add r0, sp, #0x38
- mov r8, r0
- ldr r1, ._320 + 16 @ gUnknown_Debug_083F8233
- 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._320 + 24 @ debug_80C5038
- 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 @ gUnknown_Debug_2038A0C
- 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 @ 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._322 + 16 @ debug_80C5098
- 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 @ 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 @ gTasks
- lsl r1, r4, #0x2
- add r1, r1, r4
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._326 + 8 @ debug_80C47BC
- 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 @ gSaveBlock2
- ldr r0, ._331 + 4 @ gUnknown_Debug_2038A0C
- ldrb r0, [r0, #0x8]
- strb r0, [r1, #0x8]
- 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 @ debug_80C42B8
- 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 @ gUnknown_Debug_2038A0C
- 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 @ 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._340 + 8 @ debug_80C5038
-._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 @ gTasks
- lsl r1, r0, #0x2
- add r1, r1, r0
- lsl r1, r1, #0x3
- add r1, r1, r2
- ldr r0, ._342 + 4 @ debug_80C5174
- 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 @ gTasks
- lsl r1, r0, #0x2
- add r1, r1, r0
- lsl r1, r1, #0x3
- add r1, r1, r2
- ldr r0, ._344 + 4 @ debug_80C5190
- 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 @ gTasks
- lsl r1, r0, #0x2
- add r1, r1, r0
- lsl r1, r1, #0x3
- add r1, r1, r2
- ldr r0, ._346 + 4 @ debug_80C51AC
- 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 @ gTasks
- lsl r1, r0, #0x2
- add r1, r1, r0
- lsl r1, r1, #0x3
- add r1, r1, r2
- ldr r0, ._348 + 4 @ debug_80C51C8
- 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 @ gTasks
- lsl r1, r0, #0x2
- add r1, r1, r0
- lsl r1, r1, #0x3
- add r1, r1, r2
- ldr r0, ._350 + 4 @ debug_80C51E4
- 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 @ gMain
- ldr r1, ._352 + 4 @ debug_80C41A8
- str r1, [r0, #0x8]
- ldr r0, ._352 + 8 @ unref_sub_800D684
- 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 @ gUnknown_Debug_2038A1C
- ldr r0, ._355 + 4 @ 0x2018000
- str r0, [r1]
- mov r3, #0x0
- add r6, r1, #0
- ldr r4, ._355 + 8 @ gSaveBlock2
- 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 @ gPlayerPartyCount
-._361:
- mov r0, #0x64
- add r1, r5, #0
- mul r1, r1, r0
- ldr r0, ._359 + 4 @ gPlayerParty
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_083F8733
- 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 @ 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 @ 0x4000208
- ldrh r2, [r3]
- strh r4, [r3]
- 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 @ 0x4000004
- ldrh r0, [r2]
- mov r1, #0x8
- orr r0, r0, r1
- strh r0, [r2]
- ldr r0, ._364 + 20 @ debug_80C3758
- bl SetVBlankCallback
- ldr r0, ._364 + 24 @ debug_80C370C
- 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 @ debug_80C53A4
- mov r1, #0x0
- bl CreateTask
- bl debug_80C5208
- 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 @ 0x169
- 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 @ gTasks
- lsl r1, r0, #0x2
- add r1, r1, r0
- lsl r1, r1, #0x3
- add r1, r1, r2
- ldr r0, ._366 + 4 @ debug_80C53C0
- 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 @ gTasks
- lsl r0, r4, #0x2
- add r0, r0, r4
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._368 + 4 @ debug_80C53F0
- 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 @ 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 @ gUnknown_Debug_2038A1C
- ldr r3, [r0]
- mov r0, #0xb2
- lsl r0, r0, #0x1
- add r2, r3, r0
- 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 @ 0x169
- 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 @ gTasks
- lsl r0, r5, #0x2
- add r0, r0, r5
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._372 + 20 @ debug_80C55E4
- 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 @ debug_80C370C
- bl SetMainCallback2
- 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 @ debug_80C373C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_083F872A
- 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 @ gUnknown_Debug_083F8720
- mov r1, #0x4
- mov r2, #0x9
- bl Menu_PrintText
-._380:
- 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 @ debug_80C5708
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ 0x169
- 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 @ gUnknown_Debug_2038A1C
- 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 @ 0x169
- add r0, r0, r6
- strb r1, [r0]
-._396:
- 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 @ debug_80C53C0
-._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 @ gUnknown_Debug_083F8698
- ldr r2, ._405 + 4 @ gUnknown_Debug_2038A1C
- 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 @ 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 @ gMain
- 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 @ gTasks
- lsl r1, r3, #0x2
- add r1, r1, r3
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._405 + 20 @ debug_80C53C0
- 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 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._409 + 4 @ debug_80C53C0
- 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 @ gUnknown_Debug_083F8554
- 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 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x1
- and r0, r0, r1
- cmp r0, #0
- beq ._423 @cond_branch
- 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 @ debug_80C53C0
- 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 @ gUnknown_Debug_083F850A
- mov r2, #0x7
- bl debug_80C689C
- add r0, r6, #7
- ldr r7, ._428 + 4 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_083F8514
- 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 @ gUnknown_Debug_083F851C
- 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 @ 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_083F852D
- 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 @ gUnknown_Debug_083F8537
- 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 @ gUnknown_Debug_083F8554
- 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 @ gUnknown_Debug_083F8554
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gSpeciesNames
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_083F8546
- b ._488
-._487:
- .align 2, 0
-._486:
- .word gUnknown_Debug_083F8546
-._479:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r1, ._489 @ gUnknown_Debug_083F8541
- b ._488
-._490:
- .align 2, 0
-._489:
- .word gUnknown_Debug_083F8541
-._481:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r1, ._492 @ gUnknown_Debug_083F8544
-._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 @ gUnknown_Debug_2038A1C
- 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 @ gMoveNames
- 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 @ gUnknown_Debug_2038A1C
- 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_GetName
- 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 @ gUnknown_Debug_083F8541
-._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 @ gUnknown_Debug_2038A1C
- 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 @ gAbilityNames
- 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 @ gUnknown_Debug_083F86E8
- ldr r1, ._508 + 4 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_083F854A
- 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 @ gUnknown_Debug_083F854D
-._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 @ gNatureNames
- ldr r1, ._520 + 4 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gExperienceTables
- lsl r2, r6, #0x2
- ldr r3, ._560 + 8 @ gBaseStats
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_083F8758
- add r0, sp, #0x10
- mov r2, #0x4
- bl memcpy
- add r7, sp, #0x14
- ldr r1, ._578 + 4 @ gUnknown_Debug_083F875C
- add r0, r7, #0
- mov r2, #0x8
- bl memcpy
- ldr r5, ._578 + 8 @ gUnknown_Debug_2038A1C
- 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 @ gUnknown_Debug_083F86E8
- 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 @ gUnknown_Debug_083F7FD4
- mov r0, sp
- mov r2, #0x2
- bl memcpy
- add r5, sp, #0x4
- ldr r1, ._584 + 4 @ gUnknown_Debug_083F8764
- 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 @ gUnknown_Debug_2038A1C
- ldr r0, [r0]
- ldr r1, ._589 + 4 @ 0x169
- add r0, r0, r1
- b ._588
-._590:
- .align 2, 0
-._589:
- .word gUnknown_Debug_2038A1C
- .word 0x169
-._580:
- ldr r4, ._593 @ gUnknown_Debug_2038A1C
- ldr r3, [r4]
- ldr r1, ._593 + 4 @ 0x169
- add r0, r3, r1
- ldrb r2, [r0]
- ldr r1, ._593 + 8 @ gUnknown_Debug_083F8698
- 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 @ 0x169
- 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 @ gUnknown_Debug_2038A1C
- ldr r0, [r4]
- ldr r2, ._596 + 4 @ 0x169
- 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 @ 0x169
- 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 @ gUnknown_Debug_083F8698
- ldr r1, ._600 + 4 @ gUnknown_Debug_2038A1C
- 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 @ 0x16b
- 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 @ 0x16d
- 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 @ gUnknown_Debug_083F8698
- ldr r1, ._605 + 4 @ gUnknown_Debug_2038A1C
- 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 @ 0x16b
- 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 @ 0x169
- add r0, r2, r7
- ldrb r0, [r0]
- cmp r5, r0
- bne ._603 @cond_branch
- ldr r0, ._605 + 16 @ 0x16d
- 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 @ 0x16d
- 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 @ gUnknown_Debug_083F8698
- 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 @ 0x16b
- 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 @ gUnknown_Debug_083F8698
- 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 @ gUnknown_Debug_083F8698
- mov r8, r0
- ldr r6, ._614 + 4 @ gUnknown_Debug_2038A1C
- 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 @ 0x169
- 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 @ gUnknown_Debug_083F8554
- 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 @ gUnknown_Debug_083F8768
- 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 @ gUnknown_Debug_083F8698
- ldr r0, ._624 + 4 @ gUnknown_Debug_2038A1C
- 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 @ 0x169
- 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 @ gUnknown_Debug_2038A1C
- 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 @ 0x3b9aca00
- 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 @ 0x5f5e100
- 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 @ 0x989680
- 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 @ 0xf4240
- 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 @ 0x186a0
- 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 @ 0x2710
- 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 @ byte_83F88EC
- ldr r2, ._659 + 4 @ 0x600e000
- ldr r0, ._659 + 8 @ 0x40000d4
- str r1, [r0]
- str r2, [r0, #0x4]
- ldr r1, ._659 + 12 @ 0x80000400
- str r1, [r0, #0x8]
- ldr r0, [r0, #0x8]
- ldr r0, ._659 + 16 @ word_83F888C
- mov r1, #0x80
- mov r2, #0x60
- bl LoadPalette
- ldr r1, ._659 + 20 @ 0x7fff
- 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 @ 0x4000040
- 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 @ 0x4000048
- 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 @ 0x4000052
- strh r5, [r0]
- add r1, r1, #0x4
- mov r0, #0x7
- strh r0, [r1]
- ldr r3, ._659 + 36 @ 0x4000208
- ldrh r2, [r3]
- strh r5, [r3]
- 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 @ debug_80C3758
- bl SetVBlankCallback
- ldr r0, ._659 + 48 @ debug_80C370C
- bl SetMainCallback2
- bl sub_809D51C
- 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 @ 0x1e0a
- 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 @ debug_80C6B00
- mov r1, #0x0
- bl CreateTask
- ldr r1, ._659 + 68 @ gUnknown_Debug_2038A20
- ldr r0, ._659 + 72 @ 0x2018000
- str r0, [r1]
- ldr r1, ._659 + 76 @ 0x115
- 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 @ gSpriteTemplate_83F8874
- 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 @ gSprites
- 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 @ gUnknown_Debug_083F8815
- 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 @ gUnknown_Debug_083F87D0
- mov r1, #0x11
- mov r2, #0x1
- bl Menu_PrintText
- ldr r0, ._666 + 8 @ gUnknown_Debug_083F87D8
- mov r1, #0x1b
- mov r2, #0x1
- bl Menu_PrintText
- ldr r0, ._666 + 12 @ gUnknown_Debug_083F87E0
- 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 @ 0x600fa56
- ldr r0, ._666 + 20 @ 0xa311
- 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 @ gUnknown_Debug_083F87F4
- lsl r6, r7, #0x2
- mov r8, r6
- ldr r4, ._666 + 28 @ 0x600f256
- ldr r0, ._666 + 32 @ 0x8301
- 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 @ 0x600f396
- 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 @ gUnknown_Debug_083F8801
- ldr r4, ._666 + 44 @ 0x600f3d6
- 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 @ 0x600f416
- 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 @ 0x4000040
- ldr r2, ._666 + 56 @ 0x51ef
- add r0, r2, #0
- strh r0, [r1]
- add r1, r1, #0x4
- ldr r5, ._666 + 60 @ 0x699f
- add r0, r5, #0
- strh r0, [r1]
- ldr r1, ._666 + 64 @ gTasks
- mov r6, r8
- add r0, r6, r7
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._666 + 68 @ debug_80C6CB8
- 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 @ gUnknown_Debug_2038A20
- ldr r4, [r5]
- ldrh r2, [r4]
- lsl r0, r2, #0x3
- ldr r1, ._668 + 4 @ gMonFrontPicTable
- add r0, r0, r1
- ldr r1, ._668 + 8 @ gMonFrontPicCoords
- lsl r2, r2, #0x2
- add r2, r2, r1
- ldrb r1, [r2]
- ldrb r2, [r2, #0x1]
- ldr r3, ._668 + 12 @ gUnknown_081FAF4C
- 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 @ gMonPaletteTable
- add r0, r0, r7
- bl LoadCompressedObjectPalette
- ldr r0, [r5]
- ldrh r0, [r0]
- mov r1, #0x1
- bl GetMonSpriteTemplate_803C56C
- ldr r0, ._668 + 20 @ gUnknown_02024E8C
- 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 @ gSprites
- add r0, r0, r1
- 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 @ gSprites
- 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 @ gMonBackPicTable
- add r0, r0, r1
- ldr r1, ._668 + 40 @ gMonBackPicCoords
- 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 @ gMonPaletteTable
- add r0, r0, r1
- bl LoadCompressedObjectPalette
- ldr r0, [r5]
- ldrh r0, [r0]
- mov r1, #0x2
- bl GetMonSpriteTemplate_803C56C
- ldr r0, ._668 + 20 @ gUnknown_02024E8C
- 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 @ gSprites
- 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 @ 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 @ sub_809D62C
- 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 @ 0x600f858
- ldr r3, ._668 + 52 @ 0xf3fc
- add r0, r3, #0
- strh r0, [r1]
- add r1, r1, #0x2
- ldr r6, ._668 + 56 @ 0xf3fd
- add r0, r6, #0
- strh r0, [r1]
- add r1, r1, #0x3e
- ldr r7, ._668 + 60 @ 0xf3fe
- add r0, r7, #0
- strh r0, [r1]
- add r1, r1, #0x2
- ldr r2, ._668 + 64 @ 0xf3ff
- 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 @ gSprites
- 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 @ gPlttBufferUnfaded
- add r0, r0, r4
- ldr r6, ._668 + 72 @ 0xffffff00
- 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 @ gPlttBufferFaded
- mov r2, #0x10
- bl CpuSet
- 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 @ debug_80C6EE8
- 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 @ 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 @ 0xffffff00
- 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 @ 0xfffffc1f
- 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 @ gUnknown_Debug_083F8813
- 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 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._670 + 24 @ debug_80C6FA8
- 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 @ gMain
- 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 @ debug_80C370C
- bl SetMainCallback2
- 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 @ debug_80C373C
- 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 @ gUnknown_Debug_2038A20
- 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 @ gUnknown_Debug_2038A20
- ldr r0, [r4]
- ldrh r1, [r0]
- mov r0, #0x1
-._677:
- bl debug_80C3878
- ldr r1, [r4]
- strh r0, [r1]
- 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 @ debug_80C71FC
- 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 @ gUnknown_Debug_2038A20
- ldr r1, [r0]
- mov r0, #0x1
- strb r0, [r1, #0x5]
- 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 @ 0x4167
- add r0, r2, #0
- strh r0, [r1]
- 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 @ debug_80C7294
- 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 @ 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 @ 0x5000102
- 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 @ 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 @ 0x5000102
- 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 @ gUnknown_Debug_2038A20
- 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 @ gUnknown_Debug_2038A20
- ldr r0, [r5]
- ldrb r0, [r0, #0x6]
- lsl r0, r0, #0x5
- ldr r4, ._704 + 4 @ gPlttBufferUnfaded
- add r0, r0, r4
- ldr r2, ._704 + 8 @ 0xffffff00
- 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 @ gPlttBufferFaded
- mov r2, #0x10
- bl CpuSet
-._695:
- 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 @ debug_80C6EE8
- 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 @ gUnknown_Debug_2038A20
- ldr r0, [r0]
- ldrh r0, [r0]
- mov r1, #0x0
- bl PlayCry1
-._706:
- ldr r2, ._707 @ gUnknown_Debug_2038A20
- 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 @ 0x5000142
- add r1, r1, r2
- ldr r2, ._707 + 8 @ gUnknown_Debug_083F8790
- 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 @ gSprites
- ldr r4, ._709 + 4 @ gUnknown_Debug_2038A20
- 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 @ gTasks
- lsl r0, r5, #0x2
- add r0, r0, r5
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._709 + 12 @ debug_80C6CB8
- 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 @ 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 @ gUnknown_Debug_2038A20
- ldr r1, [r0]
- mov r0, #0x0
- strb r0, [r1, #0x5]
- 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 @ 0x699f
- 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 @ gUnknown_Debug_2038A20
- ldr r0, [r6]
- strb r1, [r0, #0x5]
- 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 @ 0x699f
- add r0, r2, #0
- strh r0, [r1]
- ldr r0, [r6]
- add r0, r0, #0x10
- 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 @ gPlttBufferFaded
- 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 @ gTasks
- lsl r0, r7, #0x2
- add r0, r0, r7
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._717 + 28 @ debug_80C6EE8
- 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 @ gUnknown_Debug_2038A20
- 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 @ gUnknown_Debug_2038A20
- 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 @ gUnknown_Debug_2038A20
- 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 @ 0xfffffc1f
- 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 @ gUnknown_Debug_2038A20
- 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 @ 0xfffffc1f
- 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 @ gTasks
- lsl r1, r7, #0x2
- add r1, r1, r7
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._762 + 4 @ debug_80C74E4
- 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 @ gUnknown_Debug_2038A20
- 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 @ gPlttBufferUnfaded
- ldrb r1, [r3, #0x7]
- add r1, r1, #0x81
- lsl r1, r1, #0x1
- add r1, r1, r6
- strh r0, [r1]
- ldr r1, ._764 + 8 @ gPlttBufferFaded
- 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 @ 0x101
- 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 @ gTasks
- lsl r0, r5, #0x2
- add r0, r0, r5
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._764 + 20 @ debug_80C7294
- 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 @ gUnknown_Debug_2038A20
- 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 @ byte_83F88EC
- ldr r2, ._777 + 4 @ 0x600e000
- ldr r0, ._777 + 8 @ 0x40000d4
- str r1, [r0]
- str r2, [r0, #0x4]
- ldr r1, ._777 + 12 @ 0x80000400
- str r1, [r0, #0x8]
- ldr r0, [r0, #0x8]
- ldr r0, ._777 + 16 @ word_83F888C
- 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 @ 0x4000040
- 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 @ 0x4000048
- 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 @ 0x4000052
- strh r5, [r0]
- add r1, r1, #0x4
- mov r0, #0x7
- strh r0, [r1]
- ldr r3, ._777 + 32 @ 0x4000208
- ldrh r2, [r3]
- strh r5, [r3]
- 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 @ debug_80C3758
- bl SetVBlankCallback
- ldr r0, ._777 + 44 @ debug_80C370C
- bl SetMainCallback2
- 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 @ 0x1e0a
- 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 @ debug_80C777C
- mov r1, #0x0
- bl CreateTask
- ldr r1, ._777 + 64 @ gUnknown_Debug_2038A20
- ldr r0, ._777 + 68 @ 0x2018000
- 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 @ gSpriteTemplate_83F8874
- 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 @ gSprites
- 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 @ gUnknown_Debug_083F8815
- 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 @ gUnknown_Debug_083F87D0
- mov r1, #0xf
- mov r2, #0x1
- bl Menu_PrintText
- ldr r0, ._784 + 8 @ gUnknown_Debug_083F87D8
- mov r1, #0x19
- mov r2, #0x1
- bl Menu_PrintText
- ldr r0, ._784 + 12 @ gUnknown_Debug_083F87E0
- 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 @ 0x600fa56
- ldr r0, ._784 + 20 @ 0xa311
- 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 @ gUnknown_Debug_083F87F4
- lsl r6, r7, #0x2
- mov r8, r6
- ldr r4, ._784 + 28 @ 0x600f256
- ldr r0, ._784 + 32 @ 0x8301
- 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 @ 0x600f396
- 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 @ gUnknown_Debug_083F8801
- ldr r4, ._784 + 44 @ 0x600f3d6
- 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 @ 0x600f416
- 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 @ 0x4000040
- ldr r2, ._784 + 56 @ 0x51ef
- add r0, r2, #0
- strh r0, [r1]
- add r1, r1, #0x4
- ldr r5, ._784 + 60 @ 0x699f
- add r0, r5, #0
- strh r0, [r1]
- ldr r1, ._784 + 64 @ gTasks
- mov r6, r8
- add r0, r6, r7
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._784 + 68 @ debug_80C7934
- 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 @ gUnknown_Debug_2038A20
- ldr r6, [r5]
- ldrh r2, [r6]
- lsl r0, r2, #0x3
- ldr r1, ._786 + 4 @ gTrainerFrontPicTable
- add r0, r0, r1
- ldr r1, ._786 + 8 @ gTrainerFrontPicCoords
- lsl r2, r2, #0x2
- add r2, r2, r1
- ldrb r1, [r2]
- ldrb r2, [r2, #0x1]
- ldr r4, ._786 + 12 @ gUnknown_081FAF4C
- 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 @ gTrainerFrontPicPaletteTable
- add r0, r0, r1
- bl LoadCompressedObjectPalette
- ldr r0, [r5]
- ldrh r0, [r0]
- mov r1, #0x1
- bl GetMonSpriteTemplate_803C5A0
- ldr r0, ._786 + 20 @ gUnknown_02024E8C
- 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 @ gSprites
- 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 @ debug_69
- 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 @ gPlttBufferUnfaded
- add r0, r0, r4
- ldr r2, ._786 + 36 @ 0xffffff00
- 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 @ gPlttBufferFaded
- mov r2, #0x10
- bl CpuSet
- 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 @ debug_80C7A54
- 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 @ 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 @ 0xffffff00
- 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 @ 0xfffffc1f
- 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 @ gUnknown_Debug_083F8813
- 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 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._788 + 24 @ debug_80C7B14
- 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 @ gMain
- 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 @ debug_80C370C
- bl SetMainCallback2
- 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 @ debug_80C373C
- 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 @ gUnknown_Debug_2038A20
- 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 @ gUnknown_Debug_2038A20
- ldr r0, [r4]
- ldrh r1, [r0]
- mov r0, #0x1
-._795:
- bl debug_80C38B4
- ldr r1, [r4]
- strh r0, [r1]
- 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 @ debug_80C7D44
- 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 @ gUnknown_Debug_2038A20
- ldr r1, [r0]
- mov r0, #0x1
- strb r0, [r1, #0x5]
- 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 @ 0x4167
- add r0, r2, #0
- strh r0, [r1]
- 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 @ debug_80C7DDC
- 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 @ gUnknown_Debug_2038A20
- 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 @ 0x5000102
- 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 @ 0x5000102
- 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 @ gUnknown_Debug_2038A20
- 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 @ gUnknown_Debug_2038A20
- ldr r0, [r5]
- ldrb r0, [r0, #0x6]
- lsl r0, r0, #0x5
- ldr r4, ._822 + 4 @ gPlttBufferUnfaded
- add r0, r0, r4
- ldr r2, ._822 + 8 @ 0xffffff00
- 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 @ gPlttBufferFaded
- mov r2, #0x10
- bl CpuSet
-._813:
- 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 @ debug_80C7A54
- 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 @ 0x5000142
- add r1, r1, r2
- ldr r2, ._824 + 4 @ gUnknown_Debug_083F8790
- 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 @ gSprites
- ldr r4, ._826 + 4 @ gUnknown_Debug_2038A20
- 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 @ gTasks
- lsl r0, r5, #0x2
- add r0, r0, r5
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._826 + 12 @ debug_80C7934
- 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 @ 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 @ gUnknown_Debug_2038A20
- ldr r1, [r0]
- mov r0, #0x0
- strb r0, [r1, #0x5]
- 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 @ 0x699f
- 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 @ gUnknown_Debug_2038A20
- ldr r0, [r6]
- strb r1, [r0, #0x5]
- 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 @ 0x699f
- add r0, r2, #0
- strh r0, [r1]
- ldr r0, [r6]
- add r0, r0, #0x10
- 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 @ gPlttBufferFaded
- 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 @ gTasks
- lsl r0, r7, #0x2
- add r0, r0, r7
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._834 + 28 @ debug_80C7A54
- 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 @ gUnknown_Debug_2038A20
- 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 @ gUnknown_Debug_2038A20
- 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 @ gUnknown_Debug_2038A20
- 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 @ 0xfffffc1f
- 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 @ gUnknown_Debug_2038A20
- 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 @ 0xfffffc1f
- 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 @ gTasks
- lsl r1, r7, #0x2
- add r1, r1, r7
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._879 + 4 @ debug_80C802C
- 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 @ gUnknown_Debug_2038A20
- 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 @ gPlttBufferUnfaded
- ldrb r1, [r3, #0x7]
- add r1, r1, #0x81
- lsl r1, r1, #0x1
- add r1, r1, r6
- strh r0, [r1]
- ldr r1, ._881 + 8 @ gPlttBufferFaded
- 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 @ 0x101
- 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 @ gTasks
- lsl r0, r5, #0x2
- add r0, r0, r5
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._881 + 20 @ debug_80C7DDC
- 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
diff --git a/asm/water.s b/asm/water.s
index 2f0ebb8f8..6f9c5cb9d 100644
--- a/asm/water.s
+++ b/asm/water.s
@@ -757,7 +757,7 @@ sub_80D40F4: @ 80D40F4
ldr r0, _080D4144 @ =gTasks
adds r4, r0
movs r0, 0
- bl GetAnimBankSpriteId
+ bl GetAnimBattlerSpriteId
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x26]
@@ -1085,11 +1085,11 @@ sub_80D4394: @ 80D4394
push {r4,r5,lr}
ldr r4, _080D43B8 @ =gAnimBankAttacker
ldrb r0, [r4]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _080D43C8
- ldr r1, _080D43BC @ =gBattlePartyID
+ ldr r1, _080D43BC @ =gBattlerPartyIndexes
ldrb r0, [r4]
lsls r0, 1
adds r0, r1
@@ -1100,13 +1100,13 @@ sub_80D4394: @ 80D4394
b _080D43D8
.align 2, 0
_080D43B8: .4byte gAnimBankAttacker
-_080D43BC: .4byte gBattlePartyID
+_080D43BC: .4byte gBattlerPartyIndexes
_080D43C0: .4byte gPlayerParty
_080D43C4:
adds r0, r2, 0
b _080D440A
_080D43C8:
- ldr r1, _080D4410 @ =gBattlePartyID
+ ldr r1, _080D4410 @ =gBattlerPartyIndexes
ldrb r0, [r4]
lsls r0, 1
adds r0, r1
@@ -1144,7 +1144,7 @@ _080D440A:
pop {r1}
bx r1
.align 2, 0
-_080D4410: .4byte gBattlePartyID
+_080D4410: .4byte gBattlerPartyIndexes
_080D4414: .4byte gEnemyParty
thumb_func_end sub_80D4394
@@ -1163,13 +1163,13 @@ sub_80D4418: @ 80D4418
ldr r4, _080D4520 @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
mov r8, r0
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r6, r0, 24
movs r5, 0xAC
@@ -1392,7 +1392,7 @@ sub_80D45D8: @ 80D45D8
strh r0, [r4, 0xA]
ldr r0, _080D460C @ =gAnimBankAttacker
ldrb r0, [r0]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
cmp r0, 0
bne _080D4610
@@ -1791,19 +1791,19 @@ sub_80D48F4: @ 80D48F4
ldr r4, _080D497C @ =gAnimBankAttacker
ldrb r0, [r4]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
movs r6, 0
strh r0, [r5, 0xE]
ldrb r0, [r4]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x10]
ldrb r0, [r4]
- bl GetBankSide
+ bl GetBattlerSide
lsls r0, 24
movs r2, 0x1
negs r2, r2
@@ -2268,13 +2268,13 @@ sub_80D4CA4: @ 80D4CA4
ldr r5, _080D4CE0 @ =gAnimBankTarget
ldrb r0, [r5]
movs r1, 0x2
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x30]
ldrb r0, [r5]
movs r1, 0x3
- bl GetBankPosition
+ bl GetBattlerSpriteCoord
lsls r0, 24
lsrs r0, 24
strh r0, [r4, 0x32]