summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_811DA74.s2212
-rw-r--r--asm/battle_ai.s2067
-rw-r--r--asm/battle_anim.s4729
-rw-r--r--asm/battle_anim_80CA710.s24
-rw-r--r--asm/battle_message.s74
-rw-r--r--asm/battle_party_menu.s1263
-rw-r--r--asm/bike.s2211
-rw-r--r--asm/braille_puzzles.s606
-rw-r--r--asm/choose_party.s82
-rw-r--r--asm/contest.s30
-rw-r--r--asm/contest_ai.s996
-rw-r--r--asm/credits.s2713
-rw-r--r--asm/daycare.s16
-rw-r--r--asm/field_control_avatar.s1780
-rw-r--r--asm/field_effect.s4
-rw-r--r--asm/field_map_obj.s4236
-rw-r--r--asm/field_region_map.s274
-rw-r--r--asm/field_tasks.s4
-rw-r--r--asm/fldeff_80C5CD4.s12
-rw-r--r--asm/fldeff_cut.s797
-rw-r--r--asm/fldeff_teleport.s93
-rw-r--r--asm/hall_of_fame.s14
-rw-r--r--asm/item_menu.s6
-rw-r--r--asm/item_use.s149
-rw-r--r--asm/libgcnmultiboot.s333
-rw-r--r--asm/macros/battle_ai_script.inc62
-rw-r--r--asm/map_name_popup.s248
-rw-r--r--asm/mauville_old_man.s496
-rw-r--r--asm/name_string_util.s76
-rw-r--r--asm/naming_screen.s4331
-rw-r--r--asm/party_menu.s14
-rw-r--r--asm/pokeball.s14
-rw-r--r--asm/pokemon_item_effect.s4
-rw-r--r--asm/pokemon_menu.s118
-rw-r--r--asm/pokemon_storage_system.s4
-rw-r--r--asm/reset_rtc_screen.s2
-rw-r--r--asm/rom3.s3411
-rw-r--r--asm/rom6.s474
-rw-r--r--asm/rom_800D42C.s2632
-rw-r--r--asm/rom_8080874.s179
-rw-r--r--asm/rom_8094928.s314
-rw-r--r--asm/rom_810CBB4.s12
-rw-r--r--asm/rom_81258BC.s18
-rw-r--r--asm/rotating_gate.s4
-rw-r--r--asm/script_movement.s596
-rw-r--r--asm/script_pokemon_util_80C4BF0.s1399
-rw-r--r--asm/script_pokemon_util_80F99CC.s978
-rw-r--r--asm/secret_base.s2
-rw-r--r--asm/shop.s812
-rw-r--r--asm/unknown_debug_menu.s133
50 files changed, 2305 insertions, 38753 deletions
diff --git a/asm/battle_811DA74.s b/asm/battle_811DA74.s
index 13a7f974e..0715b5110 100644
--- a/asm/battle_811DA74.s
+++ b/asm/battle_811DA74.s
@@ -6,2218 +6,6 @@
.text
- thumb_func_start nullsub_74
-nullsub_74: @ 811DA74
- bx lr
- thumb_func_end nullsub_74
-
- thumb_func_start sub_811DA78
-sub_811DA78: @ 811DA78
- ldr r1, _0811DA88 @ =gUnknown_03004330
- ldr r0, _0811DA8C @ =gUnknown_02024A60
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0811DA90 @ =sub_811DA94
- str r1, [r0]
- bx lr
- .align 2, 0
-_0811DA88: .4byte gUnknown_03004330
-_0811DA8C: .4byte gUnknown_02024A60
-_0811DA90: .4byte sub_811DA94
- thumb_func_end sub_811DA78
-
- thumb_func_start sub_811DA94
-sub_811DA94: @ 811DA94
- push {lr}
- ldr r2, _0811DAC8 @ =gUnknown_02024A64
- ldr r1, _0811DACC @ =gBitTable
- ldr r0, _0811DAD0 @ =gUnknown_02024A60
- ldrb r3, [r0]
- lsls r0, r3, 2
- adds r0, r1
- ldr r1, [r2]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- beq _0811DAE0
- ldr r0, _0811DAD4 @ =gUnknown_02023A60
- lsls r1, r3, 9
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x38
- bhi _0811DADC
- ldr r0, _0811DAD8 @ =gUnknown_083FE4F4
- ldrb r1, [r1]
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- bl _call_via_r0
- b _0811DAE0
- .align 2, 0
-_0811DAC8: .4byte gUnknown_02024A64
-_0811DACC: .4byte gBitTable
-_0811DAD0: .4byte gUnknown_02024A60
-_0811DAD4: .4byte gUnknown_02023A60
-_0811DAD8: .4byte gUnknown_083FE4F4
-_0811DADC:
- bl dp01_tbl3_exec_completed
-_0811DAE0:
- pop {r0}
- bx r0
- thumb_func_end sub_811DA94
-
- thumb_func_start sub_811DAE4
-sub_811DAE4: @ 811DAE4
- push {lr}
- ldr r2, _0811DB0C @ =gSprites
- ldr r1, _0811DB10 @ =gUnknown_02024BE0
- ldr r0, _0811DB14 @ =gUnknown_02024A60
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _0811DB18 @ =SpriteCallbackDummy
- cmp r1, r0
- bne _0811DB08
- bl dp01_tbl3_exec_completed
-_0811DB08:
- pop {r0}
- bx r0
- .align 2, 0
-_0811DB0C: .4byte gSprites
-_0811DB10: .4byte gUnknown_02024BE0
-_0811DB14: .4byte gUnknown_02024A60
-_0811DB18: .4byte SpriteCallbackDummy
- thumb_func_end sub_811DAE4
-
- thumb_func_start sub_811DB1C
-sub_811DB1C: @ 811DB1C
- push {r4-r6,lr}
- ldr r6, _0811DB74 @ =gSprites
- ldr r5, _0811DB78 @ =gUnknown_02024BE0
- ldr r4, _0811DB7C @ =gUnknown_02024A60
- ldrb r0, [r4]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r6, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, [r0]
- ldr r0, _0811DB80 @ =SpriteCallbackDummy
- cmp r1, r0
- bne _0811DB6C
- movs r0, 0
- bl nullsub_10
- ldrb r0, [r4]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- bl FreeSpriteOamMatrix
- ldrb r0, [r4]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- bl DestroySprite
- bl dp01_tbl3_exec_completed
-_0811DB6C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811DB74: .4byte gSprites
-_0811DB78: .4byte gUnknown_02024BE0
-_0811DB7C: .4byte gUnknown_02024A60
-_0811DB80: .4byte SpriteCallbackDummy
- thumb_func_end sub_811DB1C
-
- thumb_func_start sub_811DB84
-sub_811DB84: @ 811DB84
- push {lr}
- ldr r3, _0811DBB8 @ =gUnknown_02024A60
- ldrb r0, [r3]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- ldr r2, _0811DBBC @ =0x02017810
- adds r1, r2
- ldrb r0, [r1, 0x9]
- subs r0, 0x1
- strb r0, [r1, 0x9]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _0811DBB4
- ldrb r0, [r3]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0
- strb r0, [r1, 0x9]
- bl dp01_tbl3_exec_completed
-_0811DBB4:
- pop {r0}
- bx r0
- .align 2, 0
-_0811DBB8: .4byte gUnknown_02024A60
-_0811DBBC: .4byte 0x02017810
- thumb_func_end sub_811DB84
-
- thumb_func_start sub_811DBC0
-sub_811DBC0: @ 811DBC0
- push {r4-r6,lr}
- movs r6, 0
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- beq _0811DBE4
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- beq _0811DC18
- ldr r0, _0811DC04 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0811DC18
-_0811DBE4:
- ldr r2, _0811DC08 @ =gSprites
- ldr r1, _0811DC0C @ =gUnknown_03004340
- ldr r0, _0811DC10 @ =gUnknown_02024A60
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _0811DC14 @ =SpriteCallbackDummy
- cmp r1, r0
- bne _0811DC50
- b _0811DC4E
- .align 2, 0
-_0811DC04: .4byte gBattleTypeFlags
-_0811DC08: .4byte gSprites
-_0811DC0C: .4byte gUnknown_03004340
-_0811DC10: .4byte gUnknown_02024A60
-_0811DC14: .4byte SpriteCallbackDummy
-_0811DC18:
- ldr r2, _0811DC84 @ =gSprites
- ldr r5, _0811DC88 @ =gUnknown_03004340
- ldr r0, _0811DC8C @ =gUnknown_02024A60
- ldrb r3, [r0]
- adds r0, r3, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, r2, 0
- adds r4, 0x1C
- adds r0, r4
- ldr r2, [r0]
- ldr r0, _0811DC90 @ =SpriteCallbackDummy
- cmp r2, r0
- bne _0811DC50
- movs r0, 0x2
- eors r3, r0
- adds r0, r3, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- cmp r0, r2
- bne _0811DC50
-_0811DC4E:
- movs r6, 0x1
-_0811DC50:
- bl IsCryPlayingOrClearCrySongs
- lsls r0, 24
- cmp r0, 0
- beq _0811DC5C
- movs r6, 0
-_0811DC5C:
- cmp r6, 0
- beq _0811DC7E
- ldr r2, _0811DC8C @ =gUnknown_02024A60
- ldrb r1, [r2]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811DC94 @ =0x02017810
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0, 0x9]
- ldr r1, _0811DC98 @ =gUnknown_03004330
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0811DC9C @ =sub_811DB84
- str r1, [r0]
-_0811DC7E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811DC84: .4byte gSprites
-_0811DC88: .4byte gUnknown_03004340
-_0811DC8C: .4byte gUnknown_02024A60
-_0811DC90: .4byte SpriteCallbackDummy
-_0811DC94: .4byte 0x02017810
-_0811DC98: .4byte gUnknown_03004330
-_0811DC9C: .4byte sub_811DB84
- thumb_func_end sub_811DBC0
-
- thumb_func_start sub_811DCA0
-sub_811DCA0: @ 811DCA0
- push {r4-r7,lr}
- ldr r6, _0811DDBC @ =gUnknown_02024A60
- ldrb r2, [r6]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- ldr r4, _0811DDC0 @ =0x02017810
- adds r3, r0, r4
- ldrb r1, [r3]
- movs r5, 0x8
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- bne _0811DDB4
- movs r7, 0x2
- adds r1, r7, 0
- eors r1, r2
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0]
- adds r0, r5, 0
- ands r0, r1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _0811DDB4
- ldrb r0, [r3, 0x9]
- adds r0, 0x1
- strb r0, [r3, 0x9]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811DDB4
- ldrb r0, [r6]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- strb r2, [r1, 0x9]
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- beq _0811DD56
- ldr r0, _0811DDC4 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _0811DD56
- ldr r1, _0811DDC8 @ =gUnknown_0300434C
- ldrb r0, [r6]
- eors r0, r7
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811DDCC @ =gSprites
- adds r0, r1
- bl DestroySprite
- ldr r4, _0811DDD0 @ =gUnknown_03004340
- ldrb r0, [r6]
- adds r1, r7, 0
- eors r1, r0
- adds r0, r1, r4
- ldrb r0, [r0]
- ldr r2, _0811DDD4 @ =gUnknown_02024A6A
- lsls r1, 1
- adds r1, r2
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, _0811DDD8 @ =gPlayerParty
- adds r1, r2
- movs r2, 0
- bl sub_8045A5C
- ldrb r0, [r6]
- eors r0, r7
- bl sub_804777C
- ldrb r0, [r6]
- eors r0, r7
- adds r0, r4
- ldrb r0, [r0]
- bl sub_8043DFC
-_0811DD56:
- ldr r1, _0811DDC8 @ =gUnknown_0300434C
- ldr r4, _0811DDBC @ =gUnknown_02024A60
- ldrb r0, [r4]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811DDCC @ =gSprites
- adds r0, r1
- bl DestroySprite
- ldr r5, _0811DDD0 @ =gUnknown_03004340
- ldrb r1, [r4]
- adds r0, r1, r5
- ldrb r0, [r0]
- ldr r2, _0811DDD4 @ =gUnknown_02024A6A
- lsls r1, 1
- adds r1, r2
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, _0811DDD8 @ =gPlayerParty
- adds r1, r2
- movs r2, 0
- bl sub_8045A5C
- ldrb r0, [r4]
- bl sub_804777C
- ldrb r0, [r4]
- adds r0, r5
- ldrb r0, [r0]
- bl sub_8043DFC
- ldr r2, _0811DDDC @ =0x02017840
- ldrb r1, [r2, 0x9]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x9]
- ldr r1, _0811DDE0 @ =gUnknown_03004330
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0811DDE4 @ =sub_811DBC0
- str r1, [r0]
-_0811DDB4:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811DDBC: .4byte gUnknown_02024A60
-_0811DDC0: .4byte 0x02017810
-_0811DDC4: .4byte gBattleTypeFlags
-_0811DDC8: .4byte gUnknown_0300434C
-_0811DDCC: .4byte gSprites
-_0811DDD0: .4byte gUnknown_03004340
-_0811DDD4: .4byte gUnknown_02024A6A
-_0811DDD8: .4byte gPlayerParty
-_0811DDDC: .4byte 0x02017840
-_0811DDE0: .4byte gUnknown_03004330
-_0811DDE4: .4byte sub_811DBC0
- thumb_func_end sub_811DCA0
-
- thumb_func_start sub_811DDE8
-sub_811DDE8: @ 811DDE8
- push {lr}
- ldr r2, _0811DE1C @ =gSprites
- ldr r1, _0811DE20 @ =gUnknown_02024BE0
- ldr r0, _0811DE24 @ =gUnknown_02024A60
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 27
- cmp r0, 0
- bge _0811DE16
- movs r2, 0x24
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _0811DE16
- bl dp01_tbl3_exec_completed
-_0811DE16:
- pop {r0}
- bx r0
- .align 2, 0
-_0811DE1C: .4byte gSprites
-_0811DE20: .4byte gUnknown_02024BE0
-_0811DE24: .4byte gUnknown_02024A60
- thumb_func_end sub_811DDE8
-
- thumb_func_start bx_t3_healthbar_update
-bx_t3_healthbar_update: @ 811DE28
- push {r4-r6,lr}
- ldr r5, _0811DE68 @ =gUnknown_02024A60
- ldrb r0, [r5]
- ldr r6, _0811DE6C @ =gUnknown_03004340
- adds r1, r0, r6
- ldrb r1, [r1]
- movs r2, 0
- movs r3, 0
- bl sub_8045C78
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldrb r0, [r5]
- adds r0, r6
- ldrb r0, [r0]
- bl sub_8043DFC
- lsls r4, 16
- asrs r1, r4, 16
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0811DE70
- ldrb r0, [r5]
- adds r0, r6
- ldrb r0, [r0]
- movs r2, 0
- bl sub_80440EC
- b _0811DE8A
- .align 2, 0
-_0811DE68: .4byte gUnknown_02024A60
-_0811DE6C: .4byte gUnknown_03004340
-_0811DE70:
- ldr r2, _0811DE90 @ =gUnknown_02024A6A
- ldrb r1, [r5]
- lsls r0, r1, 1
- adds r0, r2
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r2, _0811DE94 @ =gPlayerParty
- adds r0, r2
- bl sub_80324F8
- bl dp01_tbl3_exec_completed
-_0811DE8A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811DE90: .4byte gUnknown_02024A6A
-_0811DE94: .4byte gPlayerParty
- thumb_func_end bx_t3_healthbar_update
-
- thumb_func_start sub_811DE98
-sub_811DE98: @ 811DE98
- push {r4-r6,lr}
- ldr r6, _0811DF1C @ =gSprites
- ldr r5, _0811DF20 @ =gUnknown_02024BE0
- ldr r4, _0811DF24 @ =gUnknown_02024A60
- ldrb r2, [r4]
- adds r0, r2, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- movs r3, 0x22
- ldrsh r1, [r0, r3]
- movs r3, 0x26
- ldrsh r0, [r0, r3]
- adds r1, r0
- cmp r1, 0xA0
- ble _0811DF14
- ldr r1, _0811DF28 @ =gUnknown_02024A6A
- lsls r0, r2, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _0811DF2C @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- bl nullsub_9
- ldrb r0, [r4]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r0, [r0, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
- ldrb r0, [r4]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- bl DestroySprite
- ldr r1, _0811DF30 @ =gUnknown_03004340
- ldrb r0, [r4]
- adds r0, r1
- ldrb r0, [r0]
- bl sub_8043DB0
- bl dp01_tbl3_exec_completed
-_0811DF14:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811DF1C: .4byte gSprites
-_0811DF20: .4byte gUnknown_02024BE0
-_0811DF24: .4byte gUnknown_02024A60
-_0811DF28: .4byte gUnknown_02024A6A
-_0811DF2C: .4byte gPlayerParty
-_0811DF30: .4byte gUnknown_03004340
- thumb_func_end sub_811DE98
-
- thumb_func_start sub_811DF34
-sub_811DF34: @ 811DF34
- push {r4-r6,lr}
- ldr r6, _0811DF8C @ =gUnknown_02024A60
- ldrb r2, [r6]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- ldr r1, _0811DF90 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _0811DF84
- ldr r5, _0811DF94 @ =gUnknown_02024BE0
- adds r0, r2, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _0811DF98 @ =gSprites
- adds r0, r4
- bl FreeSpriteOamMatrix
- ldrb r0, [r6]
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r1, _0811DF9C @ =gUnknown_03004340
- ldrb r0, [r6]
- adds r0, r1
- ldrb r0, [r0]
- bl sub_8043DB0
- bl dp01_tbl3_exec_completed
-_0811DF84:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811DF8C: .4byte gUnknown_02024A60
-_0811DF90: .4byte 0x02017810
-_0811DF94: .4byte gUnknown_02024BE0
-_0811DF98: .4byte gSprites
-_0811DF9C: .4byte gUnknown_03004340
- thumb_func_end sub_811DF34
-
- thumb_func_start sub_811DFA0
-sub_811DFA0: @ 811DFA0
- push {lr}
- ldr r0, _0811DFB4 @ =gUnknown_03004210
- ldrh r0, [r0, 0x16]
- cmp r0, 0
- bne _0811DFAE
- bl dp01_tbl3_exec_completed
-_0811DFAE:
- pop {r0}
- bx r0
- .align 2, 0
-_0811DFB4: .4byte gUnknown_03004210
- thumb_func_end sub_811DFA0
-
- thumb_func_start bx_blink_t3
-bx_blink_t3: @ 811DFB8
- push {r4,lr}
- ldr r1, _0811DFF4 @ =gUnknown_02024BE0
- ldr r0, _0811DFF8 @ =gUnknown_02024A60
- ldrb r0, [r0]
- adds r0, r1
- ldrb r1, [r0]
- ldr r2, _0811DFFC @ =gSprites
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, r0, r2
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- cmp r0, 0x20
- bne _0811E004
- movs r3, 0
- movs r0, 0
- strh r0, [r4, 0x30]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- subs r0, 0x5
- ands r0, r1
- strb r0, [r2]
- ldr r0, _0811E000 @ =gUnknown_02024E6D
- strb r3, [r0]
- bl dp01_tbl3_exec_completed
- b _0811E02E
- .align 2, 0
-_0811DFF4: .4byte gUnknown_02024BE0
-_0811DFF8: .4byte gUnknown_02024A60
-_0811DFFC: .4byte gSprites
-_0811E000: .4byte gUnknown_02024E6D
-_0811E004:
- ldrh r0, [r4, 0x30]
- movs r1, 0x3
- ands r0, r1
- cmp r0, 0
- bne _0811E028
- 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]
-_0811E028:
- ldrh r0, [r4, 0x30]
- adds r0, 0x1
- strh r0, [r4, 0x30]
-_0811E02E:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end bx_blink_t3
-
- thumb_func_start sub_811E034
-sub_811E034: @ 811E034
- push {r4,lr}
- ldr r2, _0811E084 @ =gSprites
- ldr r0, _0811E088 @ =gUnknown_03004340
- ldr r4, _0811E08C @ =gUnknown_02024A60
- ldrb r3, [r4]
- adds r0, r3, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _0811E090 @ =SpriteCallbackDummy
- cmp r1, r0
- bne _0811E07C
- lsls r0, r3, 2
- ldr r1, _0811E094 @ =0x02017800
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0811E070
- adds r0, r3, 0
- adds r1, r3, 0
- adds r2, r3, 0
- movs r3, 0x6
- bl move_anim_start_t4
-_0811E070:
- ldr r0, _0811E098 @ =gUnknown_03004330
- ldrb r1, [r4]
- lsls r1, 2
- adds r1, r0
- ldr r0, _0811E09C @ =sub_811E0A0
- str r0, [r1]
-_0811E07C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811E084: .4byte gSprites
-_0811E088: .4byte gUnknown_03004340
-_0811E08C: .4byte gUnknown_02024A60
-_0811E090: .4byte SpriteCallbackDummy
-_0811E094: .4byte 0x02017800
-_0811E098: .4byte gUnknown_03004330
-_0811E09C: .4byte sub_811E0A0
- thumb_func_end sub_811E034
-
- thumb_func_start sub_811E0A0
-sub_811E0A0: @ 811E0A0
- push {lr}
- ldr r0, _0811E0C4 @ =gUnknown_02024A60
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811E0C8 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _0811E0BE
- bl dp01_tbl3_exec_completed
-_0811E0BE:
- pop {r0}
- bx r0
- .align 2, 0
-_0811E0C4: .4byte gUnknown_02024A60
-_0811E0C8: .4byte 0x02017810
- thumb_func_end sub_811E0A0
-
- thumb_func_start sub_811E0CC
-sub_811E0CC: @ 811E0CC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r7, _0811E190 @ =gUnknown_02024A60
- ldrb r1, [r7]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r3, _0811E194 @ =0x02017810
- adds r2, r0, r3
- ldrb r1, [r2, 0x1]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0811E186
- ldrb r1, [r2]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2]
- ldrb r0, [r7]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- ldrb r2, [r1, 0x1]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x1]
- ldr r4, _0811E198 @ =0x000027f9
- adds r0, r4, 0
- bl FreeSpriteTilesByTag
- adds r0, r4, 0
- bl FreeSpritePaletteByTag
- ldr r0, _0811E19C @ =c3_0802FDF4
- movs r1, 0xA
- bl CreateTask
- ldr r0, _0811E1A0 @ =gUnknown_02024A6A
- mov r8, r0
- ldrb r1, [r7]
- lsls r0, r1, 1
- add r0, r8
- ldrh r0, [r0]
- movs r6, 0x64
- muls r0, r6
- ldr r5, _0811E1A4 @ =gPlayerParty
- adds r0, r5
- bl sub_80324F8
- ldr r1, _0811E1A8 @ =gUnknown_02024BE0
- ldrb r0, [r7]
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811E1AC @ =gSprites
- adds r0, r1
- movs r1, 0
- bl StartSpriteAnim
- ldr r4, _0811E1B0 @ =gUnknown_03004340
- ldrb r1, [r7]
- adds r0, r1, r4
- ldrb r0, [r0]
- lsls r1, 1
- add r1, r8
- ldrh r1, [r1]
- muls r1, r6
- adds r1, r5
- movs r2, 0
- bl sub_8045A5C
- ldrb r0, [r7]
- bl sub_804777C
- ldrb r0, [r7]
- adds r0, r4
- ldrb r0, [r0]
- bl sub_8043DFC
- ldrb r0, [r7]
- bl sub_8031F88
- ldr r1, _0811E1B4 @ =gUnknown_03004330
- ldrb r0, [r7]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0811E1B8 @ =sub_811E034
- str r1, [r0]
-_0811E186:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811E190: .4byte gUnknown_02024A60
-_0811E194: .4byte 0x02017810
-_0811E198: .4byte 0x000027f9
-_0811E19C: .4byte c3_0802FDF4
-_0811E1A0: .4byte gUnknown_02024A6A
-_0811E1A4: .4byte gPlayerParty
-_0811E1A8: .4byte gUnknown_02024BE0
-_0811E1AC: .4byte gSprites
-_0811E1B0: .4byte gUnknown_03004340
-_0811E1B4: .4byte gUnknown_03004330
-_0811E1B8: .4byte sub_811E034
- thumb_func_end sub_811E0CC
-
- thumb_func_start sub_811E1BC
-sub_811E1BC: @ 811E1BC
- push {r4-r6,lr}
- ldr r4, _0811E234 @ =gUnknown_02024A60
- ldrb r2, [r4]
- lsls r3, r2, 1
- adds r0, r3, r2
- lsls r0, 2
- ldr r6, _0811E238 @ =0x02017810
- adds r0, r6
- ldrb r1, [r0]
- movs r0, 0x88
- ands r0, r1
- cmp r0, 0
- bne _0811E1EA
- ldr r0, _0811E23C @ =gUnknown_02024A6A
- adds r0, r3, r0
- ldrh r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _0811E240 @ =gPlayerParty
- adds r1, r0
- adds r0, r2, 0
- bl sub_8141828
-_0811E1EA:
- ldr r5, _0811E244 @ =gSprites
- ldr r0, _0811E248 @ =gUnknown_0300434C
- ldrb r2, [r4]
- adds r0, r2, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r3, r0, 2
- adds r0, r5, 0
- adds r0, 0x1C
- adds r0, r3, r0
- ldr r1, [r0]
- ldr r0, _0811E24C @ =SpriteCallbackDummy
- cmp r1, r0
- bne _0811E22C
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- bne _0811E22C
- adds r0, r3, r5
- bl DestroySprite
- ldr r1, _0811E250 @ =gUnknown_03004330
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0811E254 @ =sub_811E0CC
- str r1, [r0]
-_0811E22C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811E234: .4byte gUnknown_02024A60
-_0811E238: .4byte 0x02017810
-_0811E23C: .4byte gUnknown_02024A6A
-_0811E240: .4byte gPlayerParty
-_0811E244: .4byte gSprites
-_0811E248: .4byte gUnknown_0300434C
-_0811E24C: .4byte SpriteCallbackDummy
-_0811E250: .4byte gUnknown_03004330
-_0811E254: .4byte sub_811E0CC
- thumb_func_end sub_811E1BC
-
- thumb_func_start sub_811E258
-sub_811E258: @ 811E258
- push {lr}
- ldr r0, _0811E288 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _0811E284
- movs r0, 0x5A
- bl m4aSongNumStop
- ldr r3, _0811E28C @ =gMain
- ldr r0, _0811E290 @ =0x0000043d
- adds r2, r3, r0
- ldrb r1, [r2]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldr r0, _0811E294 @ =gUnknown_030042D0
- ldr r0, [r0]
- str r0, [r3]
- ldr r0, _0811E298 @ =c2_8011A1C
- bl SetMainCallback2
-_0811E284:
- pop {r0}
- bx r0
- .align 2, 0
-_0811E288: .4byte gReceivedRemoteLinkPlayers
-_0811E28C: .4byte gMain
-_0811E290: .4byte 0x0000043d
-_0811E294: .4byte gUnknown_030042D0
-_0811E298: .4byte c2_8011A1C
- thumb_func_end sub_811E258
-
- thumb_func_start sub_811E29C
-sub_811E29C: @ 811E29C
- push {lr}
- ldr r0, _0811E2CC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0811E302
- ldr r0, _0811E2D0 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0811E2E0
- bl sub_800832C
- ldr r1, _0811E2D4 @ =gUnknown_03004330
- ldr r0, _0811E2D8 @ =gUnknown_02024A60
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0811E2DC @ =sub_811E258
- str r1, [r0]
- b _0811E302
- .align 2, 0
-_0811E2CC: .4byte gPaletteFade
-_0811E2D0: .4byte gBattleTypeFlags
-_0811E2D4: .4byte gUnknown_03004330
-_0811E2D8: .4byte gUnknown_02024A60
-_0811E2DC: .4byte sub_811E258
-_0811E2E0:
- movs r0, 0x5A
- bl m4aSongNumStop
- ldr r2, _0811E308 @ =gMain
- ldr r0, _0811E30C @ =0x0000043d
- adds r3, r2, r0
- ldrb r1, [r3]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
- ldr r0, _0811E310 @ =gUnknown_030042D0
- ldr r0, [r0]
- str r0, [r2]
- ldr r0, [r2, 0x8]
- bl SetMainCallback2
-_0811E302:
- pop {r0}
- bx r0
- .align 2, 0
-_0811E308: .4byte gMain
-_0811E30C: .4byte 0x0000043d
-_0811E310: .4byte gUnknown_030042D0
- thumb_func_end sub_811E29C
-
- thumb_func_start dp01_tbl3_exec_completed
-dp01_tbl3_exec_completed: @ 811E314
- push {r4,lr}
- sub sp, 0x4
- ldr r1, _0811E354 @ =gUnknown_03004330
- ldr r4, _0811E358 @ =gUnknown_02024A60
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, _0811E35C @ =sub_811DA94
- str r1, [r0]
- ldr r0, _0811E360 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0811E368
- bl GetMultiplayerId
- mov r1, sp
- strb r0, [r1]
- movs r0, 0x2
- movs r1, 0x4
- mov r2, sp
- bl dp01_prepare_buffer_wireless_probably
- ldr r1, _0811E364 @ =gUnknown_02023A60
- ldrb r0, [r4]
- lsls r0, 9
- adds r0, r1
- movs r1, 0x38
- strb r1, [r0]
- b _0811E37A
- .align 2, 0
-_0811E354: .4byte gUnknown_03004330
-_0811E358: .4byte gUnknown_02024A60
-_0811E35C: .4byte sub_811DA94
-_0811E360: .4byte gBattleTypeFlags
-_0811E364: .4byte gUnknown_02023A60
-_0811E368:
- ldr r2, _0811E384 @ =gUnknown_02024A64
- ldr r1, _0811E388 @ =gBitTable
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- ldr r0, [r2]
- bics r0, r1
- str r0, [r2]
-_0811E37A:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811E384: .4byte gUnknown_02024A64
-_0811E388: .4byte gBitTable
- thumb_func_end dp01_tbl3_exec_completed
-
- thumb_func_start sub_811E38C
-sub_811E38C: @ 811E38C
- push {lr}
- ldr r0, _0811E3B0 @ =gUnknown_02024A60
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811E3B4 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _0811E3AA
- bl dp01_tbl3_exec_completed
-_0811E3AA:
- pop {r0}
- bx r0
- .align 2, 0
-_0811E3B0: .4byte gUnknown_02024A60
-_0811E3B4: .4byte 0x02017810
- thumb_func_end sub_811E38C
-
- thumb_func_start sub_811E3B8
-sub_811E3B8: @ 811E3B8
- push {lr}
- ldr r0, _0811E3DC @ =gUnknown_02024A60
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811E3E0 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _0811E3D6
- bl dp01_tbl3_exec_completed
-_0811E3D6:
- pop {r0}
- bx r0
- .align 2, 0
-_0811E3DC: .4byte gUnknown_02024A60
-_0811E3E0: .4byte 0x02017810
- thumb_func_end sub_811E3B8
-
- thumb_func_start dp01t_00_3_getattr
-dp01t_00_3_getattr: @ 811E3E4
- push {r4-r6,lr}
- sub sp, 0x100
- movs r6, 0
- ldr r1, _0811E410 @ =gUnknown_02023A60
- ldr r0, _0811E414 @ =gUnknown_02024A60
- ldrb r2, [r0]
- lsls r0, r2, 9
- adds r1, 0x2
- adds r1, r0, r1
- ldrb r0, [r1]
- cmp r0, 0
- bne _0811E41C
- ldr r0, _0811E418 @ =gUnknown_02024A6A
- lsls r1, r2, 1
- adds r1, r0
- ldrb r0, [r1]
- mov r1, sp
- bl dp01_getattr_by_ch1_for_player_pokemon
- adds r6, r0, 0
- b _0811E43E
- .align 2, 0
-_0811E410: .4byte gUnknown_02023A60
-_0811E414: .4byte gUnknown_02024A60
-_0811E418: .4byte gUnknown_02024A6A
-_0811E41C:
- ldrb r4, [r1]
- movs r5, 0
-_0811E420:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0811E436
- lsls r0, r5, 24
- lsrs r0, 24
- mov r2, sp
- adds r1, r2, r6
- bl dp01_getattr_by_ch1_for_player_pokemon
- adds r6, r0
-_0811E436:
- lsrs r4, 1
- adds r5, 0x1
- cmp r5, 0x5
- ble _0811E420
-_0811E43E:
- lsls r1, r6, 16
- lsrs r1, 16
- movs r0, 0x1
- mov r2, sp
- bl dp01_build_cmdbuf_x1D_1D_numargs_varargs
- bl dp01_tbl3_exec_completed
- add sp, 0x100
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end dp01t_00_3_getattr
-
- thumb_func_start dp01_getattr_by_ch1_for_player_pokemon
-dp01_getattr_by_ch1_for_player_pokemon: @ 811E458
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x90
- adds r7, r1, 0
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0
- ldr r2, _0811E48C @ =gUnknown_02023A60
- ldr r3, _0811E490 @ =gUnknown_02024A60
- ldrb r0, [r3]
- lsls r0, 9
- adds r1, r2, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x3B
- bls _0811E482
- bl _0811EBEE
-_0811E482:
- lsls r0, 2
- ldr r1, _0811E494 @ =_0811E498
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811E48C: .4byte gUnknown_02023A60
-_0811E490: .4byte gUnknown_02024A60
-_0811E494: .4byte _0811E498
- .align 2, 0
-_0811E498:
- .4byte _0811E588
- .4byte _0811E7AC
- .4byte _0811E7BC
- .4byte _0811E7CC
- .4byte _0811E834
- .4byte _0811E834
- .4byte _0811E834
- .4byte _0811E834
- .4byte _0811E850
- .4byte _0811E88C
- .4byte _0811E88C
- .4byte _0811E88C
- .4byte _0811E88C
- .4byte _0811EBEE
- .4byte _0811EBEE
- .4byte _0811EBEE
- .4byte _0811EBEE
- .4byte _0811E8A8
- .4byte _0811E8B8
- .4byte _0811E8E8
- .4byte _0811E8F8
- .4byte _0811E908
- .4byte _0811E918
- .4byte _0811E928
- .4byte _0811E938
- .4byte _0811E948
- .4byte _0811E958
- .4byte _0811E968
- .4byte _0811E978
- .4byte _0811E988
- .4byte _0811E998
- .4byte _0811E9A8
- .4byte _0811E9F8
- .4byte _0811EA08
- .4byte _0811EA18
- .4byte _0811EA28
- .4byte _0811EA38
- .4byte _0811EA48
- .4byte _0811EA58
- .4byte _0811EA68
- .4byte _0811EA78
- .4byte _0811EAAC
- .4byte _0811EABC
- .4byte _0811EACC
- .4byte _0811EADC
- .4byte _0811EAEC
- .4byte _0811EAFC
- .4byte _0811EB0C
- .4byte _0811EB1C
- .4byte _0811EB3C
- .4byte _0811EB4C
- .4byte _0811EB5C
- .4byte _0811EB6C
- .4byte _0811EB7C
- .4byte _0811EB8C
- .4byte _0811EB9C
- .4byte _0811EBAC
- .4byte _0811EBBC
- .4byte _0811EBCC
- .4byte _0811EBDC
-_0811E588:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0811E79C @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- mov r1, sp
- strh r0, [r1]
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2E]
- movs r6, 0
- add r0, sp, 0x24
- mov r9, r0
- movs r1, 0x3B
- add r1, sp
- mov r10, r1
- mov r2, sp
- adds r2, 0x2B
- str r2, [sp, 0x80]
- mov r0, sp
- adds r0, 0x2A
- str r0, [sp, 0x7C]
- mov r1, sp
- adds r1, 0x68
- str r1, [sp, 0x8C]
- adds r2, 0x5
- str r2, [sp, 0x84]
- adds r0, 0x12
- str r0, [sp, 0x88]
- mov r8, r4
- add r4, sp, 0xC
-_0811E5D4:
- adds r1, r6, 0
- adds r1, 0xD
- mov r0, r8
- bl GetMonData
- strh r0, [r4]
- adds r1, r6, 0
- adds r1, 0x11
- mov r0, r8
- bl GetMonData
- mov r2, r9
- adds r1, r2, r6
- strb r0, [r1]
- adds r4, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _0811E5D4
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0811E79C @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x15
- bl GetMonData
- mov r1, r10
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x20
- bl GetMonData
- ldr r2, [sp, 0x80]
- strb r0, [r2]
- adds r0, r4, 0
- movs r1, 0x19
- bl GetMonData
- str r0, [sp, 0x44]
- adds r0, r4, 0
- movs r1, 0x27
- bl GetMonData
- mov r3, sp
- movs r5, 0x1F
- ands r0, r5
- ldrb r2, [r3, 0x14]
- movs r1, 0x20
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x14]
- adds r0, r4, 0
- movs r1, 0x28
- bl GetMonData
- mov r3, sp
- movs r6, 0x1F
- ands r0, r6
- lsls r0, 5
- ldrh r2, [r3, 0x14]
- ldr r1, _0811E7A0 @ =0xfffffc1f
- ands r1, r2
- orrs r1, r0
- strh r1, [r3, 0x14]
- adds r0, r4, 0
- movs r1, 0x29
- bl GetMonData
- mov r3, sp
- ands r0, r5
- lsls r0, 2
- ldrb r2, [r3, 0x15]
- movs r1, 0x7D
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x15]
- adds r0, r4, 0
- movs r1, 0x2A
- bl GetMonData
- movs r1, 0x1F
- ands r1, r0
- lsls r1, 15
- ldr r0, [sp, 0x14]
- ldr r2, _0811E7A4 @ =0xfff07fff
- ands r0, r2
- orrs r0, r1
- str r0, [sp, 0x14]
- adds r0, r4, 0
- movs r1, 0x2B
- bl GetMonData
- mov r3, sp
- ands r0, r6
- lsls r0, 4
- ldrh r2, [r3, 0x16]
- ldr r1, _0811E7A8 @ =0xfffffe0f
- ands r1, r2
- orrs r1, r0
- strh r1, [r3, 0x16]
- adds r0, r4, 0
- movs r1, 0x2C
- bl GetMonData
- mov r3, sp
- ands r0, r5
- lsls r0, 1
- ldrb r2, [r3, 0x17]
- movs r1, 0x3F
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- str r0, [sp, 0x48]
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
- str r0, [sp, 0x4C]
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- ldr r1, [sp, 0x7C]
- strb r0, [r1]
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x28]
- adds r0, r4, 0
- movs r1, 0x3A
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2C]
- adds r0, r4, 0
- movs r1, 0x3B
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x2]
- adds r0, r4, 0
- movs r1, 0x3C
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- movs r1, 0x3D
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x6]
- adds r0, r4, 0
- movs r1, 0x3E
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- movs r1, 0x3F
- bl GetMonData
- mov r1, sp
- strh r0, [r1, 0xA]
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- mov r3, sp
- movs r1, 0x1
- ands r0, r1
- lsls r0, 6
- ldrb r2, [r3, 0x17]
- movs r1, 0x41
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0x2E
- bl GetMonData
- mov r3, sp
- lsls r0, 7
- ldrb r2, [r3, 0x17]
- movs r1, 0x7F
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x17]
- adds r0, r4, 0
- movs r1, 0x1
- bl GetMonData
- str r0, [sp, 0x54]
- adds r0, r4, 0
- movs r1, 0x2
- ldr r2, [sp, 0x8C]
- bl GetMonData
- ldr r0, [sp, 0x84]
- ldr r1, [sp, 0x8C]
- bl StringCopy10
- adds r0, r4, 0
- movs r1, 0x7
- ldr r2, [sp, 0x88]
- bl GetMonData
- mov r2, sp
- movs r6, 0
-_0811E78C:
- adds r0, r7, r6
- adds r1, r2, r6
- ldrb r1, [r1]
- strb r1, [r0]
- adds r6, 0x1
- cmp r6, 0x57
- bls _0811E78C
- b _0811EBEE
- .align 2, 0
-_0811E79C: .4byte gPlayerParty
-_0811E7A0: .4byte 0xfffffc1f
-_0811E7A4: .4byte 0xfff07fff
-_0811E7A8: .4byte 0xfffffe0f
-_0811E7AC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E7B8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- b _0811EB26
- .align 2, 0
-_0811E7B8: .4byte gPlayerParty
-_0811E7BC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E7C8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xC
- b _0811EB26
- .align 2, 0
-_0811E7C8: .4byte gPlayerParty
-_0811E7CC:
- movs r6, 0
- add r2, sp, 0x58
- mov r9, r2
- add r0, sp, 0x60
- mov r10, r0
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _0811E830 @ =gPlayerParty
- adds r4, r1, r0
- mov r8, r9
-_0811E7E2:
- adds r1, r6, 0
- adds r1, 0xD
- adds r0, r4, 0
- bl GetMonData
- mov r1, r8
- strh r0, [r1]
- adds r1, r6, 0
- adds r1, 0x11
- adds r0, r4, 0
- bl GetMonData
- mov r2, r10
- adds r1, r2, r6
- strb r0, [r1]
- movs r0, 0x2
- add r8, r0
- adds r6, 0x1
- cmp r6, 0x3
- ble _0811E7E2
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E830 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x15
- bl GetMonData
- mov r1, r9
- strb r0, [r1, 0xC]
- mov r2, r9
- movs r6, 0
-_0811E820:
- adds r0, r7, r6
- adds r1, r2, r6
- ldrb r1, [r1]
- strb r1, [r0]
- adds r6, 0x1
- cmp r6, 0xF
- bls _0811E820
- b _0811EBEE
- .align 2, 0
-_0811E830: .4byte gPlayerParty
-_0811E834:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E84C @ =gPlayerParty
- adds r0, r1
- ldrb r1, [r3]
- lsls r1, 9
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- adds r1, 0x9
- b _0811EB26
- .align 2, 0
-_0811E84C: .4byte gPlayerParty
-_0811E850:
- movs r6, 0
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r2, _0811E888 @ =gPlayerParty
- mov r8, r2
-_0811E85C:
- adds r1, r6, 0
- adds r1, 0x11
- mov r2, r8
- adds r0, r4, r2
- bl GetMonData
- adds r1, r7, r6
- strb r0, [r1]
- adds r6, 0x1
- cmp r6, 0x3
- ble _0811E85C
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E888 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x15
- bl GetMonData
- adds r1, r7, r6
- strb r0, [r1]
- adds r6, 0x1
- b _0811EBEE
- .align 2, 0
-_0811E888: .4byte gPlayerParty
-_0811E88C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E8A4 @ =gPlayerParty
- adds r0, r1
- ldrb r1, [r3]
- lsls r1, 9
- adds r2, 0x1
- adds r1, r2
- ldrb r1, [r1]
- adds r1, 0x8
- b _0811EBE6
- .align 2, 0
-_0811E8A4: .4byte gPlayerParty
-_0811E8A8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E8B4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1
- b _0811E8C2
- .align 2, 0
-_0811E8B4: .4byte gPlayerParty
-_0811E8B8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E8E4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x19
-_0811E8C2:
- bl GetMonData
- adds r1, r0, 0
- strb r1, [r7]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r1
- lsrs r0, 16
- strb r0, [r7, 0x2]
- movs r6, 0x3
- b _0811EBEE
- .align 2, 0
-_0811E8E4: .4byte gPlayerParty
-_0811E8E8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E8F4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1A
- b _0811EBE6
- .align 2, 0
-_0811E8F4: .4byte gPlayerParty
-_0811E8F8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E904 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1B
- b _0811EBE6
- .align 2, 0
-_0811E904: .4byte gPlayerParty
-_0811E908:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E914 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1C
- b _0811EBE6
- .align 2, 0
-_0811E914: .4byte gPlayerParty
-_0811E918:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E924 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1D
- b _0811EBE6
- .align 2, 0
-_0811E924: .4byte gPlayerParty
-_0811E928:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E934 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1E
- b _0811EBE6
- .align 2, 0
-_0811E934: .4byte gPlayerParty
-_0811E938:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E944 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1F
- b _0811EBE6
- .align 2, 0
-_0811E944: .4byte gPlayerParty
-_0811E948:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E954 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x20
- b _0811EBE6
- .align 2, 0
-_0811E954: .4byte gPlayerParty
-_0811E958:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E964 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x22
- b _0811EBE6
- .align 2, 0
-_0811E964: .4byte gPlayerParty
-_0811E968:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E974 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x23
- b _0811EBE6
- .align 2, 0
-_0811E974: .4byte gPlayerParty
-_0811E978:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E984 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x24
- b _0811EBE6
- .align 2, 0
-_0811E984: .4byte gPlayerParty
-_0811E988:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E994 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x25
- b _0811EBE6
- .align 2, 0
-_0811E994: .4byte gPlayerParty
-_0811E998:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811E9A4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x26
- b _0811EBE6
- .align 2, 0
-_0811E9A4: .4byte gPlayerParty
-_0811E9A8:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- ldr r0, _0811E9F4 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x27
- bl GetMonData
- strb r0, [r7]
- adds r0, r4, 0
- movs r1, 0x28
- bl GetMonData
- strb r0, [r7, 0x1]
- adds r0, r4, 0
- movs r1, 0x29
- bl GetMonData
- strb r0, [r7, 0x2]
- adds r0, r4, 0
- movs r1, 0x2A
- bl GetMonData
- strb r0, [r7, 0x3]
- adds r0, r4, 0
- movs r1, 0x2B
- bl GetMonData
- strb r0, [r7, 0x4]
- adds r0, r4, 0
- movs r1, 0x2C
- bl GetMonData
- strb r0, [r7, 0x5]
- movs r6, 0x6
- b _0811EBEE
- .align 2, 0
-_0811E9F4: .4byte gPlayerParty
-_0811E9F8:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EA04 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x27
- b _0811EBE6
- .align 2, 0
-_0811EA04: .4byte gPlayerParty
-_0811EA08:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EA14 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x28
- b _0811EBE6
- .align 2, 0
-_0811EA14: .4byte gPlayerParty
-_0811EA18:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EA24 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x29
- b _0811EBE6
- .align 2, 0
-_0811EA24: .4byte gPlayerParty
-_0811EA28:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EA34 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2A
- b _0811EBE6
- .align 2, 0
-_0811EA34: .4byte gPlayerParty
-_0811EA38:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EA44 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2B
- b _0811EBE6
- .align 2, 0
-_0811EA44: .4byte gPlayerParty
-_0811EA48:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EA54 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2C
- b _0811EBE6
- .align 2, 0
-_0811EA54: .4byte gPlayerParty
-_0811EA58:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EA64 @ =gPlayerParty
- adds r0, r1
- movs r1, 0
- b _0811EA82
- .align 2, 0
-_0811EA64: .4byte gPlayerParty
-_0811EA68:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EA74 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x9
- b _0811EB26
- .align 2, 0
-_0811EA74: .4byte gPlayerParty
-_0811EA78:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EAA8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x37
-_0811EA82:
- bl GetMonData
- adds r1, r0, 0
- strb r1, [r7]
- movs r0, 0xFF
- lsls r0, 8
- ands r0, r1
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r1
- lsrs r0, 16
- strb r0, [r7, 0x2]
- lsrs r0, r1, 24
- strb r0, [r7, 0x3]
- movs r6, 0x4
- b _0811EBEE
- .align 2, 0
-_0811EAA8: .4byte gPlayerParty
-_0811EAAC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EAB8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x38
- b _0811EBE6
- .align 2, 0
-_0811EAB8: .4byte gPlayerParty
-_0811EABC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EAC8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x39
- b _0811EB26
- .align 2, 0
-_0811EAC8: .4byte gPlayerParty
-_0811EACC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EAD8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3A
- b _0811EB26
- .align 2, 0
-_0811EAD8: .4byte gPlayerParty
-_0811EADC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EAE8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3B
- b _0811EB26
- .align 2, 0
-_0811EAE8: .4byte gPlayerParty
-_0811EAEC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EAF8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3C
- b _0811EB26
- .align 2, 0
-_0811EAF8: .4byte gPlayerParty
-_0811EAFC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB08 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3D
- b _0811EB26
- .align 2, 0
-_0811EB08: .4byte gPlayerParty
-_0811EB0C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB18 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3E
- b _0811EB26
- .align 2, 0
-_0811EB18: .4byte gPlayerParty
-_0811EB1C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB38 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x3F
-_0811EB26:
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- strb r0, [r7]
- lsrs r0, 8
- strb r0, [r7, 0x1]
- movs r6, 0x2
- b _0811EBEE
- .align 2, 0
-_0811EB38: .4byte gPlayerParty
-_0811EB3C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB48 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x16
- b _0811EBE6
- .align 2, 0
-_0811EB48: .4byte gPlayerParty
-_0811EB4C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB58 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x17
- b _0811EBE6
- .align 2, 0
-_0811EB58: .4byte gPlayerParty
-_0811EB5C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB68 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x18
- b _0811EBE6
- .align 2, 0
-_0811EB68: .4byte gPlayerParty
-_0811EB6C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB78 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x21
- b _0811EBE6
- .align 2, 0
-_0811EB78: .4byte gPlayerParty
-_0811EB7C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB88 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2F
- b _0811EBE6
- .align 2, 0
-_0811EB88: .4byte gPlayerParty
-_0811EB8C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EB98 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x30
- b _0811EBE6
- .align 2, 0
-_0811EB98: .4byte gPlayerParty
-_0811EB9C:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EBA8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x32
- b _0811EBE6
- .align 2, 0
-_0811EBA8: .4byte gPlayerParty
-_0811EBAC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EBB8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x33
- b _0811EBE6
- .align 2, 0
-_0811EBB8: .4byte gPlayerParty
-_0811EBBC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EBC8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x34
- b _0811EBE6
- .align 2, 0
-_0811EBC8: .4byte gPlayerParty
-_0811EBCC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EBD8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x35
- b _0811EBE6
- .align 2, 0
-_0811EBD8: .4byte gPlayerParty
-_0811EBDC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811EC00 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x36
-_0811EBE6:
- bl GetMonData
- strb r0, [r7]
- movs r6, 0x1
-_0811EBEE:
- adds r0, r6, 0
- add sp, 0x90
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0811EC00: .4byte gPlayerParty
- thumb_func_end dp01_getattr_by_ch1_for_player_pokemon
-
- thumb_func_start sub_811EC04
-sub_811EC04: @ 811EC04
- push {lr}
- bl dp01_tbl3_exec_completed
- pop {r0}
- bx r0
- thumb_func_end sub_811EC04
-
- thumb_func_start sub_811EC10
-sub_811EC10: @ 811EC10
- push {r4,r5,lr}
- ldr r1, _0811EC34 @ =gUnknown_02023A60
- ldr r0, _0811EC38 @ =gUnknown_02024A60
- ldrb r2, [r0]
- lsls r0, r2, 9
- adds r1, 0x2
- adds r1, r0, r1
- ldrb r0, [r1]
- cmp r0, 0
- bne _0811EC40
- ldr r0, _0811EC3C @ =gUnknown_02024A6A
- lsls r1, r2, 1
- adds r1, r0
- ldrb r0, [r1]
- bl sub_811EC68
- b _0811EC5E
- .align 2, 0
-_0811EC34: .4byte gUnknown_02023A60
-_0811EC38: .4byte gUnknown_02024A60
-_0811EC3C: .4byte gUnknown_02024A6A
-_0811EC40:
- ldrb r4, [r1]
- movs r5, 0
-_0811EC44:
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0811EC52
- adds r0, r5, 0
- bl sub_811EC68
-_0811EC52:
- lsrs r4, 1
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _0811EC44
-_0811EC5E:
- bl dp01_tbl3_exec_completed
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811EC10
-
thumb_func_start sub_811EC68
sub_811EC68: @ 811EC68
push {r4-r7,lr}
diff --git a/asm/battle_ai.s b/asm/battle_ai.s
deleted file mode 100644
index 426790c89..000000000
--- a/asm/battle_ai.s
+++ /dev/null
@@ -1,2067 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start BattleAICmd_if_status_not_in_party
-BattleAICmd_if_status_not_in_party: @ 8108A28
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, _08108A44 @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r2, r0, 0
- cmp r1, 0x1
- bne _08108A4C
- ldr r0, _08108A48 @ =gEnemyParty
- mov r10, r0
- b _08108A50
- .align 2, 0
-_08108A44: .4byte gAIScriptPtr
-_08108A48: .4byte gEnemyParty
-_08108A4C:
- ldr r1, _08108AE4 @ =gPlayerParty
- mov r10, r1
-_08108A50:
- ldr r1, [r2]
- ldrb r7, [r1, 0x2]
- ldrb r0, [r1, 0x3]
- lsls r0, 8
- orrs r7, r0
- ldrb r0, [r1, 0x4]
- lsls r0, 16
- orrs r7, r0
- ldrb r0, [r1, 0x5]
- lsls r0, 24
- orrs r7, r0
- movs r0, 0
- mov r8, r0
- mov r9, r2
-_08108A6C:
- movs r0, 0x64
- mov r4, r8
- muls r4, r0
- add r4, r10
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
- cmp r5, 0
- beq _08108AB0
- movs r1, 0xCE
- lsls r1, 1
- cmp r5, r1
- beq _08108AB0
- cmp r6, 0
- beq _08108AB0
- cmp r0, r7
- bne _08108AB0
- mov r1, r9
- ldr r0, [r1]
- adds r0, 0xA
- str r0, [r1]
-_08108AB0:
- movs r0, 0x1
- add r8, r0
- mov r1, r8
- cmp r1, 0x5
- ble _08108A6C
- ldr r3, _08108AE8 @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r1, [r2, 0x6]
- ldrb r0, [r2, 0x7]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x8]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x9]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08108AE4: .4byte gPlayerParty
-_08108AE8: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_if_status_not_in_party
-
- thumb_func_start BattleAICmd_unk_36
-BattleAICmd_unk_36: @ 8108AEC
- push {lr}
- ldr r2, _08108B3C @ =gBattleWeather
- ldrh r1, [r2]
- movs r0, 0x7
- ands r0, r1
- cmp r0, 0
- beq _08108B00
- ldr r1, _08108B40 @ =0x02016800
- movs r0, 0x1
- str r0, [r1, 0x8]
-_08108B00:
- ldrh r2, [r2]
- movs r0, 0x18
- ands r0, r2
- adds r3, r2, 0
- cmp r0, 0
- beq _08108B12
- ldr r1, _08108B40 @ =0x02016800
- movs r0, 0x2
- str r0, [r1, 0x8]
-_08108B12:
- movs r0, 0x60
- ands r0, r3
- cmp r0, 0
- beq _08108B20
- ldr r1, _08108B40 @ =0x02016800
- movs r0, 0
- str r0, [r1, 0x8]
-_08108B20:
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _08108B2E
- ldr r1, _08108B40 @ =0x02016800
- movs r0, 0x3
- str r0, [r1, 0x8]
-_08108B2E:
- ldr r1, _08108B44 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08108B3C: .4byte gBattleWeather
-_08108B40: .4byte 0x02016800
-_08108B44: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_unk_36
-
- thumb_func_start BattleAICmd_if_effect
-BattleAICmd_if_effect: @ 8108B48
- push {lr}
- ldr r2, _08108B7C @ =gBattleMoves
- ldr r0, _08108B80 @ =0x02016800
- ldrh r1, [r0, 0x2]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r3, _08108B84 @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r0, [r0]
- ldrb r1, [r2, 0x1]
- cmp r0, r1
- bne _08108B88
- ldrb r1, [r2, 0x2]
- ldrb r0, [r2, 0x3]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- b _08108B8C
- .align 2, 0
-_08108B7C: .4byte gBattleMoves
-_08108B80: .4byte 0x02016800
-_08108B84: .4byte gAIScriptPtr
-_08108B88:
- adds r0, r2, 0x6
- str r0, [r3]
-_08108B8C:
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_effect
-
- thumb_func_start BattleAICmd_if_not_effect
-BattleAICmd_if_not_effect: @ 8108B90
- push {lr}
- ldr r2, _08108BC4 @ =gBattleMoves
- ldr r0, _08108BC8 @ =0x02016800
- ldrh r1, [r0, 0x2]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r3, _08108BCC @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r0, [r0]
- ldrb r1, [r2, 0x1]
- cmp r0, r1
- beq _08108BD0
- ldrb r1, [r2, 0x2]
- ldrb r0, [r2, 0x3]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- b _08108BD4
- .align 2, 0
-_08108BC4: .4byte gBattleMoves
-_08108BC8: .4byte 0x02016800
-_08108BCC: .4byte gAIScriptPtr
-_08108BD0:
- adds r0, r2, 0x6
- str r0, [r3]
-_08108BD4:
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_not_effect
-
- thumb_func_start BattleAICmd_if_stat_level_less_than
-BattleAICmd_if_stat_level_less_than: @ 8108BD8
- push {r4,lr}
- ldr r0, _08108BEC @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r4, r0, 0
- cmp r1, 0x1
- bne _08108BF4
- ldr r0, _08108BF0 @ =gUnknown_02024C07
- b _08108BF6
- .align 2, 0
-_08108BEC: .4byte gAIScriptPtr
-_08108BF0: .4byte gUnknown_02024C07
-_08108BF4:
- ldr r0, _08108C2C @ =gUnknown_02024C08
-_08108BF6:
- ldrb r3, [r0]
- ldr r1, _08108C30 @ =gBattleMons
- ldr r2, [r4]
- movs r0, 0x58
- muls r0, r3
- ldrb r3, [r2, 0x2]
- adds r0, r3
- adds r1, 0x18
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrb r1, [r2, 0x3]
- cmp r0, r1
- bge _08108C34
- ldrb r1, [r2, 0x4]
- ldrb r0, [r2, 0x5]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- b _08108C3A
- .align 2, 0
-_08108C2C: .4byte gUnknown_02024C08
-_08108C30: .4byte gBattleMons
-_08108C34:
- adds r0, r2, 0
- adds r0, 0x8
- str r0, [r4]
-_08108C3A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_stat_level_less_than
-
- thumb_func_start BattleAICmd_if_stat_level_more_than
-BattleAICmd_if_stat_level_more_than: @ 8108C40
- push {r4,lr}
- ldr r0, _08108C54 @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r4, r0, 0
- cmp r1, 0x1
- bne _08108C5C
- ldr r0, _08108C58 @ =gUnknown_02024C07
- b _08108C5E
- .align 2, 0
-_08108C54: .4byte gAIScriptPtr
-_08108C58: .4byte gUnknown_02024C07
-_08108C5C:
- ldr r0, _08108C94 @ =gUnknown_02024C08
-_08108C5E:
- ldrb r3, [r0]
- ldr r1, _08108C98 @ =gBattleMons
- ldr r2, [r4]
- movs r0, 0x58
- muls r0, r3
- ldrb r3, [r2, 0x2]
- adds r0, r3
- adds r1, 0x18
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrb r1, [r2, 0x3]
- cmp r0, r1
- ble _08108C9C
- ldrb r1, [r2, 0x4]
- ldrb r0, [r2, 0x5]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- b _08108CA2
- .align 2, 0
-_08108C94: .4byte gUnknown_02024C08
-_08108C98: .4byte gBattleMons
-_08108C9C:
- adds r0, r2, 0
- adds r0, 0x8
- str r0, [r4]
-_08108CA2:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_stat_level_more_than
-
- thumb_func_start BattleAICmd_if_stat_level_equal
-BattleAICmd_if_stat_level_equal: @ 8108CA8
- push {r4,lr}
- ldr r0, _08108CBC @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r4, r0, 0
- cmp r1, 0x1
- bne _08108CC4
- ldr r0, _08108CC0 @ =gUnknown_02024C07
- b _08108CC6
- .align 2, 0
-_08108CBC: .4byte gAIScriptPtr
-_08108CC0: .4byte gUnknown_02024C07
-_08108CC4:
- ldr r0, _08108CFC @ =gUnknown_02024C08
-_08108CC6:
- ldrb r3, [r0]
- ldr r1, _08108D00 @ =gBattleMons
- ldr r2, [r4]
- movs r0, 0x58
- muls r0, r3
- ldrb r3, [r2, 0x2]
- adds r0, r3
- adds r1, 0x18
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrb r1, [r2, 0x3]
- cmp r0, r1
- bne _08108D04
- ldrb r1, [r2, 0x4]
- ldrb r0, [r2, 0x5]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- b _08108D0A
- .align 2, 0
-_08108CFC: .4byte gUnknown_02024C08
-_08108D00: .4byte gBattleMons
-_08108D04:
- adds r0, r2, 0
- adds r0, 0x8
- str r0, [r4]
-_08108D0A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_stat_level_equal
-
- thumb_func_start BattleAICmd_if_stat_level_not_equal
-BattleAICmd_if_stat_level_not_equal: @ 8108D10
- push {r4,lr}
- ldr r0, _08108D24 @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r4, r0, 0
- cmp r1, 0x1
- bne _08108D2C
- ldr r0, _08108D28 @ =gUnknown_02024C07
- b _08108D2E
- .align 2, 0
-_08108D24: .4byte gAIScriptPtr
-_08108D28: .4byte gUnknown_02024C07
-_08108D2C:
- ldr r0, _08108D64 @ =gUnknown_02024C08
-_08108D2E:
- ldrb r3, [r0]
- ldr r1, _08108D68 @ =gBattleMons
- ldr r2, [r4]
- movs r0, 0x58
- muls r0, r3
- ldrb r3, [r2, 0x2]
- adds r0, r3
- adds r1, 0x18
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrb r1, [r2, 0x3]
- cmp r0, r1
- beq _08108D6C
- ldrb r1, [r2, 0x4]
- ldrb r0, [r2, 0x5]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- b _08108D72
- .align 2, 0
-_08108D64: .4byte gUnknown_02024C08
-_08108D68: .4byte gBattleMons
-_08108D6C:
- adds r0, r2, 0
- adds r0, 0x8
- str r0, [r4]
-_08108D72:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_stat_level_not_equal
-
- thumb_func_start BattleAICmd_if_can_faint
-BattleAICmd_if_can_faint: @ 8108D78
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r2, _08108E1C @ =gBattleMoves
- ldr r6, _08108E20 @ =0x02016800
- ldrh r1, [r6, 0x2]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0x1
- bls _08108E4C
- ldr r0, _08108E24 @ =gUnknown_02024DEC
- movs r1, 0
- strh r1, [r0]
- ldr r2, _08108E28 @ =0xfffff81c
- adds r0, r6, r2
- strb r1, [r0]
- adds r2, 0x3
- adds r0, r6, r2
- movs r2, 0x1
- mov r8, r2
- mov r2, r8
- strb r2, [r0]
- ldr r0, _08108E2C @ =gUnknown_02024C68
- strb r1, [r0]
- ldr r0, _08108E30 @ =gCritMultiplier
- strb r2, [r0]
- ldr r5, _08108E34 @ =gUnknown_02024BE6
- ldrh r0, [r6, 0x2]
- strh r0, [r5]
- ldr r4, _08108E38 @ =gUnknown_02024C07
- ldrb r0, [r4]
- ldr r7, _08108E3C @ =gUnknown_02024C08
- ldrb r1, [r7]
- bl sub_801CAF8
- ldrh r0, [r5]
- ldrb r1, [r4]
- ldrb r2, [r7]
- bl move_effectiveness_something
- ldr r4, _08108E40 @ =gUnknown_02024BEC
- adds r0, r6, 0
- adds r0, 0x18
- ldrb r6, [r6, 0x1]
- adds r0, r6
- ldrb r1, [r0]
- ldr r0, [r4]
- muls r0, r1
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
- cmp r0, 0
- bne _08108DEE
- mov r0, r8
- str r0, [r4]
-_08108DEE:
- ldr r2, _08108E44 @ =gBattleMons
- ldrb r1, [r7]
- movs r0, 0x58
- muls r0, r1
- adds r0, r2
- ldrh r1, [r0, 0x28]
- ldr r0, [r4]
- cmp r1, r0
- bgt _08108E4C
- ldr r3, _08108E48 @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- b _08108E54
- .align 2, 0
-_08108E1C: .4byte gBattleMoves
-_08108E20: .4byte 0x02016800
-_08108E24: .4byte gUnknown_02024DEC
-_08108E28: .4byte 0xfffff81c
-_08108E2C: .4byte gUnknown_02024C68
-_08108E30: .4byte gCritMultiplier
-_08108E34: .4byte gUnknown_02024BE6
-_08108E38: .4byte gUnknown_02024C07
-_08108E3C: .4byte gUnknown_02024C08
-_08108E40: .4byte gUnknown_02024BEC
-_08108E44: .4byte gBattleMons
-_08108E48: .4byte gAIScriptPtr
-_08108E4C:
- ldr r1, _08108E60 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08108E54:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08108E60: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_if_can_faint
-
- thumb_func_start BattleAICmd_if_cant_faint
-BattleAICmd_if_cant_faint: @ 8108E64
- push {r4-r7,lr}
- ldr r2, _08108EF8 @ =gBattleMoves
- ldr r7, _08108EFC @ =0x02016800
- ldrh r1, [r7, 0x2]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0x1
- bls _08108F28
- ldr r0, _08108F00 @ =gUnknown_02024DEC
- movs r1, 0
- strh r1, [r0]
- ldr r2, _08108F04 @ =0xfffff81c
- adds r0, r7, r2
- strb r1, [r0]
- adds r2, 0x3
- adds r0, r7, r2
- movs r2, 0x1
- strb r2, [r0]
- ldr r0, _08108F08 @ =gUnknown_02024C68
- strb r1, [r0]
- ldr r0, _08108F0C @ =gCritMultiplier
- strb r2, [r0]
- ldr r6, _08108F10 @ =gUnknown_02024BE6
- ldrh r0, [r7, 0x2]
- strh r0, [r6]
- ldr r4, _08108F14 @ =gUnknown_02024C07
- ldrb r0, [r4]
- ldr r5, _08108F18 @ =gUnknown_02024C08
- ldrb r1, [r5]
- bl sub_801CAF8
- ldrh r0, [r6]
- ldrb r1, [r4]
- ldrb r2, [r5]
- bl move_effectiveness_something
- ldr r4, _08108F1C @ =gUnknown_02024BEC
- adds r0, r7, 0
- adds r0, 0x18
- ldrb r7, [r7, 0x1]
- adds r0, r7
- ldrb r1, [r0]
- ldr r0, [r4]
- muls r0, r1
- movs r1, 0x64
- bl __divsi3
- str r0, [r4]
- ldr r3, _08108F20 @ =gBattleMons
- ldrb r2, [r5]
- movs r1, 0x58
- muls r1, r2
- adds r1, r3
- ldrh r1, [r1, 0x28]
- cmp r1, r0
- ble _08108F28
- ldr r3, _08108F24 @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- b _08108F30
- .align 2, 0
-_08108EF8: .4byte gBattleMoves
-_08108EFC: .4byte 0x02016800
-_08108F00: .4byte gUnknown_02024DEC
-_08108F04: .4byte 0xfffff81c
-_08108F08: .4byte gUnknown_02024C68
-_08108F0C: .4byte gCritMultiplier
-_08108F10: .4byte gUnknown_02024BE6
-_08108F14: .4byte gUnknown_02024C07
-_08108F18: .4byte gUnknown_02024C08
-_08108F1C: .4byte gUnknown_02024BEC
-_08108F20: .4byte gBattleMons
-_08108F24: .4byte gAIScriptPtr
-_08108F28:
- ldr r1, _08108F38 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08108F30:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08108F38: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_if_cant_faint
-
- thumb_func_start BattleAICmd_unk_3F
-BattleAICmd_unk_3F: @ 8108F3C
- push {r4-r7,lr}
- ldr r1, _08108F58 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r6, r0, 0x2
- ldrb r0, [r0, 0x1]
- adds r4, r1, 0
- cmp r0, 0x1
- beq _08108F64
- cmp r0, 0x1
- bgt _08108F5C
- cmp r0, 0
- beq _08108FA8
- b _08109008
- .align 2, 0
-_08108F58: .4byte gAIScriptPtr
-_08108F5C:
- cmp r0, 0x2
- beq _08108FA8
- cmp r0, 0x3
- bne _08109008
-_08108F64:
- movs r3, 0
- ldr r2, _08108FA0 @ =gBattleMons
- ldr r5, _08108FA4 @ =gUnknown_02024C07
- ldrb r1, [r5]
- movs r0, 0x58
- muls r0, r1
- adds r2, 0xC
- adds r0, r2
- ldrh r0, [r0]
- ldrh r1, [r6]
- cmp r0, r1
- beq _08108F9A
- adds r7, r5, 0
- movs r6, 0x58
- adds r5, r2, 0
- adds r2, r1, 0
-_08108F84:
- adds r3, 0x1
- cmp r3, 0x3
- bgt _08108F9A
- lsls r1, r3, 1
- ldrb r0, [r7]
- muls r0, r6
- adds r1, r0
- adds r1, r5
- ldrh r0, [r1]
- cmp r0, r2
- bne _08108F84
-_08108F9A:
- cmp r3, 0x4
- beq _08108FDE
- b _08108FF0
- .align 2, 0
-_08108FA0: .4byte gBattleMons
-_08108FA4: .4byte gUnknown_02024C07
-_08108FA8:
- movs r3, 0
- ldr r5, _08108FE8 @ =0x02016a00
- ldr r1, _08108FEC @ =gUnknown_02024C08
- ldrb r0, [r1]
- lsrs r0, 1
- lsls r0, 4
- adds r0, r5
- ldrh r0, [r0]
- ldrh r2, [r6]
- cmp r0, r2
- beq _08108FDA
- adds r6, r5, 0
- adds r5, r1, 0
-_08108FC2:
- adds r3, 0x1
- cmp r3, 0x7
- bgt _08108FDA
- lsls r0, r3, 1
- ldrb r1, [r5]
- lsrs r1, 1
- lsls r1, 4
- adds r0, r1
- adds r0, r6
- ldrh r0, [r0]
- cmp r0, r2
- bne _08108FC2
-_08108FDA:
- cmp r3, 0x8
- bne _08108FF0
-_08108FDE:
- ldr r0, [r4]
- adds r0, 0x8
- str r0, [r4]
- b _08109008
- .align 2, 0
-_08108FE8: .4byte 0x02016a00
-_08108FEC: .4byte gUnknown_02024C08
-_08108FF0:
- ldr r2, [r4]
- ldrb r1, [r2, 0x4]
- ldrb r0, [r2, 0x5]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
-_08109008:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_unk_3F
-
- thumb_func_start BattleAICmd_unk_40
-BattleAICmd_unk_40: @ 8109010
- push {r4-r7,lr}
- ldr r1, _0810902C @ =gAIScriptPtr
- ldr r0, [r1]
- adds r6, r0, 0x2
- ldrb r0, [r0, 0x1]
- adds r4, r1, 0
- cmp r0, 0x1
- beq _08109038
- cmp r0, 0x1
- bgt _08109030
- cmp r0, 0
- beq _0810907C
- b _081090DC
- .align 2, 0
-_0810902C: .4byte gAIScriptPtr
-_08109030:
- cmp r0, 0x2
- beq _0810907C
- cmp r0, 0x3
- bne _081090DC
-_08109038:
- movs r3, 0
- ldr r2, _08109074 @ =gBattleMons
- ldr r5, _08109078 @ =gUnknown_02024C07
- ldrb r1, [r5]
- movs r0, 0x58
- muls r0, r1
- adds r2, 0xC
- adds r0, r2
- ldrh r0, [r0]
- ldrh r1, [r6]
- cmp r0, r1
- beq _0810906E
- adds r7, r5, 0
- movs r6, 0x58
- adds r5, r2, 0
- adds r2, r1, 0
-_08109058:
- adds r3, 0x1
- cmp r3, 0x3
- bgt _0810906E
- lsls r1, r3, 1
- ldrb r0, [r7]
- muls r0, r6
- adds r1, r0
- adds r1, r5
- ldrh r0, [r1]
- cmp r0, r2
- bne _08109058
-_0810906E:
- cmp r3, 0x4
- bne _081090B2
- b _081090C4
- .align 2, 0
-_08109074: .4byte gBattleMons
-_08109078: .4byte gUnknown_02024C07
-_0810907C:
- movs r3, 0
- ldr r5, _081090BC @ =0x02016a00
- ldr r1, _081090C0 @ =gUnknown_02024C08
- ldrb r0, [r1]
- lsrs r0, 1
- lsls r0, 4
- adds r0, r5
- ldrh r0, [r0]
- ldrh r2, [r6]
- cmp r0, r2
- beq _081090AE
- adds r6, r5, 0
- adds r5, r1, 0
-_08109096:
- adds r3, 0x1
- cmp r3, 0x7
- bgt _081090AE
- lsls r0, r3, 1
- ldrb r1, [r5]
- lsrs r1, 1
- lsls r1, 4
- adds r0, r1
- adds r0, r6
- ldrh r0, [r0]
- cmp r0, r2
- bne _08109096
-_081090AE:
- cmp r3, 0x8
- beq _081090C4
-_081090B2:
- ldr r0, [r4]
- adds r0, 0x8
- str r0, [r4]
- b _081090DC
- .align 2, 0
-_081090BC: .4byte 0x02016a00
-_081090C0: .4byte gUnknown_02024C08
-_081090C4:
- ldr r2, [r4]
- ldrb r1, [r2, 0x4]
- ldrb r0, [r2, 0x5]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x7]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
-_081090DC:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_unk_40
-
- thumb_func_start BattleAICmd_if_move_effect
-BattleAICmd_if_move_effect: @ 81090E4
- push {r4-r7,lr}
- ldr r1, _081090FC @ =gAIScriptPtr
- ldr r0, [r1]
- ldrb r0, [r0, 0x1]
- adds r4, r1, 0
- cmp r0, 0x1
- beq _08109108
- cmp r0, 0x1
- bgt _08109100
- cmp r0, 0
- beq _0810915C
- b _081091B8
- .align 2, 0
-_081090FC: .4byte gAIScriptPtr
-_08109100:
- cmp r0, 0x2
- beq _0810915C
- cmp r0, 0x3
- bne _081091B8
-_08109108:
- movs r3, 0
- ldr r1, _0810914C @ =gBattleMons
- ldr r0, _08109150 @ =gUnknown_02024C07
- ldrb r2, [r0]
- ldr r6, _08109154 @ =gBattleMoves
- movs r0, 0x58
- muls r0, r2
- adds r1, 0xC
- adds r2, r0, r1
- ldr r5, _08109158 @ =gAIScriptPtr
-_0810911C:
- ldrh r0, [r2]
- cmp r0, 0
- beq _08109136
- adds r1, r0, 0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldr r1, [r5]
- ldrb r0, [r0]
- ldrb r1, [r1, 0x2]
- cmp r0, r1
- beq _0810913E
-_08109136:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x3
- ble _0810911C
-_0810913E:
- cmp r3, 0x4
- bne _081091A0
- ldr r0, [r4]
- adds r0, 0x7
- str r0, [r4]
- b _081091B8
- .align 2, 0
-_0810914C: .4byte gBattleMons
-_08109150: .4byte gUnknown_02024C07
-_08109154: .4byte gBattleMoves
-_08109158: .4byte gAIScriptPtr
-_0810915C:
- movs r3, 0
- ldr r1, _081091C0 @ =gBattleMons
- ldr r0, _081091C4 @ =gUnknown_02024C07
- ldrb r2, [r0]
- ldr r7, _081091C8 @ =gBattleMoves
- ldr r6, _081091CC @ =0x02016a00
- ldr r5, _081091D0 @ =gUnknown_02024C08
- movs r0, 0x58
- muls r0, r2
- adds r1, 0xC
- adds r2, r0, r1
-_08109172:
- lsls r1, r3, 1
- ldrh r0, [r2]
- cmp r0, 0
- beq _08109198
- ldrb r0, [r5]
- lsrs r0, 1
- lsls r0, 4
- adds r0, r1, r0
- adds r0, r6
- ldrh r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r7
- ldr r1, [r4]
- ldrb r0, [r0]
- ldrb r1, [r1, 0x2]
- cmp r0, r1
- beq _081091A0
-_08109198:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x7
- ble _08109172
-_081091A0:
- ldr r2, [r4]
- ldrb r1, [r2, 0x3]
- ldrb r0, [r2, 0x4]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
-_081091B8:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081091C0: .4byte gBattleMons
-_081091C4: .4byte gUnknown_02024C07
-_081091C8: .4byte gBattleMoves
-_081091CC: .4byte 0x02016a00
-_081091D0: .4byte gUnknown_02024C08
- thumb_func_end BattleAICmd_if_move_effect
-
- thumb_func_start BattleAICmd_if_not_move_effect
-BattleAICmd_if_not_move_effect: @ 81091D4
- push {r4-r6,lr}
- ldr r1, _081091EC @ =gAIScriptPtr
- ldr r0, [r1]
- ldrb r0, [r0, 0x1]
- adds r4, r1, 0
- cmp r0, 0x1
- beq _081091F8
- cmp r0, 0x1
- bgt _081091F0
- cmp r0, 0
- beq _0810925C
- b _08109294
- .align 2, 0
-_081091EC: .4byte gAIScriptPtr
-_081091F0:
- cmp r0, 0x2
- beq _0810925C
- cmp r0, 0x3
- bne _08109294
-_081091F8:
- movs r3, 0
- ldr r1, _0810924C @ =gBattleMons
- ldr r0, _08109250 @ =gUnknown_02024C07
- ldrb r2, [r0]
- ldr r6, _08109254 @ =gBattleMoves
- movs r0, 0x58
- muls r0, r2
- adds r1, 0xC
- adds r2, r0, r1
- ldr r5, _08109258 @ =gAIScriptPtr
-_0810920C:
- ldrh r0, [r2]
- cmp r0, 0
- beq _08109226
- adds r1, r0, 0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldr r1, [r5]
- ldrb r0, [r0]
- ldrb r1, [r1, 0x2]
- cmp r0, r1
- beq _0810922E
-_08109226:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x3
- ble _0810920C
-_0810922E:
- cmp r3, 0x4
- bne _0810928E
- ldr r2, [r4]
- ldrb r1, [r2, 0x3]
- ldrb r0, [r2, 0x4]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- b _08109294
- .align 2, 0
-_0810924C: .4byte gBattleMons
-_08109250: .4byte gUnknown_02024C07
-_08109254: .4byte gBattleMoves
-_08109258: .4byte gAIScriptPtr
-_0810925C:
- movs r3, 0
- ldr r1, _0810929C @ =0x02016a00
- ldr r0, _081092A0 @ =gUnknown_02024C08
- ldrb r0, [r0]
- lsrs r0, 1
- lsls r0, 4
- adds r2, r0, r1
- ldr r5, _081092A4 @ =gBattleMoves
-_0810926C:
- ldrh r0, [r2]
- cmp r0, 0
- beq _08109286
- adds r1, r0, 0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, [r4]
- ldrb r0, [r0]
- ldrb r1, [r1, 0x2]
- cmp r0, r1
- beq _0810928E
-_08109286:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x7
- ble _0810926C
-_0810928E:
- ldr r0, [r4]
- adds r0, 0x7
- str r0, [r4]
-_08109294:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0810929C: .4byte 0x02016a00
-_081092A0: .4byte gUnknown_02024C08
-_081092A4: .4byte gBattleMoves
- thumb_func_end BattleAICmd_if_not_move_effect
-
- thumb_func_start BattleAICmd_if_last_move_did_damage
-BattleAICmd_if_last_move_did_damage: @ 81092A8
- push {r4,r5,lr}
- ldr r0, _081092BC @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r5, r0, 0
- cmp r1, 0x1
- bne _081092C4
- ldr r0, _081092C0 @ =gUnknown_02024C07
- b _081092C6
- .align 2, 0
-_081092BC: .4byte gAIScriptPtr
-_081092C0: .4byte gUnknown_02024C07
-_081092C4:
- ldr r0, _081092E4 @ =gUnknown_02024C08
-_081092C6:
- ldrb r3, [r0]
- adds r4, r5, 0
- ldr r2, [r4]
- ldrb r0, [r2, 0x2]
- cmp r0, 0
- bne _081092EC
- ldr r0, _081092E8 @ =gUnknown_02024CA8
- lsls r1, r3, 3
- subs r1, r3
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x4]
- cmp r0, 0
- beq _081092F0
- b _08109306
- .align 2, 0
-_081092E4: .4byte gUnknown_02024C08
-_081092E8: .4byte gUnknown_02024CA8
-_081092EC:
- cmp r0, 0x1
- beq _081092F6
-_081092F0:
- adds r0, r2, 0x7
- str r0, [r4]
- b _08109328
-_081092F6:
- ldr r0, _08109320 @ =gUnknown_02024CA8
- lsls r1, r3, 3
- subs r1, r3
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x6]
- cmp r0, 0
- beq _08109324
-_08109306:
- ldrb r1, [r2, 0x3]
- ldrb r0, [r2, 0x4]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x5]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x6]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- b _08109328
- .align 2, 0
-_08109320: .4byte gUnknown_02024CA8
-_08109324:
- adds r0, r2, 0x7
- str r0, [r5]
-_08109328:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_last_move_did_damage
-
- thumb_func_start BattleAICmd_if_encored
-BattleAICmd_if_encored: @ 8109330
- push {r4,lr}
- ldr r4, _08109344 @ =gAIScriptPtr
- ldr r3, [r4]
- ldrb r0, [r3, 0x1]
- cmp r0, 0
- beq _08109348
- cmp r0, 0x1
- beq _08109370
- b _081093AC
- .align 2, 0
-_08109344: .4byte gAIScriptPtr
-_08109348:
- ldr r2, _08109364 @ =gUnknown_02024CA8
- ldr r0, _08109368 @ =gUnknown_02024A60
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, _0810936C @ =0x02016800
- ldrh r0, [r0, 0x4]
- ldrh r1, [r1, 0x2]
- cmp r0, r1
- beq _08109388
- b _081093AC
- .align 2, 0
-_08109364: .4byte gUnknown_02024CA8
-_08109368: .4byte gUnknown_02024A60
-_0810936C: .4byte 0x02016800
-_08109370:
- ldr r2, _081093A0 @ =gUnknown_02024CA8
- ldr r0, _081093A4 @ =gUnknown_02024A60
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, _081093A8 @ =0x02016800
- ldrh r0, [r0, 0x6]
- ldrh r1, [r1, 0x2]
- cmp r0, r1
- bne _081093AC
-_08109388:
- ldrb r1, [r3, 0x2]
- ldrb r0, [r3, 0x3]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r3, 0x4]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r3, 0x5]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- b _081093B0
- .align 2, 0
-_081093A0: .4byte gUnknown_02024CA8
-_081093A4: .4byte gUnknown_02024A60
-_081093A8: .4byte 0x02016800
-_081093AC:
- adds r0, r3, 0x6
- str r0, [r4]
-_081093B0:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_encored
-
- thumb_func_start BattleAICmd_unk_45
-BattleAICmd_unk_45: @ 81093B8
- ldr r2, _081093C4 @ =0x02016800
- ldrb r1, [r2, 0x10]
- movs r0, 0xB
- orrs r0, r1
- strb r0, [r2, 0x10]
- bx lr
- .align 2, 0
-_081093C4: .4byte 0x02016800
- thumb_func_end BattleAICmd_unk_45
-
- thumb_func_start BattleAICmd_if_random_2
-BattleAICmd_if_random_2: @ 81093C8
- push {r4,lr}
- ldr r0, _0810940C @ =0x02000000
- ldr r1, _08109410 @ =0x00016088
- adds r0, r1
- ldrb r0, [r0]
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r4
- bcs _08109418
- ldr r3, _08109414 @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- b _08109420
- .align 2, 0
-_0810940C: .4byte 0x02000000
-_08109410: .4byte 0x00016088
-_08109414: .4byte gAIScriptPtr
-_08109418:
- ldr r1, _08109428 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_08109420:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08109428: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_if_random_2
-
- thumb_func_start BattleAICmd_unk_47
-BattleAICmd_unk_47: @ 810942C
- ldr r2, _08109438 @ =0x02016800
- ldrb r1, [r2, 0x10]
- movs r0, 0xD
- orrs r0, r1
- strb r0, [r2, 0x10]
- bx lr
- .align 2, 0
-_08109438: .4byte 0x02016800
- thumb_func_end BattleAICmd_unk_47
-
- thumb_func_start BattleAICmd_get_hold_effect
-BattleAICmd_get_hold_effect: @ 810943C
- push {r4,lr}
- ldr r0, _0810944C @ =gAIScriptPtr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x1
- bne _08109454
- ldr r0, _08109450 @ =gUnknown_02024C07
- b _08109456
- .align 2, 0
-_0810944C: .4byte gAIScriptPtr
-_08109450: .4byte gUnknown_02024C07
-_08109454:
- ldr r0, _0810947C @ =gUnknown_02024C08
-_08109456:
- ldrb r4, [r0]
- adds r0, r4, 0
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- bne _08109488
- adds r0, r4, 0
- bl battle_get_per_side_status
- movs r1, 0x1
- ands r1, r0
- ldr r2, _08109480 @ =0x02016800
- ldr r3, _08109484 @ =0x00000222
- adds r0, r2, r3
- adds r1, r0
- ldrb r0, [r1]
- str r0, [r2, 0x8]
- b _0810949E
- .align 2, 0
-_0810947C: .4byte gUnknown_02024C08
-_08109480: .4byte 0x02016800
-_08109484: .4byte 0x00000222
-_08109488:
- ldr r1, _081094AC @ =gBattleMons
- movs r0, 0x58
- muls r0, r4
- adds r0, r1
- ldrh r0, [r0, 0x2E]
- bl ItemId_GetHoldEffect
- ldr r1, _081094B0 @ =0x02016800
- lsls r0, 24
- lsrs r0, 24
- str r0, [r1, 0x8]
-_0810949E:
- ldr r1, _081094B4 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081094AC: .4byte gBattleMons
-_081094B0: .4byte 0x02016800
-_081094B4: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_get_hold_effect
-
- thumb_func_start BattleAICmd_get_gender
-BattleAICmd_get_gender: @ 81094B8
- push {lr}
- ldr r0, _081094C8 @ =gAIScriptPtr
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x1
- bne _081094D0
- ldr r0, _081094CC @ =gUnknown_02024C07
- b _081094D2
- .align 2, 0
-_081094C8: .4byte gAIScriptPtr
-_081094CC: .4byte gUnknown_02024C07
-_081094D0:
- ldr r0, _081094FC @ =gUnknown_02024C08
-_081094D2:
- ldrb r1, [r0]
- ldr r2, _08109500 @ =gBattleMons
- movs r0, 0x58
- muls r1, r0
- adds r0, r1, r2
- ldrh r0, [r0]
- adds r2, 0x48
- adds r1, r2
- ldr r1, [r1]
- bl GetGenderFromSpeciesAndPersonality
- ldr r1, _08109504 @ =0x02016800
- lsls r0, 24
- lsrs r0, 24
- str r0, [r1, 0x8]
- ldr r1, _08109508 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x2
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_081094FC: .4byte gUnknown_02024C08
-_08109500: .4byte gBattleMons
-_08109504: .4byte 0x02016800
-_08109508: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_get_gender
-
- thumb_func_start BattleAICmd_is_first_turn
-BattleAICmd_is_first_turn: @ 810950C
- push {r4,lr}
- ldr r0, _08109520 @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r4, r0, 0
- cmp r1, 0x1
- bne _08109528
- ldr r0, _08109524 @ =gUnknown_02024C07
- b _0810952A
- .align 2, 0
-_08109520: .4byte gAIScriptPtr
-_08109524: .4byte gUnknown_02024C07
-_08109528:
- ldr r0, _08109548 @ =gUnknown_02024C08
-_0810952A:
- ldrb r3, [r0]
- ldr r2, _0810954C @ =0x02016800
- ldr r1, _08109550 @ =gUnknown_02024CA8
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x16]
- str r0, [r2, 0x8]
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08109548: .4byte gUnknown_02024C08
-_0810954C: .4byte 0x02016800
-_08109550: .4byte gUnknown_02024CA8
- thumb_func_end BattleAICmd_is_first_turn
-
- thumb_func_start BattleAICmd_get_stockpile_count
-BattleAICmd_get_stockpile_count: @ 8109554
- push {r4,lr}
- ldr r0, _08109568 @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r4, r0, 0
- cmp r1, 0x1
- bne _08109570
- ldr r0, _0810956C @ =gUnknown_02024C07
- b _08109572
- .align 2, 0
-_08109568: .4byte gAIScriptPtr
-_0810956C: .4byte gUnknown_02024C07
-_08109570:
- ldr r0, _08109590 @ =gUnknown_02024C08
-_08109572:
- ldrb r3, [r0]
- ldr r2, _08109594 @ =0x02016800
- ldr r1, _08109598 @ =gUnknown_02024CA8
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x9]
- str r0, [r2, 0x8]
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08109590: .4byte gUnknown_02024C08
-_08109594: .4byte 0x02016800
-_08109598: .4byte gUnknown_02024CA8
- thumb_func_end BattleAICmd_get_stockpile_count
-
- thumb_func_start BattleAICmd_unk_4C
-BattleAICmd_unk_4C: @ 810959C
- ldr r2, _081095B4 @ =0x02016800
- ldr r0, _081095B8 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- str r0, [r2, 0x8]
- ldr r1, _081095BC @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .align 2, 0
-_081095B4: .4byte 0x02016800
-_081095B8: .4byte gBattleTypeFlags
-_081095BC: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_unk_4C
-
- thumb_func_start BattleAICmd_get_item
-BattleAICmd_get_item: @ 81095C0
- push {lr}
- ldr r0, _081095D4 @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r2, r0, 0
- cmp r1, 0x1
- bne _081095DC
- ldr r0, _081095D8 @ =gUnknown_02024C07
- b _081095DE
- .align 2, 0
-_081095D4: .4byte gAIScriptPtr
-_081095D8: .4byte gUnknown_02024C07
-_081095DC:
- ldr r0, _081095F8 @ =gUnknown_02024C08
-_081095DE:
- ldrb r0, [r0]
- ldr r1, _081095FC @ =0x02016800
- lsls r0, 1
- adds r0, r1
- ldr r3, _08109600 @ =0xfffff8cc
- adds r0, r3
- ldrb r0, [r0]
- str r0, [r1, 0x8]
- ldr r0, [r2]
- adds r0, 0x2
- str r0, [r2]
- pop {r0}
- bx r0
- .align 2, 0
-_081095F8: .4byte gUnknown_02024C08
-_081095FC: .4byte 0x02016800
-_08109600: .4byte 0xfffff8cc
- thumb_func_end BattleAICmd_get_item
-
- thumb_func_start BattleAICmd_unk_4E
-BattleAICmd_unk_4E: @ 8109604
- ldr r3, _08109620 @ =0x02016800
- ldr r2, _08109624 @ =gBattleMoves
- ldr r1, [r3, 0x8]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x2]
- str r0, [r3, 0x8]
- ldr r1, _08109628 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .align 2, 0
-_08109620: .4byte 0x02016800
-_08109624: .4byte gBattleMoves
-_08109628: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_unk_4E
-
- thumb_func_start BattleAICmd_unk_4F
-BattleAICmd_unk_4F: @ 810962C
- ldr r3, _08109648 @ =0x02016800
- ldr r2, _0810964C @ =gBattleMoves
- ldr r1, [r3, 0x8]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- str r0, [r3, 0x8]
- ldr r1, _08109650 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .align 2, 0
-_08109648: .4byte 0x02016800
-_0810964C: .4byte gBattleMoves
-_08109650: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_unk_4F
-
- thumb_func_start BattleAICmd_unk_50
-BattleAICmd_unk_50: @ 8109654
- ldr r3, _08109670 @ =0x02016800
- ldr r2, _08109674 @ =gBattleMoves
- ldr r1, [r3, 0x8]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
- str r0, [r3, 0x8]
- ldr r1, _08109678 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- bx lr
- .align 2, 0
-_08109670: .4byte 0x02016800
-_08109674: .4byte gBattleMoves
-_08109678: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_unk_50
-
- thumb_func_start BattleAICmd_get_protect_count
-BattleAICmd_get_protect_count: @ 810967C
- push {r4,lr}
- ldr r0, _08109690 @ =gAIScriptPtr
- ldr r1, [r0]
- ldrb r1, [r1, 0x1]
- adds r4, r0, 0
- cmp r1, 0x1
- bne _08109698
- ldr r0, _08109694 @ =gUnknown_02024C07
- b _0810969A
- .align 2, 0
-_08109690: .4byte gAIScriptPtr
-_08109694: .4byte gUnknown_02024C07
-_08109698:
- ldr r0, _081096B8 @ =gUnknown_02024C08
-_0810969A:
- ldrb r3, [r0]
- ldr r2, _081096BC @ =0x02016800
- ldr r1, _081096C0 @ =gUnknown_02024CA8
- lsls r0, r3, 3
- subs r0, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x8]
- str r0, [r2, 0x8]
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081096B8: .4byte gUnknown_02024C08
-_081096BC: .4byte 0x02016800
-_081096C0: .4byte gUnknown_02024CA8
- thumb_func_end BattleAICmd_get_protect_count
-
- thumb_func_start BattleAICmd_unk_52
-BattleAICmd_unk_52: @ 81096C4
- bx lr
- thumb_func_end BattleAICmd_unk_52
-
- thumb_func_start BattleAICmd_unk_53
-BattleAICmd_unk_53: @ 81096C8
- bx lr
- thumb_func_end BattleAICmd_unk_53
-
- thumb_func_start BattleAICmd_unk_54
-BattleAICmd_unk_54: @ 81096CC
- bx lr
- thumb_func_end BattleAICmd_unk_54
-
- thumb_func_start BattleAICmd_unk_55
-BattleAICmd_unk_55: @ 81096D0
- bx lr
- thumb_func_end BattleAICmd_unk_55
-
- thumb_func_start BattleAICmd_unk_56
-BattleAICmd_unk_56: @ 81096D4
- bx lr
- thumb_func_end BattleAICmd_unk_56
-
- thumb_func_start BattleAICmd_unk_57
-BattleAICmd_unk_57: @ 81096D8
- bx lr
- thumb_func_end BattleAICmd_unk_57
-
- thumb_func_start BattleAICmd_call
-BattleAICmd_call: @ 81096DC
- push {r4,lr}
- ldr r4, _08109708 @ =gAIScriptPtr
- ldr r0, [r4]
- adds r0, 0x5
- bl sub_81098C4
- ldr r2, [r4]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r1, r0
- str r1, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08109708: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_call
-
- thumb_func_start BattleAICmd_jump
-BattleAICmd_jump: @ 810970C
- ldr r3, _08109728 @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- bx lr
- .align 2, 0
-_08109728: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_jump
-
- thumb_func_start BattleAICmd_unk_5A
-BattleAICmd_unk_5A: @ 810972C
- push {lr}
- bl sub_8109908
- lsls r0, 24
- cmp r0, 0
- bne _08109742
- ldr r2, _08109748 @ =0x02016800
- ldrb r1, [r2, 0x10]
- movs r0, 0x1
- orrs r0, r1
- strb r0, [r2, 0x10]
-_08109742:
- pop {r0}
- bx r0
- .align 2, 0
-_08109748: .4byte 0x02016800
- thumb_func_end BattleAICmd_unk_5A
-
- thumb_func_start BattleAICmd_if_level_cond
-BattleAICmd_if_level_cond: @ 810974C
- push {r4,r5,lr}
- ldr r5, _08109764 @ =gAIScriptPtr
- ldr r4, [r5]
- ldrb r0, [r4, 0x1]
- cmp r0, 0x1
- beq _081097A0
- cmp r0, 0x1
- bgt _08109768
- cmp r0, 0
- beq _0810976E
- b _0810981C
- .align 2, 0
-_08109764: .4byte gAIScriptPtr
-_08109768:
- cmp r0, 0x2
- beq _081097D0
- b _0810981C
-_0810976E:
- ldr r3, _08109794 @ =gBattleMons
- ldr r0, _08109798 @ =gUnknown_02024C07
- ldrb r0, [r0]
- movs r2, 0x58
- adds r1, r0, 0
- muls r1, r2
- adds r1, r3
- adds r1, 0x2A
- ldr r0, _0810979C @ =gUnknown_02024C08
- ldrb r0, [r0]
- muls r0, r2
- adds r0, r3
- adds r0, 0x2A
- ldrb r1, [r1]
- ldrb r0, [r0]
- cmp r1, r0
- bhi _081097F2
- b _08109818
- .align 2, 0
-_08109794: .4byte gBattleMons
-_08109798: .4byte gUnknown_02024C07
-_0810979C: .4byte gUnknown_02024C08
-_081097A0:
- ldr r3, _081097C4 @ =gBattleMons
- ldr r0, _081097C8 @ =gUnknown_02024C07
- ldrb r0, [r0]
- movs r2, 0x58
- adds r1, r0, 0
- muls r1, r2
- adds r1, r3
- adds r1, 0x2A
- ldr r0, _081097CC @ =gUnknown_02024C08
- ldrb r0, [r0]
- muls r0, r2
- adds r0, r3
- adds r0, 0x2A
- ldrb r1, [r1]
- ldrb r0, [r0]
- cmp r1, r0
- bcc _081097F2
- b _08109818
- .align 2, 0
-_081097C4: .4byte gBattleMons
-_081097C8: .4byte gUnknown_02024C07
-_081097CC: .4byte gUnknown_02024C08
-_081097D0:
- ldr r3, _0810980C @ =gBattleMons
- ldr r0, _08109810 @ =gUnknown_02024C07
- ldrb r0, [r0]
- movs r2, 0x58
- adds r1, r0, 0
- muls r1, r2
- adds r1, r3
- adds r1, 0x2A
- ldr r0, _08109814 @ =gUnknown_02024C08
- ldrb r0, [r0]
- muls r0, r2
- adds r0, r3
- adds r0, 0x2A
- ldrb r1, [r1]
- ldrb r0, [r0]
- cmp r1, r0
- bne _08109818
-_081097F2:
- ldrb r1, [r4, 0x2]
- ldrb r0, [r4, 0x3]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r4, 0x4]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r4, 0x5]
- lsls r0, 24
- orrs r1, r0
- str r1, [r5]
- b _0810981C
- .align 2, 0
-_0810980C: .4byte gBattleMons
-_08109810: .4byte gUnknown_02024C07
-_08109814: .4byte gUnknown_02024C08
-_08109818:
- adds r0, r4, 0x6
- str r0, [r5]
-_0810981C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end BattleAICmd_if_level_cond
-
- thumb_func_start BattleAICmd_if_taunted
-BattleAICmd_if_taunted: @ 8109824
- push {lr}
- ldr r2, _08109858 @ =gUnknown_02024CA8
- ldr r0, _0810985C @ =gUnknown_02024C08
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x13]
- lsls r0, 28
- cmp r0, 0
- beq _08109864
- ldr r3, _08109860 @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- b _0810986C
- .align 2, 0
-_08109858: .4byte gUnknown_02024CA8
-_0810985C: .4byte gUnknown_02024C08
-_08109860: .4byte gAIScriptPtr
-_08109864:
- ldr r1, _08109870 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_0810986C:
- pop {r0}
- bx r0
- .align 2, 0
-_08109870: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_if_taunted
-
- thumb_func_start BattleAICmd_if_not_taunted
-BattleAICmd_if_not_taunted: @ 8109874
- push {lr}
- ldr r2, _081098A8 @ =gUnknown_02024CA8
- ldr r0, _081098AC @ =gUnknown_02024C08
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x13]
- lsls r0, 28
- cmp r0, 0
- bne _081098B4
- ldr r3, _081098B0 @ =gAIScriptPtr
- ldr r2, [r3]
- ldrb r1, [r2, 0x1]
- ldrb r0, [r2, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r2, 0x4]
- lsls r0, 24
- orrs r1, r0
- str r1, [r3]
- b _081098BC
- .align 2, 0
-_081098A8: .4byte gUnknown_02024CA8
-_081098AC: .4byte gUnknown_02024C08
-_081098B0: .4byte gAIScriptPtr
-_081098B4:
- ldr r1, _081098C0 @ =gAIScriptPtr
- ldr r0, [r1]
- adds r0, 0x5
- str r0, [r1]
-_081098BC:
- pop {r0}
- bx r0
- .align 2, 0
-_081098C0: .4byte gAIScriptPtr
- thumb_func_end BattleAICmd_if_not_taunted
-
- thumb_func_start sub_81098C4
-sub_81098C4: @ 81098C4
- push {r4,lr}
- ldr r4, _081098E0 @ =0x02016c00
- adds r3, r4, 0
- adds r3, 0x20
- ldrb r1, [r3]
- adds r2, r1, 0x1
- strb r2, [r3]
- lsls r1, 24
- lsrs r1, 22
- adds r1, r4
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081098E0: .4byte 0x02016c00
- thumb_func_end sub_81098C4
-
- thumb_func_start unref_sub_81098E4
-unref_sub_81098E4: @ 81098E4
- ldr r3, _08109900 @ =0x02016c00
- adds r2, r3, 0
- adds r2, 0x20
- ldrb r0, [r2]
- adds r1, r0, 0x1
- strb r1, [r2]
- lsls r0, 24
- lsrs r0, 22
- adds r0, r3
- ldr r1, _08109904 @ =gAIScriptPtr
- ldr r1, [r1]
- str r1, [r0]
- bx lr
- .align 2, 0
-_08109900: .4byte 0x02016c00
-_08109904: .4byte gAIScriptPtr
- thumb_func_end unref_sub_81098E4
-
- thumb_func_start sub_8109908
-sub_8109908: @ 8109908
- push {lr}
- ldr r3, _0810991C @ =0x02016c00
- adds r2, r3, 0
- adds r2, 0x20
- ldrb r0, [r2]
- cmp r0, 0
- bne _08109920
- movs r0, 0
- b _08109932
- .align 2, 0
-_0810991C: .4byte 0x02016c00
-_08109920:
- subs r0, 0x1
- strb r0, [r2]
- ldr r1, _08109938 @ =gAIScriptPtr
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r3
- ldr r0, [r0]
- str r0, [r1]
- movs r0, 0x1
-_08109932:
- pop {r1}
- bx r1
- .align 2, 0
-_08109938: .4byte gAIScriptPtr
- thumb_func_end sub_8109908
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_anim.s b/asm/battle_anim.s
deleted file mode 100644
index a64d0414a..000000000
--- a/asm/battle_anim.s
+++ /dev/null
@@ -1,4729 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8075624
-sub_8075624: @ 8075624
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, _080756B8 @ =gUnknown_0202F7B0
- movs r1, 0
- strb r1, [r0]
- ldr r0, _080756BC @ =gUnknown_0202F7B1
- strb r1, [r0]
- ldr r0, _080756C0 @ =gUnknown_0202F7B2
- strb r1, [r0]
- ldr r0, _080756C4 @ =gUnknown_0202F7B3
- strb r1, [r0]
- ldr r0, _080756C8 @ =gUnknown_0202F7B4
- movs r1, 0
- str r1, [r0]
- ldr r0, _080756CC @ =gUnknown_0202F7B8
- str r1, [r0]
- ldr r0, _080756D0 @ =gUnknown_0202F7BC
- movs r2, 0
- strh r1, [r0]
- ldr r0, _080756D4 @ =gUnknown_0202F7BE
- strb r2, [r0]
- ldr r4, _080756D8 @ =gUnknown_0202F7C2
- ldr r5, _080756DC @ =gUnknown_0202F7C4
- ldr r6, _080756E0 @ =gUnknown_0202F7C5
- ldr r7, _080756E4 @ =gUnknown_0202F7C6
- ldr r0, _080756E8 @ =gUnknown_0202F7C8
- mov r12, r0
- ldr r1, _080756EC @ =gUnknown_0202F7C9
- mov r8, r1
- ldr r0, _080756F0 @ =gUnknown_0202F7D2
- mov r9, r0
- ldr r1, _080756F4 @ =0x0000ffff
- adds r3, r1, 0
- ldr r1, _080756F8 @ =gUnknown_03004B10
- movs r2, 0x7
-_0807566E:
- ldrh r0, [r1]
- orrs r0, r3
- strh r0, [r1]
- adds r1, 0x2
- subs r2, 0x1
- cmp r2, 0
- bge _0807566E
- ldr r1, _080756FC @ =gBattleAnimArgs
- movs r2, 0
- adds r0, r1, 0
- adds r0, 0xE
-_08075684:
- strh r2, [r0]
- subs r0, 0x2
- cmp r0, r1
- bge _08075684
- movs r1, 0
- movs r0, 0xFF
- strb r0, [r4]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r4, 0x1]
- strb r1, [r5]
- strb r1, [r6]
- movs r0, 0
- strh r1, [r7]
- mov r1, r12
- strb r0, [r1]
- mov r1, r8
- strb r0, [r1]
- mov r1, r9
- strb r0, [r1]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080756B8: .4byte gUnknown_0202F7B0
-_080756BC: .4byte gUnknown_0202F7B1
-_080756C0: .4byte gUnknown_0202F7B2
-_080756C4: .4byte gUnknown_0202F7B3
-_080756C8: .4byte gUnknown_0202F7B4
-_080756CC: .4byte gUnknown_0202F7B8
-_080756D0: .4byte gUnknown_0202F7BC
-_080756D4: .4byte gUnknown_0202F7BE
-_080756D8: .4byte gUnknown_0202F7C2
-_080756DC: .4byte gUnknown_0202F7C4
-_080756E0: .4byte gUnknown_0202F7C5
-_080756E4: .4byte gUnknown_0202F7C6
-_080756E8: .4byte gUnknown_0202F7C8
-_080756EC: .4byte gUnknown_0202F7C9
-_080756F0: .4byte gUnknown_0202F7D2
-_080756F4: .4byte 0x0000ffff
-_080756F8: .4byte gUnknown_03004B10
-_080756FC: .4byte gBattleAnimArgs
- thumb_func_end sub_8075624
-
- thumb_func_start move_anim_start_t1
-move_anim_start_t1: @ 8075700
- push {lr}
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r2, _08075724 @ =gUnknown_0202F7C8
- ldr r0, _08075728 @ =gUnknown_02024C07
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r2, _0807572C @ =gUnknown_0202F7C9
- ldr r0, _08075730 @ =gUnknown_02024C08
- ldrb r0, [r0]
- strb r0, [r2]
- ldr r0, _08075734 @ =gBattleAnims_Moves
- movs r2, 0x1
- bl move_something
- pop {r0}
- bx r0
- .align 2, 0
-_08075724: .4byte gUnknown_0202F7C8
-_08075728: .4byte gUnknown_02024C07
-_0807572C: .4byte gUnknown_0202F7C9
-_08075730: .4byte gUnknown_02024C08
-_08075734: .4byte gBattleAnims_Moves
- thumb_func_end move_anim_start_t1
-
- thumb_func_start move_something
-move_something: @ 8075738
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- str r0, [sp]
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- lsls r2, 24
- lsrs r2, 24
- mov r9, r2
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _080757D8
- bl sub_8079E24
- movs r0, 0
- bl sub_8043EB4
- movs r4, 0
- mov r0, r8
- lsls r0, 2
- mov r10, r0
- ldr r6, _0807578C @ =gUnknown_02024A6A
- movs r7, 0x64
- ldr r5, _08075790 @ =gUnknown_0202F7CA
-_08075774:
- lsls r0, r4, 24
- lsrs r0, 24
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- beq _08075798
- ldrh r0, [r6]
- muls r0, r7
- ldr r1, _08075794 @ =gEnemyParty
- b _0807579E
- .align 2, 0
-_0807578C: .4byte gUnknown_02024A6A
-_08075790: .4byte gUnknown_0202F7CA
-_08075794: .4byte gEnemyParty
-_08075798:
- ldrh r0, [r6]
- muls r0, r7
- ldr r1, _080757C0 @ =gPlayerParty
-_0807579E:
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- strh r0, [r5]
- adds r6, 0x2
- adds r5, 0x2
- adds r4, 0x1
- cmp r4, 0x3
- ble _08075774
- ldr r3, _080757C4 @ =gUnknown_0202F7C6
- ldr r5, _080757C8 @ =gUnknown_0202F7C2
- ldr r1, _080757CC @ =gUnknown_0202F7B1
- mov r12, r1
- ldr r7, _080757D0 @ =gUnknown_0202F7AC
- ldr r6, _080757D4 @ =sub_80759D0
- b _080757FC
- .align 2, 0
-_080757C0: .4byte gPlayerParty
-_080757C4: .4byte gUnknown_0202F7C6
-_080757C8: .4byte gUnknown_0202F7C2
-_080757CC: .4byte gUnknown_0202F7B1
-_080757D0: .4byte gUnknown_0202F7AC
-_080757D4: .4byte sub_80759D0
-_080757D8:
- ldr r3, _08075808 @ =gUnknown_0202F7C6
- ldr r5, _0807580C @ =gUnknown_0202F7C2
- mov r0, r8
- lsls r0, 2
- mov r10, r0
- ldr r1, _08075810 @ =gUnknown_0202F7B1
- mov r12, r1
- ldr r7, _08075814 @ =gUnknown_0202F7AC
- ldr r6, _08075818 @ =sub_80759D0
- ldr r2, _0807581C @ =0x02019348
- ldr r1, _08075820 @ =gUnknown_0202F7CA
- movs r4, 0x3
-_080757F0:
- ldrh r0, [r2]
- strh r0, [r1]
- adds r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bge _080757F0
-_080757FC:
- mov r0, r9
- cmp r0, 0
- bne _08075824
- strh r0, [r3]
- b _08075828
- .align 2, 0
-_08075808: .4byte gUnknown_0202F7C6
-_0807580C: .4byte gUnknown_0202F7C2
-_08075810: .4byte gUnknown_0202F7B1
-_08075814: .4byte gUnknown_0202F7AC
-_08075818: .4byte sub_80759D0
-_0807581C: .4byte 0x02019348
-_08075820: .4byte gUnknown_0202F7CA
-_08075824:
- mov r1, r8
- strh r1, [r3]
-_08075828:
- ldr r1, _0807587C @ =gBattleAnimArgs
- movs r2, 0
- adds r0, r1, 0
- adds r0, 0xE
-_08075830:
- strh r2, [r0]
- subs r0, 0x2
- cmp r0, r1
- bge _08075830
- movs r0, 0xFF
- strb r0, [r5]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r5, 0x1]
- ldr r0, [sp]
- add r0, r10
- ldr r0, [r0]
- ldr r1, _08075880 @ =gUnknown_0202F7A4
- str r0, [r1]
- movs r0, 0x1
- mov r1, r12
- strb r0, [r1]
- movs r0, 0
- ldr r1, _08075884 @ =gUnknown_0202F7B0
- strb r0, [r1]
- str r6, [r7]
- ldr r0, _08075888 @ =0x0000ffff
- adds r2, r0, 0
- ldr r1, _0807588C @ =gUnknown_03004B10
- movs r4, 0x7
-_08075862:
- ldrh r0, [r1]
- orrs r0, r2
- strh r0, [r1]
- adds r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bge _08075862
- mov r1, r9
- cmp r1, 0
- beq _080758AE
- movs r4, 0
- ldr r2, _08075890 @ =gUnknown_081C7160
- b _08075896
- .align 2, 0
-_0807587C: .4byte gBattleAnimArgs
-_08075880: .4byte gUnknown_0202F7A4
-_08075884: .4byte gUnknown_0202F7B0
-_08075888: .4byte 0x0000ffff
-_0807588C: .4byte gUnknown_03004B10
-_08075890: .4byte gUnknown_081C7160
-_08075894:
- adds r4, 0x1
-_08075896:
- lsls r0, r4, 1
- adds r0, r2
- ldrh r0, [r0]
- ldr r1, _080758D0 @ =0x0000ffff
- cmp r0, r1
- beq _080758AE
- cmp r8, r0
- bne _08075894
- ldr r0, _080758D4 @ =gMPlay_BGM
- movs r2, 0x80
- bl m4aMPlayVolumeControl
-_080758AE:
- ldr r0, _080758D8 @ =gUnknown_030042C4
- movs r1, 0
- strh r1, [r0]
- ldr r0, _080758DC @ =gUnknown_03004240
- strh r1, [r0]
- ldr r0, _080758E0 @ =gUnknown_03004200
- strh r1, [r0]
- ldr r0, _080758E4 @ =gUnknown_03004244
- strh r1, [r0]
- 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
-_080758D0: .4byte 0x0000ffff
-_080758D4: .4byte gMPlay_BGM
-_080758D8: .4byte gUnknown_030042C4
-_080758DC: .4byte gUnknown_03004240
-_080758E0: .4byte gUnknown_03004200
-_080758E4: .4byte gUnknown_03004244
- thumb_func_end move_something
-
- thumb_func_start move_anim_8072740
-move_anim_8072740: @ 80758E8
- push {r4,lr}
- adds r4, r0, 0
- bl FreeSpriteOamMatrix
- adds r0, r4, 0
- bl DestroySprite
- ldr r1, _08075904 @ =gUnknown_0202F7B2
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08075904: .4byte gUnknown_0202F7B2
- thumb_func_end move_anim_8072740
-
- thumb_func_start move_anim_task_del
-move_anim_task_del: @ 8075908
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- ldr r1, _08075920 @ =gUnknown_0202F7B2
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08075920: .4byte gUnknown_0202F7B2
- thumb_func_end move_anim_task_del
-
- thumb_func_start move_anim_related_task_del
-move_anim_related_task_del: @ 8075924
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- ldr r1, _0807593C @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_0807593C: .4byte gUnknown_0202F7B3
- thumb_func_end move_anim_related_task_del
-
- thumb_func_start sub_8075940
-sub_8075940: @ 8075940
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- movs r2, 0
- ldr r4, _08075958 @ =0x0000ffff
- ldr r1, _0807595C @ =gUnknown_03004B10
-_0807594C:
- ldrh r0, [r1]
- cmp r0, r4
- bne _08075960
- strh r3, [r1]
- b _08075968
- .align 2, 0
-_08075958: .4byte 0x0000ffff
-_0807595C: .4byte gUnknown_03004B10
-_08075960:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, 0x7
- ble _0807594C
-_08075968:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8075940
-
- thumb_func_start sub_8075970
-sub_8075970: @ 8075970
- push {r4,lr}
- lsls r0, 16
- lsrs r3, r0, 16
- movs r2, 0
- ldr r0, _0807598C @ =0x0000ffff
- adds r4, r0, 0
- ldr r1, _08075990 @ =gUnknown_03004B10
-_0807597E:
- ldrh r0, [r1]
- cmp r0, r3
- bne _08075994
- orrs r0, r4
- strh r0, [r1]
- b _0807599C
- .align 2, 0
-_0807598C: .4byte 0x0000ffff
-_08075990: .4byte gUnknown_03004B10
-_08075994:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, 0x7
- ble _0807597E
-_0807599C:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8075970
-
- thumb_func_start move_anim_waiter
-move_anim_waiter: @ 80759A4
- push {lr}
- ldr r2, _080759BC @ =gUnknown_0202F7B0
- ldrb r1, [r2]
- movs r0, 0
- ldrsb r0, [r2, r0]
- cmp r0, 0
- bgt _080759C8
- ldr r0, _080759C0 @ =gUnknown_0202F7AC
- ldr r1, _080759C4 @ =sub_80759D0
- str r1, [r0]
- movs r0, 0
- b _080759CA
- .align 2, 0
-_080759BC: .4byte gUnknown_0202F7B0
-_080759C0: .4byte gUnknown_0202F7AC
-_080759C4: .4byte sub_80759D0
-_080759C8:
- subs r0, r1, 0x1
-_080759CA:
- strb r0, [r2]
- pop {r0}
- bx r0
- thumb_func_end move_anim_waiter
-
- thumb_func_start sub_80759D0
-sub_80759D0: @ 80759D0
- push {r4,lr}
- ldr r4, _08075A00 @ =gUnknown_0837F4B8
-_080759D4:
- ldr r0, _08075A04 @ =gUnknown_0202F7A4
- ldr r0, [r0]
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, _08075A08 @ =gUnknown_0202F7B0
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- bne _080759F8
- ldr r0, _08075A0C @ =gUnknown_0202F7B1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080759D4
-_080759F8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08075A00: .4byte gUnknown_0837F4B8
-_08075A04: .4byte gUnknown_0202F7A4
-_08075A08: .4byte gUnknown_0202F7B0
-_08075A0C: .4byte gUnknown_0202F7B1
- thumb_func_end sub_80759D0
-
- thumb_func_start ma00_load_graphics
-ma00_load_graphics: @ 8075A10
- push {r4-r6,lr}
- ldr r6, _08075A5C @ =gUnknown_0202F7A4
- ldr r0, [r6]
- adds r1, r0, 0x1
- str r1, [r6]
- ldrb r4, [r0, 0x1]
- ldrb r0, [r1, 0x1]
- lsls r0, 8
- orrs r4, r0
- lsls r5, r4, 3
- ldr r0, _08075A60 @ =gBattleAnimPicTable - (10000 * 8)
- adds r0, r5, r0
- bl LoadCompressedObjectPic
- ldr r0, _08075A64 @ =gBattleAnimPaletteTable - (10000 * 8)
- adds r5, r0
- adds r0, r5, 0
- bl LoadCompressedObjectPalette
- ldr r0, [r6]
- adds r0, 0x2
- str r0, [r6]
- ldr r0, _08075A68 @ =0xffffd8f0
- adds r4, r0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- bl sub_8075940
- ldr r1, _08075A6C @ =gUnknown_0202F7B0
- movs r0, 0x1
- strb r0, [r1]
- ldr r1, _08075A70 @ =gUnknown_0202F7AC
- ldr r0, _08075A74 @ =move_anim_waiter
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08075A5C: .4byte gUnknown_0202F7A4
-_08075A60: .4byte gBattleAnimPicTable - (10000 * 8)
-_08075A64: .4byte gBattleAnimPaletteTable - (10000 * 8)
-_08075A68: .4byte 0xffffd8f0
-_08075A6C: .4byte gUnknown_0202F7B0
-_08075A70: .4byte gUnknown_0202F7AC
-_08075A74: .4byte move_anim_waiter
- thumb_func_end ma00_load_graphics
-
- thumb_func_start ma01_080728D0
-ma01_080728D0: @ 8075A78
- push {r4-r6,lr}
- ldr r6, _08075AB8 @ =gUnknown_0202F7A4
- ldr r0, [r6]
- adds r1, r0, 0x1
- str r1, [r6]
- ldrb r4, [r0, 0x1]
- ldrb r0, [r1, 0x1]
- lsls r0, 8
- orrs r4, r0
- ldr r1, _08075ABC @ =gBattleAnimPicTable
- ldr r0, _08075AC0 @ =0xffffd8f0
- adds r4, r0
- lsls r0, r4, 3
- adds r0, r1
- ldrh r5, [r0, 0x6]
- adds r0, r5, 0
- bl FreeSpriteTilesByTag
- adds r0, r5, 0
- bl FreeSpritePaletteByTag
- ldr r0, [r6]
- adds r0, 0x2
- str r0, [r6]
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- bl sub_8075970
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08075AB8: .4byte gUnknown_0202F7A4
-_08075ABC: .4byte gBattleAnimPicTable
-_08075AC0: .4byte 0xffffd8f0
- thumb_func_end ma01_080728D0
-
- thumb_func_start ma02_instanciate_template
-ma02_instanciate_template: @ 8075AC4
- push {r4-r7,lr}
- ldr r5, _08075B2C @ =gUnknown_0202F7A4
- ldr r1, [r5]
- adds r3, r1, 0x1
- str r3, [r5]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r3, 0x1]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r3, 0x2]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r3, 0x3]
- lsls r0, 24
- adds r7, r2, r0
- adds r0, r1, 0x5
- str r0, [r5]
- ldrb r4, [r1, 0x5]
- adds r0, r1, 0x6
- str r0, [r5]
- ldrb r0, [r1, 0x6]
- adds r1, 0x7
- str r1, [r5]
- cmp r0, 0
- beq _08075B14
- adds r6, r5, 0
- ldr r5, _08075B30 @ =gBattleAnimArgs
- adds r3, r0, 0
-_08075AFC:
- ldr r2, [r6]
- ldrb r1, [r2]
- ldrb r0, [r2, 0x1]
- lsls r0, 8
- orrs r1, r0
- strh r1, [r5]
- adds r2, 0x2
- str r2, [r6]
- adds r5, 0x2
- subs r3, 0x1
- cmp r3, 0
- bne _08075AFC
-_08075B14:
- movs r0, 0x80
- ands r0, r4
- cmp r0, 0
- beq _08075B44
- movs r0, 0x80
- eors r4, r0
- cmp r4, 0x3F
- bls _08075B34
- adds r0, r4, 0
- subs r0, 0x40
- b _08075B36
- .align 2, 0
-_08075B2C: .4byte gUnknown_0202F7A4
-_08075B30: .4byte gBattleAnimArgs
-_08075B34:
- negs r0, r4
-_08075B36:
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08075B40 @ =gUnknown_0202F7C9
- b _08075B56
- .align 2, 0
-_08075B40: .4byte gUnknown_0202F7C9
-_08075B44:
- cmp r4, 0x3F
- bls _08075B4E
- adds r0, r4, 0
- subs r0, 0x40
- b _08075B50
-_08075B4E:
- negs r0, r4
-_08075B50:
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08075BAC @ =gUnknown_0202F7C8
-_08075B56:
- ldrb r0, [r0]
- bl sub_8079E90
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r4, 24
- asrs r1, 24
- adds r0, r1
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r0, r6, 16
- asrs r0, 16
- cmp r0, 0x2
- bgt _08075B74
- movs r6, 0x3
-_08075B74:
- ldr r5, _08075BB0 @ =gUnknown_0202F7C9
- ldrb r0, [r5]
- movs r1, 0x2
- bl sub_8077ABC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldrb r0, [r5]
- movs r1, 0x3
- bl sub_8077ABC
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- lsls r3, r6, 24
- lsrs r3, 24
- adds r0, r7, 0
- adds r1, r4, 0
- bl CreateSpriteAndAnimate
- ldr r1, _08075BB4 @ =gUnknown_0202F7B2
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08075BAC: .4byte gUnknown_0202F7C8
-_08075BB0: .4byte gUnknown_0202F7C9
-_08075BB4: .4byte gUnknown_0202F7B2
- thumb_func_end ma02_instanciate_template
-
- thumb_func_start sub_8075BB8
-sub_8075BB8: @ 8075BB8
- push {r4-r7,lr}
- ldr r4, _08075C28 @ =gUnknown_0202F7A4
- ldr r1, [r4]
- adds r3, r1, 0x1
- str r3, [r4]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r3, 0x1]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r3, 0x2]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r3, 0x3]
- lsls r0, 24
- adds r6, r2, r0
- adds r0, r1, 0x5
- str r0, [r4]
- ldrb r7, [r1, 0x5]
- adds r0, r1, 0x6
- str r0, [r4]
- ldrb r0, [r1, 0x6]
- adds r1, 0x7
- str r1, [r4]
- cmp r0, 0
- beq _08075C08
- adds r5, r4, 0
- ldr r4, _08075C2C @ =gBattleAnimArgs
- adds r3, r0, 0
-_08075BF0:
- ldr r2, [r5]
- ldrb r1, [r2]
- ldrb r0, [r2, 0x1]
- lsls r0, 8
- orrs r1, r0
- strh r1, [r4]
- adds r2, 0x2
- str r2, [r5]
- adds r4, 0x2
- subs r3, 0x1
- cmp r3, 0
- bne _08075BF0
-_08075C08:
- adds r0, r6, 0
- adds r1, r7, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- bl _call_via_r6
- ldr r1, _08075C30 @ =gUnknown_0202F7B2
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08075C28: .4byte gUnknown_0202F7A4
-_08075C2C: .4byte gBattleAnimArgs
-_08075C30: .4byte gUnknown_0202F7B2
- thumb_func_end sub_8075BB8
-
- thumb_func_start ma04_wait_countdown
-ma04_wait_countdown: @ 8075C34
- push {r4,lr}
- ldr r1, _08075C64 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r2, r0, 0x1
- str r2, [r1]
- ldr r3, _08075C68 @ =gUnknown_0202F7B0
- ldrb r0, [r0, 0x1]
- strb r0, [r3]
- lsls r0, 24
- cmp r0, 0
- bne _08075C52
- movs r4, 0x1
- negs r4, r4
- adds r0, r4, 0
- strb r0, [r3]
-_08075C52:
- adds r0, r2, 0x1
- str r0, [r1]
- ldr r1, _08075C6C @ =gUnknown_0202F7AC
- ldr r0, _08075C70 @ =move_anim_waiter
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08075C64: .4byte gUnknown_0202F7A4
-_08075C68: .4byte gUnknown_0202F7B0
-_08075C6C: .4byte gUnknown_0202F7AC
-_08075C70: .4byte move_anim_waiter
- thumb_func_end ma04_wait_countdown
-
- thumb_func_start sub_8075C74
-sub_8075C74: @ 8075C74
- push {lr}
- ldr r0, _08075C8C @ =gUnknown_0202F7B2
- ldrb r2, [r0]
- cmp r2, 0
- bne _08075C98
- ldr r0, _08075C90 @ =gUnknown_0202F7A4
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- ldr r0, _08075C94 @ =gUnknown_0202F7B0
- strb r2, [r0]
- b _08075C9E
- .align 2, 0
-_08075C8C: .4byte gUnknown_0202F7B2
-_08075C90: .4byte gUnknown_0202F7A4
-_08075C94: .4byte gUnknown_0202F7B0
-_08075C98:
- ldr r1, _08075CA4 @ =gUnknown_0202F7B0
- movs r0, 0x1
- strb r0, [r1]
-_08075C9E:
- pop {r0}
- bx r0
- .align 2, 0
-_08075CA4: .4byte gUnknown_0202F7B0
- thumb_func_end sub_8075C74
-
- thumb_func_start nullsub_53
-nullsub_53: @ 8075CA8
- bx lr
- thumb_func_end nullsub_53
-
- thumb_func_start nullsub_88
-nullsub_88: @ 8075CAC
- bx lr
- thumb_func_end nullsub_88
-
- thumb_func_start sub_8075CB0
-sub_8075CB0: @ 8075CB0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r0, 0
- mov r8, r0
- ldr r0, _08075CE0 @ =gUnknown_0202F7B2
- ldrb r0, [r0]
- cmp r0, 0
- bne _08075CD8
- ldr r0, _08075CE4 @ =gUnknown_0202F7B3
- ldrb r0, [r0]
- cmp r0, 0
- bne _08075CD8
- ldr r1, _08075CE8 @ =gUnknown_0202F7C2
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _08075CD8
- ldrb r0, [r1, 0x1]
- cmp r0, 0xFF
- beq _08075CF0
-_08075CD8:
- ldr r1, _08075CEC @ =gUnknown_03004AF0
- movs r0, 0
- strh r0, [r1]
- b _08075D0A
- .align 2, 0
-_08075CE0: .4byte gUnknown_0202F7B2
-_08075CE4: .4byte gUnknown_0202F7B3
-_08075CE8: .4byte gUnknown_0202F7C2
-_08075CEC: .4byte gUnknown_03004AF0
-_08075CF0:
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- beq _08075D28
- ldr r1, _08075D14 @ =gUnknown_03004AF0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5A
- bhi _08075D1C
-_08075D0A:
- ldr r1, _08075D18 @ =gUnknown_0202F7B0
- movs r0, 0x1
- strb r0, [r1]
- b _08075D8E
- .align 2, 0
-_08075D14: .4byte gUnknown_03004AF0
-_08075D18: .4byte gUnknown_0202F7B0
-_08075D1C:
- ldr r0, _08075D98 @ =gMPlay_SE1
- bl m4aMPlayStop
- ldr r0, _08075D9C @ =gMPlay_SE2
- bl m4aMPlayStop
-_08075D28:
- ldr r1, _08075DA0 @ =gUnknown_03004AF0
- movs r0, 0
- strh r0, [r1]
- movs r5, 0
- ldr r7, _08075DA4 @ =0x0000ffff
- ldr r6, _08075DA8 @ =gBattleAnimPicTable
- ldr r4, _08075DAC @ =gUnknown_03004B10
-_08075D36:
- ldrh r0, [r4]
- cmp r0, r7
- beq _08075D5A
- lsls r0, 3
- adds r0, r6
- ldrh r0, [r0, 0x6]
- bl FreeSpriteTilesByTag
- ldrh r0, [r4]
- lsls r0, 3
- adds r0, r6
- ldrh r0, [r0, 0x6]
- bl FreeSpritePaletteByTag
- ldrh r1, [r4]
- adds r0, r7, 0
- orrs r0, r1
- strh r0, [r4]
-_08075D5A:
- adds r4, 0x2
- adds r5, 0x1
- cmp r5, 0x7
- ble _08075D36
- mov r1, r8
- cmp r1, 0
- bne _08075D8E
- ldr r0, _08075DB0 @ =gMPlay_BGM
- ldr r1, _08075DA4 @ =0x0000ffff
- movs r2, 0x80
- lsls r2, 1
- bl m4aMPlayVolumeControl
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _08075D88
- bl sub_8079E24
- movs r0, 0x1
- bl sub_8043EB4
-_08075D88:
- ldr r0, _08075DB4 @ =gUnknown_0202F7B1
- mov r1, r8
- strb r1, [r0]
-_08075D8E:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08075D98: .4byte gMPlay_SE1
-_08075D9C: .4byte gMPlay_SE2
-_08075DA0: .4byte gUnknown_03004AF0
-_08075DA4: .4byte 0x0000ffff
-_08075DA8: .4byte gBattleAnimPicTable
-_08075DAC: .4byte gUnknown_03004B10
-_08075DB0: .4byte gMPlay_BGM
-_08075DB4: .4byte gUnknown_0202F7B1
- thumb_func_end sub_8075CB0
-
- thumb_func_start ma09_play_sound
-ma09_play_sound: @ 8075DB8
- push {r4,lr}
- ldr r4, _08075DDC @ =gUnknown_0202F7A4
- ldr r0, [r4]
- adds r1, r0, 0x1
- str r1, [r4]
- ldrb r0, [r0, 0x1]
- ldrb r1, [r1, 0x1]
- lsls r1, 8
- orrs r0, r1
- bl PlaySE
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08075DDC: .4byte gUnknown_0202F7A4
- thumb_func_end ma09_play_sound
-
- thumb_func_start sub_8075DE0
-sub_8075DE0: @ 8075DE0
- push {r4-r7,lr}
- ldr r0, _08075DF4 @ =gUnknown_0202F7A4
- ldr r2, [r0]
- adds r1, r2, 0x1
- str r1, [r0]
- ldrb r6, [r2, 0x1]
- cmp r6, 0
- bne _08075DF8
- movs r6, 0x2
- b _08075E02
- .align 2, 0
-_08075DF4: .4byte gUnknown_0202F7A4
-_08075DF8:
- cmp r6, 0x1
- bne _08075DFE
- movs r6, 0x3
-_08075DFE:
- cmp r6, 0
- beq _08075E06
-_08075E02:
- cmp r6, 0x2
- bne _08075E10
-_08075E06:
- ldr r0, _08075E0C @ =gUnknown_0202F7C8
- b _08075E12
- .align 2, 0
-_08075E0C: .4byte gUnknown_0202F7C8
-_08075E10:
- ldr r0, _08075E44 @ =gUnknown_0202F7C9
-_08075E12:
- ldrb r5, [r0]
- adds r0, r5, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _08075ECE
- adds r0, r5, 0
- bl battle_get_per_side_status
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08075E3E
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08075E48
-_08075E3E:
- movs r7, 0
- b _08075E4A
- .align 2, 0
-_08075E44: .4byte gUnknown_0202F7C9
-_08075E48:
- movs r7, 0x1
-_08075E4A:
- adds r0, r5, 0
- adds r1, r7, 0
- bl sub_8076034
- ldr r0, _08075E98 @ =gUnknown_02024BE0
- adds r0, r5, r0
- ldrb r4, [r0]
- ldr r0, _08075E9C @ =task_pA_ma0A_obj_to_bg_pal
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r1, _08075EA0 @ =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r2, r0, r1
- strh r4, [r2, 0x8]
- ldr r1, _08075EA4 @ =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0, 0x24]
- ldrh r4, [r0, 0x20]
- adds r1, r4
- strh r1, [r2, 0xA]
- ldrh r1, [r0, 0x26]
- ldrh r0, [r0, 0x22]
- adds r1, r0
- strh r1, [r2, 0xC]
- cmp r7, 0
- bne _08075EB0
- ldr r0, _08075EA8 @ =gUnknown_030042C0
- ldrh r0, [r0]
- strh r0, [r2, 0xE]
- ldr r0, _08075EAC @ =gUnknown_030041B4
- b _08075EB8
- .align 2, 0
-_08075E98: .4byte gUnknown_02024BE0
-_08075E9C: .4byte task_pA_ma0A_obj_to_bg_pal
-_08075EA0: .4byte gTasks
-_08075EA4: .4byte gSprites
-_08075EA8: .4byte gUnknown_030042C0
-_08075EAC: .4byte gUnknown_030041B4
-_08075EB0:
- ldr r0, _08075F04 @ =gUnknown_03004288
- ldrh r0, [r0]
- strh r0, [r2, 0xE]
- ldr r0, _08075F08 @ =gUnknown_03004280
-_08075EB8:
- ldrh r0, [r0]
- strh r0, [r2, 0x10]
- ldr r0, _08075F0C @ =gTasks
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 3
- adds r1, r0
- strh r7, [r1, 0x12]
- strh r5, [r1, 0x14]
- ldr r0, _08075F10 @ =gUnknown_0202F7C2
- strb r3, [r0]
-_08075ECE:
- movs r0, 0x2
- eors r5, r0
- cmp r6, 0x1
- bls _08075F9A
- adds r0, r5, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _08075F9A
- adds r0, r5, 0
- bl battle_get_per_side_status
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08075F00
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08075F14
-_08075F00:
- movs r7, 0
- b _08075F16
- .align 2, 0
-_08075F04: .4byte gUnknown_03004288
-_08075F08: .4byte gUnknown_03004280
-_08075F0C: .4byte gTasks
-_08075F10: .4byte gUnknown_0202F7C2
-_08075F14:
- movs r7, 0x1
-_08075F16:
- adds r0, r5, 0
- adds r1, r7, 0
- bl sub_8076034
- ldr r0, _08075F64 @ =gUnknown_02024BE0
- adds r0, r5, r0
- ldrb r4, [r0]
- ldr r0, _08075F68 @ =task_pA_ma0A_obj_to_bg_pal
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r1, _08075F6C @ =gTasks
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 3
- adds r2, r0, r1
- strh r4, [r2, 0x8]
- ldr r1, _08075F70 @ =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0, 0x24]
- ldrh r4, [r0, 0x20]
- adds r1, r4
- strh r1, [r2, 0xA]
- ldrh r1, [r0, 0x26]
- ldrh r0, [r0, 0x22]
- adds r1, r0
- strh r1, [r2, 0xC]
- cmp r7, 0
- bne _08075F7C
- ldr r0, _08075F74 @ =gUnknown_030042C0
- ldrh r0, [r0]
- strh r0, [r2, 0xE]
- ldr r0, _08075F78 @ =gUnknown_030041B4
- b _08075F84
- .align 2, 0
-_08075F64: .4byte gUnknown_02024BE0
-_08075F68: .4byte task_pA_ma0A_obj_to_bg_pal
-_08075F6C: .4byte gTasks
-_08075F70: .4byte gSprites
-_08075F74: .4byte gUnknown_030042C0
-_08075F78: .4byte gUnknown_030041B4
-_08075F7C:
- ldr r0, _08075FA8 @ =gUnknown_03004288
- ldrh r0, [r0]
- strh r0, [r2, 0xE]
- ldr r0, _08075FAC @ =gUnknown_03004280
-_08075F84:
- ldrh r0, [r0]
- strh r0, [r2, 0x10]
- ldr r0, _08075FB0 @ =gTasks
- lsls r1, r3, 2
- adds r1, r3
- lsls r1, 3
- adds r1, r0
- strh r7, [r1, 0x12]
- strh r5, [r1, 0x14]
- ldr r0, _08075FB4 @ =gUnknown_0202F7C2
- strb r3, [r0, 0x1]
-_08075F9A:
- ldr r1, _08075FB8 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08075FA8: .4byte gUnknown_03004288
-_08075FAC: .4byte gUnknown_03004280
-_08075FB0: .4byte gTasks
-_08075FB4: .4byte gUnknown_0202F7C2
-_08075FB8: .4byte gUnknown_0202F7A4
- thumb_func_end sub_8075DE0
-
- thumb_func_start b_side_obj__get_some_boolean
-b_side_obj__get_some_boolean: @ 8075FBC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08075FDC
- ldr r0, _08075FD8 @ =gUnknown_0202F7C8
- ldrb r0, [r0]
- cmp r4, r0
- beq _0807601C
- b _0807602C
- .align 2, 0
-_08075FD8: .4byte gUnknown_0202F7C8
-_08075FDC:
- adds r0, r4, 0
- bl sub_8078874
- lsls r0, 24
- cmp r0, 0
- beq _0807602C
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _0807601C
- lsls r0, r5, 2
- ldr r1, _08076020 @ =0x02017800
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0807601C
- ldr r2, _08076024 @ =gSprites
- ldr r0, _08076028 @ =gUnknown_02024BE0
- adds r0, r5, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- blt _0807602C
-_0807601C:
- movs r0, 0x1
- b _0807602E
- .align 2, 0
-_08076020: .4byte 0x02017800
-_08076024: .4byte gSprites
-_08076028: .4byte gUnknown_02024BE0
-_0807602C:
- movs r0, 0
-_0807602E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end b_side_obj__get_some_boolean
-
- thumb_func_start sub_8076034
-sub_8076034: @ 8076034
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x28
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 24
- cmp r1, 0
- beq _0807604E
- b _08076220
-_0807604E:
- add r4, sp, 0x10
- adds r0, r4, 0
- bl sub_8078914
- ldr r2, [sp, 0x10]
- movs r3, 0x80
- lsls r3, 6
- add r6, sp, 0x1C
- add r0, sp, 0x20
- mov r10, r0
- mov r1, r9
- lsls r1, 5
- str r1, [sp, 0x24]
- movs r5, 0
- ldr r1, _08076194 @ =0x040000d4
- movs r4, 0x80
- lsls r4, 5
- mov r12, r6
- ldr r7, _08076198 @ =0x85000400
- movs r0, 0x85
- lsls r0, 24
- mov r8, r0
-_0807607A:
- str r5, [sp, 0x1C]
- mov r0, r12
- str r0, [r1]
- str r2, [r1, 0x4]
- str r7, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r2, r4
- subs r3, r4
- cmp r3, r4
- bhi _0807607A
- str r5, [sp, 0x1C]
- str r6, [r1]
- str r2, [r1, 0x4]
- lsrs r0, r3, 2
- mov r2, r8
- orrs r0, r2
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- add r0, sp, 0xC
- movs r1, 0
- strb r1, [r0]
- strb r1, [r0]
- ldr r1, [sp, 0x14]
- movs r0, 0xFF
- mov r3, r10
- strh r0, [r3]
- ldr r0, _08076194 @ =0x040000d4
- str r3, [r0]
- str r1, [r0, 0x4]
- ldr r1, _0807619C @ =0x81000800
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- ldr r2, _080761A0 @ =REG_BG1CNT
- ldrb r1, [r2]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2]
- ldrb r1, [r2, 0x1]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2, 0x1]
- ldrb r1, [r2, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x1]
- ldr r0, _080761A4 @ =gUnknown_02024BE0
- add r0, r9
- ldrb r4, [r0]
- ldr r5, _080761A8 @ =gUnknown_030042C0
- ldr r0, _080761AC @ =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x24]
- ldrh r1, [r1, 0x20]
- adds r0, r1
- negs r0, r0
- adds r0, 0x20
- strh r0, [r5]
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _0807611C
- ldr r0, _080761B0 @ =0x02019348
- ldrh r0, [r0]
- bl sub_80AEB1C
- lsls r0, 24
- cmp r0, 0
- beq _0807611C
- ldrh r0, [r5]
- subs r0, 0x1
- strh r0, [r5]
-_0807611C:
- ldr r3, _080761B4 @ =gUnknown_030041B4
- ldr r2, _080761AC @ =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r2
- ldrh r0, [r1, 0x26]
- ldrh r1, [r1, 0x22]
- adds r0, r1
- negs r0, r0
- adds r0, 0x20
- strh r0, [r3]
- ldr r0, _080761A4 @ =gUnknown_02024BE0
- add r0, r9
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r1, _080761B8 @ =REG_BG1HOFS
- ldr r0, _080761A8 @ =gUnknown_030042C0
- ldrh r0, [r0]
- strh r0, [r1]
- adds r1, 0x2
- ldrh r0, [r3]
- strh r0, [r1]
- ldr r4, _080761BC @ =gPlttBufferUnfaded + 0x200
- ldr r0, [sp, 0x24]
- adds r4, r0, r4
- mov r2, sp
- ldrb r1, [r2, 0x18]
- lsls r1, 4
- adds r0, r4, 0
- movs r2, 0x20
- bl LoadPalette
- mov r3, sp
- ldrb r0, [r3, 0x18]
- lsls r0, 5
- movs r1, 0xA0
- lsls r1, 19
- adds r0, r1
- ldr r1, _08076194 @ =0x040000d4
- str r4, [r1]
- str r0, [r1, 0x4]
- ldr r0, _080761C0 @ =0x84000008
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _080761C4
- movs r2, 0
- b _080761CE
- .align 2, 0
-_08076194: .4byte 0x040000d4
-_08076198: .4byte 0x85000400
-_0807619C: .4byte 0x81000800
-_080761A0: .4byte REG_BG1CNT
-_080761A4: .4byte gUnknown_02024BE0
-_080761A8: .4byte gUnknown_030042C0
-_080761AC: .4byte gSprites
-_080761B0: .4byte 0x02019348
-_080761B4: .4byte gUnknown_030041B4
-_080761B8: .4byte REG_BG1HOFS
-_080761BC: .4byte gPlttBufferUnfaded + 0x200
-_080761C0: .4byte 0x84000008
-_080761C4:
- mov r0, r9
- bl battle_get_per_side_status
- lsls r0, 24
- lsrs r2, r0, 24
-_080761CE:
- mov r0, sp
- ldrb r3, [r0, 0x18]
- ldr r0, [sp, 0x10]
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp]
- ldr r4, [sp, 0x14]
- movs r1, 0xFA
- lsls r1, 24
- adds r0, r4, r1
- cmp r0, 0
- bge _080761EA
- ldr r1, _08076218 @ =0xfa0007ff
- adds r0, r4, r1
-_080761EA:
- asrs r0, 11
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- ldr r0, _0807621C @ =REG_BG1CNT
- ldr r0, [r0]
- lsls r0, 28
- lsrs r0, 30
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- bl sub_80E4EF8
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _08076210
- b _08076338
-_08076210:
- bl sub_8076380
- b _08076338
- .align 2, 0
-_08076218: .4byte 0xfa0007ff
-_0807621C: .4byte REG_BG1CNT
-_08076220:
- ldr r3, _08076348 @ =0x06006000
- movs r5, 0x80
- lsls r5, 6
- add r6, sp, 0x1C
- ldr r2, _0807634C @ =gSprites
- mov r10, r2
- mov r0, r9
- lsls r0, 5
- str r0, [sp, 0x24]
- movs r4, 0
- ldr r1, _08076350 @ =0x040000d4
- movs r2, 0x80
- lsls r2, 5
- mov r12, r6
- ldr r7, _08076354 @ =0x85000400
- movs r0, 0x85
- lsls r0, 24
- mov r8, r0
-_08076244:
- str r4, [sp, 0x1C]
- mov r0, r12
- str r0, [r1]
- str r3, [r1, 0x4]
- str r7, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r3, r2
- subs r5, r2
- cmp r5, r2
- bhi _08076244
- str r4, [sp, 0x1C]
- str r6, [r1]
- str r3, [r1, 0x4]
- lsrs r0, r5, 2
- mov r2, r8
- orrs r0, r2
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- add r0, sp, 0xC
- movs r1, 0
- strb r1, [r0]
- strb r1, [r0]
- ldr r1, _08076358 @ =0x0600f000
- movs r0, 0
- str r0, [sp, 0x1C]
- ldr r5, _08076350 @ =0x040000d4
- str r6, [r5]
- str r1, [r5, 0x4]
- ldr r0, _0807635C @ =0x85000200
- str r0, [r5, 0x8]
- ldr r0, [r5, 0x8]
- ldr r6, _08076360 @ =REG_BG2CNT
- ldrb r1, [r6]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r6]
- ldrb r1, [r6, 0x1]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r6, 0x1]
- ldrb r1, [r6, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r6, 0x1]
- ldr r2, _08076364 @ =gUnknown_02024BE0
- add r2, r9
- ldrb r4, [r2]
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- add r1, r10
- ldrh r0, [r1, 0x24]
- ldrh r3, [r1, 0x20]
- adds r0, r3
- negs r0, r0
- adds r0, 0x20
- ldr r3, _08076368 @ =gUnknown_03004288
- strh r0, [r3]
- ldrh r0, [r1, 0x26]
- ldrh r1, [r1, 0x22]
- adds r0, r1
- negs r0, r0
- adds r0, 0x20
- ldr r1, _0807636C @ =gUnknown_03004280
- strh r0, [r1]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r10
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r1, _08076370 @ =REG_BG2HOFS
- ldrh r0, [r3]
- strh r0, [r1]
- adds r1, 0x2
- ldr r2, _0807636C @ =gUnknown_03004280
- ldrh r0, [r2]
- strh r0, [r1]
- ldr r3, [sp, 0x24]
- ldr r0, _08076374 @ =gPlttBufferUnfaded + 0x200
- adds r4, r3, r0
- adds r0, r4, 0
- movs r1, 0x90
- movs r2, 0x20
- bl LoadPalette
- ldr r0, _08076378 @ =0x05000120
- str r4, [r5]
- str r0, [r5, 0x4]
- ldr r0, _0807637C @ =0x84000008
- str r0, [r5, 0x8]
- ldr r0, [r5, 0x8]
- mov r0, r9
- bl battle_get_per_side_status
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0xC0
- lsls r0, 7
- str r0, [sp]
- movs r0, 0x1E
- str r0, [sp, 0x4]
- ldr r0, [r6]
- lsls r0, 28
- lsrs r0, 30
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r3, 0x9
- bl sub_80E4EF8
-_08076338:
- add sp, 0x28
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08076348: .4byte 0x06006000
-_0807634C: .4byte gSprites
-_08076350: .4byte 0x040000d4
-_08076354: .4byte 0x85000400
-_08076358: .4byte 0x0600f000
-_0807635C: .4byte 0x85000200
-_08076360: .4byte REG_BG2CNT
-_08076364: .4byte gUnknown_02024BE0
-_08076368: .4byte gUnknown_03004288
-_0807636C: .4byte gUnknown_03004280
-_08076370: .4byte REG_BG2HOFS
-_08076374: .4byte gPlttBufferUnfaded + 0x200
-_08076378: .4byte 0x05000120
-_0807637C: .4byte 0x84000008
- thumb_func_end sub_8076034
-
- thumb_func_start sub_8076380
-sub_8076380: @ 8076380
- push {r4-r7,lr}
- sub sp, 0xC
- ldr r0, _080763F8 @ =0x02019348
- ldrh r0, [r0]
- bl sub_80AEB1C
- lsls r0, 24
- cmp r0, 0
- beq _080763EE
- mov r0, sp
- bl sub_8078914
- ldr r6, [sp, 0x4]
- movs r5, 0
- movs r0, 0x7
- mov r12, r0
- movs r7, 0
-_080763A2:
- movs r4, 0
- adds r3, r7, r6
- mov r1, r12
- lsls r0, r1, 1
- adds r2, r0, r6
-_080763AC:
- 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 _080763AC
- movs r0, 0x20
- add r12, r0
- adds r7, 0x40
- adds r5, 0x1
- cmp r5, 0x7
- ble _080763A2
- movs r5, 0
- movs r1, 0x80
- lsls r1, 3
- adds r3, r1, 0
-_080763D2:
- adds r2, r5, 0x1
- lsls r0, r5, 6
- adds r1, r0, r6
- movs r4, 0x7
-_080763DA:
- ldrh r0, [r1]
- eors r0, r3
- strh r0, [r1]
- adds r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bge _080763DA
- adds r5, r2, 0
- cmp r5, 0x7
- ble _080763D2
-_080763EE:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080763F8: .4byte 0x02019348
- thumb_func_end sub_8076380
-
- thumb_func_start sub_80763FC
-sub_80763FC: @ 80763FC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r12, r1
- adds r7, r2, 0
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r3, 24
- movs r0, 0x40
- mov r9, r0
- cmp r3, 0
- bne _0807641A
- movs r1, 0x20
- mov r9, r1
-_0807641A:
- lsls r0, r6, 28
- lsrs r6, r0, 16
- movs r0, 0
- cmp r0, r9
- bcs _08076452
- ldr r1, _08076460 @ =0x00000fff
- mov r8, r1
-_08076428:
- movs r3, 0
- adds r5, r0, 0x1
- lsls r4, r0, 5
-_0807642E:
- adds r1, r4, r3
- lsls r1, 1
- add r1, r12
- ldrh r2, [r1]
- mov r0, r8
- ands r0, r2
- orrs r0, r6
- adds r0, r7
- strh r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x1F
- bls _0807642E
- lsls r0, r5, 24
- lsrs r0, 24
- cmp r0, r9
- bcc _08076428
-_08076452:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08076460: .4byte 0x00000fff
- thumb_func_end sub_80763FC
-
- thumb_func_start sub_8076464
-sub_8076464: @ 8076464
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- add r5, sp, 0x4
- adds r0, r5, 0
- bl sub_8078914
- cmp r4, 0
- beq _0807648C
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _080764F0
-_0807648C:
- ldr r2, [sp, 0x4]
- movs r3, 0x80
- lsls r3, 6
- add r5, sp, 0x10
- ldr r0, _080764E0 @ =gUnknown_030042C0
- mov r9, r0
- ldr r0, _080764E4 @ =gUnknown_030041B4
- mov r10, r0
- movs r6, 0
- ldr r1, _080764E8 @ =0x040000d4
- movs r4, 0x80
- lsls r4, 5
- mov r12, r5
- ldr r7, _080764EC @ =0x85000400
- movs r0, 0x85
- lsls r0, 24
- mov r8, r0
-_080764AE:
- str r6, [sp, 0x10]
- mov r0, r12
- str r0, [r1]
- str r2, [r1, 0x4]
- str r7, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r2, r4
- subs r3, r4
- cmp r3, r4
- bhi _080764AE
- str r6, [sp, 0x10]
- str r5, [r1]
- str r2, [r1, 0x4]
- lsrs r0, r3, 2
- mov r2, r8
- orrs r0, r2
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- mov r0, sp
- movs r1, 0
- strb r1, [r0]
- strb r1, [r0]
- ldr r1, [sp, 0x8]
- b _08076540
- .align 2, 0
-_080764E0: .4byte gUnknown_030042C0
-_080764E4: .4byte gUnknown_030041B4
-_080764E8: .4byte 0x040000d4
-_080764EC: .4byte 0x85000400
-_080764F0:
- ldr r2, _08076568 @ =0x06006000
- movs r3, 0x80
- lsls r3, 6
- add r5, sp, 0x10
- ldr r0, _0807656C @ =gUnknown_03004288
- mov r9, r0
- ldr r0, _08076570 @ =gUnknown_03004280
- mov r10, r0
- movs r6, 0
- ldr r1, _08076574 @ =0x040000d4
- movs r4, 0x80
- lsls r4, 5
- mov r12, r5
- ldr r7, _08076578 @ =0x85000400
- movs r0, 0x85
- lsls r0, 24
- mov r8, r0
-_08076512:
- str r6, [sp, 0x10]
- mov r0, r12
- str r0, [r1]
- str r2, [r1, 0x4]
- str r7, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r2, r4
- subs r3, r4
- cmp r3, r4
- bhi _08076512
- str r6, [sp, 0x10]
- str r5, [r1]
- str r2, [r1, 0x4]
- lsrs r0, r3, 2
- mov r2, r8
- orrs r0, r2
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- mov r0, sp
- movs r1, 0
- strb r1, [r0]
- strb r1, [r0]
- ldr r1, _0807657C @ =0x0600f000
-_08076540:
- movs r2, 0
- str r2, [sp, 0x10]
- ldr r0, _08076574 @ =0x040000d4
- str r5, [r0]
- str r1, [r0, 0x4]
- ldr r1, _08076580 @ =0x85000200
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- mov r0, r9
- strh r2, [r0]
- mov r0, r10
- strh r2, [r0]
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08076568: .4byte 0x06006000
-_0807656C: .4byte gUnknown_03004288
-_08076570: .4byte gUnknown_03004280
-_08076574: .4byte 0x040000d4
-_08076578: .4byte 0x85000400
-_0807657C: .4byte 0x0600f000
-_08076580: .4byte 0x85000200
- thumb_func_end sub_8076464
-
- thumb_func_start task_pA_ma0A_obj_to_bg_pal
-task_pA_ma0A_obj_to_bg_pal: @ 8076584
- push {r4-r6,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080765FC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r5, r1, r2
- ldrb r4, [r5, 0x8]
- ldrb r6, [r5, 0x14]
- mov r0, sp
- bl sub_8078914
- ldr r0, _08076600 @ =gSprites
- lsls r1, r4, 4
- adds r1, r4
- lsls r1, 2
- adds r1, r0
- ldrh r2, [r1, 0x24]
- ldrh r0, [r1, 0x20]
- adds r2, r0
- ldrh r0, [r5, 0xA]
- subs r0, r2
- lsls r0, 16
- lsrs r3, r0, 16
- ldrh r2, [r1, 0x26]
- ldrh r1, [r1, 0x22]
- adds r2, r1
- ldrh r0, [r5, 0xC]
- subs r0, r2
- lsls r0, 16
- lsrs r2, r0, 16
- movs r1, 0x12
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _08076614
- ldr r1, _08076604 @ =gUnknown_030042C0
- lsls r0, r3, 16
- asrs r0, 16
- ldrh r3, [r5, 0xE]
- adds r0, r3
- strh r0, [r1]
- ldr r1, _08076608 @ =gUnknown_030041B4
- lsls r0, r2, 16
- asrs r0, 16
- ldrh r5, [r5, 0x10]
- adds r0, r5
- strh r0, [r1]
- lsls r2, r6, 5
- ldr r1, _0807660C @ =gPlttBufferFaded + 0x200
- adds r2, r1
- mov r0, sp
- ldrb r0, [r0, 0x8]
- lsls r0, 5
- ldr r3, _08076610 @ =0xfffffe00
- adds r1, r3
- adds r0, r1
- b _08076634
- .align 2, 0
-_080765FC: .4byte gTasks
-_08076600: .4byte gSprites
-_08076604: .4byte gUnknown_030042C0
-_08076608: .4byte gUnknown_030041B4
-_0807660C: .4byte gPlttBufferFaded + 0x200
-_08076610: .4byte 0xfffffe00
-_08076614:
- ldr r1, _08076648 @ =gUnknown_03004288
- lsls r0, r3, 16
- asrs r0, 16
- ldrh r3, [r5, 0xE]
- adds r0, r3
- strh r0, [r1]
- ldr r1, _0807664C @ =gUnknown_03004280
- lsls r0, r2, 16
- asrs r0, 16
- ldrh r5, [r5, 0x10]
- adds r0, r5
- strh r0, [r1]
- lsls r2, r6, 5
- ldr r0, _08076650 @ =gPlttBufferFaded + 0x200
- adds r2, r0
- subs r0, 0xE0
-_08076634:
- ldr r1, _08076654 @ =0x040000d4
- str r2, [r1]
- str r0, [r1, 0x4]
- ldr r0, _08076658 @ =0x84000008
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08076648: .4byte gUnknown_03004288
-_0807664C: .4byte gUnknown_03004280
-_08076650: .4byte gPlttBufferFaded + 0x200
-_08076654: .4byte 0x040000d4
-_08076658: .4byte 0x84000008
- thumb_func_end task_pA_ma0A_obj_to_bg_pal
-
- thumb_func_start ma0B_0807324C
-ma0B_0807324C: @ 807665C
- push {r4,r5,lr}
- ldr r0, _08076670 @ =gUnknown_0202F7A4
- ldr r2, [r0]
- adds r1, r2, 0x1
- str r1, [r0]
- ldrb r4, [r2, 0x1]
- cmp r4, 0
- bne _08076674
- movs r4, 0x2
- b _0807667E
- .align 2, 0
-_08076670: .4byte gUnknown_0202F7A4
-_08076674:
- cmp r4, 0x1
- bne _0807667A
- movs r4, 0x3
-_0807667A:
- cmp r4, 0
- beq _08076682
-_0807667E:
- cmp r4, 0x2
- bne _0807668C
-_08076682:
- ldr r0, _08076688 @ =gUnknown_0202F7C8
- b _0807668E
- .align 2, 0
-_08076688: .4byte gUnknown_0202F7C8
-_0807668C:
- ldr r0, _080766E4 @ =gUnknown_0202F7C9
-_0807668E:
- ldrb r5, [r0]
- ldr r3, _080766E8 @ =gUnknown_0202F7C2
- ldrb r0, [r3]
- cmp r0, 0xFF
- beq _080766B4
- ldr r2, _080766EC @ =gSprites
- ldr r0, _080766F0 @ =gUnknown_02024BE0
- adds r0, r5, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
-_080766B4:
- cmp r4, 0x1
- bls _080766F4
- ldrb r0, [r3, 0x1]
- cmp r0, 0xFF
- beq _080766F4
- ldr r3, _080766EC @ =gSprites
- ldr r2, _080766F0 @ =gUnknown_02024BE0
- movs r1, 0x2
- adds r0, r5, 0
- eors r0, r1
- adds r0, r2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- b _080766F6
- .align 2, 0
-_080766E4: .4byte gUnknown_0202F7C9
-_080766E8: .4byte gUnknown_0202F7C2
-_080766EC: .4byte gSprites
-_080766F0: .4byte gUnknown_02024BE0
-_080766F4:
- movs r4, 0
-_080766F6:
- ldr r0, _08076720 @ =sub_807672C
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08076724 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- strh r5, [r1, 0xC]
- ldr r1, _08076728 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08076720: .4byte sub_807672C
-_08076724: .4byte gTasks
-_08076728: .4byte gUnknown_0202F7A4
- thumb_func_end ma0B_0807324C
-
- thumb_func_start sub_807672C
-sub_807672C: @ 807672C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, _0807676C @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r1, r0, r1
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- strh r0, [r1, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- beq _080767B6
- ldrb r0, [r1, 0xC]
- bl battle_get_per_side_status
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08076768
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08076770
-_08076768:
- movs r4, 0
- b _08076772
- .align 2, 0
-_0807676C: .4byte gTasks
-_08076770:
- movs r4, 0x1
-_08076772:
- ldr r6, _080767BC @ =gUnknown_0202F7C2
- ldrb r0, [r6]
- cmp r0, 0xFF
- beq _0807678A
- adds r0, r4, 0
- bl sub_8076464
- ldrb r0, [r6]
- bl DestroyTask
- movs r0, 0xFF
- strb r0, [r6]
-_0807678A:
- ldr r0, _080767C0 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- movs r2, 0x8
- ldrsh r0, [r1, r2]
- cmp r0, 0x1
- ble _080767B0
- movs r0, 0x1
- eors r4, r0
- adds r0, r4, 0
- bl sub_8076464
- ldrb r0, [r6, 0x1]
- bl DestroyTask
- movs r0, 0xFF
- strb r0, [r6, 0x1]
-_080767B0:
- adds r0, r5, 0
- bl DestroyTask
-_080767B6:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080767BC: .4byte gUnknown_0202F7C2
-_080767C0: .4byte gTasks
- thumb_func_end sub_807672C
-
- thumb_func_start sub_80767C4
-sub_80767C4: @ 80767C4
- push {r4,r5,lr}
- ldr r0, _080767D8 @ =gUnknown_0202F7A4
- ldr r2, [r0]
- adds r1, r2, 0x1
- str r1, [r0]
- ldrb r5, [r2, 0x1]
- cmp r5, 0
- bne _080767DC
- movs r5, 0x2
- b _080767E6
- .align 2, 0
-_080767D8: .4byte gUnknown_0202F7A4
-_080767DC:
- cmp r5, 0x1
- bne _080767E2
- movs r5, 0x3
-_080767E2:
- cmp r5, 0
- beq _080767EA
-_080767E6:
- cmp r5, 0x2
- bne _080767F4
-_080767EA:
- ldr r0, _080767F0 @ =gUnknown_0202F7C8
- b _080767F6
- .align 2, 0
-_080767F0: .4byte gUnknown_0202F7C8
-_080767F4:
- ldr r0, _08076828 @ =gUnknown_0202F7C9
-_080767F6:
- ldrb r4, [r0]
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _08076850
- adds r0, r4, 0
- bl battle_get_per_side_status
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08076822
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _0807682C
-_08076822:
- movs r1, 0
- b _0807682E
- .align 2, 0
-_08076828: .4byte gUnknown_0202F7C9
-_0807682C:
- movs r1, 0x1
-_0807682E:
- adds r0, r4, 0
- bl sub_8076034
- ldr r2, _08076888 @ =gSprites
- ldr r0, _0807688C @ =gUnknown_02024BE0
- adds r0, r4, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
-_08076850:
- movs r0, 0x2
- eors r4, r0
- cmp r5, 0x1
- bls _080768B4
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _080768B4
- adds r0, r4, 0
- bl battle_get_per_side_status
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08076882
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08076890
-_08076882:
- movs r1, 0
- b _08076892
- .align 2, 0
-_08076888: .4byte gSprites
-_0807688C: .4byte gUnknown_02024BE0
-_08076890:
- movs r1, 0x1
-_08076892:
- adds r0, r4, 0
- bl sub_8076034
- ldr r2, _080768C4 @ =gSprites
- ldr r0, _080768C8 @ =gUnknown_02024BE0
- adds r0, r4, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
-_080768B4:
- ldr r1, _080768CC @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080768C4: .4byte gSprites
-_080768C8: .4byte gUnknown_02024BE0
-_080768CC: .4byte gUnknown_0202F7A4
- thumb_func_end sub_80767C4
-
- thumb_func_start ma23_8073484
-ma23_8073484: @ 80768D0
- push {r4-r6,lr}
- ldr r0, _080768E4 @ =gUnknown_0202F7A4
- ldr r2, [r0]
- adds r1, r2, 0x1
- str r1, [r0]
- ldrb r5, [r2, 0x1]
- cmp r5, 0
- bne _080768E8
- movs r5, 0x2
- b _080768F2
- .align 2, 0
-_080768E4: .4byte gUnknown_0202F7A4
-_080768E8:
- cmp r5, 0x1
- bne _080768EE
- movs r5, 0x3
-_080768EE:
- cmp r5, 0
- beq _080768F6
-_080768F2:
- cmp r5, 0x2
- bne _08076900
-_080768F6:
- ldr r0, _080768FC @ =gUnknown_0202F7C8
- b _08076902
- .align 2, 0
-_080768FC: .4byte gUnknown_0202F7C8
-_08076900:
- ldr r0, _08076960 @ =gUnknown_0202F7C9
-_08076902:
- ldrb r6, [r0]
- adds r0, r6, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _0807692C
- ldr r2, _08076964 @ =gSprites
- ldr r0, _08076968 @ =gUnknown_02024BE0
- adds r0, r6, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
-_0807692C:
- cmp r5, 0x1
- bls _0807696C
- movs r0, 0x2
- adds r4, r6, 0
- eors r4, r0
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _0807696C
- ldr r2, _08076964 @ =gSprites
- ldr r0, _08076968 @ =gUnknown_02024BE0
- adds r0, r4, r0
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- b _0807696E
- .align 2, 0
-_08076960: .4byte gUnknown_0202F7C9
-_08076964: .4byte gSprites
-_08076968: .4byte gUnknown_02024BE0
-_0807696C:
- movs r5, 0
-_0807696E:
- ldr r0, _08076998 @ =sub_80769A4
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0807699C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r5, [r1, 0x8]
- strh r6, [r1, 0xC]
- ldr r1, _080769A0 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08076998: .4byte sub_80769A4
-_0807699C: .4byte gTasks
-_080769A0: .4byte gUnknown_0202F7A4
- thumb_func_end ma23_8073484
-
- thumb_func_start sub_80769A4
-sub_80769A4: @ 80769A4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, _080769E8 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r1, r0, r1
- ldrh r0, [r1, 0xA]
- adds r0, 0x1
- strh r0, [r1, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- beq _08076A32
- ldrb r4, [r1, 0xC]
- adds r0, r4, 0
- bl battle_get_per_side_status
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _080769E2
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _080769EC
-_080769E2:
- movs r5, 0
- b _080769EE
- .align 2, 0
-_080769E8: .4byte gTasks
-_080769EC:
- movs r5, 0x1
-_080769EE:
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _08076A00
- adds r0, r5, 0
- bl sub_8076464
-_08076A00:
- ldr r0, _08076A38 @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- movs r2, 0x8
- ldrsh r0, [r1, r2]
- cmp r0, 0x1
- ble _08076A2C
- movs r0, 0x2
- eors r4, r0
- adds r0, r4, 0
- bl b_side_obj__get_some_boolean
- lsls r0, 24
- cmp r0, 0
- beq _08076A2C
- movs r0, 0x1
- eors r5, r0
- adds r0, r5, 0
- bl sub_8076464
-_08076A2C:
- adds r0, r6, 0
- bl DestroyTask
-_08076A32:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08076A38: .4byte gTasks
- thumb_func_end sub_80769A4
-
- thumb_func_start sub_8076A3C
-sub_8076A3C: @ 8076A3C
- push {r4,lr}
- ldr r2, _08076A6C @ =gUnknown_0202F7A4
- ldr r0, [r2]
- adds r1, r0, 0x1
- str r1, [r2]
- ldrb r3, [r0, 0x1]
- adds r0, r1, 0x1
- str r0, [r2]
- ldrb r1, [r1, 0x1]
- lsls r1, 8
- adds r0, 0x1
- str r0, [r2]
- ldr r2, _08076A70 @ =REG_BLDCNT
- movs r4, 0xFD
- lsls r4, 6
- adds r0, r4, 0
- strh r0, [r2]
- ldr r0, _08076A74 @ =REG_BLDALPHA
- orrs r3, r1
- strh r3, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08076A6C: .4byte gUnknown_0202F7A4
-_08076A70: .4byte REG_BLDCNT
-_08076A74: .4byte REG_BLDALPHA
- thumb_func_end sub_8076A3C
-
- thumb_func_start sub_8076A78
-sub_8076A78: @ 8076A78
- ldr r2, _08076A98 @ =gUnknown_0202F7A4
- ldr r0, [r2]
- adds r1, r0, 0x1
- str r1, [r2]
- ldrb r3, [r0, 0x1]
- adds r0, r1, 0x1
- str r0, [r2]
- ldrb r1, [r1, 0x1]
- lsls r1, 8
- adds r0, 0x1
- str r0, [r2]
- ldr r0, _08076A9C @ =REG_BLDCNT
- orrs r3, r1
- strh r3, [r0]
- bx lr
- .align 2, 0
-_08076A98: .4byte gUnknown_0202F7A4
-_08076A9C: .4byte REG_BLDCNT
- thumb_func_end sub_8076A78
-
- thumb_func_start sub_8076AA0
-sub_8076AA0: @ 8076AA0
- ldr r1, _08076AB4 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r0, _08076AB8 @ =REG_BLDCNT
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- bx lr
- .align 2, 0
-_08076AB4: .4byte gUnknown_0202F7A4
-_08076AB8: .4byte REG_BLDCNT
- thumb_func_end sub_8076AA0
-
- thumb_func_start ma0E_call
-ma0E_call: @ 8076ABC
- push {r4,lr}
- ldr r4, _08076AE8 @ =gUnknown_0202F7A4
- ldr r1, [r4]
- adds r3, r1, 0x1
- str r3, [r4]
- ldr r2, _08076AEC @ =gUnknown_0202F7A8
- adds r0, r1, 0x5
- str r0, [r2]
- ldrb r1, [r1, 0x1]
- ldrb r0, [r3, 0x1]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r3, 0x2]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r3, 0x3]
- lsls r0, 24
- adds r1, r0
- str r1, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08076AE8: .4byte gUnknown_0202F7A4
-_08076AEC: .4byte gUnknown_0202F7A8
- thumb_func_end ma0E_call
-
- thumb_func_start sub_8076AF0
-sub_8076AF0: @ 8076AF0
- ldr r0, _08076AFC @ =gUnknown_0202F7A4
- ldr r1, _08076B00 @ =gUnknown_0202F7A8
- ldr r1, [r1]
- str r1, [r0]
- bx lr
- .align 2, 0
-_08076AFC: .4byte gUnknown_0202F7A4
-_08076B00: .4byte gUnknown_0202F7A8
- thumb_func_end sub_8076AF0
-
- thumb_func_start ma10_080736AC
-ma10_080736AC: @ 8076B04
- push {r4,r5,lr}
- ldr r5, _08076B30 @ =gUnknown_0202F7A4
- ldr r1, [r5]
- adds r0, r1, 0x1
- str r0, [r5]
- ldrb r2, [r1, 0x1]
- adds r3, r0, 0x1
- str r3, [r5]
- ldrb r4, [r0, 0x1]
- ldrb r0, [r3, 0x1]
- lsls r0, 8
- orrs r4, r0
- adds r1, 0x4
- str r1, [r5]
- ldr r0, _08076B34 @ =gBattleAnimArgs
- lsls r2, 1
- adds r2, r0
- strh r4, [r2]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08076B30: .4byte gUnknown_0202F7A4
-_08076B34: .4byte gBattleAnimArgs
- thumb_func_end ma10_080736AC
-
- thumb_func_start ma11_if_else
-ma11_if_else: @ 8076B38
- push {lr}
- ldr r3, _08076B70 @ =gUnknown_0202F7A4
- ldr r2, [r3]
- adds r0, r2, 0x1
- str r0, [r3]
- ldr r0, _08076B74 @ =gUnknown_0202F7C4
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08076B52
- adds r0, r2, 0x5
- str r0, [r3]
-_08076B52:
- ldr r2, [r3]
- ldrb r1, [r2]
- ldrb r0, [r2, 0x1]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x2]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 24
- adds r1, r0
- str r1, [r3]
- pop {r0}
- bx r0
- .align 2, 0
-_08076B70: .4byte gUnknown_0202F7A4
-_08076B74: .4byte gUnknown_0202F7C4
- thumb_func_end ma11_if_else
-
- thumb_func_start ma12_cond_if
-ma12_cond_if: @ 8076B78
- push {r4,r5,lr}
- ldr r5, _08076BA8 @ =gUnknown_0202F7A4
- ldr r4, [r5]
- adds r2, r4, 0x1
- str r2, [r5]
- ldrb r1, [r4, 0x1]
- adds r3, r2, 0x1
- str r3, [r5]
- ldr r0, _08076BAC @ =gUnknown_0202F7C4
- ldrb r0, [r0]
- cmp r1, r0
- bne _08076BB0
- ldrb r1, [r2, 0x1]
- ldrb r0, [r3, 0x1]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r3, 0x2]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r3, 0x3]
- lsls r0, 24
- adds r1, r0
- str r1, [r5]
- b _08076BB4
- .align 2, 0
-_08076BA8: .4byte gUnknown_0202F7A4
-_08076BAC: .4byte gUnknown_0202F7C4
-_08076BB0:
- adds r0, r4, 0x6
- str r0, [r5]
-_08076BB4:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end ma12_cond_if
-
- thumb_func_start sub_8076BBC
-sub_8076BBC: @ 8076BBC
- ldr r3, _08076BDC @ =gUnknown_0202F7A4
- ldr r0, [r3]
- adds r2, r0, 0x1
- str r2, [r3]
- ldrb r1, [r0, 0x1]
- ldrb r0, [r2, 0x1]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x2]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 24
- adds r1, r0
- str r1, [r3]
- bx lr
- .align 2, 0
-_08076BDC: .4byte gUnknown_0202F7A4
- thumb_func_end sub_8076BBC
-
- thumb_func_start sub_8076BE0
-sub_8076BE0: @ 8076BE0
- push {lr}
- ldr r0, _08076BF8 @ =gMain
- ldr r1, _08076BFC @ =0x0000043d
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08076C00
- movs r0, 0
- b _08076C02
- .align 2, 0
-_08076BF8: .4byte gMain
-_08076BFC: .4byte 0x0000043d
-_08076C00:
- movs r0, 0x1
-_08076C02:
- pop {r1}
- bx r1
- thumb_func_end sub_8076BE0
-
- thumb_func_start ma14_load_background
-ma14_load_background: @ 8076C08
- push {r4,lr}
- ldr r1, _08076C3C @ =gUnknown_0202F7A4
- ldr r2, [r1]
- adds r0, r2, 0x1
- str r0, [r1]
- ldrb r4, [r2, 0x1]
- adds r0, 0x1
- str r0, [r1]
- ldr r0, _08076C40 @ =task_p5_load_battle_screen_elements
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08076C44 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- ldr r1, _08076C48 @ =gUnknown_0202F7C5
- movs r0, 0x1
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08076C3C: .4byte gUnknown_0202F7A4
-_08076C40: .4byte task_p5_load_battle_screen_elements
-_08076C44: .4byte gTasks
-_08076C48: .4byte gUnknown_0202F7C5
- thumb_func_end ma14_load_background
-
- thumb_func_start sub_8076C4C
-sub_8076C4C: @ 8076C4C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r2, _08076C8C @ =gUnknown_0202F7A4
- ldr r1, [r2]
- adds r0, r1, 0x1
- str r0, [r2]
- ldrb r3, [r1, 0x1]
- mov r8, r3
- ldrb r7, [r0, 0x1]
- ldrb r6, [r0, 0x2]
- adds r1, 0x4
- str r1, [r2]
- ldr r0, _08076C90 @ =task_p5_load_battle_screen_elements
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08076C98
- ldr r1, _08076C94 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r6, [r0, 0x8]
- b _08076CCA
- .align 2, 0
-_08076C8C: .4byte gUnknown_0202F7A4
-_08076C90: .4byte task_p5_load_battle_screen_elements
-_08076C94: .4byte gTasks
-_08076C98:
- ldr r0, _08076CB4 @ =gUnknown_0202F7C9
- ldrb r0, [r0]
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- bne _08076CBC
- ldr r1, _08076CB8 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r7, [r0, 0x8]
- b _08076CCA
- .align 2, 0
-_08076CB4: .4byte gUnknown_0202F7C9
-_08076CB8: .4byte gTasks
-_08076CBC:
- ldr r1, _08076CDC @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- mov r1, r8
- strh r1, [r0, 0x8]
-_08076CCA:
- ldr r1, _08076CE0 @ =gUnknown_0202F7C5
- movs r0, 0x1
- strb r0, [r1]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08076CDC: .4byte gTasks
-_08076CE0: .4byte gUnknown_0202F7C5
- thumb_func_end sub_8076C4C
-
- thumb_func_start task_p5_load_battle_screen_elements
-task_p5_load_battle_screen_elements: @ 8076CE4
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, _08076D18 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- ldrh r6, [r4, 0x1C]
- movs r0, 0x1C
- ldrsh r3, [r4, r0]
- adds r7, r1, 0
- cmp r3, 0
- bne _08076D1C
- str r3, [sp]
- movs r0, 0xE8
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginHardwarePaletteFade
- ldrh r0, [r4, 0x1C]
- adds r0, 0x1
- strh r0, [r4, 0x1C]
- b _08076DAC
- .align 2, 0
-_08076D18: .4byte gTasks
-_08076D1C:
- ldr r2, _08076D38 @ =gPaletteFade
- ldrb r1, [r2, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08076DAC
- cmp r3, 0x1
- bne _08076D40
- adds r0, r6, 0x1
- strh r0, [r4, 0x1C]
- ldr r1, _08076D3C @ =gUnknown_0202F7C5
- movs r0, 0x2
- strb r0, [r1]
- b _08076D84
- .align 2, 0
-_08076D38: .4byte gPaletteFade
-_08076D3C: .4byte gUnknown_0202F7C5
-_08076D40:
- cmp r3, 0x2
- bne _08076D84
- ldrh r0, [r4, 0x8]
- lsls r2, r0, 16
- asrs r1, r2, 16
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- bne _08076D58
- bl dp01t_11_3_message_for_player_only
- b _08076D5E
-_08076D58:
- lsrs r0, r2, 16
- bl sub_8076DB8
-_08076D5E:
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0xE8
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginHardwarePaletteFade
- ldr r1, _08076D80 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0x1C]
- adds r1, 0x1
- strh r1, [r0, 0x1C]
- b _08076DAC
- .align 2, 0
-_08076D80: .4byte gTasks
-_08076D84:
- ldrb r1, [r2, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08076DAC
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r7
- movs r1, 0x1C
- ldrsh r0, [r0, r1]
- cmp r0, 0x3
- bne _08076DAC
- adds r0, r5, 0
- bl DestroyTask
- ldr r0, _08076DB4 @ =gUnknown_0202F7C5
- strb r4, [r0]
-_08076DAC:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08076DB4: .4byte gUnknown_0202F7C5
- thumb_func_end task_p5_load_battle_screen_elements
-
- thumb_func_start sub_8076DB8
-sub_8076DB8: @ 8076DB8
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08076E70
- ldr r7, _08076E54 @ =gBattleAnimBackgroundTable
- lsls r0, r6, 1
- adds r0, r6
- lsls r4, r0, 2
- adds r0, r7, 0
- adds r0, 0x8
- adds r0, r4, r0
- ldr r5, [r0]
- bl sub_8076BE0
- lsls r0, 24
- ldr r1, _08076E58 @ =0x02018000
- cmp r0, 0
- beq _08076DE8
- ldr r0, _08076E5C @ =0xffffc800
- adds r1, r0
-_08076DE8:
- adds r0, r5, 0
- bl sub_800D238
- bl sub_80789BC
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_8076BE0
- lsls r0, 24
- ldr r1, _08076E58 @ =0x02018000
- cmp r0, 0
- beq _08076E06
- ldr r0, _08076E5C @ =0xffffc800
- adds r1, r0
-_08076E06:
- movs r2, 0x80
- lsls r2, 1
- adds r0, r5, 0
- movs r3, 0
- bl sub_80763FC
- bl sub_8076BE0
- lsls r0, 24
- ldr r2, _08076E58 @ =0x02018000
- cmp r0, 0
- beq _08076E22
- ldr r0, _08076E5C @ =0xffffc800
- adds r2, r0
-_08076E22:
- ldr r1, _08076E60 @ =0x0600d000
- ldr r0, _08076E64 @ =0x040000d4
- str r2, [r0]
- str r1, [r0, 0x4]
- ldr r1, _08076E68 @ =0x84000200
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- adds r0, r4, r7
- ldr r0, [r0]
- ldr r1, _08076E6C @ =0x06002000
- bl LZDecompressVram
- adds r0, r7, 0x4
- adds r0, r4, r0
- ldr r4, [r0]
- bl sub_80789BC
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 20
- adds r0, r4, 0
- movs r2, 0x20
- bl LoadCompressedPalette
- b _08076E9E
- .align 2, 0
-_08076E54: .4byte gBattleAnimBackgroundTable
-_08076E58: .4byte 0x02018000
-_08076E5C: .4byte 0xffffc800
-_08076E60: .4byte 0x0600d000
-_08076E64: .4byte 0x040000d4
-_08076E68: .4byte 0x84000200
-_08076E6C: .4byte 0x06002000
-_08076E70:
- ldr r5, _08076EA4 @ =gBattleAnimBackgroundTable
- lsls r4, r6, 1
- adds r4, r6
- lsls r4, 2
- adds r0, r5, 0
- adds r0, 0x8
- adds r0, r4, r0
- ldr r0, [r0]
- ldr r1, _08076EA8 @ =0x0600d000
- bl LZDecompressVram
- adds r0, r4, r5
- ldr r0, [r0]
- ldr r1, _08076EAC @ =0x06008000
- bl LZDecompressVram
- adds r5, 0x4
- adds r4, r5
- ldr r0, [r4]
- movs r1, 0x20
- movs r2, 0x20
- bl LoadCompressedPalette
-_08076E9E:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08076EA4: .4byte gBattleAnimBackgroundTable
-_08076EA8: .4byte 0x0600d000
-_08076EAC: .4byte 0x06008000
- thumb_func_end sub_8076DB8
-
- thumb_func_start dp01t_11_3_message_for_player_only
-dp01t_11_3_message_for_player_only: @ 8076EB0
- push {lr}
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08076EC2
- bl sub_80AB2AC
- b _08076EC6
-_08076EC2:
- bl sub_800D7B8
-_08076EC6:
- pop {r0}
- bx r0
- thumb_func_end dp01t_11_3_message_for_player_only
-
- thumb_func_start ma15_load_battle_screen_elements
-ma15_load_battle_screen_elements: @ 8076ECC
- push {lr}
- ldr r1, _08076EFC @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r0, _08076F00 @ =task_p5_load_battle_screen_elements
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08076F04 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, _08076F08 @ =0x0000ffff
- strh r0, [r1, 0x8]
- ldr r1, _08076F0C @ =gUnknown_0202F7C5
- movs r0, 0x1
- strb r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08076EFC: .4byte gUnknown_0202F7A4
-_08076F00: .4byte task_p5_load_battle_screen_elements
-_08076F04: .4byte gTasks
-_08076F08: .4byte 0x0000ffff
-_08076F0C: .4byte gUnknown_0202F7C5
- thumb_func_end ma15_load_battle_screen_elements
-
- thumb_func_start ma16_wait_for_battle_screen_elements_s2
-ma16_wait_for_battle_screen_elements_s2: @ 8076F10
- push {lr}
- ldr r0, _08076F28 @ =gUnknown_0202F7C5
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _08076F34
- ldr r1, _08076F2C @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r1, _08076F30 @ =gUnknown_0202F7B0
- movs r0, 0
- b _08076F38
- .align 2, 0
-_08076F28: .4byte gUnknown_0202F7C5
-_08076F2C: .4byte gUnknown_0202F7A4
-_08076F30: .4byte gUnknown_0202F7B0
-_08076F34:
- ldr r1, _08076F40 @ =gUnknown_0202F7B0
- movs r0, 0x1
-_08076F38:
- strb r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08076F40: .4byte gUnknown_0202F7B0
- thumb_func_end ma16_wait_for_battle_screen_elements_s2
-
- thumb_func_start sub_8076F44
-sub_8076F44: @ 8076F44
- push {lr}
- ldr r0, _08076F5C @ =gUnknown_0202F7C5
- ldrb r2, [r0]
- cmp r2, 0
- bne _08076F68
- ldr r0, _08076F60 @ =gUnknown_0202F7A4
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- ldr r0, _08076F64 @ =gUnknown_0202F7B0
- strb r2, [r0]
- b _08076F6E
- .align 2, 0
-_08076F5C: .4byte gUnknown_0202F7C5
-_08076F60: .4byte gUnknown_0202F7A4
-_08076F64: .4byte gUnknown_0202F7B0
-_08076F68:
- ldr r1, _08076F74 @ =gUnknown_0202F7B0
- movs r0, 0x1
- strb r0, [r1]
-_08076F6E:
- pop {r0}
- bx r0
- .align 2, 0
-_08076F74: .4byte gUnknown_0202F7B0
- thumb_func_end sub_8076F44
-
- thumb_func_start ma18_load_background_probably
-ma18_load_background_probably: @ 8076F78
- push {r4,lr}
- ldr r4, _08076F94 @ =gUnknown_0202F7A4
- ldr r1, [r4]
- adds r0, r1, 0x1
- str r0, [r4]
- ldrb r0, [r1, 0x1]
- bl sub_8076DB8
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08076F94: .4byte gUnknown_0202F7A4
- thumb_func_end ma18_load_background_probably
-
- thumb_func_start sub_8076F98
-sub_8076F98: @ 8076F98
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _08076FDC
- ldr r0, _08076FD4 @ =gUnknown_0202F7C8
- ldrb r2, [r0]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- ldr r1, _08076FD8 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08076FDC
- adds r0, r2, 0
- bl battle_side_get_owner
- lsls r0, 24
- movs r4, 0xC0
- cmp r0, 0
- beq _0807706E
- movs r4, 0x3F
- b _0807706E
- .align 2, 0
-_08076FD4: .4byte gUnknown_0202F7C8
-_08076FD8: .4byte 0x02017810
-_08076FDC:
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08077004
- ldr r0, _08076FFC @ =gUnknown_0202F7C8
- ldr r1, _08077000 @ =gUnknown_0202F7C9
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bne _08077068
- cmp r0, 0x2
- bne _08077068
- cmp r4, 0x3F
- beq _0807707A
- b _08077068
- .align 2, 0
-_08076FFC: .4byte gUnknown_0202F7C8
-_08077000: .4byte gUnknown_0202F7C9
-_08077004:
- ldr r0, _0807702C @ =gUnknown_0202F7C8
- ldrb r0, [r0]
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- bne _08077042
- ldr r0, _08077030 @ =gUnknown_0202F7C9
- ldrb r0, [r0]
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- bne _0807706E
- lsls r0, r4, 24
- asrs r1, r0, 24
- cmp r1, 0x3F
- bne _08077034
- movs r4, 0xC0
- b _0807706E
- .align 2, 0
-_0807702C: .4byte gUnknown_0202F7C8
-_08077030: .4byte gUnknown_0202F7C9
-_08077034:
- movs r0, 0x40
- negs r0, r0
- cmp r1, r0
- beq _0807706E
- negs r0, r1
- lsls r0, 24
- b _0807706C
-_08077042:
- ldr r0, _08077064 @ =gUnknown_0202F7C9
- ldrb r0, [r0]
- bl battle_side_get_owner
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08077068
- lsls r0, r4, 24
- asrs r0, 24
- movs r1, 0x40
- negs r1, r1
- cmp r0, r1
- bne _0807706E
- movs r4, 0x3F
- b _0807706E
- .align 2, 0
-_08077064: .4byte gUnknown_0202F7C9
-_08077068:
- lsls r0, r4, 24
- negs r0, r0
-_0807706C:
- lsrs r4, r0, 24
-_0807706E:
- lsls r0, r4, 24
- asrs r0, 24
- cmp r0, 0x3F
- ble _0807707A
- movs r4, 0x3F
- b _08077088
-_0807707A:
- lsls r0, r4, 24
- asrs r0, 24
- movs r1, 0x40
- negs r1, r1
- cmp r0, r1
- bge _08077088
- movs r4, 0xC0
-_08077088:
- lsls r0, r4, 24
- asrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8076F98
-
- thumb_func_start sub_8077094
-sub_8077094: @ 8077094
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _080770D8
- ldr r0, _080770D0 @ =gUnknown_0202F7C8
- ldrb r2, [r0]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- ldr r1, _080770D4 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080770D8
- adds r0, r2, 0
- bl battle_side_get_owner
- lsls r0, 24
- movs r4, 0xC0
- cmp r0, 0
- beq _080770F6
- movs r4, 0x3F
- b _080770F6
- .align 2, 0
-_080770D0: .4byte gUnknown_0202F7C8
-_080770D4: .4byte 0x02017810
-_080770D8:
- ldr r0, _08077100 @ =gUnknown_0202F7C8
- ldrb r0, [r0]
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- bne _080770F0
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _080770F6
-_080770F0:
- lsls r0, r4, 24
- negs r0, r0
- lsrs r4, r0, 24
-_080770F6:
- lsls r0, r4, 24
- asrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08077100: .4byte gUnknown_0202F7C8
- thumb_func_end sub_8077094
-
- thumb_func_start sub_8077104
-sub_8077104: @ 8077104
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- asrs r2, r0, 16
- cmp r2, 0x3F
- ble _08077114
- movs r1, 0x3F
- b _0807711E
-_08077114:
- movs r0, 0x40
- negs r0, r0
- cmp r2, r0
- bge _0807711E
- ldr r1, _08077128 @ =0x0000ffc0
-_0807711E:
- lsls r0, r1, 16
- asrs r0, 16
- pop {r1}
- bx r1
- .align 2, 0
-_08077128: .4byte 0x0000ffc0
- thumb_func_end sub_8077104
-
- thumb_func_start sub_807712C
-sub_807712C: @ 807712C
- push {lr}
- lsls r2, 16
- lsrs r2, 16
- adds r3, r2, 0
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- cmp r0, r1
- bge _0807714A
- lsls r0, r2, 16
- asrs r0, 16
- cmp r0, 0
- bge _0807715A
- b _08077158
-_0807714A:
- cmp r0, r1
- ble _08077160
- lsls r0, r3, 16
- asrs r0, 16
- cmp r0, 0
- bge _08077158
- negs r0, r0
-_08077158:
- negs r0, r0
-_0807715A:
- lsls r0, 16
- lsrs r0, 16
- b _08077162
-_08077160:
- movs r0, 0
-_08077162:
- lsls r0, 16
- asrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_807712C
-
- thumb_func_start ma19_08073BC8
-ma19_08073BC8: @ 807716C
- push {r4,r5,lr}
- ldr r5, _080771A0 @ =gUnknown_0202F7A4
- ldr r0, [r5]
- adds r1, r0, 0x1
- str r1, [r5]
- ldrb r4, [r0, 0x1]
- ldrb r0, [r1, 0x1]
- lsls r0, 8
- orrs r4, r0
- movs r0, 0x2
- ldrsb r0, [r1, r0]
- bl sub_8076F98
- adds r1, r0, 0
- lsls r1, 24
- asrs r1, 24
- adds r0, r4, 0
- bl PlaySE12WithPanning
- ldr r0, [r5]
- adds r0, 0x3
- str r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080771A0: .4byte gUnknown_0202F7A4
- thumb_func_end ma19_08073BC8
-
- thumb_func_start ma1A_8073C00
-ma1A_8073C00: @ 80771A4
- push {r4,lr}
- ldr r4, _080771CC @ =gUnknown_0202F7A4
- ldr r1, [r4]
- adds r0, r1, 0x1
- str r0, [r4]
- movs r0, 0x1
- ldrsb r0, [r1, r0]
- bl sub_8076F98
- lsls r0, 24
- asrs r0, 24
- bl SE12PanpotControl
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080771CC: .4byte gUnknown_0202F7A4
- thumb_func_end ma1A_8073C00
-
- thumb_func_start ma1B_8073C2C
-ma1B_8073C2C: @ 80771D0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, _08077280 @ =gUnknown_0202F7A4
- mov r10, r0
- ldr r0, [r0]
- adds r1, r0, 0x1
- mov r2, r10
- str r1, [r2]
- ldrb r0, [r0, 0x1]
- mov r9, r0
- ldrb r0, [r1, 0x1]
- lsls r0, 8
- mov r2, r9
- orrs r2, r0
- mov r9, r2
- ldrb r4, [r1, 0x3]
- ldrb r6, [r1, 0x4]
- ldrb r7, [r1, 0x5]
- movs r0, 0x2
- ldrsb r0, [r1, r0]
- bl sub_8076F98
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, 24
- asrs r4, 24
- adds r0, r4, 0
- bl sub_8076F98
- mov r8, r0
- lsls r5, 24
- asrs r5, 24
- mov r0, r8
- lsls r0, 24
- asrs r0, 24
- mov r8, r0
- lsls r6, 24
- asrs r6, 24
- adds r0, r5, 0
- mov r1, r8
- adds r2, r6, 0
- bl sub_807712C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08077284 @ =c3_08073CEC
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08077288 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r5, [r1, 0x8]
- mov r2, r8
- strh r2, [r1, 0xA]
- lsls r4, 24
- asrs r4, 24
- strh r4, [r1, 0xC]
- strh r7, [r1, 0xE]
- strh r5, [r1, 0x10]
- mov r0, r9
- adds r1, r5, 0
- bl PlaySE12WithPanning
- ldr r1, _0807728C @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- mov r1, r10
- ldr r0, [r1]
- adds r0, 0x6
- str r0, [r1]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08077280: .4byte gUnknown_0202F7A4
-_08077284: .4byte c3_08073CEC
-_08077288: .4byte gTasks
-_0807728C: .4byte gUnknown_0202F7B3
- thumb_func_end ma1B_8073C2C
-
- thumb_func_start c3_08073CEC
-c3_08073CEC: @ 8077290
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r7, 0
- ldr r1, _080772D4 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r2, r0, r1
- ldrh r0, [r2, 0x18]
- adds r1, r0, 0x1
- strh r1, [r2, 0x18]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0xE
- ldrsh r1, [r2, r3]
- cmp r0, r1
- blt _08077314
- strh r7, [r2, 0x18]
- ldrh r6, [r2, 0x8]
- ldrh r3, [r2, 0xA]
- movs r4, 0x10
- ldrsh r0, [r2, r4]
- movs r4, 0xC
- ldrsh r1, [r2, r4]
- adds r0, r1
- lsls r0, 16
- lsrs r4, r0, 16
- strh r4, [r2, 0x10]
- cmp r1, 0
- bne _080772D8
- lsls r2, r3, 16
- b _080772FC
- .align 2, 0
-_080772D4: .4byte gTasks
-_080772D8:
- lsls r1, r6, 16
- lsls r0, r3, 16
- asrs r3, r0, 16
- adds r2, r0, 0
- cmp r1, r2
- bge _080772EE
- lsls r0, r4, 16
- asrs r0, 16
- cmp r0, r3
- blt _080772F8
- b _080772FC
-_080772EE:
- lsls r0, r4, 16
- asrs r0, 16
- cmp r0, r3
- bgt _080772F8
- movs r7, 0x1
-_080772F8:
- cmp r7, 0
- beq _0807730C
-_080772FC:
- lsrs r4, r2, 16
- adds r0, r5, 0
- bl DestroyTask
- ldr r1, _0807731C @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
-_0807730C:
- lsls r0, r4, 24
- asrs r0, 24
- bl SE12PanpotControl
-_08077314:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0807731C: .4byte gUnknown_0202F7B3
- thumb_func_end c3_08073CEC
-
- thumb_func_start sub_8077320
-sub_8077320: @ 8077320
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- ldr r0, _080773A4 @ =gUnknown_0202F7A4
- mov r9, r0
- ldr r0, [r0]
- adds r1, r0, 0x1
- mov r2, r9
- str r1, [r2]
- ldrb r0, [r0, 0x1]
- mov r8, r0
- ldrb r0, [r1, 0x1]
- lsls r0, 8
- mov r2, r8
- orrs r2, r0
- mov r8, r2
- ldrb r4, [r1, 0x2]
- ldrb r5, [r1, 0x3]
- ldrb r6, [r1, 0x4]
- ldrb r1, [r1, 0x5]
- mov r10, r1
- ldr r0, _080773A8 @ =c3_08073CEC
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080773AC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- lsls r4, 24
- asrs r4, 24
- strh r4, [r1, 0x8]
- lsls r5, 24
- asrs r5, 24
- strh r5, [r1, 0xA]
- lsls r6, 24
- asrs r6, 24
- strh r6, [r1, 0xC]
- mov r0, r10
- strh r0, [r1, 0xE]
- strh r4, [r1, 0x10]
- mov r0, r8
- adds r1, r4, 0
- bl PlaySE12WithPanning
- ldr r1, _080773B0 @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- mov r1, r9
- ldr r0, [r1]
- adds r0, 0x6
- str r0, [r1]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080773A4: .4byte gUnknown_0202F7A4
-_080773A8: .4byte c3_08073CEC
-_080773AC: .4byte gTasks
-_080773B0: .4byte gUnknown_0202F7B3
- thumb_func_end sub_8077320
-
- thumb_func_start sub_80773B4
-sub_80773B4: @ 80773B4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, _08077464 @ =gUnknown_0202F7A4
- mov r10, r0
- ldr r0, [r0]
- adds r1, r0, 0x1
- mov r2, r10
- str r1, [r2]
- ldrb r0, [r0, 0x1]
- mov r9, r0
- ldrb r0, [r1, 0x1]
- lsls r0, 8
- mov r2, r9
- orrs r2, r0
- mov r9, r2
- ldrb r4, [r1, 0x3]
- ldrb r0, [r1, 0x4]
- mov r8, r0
- ldrb r7, [r1, 0x5]
- movs r0, 0x2
- ldrsb r0, [r1, r0]
- bl sub_8077094
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- lsls r4, 24
- asrs r4, 24
- adds r0, r4, 0
- bl sub_8077094
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- mov r1, r8
- lsls r1, 24
- asrs r1, 24
- mov r8, r1
- mov r0, r8
- bl sub_8077094
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08077468 @ =c3_08073CEC
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0807746C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- lsls r6, 24
- asrs r6, 24
- strh r6, [r1, 0x8]
- lsls r5, 24
- asrs r5, 24
- strh r5, [r1, 0xA]
- lsls r4, 24
- asrs r4, 24
- strh r4, [r1, 0xC]
- strh r7, [r1, 0xE]
- strh r6, [r1, 0x10]
- mov r0, r9
- adds r1, r6, 0
- bl PlaySE12WithPanning
- ldr r1, _08077470 @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- mov r2, r10
- ldr r0, [r2]
- adds r0, 0x6
- str r0, [r2]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08077464: .4byte gUnknown_0202F7A4
-_08077468: .4byte c3_08073CEC
-_0807746C: .4byte gTasks
-_08077470: .4byte gUnknown_0202F7B3
- thumb_func_end sub_80773B4
-
- thumb_func_start ma1C_8073ED0
-ma1C_8073ED0: @ 8077474
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- ldr r6, _080774EC @ =gUnknown_0202F7A4
- ldr r0, [r6]
- adds r1, r0, 0x1
- str r1, [r6]
- ldrb r5, [r0, 0x1]
- ldrb r0, [r1, 0x1]
- lsls r0, 8
- orrs r5, r0
- ldrb r0, [r1, 0x3]
- mov r8, r0
- ldrb r2, [r1, 0x4]
- mov r9, r2
- movs r0, 0x2
- ldrsb r0, [r1, r0]
- bl sub_8076F98
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _080774F0 @ =sub_80774FC
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080774F4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r5, [r1, 0x8]
- lsls r4, 24
- asrs r4, 24
- strh r4, [r1, 0xA]
- mov r2, r8
- strh r2, [r1, 0xC]
- mov r2, r9
- strh r2, [r1, 0xE]
- mov r2, r8
- strh r2, [r1, 0x18]
- ldr r1, [r1]
- bl _call_via_r1
- ldr r1, _080774F8 @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, [r6]
- adds r0, 0x5
- str r0, [r6]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080774EC: .4byte gUnknown_0202F7A4
-_080774F0: .4byte sub_80774FC
-_080774F4: .4byte gTasks
-_080774F8: .4byte gUnknown_0202F7B3
- thumb_func_end ma1C_8073ED0
-
- thumb_func_start sub_80774FC
-sub_80774FC: @ 80774FC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, _08077550 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r2, r0, r1
- ldrh r0, [r2, 0x18]
- adds r1, r0, 0x1
- strh r1, [r2, 0x18]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0xC
- ldrsh r1, [r2, r3]
- cmp r0, r1
- blt _0807754A
- movs r0, 0
- strh r0, [r2, 0x18]
- ldrh r0, [r2, 0x8]
- ldrb r1, [r2, 0xA]
- ldrh r4, [r2, 0xE]
- subs r4, 0x1
- strh r4, [r2, 0xE]
- lsls r4, 24
- lsrs r4, 24
- lsls r1, 24
- asrs r1, 24
- bl PlaySE12WithPanning
- cmp r4, 0
- bne _0807754A
- adds r0, r5, 0
- bl DestroyTask
- ldr r1, _08077554 @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
-_0807754A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08077550: .4byte gTasks
-_08077554: .4byte gUnknown_0202F7B3
- thumb_func_end sub_80774FC
-
- thumb_func_start ma1D_08073FB4
-ma1D_08073FB4: @ 8077558
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- ldr r6, _080775BC @ =gUnknown_0202F7A4
- ldr r0, [r6]
- adds r1, r0, 0x1
- str r1, [r6]
- ldrb r5, [r0, 0x1]
- ldrb r0, [r1, 0x1]
- lsls r0, 8
- orrs r5, r0
- ldrb r0, [r1, 0x3]
- mov r8, r0
- movs r0, 0x2
- ldrsb r0, [r1, r0]
- bl sub_8076F98
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _080775C0 @ =sub_80775CC
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080775C4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r5, [r1, 0x8]
- lsls r4, 24
- asrs r4, 24
- strh r4, [r1, 0xA]
- mov r0, r8
- strh r0, [r1, 0xC]
- ldr r1, _080775C8 @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, [r6]
- adds r0, 0x4
- str r0, [r6]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080775BC: .4byte gUnknown_0202F7A4
-_080775C0: .4byte sub_80775CC
-_080775C4: .4byte gTasks
-_080775C8: .4byte gUnknown_0202F7B3
- thumb_func_end ma1D_08073FB4
-
- thumb_func_start sub_80775CC
-sub_80775CC: @ 80775CC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, _08077608 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r2, r0, r1
- ldrh r0, [r2, 0xC]
- subs r1, r0, 0x1
- strh r1, [r2, 0xC]
- lsls r0, 16
- cmp r0, 0
- bgt _08077600
- ldrh r0, [r2, 0x8]
- movs r1, 0xA
- ldrsb r1, [r2, r1]
- bl PlaySE12WithPanning
- adds r0, r4, 0
- bl DestroyTask
- ldr r1, _0807760C @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
-_08077600:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08077608: .4byte gTasks
-_0807760C: .4byte gUnknown_0202F7B3
- thumb_func_end sub_80775CC
-
- thumb_func_start sub_8077610
-sub_8077610: @ 8077610
- push {r4-r6,lr}
- ldr r4, _08077678 @ =gUnknown_0202F7A4
- ldr r1, [r4]
- adds r3, r1, 0x1
- str r3, [r4]
- ldrb r2, [r1, 0x1]
- ldrb r0, [r3, 0x1]
- lsls r0, 8
- adds r2, r0
- ldrb r0, [r3, 0x2]
- lsls r0, 16
- adds r2, r0
- ldrb r0, [r3, 0x3]
- lsls r0, 24
- adds r6, r2, r0
- adds r0, r1, 0x5
- str r0, [r4]
- ldrb r0, [r1, 0x5]
- adds r1, 0x6
- str r1, [r4]
- cmp r0, 0
- beq _0807765A
- adds r5, r4, 0
- ldr r4, _0807767C @ =gBattleAnimArgs
- adds r3, r0, 0
-_08077642:
- ldr r2, [r5]
- ldrb r1, [r2]
- ldrb r0, [r2, 0x1]
- lsls r0, 8
- orrs r1, r0
- strh r1, [r4]
- adds r2, 0x2
- str r2, [r5]
- adds r4, 0x2
- subs r3, 0x1
- cmp r3, 0
- bne _08077642
-_0807765A:
- adds r0, r6, 0
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- bl _call_via_r6
- ldr r1, _08077680 @ =gUnknown_0202F7B3
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08077678: .4byte gUnknown_0202F7A4
-_0807767C: .4byte gBattleAnimArgs
-_08077680: .4byte gUnknown_0202F7B3
- thumb_func_end sub_8077610
-
- thumb_func_start ma20_wait_for_something
-ma20_wait_for_something: @ 8077684
- push {r4,r5,lr}
- ldr r0, _080776BC @ =gUnknown_0202F7B3
- ldrb r5, [r0]
- cmp r5, 0
- bne _080776CC
- bl IsSEPlaying
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _080776E4
- ldr r4, _080776C0 @ =gUnknown_03004AF0
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5A
- bls _080776D2
- ldr r0, _080776C4 @ =gMPlay_SE1
- bl m4aMPlayStop
- ldr r0, _080776C8 @ =gMPlay_SE2
- bl m4aMPlayStop
- strh r5, [r4]
- b _080776F6
- .align 2, 0
-_080776BC: .4byte gUnknown_0202F7B3
-_080776C0: .4byte gUnknown_03004AF0
-_080776C4: .4byte gMPlay_SE1
-_080776C8: .4byte gMPlay_SE2
-_080776CC:
- ldr r1, _080776DC @ =gUnknown_03004AF0
- movs r0, 0
- strh r0, [r1]
-_080776D2:
- ldr r1, _080776E0 @ =gUnknown_0202F7B0
- movs r0, 0x1
- strb r0, [r1]
- b _080776F6
- .align 2, 0
-_080776DC: .4byte gUnknown_03004AF0
-_080776E0: .4byte gUnknown_0202F7B0
-_080776E4:
- ldr r0, _080776FC @ =gUnknown_03004AF0
- movs r2, 0
- strh r1, [r0]
- ldr r1, _08077700 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- ldr r0, _08077704 @ =gUnknown_0202F7B0
- strb r2, [r0]
-_080776F6:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080776FC: .4byte gUnknown_03004AF0
-_08077700: .4byte gUnknown_0202F7A4
-_08077704: .4byte gUnknown_0202F7B0
- thumb_func_end ma20_wait_for_something
-
- thumb_func_start ma21_08074164
-ma21_08074164: @ 8077708
- push {r4-r6,lr}
- ldr r5, _08077748 @ =gUnknown_0202F7A4
- ldr r4, [r5]
- adds r3, r4, 0x1
- str r3, [r5]
- ldrb r2, [r4, 0x1]
- ldrb r1, [r3, 0x1]
- ldrb r0, [r3, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldr r0, _0807774C @ =gBattleAnimArgs
- lsls r2, 1
- adds r2, r0
- lsls r1, 16
- asrs r1, 16
- movs r6, 0
- ldrsh r0, [r2, r6]
- cmp r1, r0
- bne _08077750
- ldrb r1, [r3, 0x3]
- ldrb r0, [r3, 0x4]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r3, 0x5]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r3, 0x6]
- lsls r0, 24
- adds r1, r0
- str r1, [r5]
- b _08077756
- .align 2, 0
-_08077748: .4byte gUnknown_0202F7A4
-_0807774C: .4byte gBattleAnimArgs
-_08077750:
- adds r0, r4, 0
- adds r0, 0x8
- str r0, [r5]
-_08077756:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end ma21_08074164
-
- thumb_func_start sub_807775C
-sub_807775C: @ 807775C
- push {r4,lr}
- ldr r4, _0807778C @ =gUnknown_0202F7A4
- ldr r0, [r4]
- adds r0, 0x1
- str r0, [r4]
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- beq _08077790
- ldr r2, [r4]
- ldrb r1, [r2]
- ldrb r0, [r2, 0x1]
- lsls r0, 8
- adds r1, r0
- ldrb r0, [r2, 0x2]
- lsls r0, 16
- adds r1, r0
- ldrb r0, [r2, 0x3]
- lsls r0, 24
- adds r1, r0
- str r1, [r4]
- b _08077796
- .align 2, 0
-_0807778C: .4byte gUnknown_0202F7A4
-_08077790:
- ldr r0, [r4]
- adds r0, 0x4
- str r0, [r4]
-_08077796:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_807775C
-
- thumb_func_start sub_807779C
-sub_807779C: @ 807779C
- push {r4,lr}
- ldr r0, _080777B0 @ =gUnknown_0202F7A4
- ldr r1, [r0]
- ldrb r2, [r1, 0x1]
- adds r1, 0x2
- str r1, [r0]
- cmp r2, 0
- beq _080777B8
- ldr r0, _080777B4 @ =gUnknown_0202F7C9
- b _080777BA
- .align 2, 0
-_080777B0: .4byte gUnknown_0202F7A4
-_080777B4: .4byte gUnknown_0202F7C9
-_080777B8:
- ldr r0, _080777FC @ =gUnknown_0202F7C8
-_080777BA:
- ldrb r0, [r0]
- bl battle_get_per_side_status
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _080777F4
- cmp r4, 0
- beq _080777D6
- cmp r4, 0x3
- bne _080777F4
-_080777D6:
- ldr r3, _08077800 @ =REG_BG1CNT
- ldrb r2, [r3]
- movs r1, 0x4
- negs r1, r1
- adds r0, r1, 0
- ands r0, r2
- movs r2, 0x1
- orrs r0, r2
- strb r0, [r3]
- ldr r2, _08077804 @ =REG_BG2CNT
- ldrb r0, [r2]
- ands r1, r0
- movs r0, 0x2
- orrs r1, r0
- strb r1, [r2]
-_080777F4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080777FC: .4byte gUnknown_0202F7C8
-_08077800: .4byte REG_BG1CNT
-_08077804: .4byte REG_BG2CNT
- thumb_func_end sub_807779C
-
- thumb_func_start sub_8077808
-sub_8077808: @ 8077808
- push {lr}
- ldr r0, _08077840 @ =gUnknown_0202F7A4
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _0807783A
- ldr r3, _08077844 @ =REG_BG1CNT
- ldrb r2, [r3]
- movs r1, 0x4
- negs r1, r1
- adds r0, r1, 0
- ands r0, r2
- movs r2, 0x1
- orrs r0, r2
- strb r0, [r3]
- ldr r2, _08077848 @ =REG_BG2CNT
- ldrb r0, [r2]
- ands r1, r0
- movs r0, 0x2
- orrs r1, r0
- strb r1, [r2]
-_0807783A:
- pop {r0}
- bx r0
- .align 2, 0
-_08077840: .4byte gUnknown_0202F7A4
-_08077844: .4byte REG_BG1CNT
-_08077848: .4byte REG_BG2CNT
- thumb_func_end sub_8077808
-
- thumb_func_start sub_807784C
-sub_807784C: @ 807784C
- push {r4-r7,lr}
- ldr r1, _0807787C @ =gUnknown_0202F7A4
- ldr r0, [r1]
- ldrb r6, [r0, 0x1]
- adds r0, 0x2
- str r0, [r1]
- ldr r7, _08077880 @ =gUnknown_0202F7C8
- ldrb r0, [r7]
- bl battle_side_get_owner
- adds r4, r0, 0
- ldr r5, _08077884 @ =gUnknown_0202F7C9
- ldrb r0, [r5]
- bl battle_side_get_owner
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- beq _080778C2
- cmp r6, 0
- beq _08077888
- ldrb r0, [r5]
- b _0807788A
- .align 2, 0
-_0807787C: .4byte gUnknown_0202F7A4
-_08077880: .4byte gUnknown_0202F7C8
-_08077884: .4byte gUnknown_0202F7C9
-_08077888:
- ldrb r0, [r7]
-_0807788A:
- bl battle_get_per_side_status
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _080778C2
- cmp r4, 0
- beq _080778A4
- cmp r4, 0x3
- bne _080778C2
-_080778A4:
- ldr r3, _080778C8 @ =REG_BG1CNT
- ldrb r2, [r3]
- movs r1, 0x4
- negs r1, r1
- adds r0, r1, 0
- ands r0, r2
- movs r2, 0x1
- orrs r0, r2
- strb r0, [r3]
- ldr r2, _080778CC @ =REG_BG2CNT
- ldrb r0, [r2]
- ands r1, r0
- movs r0, 0x2
- orrs r1, r0
- strb r1, [r2]
-_080778C2:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080778C8: .4byte REG_BG1CNT
-_080778CC: .4byte REG_BG2CNT
- thumb_func_end sub_807784C
-
- thumb_func_start ma2B_make_side_invisible
-ma2B_make_side_invisible: @ 80778D0
- push {r4,lr}
- ldr r4, _08077904 @ =gUnknown_0202F7A4
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl obj_id_for_side_relative_to_move
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _080778F8
- ldr r1, _08077908 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080778F8:
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08077904: .4byte gUnknown_0202F7A4
-_08077908: .4byte gSprites
- thumb_func_end ma2B_make_side_invisible
-
- thumb_func_start ma2C_make_side_visible
-ma2C_make_side_visible: @ 807790C
- push {r4,lr}
- ldr r4, _08077944 @ =gUnknown_0202F7A4
- ldr r0, [r4]
- ldrb r0, [r0, 0x1]
- bl obj_id_for_side_relative_to_move
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _08077936
- ldr r1, _08077948 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
-_08077936:
- ldr r0, [r4]
- adds r0, 0x2
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08077944: .4byte gUnknown_0202F7A4
-_08077948: .4byte gSprites
- thumb_func_end ma2C_make_side_visible
-
- thumb_func_start sub_807794C
-sub_807794C: @ 807794C
- push {r4-r7,lr}
- ldr r1, _08077998 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- ldrb r7, [r0, 0x1]
- adds r0, 0x2
- str r0, [r1]
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _080779F6
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- beq _080779F6
- ldr r6, _0807799C @ =gUnknown_0202F7C8
- ldrb r0, [r6]
- bl battle_side_get_owner
- adds r4, r0, 0
- ldr r5, _080779A0 @ =gUnknown_0202F7C9
- ldrb r0, [r5]
- bl battle_side_get_owner
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _080779F6
- cmp r7, 0
- bne _080779A4
- ldrb r0, [r6]
- bl battle_get_per_side_status_permutated
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- b _080779B0
- .align 2, 0
-_08077998: .4byte gUnknown_0202F7A4
-_0807799C: .4byte gUnknown_0202F7C8
-_080779A0: .4byte gUnknown_0202F7C9
-_080779A4:
- ldrb r0, [r5]
- bl battle_get_per_side_status_permutated
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x1
-_080779B0:
- bl obj_id_for_side_relative_to_move
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _080779F6
- ldr r1, _080779EC @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r2, r0, r1
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r1, [r3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
- cmp r4, 0x2
- bne _080779E0
- ldrb r0, [r2, 0x5]
- movs r1, 0xC
- orrs r0, r1
- strb r0, [r2, 0x5]
-_080779E0:
- cmp r4, 0x1
- bne _080779F0
- movs r0, 0
- bl sub_8076464
- b _080779F6
- .align 2, 0
-_080779EC: .4byte gSprites
-_080779F0:
- movs r0, 0x1
- bl sub_8076464
-_080779F6:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_807794C
-
- thumb_func_start sub_80779FC
-sub_80779FC: @ 80779FC
- push {r4-r7,lr}
- ldr r1, _08077A48 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- ldrb r7, [r0, 0x1]
- adds r0, 0x2
- str r0, [r1]
- bl sub_8076BE0
- lsls r0, 24
- cmp r0, 0
- bne _08077A88
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- beq _08077A88
- ldr r6, _08077A4C @ =gUnknown_0202F7C8
- ldrb r0, [r6]
- bl battle_side_get_owner
- adds r4, r0, 0
- ldr r5, _08077A50 @ =gUnknown_0202F7C9
- ldrb r0, [r5]
- bl battle_side_get_owner
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _08077A88
- cmp r7, 0
- bne _08077A54
- ldrb r0, [r6]
- bl battle_get_per_side_status_permutated
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- b _08077A60
- .align 2, 0
-_08077A48: .4byte gUnknown_0202F7A4
-_08077A4C: .4byte gUnknown_0202F7C8
-_08077A50: .4byte gUnknown_0202F7C9
-_08077A54:
- ldrb r0, [r5]
- bl battle_get_per_side_status_permutated
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x1
-_08077A60:
- bl obj_id_for_side_relative_to_move
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _08077A88
- cmp r4, 0x2
- bne _08077A88
- ldr r1, _08077A90 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- ldrb r2, [r0, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r2
- movs r2, 0x8
- orrs r1, r2
- strb r1, [r0, 0x5]
-_08077A88:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08077A90: .4byte gSprites
- thumb_func_end sub_80779FC
-
- thumb_func_start ma2F_stop_music
-ma2F_stop_music: @ 8077A94
- push {lr}
- ldr r0, _08077AB0 @ =gMPlay_SE1
- bl m4aMPlayStop
- ldr r0, _08077AB4 @ =gMPlay_SE2
- bl m4aMPlayStop
- ldr r1, _08077AB8 @ =gUnknown_0202F7A4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08077AB0: .4byte gMPlay_SE1
-_08077AB4: .4byte gMPlay_SE2
-_08077AB8: .4byte gUnknown_0202F7A4
- thumb_func_end ma2F_stop_music
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/battle_anim_80CA710.s b/asm/battle_anim_80CA710.s
index ae6709650..32429e22d 100644
--- a/asm/battle_anim_80CA710.s
+++ b/asm/battle_anim_80CA710.s
@@ -31309,7 +31309,7 @@ sub_80D97CC: @ 80D97CC
ldrsh r0, [r0, r1]
cmp r0, 0
bne _080D9828
- ldr r4, _080D981C @ =gUnknown_02024C07
+ ldr r4, _080D981C @ =gPlayerMonIndex
ldrb r0, [r4]
movs r1, 0x2
bl sub_8077ABC
@@ -31338,7 +31338,7 @@ sub_80D97CC: @ 80D97CC
b _080D9844
.align 2, 0
_080D9818: .4byte gBattleAnimArgs
-_080D981C: .4byte gUnknown_02024C07
+_080D981C: .4byte gPlayerMonIndex
_080D9820: .4byte gUnknown_0202F7C8
_080D9824: .4byte gUnknown_0202F7C9
_080D9828:
@@ -31614,7 +31614,7 @@ sub_80D9A38: @ 80D9A38
ldrsh r0, [r0, r1]
cmp r0, 0
bne _080D9A7C
- ldr r4, _080D9A70 @ =gUnknown_02024C07
+ ldr r4, _080D9A70 @ =gPlayerMonIndex
ldrb r0, [r4]
movs r1, 0x2
bl sub_8077ABC
@@ -31633,7 +31633,7 @@ sub_80D9A38: @ 80D9A38
b _080D9A82
.align 2, 0
_080D9A6C: .4byte gBattleAnimArgs
-_080D9A70: .4byte gUnknown_02024C07
+_080D9A70: .4byte gPlayerMonIndex
_080D9A74: .4byte gUnknown_0202F7C9
_080D9A78: .4byte gUnknown_0202F7C8
_080D9A7C:
@@ -43672,7 +43672,7 @@ sub_80DF78C: @ 80DF78C
ldr r0, _080DF7E4 @ =gBattleAnimArgs
ldrh r0, [r0]
strh r0, [r6, 0x3A]
- ldr r4, _080DF7E8 @ =gUnknown_02024C07
+ ldr r4, _080DF7E8 @ =gPlayerMonIndex
ldrb r0, [r4]
movs r1, 0
bl sub_807A100
@@ -43690,7 +43690,7 @@ sub_80DF78C: @ 80DF78C
.align 2, 0
_080DF7E0: .4byte gUnknown_0202F7C8
_080DF7E4: .4byte gBattleAnimArgs
-_080DF7E8: .4byte gUnknown_02024C07
+_080DF7E8: .4byte gPlayerMonIndex
_080DF7EC:
lsrs r0, r1, 17
_080DF7EE:
@@ -53227,7 +53227,7 @@ sub_80E4234: @ 80E4234
lsls r0, 24
lsrs r0, 24
ldr r2, _080E4254 @ =gUnknown_0202F7C8
- ldr r1, _080E4258 @ =gUnknown_02024C08
+ ldr r1, _080E4258 @ =gEnemyMonIndex
ldrb r1, [r1]
strb r1, [r2]
ldr r2, _080E425C @ =gUnknown_0202F7C9
@@ -53239,7 +53239,7 @@ sub_80E4234: @ 80E4234
bx r0
.align 2, 0
_080E4254: .4byte gUnknown_0202F7C8
-_080E4258: .4byte gUnknown_02024C08
+_080E4258: .4byte gEnemyMonIndex
_080E425C: .4byte gUnknown_0202F7C9
_080E4260: .4byte gUnknown_02024C0A
thumb_func_end sub_80E4234
@@ -53287,7 +53287,7 @@ sub_80E42B0: @ 80E42B0
lsls r0, 24
lsrs r0, 24
ldr r2, _080E42C8 @ =gUnknown_0202F7C9
- ldr r1, _080E42CC @ =gUnknown_02024C08
+ ldr r1, _080E42CC @ =gEnemyMonIndex
ldrb r1, [r1]
strb r1, [r2]
bl move_anim_task_del
@@ -53295,7 +53295,7 @@ sub_80E42B0: @ 80E42B0
bx r0
.align 2, 0
_080E42C8: .4byte gUnknown_0202F7C9
-_080E42CC: .4byte gUnknown_02024C08
+_080E42CC: .4byte gEnemyMonIndex
thumb_func_end sub_80E42B0
thumb_func_start sub_80E42D0
@@ -53304,7 +53304,7 @@ sub_80E42D0: @ 80E42D0
lsls r0, 24
lsrs r0, 24
ldr r2, _080E42F0 @ =gUnknown_0202F7C8
- ldr r1, _080E42F4 @ =gUnknown_02024C07
+ ldr r1, _080E42F4 @ =gPlayerMonIndex
ldrb r1, [r1]
strb r1, [r2]
ldr r2, _080E42F8 @ =gUnknown_0202F7C9
@@ -53316,7 +53316,7 @@ sub_80E42D0: @ 80E42D0
bx r0
.align 2, 0
_080E42F0: .4byte gUnknown_0202F7C8
-_080E42F4: .4byte gUnknown_02024C07
+_080E42F4: .4byte gPlayerMonIndex
_080E42F8: .4byte gUnknown_0202F7C9
_080E42FC: .4byte gUnknown_02024C0A
thumb_func_end sub_80E42D0
diff --git a/asm/battle_message.s b/asm/battle_message.s
index c4e4a7dd0..0e3588d14 100644
--- a/asm/battle_message.s
+++ b/asm/battle_message.s
@@ -16,7 +16,7 @@ sub_8120AA8: @ 8120AA8
lsls r0, 16
lsrs r7, r0, 16
movs r6, 0
- ldr r5, _08120B70 @ =gUnknown_02039270
+ ldr r5, _08120B70 @ =gSelectedOrderFromParty
ldr r4, _08120B74 @ =gUnknown_02024A60
ldrb r1, [r4]
lsls r1, 9
@@ -73,7 +73,7 @@ _08120B10:
movs r2, 0
ldr r0, _08120B9C @ =gUnknown_030041C0
mov r8, r0
- ldr r3, _08120B70 @ =gUnknown_02039270
+ ldr r3, _08120B70 @ =gSelectedOrderFromParty
ldr r1, _08120BA4 @ =gUnknown_03004290
mov r12, r1
ldr r5, _08120BA8 @ =gUnknown_030042B0
@@ -111,7 +111,7 @@ _08120B64:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08120B70: .4byte gUnknown_02039270
+_08120B70: .4byte gSelectedOrderFromParty
_08120B74: .4byte gUnknown_02024A60
_08120B78: .4byte gUnknown_02023A64
_08120B7C: .4byte gUnknown_02024C04
@@ -414,7 +414,7 @@ _08120DE4: .4byte gUnknown_08400622
_08120DE8:
mov r0, r10
bl sub_8121D1C
- ldr r0, _08120E14 @ =gUnknown_02039270
+ ldr r0, _08120E14 @ =gSelectedOrderFromParty
ldr r2, [r0]
ldrh r1, [r2]
movs r0, 0xB1
@@ -433,7 +433,7 @@ _08120DE8:
bl StringCopy
b _08120E38
.align 2, 0
-_08120E14: .4byte gUnknown_02039270
+_08120E14: .4byte gSelectedOrderFromParty
_08120E18: .4byte gUnknown_03004290
_08120E1C: .4byte gUnknown_08401674
_08120E20: .4byte 0x02000000
@@ -968,7 +968,7 @@ _0812129C: .4byte gUnknown_02024A6A
_081212A0: .4byte gLinkPlayers
_081212A4: .4byte gEnemyParty
_081212A8:
- ldr r4, _081212CC @ =gUnknown_02024C07
+ ldr r4, _081212CC @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -985,7 +985,7 @@ _081212A8:
ldr r4, _081212D8 @ =gUnknown_08400797
b _081212E6
.align 2, 0
-_081212CC: .4byte gUnknown_02024C07
+_081212CC: .4byte gPlayerMonIndex
_081212D0: .4byte gBattleTypeFlags
_081212D4: .4byte gUnknown_08400791
_081212D8: .4byte gUnknown_08400797
@@ -1035,7 +1035,7 @@ _0812131C:
.align 2, 0
_08121338: .4byte gUnknown_02024A6A
_0812133C:
- ldr r4, _08121370 @ =gUnknown_02024C07
+ ldr r4, _08121370 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -1059,7 +1059,7 @@ _0812133C:
adds r0, r1
b _0812190E
.align 2, 0
-_08121370: .4byte gUnknown_02024C07
+_08121370: .4byte gPlayerMonIndex
_08121374: .4byte gUnknown_02024A6A
_08121378: .4byte gPlayerParty
_0812137C:
@@ -1083,7 +1083,7 @@ _0812137C:
_081213A0: .4byte gUnknown_02024A6A
_081213A4: .4byte gEnemyParty
_081213A8:
- ldr r5, _081213F4 @ =gUnknown_02024C07
+ ldr r5, _081213F4 @ =gPlayerMonIndex
ldrb r0, [r5]
bl battle_side_get_owner
lsls r0, 24
@@ -1123,7 +1123,7 @@ _081213E8:
ldrh r1, [r0]
b _08121908
.align 2, 0
-_081213F4: .4byte gUnknown_02024C07
+_081213F4: .4byte gPlayerMonIndex
_081213F8: .4byte gBattleTypeFlags
_081213FC: .4byte gUnknown_08400791
_08121400: .4byte gUnknown_08400797
@@ -1139,7 +1139,7 @@ _0812140C:
.align 2, 0
_08121418: .4byte gUnknown_02024A6A
_0812141C:
- ldr r5, _08121468 @ =gUnknown_02024C08
+ ldr r5, _08121468 @ =gEnemyMonIndex
ldrb r0, [r5]
bl battle_side_get_owner
lsls r0, 24
@@ -1179,7 +1179,7 @@ _0812145C:
ldrh r1, [r0]
b _08121908
.align 2, 0
-_08121468: .4byte gUnknown_02024C08
+_08121468: .4byte gEnemyMonIndex
_0812146C: .4byte gBattleTypeFlags
_08121470: .4byte gUnknown_08400791
_08121474: .4byte gUnknown_08400797
@@ -1368,7 +1368,7 @@ _081215E8:
.align 2, 0
_081215F4: .4byte gUnknown_02024A6A
_081215F8:
- ldr r0, _08121610 @ =gUnknown_02039270
+ ldr r0, _08121610 @ =gSelectedOrderFromParty
ldr r2, [r0]
ldrh r1, [r2]
movs r0, 0xB1
@@ -1380,14 +1380,14 @@ _081215F8:
adds r0, r2
b _08121634
.align 2, 0
-_08121610: .4byte gUnknown_02039270
+_08121610: .4byte gSelectedOrderFromParty
_08121614: .4byte 0x02000000
_08121618: .4byte 0x000160a0
_0812161C:
ldrh r1, [r2]
b _08121652
_08121620:
- ldr r0, _08121640 @ =gUnknown_02039270
+ ldr r0, _08121640 @ =gSelectedOrderFromParty
ldr r2, [r0]
ldrh r1, [r2, 0x2]
movs r0, 0xB1
@@ -1404,7 +1404,7 @@ _08121634:
adds r4, r0, r1
b _081219E6
.align 2, 0
-_08121640: .4byte gUnknown_02039270
+_08121640: .4byte gSelectedOrderFromParty
_08121644: .4byte 0x02000000
_08121648: .4byte 0x000160a0
_0812164C: .4byte gUnknown_08401674
@@ -1489,18 +1489,18 @@ _081216EC:
_081216F0: .4byte byte_2024C06
_081216F4:
ldr r1, _081216FC @ =gUnknown_0203926C
- ldr r0, _08121700 @ =gUnknown_02024C07
+ ldr r0, _08121700 @ =gPlayerMonIndex
b _08121730
.align 2, 0
_081216FC: .4byte gUnknown_0203926C
-_08121700: .4byte gUnknown_02024C07
+_08121700: .4byte gPlayerMonIndex
_08121704:
ldr r1, _0812170C @ =gUnknown_0203926C
- ldr r0, _08121710 @ =gUnknown_02024C08
+ ldr r0, _08121710 @ =gEnemyMonIndex
b _08121730
.align 2, 0
_0812170C: .4byte gUnknown_0203926C
-_08121710: .4byte gUnknown_02024C08
+_08121710: .4byte gEnemyMonIndex
_08121714:
ldr r1, _08121720 @ =gUnknown_0203926C
ldr r0, _08121724 @ =0x02000000
@@ -1805,12 +1805,12 @@ _08121970: .4byte 0x0000084b
_08121974: .4byte gUnknown_084009ED
_08121978: .4byte gUnknown_084009F7
_0812197C:
- ldr r0, _08121980 @ =gUnknown_02024C07
+ ldr r0, _08121980 @ =gPlayerMonIndex
b _08121986
.align 2, 0
-_08121980: .4byte gUnknown_02024C07
+_08121980: .4byte gPlayerMonIndex
_08121984:
- ldr r0, _08121998 @ =gUnknown_02024C08
+ ldr r0, _08121998 @ =gEnemyMonIndex
_08121986:
ldrb r0, [r0]
bl battle_side_get_owner
@@ -1821,16 +1821,16 @@ _08121986:
ldr r4, _081219A0 @ =gUnknown_084007AC
b _081219E6
.align 2, 0
-_08121998: .4byte gUnknown_02024C08
+_08121998: .4byte gEnemyMonIndex
_0812199C: .4byte gUnknown_084007A7
_081219A0: .4byte gUnknown_084007AC
_081219A4:
- ldr r0, _081219A8 @ =gUnknown_02024C07
+ ldr r0, _081219A8 @ =gPlayerMonIndex
b _081219AE
.align 2, 0
-_081219A8: .4byte gUnknown_02024C07
+_081219A8: .4byte gPlayerMonIndex
_081219AC:
- ldr r0, _081219C0 @ =gUnknown_02024C08
+ ldr r0, _081219C0 @ =gEnemyMonIndex
_081219AE:
ldrb r0, [r0]
bl battle_side_get_owner
@@ -1841,16 +1841,16 @@ _081219AE:
ldr r4, _081219C8 @ =gUnknown_084007A1
b _081219E6
.align 2, 0
-_081219C0: .4byte gUnknown_02024C08
+_081219C0: .4byte gEnemyMonIndex
_081219C4: .4byte gUnknown_0840079C
_081219C8: .4byte gUnknown_084007A1
_081219CC:
- ldr r0, _081219D0 @ =gUnknown_02024C07
+ ldr r0, _081219D0 @ =gPlayerMonIndex
b _081219D6
.align 2, 0
-_081219D0: .4byte gUnknown_02024C07
+_081219D0: .4byte gPlayerMonIndex
_081219D4:
- ldr r0, _08121A24 @ =gUnknown_02024C08
+ ldr r0, _08121A24 @ =gEnemyMonIndex
_081219D6:
ldrb r0, [r0]
bl battle_side_get_owner
@@ -1894,7 +1894,7 @@ _08121A06:
adds r6, 0x1
b _08121A3C
.align 2, 0
-_08121A24: .4byte gUnknown_02024C08
+_08121A24: .4byte gEnemyMonIndex
_08121A28: .4byte gUnknown_084007B2
_08121A2C: .4byte gUnknown_084007B7
_08121A30:
@@ -2274,7 +2274,7 @@ sub_8121D1C: @ 8121D1C
push {r4,r5,lr}
adds r4, r0, 0
movs r2, 0
- ldr r5, _08121D50 @ =gUnknown_02039270
+ ldr r5, _08121D50 @ =gSelectedOrderFromParty
ldr r3, _08121D54 @ =gUnknown_084016BC
_08121D26:
cmp r2, 0x4
@@ -2299,7 +2299,7 @@ _08121D3C:
bl StringCopy
b _08121D68
.align 2, 0
-_08121D50: .4byte gUnknown_02039270
+_08121D50: .4byte gSelectedOrderFromParty
_08121D54: .4byte gUnknown_084016BC
_08121D58: .4byte gUnknown_08400E5E
_08121D5C:
@@ -2329,7 +2329,7 @@ _08121D7E:
cmp r0, 0xFF
bne _08121D7C
ldr r1, _08121DB4 @ =gUnknown_084016BC
- ldr r5, _08121DB8 @ =gUnknown_02039270
+ ldr r5, _08121DB8 @ =gSelectedOrderFromParty
movs r0, 0
lsls r0, 1
adds r2, r0, r1
@@ -2356,7 +2356,7 @@ _08121DA8:
mov pc, r0
.align 2, 0
_08121DB4: .4byte gUnknown_084016BC
-_08121DB8: .4byte gUnknown_02039270
+_08121DB8: .4byte gSelectedOrderFromParty
_08121DBC: .4byte _08121DC0
.align 2, 0
_08121DC0:
diff --git a/asm/battle_party_menu.s b/asm/battle_party_menu.s
deleted file mode 100644
index 471c5ccc0..000000000
--- a/asm/battle_party_menu.s
+++ /dev/null
@@ -1,1263 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start SetUpBattlePartyMenu
-SetUpBattlePartyMenu: @ 8094E58
- push {r4,r5,lr}
- ldr r1, _08094E78 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r0, r1, r2
- movs r3, 0
- ldrsh r0, [r0, r3]
- adds r4, r1, 0
- cmp r0, 0xA
- bls _08094E6E
- b _08095048
-_08094E6E:
- lsls r0, 2
- ldr r1, _08094E7C @ =_08094E80
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08094E78: .4byte 0x0201b000
-_08094E7C: .4byte _08094E80
- .align 2, 0
-_08094E80:
- .4byte _08094EAC
- .4byte _08094F28
- .4byte _08094F3C
- .4byte _08094F4A
- .4byte _08094F6C
- .4byte _08094F80
- .4byte _08094F94
- .4byte _08094FA8
- .4byte _08094FBC
- .4byte _08094FD0
- .4byte _08095000
-_08094EAC:
- bl IsLinkDoubleBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08094EDC
- ldr r1, _08094ED4 @ =0x0201b000
- ldr r0, _08094ED8 @ =0x00000266
- adds r4, r1, r0
- ldrh r2, [r4]
- movs r3, 0
- ldrsh r0, [r4, r3]
- cmp r0, 0x6
- bne _08094EEC
- movs r0, 0
- strh r0, [r4]
- movs r3, 0x99
- lsls r3, 2
- adds r1, r3
- b _08094FEC
- .align 2, 0
-_08094ED4: .4byte 0x0201b000
-_08094ED8: .4byte 0x00000266
-_08094EDC:
- ldr r1, _08094F10 @ =0x0201b000
- ldr r0, _08094F14 @ =0x00000266
- adds r4, r1, r0
- ldrh r2, [r4]
- movs r3, 0
- ldrsh r0, [r4, r3]
- cmp r0, 0x5
- bgt _08094F1C
-_08094EEC:
- movs r3, 0x98
- lsls r3, 2
- adds r0, r1, r3
- ldrb r0, [r0]
- lsls r1, r2, 24
- lsrs r1, 24
- movs r2, 0
- ldrsh r3, [r4, r2]
- movs r2, 0x64
- muls r2, r3
- ldr r3, _08094F18 @ =gPlayerParty
- adds r2, r3
- bl TryCreatePartyMenuMonIcon
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _08095048
- .align 2, 0
-_08094F10: .4byte 0x0201b000
-_08094F14: .4byte 0x00000266
-_08094F18: .4byte gPlayerParty
-_08094F1C:
- movs r0, 0
- strh r0, [r4]
- movs r3, 0x99
- lsls r3, 2
- adds r1, r3
- b _08094FEC
-_08094F28:
- bl LoadHeldItemIconGraphics
- ldr r1, _08094F38 @ =0x0201b000
- movs r0, 0x99
- lsls r0, 2
- adds r1, r0
- b _08094FEC
- .align 2, 0
-_08094F38: .4byte 0x0201b000
-_08094F3C:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- bl CreateHeldItemIcons_806DC34
- b _08094FE6
-_08094F4A:
- movs r3, 0x98
- lsls r3, 2
- adds r0, r4, r3
- ldrb r0, [r0]
- ldr r1, _08094F68 @ =0x00000266
- adds r5, r4, r1
- ldrb r1, [r5]
- bl sub_806BD58
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08094FE2
- b _08094FF8
- .align 2, 0
-_08094F68: .4byte 0x00000266
-_08094F6C:
- bl PartyMenuPrintMonsLevelOrStatus
- ldr r1, _08094F7C @ =0x0201b000
- movs r3, 0x99
- lsls r3, 2
- adds r1, r3
- b _08094FEC
- .align 2, 0
-_08094F7C: .4byte 0x0201b000
-_08094F80:
- bl PrintPartyMenuMonNicknames
- ldr r1, _08094F90 @ =0x0201b000
- movs r0, 0x99
- lsls r0, 2
- adds r1, r0
- b _08094FEC
- .align 2, 0
-_08094F90: .4byte 0x0201b000
-_08094F94:
- bl PartyMenuTryPrintMonsHP
- ldr r1, _08094FA4 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r1, r2
- b _08094FEC
- .align 2, 0
-_08094FA4: .4byte 0x0201b000
-_08094FA8:
- bl nullsub_13
- ldr r1, _08094FB8 @ =0x0201b000
- movs r3, 0x99
- lsls r3, 2
- adds r1, r3
- b _08094FEC
- .align 2, 0
-_08094FB8: .4byte 0x0201b000
-_08094FBC:
- bl PartyMenuDrawHPBars
- ldr r1, _08094FCC @ =0x0201b000
- movs r0, 0x99
- lsls r0, 2
- adds r1, r0
- b _08094FEC
- .align 2, 0
-_08094FCC: .4byte 0x0201b000
-_08094FD0:
- ldr r1, _08094FF4 @ =0x00000266
- adds r5, r4, r1
- ldrb r0, [r5]
- bl sub_806B58C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08094FF8
-_08094FE2:
- movs r0, 0
- strh r0, [r5]
-_08094FE6:
- movs r2, 0x99
- lsls r2, 2
- adds r1, r4, r2
-_08094FEC:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _08095048
- .align 2, 0
-_08094FF4: .4byte 0x00000266
-_08094FF8:
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
- b _08095048
-_08095000:
- ldr r0, _08095024 @ =gUnknown_02038473
- ldrb r4, [r0]
- cmp r4, 0x3
- bne _0809503C
- ldr r0, _08095028 @ =gScriptItemId
- ldrh r0, [r0]
- bl GetItemEffectType
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA
- bne _08095034
- ldr r0, _0809502C @ =0x0201b000
- ldr r3, _08095030 @ =0x00000259
- adds r0, r3
- movs r1, 0xFF
- strb r1, [r0]
- b _0809503C
- .align 2, 0
-_08095024: .4byte gUnknown_02038473
-_08095028: .4byte gScriptItemId
-_0809502C: .4byte 0x0201b000
-_08095030: .4byte 0x00000259
-_08095034:
- ldr r0, _08095040 @ =0x0201b000
- ldr r1, _08095044 @ =0x00000259
- adds r0, r1
- strb r4, [r0]
-_0809503C:
- movs r0, 0x1
- b _0809504A
- .align 2, 0
-_08095040: .4byte 0x0201b000
-_08095044: .4byte 0x00000259
-_08095048:
- movs r0, 0
-_0809504A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end SetUpBattlePartyMenu
-
- thumb_func_start sub_8095050
-sub_8095050: @ 8095050
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x64
- muls r0, r1
- ldr r1, _0809508C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2D
- bl GetMonData
- adds r5, r0, 0
- cmp r5, 0
- bne _080950C8
- ldr r0, _08095090 @ =gUnknown_02038473
- ldrb r4, [r0]
- cmp r4, 0x1
- bne _0809509C
- ldr r3, _08095094 @ =gTasks
- ldr r2, _08095098 @ =0x0201b000
- movs r0, 0x98
- lsls r0, 2
- adds r2, r0
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- b _080950DE
- .align 2, 0
-_0809508C: .4byte gPlayerParty
-_08095090: .4byte gUnknown_02038473
-_08095094: .4byte gTasks
-_08095098: .4byte 0x0201b000
-_0809509C:
- ldr r3, _080950C0 @ =gTasks
- ldr r2, _080950C4 @ =0x0201b000
- movs r0, 0x98
- lsls r0, 2
- adds r2, r0
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- strh r5, [r0, 0x10]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- strh r5, [r0, 0x12]
- b _080950EC
- .align 2, 0
-_080950C0: .4byte gTasks
-_080950C4: .4byte 0x0201b000
-_080950C8:
- ldr r3, _08095108 @ =gTasks
- ldr r2, _0809510C @ =0x0201b000
- movs r0, 0x98
- lsls r0, 2
- adds r2, r0
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- movs r4, 0x2
-_080950DE:
- strh r4, [r0, 0x10]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- strh r4, [r0, 0x12]
-_080950EC:
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r3
- ldrb r0, [r0, 0x10]
- ldr r1, _08095110 @ =gUnknown_083B5FF4
- ldr r2, _08095114 @ =gUnknown_083B5FCC
- movs r3, 0
- bl sub_806E750
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08095108: .4byte gTasks
-_0809510C: .4byte 0x0201b000
-_08095110: .4byte gUnknown_083B5FF4
-_08095114: .4byte gUnknown_083B5FCC
- thumb_func_end sub_8095050
-
- thumb_func_start SetUpBattlePokemonMenu
-SetUpBattlePokemonMenu: @ 8095118
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08095150 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0809512C
- b _08095268
-_0809512C:
- ldr r0, _08095154 @ =gUnknown_02038473
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _08095164
- ldr r5, _08095158 @ =gScriptItemId
- ldrh r0, [r5]
- bl GetItemEffectType
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA
- bne _08095164
- ldr r0, _0809515C @ =gUnknown_03004AE4
- ldrh r1, [r5]
- ldr r2, _08095160 @ =sub_80952E4
- ldr r3, [r0]
- b _080951AA
- .align 2, 0
-_08095150: .4byte gPaletteFade
-_08095154: .4byte gUnknown_02038473
-_08095158: .4byte gScriptItemId
-_0809515C: .4byte gUnknown_03004AE4
-_08095160: .4byte sub_80952E4
-_08095164:
- adds r0, r4, 0
- bl sub_806BD80
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _08095178
- cmp r0, 0x2
- beq _08095214
- b _08095268
-_08095178:
- ldr r0, _080951B4 @ =gUnknown_02038473
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _080951C8
- adds r0, r4, 0
- bl sub_806CA38
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _080951B8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0809521C
- bl sub_806D5A4
- ldr r3, _080951BC @ =gUnknown_03004AE4
- ldr r0, _080951C0 @ =gScriptItemId
- ldrh r1, [r0]
- ldr r2, _080951C4 @ =sub_80952E4
- ldr r3, [r3]
-_080951AA:
- adds r0, r4, 0
- bl _call_via_r3
- b _08095268
- .align 2, 0
-_080951B4: .4byte gUnknown_02038473
-_080951B8: .4byte gPlayerParty
-_080951BC: .4byte gUnknown_03004AE4
-_080951C0: .4byte gScriptItemId
-_080951C4: .4byte sub_80952E4
-_080951C8:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_806CA38
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _08095204 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08095208 @ =gStringVar1
- bl GetMonNickname
- adds r0, r4, 0
- bl sub_806CA38
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_8095050
- ldr r1, _0809520C @ =sub_8095408
- ldr r2, _08095210 @ =SetUpBattlePokemonMenu
- adds r0, r4, 0
- bl SetTaskFuncWithFollowupFunc
- b _08095268
- .align 2, 0
-_08095204: .4byte gPlayerParty
-_08095208: .4byte gStringVar1
-_0809520C: .4byte sub_8095408
-_08095210: .4byte SetUpBattlePokemonMenu
-_08095214:
- ldr r5, _08095224 @ =gUnknown_02038473
- ldrb r0, [r5]
- cmp r0, 0x1
- bne _08095228
-_0809521C:
- movs r0, 0x20
- bl PlaySE
- b _08095268
- .align 2, 0
-_08095224: .4byte gUnknown_02038473
-_08095228:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r5]
- cmp r0, 0x3
- bne _08095254
- ldr r1, _08095248 @ =gUnknown_0202E8F4
- movs r0, 0
- strb r0, [r1]
- ldr r1, _0809524C @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08095250 @ =sub_80952E4
- b _08095266
- .align 2, 0
-_08095248: .4byte gUnknown_0202E8F4
-_0809524C: .4byte gTasks
-_08095250: .4byte sub_80952E4
-_08095254:
- ldr r1, _08095270 @ =gUnknown_0202E8F4
- movs r0, 0
- strb r0, [r1]
- ldr r1, _08095274 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08095278 @ =sub_809527C
-_08095266:
- str r1, [r0]
-_08095268:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08095270: .4byte gUnknown_0202E8F4
-_08095274: .4byte gTasks
-_08095278: .4byte sub_809527C
- thumb_func_end SetUpBattlePokemonMenu
-
- thumb_func_start sub_809527C
-sub_809527C: @ 809527C
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _080952AC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _080952B0 @ =sub_80952B4
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080952AC: .4byte gTasks
-_080952B0: .4byte sub_80952B4
- thumb_func_end sub_809527C
-
- thumb_func_start sub_80952B4
-sub_80952B4: @ 80952B4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080952DC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080952D6
- bl sub_8094D60
- adds r0, r4, 0
- bl DestroyTask
- ldr r0, _080952E0 @ =sub_802E414
- bl SetMainCallback2
-_080952D6:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080952DC: .4byte gPaletteFade
-_080952E0: .4byte sub_802E414
- thumb_func_end sub_80952B4
-
- thumb_func_start sub_80952E4
-sub_80952E4: @ 80952E4
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080952FC @ =gUnknown_0202E8F4
- ldrb r1, [r0]
- cmp r1, 0
- beq _08095300
- adds r0, r4, 0
- bl sub_809527C
- b _0809531E
- .align 2, 0
-_080952FC: .4byte gUnknown_0202E8F4
-_08095300:
- movs r0, 0x1
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _08095328 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0809532C @ =sub_8095330
- str r1, [r0]
-_0809531E:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08095328: .4byte gTasks
-_0809532C: .4byte sub_8095330
- thumb_func_end sub_80952E4
-
- thumb_func_start sub_8095330
-sub_8095330: @ 8095330
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08095358 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08095350
- bl sub_8094D60
- adds r0, r4, 0
- bl DestroyTask
- bl sub_80A6DCC
-_08095350:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08095358: .4byte gPaletteFade
- thumb_func_end sub_8095330
-
- thumb_func_start sub_809535C
-sub_809535C: @ 809535C
- push {lr}
- ldr r2, _08095380 @ =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- ldr r2, _08095384 @ =SetUpBattlePokemonMenu
- movs r0, 0x1
- movs r1, 0xFF
- movs r3, 0x5
- bl sub_806AF4C
- ldr r0, _08095388 @ =sub_809538C
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_08095380: .4byte gPaletteFade
-_08095384: .4byte SetUpBattlePokemonMenu
-_08095388: .4byte sub_809538C
- thumb_func_end sub_809535C
-
- thumb_func_start sub_809538C
-sub_809538C: @ 809538C
- push {r4,r5,lr}
- ldr r4, _080953D8 @ =0x0201b260
- ldr r5, _080953DC @ =gUnknown_020384F0
-_08095392:
- bl sub_806B124
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080953F4
- ldrb r0, [r4]
- ldrb r1, [r5]
- bl sub_806C994
- ldrb r0, [r4]
- movs r1, 0
- bl sub_806BF74
- ldrb r1, [r5]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080953E0 @ =gPlayerParty
- adds r0, r1
- ldr r1, _080953E4 @ =gStringVar1
- bl GetMonNickname
- ldrb r0, [r4]
- ldrb r1, [r5]
- bl sub_8095050
- ldrb r0, [r4]
- ldr r1, _080953E8 @ =sub_8095408
- ldr r2, _080953EC @ =SetUpBattlePokemonMenu
- bl SetTaskFuncWithFollowupFunc
- ldr r0, _080953F0 @ =sub_806AEDC
- bl SetMainCallback2
- b _08095400
- .align 2, 0
-_080953D8: .4byte 0x0201b260
-_080953DC: .4byte gUnknown_020384F0
-_080953E0: .4byte gPlayerParty
-_080953E4: .4byte gStringVar1
-_080953E8: .4byte sub_8095408
-_080953EC: .4byte SetUpBattlePokemonMenu
-_080953F0: .4byte sub_806AEDC
-_080953F4:
- bl sub_80F9344
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08095392
-_08095400:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_809538C
-
- thumb_func_start sub_8095408
-sub_8095408: @ 8095408
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- adds r4, r7, 0
- ldr r0, _0809543C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r3, 0x80
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- bne _080954B8
- ldr r2, _08095440 @ =gMain
- ldrh r1, [r2, 0x30]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08095444
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- negs r0, r0
- bl MoveMenuCursor
- b _080954B8
- .align 2, 0
-_0809543C: .4byte gPaletteFade
-_08095440: .4byte gMain
-_08095444:
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _0809545A
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- bl MoveMenuCursor
- b _080954B8
-_0809545A:
- ldrh r1, [r2, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080954A4
- movs r0, 0x5
- bl PlaySE
- ldr r1, _08095498 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldrb r4, [r0, 0x10]
- ldr r5, _0809549C @ =gUnknown_083B5FF4
- ldr r6, _080954A0 @ =gUnknown_083B5FCC
- bl GetMenuCursorPos
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- adds r0, r4, 0
- adds r1, r5, 0
- adds r2, r6, 0
- bl sub_806E81C
- adds r1, r0, 0
- adds r0, r7, 0
- bl _call_via_r1
- b _080954B8
- .align 2, 0
-_08095498: .4byte gTasks
-_0809549C: .4byte gUnknown_083B5FF4
-_080954A0: .4byte gUnknown_083B5FCC
-_080954A4:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080954B8
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl BattlePokemonMenu_Cancel
-_080954B8:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8095408
-
- thumb_func_start sub_80954C0
-sub_80954C0: @ 80954C0
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r0, _080954D8 @ =gUnknown_0202E8F6
- ldrb r0, [r0]
- cmp r0, 0
- bne _080954D4
- adds r0, r1, 0
- bl BattlePokemonMenu_Cancel
-_080954D4:
- pop {r0}
- bx r0
- .align 2, 0
-_080954D8: .4byte gUnknown_0202E8F6
- thumb_func_end sub_80954C0
-
- thumb_func_start BattleShowPokemonSummaryScreen
-BattleShowPokemonSummaryScreen: @ 80954DC
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_806CA38
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _0809552C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08095522
- adds r0, r4, 0
- bl DestroyTask
- ldr r0, _08095530 @ =0x0201b000
- ldr r1, _08095534 @ =0x00000262
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, _08095538 @ =gPlayerParty
- ldr r1, _0809553C @ =gPlayerPartyCount
- ldrb r2, [r1]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _08095540 @ =sub_809535C
- movs r1, 0x4
- str r1, [sp]
- adds r1, r5, 0
- bl ShowPokemonSummaryScreen
-_08095522:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0809552C: .4byte gPaletteFade
-_08095530: .4byte 0x0201b000
-_08095534: .4byte 0x00000262
-_08095538: .4byte gPlayerParty
-_0809553C: .4byte gPlayerPartyCount
-_08095540: .4byte sub_809535C
- thumb_func_end BattleShowPokemonSummaryScreen
-
- thumb_func_start BattlePokemonMenu_Summary
-BattlePokemonMenu_Summary: @ 8095544
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_806CA38
- ldr r1, _0809557C @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08095580 @ =BattleShowPokemonSummaryScreen
- str r1, [r0]
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0809557C: .4byte gTasks
-_08095580: .4byte BattleShowPokemonSummaryScreen
- thumb_func_end BattlePokemonMenu_Summary
-
- thumb_func_start BattlePokemonMenu_Shift
-BattlePokemonMenu_Shift: @ 8095584
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r1, _080955F8 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldrb r0, [r0, 0x10]
- ldr r1, _080955FC @ =gUnknown_083B5FF4
- bl sub_806E7D0
- adds r0, r6, 0
- bl sub_806CA38
- lsls r0, 24
- lsrs r5, r0, 24
- bl IsLinkDoubleBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08095610
- cmp r5, 0x1
- beq _080955C6
- cmp r5, 0x4
- beq _080955C6
- cmp r5, 0x5
- bne _08095610
-_080955C6:
- bl sub_806D5A4
- ldr r4, _08095600 @ =gStringVar1
- bl sub_8040D08
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r4, _08095604 @ =gStringVar4
- ldr r1, _08095608 @ =gOtherText_CantSwitchPokeWithYours
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- bl sub_806E834
- ldr r1, _080955F8 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _0809560C @ =sub_80954C0
- b _0809589A
- .align 2, 0
-_080955F8: .4byte gTasks
-_080955FC: .4byte gUnknown_083B5FF4
-_08095600: .4byte gStringVar1
-_08095604: .4byte gStringVar4
-_08095608: .4byte gOtherText_CantSwitchPokeWithYours
-_0809560C: .4byte sub_80954C0
-_08095610:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _08095654 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _0809566C
- bl sub_806D5A4
- ldr r1, _08095658 @ =gStringVar1
- adds r0, r4, 0
- bl GetMonNickname
- ldr r4, _0809565C @ =gStringVar4
- ldr r1, _08095660 @ =gOtherText_NoEnergyLeft
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- bl sub_806E834
- ldr r1, _08095664 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08095668 @ =sub_80954C0
- b _0809589A
- .align 2, 0
-_08095654: .4byte gPlayerParty
-_08095658: .4byte gStringVar1
-_0809565C: .4byte gStringVar4
-_08095660: .4byte gOtherText_NoEnergyLeft
-_08095664: .4byte gTasks
-_08095668: .4byte sub_80954C0
-_0809566C:
- movs r4, 0
- ldr r0, _08095678 @ =gUnknown_02024A68
- lsls r1, r6, 2
- mov r8, r1
- b _080956A8
- .align 2, 0
-_08095678: .4byte gUnknown_02024A68
-_0809567C:
- adds r0, r4, 0
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- bne _080956A0
- adds r0, r5, 0
- bl sub_8094C20
- lsls r0, 24
- ldr r2, _080956EC @ =gUnknown_02024A6A
- lsls r1, r4, 1
- adds r1, r2
- lsrs r0, 24
- ldrh r1, [r1]
- cmp r0, r1
- bne _080956A0
- b _08095808
-_080956A0:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080956F0 @ =gUnknown_02024A68
-_080956A8:
- ldrb r0, [r0]
- cmp r4, r0
- bcc _0809567C
- movs r2, 0x64
- mov r9, r2
- mov r0, r9
- muls r0, r5
- ldr r1, _080956F4 @ =gPlayerParty
- mov r10, r1
- adds r7, r0, r1
- adds r0, r7, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- beq _08095708
- bl sub_806D5A4
- ldr r4, _080956F8 @ =gStringVar4
- ldr r1, _080956FC @ =gOtherText_EGGCantBattle
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- bl sub_806E834
- ldr r1, _08095700 @ =gTasks
- mov r2, r8
- adds r0, r2, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08095704 @ =sub_80954C0
- b _0809589A
- .align 2, 0
-_080956EC: .4byte gUnknown_02024A6A
-_080956F0: .4byte gUnknown_02024A68
-_080956F4: .4byte gPlayerParty
-_080956F8: .4byte gStringVar4
-_080956FC: .4byte gOtherText_EGGCantBattle
-_08095700: .4byte gTasks
-_08095704: .4byte sub_80954C0
-_08095708:
- adds r0, r5, 0
- bl sub_8094C20
- ldr r1, _0809574C @ =0x02000000
- ldr r2, _08095750 @ =0x0001609d
- adds r1, r2
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bne _08095768
- bl sub_806D5A4
- ldr r1, _08095754 @ =gStringVar1
- adds r0, r7, 0
- bl GetMonNickname
- ldr r4, _08095758 @ =gStringVar4
- ldr r1, _0809575C @ =gOtherText_AlreadySelected
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- bl sub_806E834
- ldr r1, _08095760 @ =gTasks
- mov r2, r8
- adds r0, r2, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08095764 @ =sub_80954C0
- b _0809589A
- .align 2, 0
-_0809574C: .4byte 0x02000000
-_08095750: .4byte 0x0001609d
-_08095754: .4byte gStringVar1
-_08095758: .4byte gStringVar4
-_0809575C: .4byte gOtherText_AlreadySelected
-_08095760: .4byte gTasks
-_08095764: .4byte sub_80954C0
-_08095768:
- ldr r0, _08095790 @ =gUnknown_02038473
- ldrb r0, [r0]
- cmp r0, 0x4
- bne _080957A0
- bl sub_806D5A4
- bl sub_8040B8C
- ldr r0, _08095794 @ =gStringVar4
- movs r1, 0
- bl sub_806E834
- ldr r1, _08095798 @ =gTasks
- mov r2, r8
- adds r0, r2, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _0809579C @ =sub_80954C0
- b _0809589A
- .align 2, 0
-_08095790: .4byte gUnknown_02038473
-_08095794: .4byte gStringVar4
-_08095798: .4byte gTasks
-_0809579C: .4byte sub_80954C0
-_080957A0:
- cmp r0, 0x2
- bne _08095854
- ldr r0, _080957EC @ =gUnknown_02024E6C
- ldrb r4, [r0]
- bl sub_806D5A4
- ldr r0, _080957F0 @ =gUnknown_02024A6A
- lsls r4, 1
- adds r4, r0
- ldrb r0, [r4]
- bl pokemon_order_func
- lsls r0, 24
- lsrs r0, 24
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
- add r0, r10
- ldr r1, _080957F4 @ =gStringVar1
- bl GetMonNickname
- ldr r4, _080957F8 @ =gStringVar4
- ldr r1, _080957FC @ =gOtherText_CantBeSwitched
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- bl sub_806E834
- ldr r1, _08095800 @ =gTasks
- mov r2, r8
- adds r0, r2, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08095804 @ =sub_80954C0
- b _0809589A
- .align 2, 0
-_080957EC: .4byte gUnknown_02024E6C
-_080957F0: .4byte gUnknown_02024A6A
-_080957F4: .4byte gStringVar1
-_080957F8: .4byte gStringVar4
-_080957FC: .4byte gOtherText_CantBeSwitched
-_08095800: .4byte gTasks
-_08095804: .4byte sub_80954C0
-_08095808:
- bl sub_806D5A4
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0809583C @ =gPlayerParty
- adds r0, r1
- ldr r1, _08095840 @ =gStringVar1
- bl GetMonNickname
- ldr r4, _08095844 @ =gStringVar4
- ldr r1, _08095848 @ =gOtherText_AlreadyBattle
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- bl sub_806E834
- ldr r1, _0809584C @ =gTasks
- mov r2, r8
- adds r0, r2, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08095850 @ =sub_80954C0
- b _0809589A
- .align 2, 0
-_0809583C: .4byte gPlayerParty
-_08095840: .4byte gStringVar1
-_08095844: .4byte gStringVar4
-_08095848: .4byte gOtherText_AlreadyBattle
-_0809584C: .4byte gTasks
-_08095850: .4byte sub_80954C0
-_08095854:
- adds r0, r5, 0
- bl sub_8094C20
- ldr r1, _080958AC @ =gUnknown_0202E8F5
- strb r0, [r1]
- ldr r1, _080958B0 @ =gUnknown_0202E8F4
- movs r0, 0x1
- strb r0, [r1]
- ldr r1, _080958B4 @ =gUnknown_02024A6A
- ldr r0, _080958B8 @ =gUnknown_02024E6C
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrb r0, [r0]
- bl pokemon_order_func
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_8094C98
- mov r0, r9
- muls r0, r4
- add r0, r10
- adds r1, r7, 0
- bl sub_806E6F0
- ldr r1, _080958BC @ =gTasks
- mov r2, r8
- adds r0, r2, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _080958C0 @ =sub_809527C
-_0809589A:
- str r1, [r0]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080958AC: .4byte gUnknown_0202E8F5
-_080958B0: .4byte gUnknown_0202E8F4
-_080958B4: .4byte gUnknown_02024A6A
-_080958B8: .4byte gUnknown_02024E6C
-_080958BC: .4byte gTasks
-_080958C0: .4byte sub_809527C
- thumb_func_end BattlePokemonMenu_Shift
-
- thumb_func_start BattlePokemonMenu_Cancel
-BattlePokemonMenu_Cancel: @ 80958C4
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- bl sub_8072DEC
- ldr r0, _080958FC @ =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- ldrb r0, [r4, 0x10]
- ldr r1, _08095900 @ =gUnknown_083B5FF4
- bl sub_806E7D0
- ldrh r0, [r4, 0x12]
- strh r0, [r4, 0x10]
- movs r0, 0
- movs r1, 0
- bl sub_806D538
- adds r0, r5, 0
- bl SwitchTaskToFollowupFunc
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080958FC: .4byte gTasks
-_08095900: .4byte gUnknown_083B5FF4
- thumb_func_end BattlePokemonMenu_Cancel
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/bike.s b/asm/bike.s
deleted file mode 100644
index a7e3401ac..000000000
--- a/asm/bike.s
+++ /dev/null
@@ -1,2211 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start MovePlayerOnBike
-MovePlayerOnBike: @ 80E50A8
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 16
- lsrs r2, 16
- ldr r0, _080E50CC @ =gPlayerAvatar
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080E50D0
- adds r0, r3, 0
- adds r1, r4, 0
- bl MovePlayerOnMachBike
- b _080E50D8
- .align 2, 0
-_080E50CC: .4byte gPlayerAvatar
-_080E50D0:
- adds r0, r3, 0
- adds r1, r4, 0
- bl MovePlayerOnAcroBike
-_080E50D8:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end MovePlayerOnBike
-
- thumb_func_start MovePlayerOnMachBike
-MovePlayerOnMachBike: @ 80E50E0
- push {r4,lr}
- sub sp, 0x4
- mov r1, sp
- strb r0, [r1]
- ldr r4, _080E510C @ =gUnknown_083DB594
- mov r0, sp
- bl CheckMovementInputMachBike
- lsls r0, 24
- lsrs r0, 22
- adds r0, r4
- mov r1, sp
- ldrb r1, [r1]
- ldr r2, [r0]
- adds r0, r1, 0
- bl _call_via_r2
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080E510C: .4byte gUnknown_083DB594
- thumb_func_end MovePlayerOnMachBike
-
- thumb_func_start CheckMovementInputMachBike
-CheckMovementInputMachBike: @ 80E5110
- push {r4,lr}
- adds r4, r0, 0
- bl player_get_direction_upper_nybble
- lsls r0, 24
- lsrs r0, 24
- adds r3, r0, 0
- ldrb r1, [r4]
- cmp r1, 0
- bne _080E5138
- strb r0, [r4]
- ldr r2, _080E5134 @ =gPlayerAvatar
- ldrb r0, [r2, 0xB]
- cmp r0, 0
- bne _080E514C
- strb r1, [r2, 0x2]
- movs r0, 0
- b _080E5160
- .align 2, 0
-_080E5134: .4byte gPlayerAvatar
-_080E5138:
- ldr r2, _080E5154 @ =gPlayerAvatar
- cmp r1, r3
- beq _080E515C
- ldrb r0, [r2, 0x2]
- cmp r0, 0x2
- beq _080E515C
- ldrb r0, [r2, 0xB]
- cmp r0, 0
- beq _080E5158
- strb r3, [r4]
-_080E514C:
- movs r0, 0x2
- strb r0, [r2, 0x2]
- movs r0, 0x3
- b _080E5160
- .align 2, 0
-_080E5154: .4byte gPlayerAvatar
-_080E5158:
- movs r0, 0x1
- b _080E515E
-_080E515C:
- movs r0, 0x2
-_080E515E:
- strb r0, [r2, 0x2]
-_080E5160:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end CheckMovementInputMachBike
-
- thumb_func_start sub_80E5168
-sub_80E5168: @ 80E5168
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl PlayerFaceDirection
- bl sub_80E6024
- pop {r0}
- bx r0
- thumb_func_end sub_80E5168
-
- thumb_func_start sub_80E517C
-sub_80E517C: @ 80E517C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _080E51AC @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E51B0 @ =gMapObjects
- adds r4, r0, r1
- ldrb r1, [r4, 0x1E]
- adds r0, r5, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- beq _080E51B4
- adds r0, r5, 0
- bl PlayerTurnInPlace
- bl sub_80E6024
- b _080E51BE
- .align 2, 0
-_080E51AC: .4byte gPlayerAvatar
-_080E51B0: .4byte gMapObjects
-_080E51B4:
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl sub_80E5168
-_080E51BE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80E517C
-
- thumb_func_start sub_80E51C4
-sub_80E51C4: @ 80E51C4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r7, r5, 0
- ldr r6, _080E51F8 @ =gPlayerAvatar
- ldrb r1, [r6, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E51FC @ =gMapObjects
- adds r4, r0, r1
- ldrb r1, [r4, 0x1E]
- adds r0, r5, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E520A
- ldrb r0, [r6, 0xB]
- cmp r0, 0
- beq _080E5200
- ldrb r0, [r4, 0x18]
- lsrs r0, 4
- bl sub_80E5270
- b _080E5266
- .align 2, 0
-_080E51F8: .4byte gPlayerAvatar
-_080E51FC: .4byte gMapObjects
-_080E5200:
- ldrb r0, [r4, 0x18]
- lsrs r0, 4
- bl sub_80E5168
- b _080E5266
-_080E520A:
- adds r0, r5, 0
- bl sub_80E5D34
- lsls r0, 24
- lsrs r4, r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0xA
- bhi _080E5242
- cmp r4, 0x6
- bne _080E522C
- adds r0, r5, 0
- bl PlayerJumpLedge
- b _080E5266
-_080E522C:
- bl sub_80E6024
- subs r0, r4, 0x5
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _080E5266
- adds r0, r5, 0
- bl PlayerOnBikeCollide
- b _080E5266
-_080E5242:
- ldr r1, _080E526C @ =gUnknown_083DB5A4
- ldrb r0, [r6, 0xA]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r7, 0
- bl _call_via_r1
- ldrb r2, [r6, 0xA]
- lsls r0, r2, 24
- lsrs r1, r0, 24
- lsrs r0, 25
- adds r0, r2, r0
- strb r0, [r6, 0xB]
- cmp r1, 0x1
- bhi _080E5266
- adds r0, r2, 0x1
- strb r0, [r6, 0xA]
-_080E5266:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080E526C: .4byte gUnknown_083DB5A4
- thumb_func_end sub_80E51C4
-
- thumb_func_start sub_80E5270
-sub_80E5270: @ 80E5270
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r7, r4, 0
- ldr r6, _080E52A8 @ =gPlayerAvatar
- ldrb r0, [r6, 0xB]
- cmp r0, 0
- beq _080E5286
- subs r0, 0x1
- strb r0, [r6, 0xB]
- strb r0, [r6, 0xA]
-_080E5286:
- adds r0, r4, 0
- bl sub_80E5D34
- lsls r0, 24
- lsrs r5, r0, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0xA
- bhi _080E52C2
- cmp r5, 0x6
- bne _080E52AC
- adds r0, r4, 0
- bl PlayerJumpLedge
- b _080E52D2
- .align 2, 0
-_080E52A8: .4byte gPlayerAvatar
-_080E52AC:
- bl sub_80E6024
- subs r0, r5, 0x5
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _080E52D2
- adds r0, r4, 0
- bl PlayerOnBikeCollide
- b _080E52D2
-_080E52C2:
- ldr r0, _080E52D8 @ =gUnknown_083DB5A4
- ldrb r1, [r6, 0xA]
- lsls r1, 2
- adds r1, r0
- ldr r1, [r1]
- adds r0, r7, 0
- bl _call_via_r1
-_080E52D2:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080E52D8: .4byte gUnknown_083DB5A4
- thumb_func_end sub_80E5270
-
- thumb_func_start MovePlayerOnAcroBike
-MovePlayerOnAcroBike: @ 80E52DC
- push {r4,lr}
- sub sp, 0x4
- mov r3, sp
- strb r0, [r3]
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 16
- lsrs r2, 16
- ldr r4, _080E5310 @ =gUnknown_083DB5B0
- mov r0, sp
- bl CheckMovementInputAcroBike
- lsls r0, 24
- lsrs r0, 22
- adds r0, r4
- mov r1, sp
- ldrb r1, [r1]
- ldr r2, [r0]
- adds r0, r1, 0
- bl _call_via_r2
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080E5310: .4byte gUnknown_083DB5B0
- thumb_func_end MovePlayerOnAcroBike
-
- thumb_func_start CheckMovementInputAcroBike
-CheckMovementInputAcroBike: @ 80E5314
- push {r4,lr}
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 16
- lsrs r2, 16
- ldr r4, _080E5338 @ =gUnknown_083DB5E4
- ldr r3, _080E533C @ =gPlayerAvatar
- ldrb r3, [r3, 0x8]
- lsls r3, 2
- adds r3, r4
- ldr r3, [r3]
- bl _call_via_r3
- lsls r0, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080E5338: .4byte gUnknown_083DB5E4
-_080E533C: .4byte gPlayerAvatar
- thumb_func_end CheckMovementInputAcroBike
-
- thumb_func_start CheckMovementInputAcroBikeNormal
-CheckMovementInputAcroBikeNormal: @ 80E5340
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r6, r1, 16
- lsls r2, 16
- lsrs r5, r2, 16
- bl player_get_direction_upper_nybble
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r2, _080E5374 @ =gPlayerAvatar
- movs r0, 0
- strb r0, [r2, 0xA]
- ldrb r1, [r4]
- cmp r1, 0
- bne _080E5380
- movs r0, 0x2
- ands r0, r6
- cmp r0, 0
- beq _080E5378
- strb r3, [r4]
- strb r1, [r2, 0x2]
- movs r0, 0x2
- strb r0, [r2, 0x8]
- movs r0, 0x3
- b _080E53D4
- .align 2, 0
-_080E5374: .4byte gPlayerAvatar
-_080E5378:
- strb r3, [r4]
- strb r1, [r2, 0x2]
- movs r0, 0
- b _080E53D4
-_080E5380:
- cmp r1, r3
- bne _080E53A6
- movs r0, 0x2
- ands r0, r5
- cmp r0, 0
- beq _080E539E
- ldrb r0, [r2, 0xB]
- cmp r0, 0
- bne _080E539E
- adds r0, 0x1
- strb r0, [r2, 0xB]
- movs r0, 0x4
- strb r0, [r2, 0x8]
- movs r0, 0xB
- b _080E53D4
-_080E539E:
- ldrb r0, [r4]
- ldr r2, _080E53CC @ =gPlayerAvatar
- cmp r0, r3
- beq _080E53D0
-_080E53A6:
- ldr r0, _080E53CC @ =gPlayerAvatar
- ldrb r1, [r0, 0x2]
- adds r2, r0, 0
- cmp r1, 0x2
- beq _080E53D0
- movs r1, 0
- movs r0, 0x1
- strb r0, [r2, 0x8]
- ldrb r0, [r4]
- strb r0, [r2, 0x9]
- strb r1, [r2, 0x2]
- adds r0, r4, 0
- adds r1, r6, 0
- adds r2, r5, 0
- bl CheckMovementInputAcroBike
- lsls r0, 24
- lsrs r0, 24
- b _080E53D4
- .align 2, 0
-_080E53CC: .4byte gPlayerAvatar
-_080E53D0:
- movs r0, 0x2
- strb r0, [r2, 0x2]
-_080E53D4:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end CheckMovementInputAcroBikeNormal
-
- thumb_func_start CheckMovementInputAcroBikeChangingDirection
-CheckMovementInputAcroBikeChangingDirection: @ 80E53DC
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r4, _080E5404 @ =gPlayerAvatar
- ldrb r0, [r4, 0x9]
- strb r0, [r5]
- ldrb r0, [r4, 0xA]
- adds r0, 0x1
- strb r0, [r4, 0xA]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6
- bls _080E5408
- movs r0, 0x1
- strb r0, [r4, 0x2]
- movs r0, 0
- strb r0, [r4, 0x8]
- bl sub_80E6024
- movs r0, 0x1
- b _080E544E
- .align 2, 0
-_080E5404: .4byte gPlayerAvatar
-_080E5408:
- bl player_get_direction_upper_nybble
- lsls r0, 24
- lsrs r6, r0, 24
- bl sub_80E5C2C
- ldrb r1, [r5]
- lsls r0, 24
- lsrs r0, 24
- cmp r1, r0
- bne _080E544A
- bl sub_80E6024
- movs r0, 0x1
- strb r0, [r4, 0xB]
- adds r0, r6, 0
- bl GetOppositeDirection
- ldrb r1, [r5]
- lsls r0, 24
- lsrs r0, 24
- cmp r1, r0
- bne _080E543E
- movs r0, 0x6
- strb r0, [r4, 0x8]
- movs r0, 0x9
- b _080E544E
-_080E543E:
- movs r0, 0x2
- strb r0, [r4, 0x2]
- movs r0, 0x5
- strb r0, [r4, 0x8]
- movs r0, 0x8
- b _080E544E
-_080E544A:
- strb r6, [r5]
- movs r0, 0
-_080E544E:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end CheckMovementInputAcroBikeChangingDirection
-
- thumb_func_start CheckMovementInputAcroBikeStandingWheelie
-CheckMovementInputAcroBikeStandingWheelie: @ 80E5454
- push {r4-r7,lr}
- adds r7, r0, 0
- lsls r4, r2, 16
- lsrs r4, 16
- bl player_get_direction_upper_nybble
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r5, _080E54A0 @ =gPlayerAvatar
- ldrb r1, [r5, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E54A4 @ =gMapObjects
- adds r1, r0, r1
- movs r0, 0
- strb r0, [r5, 0x2]
- movs r0, 0x2
- ands r4, r0
- lsls r4, 16
- lsrs r4, 16
- cmp r4, 0
- bne _080E54A8
- strb r4, [r5, 0xA]
- ldrb r0, [r1, 0x1E]
- bl MetatileBehavior_IsBumpySlope
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _080E54AE
- strb r6, [r7]
- strb r0, [r5, 0x8]
- bl sub_80E6024
- movs r0, 0x4
- b _080E54EC
- .align 2, 0
-_080E54A0: .4byte gPlayerAvatar
-_080E54A4: .4byte gMapObjects
-_080E54A8:
- ldrb r0, [r5, 0xA]
- adds r0, 0x1
- strb r0, [r5, 0xA]
-_080E54AE:
- ldr r1, _080E54C4 @ =gPlayerAvatar
- ldrb r0, [r1, 0xA]
- cmp r0, 0x27
- bls _080E54C8
- strb r6, [r7]
- movs r0, 0x3
- strb r0, [r1, 0x8]
- bl sub_80E6024
- movs r0, 0x6
- b _080E54EC
- .align 2, 0
-_080E54C4: .4byte gPlayerAvatar
-_080E54C8:
- ldrb r0, [r7]
- cmp r0, r6
- bne _080E54DE
- movs r0, 0x2
- strb r0, [r1, 0x2]
- movs r0, 0x4
- strb r0, [r1, 0x8]
- bl sub_80E6024
- movs r0, 0xA
- b _080E54EC
-_080E54DE:
- cmp r0, 0
- beq _080E54E8
- movs r0, 0x1
- strb r0, [r1, 0x2]
- b _080E54EA
-_080E54E8:
- strb r6, [r7]
-_080E54EA:
- movs r0, 0x5
-_080E54EC:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end CheckMovementInputAcroBikeStandingWheelie
-
- thumb_func_start CheckMovementInputAcroBikeBunnyHop
-CheckMovementInputAcroBikeBunnyHop: @ 80E54F4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r6, r0, 0
- lsls r1, 16
- lsrs r1, 16
- mov r9, r1
- lsls r2, 16
- lsrs r2, 16
- mov r8, r2
- bl player_get_direction_upper_nybble
- lsls r0, 24
- lsrs r5, r0, 24
- adds r2, r5, 0
- ldr r4, _080E5554 @ =gPlayerAvatar
- ldrb r1, [r4, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E5558 @ =gMapObjects
- adds r7, r0, r1
- movs r0, 0x2
- mov r1, r8
- ands r0, r1
- cmp r0, 0
- bne _080E5566
- bl sub_80E6024
- ldrb r0, [r7, 0x1E]
- bl MetatileBehavior_IsBumpySlope
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080E555C
- movs r0, 0x2
- strb r0, [r4, 0x8]
- adds r0, r6, 0
- mov r1, r9
- mov r2, r8
- bl CheckMovementInputAcroBike
- lsls r0, 24
- lsrs r0, 24
- b _080E558A
- .align 2, 0
-_080E5554: .4byte gPlayerAvatar
-_080E5558: .4byte gMapObjects
-_080E555C:
- strb r5, [r6]
- strb r0, [r4, 0x2]
- strb r0, [r4, 0x8]
- movs r0, 0x4
- b _080E558A
-_080E5566:
- ldrb r0, [r6]
- cmp r0, 0
- bne _080E5570
- strb r5, [r6]
- b _080E557C
-_080E5570:
- cmp r0, r2
- beq _080E5582
- ldrb r0, [r4, 0x2]
- cmp r0, 0x2
- beq _080E5582
- movs r0, 0x1
-_080E557C:
- strb r0, [r4, 0x2]
- movs r0, 0x6
- b _080E558A
-_080E5582:
- ldr r1, _080E5598 @ =gPlayerAvatar
- movs r0, 0x2
- strb r0, [r1, 0x2]
- movs r0, 0x7
-_080E558A:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080E5598: .4byte gPlayerAvatar
- thumb_func_end CheckMovementInputAcroBikeBunnyHop
-
- thumb_func_start CheckMovementInputAcroBikeMovingWheelie
-CheckMovementInputAcroBikeMovingWheelie: @ 80E559C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r6, r0, 0
- lsls r1, 16
- lsrs r1, 16
- mov r10, r1
- lsls r2, 16
- lsrs r2, 16
- mov r8, r2
- bl player_get_direction_lower_nybble
- lsls r0, 24
- lsrs r5, r0, 24
- adds r2, r5, 0
- ldr r4, _080E55F8 @ =gPlayerAvatar
- ldrb r1, [r4, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E55FC @ =gMapObjects
- adds r7, r0, r1
- movs r0, 0x2
- mov r9, r0
- movs r0, 0x2
- mov r1, r8
- ands r0, r1
- cmp r0, 0
- bne _080E5634
- bl sub_80E6024
- ldrb r0, [r7, 0x1E]
- bl MetatileBehavior_IsBumpySlope
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _080E5620
- strb r1, [r4, 0x8]
- ldrb r0, [r6]
- cmp r0, 0
- bne _080E5600
- strb r5, [r6]
- b _080E560A
- .align 2, 0
-_080E55F8: .4byte gPlayerAvatar
-_080E55FC: .4byte gMapObjects
-_080E5600:
- cmp r0, r5
- beq _080E5610
- ldrb r0, [r4, 0x2]
- cmp r0, 0x2
- beq _080E5610
-_080E560A:
- strb r1, [r4, 0x2]
- movs r0, 0x4
- b _080E5664
-_080E5610:
- ldr r1, _080E561C @ =gPlayerAvatar
- movs r0, 0x2
- strb r0, [r1, 0x2]
- movs r0, 0xC
- b _080E5664
- .align 2, 0
-_080E561C: .4byte gPlayerAvatar
-_080E5620:
- mov r0, r9
- strb r0, [r4, 0x8]
- adds r0, r6, 0
- mov r1, r10
- mov r2, r8
- bl CheckMovementInputAcroBike
- lsls r0, 24
- lsrs r0, 24
- b _080E5664
-_080E5634:
- ldrb r0, [r6]
- cmp r0, 0
- bne _080E564A
- strb r5, [r6]
- mov r1, r9
- strb r1, [r4, 0x8]
- strb r0, [r4, 0x2]
- bl sub_80E6024
- movs r0, 0x5
- b _080E5664
-_080E564A:
- cmp r2, r0
- beq _080E565C
- ldrb r0, [r4, 0x2]
- cmp r0, 0x2
- beq _080E565C
- movs r0, 0
- strb r0, [r4, 0x2]
- movs r0, 0x5
- b _080E5664
-_080E565C:
- ldr r1, _080E5674 @ =gPlayerAvatar
- movs r0, 0x2
- strb r0, [r1, 0x2]
- movs r0, 0xA
-_080E5664:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080E5674: .4byte gPlayerAvatar
- thumb_func_end CheckMovementInputAcroBikeMovingWheelie
-
- thumb_func_start CheckMovementInputAcroBikeUnknownMode5
-CheckMovementInputAcroBikeUnknownMode5: @ 80E5678
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- mov r8, r0
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- ldr r6, _080E56CC @ =gPlayerAvatar
- ldrb r1, [r6, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E56D0 @ =gMapObjects
- adds r0, r1
- ldrb r2, [r0, 0x1]
- movs r1, 0x3
- negs r1, r1
- ands r1, r2
- strb r1, [r0, 0x1]
- ldrb r1, [r0, 0x18]
- lsls r1, 28
- lsrs r1, 28
- bl FieldObjectSetDirection
- movs r0, 0
- strb r0, [r6, 0x8]
- mov r0, r8
- adds r1, r4, 0
- adds r2, r5, 0
- bl CheckMovementInputAcroBike
- lsls r0, 24
- lsrs r0, 24
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080E56CC: .4byte gPlayerAvatar
-_080E56D0: .4byte gMapObjects
- thumb_func_end CheckMovementInputAcroBikeUnknownMode5
-
- thumb_func_start CheckMovementInputAcroBikeUnknownMode6
-CheckMovementInputAcroBikeUnknownMode6: @ 80E56D4
- push {r4,lr}
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 16
- lsrs r2, 16
- ldr r4, _080E56F4 @ =gPlayerAvatar
- movs r3, 0
- strb r3, [r4, 0x8]
- bl CheckMovementInputAcroBike
- lsls r0, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080E56F4: .4byte gPlayerAvatar
- thumb_func_end CheckMovementInputAcroBikeUnknownMode6
-
- thumb_func_start sub_80E56F8
-sub_80E56F8: @ 80E56F8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl PlayerFaceDirection
- pop {r0}
- bx r0
- thumb_func_end sub_80E56F8
-
- thumb_func_start sub_80E5708
-sub_80E5708: @ 80E5708
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080E573C @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E5740 @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E572E
- ldrb r0, [r5, 0x18]
- lsrs r4, r0, 4
-_080E572E:
- adds r0, r4, 0
- bl PlayerFaceDirection
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080E573C: .4byte gPlayerAvatar
-_080E5740: .4byte gMapObjects
- thumb_func_end sub_80E5708
-
- thumb_func_start sub_80E5744
-sub_80E5744: @ 80E5744
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- ldr r0, _080E5774 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E5778 @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E577C
- ldrb r0, [r5, 0x18]
- lsrs r0, 4
- bl sub_80E56F8
- b _080E57B6
- .align 2, 0
-_080E5774: .4byte gPlayerAvatar
-_080E5778: .4byte gMapObjects
-_080E577C:
- adds r0, r4, 0
- bl sub_80E5D34
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xFF
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0xA
- bhi _080E57B0
- cmp r1, 0x6
- bne _080E579E
- adds r0, r4, 0
- bl PlayerJumpLedge
- b _080E57B6
-_080E579E:
- subs r0, r1, 0x5
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _080E57B6
- adds r0, r4, 0
- bl PlayerOnBikeCollide
- b _080E57B6
-_080E57B0:
- adds r0, r6, 0
- bl npc_use_some_d2s
-_080E57B6:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80E5744
-
- thumb_func_start sub_80E57BC
-sub_80E57BC: @ 80E57BC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080E57F0 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E57F4 @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E57E2
- ldrb r0, [r5, 0x18]
- lsrs r4, r0, 4
-_080E57E2:
- adds r0, r4, 0
- bl sub_805951C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080E57F0: .4byte gPlayerAvatar
-_080E57F4: .4byte gMapObjects
- thumb_func_end sub_80E57BC
-
- thumb_func_start sub_80E57F8
-sub_80E57F8: @ 80E57F8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080E582C @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E5830 @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E581E
- ldrb r0, [r5, 0x18]
- lsrs r4, r0, 4
-_080E581E:
- adds r0, r4, 0
- bl sub_8059534
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080E582C: .4byte gPlayerAvatar
-_080E5830: .4byte gMapObjects
- thumb_func_end sub_80E57F8
-
- thumb_func_start sub_80E5834
-sub_80E5834: @ 80E5834
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080E5868 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E586C @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E585A
- ldrb r0, [r5, 0x18]
- lsrs r4, r0, 4
-_080E585A:
- adds r0, r4, 0
- bl sub_8059504
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080E5868: .4byte gPlayerAvatar
-_080E586C: .4byte gMapObjects
- thumb_func_end sub_80E5834
-
- thumb_func_start sub_80E5870
-sub_80E5870: @ 80E5870
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080E58A4 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E58A8 @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E5896
- ldrb r0, [r5, 0x18]
- lsrs r4, r0, 4
-_080E5896:
- adds r0, r4, 0
- bl sub_805954C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080E58A4: .4byte gPlayerAvatar
-_080E58A8: .4byte gMapObjects
- thumb_func_end sub_80E5870
-
- thumb_func_start sub_80E58AC
-sub_80E58AC: @ 80E58AC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080E58D8 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E58DC @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E58E0
- ldrb r0, [r5, 0x18]
- lsrs r0, 4
- bl sub_80E5870
- b _080E591A
- .align 2, 0
-_080E58D8: .4byte gPlayerAvatar
-_080E58DC: .4byte gMapObjects
-_080E58E0:
- adds r0, r4, 0
- bl sub_80E5D34
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _080E5914
- cmp r1, 0x9
- beq _080E5914
- cmp r1, 0x6
- bne _080E58FE
- adds r0, r4, 0
- bl sub_8059594
- b _080E591A
-_080E58FE:
- subs r0, r1, 0x5
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _080E591A
- cmp r1, 0xB
- bhi _080E5914
- adds r0, r4, 0
- bl sub_80E5870
- b _080E591A
-_080E5914:
- adds r0, r4, 0
- bl sub_8059570
-_080E591A:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80E58AC
-
- thumb_func_start sub_80E5920
-sub_80E5920: @ 80E5920
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r5, 0
- bl sub_80E5D34
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0
- beq _080E5954
- cmp r0, 0x7
- beq _080E5980
- cmp r0, 0x9
- bls _080E594C
- adds r0, r1, 0
- adds r1, r5, 0
- bl sub_80E5EC0
- lsls r0, 24
- cmp r0, 0
- bne _080E5954
-_080E594C:
- adds r0, r5, 0
- bl sub_80E5708
- b _080E5980
-_080E5954:
- ldr r0, _080E5988 @ =gPlayerAvatar
- ldrb r0, [r0, 0x5]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _080E598C @ =gMapObjects
- adds r4, r0
- movs r0, 0x22
- bl PlaySE
- ldrb r0, [r4, 0x1]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4, 0x1]
- adds r0, r5, 0
- bl sub_80608A4
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x2
- bl player_npc_set_state_and_x22_etc
-_080E5980:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080E5988: .4byte gPlayerAvatar
-_080E598C: .4byte gMapObjects
- thumb_func_end sub_80E5920
-
- thumb_func_start sub_80E5990
-sub_80E5990: @ 80E5990
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl sub_80595B8
- pop {r0}
- bx r0
- thumb_func_end sub_80E5990
-
- thumb_func_start sub_80E59A0
-sub_80E59A0: @ 80E59A0
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- ldr r7, _080E59D0 @ =gPlayerAvatar
- ldrb r1, [r7, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E59D4 @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E59D8
- ldrb r0, [r5, 0x18]
- lsrs r0, 4
- bl sub_8059504
- b _080E5A28
- .align 2, 0
-_080E59D0: .4byte gPlayerAvatar
-_080E59D4: .4byte gMapObjects
-_080E59D8:
- adds r0, r4, 0
- bl sub_80E5D34
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xFF
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0xA
- bhi _080E5A1E
- cmp r1, 0x6
- bne _080E59FA
- adds r0, r4, 0
- bl sub_8059594
- b _080E5A28
-_080E59FA:
- cmp r1, 0x9
- beq _080E5A0E
- cmp r1, 0x4
- bhi _080E5A28
- ldrb r0, [r5, 0x1E]
- bl MetatileBehavior_IsBumpySlope
- lsls r0, 24
- cmp r0, 0
- beq _080E5A16
-_080E5A0E:
- adds r0, r4, 0
- bl sub_8059504
- b _080E5A28
-_080E5A16:
- adds r0, r4, 0
- bl sub_80595DC
- b _080E5A28
-_080E5A1E:
- adds r0, r6, 0
- bl sub_8059618
- movs r0, 0x2
- strb r0, [r7, 0x2]
-_080E5A28:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80E59A0
-
- thumb_func_start sub_80E5A30
-sub_80E5A30: @ 80E5A30
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- ldr r7, _080E5A60 @ =gPlayerAvatar
- ldrb r1, [r7, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E5A64 @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E5A68
- ldrb r0, [r5, 0x18]
- lsrs r0, 4
- bl sub_805951C
- b _080E5AB8
- .align 2, 0
-_080E5A60: .4byte gPlayerAvatar
-_080E5A64: .4byte gMapObjects
-_080E5A68:
- adds r0, r4, 0
- bl sub_80E5D34
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xFF
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0xA
- bhi _080E5AAE
- cmp r1, 0x6
- bne _080E5A8A
- adds r0, r4, 0
- bl sub_8059594
- b _080E5AB8
-_080E5A8A:
- cmp r1, 0x9
- beq _080E5A9E
- cmp r1, 0x4
- bhi _080E5AB8
- ldrb r0, [r5, 0x1E]
- bl MetatileBehavior_IsBumpySlope
- lsls r0, 24
- cmp r0, 0
- beq _080E5AA6
-_080E5A9E:
- adds r0, r4, 0
- bl sub_8059504
- b _080E5AB8
-_080E5AA6:
- adds r0, r4, 0
- bl sub_80595DC
- b _080E5AB8
-_080E5AAE:
- adds r0, r6, 0
- bl sub_8059600
- movs r0, 0x2
- strb r0, [r7, 0x2]
-_080E5AB8:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80E5A30
-
- thumb_func_start sub_80E5AC0
-sub_80E5AC0: @ 80E5AC0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- ldr r0, _080E5AF0 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080E5AF4 @ =gMapObjects
- adds r5, r0, r1
- ldrb r1, [r5, 0x1E]
- adds r0, r4, 0
- bl sub_80E5E70
- lsls r0, 24
- cmp r0, 0
- bne _080E5AF8
- ldrb r0, [r5, 0x18]
- lsrs r0, 4
- bl sub_8059534
- b _080E5B32
- .align 2, 0
-_080E5AF0: .4byte gPlayerAvatar
-_080E5AF4: .4byte gMapObjects
-_080E5AF8:
- adds r0, r4, 0
- bl sub_80E5D34
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xFF
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0xA
- bhi _080E5B2C
- cmp r1, 0x6
- bne _080E5B1A
- adds r0, r4, 0
- bl PlayerJumpLedge
- b _080E5B32
-_080E5B1A:
- subs r0, r1, 0x5
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _080E5B32
- adds r0, r4, 0
- bl sub_8059534
- b _080E5B32
-_080E5B2C:
- adds r0, r6, 0
- bl sub_8059630
-_080E5B32:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80E5AC0
-
- thumb_func_start sub_80E5B38
-sub_80E5B38: @ 80E5B38
- push {lr}
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, 16
- lsrs r2, r1, 16
- ldr r0, _080E5B5C @ =gPlayerAvatar
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080E5B56
- adds r0, r3, 0
- adds r1, r2, 0
- bl sub_80E5B60
-_080E5B56:
- pop {r0}
- bx r0
- .align 2, 0
-_080E5B5C: .4byte gPlayerAvatar
- thumb_func_end sub_80E5B38
-
- thumb_func_start sub_80E5B60
-sub_80E5B60: @ 80E5B60
- push {r4,r5,lr}
- lsls r1, 16
- lsrs r5, r1, 16
- adds r0, r5, 0
- bl sub_80E5CF4
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r4, _080E5B88 @ =gPlayerAvatar
- ldr r0, [r4, 0xC]
- movs r1, 0xF
- ands r0, r1
- cmp r2, r0
- bne _080E5B8C
- ldrb r0, [r4, 0x14]
- cmp r0, 0xFE
- bhi _080E5B96
- adds r0, 0x1
- strb r0, [r4, 0x14]
- b _080E5B96
- .align 2, 0
-_080E5B88: .4byte gPlayerAvatar
-_080E5B8C:
- adds r0, r2, 0
- bl sub_80E5C7C
- movs r0, 0
- strb r0, [r4, 0xB]
-_080E5B96:
- movs r0, 0xF
- adds r2, r5, 0
- ands r2, r0
- ldr r4, _080E5BB4 @ =gPlayerAvatar
- ldr r0, [r4, 0x10]
- movs r1, 0xF
- ands r0, r1
- cmp r2, r0
- bne _080E5BB8
- ldrb r0, [r4, 0x1C]
- cmp r0, 0xFE
- bhi _080E5BC2
- adds r0, 0x1
- strb r0, [r4, 0x1C]
- b _080E5BC2
- .align 2, 0
-_080E5BB4: .4byte gPlayerAvatar
-_080E5BB8:
- adds r0, r2, 0
- bl sub_80E5CB8
- movs r0, 0
- strb r0, [r4, 0xB]
-_080E5BC2:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80E5B60
-
- thumb_func_start sub_80E5BC8
-sub_80E5BC8: @ 80E5BC8
- push {r4,r5,lr}
- adds r3, r0, 0
- adds r4, r1, 0
- movs r2, 0
- ldrb r0, [r3]
- cmp r0, 0
- beq _080E5BF2
- ldr r5, _080E5C0C @ =gUnknown_0202E86C
-_080E5BD8:
- adds r0, r2, r5
- adds r1, r3, r2
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bhi _080E5C08
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- adds r0, r3, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080E5BD8
-_080E5BF2:
- movs r2, 0
- ldrb r0, [r4]
- cmp r0, 0
- beq _080E5C22
- ldr r3, _080E5C10 @ =gUnknown_0202E874
-_080E5BFC:
- adds r0, r2, r3
- adds r1, r4, r2
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bls _080E5C14
-_080E5C08:
- movs r0, 0
- b _080E5C24
- .align 2, 0
-_080E5C0C: .4byte gUnknown_0202E86C
-_080E5C10: .4byte gUnknown_0202E874
-_080E5C14:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- adds r0, r4, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080E5BFC
-_080E5C22:
- movs r0, 0x1
-_080E5C24:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80E5BC8
-
- thumb_func_start sub_80E5C2C
-sub_80E5C2C: @ 80E5C2C
- push {r4-r6,lr}
- movs r6, 0
- movs r5, 0
-_080E5C32:
- ldr r0, _080E5C64 @ =gUnknown_083DB608
- adds r4, r5, r0
- ldr r0, _080E5C68 @ =gPlayerAvatar
- ldr r1, [r0, 0xC]
- ldr r2, [r0, 0x10]
- ldr r0, [r4, 0x8]
- ands r1, r0
- ldr r0, [r4, 0xC]
- ands r2, r0
- ldr r0, [r4]
- cmp r1, r0
- bne _080E5C6C
- ldr r0, [r4, 0x4]
- cmp r2, r0
- bne _080E5C6C
- ldr r0, [r4, 0x10]
- ldr r1, [r4, 0x14]
- bl sub_80E5BC8
- lsls r0, 24
- cmp r0, 0
- beq _080E5C6C
- ldrb r0, [r4, 0x18]
- b _080E5C76
- .align 2, 0
-_080E5C64: .4byte gUnknown_083DB608
-_080E5C68: .4byte gPlayerAvatar
-_080E5C6C:
- adds r5, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- bls _080E5C32
- movs r0, 0
-_080E5C76:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80E5C2C
-
- thumb_func_start sub_80E5C7C
-sub_80E5C7C: @ 80E5C7C
- push {r4,lr}
- lsls r0, 24
- ldr r3, _080E5CB4 @ =gPlayerAvatar
- ldr r2, [r3, 0xC]
- lsls r2, 4
- movs r1, 0xF0
- lsls r1, 20
- ands r1, r0
- lsrs r1, 24
- orrs r2, r1
- str r2, [r3, 0xC]
- movs r1, 0x7
- adds r4, r3, 0
- adds r3, 0x14
-_080E5C98:
- adds r2, r1, r3
- subs r1, 0x1
- adds r0, r1, r3
- ldrb r0, [r0]
- strb r0, [r2]
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0
- bne _080E5C98
- movs r0, 0x1
- strb r0, [r4, 0x14]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080E5CB4: .4byte gPlayerAvatar
- thumb_func_end sub_80E5C7C
-
- thumb_func_start sub_80E5CB8
-sub_80E5CB8: @ 80E5CB8
- push {r4,lr}
- lsls r0, 24
- ldr r3, _080E5CF0 @ =gPlayerAvatar
- ldr r2, [r3, 0x10]
- lsls r2, 4
- movs r1, 0xF0
- lsls r1, 20
- ands r1, r0
- lsrs r1, 24
- orrs r2, r1
- str r2, [r3, 0x10]
- movs r1, 0x7
- adds r4, r3, 0
- adds r3, 0x1C
-_080E5CD4:
- adds r2, r1, r3
- subs r1, 0x1
- adds r0, r1, r3
- ldrb r0, [r0]
- strb r0, [r2]
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0
- bne _080E5CD4
- movs r0, 0x1
- strb r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080E5CF0: .4byte gPlayerAvatar
- thumb_func_end sub_80E5CB8
-
- thumb_func_start sub_80E5CF4
-sub_80E5CF4: @ 80E5CF4
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- adds r2, r1, 0
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080E5D08
- movs r0, 0x2
- b _080E5D2E
-_080E5D08:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080E5D14
- movs r0, 0x1
- b _080E5D2E
-_080E5D14:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _080E5D20
- movs r0, 0x3
- b _080E5D2E
-_080E5D20:
- movs r0, 0x10
- ands r2, r0
- cmp r2, 0
- bne _080E5D2C
- movs r0, 0
- b _080E5D2E
-_080E5D2C:
- movs r0, 0x4
-_080E5D2E:
- pop {r1}
- bx r1
- thumb_func_end sub_80E5CF4
-
- thumb_func_start sub_80E5D34
-sub_80E5D34: @ 80E5D34
- push {r4-r6,lr}
- sub sp, 0x8
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- ldr r0, _080E5D98 @ =gPlayerAvatar
- ldrb r0, [r0, 0x5]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _080E5D9C @ =gMapObjects
- adds r4, r0
- ldrh r1, [r4, 0x10]
- add r0, sp, 0x4
- strh r1, [r0]
- ldrh r0, [r4, 0x12]
- mov r5, sp
- adds r5, 0x6
- strh r0, [r5]
- adds r0, r6, 0
- add r1, sp, 0x4
- adds r2, r5, 0
- bl MoveCoords
- add r0, sp, 0x4
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r5, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- add r1, sp, 0x4
- movs r3, 0
- ldrsh r1, [r1, r3]
- movs r3, 0
- ldrsh r2, [r5, r3]
- str r0, [sp]
- adds r0, r4, 0
- adds r3, r6, 0
- bl sub_80E5DA0
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x8
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080E5D98: .4byte gPlayerAvatar
-_080E5D9C: .4byte gMapObjects
- thumb_func_end sub_80E5D34
-
- thumb_func_start sub_80E5DA0
-sub_80E5DA0: @ 80E5DA0
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r4, [sp, 0x10]
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 24
- lsrs r4, 24
- adds r5, r4, 0
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- str r5, [sp]
- bl CheckForFieldObjectCollision
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x4
- bhi _080E5DE0
- cmp r4, 0
- bne _080E5DDC
- adds r0, r5, 0
- bl IsRunningDisallowedByMetatile
- lsls r0, 24
- cmp r0, 0
- beq _080E5DD8
- movs r4, 0x2
-_080E5DD8:
- cmp r4, 0
- beq _080E5DE0
-_080E5DDC:
- bl sub_80E5E4C
-_080E5DE0:
- adds r0, r4, 0
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80E5DA0
-
- thumb_func_start sub_80E5DEC
-sub_80E5DEC: @ 80E5DEC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl IsRunningDisallowedByMetatile
- lsls r0, 24
- cmp r0, 0
- bne _080E5E04
- ldr r0, _080E5E08 @ =gMapHeader
- ldrb r0, [r0, 0x17]
- cmp r0, 0x8
- bne _080E5E0C
-_080E5E04:
- movs r0, 0x1
- b _080E5E0E
- .align 2, 0
-_080E5E08: .4byte gMapHeader
-_080E5E0C:
- movs r0, 0
-_080E5E0E:
- pop {r1}
- bx r1
- thumb_func_end sub_80E5DEC
-
- thumb_func_start IsRunningDisallowedByMetatile
-IsRunningDisallowedByMetatile: @ 80E5E14
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl MetatileBehavior_IsRunningDisallowed
- lsls r0, 24
- cmp r0, 0
- bne _080E5E3E
- adds r0, r4, 0
- bl MetatileBehavior_IsFortreeBridge
- lsls r0, 24
- cmp r0, 0
- beq _080E5E42
- bl PlayerGetZCoord
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- bne _080E5E42
-_080E5E3E:
- movs r0, 0x1
- b _080E5E44
-_080E5E42:
- movs r0, 0
-_080E5E44:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end IsRunningDisallowedByMetatile
-
- thumb_func_start sub_80E5E4C
-sub_80E5E4C: @ 80E5E4C
- push {lr}
- ldr r0, _080E5E68 @ =gUnknown_02039250
- ldrb r0, [r0]
- cmp r0, 0
- beq _080E5E62
- ldr r1, _080E5E6C @ =gUnknown_02039251
- ldrb r0, [r1]
- cmp r0, 0x63
- bhi _080E5E62
- adds r0, 0x1
- strb r0, [r1]
-_080E5E62:
- pop {r0}
- bx r0
- .align 2, 0
-_080E5E68: .4byte gUnknown_02039250
-_080E5E6C: .4byte gUnknown_02039251
- thumb_func_end sub_80E5E4C
-
- thumb_func_start sub_80E5E70
-sub_80E5E70: @ 80E5E70
- push {r4,r5,lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- adds r5, r4, 0
- movs r1, 0xFD
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bhi _080E5E9A
- adds r0, r4, 0
- bl MetatileBehavior_IsIsolatedVerticalRail
- lsls r0, 24
- cmp r0, 0
- bne _080E5EB2
- adds r0, r4, 0
- bl MetatileBehavior_IsVerticalRail
- b _080E5EAC
-_080E5E9A:
- adds r0, r5, 0
- bl MetatileBehavior_IsIsolatedHorizontalRail
- lsls r0, 24
- cmp r0, 0
- bne _080E5EB2
- adds r0, r5, 0
- bl MetatileBehavior_IsHorizontalRail
-_080E5EAC:
- lsls r0, 24
- cmp r0, 0
- beq _080E5EB6
-_080E5EB2:
- movs r0, 0
- b _080E5EB8
-_080E5EB6:
- movs r0, 0x1
-_080E5EB8:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80E5E70
-
- thumb_func_start sub_80E5EC0
-sub_80E5EC0: @ 80E5EC0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- adds r2, r0, 0
- lsls r1, 24
- movs r3, 0xFF
- lsls r3, 24
- adds r1, r3
- lsrs r1, 24
- cmp r1, 0x1
- bhi _080E5EE0
- cmp r0, 0xA
- beq _080E5EE8
- cmp r0, 0xC
- bne _080E5EEC
- b _080E5EE8
-_080E5EE0:
- cmp r2, 0xB
- beq _080E5EE8
- cmp r2, 0xD
- bne _080E5EEC
-_080E5EE8:
- movs r0, 0
- b _080E5EEE
-_080E5EEC:
- movs r0, 0x1
-_080E5EEE:
- pop {r1}
- bx r1
- thumb_func_end sub_80E5EC0
-
- thumb_func_start IsBikingDisallowedByPlayer
-IsBikingDisallowedByPlayer: @ 80E5EF4
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _080E5F30 @ =gPlayerAvatar
- ldrb r1, [r0]
- movs r0, 0x18
- ands r0, r1
- cmp r0, 0
- bne _080E5F34
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl IsRunningDisallowedByMetatile
- lsls r0, 24
- cmp r0, 0
- bne _080E5F34
- movs r0, 0
- b _080E5F36
- .align 2, 0
-_080E5F30: .4byte gPlayerAvatar
-_080E5F34:
- movs r0, 0x1
-_080E5F36:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end IsBikingDisallowedByPlayer
-
- thumb_func_start player_should_look_direction_be_enforced_upon_movement
-player_should_look_direction_be_enforced_upon_movement: @ 80E5F40
- push {lr}
- movs r0, 0x4
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _080E5F74
- ldr r2, _080E5F6C @ =gMapObjects
- ldr r0, _080E5F70 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1E]
- bl MetatileBehavior_IsBumpySlope
- lsls r0, 24
- cmp r0, 0
- beq _080E5F74
- movs r0, 0
- b _080E5F76
- .align 2, 0
-_080E5F6C: .4byte gMapObjects
-_080E5F70: .4byte gPlayerAvatar
-_080E5F74:
- movs r0, 0x1
-_080E5F76:
- pop {r1}
- bx r1
- thumb_func_end player_should_look_direction_be_enforced_upon_movement
-
- thumb_func_start GetOnOffBike
-GetOnOffBike: @ 80E5F7C
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, _080E5FA4 @ =gUnknown_0202E854
- movs r0, 0
- strb r0, [r1]
- ldr r0, _080E5FA8 @ =gPlayerAvatar
- ldrb r1, [r0]
- movs r0, 0x6
- ands r0, r1
- cmp r0, 0
- beq _080E5FAC
- movs r0, 0x1
- bl SetPlayerAvatarTransitionFlags
- bl sav1_reset_battle_music_maybe
- bl sub_8053E90
- b _080E5FC0
- .align 2, 0
-_080E5FA4: .4byte gUnknown_0202E854
-_080E5FA8: .4byte gPlayerAvatar
-_080E5FAC:
- adds r0, r2, 0
- bl SetPlayerAvatarTransitionFlags
- ldr r4, _080E5FC8 @ =0x00000193
- adds r0, r4, 0
- bl sav1_set_battle_music_maybe
- adds r0, r4, 0
- bl sub_8053FB0
-_080E5FC0:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080E5FC8: .4byte 0x00000193
- thumb_func_end GetOnOffBike
-
- thumb_func_start sub_80E5FCC
-sub_80E5FCC: @ 80E5FCC
- push {lr}
- ldr r2, _080E6008 @ =gPlayerAvatar
- movs r3, 0
- strb r3, [r2, 0x8]
- strb r3, [r2, 0x9]
- strb r3, [r2, 0xA]
- strb r3, [r2, 0xB]
- str r0, [r2, 0xC]
- str r1, [r2, 0x10]
- movs r1, 0
- adds r2, 0x14
-_080E5FE2:
- adds r0, r1, r2
- strb r3, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x7
- bls _080E5FE2
- movs r1, 0
- ldr r3, _080E600C @ =gUnknown_0202E874
- movs r2, 0
-_080E5FF6:
- adds r0, r1, r3
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x7
- bls _080E5FF6
- pop {r0}
- bx r0
- .align 2, 0
-_080E6008: .4byte gPlayerAvatar
-_080E600C: .4byte gUnknown_0202E874
- thumb_func_end sub_80E5FCC
-
- thumb_func_start sub_80E6010
-sub_80E6010: @ 80E6010
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080E6020 @ =gPlayerAvatar
- strb r0, [r2, 0xA]
- lsrs r1, r0, 1
- adds r0, r1
- strb r0, [r2, 0xB]
- bx lr
- .align 2, 0
-_080E6020: .4byte gPlayerAvatar
- thumb_func_end sub_80E6010
-
- thumb_func_start sub_80E6024
-sub_80E6024: @ 80E6024
- ldr r1, _080E6030 @ =gPlayerAvatar
- movs r0, 0
- strb r0, [r1, 0xA]
- strb r0, [r1, 0xB]
- bx lr
- .align 2, 0
-_080E6030: .4byte gPlayerAvatar
- thumb_func_end sub_80E6024
-
- thumb_func_start sub_80E6034
-sub_80E6034: @ 80E6034
- push {lr}
- sub sp, 0x8
- ldr r1, _080E605C @ =gUnknown_083DB600
- mov r0, sp
- movs r2, 0x6
- bl memcpy
- ldr r2, _080E6060 @ =gPlayerAvatar
- ldrb r1, [r2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080E6064
- ldrb r0, [r2, 0xA]
- lsls r0, 1
- add r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- b _080E607E
- .align 2, 0
-_080E605C: .4byte gUnknown_083DB600
-_080E6060: .4byte gPlayerAvatar
-_080E6064:
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080E6070
- movs r0, 0x3
- b _080E607E
-_080E6070:
- movs r0, 0x88
- ands r0, r1
- cmp r0, 0
- bne _080E607C
- movs r0, 0x1
- b _080E607E
-_080E607C:
- movs r0, 0x2
-_080E607E:
- add sp, 0x8
- pop {r1}
- bx r1
- thumb_func_end sub_80E6034
-
- thumb_func_start sub_80E6084
-sub_80E6084: @ 80E6084
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r5, _080E60D4 @ =gPlayerAvatar
- ldrb r1, [r5]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080E60CC
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsBumpySlope
- lsls r0, 24
- cmp r0, 0
- beq _080E60CC
- movs r0, 0x2
- strb r0, [r5, 0x8]
- bl player_get_direction_upper_nybble
- lsls r0, 24
- lsrs r0, 24
- bl sub_8059C94
-_080E60CC:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080E60D4: .4byte gPlayerAvatar
- thumb_func_end sub_80E6084
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/braille_puzzles.s b/asm/braille_puzzles.s
deleted file mode 100644
index f8f2683a6..000000000
--- a/asm/braille_puzzles.s
+++ /dev/null
@@ -1,606 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start ShouldDoBrailleDigEffect
-ShouldDoBrailleDigEffect: @ 81473B8
- push {lr}
- ldr r0, _081473E8 @ =0x0000084f
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _08147400
- ldr r2, _081473EC @ =gSaveBlock1
- ldrh r1, [r2, 0x4]
- ldr r0, _081473F0 @ =0x00004718
- cmp r1, r0
- bne _08147400
- ldr r1, [r2]
- ldr r0, _081473F4 @ =0x0003000a
- cmp r1, r0
- beq _081473E4
- ldr r0, _081473F8 @ =0x00030009
- cmp r1, r0
- beq _081473E4
- ldr r0, _081473FC @ =0x0003000b
- cmp r1, r0
- bne _08147400
-_081473E4:
- movs r0, 0x1
- b _08147402
- .align 2, 0
-_081473E8: .4byte 0x0000084f
-_081473EC: .4byte gSaveBlock1
-_081473F0: .4byte 0x00004718
-_081473F4: .4byte 0x0003000a
-_081473F8: .4byte 0x00030009
-_081473FC: .4byte 0x0003000b
-_08147400:
- movs r0, 0
-_08147402:
- pop {r1}
- bx r1
- thumb_func_end ShouldDoBrailleDigEffect
-
- thumb_func_start DoBrailleDigEffect
-DoBrailleDigEffect: @ 8147408
- push {lr}
- ldr r2, _08147460 @ =0x0000022a
- movs r0, 0x10
- movs r1, 0x8
- bl MapGridSetMetatileIdAt
- ldr r2, _08147464 @ =0x0000022b
- movs r0, 0x11
- movs r1, 0x8
- bl MapGridSetMetatileIdAt
- movs r2, 0x8B
- lsls r2, 2
- movs r0, 0x12
- movs r1, 0x8
- bl MapGridSetMetatileIdAt
- ldr r2, _08147468 @ =0x00000e32
- movs r0, 0x10
- movs r1, 0x9
- bl MapGridSetMetatileIdAt
- ldr r2, _0814746C @ =0x00000233
- movs r0, 0x11
- movs r1, 0x9
- bl MapGridSetMetatileIdAt
- ldr r2, _08147470 @ =0x00000e34
- movs r0, 0x12
- movs r1, 0x9
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- movs r0, 0x14
- bl PlaySE
- ldr r0, _08147474 @ =0x0000084f
- bl FlagSet
- bl ScriptContext2_Disable
- pop {r0}
- bx r0
- .align 2, 0
-_08147460: .4byte 0x0000022a
-_08147464: .4byte 0x0000022b
-_08147468: .4byte 0x00000e32
-_0814746C: .4byte 0x00000233
-_08147470: .4byte 0x00000e34
-_08147474: .4byte 0x0000084f
- thumb_func_end DoBrailleDigEffect
-
- thumb_func_start CheckRelicanthWailord
-CheckRelicanthWailord: @ 8147478
- push {r4,lr}
- ldr r4, _081474B4 @ =gPlayerParty
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- ldr r1, _081474B8 @ =0x0000017d
- cmp r0, r1
- bne _081474C0
- bl CalculatePlayerPartyCount
- ldr r0, _081474BC @ =gPlayerPartyCount
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- adds r1, r4, 0
- subs r1, 0x64
- adds r0, r1
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- movs r1, 0x9D
- lsls r1, 1
- cmp r0, r1
- bne _081474C0
- movs r0, 0x1
- b _081474C2
- .align 2, 0
-_081474B4: .4byte gPlayerParty
-_081474B8: .4byte 0x0000017d
-_081474BC: .4byte gPlayerPartyCount
-_081474C0:
- movs r0, 0
-_081474C2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end CheckRelicanthWailord
-
- thumb_func_start ShouldDoBrailleStrengthEffect
-ShouldDoBrailleStrengthEffect: @ 81474C8
- push {lr}
- movs r0, 0x85
- lsls r0, 4
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _0814750C
- ldr r2, _081474FC @ =gSaveBlock1
- ldrh r1, [r2, 0x4]
- movs r0, 0xC3
- lsls r0, 3
- cmp r1, r0
- bne _0814750C
- ldr r1, [r2]
- ldr r0, _08147500 @ =0x0017000a
- cmp r1, r0
- beq _081474F8
- ldr r0, _08147504 @ =0x00170009
- cmp r1, r0
- beq _081474F8
- ldr r0, _08147508 @ =0x0017000b
- cmp r1, r0
- bne _0814750C
-_081474F8:
- movs r0, 0x1
- b _0814750E
- .align 2, 0
-_081474FC: .4byte gSaveBlock1
-_08147500: .4byte 0x0017000a
-_08147504: .4byte 0x00170009
-_08147508: .4byte 0x0017000b
-_0814750C:
- movs r0, 0
-_0814750E:
- pop {r1}
- bx r1
- thumb_func_end ShouldDoBrailleStrengthEffect
-
- thumb_func_start DoBrailleStrengthEffect
-DoBrailleStrengthEffect: @ 8147514
- push {lr}
- movs r0, 0x28
- bl FieldEffectActiveListRemove
- ldr r2, _08147574 @ =0x0000022a
- movs r0, 0xE
- movs r1, 0x1A
- bl MapGridSetMetatileIdAt
- ldr r2, _08147578 @ =0x0000022b
- movs r0, 0xF
- movs r1, 0x1A
- bl MapGridSetMetatileIdAt
- movs r2, 0x8B
- lsls r2, 2
- movs r0, 0x10
- movs r1, 0x1A
- bl MapGridSetMetatileIdAt
- ldr r2, _0814757C @ =0x00000e32
- movs r0, 0xE
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- ldr r2, _08147580 @ =0x00000233
- movs r0, 0xF
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- ldr r2, _08147584 @ =0x00000e34
- movs r0, 0x10
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- movs r0, 0x14
- bl PlaySE
- movs r0, 0x85
- lsls r0, 4
- bl FlagSet
- bl ScriptContext2_Disable
- pop {r0}
- bx r0
- .align 2, 0
-_08147574: .4byte 0x0000022a
-_08147578: .4byte 0x0000022b
-_0814757C: .4byte 0x00000e32
-_08147580: .4byte 0x00000233
-_08147584: .4byte 0x00000e34
- thumb_func_end DoBrailleStrengthEffect
-
- thumb_func_start ShouldDoBrailleFlyEffect
-ShouldDoBrailleFlyEffect: @ 8147588
- push {lr}
- ldr r0, _081475AC @ =0x00000852
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _081475BC
- ldr r2, _081475B0 @ =gSaveBlock1
- ldrh r1, [r2, 0x4]
- ldr r0, _081475B4 @ =0x00004418
- cmp r1, r0
- bne _081475BC
- ldr r1, [r2]
- ldr r0, _081475B8 @ =0x00190008
- cmp r1, r0
- bne _081475BC
- movs r0, 0x1
- b _081475BE
- .align 2, 0
-_081475AC: .4byte 0x00000852
-_081475B0: .4byte gSaveBlock1
-_081475B4: .4byte 0x00004418
-_081475B8: .4byte 0x00190008
-_081475BC:
- movs r0, 0
-_081475BE:
- pop {r1}
- bx r1
- thumb_func_end ShouldDoBrailleFlyEffect
-
- thumb_func_start DoBrailleFlyEffect
-DoBrailleFlyEffect: @ 81475C4
- push {lr}
- ldr r0, _081475D8 @ =gUnknown_0202FF84
- ldr r1, _081475DC @ =gUnknown_03005CE0
- ldrb r1, [r1]
- str r1, [r0]
- movs r0, 0x3C
- bl FieldEffectStart
- pop {r0}
- bx r0
- .align 2, 0
-_081475D8: .4byte gUnknown_0202FF84
-_081475DC: .4byte gUnknown_03005CE0
- thumb_func_end DoBrailleFlyEffect
-
- thumb_func_start FldEff_UseFlyAncientTomb
-FldEff_UseFlyAncientTomb: @ 81475E0
- push {lr}
- bl oei_task_add
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08147604 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _08147608 @ =UseFlyAncientTomb_Callback
- lsrs r0, r2, 16
- strh r0, [r1, 0x18]
- strh r2, [r1, 0x1A]
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_08147604: .4byte gTasks
-_08147608: .4byte UseFlyAncientTomb_Callback
- thumb_func_end FldEff_UseFlyAncientTomb
-
- thumb_func_start UseFlyAncientTomb_Callback
-UseFlyAncientTomb_Callback: @ 814760C
- push {lr}
- movs r0, 0x3C
- bl FieldEffectActiveListRemove
- bl UseFlyAncientTomb_Finish
- pop {r0}
- bx r0
- thumb_func_end UseFlyAncientTomb_Callback
-
- thumb_func_start UseFlyAncientTomb_Finish
-UseFlyAncientTomb_Finish: @ 814761C
- push {lr}
- ldr r2, _08147674 @ =0x0000022a
- movs r0, 0xE
- movs r1, 0x1A
- bl MapGridSetMetatileIdAt
- ldr r2, _08147678 @ =0x0000022b
- movs r0, 0xF
- movs r1, 0x1A
- bl MapGridSetMetatileIdAt
- movs r2, 0x8B
- lsls r2, 2
- movs r0, 0x10
- movs r1, 0x1A
- bl MapGridSetMetatileIdAt
- ldr r2, _0814767C @ =0x00000e32
- movs r0, 0xE
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- ldr r2, _08147680 @ =0x00000233
- movs r0, 0xF
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- ldr r2, _08147684 @ =0x00000e34
- movs r0, 0x10
- movs r1, 0x1B
- bl MapGridSetMetatileIdAt
- bl DrawWholeMapView
- movs r0, 0x14
- bl PlaySE
- ldr r0, _08147688 @ =0x00000852
- bl FlagSet
- bl ScriptContext2_Disable
- pop {r0}
- bx r0
- .align 2, 0
-_08147674: .4byte 0x0000022a
-_08147678: .4byte 0x0000022b
-_0814767C: .4byte 0x00000e32
-_08147680: .4byte 0x00000233
-_08147684: .4byte 0x00000e34
-_08147688: .4byte 0x00000852
- thumb_func_end UseFlyAncientTomb_Finish
-
- thumb_func_start DoBrailleWait
-DoBrailleWait: @ 814768C
- push {lr}
- ldr r0, _081476A8 @ =0x00000851
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _081476A2
- ldr r0, _081476AC @ =Task_BrailleWait
- movs r1, 0x50
- bl CreateTask
-_081476A2:
- pop {r0}
- bx r0
- .align 2, 0
-_081476A8: .4byte 0x00000851
-_081476AC: .4byte Task_BrailleWait
- thumb_func_end DoBrailleWait
-
- thumb_func_start Task_BrailleWait
-Task_BrailleWait: @ 81476B0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _081476D4 @ =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x4
- bhi _0814776A
- lsls r0, 2
- ldr r1, _081476D8 @ =_081476DC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081476D4: .4byte gTasks + 0x8
-_081476D8: .4byte _081476DC
- .align 2, 0
-_081476DC:
- .4byte _081476F0
- .4byte _081476FE
- .4byte _08147730
- .4byte _08147748
- .4byte _0814775A
-_081476F0:
- movs r1, 0xE1
- lsls r1, 5
- adds r0, r1, 0
- strh r0, [r4, 0x2]
- movs r0, 0x1
- strh r0, [r4]
- b _0814776A
-_081476FE:
- bl BrailleWait_CheckButtonPress
- cmp r0, 0
- beq _08147716
- bl MenuZeroFillScreen
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x2
- strh r0, [r4]
- b _0814776A
-_08147716:
- ldrh r0, [r4, 0x2]
- subs r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- cmp r0, 0
- bne _0814776A
- bl MenuZeroFillScreen
- movs r0, 0x3
- strh r0, [r4]
- movs r0, 0x1E
- strh r0, [r4, 0x2]
- b _0814776A
-_08147730:
- bl BrailleWait_CheckButtonPress
- cmp r0, 0
- beq _08147748
- bl sub_8064E2C
- adds r0, r5, 0
- bl DestroyTask
- bl ScriptContext2_Disable
- b _0814776A
-_08147748:
- ldrh r0, [r4, 0x2]
- subs r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- cmp r0, 0
- bne _0814776A
- movs r0, 0x4
- strh r0, [r4]
- b _0814776A
-_0814775A:
- bl sub_8064E2C
- ldr r0, _08147770 @ =gUnknown_0815EF19
- bl ScriptContext1_SetupScript
- adds r0, r5, 0
- bl DestroyTask
-_0814776A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08147770: .4byte gUnknown_0815EF19
- thumb_func_end Task_BrailleWait
-
- thumb_func_start BrailleWait_CheckButtonPress
-BrailleWait_CheckButtonPress: @ 8147774
- push {lr}
- movs r1, 0xFF
- ldr r0, _081477A4 @ =gSaveBlock2
- ldrb r2, [r0, 0x13]
- cmp r2, 0x1
- bne _08147788
- movs r3, 0xC0
- lsls r3, 2
- adds r0, r3, 0
- orrs r1, r0
-_08147788:
- cmp r2, 0x2
- bne _08147794
- movs r2, 0x80
- lsls r2, 2
- adds r0, r2, 0
- orrs r1, r0
-_08147794:
- ldr r0, _081477A8 @ =gMain
- ldrh r0, [r0, 0x2E]
- ands r1, r0
- cmp r1, 0
- bne _081477AC
- movs r0, 0
- b _081477AE
- .align 2, 0
-_081477A4: .4byte gSaveBlock2
-_081477A8: .4byte gMain
-_081477AC:
- movs r0, 0x1
-_081477AE:
- pop {r1}
- bx r1
- thumb_func_end BrailleWait_CheckButtonPress
-
- thumb_func_start DoSealedChamberShakingEffect1
-DoSealedChamberShakingEffect1: @ 81477B4
- push {lr}
- ldr r0, _081477E8 @ =SealedChamberShakingEffect
- movs r1, 0x9
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _081477EC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0
- strh r0, [r1, 0xA]
- strh r0, [r1, 0xC]
- movs r0, 0x2
- strh r0, [r1, 0x10]
- movs r0, 0x5
- strh r0, [r1, 0x12]
- movs r0, 0x32
- strh r0, [r1, 0x14]
- movs r0, 0
- bl SetCameraPanningCallback
- pop {r0}
- bx r0
- .align 2, 0
-_081477E8: .4byte SealedChamberShakingEffect
-_081477EC: .4byte gTasks
- thumb_func_end DoSealedChamberShakingEffect1
-
- thumb_func_start DoSealedChamberShakingEffect2
-DoSealedChamberShakingEffect2: @ 81477F0
- push {lr}
- ldr r0, _08147824 @ =SealedChamberShakingEffect
- movs r1, 0x9
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08147828 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0
- strh r0, [r1, 0xA]
- strh r0, [r1, 0xC]
- movs r0, 0x3
- strh r0, [r1, 0x10]
- movs r0, 0x5
- strh r0, [r1, 0x12]
- movs r0, 0x2
- strh r0, [r1, 0x14]
- movs r0, 0
- bl SetCameraPanningCallback
- pop {r0}
- bx r0
- .align 2, 0
-_08147824: .4byte SealedChamberShakingEffect
-_08147828: .4byte gTasks
- thumb_func_end DoSealedChamberShakingEffect2
-
- thumb_func_start SealedChamberShakingEffect
-SealedChamberShakingEffect: @ 814782C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0814788C @ =gTasks
- adds r4, r0, r1
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- movs r2, 0x12
- ldrsh r1, [r4, r2]
- bl __modsi3
- cmp r0, 0
- bne _08147884
- strh r0, [r4, 0xA]
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- strh r0, [r4, 0xC]
- ldrh r0, [r4, 0x10]
- negs r0, r0
- strh r0, [r4, 0x10]
- movs r0, 0x10
- ldrsh r1, [r4, r0]
- movs r0, 0
- bl SetCameraPanning
- movs r2, 0xC
- ldrsh r1, [r4, r2]
- movs r2, 0x14
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bne _08147884
- adds r0, r5, 0
- bl DestroyTask
- bl EnableBothScriptContexts
- bl InstallCameraPanAheadCallback
-_08147884:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0814788C: .4byte gTasks
- thumb_func_end SealedChamberShakingEffect
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/choose_party.s b/asm/choose_party.s
index c895e71e0..25122e4ef 100644
--- a/asm/choose_party.s
+++ b/asm/choose_party.s
@@ -47,7 +47,7 @@ _08121E54: .4byte 0x00000263
sub_8121E58: @ 8121E58
push {lr}
movs r1, 0
- ldr r3, _08121E74 @ =gUnknown_02039270
+ ldr r3, _08121E74 @ =gSelectedOrderFromParty
movs r2, 0
_08121E60:
adds r0, r1, r3
@@ -60,7 +60,7 @@ _08121E60:
pop {r0}
bx r0
.align 2, 0
-_08121E74: .4byte gUnknown_02039270
+_08121E74: .4byte gSelectedOrderFromParty
thumb_func_end sub_8121E58
thumb_func_start sub_8121E78
@@ -192,7 +192,7 @@ _08121F78:
_08121F7E:
cmp r4, 0x2
bhi _08121FA0
- ldr r0, _08121FC4 @ =gUnknown_02039270
+ ldr r0, _08121FC4 @ =gSelectedOrderFromParty
adds r0, r4, r0
ldrb r0, [r0]
cmp r0, r6
@@ -223,7 +223,7 @@ _08121FA0:
bl sub_806BC3C
b _08121FD4
.align 2, 0
-_08121FC4: .4byte gUnknown_02039270
+_08121FC4: .4byte gSelectedOrderFromParty
_08121FC8: .4byte gPlayerParty
_08121FCC:
adds r0, r5, 0
@@ -372,7 +372,7 @@ sub_81220C8: @ 81220C8
ldrb r0, [r0]
cmp r0, 0
beq _081221A2
- ldr r0, _081220F4 @ =gUnknown_02039270
+ ldr r0, _081220F4 @ =gSelectedOrderFromParty
ldrb r0, [r0, 0x2]
cmp r0, 0
bne _08122100
@@ -381,7 +381,7 @@ sub_81220C8: @ 81220C8
.align 2, 0
_081220EC: .4byte 0x0201b000
_081220F0: .4byte 0x00000263
-_081220F4: .4byte gUnknown_02039270
+_081220F4: .4byte gSelectedOrderFromParty
_081220F8:
movs r0, 0x12
b _081221A4
@@ -391,7 +391,7 @@ _081220FC:
_08122100:
movs r5, 0
_08122102:
- ldr r4, _081221B4 @ =gUnknown_02039270
+ ldr r4, _081221B4 @ =gSelectedOrderFromParty
adds r4, r5, r4
ldrb r0, [r4]
movs r1, 0x64
@@ -430,7 +430,7 @@ _0812214A:
add r0, r9
movs r1, 0
ldrsh r4, [r0, r1]
- ldr r0, _081221B4 @ =gUnknown_02039270
+ ldr r0, _081221B4 @ =gSelectedOrderFromParty
adds r6, r5, r0
ldrb r0, [r6]
mov r2, r8
@@ -481,7 +481,7 @@ _081221A4:
pop {r1}
bx r1
.align 2, 0
-_081221B4: .4byte gUnknown_02039270
+_081221B4: .4byte gSelectedOrderFromParty
_081221B8: .4byte gUnknown_030042FC
_081221BC: .4byte 0x0201b000
_081221C0: .4byte 0x00000282
@@ -495,7 +495,7 @@ sub_81221CC: @ 81221CC
lsls r0, 24
lsrs r2, r0, 24
movs r1, 0
- ldr r3, _081221E4 @ =gUnknown_02039270
+ ldr r3, _081221E4 @ =gSelectedOrderFromParty
_081221D6:
adds r0, r1, r3
ldrb r0, [r0]
@@ -504,7 +504,7 @@ _081221D6:
movs r0, 0x1
b _081221F4
.align 2, 0
-_081221E4: .4byte gUnknown_02039270
+_081221E4: .4byte gSelectedOrderFromParty
_081221E8:
adds r0, r1, 0x1
lsls r0, 24
@@ -525,7 +525,7 @@ sub_81221F8: @ 81221F8
movs r0, 0x5
movs r1, 0x1
bl sub_806D538
- ldr r5, _08122248 @ =gUnknown_03005CE0
+ ldr r5, _08122248 @ =gLastFieldPokeMenuOpened
ldrb r1, [r5]
movs r0, 0x64
muls r0, r1
@@ -556,7 +556,7 @@ sub_81221F8: @ 81221F8
movs r0, 0x1
b _08122270
.align 2, 0
-_08122248: .4byte gUnknown_03005CE0
+_08122248: .4byte gLastFieldPokeMenuOpened
_0812224C: .4byte gPlayerParty
_08122250: .4byte gTasks
_08122254: .4byte gUnknown_084017D8
@@ -633,7 +633,7 @@ _081222E0:
bl PlaySE
adds r0, r4, 0
bl sub_806CA38
- ldr r1, _08122320 @ =gUnknown_03005CE0
+ ldr r1, _08122320 @ =gLastFieldPokeMenuOpened
strb r0, [r1]
lsls r0, 24
lsrs r0, 24
@@ -657,7 +657,7 @@ _081222E0:
str r1, [r0]
b _08122342
.align 2, 0
-_08122320: .4byte gUnknown_03005CE0
+_08122320: .4byte gLastFieldPokeMenuOpened
_08122324: .4byte gPlayerParty
_08122328: .4byte gStringVar1
_0812232C: .4byte gTasks
@@ -775,7 +775,7 @@ _081223F2:
adds r0, r4, 0
adds r1, r5, 0
adds r2, r6, 0
- bl sub_806E81C
+ bl PartyMenuGetPopupMenuFunc
adds r1, r0, 0
adds r0, r7, 0
bl _call_via_r1
@@ -868,7 +868,7 @@ sub_81224A8: @ 81224A8
.align 2, 0
_081224CC: .4byte gTasks
_081224D0:
- ldr r0, _081224F8 @ =gUnknown_02039270
+ ldr r0, _081224F8 @ =gSelectedOrderFromParty
ldrb r0, [r0]
cmp r0, 0
beq _08122504
@@ -888,7 +888,7 @@ _081224D0:
str r1, [r0]
b _08122520
.align 2, 0
-_081224F8: .4byte gUnknown_02039270
+_081224F8: .4byte gSelectedOrderFromParty
_081224FC: .4byte gTasks
_08122500: .4byte sub_8122450
_08122504:
@@ -939,7 +939,7 @@ _08122536:
adds r0, r1
ldr r1, _08122584 @ =gStringVar1
bl GetMonNickname
- ldr r1, _08122588 @ =gUnknown_03005CE0
+ ldr r1, _08122588 @ =gLastFieldPokeMenuOpened
ldrb r0, [r4]
strb r0, [r1]
ldrb r0, [r5]
@@ -952,7 +952,7 @@ _08122578: .4byte 0x0201b260
_0812257C: .4byte gUnknown_020384F0
_08122580: .4byte gPlayerParty
_08122584: .4byte gStringVar1
-_08122588: .4byte gUnknown_03005CE0
+_08122588: .4byte gLastFieldPokeMenuOpened
_0812258C: .4byte sub_806AEDC
_08122590:
bl sub_80F9344
@@ -1088,8 +1088,8 @@ sub_8122694: @ 8122694
lsls r0, 24
lsrs r5, r0, 24
movs r4, 0
- ldr r3, _081226D4 @ =gUnknown_02039270
- ldr r2, _081226D8 @ =gUnknown_03005CE0
+ ldr r3, _081226D4 @ =gSelectedOrderFromParty
+ ldr r2, _081226D8 @ =gLastFieldPokeMenuOpened
_081226A0:
adds r1, r4, r3
ldrb r0, [r1]
@@ -1116,8 +1116,8 @@ _081226CC:
bl sub_8122838
b _08122716
.align 2, 0
-_081226D4: .4byte gUnknown_02039270
-_081226D8: .4byte gUnknown_03005CE0
+_081226D4: .4byte gSelectedOrderFromParty
+_081226D8: .4byte gLastFieldPokeMenuOpened
_081226DC:
adds r0, r4, 0x1
lsls r0, 24
@@ -1196,8 +1196,8 @@ sub_8122770: @ 8122770
lsls r0, 24
lsrs r6, r0, 24
movs r4, 0
- ldr r5, _08122798 @ =gUnknown_03005CE0
- ldr r3, _0812279C @ =gUnknown_02039270
+ ldr r5, _08122798 @ =gLastFieldPokeMenuOpened
+ ldr r3, _0812279C @ =gSelectedOrderFromParty
_0812277C:
adds r2, r4, r3
ldrb r1, [r2]
@@ -1213,8 +1213,8 @@ _0812277C:
beq _081227AC
b _081227BE
.align 2, 0
-_08122798: .4byte gUnknown_03005CE0
-_0812279C: .4byte gUnknown_02039270
+_08122798: .4byte gLastFieldPokeMenuOpened
+_0812279C: .4byte gSelectedOrderFromParty
_081227A0:
ldrb r0, [r3, 0x1]
strb r0, [r3]
@@ -1237,7 +1237,7 @@ _081227BE:
ldrb r0, [r5]
movs r1, 0x70
bl sub_806BC3C
- ldr r4, _081227F8 @ =gUnknown_02039270
+ ldr r4, _081227F8 @ =gSelectedOrderFromParty
ldrb r0, [r4]
cmp r0, 0
beq _081227DA
@@ -1262,7 +1262,7 @@ _081227EC:
pop {r0}
bx r0
.align 2, 0
-_081227F8: .4byte gUnknown_02039270
+_081227F8: .4byte gSelectedOrderFromParty
thumb_func_end sub_8122770
thumb_func_start sub_81227FC
@@ -1982,7 +1982,7 @@ sub_8122D94: @ 8122D94
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r0, _08122DCC @ =gUnknown_03005CE0
+ ldr r0, _08122DCC @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -2006,7 +2006,7 @@ sub_8122D94: @ 8122D94
bl sub_806E750
b _08122DFA
.align 2, 0
-_08122DCC: .4byte gUnknown_03005CE0
+_08122DCC: .4byte gLastFieldPokeMenuOpened
_08122DD0: .4byte gPlayerParty
_08122DD4: .4byte gTasks
_08122DD8: .4byte gUnknown_08401810
@@ -2061,7 +2061,7 @@ _08122E38:
bl PlaySE
adds r0, r4, 0
bl sub_806CA38
- ldr r1, _08122E70 @ =gUnknown_03005CE0
+ ldr r1, _08122E70 @ =gLastFieldPokeMenuOpened
strb r0, [r1]
ldrb r1, [r1]
movs r0, 0x64
@@ -2081,7 +2081,7 @@ _08122E38:
str r1, [r0]
b _08122E9C
.align 2, 0
-_08122E70: .4byte gUnknown_03005CE0
+_08122E70: .4byte gLastFieldPokeMenuOpened
_08122E74: .4byte gPlayerParty
_08122E78: .4byte gStringVar1
_08122E7C: .4byte gTasks
@@ -2089,7 +2089,7 @@ _08122E80: .4byte sub_8122EAC
_08122E84:
movs r0, 0x5
bl PlaySE
- ldr r1, _08122EA4 @ =gUnknown_03005CE0
+ ldr r1, _08122EA4 @ =gLastFieldPokeMenuOpened
movs r0, 0xFF
strb r0, [r1]
ldr r1, _08122EA8 @ =gSpecialVar_0x8004
@@ -2102,7 +2102,7 @@ _08122E9C:
pop {r0}
bx r0
.align 2, 0
-_08122EA4: .4byte gUnknown_03005CE0
+_08122EA4: .4byte gLastFieldPokeMenuOpened
_08122EA8: .4byte gSpecialVar_0x8004
thumb_func_end sub_8122E0C
@@ -2176,7 +2176,7 @@ _08122F12:
adds r0, r4, 0
adds r1, r5, 0
adds r2, r6, 0
- bl sub_806E81C
+ bl PartyMenuGetPopupMenuFunc
adds r1, r0, 0
adds r0, r7, 0
bl _call_via_r1
@@ -2204,7 +2204,7 @@ sub_8122F70: @ 8122F70
lsls r0, 24
lsrs r0, 24
ldr r2, _08122F88 @ =gSpecialVar_0x8004
- ldr r1, _08122F8C @ =gUnknown_03005CE0
+ ldr r1, _08122F8C @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
strh r1, [r2]
bl sub_8123138
@@ -2212,7 +2212,7 @@ sub_8122F70: @ 8122F70
bx r0
.align 2, 0
_08122F88: .4byte gSpecialVar_0x8004
-_08122F8C: .4byte gUnknown_03005CE0
+_08122F8C: .4byte gLastFieldPokeMenuOpened
thumb_func_end sub_8122F70
thumb_func_start sub_8122F90
@@ -2239,7 +2239,7 @@ _08122F96:
adds r0, r1
ldr r1, _08122FE4 @ =gStringVar1
bl GetMonNickname
- ldr r1, _08122FE8 @ =gUnknown_03005CE0
+ ldr r1, _08122FE8 @ =gLastFieldPokeMenuOpened
ldrb r0, [r4]
strb r0, [r1]
ldrb r0, [r5]
@@ -2252,7 +2252,7 @@ _08122FD8: .4byte 0x0201b260
_08122FDC: .4byte gUnknown_020384F0
_08122FE0: .4byte gPlayerParty
_08122FE4: .4byte gStringVar1
-_08122FE8: .4byte gUnknown_03005CE0
+_08122FE8: .4byte gLastFieldPokeMenuOpened
_08122FEC: .4byte sub_806AEDC
_08122FF0:
bl sub_80F9344
diff --git a/asm/contest.s b/asm/contest.s
index c98f5db0d..a851ac05a 100644
--- a/asm/contest.s
+++ b/asm/contest.s
@@ -878,9 +878,9 @@ _080AB8CC:
strb r2, [r1, 0x3]
ldr r0, _080AB92C @ =gBattleTypeFlags
strh r4, [r0]
- ldr r4, _080AB930 @ =gUnknown_02024C07
+ ldr r4, _080AB930 @ =gPlayerMonIndex
strb r2, [r4]
- ldr r0, _080AB934 @ =gUnknown_02024C08
+ ldr r0, _080AB934 @ =gEnemyMonIndex
strb r3, [r0]
bl sub_80AE858
ldr r2, _080AB938 @ =gUnknown_02024BE0
@@ -893,8 +893,8 @@ _080AB8CC:
_080AB924: .4byte 0x02019204
_080AB928: .4byte gUnknown_02024A72
_080AB92C: .4byte gBattleTypeFlags
-_080AB930: .4byte gUnknown_02024C07
-_080AB934: .4byte gUnknown_02024C08
+_080AB930: .4byte gPlayerMonIndex
+_080AB934: .4byte gEnemyMonIndex
_080AB938: .4byte gUnknown_02024BE0
_080AB93C:
movs r0, 0
@@ -2344,7 +2344,7 @@ _080AC542:
adds r4, r0
strh r5, [r4, 0xC]
ldr r1, _080AC5E0 @ =gUnknown_02024BE0
- ldr r0, _080AC5E4 @ =gUnknown_02024C07
+ ldr r0, _080AC5E4 @ =gPlayerMonIndex
ldrb r0, [r0]
adds r0, r1
strb r5, [r0]
@@ -2365,7 +2365,7 @@ _080AC5D4: .4byte gSprites
_080AC5D8: .4byte sub_80AD8FC
_080AC5DC: .4byte gTasks
_080AC5E0: .4byte gUnknown_02024BE0
-_080AC5E4: .4byte gUnknown_02024C07
+_080AC5E4: .4byte gPlayerMonIndex
_080AC5E8:
mov r1, r8
lsls r0, r1, 2
@@ -9885,7 +9885,7 @@ _080B004A:
adds r0, r1
lsls r0, 2
adds r0, r7
- ldr r1, _080B00C4 @ =gUnknown_083CA464
+ ldr r1, _080B00C4 @ =gSubspriteTables_83CA464
bl SetSubspriteTables
ldrb r1, [r4, 0x1]
lsls r0, r1, 4
@@ -9914,7 +9914,7 @@ _080B00B4: .4byte gUnknown_083CA3C4
_080B00B8: .4byte gSpriteTemplate_83CA3F4
_080B00BC: .4byte gUnknown_02038696
_080B00C0: .4byte 0x02019338
-_080B00C4: .4byte gUnknown_083CA464
+_080B00C4: .4byte gSubspriteTables_83CA464
thumb_func_end sub_80B0034
thumb_func_start sub_80B00C8
@@ -15034,7 +15034,7 @@ sub_80B2790: @ 80B2790
movs r1, 0
movs r2, 0x14
bl memset
- bl sub_8075624
+ bl battle_anim_clear_some_data
ldr r1, _080B27F8 @ =gUnknown_02024E84
movs r2, 0
adds r0, r1, 0x3
@@ -15226,7 +15226,7 @@ sub_80B292C: @ 80B292C
bl CreateInvisibleSpriteWithCallback
ldr r1, _080B295C @ =gUnknown_02024BE0
strb r0, [r1, 0x3]
- ldr r0, _080B2960 @ =gUnknown_02024C08
+ ldr r0, _080B2960 @ =gEnemyMonIndex
ldrb r0, [r0]
adds r0, r1
ldrb r1, [r0]
@@ -15242,7 +15242,7 @@ sub_80B292C: @ 80B292C
.align 2, 0
_080B2958: .4byte SpriteCallbackDummy
_080B295C: .4byte gUnknown_02024BE0
-_080B2960: .4byte gUnknown_02024C08
+_080B2960: .4byte gEnemyMonIndex
_080B2964: .4byte gSprites
thumb_func_end sub_80B292C
@@ -15341,20 +15341,20 @@ _080B29DC:
.4byte _080B2A6C
.4byte _080B2A6C
_080B2A60:
- ldr r1, _080B2A68 @ =gUnknown_02024C08
+ ldr r1, _080B2A68 @ =gEnemyMonIndex
movs r0, 0x2
b _080B2A70
.align 2, 0
-_080B2A68: .4byte gUnknown_02024C08
+_080B2A68: .4byte gEnemyMonIndex
_080B2A6C:
- ldr r1, _080B2A78 @ =gUnknown_02024C08
+ ldr r1, _080B2A78 @ =gEnemyMonIndex
movs r0, 0x3
_080B2A70:
strb r0, [r1]
pop {r0}
bx r0
.align 2, 0
-_080B2A78: .4byte gUnknown_02024C08
+_080B2A78: .4byte gEnemyMonIndex
thumb_func_end sub_80B29B4
thumb_func_start sub_80B2A7C
diff --git a/asm/contest_ai.s b/asm/contest_ai.s
index a947110ec..c7a67fed9 100644
--- a/asm/contest_ai.s
+++ b/asm/contest_ai.s
@@ -164,7 +164,7 @@ _08128A0E:
ldrh r1, [r1, 0x2]
cmp r1, 0
beq _08128A2C
- ldr r1, _08128A28 @ =gUnknown_08401E60
+ ldr r1, _08128A28 @ =sContestAICmdTable
ldr r0, [r5]
ldrb r0, [r0]
lsls r0, 2
@@ -173,7 +173,7 @@ _08128A0E:
bl _call_via_r0
b _08128A3C
.align 2, 0
-_08128A28: .4byte gUnknown_08401E60
+_08128A28: .4byte sContestAICmdTable
_08128A2C:
adds r0, r4, 0x5
ldrb r2, [r4, 0x4]
@@ -249,8 +249,8 @@ _08128A9A:
_08128AA4: .4byte 0x020192d0
thumb_func_end sub_8128A7C
- thumb_func_start sub_8128AA8
-sub_8128AA8: @ 8128AA8
+ thumb_func_start ContestAICmd_unk_00
+ContestAICmd_unk_00: @ 8128AA8
push {lr}
ldr r2, _08128AD0 @ =0x020192e4
adds r1, r2, 0x5
@@ -287,10 +287,10 @@ _08128ADE:
str r0, [r3]
pop {r0}
bx r0
- thumb_func_end sub_8128AA8
+ thumb_func_end ContestAICmd_unk_00
- thumb_func_start contest_ai_get_turn
-contest_ai_get_turn: @ 8128AF0
+ thumb_func_start ContestAICmd_get_turn
+ContestAICmd_get_turn: @ 8128AF0
ldr r1, _08128B04 @ =0x020192e4
adds r0, r1, 0
subs r0, 0xE0
@@ -304,12 +304,12 @@ contest_ai_get_turn: @ 8128AF0
.align 2, 0
_08128B04: .4byte 0x020192e4
_08128B08: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_turn
+ thumb_func_end ContestAICmd_get_turn
- thumb_func_start sub_8128B0C
-sub_8128B0C: @ 8128B0C
+ thumb_func_start ContestAICmd_unk_02
+ContestAICmd_unk_02: @ 8128B0C
push {lr}
- bl contest_ai_get_turn
+ bl ContestAICmd_get_turn
ldr r0, _08128B3C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -339,12 +339,12 @@ _08128B44:
_08128B48:
pop {r0}
bx r0
- thumb_func_end sub_8128B0C
+ thumb_func_end ContestAICmd_unk_02
- thumb_func_start sub_8128B4C
-sub_8128B4C: @ 8128B4C
+ thumb_func_start ContestAICmd_unk_03
+ContestAICmd_unk_03: @ 8128B4C
push {lr}
- bl contest_ai_get_turn
+ bl ContestAICmd_get_turn
ldr r0, _08128B7C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -374,12 +374,12 @@ _08128B84:
_08128B88:
pop {r0}
bx r0
- thumb_func_end sub_8128B4C
+ thumb_func_end ContestAICmd_unk_03
- thumb_func_start sub_8128B8C
-sub_8128B8C: @ 8128B8C
+ thumb_func_start ContestAICmd_unk_04
+ContestAICmd_unk_04: @ 8128B8C
push {lr}
- bl contest_ai_get_turn
+ bl ContestAICmd_get_turn
ldr r0, _08128BBC @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -409,12 +409,12 @@ _08128BC4:
_08128BC8:
pop {r0}
bx r0
- thumb_func_end sub_8128B8C
+ thumb_func_end ContestAICmd_unk_04
- thumb_func_start sub_8128BCC
-sub_8128BCC: @ 8128BCC
+ thumb_func_start ContestAICmd_unk_05
+ContestAICmd_unk_05: @ 8128BCC
push {lr}
- bl contest_ai_get_turn
+ bl ContestAICmd_get_turn
ldr r0, _08128BFC @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -444,10 +444,10 @@ _08128C04:
_08128C08:
pop {r0}
bx r0
- thumb_func_end sub_8128BCC
+ thumb_func_end ContestAICmd_unk_05
- thumb_func_start contest_ai_get_excitement
-contest_ai_get_excitement: @ 8128C0C
+ thumb_func_start ContestAICmd_get_excitement
+ContestAICmd_get_excitement: @ 8128C0C
ldr r1, _08128C24 @ =0x020192e4
adds r0, r1, 0
subs r0, 0xE0
@@ -463,12 +463,12 @@ contest_ai_get_excitement: @ 8128C0C
.align 2, 0
_08128C24: .4byte 0x020192e4
_08128C28: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_excitement
+ thumb_func_end ContestAICmd_get_excitement
- thumb_func_start sub_8128C2C
-sub_8128C2C: @ 8128C2C
+ thumb_func_start ContestAICmd_unk_07
+ContestAICmd_unk_07: @ 8128C2C
push {lr}
- bl contest_ai_get_excitement
+ bl ContestAICmd_get_excitement
ldr r0, _08128C5C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -498,12 +498,12 @@ _08128C64:
_08128C68:
pop {r0}
bx r0
- thumb_func_end sub_8128C2C
+ thumb_func_end ContestAICmd_unk_07
- thumb_func_start sub_8128C6C
-sub_8128C6C: @ 8128C6C
+ thumb_func_start ContestAICmd_unk_08
+ContestAICmd_unk_08: @ 8128C6C
push {lr}
- bl contest_ai_get_excitement
+ bl ContestAICmd_get_excitement
ldr r0, _08128C9C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -533,12 +533,12 @@ _08128CA4:
_08128CA8:
pop {r0}
bx r0
- thumb_func_end sub_8128C6C
+ thumb_func_end ContestAICmd_unk_08
- thumb_func_start sub_8128CAC
-sub_8128CAC: @ 8128CAC
+ thumb_func_start ContestAICmd_unk_09
+ContestAICmd_unk_09: @ 8128CAC
push {lr}
- bl contest_ai_get_excitement
+ bl ContestAICmd_get_excitement
ldr r0, _08128CDC @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -568,12 +568,12 @@ _08128CE4:
_08128CE8:
pop {r0}
bx r0
- thumb_func_end sub_8128CAC
+ thumb_func_end ContestAICmd_unk_09
- thumb_func_start sub_8128CEC
-sub_8128CEC: @ 8128CEC
+ thumb_func_start ContestAICmd_unk_0A
+ContestAICmd_unk_0A: @ 8128CEC
push {lr}
- bl contest_ai_get_excitement
+ bl ContestAICmd_get_excitement
ldr r0, _08128D1C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -603,10 +603,10 @@ _08128D24:
_08128D28:
pop {r0}
bx r0
- thumb_func_end sub_8128CEC
+ thumb_func_end ContestAICmd_unk_0A
- thumb_func_start contest_ai_get_user_order
-contest_ai_get_user_order: @ 8128D2C
+ thumb_func_start ContestAICmd_get_user_order
+ContestAICmd_get_user_order: @ 8128D2C
ldr r1, _08128D48 @ =0x020192e4
adds r2, r1, 0
adds r2, 0x41
@@ -624,12 +624,12 @@ contest_ai_get_user_order: @ 8128D2C
.align 2, 0
_08128D48: .4byte 0x020192e4
_08128D4C: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_user_order
+ thumb_func_end ContestAICmd_get_user_order
- thumb_func_start sub_8128D50
-sub_8128D50: @ 8128D50
+ thumb_func_start ContestAICmd_unk_0C
+ContestAICmd_unk_0C: @ 8128D50
push {lr}
- bl contest_ai_get_user_order
+ bl ContestAICmd_get_user_order
ldr r0, _08128D80 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -659,12 +659,12 @@ _08128D88:
_08128D8C:
pop {r0}
bx r0
- thumb_func_end sub_8128D50
+ thumb_func_end ContestAICmd_unk_0C
- thumb_func_start sub_8128D90
-sub_8128D90: @ 8128D90
+ thumb_func_start ContestAICmd_unk_0D
+ContestAICmd_unk_0D: @ 8128D90
push {lr}
- bl contest_ai_get_user_order
+ bl ContestAICmd_get_user_order
ldr r0, _08128DC0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -694,12 +694,12 @@ _08128DC8:
_08128DCC:
pop {r0}
bx r0
- thumb_func_end sub_8128D90
+ thumb_func_end ContestAICmd_unk_0D
- thumb_func_start sub_8128DD0
-sub_8128DD0: @ 8128DD0
+ thumb_func_start ContestAICmd_unk_0E
+ContestAICmd_unk_0E: @ 8128DD0
push {lr}
- bl contest_ai_get_user_order
+ bl ContestAICmd_get_user_order
ldr r0, _08128E00 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -729,12 +729,12 @@ _08128E08:
_08128E0C:
pop {r0}
bx r0
- thumb_func_end sub_8128DD0
+ thumb_func_end ContestAICmd_unk_0E
- thumb_func_start sub_8128E10
-sub_8128E10: @ 8128E10
+ thumb_func_start ContestAICmd_unk_0F
+ContestAICmd_unk_0F: @ 8128E10
push {lr}
- bl contest_ai_get_user_order
+ bl ContestAICmd_get_user_order
ldr r0, _08128E40 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -764,10 +764,10 @@ _08128E48:
_08128E4C:
pop {r0}
bx r0
- thumb_func_end sub_8128E10
+ thumb_func_end ContestAICmd_unk_0F
- thumb_func_start contest_ai_get_user_condition_maybe
-contest_ai_get_user_condition_maybe: @ 8128E50
+ thumb_func_start ContestAICmd_get_user_condition_maybe
+ContestAICmd_get_user_condition_maybe: @ 8128E50
push {r4,lr}
ldr r4, _08128E88 @ =0x020192e4
adds r0, r4, 0
@@ -797,12 +797,12 @@ contest_ai_get_user_condition_maybe: @ 8128E50
.align 2, 0
_08128E88: .4byte 0x020192e4
_08128E8C: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_user_condition_maybe
+ thumb_func_end ContestAICmd_get_user_condition_maybe
- thumb_func_start sub_8128E90
-sub_8128E90: @ 8128E90
+ thumb_func_start ContestAICmd_unk_11
+ContestAICmd_unk_11: @ 8128E90
push {lr}
- bl contest_ai_get_user_condition_maybe
+ bl ContestAICmd_get_user_condition_maybe
ldr r0, _08128EC0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -832,12 +832,12 @@ _08128EC8:
_08128ECC:
pop {r0}
bx r0
- thumb_func_end sub_8128E90
+ thumb_func_end ContestAICmd_unk_11
- thumb_func_start sub_8128ED0
-sub_8128ED0: @ 8128ED0
+ thumb_func_start ContestAICmd_unk_12
+ContestAICmd_unk_12: @ 8128ED0
push {lr}
- bl contest_ai_get_user_condition_maybe
+ bl ContestAICmd_get_user_condition_maybe
ldr r0, _08128F00 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -867,12 +867,12 @@ _08128F08:
_08128F0C:
pop {r0}
bx r0
- thumb_func_end sub_8128ED0
+ thumb_func_end ContestAICmd_unk_12
- thumb_func_start sub_8128F10
-sub_8128F10: @ 8128F10
+ thumb_func_start ContestAICmd_unk_13
+ContestAICmd_unk_13: @ 8128F10
push {lr}
- bl contest_ai_get_user_condition_maybe
+ bl ContestAICmd_get_user_condition_maybe
ldr r0, _08128F40 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -902,12 +902,12 @@ _08128F48:
_08128F4C:
pop {r0}
bx r0
- thumb_func_end sub_8128F10
+ thumb_func_end ContestAICmd_unk_13
- thumb_func_start sub_8128F50
-sub_8128F50: @ 8128F50
+ thumb_func_start ContestAICmd_unk_14
+ContestAICmd_unk_14: @ 8128F50
push {lr}
- bl contest_ai_get_user_condition_maybe
+ bl ContestAICmd_get_user_condition_maybe
ldr r0, _08128F80 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -937,10 +937,10 @@ _08128F88:
_08128F8C:
pop {r0}
bx r0
- thumb_func_end sub_8128F50
+ thumb_func_end ContestAICmd_unk_14
- thumb_func_start sub_8128F90
-sub_8128F90: @ 8128F90
+ thumb_func_start ContestAICmd_unk_15
+ContestAICmd_unk_15: @ 8128F90
ldr r2, _08128FB4 @ =0x020192e4
adds r0, r2, 0
adds r0, 0x41
@@ -961,12 +961,12 @@ sub_8128F90: @ 8128F90
.align 2, 0
_08128FB4: .4byte 0x020192e4
_08128FB8: .4byte gAIScriptPtr
- thumb_func_end sub_8128F90
+ thumb_func_end ContestAICmd_unk_15
- thumb_func_start sub_8128FBC
-sub_8128FBC: @ 8128FBC
+ thumb_func_start ContestAICmd_unk_16
+ContestAICmd_unk_16: @ 8128FBC
push {r4,r5,lr}
- bl sub_8128F90
+ bl ContestAICmd_unk_15
ldr r2, _08128FF4 @ =0x020192e4
ldr r4, _08128FF8 @ =gAIScriptPtr
ldr r3, [r4]
@@ -1002,12 +1002,12 @@ _08129000:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_8128FBC
+ thumb_func_end ContestAICmd_unk_16
- thumb_func_start sub_8129008
-sub_8129008: @ 8129008
+ thumb_func_start ContestAICmd_unk_17
+ContestAICmd_unk_17: @ 8129008
push {r4,r5,lr}
- bl sub_8128F90
+ bl ContestAICmd_unk_15
ldr r2, _08129040 @ =0x020192e4
ldr r4, _08129044 @ =gAIScriptPtr
ldr r3, [r4]
@@ -1043,12 +1043,12 @@ _0812904C:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_8129008
+ thumb_func_end ContestAICmd_unk_17
- thumb_func_start sub_8129054
-sub_8129054: @ 8129054
+ thumb_func_start ContestAICmd_unk_18
+ContestAICmd_unk_18: @ 8129054
push {r4,r5,lr}
- bl sub_8128F90
+ bl ContestAICmd_unk_15
ldr r2, _0812908C @ =0x020192e4
ldr r4, _08129090 @ =gAIScriptPtr
ldr r3, [r4]
@@ -1084,12 +1084,12 @@ _08129098:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_8129054
+ thumb_func_end ContestAICmd_unk_18
- thumb_func_start sub_81290A0
-sub_81290A0: @ 81290A0
+ thumb_func_start ContestAICmd_unk_19
+ContestAICmd_unk_19: @ 81290A0
push {r4,r5,lr}
- bl sub_8128F90
+ bl ContestAICmd_unk_15
ldr r2, _081290D8 @ =0x020192e4
ldr r4, _081290DC @ =gAIScriptPtr
ldr r3, [r4]
@@ -1125,10 +1125,10 @@ _081290E4:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_81290A0
+ thumb_func_end ContestAICmd_unk_19
- thumb_func_start sub_81290EC
-sub_81290EC: @ 81290EC
+ thumb_func_start ContestAICmd_unk_1A
+ContestAICmd_unk_1A: @ 81290EC
ldr r2, _08129108 @ =0x020192e4
ldr r1, _0812910C @ =gUnknown_02038670
adds r0, r2, 0
@@ -1147,12 +1147,12 @@ sub_81290EC: @ 81290EC
_08129108: .4byte 0x020192e4
_0812910C: .4byte gUnknown_02038670
_08129110: .4byte gAIScriptPtr
- thumb_func_end sub_81290EC
+ thumb_func_end ContestAICmd_unk_1A
- thumb_func_start sub_8129114
-sub_8129114: @ 8129114
+ thumb_func_start ContestAICmd_unk_1B
+ContestAICmd_unk_1B: @ 8129114
push {r4,r5,lr}
- bl sub_81290EC
+ bl ContestAICmd_unk_1A
ldr r2, _0812914C @ =0x020192e4
ldr r4, _08129150 @ =gAIScriptPtr
ldr r3, [r4]
@@ -1188,12 +1188,12 @@ _08129158:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_8129114
+ thumb_func_end ContestAICmd_unk_1B
- thumb_func_start sub_8129160
-sub_8129160: @ 8129160
+ thumb_func_start ContestAICmd_unk_1C
+ContestAICmd_unk_1C: @ 8129160
push {r4,r5,lr}
- bl sub_81290EC
+ bl ContestAICmd_unk_1A
ldr r2, _08129198 @ =0x020192e4
ldr r4, _0812919C @ =gAIScriptPtr
ldr r3, [r4]
@@ -1229,12 +1229,12 @@ _081291A4:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_8129160
+ thumb_func_end ContestAICmd_unk_1C
- thumb_func_start sub_81291AC
-sub_81291AC: @ 81291AC
+ thumb_func_start ContestAICmd_unk_1D
+ContestAICmd_unk_1D: @ 81291AC
push {r4,r5,lr}
- bl sub_81290EC
+ bl ContestAICmd_unk_1A
ldr r2, _081291E4 @ =0x020192e4
ldr r4, _081291E8 @ =gAIScriptPtr
ldr r3, [r4]
@@ -1270,12 +1270,12 @@ _081291F0:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_81291AC
+ thumb_func_end ContestAICmd_unk_1D
- thumb_func_start sub_81291F8
-sub_81291F8: @ 81291F8
+ thumb_func_start ContestAICmd_unk_1E
+ContestAICmd_unk_1E: @ 81291F8
push {r4,r5,lr}
- bl sub_81290EC
+ bl ContestAICmd_unk_1A
ldr r2, _08129230 @ =0x020192e4
ldr r4, _08129234 @ =gAIScriptPtr
ldr r3, [r4]
@@ -1311,10 +1311,10 @@ _0812923C:
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end sub_81291F8
+ thumb_func_end ContestAICmd_unk_1E
- thumb_func_start contest_ai_get_contest_type
-contest_ai_get_contest_type: @ 8129244
+ thumb_func_start ContestAICmd_get_contest_type
+ContestAICmd_get_contest_type: @ 8129244
ldr r1, _08129258 @ =0x020192e4
ldr r0, _0812925C @ =gScriptContestCategory
ldrh r0, [r0]
@@ -1328,12 +1328,12 @@ contest_ai_get_contest_type: @ 8129244
_08129258: .4byte 0x020192e4
_0812925C: .4byte gScriptContestCategory
_08129260: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_contest_type
+ thumb_func_end ContestAICmd_get_contest_type
- thumb_func_start sub_8129264
-sub_8129264: @ 8129264
+ thumb_func_start ContestAICmd_unk_20
+ContestAICmd_unk_20: @ 8129264
push {lr}
- bl contest_ai_get_contest_type
+ bl ContestAICmd_get_contest_type
ldr r0, _08129294 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -1363,12 +1363,12 @@ _0812929C:
_081292A0:
pop {r0}
bx r0
- thumb_func_end sub_8129264
+ thumb_func_end ContestAICmd_unk_20
- thumb_func_start sub_81292A4
-sub_81292A4: @ 81292A4
+ thumb_func_start ContestAICmd_unk_21
+ContestAICmd_unk_21: @ 81292A4
push {lr}
- bl contest_ai_get_contest_type
+ bl ContestAICmd_get_contest_type
ldr r0, _081292D4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -1398,10 +1398,10 @@ _081292DC:
_081292E0:
pop {r0}
bx r0
- thumb_func_end sub_81292A4
+ thumb_func_end ContestAICmd_unk_21
- thumb_func_start contest_ai_get_move_excitement
-contest_ai_get_move_excitement: @ 81292E4
+ thumb_func_start ContestAICmd_get_move_excitement
+ContestAICmd_get_move_excitement: @ 81292E4
push {r4,lr}
ldr r2, _08129318 @ =gContestMons
ldr r4, _0812931C @ =0x020192e4
@@ -1430,12 +1430,12 @@ contest_ai_get_move_excitement: @ 81292E4
_08129318: .4byte gContestMons
_0812931C: .4byte 0x020192e4
_08129320: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_move_excitement
+ thumb_func_end ContestAICmd_get_move_excitement
- thumb_func_start sub_8129324
-sub_8129324: @ 8129324
+ thumb_func_start ContestAICmd_unk_23
+ContestAICmd_unk_23: @ 8129324
push {r4,lr}
- bl contest_ai_get_move_excitement
+ bl ContestAICmd_get_move_excitement
ldr r0, _08129354 @ =0x020192e4
ldr r3, _08129358 @ =gAIScriptPtr
ldr r2, [r3]
@@ -1467,12 +1467,12 @@ _08129360:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_8129324
+ thumb_func_end ContestAICmd_unk_23
- thumb_func_start sub_8129368
-sub_8129368: @ 8129368
+ thumb_func_start ContestAICmd_unk_24
+ContestAICmd_unk_24: @ 8129368
push {r4,lr}
- bl contest_ai_get_move_excitement
+ bl ContestAICmd_get_move_excitement
ldr r0, _08129398 @ =0x020192e4
ldr r3, _0812939C @ =gAIScriptPtr
ldr r2, [r3]
@@ -1504,12 +1504,12 @@ _081293A4:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_8129368
+ thumb_func_end ContestAICmd_unk_24
- thumb_func_start sub_81293AC
-sub_81293AC: @ 81293AC
+ thumb_func_start ContestAICmd_unk_25
+ContestAICmd_unk_25: @ 81293AC
push {r4,lr}
- bl contest_ai_get_move_excitement
+ bl ContestAICmd_get_move_excitement
ldr r0, _081293DC @ =0x020192e4
ldr r3, _081293E0 @ =gAIScriptPtr
ldr r2, [r3]
@@ -1541,12 +1541,12 @@ _081293E8:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_81293AC
+ thumb_func_end ContestAICmd_unk_25
- thumb_func_start sub_81293F0
-sub_81293F0: @ 81293F0
+ thumb_func_start ContestAICmd_unk_26
+ContestAICmd_unk_26: @ 81293F0
push {r4,lr}
- bl contest_ai_get_move_excitement
+ bl ContestAICmd_get_move_excitement
ldr r0, _08129420 @ =0x020192e4
ldr r3, _08129424 @ =gAIScriptPtr
ldr r2, [r3]
@@ -1578,10 +1578,10 @@ _0812942C:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_81293F0
+ thumb_func_end ContestAICmd_unk_26
- thumb_func_start contest_ai_get_move_effect
-contest_ai_get_move_effect: @ 8129434
+ thumb_func_start ContestAICmd_get_move_effect
+ContestAICmd_get_move_effect: @ 8129434
ldr r2, _08129460 @ =gContestMons
ldr r3, _08129464 @ =0x020192e4
ldrb r1, [r3, 0x4]
@@ -1609,12 +1609,12 @@ _08129460: .4byte gContestMons
_08129464: .4byte 0x020192e4
_08129468: .4byte gContestMoves
_0812946C: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_move_effect
+ thumb_func_end ContestAICmd_get_move_effect
- thumb_func_start sub_8129470
-sub_8129470: @ 8129470
+ thumb_func_start ContestAICmd_unk_28
+ContestAICmd_unk_28: @ 8129470
push {lr}
- bl contest_ai_get_move_effect
+ bl ContestAICmd_get_move_effect
ldr r0, _081294A0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -1644,12 +1644,12 @@ _081294A8:
_081294AC:
pop {r0}
bx r0
- thumb_func_end sub_8129470
+ thumb_func_end ContestAICmd_unk_28
- thumb_func_start sub_81294B0
-sub_81294B0: @ 81294B0
+ thumb_func_start ContestAICmd_unk_29
+ContestAICmd_unk_29: @ 81294B0
push {lr}
- bl contest_ai_get_move_effect
+ bl ContestAICmd_get_move_effect
ldr r0, _081294E0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -1679,10 +1679,10 @@ _081294E8:
_081294EC:
pop {r0}
bx r0
- thumb_func_end sub_81294B0
+ thumb_func_end ContestAICmd_unk_29
- thumb_func_start contest_ai_get_move_effect_type
-contest_ai_get_move_effect_type: @ 81294F0
+ thumb_func_start ContestAICmd_get_move_effect_type
+ContestAICmd_get_move_effect_type: @ 81294F0
ldr r2, _08129524 @ =gContestMons
ldr r3, _08129528 @ =0x020192e4
ldrb r1, [r3, 0x4]
@@ -1715,12 +1715,12 @@ _08129528: .4byte 0x020192e4
_0812952C: .4byte gContestEffects
_08129530: .4byte gContestMoves
_08129534: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_move_effect_type
+ thumb_func_end ContestAICmd_get_move_effect_type
- thumb_func_start sub_8129538
-sub_8129538: @ 8129538
+ thumb_func_start ContestAICmd_unk_2B
+ContestAICmd_unk_2B: @ 8129538
push {lr}
- bl contest_ai_get_move_effect_type
+ bl ContestAICmd_get_move_effect_type
ldr r0, _08129568 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -1750,12 +1750,12 @@ _08129570:
_08129574:
pop {r0}
bx r0
- thumb_func_end sub_8129538
+ thumb_func_end ContestAICmd_unk_2B
- thumb_func_start sub_8129578
-sub_8129578: @ 8129578
+ thumb_func_start ContestAICmd_unk_2C
+ContestAICmd_unk_2C: @ 8129578
push {lr}
- bl contest_ai_get_move_effect_type
+ bl ContestAICmd_get_move_effect_type
ldr r0, _081295A8 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -1785,10 +1785,10 @@ _081295B0:
_081295B4:
pop {r0}
bx r0
- thumb_func_end sub_8129578
+ thumb_func_end ContestAICmd_unk_2C
- thumb_func_start contest_ai_check_move_has_highest_appeal
-contest_ai_check_move_has_highest_appeal: @ 81295B8
+ thumb_func_start ContestAICmd_check_move_has_highest_appeal
+ContestAICmd_check_move_has_highest_appeal: @ 81295B8
push {r4-r7,lr}
ldr r2, _08129610 @ =gContestMons
ldr r3, _08129614 @ =0x020192e4
@@ -1853,12 +1853,12 @@ _08129626:
pop {r4-r7}
pop {r0}
bx r0
- thumb_func_end contest_ai_check_move_has_highest_appeal
+ thumb_func_end ContestAICmd_check_move_has_highest_appeal
- thumb_func_start sub_8129638
-sub_8129638: @ 8129638
+ thumb_func_start ContestAICmd_unk_2E
+ContestAICmd_unk_2E: @ 8129638
push {lr}
- bl contest_ai_check_move_has_highest_appeal
+ bl ContestAICmd_check_move_has_highest_appeal
ldr r0, _08129664 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -1891,10 +1891,10 @@ _08129674:
bx r0
.align 2, 0
_08129678: .4byte gAIScriptPtr
- thumb_func_end sub_8129638
+ thumb_func_end ContestAICmd_unk_2E
- thumb_func_start sub_812967C
-sub_812967C: @ 812967C
+ thumb_func_start ContestAICmd_unk_2F
+ContestAICmd_unk_2F: @ 812967C
push {r4-r7,lr}
ldr r2, _081296D4 @ =gContestMons
ldr r3, _081296D8 @ =0x020192e4
@@ -1959,12 +1959,12 @@ _081296EA:
pop {r4-r7}
pop {r0}
bx r0
- thumb_func_end sub_812967C
+ thumb_func_end ContestAICmd_unk_2F
- thumb_func_start sub_81296FC
-sub_81296FC: @ 81296FC
+ thumb_func_start ContestAICmd_unk_30
+ContestAICmd_unk_30: @ 81296FC
push {lr}
- bl sub_812967C
+ bl ContestAICmd_unk_2F
ldr r0, _08129728 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -1997,10 +1997,10 @@ _08129738:
bx r0
.align 2, 0
_0812973C: .4byte gAIScriptPtr
- thumb_func_end sub_81296FC
+ thumb_func_end ContestAICmd_unk_30
- thumb_func_start sub_8129740
-sub_8129740: @ 8129740
+ thumb_func_start ContestAICmd_unk_31
+ContestAICmd_unk_31: @ 8129740
push {r4,lr}
ldr r2, _08129784 @ =gContestMons
ldr r4, _08129788 @ =0x020192e4
@@ -2040,12 +2040,12 @@ _08129788: .4byte 0x020192e4
_0812978C: .4byte gContestEffects
_08129790: .4byte gContestMoves
_08129794: .4byte gAIScriptPtr
- thumb_func_end sub_8129740
+ thumb_func_end ContestAICmd_unk_31
- thumb_func_start sub_8129798
-sub_8129798: @ 8129798
+ thumb_func_start ContestAICmd_unk_32
+ContestAICmd_unk_32: @ 8129798
push {lr}
- bl sub_8129740
+ bl ContestAICmd_unk_31
ldr r0, _081297C8 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2075,12 +2075,12 @@ _081297D0:
_081297D4:
pop {r0}
bx r0
- thumb_func_end sub_8129798
+ thumb_func_end ContestAICmd_unk_32
- thumb_func_start sub_81297D8
-sub_81297D8: @ 81297D8
+ thumb_func_start ContestAICmd_unk_33
+ContestAICmd_unk_33: @ 81297D8
push {lr}
- bl sub_8129740
+ bl ContestAICmd_unk_31
ldr r0, _08129808 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2110,12 +2110,12 @@ _08129810:
_08129814:
pop {r0}
bx r0
- thumb_func_end sub_81297D8
+ thumb_func_end ContestAICmd_unk_33
- thumb_func_start sub_8129818
-sub_8129818: @ 8129818
+ thumb_func_start ContestAICmd_unk_34
+ContestAICmd_unk_34: @ 8129818
push {lr}
- bl sub_8129740
+ bl ContestAICmd_unk_31
ldr r0, _08129848 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2145,12 +2145,12 @@ _08129850:
_08129854:
pop {r0}
bx r0
- thumb_func_end sub_8129818
+ thumb_func_end ContestAICmd_unk_34
- thumb_func_start sub_8129858
-sub_8129858: @ 8129858
+ thumb_func_start ContestAICmd_unk_35
+ContestAICmd_unk_35: @ 8129858
push {lr}
- bl sub_8129740
+ bl ContestAICmd_unk_31
ldr r0, _08129888 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2180,10 +2180,10 @@ _08129890:
_08129894:
pop {r0}
bx r0
- thumb_func_end sub_8129858
+ thumb_func_end ContestAICmd_unk_35
- thumb_func_start sub_8129898
-sub_8129898: @ 8129898
+ thumb_func_start ContestAICmd_unk_36
+ContestAICmd_unk_36: @ 8129898
push {r4,lr}
ldr r2, _081298DC @ =gContestMons
ldr r4, _081298E0 @ =0x020192e4
@@ -2223,12 +2223,12 @@ _081298E0: .4byte 0x020192e4
_081298E4: .4byte gContestEffects
_081298E8: .4byte gContestMoves
_081298EC: .4byte gAIScriptPtr
- thumb_func_end sub_8129898
+ thumb_func_end ContestAICmd_unk_36
- thumb_func_start sub_81298F0
-sub_81298F0: @ 81298F0
+ thumb_func_start ContestAICmd_unk_37
+ContestAICmd_unk_37: @ 81298F0
push {lr}
- bl sub_8129898
+ bl ContestAICmd_unk_36
ldr r0, _08129920 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2258,12 +2258,12 @@ _08129928:
_0812992C:
pop {r0}
bx r0
- thumb_func_end sub_81298F0
+ thumb_func_end ContestAICmd_unk_37
- thumb_func_start sub_8129930
-sub_8129930: @ 8129930
+ thumb_func_start ContestAICmd_unk_38
+ContestAICmd_unk_38: @ 8129930
push {lr}
- bl sub_8129898
+ bl ContestAICmd_unk_36
ldr r0, _08129960 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2293,12 +2293,12 @@ _08129968:
_0812996C:
pop {r0}
bx r0
- thumb_func_end sub_8129930
+ thumb_func_end ContestAICmd_unk_38
- thumb_func_start sub_8129970
-sub_8129970: @ 8129970
+ thumb_func_start ContestAICmd_unk_39
+ContestAICmd_unk_39: @ 8129970
push {lr}
- bl sub_8129898
+ bl ContestAICmd_unk_36
ldr r0, _081299A0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2328,12 +2328,12 @@ _081299A8:
_081299AC:
pop {r0}
bx r0
- thumb_func_end sub_8129970
+ thumb_func_end ContestAICmd_unk_39
- thumb_func_start sub_81299B0
-sub_81299B0: @ 81299B0
+ thumb_func_start ContestAICmd_unk_3A
+ContestAICmd_unk_3A: @ 81299B0
push {lr}
- bl sub_8129898
+ bl ContestAICmd_unk_36
ldr r0, _081299E0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2363,10 +2363,10 @@ _081299E8:
_081299EC:
pop {r0}
bx r0
- thumb_func_end sub_81299B0
+ thumb_func_end ContestAICmd_unk_3A
- thumb_func_start contest_ai_get_move_used_count
-contest_ai_get_move_used_count: @ 81299F0
+ thumb_func_start ContestAICmd_get_move_used_count
+ContestAICmd_get_move_used_count: @ 81299F0
push {r4,lr}
ldr r3, _08129A20 @ =gContestMons
ldr r4, _08129A24 @ =0x020192e4
@@ -2410,12 +2410,12 @@ _08129A30:
bx r0
.align 2, 0
_08129A40: .4byte gAIScriptPtr
- thumb_func_end contest_ai_get_move_used_count
+ thumb_func_end ContestAICmd_get_move_used_count
- thumb_func_start sub_8129A44
-sub_8129A44: @ 8129A44
+ thumb_func_start ContestAICmd_unk_3C
+ContestAICmd_unk_3C: @ 8129A44
push {lr}
- bl contest_ai_get_move_used_count
+ bl ContestAICmd_get_move_used_count
ldr r0, _08129A74 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2445,12 +2445,12 @@ _08129A7C:
_08129A80:
pop {r0}
bx r0
- thumb_func_end sub_8129A44
+ thumb_func_end ContestAICmd_unk_3C
- thumb_func_start sub_8129A84
-sub_8129A84: @ 8129A84
+ thumb_func_start ContestAICmd_unk_3D
+ContestAICmd_unk_3D: @ 8129A84
push {lr}
- bl contest_ai_get_move_used_count
+ bl ContestAICmd_get_move_used_count
ldr r0, _08129AB4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2480,12 +2480,12 @@ _08129ABC:
_08129AC0:
pop {r0}
bx r0
- thumb_func_end sub_8129A84
+ thumb_func_end ContestAICmd_unk_3D
- thumb_func_start sub_8129AC4
-sub_8129AC4: @ 8129AC4
+ thumb_func_start ContestAICmd_unk_3E
+ContestAICmd_unk_3E: @ 8129AC4
push {lr}
- bl contest_ai_get_move_used_count
+ bl ContestAICmd_get_move_used_count
ldr r0, _08129AF4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2515,12 +2515,12 @@ _08129AFC:
_08129B00:
pop {r0}
bx r0
- thumb_func_end sub_8129AC4
+ thumb_func_end ContestAICmd_unk_3E
- thumb_func_start sub_8129B04
-sub_8129B04: @ 8129B04
+ thumb_func_start ContestAICmd_unk_3F
+ContestAICmd_unk_3F: @ 8129B04
push {lr}
- bl contest_ai_get_move_used_count
+ bl ContestAICmd_get_move_used_count
ldr r0, _08129B34 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2550,10 +2550,10 @@ _08129B3C:
_08129B40:
pop {r0}
bx r0
- thumb_func_end sub_8129B04
+ thumb_func_end ContestAICmd_unk_3F
- thumb_func_start contest_ai_check_combo_starter
-contest_ai_check_combo_starter: @ 8129B44
+ thumb_func_start ContestAICmd_check_combo_starter
+ContestAICmd_check_combo_starter: @ 8129B44
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -2613,12 +2613,12 @@ _08129B96:
_08129BAC: .4byte gContestMons
_08129BB0: .4byte 0x020192e4
_08129BB4: .4byte gAIScriptPtr
- thumb_func_end contest_ai_check_combo_starter
+ thumb_func_end ContestAICmd_check_combo_starter
- thumb_func_start sub_8129BB8
-sub_8129BB8: @ 8129BB8
+ thumb_func_start ContestAICmd_unk_41
+ContestAICmd_unk_41: @ 8129BB8
push {lr}
- bl contest_ai_check_combo_starter
+ bl ContestAICmd_check_combo_starter
ldr r0, _08129BE4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2651,12 +2651,12 @@ _08129BF4:
bx r0
.align 2, 0
_08129BF8: .4byte gAIScriptPtr
- thumb_func_end sub_8129BB8
+ thumb_func_end ContestAICmd_unk_41
- thumb_func_start sub_8129BFC
-sub_8129BFC: @ 8129BFC
+ thumb_func_start ContestAICmd_unk_42
+ContestAICmd_unk_42: @ 8129BFC
push {lr}
- bl contest_ai_check_combo_starter
+ bl ContestAICmd_check_combo_starter
ldr r0, _08129C28 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2689,10 +2689,10 @@ _08129C38:
bx r0
.align 2, 0
_08129C3C: .4byte gAIScriptPtr
- thumb_func_end sub_8129BFC
+ thumb_func_end ContestAICmd_unk_42
- thumb_func_start contest_ai_check_combo_finisher
-contest_ai_check_combo_finisher: @ 8129C40
+ thumb_func_start ContestAICmd_check_combo_finisher
+ContestAICmd_check_combo_finisher: @ 8129C40
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -2751,12 +2751,12 @@ _08129C90:
_08129CA8: .4byte gContestMons
_08129CAC: .4byte 0x020192e4
_08129CB0: .4byte gAIScriptPtr
- thumb_func_end contest_ai_check_combo_finisher
+ thumb_func_end ContestAICmd_check_combo_finisher
- thumb_func_start sub_8129CB4
-sub_8129CB4: @ 8129CB4
+ thumb_func_start ContestAICmd_unk_44
+ContestAICmd_unk_44: @ 8129CB4
push {lr}
- bl contest_ai_check_combo_finisher
+ bl ContestAICmd_check_combo_finisher
ldr r0, _08129CE0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2789,12 +2789,12 @@ _08129CF0:
bx r0
.align 2, 0
_08129CF4: .4byte gAIScriptPtr
- thumb_func_end sub_8129CB4
+ thumb_func_end ContestAICmd_unk_44
- thumb_func_start sub_8129CF8
-sub_8129CF8: @ 8129CF8
+ thumb_func_start ContestAICmd_unk_45
+ContestAICmd_unk_45: @ 8129CF8
push {lr}
- bl contest_ai_check_combo_finisher
+ bl ContestAICmd_check_combo_finisher
ldr r0, _08129D24 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2827,10 +2827,10 @@ _08129D34:
bx r0
.align 2, 0
_08129D38: .4byte gAIScriptPtr
- thumb_func_end sub_8129CF8
+ thumb_func_end ContestAICmd_unk_45
- thumb_func_start contest_ai_check_would_finish_combo
-contest_ai_check_would_finish_combo: @ 8129D3C
+ thumb_func_start ContestAICmd_check_would_finish_combo
+ContestAICmd_check_would_finish_combo: @ 8129D3C
push {r4,r5,lr}
movs r5, 0
ldr r3, _08129D8C @ =gContestMons
@@ -2875,12 +2875,12 @@ _08129D7A:
_08129D8C: .4byte gContestMons
_08129D90: .4byte 0x020192e4
_08129D94: .4byte gAIScriptPtr
- thumb_func_end contest_ai_check_would_finish_combo
+ thumb_func_end ContestAICmd_check_would_finish_combo
- thumb_func_start sub_8129D98
-sub_8129D98: @ 8129D98
+ thumb_func_start ContestAICmd_unk_47
+ContestAICmd_unk_47: @ 8129D98
push {lr}
- bl contest_ai_check_would_finish_combo
+ bl ContestAICmd_check_would_finish_combo
ldr r0, _08129DC4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2913,12 +2913,12 @@ _08129DD4:
bx r0
.align 2, 0
_08129DD8: .4byte gAIScriptPtr
- thumb_func_end sub_8129D98
+ thumb_func_end ContestAICmd_unk_47
- thumb_func_start sub_8129DDC
-sub_8129DDC: @ 8129DDC
+ thumb_func_start ContestAICmd_unk_48
+ContestAICmd_unk_48: @ 8129DDC
push {lr}
- bl contest_ai_check_would_finish_combo
+ bl ContestAICmd_check_would_finish_combo
ldr r0, _08129E08 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -2951,10 +2951,10 @@ _08129E18:
bx r0
.align 2, 0
_08129E1C: .4byte gAIScriptPtr
- thumb_func_end sub_8129DDC
+ thumb_func_end ContestAICmd_unk_48
- thumb_func_start contest_ai_get_condition
-contest_ai_get_condition: @ 8129E20
+ thumb_func_start ContestAICmd_get_condition
+ContestAICmd_get_condition: @ 8129E20
push {r4,r5,lr}
ldr r4, _08129E5C @ =gAIScriptPtr
ldr r0, [r4]
@@ -2985,12 +2985,12 @@ contest_ai_get_condition: @ 8129E20
.align 2, 0
_08129E5C: .4byte gAIScriptPtr
_08129E60: .4byte 0x020192e4
- thumb_func_end contest_ai_get_condition
+ thumb_func_end ContestAICmd_get_condition
- thumb_func_start sub_8129E64
-sub_8129E64: @ 8129E64
+ thumb_func_start ContestAICmd_unk_4A
+ContestAICmd_unk_4A: @ 8129E64
push {lr}
- bl contest_ai_get_condition
+ bl ContestAICmd_get_condition
ldr r0, _08129E94 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3020,12 +3020,12 @@ _08129E9C:
_08129EA0:
pop {r0}
bx r0
- thumb_func_end sub_8129E64
+ thumb_func_end ContestAICmd_unk_4A
- thumb_func_start sub_8129EA4
-sub_8129EA4: @ 8129EA4
+ thumb_func_start ContestAICmd_unk_4B
+ContestAICmd_unk_4B: @ 8129EA4
push {lr}
- bl contest_ai_get_condition
+ bl ContestAICmd_get_condition
ldr r0, _08129ED4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3055,12 +3055,12 @@ _08129EDC:
_08129EE0:
pop {r0}
bx r0
- thumb_func_end sub_8129EA4
+ thumb_func_end ContestAICmd_unk_4B
- thumb_func_start sub_8129EE4
-sub_8129EE4: @ 8129EE4
+ thumb_func_start ContestAICmd_unk_4C
+ContestAICmd_unk_4C: @ 8129EE4
push {lr}
- bl contest_ai_get_condition
+ bl ContestAICmd_get_condition
ldr r0, _08129F14 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3090,12 +3090,12 @@ _08129F1C:
_08129F20:
pop {r0}
bx r0
- thumb_func_end sub_8129EE4
+ thumb_func_end ContestAICmd_unk_4C
- thumb_func_start sub_8129F24
-sub_8129F24: @ 8129F24
+ thumb_func_start ContestAICmd_unk_4D
+ContestAICmd_unk_4D: @ 8129F24
push {lr}
- bl contest_ai_get_condition
+ bl ContestAICmd_get_condition
ldr r0, _08129F54 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3125,10 +3125,10 @@ _08129F5C:
_08129F60:
pop {r0}
bx r0
- thumb_func_end sub_8129F24
+ thumb_func_end ContestAICmd_unk_4D
- thumb_func_start contest_ai_get_used_combo_starter
-contest_ai_get_used_combo_starter: @ 8129F64
+ thumb_func_start ContestAICmd_get_used_combo_starter
+ContestAICmd_get_used_combo_starter: @ 8129F64
push {r4-r6,lr}
movs r6, 0
ldr r5, _08129FAC @ =gAIScriptPtr
@@ -3169,12 +3169,12 @@ _08129FAC: .4byte gAIScriptPtr
_08129FB0: .4byte gContestMoves
_08129FB4: .4byte 0x02019260
_08129FB8: .4byte 0x020192e4
- thumb_func_end contest_ai_get_used_combo_starter
+ thumb_func_end ContestAICmd_get_used_combo_starter
- thumb_func_start sub_8129FBC
-sub_8129FBC: @ 8129FBC
+ thumb_func_start ContestAICmd_unk_4F
+ContestAICmd_unk_4F: @ 8129FBC
push {lr}
- bl contest_ai_get_used_combo_starter
+ bl ContestAICmd_get_used_combo_starter
ldr r0, _08129FEC @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3204,12 +3204,12 @@ _08129FF4:
_08129FF8:
pop {r0}
bx r0
- thumb_func_end sub_8129FBC
+ thumb_func_end ContestAICmd_unk_4F
- thumb_func_start sub_8129FFC
-sub_8129FFC: @ 8129FFC
+ thumb_func_start ContestAICmd_unk_50
+ContestAICmd_unk_50: @ 8129FFC
push {lr}
- bl contest_ai_get_used_combo_starter
+ bl ContestAICmd_get_used_combo_starter
ldr r0, _0812A02C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3239,12 +3239,12 @@ _0812A034:
_0812A038:
pop {r0}
bx r0
- thumb_func_end sub_8129FFC
+ thumb_func_end ContestAICmd_unk_50
- thumb_func_start sub_812A03C
-sub_812A03C: @ 812A03C
+ thumb_func_start ContestAICmd_unk_51
+ContestAICmd_unk_51: @ 812A03C
push {lr}
- bl contest_ai_get_used_combo_starter
+ bl ContestAICmd_get_used_combo_starter
ldr r0, _0812A06C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3274,12 +3274,12 @@ _0812A074:
_0812A078:
pop {r0}
bx r0
- thumb_func_end sub_812A03C
+ thumb_func_end ContestAICmd_unk_51
- thumb_func_start sub_812A07C
-sub_812A07C: @ 812A07C
+ thumb_func_start ContestAICmd_unk_52
+ContestAICmd_unk_52: @ 812A07C
push {lr}
- bl contest_ai_get_used_combo_starter
+ bl ContestAICmd_get_used_combo_starter
ldr r0, _0812A0AC @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3309,10 +3309,10 @@ _0812A0B4:
_0812A0B8:
pop {r0}
bx r0
- thumb_func_end sub_812A07C
+ thumb_func_end ContestAICmd_unk_52
- thumb_func_start contest_ai_check_can_participate
-contest_ai_check_can_participate: @ 812A0BC
+ thumb_func_start ContestAICmd_check_can_participate
+ContestAICmd_check_can_participate: @ 812A0BC
push {lr}
ldr r0, _0812A0DC @ =gAIScriptPtr
ldr r0, [r0]
@@ -3344,12 +3344,12 @@ _0812A0E8:
.align 2, 0
_0812A0F8: .4byte 0x020192e4
_0812A0FC: .4byte gAIScriptPtr
- thumb_func_end contest_ai_check_can_participate
+ thumb_func_end ContestAICmd_check_can_participate
- thumb_func_start sub_812A100
-sub_812A100: @ 812A100
+ thumb_func_start ContestAICmd_unk_54
+ContestAICmd_unk_54: @ 812A100
push {lr}
- bl contest_ai_check_can_participate
+ bl ContestAICmd_check_can_participate
ldr r0, _0812A12C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3382,12 +3382,12 @@ _0812A13C:
bx r0
.align 2, 0
_0812A140: .4byte gAIScriptPtr
- thumb_func_end sub_812A100
+ thumb_func_end ContestAICmd_unk_54
- thumb_func_start sub_812A144
-sub_812A144: @ 812A144
+ thumb_func_start ContestAICmd_unk_55
+ContestAICmd_unk_55: @ 812A144
push {lr}
- bl contest_ai_check_can_participate
+ bl ContestAICmd_check_can_participate
ldr r0, _0812A170 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3420,10 +3420,10 @@ _0812A180:
bx r0
.align 2, 0
_0812A184: .4byte gAIScriptPtr
- thumb_func_end sub_812A144
+ thumb_func_end ContestAICmd_unk_55
- thumb_func_start contest_ai_get_val_812A188
-contest_ai_get_val_812A188: @ 812A188
+ thumb_func_start ContestAICmd_get_val_812A188
+ContestAICmd_get_val_812A188: @ 812A188
push {r4,lr}
ldr r4, _0812A1BC @ =gAIScriptPtr
ldr r0, [r4]
@@ -3451,12 +3451,12 @@ contest_ai_get_val_812A188: @ 812A188
.align 2, 0
_0812A1BC: .4byte gAIScriptPtr
_0812A1C0: .4byte 0x020192e4
- thumb_func_end contest_ai_get_val_812A188
+ thumb_func_end ContestAICmd_get_val_812A188
- thumb_func_start sub_812A1C4
-sub_812A1C4: @ 812A1C4
+ thumb_func_start ContestAICmd_unk_57
+ContestAICmd_unk_57: @ 812A1C4
push {lr}
- bl contest_ai_get_val_812A188
+ bl ContestAICmd_get_val_812A188
ldr r0, _0812A1F0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3489,12 +3489,12 @@ _0812A200:
bx r0
.align 2, 0
_0812A204: .4byte gAIScriptPtr
- thumb_func_end sub_812A1C4
+ thumb_func_end ContestAICmd_unk_57
- thumb_func_start sub_812A208
-sub_812A208: @ 812A208
+ thumb_func_start ContestAICmd_unk_58
+ContestAICmd_unk_58: @ 812A208
push {lr}
- bl contest_ai_get_val_812A188
+ bl ContestAICmd_get_val_812A188
ldr r0, _0812A234 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3527,10 +3527,10 @@ _0812A244:
bx r0
.align 2, 0
_0812A248: .4byte gAIScriptPtr
- thumb_func_end sub_812A208
+ thumb_func_end ContestAICmd_unk_58
- thumb_func_start sub_812A24C
-sub_812A24C: @ 812A24C
+ thumb_func_start ContestAICmd_unk_59
+ContestAICmd_unk_59: @ 812A24C
push {r4,r5,lr}
ldr r5, _0812A28C @ =gAIScriptPtr
ldr r0, [r5]
@@ -3565,12 +3565,12 @@ sub_812A24C: @ 812A24C
.align 2, 0
_0812A28C: .4byte gAIScriptPtr
_0812A290: .4byte 0x020192e4
- thumb_func_end sub_812A24C
+ thumb_func_end ContestAICmd_unk_59
- thumb_func_start sub_812A294
-sub_812A294: @ 812A294
+ thumb_func_start ContestAICmd_unk_5A
+ContestAICmd_unk_5A: @ 812A294
push {lr}
- bl sub_812A24C
+ bl ContestAICmd_unk_59
ldr r0, _0812A2C0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3603,12 +3603,12 @@ _0812A2D0:
bx r0
.align 2, 0
_0812A2D4: .4byte gAIScriptPtr
- thumb_func_end sub_812A294
+ thumb_func_end ContestAICmd_unk_5A
- thumb_func_start sub_812A2D8
-sub_812A2D8: @ 812A2D8
+ thumb_func_start ContestAICmd_unk_5B
+ContestAICmd_unk_5B: @ 812A2D8
push {lr}
- bl sub_812A24C
+ bl ContestAICmd_unk_59
ldr r0, _0812A304 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3641,12 +3641,12 @@ _0812A314:
bx r0
.align 2, 0
_0812A318: .4byte gAIScriptPtr
- thumb_func_end sub_812A2D8
+ thumb_func_end ContestAICmd_unk_5B
- thumb_func_start sub_812A31C
-sub_812A31C: @ 812A31C
+ thumb_func_start ContestAICmd_unk_5C
+ContestAICmd_unk_5C: @ 812A31C
push {lr}
- bl sub_812A24C
+ bl ContestAICmd_unk_59
ldr r0, _0812A348 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3679,12 +3679,12 @@ _0812A358:
bx r0
.align 2, 0
_0812A35C: .4byte gAIScriptPtr
- thumb_func_end sub_812A31C
+ thumb_func_end ContestAICmd_unk_5C
- thumb_func_start sub_812A360
-sub_812A360: @ 812A360
+ thumb_func_start ContestAICmd_unk_5D
+ContestAICmd_unk_5D: @ 812A360
push {lr}
- bl sub_812A24C
+ bl ContestAICmd_unk_59
ldr r0, _0812A38C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3717,10 +3717,10 @@ _0812A39C:
bx r0
.align 2, 0
_0812A3A0: .4byte gAIScriptPtr
- thumb_func_end sub_812A360
+ thumb_func_end ContestAICmd_unk_5D
- thumb_func_start sub_812A3A4
-sub_812A3A4: @ 812A3A4
+ thumb_func_start ContestAICmd_unk_5E
+ContestAICmd_unk_5E: @ 812A3A4
push {r4,lr}
ldr r4, _0812A3D8 @ =gAIScriptPtr
ldr r0, [r4]
@@ -3750,12 +3750,12 @@ sub_812A3A4: @ 812A3A4
_0812A3D8: .4byte gAIScriptPtr
_0812A3DC: .4byte 0x020192e4
_0812A3E0: .4byte gUnknown_02038670
- thumb_func_end sub_812A3A4
+ thumb_func_end ContestAICmd_unk_5E
- thumb_func_start sub_812A3E4
-sub_812A3E4: @ 812A3E4
+ thumb_func_start ContestAICmd_unk_5F
+ContestAICmd_unk_5F: @ 812A3E4
push {lr}
- bl sub_812A3A4
+ bl ContestAICmd_unk_5E
ldr r0, _0812A410 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3788,12 +3788,12 @@ _0812A420:
bx r0
.align 2, 0
_0812A424: .4byte gAIScriptPtr
- thumb_func_end sub_812A3E4
+ thumb_func_end ContestAICmd_unk_5F
- thumb_func_start sub_812A428
-sub_812A428: @ 812A428
+ thumb_func_start ContestAICmd_unk_60
+ContestAICmd_unk_60: @ 812A428
push {lr}
- bl sub_812A3A4
+ bl ContestAICmd_unk_5E
ldr r0, _0812A454 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3826,12 +3826,12 @@ _0812A464:
bx r0
.align 2, 0
_0812A468: .4byte gAIScriptPtr
- thumb_func_end sub_812A428
+ thumb_func_end ContestAICmd_unk_60
- thumb_func_start sub_812A46C
-sub_812A46C: @ 812A46C
+ thumb_func_start ContestAICmd_unk_61
+ContestAICmd_unk_61: @ 812A46C
push {lr}
- bl sub_812A3A4
+ bl ContestAICmd_unk_5E
ldr r0, _0812A498 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3864,12 +3864,12 @@ _0812A4A8:
bx r0
.align 2, 0
_0812A4AC: .4byte gAIScriptPtr
- thumb_func_end sub_812A46C
+ thumb_func_end ContestAICmd_unk_61
- thumb_func_start sub_812A4B0
-sub_812A4B0: @ 812A4B0
+ thumb_func_start ContestAICmd_unk_62
+ContestAICmd_unk_62: @ 812A4B0
push {lr}
- bl sub_812A3A4
+ bl ContestAICmd_unk_5E
ldr r0, _0812A4DC @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3902,10 +3902,10 @@ _0812A4EC:
bx r0
.align 2, 0
_0812A4F0: .4byte gAIScriptPtr
- thumb_func_end sub_812A4B0
+ thumb_func_end ContestAICmd_unk_62
- thumb_func_start sub_812A4F4
-sub_812A4F4: @ 812A4F4
+ thumb_func_start ContestAICmd_unk_63
+ContestAICmd_unk_63: @ 812A4F4
push {r4,lr}
ldr r4, _0812A52C @ =gAIScriptPtr
ldr r0, [r4]
@@ -3937,12 +3937,12 @@ sub_812A4F4: @ 812A4F4
_0812A52C: .4byte gAIScriptPtr
_0812A530: .4byte 0x02019204
_0812A534: .4byte gContestMoves
- thumb_func_end sub_812A4F4
+ thumb_func_end ContestAICmd_unk_63
- thumb_func_start sub_812A538
-sub_812A538: @ 812A538
+ thumb_func_start ContestAICmd_unk_64
+ContestAICmd_unk_64: @ 812A538
push {lr}
- bl sub_812A4F4
+ bl ContestAICmd_unk_63
ldr r0, _0812A568 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -3972,12 +3972,12 @@ _0812A570:
_0812A574:
pop {r0}
bx r0
- thumb_func_end sub_812A538
+ thumb_func_end ContestAICmd_unk_64
- thumb_func_start sub_812A578
-sub_812A578: @ 812A578
+ thumb_func_start ContestAICmd_unk_65
+ContestAICmd_unk_65: @ 812A578
push {lr}
- bl sub_812A4F4
+ bl ContestAICmd_unk_63
ldr r0, _0812A5A8 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4007,12 +4007,12 @@ _0812A5B0:
_0812A5B4:
pop {r0}
bx r0
- thumb_func_end sub_812A578
+ thumb_func_end ContestAICmd_unk_65
- thumb_func_start sub_812A5B8
-sub_812A5B8: @ 812A5B8
+ thumb_func_start ContestAICmd_unk_66
+ContestAICmd_unk_66: @ 812A5B8
push {lr}
- bl sub_812A4F4
+ bl ContestAICmd_unk_63
ldr r0, _0812A5E8 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4042,12 +4042,12 @@ _0812A5F0:
_0812A5F4:
pop {r0}
bx r0
- thumb_func_end sub_812A5B8
+ thumb_func_end ContestAICmd_unk_66
- thumb_func_start sub_812A5F8
-sub_812A5F8: @ 812A5F8
+ thumb_func_start ContestAICmd_unk_67
+ContestAICmd_unk_67: @ 812A5F8
push {lr}
- bl sub_812A4F4
+ bl ContestAICmd_unk_63
ldr r0, _0812A628 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4077,10 +4077,10 @@ _0812A630:
_0812A634:
pop {r0}
bx r0
- thumb_func_end sub_812A5F8
+ thumb_func_end ContestAICmd_unk_67
- thumb_func_start sub_812A638
-sub_812A638: @ 812A638
+ thumb_func_start ContestAICmd_unk_68
+ContestAICmd_unk_68: @ 812A638
push {r4,lr}
ldr r4, _0812A66C @ =gAIScriptPtr
ldr r0, [r4]
@@ -4109,12 +4109,12 @@ sub_812A638: @ 812A638
.align 2, 0
_0812A66C: .4byte gAIScriptPtr
_0812A670: .4byte 0x02019204
- thumb_func_end sub_812A638
+ thumb_func_end ContestAICmd_unk_68
- thumb_func_start sub_812A674
-sub_812A674: @ 812A674
+ thumb_func_start ContestAICmd_unk_69
+ContestAICmd_unk_69: @ 812A674
push {lr}
- bl sub_812A638
+ bl ContestAICmd_unk_68
ldr r0, _0812A6A4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4144,12 +4144,12 @@ _0812A6AC:
_0812A6B0:
pop {r0}
bx r0
- thumb_func_end sub_812A674
+ thumb_func_end ContestAICmd_unk_69
- thumb_func_start sub_812A6B4
-sub_812A6B4: @ 812A6B4
+ thumb_func_start ContestAICmd_unk_6A
+ContestAICmd_unk_6A: @ 812A6B4
push {lr}
- bl sub_812A638
+ bl ContestAICmd_unk_68
ldr r0, _0812A6E4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4179,12 +4179,12 @@ _0812A6EC:
_0812A6F0:
pop {r0}
bx r0
- thumb_func_end sub_812A6B4
+ thumb_func_end ContestAICmd_unk_6A
- thumb_func_start sub_812A6F4
-sub_812A6F4: @ 812A6F4
+ thumb_func_start ContestAICmd_unk_6B
+ContestAICmd_unk_6B: @ 812A6F4
push {lr}
- bl sub_812A638
+ bl ContestAICmd_unk_68
ldr r0, _0812A724 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4214,12 +4214,12 @@ _0812A72C:
_0812A730:
pop {r0}
bx r0
- thumb_func_end sub_812A6F4
+ thumb_func_end ContestAICmd_unk_6B
- thumb_func_start sub_812A734
-sub_812A734: @ 812A734
+ thumb_func_start ContestAICmd_unk_6C
+ContestAICmd_unk_6C: @ 812A734
push {lr}
- bl sub_812A638
+ bl ContestAICmd_unk_68
ldr r0, _0812A764 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4249,10 +4249,10 @@ _0812A76C:
_0812A770:
pop {r0}
bx r0
- thumb_func_end sub_812A734
+ thumb_func_end ContestAICmd_unk_6C
- thumb_func_start sub_812A774
-sub_812A774: @ 812A774
+ thumb_func_start ContestAICmd_unk_6D
+ContestAICmd_unk_6D: @ 812A774
push {r4,r5,lr}
ldr r5, _0812A7B4 @ =gAIScriptPtr
ldr r0, [r5]
@@ -4289,12 +4289,12 @@ _0812A7B4: .4byte gAIScriptPtr
_0812A7B8: .4byte 0x02019204
_0812A7BC: .4byte gContestEffects
_0812A7C0: .4byte gContestMoves
- thumb_func_end sub_812A774
+ thumb_func_end ContestAICmd_unk_6D
- thumb_func_start sub_812A7C4
-sub_812A7C4: @ 812A7C4
+ thumb_func_start ContestAICmd_unk_6E
+ContestAICmd_unk_6E: @ 812A7C4
push {lr}
- bl sub_812A774
+ bl ContestAICmd_unk_6D
ldr r0, _0812A7F4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4324,12 +4324,12 @@ _0812A7FC:
_0812A800:
pop {r0}
bx r0
- thumb_func_end sub_812A7C4
+ thumb_func_end ContestAICmd_unk_6E
- thumb_func_start sub_812A804
-sub_812A804: @ 812A804
+ thumb_func_start ContestAICmd_unk_6F
+ContestAICmd_unk_6F: @ 812A804
push {lr}
- bl sub_812A774
+ bl ContestAICmd_unk_6D
ldr r0, _0812A834 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -4359,10 +4359,10 @@ _0812A83C:
_0812A840:
pop {r0}
bx r0
- thumb_func_end sub_812A804
+ thumb_func_end ContestAICmd_unk_6F
- thumb_func_start sub_812A844
-sub_812A844: @ 812A844
+ thumb_func_start ContestAICmd_unk_70
+ContestAICmd_unk_70: @ 812A844
push {r4,lr}
ldr r3, _0812A864 @ =0x020192e4
ldr r4, _0812A868 @ =gAIScriptPtr
@@ -4382,10 +4382,10 @@ sub_812A844: @ 812A844
.align 2, 0
_0812A864: .4byte 0x020192e4
_0812A868: .4byte gAIScriptPtr
- thumb_func_end sub_812A844
+ thumb_func_end ContestAICmd_unk_70
- thumb_func_start sub_812A86C
-sub_812A86C: @ 812A86C
+ thumb_func_start ContestAICmd_unk_71
+ContestAICmd_unk_71: @ 812A86C
push {r4,lr}
ldr r0, _0812A890 @ =0x020192e4
ldr r4, _0812A894 @ =gAIScriptPtr
@@ -4407,10 +4407,10 @@ sub_812A86C: @ 812A86C
.align 2, 0
_0812A890: .4byte 0x020192e4
_0812A894: .4byte gAIScriptPtr
- thumb_func_end sub_812A86C
+ thumb_func_end ContestAICmd_unk_71
- thumb_func_start sub_812A898
-sub_812A898: @ 812A898
+ thumb_func_start ContestAICmd_unk_72
+ContestAICmd_unk_72: @ 812A898
push {r4,lr}
ldr r0, _0812A8C4 @ =0x020192e4
ldr r4, _0812A8C8 @ =gAIScriptPtr
@@ -4435,10 +4435,10 @@ sub_812A898: @ 812A898
.align 2, 0
_0812A8C4: .4byte 0x020192e4
_0812A8C8: .4byte gAIScriptPtr
- thumb_func_end sub_812A898
+ thumb_func_end ContestAICmd_unk_72
- thumb_func_start sub_812A8CC
-sub_812A8CC: @ 812A8CC
+ thumb_func_start ContestAICmd_unk_73
+ContestAICmd_unk_73: @ 812A8CC
push {r4,lr}
ldr r2, _0812A8F4 @ =0x020192e4
ldr r4, _0812A8F8 @ =gAIScriptPtr
@@ -4462,10 +4462,10 @@ sub_812A8CC: @ 812A8CC
.align 2, 0
_0812A8F4: .4byte 0x020192e4
_0812A8F8: .4byte gAIScriptPtr
- thumb_func_end sub_812A8CC
+ thumb_func_end ContestAICmd_unk_73
- thumb_func_start sub_812A8FC
-sub_812A8FC: @ 812A8FC
+ thumb_func_start ContestAICmd_unk_74
+ContestAICmd_unk_74: @ 812A8FC
push {r4,lr}
ldr r2, _0812A924 @ =0x020192e4
ldr r4, _0812A928 @ =gAIScriptPtr
@@ -4489,10 +4489,10 @@ sub_812A8FC: @ 812A8FC
.align 2, 0
_0812A924: .4byte 0x020192e4
_0812A928: .4byte gAIScriptPtr
- thumb_func_end sub_812A8FC
+ thumb_func_end ContestAICmd_unk_74
- thumb_func_start sub_812A92C
-sub_812A92C: @ 812A92C
+ thumb_func_start ContestAICmd_unk_75
+ContestAICmd_unk_75: @ 812A92C
push {r4,lr}
ldr r1, _0812A964 @ =0x020192e4
ldr r4, _0812A968 @ =gAIScriptPtr
@@ -4532,10 +4532,10 @@ _0812A972:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812A92C
+ thumb_func_end ContestAICmd_unk_75
- thumb_func_start sub_812A978
-sub_812A978: @ 812A978
+ thumb_func_start ContestAICmd_unk_76
+ContestAICmd_unk_76: @ 812A978
push {r4,lr}
ldr r1, _0812A9B0 @ =0x020192e4
ldr r4, _0812A9B4 @ =gAIScriptPtr
@@ -4575,10 +4575,10 @@ _0812A9BE:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812A978
+ thumb_func_end ContestAICmd_unk_76
- thumb_func_start sub_812A9C4
-sub_812A9C4: @ 812A9C4
+ thumb_func_start ContestAICmd_unk_77
+ContestAICmd_unk_77: @ 812A9C4
push {r4,lr}
ldr r1, _0812A9FC @ =0x020192e4
ldr r4, _0812AA00 @ =gAIScriptPtr
@@ -4618,10 +4618,10 @@ _0812AA0A:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812A9C4
+ thumb_func_end ContestAICmd_unk_77
- thumb_func_start sub_812AA10
-sub_812AA10: @ 812AA10
+ thumb_func_start ContestAICmd_unk_78
+ContestAICmd_unk_78: @ 812AA10
push {r4,lr}
ldr r1, _0812AA48 @ =0x020192e4
ldr r4, _0812AA4C @ =gAIScriptPtr
@@ -4661,10 +4661,10 @@ _0812AA56:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812AA10
+ thumb_func_end ContestAICmd_unk_78
- thumb_func_start sub_812AA5C
-sub_812AA5C: @ 812AA5C
+ thumb_func_start ContestAICmd_unk_79
+ContestAICmd_unk_79: @ 812AA5C
push {r4,lr}
ldr r2, _0812AA98 @ =0x020192e4
ldr r4, _0812AA9C @ =gAIScriptPtr
@@ -4704,10 +4704,10 @@ _0812AAA4:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812AA5C
+ thumb_func_end ContestAICmd_unk_79
- thumb_func_start sub_812AAAC
-sub_812AAAC: @ 812AAAC
+ thumb_func_start ContestAICmd_unk_7A
+ContestAICmd_unk_7A: @ 812AAAC
push {r4,lr}
ldr r2, _0812AAE8 @ =0x020192e4
ldr r4, _0812AAEC @ =gAIScriptPtr
@@ -4747,10 +4747,10 @@ _0812AAF4:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812AAAC
+ thumb_func_end ContestAICmd_unk_7A
- thumb_func_start sub_812AAFC
-sub_812AAFC: @ 812AAFC
+ thumb_func_start ContestAICmd_unk_7B
+ContestAICmd_unk_7B: @ 812AAFC
push {r4,lr}
ldr r2, _0812AB38 @ =0x020192e4
ldr r4, _0812AB3C @ =gAIScriptPtr
@@ -4790,10 +4790,10 @@ _0812AB44:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812AAFC
+ thumb_func_end ContestAICmd_unk_7B
- thumb_func_start sub_812AB4C
-sub_812AB4C: @ 812AB4C
+ thumb_func_start ContestAICmd_unk_7C
+ContestAICmd_unk_7C: @ 812AB4C
push {r4,lr}
ldr r2, _0812AB88 @ =0x020192e4
ldr r4, _0812AB8C @ =gAIScriptPtr
@@ -4833,10 +4833,10 @@ _0812AB94:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812AB4C
+ thumb_func_end ContestAICmd_unk_7C
- thumb_func_start sub_812AB9C
-sub_812AB9C: @ 812AB9C
+ thumb_func_start ContestAICmd_unk_7D
+ContestAICmd_unk_7D: @ 812AB9C
push {r4,lr}
bl Random
movs r2, 0xFF
@@ -4874,10 +4874,10 @@ _0812ABE0:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812AB9C
+ thumb_func_end ContestAICmd_unk_7D
- thumb_func_start sub_812ABE8
-sub_812ABE8: @ 812ABE8
+ thumb_func_start ContestAICmd_unk_7E
+ContestAICmd_unk_7E: @ 812ABE8
push {r4,lr}
bl Random
movs r2, 0xFF
@@ -4915,10 +4915,10 @@ _0812AC2C:
pop {r4}
pop {r0}
bx r0
- thumb_func_end sub_812ABE8
+ thumb_func_end ContestAICmd_unk_7E
- thumb_func_start sub_812AC34
-sub_812AC34: @ 812AC34
+ thumb_func_start ContestAICmd_unk_7F
+ContestAICmd_unk_7F: @ 812AC34
ldr r3, _0812AC50 @ =gAIScriptPtr
ldr r2, [r3]
ldrb r1, [r2, 0x1]
@@ -4935,10 +4935,10 @@ sub_812AC34: @ 812AC34
bx lr
.align 2, 0
_0812AC50: .4byte gAIScriptPtr
- thumb_func_end sub_812AC34
+ thumb_func_end ContestAICmd_unk_7F
- thumb_func_start sub_812AC54
-sub_812AC54: @ 812AC54
+ thumb_func_start ContestAICmd_unk_80
+ContestAICmd_unk_80: @ 812AC54
push {r4,lr}
ldr r4, _0812AC80 @ =gAIScriptPtr
ldr r0, [r4]
@@ -4961,10 +4961,10 @@ sub_812AC54: @ 812AC54
bx r0
.align 2, 0
_0812AC80: .4byte gAIScriptPtr
- thumb_func_end sub_812AC54
+ thumb_func_end ContestAICmd_unk_80
- thumb_func_start sub_812AC84
-sub_812AC84: @ 812AC84
+ thumb_func_start ContestAICmd_unk_81
+ContestAICmd_unk_81: @ 812AC84
push {lr}
bl sub_812ACC8
lsls r0, 24
@@ -4980,7 +4980,7 @@ _0812AC9A:
bx r0
.align 2, 0
_0812ACA0: .4byte 0x020192e4
- thumb_func_end sub_812AC84
+ thumb_func_end ContestAICmd_unk_81
thumb_func_start sub_812ACA4
sub_812ACA4: @ 812ACA4
@@ -5034,8 +5034,8 @@ _0812ACF4:
_0812ACF8: .4byte gAIScriptPtr
thumb_func_end sub_812ACC8
- thumb_func_start contest_ai_check_for_exciting_move
-contest_ai_check_for_exciting_move: @ 812ACFC
+ thumb_func_start ContestAICmd_check_for_exciting_move
+ContestAICmd_check_for_exciting_move: @ 812ACFC
push {r4-r7,lr}
movs r5, 0
movs r4, 0
@@ -5077,12 +5077,12 @@ _0812AD36:
.align 2, 0
_0812AD48: .4byte 0x020192e4
_0812AD4C: .4byte gAIScriptPtr
- thumb_func_end contest_ai_check_for_exciting_move
+ thumb_func_end ContestAICmd_check_for_exciting_move
- thumb_func_start sub_812AD50
-sub_812AD50: @ 812AD50
+ thumb_func_start ContestAICmd_unk_83
+ContestAICmd_unk_83: @ 812AD50
push {lr}
- bl contest_ai_check_for_exciting_move
+ bl ContestAICmd_check_for_exciting_move
ldr r0, _0812AD7C @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -5115,12 +5115,12 @@ _0812AD8C:
bx r0
.align 2, 0
_0812AD90: .4byte gAIScriptPtr
- thumb_func_end sub_812AD50
+ thumb_func_end ContestAICmd_unk_83
- thumb_func_start sub_812AD94
-sub_812AD94: @ 812AD94
+ thumb_func_start ContestAICmd_unk_84
+ContestAICmd_unk_84: @ 812AD94
push {lr}
- bl contest_ai_check_for_exciting_move
+ bl ContestAICmd_check_for_exciting_move
ldr r0, _0812ADC0 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -5153,10 +5153,10 @@ _0812ADD0:
bx r0
.align 2, 0
_0812ADD4: .4byte gAIScriptPtr
- thumb_func_end sub_812AD94
+ thumb_func_end ContestAICmd_unk_84
- thumb_func_start sub_812ADD8
-sub_812ADD8: @ 812ADD8
+ thumb_func_start ContestAICmd_unk_85
+ContestAICmd_unk_85: @ 812ADD8
push {r4-r7,lr}
movs r6, 0
ldr r2, _0812AE08 @ =gAIScriptPtr
@@ -5212,12 +5212,12 @@ _0812AE34:
pop {r4-r7}
pop {r0}
bx r0
- thumb_func_end sub_812ADD8
+ thumb_func_end ContestAICmd_unk_85
- thumb_func_start sub_812AE44
-sub_812AE44: @ 812AE44
+ thumb_func_start ContestAICmd_unk_86
+ContestAICmd_unk_86: @ 812AE44
push {lr}
- bl sub_812ADD8
+ bl ContestAICmd_unk_85
ldr r0, _0812AE70 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -5250,12 +5250,12 @@ _0812AE80:
bx r0
.align 2, 0
_0812AE84: .4byte gAIScriptPtr
- thumb_func_end sub_812AE44
+ thumb_func_end ContestAICmd_unk_86
- thumb_func_start sub_812AE88
-sub_812AE88: @ 812AE88
+ thumb_func_start ContestAICmd_unk_87
+ContestAICmd_unk_87: @ 812AE88
push {lr}
- bl sub_812ADD8
+ bl ContestAICmd_unk_85
ldr r0, _0812AEB4 @ =0x020192e4
movs r1, 0x18
ldrsh r0, [r0, r1]
@@ -5288,6 +5288,6 @@ _0812AEC4:
bx r0
.align 2, 0
_0812AEC8: .4byte gAIScriptPtr
- thumb_func_end sub_812AE88
+ thumb_func_end ContestAICmd_unk_87
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/credits.s b/asm/credits.s
deleted file mode 100644
index 860015e46..000000000
--- a/asm/credits.s
+++ /dev/null
@@ -1,2713 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start task_d_8144514
-task_d_8144514: @ 8144514
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r6, _08144548 @ =0x0201c000
- ldr r3, _0814454C @ =gTasks
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- adds r2, r0, r3
- movs r1, 0x8
- ldrsh r0, [r2, r1]
- cmp r0, 0x1
- beq _08144550
- cmp r0, 0x1
- bgt _0814453C
- b _08144658
-_0814453C:
- cmp r0, 0x2
- beq _08144584
- cmp r0, 0x3
- bne _08144546
- b _08144644
-_08144546:
- b _08144658
- .align 2, 0
-_08144548: .4byte 0x0201c000
-_0814454C: .4byte gTasks
-_08144550:
- adds r0, r6, 0
- adds r0, 0x8A
- ldrh r0, [r0]
- cmp r0, 0
- bne _0814456E
- movs r4, 0xA
- ldrsh r0, [r2, r4]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r3
- movs r4, 0x24
- ldrsh r0, [r1, r4]
- cmp r0, 0
- beq _08144658
-_0814456E:
- movs r0, 0xA
- ldrsh r1, [r2, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- movs r1, 0
- strh r1, [r0, 0x24]
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- b _08144656
-_08144584:
- adds r0, r6, 0
- adds r0, 0x88
- ldrh r1, [r0]
- mov r9, r0
- cmp r1, 0x44
- beq _08144658
- movs r4, 0xA
- ldrsh r1, [r2, r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- ldr r1, [r0]
- ldr r0, _081445EC @ =sub_8143B68
- cmp r1, r0
- bne _08144658
- adds r7, r6, 0
- adds r7, 0x8C
- ldrh r0, [r7]
- lsls r0, 1
- adds r0, r6
- ldrh r0, [r0]
- ldr r4, _081445F0 @ =gUnknown_0840CA00
- adds r5, r6, 0
- adds r5, 0x8A
- ldrh r3, [r5]
- lsls r2, r3, 1
- adds r1, r2, r4
- ldrb r1, [r1]
- adds r4, 0x1
- adds r2, r4
- ldrb r2, [r2]
- bl sub_81456B4
- lsls r0, 24
- lsrs r2, r0, 24
- ldrh r1, [r7]
- adds r0, r6, 0
- adds r0, 0x8E
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r1, r0
- bge _081445F8
- adds r0, r1, 0x1
- strh r0, [r7]
- ldr r1, _081445F4 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- movs r1, 0x32
- b _0814460A
- .align 2, 0
-_081445EC: .4byte task_a_8143B68
-_081445F0: .4byte gUnknown_0840CA00
-_081445F4: .4byte gSprites
-_081445F8:
- movs r0, 0
- strh r0, [r7]
- ldr r1, _08144620 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- movs r1, 0x80
- lsls r1, 2
-_0814460A:
- strh r1, [r0, 0x34]
- mov r1, r9
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- ldrh r0, [r5]
- cmp r0, 0x2
- bne _08144624
- movs r0, 0
- b _08144626
- .align 2, 0
-_08144620: .4byte gSprites
-_08144624:
- adds r0, 0x1
-_08144626:
- strh r0, [r5]
- ldr r0, _08144640 @ =gTasks
- mov r2, r8
- lsls r1, r2, 2
- add r1, r8
- lsls r1, 3
- adds r1, r0
- movs r0, 0x32
- strh r0, [r1, 0xE]
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _08144658
- .align 2, 0
-_08144640: .4byte gTasks
-_08144644:
- ldrh r1, [r2, 0xE]
- movs r3, 0xE
- ldrsh r0, [r2, r3]
- cmp r0, 0
- beq _08144654
- subs r0, r1, 0x1
- strh r0, [r2, 0xE]
- b _08144658
-_08144654:
- movs r0, 0x1
-_08144656:
- strh r0, [r2, 0x8]
-_08144658:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end task_d_8144514
-
- thumb_func_start sub_8144664
-sub_8144664: @ 8144664
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, _0814468C @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0x8
- ldrsh r0, [r0, r2]
- adds r6, r1, 0
- cmp r0, 0x32
- bls _08144680
- b _0814492C
-_08144680:
- lsls r0, 2
- ldr r1, _08144690 @ =_08144694
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0814468C: .4byte gTasks
-_08144690: .4byte _08144694
- .align 2, 0
-_08144694:
- .4byte _08144760
- .4byte _08144784
- .4byte _081447D8
- .4byte _081447F0
- .4byte _0814482C
- .4byte _08144850
- .4byte _0814489C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _081448A8
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _081448C8
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _081448EC
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _0814492C
- .4byte _08144920
-_08144760:
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r6
- ldrh r0, [r4, 0x12]
- lsls r0, 16
- asrs r0, 17
- movs r1, 0x7F
- ands r0, r1
- movs r1, 0xC
- bl Sin
- ldr r1, _08144780 @ =gUnknown_0203935A
- strh r0, [r1]
- b _081447A8
- .align 2, 0
-_08144780: .4byte gUnknown_0203935A
-_08144784:
- ldr r7, _081447B0 @ =gUnknown_0203935A
- movs r3, 0
- ldrsh r4, [r7, r3]
- cmp r4, 0
- beq _081447B4
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r6
- ldrh r0, [r4, 0x12]
- lsls r0, 16
- asrs r0, 17
- movs r1, 0x7F
- ands r0, r1
- movs r1, 0xC
- bl Sin
- strh r0, [r7]
-_081447A8:
- ldrh r0, [r4, 0x12]
- adds r0, 0x1
- strh r0, [r4, 0x12]
- b _0814492C
- .align 2, 0
-_081447B0: .4byte gUnknown_0203935A
-_081447B4:
- ldr r3, _081447D4 @ =gSprites
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r6
- movs r0, 0xC
- ldrsh r2, [r1, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- movs r2, 0x2
- strh r2, [r0, 0x2E]
- strh r4, [r1, 0x12]
- b _08144848
- .align 2, 0
-_081447D4: .4byte gSprites
-_081447D8:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r1, r0, r6
- ldrh r2, [r1, 0x12]
- movs r3, 0x12
- ldrsh r0, [r1, r3]
- cmp r0, 0x3F
- bgt _08144848
- adds r0, r2, 0x1
- strh r0, [r1, 0x12]
- b _08144866
-_081447F0:
- ldr r3, _08144828 @ =gSprites
- lsls r2, r5, 2
- adds r2, r5
- lsls r2, 3
- adds r2, r6
- movs r0, 0xC
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0x3
- strh r1, [r0, 0x2E]
- movs r0, 0xE
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0x1
- strh r1, [r0, 0x2E]
- movs r0, 0x78
- strh r0, [r2, 0x10]
- ldrh r0, [r2, 0x8]
- adds r0, 0x1
- strh r0, [r2, 0x8]
- b _0814492C
- .align 2, 0
-_08144828: .4byte gSprites
-_0814482C:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r1, r0, r6
- ldrh r2, [r1, 0x10]
- movs r3, 0x10
- ldrsh r0, [r1, r3]
- cmp r0, 0
- beq _08144844
- subs r0, r2, 0x1
- strh r0, [r1, 0x10]
- b _0814492C
-_08144844:
- movs r0, 0x40
- strh r0, [r1, 0x12]
-_08144848:
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- b _0814492C
-_08144850:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r6
- ldrh r1, [r4, 0x12]
- movs r2, 0x12
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _0814487C
- subs r0, r1, 0x1
- strh r0, [r4, 0x12]
-_08144866:
- movs r1, 0x7F
- ands r0, r1
- movs r1, 0x14
- bl Sin
- ldr r1, _08144878 @ =gUnknown_0203935A
- strh r0, [r1]
- b _0814492C
- .align 2, 0
-_08144878: .4byte gUnknown_0203935A
-_0814487C:
- ldr r2, _08144898 @ =gSprites
- movs r3, 0xC
- ldrsh r1, [r4, r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x1
- strh r1, [r0, 0x2E]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0814492C
- .align 2, 0
-_08144898: .4byte gSprites
-_0814489C:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r6
- movs r1, 0x32
- b _0814492A
-_081448A8:
- ldr r3, _081448C4 @ =gSprites
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r6
- movs r0, 0xE
- ldrsh r2, [r1, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- movs r2, 0x2
- b _081448E0
- .align 2, 0
-_081448C4: .4byte gSprites
-_081448C8:
- ldr r3, _081448E8 @ =gSprites
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r6
- movs r0, 0xC
- ldrsh r2, [r1, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r3
- movs r2, 0x4
-_081448E0:
- strh r2, [r0, 0x2E]
- movs r0, 0x32
- strh r0, [r1, 0x8]
- b _0814492C
- .align 2, 0
-_081448E8: .4byte gSprites
-_081448EC:
- ldr r3, _0814491C @ =gSprites
- lsls r2, r5, 2
- adds r2, r5
- lsls r2, 3
- adds r2, r6
- movs r0, 0xC
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0x5
- strh r1, [r0, 0x2E]
- movs r0, 0xE
- ldrsh r1, [r2, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0x3
- strh r1, [r0, 0x2E]
- movs r0, 0x32
- strh r0, [r2, 0x8]
- b _0814492C
- .align 2, 0
-_0814491C: .4byte gSprites
-_08144920:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r6
- movs r1, 0
-_0814492A:
- strh r1, [r0, 0x8]
-_0814492C:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8144664
-
- thumb_func_start sub_8144934
-sub_8144934: @ 8144934
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, _08144958 @ =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- movs r3, 0x8
- ldrsh r0, [r0, r3]
- adds r4, r1, 0
- cmp r0, 0x4
- bhi _08144974
- lsls r0, 2
- ldr r1, _0814495C @ =_08144960
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08144958: .4byte gTasks
-_0814495C: .4byte _08144960
- .align 2, 0
-_08144960:
- .4byte _08144974
- .4byte _081449B8
- .4byte _081449C4
- .4byte _08144A0C
- .4byte _08144A5C
-_08144974:
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r2, r0, r4
- movs r1, 0xA
- ldrsh r0, [r2, r1]
- ldr r5, _081449C0 @ =0x00007fff
- cmp r0, r5
- beq _081449B8
- movs r3, 0xC
- ldrsh r1, [r2, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r3, r0, r4
- movs r0, 0x26
- ldrsh r1, [r3, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r1, 0xC
- ldrsh r0, [r0, r1]
- cmp r0, 0x2
- bne _081449B8
- movs r1, 0xA
- ldrsh r0, [r3, r1]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r4
- movs r0, 0x14
- strh r0, [r1, 0x8]
- strh r5, [r2, 0xA]
-_081449B8:
- movs r0, 0
- bl sub_8149020
- b _08144A62
- .align 2, 0
-_081449C0: .4byte 0x00007fff
-_081449C4:
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r2, r0, r4
- movs r3, 0xA
- ldrsh r0, [r2, r3]
- ldr r5, _08144A08 @ =0x00007fff
- cmp r0, r5
- beq _08144A54
- movs r0, 0xC
- ldrsh r1, [r2, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r3, 0xA
- ldrsh r1, [r0, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r3, r0, r4
- ldrh r1, [r3, 0x12]
- movs r0, 0x80
- negs r0, r0
- ands r0, r1
- movs r1, 0xA0
- lsls r1, 2
- cmp r0, r1
- bne _08144A54
- movs r0, 0x1
- strh r0, [r3, 0x8]
- strh r5, [r2, 0xA]
- b _08144A54
- .align 2, 0
-_08144A08: .4byte 0x00007fff
-_08144A0C:
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r2, r0, r4
- ldrh r3, [r2, 0xA]
- movs r0, 0xA
- ldrsh r1, [r2, r0]
- ldr r5, _08144A48 @ =0x00007fff
- cmp r1, r5
- beq _08144A54
- ldr r0, _08144A4C @ =0x000001f3
- cmp r1, r0
- bne _08144A50
- movs r3, 0xC
- ldrsh r1, [r2, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r3, 0xA
- ldrsh r1, [r0, r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r4
- movs r1, 0xA
- strh r1, [r0, 0x8]
- strh r5, [r2, 0xA]
- b _08144A54
- .align 2, 0
-_08144A48: .4byte 0x00007fff
-_08144A4C: .4byte 0x000001f3
-_08144A50:
- adds r0, r3, 0x1
- strh r0, [r2, 0xA]
-_08144A54:
- movs r0, 0x1
- bl sub_8149020
- b _08144A62
-_08144A5C:
- movs r0, 0x2
- bl sub_8149020
-_08144A62:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8144934
-
- thumb_func_start sub_8144A68
-sub_8144A68: @ 8144A68
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r7, r1, 24
- cmp r0, 0x4
- bls _08144A7E
- b _08144DFC
-_08144A7E:
- lsls r0, 2
- ldr r1, _08144A88 @ =_08144A8C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08144A88: .4byte _08144A8C
- .align 2, 0
-_08144A8C:
- .4byte _08144AA0
- .4byte _08144B48
- .4byte _08144BF4
- .4byte _08144CA0
- .4byte _08144D50
-_08144AA0:
- ldr r5, _08144B40 @ =gSprites
- ldr r0, _08144B44 @ =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r2, 0x88
- lsls r2, 1
- strh r2, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r0, 0
- movs r2, 0x20
- b _08144DF0
- .align 2, 0
-_08144B40: .4byte gSprites
-_08144B44: .4byte gTasks
-_08144B48:
- ldr r5, _08144BEC @ =gSprites
- ldr r0, _08144BF0 @ =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r1, 0x78
- strh r1, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x88
- lsls r1, 1
- strh r1, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r0, 0
- movs r2, 0x20
- b _08144DF0
- .align 2, 0
-_08144BEC: .4byte gSprites
-_08144BF0: .4byte gTasks
-_08144BF4:
- ldr r5, _08144C98 @ =gSprites
- ldr r0, _08144C9C @ =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r1, 0x78
- strh r1, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x88
- lsls r1, 1
- strh r1, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r2, 0x80
- lsls r2, 2
- movs r0, 0x1
- b _08144DF0
- .align 2, 0
-_08144C98: .4byte gSprites
-_08144C9C: .4byte gTasks
-_08144CA0:
- ldr r5, _08144D44 @ =gSprites
- ldr r0, _08144D48 @ =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r1, 0x78
- strh r1, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldr r1, _08144D4C @ =0x0000ffe0
- strh r1, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r2, 0x80
- lsls r2, 2
- movs r0, 0x1
- b _08144DF0
- .align 2, 0
-_08144D44: .4byte gSprites
-_08144D48: .4byte gTasks
-_08144D4C: .4byte 0x0000ffe0
-_08144D50:
- ldr r5, _08144EBC @ =gSprites
- ldr r0, _08144EC0 @ =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r3, 0
- movs r1, 0x58
- strh r1, [r0, 0x20]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x98
- strh r1, [r0, 0x20]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r2, 0x2E
- strh r2, [r0, 0x22]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x22]
- movs r0, 0x12
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r0, 0x14
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r3, [r0, 0x2E]
- movs r1, 0x80
- lsls r1, 6
- movs r2, 0x80
- lsls r2, 2
- movs r0, 0x2
-_08144DF0:
- movs r3, 0x8
- bl sub_8148EC0
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x8]
-_08144DFC:
- ldr r0, _08144EC4 @ =sub_8144934
- movs r1, 0
- bl CreateTask
- ldr r6, _08144EC0 @ =gTasks
- lsls r1, r7, 2
- adds r1, r7
- lsls r1, 3
- adds r5, r1, r6
- lsls r0, 24
- lsrs r0, 24
- movs r4, 0
- strh r0, [r5, 0xC]
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- mov r1, r8
- strh r1, [r0, 0x8]
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r4, [r0, 0xA]
- movs r0, 0xC
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r7, [r0, 0xC]
- ldr r0, _08144EC8 @ =sub_8144664
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0xA]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r4, [r0, 0x8]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r7, [r0, 0xA]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- ldrh r1, [r5, 0x12]
- strh r1, [r0, 0xC]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- ldrh r1, [r5, 0x14]
- strh r1, [r0, 0xE]
- movs r0, 0xA
- ldrsh r1, [r5, r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r6
- strh r4, [r0, 0x10]
- mov r1, r8
- cmp r1, 0x2
- bne _08144EB0
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r6
- movs r0, 0x45
- strh r0, [r1, 0x12]
-_08144EB0:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08144EBC: .4byte gSprites
-_08144EC0: .4byte gTasks
-_08144EC4: .4byte sub_8144934
-_08144EC8: .4byte sub_8144664
- thumb_func_end sub_8144A68
-
- thumb_func_start sub_8144ECC
-sub_8144ECC: @ 8144ECC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _08144F28 @ =gMain
- ldr r1, _08144F2C @ =0x0000043c
- adds r6, r0, r1
- ldrb r0, [r6]
- cmp r0, 0x1
- beq _08144F38
- cmp r0, 0x1
- ble _08144EF0
- cmp r0, 0x2
- beq _08144F5C
- cmp r0, 0x3
- bne _08144EF0
- b _0814508C
-_08144EF0:
- movs r0, 0x80
- lsls r0, 19
- movs r1, 0
- strh r1, [r0]
- ldr r2, _08144F30 @ =REG_BG3HOFS
- movs r0, 0x8
- strh r0, [r2]
- ldr r0, _08144F34 @ =REG_BG3VOFS
- strh r1, [r0]
- subs r0, 0x6
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- subs r0, 0x6
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x3A
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- movs r0, 0x1
- strb r0, [r6]
- b _081450A2
- .align 2, 0
-_08144F28: .4byte gMain
-_08144F2C: .4byte 0x0000043c
-_08144F30: .4byte REG_BG3HOFS
-_08144F34: .4byte REG_BG3VOFS
-_08144F38:
- ldr r1, _08144F54 @ =gUnknown_02039358
- movs r0, 0x22
- strh r0, [r1]
- ldr r1, _08144F58 @ =gUnknown_0203935A
- movs r0, 0
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_8148CB0
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
- b _081450A2
- .align 2, 0
-_08144F54: .4byte gUnknown_02039358
-_08144F58: .4byte gUnknown_0203935A
-_08144F5C:
- ldr r0, _08144FBC @ =gSaveBlock2
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _08144FE0
- ldr r0, _08144FC0 @ =gIntro2BrendanSpriteSheet
- bl LoadCompressedObjectPic
- ldr r0, _08144FC4 @ =gUnknown_08416E34
- bl LoadCompressedObjectPic
- ldr r0, _08144FC8 @ =gIntro2BicycleSpriteSheet
- bl LoadCompressedObjectPic
- ldr r0, _08144FCC @ =gIntro2SpritePalettes
- bl LoadSpritePalettes
- movs r0, 0x78
- movs r1, 0x2E
- bl intro_create_brendan_sprite
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _08144FD0 @ =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- strh r2, [r4, 0x12]
- ldr r6, _08144FD4 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r5, r6, 0
- adds r5, 0x1C
- adds r2, r0, r5
- ldr r1, _08144FD8 @ =sub_8145378
- str r1, [r2]
- adds r6, 0x8
- adds r0, r6
- ldr r1, _08144FDC @ =gUnknown_0840CA54
- str r1, [r0]
- movs r0, 0x88
- lsls r0, 1
- movs r1, 0x2E
- bl intro_create_may_sprite
- b _08145034
- .align 2, 0
-_08144FBC: .4byte gSaveBlock2
-_08144FC0: .4byte gIntro2BrendanSpriteSheet
-_08144FC4: .4byte gUnknown_08416E34
-_08144FC8: .4byte gIntro2BicycleSpriteSheet
-_08144FCC: .4byte gIntro2SpritePalettes
-_08144FD0: .4byte gTasks
-_08144FD4: .4byte gSprites
-_08144FD8: .4byte sub_8145378
-_08144FDC: .4byte gUnknown_0840CA54
-_08144FE0:
- ldr r0, _0814505C @ =gIntro2MaySpriteSheet
- bl LoadCompressedObjectPic
- ldr r0, _08145060 @ =gUnknown_08416E24
- bl LoadCompressedObjectPic
- ldr r0, _08145064 @ =gIntro2BicycleSpriteSheet
- bl LoadCompressedObjectPic
- ldr r0, _08145068 @ =gIntro2SpritePalettes
- bl LoadSpritePalettes
- movs r0, 0x78
- movs r1, 0x2E
- bl intro_create_may_sprite
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _0814506C @ =gTasks
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- adds r4, r0
- strh r2, [r4, 0x12]
- ldr r6, _08145070 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r5, r6, 0
- adds r5, 0x1C
- adds r2, r0, r5
- ldr r1, _08145074 @ =sub_8145378
- str r1, [r2]
- adds r6, 0x8
- adds r0, r6
- ldr r1, _08145078 @ =gUnknown_0840CA54
- str r1, [r0]
- movs r0, 0x88
- lsls r0, 1
- movs r1, 0x2E
- bl intro_create_brendan_sprite
-_08145034:
- lsls r0, 24
- lsrs r2, r0, 24
- strh r2, [r4, 0x14]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r5, r0, r5
- ldr r1, _0814507C @ =sub_8145420
- str r1, [r5]
- adds r0, r6
- ldr r1, _08145080 @ =gUnknown_0840CA94
- str r1, [r0]
- ldr r1, _08145084 @ =gMain
- ldr r0, _08145088 @ =0x0000043c
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _081450A2
- .align 2, 0
-_0814505C: .4byte gIntro2MaySpriteSheet
-_08145060: .4byte gUnknown_08416E24
-_08145064: .4byte gIntro2BicycleSpriteSheet
-_08145068: .4byte gIntro2SpritePalettes
-_0814506C: .4byte gTasks
-_08145070: .4byte gSprites
-_08145074: .4byte sub_8145378
-_08145078: .4byte gUnknown_0840CA54
-_0814507C: .4byte sub_8145420
-_08145080: .4byte gUnknown_0840CA94
-_08145084: .4byte gMain
-_08145088: .4byte 0x0000043c
-_0814508C:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_8144A68
- adds r0, r4, 0
- bl sub_8148E90
- movs r0, 0
- strb r0, [r6]
- movs r0, 0x1
- b _081450A4
-_081450A2:
- movs r0, 0
-_081450A4:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8144ECC
-
- thumb_func_start sub_81450AC
-sub_81450AC: @ 81450AC
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08145120 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r1, [r4, 0x8]
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _081450D2
- lsls r0, r1, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- strh r0, [r4, 0x8]
-_081450D2:
- ldrh r1, [r4, 0xA]
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _081450E8
- lsls r0, r1, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- strh r0, [r4, 0xA]
-_081450E8:
- ldrh r1, [r4, 0xC]
- movs r2, 0xC
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _081450FE
- lsls r0, r1, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- strh r0, [r4, 0xC]
-_081450FE:
- ldrh r1, [r4, 0xE]
- movs r2, 0xE
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _08145114
- lsls r0, r1, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- strh r0, [r4, 0xE]
-_08145114:
- ldr r1, _08145124 @ =gUnknown_0203935C
- movs r0, 0x1
- strh r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08145120: .4byte gTasks
-_08145124: .4byte gUnknown_0203935C
- thumb_func_end sub_81450AC
-
- thumb_func_start sub_8145128
-sub_8145128: @ 8145128
- push {r4-r7,lr}
- adds r3, r0, 0
- adds r4, r2, 0
- lsls r3, 16
- lsrs r3, 16
- lsls r1, 16
- lsrs r7, r1, 16
- lsls r4, 16
- lsrs r5, r4, 16
- ldr r0, _081451EC @ =gCreditsCopyrightEnd_Gfx
- movs r6, 0xC0
- lsls r6, 19
- adds r3, r6
- adds r1, r3, 0
- bl LZ77UnCompVram
- ldr r0, _081451F0 @ =gIntroCopyright_Pal
- adds r1, r5, 0
- movs r2, 0x20
- bl LoadPalette
- lsrs r4, 20
- lsls r4, 28
- lsrs r4, 16
- movs r2, 0
- adds r1, r4, 0x1
- ldr r3, _081451F4 @ =0x000003ff
-_0814515E:
- lsls r0, r2, 1
- adds r0, r7
- adds r0, r6
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, r3
- bls _0814515E
- movs r2, 0
- adds r0, r4, 0x2
- adds r6, r4, 0
- adds r6, 0x17
- movs r1, 0x2B
- adds r1, r4
- mov r12, r1
- adds r4, 0x42
- ldr r5, _081451F8 @ =0x060001c8
- adds r3, r0, 0
-_08145184:
- lsls r0, r2, 1
- adds r0, r7
- adds r0, r5
- adds r1, r2, r3
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x14
- bls _08145184
- movs r2, 0
- ldr r5, _081451FC @ =0x06000248
- adds r3, r6, 0
-_0814519E:
- lsls r0, r2, 1
- adds r0, r7
- adds r0, r5
- adds r1, r2, r3
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x13
- bls _0814519E
- movs r2, 0
- ldr r5, _08145200 @ =0x060002c8
- mov r3, r12
-_081451B8:
- lsls r0, r2, 1
- adds r0, r7
- adds r0, r5
- adds r1, r2, r3
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x16
- bls _081451B8
- movs r2, 0
- ldr r3, _08145204 @ =0x06000348
-_081451D0:
- lsls r0, r2, 1
- adds r0, r7
- adds r0, r3
- adds r1, r2, r4
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0xB
- bls _081451D0
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081451EC: .4byte gCreditsCopyrightEnd_Gfx
-_081451F0: .4byte gIntroCopyright_Pal
-_081451F4: .4byte 0x000003ff
-_081451F8: .4byte 0x060001c8
-_081451FC: .4byte 0x06000248
-_08145200: .4byte 0x060002c8
-_08145204: .4byte 0x06000348
- thumb_func_end sub_8145128
-
- thumb_func_start sub_8145208
-sub_8145208: @ 8145208
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- adds r3, r2, 0
- movs r0, 0x3F
- ands r0, r2
- adds r1, r0, 0
- adds r1, 0x50
- cmp r2, 0xFF
- bne _08145220
- movs r0, 0x1
- b _08145246
-_08145220:
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _08145230
- movs r2, 0x80
- lsls r2, 4
- adds r0, r2, 0
- orrs r1, r0
-_08145230:
- movs r0, 0x40
- ands r3, r0
- cmp r3, 0
- beq _08145244
- movs r2, 0x80
- lsls r2, 3
- adds r0, r2, 0
- orrs r1, r0
- lsls r0, r1, 16
- lsrs r1, r0, 16
-_08145244:
- adds r0, r1, 0
-_08145246:
- pop {r1}
- bx r1
- thumb_func_end sub_8145208
-
- thumb_func_start sub_814524C
-sub_814524C: @ 814524C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- str r0, [sp]
- ldr r0, [sp, 0x2C]
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x4]
- lsls r3, 16
- lsrs r3, 16
- str r3, [sp, 0x8]
- lsls r0, 16
- lsrs r0, 20
- lsls r0, 28
- lsrs r0, 16
- mov r9, r0
- movs r5, 0
-_0814527A:
- movs r4, 0
- lsls r7, r5, 1
- ldr r1, [sp, 0x4]
- adds r0, r1, r5
- adds r2, r5, 0x1
- mov r8, r2
- lsls r0, 6
- ldr r1, [sp, 0x8]
- adds r6, r0, r1
-_0814528C:
- adds r0, r7, r5
- adds r0, r4
- ldr r2, [sp]
- adds r0, r2, r0
- ldrb r0, [r0]
- bl sub_8145208
- mov r2, r10
- adds r1, r2, r4
- lsls r1, 1
- adds r1, r6
- movs r2, 0xC0
- lsls r2, 19
- adds r1, r2
- add r0, r9
- strh r0, [r1]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _0814528C
- mov r1, r8
- lsls r0, r1, 24
- lsrs r5, r0, 24
- cmp r5, 0x4
- bls _0814527A
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_814524C
-
- thumb_func_start sub_81452D0
-sub_81452D0: @ 81452D0
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 16
- lsrs r6, r1, 16
- lsrs r1, 20
- lsls r1, 28
- lsrs r1, 16
- movs r2, 0
- ldr r7, _08145360 @ =gUnknown_0840B83C
- movs r4, 0xC0
- lsls r4, 19
- adds r1, 0x1
- ldr r3, _08145364 @ =0x000003ff
-_081452EE:
- lsls r0, r2, 1
- adds r0, r5
- adds r0, r4
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, r3
- bls _081452EE
- str r6, [sp]
- adds r0, r7, 0
- movs r1, 0x3
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_814524C
- ldr r0, _08145368 @ =gUnknown_0840B84B
- str r6, [sp]
- movs r1, 0x7
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_814524C
- ldr r4, _0814536C @ =gUnknown_0840B85A
- str r6, [sp]
- adds r0, r4, 0
- movs r1, 0xB
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_814524C
- str r6, [sp]
- adds r0, r4, 0
- movs r1, 0x10
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_814524C
- ldr r0, _08145370 @ =gUnknown_0840B869
- str r6, [sp]
- movs r1, 0x14
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_814524C
- ldr r0, _08145374 @ =gUnknown_0840B878
- str r6, [sp]
- movs r1, 0x18
- movs r2, 0x7
- adds r3, r5, 0
- bl sub_814524C
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08145360: .4byte gUnknown_0840B83C
-_08145364: .4byte 0x000003ff
-_08145368: .4byte gUnknown_0840B84B
-_0814536C: .4byte gUnknown_0840B85A
-_08145370: .4byte gUnknown_0840B869
-_08145374: .4byte gUnknown_0840B878
- thumb_func_end sub_81452D0
-
- thumb_func_start sub_8145378
-sub_8145378: @ 8145378
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _08145390 @ =gUnknown_0203935C
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _08145394
- adds r0, r4, 0
- bl DestroySprite
- b _08145418
- .align 2, 0
-_08145390: .4byte gUnknown_0203935C
-_08145394:
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0x5
- bhi _08145418
- lsls r0, 2
- ldr r1, _081453A8 @ =_081453AC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081453A8: .4byte _081453AC
- .align 2, 0
-_081453AC:
- .4byte _081453C4
- .4byte _081453CE
- .4byte _081453D4
- .4byte _081453DE
- .4byte _081453E8
- .4byte _081453FE
-_081453C4:
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- b _08145418
-_081453CE:
- adds r0, r4, 0
- movs r1, 0x1
- b _08145402
-_081453D4:
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAnimIfDifferent
- b _08145418
-_081453DE:
- adds r0, r4, 0
- movs r1, 0x3
- bl StartSpriteAnimIfDifferent
- b _08145418
-_081453E8:
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- ldrh r1, [r4, 0x20]
- movs r2, 0x20
- ldrsh r0, [r4, r2]
- cmp r0, 0x78
- ble _08145418
- subs r0, r1, 0x1
- b _08145416
-_081453FE:
- adds r0, r4, 0
- movs r1, 0
-_08145402:
- bl StartSpriteAnimIfDifferent
- ldrh r2, [r4, 0x20]
- movs r0, 0x20
- ldrsh r1, [r4, r0]
- movs r0, 0x20
- negs r0, r0
- cmp r1, r0
- ble _08145418
- subs r0, r2, 0x1
-_08145416:
- strh r0, [r4, 0x20]
-_08145418:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8145378
-
- thumb_func_start sub_8145420
-sub_8145420: @ 8145420
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _08145438 @ =gUnknown_0203935C
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _0814543C
- adds r0, r4, 0
- bl DestroySprite
- b _081454D8
- .align 2, 0
-_08145438: .4byte gUnknown_0203935C
-_0814543C:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08145464
- cmp r0, 0x1
- bgt _0814544E
- cmp r0, 0
- beq _08145458
- b _081454D8
-_0814544E:
- cmp r0, 0x2
- beq _081454A0
- cmp r0, 0x3
- beq _081454BE
- b _081454D8
-_08145458:
- strh r0, [r4, 0x26]
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- b _081454D8
-_08145464:
- movs r1, 0x20
- ldrsh r0, [r4, r1]
- cmp r0, 0xC8
- ble _08145476
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAnimIfDifferent
- b _0814547E
-_08145476:
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAnimIfDifferent
-_0814547E:
- ldrh r2, [r4, 0x20]
- movs r0, 0x20
- ldrsh r1, [r4, r0]
- movs r0, 0x20
- negs r0, r0
- cmp r1, r0
- ble _08145490
- subs r0, r2, 0x2
- strh r0, [r4, 0x20]
-_08145490:
- ldr r0, _0814549C @ =gUnknown_0203935A
- ldrh r0, [r0]
- negs r0, r0
- strh r0, [r4, 0x26]
- b _081454D8
- .align 2, 0
-_0814549C: .4byte gUnknown_0203935A
-_081454A0:
- ldrh r0, [r4, 0x3C]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- ldrh r1, [r4, 0x3C]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _081454D8
- ldrh r0, [r4, 0x20]
- adds r0, 0x1
- b _081454D6
-_081454BE:
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnimIfDifferent
- ldrh r2, [r4, 0x20]
- movs r0, 0x20
- ldrsh r1, [r4, r0]
- movs r0, 0x20
- negs r0, r0
- cmp r1, r0
- ble _081454D8
- subs r0, r2, 0x1
-_081454D6:
- strh r0, [r4, 0x20]
-_081454D8:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8145420
-
- thumb_func_start sub_81454E0
-sub_81454E0: @ 81454E0
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- ldr r0, _081454F8 @ =gUnknown_0203935C
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _081454FC
- adds r0, r5, 0
- bl DestroySprite
- b _081456A6
- .align 2, 0
-_081454F8: .4byte gUnknown_0203935C
-_081454FC:
- ldrh r0, [r5, 0x3C]
- adds r0, 0x1
- strh r0, [r5, 0x3C]
- movs r2, 0x2E
- ldrsh r0, [r5, r2]
- cmp r0, 0xA
- bhi _08145544
- lsls r0, 2
- ldr r1, _08145514 @ =_08145518
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08145514: .4byte _08145518
- .align 2, 0
-_08145518:
- .4byte _08145544
- .4byte _0814559E
- .4byte _08145620
- .4byte _08145660
- .4byte _08145544
- .4byte _08145544
- .4byte _08145544
- .4byte _08145544
- .4byte _08145544
- .4byte _08145544
- .4byte _08145696
-_08145544:
- ldrb r1, [r5, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r5, 0x1]
- movs r0, 0x30
- ldrsh r1, [r5, r0]
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r5, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x3]
- movs r0, 0x10
- strh r0, [r5, 0x32]
- ldrh r4, [r5, 0x30]
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x80
- lsls r0, 9
- movs r1, 0x10
- bl __divsi3
- adds r1, r0, 0
- str r1, [sp]
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- movs r0, 0x1
- strh r0, [r5, 0x2E]
- b _081456A6
-_0814559E:
- ldrh r1, [r5, 0x32]
- movs r2, 0x32
- ldrsh r0, [r5, r2]
- cmp r0, 0xFF
- bgt _081455D4
- adds r0, r1, 0
- adds r0, 0x8
- strh r0, [r5, 0x32]
- ldrh r4, [r5, 0x30]
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x32
- ldrsh r1, [r5, r0]
- movs r0, 0x80
- lsls r0, 9
- bl __divsi3
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- str r1, [sp]
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- b _081455DA
-_081455D4:
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
-_081455DA:
- movs r2, 0x30
- ldrsh r1, [r5, r2]
- cmp r1, 0x2
- beq _081456A6
- cmp r1, 0x2
- bgt _081455EC
- cmp r1, 0x1
- beq _081455F2
- b _081456A6
-_081455EC:
- cmp r1, 0x3
- beq _0814560A
- b _081456A6
-_081455F2:
- ldrh r1, [r5, 0x3C]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _08145602
- ldrh r0, [r5, 0x22]
- adds r0, 0x1
- strh r0, [r5, 0x22]
-_08145602:
- ldrh r0, [r5, 0x20]
- subs r0, 0x2
- strh r0, [r5, 0x20]
- b _081456A6
-_0814560A:
- ldrh r0, [r5, 0x3C]
- ands r1, r0
- cmp r1, 0
- bne _08145618
- ldrh r0, [r5, 0x22]
- adds r0, 0x1
- strh r0, [r5, 0x22]
-_08145618:
- ldrh r0, [r5, 0x20]
- adds r0, 0x2
- strh r0, [r5, 0x20]
- b _081456A6
-_08145620:
- ldrh r1, [r5, 0x34]
- movs r2, 0x34
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _08145630
- subs r0, r1, 0x1
- strh r0, [r5, 0x34]
- b _081456A6
-_08145630:
- ldr r1, _0814565C @ =REG_BLDCNT
- movs r2, 0xF4
- lsls r2, 4
- adds r0, r2, 0
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x10
- strh r0, [r1]
- ldrb r1, [r5, 0x1]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r5, 0x1]
- movs r0, 0x10
- strh r0, [r5, 0x34]
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
- b _081456A6
- .align 2, 0
-_0814565C: .4byte REG_BLDCNT
-_08145660:
- ldrh r1, [r5, 0x34]
- movs r2, 0x34
- ldrsh r0, [r5, r2]
- cmp r0, 0
- beq _08145684
- subs r1, 0x1
- strh r1, [r5, 0x34]
- ldr r3, _08145680 @ =REG_BLDALPHA
- movs r0, 0x34
- ldrsh r2, [r5, r0]
- movs r0, 0x10
- subs r0, r2
- lsls r0, 8
- adds r1, r0
- strh r1, [r3]
- b _081456A6
- .align 2, 0
-_08145680: .4byte REG_BLDALPHA
-_08145684:
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0xA
- strh r0, [r5, 0x2E]
- b _081456A6
-_08145696:
- ldr r0, _081456B0 @ =REG_BLDCNT
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, r5, 0
- bl DestroySprite
-_081456A6:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081456B0: .4byte REG_BLDCNT
- thumb_func_end sub_81454E0
-
- thumb_func_start sub_81456B4
-sub_81456B4: @ 81456B4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 16
- lsrs r1, 16
- mov r10, r1
- lsls r2, 16
- lsrs r2, 16
- str r2, [sp, 0x10]
- lsls r3, 16
- lsrs r3, 16
- mov r9, r3
- adds r0, r6, 0
- bl NationalPokedexNumToSpecies
- adds r6, r0, 0
- cmp r6, 0xC9
- beq _081456F8
- movs r0, 0x9A
- lsls r0, 1
- cmp r6, r0
- beq _081456EE
- movs r7, 0
- b _081456FC
-_081456EE:
- ldr r0, _081456F4 @ =gSaveBlock2
- ldr r7, [r0, 0x20]
- b _081456FC
- .align 2, 0
-_081456F4: .4byte gSaveBlock2
-_081456F8:
- ldr r0, _081457E8 @ =gSaveBlock2
- ldr r7, [r0, 0x1C]
-_081456FC:
- lsls r0, r6, 3
- ldr r1, _081457EC @ =gMonFrontPicTable
- adds r0, r1
- ldr r1, _081457F0 @ =gMonFrontPicCoords
- lsls r2, r6, 2
- adds r2, r1
- ldrb r1, [r2]
- ldrb r2, [r2, 0x1]
- movs r3, 0x80
- lsls r3, 18
- ldr r4, _081457F4 @ =gUnknown_0840B5A0
- mov r8, r4
- mov r5, r9
- lsls r4, r5, 2
- add r4, r8
- ldr r4, [r4]
- str r4, [sp]
- str r6, [sp, 0x4]
- str r7, [sp, 0x8]
- movs r4, 0x1
- str r4, [sp, 0xC]
- bl LoadSpecialPokePic
- ldr r2, _081457F8 @ =0x0000ffff
- adds r0, r6, 0
- movs r1, 0
- bl species_and_otid_get_pal
- lsls r5, 4
- mov r8, r5
- movs r1, 0x80
- lsls r1, 1
- add r1, r8
- lsls r1, 16
- lsrs r1, 16
- movs r2, 0x20
- bl LoadCompressedPalette
- mov r7, r9
- lsls r6, r7, 24
- lsrs r6, 24
- mov r0, r9
- adds r1, r6, 0
- bl sub_8143648
- ldr r0, _081457FC @ =gUnknown_02024E8C
- mov r2, r10
- lsls r1, r2, 16
- asrs r1, 16
- ldr r3, [sp, 0x10]
- lsls r2, r3, 16
- asrs r2, 16
- movs r3, 0
- bl CreateSprite
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r5, _08145800 @ =gSprites
- lsls r2, r4, 4
- adds r2, r4
- lsls r2, 2
- adds r3, r2, r5
- ldrb r1, [r3, 0x5]
- movs r0, 0xF
- ands r0, r1
- mov r7, r8
- orrs r0, r7
- movs r1, 0xD
- negs r1, r1
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r3, 0x5]
- mov r0, r9
- adds r0, 0x1
- strh r0, [r3, 0x30]
- movs r0, 0x3E
- adds r0, r3
- mov r8, r0
- ldrb r0, [r0]
- orrs r0, r1
- mov r1, r8
- strb r0, [r1]
- adds r0, r5, 0
- adds r0, 0x1C
- adds r2, r0
- ldr r0, _08145804 @ =sub_81454E0
- str r0, [r2]
- ldr r0, _08145808 @ =gSpriteTemplate_840CAEC
- movs r2, 0x20
- ldrsh r1, [r3, r2]
- movs r7, 0x22
- ldrsh r2, [r3, r7]
- movs r3, 0x1
- bl CreateSprite
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r4, [r0, 0x2E]
- adds r1, r6, 0
- bl StartSpriteAnimIfDifferent
- adds r0, r4, 0
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_081457E8: .4byte gSaveBlock2
-_081457EC: .4byte gMonFrontPicTable
-_081457F0: .4byte gMonFrontPicCoords
-_081457F4: .4byte gUnknown_0840B5A0
-_081457F8: .4byte 0x0000ffff
-_081457FC: .4byte gUnknown_02024E8C
-_08145800: .4byte gSprites
-_08145804: .4byte sub_81454E0
-_08145808: .4byte gSpriteTemplate_840CAEC
- thumb_func_end sub_81456B4
-
- thumb_func_start sub_814580C
-sub_814580C: @ 814580C
- push {r4,lr}
- adds r3, r0, 0
- ldr r4, _08145838 @ =gSprites
- movs r1, 0x2E
- ldrsh r0, [r3, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- movs r2, 0x2E
- ldrsh r0, [r1, r2]
- cmp r0, 0xA
- beq _08145830
- ldr r0, _0814583C @ =gUnknown_0203935C
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, 0
- beq _08145840
-_08145830:
- adds r0, r3, 0
- bl DestroySprite
- b _081458D4
- .align 2, 0
-_08145838: .4byte gSprites
-_0814583C: .4byte gUnknown_0203935C
-_08145840:
- adds r0, r1, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- movs r1, 0x3E
- adds r1, r3
- mov r12, r1
- movs r1, 0x4
- ands r1, r0
- mov r0, r12
- ldrb r2, [r0]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- mov r1, r12
- strb r0, [r1]
- movs r2, 0x2E
- ldrsh r1, [r3, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0, 0x1]
- movs r0, 0xC
- ands r0, r1
- ldrb r2, [r3, 0x1]
- movs r1, 0xD
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x1]
- movs r0, 0x2E
- ldrsh r2, [r3, r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x1]
- lsls r0, 30
- lsrs r0, 30
- movs r2, 0x4
- negs r2, r2
- ands r1, r2
- orrs r1, r0
- strb r1, [r3, 0x1]
- movs r2, 0x2E
- ldrsh r1, [r3, r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r0, [r0, 0x3]
- movs r1, 0x3E
- ands r1, r0
- ldrb r2, [r3, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x3]
- movs r0, 0x2E
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x20]
- strh r0, [r3, 0x20]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x22]
- strh r0, [r3, 0x22]
-_081458D4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_814580C
-
- thumb_func_start sub_81458DC
-sub_81458DC: @ 81458DC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r7, _0814597C @ =0x0201c000
- ldr r0, _08145980 @ =0x00004023
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- bl GetStarterPokemon
- lsls r0, 16
- lsrs r0, 16
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- movs r4, 0x1
- movs r5, 0
- ldr r0, _08145984 @ =0x00000181
- mov r8, r0
-_0814590E:
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_8090D90
- lsls r0, 24
- adds r6, r7, 0
- adds r6, 0x90
- cmp r0, 0
- beq _0814592C
- lsls r0, r5, 1
- adds r0, r6, r0
- strh r4, [r0]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_0814592C:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r8
- bls _0814590E
- adds r4, r5, 0
- ldr r0, _08145984 @ =0x00000181
- lsls r1, r4, 16
- mov r9, r1
- movs r2, 0x8E
- adds r2, r7
- mov r8, r2
- adds r1, r7, 0
- adds r1, 0x86
- str r1, [sp]
- cmp r4, r0
- bhi _08145964
- adds r1, r6, 0
- movs r3, 0
- adds r2, r0, 0
-_08145954:
- lsls r0, r4, 1
- adds r0, r1, r0
- strh r3, [r0]
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r2
- bls _08145954
-_08145964:
- movs r2, 0xE5
- lsls r2, 2
- adds r0, r7, r2
- strh r5, [r0]
- mov r1, r9
- lsrs r0, r1, 16
- cmp r0, 0x43
- bhi _08145988
- mov r2, r8
- strh r5, [r2]
- b _0814598E
- .align 2, 0
-_0814597C: .4byte 0x0201c000
-_08145980: .4byte 0x00004023
-_08145984: .4byte 0x00000181
-_08145988:
- movs r0, 0x44
- mov r1, r8
- strh r0, [r1]
-_0814598E:
- movs r5, 0
- movs r2, 0xE5
- lsls r2, 2
- adds r4, r7, r2
- mov r9, r5
- b _0814599E
-_0814599A:
- cmp r5, 0x43
- bhi _081459EE
-_0814599E:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r4]
- bl __umodsi3
- lsls r0, 16
- lsrs r2, r0, 16
- lsls r1, r5, 1
- adds r1, r7, r1
- lsls r0, r2, 1
- adds r3, r6, r0
- ldrh r0, [r3]
- strh r0, [r1]
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- mov r0, r9
- strh r0, [r3]
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r4]
- lsls r0, 16
- lsrs r0, 16
- cmp r2, r0
- beq _081459E8
- ldrh r0, [r4]
- lsls r0, 1
- adds r0, r6, r0
- ldrh r0, [r0]
- strh r0, [r3]
- ldrh r0, [r4]
- lsls r0, 1
- adds r0, r6, r0
- mov r1, r9
- strh r1, [r0]
-_081459E8:
- ldrh r0, [r4]
- cmp r0, 0
- bne _0814599A
-_081459EE:
- mov r2, r8
- ldrh r0, [r2]
- cmp r0, 0x43
- bhi _08145A26
- adds r5, r0, 0
- movs r2, 0
- cmp r5, 0x43
- bhi _08145A5C
- mov r3, r8
-_08145A00:
- lsls r1, r5, 1
- adds r1, r7, r1
- lsls r0, r2, 1
- adds r0, r7, r0
- ldrh r0, [r0]
- strh r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- ldrh r0, [r3]
- cmp r2, r0
- bne _08145A1A
- movs r2, 0
-_08145A1A:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x43
- bls _08145A00
- b _08145A5C
-_08145A26:
- movs r4, 0
- ldrh r0, [r7]
- cmp r0, r10
- beq _08145A42
-_08145A2E:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r0, r4, 1
- adds r0, r7, r0
- ldrh r0, [r0]
- cmp r0, r10
- beq _08145A42
- cmp r4, 0x43
- bls _08145A2E
-_08145A42:
- mov r1, r8
- ldrh r0, [r1]
- subs r0, 0x1
- cmp r4, r0
- bge _08145A5C
- lsls r0, r4, 1
- adds r0, r7, r0
- ldr r2, [sp]
- ldrh r1, [r2]
- strh r1, [r0]
- mov r0, r10
- strh r0, [r2]
- b _08145A62
-_08145A5C:
- mov r2, r10
- ldr r1, [sp]
- strh r2, [r1]
-_08145A62:
- movs r0, 0x44
- mov r1, r8
- strh r0, [r1]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81458DC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/daycare.s b/asm/daycare.s
index d78757d8f..886643fce 100644
--- a/asm/daycare.s
+++ b/asm/daycare.s
@@ -196,7 +196,7 @@ _08041498: .4byte 0x00002b4c
thumb_func_start daycare_send
daycare_send: @ 804149C
push {lr}
- ldr r0, _080414B4 @ =gUnknown_03005CE0
+ ldr r0, _080414B4 @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -207,7 +207,7 @@ daycare_send: @ 804149C
pop {r0}
bx r0
.align 2, 0
-_080414B4: .4byte gUnknown_03005CE0
+_080414B4: .4byte gLastFieldPokeMenuOpened
_080414B8: .4byte gPlayerParty
_080414BC: .4byte gSaveBlock1 + 0x2F9C
thumb_func_end daycare_send
@@ -2104,7 +2104,7 @@ _08042324: .4byte gStringVar2
thumb_func_start sub_8042328
sub_8042328: @ 8042328
push {r4-r6,lr}
- ldr r6, _08042354 @ =gUnknown_03005CE0
+ ldr r6, _08042354 @ =gLastFieldPokeMenuOpened
ldrb r0, [r6]
movs r5, 0x64
muls r0, r5
@@ -2123,7 +2123,7 @@ sub_8042328: @ 8042328
pop {r1}
bx r1
.align 2, 0
-_08042354: .4byte gUnknown_03005CE0
+_08042354: .4byte gLastFieldPokeMenuOpened
_08042358: .4byte gPlayerParty
_0804235C: .4byte gStringVar1
thumb_func_end sub_8042328
@@ -2722,7 +2722,7 @@ _0804279C:
bl sub_8072DEC
movs r0, 0x5
bl PlaySE
- ldr r3, _080427DC @ =gUnknown_03005CE0
+ ldr r3, _080427DC @ =gLastFieldPokeMenuOpened
ldr r2, _080427E0 @ =gScriptResult
ldr r1, _080427E4 @ =gTasks
lsls r0, r4, 2
@@ -2742,7 +2742,7 @@ _0804279C:
bl EnableBothScriptContexts
b _08042816
.align 2, 0
-_080427DC: .4byte gUnknown_03005CE0
+_080427DC: .4byte gLastFieldPokeMenuOpened
_080427E0: .4byte gScriptResult
_080427E4: .4byte gTasks
_080427E8:
@@ -2752,7 +2752,7 @@ _080427E8:
cmp r0, 0
beq _08042816
bl sub_8072DEC
- ldr r0, _0804281C @ =gUnknown_03005CE0
+ ldr r0, _0804281C @ =gLastFieldPokeMenuOpened
ldr r1, _08042820 @ =gScriptResult
strh r4, [r1]
movs r1, 0x2
@@ -2770,7 +2770,7 @@ _08042816:
pop {r0}
bx r0
.align 2, 0
-_0804281C: .4byte gUnknown_03005CE0
+_0804281C: .4byte gLastFieldPokeMenuOpened
_08042820: .4byte gScriptResult
thumb_func_end DaycareLevelMenuProcessKeyInput
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
deleted file mode 100644
index c122f7651..000000000
--- a/asm/field_control_avatar.s
+++ /dev/null
@@ -1,1780 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80682A8
-sub_80682A8: @ 80682A8
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r2, 24
- lsrs r6, r2, 24
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r2, 0x2
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsCounter
- lsls r0, 24
- cmp r0, 0
- bne _080682D0
- ldrh r0, [r4]
- ldrh r1, [r4, 0x2]
- b _080682EE
-_080682D0:
- ldr r1, _08068314 @ =gUnknown_0821664C
- lsls r2, r6, 3
- adds r0, r2, r1
- ldr r3, [r0]
- ldrh r0, [r4]
- adds r0, r3
- lsls r0, 16
- lsrs r0, 16
- adds r1, 0x4
- adds r2, r1
- ldr r2, [r2]
- ldrh r1, [r4, 0x2]
- adds r1, r2
- lsls r1, 16
- lsrs r1, 16
-_080682EE:
- ldrb r2, [r4, 0x4]
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x10
- beq _0806830E
- ldr r1, _08068318 @ =gMapObjects
- lsls r2, r3, 3
- adds r0, r2, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x8]
- adds r5, r1, 0
- cmp r0, 0xFF
- bne _0806831C
-_0806830E:
- movs r0, 0
- b _0806834E
- .align 2, 0
-_08068314: .4byte gUnknown_0821664C
-_08068318: .4byte gMapObjects
-_0806831C:
- movs r4, 0
- ldr r1, _08068354 @ =gLinkPlayerMapObjects
-_08068320:
- ldrb r0, [r1]
- cmp r0, 0x1
- bne _0806832C
- ldrb r0, [r1, 0x2]
- cmp r0, r3
- beq _0806830E
-_0806832C:
- adds r1, 0x4
- adds r4, 0x1
- cmp r4, 0x3
- ble _08068320
- ldr r0, _08068358 @ =gSelectedMapObject
- strb r3, [r0]
- ldr r1, _0806835C @ =gScriptLastTalked
- adds r0, r2, r3
- lsls r0, 2
- adds r0, r5
- ldrb r0, [r0, 0x8]
- strh r0, [r1]
- ldr r0, _08068360 @ =gScriptFacing
- strh r6, [r0]
- adds r0, r3, 0
- bl GetFieldObjectScriptPointerByFieldObjectId
-_0806834E:
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08068354: .4byte gLinkPlayerMapObjects
-_08068358: .4byte gSelectedMapObject
-_0806835C: .4byte gScriptLastTalked
-_08068360: .4byte gScriptFacing
- thumb_func_end sub_80682A8
-
- thumb_func_start sub_8068364
-sub_8068364: @ 8068364
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- ldrh r0, [r4]
- ldrh r1, [r4, 0x2]
- ldrb r2, [r4, 0x4]
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x10
- beq _08068392
- ldr r1, _080683E0 @ =gMapObjects
- lsls r2, r3, 3
- adds r0, r2, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x8]
- cmp r0, 0xFF
- bne _080683E8
-_08068392:
- adds r0, r5, 0
- bl MetatileBehavior_IsCounter
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080683DC
- ldr r1, _080683E4 @ =gUnknown_0821664C
- lsls r2, r6, 3
- adds r0, r2, r1
- ldr r3, [r0]
- ldrh r0, [r4]
- adds r0, r3
- lsls r0, 16
- lsrs r0, 16
- adds r1, 0x4
- adds r2, r1
- ldr r2, [r2]
- ldrh r1, [r4, 0x2]
- adds r1, r2
- lsls r1, 16
- lsrs r1, 16
- ldrb r2, [r4, 0x4]
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x10
- beq _080683DC
- ldr r1, _080683E0 @ =gMapObjects
- lsls r2, r3, 3
- adds r0, r2, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x8]
- cmp r0, 0xFF
- bne _080683E8
-_080683DC:
- movs r0, 0
- b _0806840C
- .align 2, 0
-_080683E0: .4byte gMapObjects
-_080683E4: .4byte gUnknown_0821664C
-_080683E8:
- ldr r0, _08068414 @ =gSelectedMapObject
- strb r3, [r0]
- ldr r4, _08068418 @ =gScriptLastTalked
- adds r0, r2, r3
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x8]
- strh r0, [r4]
- ldr r0, _0806841C @ =gScriptFacing
- strh r6, [r0]
- adds r0, r3, 0
- bl GetFieldObjectScriptPointerByFieldObjectId
- adds r1, r0, 0
- ldrb r0, [r4]
- bl GetRamScript
- adds r1, r0, 0
-_0806840C:
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08068414: .4byte gSelectedMapObject
-_08068418: .4byte gScriptLastTalked
-_0806841C: .4byte gScriptFacing
- thumb_func_end sub_8068364
-
- thumb_func_start TryGetInvisibleMapObjectScript
-TryGetInvisibleMapObjectScript: @ 8068420
- push {r4,r5,lr}
- lsls r2, 24
- lsrs r5, r2, 24
- ldr r4, _08068450 @ =gMapHeader
- ldrh r1, [r0]
- subs r1, 0x7
- lsls r1, 16
- lsrs r1, 16
- ldrh r2, [r0, 0x2]
- subs r2, 0x7
- lsls r2, 16
- lsrs r2, 16
- ldrb r3, [r0, 0x4]
- adds r0, r4, 0
- bl FindInvisibleMapObjectByPosition
- cmp r0, 0
- beq _08068494
- ldr r2, [r0, 0x8]
- cmp r2, 0
- bne _08068458
- ldr r0, _08068454 @ =gUnknown_081C6C02
- b _080684FA
- .align 2, 0
-_08068450: .4byte gMapHeader
-_08068454: .4byte gUnknown_081C6C02
-_08068458:
- ldrb r0, [r0, 0x5]
- cmp r0, 0x8
- bhi _080684F8
- lsls r0, 2
- ldr r1, _08068468 @ =_0806846C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08068468: .4byte _0806846C
- .align 2, 0
-_0806846C:
- .4byte _080684F8
- .4byte _08068490
- .4byte _08068498
- .4byte _0806849E
- .4byte _080684A4
- .4byte _080684AA
- .4byte _080684AA
- .4byte _080684AA
- .4byte _080684D8
-_08068490:
- cmp r5, 0x2
- beq _080684F8
-_08068494:
- movs r0, 0
- b _080684FA
-_08068498:
- cmp r5, 0x1
- beq _080684F8
- b _08068494
-_0806849E:
- cmp r5, 0x4
- beq _080684F8
- b _08068494
-_080684A4:
- cmp r5, 0x3
- beq _080684F8
- b _08068494
-_080684AA:
- ldr r1, _080684CC @ =gSpecialVar_0x8004
- lsrs r0, r2, 16
- movs r3, 0x96
- lsls r3, 2
- adds r0, r3
- strh r0, [r1]
- ldr r0, _080684D0 @ =gSpecialVar_0x8005
- strh r2, [r0]
- ldrh r0, [r1]
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068494
- ldr r0, _080684D4 @ =HiddenItemScript
- b _080684FA
- .align 2, 0
-_080684CC: .4byte gSpecialVar_0x8004
-_080684D0: .4byte gSpecialVar_0x8005
-_080684D4: .4byte HiddenItemScript
-_080684D8:
- cmp r5, 0x2
- bne _08068494
- ldr r0, _080684F0 @ =gSpecialVar_0x8004
- strh r2, [r0]
- bl sub_80BC050
- lsls r0, 24
- cmp r0, 0
- beq _08068494
- ldr r0, _080684F4 @ =gUnknown_081A2C51
- b _080684FA
- .align 2, 0
-_080684F0: .4byte gSpecialVar_0x8004
-_080684F4: .4byte gUnknown_081A2C51
-_080684F8:
- adds r0, r2, 0
-_080684FA:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end TryGetInvisibleMapObjectScript
-
- thumb_func_start sub_8068500
-sub_8068500: @ 8068500
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r2, 24
- adds r0, r5, 0
- adds r1, r2, 0
- bl MetatileBehavior_IsPlayerFacingTVScreen
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068524
- ldr r0, _08068520 @ =Event_TV
- b _080686EE
- .align 2, 0
-_08068520: .4byte Event_TV
-_08068524:
- adds r0, r5, 0
- bl MetatileBehavior_IsPC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0806853C
- ldr r0, _08068538 @ =gUnknown_081A0009
- b _080686EE
- .align 2, 0
-_08068538: .4byte gUnknown_081A0009
-_0806853C:
- adds r0, r5, 0
- bl MetatileBehavior_IsClosedSootpolisGymDoor
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068554
- ldr r0, _08068550 @ =ClosedSootopolisGymDoorScript
- b _080686EE
- .align 2, 0
-_08068550: .4byte ClosedSootopolisGymDoorScript
-_08068554:
- adds r0, r5, 0
- bl is_tile_x84
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0806856C
- ldr r0, _08068568 @ =gUnknown_081A4363
- b _080686EE
- .align 2, 0
-_08068568: .4byte gUnknown_081A4363
-_0806856C:
- adds r0, r5, 0
- bl MetatileBehavior_IsPokeblockFeeder
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068584
- ldr r0, _08068580 @ =gUnknown_081C346A
- b _080686EE
- .align 2, 0
-_08068580: .4byte gUnknown_081C346A
-_08068584:
- adds r0, r5, 0
- bl MetatileBehavior_IsTrickHousePuzzleDoor
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0806859C
- ldr r0, _08068598 @ =gUnknown_081616E1
- b _080686EE
- .align 2, 0
-_08068598: .4byte gUnknown_081616E1
-_0806859C:
- adds r0, r5, 0
- bl MetatileBehavior_IsRegionMap
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080685B4
- ldr r0, _080685B0 @ =Event_WorldMap
- b _080686EE
- .align 2, 0
-_080685B0: .4byte Event_WorldMap
-_080685B4:
- adds r0, r5, 0
- bl sub_805791C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080685CC
- ldr r0, _080685C8 @ =Event_RunningShoesManual
- b _080686EE
- .align 2, 0
-_080685C8: .4byte Event_RunningShoesManual
-_080685CC:
- adds r0, r5, 0
- bl MetatileBehavior_IsPictureBookShelf
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080685E4
- ldr r0, _080685E0 @ =PictureBookShelfScript
- b _080686EE
- .align 2, 0
-_080685E0: .4byte PictureBookShelfScript
-_080685E4:
- adds r0, r5, 0
- bl MetatileBehavior_IsBookShelf
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080685FC
- ldr r0, _080685F8 @ =BookshelfScript
- b _080686EE
- .align 2, 0
-_080685F8: .4byte BookshelfScript
-_080685FC:
- adds r0, r5, 0
- bl MetatileBehavior_IsPokeCenterBookShelf
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068614
- ldr r0, _08068610 @ =PokemonCenterBookshelfScript
- b _080686EE
- .align 2, 0
-_08068610: .4byte PokemonCenterBookshelfScript
-_08068614:
- adds r0, r5, 0
- bl MetatileBehavior_IsVase
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0806862C
- ldr r0, _08068628 @ =VaseScript
- b _080686EE
- .align 2, 0
-_08068628: .4byte VaseScript
-_0806862C:
- adds r0, r5, 0
- bl MetatileBehavior_IsTrashCan
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068644
- ldr r0, _08068640 @ =TrashCanScript
- b _080686EE
- .align 2, 0
-_08068640: .4byte TrashCanScript
-_08068644:
- adds r0, r5, 0
- bl MetatileBehavior_IsShopShelf
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0806865C
- ldr r0, _08068658 @ =ShopShelfScript
- b _080686EE
- .align 2, 0
-_08068658: .4byte ShopShelfScript
-_0806865C:
- adds r0, r5, 0
- bl MetatileBehavior_IsBlueprint
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068674
- ldr r0, _08068670 @ =BlueprintScript
- b _080686EE
- .align 2, 0
-_08068670: .4byte BlueprintScript
-_08068674:
- movs r4, 0x4
- ldrsb r4, [r6, r4]
- movs r1, 0
- ldrsh r0, [r6, r1]
- movs r2, 0x2
- ldrsh r1, [r6, r2]
- bl MapGridGetZCoordAt
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- bne _080686EC
- adds r0, r5, 0
- bl MetatileBehavior_IsSecretBasePC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080686A4
- ldr r0, _080686A0 @ =gUnknown_0815F36C
- b _080686EE
- .align 2, 0
-_080686A0: .4byte gUnknown_0815F36C
-_080686A4:
- adds r0, r5, 0
- bl sub_805724C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080686BC
- ldr r0, _080686B8 @ =gUnknown_0815F43A
- b _080686EE
- .align 2, 0
-_080686B8: .4byte gUnknown_0815F43A
-_080686BC:
- adds r0, r5, 0
- bl sub_8057364
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080686D4
- ldr r0, _080686D0 @ =gUnknown_0815F523
- b _080686EE
- .align 2, 0
-_080686D0: .4byte gUnknown_0815F523
-_080686D4:
- adds r0, r5, 0
- bl sub_8057378
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080686EC
- ldr r0, _080686E8 @ =gUnknown_0815F528
- b _080686EE
- .align 2, 0
-_080686E8: .4byte gUnknown_0815F528
-_080686EC:
- movs r0, 0
-_080686EE:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8068500
-
- thumb_func_start TryGetFieldMoveScript
-TryGetFieldMoveScript: @ 80686F4
- push {r4,lr}
- lsls r1, 24
- lsrs r4, r1, 24
- ldr r0, _08068724 @ =0x0000080b
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0806872C
- bl PartyHasMonWithSurf
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0806872C
- bl IsPlayerFacingSurfableFishableWater
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0806872C
- ldr r0, _08068728 @ =UseSurfScript
- b _0806876A
- .align 2, 0
-_08068724: .4byte 0x0000080b
-_08068728: .4byte UseSurfScript
-_0806872C:
- adds r0, r4, 0
- bl MetatileBehavior_IsWaterfall
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068768
- ldr r0, _08068758 @ =0x0000080e
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068760
- bl IsPlayerSurfingNorth
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068760
- ldr r0, _0806875C @ =UseWaterfallScript
- b _0806876A
- .align 2, 0
-_08068758: .4byte 0x0000080e
-_0806875C: .4byte UseWaterfallScript
-_08068760:
- ldr r0, _08068764 @ =CannotUseWaterfallScript
- b _0806876A
- .align 2, 0
-_08068764: .4byte CannotUseWaterfallScript
-_08068768:
- movs r0, 0
-_0806876A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end TryGetFieldMoveScript
-
- thumb_func_start sub_8068770
-sub_8068770: @ 8068770
- push {lr}
- ldr r0, _08068794 @ =0x0000080d
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _0806879C
- bl sub_8068F18
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _0806879C
- ldr r0, _08068798 @ =UseDiveScript
- bl ScriptContext1_SetupScript
- movs r0, 0x1
- b _0806879E
- .align 2, 0
-_08068794: .4byte 0x0000080d
-_08068798: .4byte UseDiveScript
-_0806879C:
- movs r0, 0
-_0806879E:
- pop {r1}
- bx r1
- thumb_func_end sub_8068770
-
- thumb_func_start sub_80687A4
-sub_80687A4: @ 80687A4
- push {lr}
- ldr r0, _080687D0 @ =0x0000080d
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _080687DC
- ldr r0, _080687D4 @ =gMapHeader
- ldrb r0, [r0, 0x17]
- cmp r0, 0x5
- bne _080687DC
- bl sub_8068F18
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080687DC
- ldr r0, _080687D8 @ =UnderwaterUseDiveScript
- bl ScriptContext1_SetupScript
- movs r0, 0x1
- b _080687DE
- .align 2, 0
-_080687D0: .4byte 0x0000080d
-_080687D4: .4byte gMapHeader
-_080687D8: .4byte UnderwaterUseDiveScript
-_080687DC:
- movs r0, 0
-_080687DE:
- pop {r1}
- bx r1
- thumb_func_end sub_80687A4
-
- thumb_func_start sub_80687E4
-sub_80687E4: @ 80687E4
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- adds r6, r4, 0
- bl mapheader_trigger_activate_at__run_now
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068834
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_8068A64
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068834
- adds r0, r6, 0
- bl sub_8068870
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068834
- bl sub_8068894
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068834
- bl UpdateRepelCounter
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068834
- movs r0, 0
- b _08068836
-_08068834:
- movs r0, 0x1
-_08068836:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80687E4
-
- thumb_func_start mapheader_trigger_activate_at__run_now
-mapheader_trigger_activate_at__run_now: @ 806883C
- push {r4,lr}
- ldr r4, _08068864 @ =gMapHeader
- ldrh r1, [r0]
- subs r1, 0x7
- lsls r1, 16
- lsrs r1, 16
- ldrh r2, [r0, 0x2]
- subs r2, 0x7
- lsls r2, 16
- lsrs r2, 16
- ldrb r3, [r0, 0x4]
- adds r0, r4, 0
- bl mapheader_trigger_activate_at
- cmp r0, 0
- beq _08068868
- bl ScriptContext1_SetupScript
- movs r0, 0x1
- b _0806886A
- .align 2, 0
-_08068864: .4byte gMapHeader
-_08068868:
- movs r0, 0
-_0806886A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end mapheader_trigger_activate_at__run_now
-
- thumb_func_start sub_8068870
-sub_8068870: @ 8068870
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsCrackedFloorHole
- lsls r0, 24
- cmp r0, 0
- bne _08068884
- movs r0, 0
- b _0806888C
-_08068884:
- ldr r0, _08068890 @ =GraniteCave_B1F_EventScript_1C6BC5
- bl ScriptContext1_SetupScript
- movs r0, 0x1
-_0806888C:
- pop {r1}
- bx r1
- .align 2, 0
-_08068890: .4byte GraniteCave_B1F_EventScript_1C6BC5
- thumb_func_end sub_8068870
-
- thumb_func_start sub_8068894
-sub_8068894: @ 8068894
- push {lr}
- bl sub_8082B78
- bl happiness_algorithm_step
- bl overworld_poison_step
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080688B4
- ldr r0, _080688B0 @ =gUnknown_081A14B8
- b _080688E8
- .align 2, 0
-_080688B0: .4byte gUnknown_081A14B8
-_080688B4:
- bl sub_80422A0
- lsls r0, 24
- cmp r0, 0
- beq _080688CC
- movs r0, 0xD
- bl IncrementGameStat
- ldr r0, _080688C8 @ =Event_EggHatch
- b _080688E8
- .align 2, 0
-_080688C8: .4byte Event_EggHatch
-_080688CC:
- bl SafariZoneTakeStep
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080688EC
- movs r0, 0x1
- bl sub_810D9B0
- cmp r0, 0x1
- beq _080688E6
- movs r0, 0
- b _080688EE
-_080688E6:
- ldr r0, _080688F4 @ =gUnknown_0815FD0D
-_080688E8:
- bl ScriptContext1_SetupScript
-_080688EC:
- movs r0, 0x1
-_080688EE:
- pop {r1}
- bx r1
- .align 2, 0
-_080688F4: .4byte gUnknown_0815FD0D
- thumb_func_end sub_8068894
-
- thumb_func_start unref_sub_80688F8
-unref_sub_80688F8: @ 80688F8
- push {lr}
- ldr r0, _08068908 @ =0x0000402a
- movs r1, 0
- bl VarSet
- pop {r0}
- bx r0
- .align 2, 0
-_08068908: .4byte 0x0000402a
- thumb_func_end unref_sub_80688F8
-
- thumb_func_start happiness_algorithm_step
-happiness_algorithm_step: @ 806890C
- push {r4,r5,lr}
- ldr r0, _08068940 @ =0x0000402a
- bl GetVarPointer
- ldrh r1, [r0]
- adds r1, 0x1
- strh r1, [r0]
- ldrh r1, [r0]
- movs r2, 0x7F
- ands r1, r2
- strh r1, [r0]
- cmp r1, 0
- bne _0806893A
- ldr r5, _08068944 @ =gPlayerParty
- movs r4, 0x5
-_0806892A:
- adds r0, r5, 0
- movs r1, 0x5
- bl AdjustFriendship
- adds r5, 0x64
- subs r4, 0x1
- cmp r4, 0
- bge _0806892A
-_0806893A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08068940: .4byte 0x0000402a
-_08068944: .4byte gPlayerParty
- thumb_func_end happiness_algorithm_step
-
- thumb_func_start overworld_poison_timer_set
-overworld_poison_timer_set: @ 8068948
- push {lr}
- ldr r0, _08068958 @ =0x0000402b
- movs r1, 0
- bl VarSet
- pop {r0}
- bx r0
- .align 2, 0
-_08068958: .4byte 0x0000402b
- thumb_func_end overworld_poison_timer_set
-
- thumb_func_start overworld_poison_step
-overworld_poison_step: @ 806895C
- push {lr}
- ldr r0, _08068994 @ =gMapHeader
- ldrb r0, [r0, 0x17]
- cmp r0, 0x9
- beq _0806899C
- ldr r0, _08068998 @ =0x0000402b
- bl GetVarPointer
- ldrh r1, [r0]
- adds r1, 0x1
- strh r1, [r0]
- ldrh r1, [r0]
- movs r2, 0x3
- ands r1, r2
- strh r1, [r0]
- cmp r1, 0
- bne _0806899C
- bl overworld_poison
- cmp r0, 0x1
- beq _0806899C
- cmp r0, 0x1
- ble _0806899C
- cmp r0, 0x2
- bne _0806899C
- movs r0, 0x1
- b _0806899E
- .align 2, 0
-_08068994: .4byte gMapHeader
-_08068998: .4byte 0x0000402b
-_0806899C:
- movs r0, 0
-_0806899E:
- pop {r1}
- bx r1
- thumb_func_end overworld_poison_step
-
- thumb_func_start prev_quest_postbuffer_cursor_backup_reset
-prev_quest_postbuffer_cursor_backup_reset: @ 80689A4
- ldr r1, _080689AC @ =gUnknown_0202E8C0
- movs r0, 0
- strb r0, [r1]
- bx lr
- .align 2, 0
-_080689AC: .4byte gUnknown_0202E8C0
- thumb_func_end prev_quest_postbuffer_cursor_backup_reset
-
- thumb_func_start is_it_battle_time_3
-is_it_battle_time_3: @ 80689B0
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- adds r7, r4, 0
- ldr r6, _080689CC @ =gUnknown_0202E8C0
- ldrb r0, [r6]
- cmp r0, 0x3
- bhi _080689D4
- adds r0, 0x1
- strb r0, [r6]
- ldr r0, _080689D0 @ =gUnknown_0202E8C2
- strh r4, [r0]
- movs r0, 0
- b _080689F8
- .align 2, 0
-_080689CC: .4byte gUnknown_0202E8C0
-_080689D0: .4byte gUnknown_0202E8C2
-_080689D4:
- ldr r5, _080689EC @ =gUnknown_0202E8C2
- ldrh r1, [r5]
- adds r0, r4, 0
- bl StandardWildEncounter
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080689F0
- strh r4, [r5]
- movs r0, 0
- b _080689F8
- .align 2, 0
-_080689EC: .4byte gUnknown_0202E8C2
-_080689F0:
- movs r0, 0
- strb r0, [r6]
- strh r7, [r5]
- movs r0, 0x1
-_080689F8:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end is_it_battle_time_3
-
- thumb_func_start mapheader_run_first_tag2_script_list_match_conditionally
-mapheader_run_first_tag2_script_list_match_conditionally: @ 8068A00
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _08068A54 @ =gMapHeader
- mov r8, r0
- adds r1, r7, 0
- bl map_warp_check_packed
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r4, 0
- adds r1, r5, 0
- bl is_non_stair_warp_tile
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068A58
- lsls r0, r6, 24
- asrs r4, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r4, r0
- beq _08068A58
- bl walkrun_find_lowest_active_bit_in_bitfield
- mov r0, r8
- adds r1, r4, 0
- adds r2, r7, 0
- bl sub_8068C30
- bl sub_8080E88
- movs r0, 0x1
- b _08068A5A
- .align 2, 0
-_08068A54: .4byte gMapHeader
-_08068A58:
- movs r0, 0
-_08068A5A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end mapheader_run_first_tag2_script_list_match_conditionally
-
- thumb_func_start sub_8068A64
-sub_8068A64: @ 8068A64
- push {r4-r7,lr}
- adds r6, r0, 0
- lsls r1, 16
- lsrs r5, r1, 16
- ldr r7, _08068ABC @ =gMapHeader
- adds r0, r7, 0
- adds r1, r6, 0
- bl map_warp_check_packed
- lsls r0, 24
- asrs r4, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r4, r0
- beq _08068B28
- adds r0, r5, 0
- bl sub_8068B30
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068B28
- bl walkrun_find_lowest_active_bit_in_bitfield
- adds r0, r7, 0
- adds r1, r4, 0
- adds r2, r6, 0
- bl sub_8068C30
- lsls r0, r5, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl MetatileBehavior_IsEscalator
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068AC0
- adds r0, r4, 0
- bl sub_8080F2C
- movs r0, 0x1
- b _08068B2A
- .align 2, 0
-_08068ABC: .4byte gMapHeader
-_08068AC0:
- adds r0, r4, 0
- bl MetatileBehavior_IsLavaridgeB1FWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068AD6
- bl sub_8080F48
- movs r0, 0x1
- b _08068B2A
-_08068AD6:
- adds r0, r4, 0
- bl MetatileBehavior_IsLavaridge1FWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068AEC
- bl sub_8080F58
- movs r0, 0x1
- b _08068B2A
-_08068AEC:
- adds r0, r4, 0
- bl MetatileBehavior_IsAquaHideoutWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068B02
- bl sub_8080F68
- movs r0, 0x1
- b _08068B2A
-_08068B02:
- adds r0, r4, 0
- bl MetatileBehavior_IsMtPyreHole
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068B20
- ldr r0, _08068B1C @ =gUnknown_081C6BDE
- bl ScriptContext1_SetupScript
- movs r0, 0x1
- b _08068B2A
- .align 2, 0
-_08068B1C: .4byte gUnknown_081C6BDE
-_08068B20:
- bl sub_8080E88
- movs r0, 0x1
- b _08068B2A
-_08068B28:
- movs r0, 0
-_08068B2A:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8068A64
-
- thumb_func_start sub_8068B30
-sub_8068B30: @ 8068B30
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl MetatileBehavior_IsWarpDoor
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068BAA
- adds r0, r4, 0
- bl MetatileBehavior_IsLadder
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068BAA
- adds r0, r4, 0
- bl MetatileBehavior_IsEscalator
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068BAA
- adds r0, r4, 0
- bl MetatileBehavior_IsNonAnimDoor
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068BAA
- adds r0, r4, 0
- bl MetatileBehavior_IsLavaridgeB1FWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068BAA
- adds r0, r4, 0
- bl MetatileBehavior_IsLavaridge1FWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068BAA
- adds r0, r4, 0
- bl MetatileBehavior_IsAquaHideoutWarp
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068BAA
- adds r0, r4, 0
- bl MetatileBehavior_IsMtPyreHole
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08068BAA
- movs r0, 0
- b _08068BAC
-_08068BAA:
- movs r0, 0x1
-_08068BAC:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8068B30
-
- thumb_func_start is_non_stair_warp_tile
-is_non_stair_warp_tile: @ 8068BB4
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r1, 24
- adds r2, r1, 0
- cmp r1, 0x2
- beq _08068BD8
- cmp r1, 0x2
- bgt _08068BCE
- cmp r1, 0x1
- beq _08068BE2
- b _08068C04
-_08068BCE:
- cmp r2, 0x3
- beq _08068BEC
- cmp r2, 0x4
- beq _08068BF6
- b _08068C04
-_08068BD8:
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsNorthArrowWarp
- b _08068BFE
-_08068BE2:
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsSouthArrowWarp
- b _08068BFE
-_08068BEC:
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsWestArrowWarp
- b _08068BFE
-_08068BF6:
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsEastArrowWarp
-_08068BFE:
- lsls r0, 24
- lsrs r0, 24
- b _08068C06
-_08068C04:
- movs r0, 0
-_08068C06:
- pop {r1}
- bx r1
- thumb_func_end is_non_stair_warp_tile
-
- thumb_func_start map_warp_check_packed
-map_warp_check_packed: @ 8068C0C
- push {lr}
- adds r3, r1, 0
- ldrh r1, [r3]
- subs r1, 0x7
- lsls r1, 16
- lsrs r1, 16
- ldrh r2, [r3, 0x2]
- subs r2, 0x7
- lsls r2, 16
- lsrs r2, 16
- ldrb r3, [r3, 0x4]
- bl map_warp_check
- lsls r0, 24
- asrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end map_warp_check_packed
-
- thumb_func_start sub_8068C30
-sub_8068C30: @ 8068C30
- push {r4-r7,lr}
- adds r5, r2, 0
- ldr r0, _08068C50 @ =gMapHeader
- ldr r0, [r0, 0x4]
- lsls r1, 24
- asrs r7, r1, 24
- lsls r6, r7, 3
- ldr r0, [r0, 0x8]
- adds r4, r0, r6
- ldrb r0, [r4, 0x6]
- cmp r0, 0x7F
- bne _08068C54
- ldrb r0, [r4, 0x5]
- bl copy_saved_warp2_bank_and_enter_x_to_warp1
- b _08068C9E
- .align 2, 0
-_08068C50: .4byte gMapHeader
-_08068C54:
- movs r0, 0x7
- ldrsb r0, [r4, r0]
- movs r1, 0x6
- ldrsb r1, [r4, r1]
- movs r2, 0x5
- ldrsb r2, [r4, r2]
- bl warp1_set_2
- movs r1, 0
- ldrsh r0, [r5, r1]
- movs r2, 0x2
- ldrsh r1, [r5, r2]
- bl sub_80535C4
- ldrb r0, [r4, 0x7]
- ldrb r1, [r4, 0x6]
- bl get_mapheader_by_bank_and_number
- ldr r1, [r0, 0x4]
- ldrb r0, [r4, 0x5]
- ldr r1, [r1, 0x8]
- lsls r0, 3
- adds r0, r1
- ldrb r0, [r0, 0x6]
- cmp r0, 0x7F
- bne _08068C9E
- adds r0, r6, r1
- ldrb r0, [r0, 0x5]
- ldr r2, _08068CA4 @ =gSaveBlock1
- movs r1, 0x4
- ldrsb r1, [r2, r1]
- ldrb r2, [r2, 0x5]
- lsls r2, 24
- asrs r2, 24
- adds r3, r7, 0
- bl saved_warp2_set
-_08068C9E:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08068CA4: .4byte gSaveBlock1
- thumb_func_end sub_8068C30
-
- thumb_func_start map_warp_consider_2_to_inside
-map_warp_consider_2_to_inside: @ 8068CA8
- push {r4-r7,lr}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r0, r1, 16
- adds r7, r0, 0
- lsls r2, 24
- lsrs r2, 24
- cmp r2, 0x2
- bne _08068D2C
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_80571C0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068CE0
- ldr r0, _08068CDC @ =gMapHeader
- ldr r1, [r0, 0x4]
- adds r0, r5, 0
- bl sub_80BC038
- movs r0, 0x1
- b _08068D2E
- .align 2, 0
-_08068CDC: .4byte gMapHeader
-_08068CE0:
- adds r0, r4, 0
- bl MetatileBehavior_IsWarpDoor
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068D2C
- ldr r6, _08068D28 @ =gMapHeader
- adds r0, r6, 0
- adds r1, r5, 0
- bl map_warp_check_packed
- lsls r0, 24
- asrs r4, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r4, r0
- beq _08068D2C
- adds r0, r7, 0
- bl sub_8068B30
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068D2C
- bl walkrun_find_lowest_active_bit_in_bitfield
- adds r0, r6, 0
- adds r1, r4, 0
- adds r2, r5, 0
- bl sub_8068C30
- bl sub_8080EF0
- movs r0, 0x1
- b _08068D2E
- .align 2, 0
-_08068D28: .4byte gMapHeader
-_08068D2C:
- movs r0, 0
-_08068D2E:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end map_warp_consider_2_to_inside
-
- thumb_func_start map_warp_check
-map_warp_check: @ 8068D34
- push {r4-r6,lr}
- lsls r1, 16
- lsrs r6, r1, 16
- lsls r2, 16
- lsrs r5, r2, 16
- lsls r3, 24
- lsrs r4, r3, 24
- ldr r0, [r0, 0x4]
- ldr r1, [r0, 0x8]
- ldrb r3, [r0, 0x1]
- movs r2, 0
- cmp r2, r3
- bge _08068D72
-_08068D4E:
- ldrh r0, [r1]
- cmp r0, r6
- bne _08068D6A
- ldrh r0, [r1, 0x2]
- cmp r0, r5
- bne _08068D6A
- ldrb r0, [r1, 0x4]
- cmp r0, r4
- beq _08068D64
- cmp r0, 0
- bne _08068D6A
-_08068D64:
- lsls r0, r2, 24
- asrs r0, 24
- b _08068D76
-_08068D6A:
- adds r2, 0x1
- adds r1, 0x8
- cmp r2, r3
- blt _08068D4E
-_08068D72:
- movs r0, 0x1
- negs r0, r0
-_08068D76:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end map_warp_check
-
- thumb_func_start trigger_activate
-trigger_activate: @ 8068D7C
- push {r4,lr}
- adds r4, r0, 0
- cmp r4, 0
- beq _08068DB2
- ldr r1, [r4, 0xC]
- cmp r1, 0
- bne _08068D92
- ldrb r0, [r4, 0x6]
- bl DoCoordEventWeather
- b _08068DB2
-_08068D92:
- ldrh r0, [r4, 0x6]
- cmp r0, 0
- beq _08068DAC
- ldrh r0, [r4, 0x6]
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r4, 0x8]
- cmp r0, r1
- bne _08068DB2
- ldr r0, [r4, 0xC]
- b _08068DB4
-_08068DAC:
- adds r0, r1, 0
- bl ScriptContext2_RunNewScript
-_08068DB2:
- movs r0, 0
-_08068DB4:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end trigger_activate
-
- thumb_func_start mapheader_trigger_activate_at
-mapheader_trigger_activate_at: @ 8068DBC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r1, 16
- lsrs r1, 16
- mov r10, r1
- lsls r2, 16
- lsrs r2, 16
- mov r9, r2
- lsls r3, 24
- lsrs r3, 24
- mov r8, r3
- ldr r0, [r0, 0x4]
- ldr r1, [r0, 0xC]
- ldrb r7, [r0, 0x2]
- movs r6, 0
- cmp r6, r7
- bge _08068E12
- adds r5, r1, 0
- adds r4, r5, 0
-_08068DE8:
- ldrh r0, [r4]
- cmp r0, r10
- bne _08068E08
- ldrh r0, [r4, 0x2]
- cmp r0, r9
- bne _08068E08
- ldrb r0, [r4, 0x4]
- cmp r0, r8
- beq _08068DFE
- cmp r0, 0
- bne _08068E08
-_08068DFE:
- adds r0, r5, 0
- bl trigger_activate
- cmp r0, 0
- bne _08068E14
-_08068E08:
- adds r4, 0x10
- adds r5, 0x10
- adds r6, 0x1
- cmp r6, r7
- blt _08068DE8
-_08068E12:
- movs r0, 0
-_08068E14:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end mapheader_trigger_activate_at
-
- thumb_func_start sub_8068E24
-sub_8068E24: @ 8068E24
- push {r4,lr}
- ldr r4, _08068E48 @ =gMapHeader
- ldrh r1, [r0]
- subs r1, 0x7
- lsls r1, 16
- lsrs r1, 16
- ldrh r2, [r0, 0x2]
- subs r2, 0x7
- lsls r2, 16
- lsrs r2, 16
- ldrb r3, [r0, 0x4]
- adds r0, r4, 0
- bl mapheader_trigger_activate_at
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08068E48: .4byte gMapHeader
- thumb_func_end sub_8068E24
-
- thumb_func_start FindInvisibleMapObjectByPosition
-FindInvisibleMapObjectByPosition: @ 8068E4C
- push {r4-r7,lr}
- lsls r1, 16
- lsrs r7, r1, 16
- lsls r2, 16
- lsrs r6, r2, 16
- lsls r3, 24
- lsrs r5, r3, 24
- ldr r0, [r0, 0x4]
- ldr r4, [r0, 0x10]
- ldrb r3, [r0, 0x3]
- movs r2, 0
- cmp r2, r3
- bcs _08068E92
-_08068E66:
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r4
- ldrh r0, [r1]
- cmp r0, r7
- bne _08068E88
- ldrh r0, [r1, 0x2]
- cmp r0, r6
- bne _08068E88
- ldrb r0, [r1, 0x4]
- cmp r0, r5
- beq _08068E84
- cmp r0, 0
- bne _08068E88
-_08068E84:
- adds r0, r1, 0
- b _08068E94
-_08068E88:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, r3
- bcc _08068E66
-_08068E92:
- movs r0, 0
-_08068E94:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end FindInvisibleMapObjectByPosition
-
- thumb_func_start dive_warp
-dive_warp: @ 8068E9C
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r5, r1, 16
- ldr r0, _08068ED0 @ =gMapHeader
- ldrb r0, [r0, 0x17]
- cmp r0, 0x5
- bne _08068ED4
- lsls r0, r5, 24
- lsrs r0, 24
- bl sub_805750C
- lsls r0, 24
- cmp r0, 0
- bne _08068ED4
- ldrh r0, [r4]
- subs r0, 0x7
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r4, 0x2]
- subs r1, 0x7
- lsls r1, 16
- lsrs r1, 16
- bl sub_80538B0
- b _08068EF8
- .align 2, 0
-_08068ED0: .4byte gMapHeader
-_08068ED4:
- lsls r0, r5, 24
- lsrs r0, 24
- bl sub_80574EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068F10
- ldrh r0, [r4]
- subs r0, 0x7
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r4, 0x2]
- subs r1, 0x7
- lsls r1, 16
- lsrs r1, 16
- bl sub_80538D0
-_08068EF8:
- lsls r0, 24
- cmp r0, 0
- beq _08068F10
- bl walkrun_find_lowest_active_bit_in_bitfield
- bl sp13E_warp_to_last_warp
- movs r0, 0xE9
- bl PlaySE
- movs r0, 0x1
- b _08068F12
-_08068F10:
- movs r0, 0
-_08068F12:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end dive_warp
-
- thumb_func_start sub_8068F18
-sub_8068F18: @ 8068F18
- push {r4,r5,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _08068F70 @ =gMapHeader
- ldrb r0, [r0, 0x17]
- cmp r0, 0x5
- bne _08068F74
- adds r0, r5, 0
- bl sub_805750C
- lsls r0, 24
- cmp r0, 0
- bne _08068F74
- mov r0, sp
- ldrh r0, [r0]
- subs r0, 0x7
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r4]
- subs r1, 0x7
- lsls r1, 16
- lsrs r1, 16
- bl sub_80538B0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068FA4
- movs r0, 0x1
- b _08068FA6
- .align 2, 0
-_08068F70: .4byte gMapHeader
-_08068F74:
- adds r0, r5, 0
- bl sub_80574EC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068FA4
- mov r0, sp
- ldrh r0, [r0]
- subs r0, 0x7
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r4]
- subs r1, 0x7
- lsls r1, 16
- lsrs r1, 16
- bl sub_80538D0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08068FA4
- movs r0, 0x2
- b _08068FA6
-_08068FA4:
- movs r0, 0
-_08068FA6:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8068F18
-
- thumb_func_start GetFieldObjectScriptPointerForComparison
-GetFieldObjectScriptPointerForComparison: @ 8068FB0
- push {r4,r5,lr}
- sub sp, 0x8
- bl player_get_direction_upper_nybble
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- mov r5, sp
- mov r0, sp
- bl player_get_next_pos_and_height
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0x2
- ldrsh r1, [r5, r2]
- bl MapGridGetMetatileBehaviorAt
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r0, sp
- adds r2, r4, 0
- bl sub_8068364
- add sp, 0x8
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GetFieldObjectScriptPointerForComparison
-
- thumb_func_start sub_8068FEC
-sub_8068FEC: @ 8068FEC
- push {r4,lr}
- sub sp, 0x8
- bl player_get_direction_upper_nybble
- mov r4, sp
- mov r0, sp
- bl player_get_pos_to_and_height
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0x2
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- ldr r4, _0806902C @ =gMapHeader
- adds r0, r4, 0
- mov r1, sp
- bl map_warp_check_packed
- adds r1, r0, 0
- lsls r1, 24
- asrs r1, 24
- adds r0, r4, 0
- mov r2, sp
- bl sub_8068C30
- movs r0, 0
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0806902C: .4byte gMapHeader
- thumb_func_end sub_8068FEC
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/field_effect.s b/asm/field_effect.s
index 4bcba42ce..66d89ef09 100644
--- a/asm/field_effect.s
+++ b/asm/field_effect.s
@@ -1620,7 +1620,7 @@ task00_8084310: @ 8086604
cmp r0, 0
beq _08086666
ldr r1, _08086670 @ =gUnknown_0202FF84
- ldr r0, _08086674 @ =gUnknown_03005CE0
+ ldr r0, _08086674 @ =gLastFieldPokeMenuOpened
ldrb r0, [r0]
str r0, [r1]
cmp r0, 0x5
@@ -1654,7 +1654,7 @@ _08086666:
.align 2, 0
_0808666C: .4byte gTasks
_08086670: .4byte gUnknown_0202FF84
-_08086674: .4byte gUnknown_03005CE0
+_08086674: .4byte gLastFieldPokeMenuOpened
_08086678: .4byte CB2_LoadMap
_0808667C: .4byte gUnknown_0300485C
_08086680: .4byte mapldr_08084390
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index 348e1d0f3..d54b57fed 100644
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -6,4242 +6,6 @@
.text
- thumb_func_start npc_clear_ids_and_state
-npc_clear_ids_and_state: @ 805AA50
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0
- movs r2, 0x24
- bl memset
- movs r0, 0xFF
- strb r0, [r4, 0x8]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r4, 0x9]
- strb r0, [r4, 0xA]
- strb r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end npc_clear_ids_and_state
-
- thumb_func_start npcs_clear_ids_and_state
-npcs_clear_ids_and_state: @ 805AA70
- push {r4,r5,lr}
- movs r4, 0
- ldr r5, _0805AA94 @ =gMapObjects
-_0805AA76:
- lsls r0, r4, 3
- adds r0, r4
- lsls r0, 2
- adds r0, r5
- bl npc_clear_ids_and_state
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bls _0805AA76
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805AA94: .4byte gMapObjects
- thumb_func_end npcs_clear_ids_and_state
-
- thumb_func_start sub_805AA98
-sub_805AA98: @ 805AA98
- push {lr}
- bl strange_npc_table_clear
- bl npcs_clear_ids_and_state
- bl ClearPlayerAvatarInfo
- bl sub_805AAB0
- pop {r0}
- bx r0
- thumb_func_end sub_805AA98
-
- thumb_func_start sub_805AAB0
-sub_805AAB0: @ 805AAB0
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- ldr r0, _0805AB4C @ =gFieldEffectObjectTemplatePointers
- ldr r0, [r0, 0x54]
- mov r9, r0
- movs r1, 0
- movs r2, 0
- movs r3, 0x1F
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0805AB50 @ =gSprites
- mov r10, r1
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- add r4, r10
- ldrb r1, [r4, 0x1]
- movs r5, 0x4
- negs r5, r5
- adds r0, r5, 0
- ands r0, r1
- movs r1, 0x1
- mov r8, r1
- mov r1, r8
- orrs r0, r1
- strb r0, [r4, 0x1]
- adds r0, r4, 0
- bl InitSpriteAffineAnim
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAffineAnim
- adds r4, 0x3E
- ldrb r0, [r4]
- movs r6, 0x4
- orrs r0, r6
- strb r0, [r4]
- mov r0, r9
- movs r1, 0
- movs r2, 0
- movs r3, 0x1F
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- add r4, r10
- ldrb r0, [r4, 0x1]
- ands r5, r0
- mov r0, r8
- orrs r5, r0
- strb r5, [r4, 0x1]
- adds r0, r4, 0
- bl InitSpriteAffineAnim
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- adds r4, 0x3E
- ldrb r0, [r4]
- orrs r0, r6
- strb r0, [r4]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0805AB4C: .4byte gFieldEffectObjectTemplatePointers
-_0805AB50: .4byte gSprites
- thumb_func_end sub_805AAB0
-
- thumb_func_start sub_805AB54
-sub_805AB54: @ 805AB54
- push {lr}
- movs r1, 0
- ldr r2, _0805AB60 @ =gMapObjects
- ldrb r0, [r2]
- b _0805AB78
- .align 2, 0
-_0805AB60: .4byte gMapObjects
-_0805AB64:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xF
- bhi _0805AB7E
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0]
-_0805AB78:
- lsls r0, 31
- cmp r0, 0
- bne _0805AB64
-_0805AB7E:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_805AB54
-
- thumb_func_start GetFieldObjectIdByLocalIdAndMap
-GetFieldObjectIdByLocalIdAndMap: @ 805AB84
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- cmp r0, 0xFE
- bls _0805AB9C
- bl GetFieldObjectIdByLocalId
- b _0805ABA0
-_0805AB9C:
- bl GetFieldObjectIdByLocalIdAndMapInternal
-_0805ABA0:
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end GetFieldObjectIdByLocalIdAndMap
-
- thumb_func_start TryGetFieldObjectIdByLocalIdAndMap
-TryGetFieldObjectIdByLocalIdAndMap: @ 805ABA8
- push {r4,lr}
- adds r4, r3, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- bl GetFieldObjectIdByLocalIdAndMap
- strb r0, [r4]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _0805ABCA
- movs r0, 0
- b _0805ABCC
-_0805ABCA:
- movs r0, 0x1
-_0805ABCC:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end TryGetFieldObjectIdByLocalIdAndMap
-
- thumb_func_start GetFieldObjectIdByXY
-GetFieldObjectIdByXY: @ 805ABD4
- push {r4-r6,lr}
- movs r3, 0
- ldr r5, _0805AC14 @ =gMapObjects
- lsls r0, 16
- asrs r4, r0, 16
- lsls r1, 16
- asrs r1, 16
-_0805ABE2:
- lsls r0, r3, 3
- adds r0, r3
- lsls r0, 2
- adds r2, r0, r5
- ldrb r0, [r2]
- lsls r0, 31
- cmp r0, 0
- beq _0805AC02
- movs r6, 0x10
- ldrsh r0, [r2, r6]
- cmp r0, r4
- bne _0805AC02
- movs r6, 0x12
- ldrsh r0, [r2, r6]
- cmp r0, r1
- beq _0805AC0C
-_0805AC02:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xF
- bls _0805ABE2
-_0805AC0C:
- adds r0, r3, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0805AC14: .4byte gMapObjects
- thumb_func_end GetFieldObjectIdByXY
-
- thumb_func_start GetFieldObjectIdByLocalIdAndMapInternal
-GetFieldObjectIdByLocalIdAndMapInternal: @ 805AC18
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- lsls r2, 24
- lsrs r2, 24
- movs r1, 0
- ldr r6, _0805AC50 @ =gMapObjects
-_0805AC2A:
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r6
- ldrb r0, [r3]
- lsls r0, 31
- cmp r0, 0
- beq _0805AC54
- ldrb r0, [r3, 0x8]
- cmp r0, r5
- bne _0805AC54
- ldrb r0, [r3, 0x9]
- cmp r0, r4
- bne _0805AC54
- ldrb r0, [r3, 0xA]
- cmp r0, r2
- bne _0805AC54
- adds r0, r1, 0
- b _0805AC60
- .align 2, 0
-_0805AC50: .4byte gMapObjects
-_0805AC54:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xF
- bls _0805AC2A
- movs r0, 0x10
-_0805AC60:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GetFieldObjectIdByLocalIdAndMapInternal
-
- thumb_func_start GetFieldObjectIdByLocalId
-GetFieldObjectIdByLocalId: @ 805AC68
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- movs r2, 0
- ldr r4, _0805AC8C @ =gMapObjects
-_0805AC72:
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r4
- ldrb r0, [r1]
- lsls r0, 31
- cmp r0, 0
- beq _0805AC90
- ldrb r0, [r1, 0x8]
- cmp r0, r3
- bne _0805AC90
- adds r0, r2, 0
- b _0805AC9C
- .align 2, 0
-_0805AC8C: .4byte gMapObjects
-_0805AC90:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _0805AC72
- movs r0, 0x10
-_0805AC9C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetFieldObjectIdByLocalId
-
- thumb_func_start InitFieldObjectStateFromTemplate
-InitFieldObjectStateFromTemplate: @ 805ACA4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- adds r5, r0, 0
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r7, r2, 24
- ldrb r0, [r5]
- adds r1, r6, 0
- adds r2, r7, 0
- mov r3, sp
- bl GetAvailableFieldObjectSlot
- lsls r0, 24
- cmp r0, 0
- beq _0805ACCE
- movs r0, 0x10
- b _0805ADC2
-_0805ACCE:
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805ADD0 @ =gMapObjects
- adds r4, r0, r1
- adds r0, r4, 0
- bl npc_clear_ids_and_state
- ldrh r3, [r5, 0x4]
- adds r3, 0x7
- lsls r3, 16
- lsrs r3, 16
- ldrh r2, [r5, 0x6]
- adds r2, 0x7
- lsls r2, 16
- lsrs r2, 16
- ldrb r0, [r4]
- movs r1, 0x1
- orrs r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r4]
- ldrb r0, [r5, 0x1]
- strb r0, [r4, 0x5]
- ldrb r0, [r5, 0x9]
- strb r0, [r4, 0x6]
- ldrb r0, [r5]
- strb r0, [r4, 0x8]
- strb r6, [r4, 0x9]
- strb r7, [r4, 0xA]
- strh r3, [r4, 0xC]
- strh r2, [r4, 0xE]
- strh r3, [r4, 0x10]
- strh r2, [r4, 0x12]
- strh r3, [r4, 0x14]
- strh r2, [r4, 0x16]
- ldrb r0, [r5, 0x8]
- movs r7, 0xF
- adds r1, r7, 0
- ands r1, r0
- ldrb r2, [r4, 0xB]
- movs r0, 0x10
- negs r0, r0
- mov r8, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0xB]
- ldrb r1, [r5, 0x8]
- lsls r1, 4
- ands r0, r7
- orrs r0, r1
- strb r0, [r4, 0xB]
- ldrb r1, [r5, 0xA]
- lsls r1, 28
- movs r0, 0xF
- mov r9, r0
- lsrs r1, 28
- ldrb r2, [r4, 0x19]
- mov r0, r8
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x19]
- ldrb r1, [r5, 0xA]
- lsrs r1, 4
- lsls r1, 4
- ands r0, r7
- orrs r0, r1
- strb r0, [r4, 0x19]
- ldrh r0, [r5, 0xC]
- strb r0, [r4, 0x7]
- ldrh r0, [r5, 0xE]
- strb r0, [r4, 0x1D]
- ldr r1, _0805ADD4 @ =gUnknown_0836DC09
- ldrb r0, [r5, 0x9]
- adds r0, r1
- ldrb r1, [r0]
- adds r0, r4, 0
- adds r0, 0x20
- strb r1, [r0]
- ldrb r1, [r0]
- adds r0, r4, 0
- bl FieldObjectSetDirection
- adds r0, r4, 0
- bl FieldObjectHandleDynamicGraphicsId
- ldr r1, _0805ADD8 @ =gUnknown_0836DBBC
- ldrb r0, [r4, 0x6]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _0805ADBE
- ldrb r2, [r4, 0x19]
- adds r0, r7, 0
- ands r0, r2
- cmp r0, 0
- bne _0805ADA6
- lsls r0, r2, 28
- lsrs r0, 28
- adds r0, 0x1
- mov r1, r9
- ands r0, r1
- mov r1, r8
- ands r1, r2
- orrs r1, r0
- strb r1, [r4, 0x19]
-_0805ADA6:
- ldrb r2, [r4, 0x19]
- movs r0, 0xF0
- ands r0, r2
- cmp r0, 0
- bne _0805ADBE
- lsrs r1, r2, 4
- adds r1, 0x1
- lsls r1, 4
- adds r0, r7, 0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x19]
-_0805ADBE:
- mov r0, sp
- ldrb r0, [r0]
-_0805ADC2:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0805ADD0: .4byte gMapObjects
-_0805ADD4: .4byte gUnknown_0836DC09
-_0805ADD8: .4byte gUnknown_0836DBBC
- thumb_func_end InitFieldObjectStateFromTemplate
-
- thumb_func_start sub_805ADDC
-sub_805ADDC: @ 805ADDC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r0, _0805ADF4 @ =gMapHeader
- ldr r0, [r0, 0x4]
- cmp r0, 0
- bne _0805AE10
- b _0805AE3E
- .align 2, 0
-_0805ADF4: .4byte gMapHeader
-_0805ADF8:
- ldr r1, _0805AE0C @ =0xfffff3e0
- adds r0, r7, r1
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- adds r0, r4, 0
- bl InitFieldObjectStateFromTemplate
- lsls r0, 24
- lsrs r0, 24
- b _0805AE40
- .align 2, 0
-_0805AE0C: .4byte 0xfffff3e0
-_0805AE10:
- ldrb r6, [r0]
- movs r5, 0
- cmp r5, r6
- bcs _0805AE3E
- ldr r7, _0805AE4C @ =gSaveBlock1 + 0xC20
-_0805AE1A:
- lsls r0, r5, 1
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r7
- ldrb r0, [r4]
- cmp r0, r8
- bne _0805AE34
- ldrh r0, [r4, 0x14]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- beq _0805ADF8
-_0805AE34:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, r6
- bcc _0805AE1A
-_0805AE3E:
- movs r0, 0x10
-_0805AE40:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0805AE4C: .4byte gSaveBlock1 + 0xC20
- thumb_func_end sub_805ADDC
-
- thumb_func_start GetAvailableFieldObjectSlot
-GetAvailableFieldObjectSlot: @ 805AE50
- push {r4-r7,lr}
- mov r12, r3
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r4, r2, 24
- movs r2, 0
- ldr r1, _0805AEAC @ =gMapObjects
- ldrb r0, [r1]
- lsls r0, 31
- adds r7, r1, 0
- cmp r0, 0
- beq _0805AEA4
- adds r3, r1, 0
-_0805AE70:
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r3
- ldrb r0, [r1, 0x8]
- cmp r0, r6
- bne _0805AE8A
- ldrb r0, [r1, 0x9]
- cmp r0, r5
- bne _0805AE8A
- ldrb r0, [r1, 0xA]
- cmp r0, r4
- beq _0805AEA8
-_0805AE8A:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bhi _0805AEA8
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r0, r7
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- bne _0805AE70
-_0805AEA4:
- cmp r2, 0xF
- bls _0805AEB0
-_0805AEA8:
- movs r0, 0x1
- b _0805AEE4
- .align 2, 0
-_0805AEAC: .4byte gMapObjects
-_0805AEB0:
- mov r0, r12
- strb r2, [r0]
- ldr r1, _0805AEEC @ =gMapObjects
-_0805AEB6:
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r3, r0, r1
- ldrb r0, [r3]
- lsls r0, 31
- cmp r0, 0
- beq _0805AED8
- ldrb r0, [r3, 0x8]
- cmp r0, r6
- bne _0805AED8
- ldrb r0, [r3, 0x9]
- cmp r0, r5
- bne _0805AED8
- ldrb r0, [r3, 0xA]
- cmp r0, r4
- beq _0805AEA8
-_0805AED8:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _0805AEB6
- movs r0, 0
-_0805AEE4:
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0805AEEC: .4byte gMapObjects
- thumb_func_end GetAvailableFieldObjectSlot
-
- thumb_func_start RemoveFieldObject
-RemoveFieldObject: @ 805AEF0
- push {lr}
- ldrb r2, [r0]
- movs r1, 0x2
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- bl RemoveFieldObjectInternal
- pop {r0}
- bx r0
- thumb_func_end RemoveFieldObject
-
- thumb_func_start RemoveFieldObjectByLocalIdAndMap
-RemoveFieldObjectByLocalIdAndMap: @ 805AF04
- push {lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805AF42
- mov r0, sp
- ldrb r0, [r0]
- bl GetFieldObjectFlagIdByFieldObjectId
- lsls r0, 16
- lsrs r0, 16
- bl FlagSet
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805AF48 @ =gMapObjects
- adds r0, r1
- bl RemoveFieldObject
-_0805AF42:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0805AF48: .4byte gMapObjects
- thumb_func_end RemoveFieldObjectByLocalIdAndMap
-
- thumb_func_start RemoveFieldObjectInternal
-RemoveFieldObjectInternal: @ 805AF4C
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldrb r0, [r4, 0x5]
- bl GetFieldObjectGraphicsInfo
- ldrh r2, [r0, 0x6]
- ldr r1, _0805AF90 @ =0xffff0000
- ldr r0, [sp, 0x4]
- ands r0, r1
- orrs r0, r2
- str r0, [sp, 0x4]
- ldr r2, _0805AF94 @ =gSprites
- ldrb r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r2, 0
- adds r1, 0xC
- adds r0, r1
- mov r1, sp
- str r1, [r0]
- ldrb r1, [r4, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- bl DestroySprite
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805AF90: .4byte 0xffff0000
-_0805AF94: .4byte gSprites
- thumb_func_end RemoveFieldObjectInternal
-
- thumb_func_start npc_hide_all_but_player
-npc_hide_all_but_player: @ 805AF98
- push {r4,lr}
- movs r4, 0
-_0805AF9C:
- ldr r0, _0805AFC4 @ =gPlayerAvatar
- ldrb r0, [r0, 0x5]
- cmp r4, r0
- beq _0805AFB2
- lsls r0, r4, 3
- adds r0, r4
- lsls r0, 2
- ldr r1, _0805AFC8 @ =gMapObjects
- adds r0, r1
- bl RemoveFieldObject
-_0805AFB2:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bls _0805AF9C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805AFC4: .4byte gPlayerAvatar
-_0805AFC8: .4byte gMapObjects
- thumb_func_end npc_hide_all_but_player
-
- thumb_func_start sub_805AFCC
-sub_805AFCC: @ 805AFCC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r7, r1, 0
- adds r1, r2, 0
- adds r2, r3, 0
- ldr r3, [sp, 0x20]
- ldr r4, [sp, 0x24]
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 16
- lsrs r3, 16
- mov r9, r3
- lsls r4, 16
- lsrs r4, 16
- mov r10, r4
- bl InitFieldObjectStateFromTemplate
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- cmp r0, 0x10
- bne _0805B006
- movs r0, 0x10
- b _0805B154
-_0805B006:
- mov r0, r8
- lsls r4, r0, 3
- adds r0, r4, r0
- lsls r0, 2
- ldr r1, _0805B030 @ =gMapObjects
- adds r5, r0, r1
- ldrb r0, [r5, 0x5]
- bl GetFieldObjectGraphicsInfo
- adds r6, r0, 0
- ldrb r1, [r6, 0xC]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0
- bne _0805B034
- ldrh r0, [r6, 0x2]
- lsls r1, 28
- lsrs r1, 28
- bl npc_load_two_palettes__no_record
- b _0805B042
- .align 2, 0
-_0805B030: .4byte gMapObjects
-_0805B034:
- cmp r0, 0xA
- bne _0805B042
- ldrh r0, [r6, 0x2]
- lsls r1, 28
- lsrs r1, 28
- bl npc_load_two_palettes__and_record
-_0805B042:
- ldrb r0, [r5, 0x6]
- cmp r0, 0x4C
- bne _0805B050
- ldrb r0, [r5, 0x1]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r5, 0x1]
-_0805B050:
- ldr r1, _0805B084 @ =0x0000ffff
- adds r0, r1, 0
- strh r0, [r7, 0x2]
- adds r0, r7, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x40
- bne _0805B08C
- ldr r0, _0805B088 @ =gMapObjects
- mov r2, r8
- adds r1, r4, r2
- lsls r1, 2
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- movs r0, 0x10
- b _0805B154
- .align 2, 0
-_0805B084: .4byte 0x0000ffff
-_0805B088: .4byte gMapObjects
-_0805B08C:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, _0805B164 @ =gSprites
- adds r4, r0, r1
- mov r1, r9
- lsls r0, r1, 16
- asrs r0, 16
- ldrh r2, [r5, 0x10]
- adds r0, r2
- lsls r0, 16
- asrs r0, 16
- mov r2, r10
- lsls r1, r2, 16
- asrs r1, 16
- ldrh r2, [r5, 0x12]
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- adds r2, r4, 0
- adds r2, 0x20
- adds r3, r4, 0
- adds r3, 0x22
- bl sub_8060388
- ldrh r0, [r6, 0x8]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r1, r4, 0
- adds r1, 0x28
- strb r0, [r1]
- ldrh r0, [r6, 0xA]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r2, r4, 0
- adds r2, 0x29
- strb r0, [r2]
- ldrh r0, [r4, 0x20]
- adds r0, 0x8
- strh r0, [r4, 0x20]
- ldrh r1, [r4, 0x22]
- adds r1, 0x10
- movs r0, 0
- ldrsb r0, [r2, r0]
- adds r0, r1
- strh r0, [r4, 0x22]
- ldrb r1, [r6, 0xC]
- lsls r1, 28
- lsrs r1, 24
- ldrb r2, [r4, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x5]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2]
- mov r0, r8
- strh r0, [r4, 0x2E]
- strb r7, [r5, 0x4]
- ldrb r1, [r6, 0xC]
- lsls r1, 25
- lsrs r1, 31
- lsls r1, 4
- ldrb r2, [r5, 0x1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r5, 0x1]
- lsls r0, 27
- cmp r0, 0
- blt _0805B13E
- ldrb r0, [r5, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl FieldObjectDirectionToImageAnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
-_0805B13E:
- ldrb r0, [r5, 0xB]
- lsrs r0, 4
- adds r1, r4, 0
- movs r2, 0x1
- bl SetObjectSubpriorityByZCoord
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80634D0
- mov r0, r8
-_0805B154:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0805B164: .4byte gSprites
- thumb_func_end sub_805AFCC
-
- thumb_func_start SpawnFieldObject
-SpawnFieldObject: @ 805B168
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x2C
- mov r9, r0
- adds r6, r1, 0
- mov r8, r2
- adds r4, r3, 0
- ldr r5, [sp, 0x48]
- lsls r6, 24
- lsrs r6, 24
- mov r0, r8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- movs r0, 0
- str r0, [sp, 0x20]
- mov r1, r9
- ldrb r0, [r1, 0x1]
- bl GetFieldObjectGraphicsInfo
- adds r7, r0, 0
- add r2, sp, 0x20
- mov r0, r9
- add r1, sp, 0x8
- bl MakeObjectTemplateFromFieldObjectTemplate
- ldrh r3, [r7, 0x6]
- ldr r2, _0805B1E0 @ =0xffff0000
- add r1, sp, 0x24
- ldr r0, [r1, 0x4]
- ands r0, r2
- orrs r0, r3
- str r0, [r1, 0x4]
- str r1, [sp, 0x14]
- lsls r4, 16
- asrs r4, 16
- str r4, [sp]
- lsls r5, 16
- asrs r5, 16
- str r5, [sp, 0x4]
- mov r0, r9
- add r1, sp, 0x8
- adds r2, r6, 0
- mov r3, r8
- bl sub_805AFCC
- lsls r0, 24
- lsrs r2, r0, 24
- adds r5, r2, 0
- cmp r2, 0x10
- bne _0805B1E4
- movs r0, 0x10
- b _0805B21A
- .align 2, 0
-_0805B1E0: .4byte 0xffff0000
-_0805B1E4:
- ldr r4, _0805B228 @ =gSprites
- ldr r1, _0805B22C @ =gMapObjects
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- adds r3, r0, r1
- ldrb r1, [r3, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0xC
- adds r0, r1
- ldr r1, [r7, 0x1C]
- str r1, [r0]
- ldr r2, [sp, 0x20]
- cmp r2, 0
- beq _0805B218
- ldrb r1, [r3, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r1, r2, 0
- bl SetSubspriteTables
-_0805B218:
- adds r0, r5, 0
-_0805B21A:
- add sp, 0x2C
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0805B228: .4byte gSprites
-_0805B22C: .4byte gMapObjects
- thumb_func_end SpawnFieldObject
-
- thumb_func_start SpawnSpecialFieldObject
-SpawnSpecialFieldObject: @ 805B230
- push {r4-r6,lr}
- sub sp, 0x8
- adds r5, r0, 0
- mov r4, sp
- adds r4, 0x6
- add r0, sp, 0x4
- adds r1, r4, 0
- bl GetFieldObjectMovingCameraOffset
- ldr r0, _0805B268 @ =gSaveBlock1
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- add r0, sp, 0x4
- movs r6, 0
- ldrsh r3, [r0, r6]
- movs r6, 0
- ldrsh r0, [r4, r6]
- str r0, [sp]
- adds r0, r5, 0
- bl SpawnFieldObject
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x8
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0805B268: .4byte gSaveBlock1
- thumb_func_end SpawnSpecialFieldObject
-
- thumb_func_start SpawnSpecialFieldObjectParametrized
-SpawnSpecialFieldObjectParametrized: @ 805B26C
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x18
- ldr r4, [sp, 0x2C]
- ldr r5, [sp, 0x30]
- mov r8, r5
- lsls r0, 24
- lsrs r0, 24
- lsls r3, 16
- ldr r5, _0805B2D0 @ =0xfff90000
- adds r3, r5
- lsrs r3, 16
- lsls r4, 16
- adds r4, r5
- lsrs r4, 16
- mov r5, sp
- movs r6, 0
- strb r2, [r5]
- mov r2, sp
- strb r0, [r2, 0x1]
- mov r0, sp
- strb r6, [r0, 0x2]
- movs r5, 0
- strh r3, [r0, 0x4]
- strh r4, [r0, 0x6]
- mov r2, r8
- strb r2, [r0, 0x8]
- strb r1, [r0, 0x9]
- mov r2, sp
- ldrb r1, [r2, 0xA]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0xA]
- mov r0, sp
- strb r5, [r0, 0xA]
- strh r6, [r0, 0xC]
- strh r6, [r0, 0xE]
- bl SpawnSpecialFieldObject
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x18
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0805B2D0: .4byte 0xfff90000
- thumb_func_end SpawnSpecialFieldObjectParametrized
-
- thumb_func_start show_sprite
-show_sprite: @ 805B2D4
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- adds r1, r7, 0
- adds r2, r6, 0
- bl GetFieldObjectTemplateByLocalIdAndMap
- adds r5, r0, 0
- cmp r5, 0
- beq _0805B31A
- mov r4, sp
- adds r4, 0x6
- add r0, sp, 0x4
- adds r1, r4, 0
- bl GetFieldObjectMovingCameraOffset
- add r0, sp, 0x4
- movs r1, 0
- ldrsh r3, [r0, r1]
- movs r1, 0
- ldrsh r0, [r4, r1]
- str r0, [sp]
- adds r0, r5, 0
- adds r1, r7, 0
- adds r2, r6, 0
- bl SpawnFieldObject
- lsls r0, 24
- lsrs r0, 24
- b _0805B31C
-_0805B31A:
- movs r0, 0x10
-_0805B31C:
- add sp, 0x8
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end show_sprite
-
- thumb_func_start MakeObjectTemplateFromFieldObjectGraphicsInfo
-MakeObjectTemplateFromFieldObjectGraphicsInfo: @ 805B324
- push {r4-r6,lr}
- adds r5, r1, 0
- adds r4, r2, 0
- adds r6, r3, 0
- lsls r0, 24
- lsrs r0, 24
- bl GetFieldObjectGraphicsInfo
- ldrh r1, [r0]
- strh r1, [r4]
- ldrh r1, [r0, 0x2]
- strh r1, [r4, 0x2]
- ldr r1, [r0, 0x10]
- str r1, [r4, 0x4]
- ldr r1, [r0, 0x18]
- str r1, [r4, 0x8]
- ldr r1, [r0, 0x1C]
- str r1, [r4, 0xC]
- ldr r1, [r0, 0x20]
- str r1, [r4, 0x10]
- str r5, [r4, 0x14]
- ldr r0, [r0, 0x14]
- str r0, [r6]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end MakeObjectTemplateFromFieldObjectGraphicsInfo
-
- thumb_func_start MakeObjectTemplateFromFieldObjectGraphicsInfoWithCallbackIndex
-MakeObjectTemplateFromFieldObjectGraphicsInfoWithCallbackIndex: @ 805B358
- push {r4,lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- ldr r4, _0805B374 @ =gUnknown_0836DA88
- lsrs r1, 14
- adds r1, r4
- ldr r1, [r1]
- bl MakeObjectTemplateFromFieldObjectGraphicsInfo
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805B374: .4byte gUnknown_0836DA88
- thumb_func_end MakeObjectTemplateFromFieldObjectGraphicsInfoWithCallbackIndex
-
- thumb_func_start MakeObjectTemplateFromFieldObjectTemplate
-MakeObjectTemplateFromFieldObjectTemplate: @ 805B378
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r3, r2, 0
- ldrb r0, [r4, 0x1]
- ldrb r1, [r4, 0x9]
- adds r2, r5, 0
- bl MakeObjectTemplateFromFieldObjectGraphicsInfoWithCallbackIndex
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end MakeObjectTemplateFromFieldObjectTemplate
-
- thumb_func_start AddPseudoFieldObject
-AddPseudoFieldObject: @ 805B390
- push {r4-r6,lr}
- sub sp, 0x1C
- ldr r4, [sp, 0x2C]
- lsls r0, 16
- lsrs r0, 16
- lsls r2, 16
- lsrs r6, r2, 16
- lsls r3, 16
- lsrs r5, r3, 16
- lsls r4, 24
- lsrs r4, 24
- add r3, sp, 0x18
- mov r2, sp
- bl MakeObjectTemplateFromFieldObjectGraphicsInfo
- mov r0, sp
- ldrh r1, [r0, 0x2]
- ldr r0, _0805B408 @ =0x0000ffff
- cmp r1, r0
- beq _0805B3C0
- mov r0, sp
- ldrh r0, [r0, 0x2]
- bl sub_805BDF8
-_0805B3C0:
- lsls r1, r6, 16
- asrs r1, 16
- lsls r2, r5, 16
- asrs r2, 16
- mov r0, sp
- adds r3, r4, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x40
- beq _0805B3FC
- ldr r1, [sp, 0x18]
- cmp r1, 0
- beq _0805B3FC
- lsls r4, r5, 4
- adds r4, r5
- lsls r4, 2
- ldr r0, _0805B40C @ =gSprites
- adds r4, r0
- adds r0, r4, 0
- bl SetSubspriteTables
- adds r4, 0x42
- ldrb r1, [r4]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r4]
-_0805B3FC:
- adds r0, r5, 0
- add sp, 0x1C
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0805B408: .4byte 0x0000ffff
-_0805B40C: .4byte gSprites
- thumb_func_end AddPseudoFieldObject
-
- thumb_func_start sub_805B410
-sub_805B410: @ 805B410
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x24
- adds r5, r0, 0
- ldr r0, [sp, 0x44]
- ldr r4, [sp, 0x48]
- lsls r5, 24
- lsrs r5, 24
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- add r1, sp, 0x18
- mov r8, r1
- strh r2, [r1]
- mov r6, sp
- adds r6, 0x1A
- strh r3, [r6]
- lsls r0, 24
- lsrs r7, r0, 24
- mov r9, r7
- lsls r4, 24
- lsrs r4, 24
- str r4, [sp, 0x20]
- adds r0, r5, 0
- bl GetFieldObjectGraphicsInfo
- adds r4, r0, 0
- ldr r1, _0805B550 @ =sub_8064970
- add r3, sp, 0x1C
- adds r0, r5, 0
- mov r2, sp
- bl MakeObjectTemplateFromFieldObjectGraphicsInfo
- mov r1, sp
- ldr r2, _0805B554 @ =0x0000ffff
- adds r0, r2, 0
- strh r0, [r1, 0x2]
- mov r1, r8
- movs r2, 0
- ldrsh r0, [r1, r2]
- adds r0, 0x7
- strh r0, [r1]
- movs r1, 0
- ldrsh r0, [r6, r1]
- adds r0, 0x7
- strh r0, [r6]
- mov r0, r8
- adds r1, r6, 0
- movs r2, 0x8
- movs r3, 0x10
- bl sub_8060470
- mov r2, r8
- movs r0, 0
- ldrsh r1, [r2, r0]
- movs r0, 0
- ldrsh r2, [r6, r0]
- mov r0, sp
- movs r3, 0
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x40
- beq _0805B53C
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- ldr r1, _0805B558 @ =gSprites
- adds r5, r0, r1
- ldrh r0, [r4, 0x8]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r1, r5, 0
- adds r1, 0x28
- strb r0, [r1]
- ldrh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r1, 0x1
- strb r0, [r1]
- movs r0, 0
- ldrsb r0, [r1, r0]
- ldrh r1, [r5, 0x22]
- adds r0, r1
- strh r0, [r5, 0x22]
- ldrb r1, [r4, 0xC]
- lsls r1, 28
- lsrs r1, 24
- ldrb r3, [r5, 0x5]
- movs r2, 0xF
- adds r0, r2, 0
- ands r0, r3
- orrs r0, r1
- strb r0, [r5, 0x5]
- adds r3, r5, 0
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r3]
- mov r0, r10
- strh r0, [r5, 0x2E]
- strh r7, [r5, 0x30]
- ldrb r1, [r4, 0xC]
- ands r2, r1
- cmp r2, 0xA
- bne _0805B4FC
- ldrh r0, [r4, 0x2]
- lsls r1, 28
- lsrs r1, 28
- bl npc_load_two_palettes__and_record
-_0805B4FC:
- ldr r1, [sp, 0x1C]
- cmp r1, 0
- beq _0805B518
- adds r0, r5, 0
- bl SetSubspriteTables
- adds r2, r5, 0
- adds r2, 0x42
- ldrb r0, [r2]
- movs r1, 0x3F
- ands r1, r0
- movs r0, 0x80
- orrs r1, r0
- strb r1, [r2]
-_0805B518:
- adds r0, r5, 0
- mov r1, r9
- bl InitObjectPriorityByZCoord
- mov r0, r9
- adds r1, r5, 0
- movs r2, 0x1
- bl SetObjectSubpriorityByZCoord
- ldr r0, [sp, 0x20]
- bl FieldObjectDirectionToImageAnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl StartSpriteAnim
-_0805B53C:
- adds r0, r6, 0
- add sp, 0x24
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0805B550: .4byte sub_8064970
-_0805B554: .4byte 0x0000ffff
-_0805B558: .4byte gSprites
- thumb_func_end sub_805B410
-
- thumb_func_start sub_805B55C
-sub_805B55C: @ 805B55C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r0, 16
- lsrs r3, r0, 16
- lsls r1, 16
- lsrs r1, 16
- str r1, [sp, 0x4]
- ldr r0, _0805B628 @ =gMapHeader
- ldr r5, [r0, 0x4]
- cmp r5, 0
- beq _0805B618
- ldr r4, _0805B62C @ =gSaveBlock1
- ldrh r0, [r4]
- subs r1, r0, 0x2
- lsls r1, 16
- lsrs r1, 16
- adds r0, 0x11
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0x8]
- ldrh r2, [r4, 0x2]
- adds r0, r2, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0xC]
- ldrb r6, [r5]
- movs r5, 0
- cmp r5, r6
- bcs _0805B618
- lsls r0, r2, 16
- asrs r0, 16
- mov r10, r0
- adds r7, r4, 0
- lsls r0, r1, 16
- asrs r0, 16
- mov r9, r0
- lsls r3, 16
- mov r8, r3
-_0805B5B2:
- lsls r0, r5, 1
- adds r0, r5
- lsls r0, 3
- ldr r1, _0805B630 @ =gSaveBlock1 + 0xC20
- adds r4, r0, r1
- ldrh r0, [r4, 0x4]
- adds r0, 0x7
- lsls r0, 16
- lsrs r2, r0, 16
- ldrh r0, [r4, 0x6]
- adds r0, 0x7
- lsls r0, 16
- asrs r1, r0, 16
- cmp r10, r1
- bgt _0805B60E
- ldr r3, [sp, 0xC]
- lsls r0, r3, 16
- asrs r0, 16
- cmp r0, r1
- blt _0805B60E
- lsls r0, r2, 16
- asrs r1, r0, 16
- cmp r9, r1
- bgt _0805B60E
- ldr r2, [sp, 0x8]
- lsls r0, r2, 16
- asrs r0, 16
- cmp r0, r1
- blt _0805B60E
- ldrh r0, [r4, 0x14]
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _0805B60E
- ldrb r1, [r7, 0x5]
- ldrb r2, [r7, 0x4]
- ldr r3, [sp, 0x4]
- lsls r0, r3, 16
- asrs r0, 16
- str r0, [sp]
- adds r0, r4, 0
- mov r4, r8
- asrs r3, r4, 16
- bl SpawnFieldObject
-_0805B60E:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, r6
- bcc _0805B5B2
-_0805B618:
- 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
-_0805B628: .4byte gMapHeader
-_0805B62C: .4byte gSaveBlock1
-_0805B630: .4byte gSaveBlock1 + 0xC20
- thumb_func_end sub_805B55C
-
- thumb_func_start RemoveFieldObjectsOutsideView
-RemoveFieldObjectsOutsideView: @ 805B634
- push {r4-r6,lr}
- movs r3, 0
- ldr r6, _0805B688 @ =gLinkPlayerMapObjects
-_0805B63A:
- movs r2, 0
- movs r4, 0
- adds r5, r3, 0x1
-_0805B640:
- lsls r0, r2, 2
- adds r1, r0, r6
- ldrb r0, [r1]
- cmp r0, 0
- beq _0805B652
- ldrb r1, [r1, 0x2]
- cmp r3, r1
- bne _0805B652
- movs r4, 0x1
-_0805B652:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3
- bls _0805B640
- cmp r4, 0
- bne _0805B67A
- lsls r0, r3, 3
- adds r0, r3
- lsls r0, 2
- ldr r1, _0805B68C @ =gMapObjects
- adds r2, r0, r1
- ldr r0, [r2]
- ldr r1, _0805B690 @ =0x00010001
- ands r0, r1
- cmp r0, 0x1
- bne _0805B67A
- adds r0, r2, 0
- bl RemoveFieldObjectIfOutsideView
-_0805B67A:
- lsls r0, r5, 24
- lsrs r3, r0, 24
- cmp r3, 0xF
- bls _0805B63A
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0805B688: .4byte gLinkPlayerMapObjects
-_0805B68C: .4byte gMapObjects
-_0805B690: .4byte 0x00010001
- thumb_func_end RemoveFieldObjectsOutsideView
-
- thumb_func_start RemoveFieldObjectIfOutsideView
-RemoveFieldObjectIfOutsideView: @ 805B694
- push {r4-r7,lr}
- adds r3, r0, 0
- ldr r2, _0805B70C @ =gSaveBlock1
- ldrh r0, [r2]
- subs r1, r0, 0x2
- lsls r1, 16
- adds r0, 0x11
- lsls r0, 16
- lsrs r5, r0, 16
- ldrh r4, [r2, 0x2]
- adds r0, r4, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r6, r0, 16
- movs r0, 0x10
- ldrsh r2, [r3, r0]
- lsrs r7, r1, 16
- asrs r1, 16
- cmp r2, r1
- blt _0805B6D8
- lsls r0, r5, 16
- asrs r0, 16
- cmp r2, r0
- bgt _0805B6D8
- movs r0, 0x12
- ldrsh r1, [r3, r0]
- lsls r0, r4, 16
- asrs r0, 16
- cmp r1, r0
- blt _0805B6D8
- lsls r0, r6, 16
- asrs r0, 16
- cmp r1, r0
- ble _0805B706
-_0805B6D8:
- movs r0, 0xC
- ldrsh r1, [r3, r0]
- lsls r0, r7, 16
- asrs r0, 16
- cmp r1, r0
- blt _0805B700
- lsls r0, r5, 16
- asrs r0, 16
- cmp r1, r0
- bgt _0805B700
- movs r0, 0xE
- ldrsh r1, [r3, r0]
- lsls r0, r4, 16
- asrs r0, 16
- cmp r1, r0
- blt _0805B700
- lsls r0, r6, 16
- asrs r0, 16
- cmp r1, r0
- ble _0805B706
-_0805B700:
- adds r0, r3, 0
- bl RemoveFieldObject
-_0805B706:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0805B70C: .4byte gSaveBlock1
- thumb_func_end RemoveFieldObjectIfOutsideView
-
- thumb_func_start sub_805B710
-sub_805B710: @ 805B710
- push {r4-r7,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- bl ClearPlayerAvatarInfo
- movs r6, 0
- ldr r7, _0805B758 @ =gMapObjects
- lsls r4, 16
- lsls r5, 16
-_0805B72A:
- lsls r0, r6, 3
- adds r0, r6
- lsls r0, 2
- adds r0, r7
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _0805B744
- adds r0, r6, 0
- asrs r1, r4, 16
- asrs r2, r5, 16
- bl sub_805B75C
-_0805B744:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0xF
- bls _0805B72A
- bl sub_805AAB0
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0805B758: .4byte gMapObjects
- thumb_func_end sub_805B710
-
- thumb_func_start sub_805B75C
-sub_805B75C: @ 805B75C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x24
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 16
- lsrs r1, 16
- mov r9, r1
- lsls r2, 16
- lsrs r2, 16
- mov r10, r2
- movs r7, 0
- ldr r2, _0805B900 @ =gLinkPlayerMapObjects
-_0805B77E:
- lsls r0, r7, 2
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0
- beq _0805B790
- ldrb r1, [r1, 0x2]
- cmp r8, r1
- bne _0805B790
- b _0805B8EE
-_0805B790:
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x3
- bls _0805B77E
- mov r1, r8
- lsls r0, r1, 3
- add r0, r8
- lsls r0, 2
- ldr r1, _0805B904 @ =gMapObjects
- adds r6, r0, r1
- movs r0, 0
- str r0, [sp, 0x20]
- ldrb r0, [r6, 0x5]
- bl GetFieldObjectGraphicsInfo
- adds r5, r0, 0
- ldrh r2, [r5, 0x6]
- ldr r1, _0805B908 @ =0xffff0000
- add r4, sp, 0x18
- ldr r0, [r4, 0x4]
- ands r0, r1
- orrs r0, r2
- str r0, [r4, 0x4]
- ldrb r0, [r6, 0x5]
- ldrb r1, [r6, 0x6]
- add r3, sp, 0x20
- mov r2, sp
- bl MakeObjectTemplateFromFieldObjectGraphicsInfoWithCallbackIndex
- str r4, [sp, 0xC]
- mov r0, sp
- ldr r2, _0805B90C @ =0x0000ffff
- adds r4, r2, 0
- strh r4, [r0, 0x2]
- ldrb r1, [r5, 0xC]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0
- bne _0805B7EA
- ldrh r0, [r5, 0x2]
- lsls r1, 28
- lsrs r1, 28
- bl npc_load_two_palettes__no_record
-_0805B7EA:
- ldrb r0, [r5, 0xC]
- lsls r1, r0, 28
- lsrs r0, r1, 28
- cmp r0, 0x9
- bls _0805B7FC
- ldrh r0, [r5, 0x2]
- lsrs r1, 28
- bl npc_load_two_palettes__and_record
-_0805B7FC:
- mov r0, sp
- strh r4, [r0, 0x2]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x40
- beq _0805B8EE
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, _0805B910 @ =gSprites
- adds r4, r0, r1
- mov r1, r9
- lsls r0, r1, 16
- asrs r0, 16
- ldrh r2, [r6, 0x10]
- adds r0, r2
- lsls r0, 16
- asrs r0, 16
- mov r2, r10
- lsls r1, r2, 16
- asrs r1, 16
- ldrh r2, [r6, 0x12]
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- adds r2, r4, 0
- adds r2, 0x20
- adds r3, r4, 0
- adds r3, 0x22
- bl sub_8060388
- ldrh r0, [r5, 0x8]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r1, r4, 0
- adds r1, 0x28
- strb r0, [r1]
- ldrh r0, [r5, 0xA]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r2, r4, 0
- adds r2, 0x29
- strb r0, [r2]
- ldrh r0, [r4, 0x20]
- adds r0, 0x8
- strh r0, [r4, 0x20]
- ldrh r1, [r4, 0x22]
- adds r1, 0x10
- movs r0, 0
- ldrsb r0, [r2, r0]
- adds r0, r1
- strh r0, [r4, 0x22]
- ldr r0, [r5, 0x1C]
- str r0, [r4, 0xC]
- ldrb r0, [r6, 0x6]
- cmp r0, 0xB
- bne _0805B88A
- mov r0, r8
- adds r1, r7, 0
- bl SetPlayerAvatarFieldObjectIdAndObjectId
- bl sub_8126B54
- strb r0, [r6, 0x1B]
-_0805B88A:
- ldr r1, [sp, 0x20]
- cmp r1, 0
- beq _0805B896
- adds r0, r4, 0
- bl SetSubspriteTables
-_0805B896:
- ldrb r1, [r5, 0xC]
- lsls r1, 28
- lsrs r1, 24
- ldrb r2, [r4, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x5]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2]
- mov r0, r8
- strh r0, [r4, 0x2E]
- strb r7, [r6, 0x4]
- ldrb r0, [r6, 0x1]
- lsls r0, 27
- cmp r0, 0
- blt _0805B8DC
- ldrb r0, [r6, 0x6]
- cmp r0, 0xB
- beq _0805B8DC
- ldrb r0, [r6, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl FieldObjectDirectionToImageAnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
-_0805B8DC:
- adds r0, r6, 0
- bl sub_805B914
- ldrb r0, [r6, 0xB]
- lsrs r0, 4
- adds r1, r4, 0
- movs r2, 0x1
- bl SetObjectSubpriorityByZCoord
-_0805B8EE:
- add sp, 0x24
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0805B900: .4byte gLinkPlayerMapObjects
-_0805B904: .4byte gMapObjects
-_0805B908: .4byte 0xffff0000
-_0805B90C: .4byte 0x0000ffff
-_0805B910: .4byte gSprites
- thumb_func_end sub_805B75C
-
- thumb_func_start sub_805B914
-sub_805B914: @ 805B914
- push {lr}
- ldrb r2, [r0]
- movs r3, 0x3
- negs r3, r3
- adds r1, r3, 0
- ands r1, r2
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldrb r2, [r0, 0x2]
- movs r1, 0x41
- negs r1, r1
- ands r1, r2
- ands r1, r3
- movs r2, 0x5
- negs r2, r2
- ands r1, r2
- subs r2, 0x4
- ands r1, r2
- subs r2, 0x8
- ands r1, r2
- subs r2, 0x10
- ands r1, r2
- strb r1, [r0, 0x2]
- bl FieldObjectClearAnim
- pop {r0}
- bx r0
- thumb_func_end sub_805B914
-
- thumb_func_start SetPlayerAvatarFieldObjectIdAndObjectId
-SetPlayerAvatarFieldObjectIdAndObjectId: @ 805B94C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r5, _0805B978 @ =gPlayerAvatar
- strb r0, [r5, 0x5]
- strb r1, [r5, 0x4]
- ldr r1, _0805B97C @ =gMapObjects
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- adds r4, r1
- ldrb r0, [r4, 0x5]
- bl GetPlayerAvatarGenderByGraphicsId
- strb r0, [r5, 0x7]
- ldrb r0, [r4, 0x5]
- movs r1, 0x20
- bl SetPlayerAvatarExtraStateTransition
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805B978: .4byte gPlayerAvatar
-_0805B97C: .4byte gMapObjects
- thumb_func_end SetPlayerAvatarFieldObjectIdAndObjectId
-
- thumb_func_start sub_805B980
-sub_805B980: @ 805B980
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- mov r0, r8
- bl GetFieldObjectGraphicsInfo
- adds r5, r0, 0
- ldrb r1, [r6, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805BA7C @ =gSprites
- adds r4, r0, r1
- ldrb r1, [r5, 0xC]
- movs r7, 0xF
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0
- bne _0805B9B8
- ldrh r0, [r5, 0x2]
- lsls r1, 28
- lsrs r1, 28
- bl pal_patch_for_npc
-_0805B9B8:
- ldrb r1, [r5, 0xC]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0xA
- bne _0805B9CC
- ldrh r0, [r5, 0x2]
- lsls r1, 28
- lsrs r1, 28
- bl npc_load_two_palettes__and_record
-_0805B9CC:
- ldr r0, [r5, 0x10]
- ldrb r2, [r0, 0x1]
- lsrs r2, 6
- lsls r2, 6
- ldrb r3, [r4, 0x1]
- movs r1, 0x3F
- adds r0, r1, 0
- ands r0, r3
- orrs r0, r2
- strb r0, [r4, 0x1]
- ldr r0, [r5, 0x10]
- ldrb r0, [r0, 0x3]
- lsrs r0, 6
- lsls r0, 6
- ldrb r2, [r4, 0x3]
- ands r1, r2
- orrs r1, r0
- strb r1, [r4, 0x3]
- ldr r0, [r5, 0x1C]
- str r0, [r4, 0xC]
- ldr r0, [r5, 0x18]
- str r0, [r4, 0x8]
- ldr r0, [r5, 0x14]
- str r0, [r4, 0x18]
- ldrb r1, [r5, 0xC]
- lsls r1, 28
- lsrs r1, 24
- ldrb r2, [r4, 0x5]
- adds r0, r7, 0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x5]
- ldrb r1, [r5, 0xC]
- lsls r1, 25
- lsrs r1, 31
- lsls r1, 4
- ldrb r2, [r6, 0x1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r6, 0x1]
- mov r0, r8
- strb r0, [r6, 0x5]
- movs r1, 0x10
- ldrsh r0, [r6, r1]
- movs r2, 0x12
- ldrsh r1, [r6, r2]
- adds r2, r4, 0
- adds r2, 0x20
- adds r3, r4, 0
- adds r3, 0x22
- bl sub_80603CC
- ldrh r0, [r5, 0x8]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r1, r4, 0
- adds r1, 0x28
- strb r0, [r1]
- ldrh r0, [r5, 0xA]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r2, r4, 0
- adds r2, 0x29
- strb r0, [r2]
- ldrh r0, [r4, 0x20]
- adds r0, 0x8
- strh r0, [r4, 0x20]
- ldrh r1, [r4, 0x22]
- adds r1, 0x10
- movs r0, 0
- ldrsb r0, [r2, r0]
- adds r0, r1
- strh r0, [r4, 0x22]
- ldrb r0, [r6, 0x1]
- lsrs r0, 7
- cmp r0, 0
- beq _0805BA72
- bl CameraObjectReset1
-_0805BA72:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BA7C: .4byte gSprites
- thumb_func_end sub_805B980
-
- thumb_func_start unref_sub_805BA80
-unref_sub_805BA80: @ 805BA80
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r4, r3, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805BAB4
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805BABC @ =gMapObjects
- adds r0, r1
- adds r1, r4, 0
- bl sub_805B980
-_0805BAB4:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BABC: .4byte gMapObjects
- thumb_func_end unref_sub_805BA80
-
- thumb_func_start FieldObjectTurn
-FieldObjectTurn: @ 805BAC0
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r1, 24
- lsrs r1, 24
- bl FieldObjectSetDirection
- ldrb r0, [r6, 0x1]
- lsls r0, 27
- cmp r0, 0
- blt _0805BB06
- ldrb r0, [r6, 0x4]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r5, _0805BB0C @ =gSprites
- adds r4, r5
- ldrb r0, [r6, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl FieldObjectDirectionToImageAnimId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- ldrb r1, [r6, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0
- bl SeekSpriteAnim
-_0805BB06:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BB0C: .4byte gSprites
- thumb_func_end FieldObjectTurn
-
- thumb_func_start FieldObjectTurnByLocalIdAndMap
-FieldObjectTurnByLocalIdAndMap: @ 805BB10
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r4, r3, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805BB44
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805BB4C @ =gMapObjects
- adds r0, r1
- adds r1, r4, 0
- bl FieldObjectTurn
-_0805BB44:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BB4C: .4byte gMapObjects
- thumb_func_end FieldObjectTurnByLocalIdAndMap
-
- thumb_func_start unref_sub_805BB50
-unref_sub_805BB50: @ 805BB50
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- ldrb r2, [r0, 0x5]
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- ldr r2, _0805BB6C @ =gMapObjects
- adds r0, r2
- bl FieldObjectTurn
- pop {r0}
- bx r0
- .align 2, 0
-_0805BB6C: .4byte gMapObjects
- thumb_func_end unref_sub_805BB50
-
- thumb_func_start get_berry_tree_graphics
-get_berry_tree_graphics: @ 805BB70
- push {r4-r7,lr}
- adds r5, r0, 0
- adds r7, r1, 0
- ldrb r0, [r5, 0x1]
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r5, 0x1]
- adds r4, r7, 0
- adds r4, 0x3E
- ldrb r0, [r4]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r4]
- ldrb r0, [r5, 0x1D]
- bl GetStageByBerryTreeId
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0
- beq _0805BBFC
- ldrb r1, [r5, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r1
- strb r0, [r5, 0x1]
- ldrb r1, [r4]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r4]
- ldrb r0, [r5, 0x1D]
- bl GetBerryTypeByBerryTreeId
- subs r0, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- subs r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r4, 0x2B
- bls _0805BBC4
- movs r4, 0
-_0805BBC4:
- ldr r0, _0805BC04 @ =gBerryTreeGraphicsIdTablePointers
- lsls r4, 2
- adds r0, r4, r0
- ldr r0, [r0]
- adds r0, r6
- ldrb r1, [r0]
- adds r0, r5, 0
- bl sub_805B980
- ldr r0, _0805BC08 @ =gBerryTreePicTablePointers
- adds r0, r4, r0
- ldr r0, [r0]
- str r0, [r7, 0xC]
- ldr r0, _0805BC0C @ =gBerryTreePaletteSlotTablePointers
- adds r4, r0
- ldr r0, [r4]
- adds r0, r6
- ldrb r1, [r0]
- lsls r1, 4
- ldrb r2, [r7, 0x5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r1
- strb r0, [r7, 0x5]
- adds r0, r7, 0
- adds r1, r6, 0
- bl StartSpriteAnim
-_0805BBFC:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BC04: .4byte gBerryTreeGraphicsIdTablePointers
-_0805BC08: .4byte gBerryTreePicTablePointers
-_0805BC0C: .4byte gBerryTreePaletteSlotTablePointers
- thumb_func_end get_berry_tree_graphics
-
- thumb_func_start GetFieldObjectGraphicsInfo
-GetFieldObjectGraphicsInfo: @ 805BC10
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xEF
- bls _0805BC28
- adds r0, r1, 0
- adds r0, 0x10
- lsls r0, 24
- lsrs r0, 24
- bl VarGetFieldObjectGraphicsId
- adds r1, r0, 0
-_0805BC28:
- cmp r1, 0xD9
- bls _0805BC2E
- movs r1, 0x5
-_0805BC2E:
- ldr r0, _0805BC3C @ =gMapObjectGraphicsInfoPointers
- lsls r1, 2
- adds r1, r0
- ldr r0, [r1]
- pop {r1}
- bx r1
- .align 2, 0
-_0805BC3C: .4byte gMapObjectGraphicsInfoPointers
- thumb_func_end GetFieldObjectGraphicsInfo
-
- thumb_func_start FieldObjectHandleDynamicGraphicsId
-FieldObjectHandleDynamicGraphicsId: @ 805BC40
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0x5]
- cmp r0, 0xEF
- bls _0805BC56
- adds r0, 0x10
- lsls r0, 24
- lsrs r0, 24
- bl VarGetFieldObjectGraphicsId
- strb r0, [r4, 0x5]
-_0805BC56:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end FieldObjectHandleDynamicGraphicsId
-
- thumb_func_start npc_by_local_id_and_map_set_field_1_bit_x20
-npc_by_local_id_and_map_set_field_1_bit_x20: @ 805BC5C
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r4, r3, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805BC9E
- ldr r2, _0805BCA8 @ =gMapObjects
- mov r0, sp
- ldrb r0, [r0]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x1
- adds r2, r4, 0
- ands r2, r0
- lsls r2, 5
- ldrb r3, [r1, 0x1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0x1]
-_0805BC9E:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BCA8: .4byte gMapObjects
- thumb_func_end npc_by_local_id_and_map_set_field_1_bit_x20
-
- thumb_func_start FieldObjectGetLocalIdAndMap
-FieldObjectGetLocalIdAndMap: @ 805BCAC
- push {r4,lr}
- ldrb r4, [r0, 0x8]
- strb r4, [r1]
- ldrb r1, [r0, 0x9]
- strb r1, [r2]
- ldrb r0, [r0, 0xA]
- strb r0, [r3]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end FieldObjectGetLocalIdAndMap
-
- thumb_func_start sub_805BCC0
-sub_805BCC0: @ 805BCC0
- push {lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- bl GetFieldObjectIdByXY
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x10
- beq _0805BCE8
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805BCEC @ =gMapObjects
- adds r0, r1
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_0805BCE8:
- pop {r0}
- bx r0
- .align 2, 0
-_0805BCEC: .4byte gMapObjects
- thumb_func_end sub_805BCC0
-
- thumb_func_start sub_805BCF0
-sub_805BCF0: @ 805BCF0
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r4, r3, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805BD36
- mov r0, sp
- ldrb r0, [r0]
- lsls r2, r0, 3
- adds r2, r0
- lsls r2, 2
- ldr r0, _0805BD40 @ =gMapObjects
- adds r2, r0
- ldrb r1, [r2, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805BD44 @ =gSprites
- adds r0, r1
- ldrb r1, [r2, 0x3]
- movs r3, 0x4
- orrs r1, r3
- strb r1, [r2, 0x3]
- adds r0, 0x43
- strb r4, [r0]
-_0805BD36:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BD40: .4byte gMapObjects
-_0805BD44: .4byte gSprites
- thumb_func_end sub_805BCF0
-
- thumb_func_start sub_805BD48
-sub_805BD48: @ 805BD48
- push {lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805BD84
- mov r0, sp
- ldrb r0, [r0]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r0, _0805BD8C @ =gMapObjects
- adds r1, r0
- ldrb r2, [r1, 0x3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x3]
- ldrb r0, [r1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1]
-_0805BD84:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0805BD8C: .4byte gMapObjects
- thumb_func_end sub_805BD48
-
- thumb_func_start sub_805BD90
-sub_805BD90: @ 805BD90
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r4, [sp, 0x10]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 16
- lsrs r5, r3, 16
- lsls r4, 16
- lsrs r4, 16
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805BDD4
- ldr r2, _0805BDDC @ =gMapObjects
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805BDE0 @ =gSprites
- adds r0, r1
- strh r5, [r0, 0x24]
- strh r4, [r0, 0x26]
-_0805BDD4:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BDDC: .4byte gMapObjects
-_0805BDE0: .4byte gSprites
- thumb_func_end sub_805BD90
-
- thumb_func_start gpu_pal_allocator_reset__manage_upper_four
-gpu_pal_allocator_reset__manage_upper_four: @ 805BDE4
- push {lr}
- bl FreeAllSpritePalettes
- ldr r1, _0805BDF4 @ =gReservedSpritePaletteCount
- movs r0, 0xC
- strb r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_0805BDF4: .4byte gReservedSpritePaletteCount
- thumb_func_end gpu_pal_allocator_reset__manage_upper_four
-
- thumb_func_start sub_805BDF8
-sub_805BDF8: @ 805BDF8
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl FindFieldObjectPaletteIndexByTag
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r0, _0805BE1C @ =0x000011ff
- cmp r1, r0
- beq _0805BE16
- lsls r0, r1, 3
- ldr r1, _0805BE20 @ =gUnknown_0837377C
- adds r0, r1
- bl sub_805BE58
-_0805BE16:
- pop {r0}
- bx r0
- .align 2, 0
-_0805BE1C: .4byte 0x000011ff
-_0805BE20: .4byte gUnknown_0837377C
- thumb_func_end sub_805BDF8
-
- thumb_func_start unref_sub_805BE24
-unref_sub_805BE24: @ 805BE24
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r4, 0
- ldrh r0, [r5]
- ldr r1, _0805BE54 @ =0x000011ff
- cmp r0, r1
- beq _0805BE4E
- adds r6, r1, 0
-_0805BE34:
- lsls r0, r4, 1
- adds r0, r5
- ldrh r0, [r0]
- bl sub_805BDF8
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 1
- adds r0, r5
- ldrh r0, [r0]
- cmp r0, r6
- bne _0805BE34
-_0805BE4E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BE54: .4byte 0x000011ff
- thumb_func_end unref_sub_805BE24
-
- thumb_func_start sub_805BE58
-sub_805BE58: @ 805BE58
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x4]
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _0805BE76
- adds r0, r4, 0
- bl LoadSpritePalette
- lsls r0, 24
- lsrs r0, 24
- b _0805BE78
-_0805BE76:
- movs r0, 0xFF
-_0805BE78:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_805BE58
-
- thumb_func_start pal_patch_for_npc
-pal_patch_for_npc: @ 805BE80
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 16
- lsrs r0, 16
- lsls r4, 24
- lsrs r4, 24
- bl FindFieldObjectPaletteIndexByTag
- lsls r0, 24
- ldr r1, _0805BEB4 @ =gUnknown_0837377C
- lsrs r0, 21
- adds r0, r1
- ldr r0, [r0]
- lsls r4, 20
- movs r1, 0x80
- lsls r1, 17
- adds r4, r1
- lsrs r4, 16
- adds r1, r4, 0
- movs r2, 0x20
- bl LoadPalette
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805BEB4: .4byte gUnknown_0837377C
- thumb_func_end pal_patch_for_npc
-
- thumb_func_start pal_patch_for_npc_range
-pal_patch_for_npc_range: @ 805BEB8
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r1, 24
- lsrs r4, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- cmp r4, r6
- bcs _0805BEDC
-_0805BEC8:
- ldrh r0, [r5]
- adds r1, r4, 0
- bl pal_patch_for_npc
- adds r5, 0x2
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r6
- bcc _0805BEC8
-_0805BEDC:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pal_patch_for_npc_range
-
- thumb_func_start FindFieldObjectPaletteIndexByTag
-FindFieldObjectPaletteIndexByTag: @ 805BEE4
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- movs r2, 0
- ldr r0, _0805BF0C @ =gUnknown_0837377C
- ldrh r1, [r0, 0x4]
- ldr r3, _0805BF10 @ =0x000011ff
- adds r4, r0, 0
- cmp r1, r3
- beq _0805BF24
- adds r6, r4, 0
- adds r1, r3, 0
-_0805BEFC:
- lsls r0, r2, 3
- adds r0, r6
- ldrh r0, [r0, 0x4]
- cmp r0, r5
- bne _0805BF14
- adds r0, r2, 0
- b _0805BF26
- .align 2, 0
-_0805BF0C: .4byte gUnknown_0837377C
-_0805BF10: .4byte 0x000011ff
-_0805BF14:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 3
- adds r0, r4
- ldrh r0, [r0, 0x4]
- cmp r0, r1
- bne _0805BEFC
-_0805BF24:
- movs r0, 0xFF
-_0805BF26:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end FindFieldObjectPaletteIndexByTag
-
- thumb_func_start npc_load_two_palettes__no_record
-npc_load_two_palettes__no_record: @ 805BF2C
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r1, 24
- lsrs r5, r1, 24
- adds r0, r4, 0
- adds r1, r5, 0
- bl pal_patch_for_npc
- movs r3, 0
- ldr r1, _0805BF74 @ =gUnknown_08373874
- ldrh r0, [r1]
- ldr r2, _0805BF78 @ =0x000011ff
- cmp r0, r2
- beq _0805BF94
- ldr r0, _0805BF7C @ =gUnknown_0830FD14
- adds r5, r0
- adds r6, r2, 0
-_0805BF50:
- lsls r2, r3, 3
- adds r0, r2, r1
- ldrh r0, [r0]
- cmp r0, r4
- bne _0805BF84
- adds r1, 0x4
- adds r1, r2, r1
- ldr r0, _0805BF80 @ =gUnknown_030005A4
- ldrb r0, [r0]
- ldr r1, [r1]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- ldrb r1, [r5]
- bl pal_patch_for_npc
- b _0805BF94
- .align 2, 0
-_0805BF74: .4byte gUnknown_08373874
-_0805BF78: .4byte 0x000011ff
-_0805BF7C: .4byte gUnknown_0830FD14
-_0805BF80: .4byte gUnknown_030005A4
-_0805BF84:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r0, r3, 3
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r6
- bne _0805BF50
-_0805BF94:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end npc_load_two_palettes__no_record
-
- thumb_func_start npc_load_two_palettes__and_record
-npc_load_two_palettes__and_record: @ 805BF9C
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _0805BFE8 @ =gUnknown_030005A6
- strh r4, [r0]
- adds r0, r4, 0
- adds r1, r5, 0
- bl pal_patch_for_npc
- movs r3, 0
- ldr r1, _0805BFEC @ =gUnknown_083738E4
- ldrh r0, [r1]
- ldr r2, _0805BFF0 @ =0x000011ff
- cmp r0, r2
- beq _0805C00C
- ldr r0, _0805BFF4 @ =gUnknown_0830FD14
- adds r5, r0
- adds r6, r2, 0
-_0805BFC4:
- lsls r2, r3, 3
- adds r0, r2, r1
- ldrh r0, [r0]
- cmp r0, r4
- bne _0805BFFC
- adds r1, 0x4
- adds r1, r2, r1
- ldr r0, _0805BFF8 @ =gUnknown_030005A4
- ldrb r0, [r0]
- ldr r1, [r1]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- ldrb r1, [r5]
- bl pal_patch_for_npc
- b _0805C00C
- .align 2, 0
-_0805BFE8: .4byte gUnknown_030005A6
-_0805BFEC: .4byte gUnknown_083738E4
-_0805BFF0: .4byte 0x000011ff
-_0805BFF4: .4byte gUnknown_0830FD14
-_0805BFF8: .4byte gUnknown_030005A4
-_0805BFFC:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r0, r3, 3
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r6
- bne _0805BFC4
-_0805C00C:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end npc_load_two_palettes__and_record
-
- thumb_func_start unref_sub_805C014
-unref_sub_805C014: @ 805C014
- push {r4,lr}
- ldrh r3, [r0, 0x10]
- strh r3, [r0, 0x14]
- ldrh r4, [r0, 0x12]
- strh r4, [r0, 0x16]
- lsls r1, 16
- asrs r1, 16
- adds r1, r3
- strh r1, [r0, 0x10]
- lsls r2, 16
- asrs r2, 16
- adds r2, r4
- strh r2, [r0, 0x12]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end unref_sub_805C014
-
- thumb_func_start npc_coords_shift
-npc_coords_shift: @ 805C034
- ldrh r3, [r0, 0x10]
- strh r3, [r0, 0x14]
- ldrh r3, [r0, 0x12]
- strh r3, [r0, 0x16]
- strh r1, [r0, 0x10]
- strh r2, [r0, 0x12]
- bx lr
- thumb_func_end npc_coords_shift
-
- thumb_func_start npc_coords_set
-npc_coords_set: @ 805C044
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 16
- lsrs r2, 16
- strh r1, [r0, 0x14]
- strh r2, [r0, 0x16]
- strh r1, [r0, 0x10]
- strh r2, [r0, 0x12]
- bx lr
- thumb_func_end npc_coords_set
-
- thumb_func_start sub_805C058
-sub_805C058: @ 805C058
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- ldrb r1, [r6, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805C0F4 @ =gSprites
- adds r7, r0, r1
- ldrb r0, [r6, 0x5]
- bl GetFieldObjectGraphicsInfo
- mov r8, r0
- lsls r4, 16
- asrs r4, 16
- lsls r5, 16
- asrs r5, 16
- adds r0, r6, 0
- adds r1, r4, 0
- adds r2, r5, 0
- bl npc_coords_set
- movs r1, 0x10
- ldrsh r0, [r6, r1]
- movs r2, 0x12
- ldrsh r1, [r6, r2]
- adds r2, r7, 0
- adds r2, 0x20
- adds r3, r7, 0
- adds r3, 0x22
- bl sub_80603CC
- mov r1, r8
- ldrh r0, [r1, 0x8]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r1, r7, 0
- adds r1, 0x28
- strb r0, [r1]
- mov r2, r8
- ldrh r0, [r2, 0xA]
- lsls r0, 16
- asrs r0, 17
- negs r0, r0
- adds r2, r7, 0
- adds r2, 0x29
- strb r0, [r2]
- ldrh r0, [r7, 0x20]
- adds r0, 0x8
- strh r0, [r7, 0x20]
- ldrh r1, [r7, 0x22]
- adds r1, 0x10
- movs r0, 0
- ldrsb r0, [r2, r0]
- adds r0, r1
- strh r0, [r7, 0x22]
- adds r0, r6, 0
- bl sub_805B914
- ldrb r0, [r6, 0x1]
- lsrs r0, 7
- cmp r0, 0
- beq _0805C0EA
- bl CameraObjectReset1
-_0805C0EA:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0805C0F4: .4byte gSprites
- thumb_func_end sub_805C058
-
- thumb_func_start sub_805C0F8
-sub_805C0F8: @ 805C0F8
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r4, [sp, 0x10]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 16
- lsrs r5, r3, 16
- lsls r4, 16
- lsrs r4, 16
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805C140
- lsls r1, r5, 16
- lsls r2, r4, 16
- mov r0, sp
- ldrb r3, [r0]
- lsls r0, r3, 3
- adds r0, r3
- lsls r0, 2
- ldr r3, _0805C148 @ =gMapObjects
- adds r0, r3
- movs r3, 0xE0
- lsls r3, 11
- adds r1, r3
- asrs r1, 16
- adds r2, r3
- asrs r2, 16
- bl sub_805C058
-_0805C140:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805C148: .4byte gMapObjects
- thumb_func_end sub_805C0F8
-
- thumb_func_start npc_coords_shift_still
-npc_coords_shift_still: @ 805C14C
- push {lr}
- movs r2, 0x10
- ldrsh r1, [r0, r2]
- movs r3, 0x12
- ldrsh r2, [r0, r3]
- bl npc_coords_shift
- pop {r0}
- bx r0
- thumb_func_end npc_coords_shift_still
-
- thumb_func_start UpdateFieldObjectCoordsForCameraUpdate
-UpdateFieldObjectCoordsForCameraUpdate: @ 805C160
- push {r4,r5,lr}
- ldr r2, _0805C1C0 @ =gUnknown_0202E844
- ldrb r1, [r2]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0805C1B8
- movs r3, 0
- ldr r5, _0805C1C4 @ =gMapObjects
- movs r0, 0x4
- ldrsh r4, [r2, r0]
- movs r0, 0x8
- ldrsh r1, [r2, r0]
-_0805C17A:
- lsls r0, r3, 3
- adds r0, r3
- lsls r0, 2
- adds r2, r0, r5
- ldrb r0, [r2]
- lsls r0, 31
- cmp r0, 0
- beq _0805C1AE
- ldrh r0, [r2, 0xC]
- subs r0, r4
- strh r0, [r2, 0xC]
- ldrh r0, [r2, 0xE]
- subs r0, r1
- strh r0, [r2, 0xE]
- ldrh r0, [r2, 0x10]
- subs r0, r4
- strh r0, [r2, 0x10]
- ldrh r0, [r2, 0x12]
- subs r0, r1
- strh r0, [r2, 0x12]
- ldrh r0, [r2, 0x14]
- subs r0, r4
- strh r0, [r2, 0x14]
- ldrh r0, [r2, 0x16]
- subs r0, r1
- strh r0, [r2, 0x16]
-_0805C1AE:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xF
- bls _0805C17A
-_0805C1B8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805C1C0: .4byte gUnknown_0202E844
-_0805C1C4: .4byte gMapObjects
- thumb_func_end UpdateFieldObjectCoordsForCameraUpdate
-
- thumb_func_start GetFieldObjectIdByXYZ
-GetFieldObjectIdByXYZ: @ 805C1C8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 16
- lsrs r7, r0, 16
- lsls r1, 16
- lsrs r6, r1, 16
- lsls r2, 24
- lsrs r5, r2, 24
- movs r4, 0
- ldr r0, _0805C214 @ =gMapObjects
- mov r8, r0
-_0805C1E0:
- lsls r0, r4, 3
- adds r0, r4
- lsls r0, 2
- mov r2, r8
- adds r1, r0, r2
- ldrb r0, [r1]
- lsls r0, 31
- cmp r0, 0
- beq _0805C218
- movs r2, 0x10
- ldrsh r0, [r1, r2]
- cmp r0, r7
- bne _0805C218
- movs r2, 0x12
- ldrsh r0, [r1, r2]
- cmp r0, r6
- bne _0805C218
- adds r0, r1, 0
- adds r1, r5, 0
- bl FieldObjectDoesZCoordMatch
- lsls r0, 24
- cmp r0, 0
- beq _0805C218
- adds r0, r4, 0
- b _0805C224
- .align 2, 0
-_0805C214: .4byte gMapObjects
-_0805C218:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bls _0805C1E0
- movs r0, 0x10
-_0805C224:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end GetFieldObjectIdByXYZ
-
- thumb_func_start FieldObjectDoesZCoordMatch
-FieldObjectDoesZCoordMatch: @ 805C230
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- ldrb r2, [r0, 0xB]
- movs r0, 0xF
- ands r0, r2
- cmp r0, 0
- beq _0805C250
- cmp r1, 0
- beq _0805C250
- lsls r0, r2, 28
- lsrs r0, 28
- cmp r0, r1
- beq _0805C250
- movs r0, 0
- b _0805C252
-_0805C250:
- movs r0, 0x1
-_0805C252:
- pop {r1}
- bx r1
- thumb_func_end FieldObjectDoesZCoordMatch
-
- thumb_func_start UpdateFieldObjectsForCameraUpdate
-UpdateFieldObjectsForCameraUpdate: @ 805C258
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- bl UpdateFieldObjectCoordsForCameraUpdate
- lsls r4, 16
- asrs r4, 16
- lsls r5, 16
- asrs r5, 16
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_805B55C
- bl RemoveFieldObjectsOutsideView
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end UpdateFieldObjectsForCameraUpdate
-
- thumb_func_start AddCameraObject
-AddCameraObject: @ 805C284
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _0805C2C0 @ =gSpriteTemplate_830FD24
- movs r1, 0
- movs r2, 0
- movs r3, 0x4
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0805C2C4 @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r2, 0x3E
- adds r2, r1
- mov r12, r2
- ldrb r2, [r2]
- movs r3, 0x4
- orrs r2, r3
- mov r3, r12
- strb r2, [r3]
- strh r4, [r1, 0x2E]
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0805C2C0: .4byte gSpriteTemplate_830FD24
-_0805C2C4: .4byte gSprites
- thumb_func_end AddCameraObject
-
- thumb_func_start ObjectCB_CameraObject
-ObjectCB_CameraObject: @ 805C2C8
- push {r4,r5,lr}
- sub sp, 0xC
- mov r2, sp
- ldr r1, _0805C2EC @ =gUnknown_0830FD3C
- ldm r1!, {r3-r5}
- stm r2!, {r3-r5}
- movs r2, 0x30
- ldrsh r1, [r0, r2]
- lsls r1, 2
- add r1, sp
- ldr r1, [r1]
- bl _call_via_r1
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805C2EC: .4byte gUnknown_0830FD3C
- thumb_func_end ObjectCB_CameraObject
-
- thumb_func_start CameraObject_0
-CameraObject_0: @ 805C2F0
- push {lr}
- ldr r3, _0805C328 @ =gSprites
- movs r1, 0x2E
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r3
- ldrh r1, [r1, 0x20]
- strh r1, [r0, 0x20]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r3
- ldrh r1, [r1, 0x22]
- strh r1, [r0, 0x22]
- adds r3, r0, 0
- adds r3, 0x3E
- ldrb r1, [r3]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r3]
- movs r1, 0x1
- strh r1, [r0, 0x30]
- bl CameraObject_1
- pop {r0}
- bx r0
- .align 2, 0
-_0805C328: .4byte gSprites
- thumb_func_end CameraObject_0
-
- thumb_func_start CameraObject_1
-CameraObject_1: @ 805C32C
- push {r4,r5,lr}
- ldr r3, _0805C360 @ =gSprites
- movs r1, 0x2E
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r3
- ldrh r3, [r1, 0x22]
- ldrh r2, [r0, 0x20]
- ldrh r4, [r1, 0x20]
- movs r5, 0x20
- ldrsh r1, [r1, r5]
- subs r1, r2
- strh r1, [r0, 0x32]
- ldrh r2, [r0, 0x22]
- lsls r1, r3, 16
- asrs r1, 16
- subs r1, r2
- strh r1, [r0, 0x34]
- strh r4, [r0, 0x20]
- strh r3, [r0, 0x22]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805C360: .4byte gSprites
- thumb_func_end CameraObject_1
-
- thumb_func_start CameraObject_2
-CameraObject_2: @ 805C364
- push {r4,lr}
- ldr r4, _0805C390 @ =gSprites
- movs r1, 0x2E
- ldrsh r2, [r0, r1]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x20]
- movs r3, 0
- strh r1, [r0, 0x20]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r4
- ldrh r1, [r1, 0x22]
- strh r1, [r0, 0x22]
- strh r3, [r0, 0x32]
- strh r3, [r0, 0x34]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805C390: .4byte gSprites
- thumb_func_end CameraObject_2
-
- thumb_func_start FindCameraObject
-FindCameraObject: @ 805C394
- push {r4,r5,lr}
- movs r3, 0
- ldr r4, _0805C3C0 @ =gSprites
- adds r5, r4, 0
- adds r5, 0x1C
-_0805C39E:
- lsls r0, r3, 4
- adds r0, r3
- lsls r1, r0, 2
- adds r2, r1, r4
- adds r0, r2, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- beq _0805C3C8
- adds r0, r1, r5
- ldr r1, [r0]
- ldr r0, _0805C3C4 @ =ObjectCB_CameraObject
- cmp r1, r0
- bne _0805C3C8
- adds r0, r2, 0
- b _0805C3D4
- .align 2, 0
-_0805C3C0: .4byte gSprites
-_0805C3C4: .4byte ObjectCB_CameraObject
-_0805C3C8:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x3F
- bls _0805C39E
- movs r0, 0
-_0805C3D4:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end FindCameraObject
-
- thumb_func_start CameraObjectReset1
-CameraObjectReset1: @ 805C3DC
- push {lr}
- bl FindCameraObject
- adds r2, r0, 0
- cmp r2, 0
- beq _0805C3F4
- movs r0, 0
- strh r0, [r2, 0x30]
- ldr r1, [r2, 0x1C]
- adds r0, r2, 0
- bl _call_via_r1
-_0805C3F4:
- pop {r0}
- bx r0
- thumb_func_end CameraObjectReset1
-
- thumb_func_start CameraObjectSetFollowedObjectId
-CameraObjectSetFollowedObjectId: @ 805C3F8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl FindCameraObject
- cmp r0, 0
- beq _0805C40C
- strh r4, [r0, 0x2E]
- bl CameraObjectReset1
-_0805C40C:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end CameraObjectSetFollowedObjectId
-
- thumb_func_start CameraObjectGetFollowedObjectId
-CameraObjectGetFollowedObjectId: @ 805C414
- push {lr}
- bl FindCameraObject
- cmp r0, 0
- beq _0805C426
- ldrh r0, [r0, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- b _0805C428
-_0805C426:
- movs r0, 0x40
-_0805C428:
- pop {r1}
- bx r1
- thumb_func_end CameraObjectGetFollowedObjectId
-
- thumb_func_start CameraObjectReset2
-CameraObjectReset2: @ 805C42C
- push {lr}
- bl FindCameraObject
- movs r1, 0x2
- strh r1, [r0, 0x30]
- pop {r0}
- bx r0
- thumb_func_end CameraObjectReset2
-
- thumb_func_start unref_sub_805C43C
-unref_sub_805C43C: @ 805C43C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r12, r0
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- lsls r2, 16
- lsrs r6, r2, 16
- lsls r3, 24
- lsrs r7, r3, 24
- movs r5, 0
- ldr r1, _0805C484 @ =gSprites
-_0805C456:
- lsls r0, r5, 4
- adds r0, r5
- lsls r0, 2
- adds r4, r0, r1
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- bne _0805C488
- adds r0, r4, 0
- mov r1, r12
- movs r2, 0x44
- bl memcpy
- mov r0, r8
- strh r0, [r4, 0x20]
- strh r6, [r4, 0x22]
- adds r0, r4, 0
- adds r0, 0x43
- strb r7, [r0]
- b _0805C492
- .align 2, 0
-_0805C484: .4byte gSprites
-_0805C488:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3F
- bls _0805C456
-_0805C492:
- adds r0, r5, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end unref_sub_805C43C
-
- thumb_func_start obj_unfreeze
-obj_unfreeze: @ 805C4A0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r12, r0
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- lsls r2, 16
- lsrs r6, r2, 16
- lsls r3, 24
- lsrs r7, r3, 24
- movs r5, 0x3F
- ldr r3, _0805C4F4 @ =gSprites
- movs r2, 0x1
- negs r2, r2
-_0805C4BE:
- lsls r0, r5, 16
- asrs r1, r0, 16
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, r0, r3
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 31
- cmp r0, 0
- bne _0805C4F8
- adds r0, r4, 0
- mov r1, r12
- movs r2, 0x44
- bl memcpy
- mov r0, r8
- strh r0, [r4, 0x20]
- strh r6, [r4, 0x22]
- adds r0, r4, 0
- adds r0, 0x43
- strb r7, [r0]
- lsls r0, r5, 24
- lsrs r0, 24
- b _0805C506
- .align 2, 0
-_0805C4F4: .4byte gSprites
-_0805C4F8:
- subs r0, r1, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- asrs r0, 16
- cmp r0, r2
- bgt _0805C4BE
- movs r0, 0x40
-_0805C506:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end obj_unfreeze
-
- thumb_func_start FieldObjectSetDirection
-FieldObjectSetDirection: @ 805C510
- push {r4,lr}
- adds r3, r0, 0
- lsls r1, 24
- lsrs r2, r1, 24
- adds r4, r2, 0
- ldrb r0, [r3, 0x18]
- lsls r0, 28
- lsrs r0, 28
- adds r1, r3, 0
- adds r1, 0x20
- strb r0, [r1]
- ldrb r0, [r3, 0x1]
- lsls r0, 30
- cmp r0, 0
- blt _0805C540
- movs r0, 0xF
- adds r1, r2, 0
- ands r1, r0
- ldrb r2, [r3, 0x18]
- movs r0, 0x10
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x18]
-_0805C540:
- lsls r2, r4, 4
- ldrb r1, [r3, 0x18]
- movs r0, 0xF
- ands r0, r1
- orrs r0, r2
- strb r0, [r3, 0x18]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end FieldObjectSetDirection
-
- thumb_func_start GetFieldObjectScriptPointerByLocalIdAndMap
-GetFieldObjectScriptPointerByLocalIdAndMap: @ 805C554
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- bl GetFieldObjectTemplateByLocalIdAndMap
- ldr r0, [r0, 0x10]
- pop {r1}
- bx r1
- thumb_func_end GetFieldObjectScriptPointerByLocalIdAndMap
-
- thumb_func_start GetFieldObjectScriptPointerByFieldObjectId
-GetFieldObjectScriptPointerByFieldObjectId: @ 805C56C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0805C58C @ =gMapObjects
- lsls r2, r0, 3
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- ldrb r0, [r2, 0x8]
- ldrb r1, [r2, 0x9]
- ldrb r2, [r2, 0xA]
- bl GetFieldObjectScriptPointerByLocalIdAndMap
- pop {r1}
- bx r1
- .align 2, 0
-_0805C58C: .4byte gMapObjects
- thumb_func_end GetFieldObjectScriptPointerByFieldObjectId
-
- thumb_func_start GetFieldObjectFlagIdByLocalIdAndMap
-GetFieldObjectFlagIdByLocalIdAndMap: @ 805C590
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- bl GetFieldObjectTemplateByLocalIdAndMap
- ldrh r0, [r0, 0x14]
- pop {r1}
- bx r1
- thumb_func_end GetFieldObjectFlagIdByLocalIdAndMap
-
- thumb_func_start GetFieldObjectFlagIdByFieldObjectId
-GetFieldObjectFlagIdByFieldObjectId: @ 805C5A8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0805C5CC @ =gMapObjects
- lsls r2, r0, 3
- adds r2, r0
- lsls r2, 2
- adds r2, r1
- ldrb r0, [r2, 0x8]
- ldrb r1, [r2, 0x9]
- ldrb r2, [r2, 0xA]
- bl GetFieldObjectFlagIdByLocalIdAndMap
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .align 2, 0
-_0805C5CC: .4byte gMapObjects
- thumb_func_end GetFieldObjectFlagIdByFieldObjectId
-
- thumb_func_start unref_sub_805C5D0
-unref_sub_805C5D0: @ 805C5D0
- push {lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805C604
- ldr r2, _0805C600 @ =gMapObjects
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x7]
- b _0805C606
- .align 2, 0
-_0805C600: .4byte gMapObjects
-_0805C604:
- movs r0, 0xFF
-_0805C606:
- add sp, 0x4
- pop {r1}
- bx r1
- thumb_func_end unref_sub_805C5D0
-
- thumb_func_start unref_sub_805C60C
-unref_sub_805C60C: @ 805C60C
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0805C620 @ =gMapObjects
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0x7]
- bx lr
- .align 2, 0
-_0805C620: .4byte gMapObjects
- thumb_func_end unref_sub_805C60C
-
- thumb_func_start unref_sub_805C624
-unref_sub_805C624: @ 805C624
- push {lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805C658
- ldr r2, _0805C654 @ =gMapObjects
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1D]
- b _0805C65A
- .align 2, 0
-_0805C654: .4byte gMapObjects
-_0805C658:
- movs r0, 0xFF
-_0805C65A:
- add sp, 0x4
- pop {r1}
- bx r1
- thumb_func_end unref_sub_805C624
-
- thumb_func_start FieldObjectGetBerryTreeId
-FieldObjectGetBerryTreeId: @ 805C660
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0805C674 @ =gMapObjects
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0x1D]
- bx lr
- .align 2, 0
-_0805C674: .4byte gMapObjects
- thumb_func_end FieldObjectGetBerryTreeId
-
- thumb_func_start GetFieldObjectTemplateByLocalIdAndMap
-GetFieldObjectTemplateByLocalIdAndMap: @ 805C678
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- lsls r2, 24
- lsrs r2, 24
- ldr r1, _0805C6A4 @ =gSaveBlock1
- movs r0, 0x5
- ldrsb r0, [r1, r0]
- cmp r0, r3
- bne _0805C6AC
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- cmp r0, r2
- bne _0805C6AC
- movs r0, 0xC2
- lsls r0, 4
- adds r1, r0
- ldr r0, _0805C6A8 @ =gMapHeader
- ldr r0, [r0, 0x4]
- b _0805C6B8
- .align 2, 0
-_0805C6A4: .4byte gSaveBlock1
-_0805C6A8: .4byte gMapHeader
-_0805C6AC:
- adds r0, r2, 0
- adds r1, r3, 0
- bl get_mapheader_by_bank_and_number
- ldr r0, [r0, 0x4]
- ldr r1, [r0, 0x4]
-_0805C6B8:
- ldrb r2, [r0]
- adds r0, r4, 0
- bl FindFieldObjectTemplateInArrayByLocalId
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetFieldObjectTemplateByLocalIdAndMap
-
- thumb_func_start FindFieldObjectTemplateInArrayByLocalId
-FindFieldObjectTemplateInArrayByLocalId: @ 805C6C8
- push {r4,r5,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r2, 24
- lsrs r2, 24
- movs r1, 0
- cmp r1, r2
- bcs _0805C6F6
-_0805C6DA:
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r3, r0, r5
- ldrb r0, [r3]
- cmp r0, r4
- bne _0805C6EC
- adds r0, r3, 0
- b _0805C6F8
-_0805C6EC:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, r2
- bcc _0805C6DA
-_0805C6F6:
- movs r0, 0
-_0805C6F8:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end FindFieldObjectTemplateInArrayByLocalId
-
- thumb_func_start sub_805C700
-sub_805C700: @ 805C700
- push {r4,r5,lr}
- adds r2, r0, 0
- ldrb r1, [r2, 0x9]
- ldr r4, _0805C720 @ =gSaveBlock1
- movs r0, 0x5
- ldrsb r0, [r4, r0]
- adds r5, r4, 0
- cmp r1, r0
- bne _0805C74A
- ldrb r1, [r2, 0xA]
- movs r0, 0x4
- ldrsb r0, [r5, r0]
- cmp r1, r0
- beq _0805C72E
- b _0805C74A
- .align 2, 0
-_0805C720: .4byte gSaveBlock1
-_0805C724:
- movs r1, 0xC2
- lsls r1, 4
- adds r0, r5, r1
- adds r0, r2, r0
- b _0805C74C
-_0805C72E:
- movs r3, 0
- ldrb r0, [r2, 0x8]
- movs r2, 0xC2
- lsls r2, 4
- adds r1, r4, r2
- movs r2, 0
-_0805C73A:
- ldrb r4, [r1]
- cmp r0, r4
- beq _0805C724
- adds r1, 0x18
- adds r2, 0x18
- adds r3, 0x1
- cmp r3, 0x3F
- ble _0805C73A
-_0805C74A:
- movs r0, 0
-_0805C74C:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_805C700
-
- thumb_func_start sub_805C754
-sub_805C754: @ 805C754
- push {r4,lr}
- adds r4, r0, 0
- bl sub_805C700
- adds r1, r0, 0
- cmp r1, 0
- beq _0805C76E
- ldrh r0, [r4, 0x10]
- subs r0, 0x7
- strh r0, [r1, 0x4]
- ldrh r0, [r4, 0x12]
- subs r0, 0x7
- strh r0, [r1, 0x6]
-_0805C76E:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_805C754
-
- thumb_func_start sub_805C774
-sub_805C774: @ 805C774
- push {r4,lr}
- lsls r1, 24
- lsrs r4, r1, 24
- bl sub_805C700
- cmp r0, 0
- beq _0805C784
- strb r4, [r0, 0x9]
-_0805C784:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_805C774
-
- thumb_func_start sub_805C78C
-sub_805C78C: @ 805C78C
- push {lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0805C7BA
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0805C7C0 @ =gMapObjects
- adds r0, r1
- bl sub_805C754
-_0805C7BA:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0805C7C0: .4byte gMapObjects
- thumb_func_end sub_805C78C
-
- thumb_func_start sub_805C7C4
-sub_805C7C4: @ 805C7C4
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl gpu_pal_allocator_reset__manage_upper_four
- ldr r1, _0805C7F4 @ =gUnknown_030005A6
- ldr r2, _0805C7F8 @ =0x000011ff
- adds r0, r2, 0
- strh r0, [r1]
- ldr r0, _0805C7FC @ =gUnknown_030005A4
- strb r4, [r0]
- ldr r1, _0805C800 @ =gUnknown_0837399C
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0
- movs r2, 0xA
- bl pal_patch_for_npc_range
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805C7F4: .4byte gUnknown_030005A6
-_0805C7F8: .4byte 0x000011ff
-_0805C7FC: .4byte gUnknown_030005A4
-_0805C800: .4byte gUnknown_0837399C
- thumb_func_end sub_805C7C4
-
- thumb_func_start npc_paltag_by_palslot
-npc_paltag_by_palslot: @ 805C804
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x9
- bhi _0805C840
- ldr r1, _0805C820 @ =gUnknown_0837399C
- ldr r0, _0805C824 @ =gUnknown_030005A4
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- lsls r0, r2, 1
- b _0805C834
- .align 2, 0
-_0805C820: .4byte gUnknown_0837399C
-_0805C824: .4byte gUnknown_030005A4
-_0805C828:
- adds r1, r4, 0x4
- adds r1, r2, r1
- ldr r0, _0805C83C @ =gUnknown_030005A4
- ldrb r0, [r0]
- ldr r1, [r1]
- lsls r0, 1
-_0805C834:
- adds r0, r1
- ldrh r0, [r0]
- b _0805C872
- .align 2, 0
-_0805C83C: .4byte gUnknown_030005A4
-_0805C840:
- movs r3, 0
- ldr r0, _0805C878 @ =gUnknown_083738E4
- ldrh r1, [r0]
- ldr r2, _0805C87C @ =0x000011ff
- adds r4, r0, 0
- cmp r1, r2
- beq _0805C870
- adds r6, r4, 0
- ldr r0, _0805C880 @ =gUnknown_030005A6
- ldrh r1, [r0]
- adds r5, r2, 0
-_0805C856:
- lsls r2, r3, 3
- adds r0, r2, r6
- ldrh r0, [r0]
- cmp r0, r1
- beq _0805C828
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r0, r3, 3
- adds r0, r4
- ldrh r0, [r0]
- cmp r0, r5
- bne _0805C856
-_0805C870:
- ldr r0, _0805C87C @ =0x000011ff
-_0805C872:
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0805C878: .4byte gUnknown_083738E4
-_0805C87C: .4byte 0x000011ff
-_0805C880: .4byte gUnknown_030005A6
- thumb_func_end npc_paltag_by_palslot
-
- thumb_func_start sub_805C884
-sub_805C884: @ 805C884
- push {lr}
- adds r1, r0, 0
- movs r0, 0x2E
- ldrsh r2, [r1, r0]
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- ldr r2, _0805C8A0 @ =gMapObjects
- adds r0, r2
- ldr r2, _0805C8A4 @ =sub_805C8A8
- bl meta_step
- pop {r0}
- bx r0
- .align 2, 0
-_0805C8A0: .4byte gMapObjects
-_0805C8A4: .4byte sub_805C8A8
- thumb_func_end sub_805C884
-
- thumb_func_start sub_805C8A8
-sub_805C8A8: @ 805C8A8
- movs r0, 0
- bx lr
- thumb_func_end sub_805C8A8
-
- thumb_func_start sub_805C8AC
-sub_805C8AC: @ 805C8AC
- push {lr}
- adds r1, r0, 0
- movs r0, 0x2E
- ldrsh r2, [r1, r0]
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- ldr r2, _0805C8C8 @ =gMapObjects
- adds r0, r2
- ldr r2, _0805C8CC @ =sub_805C8D0
- bl meta_step
- pop {r0}
- bx r0
- .align 2, 0
-_0805C8C8: .4byte gMapObjects
-_0805C8CC: .4byte sub_805C8D0
- thumb_func_end sub_805C8AC
-
- thumb_func_start sub_805C8D0
-sub_805C8D0: @ 805C8D0
- push {r4,lr}
- ldr r3, _0805C8EC @ =gUnknown_08375224
- movs r4, 0x30
- ldrsh r2, [r1, r4]
- lsls r2, 2
- adds r2, r3
- ldr r2, [r2]
- bl _call_via_r2
- lsls r0, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0805C8EC: .4byte gUnknown_08375224
- thumb_func_end sub_805C8D0
-
- thumb_func_start sub_805C8F0
-sub_805C8F0: @ 805C8F0
- push {r4,lr}
- adds r4, r1, 0
- bl npc_reset
- movs r0, 0x1
- strh r0, [r4, 0x30]
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_805C8F0
-
- thumb_func_start sub_805C904
-sub_805C904: @ 805C904
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- bl GetFaceDirectionAnimId
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r4, 0
- adds r1, r5, 0
- bl FieldObjectSetRegularAnim
- movs r0, 0x2
- strh r0, [r5, 0x30]
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_805C904
-
thumb_func_start sub_805C930
sub_805C930: @ 805C930
push {r4-r6,lr}
diff --git a/asm/field_region_map.s b/asm/field_region_map.s
deleted file mode 100644
index 37c97c3ec..000000000
--- a/asm/field_region_map.s
+++ /dev/null
@@ -1,274 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start FieldInitRegionMap
-FieldInitRegionMap: @ 813EEB4
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0
- bl SetVBlankCallback
- ldr r2, _0813EED8 @ =0x02000000
- ldr r0, _0813EEDC @ =0x00000888
- adds r1, r2, r0
- movs r0, 0
- strh r0, [r1]
- str r4, [r2]
- ldr r0, _0813EEE0 @ =CB2_FieldInitRegionMap
- bl SetMainCallback2
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0813EED8: .4byte 0x02000000
-_0813EEDC: .4byte 0x00000888
-_0813EEE0: .4byte CB2_FieldInitRegionMap
- thumb_func_end FieldInitRegionMap
-
- thumb_func_start CB2_FieldInitRegionMap
-CB2_FieldInitRegionMap: @ 813EEE4
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0x80
- lsls r0, 19
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x10
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- ldr r0, _0813EF98 @ =0x02000008
- movs r1, 0
- bl sub_80FA8EC
- movs r0, 0
- movs r1, 0
- bl sub_80FBCF0
- movs r0, 0x1
- movs r1, 0x1
- bl sub_80FBB3C
- ldr r4, _0813EF9C @ =gWindowConfig_81E709C
- adds r0, r4, 0
- bl SetUpWindowConfig
- adds r0, r4, 0
- bl InitMenuWindow
- bl MenuZeroFillScreen
- ldr r1, _0813EFA0 @ =REG_BG0CNT
- movs r2, 0xF8
- lsls r2, 5
- adds r0, r2, 0
- strh r0, [r1]
- movs r0, 0x15
- movs r1, 0
- movs r2, 0x1D
- movs r3, 0x3
- bl MenuDrawTextWindow
- ldr r0, _0813EFA4 @ =gOtherText_Hoenn
- movs r1, 0x16
- movs r2, 0x1
- movs r3, 0x38
- bl sub_8072BD8
- movs r0, 0x10
- movs r1, 0x10
- movs r2, 0x1D
- movs r3, 0x13
- bl MenuDrawTextWindow
- bl sub_813F0C8
- ldr r0, _0813EFA8 @ =CB2_FieldRegionMap
- bl SetMainCallback2
- ldr r0, _0813EFAC @ =VBlankCB_FieldRegionMap
- bl SetVBlankCallback
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0813EF98: .4byte 0x02000008
-_0813EF9C: .4byte gWindowConfig_81E709C
-_0813EFA0: .4byte REG_BG0CNT
-_0813EFA4: .4byte gOtherText_Hoenn
-_0813EFA8: .4byte CB2_FieldRegionMap
-_0813EFAC: .4byte VBlankCB_FieldRegionMap
- thumb_func_end CB2_FieldInitRegionMap
-
- thumb_func_start VBlankCB_FieldRegionMap
-VBlankCB_FieldRegionMap: @ 813EFB0
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end VBlankCB_FieldRegionMap
-
- thumb_func_start CB2_FieldRegionMap
-CB2_FieldRegionMap: @ 813EFC4
- push {lr}
- bl sub_813EFDC
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end CB2_FieldRegionMap
-
- thumb_func_start sub_813EFDC
-sub_813EFDC: @ 813EFDC
- push {lr}
- sub sp, 0x4
- ldr r1, _0813EFF8 @ =0x02000000
- ldr r2, _0813EFFC @ =0x00000888
- adds r0, r1, r2
- ldrh r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x4
- bhi _0813F0B8
- lsls r0, 2
- ldr r1, _0813F000 @ =_0813F004
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0813EFF8: .4byte 0x02000000
-_0813EFFC: .4byte 0x00000888
-_0813F000: .4byte _0813F004
- .align 2, 0
-_0813F004:
- .4byte _0813F018
- .4byte _0813F030
- .4byte _0813F04C
- .4byte _0813F078
- .4byte _0813F0A0
-_0813F018:
- movs r1, 0x80
- lsls r1, 19
- ldr r3, _0813F028 @ =0x00001541
- adds r0, r3, 0
- strh r0, [r1]
- ldr r0, _0813F02C @ =0x00000888
- adds r1, r2, r0
- b _0813F08E
- .align 2, 0
-_0813F028: .4byte 0x00001541
-_0813F02C: .4byte 0x00000888
-_0813F030:
- ldr r0, _0813F044 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0813F0B8
- ldr r3, _0813F048 @ =0x00000888
- adds r1, r2, r3
- b _0813F08E
- .align 2, 0
-_0813F044: .4byte gPaletteFade
-_0813F048: .4byte 0x00000888
-_0813F04C:
- bl sub_80FAB60
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _0813F05E
- bl sub_813F0C8
- b _0813F0B8
-_0813F05E:
- cmp r0, 0x3
- blt _0813F0B8
- cmp r0, 0x5
- bgt _0813F0B8
- ldr r1, _0813F070 @ =0x02000000
- ldr r0, _0813F074 @ =0x00000888
- adds r1, r0
- b _0813F08E
- .align 2, 0
-_0813F070: .4byte 0x02000000
-_0813F074: .4byte 0x00000888
-_0813F078:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _0813F098 @ =0x02000000
- ldr r2, _0813F09C @ =0x00000888
- adds r1, r2
-_0813F08E:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0813F0B8
- .align 2, 0
-_0813F098: .4byte 0x02000000
-_0813F09C: .4byte 0x00000888
-_0813F0A0:
- ldr r0, _0813F0C0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0813F0B8
- bl sub_80FAB10
- ldr r0, _0813F0C4 @ =0x02000000
- ldr r0, [r0]
- bl SetMainCallback2
-_0813F0B8:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0813F0C0: .4byte gPaletteFade
-_0813F0C4: .4byte 0x02000000
- thumb_func_end sub_813EFDC
-
- thumb_func_start sub_813F0C8
-sub_813F0C8: @ 813F0C8
- push {lr}
- movs r0, 0x11
- movs r1, 0x11
- movs r2, 0x1C
- movs r3, 0x12
- bl MenuFillWindowRectWithBlankTile
- ldr r1, _0813F0F0 @ =0x02000000
- ldrb r0, [r1, 0x1E]
- cmp r0, 0
- beq _0813F0EA
- adds r0, r1, 0
- adds r0, 0x8
- movs r1, 0x11
- movs r2, 0x11
- bl MenuPrint
-_0813F0EA:
- pop {r0}
- bx r0
- .align 2, 0
-_0813F0F0: .4byte 0x02000000
- thumb_func_end sub_813F0C8
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/field_tasks.s b/asm/field_tasks.s
index c879ebf63..5f3e3a03f 100644
--- a/asm/field_tasks.s
+++ b/asm/field_tasks.s
@@ -1523,7 +1523,7 @@ _08069F9E:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl MetatileBehavior_IsAsh
+ bl MetatileBehavior_IsAshGrass
lsls r0, 24
cmp r0, 0
beq _0806A02A
@@ -1708,7 +1708,7 @@ _0806A122:
lsls r0, 24
cmp r0, 0
beq _0806A182
- bl sub_80E6034
+ bl GetPlayerSpeed
lsls r0, 16
asrs r0, 16
cmp r0, 0x4
diff --git a/asm/fldeff_80C5CD4.s b/asm/fldeff_80C5CD4.s
index 4214f8f9e..25ede5738 100644
--- a/asm/fldeff_80C5CD4.s
+++ b/asm/fldeff_80C5CD4.s
@@ -881,7 +881,7 @@ _080C6398: .4byte sub_80C660C
sub_80C639C: @ 80C639C
push {lr}
ldr r1, _080C63B0 @ =gUnknown_0202FF84
- ldr r0, _080C63B4 @ =gUnknown_03005CE0
+ ldr r0, _080C63B4 @ =gLastFieldPokeMenuOpened
ldrb r0, [r0]
str r0, [r1]
ldr r0, _080C63B8 @ =gUnknown_081A2CE6
@@ -890,7 +890,7 @@ sub_80C639C: @ 80C639C
bx r0
.align 2, 0
_080C63B0: .4byte gUnknown_0202FF84
-_080C63B4: .4byte gUnknown_03005CE0
+_080C63B4: .4byte gLastFieldPokeMenuOpened
_080C63B8: .4byte gUnknown_081A2CE6
thumb_func_end sub_80C639C
@@ -1026,7 +1026,7 @@ sub_80C6498: @ 80C6498
sub_80C64A8: @ 80C64A8
push {lr}
ldr r1, _080C64BC @ =gUnknown_0202FF84
- ldr r0, _080C64C0 @ =gUnknown_03005CE0
+ ldr r0, _080C64C0 @ =gLastFieldPokeMenuOpened
ldrb r0, [r0]
str r0, [r1]
ldr r0, _080C64C4 @ =gUnknown_081A2D3E
@@ -1035,7 +1035,7 @@ sub_80C64A8: @ 80C64A8
bx r0
.align 2, 0
_080C64BC: .4byte gUnknown_0202FF84
-_080C64C0: .4byte gUnknown_03005CE0
+_080C64C0: .4byte gLastFieldPokeMenuOpened
_080C64C4: .4byte gUnknown_081A2D3E
thumb_func_end sub_80C64A8
@@ -1213,7 +1213,7 @@ sub_80C65FC: @ 80C65FC
sub_80C660C: @ 80C660C
push {lr}
ldr r1, _080C6620 @ =gUnknown_0202FF84
- ldr r0, _080C6624 @ =gUnknown_03005CE0
+ ldr r0, _080C6624 @ =gLastFieldPokeMenuOpened
ldrb r0, [r0]
str r0, [r1]
ldr r0, _080C6628 @ =gUnknown_081A2D96
@@ -1222,7 +1222,7 @@ sub_80C660C: @ 80C660C
bx r0
.align 2, 0
_080C6620: .4byte gUnknown_0202FF84
-_080C6624: .4byte gUnknown_03005CE0
+_080C6624: .4byte gLastFieldPokeMenuOpened
_080C6628: .4byte gUnknown_081A2D96
thumb_func_end sub_80C660C
diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s
deleted file mode 100644
index a56ad32fa..000000000
--- a/asm/fldeff_cut.s
+++ /dev/null
@@ -1,797 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start SetUpFieldMove_Cut
-SetUpFieldMove_Cut: @ 80A2504
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r0, 0x52
- bl npc_before_player_of_type
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A2534
- ldr r1, _080A2524 @ =gUnknown_0300485C
- ldr r0, _080A2528 @ =sub_808AB90
- str r0, [r1]
- ldr r1, _080A252C @ =gUnknown_03005CE4
- ldr r0, _080A2530 @ =sub_80A2634
- b _080A25A8
- .align 2, 0
-_080A2524: .4byte gUnknown_0300485C
-_080A2528: .4byte sub_808AB90
-_080A252C: .4byte gUnknown_03005CE4
-_080A2530: .4byte sub_80A2634
-_080A2534:
- ldr r4, _080A25B0 @ =gUnknown_0203923C
- adds r1, r4, 0x2
- adds r0, r4, 0
- bl PlayerGetDestCoords
- movs r7, 0
- mov r8, r4
-_080A2542:
- ldr r1, _080A25B4 @ =0x0000ffff
- adds r0, r7, r1
- mov r2, r8
- ldrh r2, [r2, 0x2]
- adds r0, r2
- movs r6, 0
- lsls r0, 16
- asrs r5, r0, 16
-_080A2552:
- ldr r1, _080A25B4 @ =0x0000ffff
- adds r0, r6, r1
- mov r2, r8
- ldrh r2, [r2]
- adds r0, r2
- lsls r0, 16
- asrs r4, r0, 16
- adds r0, r4, 0
- adds r1, r5, 0
- bl MapGridGetZCoordAt
- lsls r0, 24
- lsrs r0, 24
- mov r2, r8
- movs r1, 0x4
- ldrsb r1, [r2, r1]
- cmp r0, r1
- bne _080A25C8
- adds r0, r4, 0
- adds r1, r5, 0
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl MetatileBehavior_IsPokeGrass
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080A259E
- adds r0, r4, 0
- bl MetatileBehavior_IsAsh
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A25C8
-_080A259E:
- ldr r1, _080A25B8 @ =gUnknown_0300485C
- ldr r0, _080A25BC @ =sub_808AB90
- str r0, [r1]
- ldr r1, _080A25C0 @ =gUnknown_03005CE4
- ldr r0, _080A25C4 @ =sub_80A25E8
-_080A25A8:
- str r0, [r1]
- movs r0, 0x1
- b _080A25DE
- .align 2, 0
-_080A25B0: .4byte gUnknown_0203923C
-_080A25B4: .4byte 0x0000ffff
-_080A25B8: .4byte gUnknown_0300485C
-_080A25BC: .4byte sub_808AB90
-_080A25C0: .4byte gUnknown_03005CE4
-_080A25C4: .4byte sub_80A25E8
-_080A25C8:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x2
- bls _080A2552
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x2
- bls _080A2542
- movs r0, 0
-_080A25DE:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end SetUpFieldMove_Cut
-
- thumb_func_start sub_80A25E8
-sub_80A25E8: @ 80A25E8
- push {lr}
- movs r0, 0x1
- bl FieldEffectStart
- ldr r0, _080A25FC @ =gUnknown_0202FF84
- ldr r1, _080A2600 @ =gUnknown_03005CE0
- ldrb r1, [r1]
- str r1, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_080A25FC: .4byte gUnknown_0202FF84
-_080A2600: .4byte gUnknown_03005CE0
- thumb_func_end sub_80A25E8
-
- thumb_func_start FldEff_UseCutOnGrass
-FldEff_UseCutOnGrass: @ 80A2604
- push {lr}
- bl oei_task_add
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080A262C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _080A2630 @ =sub_80A2684
- lsrs r0, r2, 16
- strh r0, [r1, 0x18]
- strh r2, [r1, 0x1A]
- movs r0, 0x12
- bl IncrementGameStat
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080A262C: .4byte gTasks
-_080A2630: .4byte sub_80A2684
- thumb_func_end FldEff_UseCutOnGrass
-
- thumb_func_start sub_80A2634
-sub_80A2634: @ 80A2634
- push {lr}
- ldr r1, _080A2648 @ =gUnknown_0202FF84
- ldr r0, _080A264C @ =gUnknown_03005CE0
- ldrb r0, [r0]
- str r0, [r1]
- ldr r0, _080A2650 @ =UseCutScript
- bl ScriptContext1_SetupScript
- pop {r0}
- bx r0
- .align 2, 0
-_080A2648: .4byte gUnknown_0202FF84
-_080A264C: .4byte gUnknown_03005CE0
-_080A2650: .4byte UseCutScript
- thumb_func_end sub_80A2634
-
- thumb_func_start FldEff_UseCutOnTree
-FldEff_UseCutOnTree: @ 80A2654
- push {lr}
- bl oei_task_add
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080A267C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _080A2680 @ =sub_80A2B00
- lsrs r0, r2, 16
- strh r0, [r1, 0x18]
- strh r2, [r1, 0x1A]
- movs r0, 0x12
- bl IncrementGameStat
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080A267C: .4byte gTasks
-_080A2680: .4byte sub_80A2B00
- thumb_func_end FldEff_UseCutOnTree
-
- thumb_func_start sub_80A2684
-sub_80A2684: @ 80A2684
- push {lr}
- movs r0, 0x1
- bl FieldEffectActiveListRemove
- movs r0, 0x3A
- bl FieldEffectStart
- pop {r0}
- bx r0
- thumb_func_end sub_80A2684
-
- thumb_func_start FldEff_CutGrass
-FldEff_CutGrass: @ 80A2698
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r7, 0
- movs r0, 0x80
- bl PlaySE
- ldr r4, _080A2790 @ =gUnknown_0203923C
- adds r1, r4, 0x2
- adds r0, r4, 0
- bl PlayerGetDestCoords
- mov r8, r4
-_080A26B2:
- ldr r1, _080A2794 @ =0x0000ffff
- adds r0, r7, r1
- mov r2, r8
- ldrh r2, [r2, 0x2]
- adds r0, r2
- movs r6, 0
- lsls r0, 16
- asrs r5, r0, 16
-_080A26C2:
- ldr r1, _080A2794 @ =0x0000ffff
- adds r0, r6, r1
- mov r2, r8
- ldrh r2, [r2]
- adds r0, r2
- lsls r0, 16
- asrs r4, r0, 16
- adds r0, r4, 0
- adds r1, r5, 0
- bl MapGridGetZCoordAt
- lsls r0, 24
- lsrs r0, 24
- mov r2, r8
- movs r1, 0x4
- ldrsb r1, [r2, r1]
- cmp r0, r1
- bne _080A270E
- adds r0, r4, 0
- adds r1, r5, 0
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl sub_80578F8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080A270E
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80A27A8
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_805BCC0
-_080A270E:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x2
- bls _080A26C2
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x2
- bls _080A26B2
- ldr r1, _080A2790 @ =gUnknown_0203923C
- ldrh r0, [r1]
- subs r0, 0x1
- lsls r0, 16
- asrs r0, 16
- ldrh r1, [r1, 0x2]
- subs r1, 0x2
- lsls r1, 16
- asrs r1, 16
- bl sub_80A28F4
- bl DrawWholeMapView
- movs r7, 0
- ldr r4, _080A2798 @ =gSprites
-_080A2740:
- ldr r0, _080A279C @ =gPlayerAvatar
- ldrb r1, [r0, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x2]
- lsls r1, 23
- lsrs r1, 7
- movs r2, 0x80
- lsls r2, 12
- adds r1, r2
- asrs r1, 16
- ldrb r2, [r0]
- adds r2, 0x14
- ldr r0, _080A27A0 @ =gSpriteTemplate_CutGrass
- movs r3, 0
- bl CreateSprite
- ldr r1, _080A27A4 @ =0x0201fff0
- adds r1, r7, r1
- strb r0, [r1]
- ldrb r1, [r1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- lsls r1, r7, 5
- strh r1, [r0, 0x32]
- adds r0, r7, 0x1
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0x7
- bls _080A2740
- movs r0, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080A2790: .4byte gUnknown_0203923C
-_080A2794: .4byte 0x0000ffff
-_080A2798: .4byte gSprites
-_080A279C: .4byte gPlayerAvatar
-_080A27A0: .4byte gSpriteTemplate_CutGrass
-_080A27A4: .4byte 0x0201fff0
- thumb_func_end FldEff_CutGrass
-
- thumb_func_start sub_80A27A8
-sub_80A27A8: @ 80A27A8
- push {r4-r7,lr}
- lsls r0, 16
- lsls r1, 16
- lsrs r6, r0, 16
- asrs r4, r0, 16
- lsrs r7, r1, 16
- asrs r5, r1, 16
- adds r0, r4, 0
- adds r1, r5, 0
- bl MapGridGetMetatileIdAt
- adds r1, r0, 0
- ldr r0, _080A27E0 @ =0x00000207
- cmp r1, r0
- bgt _080A27F4
- subs r0, 0x1
- cmp r1, r0
- bge _080A286C
- cmp r1, 0x25
- beq _080A288E
- cmp r1, 0x25
- bgt _080A27E4
- cmp r1, 0xD
- beq _080A2834
- cmp r1, 0x15
- beq _080A2834
- b _080A2898
- .align 2, 0
-_080A27E0: .4byte 0x00000207
-_080A27E4:
- movs r0, 0xE3
- lsls r0, 1
- cmp r1, r0
- beq _080A2844
- adds r0, 0x1
- cmp r1, r0
- beq _080A284A
- b _080A2898
-_080A27F4:
- ldr r0, _080A280C @ =0x00000212
- cmp r1, r0
- beq _080A287C
- cmp r1, r0
- bgt _080A2810
- subs r0, 0xA
- cmp r1, r0
- beq _080A2834
- adds r0, 0x2
- cmp r1, r0
- beq _080A287C
- b _080A2898
- .align 2, 0
-_080A280C: .4byte 0x00000212
-_080A2810:
- ldr r0, _080A2824 @ =0x00000282
- cmp r1, r0
- beq _080A285C
- cmp r1, r0
- bgt _080A2828
- subs r0, 0x1
- cmp r1, r0
- beq _080A2854
- b _080A2898
- .align 2, 0
-_080A2824: .4byte 0x00000282
-_080A2828:
- ldr r0, _080A2830 @ =0x00000283
- cmp r1, r0
- beq _080A2864
- b _080A2898
- .align 2, 0
-_080A2830: .4byte 0x00000283
-_080A2834:
- lsls r0, r6, 16
- asrs r0, 16
- lsls r1, r7, 16
- asrs r1, 16
- movs r2, 0x1
- bl MapGridSetMetatileIdAt
- b _080A2898
-_080A2844:
- movs r2, 0xE7
- lsls r2, 1
- b _080A286E
-_080A284A:
- ldr r2, _080A2850 @ =0x000001cf
- b _080A286E
- .align 2, 0
-_080A2850: .4byte 0x000001cf
-_080A2854:
- ldr r2, _080A2858 @ =0x00000279
- b _080A286E
- .align 2, 0
-_080A2858: .4byte 0x00000279
-_080A285C:
- ldr r2, _080A2860 @ =0x0000027a
- b _080A286E
- .align 2, 0
-_080A2860: .4byte 0x0000027a
-_080A2864:
- ldr r2, _080A2868 @ =0x0000027b
- b _080A286E
- .align 2, 0
-_080A2868: .4byte 0x0000027b
-_080A286C:
- ldr r2, _080A2878 @ =0x00000271
-_080A286E:
- adds r0, r4, 0
- adds r1, r5, 0
- bl MapGridSetMetatileIdAt
- b _080A2898
- .align 2, 0
-_080A2878: .4byte 0x00000271
-_080A287C:
- lsls r0, r6, 16
- asrs r0, 16
- lsls r1, r7, 16
- asrs r1, 16
- movs r2, 0x86
- lsls r2, 2
- bl MapGridSetMetatileIdAt
- b _080A2898
-_080A288E:
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0xE
- bl MapGridSetMetatileIdAt
-_080A2898:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80A27A8
-
- thumb_func_start sub_80A28A0
-sub_80A28A0: @ 80A28A0
- push {lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- bl MapGridGetMetatileIdAt
- lsls r0, 16
- lsrs r1, r0, 16
- adds r2, r1, 0
- cmp r1, 0x1
- bne _080A28BC
- movs r0, 0x1
- b _080A28EE
-_080A28BC:
- ldr r0, _080A28C8 @ =0x00000279
- cmp r1, r0
- bne _080A28CC
- movs r0, 0x2
- b _080A28EE
- .align 2, 0
-_080A28C8: .4byte 0x00000279
-_080A28CC:
- ldr r0, _080A28D8 @ =0x0000027a
- cmp r1, r0
- bne _080A28DC
- movs r0, 0x3
- b _080A28EE
- .align 2, 0
-_080A28D8: .4byte 0x0000027a
-_080A28DC:
- ldr r0, _080A28E8 @ =0x0000027b
- cmp r2, r0
- beq _080A28EC
- movs r0, 0
- b _080A28EE
- .align 2, 0
-_080A28E8: .4byte 0x0000027b
-_080A28EC:
- movs r0, 0x4
-_080A28EE:
- pop {r1}
- bx r1
- thumb_func_end sub_80A28A0
-
- thumb_func_start sub_80A28F4
-sub_80A28F4: @ 80A28F4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- lsls r1, 16
- movs r2, 0xC0
- lsls r2, 10
- adds r0, r1, r2
- lsrs r0, 16
- mov r9, r0
- movs r4, 0
- asrs r7, r1, 16
-_080A2914:
- mov r1, r10
- lsls r0, r1, 16
- asrs r0, 16
- lsls r4, 16
- asrs r1, r4, 16
- adds r0, r1
- lsls r0, 16
- lsrs r6, r0, 16
- asrs r5, r0, 16
- adds r0, r5, 0
- adds r1, r7, 0
- bl MapGridGetMetatileIdAt
- mov r8, r4
- cmp r0, 0x15
- bne _080A2996
- adds r4, r7, 0x1
- lsls r1, r4, 16
- asrs r1, 16
- adds r0, r5, 0
- bl sub_80A28A0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _080A296A
- cmp r0, 0x2
- bgt _080A2952
- cmp r0, 0x1
- beq _080A295C
- b _080A2996
-_080A2952:
- cmp r0, 0x3
- beq _080A297C
- cmp r0, 0x4
- beq _080A298C
- b _080A2996
-_080A295C:
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x82
- lsls r2, 2
- bl MapGridSetMetatileIdAt
- b _080A2996
-_080A296A:
- adds r0, r5, 0
- adds r1, r4, 0
- ldr r2, _080A2978 @ =0x00000281
- bl MapGridSetMetatileIdAt
- b _080A2996
- .align 2, 0
-_080A2978: .4byte 0x00000281
-_080A297C:
- adds r0, r5, 0
- adds r1, r4, 0
- ldr r2, _080A2988 @ =0x00000282
- bl MapGridSetMetatileIdAt
- b _080A2996
- .align 2, 0
-_080A2988: .4byte 0x00000282
-_080A298C:
- adds r0, r5, 0
- adds r1, r4, 0
- ldr r2, _080A2A30 @ =0x00000283
- bl MapGridSetMetatileIdAt
-_080A2996:
- lsls r0, r6, 16
- asrs r5, r0, 16
- mov r2, r9
- lsls r0, r2, 16
- asrs r4, r0, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl MapGridGetMetatileIdAt
- cmp r0, 0x1
- bne _080A2A10
- adds r4, 0x1
- adds r0, r5, 0
- adds r1, r4, 0
- bl MapGridGetMetatileIdAt
- movs r1, 0x82
- lsls r1, 2
- cmp r0, r1
- bne _080A29C8
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x1
- bl MapGridSetMetatileIdAt
-_080A29C8:
- adds r0, r5, 0
- adds r1, r4, 0
- bl MapGridGetMetatileIdAt
- ldr r1, _080A2A34 @ =0x00000281
- cmp r0, r1
- bne _080A29E0
- adds r0, r5, 0
- adds r1, r4, 0
- ldr r2, _080A2A38 @ =0x00000279
- bl MapGridSetMetatileIdAt
-_080A29E0:
- adds r0, r5, 0
- adds r1, r4, 0
- bl MapGridGetMetatileIdAt
- ldr r1, _080A2A3C @ =0x00000282
- cmp r0, r1
- bne _080A29F8
- adds r0, r5, 0
- adds r1, r4, 0
- ldr r2, _080A2A40 @ =0x0000027a
- bl MapGridSetMetatileIdAt
-_080A29F8:
- adds r0, r5, 0
- adds r1, r4, 0
- bl MapGridGetMetatileIdAt
- ldr r1, _080A2A30 @ =0x00000283
- cmp r0, r1
- bne _080A2A10
- adds r0, r5, 0
- adds r1, r4, 0
- ldr r2, _080A2A44 @ =0x0000027b
- bl MapGridSetMetatileIdAt
-_080A2A10:
- movs r0, 0x80
- lsls r0, 9
- add r0, r8
- lsrs r4, r0, 16
- asrs r0, 16
- cmp r0, 0x2
- bgt _080A2A20
- b _080A2914
-_080A2A20:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080A2A30: .4byte 0x00000283
-_080A2A34: .4byte 0x00000281
-_080A2A38: .4byte 0x00000279
-_080A2A3C: .4byte 0x00000282
-_080A2A40: .4byte 0x0000027a
-_080A2A44: .4byte 0x0000027b
- thumb_func_end sub_80A28F4
-
- thumb_func_start sub_80A2A48
-sub_80A2A48: @ 80A2A48
- movs r2, 0
- movs r1, 0x8
- strh r1, [r0, 0x2E]
- strh r2, [r0, 0x30]
- strh r2, [r0, 0x34]
- ldr r1, _080A2A58 @ =objc_8097BBC
- str r1, [r0, 0x1C]
- bx lr
- .align 2, 0
-_080A2A58: .4byte objc_8097BBC
- thumb_func_end sub_80A2A48
-
- thumb_func_start objc_8097BBC
-objc_8097BBC: @ 80A2A5C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x8
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x32]
- ldrh r1, [r4, 0x2E]
- adds r1, 0x1
- ldrh r2, [r4, 0x34]
- lsls r0, r2, 16
- asrs r0, 18
- adds r1, r0
- strh r1, [r4, 0x2E]
- adds r2, 0x1
- strh r2, [r4, 0x34]
- ldrh r1, [r4, 0x30]
- movs r2, 0x30
- ldrsh r0, [r4, r2]
- cmp r0, 0x1C
- beq _080A2AA8
- adds r0, r1, 0x1
- strh r0, [r4, 0x30]
- b _080A2AAC
-_080A2AA8:
- ldr r0, _080A2AB4 @ =sub_80A2AB8
- str r0, [r4, 0x1C]
-_080A2AAC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080A2AB4: .4byte sub_80A2AB8
- thumb_func_end objc_8097BBC
-
- thumb_func_start sub_80A2AB8
-sub_80A2AB8: @ 80A2AB8
- push {r4-r6,lr}
- movs r4, 0x1
-_080A2ABC:
- ldr r6, _080A2AF8 @ =0x0201fff0
- adds r0, r4, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r5, _080A2AFC @ =gSprites
- adds r0, r5
- bl DestroySprite
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _080A2ABC
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x3A
- bl FieldEffectStop
- bl sub_8064E2C
- bl ScriptContext2_Disable
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080A2AF8: .4byte 0x0201fff0
-_080A2AFC: .4byte gSprites
- thumb_func_end sub_80A2AB8
-
- thumb_func_start sub_80A2B00
-sub_80A2B00: @ 80A2B00
- push {lr}
- movs r0, 0x80
- bl PlaySE
- movs r0, 0x2
- bl FieldEffectActiveListRemove
- bl EnableBothScriptContexts
- pop {r0}
- bx r0
- thumb_func_end sub_80A2B00
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/fldeff_teleport.s b/asm/fldeff_teleport.s
deleted file mode 100644
index 335aed789..000000000
--- a/asm/fldeff_teleport.s
+++ /dev/null
@@ -1,93 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start SetUpFieldMove_Teleport
-SetUpFieldMove_Teleport: @ 814A374
- push {lr}
- ldr r0, _0814A38C @ =gMapHeader
- ldrb r0, [r0, 0x17]
- bl is_light_level_1_2_3_or_6
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0814A390
- movs r0, 0
- b _0814A39E
- .align 2, 0
-_0814A38C: .4byte gMapHeader
-_0814A390:
- ldr r1, _0814A3A4 @ =gUnknown_0300485C
- ldr r0, _0814A3A8 @ =sub_808AB90
- str r0, [r1]
- ldr r1, _0814A3AC @ =gUnknown_03005CE4
- ldr r0, _0814A3B0 @ =hm_teleport_run_dp02scr
- str r0, [r1]
- movs r0, 0x1
-_0814A39E:
- pop {r1}
- bx r1
- .align 2, 0
-_0814A3A4: .4byte gUnknown_0300485C
-_0814A3A8: .4byte sub_808AB90
-_0814A3AC: .4byte gUnknown_03005CE4
-_0814A3B0: .4byte hm_teleport_run_dp02scr
- thumb_func_end SetUpFieldMove_Teleport
-
- thumb_func_start hm_teleport_run_dp02scr
-hm_teleport_run_dp02scr: @ 814A3B4
- push {lr}
- bl new_game
- movs r0, 0x3F
- bl FieldEffectStart
- ldr r0, _0814A3CC @ =gUnknown_0202FF84
- ldr r1, _0814A3D0 @ =gUnknown_03005CE0
- ldrb r1, [r1]
- str r1, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_0814A3CC: .4byte gUnknown_0202FF84
-_0814A3D0: .4byte gUnknown_03005CE0
- thumb_func_end hm_teleport_run_dp02scr
-
- thumb_func_start FldEff_UseTeleport
-FldEff_UseTeleport: @ 814A3D4
- push {lr}
- bl oei_task_add
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0814A3FC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _0814A400 @ =sub_814A404
- lsrs r0, r2, 16
- strh r0, [r1, 0x18]
- strh r2, [r1, 0x1A]
- movs r0, 0x1
- bl SetPlayerAvatarTransitionFlags
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_0814A3FC: .4byte gTasks
-_0814A400: .4byte sub_814A404
- thumb_func_end FldEff_UseTeleport
-
- thumb_func_start sub_814A404
-sub_814A404: @ 814A404
- push {lr}
- movs r0, 0x3F
- bl FieldEffectActiveListRemove
- bl sub_8087BA8
- pop {r0}
- bx r0
- thumb_func_end sub_814A404
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/hall_of_fame.s b/asm/hall_of_fame.s
index c1e93c8b3..3ad85d7cf 100644
--- a/asm/hall_of_fame.s
+++ b/asm/hall_of_fame.s
@@ -539,11 +539,11 @@ sub_8142274: @ 8142274
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- ldr r1, _081422A8 @ =gUnknown_03005EBC
+ ldr r1, _081422A8 @ =gGameContinueCallback
ldr r0, _081422AC @ =sub_8141FC4
str r0, [r1]
movs r0, 0x3
- bl sub_8125D44
+ bl TrySavingData
movs r0, 0x37
bl PlaySE
ldr r1, _081422B0 @ =gTasks
@@ -559,7 +559,7 @@ sub_8142274: @ 8142274
pop {r0}
bx r0
.align 2, 0
-_081422A8: .4byte gUnknown_03005EBC
+_081422A8: .4byte gGameContinueCallback
_081422AC: .4byte sub_8141FC4
_081422B0: .4byte gTasks
_081422B4: .4byte sub_81422B8
@@ -1700,7 +1700,7 @@ _08142B8E:
adds r0, 0x4
adds r0, r1, r0
ldrh r3, [r0]
- ldr r0, _08142BD0 @ =gUnknown_0840B53A
+ ldr r0, _08142BD0 @ =gUnknown_0840B534 + 0x6
adds r1, r0
b _08142BE2
.align 2, 0
@@ -1710,14 +1710,14 @@ _08142BC0: .4byte gUnknown_0203931C
_08142BC4: .4byte 0x000001ff
_08142BC8: .4byte gUnknown_0840B564
_08142BCC: .4byte gUnknown_0840B534
-_08142BD0: .4byte gUnknown_0840B53A
+_08142BD0: .4byte gUnknown_0840B534 + 0x6
_08142BD4:
lsls r1, r5, 3
mov r0, r10
adds r0, 0x4
adds r0, r1, r0
ldrh r3, [r0]
- ldr r2, _08142C28 @ =gUnknown_0840B56A
+ ldr r2, _08142C28 @ =gUnknown_0840B564 + 0x6
adds r1, r2
_08142BE2:
ldrh r2, [r1]
@@ -1755,7 +1755,7 @@ _08142BE2:
strh r0, [r1]
b _08142C3C
.align 2, 0
-_08142C28: .4byte gUnknown_0840B56A
+_08142C28: .4byte gUnknown_0840B564 + 0x6
_08142C2C: .4byte gSprites
_08142C30:
adds r0, r5, 0x5
diff --git a/asm/item_menu.s b/asm/item_menu.s
index 4270b4954..29109f3d9 100644
--- a/asm/item_menu.s
+++ b/asm/item_menu.s
@@ -5128,7 +5128,7 @@ sub_80A599C: @ 80A599C
movs r4, 0
strh r2, [r1, 0x18]
strh r3, [r1, 0x1A]
- ldr r1, _080A59CC @ =gUnknown_03005CE0
+ ldr r1, _080A59CC @ =gLastFieldPokeMenuOpened
strb r4, [r1]
bl sub_80A5AE4
pop {r4}
@@ -5137,7 +5137,7 @@ sub_80A599C: @ 80A599C
.align 2, 0
_080A59C4: .4byte gTasks
_080A59C8: .4byte sub_805469C
-_080A59CC: .4byte gUnknown_03005CE0
+_080A59CC: .4byte gLastFieldPokeMenuOpened
thumb_func_end sub_80A599C
thumb_func_start sub_80A59D0
@@ -7539,7 +7539,7 @@ _080A6D14:
thumb_func_start sub_80A6D1C
sub_80A6D1C: @ 80A6D1C
push {r4,r5,lr}
- bl HideMapNamePopUpWindow
+ bl HideMapNamePopup
ldr r0, _080A6D70 @ =gSaveBlock1
ldr r1, _080A6D74 @ =0x00000496
adds r4, r0, r1
diff --git a/asm/item_use.s b/asm/item_use.s
index c4f6fb74a..66b9d7800 100644
--- a/asm/item_use.s
+++ b/asm/item_use.s
@@ -6,147 +6,6 @@
.text
- thumb_func_start sub_80C962C
-sub_80C962C: @ 80C962C
- push {r4-r6,lr}
- lsls r1, 16
- lsrs r3, r1, 16
- lsls r2, 16
- lsrs r4, r2, 16
- ldrb r2, [r0, 0x3]
- ldr r5, [r0, 0x10]
- movs r1, 0
- cmp r1, r2
- bge _080C9680
- lsls r0, r3, 16
- asrs r6, r0, 16
- lsls r0, r4, 16
- asrs r4, r0, 16
- adds r3, r5, 0
-_080C964A:
- ldrb r0, [r3, 0x5]
- cmp r0, 0x7
- bne _080C9678
- ldrh r0, [r3]
- cmp r6, r0
- bne _080C9678
- ldrh r0, [r3, 0x2]
- cmp r4, r0
- bne _080C9678
- movs r1, 0x96
- lsls r1, 2
- adds r0, r1, 0
- ldrh r3, [r3, 0xA]
- adds r0, r3
- lsls r0, 16
- lsrs r0, 16
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _080C9680
- movs r0, 0x1
- b _080C9682
-_080C9678:
- adds r3, 0xC
- adds r1, 0x1
- cmp r1, r2
- blt _080C964A
-_080C9680:
- movs r0, 0
-_080C9682:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80C962C
-
- thumb_func_start sub_80C9688
-sub_80C9688: @ 80C9688
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- bl mapconnection_get_mapheader
- adds r3, r0, 0
- ldrb r0, [r4]
- cmp r0, 0x2
- beq _080C96B0
- cmp r0, 0x2
- bgt _080C96A6
- cmp r0, 0x1
- beq _080C96C4
- b _080C9704
-_080C96A6:
- cmp r0, 0x3
- beq _080C96DC
- cmp r0, 0x4
- beq _080C96E6
- b _080C9704
-_080C96B0:
- ldr r0, [r4, 0x4]
- adds r0, 0x7
- subs r0, r5, r0
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, [r3]
- ldr r0, [r0, 0x4]
- subs r0, 0x7
- adds r0, r6
- b _080C96FA
-_080C96C4:
- ldr r0, [r4, 0x4]
- adds r0, 0x7
- subs r0, r5, r0
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _080C96D8 @ =gMapHeader
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- b _080C96F6
- .align 2, 0
-_080C96D8: .4byte gMapHeader
-_080C96DC:
- ldr r0, [r3]
- ldr r0, [r0]
- subs r0, 0x7
- adds r0, r5
- b _080C96F0
-_080C96E6:
- ldr r0, _080C9700 @ =gMapHeader
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, 0x7
- subs r0, r5, r0
-_080C96F0:
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, [r4, 0x4]
-_080C96F6:
- adds r0, 0x7
- subs r0, r6, r0
-_080C96FA:
- lsls r0, 16
- lsrs r2, r0, 16
- b _080C9708
- .align 2, 0
-_080C9700: .4byte gMapHeader
-_080C9704:
- movs r0, 0
- b _080C971A
-_080C9708:
- ldr r0, [r3, 0x4]
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- bl sub_80C962C
- lsls r0, 24
- lsrs r0, 24
-_080C971A:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80C9688
-
thumb_func_start sub_80C9720
sub_80C9720: @ 80C9720
push {r4-r7,lr}
@@ -1033,13 +892,13 @@ ItemUseOutOfBattle_SacredAsh: @ 80C9DCC
push {r4-r6,lr}
lsls r0, 24
lsrs r6, r0, 24
- ldr r1, _080C9DDC @ =gUnknown_03005CE0
+ ldr r1, _080C9DDC @ =gLastFieldPokeMenuOpened
movs r0, 0
strb r0, [r1]
movs r5, 0
b _080C9DE6
.align 2, 0
-_080C9DDC: .4byte gUnknown_03005CE0
+_080C9DDC: .4byte gLastFieldPokeMenuOpened
_080C9DE0:
adds r0, r5, 0x1
lsls r0, 24
@@ -1062,7 +921,7 @@ _080C9DE6:
bl GetMonData
cmp r0, 0
bne _080C9DE0
- ldr r0, _080C9E2C @ =gUnknown_03005CE0
+ ldr r0, _080C9E2C @ =gLastFieldPokeMenuOpened
strb r5, [r0]
_080C9E10:
ldr r1, _080C9E30 @ =gUnknown_03004AE4
@@ -1078,7 +937,7 @@ _080C9E10:
bx r0
.align 2, 0
_080C9E28: .4byte gPlayerParty
-_080C9E2C: .4byte gUnknown_03005CE0
+_080C9E2C: .4byte gLastFieldPokeMenuOpened
_080C9E30: .4byte gUnknown_03004AE4
_080C9E34: .4byte sub_8070048
_080C9E38: .4byte gUnknown_02038561
diff --git a/asm/libgcnmultiboot.s b/asm/libgcnmultiboot.s
index 87003abbc..91bc1890c 100644
--- a/asm/libgcnmultiboot.s
+++ b/asm/libgcnmultiboot.s
@@ -4,11 +4,36 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
+ .equiv GCMB_STRUCT_COUNTER1, 0x00
+ .equiv GCMB_STRUCT_COUNTER2, 0x01
+ .equiv GCMB_STRUCT_MBPROGRESS, 0x02
+ .equiv GCMB_STRUCT_SAVEDVCOUNT, 0x03
+ .equiv GCMB_STRUCT_KEYA, 0x04
+ .equiv GCMB_STRUCT_KEYB, 0x08
+ .equiv GCMB_STRUCT_KEYC, 0x0C
+ .equiv GCMB_STRUCT_BOOT_KEY, 0x10
+ .equiv GCMB_STRUCT_IMAGE_SIZE, 0x12
+ .equiv GCMB_STRUCT_SESSION_KEY, 0x14
+ .equiv GCMB_STRUCT_HASH_VAL, 0x18
+ .equiv GCMB_STRUCT_KEYC_DERIVATION, 0x1C
.equiv GCMB_STRUCT_BASE_DEST_PTR, 0x20
.equiv GCMB_STRUCT_CUR_DEST_PTR, 0x24
.equiv GCMB_STRUCT_SERIAL_INTR_HANDLER, 0x28
- .equiv ROM_HEADER_NINTENDO_LOGO_OFFSET, 0x4
+ .equiv ROM_HEADER_NINTENDO_LOGO_OFFSET, 0x04
+ .equiv ROM_HEADER_NINTENDO_LOGO_LENGTH, 0x98
+ .equiv ROM_HEADER_NINTENDO_LOGO_END, 0xA0
+
+ .equiv MBPROGRESS_NONE, 0x00
+ .equiv MBPROGRESS_LOGO_CORRECT, 0x01
+ .equiv MBPROGRESS_READY_TO_BOOT, 0x02
+
+ .equiv GCMB_MAGIC_BOOTKEY_HASHVAL, 0xBB
+ .equiv GCMB_MAGIC_BOOTKEY, 0xBB
+ .equiv GCMB_MAGIC_COUNTER2, 0xCC
+ .equiv GCMB_MAGIC_KEYA, 0xDD
+ .equiv GCMB_MAGIC_KEYB, 0xEE
+ .equiv GCMB_MAGIC_KEYCDERIVATION, 0xFF
.syntax unified
@@ -37,137 +62,177 @@ GameCubeMultiBoot_Hash_SkipEor:
thumb_func_start GameCubeMultiBoot_Main
@ void GameCubeMultiBoot_Main(struct GameCubeMultiBoot *mb)@
GameCubeMultiBoot_Main: @ 81DCB4C
+ @ If there is no interrupt handler, skip counter manipulation
ldr r1, [r0, GCMB_STRUCT_SERIAL_INTR_HANDLER]
cmp r1, 0
- beq _081DCB72
- ldrb r1, [r0, 0x1]
+ beq GameCubeMultiBoot_Main_SkipCounters
+ @ Increment the second counter
+ ldrb r1, [r0, GCMB_STRUCT_COUNTER2]
adds r1, 0x1
- strb r1, [r0, 0x1]
- ldrb r1, [r0, 0x2]
- cmp r1, 0x2
- beq _081DCBBC
+ strb r1, [r0, GCMB_STRUCT_COUNTER2]
+ @ If there is nothing more to do, bail out
+ ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS]
+ cmp r1, MBPROGRESS_READY_TO_BOOT
+ beq GameCubeMultiBoot_Main_Return
+ @ Save current interrupt master register value
ldr r3, pool_InterruptRegs
ldrh r2, [r3, OFFSET_REG_IME - 0x200]
+ @ Disable all interrupts
movs r1, 0
strh r1, [r3, OFFSET_REG_IME - 0x200]
- ldrb r1, [r0]
+ @ Increment the first counter, if it's less than or equal to 10.
+ ldrb r1, [r0, GCMB_STRUCT_COUNTER1]
cmp r1, 0xA
- bgt _081DCB70
+ bgt GameCubeMultiBoot_Main_SkipCounter1Inc
adds r1, 0x1
- strb r1, [r0]
-_081DCB70:
+ strb r1, [r0, GCMB_STRUCT_COUNTER1]
+GameCubeMultiBoot_Main_SkipCounter1Inc:
+ @ Load the saved interrupt master register value (re-enables interrupts if they were enabled before)
strh r2, [r3, OFFSET_REG_IME - 0x200]
-_081DCB72:
+GameCubeMultiBoot_Main_SkipCounters:
+ @ Initialise multiboot structures if required
bcs GameCubeMultiBoot_Init
- ldrb r1, [r0, 0x2]
- cmp r1, 0
- bne _081DCBBE
+ @ Skip this section (check Nintendo logo) if the check has already passed
+ ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS]
+ cmp r1, MBPROGRESS_NONE
+ bne GameCubeMultiBoot_Main_SkipLogoCheck
+ @ Bail out if no multiboot image data has been transferred yet
ldr r1, [r0, GCMB_STRUCT_CUR_DEST_PTR]
ldr r2, [r0, GCMB_STRUCT_BASE_DEST_PTR]
subs r1, r2
- beq _081DCC3E
- cmp r1, 0xA0
- bcc _081DCC3E
+ beq GameCubeMultiBoot_Main_Return2
+ @ Also bail out if not enough data has been transferred
+ cmp r1, ROM_HEADER_NINTENDO_LOGO_END
+ bcc GameCubeMultiBoot_Main_Return2
+ @ Compare the Nintendo logo of the transferred multiboot image header, with the one in the ROM image of the inserted cart
push {r4-r6}
- movs r1, 0x98
+ movs r1, ROM_HEADER_NINTENDO_LOGO_LENGTH
adds r2, ROM_HEADER_NINTENDO_LOGO_OFFSET
ldr r4, pool_NintendoLogo
-_081DCB8E:
+GameCubeMultiBoot_Main_LogoCmpLoop:
ldm r2!, {r5}
ldm r4!, {r6}
cmp r5, r6
- bne _081DCBA4
+ bne GameCubeMultiBoot_Main_LogoCmpEnd
subs r1, 0x4
- bne _081DCB8E
+ bne GameCubeMultiBoot_Main_LogoCmpLoop
ldm r2!, {r5}
ldm r4!, {r6}
eors r5, r6
lsrs r5, 8
str r2, [r0, GCMB_STRUCT_BASE_DEST_PTR]
-_081DCBA4:
+GameCubeMultiBoot_Main_LogoCmpEnd:
pop {r4-r6}
+ @ Throw everything away if the logo data didn't match
bne GameCubeMultiBoot_Init
- movs r1, 0x1
- strb r1, [r0, 0x2]
- ldr r1, [r0, 0x4]
- ldr r2, [r0, 0x8]
+ @ Logo matched, set the relevent multiboot progress bit
+ movs r1, MBPROGRESS_LOGO_CORRECT
+ strb r1, [r0, GCMB_STRUCT_MBPROGRESS]
+ @ XOR together KeyA and KeyB to get the initial multiboot image checksum value
+ ldr r1, [r0, GCMB_STRUCT_KEYA]
+ ldr r2, [r0, GCMB_STRUCT_KEYB]
eors r1, r2
- str r1, [r0, 0x18]
+ str r1, [r0, GCMB_STRUCT_HASH_VAL]
+ @ ...also use it as the initial value for the image encryption session key. Algorithm is the same as the GBA BIOS multiboot: sessionkey = (initialvalue * 0x6177614b) + 1
ldr r2, pool_Kawa
muls r1, r2
adds r1, 0x1
- str r1, [r0, 0x14]
-_081DCBBC:
+ str r1, [r0, GCMB_STRUCT_SESSION_KEY]
+GameCubeMultiBoot_Main_Return:
bx lr
-_081DCBBE:
+GameCubeMultiBoot_Main_SkipLogoCheck:
+ @ If this code is executed, then the logo check has passed, and the data being transferred in is encrypted.
+ @ Set up registers.
ldr r1, [r0, GCMB_STRUCT_CUR_DEST_PTR]
mov r12, r1
- ldr r3, [r0, 0x18]
+ ldr r3, [r0, GCMB_STRUCT_HASH_VAL]
push {r4-r7}
ldr r4, [r0, GCMB_STRUCT_BASE_DEST_PTR]
ldr r5, pool_Kawa
- ldr r6, [r0, 0x14]
+ ldr r6, [r0, GCMB_STRUCT_SESSION_KEY]
ldr r7, pool_HashVal
-_081DCBCE:
+GameCubeMultiBoot_Main_ImageDecryptHashLoop:
+ @ If there's no more data, break out of the loop
cmp r4, r12
- bcs _081DCBEE
+ bcs GameCubeMultiBoot_Main_ImageDecryptHashEnd
+ @ Get the next uint32
ldr r1, [r4]
+ @ Decrypt the ciphertext: plaintext = (ciphertext ^ sessionkey) + hashval
eors r1, r6
adds r1, r3
+ @ Save the current uint32 of plaintext and advance the pointer
stm r4!, {r1}
+ @ Advance the hashval with this uint32 of plaintext -- this is the same code as GameCubeMultiBoot_Hash.
eors r3, r1
movs r2, 0x20
-_081DCBDE:
+GameCubeMultiBoot_Main_HashLoop:
lsrs r3, 1
- bcc _081DCBE4
+ bcc GameCubeMultiBoot_Main_HashSkipEor
eors r3, r7
-_081DCBE4:
+GameCubeMultiBoot_Main_HashSkipEor:
subs r2, 0x1
- bne _081DCBDE
+ bne GameCubeMultiBoot_Main_HashLoop
+ @ Advance the sessionkey with the usual algorithm: sessionkey = (sessionkey * 0x6177614b) + 1
muls r6, r5
adds r6, 0x1
- b _081DCBCE
-_081DCBEE:
+ b GameCubeMultiBoot_Main_ImageDecryptHashLoop
+GameCubeMultiBoot_Main_ImageDecryptHashEnd:
+ @ Save the new pointer, sessionkey, hashval
str r4, [r0, GCMB_STRUCT_BASE_DEST_PTR]
- str r6, [r0, 0x14]
+ str r6, [r0, GCMB_STRUCT_SESSION_KEY]
pop {r4-r7}
- str r3, [r0, 0x18]
- ldrh r1, [r0, 0x12]
+ str r3, [r0, GCMB_STRUCT_HASH_VAL]
+ @ Bail out if the image size is unknown
+ ldrh r1, [r0, GCMB_STRUCT_IMAGE_SIZE]
cmp r1, 0
- bne _081DCC3E
+ bne GameCubeMultiBoot_Main_Return2
+ @ Bail out if no image data has been transferred
ldr r1, [r0, GCMB_STRUCT_CUR_DEST_PTR]
ldr r2, [r0, GCMB_STRUCT_BASE_DEST_PTR]
cmp r1, r2
- bne _081DCC3E
- ldr r1, [r0, 0xC]
+ bne GameCubeMultiBoot_Main_Return2
+ @ If KeyC hasn't been generated yet, go generate it
+ ldr r1, [r0, GCMB_STRUCT_KEYC]
cmp r1, 0
- beq _081DCC28
- ldrh r1, [r0, 0x10]
+ beq GameCubeMultiBoot_Main_GenerateKeyC
+ @ If the other side hasn't sent its boot key yet, bail out
+ ldrh r1, [r0, GCMB_STRUCT_BOOT_KEY]
cmp r1, 0
- beq _081DCBBC
+ beq GameCubeMultiBoot_Main_Return
+ @ Save off LR so it doesn't get clobbered by the upcoming function call
mov r12, lr
- movs r1, 0xBB
- ldr r3, [r0, 0xC]
+ @ Generate the real boot key, which is the checksum of a hardcoded value and KeyC
+ movs r1, GCMB_MAGIC_BOOTKEY_HASHVAL
+ ldr r3, [r0, GCMB_STRUCT_KEYC]
bl GameCubeMultiBoot_Hash
- ldrh r1, [r0, 0x10]
+ ldrh r1, [r0, GCMB_STRUCT_BOOT_KEY]
+ @ Restore the saved LR value
mov lr, r12
+ @ Compare the two boot keys (real and passed in), if they don't match then throw everything away
subs r1, r3
bne GameCubeMultiBoot_Init
- movs r1, 0x2
- strb r1, [r0, 0x2]
+ @ The two boot keys matched, tell the caller that the image is ready to boot
+ movs r1, MBPROGRESS_READY_TO_BOOT
+ strb r1, [r0, GCMB_STRUCT_MBPROGRESS]
+ @ Nothing more to do, return.
bx lr
-_081DCC28:
+GameCubeMultiBoot_Main_GenerateKeyC:
+ @ Save off LR so it doesn't get clobbered by the upcoming function call
mov r12, lr
- ldrb r1, [r0, 0x3]
+ @ KeyC = (SavedVCount << 24) - 1
+ ldrb r1, [r0, GCMB_STRUCT_SAVEDVCOUNT]
lsls r1, 24
subs r1, 0x1
- str r1, [r0, 0xC]
+ str r1, [r0, GCMB_STRUCT_KEYC]
+ @ Hash the KeyC with the multiboot image checksum to generate the KeyC derivation material to be sent to the other side of the link
bl GameCubeMultiBoot_Hash
+ @ Make sure the sent KeyC derivation material contains a magic value so that the other side can detect it
lsls r3, 8
- adds r3, 0xFF
- str r3, [r0, 0x1C]
+ adds r3, GCMB_MAGIC_KEYCDERIVATION
+ @ Save off the KeyC derivation material and return to caller
+ str r3, [r0, GCMB_STRUCT_KEYC_DERIVATION]
bx r12
-_081DCC3E:
+GameCubeMultiBoot_Main_Return2:
bx lr
thumb_func_end GameCubeMultiBoot_Main
@@ -182,12 +247,15 @@ pool_NintendoLogo: .4byte RomHeaderNintendoLogo
thumb_func_start GameCubeMultiBoot_ExecuteProgram
@ void GameCubeMultiBoot_ExecuteProgram(struct GameCubeMultiBoot *mb)@
GameCubeMultiBoot_ExecuteProgram: @ 81DCC4C
- ldrb r1, [r0, 0x2]
- cmp r1, 0x2
+ @ If there's no multiboot image ready, just return to caller
+ ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS]
+ cmp r1, MBPROGRESS_READY_TO_BOOT
bne GameCubeMultiBoot_ExecuteProgram_Fail
+ @ Disable interrupts
ldr r3, pool_InterruptRegs
movs r1, 0
strh r1, [r3, OFFSET_REG_IME - 0x200]
+ @ Jump to the real entry point of the multiboot image (past the image header), in ARM mode
ldr r1, pool_MultiBootLoadAddr
adds r1, 0xC0
bx r1
@@ -308,19 +376,25 @@ GameCubeMultiBoot_HandleSerialInterruptDone:
bx lr
GameCubeMultiBoot_BeginHandshake:
+ @ Throw away anything that got sent
ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120]
+ @ Send the game code, the other side of the link must send back the same game code
ldr r1, pool_RubyUSAGameCode
str r1, [r3, OFFSET_REG_JOY_TRANS - 0x120]
movs r1, 0x10
strh r1, [r3, OFFSET_REG_JOYSTAT - 0x120]
- ldrb r1, [r0, 0x3]
- strb r1, [r0, 0x9]
- ldrb r1, [r0, 0x2]
+ @ Use the saved VCount value to provide 8 bits of entropy for KeyB
+ ldrb r1, [r0, GCMB_STRUCT_SAVEDVCOUNT]
+ strb r1, [r0, GCMB_STRUCT_KEYB + 1]
+ @ If a multiboot image has been transferred at least enough such that the Nintendo logo check has passed, stop everything.
+ ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS]
cmp r1, 0
bne GcMbIntrHandler_Stop
+ @ Set the image destination pointers.
ldr r1, pool_MultiBootLoadAddr
str r1, [r0, GCMB_STRUCT_BASE_DEST_PTR]
str r1, [r0, GCMB_STRUCT_CUR_DEST_PTR]
+ @ Set the new interrupt handler.
adr r2, GcMbIntrHandler_CheckGameCodeSent
b GameCubeMultiBoot_SetInterruptHandler
@@ -347,84 +421,91 @@ GameCubeMultiBoot_CheckHandshakeResponse:
ldr r2, pool_RubyUSAGameCode
cmp r1, r2
bne GcMbIntrHandler_Stop @ stop if the GameCube didn't reply with the same game code
- ldrb r1, [r0, 0x3]
- strb r1, [r0, 0xB]
- adr r2, GcMbIntrHandler_81DCD0C
+ @ Use the saved VCount value to provide another 8 bits of entropy for KeyB.
+ ldrb r1, [r0, GCMB_STRUCT_SAVEDVCOUNT]
+ strb r1, [r0, GCMB_STRUCT_KEYB + 3]
+ adr r2, GcMbIntrHandler_ReceiveKeyA
b GameCubeMultiBoot_SetInterruptHandler
.align 2, 0
-GcMbIntrHandler_81DCD0C: @ 81DCD0C
+GcMbIntrHandler_ReceiveKeyA: @ 81DCD0C
lsrs r1, 1 @ is receive complete?
bcc GcMbIntrHandler_Stop @ branch if not
ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120]
+ @ make sure top 8 bits of the received value is the KeyA magic number, stop if KeyA is invalid
lsrs r2, r1, 24
- cmp r2, 0xDD
+ cmp r2, GCMB_MAGIC_KEYA
bne GcMbIntrHandler_Stop
- str r1, [r0, 0x4]
- ldrb r1, [r0, 0x1]
- strb r1, [r0, 0xA]
+ @ save received KeyA
+ str r1, [r0, GCMB_STRUCT_KEYA]
+ @ use the second GameCubeMultiBoot_Main() counter as another 8 bits of entropy for KeyB
+ ldrb r1, [r0, GCMB_STRUCT_COUNTER2]
+ strb r1, [r0, GCMB_STRUCT_KEYB + 2]
movs r2, 0
movs r3, 0
- ldr r1, [r0, 0x8]
+ ldr r1, [r0, GCMB_STRUCT_KEYB]
lsrs r1, 8
-_081DCD26:
+ @ make sure KeyB is valid (other side of the link is supposed to check KeyB too), if it's not then change the byte that was just set so it is
+GameCubeMultiBoot_KeyBCheckLoop:
lsrs r1, 1
adcs r2, r3
cmp r1, 0
- bne _081DCD26
+ bne GameCubeMultiBoot_KeyBCheckLoop
cmp r2, 0xE
- bgt _081DCD38
+ bgt GameCubeMultiBoot_KeyBSaveNewByte
cmp r2, 0x7
- bge _081DCD3A
+ bge GameCubeMultiBoot_KeyBCheckEnd
movs r1, 0xFF
-_081DCD38:
- strb r1, [r0, 0xA]
-_081DCD3A:
- ldr r1, [r0, 0x8]
- adds r1, 0xEE
+GameCubeMultiBoot_KeyBSaveNewByte:
+ strb r1, [r0, GCMB_STRUCT_KEYB + 2]
+GameCubeMultiBoot_KeyBCheckEnd:
+ @ add in the KeyB magic number and send off KeyB
+ ldr r1, [r0, GCMB_STRUCT_KEYB]
+ adds r1, GCMB_MAGIC_KEYB
ldr r3, pool_SerialRegs
str r1, [r3, OFFSET_REG_JOY_TRANS - 0x120]
movs r1, 0x30
strh r1, [r3, OFFSET_REG_JOYSTAT - 0x120]
- adr r2, GcMbIntrHandler_81DCD4C
+ @ set new interrupt handler
+ adr r2, GcMbIntrHandler_CheckKeyBSent
b GameCubeMultiBoot_SetInterruptHandler
.align 2, 0
-GcMbIntrHandler_81DCD4C: @ 81DCD4C
+GcMbIntrHandler_CheckKeyBSent: @ 81DCD4C
lsls r1, 31
bcc GcMbIntrHandler_Stop @ stop if send failed
- bmi _081DCD5C @ branch if receive is complete
- adr r2, GcMbIntrHandler_81DCD58
+ bmi GameCubeMultiBoot_CheckImageSizeResponse @ branch if receive is complete
+ adr r2, GcMbIntrHandler_CheckImageSizeResponse
b GameCubeMultiBoot_SetInterruptHandler
.align 2, 0
-GcMbIntrHandler_81DCD58: @ 81DCD58
+GcMbIntrHandler_CheckImageSizeResponse: @ 81DCD58
lsrs r1, 1 @ is receive complete?
bcc GcMbIntrHandler_Stop @ branch if not
-_081DCD5C:
+GameCubeMultiBoot_CheckImageSizeResponse:
ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120]
- ldr r2, _081DCDFC
+ ldr r2, GameCubeMultiBoot_MaximumImageSizeUInt32s
cmp r1, r2
bhs GcMbIntrHandler_Stop
adds r1, 0x1
adds r1, r1
- strh r1, [r0, 0x12]
- ldrb r1, [r0, 0x2]
+ strh r1, [r0, GCMB_STRUCT_IMAGE_SIZE]
+ ldrb r1, [r0, GCMB_STRUCT_MBPROGRESS]
cmp r1, 0
-_081DCD6E:
+GcMbIntrHandler_StopIfNotEqual:
bne GcMbIntrHandler_Stop
ldr r1, pool_MultiBootLoadAddr
str r1, [r0, GCMB_STRUCT_BASE_DEST_PTR]
str r1, [r0, GCMB_STRUCT_CUR_DEST_PTR]
- adr r2, GcMbIntrHandler_81DCD7C
+ adr r2, GcMbIntrHandler_CheckImageResponse
b GameCubeMultiBoot_SetInterruptHandler
.align 2, 0
-GcMbIntrHandler_81DCD7C: @ 81DCD7C
+GcMbIntrHandler_CheckImageResponse: @ 81DCD7C
lsrs r1, 1 @ is receive complete?
bcc GcMbIntrHandler_Stop @ branch if not
ldr r2, [r0, GCMB_STRUCT_CUR_DEST_PTR]
@@ -433,63 +514,73 @@ GcMbIntrHandler_81DCD7C: @ 81DCD7C
adds r1, 0x8
lsls r1, 2
strh r1, [r3, OFFSET_REG_JOYSTAT - 0x120]
+ @ get the recieved uint32
ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120]
+ @ put it in the current destination pointer and advance that pointer
stm r2!, {r1}
+ @ save off the advanced pointer
str r2, [r0, GCMB_STRUCT_CUR_DEST_PTR]
- ldrh r1, [r0, 0x12]
+ @ decrease the image size (in uint32s)
+ ldrh r1, [r0, GCMB_STRUCT_IMAGE_SIZE]
subs r1, 0x1
- strh r1, [r0, 0x12]
+ strh r1, [r0, GCMB_STRUCT_IMAGE_SIZE]
+ @ branch away if the transfer is not yet complete
bne GameCubeMultiBoot_ReadVCount
-_081DCD9A:
- ldrb r1, [r0, 0x1]
+GcMbIntrHandler_SendCounter2:
+ @ send counter2 with magic number
+ ldrb r1, [r0, GCMB_STRUCT_COUNTER2]
lsls r1, 8
- adds r1, 0xCC
+ adds r1, GCMB_MAGIC_COUNTER2
str r1, [r3, OFFSET_REG_JOY_TRANS - 0x120]
- adr r2, _081DCDA8
+ adr r2, GcMbIntrHandler_CheckCounter2Sent
b GameCubeMultiBoot_SetInterruptHandler
.align 2, 0
-_081DCDA8:
+GcMbIntrHandler_CheckCounter2Sent:
lsls r1, 31
-_081DCDAA:
- bcc GcMbIntrHandler_Stop
- ldr r1, [r0, 0x1C]
+GcMbIntrHandler_StopIfSendFailed:
+ bcc GcMbIntrHandler_Stop @ stop if send failed
+ @ if KeyC derivation value has not yet been generated, send Counter2 again, otherwise, send KeyC derivation
+ ldr r1, [r0, GCMB_STRUCT_KEYC_DERIVATION]
cmp r1, 0
- beq _081DCD9A
+ beq GcMbIntrHandler_SendCounter2
str r1, [r3, OFFSET_REG_JOY_TRANS - 0x120]
- adr r2, GcMbIntrHandler_81DCDB8
+ adr r2, GcMbIntrHandler_CheckKeyCDerivationSent
b GameCubeMultiBoot_SetInterruptHandler
.align 2, 0
-GcMbIntrHandler_81DCDB8: @ 81DCDB8
+GcMbIntrHandler_CheckKeyCDerivationSent: @ 81DCDB8
lsls r1, 31
- bcc _081DCDAA @ branch if send failed
- bmi _081DCDC8 @ branch if receive is complete
- adr r2, GcMbIntrHandler_81DCDC4
+ bcc GcMbIntrHandler_StopIfSendFailed @ branch if send failed
+ bmi GameCubeMultiBoot_CheckBootKeyResponse @ branch if receive is complete
+ adr r2, GcMbIntrHandler_CheckBootKeyResponse
b GameCubeMultiBoot_SetInterruptHandler
.align 2, 0
-GcMbIntrHandler_81DCDC4: @ 81DCDC4
+GcMbIntrHandler_CheckBootKeyResponse: @ 81DCDC4
lsrs r1, 1 @ is receive complete?
- bcc _081DCDAA @ branch if not
+ bcc GcMbIntrHandler_StopIfSendFailed @ branch if not
-_081DCDC8:
+GameCubeMultiBoot_CheckBootKeyResponse:
ldr r1, [r3, OFFSET_REG_JOY_RECV - 0x120]
+ @ make sure received boot key contains expected magic number, stop if not
lsrs r2, r1, 24
- cmp r2, 0xBB
- bne _081DCD6E
- strh r1, [r0, 0x10]
- adr r2, GcMbIntrHandler_81DCDD8
+ cmp r2, GCMB_MAGIC_BOOTKEY
+ bne GcMbIntrHandler_StopIfNotEqual
+ @ save received bootkey to be checked in GameCubeMultiBoot_Main()
+ strh r1, [r0, GCMB_STRUCT_BOOT_KEY]
+ @ stop if anything more gets sent
+ adr r2, GcMbIntrHandler_StopUnconditionally
b GameCubeMultiBoot_SetInterruptHandler
.align 2, 0
-GcMbIntrHandler_81DCDD8: @ 81DCDD8
+GcMbIntrHandler_StopUnconditionally: @ 81DCDD8
b GcMbIntrHandler_Stop
thumb_func_end GameCubeMultiBoot_HandleSerialInterrupt
@@ -535,7 +626,7 @@ GameCubeMultiBoot_Quit: @ 81DCDDA
.align 2, 0
-_081DCDFC: .4byte 0x00004000
+GameCubeMultiBoot_MaximumImageSizeUInt32s: .4byte 0x00004000
pool_InterruptRegs: .4byte REG_BASE + 0x200
diff --git a/asm/macros/battle_ai_script.inc b/asm/macros/battle_ai_script.inc
index 38a44ddfb..679e30340 100644
--- a/asm/macros/battle_ai_script.inc
+++ b/asm/macros/battle_ai_script.inc
@@ -1,21 +1,24 @@
- .macro if_random percent, address
+ .macro if_random_less_than percent, address
.byte 0x00
.byte \percent
.4byte \address
.endm
- .macro if_not_random percent, address
+ @ unused
+ .macro if_random_greater_than percent, address
.byte 0x01
.byte \percent
.4byte \address
.endm
- .macro if_random_1 address
+ @ unused
+ .macro if_random_equal address
.byte 0x02
.4byte \address
.endm
- .macro if_not_random_1 address
+ @ unused
+ .macro if_random_not_equal address
.byte 0x03
.4byte \address
.endm
@@ -212,7 +215,8 @@
.byte \byte
.endm
- .macro ai_23
+ @ unused
+ .macro get_move_power
.byte 0x23
.endm
@@ -225,14 +229,17 @@
.byte \target
.endm
- .macro if_type type, address
+ .macro if_arg_equal type, address
.byte 0x26
.byte \type
.4byte \address
.endm
- .macro ai_27
+ @ unused
+ .macro if_arg_not_equal type, address
.byte 0x27
+ .byte \type
+ .4byte \address
.endm
.macro if_would_go_first target, address
@@ -247,10 +254,12 @@
.4byte \address
.endm
+ @ nullsub
.macro ai_2a
.byte 0x2a
.endm
+ @ nullsub
.macro ai_2b
.byte 0x2b
.endm
@@ -260,7 +269,8 @@
.byte \target
.endm
- .macro ai_2d
+ @ unused
+ .macro get_considered_move
.byte 0x2d
.endm
@@ -273,7 +283,8 @@
.byte \target
.endm
- .macro ai_30
+ @ unused
+ .macro get_highest_possible_damage
.byte 0x30
.endm
@@ -283,10 +294,12 @@
.4byte \address
.endm
+ @ nullsub
.macro ai_32
.byte 0x32
.endm
+ @ nullsub
.macro ai_33
.byte 0x33
.endm
@@ -364,12 +377,20 @@
.4byte \address
.endm
- .macro if_has_move
+ @ unused
+ .macro if_has_move, target, move, address
.byte 0x3f
+ .byte \target
+ .2byte \move
+ .4byte \address
.endm
- .macro if_dont_have_move
+ @ unused
+ .macro if_dont_have_move, target, move, address
.byte 0x40
+ .byte \target
+ .2byte \move
+ .4byte \address
.endm
.macro if_move_effect target, effect, address
@@ -393,8 +414,9 @@
.4byte \address
.endm
- .macro if_encored address
+ .macro if_encored target, address
.byte 0x44
+ .byte \target
.4byte \address
.endm
@@ -402,7 +424,7 @@
.byte 0x45
.endm
- .macro if_random_2 address
+ .macro if_random_100 address
.byte 0x46
.4byte \address
.endm
@@ -440,15 +462,15 @@
.byte \target
.endm
- .macro get_move_type
+ .macro get_move_type_from_result
.byte 0x4e
.endm
- .macro get_move_power
+ .macro get_move_power_from_result
.byte 0x4f
.endm
- .macro get_move_effect
+ .macro get_move_effect_from_result
.byte 0x50
.endm
@@ -457,30 +479,37 @@
.byte \target
.endm
+ @ nullsub
.macro ai_52
.byte 0x52
.endm
+ @ nullsub
.macro ai_53
.byte 0x53
.endm
+ @ nullsub
.macro ai_54
.byte 0x54
.endm
+ @ nullsub
.macro ai_55
.byte 0x55
.endm
+ @ nullsub
.macro ai_56
.byte 0x56
.endm
+ @ nullsub
.macro ai_57
.byte 0x57
.endm
+ @ unused
.macro call address
.byte 0x58
.4byte \address
@@ -513,6 +542,7 @@
if_level_cond 2, \address
.endm
+ @ unused
.macro if_taunted address
.byte 0x5c
.4byte \address
diff --git a/asm/map_name_popup.s b/asm/map_name_popup.s
deleted file mode 100644
index b488e5f73..000000000
--- a/asm/map_name_popup.s
+++ /dev/null
@@ -1,248 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start unref_sub_80A2F44
-unref_sub_80A2F44: @ 80A2F44
- push {lr}
- bl CloseMenu
- bl AddMapNamePopUpWindowTask
- movs r0, 0x1
- pop {r1}
- bx r1
- thumb_func_end unref_sub_80A2F44
-
- thumb_func_start AddMapNamePopUpWindowTask
-AddMapNamePopUpWindowTask: @ 80A2F54
- push {r4,r5,lr}
- movs r0, 0x80
- lsls r0, 7
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080A2FE4
- ldr r4, _080A2FAC @ =sub_80A2FF4
- adds r0, r4, 0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _080A2FBC
- adds r0, r4, 0
- movs r1, 0x5A
- bl CreateTask
- ldr r4, _080A2FB0 @ =gUnknown_02038538
- strb r0, [r4]
- ldr r1, _080A2FB4 @ =REG_BG0VOFS
- movs r0, 0x20
- strh r0, [r1]
- bl sub_80A30E0
- ldr r2, _080A2FB8 @ =gTasks
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- strh r5, [r0, 0x8]
- ldrb r1, [r4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r1, 0x20
- strh r1, [r0, 0xC]
- b _080A2FE4
- .align 2, 0
-_080A2FAC: .4byte sub_80A2FF4
-_080A2FB0: .4byte gUnknown_02038538
-_080A2FB4: .4byte REG_BG0VOFS
-_080A2FB8: .4byte gTasks
-_080A2FBC:
- ldr r3, _080A2FEC @ =gTasks
- ldr r2, _080A2FF0 @ =gUnknown_02038538
- ldrb r0, [r2]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r3
- movs r4, 0x8
- ldrsh r0, [r1, r4]
- cmp r0, 0x2
- beq _080A2FD6
- movs r0, 0x2
- strh r0, [r1, 0x8]
-_080A2FD6:
- ldrb r0, [r2]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r3
- movs r0, 0x1
- strh r0, [r1, 0xE]
-_080A2FE4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080A2FEC: .4byte gTasks
-_080A2FF0: .4byte gUnknown_02038538
- thumb_func_end AddMapNamePopUpWindowTask
-
- thumb_func_start sub_80A2FF4
-sub_80A2FF4: @ 80A2FF4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r3, _080A3018 @ =gTasks
- adds r4, r1, r3
- movs r0, 0x8
- ldrsh r2, [r4, r0]
- cmp r2, 0x1
- beq _080A304C
- cmp r2, 0x1
- bgt _080A301C
- cmp r2, 0
- beq _080A3026
- b _080A3092
- .align 2, 0
-_080A3018: .4byte gTasks
-_080A301C:
- cmp r2, 0x2
- beq _080A3064
- cmp r2, 0x4
- beq _080A308C
- b _080A3092
-_080A3026:
- ldrh r0, [r4, 0xC]
- subs r0, 0x2
- strh r0, [r4, 0xC]
- lsls r0, 16
- cmp r0, 0
- bgt _080A3092
- movs r0, 0x1
- strh r0, [r4, 0x8]
- ldr r0, _080A3048 @ =gUnknown_02038538
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r3
- strh r2, [r0, 0xA]
- b _080A3092
- .align 2, 0
-_080A3048: .4byte gUnknown_02038538
-_080A304C:
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x78
- ble _080A3092
- movs r0, 0
- strh r0, [r4, 0xA]
- movs r0, 0x2
- strh r0, [r4, 0x8]
- b _080A3092
-_080A3064:
- ldrh r0, [r4, 0xC]
- adds r0, 0x2
- movs r5, 0
- strh r0, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1F
- ble _080A3092
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080A3086
- bl sub_80A30E0
- strh r5, [r4, 0x8]
- strh r5, [r4, 0xE]
- b _080A3092
-_080A3086:
- movs r0, 0x4
- strh r0, [r4, 0x8]
- b _080A3098
-_080A308C:
- bl HideMapNamePopUpWindow
- b _080A3098
-_080A3092:
- ldr r1, _080A30A0 @ =REG_BG0VOFS
- ldrh r0, [r4, 0xC]
- strh r0, [r1]
-_080A3098:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080A30A0: .4byte REG_BG0VOFS
- thumb_func_end sub_80A2FF4
-
- thumb_func_start HideMapNamePopUpWindow
-HideMapNamePopUpWindow: @ 80A30A4
- push {lr}
- ldr r0, _080A30D4 @ =sub_80A2FF4
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _080A30D0
- bl MenuLoadTextWindowGraphics
- movs r0, 0
- movs r1, 0
- movs r2, 0xD
- movs r3, 0x3
- bl MenuZeroFillWindowRect
- ldr r1, _080A30D8 @ =REG_BG0VOFS
- movs r0, 0
- strh r0, [r1]
- ldr r0, _080A30DC @ =gUnknown_02038538
- ldrb r0, [r0]
- bl DestroyTask
-_080A30D0:
- pop {r0}
- bx r0
- .align 2, 0
-_080A30D4: .4byte sub_80A2FF4
-_080A30D8: .4byte REG_BG0VOFS
-_080A30DC: .4byte gUnknown_02038538
- thumb_func_end HideMapNamePopUpWindow
-
- thumb_func_start sub_80A30E0
-sub_80A30E0: @ 80A30E0
- push {lr}
- sub sp, 0x14
- movs r0, 0
- bl MenuLoadTextWindowGraphics_OverrideFrameType
- ldr r0, _080A3114 @ =gMapHeader
- ldrb r1, [r0, 0x14]
- mov r0, sp
- movs r2, 0
- bl sub_80FBFB4
- movs r0, 0
- movs r1, 0
- movs r2, 0xD
- movs r3, 0x3
- bl MenuDrawTextWindow
- mov r0, sp
- movs r1, 0x1
- movs r2, 0x1
- movs r3, 0x60
- bl sub_8072BD8
- add sp, 0x14
- pop {r0}
- bx r0
- .align 2, 0
-_080A3114: .4byte gMapHeader
- thumb_func_end sub_80A30E0
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/mauville_old_man.s b/asm/mauville_old_man.s
index 3af0f2b11..90d97e9a4 100644
--- a/asm/mauville_old_man.s
+++ b/asm/mauville_old_man.s
@@ -6,502 +6,6 @@
.text
- thumb_func_start sub_80F7A34
-sub_80F7A34: @ 80F7A34
- push {r4,lr}
- ldr r0, _080F7A64 @ =gSaveBlock1 + 0x2D94
- movs r1, 0
- strb r1, [r0]
- adds r2, r0, 0
- adds r2, 0x29
- strb r1, [r2]
- movs r2, 0
- adds r4, r0, 0x2
- ldr r3, _080F7A68 @ =gUnknown_083E537C
-_080F7A48:
- lsls r0, r2, 1
- adds r1, r4, r0
- adds r0, r3
- ldrh r0, [r0]
- strh r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x5
- bls _080F7A48
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080F7A64: .4byte gSaveBlock1 + 0x2D94
-_080F7A68: .4byte gUnknown_083E537C
- thumb_func_end sub_80F7A34
-
- thumb_func_start sub_80F7A6C
-sub_80F7A6C: @ 80F7A6C
- ldr r0, _080F7A78 @ =gSaveBlock1 + 0x2D94
- movs r2, 0
- movs r1, 0x1
- strb r1, [r0]
- strb r2, [r0, 0x1]
- bx lr
- .align 2, 0
-_080F7A78: .4byte gSaveBlock1 + 0x2D94
- thumb_func_end sub_80F7A6C
-
- thumb_func_start sub_80F7A7C
-sub_80F7A7C: @ 80F7A7C
- push {lr}
- bl sub_80F83F8
- pop {r0}
- bx r0
- thumb_func_end sub_80F7A7C
-
- thumb_func_start sub_80F7A88
-sub_80F7A88: @ 80F7A88
- ldr r0, _080F7A94 @ =gSaveBlock1 + 0x2D94
- movs r2, 0
- movs r1, 0x4
- strb r1, [r0]
- strb r2, [r0, 0x1]
- bx lr
- .align 2, 0
-_080F7A94: .4byte gSaveBlock1 + 0x2D94
- thumb_func_end sub_80F7A88
-
- thumb_func_start sub_80F7A98
-sub_80F7A98: @ 80F7A98
- push {lr}
- bl sub_81099CC
- pop {r0}
- bx r0
- thumb_func_end sub_80F7A98
-
- thumb_func_start sub_80F7AA4
-sub_80F7AA4: @ 80F7AA4
- push {lr}
- ldr r0, _080F7AC8 @ =gSaveBlock2
- ldrb r1, [r0, 0xB]
- lsls r1, 8
- ldrb r0, [r0, 0xA]
- orrs r0, r1
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 17
- cmp r0, 0x4
- bhi _080F7B00
- lsls r0, 2
- ldr r1, _080F7ACC @ =_080F7AD0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080F7AC8: .4byte gSaveBlock2
-_080F7ACC: .4byte _080F7AD0
- .align 2, 0
-_080F7AD0:
- .4byte _080F7AE4
- .4byte _080F7AEA
- .4byte _080F7AF0
- .4byte _080F7AF6
- .4byte _080F7AFC
-_080F7AE4:
- bl sub_80F7A34
- b _080F7B00
-_080F7AEA:
- bl sub_80F7A6C
- b _080F7B00
-_080F7AF0:
- bl sub_80F7A98
- b _080F7B00
-_080F7AF6:
- bl sub_80F7A7C
- b _080F7B00
-_080F7AFC:
- bl sub_80F7A88
-_080F7B00:
- bl sub_80F83D0
- pop {r0}
- bx r0
- thumb_func_end sub_80F7AA4
-
- thumb_func_start GetCurrentMauvilleOldMan
-GetCurrentMauvilleOldMan: @ 80F7B08
- ldr r0, _080F7B10 @ =gSaveBlock1 + 0x2D94
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_080F7B10: .4byte gSaveBlock1 + 0x2D94
- thumb_func_end GetCurrentMauvilleOldMan
-
- thumb_func_start sub_80F7B14
-sub_80F7B14: @ 80F7B14
- push {r4,lr}
- ldr r4, _080F7B28 @ =gScriptResult
- bl GetCurrentMauvilleOldMan
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080F7B28: .4byte gScriptResult
- thumb_func_end sub_80F7B14
-
- thumb_func_start sub_80F7B2C
-sub_80F7B2C: @ 80F7B2C
- ldr r0, _080F7B38 @ =gScriptResult
- ldr r1, _080F7B3C @ =gSaveBlock1 + 0x2D94
- adds r1, 0x29
- ldrb r1, [r1]
- strh r1, [r0]
- bx lr
- .align 2, 0
-_080F7B38: .4byte gScriptResult
-_080F7B3C: .4byte gSaveBlock1 + 0x2D94
- thumb_func_end sub_80F7B2C
-
- thumb_func_start sub_80F7B40
-sub_80F7B40: @ 80F7B40
- push {r4,r5,lr}
- ldr r5, _080F7B98 @ =gSaveBlock1 + 0x2D94
- adds r0, r5, 0
- adds r0, 0x1A
- ldr r4, _080F7B9C @ =gSaveBlock2
- adds r1, r4, 0
- bl StringCopy
- movs r2, 0
- adds r3, r5, 0
- adds r3, 0x25
- adds r4, 0xA
-_080F7B58:
- adds r1, r3, r2
- adds r0, r2, r4
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x3
- bls _080F7B58
- movs r2, 0
- movs r0, 0x29
- adds r0, r5
- mov r12, r0
- adds r4, r5, 0x2
- adds r3, r5, 0
- adds r3, 0xE
-_080F7B78:
- lsls r0, r2, 1
- adds r1, r4, r0
- adds r0, r3, r0
- ldrh r0, [r0]
- strh r0, [r1]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x5
- bls _080F7B78
- movs r0, 0x1
- mov r1, r12
- strb r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080F7B98: .4byte gSaveBlock1 + 0x2D94
-_080F7B9C: .4byte gSaveBlock2
- thumb_func_end sub_80F7B40
-
- thumb_func_start sub_80F7BA0
-sub_80F7BA0: @ 80F7BA0
- push {r4-r7,lr}
- ldr r1, _080F7C48 @ =gSaveBlock1 + 0x2D94
- ldr r0, _080F7C4C @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- adds r5, r1, 0
- adds r5, 0xE
- cmp r0, 0
- bne _080F7BB2
- adds r5, r1, 0x2
-_080F7BB2:
- ldr r2, _080F7C50 @ =gStringVar4
- adds r4, r2, 0
- movs r6, 0
-_080F7BB8:
- ldrh r1, [r5]
- adds r5, 0x2
- adds r0, r2, 0
- bl sub_80EB3FC
- adds r2, r0, 0
- adds r7, r6, 0x1
- cmp r2, r4
- beq _080F7BDA
- movs r1, 0x37
-_080F7BCC:
- ldrb r0, [r4]
- cmp r0, 0
- bne _080F7BD4
- strb r1, [r4]
-_080F7BD4:
- adds r4, 0x1
- cmp r2, r4
- bne _080F7BCC
-_080F7BDA:
- adds r4, 0x1
- movs r0, 0
- strb r0, [r2]
- adds r2, 0x1
- ldrh r1, [r5]
- adds r5, 0x2
- adds r0, r2, 0
- bl sub_80EB3FC
- adds r2, r0, 0
- cmp r2, r4
- beq _080F7C02
- movs r1, 0x37
-_080F7BF4:
- ldrb r0, [r4]
- cmp r0, 0
- bne _080F7BFC
- strb r1, [r4]
-_080F7BFC:
- adds r4, 0x1
- cmp r2, r4
- bne _080F7BF4
-_080F7C02:
- adds r4, 0x1
- movs r0, 0xFE
- strb r0, [r2]
- adds r2, 0x1
- ldrh r1, [r5]
- adds r5, 0x2
- adds r0, r2, 0
- bl sub_80EB3FC
- adds r2, r0, 0
- cmp r2, r4
- beq _080F7C2A
- movs r1, 0x37
-_080F7C1C:
- ldrb r0, [r4]
- cmp r0, 0
- bne _080F7C24
- strb r1, [r4]
-_080F7C24:
- adds r4, 0x1
- cmp r2, r4
- bne _080F7C1C
-_080F7C2A:
- cmp r6, 0
- bne _080F7C3A
- movs r0, 0xFC
- strb r0, [r2]
- adds r2, 0x1
- movs r0, 0xF
- strb r0, [r2]
- adds r2, 0x1
-_080F7C3A:
- lsls r0, r7, 16
- lsrs r6, r0, 16
- cmp r6, 0x1
- bls _080F7BB8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080F7C48: .4byte gSaveBlock1 + 0x2D94
-_080F7C4C: .4byte gSpecialVar_0x8004
-_080F7C50: .4byte gStringVar4
- thumb_func_end sub_80F7BA0
-
- thumb_func_start sub_80F7C54
-sub_80F7C54: @ 80F7C54
- push {lr}
- ldr r0, _080F7C6C @ =gSpecialVar_0x8004
- ldrb r0, [r0]
- bl sub_80F7F80
- bl MenuDisplayMessageBox
- bl ScriptContext1_Stop
- pop {r0}
- bx r0
- .align 2, 0
-_080F7C6C: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80F7C54
-
- thumb_func_start sub_80F7C70
-sub_80F7C70: @ 80F7C70
- ldr r0, _080F7C7C @ =gScriptResult
- ldr r1, _080F7C80 @ =gSaveBlock1 + 0x2D94
- ldrb r1, [r1, 0x1]
- strh r1, [r0]
- bx lr
- .align 2, 0
-_080F7C7C: .4byte gScriptResult
-_080F7C80: .4byte gSaveBlock1 + 0x2D94
- thumb_func_end sub_80F7C70
-
- thumb_func_start sub_80F7C84
-sub_80F7C84: @ 80F7C84
- ldr r1, _080F7C8C @ =gSaveBlock1 + 0x2D94
- movs r0, 0x1
- strb r0, [r1, 0x1]
- bx lr
- .align 2, 0
-_080F7C8C: .4byte gSaveBlock1 + 0x2D94
- thumb_func_end sub_80F7C84
-
- thumb_func_start sub_80F7C90
-sub_80F7C90: @ 80F7C90
- push {lr}
- bl sub_80EB8EC
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _080F7CA8 @ =0x0000ffff
- cmp r1, r0
- bne _080F7CB0
- ldr r1, _080F7CAC @ =gScriptResult
- movs r0, 0
- b _080F7CBA
- .align 2, 0
-_080F7CA8: .4byte 0x0000ffff
-_080F7CAC: .4byte gScriptResult
-_080F7CB0:
- ldr r0, _080F7CC0 @ =gStringVar1
- bl sub_80EB3FC
- ldr r1, _080F7CC4 @ =gScriptResult
- movs r0, 0x1
-_080F7CBA:
- strh r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_080F7CC0: .4byte gStringVar1
-_080F7CC4: .4byte gScriptResult
- thumb_func_end sub_80F7C90
-
- thumb_func_start sub_80F7CC8
-sub_80F7CC8: @ 80F7CC8
- push {lr}
- ldr r2, _080F7CDC @ =gSaveBlock1 + 0x2D94
- ldrb r0, [r2, 0x1]
- cmp r0, 0xA
- bne _080F7CE4
- ldr r1, _080F7CE0 @ =gScriptResult
- movs r0, 0
- strh r0, [r1]
- strb r0, [r2, 0x1]
- b _080F7CEA
- .align 2, 0
-_080F7CDC: .4byte gSaveBlock1 + 0x2D94
-_080F7CE0: .4byte gScriptResult
-_080F7CE4:
- ldr r1, _080F7CF0 @ =gScriptResult
- movs r0, 0x1
- strh r0, [r1]
-_080F7CEA:
- pop {r0}
- bx r0
- .align 2, 0
-_080F7CF0: .4byte gScriptResult
- thumb_func_end sub_80F7CC8
-
- thumb_func_start sub_80F7CF4
-sub_80F7CF4: @ 80F7CF4
- push {r4-r6,lr}
- ldr r5, _080F7D50 @ =gSaveBlock1 + 0x2D94
- ldrb r0, [r5, 0x1]
- cmp r0, 0
- bne _080F7D02
- bl sub_80F7DC0
-_080F7D02:
- ldrb r0, [r5, 0x1]
- lsls r0, 1
- adds r6, r5, 0x4
- adds r0, r6
- ldrh r1, [r0]
- ldr r0, _080F7D54 @ =0x0000ffff
- cmp r1, r0
- beq _080F7D68
- bl Random
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- movs r0, 0x7
- ands r4, r0
- ldr r0, _080F7D58 @ =gStringVar4
- ldrb r1, [r5, 0x1]
- lsls r1, 1
- adds r1, r6
- ldrh r1, [r1]
- bl sub_80EB3FC
- adds r2, r0, 0
- ldr r1, _080F7D5C @ =gOtherText_Is
- bl StringCopy
- adds r2, r0, 0
- ldr r0, _080F7D60 @ =gUnknown_083E5388
- lsls r4, 2
- adds r4, r0
- ldr r1, [r4]
- adds r0, r2, 0
- bl StringCopy
- adds r2, r0, 0
- ldr r1, _080F7D64 @ =gOtherText_DontYouAgree
- bl StringCopy
- b _080F7D88
- .align 2, 0
-_080F7D50: .4byte gSaveBlock1 + 0x2D94
-_080F7D54: .4byte 0x0000ffff
-_080F7D58: .4byte gStringVar4
-_080F7D5C: .4byte gOtherText_Is
-_080F7D60: .4byte gUnknown_083E5388
-_080F7D64: .4byte gOtherText_DontYouAgree
-_080F7D68:
- ldr r0, _080F7DA0 @ =gStringVar4
- ldr r3, _080F7DA4 @ =gUnknown_083E53A8
- ldrb r1, [r5, 0x2]
- adds r2, r1, 0x1
- strb r2, [r5, 0x2]
- lsls r1, 24
- lsrs r1, 24
- adds r2, r5, 0
- adds r2, 0x18
- adds r1, r2
- ldrb r1, [r1]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl StringCopy
-_080F7D88:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 16
- cmp r0, 0
- bne _080F7DA8
- movs r0, 0xA
- b _080F7DAC
- .align 2, 0
-_080F7DA0: .4byte gStringVar4
-_080F7DA4: .4byte gUnknown_083E53A8
-_080F7DA8:
- ldrb r0, [r5, 0x1]
- adds r0, 0x1
-_080F7DAC:
- strb r0, [r5, 0x1]
- ldr r1, _080F7DBC @ =gScriptResult
- movs r0, 0x1
- strh r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080F7DBC: .4byte gScriptResult
- thumb_func_end sub_80F7CF4
-
thumb_func_start sub_80F7DC0
sub_80F7DC0: @ 80F7DC0
push {r4-r7,lr}
diff --git a/asm/name_string_util.s b/asm/name_string_util.s
deleted file mode 100644
index 3fcfd89d9..000000000
--- a/asm/name_string_util.s
+++ /dev/null
@@ -1,76 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start PadNameString
-PadNameString: @ 814A518
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- bl StripExtCtrlCodes
- adds r0, r4, 0
- bl StringLength
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r5, 0xFC
- bne _0814A556
- cmp r1, 0x5
- bhi _0814A55A
- movs r3, 0xFC
- movs r2, 0x7
-_0814A53A:
- adds r0, r4, r1
- strb r3, [r0]
- strb r2, [r0, 0x1]
- adds r0, r1, 0x2
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x5
- bls _0814A53A
- b _0814A55A
-_0814A54C:
- adds r0, r4, r1
- strb r5, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
-_0814A556:
- cmp r1, 0x5
- bls _0814A54C
-_0814A55A:
- adds r1, r4, r1
- movs r0, 0xFF
- strb r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end PadNameString
-
- thumb_func_start SanitizeNameString
-SanitizeNameString: @ 814A568
- push {r4,lr}
- adds r4, r0, 0
- bl StringLength
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5
- bhi _0814A582
- adds r0, r4, 0
- movs r1, 0x1
- bl ConvertInternationalString
- b _0814A588
-_0814A582:
- adds r0, r4, 0
- bl StripExtCtrlCodes
-_0814A588:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end SanitizeNameString
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/naming_screen.s b/asm/naming_screen.s
deleted file mode 100644
index aeec1b4bc..000000000
--- a/asm/naming_screen.s
+++ /dev/null
@@ -1,4331 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start DoNamingScreen
-DoNamingScreen: @ 80B59CC
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r4, [sp, 0x14]
- ldr r5, [sp, 0x18]
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- lsls r3, 16
- lsrs r3, 16
- str r4, [sp]
- str r5, [sp, 0x4]
- bl AddNamingScreenTask
- ldr r0, _080B59F8 @ =C2_NamingScreen
- bl SetMainCallback2
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B59F8: .4byte C2_NamingScreen
- thumb_func_end DoNamingScreen
-
- thumb_func_start C2_NamingScreen
-C2_NamingScreen: @ 80B59FC
- push {lr}
- ldr r0, _080B5A14 @ =gMain
- ldr r1, _080B5A18 @ =0x0000043c
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x7
- bhi _080B5A96
- lsls r0, 2
- ldr r1, _080B5A1C @ =_080B5A20
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080B5A14: .4byte gMain
-_080B5A18: .4byte 0x0000043c
-_080B5A1C: .4byte _080B5A20
- .align 2, 0
-_080B5A20:
- .4byte _080B5A40
- .4byte _080B5A4A
- .4byte _080B5A50
- .4byte _080B5A56
- .4byte _080B5A5C
- .4byte _080B5A62
- .4byte _080B5A68
- .4byte _080B5A84
-_080B5A40:
- bl NamingScreen_TurnOffScreen
- bl NamingScreen_Init
- b _080B5A6C
-_080B5A4A:
- bl NamingScreen_ClearVram
- b _080B5A6C
-_080B5A50:
- bl NamingScreen_ClearOam
- b _080B5A6C
-_080B5A56:
- bl NamingScreen_SetUpVideoRegs
- b _080B5A6C
-_080B5A5C:
- bl sub_80B5DC8
- b _080B5A6C
-_080B5A62:
- bl NamingScreen_ResetObjects
- b _080B5A6C
-_080B5A68:
- bl sub_80B5DFC
-_080B5A6C:
- ldr r1, _080B5A7C @ =gMain
- ldr r0, _080B5A80 @ =0x0000043c
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080B5A96
- .align 2, 0
-_080B5A7C: .4byte gMain
-_080B5A80: .4byte 0x0000043c
-_080B5A84:
- bl sub_80B5E20
- bl sub_80B5E3C
- bl sub_80B5C04
- ldr r0, _080B5A9C @ =sub_80B5AA0
- bl SetMainCallback2
-_080B5A96:
- pop {r0}
- bx r0
- .align 2, 0
-_080B5A9C: .4byte sub_80B5AA0
- thumb_func_end C2_NamingScreen
-
- thumb_func_start sub_80B5AA0
-sub_80B5AA0: @ 80B5AA0
- push {lr}
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_80B5AA0
-
- thumb_func_start sub_80B5AB8
-sub_80B5AB8: @ 80B5AB8
- push {r4,lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- ldr r1, _080B5B00 @ =REG_BG1VOFS
- ldr r4, _080B5B04 @ =0x02000000
- ldrh r0, [r4, 0x4]
- strh r0, [r1]
- adds r1, 0x4
- ldrh r0, [r4, 0x6]
- strh r0, [r1]
- ldr r2, _080B5B08 @ =REG_BG1CNT
- ldrh r1, [r2]
- ldr r3, _080B5B0C @ =0x0000fffc
- adds r0, r3, 0
- ands r0, r1
- strh r0, [r2]
- ldrh r0, [r2]
- ldrh r1, [r4, 0x8]
- orrs r0, r1
- strh r0, [r2]
- adds r2, 0x2
- ldrh r0, [r2]
- ands r3, r0
- strh r3, [r2]
- ldrh r0, [r2]
- ldrh r1, [r4, 0xA]
- orrs r0, r1
- strh r0, [r2]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5B00: .4byte REG_BG1VOFS
-_080B5B04: .4byte 0x02000000
-_080B5B08: .4byte REG_BG1CNT
-_080B5B0C: .4byte 0x0000fffc
- thumb_func_end sub_80B5AB8
-
- thumb_func_start AddNamingScreenTask
-AddNamingScreenTask: @ 80B5B10
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r8, r0
- mov r9, r1
- adds r5, r2, 0
- adds r6, r3, 0
- ldr r7, [sp, 0x1C]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 16
- lsrs r6, 16
- ldr r0, _080B5B74 @ =NamingScreenDummyTask
- movs r1, 0xFF
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- ldr r0, _080B5B78 @ =gTasks
- adds r4, r0
- mov r0, r8
- strh r0, [r4, 0x8]
- strh r5, [r4, 0xA]
- strh r6, [r4, 0xC]
- lsrs r0, r7, 16
- strh r0, [r4, 0xE]
- strh r7, [r4, 0x10]
- adds r0, r4, 0
- adds r0, 0x12
- mov r1, r9
- bl StoreWordInTwoHalfwords
- adds r4, 0x16
- adds r0, r4, 0
- ldr r1, [sp, 0x20]
- bl StoreWordInTwoHalfwords
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5B74: .4byte NamingScreenDummyTask
-_080B5B78: .4byte gTasks
- thumb_func_end AddNamingScreenTask
-
- thumb_func_start GetNamingScreenParameters
-GetNamingScreenParameters: @ 80B5B7C
- push {r4-r6,lr}
- ldr r0, _080B5BD8 @ =NamingScreenDummyTask
- bl FindTaskIdByFunc
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, _080B5BDC @ =gTasks
- adds r4, r0
- ldr r6, _080B5BE0 @ =0x02000000
- ldrh r0, [r4, 0x8]
- strb r0, [r6, 0x1]
- ldrh r0, [r4, 0xA]
- strh r0, [r6, 0x3E]
- ldrh r1, [r4, 0xC]
- adds r0, r6, 0
- adds r0, 0x40
- strh r1, [r0]
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- lsls r0, 16
- ldrh r1, [r4, 0x10]
- orrs r0, r1
- str r0, [r6, 0x44]
- adds r0, r4, 0
- adds r0, 0x12
- adds r1, r6, 0
- adds r1, 0x38
- bl LoadWordFromTwoHalfwords
- adds r4, 0x16
- adds r1, r6, 0
- adds r1, 0x48
- adds r0, r4, 0
- bl LoadWordFromTwoHalfwords
- adds r0, r5, 0
- bl DestroyTask
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5BD8: .4byte NamingScreenDummyTask
-_080B5BDC: .4byte gTasks
-_080B5BE0: .4byte 0x02000000
- thumb_func_end GetNamingScreenParameters
-
- thumb_func_start NamingScreenDummyTask
-NamingScreenDummyTask: @ 80B5BE4
- bx lr
- thumb_func_end NamingScreenDummyTask
-
- thumb_func_start NamingScreen_TurnOffScreen
-NamingScreen_TurnOffScreen: @ 80B5BE8
- push {lr}
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0
- bl SetHBlankCallback
- movs r1, 0x80
- lsls r1, 19
- movs r0, 0
- strh r0, [r1]
- pop {r0}
- bx r0
- thumb_func_end NamingScreen_TurnOffScreen
-
- thumb_func_start sub_80B5C04
-sub_80B5C04: @ 80B5C04
- push {r4,lr}
- ldr r0, _080B5C3C @ =sub_80B5AB8
- bl SetVBlankCallback
- ldr r3, _080B5C40 @ =0x04000208
- ldrh r2, [r3]
- movs r0, 0
- strh r0, [r3]
- ldr r4, _080B5C44 @ =0x04000200
- ldrh r0, [r4]
- movs r1, 0x1
- orrs r0, r1
- strh r0, [r4]
- strh r2, [r3]
- ldr r2, _080B5C48 @ =REG_DISPSTAT
- ldrh r0, [r2]
- movs r1, 0x8
- orrs r0, r1
- strh r0, [r2]
- movs r1, 0x80
- lsls r1, 19
- movs r2, 0xFA
- lsls r2, 5
- adds r0, r2, 0
- strh r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5C3C: .4byte sub_80B5AB8
-_080B5C40: .4byte 0x04000208
-_080B5C44: .4byte 0x04000200
-_080B5C48: .4byte REG_DISPSTAT
- thumb_func_end sub_80B5C04
-
- thumb_func_start NamingScreen_ClearVram
-NamingScreen_ClearVram: @ 80B5C4C
- push {r4-r7,lr}
- sub sp, 0x4
- movs r2, 0xC0
- lsls r2, 19
- movs r3, 0x80
- lsls r3, 9
- mov r4, sp
- movs r6, 0
- ldr r1, _080B5C98 @ =0x040000d4
- movs r5, 0x80
- lsls r5, 5
- ldr r7, _080B5C9C @ =0x81000800
- movs r0, 0x81
- lsls r0, 24
- mov r12, r0
-_080B5C6A:
- strh r6, [r4]
- mov r0, sp
- str r0, [r1]
- str r2, [r1, 0x4]
- str r7, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r2, r5
- subs r3, r5
- cmp r3, r5
- bhi _080B5C6A
- strh r6, [r4]
- mov r0, sp
- str r0, [r1]
- str r2, [r1, 0x4]
- lsrs r0, r3, 1
- mov r2, r12
- orrs r0, r2
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5C98: .4byte 0x040000d4
-_080B5C9C: .4byte 0x81000800
- thumb_func_end NamingScreen_ClearVram
-
- thumb_func_start NamingScreen_ClearOam
-NamingScreen_ClearOam: @ 80B5CA0
- sub sp, 0x4
- movs r2, 0xE0
- lsls r2, 19
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- ldr r0, _080B5CBC @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _080B5CC0 @ =0x81000200
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- add sp, 0x4
- bx lr
- .align 2, 0
-_080B5CBC: .4byte 0x040000d4
-_080B5CC0: .4byte 0x81000200
- thumb_func_end NamingScreen_ClearOam
-
- thumb_func_start NamingScreen_SetUpVideoRegs
-NamingScreen_SetUpVideoRegs: @ 80B5CC4
- push {r4,r5,lr}
- ldr r5, _080B5D2C @ =REG_BG0CNT
- movs r1, 0
- strh r1, [r5]
- ldr r2, _080B5D30 @ =REG_BG1CNT
- strh r1, [r2]
- ldr r3, _080B5D34 @ =REG_BG2CNT
- strh r1, [r3]
- ldr r4, _080B5D38 @ =REG_BG3CNT
- strh r1, [r4]
- ldr r0, _080B5D3C @ =REG_BG0HOFS
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- movs r1, 0xF8
- lsls r1, 5
- adds r0, r1, 0
- strh r0, [r5]
- ldr r1, _080B5D40 @ =0x00001c01
- adds r0, r1, 0
- strh r0, [r2]
- ldr r2, _080B5D44 @ =0x00001d0a
- adds r0, r2, 0
- strh r0, [r3]
- ldr r1, _080B5D48 @ =0x00001e03
- adds r0, r1, 0
- strh r0, [r4]
- ldr r1, _080B5D4C @ =REG_BLDCNT
- movs r2, 0xC8
- lsls r2, 3
- adds r0, r2, 0
- strh r0, [r1]
- adds r1, 0x2
- ldr r2, _080B5D50 @ =0x0000080c
- adds r0, r2, 0
- strh r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5D2C: .4byte REG_BG0CNT
-_080B5D30: .4byte REG_BG1CNT
-_080B5D34: .4byte REG_BG2CNT
-_080B5D38: .4byte REG_BG3CNT
-_080B5D3C: .4byte REG_BG0HOFS
-_080B5D40: .4byte 0x00001c01
-_080B5D44: .4byte 0x00001d0a
-_080B5D48: .4byte 0x00001e03
-_080B5D4C: .4byte REG_BLDCNT
-_080B5D50: .4byte 0x0000080c
- thumb_func_end NamingScreen_SetUpVideoRegs
-
- thumb_func_start NamingScreen_Init
-NamingScreen_Init: @ 80B5D54
- push {r4-r6,lr}
- bl GetNamingScreenParameters
- ldr r4, _080B5DBC @ =0x02000000
- movs r0, 0
- strb r0, [r4]
- movs r2, 0
- strh r0, [r4, 0x4]
- strh r0, [r4, 0x6]
- movs r1, 0x1
- movs r0, 0x1
- strh r0, [r4, 0x8]
- movs r0, 0x2
- strh r0, [r4, 0xA]
- strb r2, [r4, 0xC]
- strb r1, [r4, 0xD]
- ldr r1, _080B5DC0 @ =gUnknown_083CE398
- ldrb r0, [r4, 0x1]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- str r0, [r4, 0x34]
- ldrb r1, [r0, 0x4]
- strb r1, [r4, 0xE]
- ldrb r1, [r0, 0x1]
- lsrs r1, 1
- movs r0, 0xE
- subs r0, r1
- strh r0, [r4, 0x2]
- ldr r6, _080B5DC4 @ =gKeyRepeatStartDelay
- ldrh r0, [r6]
- strh r0, [r4, 0x3C]
- adds r5, r4, 0
- adds r5, 0x11
- adds r0, r5, 0
- movs r1, 0xFF
- movs r2, 0x10
- bl memset
- ldr r0, [r4, 0x34]
- ldrb r0, [r0]
- cmp r0, 0
- beq _080B5DB2
- ldr r1, [r4, 0x38]
- adds r0, r5, 0
- bl StringCopy
-_080B5DB2:
- movs r0, 0x10
- strh r0, [r6]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5DBC: .4byte 0x02000000
-_080B5DC0: .4byte gUnknown_083CE398
-_080B5DC4: .4byte gKeyRepeatStartDelay
- thumb_func_end NamingScreen_Init
-
- thumb_func_start sub_80B5DC8
-sub_80B5DC8: @ 80B5DC8
- push {r4,lr}
- ldr r4, _080B5DE0 @ =gWindowConfig_81E6E88
- adds r0, r4, 0
- bl SetUpWindowConfig
- adds r0, r4, 0
- bl InitMenuWindow
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5DE0: .4byte gWindowConfig_81E6E88
- thumb_func_end sub_80B5DC8
-
- thumb_func_start NamingScreen_ResetObjects
-NamingScreen_ResetObjects: @ 80B5DE4
- push {lr}
- bl ResetPaletteFade
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- bl ResetTasks
- pop {r0}
- bx r0
- thumb_func_end NamingScreen_ResetObjects
-
- thumb_func_start sub_80B5DFC
-sub_80B5DFC: @ 80B5DFC
- push {lr}
- bl sub_80B7558
- bl sub_80B753C
- bl sub_80B7680
- bl sub_80B75C4
- bl sub_80B7794
- bl sub_80B78A8
- bl sub_80B7960
- pop {r0}
- bx r0
- thumb_func_end sub_80B5DFC
-
- thumb_func_start sub_80B5E20
-sub_80B5E20: @ 80B5E20
- push {lr}
- bl sub_80B6774
- bl sub_80B6A80
- bl sub_80B6CA8
- bl sub_80B6D04
- bl sub_80B6E44
- pop {r0}
- bx r0
- thumb_func_end sub_80B5E20
-
- thumb_func_start sub_80B5E3C
-sub_80B5E3C: @ 80B5E3C
- push {lr}
- bl sub_80B61D8
- bl sub_80B6438
- bl sub_80B5E50
- pop {r0}
- bx r0
- thumb_func_end sub_80B5E3C
-
- thumb_func_start sub_80B5E50
-sub_80B5E50: @ 80B5E50
- push {r4,lr}
- ldr r4, _080B5E6C @ =sub_80B5E70
- adds r0, r4, 0
- movs r1, 0x2
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- bl _call_via_r4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5E6C: .4byte sub_80B5E70
- thumb_func_end sub_80B5E50
-
- thumb_func_start sub_80B5E70
-sub_80B5E70: @ 80B5E70
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r7, _080B5E9C @ =gUnknown_083CE218
- lsls r1, r0, 2
- adds r1, r0
- lsls r4, r1, 3
- ldr r6, _080B5EA0 @ =0x02000000
- ldr r5, _080B5EA4 @ =gTasks
-_080B5E82:
- ldrb r0, [r6]
- lsls r0, 2
- adds r0, r7
- ldr r1, [r0]
- adds r0, r4, r5
- bl _call_via_r1
- lsls r0, 24
- cmp r0, 0
- bne _080B5E82
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B5E9C: .4byte gUnknown_083CE218
-_080B5EA0: .4byte 0x02000000
-_080B5EA4: .4byte gTasks
- thumb_func_end sub_80B5E70
-
- thumb_func_start sub_80B5EA8
-sub_80B5EA8: @ 80B5EA8
- push {lr}
- sub sp, 0x4
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, _080B5ECC @ =0x02000000
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- movs r0, 0
- add sp, 0x4
- pop {r1}
- bx r1
- .align 2, 0
-_080B5ECC: .4byte 0x02000000
- thumb_func_end sub_80B5EA8
-
- thumb_func_start sub_80B5ED0
-sub_80B5ED0: @ 80B5ED0
- push {lr}
- ldr r0, _080B5EF8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080B5EF2
- movs r0, 0x1
- bl sub_80B6210
- movs r0, 0x1
- bl sub_80B68D8
- ldr r1, _080B5EFC @ =0x02000000
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_080B5EF2:
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080B5EF8: .4byte gPaletteFade
-_080B5EFC: .4byte 0x02000000
- thumb_func_end sub_80B5ED0
-
- thumb_func_start sub_80B5F00
-sub_80B5F00: @ 80B5F00
- push {lr}
- bl sub_80B60B8
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_80B5F00
-
- thumb_func_start sub_80B5F10
-sub_80B5F10: @ 80B5F10
- push {lr}
- bl sub_80B6938
- lsls r0, 24
- cmp r0, 0
- beq _080B5F2C
- movs r0, 0x1
- bl sub_80B6210
- bl sub_80B6878
- ldr r1, _080B5F34 @ =0x02000000
- movs r0, 0x2
- strb r0, [r1]
-_080B5F2C:
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080B5F34: .4byte 0x02000000
- thumb_func_end sub_80B5F10
-
- thumb_func_start sub_80B5F38
-sub_80B5F38: @ 80B5F38
- push {lr}
- movs r0, 0
- bl sub_80B6210
- bl sub_80B6B14
- bl sub_80B65F0
- movs r0, 0x1
- bl sub_80B6888
- movs r0, 0
- movs r1, 0
- movs r2, 0x1
- bl sub_80B6460
- movs r0, 0x6
- bl PlaySE
- ldr r1, _080B5F6C @ =0x02000000
- movs r0, 0x5
- strb r0, [r1]
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080B5F6C: .4byte 0x02000000
- thumb_func_end sub_80B5F38
-
- thumb_func_start sub_80B5F70
-sub_80B5F70: @ 80B5F70
- push {r4,r5,lr}
- sub sp, 0x4
- bl sub_80B6610
- lsls r0, 24
- cmp r0, 0
- beq _080B5FDC
- ldr r4, _080B5FE8 @ =0x02000000
- movs r0, 0x2
- strb r0, [r4]
- ldrb r0, [r4, 0xE]
- adds r0, 0x1
- strb r0, [r4, 0xE]
- ldrb r0, [r4, 0xE]
- movs r1, 0x3
- bl __umodsi3
- strb r0, [r4, 0xE]
- bl sub_80B7614
- bl sub_80B77F8
- movs r0, 0x1
- bl sub_80B6210
- mov r5, sp
- adds r5, 0x2
- mov r0, sp
- adds r1, r5, 0
- bl sub_80B6858
- ldrb r0, [r4, 0xE]
- cmp r0, 0x2
- bne _080B5FC8
- mov r0, sp
- ldrh r0, [r0]
- subs r0, 0x6
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _080B5FC8
- mov r1, sp
- movs r0, 0x5
- strh r0, [r1]
-_080B5FC8:
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r5, r2]
- bl sub_80B680C
- movs r0, 0
- bl sub_80B6888
-_080B5FDC:
- movs r0, 0
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_080B5FE8: .4byte 0x02000000
- thumb_func_end sub_80B5F70
-
- thumb_func_start pokemon_store
-pokemon_store: @ 80B5FEC
- push {r4,lr}
- bl sub_80B74B0
- movs r0, 0
- bl sub_80B6210
- movs r0, 0
- bl sub_80B68D8
- movs r0, 0x3
- movs r1, 0
- movs r2, 0x1
- bl sub_80B6460
- ldr r0, _080B6030 @ =gKeyRepeatStartDelay
- ldr r4, _080B6034 @ =0x02000000
- ldrh r1, [r4, 0x3C]
- strh r1, [r0]
- ldrb r0, [r4, 0x1]
- cmp r0, 0x2
- bne _080B6038
- bl CalculatePlayerPartyCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- bls _080B6038
- bl sub_80B74FC
- movs r0, 0x7
- strb r0, [r4]
- movs r0, 0
- b _080B6040
- .align 2, 0
-_080B6030: .4byte gKeyRepeatStartDelay
-_080B6034: .4byte 0x02000000
-_080B6038:
- ldr r1, _080B6048 @ =0x02000000
- movs r0, 0x8
- strb r0, [r1]
- movs r0, 0x1
-_080B6040:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080B6048: .4byte 0x02000000
- thumb_func_end pokemon_store
-
- thumb_func_start sub_80B604C
-sub_80B604C: @ 80B604C
- push {lr}
- bl MenuUpdateWindowText
- lsls r0, 24
- cmp r0, 0
- beq _080B6060
- ldr r1, _080B6068 @ =0x02000000
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_080B6060:
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080B6068: .4byte 0x02000000
- thumb_func_end sub_80B604C
-
- thumb_func_start sub_80B606C
-sub_80B606C: @ 80B606C
- push {lr}
- sub sp, 0x4
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _080B6090 @ =0x02000000
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- movs r0, 0
- add sp, 0x4
- pop {r1}
- bx r1
- .align 2, 0
-_080B6090: .4byte 0x02000000
- thumb_func_end sub_80B606C
-
- thumb_func_start sub_80B6094
-sub_80B6094: @ 80B6094
- push {lr}
- ldr r0, _080B60B0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080B60AA
- ldr r0, _080B60B4 @ =0x02000000
- ldr r0, [r0, 0x48]
- bl SetMainCallback2
-_080B60AA:
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080B60B0: .4byte gPaletteFade
-_080B60B4: .4byte 0x02000000
- thumb_func_end sub_80B6094
-
- thumb_func_start sub_80B60B8
-sub_80B60B8: @ 80B60B8
- push {r4,r5,lr}
- bl sub_80B61EC
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl sub_80B6958
- lsls r0, 24
- lsrs r0, 24
- cmp r4, 0x8
- bne _080B60D6
- bl sub_80B61C8
- b _080B60F2
-_080B60D6:
- cmp r4, 0x6
- bne _080B60E0
- bl sub_80B6FBC
- b _080B6100
-_080B60E0:
- cmp r5, 0x7
- beq _080B60FC
- ldr r1, _080B60F8 @ =gUnknown_083CE240
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r5, 0
- bl _call_via_r1
-_080B60F2:
- lsls r0, 24
- lsrs r0, 24
- b _080B6102
- .align 2, 0
-_080B60F8: .4byte gUnknown_083CE240
-_080B60FC:
- bl sub_80B7090
-_080B6100:
- movs r0, 0
-_080B6102:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80B60B8
-
- thumb_func_start sub_80B6108
-sub_80B6108: @ 80B6108
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl sub_80B6460
- cmp r4, 0x5
- bne _080B613C
- bl sub_80B7004
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80B6914
- cmp r4, 0
- beq _080B613C
- movs r0, 0
- bl sub_80B6210
- ldr r1, _080B6144 @ =0x02000000
- movs r0, 0x3
- strb r0, [r1]
-_080B613C:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080B6144: .4byte 0x02000000
- thumb_func_end sub_80B6108
-
- thumb_func_start sub_80B6148
-sub_80B6148: @ 80B6148
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0x1
- movs r2, 0
- bl sub_80B6460
- cmp r4, 0x5
- beq _080B6162
- movs r0, 0
- b _080B616A
-_080B6162:
- bl sub_80B61C8
- lsls r0, 24
- lsrs r0, 24
-_080B616A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80B6148
-
- thumb_func_start sub_80B6170
-sub_80B6170: @ 80B6170
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0
- bl sub_80B6460
- cmp r4, 0x5
- bne _080B618A
- bl sub_80B6FBC
-_080B618A:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80B6170
-
- thumb_func_start sub_80B6194
-sub_80B6194: @ 80B6194
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0
- bl sub_80B6460
- cmp r4, 0x5
- beq _080B61AE
- movs r0, 0
- b _080B61BC
-_080B61AE:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080B61C4 @ =0x02000000
- movs r0, 0x6
- strb r0, [r1]
- movs r0, 0x1
-_080B61BC:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080B61C4: .4byte 0x02000000
- thumb_func_end sub_80B6194
-
- thumb_func_start sub_80B61C8
-sub_80B61C8: @ 80B61C8
- ldr r1, _080B61D4 @ =0x02000000
- movs r0, 0x4
- strb r0, [r1]
- movs r0, 0x1
- bx lr
- .align 2, 0
-_080B61D4: .4byte 0x02000000
- thumb_func_end sub_80B61C8
-
- thumb_func_start sub_80B61D8
-sub_80B61D8: @ 80B61D8
- push {lr}
- ldr r0, _080B61E8 @ =sub_80B623C
- movs r1, 0x1
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080B61E8: .4byte sub_80B623C
- thumb_func_end sub_80B61D8
-
- thumb_func_start sub_80B61EC
-sub_80B61EC: @ 80B61EC
- push {lr}
- ldr r0, _080B6208 @ =sub_80B623C
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B620C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0xA]
- pop {r1}
- bx r1
- .align 2, 0
-_080B6208: .4byte sub_80B623C
-_080B620C: .4byte gTasks
- thumb_func_end sub_80B61EC
-
- thumb_func_start sub_80B6210
-sub_80B6210: @ 80B6210
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _080B6234 @ =sub_80B623C
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B6238 @ =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
-_080B6234: .4byte sub_80B623C
-_080B6238: .4byte gTasks
- thumb_func_end sub_80B6210
-
- thumb_func_start sub_80B623C
-sub_80B623C: @ 80B623C
- push {lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _080B6264 @ =gUnknown_083CE250
- ldr r2, _080B6268 @ =gTasks
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- lsls r1, 2
- adds r1, r3
- ldr r1, [r1]
- bl _call_via_r1
- pop {r0}
- bx r0
- .align 2, 0
-_080B6264: .4byte gUnknown_083CE250
-_080B6268: .4byte gTasks
- thumb_func_end sub_80B623C
-
- thumb_func_start sub_80B626C
-sub_80B626C: @ 80B626C
- movs r1, 0
- strh r1, [r0, 0xA]
- bx lr
- thumb_func_end sub_80B626C
-
- thumb_func_start sub_80B6274
-sub_80B6274: @ 80B6274
- push {lr}
- adds r2, r0, 0
- movs r0, 0
- strh r0, [r2, 0xA]
- ldr r0, _080B6290 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080B6294
- movs r0, 0x5
- strh r0, [r2, 0xA]
- b _080B62C8
- .align 2, 0
-_080B6290: .4byte gMain
-_080B6294:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080B62A2
- movs r0, 0x6
- strh r0, [r2, 0xA]
- b _080B62C8
-_080B62A2:
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080B62B0
- movs r0, 0x8
- strh r0, [r2, 0xA]
- b _080B62C8
-_080B62B0:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080B62C2
- movs r0, 0x9
- strh r0, [r2, 0xA]
- bl sub_80B6878
- b _080B62C8
-_080B62C2:
- adds r0, r2, 0
- bl sub_80B62CC
-_080B62C8:
- pop {r0}
- bx r0
- thumb_func_end sub_80B6274
-
- thumb_func_start sub_80B62CC
-sub_80B62CC: @ 80B62CC
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl sub_80B6858
- ldr r0, _080B6374 @ =gMain
- ldrh r2, [r0, 0x30]
- movs r0, 0x40
- ands r0, r2
- lsls r0, 16
- lsrs r0, 16
- negs r0, r0
- lsrs r1, r0, 31
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _080B62F8
- movs r1, 0x2
-_080B62F8:
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- beq _080B6302
- movs r1, 0x3
-_080B6302:
- movs r0, 0x10
- ands r0, r2
- cmp r0, 0
- beq _080B630C
- movs r1, 0x4
-_080B630C:
- mov r0, sp
- ldrh r6, [r0]
- mov r2, sp
- ldr r0, _080B6378 @ =gUnknown_083CE258
- lsls r1, 1
- adds r0, r1, r0
- ldrh r3, [r0]
- adds r0, r6, r3
- strh r0, [r2]
- ldr r0, _080B637C @ =gUnknown_083CE262
- adds r1, r0
- ldrh r0, [r1]
- ldrh r1, [r4]
- adds r0, r1
- strh r0, [r4]
- mov r0, sp
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, 0
- bge _080B633A
- mov r1, sp
- movs r0, 0x8
- strh r0, [r1]
-_080B633A:
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0x8
- ble _080B634A
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
-_080B634A:
- lsls r0, r3, 16
- asrs r1, r0, 16
- cmp r1, 0
- beq _080B63CA
- ldr r0, _080B6380 @ =0x02000000
- ldrb r0, [r0, 0xE]
- cmp r0, 0x2
- bne _080B638A
- mov r0, sp
- ldrh r0, [r0]
- subs r0, 0x6
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _080B638A
- cmp r1, 0
- ble _080B6384
- mov r1, sp
- movs r0, 0x8
- b _080B6388
- .align 2, 0
-_080B6374: .4byte gMain
-_080B6378: .4byte gUnknown_083CE258
-_080B637C: .4byte gUnknown_083CE262
-_080B6380: .4byte 0x02000000
-_080B6384:
- mov r1, sp
- movs r0, 0x5
-_080B6388:
- strh r0, [r1]
-_080B638A:
- mov r0, sp
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, 0x8
- bne _080B63AC
- ldrh r0, [r4]
- strh r0, [r5, 0xC]
- ldr r1, _080B63A8 @ =gUnknown_083CE26C
- movs r2, 0
- ldrsh r0, [r4, r2]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- b _080B63C8
- .align 2, 0
-_080B63A8: .4byte gUnknown_083CE26C
-_080B63AC:
- cmp r6, 0x8
- bne _080B63CA
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bne _080B63BC
- ldrh r0, [r5, 0xC]
- b _080B63C8
-_080B63BC:
- ldr r0, _080B63FC @ =gUnknown_083CE274
- movs r2, 0
- ldrsh r1, [r4, r2]
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
-_080B63C8:
- strh r0, [r4]
-_080B63CA:
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0x8
- bne _080B6408
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bge _080B63E0
- movs r0, 0x2
- strh r0, [r4]
-_080B63E0:
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x2
- ble _080B63EC
- movs r0, 0
- strh r0, [r4]
-_080B63EC:
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _080B6400
- movs r0, 0x1
- strh r0, [r5, 0xC]
- b _080B6420
- .align 2, 0
-_080B63FC: .4byte gUnknown_083CE274
-_080B6400:
- cmp r0, 0x2
- bne _080B6420
- strh r0, [r5, 0xC]
- b _080B6420
-_080B6408:
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bge _080B6414
- movs r0, 0x3
- strh r0, [r4]
-_080B6414:
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0x3
- ble _080B6420
- movs r0, 0
- strh r0, [r4]
-_080B6420:
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl sub_80B680C
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80B62CC
-
- thumb_func_start sub_80B6438
-sub_80B6438: @ 80B6438
- push {lr}
- ldr r0, _080B6458 @ =sub_80B64D4
- movs r1, 0x3
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B645C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0x3
- strh r0, [r1, 0x8]
- pop {r0}
- bx r0
- .align 2, 0
-_080B6458: .4byte sub_80B64D4
-_080B645C: .4byte gTasks
- thumb_func_end sub_80B6438
-
- thumb_func_start sub_80B6460
-sub_80B6460: @ 80B6460
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- ldr r0, _080B6498 @ =sub_80B64D4
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080B649C @ =gTasks
- adds r4, r1, r0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r5, r0
- bne _080B64A0
- cmp r6, 0
- bne _080B64A0
- strh r7, [r4, 0xA]
- movs r0, 0x1
- strh r0, [r4, 0xC]
- b _080B64CC
- .align 2, 0
-_080B6498: .4byte sub_80B64D4
-_080B649C: .4byte gTasks
-_080B64A0:
- cmp r5, 0x3
- bne _080B64B0
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _080B64B0
- cmp r6, 0
- beq _080B64CC
-_080B64B0:
- ldrh r1, [r4, 0x8]
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- cmp r0, 0x3
- beq _080B64C2
- lsls r0, r1, 24
- lsrs r0, 24
- bl sub_80B65AC
-_080B64C2:
- adds r0, r4, 0
- adds r1, r5, 0
- adds r2, r7, 0
- bl sub_80B65D4
-_080B64CC:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80B6460
-
- thumb_func_start sub_80B64D4
-sub_80B64D4: @ 80B64D4
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080B6548 @ =gTasks
- adds r4, r1, r0
- ldrh r1, [r4, 0x8]
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- cmp r0, 0x3
- beq _080B6540
- movs r2, 0xC
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _080B6540
- lsls r0, r1, 24
- lsrs r0, 24
- bl sub_80B654C
- lsls r0, 16
- lsrs r0, 16
- ldrb r3, [r4, 0xE]
- adds r1, r3, 0
- adds r2, r3, 0
- bl MultiplyInvertedPaletteRGBComponents
- ldrh r1, [r4, 0x12]
- movs r2, 0x12
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _080B6520
- subs r0, r1, 0x1
- strh r0, [r4, 0x12]
- lsls r0, 16
- cmp r0, 0
- bne _080B6540
-_080B6520:
- movs r0, 0x2
- strh r0, [r4, 0x12]
- ldrh r1, [r4, 0x10]
- ldrh r2, [r4, 0xE]
- adds r0, r1, r2
- strh r0, [r4, 0xE]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x10
- beq _080B653C
- cmp r0, 0
- bne _080B6540
- ldrh r0, [r4, 0xA]
- strh r0, [r4, 0xC]
-_080B653C:
- negs r0, r1
- strh r0, [r4, 0x10]
-_080B6540:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6548: .4byte gTasks
- thumb_func_end sub_80B64D4
-
- thumb_func_start sub_80B654C
-sub_80B654C: @ 80B654C
- push {r4-r6,lr}
- sub sp, 0x10
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x4
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 20
- movs r1, 0x87
- lsls r1, 1
- adds r5, r1, 0
- adds r0, r5
- add r6, sp, 0x8
- strh r0, [r6]
- movs r0, 0x6
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 20
- movs r1, 0x86
- lsls r1, 1
- adds r0, r1
- mov r1, sp
- adds r1, 0xA
- strh r0, [r1]
- movs r0, 0x6
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 20
- adds r0, r5
- add r1, sp, 0xC
- strh r0, [r1]
- mov r0, sp
- adds r1, r6, 0
- movs r2, 0x6
- bl memcpy
- lsls r4, 1
- mov r1, sp
- adds r0, r1, r4
- ldrh r0, [r0]
- add sp, 0x10
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80B654C
-
- thumb_func_start sub_80B65AC
-sub_80B65AC: @ 80B65AC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl sub_80B654C
- lsls r0, 16
- ldr r2, _080B65CC @ =gPlttBufferFaded
- lsrs r0, 15
- adds r2, r0, r2
- ldr r1, _080B65D0 @ =gPlttBufferUnfaded
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r2]
- pop {r0}
- bx r0
- .align 2, 0
-_080B65CC: .4byte gPlttBufferFaded
-_080B65D0: .4byte gPlttBufferUnfaded
- thumb_func_end sub_80B65AC
-
- thumb_func_start sub_80B65D4
-sub_80B65D4: @ 80B65D4
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- movs r3, 0
- strh r1, [r0, 0x8]
- strh r2, [r0, 0xA]
- movs r2, 0x1
- strh r2, [r0, 0xC]
- movs r1, 0xF
- strh r1, [r0, 0xE]
- strh r2, [r0, 0x10]
- strh r3, [r0, 0x12]
- bx lr
- thumb_func_end sub_80B65D4
-
- thumb_func_start sub_80B65F0
-sub_80B65F0: @ 80B65F0
- push {r4,lr}
- ldr r4, _080B660C @ =sub_80B6630
- adds r0, r4, 0
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- bl _call_via_r4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B660C: .4byte sub_80B6630
- thumb_func_end sub_80B65F0
-
- thumb_func_start sub_80B6610
-sub_80B6610: @ 80B6610
- push {lr}
- ldr r0, _080B6624 @ =sub_80B6630
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _080B6628
- movs r0, 0
- b _080B662A
- .align 2, 0
-_080B6624: .4byte sub_80B6630
-_080B6628:
- movs r0, 0x1
-_080B662A:
- pop {r1}
- bx r1
- thumb_func_end sub_80B6610
-
- thumb_func_start sub_80B6630
-sub_80B6630: @ 80B6630
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r5, _080B6660 @ =gUnknown_083CE27C
- ldr r2, _080B6664 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
-_080B6642:
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r5
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- lsls r0, 24
- cmp r0, 0
- bne _080B6642
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6660: .4byte gUnknown_083CE27C
-_080B6664: .4byte gTasks
- thumb_func_end sub_80B6630
-
- thumb_func_start sub_80B6668
-sub_80B6668: @ 80B6668
- ldr r2, _080B667C @ =0x02000000
- movs r1, 0
- strh r1, [r2, 0x4]
- strh r1, [r2, 0x6]
- ldrh r1, [r0, 0x8]
- adds r1, 0x1
- strh r1, [r0, 0x8]
- movs r0, 0
- bx lr
- .align 2, 0
-_080B667C: .4byte 0x02000000
- thumb_func_end sub_80B6668
-
- thumb_func_start sub_80B6680
-sub_80B6680: @ 80B6680
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r0, _080B66E4 @ =gUnknown_083CE28C
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- ldrh r0, [r4, 0xA]
- adds r0, 0x4
- strh r0, [r4, 0xA]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- movs r1, 0x28
- bl Sin
- ldr r5, _080B66E8 @ =0x02000000
- ldrb r1, [r5, 0xC]
- lsls r1, 2
- add r1, sp
- ldr r1, [r1]
- strh r0, [r1]
- ldrh r0, [r4, 0xA]
- adds r0, 0x80
- movs r1, 0xFF
- ands r0, r1
- movs r1, 0x28
- bl Sin
- ldrb r1, [r5, 0xD]
- lsls r1, 2
- add r1, sp
- ldr r1, [r1]
- strh r0, [r1]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0x3F
- ble _080B66DA
- ldrb r1, [r5, 0x8]
- ldrh r0, [r5, 0xA]
- strh r0, [r5, 0x8]
- strh r1, [r5, 0xA]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080B66DA:
- movs r0, 0
- add sp, 0x8
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_080B66E4: .4byte gUnknown_083CE28C
-_080B66E8: .4byte 0x02000000
- thumb_func_end sub_80B6680
-
- thumb_func_start sub_80B66EC
-sub_80B66EC: @ 80B66EC
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r0, _080B6750 @ =gUnknown_083CE28C
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- ldrh r0, [r4, 0xA]
- adds r0, 0x4
- strh r0, [r4, 0xA]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- movs r1, 0x28
- bl Sin
- ldr r5, _080B6754 @ =0x02000000
- ldrb r1, [r5, 0xC]
- lsls r1, 2
- add r1, sp
- ldr r1, [r1]
- strh r0, [r1]
- ldrh r0, [r4, 0xA]
- adds r0, 0x80
- movs r1, 0xFF
- ands r0, r1
- movs r1, 0x28
- bl Sin
- ldrb r1, [r5, 0xD]
- lsls r1, 2
- add r1, sp
- ldr r1, [r1]
- strh r0, [r1]
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0x7F
- ble _080B6746
- ldrb r1, [r5, 0xC]
- ldrb r0, [r5, 0xD]
- strb r0, [r5, 0xC]
- strb r1, [r5, 0xD]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080B6746:
- movs r0, 0
- add sp, 0x8
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_080B6750: .4byte gUnknown_083CE28C
-_080B6754: .4byte 0x02000000
- thumb_func_end sub_80B66EC
-
- thumb_func_start sub_80B6758
-sub_80B6758: @ 80B6758
- push {lr}
- ldr r0, _080B6770 @ =sub_80B6630
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080B6770: .4byte sub_80B6630
- thumb_func_end sub_80B6758
-
- thumb_func_start sub_80B6774
-sub_80B6774: @ 80B6774
- push {r4,r5,lr}
- ldr r0, _080B67E0 @ =gSpriteTemplate_83CE640
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl CreateSprite
- ldr r4, _080B67E4 @ =0x02000000
- strb r0, [r4, 0xF]
- ldr r5, _080B67E8 @ =gSprites
- ldrb r0, [r4, 0xF]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldrb r3, [r1, 0x5]
- movs r2, 0xD
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- movs r3, 0x4
- orrs r0, r3
- strb r0, [r1, 0x5]
- ldrb r1, [r4, 0xF]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r0, 0x1]
- ands r2, r1
- orrs r2, r3
- strb r2, [r0, 0x1]
- ldrb r1, [r4, 0xF]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x1
- strh r1, [r0, 0x3A]
- ldrb r1, [r4, 0xF]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x2
- strh r1, [r0, 0x3A]
- movs r0, 0
- movs r1, 0
- bl sub_80B680C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B67E0: .4byte gSpriteTemplate_83CE640
-_080B67E4: .4byte 0x02000000
-_080B67E8: .4byte gSprites
- thumb_func_end sub_80B6774
-
- thumb_func_start sub_80B67EC
-sub_80B67EC: @ 80B67EC
- ldr r3, _080B6804 @ =gUnknown_083CE294
- lsls r0, 16
- asrs r0, 16
- ldr r1, _080B6808 @ =0x02000000
- ldrb r2, [r1, 0xE]
- lsls r1, r2, 3
- adds r1, r2
- adds r0, r1
- adds r0, r3
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_080B6804: .4byte gUnknown_083CE294
-_080B6808: .4byte 0x02000000
- thumb_func_end sub_80B67EC
-
- thumb_func_start sub_80B680C
-sub_80B680C: @ 80B680C
- push {r4-r6,lr}
- adds r5, r1, 0
- lsls r0, 16
- lsls r5, 16
- lsrs r5, 16
- ldr r1, _080B6850 @ =0x02000000
- ldrb r1, [r1, 0xF]
- lsls r4, r1, 4
- adds r4, r1
- lsls r4, 2
- ldr r1, _080B6854 @ =gSprites
- adds r4, r1
- lsrs r6, r0, 16
- asrs r0, 16
- bl sub_80B67EC
- lsls r0, 24
- lsrs r0, 21
- adds r0, 0x1B
- strh r0, [r4, 0x20]
- lsls r0, r5, 16
- asrs r0, 12
- adds r0, 0x50
- strh r0, [r4, 0x22]
- ldrh r0, [r4, 0x2E]
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x30]
- strh r0, [r4, 0x34]
- strh r6, [r4, 0x2E]
- strh r5, [r4, 0x30]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6850: .4byte 0x02000000
-_080B6854: .4byte gSprites
- thumb_func_end sub_80B680C
-
- thumb_func_start sub_80B6858
-sub_80B6858: @ 80B6858
- ldr r2, _080B6870 @ =0x02000000
- ldrb r3, [r2, 0xF]
- lsls r2, r3, 4
- adds r2, r3
- lsls r2, 2
- ldr r3, _080B6874 @ =gSprites
- adds r2, r3
- ldrh r3, [r2, 0x2E]
- strh r3, [r0]
- ldrh r0, [r2, 0x30]
- strh r0, [r1]
- bx lr
- .align 2, 0
-_080B6870: .4byte 0x02000000
-_080B6874: .4byte gSprites
- thumb_func_end sub_80B6858
-
- thumb_func_start sub_80B6878
-sub_80B6878: @ 80B6878
- push {lr}
- movs r0, 0x8
- movs r1, 0x2
- bl sub_80B680C
- pop {r0}
- bx r0
- thumb_func_end sub_80B6878
-
- thumb_func_start sub_80B6888
-sub_80B6888: @ 80B6888
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r5, _080B68CC @ =gSprites
- ldr r4, _080B68D0 @ =0x02000000
- ldrb r1, [r4, 0xF]
- lsls r2, r1, 4
- adds r2, r1
- lsls r2, 2
- adds r2, r5
- ldrh r3, [r2, 0x36]
- ldr r1, _080B68D4 @ =0xffffff00
- ands r1, r3
- strh r1, [r2, 0x36]
- ldrb r2, [r4, 0xF]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r5
- ldrh r2, [r1, 0x36]
- orrs r0, r2
- strh r0, [r1, 0x36]
- ldrb r1, [r4, 0xF]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0
- bl StartSpriteAnim
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B68CC: .4byte gSprites
-_080B68D0: .4byte 0x02000000
-_080B68D4: .4byte 0xffffff00
- thumb_func_end sub_80B6888
-
- thumb_func_start sub_80B68D8
-sub_80B68D8: @ 80B68D8
- push {r4,r5,lr}
- lsls r0, 24
- ldr r5, _080B690C @ =gSprites
- ldr r4, _080B6910 @ =0x02000000
- ldrb r1, [r4, 0xF]
- lsls r2, r1, 4
- adds r2, r1
- lsls r2, 2
- adds r2, r5
- ldrh r3, [r2, 0x36]
- movs r1, 0xFF
- ands r1, r3
- strh r1, [r2, 0x36]
- ldrb r2, [r4, 0xF]
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r5
- lsrs r0, 16
- ldrh r2, [r1, 0x36]
- orrs r0, r2
- strh r0, [r1, 0x36]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B690C: .4byte gSprites
-_080B6910: .4byte 0x02000000
- thumb_func_end sub_80B68D8
-
- thumb_func_start sub_80B6914
-sub_80B6914: @ 80B6914
- push {lr}
- ldr r0, _080B6930 @ =0x02000000
- ldrb r1, [r0, 0xF]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080B6934 @ =gSprites
- adds r0, r1
- movs r1, 0x1
- bl StartSpriteAnim
- pop {r0}
- bx r0
- .align 2, 0
-_080B6930: .4byte 0x02000000
-_080B6934: .4byte gSprites
- thumb_func_end sub_80B6914
-
- thumb_func_start sub_80B6938
-sub_80B6938: @ 80B6938
- ldr r2, _080B6950 @ =gSprites
- ldr r0, _080B6954 @ =0x02000000
- ldrb r1, [r0, 0xF]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 27
- lsrs r0, 31
- bx lr
- .align 2, 0
-_080B6950: .4byte gSprites
-_080B6954: .4byte 0x02000000
- thumb_func_end sub_80B6938
-
- thumb_func_start sub_80B6958
-sub_80B6958: @ 80B6958
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r1, _080B6988 @ =gUnknown_083CE2AF
- mov r0, sp
- movs r2, 0x3
- bl memcpy
- add r4, sp, 0x4
- mov r5, sp
- adds r5, 0x6
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80B6858
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x7
- ble _080B698C
- movs r1, 0
- ldrsh r0, [r5, r1]
- add r0, sp
- ldrb r0, [r0]
- b _080B698E
- .align 2, 0
-_080B6988: .4byte gUnknown_083CE2AF
-_080B698C:
- movs r0, 0
-_080B698E:
- add sp, 0x8
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80B6958
-
- thumb_func_start sub_80B6998
-sub_80B6998: @ 80B6998
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080B69B0
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAnim
-_080B69B0:
- ldrh r1, [r4, 0x36]
- movs r0, 0xFF
- ands r0, r1
- adds r3, r4, 0
- adds r3, 0x3E
- movs r1, 0x1
- ands r0, r1
- lsls r0, 2
- ldrb r1, [r3]
- movs r2, 0x5
- negs r2, r2
- ands r2, r1
- orrs r2, r0
- strb r2, [r3]
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0x8
- bne _080B69DA
- movs r0, 0x4
- orrs r2, r0
- strb r2, [r3]
-_080B69DA:
- ldrb r1, [r3]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _080B6A0A
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- movs r1, 0xFF
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _080B6A0A
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bne _080B6A0A
- movs r0, 0x30
- ldrsh r1, [r4, r0]
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- cmp r1, r0
- beq _080B6A16
-_080B6A0A:
- movs r0, 0
- strh r0, [r4, 0x38]
- movs r0, 0x1
- strh r0, [r4, 0x3A]
- movs r0, 0x2
- strh r0, [r4, 0x3C]
-_080B6A16:
- ldrh r0, [r4, 0x3C]
- subs r0, 0x1
- strh r0, [r4, 0x3C]
- lsls r0, 16
- cmp r0, 0
- bne _080B6A3E
- ldrh r1, [r4, 0x3A]
- ldrh r2, [r4, 0x38]
- adds r0, r1, r2
- strh r0, [r4, 0x38]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x10
- beq _080B6A36
- cmp r0, 0
- bne _080B6A3A
-_080B6A36:
- negs r0, r1
- strh r0, [r4, 0x3A]
-_080B6A3A:
- movs r0, 0x2
- strh r0, [r4, 0x3C]
-_080B6A3E:
- movs r1, 0x36
- ldrsh r0, [r4, r1]
- movs r1, 0xFF
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _080B6A74
- ldrh r4, [r4, 0x38]
- lsls r5, r4, 24
- lsrs r5, 24
- lsls r4, 16
- asrs r4, 17
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 4
- ldr r2, _080B6A7C @ =0x01010000
- adds r0, r2
- lsrs r0, 16
- adds r1, r4, 0
- adds r2, r5, 0
- adds r3, r5, 0
- bl MultiplyInvertedPaletteRGBComponents
-_080B6A74:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6A7C: .4byte 0x01010000
- thumb_func_end sub_80B6998
-
- thumb_func_start sub_80B6A80
-sub_80B6A80: @ 80B6A80
- push {r4,r5,lr}
- ldr r0, _080B6AF8 @ =gSpriteTemplate_83CE5C8
- movs r1, 0xCC
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080B6AFC @ =0x02000000
- strb r0, [r1, 0x10]
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r5, _080B6B00 @ =gSprites
- adds r4, r5
- ldr r1, _080B6B04 @ =gSubspriteTables_83CE558
- adds r0, r4, 0
- bl SetSubspriteTables
- ldr r0, _080B6B08 @ =gSpriteTemplate_83CE5F8
- movs r1, 0xCC
- movs r2, 0x4C
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x3A]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r5
- ldr r1, _080B6B0C @ =gSubspriteTables_83CE560
- adds r0, r2, 0
- bl SetSubspriteTables
- ldr r0, _080B6B10 @ =gSpriteTemplate_83CE5E0
- movs r1, 0xCC
- movs r2, 0x4B
- movs r3, 0x2
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldrb r3, [r1, 0x5]
- movs r2, 0xD
- negs r2, r2
- ands r2, r3
- movs r3, 0x4
- orrs r2, r3
- strb r2, [r1, 0x5]
- strh r0, [r4, 0x3C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6AF8: .4byte gSpriteTemplate_83CE5C8
-_080B6AFC: .4byte 0x02000000
-_080B6B00: .4byte gSprites
-_080B6B04: .4byte gSubspriteTables_83CE558
-_080B6B08: .4byte gSpriteTemplate_83CE5F8
-_080B6B0C: .4byte gSubspriteTables_83CE560
-_080B6B10: .4byte gSpriteTemplate_83CE5E0
- thumb_func_end sub_80B6A80
-
- thumb_func_start sub_80B6B14
-sub_80B6B14: @ 80B6B14
- ldr r2, _080B6B2C @ =0x02000000
- ldrb r1, [r2, 0x10]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080B6B30 @ =gSprites
- adds r0, r1
- movs r1, 0x2
- strh r1, [r0, 0x2E]
- ldrb r1, [r2, 0xE]
- strh r1, [r0, 0x30]
- bx lr
- .align 2, 0
-_080B6B2C: .4byte 0x02000000
-_080B6B30: .4byte gSprites
- thumb_func_end sub_80B6B14
-
- thumb_func_start sub_80B6B34
-sub_80B6B34: @ 80B6B34
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r5, _080B6B58 @ =gUnknown_083CE2B4
-_080B6B3A:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r5
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- lsls r0, 24
- cmp r0, 0
- bne _080B6B3A
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6B58: .4byte gUnknown_083CE2B4
- thumb_func_end sub_80B6B34
-
- thumb_func_start sub_80B6B5C
-sub_80B6B5C: @ 80B6B5C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r3, _080B6B90 @ =gSprites
- adds r1, r3
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r3
- ldr r0, _080B6B94 @ =0x02000000
- ldrb r0, [r0, 0xE]
- bl sub_80B6C48
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080B6B90: .4byte gSprites
-_080B6B94: .4byte 0x02000000
- thumb_func_end sub_80B6B5C
-
- thumb_func_start sub_80B6B98
-sub_80B6B98: @ 80B6B98
- movs r0, 0
- bx lr
- thumb_func_end sub_80B6B98
-
- thumb_func_start sub_80B6B9C
-sub_80B6B9C: @ 80B6B9C
- push {r4,r5,lr}
- adds r3, r0, 0
- movs r0, 0x3A
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r2, _080B6C00 @ =gSprites
- adds r4, r0, r2
- movs r0, 0x3C
- ldrsh r1, [r3, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r5, r0, r2
- ldrh r0, [r4, 0x26]
- adds r0, 0x1
- strh r0, [r4, 0x26]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _080B6BF8
- ldrh r0, [r3, 0x2E]
- adds r0, 0x1
- strh r0, [r3, 0x2E]
- ldr r0, _080B6C04 @ =0x0000fffc
- strh r0, [r4, 0x26]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldrh r0, [r3, 0x30]
- lsls r0, 24
- lsrs r0, 24
- adds r0, 0x1
- movs r1, 0x3
- bl __modsi3
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- adds r2, r5, 0
- bl sub_80B6C48
-_080B6BF8:
- movs r0, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_080B6C00: .4byte gSprites
-_080B6C04: .4byte 0x0000fffc
- thumb_func_end sub_80B6B9C
-
- thumb_func_start sub_80B6C08
-sub_80B6C08: @ 80B6C08
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x3A
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080B6C44 @ =gSprites
- adds r2, r0, r1
- adds r3, r2, 0
- adds r3, 0x3E
- ldrb r1, [r3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
- ldrh r0, [r2, 0x26]
- adds r0, 0x1
- strh r0, [r2, 0x26]
- lsls r0, 16
- cmp r0, 0
- blt _080B6C3C
- movs r0, 0
- strh r0, [r2, 0x26]
- movs r0, 0x1
- strh r0, [r4, 0x2E]
-_080B6C3C:
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080B6C44: .4byte gSprites
- thumb_func_end sub_80B6C08
-
- thumb_func_start sub_80B6C48
-sub_80B6C48: @ 80B6C48
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r5, r0, 0
- adds r6, r1, 0
- mov r8, r2
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _080B6CA0 @ =gUnknown_083CE2C4
- lsls r4, r5, 1
- adds r0, r4, r0
- ldrh r0, [r0]
- bl IndexOfSpritePaletteTag
- lsls r0, 4
- mov r1, r8
- ldrb r2, [r1, 0x5]
- movs r1, 0xF
- ands r1, r2
- orrs r1, r0
- mov r0, r8
- strb r1, [r0, 0x5]
- ldr r0, _080B6CA4 @ =gUnknown_083CE2CA
- adds r4, r0
- ldrh r0, [r4]
- bl GetSpriteTileStartByTag
- adds r1, r6, 0
- adds r1, 0x40
- strh r0, [r1]
- adds r6, 0x42
- movs r1, 0x3F
- ands r1, r5
- ldrb r2, [r6]
- movs r0, 0x40
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r6]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6CA0: .4byte gUnknown_083CE2C4
-_080B6CA4: .4byte gUnknown_083CE2CA
- thumb_func_end sub_80B6C48
-
- thumb_func_start sub_80B6CA8
-sub_80B6CA8: @ 80B6CA8
- push {r4,r5,lr}
- ldr r0, _080B6CF4 @ =gSpriteTemplate_83CE610
- movs r1, 0xCC
- movs r2, 0x6C
- movs r3, 0
- bl CreateSprite
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _080B6CF8 @ =gSprites
- adds r0, r4
- ldr r5, _080B6CFC @ =gSubspriteTables_83CE578
- adds r1, r5, 0
- bl SetSubspriteTables
- ldr r0, _080B6D00 @ =gSpriteTemplate_83CE628
- movs r1, 0xCC
- movs r2, 0x84
- movs r3, 0
- bl CreateSprite
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r1, r5, 0
- bl SetSubspriteTables
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6CF4: .4byte gSpriteTemplate_83CE610
-_080B6CF8: .4byte gSprites
-_080B6CFC: .4byte gSubspriteTables_83CE578
-_080B6D00: .4byte gSpriteTemplate_83CE628
- thumb_func_end sub_80B6CA8
-
- thumb_func_start sub_80B6D04
-sub_80B6D04: @ 80B6D04
- push {r4-r6,lr}
- ldr r4, _080B6D8C @ =0x02000000
- ldrh r1, [r4, 0x2]
- subs r1, 0x1
- lsls r1, 3
- adds r1, 0x4
- ldr r0, _080B6D90 @ =gSpriteTemplate_83CE658
- lsls r1, 16
- asrs r1, 16
- movs r2, 0x28
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r3, _080B6D94 @ =gSprites
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r1, [r0, 0x5]
- movs r2, 0xC
- orrs r1, r2
- strb r1, [r0, 0x5]
- ldrh r0, [r4, 0x2]
- lsls r0, 3
- adds r0, 0x4
- lsls r0, 16
- lsrs r1, r0, 16
- movs r5, 0
- ldr r0, [r4, 0x34]
- ldrb r0, [r0, 0x1]
- cmp r5, r0
- bcs _080B6D86
- adds r6, r3, 0
-_080B6D4A:
- lsls r4, r1, 16
- asrs r4, 16
- ldr r0, _080B6D98 @ =gSpriteTemplate_83CE670
- adds r1, r4, 0
- movs r2, 0x2C
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r1, r0, 24
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrb r1, [r0, 0x5]
- movs r2, 0xC
- orrs r1, r2
- strb r1, [r0, 0x5]
- strh r5, [r0, 0x2E]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- adds r4, 0x8
- lsls r4, 16
- lsrs r1, r4, 16
- ldr r0, _080B6D8C @ =0x02000000
- ldr r0, [r0, 0x34]
- ldrb r0, [r0, 0x1]
- cmp r5, r0
- bcc _080B6D4A
-_080B6D86:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6D8C: .4byte 0x02000000
-_080B6D90: .4byte gSpriteTemplate_83CE658
-_080B6D94: .4byte gSprites
-_080B6D98: .4byte gSpriteTemplate_83CE670
- thumb_func_end sub_80B6D04
-
- thumb_func_start sub_80B6D9C
-sub_80B6D9C: @ 80B6D9C
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r1, _080B6DE4 @ =gUnknown_083CE2D0
- mov r0, sp
- movs r2, 0x8
- bl memcpy
- ldrh r1, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0
- beq _080B6DC0
- subs r0, r1, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- cmp r0, 0
- bne _080B6DCE
-_080B6DC0:
- movs r0, 0x8
- strh r0, [r4, 0x2E]
- ldrh r0, [r4, 0x30]
- adds r0, 0x1
- movs r1, 0x3
- ands r0, r1
- strh r0, [r4, 0x30]
-_080B6DCE:
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- lsls r0, 1
- add r0, sp
- ldrh r0, [r0]
- strh r0, [r4, 0x24]
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6DE4: .4byte gUnknown_083CE2D0
- thumb_func_end sub_80B6D9C
-
- thumb_func_start sub_80B6DE8
-sub_80B6DE8: @ 80B6DE8
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r1, _080B6E10 @ =gUnknown_083CE2D8
- mov r0, sp
- movs r2, 0x8
- bl memcpy
- bl sub_80B6F44
- lsls r0, 24
- ldrh r1, [r4, 0x2E]
- lsls r1, 24
- cmp r0, r1
- beq _080B6E14
- movs r0, 0
- strh r0, [r4, 0x26]
- strh r0, [r4, 0x30]
- b _080B6E3A
- .align 2, 0
-_080B6E10: .4byte gUnknown_083CE2D8
-_080B6E14:
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- lsls r0, 1
- add r0, sp
- ldrh r0, [r0]
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x8
- ble _080B6E3C
- ldrh r0, [r4, 0x30]
- adds r0, 0x1
- movs r1, 0x3
- ands r0, r1
- strh r0, [r4, 0x30]
- movs r0, 0
-_080B6E3A:
- strh r0, [r4, 0x32]
-_080B6E3C:
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80B6DE8
-
- thumb_func_start sub_80B6E44
-sub_80B6E44: @ 80B6E44
- push {lr}
- ldr r1, _080B6E5C @ =gUnknown_083CE2E0
- ldr r0, _080B6E60 @ =0x02000000
- ldr r0, [r0, 0x34]
- ldrb r0, [r0, 0x2]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- pop {r0}
- bx r0
- .align 2, 0
-_080B6E5C: .4byte gUnknown_083CE2E0
-_080B6E60: .4byte 0x02000000
- thumb_func_end sub_80B6E44
-
- thumb_func_start nullsub_40
-nullsub_40: @ 80B6E64
- bx lr
- thumb_func_end nullsub_40
-
- thumb_func_start sub_80B6E68
-sub_80B6E68: @ 80B6E68
- push {lr}
- sub sp, 0x4
- ldr r0, _080B6EB0 @ =0x02000000
- ldrh r1, [r0, 0x3E]
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- bl sub_805983C
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080B6EB4 @ =SpriteCallbackDummy
- movs r2, 0
- str r2, [sp]
- movs r2, 0x38
- movs r3, 0x18
- bl AddPseudoFieldObject
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _080B6EB8 @ =gSprites
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x5]
- movs r2, 0xC
- orrs r1, r2
- strb r1, [r0, 0x5]
- movs r1, 0x4
- bl StartSpriteAnim
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080B6EB0: .4byte 0x02000000
-_080B6EB4: .4byte SpriteCallbackDummy
-_080B6EB8: .4byte gSprites
- thumb_func_end sub_80B6E68
-
- thumb_func_start sub_80B6EBC
-sub_80B6EBC: @ 80B6EBC
- push {r4,lr}
- ldr r0, _080B6EF0 @ =gSpriteTemplate_83CE688
- movs r1, 0x34
- movs r2, 0x18
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _080B6EF4 @ =gSprites
- adds r4, r0
- ldr r1, _080B6EF8 @ =gSubspriteTables_83CE580
- adds r0, r4, 0
- bl SetSubspriteTables
- ldrb r0, [r4, 0x5]
- movs r1, 0xC
- orrs r0, r1
- strb r0, [r4, 0x5]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B6EF0: .4byte gSpriteTemplate_83CE688
-_080B6EF4: .4byte gSprites
-_080B6EF8: .4byte gSubspriteTables_83CE580
- thumb_func_end sub_80B6EBC
-
- thumb_func_start sub_80B6EFC
-sub_80B6EFC: @ 80B6EFC
- push {lr}
- sub sp, 0x8
- bl sub_809D51C
- ldr r3, _080B6F38 @ =0x02000000
- ldrh r0, [r3, 0x3E]
- ldr r1, _080B6F3C @ =SpriteCallbackDummy
- movs r2, 0
- str r2, [sp]
- ldr r2, [r3, 0x44]
- str r2, [sp, 0x4]
- movs r2, 0x34
- movs r3, 0x18
- bl CreateMonIcon
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B6F40 @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r0, [r1, 0x5]
- movs r2, 0xC
- orrs r0, r2
- strb r0, [r1, 0x5]
- add sp, 0x8
- pop {r0}
- bx r0
- .align 2, 0
-_080B6F38: .4byte 0x02000000
-_080B6F3C: .4byte SpriteCallbackDummy
-_080B6F40: .4byte gSprites
- thumb_func_end sub_80B6EFC
-
- thumb_func_start sub_80B6F44
-sub_80B6F44: @ 80B6F44
- push {r4,lr}
- movs r2, 0
- ldr r1, _080B6F64 @ =0x02000000
- ldr r0, [r1, 0x34]
- ldrb r0, [r0, 0x1]
- adds r4, r1, 0
- cmp r2, r0
- bcs _080B6F72
- adds r1, 0x11
- adds r3, r0, 0
-_080B6F58:
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _080B6F68
- adds r0, r2, 0
- b _080B6F7C
- .align 2, 0
-_080B6F64: .4byte 0x02000000
-_080B6F68:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, r3
- bcc _080B6F58
-_080B6F72:
- ldr r0, [r4, 0x34]
- ldrb r0, [r0, 0x1]
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
-_080B6F7C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80B6F44
-
- thumb_func_start sub_80B6F84
-sub_80B6F84: @ 80B6F84
- push {lr}
- ldr r2, _080B6FA8 @ =0x02000000
- ldr r0, [r2, 0x34]
- ldrb r0, [r0, 0x1]
- subs r0, 0x1
- lsls r1, r0, 24
- cmp r1, 0
- ble _080B6FB4
- adds r3, r2, 0
- adds r3, 0x11
-_080B6F98:
- asrs r2, r1, 24
- adds r0, r2, r3
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _080B6FAC
- lsrs r0, r1, 24
- b _080B6FB6
- .align 2, 0
-_080B6FA8: .4byte 0x02000000
-_080B6FAC:
- subs r0, r2, 0x1
- lsls r1, r0, 24
- cmp r1, 0
- bgt _080B6F98
-_080B6FB4:
- movs r0, 0
-_080B6FB6:
- pop {r1}
- bx r1
- thumb_func_end sub_80B6F84
-
- thumb_func_start sub_80B6FBC
-sub_80B6FBC: @ 80B6FBC
- push {r4,lr}
- bl sub_80B6F84
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _080B7000 @ =0x02000000
- adds r0, 0x11
- adds r4, r0
- movs r0, 0
- strb r0, [r4]
- bl sub_80B7960
- movs r0, 0xFF
- strb r0, [r4]
- bl sub_80B6958
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080B6FEA
- cmp r0, 0x2
- bne _080B6FF4
-_080B6FEA:
- movs r0, 0x1
- movs r1, 0
- movs r2, 0x1
- bl sub_80B6460
-_080B6FF4:
- movs r0, 0x17
- bl PlaySE
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7000: .4byte 0x02000000
- thumb_func_end sub_80B6FBC
-
- thumb_func_start sub_80B7004
-sub_80B7004: @ 80B7004
- push {r4,r5,lr}
- sub sp, 0x4
- mov r5, sp
- adds r5, 0x2
- mov r0, sp
- adds r1, r5, 0
- bl sub_80B6858
- mov r4, sp
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- bl sub_80B67EC
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- mov r0, sp
- movs r2, 0
- ldrsh r0, [r0, r2]
- movs r2, 0
- ldrsh r1, [r5, r2]
- bl sub_80B7768
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- movs r4, 0x1
- cmp r0, 0xFF
- bne _080B7046
- bl sub_80B7104
- b _080B704E
-_080B7046:
- cmp r0, 0xFE
- bne _080B7054
- bl sub_80B713C
-_080B704E:
- lsls r0, 24
- lsrs r4, r0, 24
- b _080B705A
-_080B7054:
- adds r0, r1, 0
- bl sub_80B7174
-_080B705A:
- bl sub_80B7960
- movs r0, 0x5
- bl PlaySE
- cmp r4, 0
- beq _080B7084
- bl sub_80B6F84
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080B7080 @ =0x02000000
- ldr r1, [r1, 0x34]
- ldrb r1, [r1, 0x1]
- subs r1, 0x1
- cmp r0, r1
- bne _080B7084
- movs r0, 0x1
- b _080B7086
- .align 2, 0
-_080B7080: .4byte 0x02000000
-_080B7084:
- movs r0, 0
-_080B7086:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80B7004
-
- thumb_func_start sub_80B7090
-sub_80B7090: @ 80B7090
- push {r4-r7,lr}
- bl sub_80B6F84
- lsls r0, 24
- lsrs r5, r0, 24
- adds r7, r5, 0
- ldr r0, _080B70C8 @ =0x02000000
- adds r0, 0x11
- adds r0, r5, r0
- ldrb r4, [r0]
- adds r6, r4, 0
- adds r0, r4, 0
- bl sub_80B7198
- lsls r0, 24
- cmp r0, 0
- beq _080B70D6
- adds r0, r4, 0
- bl sub_80B7264
- lsls r0, 24
- cmp r0, 0
- beq _080B70CC
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80B7370
- b _080B70F4
- .align 2, 0
-_080B70C8: .4byte 0x02000000
-_080B70CC:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80B73CC
- b _080B70F4
-_080B70D6:
- adds r0, r4, 0
- bl sub_80B71E4
- lsls r0, 24
- cmp r0, 0
- beq _080B70EC
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80B7474
- b _080B70F4
-_080B70EC:
- adds r0, r6, 0
- adds r1, r7, 0
- bl sub_80B72A4
-_080B70F4:
- bl sub_80B7960
- movs r0, 0x5
- bl PlaySE
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80B7090
-
- thumb_func_start sub_80B7104
-sub_80B7104: @ 80B7104
- push {r4,r5,lr}
- bl sub_80B6F84
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _080B7128 @ =0x02000000
- adds r0, 0x11
- adds r0, r5, r0
- ldrb r4, [r0]
- adds r0, r4, 0
- bl sub_80B720C
- lsls r0, 24
- cmp r0, 0
- bne _080B712C
- movs r0, 0
- b _080B7136
- .align 2, 0
-_080B7128: .4byte 0x02000000
-_080B712C:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80B72A4
- movs r0, 0x1
-_080B7136:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80B7104
-
- thumb_func_start sub_80B713C
-sub_80B713C: @ 80B713C
- push {r4,r5,lr}
- bl sub_80B6F84
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _080B7160 @ =0x02000000
- adds r0, 0x11
- adds r0, r5, r0
- ldrb r4, [r0]
- adds r0, r4, 0
- bl sub_80B7264
- lsls r0, 24
- cmp r0, 0
- bne _080B7164
- movs r0, 0
- b _080B716E
- .align 2, 0
-_080B7160: .4byte 0x02000000
-_080B7164:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_80B7370
- movs r0, 0x1
-_080B716E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80B713C
-
- thumb_func_start sub_80B7174
-sub_80B7174: @ 80B7174
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80B6F44
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080B7194 @ =0x02000000
- adds r1, 0x11
- adds r0, r1
- strb r4, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7194: .4byte 0x02000000
- thumb_func_end sub_80B7174
-
- thumb_func_start sub_80B7198
-sub_80B7198: @ 80B7198
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xC9
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x13
- bls _080B71DA
- adds r0, r1, 0
- adds r0, 0x79
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B71DA
- adds r0, r1, 0
- adds r0, 0x74
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B71DA
- adds r0, r1, 0
- adds r0, 0x6F
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B71DA
- adds r0, r1, 0
- adds r0, 0x6A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B71DE
-_080B71DA:
- movs r0, 0x1
- b _080B71E0
-_080B71DE:
- movs r0, 0
-_080B71E0:
- pop {r1}
- bx r1
- thumb_func_end sub_80B7198
-
- thumb_func_start sub_80B71E4
-sub_80B71E4: @ 80B71E4
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xB5
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B7202
- adds r0, r1, 0
- adds r0, 0x65
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B7206
-_080B7202:
- movs r0, 0x1
- b _080B7208
-_080B7206:
- movs r0, 0
-_080B7208:
- pop {r1}
- bx r1
- thumb_func_end sub_80B71E4
-
- thumb_func_start sub_80B720C
-sub_80B720C: @ 80B720C
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xFA
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0xE
- bls _080B725A
- adds r0, r1, 0
- subs r0, 0x1A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B725A
- adds r0, r1, 0
- subs r0, 0x4B
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B725A
- adds r0, r1, 0
- subs r0, 0x56
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xE
- bls _080B725A
- adds r0, r1, 0
- subs r0, 0x6A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B725A
- adds r0, r1, 0
- adds r0, 0x65
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B725E
-_080B725A:
- movs r0, 0x1
- b _080B7260
-_080B725E:
- movs r0, 0
-_080B7260:
- pop {r1}
- bx r1
- thumb_func_end sub_80B720C
-
- thumb_func_start sub_80B7264
-sub_80B7264: @ 80B7264
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xE6
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B729A
- adds r0, r1, 0
- subs r0, 0x46
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B729A
- adds r0, r1, 0
- subs r0, 0x6A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B729A
- adds r0, r1, 0
- adds r0, 0x6A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B729E
-_080B729A:
- movs r0, 0x1
- b _080B72A0
-_080B729E:
- movs r0, 0
-_080B72A0:
- pop {r1}
- bx r1
- thumb_func_end sub_80B7264
-
- thumb_func_start sub_80B72A4
-sub_80B72A4: @ 80B72A4
- push {lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsrs r2, r0, 24
- movs r3, 0xFA
- lsls r3, 24
- adds r0, r3
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B72C0
- adds r0, r2, 0
- adds r0, 0x31
- b _080B735A
-_080B72C0:
- adds r0, r2, 0
- subs r0, 0xB
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B72D2
- adds r0, r2, 0
- adds r0, 0x31
- b _080B735A
-_080B72D2:
- adds r0, r2, 0
- subs r0, 0x10
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B72E4
- adds r0, r2, 0
- adds r0, 0x31
- b _080B735A
-_080B72E4:
- adds r0, r2, 0
- subs r0, 0x1A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B72F6
- adds r0, r2, 0
- adds r0, 0x2C
- b _080B735A
-_080B72F6:
- adds r0, r2, 0
- subs r0, 0x4B
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B7356
- adds r0, r2, 0
- subs r0, 0x56
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B7314
- adds r0, r2, 0
- adds r0, 0x31
- b _080B735A
-_080B7314:
- adds r0, r2, 0
- subs r0, 0x5B
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B7326
- adds r0, r2, 0
- adds r0, 0x31
- b _080B735A
-_080B7326:
- adds r0, r2, 0
- subs r0, 0x60
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B7338
- adds r0, r2, 0
- adds r0, 0x31
- b _080B735A
-_080B7338:
- adds r0, r2, 0
- subs r0, 0x6A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B734A
- adds r0, r2, 0
- adds r0, 0x2C
- b _080B735A
-_080B734A:
- adds r0, r2, 0
- adds r0, 0x65
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B735E
-_080B7356:
- adds r0, r2, 0
- adds r0, 0xFB
-_080B735A:
- lsls r0, 24
- lsrs r2, r0, 24
-_080B735E:
- ldr r0, _080B736C @ =0x02000000
- adds r0, 0x11
- adds r0, r1, r0
- strb r2, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_080B736C: .4byte 0x02000000
- thumb_func_end sub_80B72A4
-
- thumb_func_start sub_80B7370
-sub_80B7370: @ 80B7370
- push {lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsrs r2, r0, 24
- movs r3, 0xE6
- lsls r3, 24
- adds r0, r3
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B738C
- adds r0, r2, 0
- adds r0, 0x31
- b _080B73B8
-_080B738C:
- adds r0, r2, 0
- subs r0, 0x46
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B73B6
- adds r0, r2, 0
- subs r0, 0x6A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B73AA
- adds r0, r2, 0
- adds r0, 0x31
- b _080B73B8
-_080B73AA:
- adds r0, r2, 0
- adds r0, 0x6A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B73BC
-_080B73B6:
- adds r0, r2, 0x5
-_080B73B8:
- lsls r0, 24
- lsrs r2, r0, 24
-_080B73BC:
- ldr r0, _080B73C8 @ =0x02000000
- adds r0, 0x11
- adds r0, r1, r0
- strb r2, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_080B73C8: .4byte 0x02000000
- thumb_func_end sub_80B7370
-
- thumb_func_start sub_80B73CC
-sub_80B73CC: @ 80B73CC
- push {lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsrs r2, r0, 24
- movs r3, 0xC9
- lsls r3, 24
- adds r0, r3
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B73E8
- adds r0, r2, 0
- adds r0, 0xCF
- b _080B745E
-_080B73E8:
- adds r0, r2, 0
- subs r0, 0x3C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B73FA
- adds r0, r2, 0
- adds r0, 0xCF
- b _080B745E
-_080B73FA:
- adds r0, r2, 0
- subs r0, 0x41
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B740C
- adds r0, r2, 0
- adds r0, 0xCF
- b _080B745E
-_080B740C:
- adds r0, r2, 0
- subs r0, 0x46
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B745A
- adds r0, r2, 0
- adds r0, 0x79
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B742A
- adds r0, r2, 0
- adds r0, 0xCF
- b _080B745E
-_080B742A:
- adds r0, r2, 0
- adds r0, 0x74
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B743C
- adds r0, r2, 0
- adds r0, 0xCF
- b _080B745E
-_080B743C:
- adds r0, r2, 0
- adds r0, 0x6F
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B744E
- adds r0, r2, 0
- adds r0, 0xCF
- b _080B745E
-_080B744E:
- adds r0, r2, 0
- adds r0, 0x6A
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B7462
-_080B745A:
- adds r0, r2, 0
- adds r0, 0xD4
-_080B745E:
- lsls r0, 24
- lsrs r2, r0, 24
-_080B7462:
- ldr r0, _080B7470 @ =0x02000000
- adds r0, 0x11
- adds r0, r1, r0
- strb r2, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_080B7470: .4byte 0x02000000
- thumb_func_end sub_80B73CC
-
- thumb_func_start sub_80B7474
-sub_80B7474: @ 80B7474
- push {lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsrs r2, r0, 24
- movs r3, 0xB5
- lsls r3, 24
- adds r0, r3
- lsrs r0, 24
- cmp r0, 0x4
- bls _080B7496
- adds r0, r2, 0
- adds r0, 0x65
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080B749E
-_080B7496:
- adds r0, r2, 0
- adds r0, 0xCF
- lsls r0, 24
- lsrs r2, r0, 24
-_080B749E:
- ldr r0, _080B74AC @ =0x02000000
- adds r0, 0x11
- adds r0, r1, r0
- strb r2, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_080B74AC: .4byte 0x02000000
- thumb_func_end sub_80B7474
-
- thumb_func_start sub_80B74B0
-sub_80B74B0: @ 80B74B0
- push {r4,lr}
- movs r1, 0
- ldr r3, _080B74E4 @ =0x02000000
- ldr r0, [r3, 0x34]
- ldrb r0, [r0, 0x1]
- cmp r1, r0
- bcs _080B74F6
- adds r2, r3, 0
- adds r4, r3, 0
- adds r4, 0x11
-_080B74C4:
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0
- beq _080B74E8
- cmp r0, 0xFF
- beq _080B74E8
- ldr r0, [r2, 0x38]
- ldr r1, [r2, 0x34]
- ldrb r2, [r1, 0x1]
- adds r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- adds r1, r4, 0
- bl StringCopyN
- b _080B74F6
- .align 2, 0
-_080B74E4: .4byte 0x02000000
-_080B74E8:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r0, [r3, 0x34]
- ldrb r0, [r0, 0x1]
- cmp r1, r0
- bcc _080B74C4
-_080B74F6:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80B74B0
-
- thumb_func_start sub_80B74FC
-sub_80B74FC: @ 80B74FC
- push {r4,lr}
- ldr r0, _080B7528 @ =gStringVar1
- ldr r1, _080B752C @ =0x02000000
- ldr r1, [r1, 0x38]
- bl StringCopy
- ldr r4, _080B7530 @ =gStringVar4
- ldr r1, _080B7534 @ =gOtherText_SentToPC
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r0, _080B7538 @ =gWindowConfig_81E6E88
- bl BasicInitMenuWindow
- bl MenuDisplayMessageBox
- adds r0, r4, 0
- bl sub_8072044
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7528: .4byte gStringVar1
-_080B752C: .4byte 0x02000000
-_080B7530: .4byte gStringVar4
-_080B7534: .4byte gOtherText_SentToPC
-_080B7538: .4byte gWindowConfig_81E6E88
- thumb_func_end sub_80B74FC
-
- thumb_func_start sub_80B753C
-sub_80B753C: @ 80B753C
- push {lr}
- ldr r0, _080B7550 @ =gUnknown_083CE6A0
- bl LoadSpriteSheets
- ldr r0, _080B7554 @ =gUnknown_083CE708
- bl LoadSpritePalettes
- pop {r0}
- bx r0
- .align 2, 0
-_080B7550: .4byte gUnknown_083CE6A0
-_080B7554: .4byte gUnknown_083CE708
- thumb_func_end sub_80B753C
-
- thumb_func_start sub_80B7558
-sub_80B7558: @ 80B7558
- push {lr}
- bl sub_80B7568
- bl sub_80B75B0
- pop {r0}
- bx r0
- thumb_func_end sub_80B7558
-
- thumb_func_start sub_80B7568
-sub_80B7568: @ 80B7568
- push {r4,lr}
- ldr r4, _080B759C @ =gNamingScreenMenu_Gfx
- ldr r3, _080B75A0 @ =gMenuMessageBoxContentTileOffset
- ldrh r0, [r3]
- lsls r0, 5
- movs r1, 0xC0
- lsls r1, 19
- adds r0, r1
- ldr r1, _080B75A4 @ =0x040000d4
- str r4, [r1]
- str r0, [r1, 0x4]
- ldr r2, _080B75A8 @ =0x80000400
- str r2, [r1, 0x8]
- ldr r0, [r1, 0x8]
- ldrh r0, [r3]
- lsls r0, 5
- ldr r3, _080B75AC @ =0x06008000
- adds r0, r3
- str r4, [r1]
- str r0, [r1, 0x4]
- str r2, [r1, 0x8]
- ldr r0, [r1, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B759C: .4byte gNamingScreenMenu_Gfx
-_080B75A0: .4byte gMenuMessageBoxContentTileOffset
-_080B75A4: .4byte 0x040000d4
-_080B75A8: .4byte 0x80000400
-_080B75AC: .4byte 0x06008000
- thumb_func_end sub_80B7568
-
- thumb_func_start sub_80B75B0
-sub_80B75B0: @ 80B75B0
- push {lr}
- ldr r0, _080B75C0 @ =gNamingScreenPalettes
- movs r1, 0
- movs r2, 0x80
- bl LoadPalette
- pop {r0}
- bx r0
- .align 2, 0
-_080B75C0: .4byte gNamingScreenPalettes
- thumb_func_end sub_80B75B0
-
- thumb_func_start sub_80B75C4
-sub_80B75C4: @ 80B75C4
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, _080B7608 @ =gUnknown_083CE308
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- ldr r4, _080B760C @ =gUnknown_083CE2F0
- ldr r5, _080B7610 @ =0x02000000
- ldrb r1, [r5, 0xE]
- lsls r1, 3
- adds r1, r4
- ldrb r0, [r5, 0xC]
- lsls r0, 2
- add r0, sp
- ldr r0, [r0]
- ldr r1, [r1]
- bl _call_via_r1
- ldrb r1, [r5, 0xE]
- lsls r1, 3
- adds r4, 0x4
- adds r1, r4
- ldrb r0, [r5, 0xD]
- lsls r0, 2
- add r0, sp
- ldr r0, [r0]
- ldr r1, [r1]
- bl _call_via_r1
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7608: .4byte gUnknown_083CE308
-_080B760C: .4byte gUnknown_083CE2F0
-_080B7610: .4byte 0x02000000
- thumb_func_end sub_80B75C4
-
- thumb_func_start sub_80B7614
-sub_80B7614: @ 80B7614
- push {lr}
- sub sp, 0x8
- ldr r0, _080B7644 @ =gUnknown_083CE308
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- ldr r0, _080B7648 @ =gUnknown_083CE2F0
- ldr r2, _080B764C @ =0x02000000
- ldrb r1, [r2, 0xE]
- lsls r1, 3
- adds r0, 0x4
- adds r1, r0
- ldrb r0, [r2, 0xD]
- lsls r0, 2
- add r0, sp
- ldr r0, [r0]
- ldr r1, [r1]
- bl _call_via_r1
- add sp, 0x8
- pop {r0}
- bx r0
- .align 2, 0
-_080B7644: .4byte gUnknown_083CE308
-_080B7648: .4byte gUnknown_083CE2F0
-_080B764C: .4byte 0x02000000
- thumb_func_end sub_80B7614
-
- thumb_func_start sub_80B7650
-sub_80B7650: @ 80B7650
- push {lr}
- ldr r1, _080B765C @ =gUnknown_083CE748
- bl sub_80B7698
- pop {r0}
- bx r0
- .align 2, 0
-_080B765C: .4byte gUnknown_083CE748
- thumb_func_end sub_80B7650
-
- thumb_func_start sub_80B7660
-sub_80B7660: @ 80B7660
- push {lr}
- ldr r1, _080B766C @ =gUnknown_083CEBF8
- bl sub_80B7698
- pop {r0}
- bx r0
- .align 2, 0
-_080B766C: .4byte gUnknown_083CEBF8
- thumb_func_end sub_80B7660
-
- thumb_func_start sub_80B7670
-sub_80B7670: @ 80B7670
- push {lr}
- ldr r1, _080B767C @ =gUnknown_083CF0A8
- bl sub_80B7698
- pop {r0}
- bx r0
- .align 2, 0
-_080B767C: .4byte gUnknown_083CF0A8
- thumb_func_end sub_80B7670
-
- thumb_func_start sub_80B7680
-sub_80B7680: @ 80B7680
- push {lr}
- ldr r0, _080B7690 @ =0x0600f000
- ldr r1, _080B7694 @ =gUnknown_08E86258
- bl sub_80B76E0
- pop {r0}
- bx r0
- .align 2, 0
-_080B7690: .4byte 0x0600f000
-_080B7694: .4byte gUnknown_08E86258
- thumb_func_end sub_80B7680
-
- thumb_func_start sub_80B7698
-sub_80B7698: @ 80B7698
- push {r4-r7,lr}
- mov r12, r0
- adds r3, r1, 0
- movs r4, 0
- ldr r0, _080B76DC @ =gMenuMessageBoxContentTileOffset
- ldrh r6, [r0]
-_080B76A4:
- movs r1, 0
- lsls r4, 16
- asrs r5, r4, 11
-_080B76AA:
- lsls r0, r1, 16
- asrs r0, 16
- adds r1, r5, r0
- lsls r1, 1
- add r1, r12
- ldrh r7, [r3]
- adds r2, r6, r7
- strh r2, [r1]
- adds r0, 0x1
- lsls r0, 16
- adds r3, 0x2
- lsrs r1, r0, 16
- asrs r0, 16
- cmp r0, 0x1D
- ble _080B76AA
- movs r1, 0x80
- lsls r1, 9
- adds r0, r4, r1
- lsrs r4, r0, 16
- asrs r0, 16
- cmp r0, 0x13
- ble _080B76A4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B76DC: .4byte gMenuMessageBoxContentTileOffset
- thumb_func_end sub_80B7698
-
- thumb_func_start sub_80B76E0
-sub_80B76E0: @ 80B76E0
- push {r4-r7,lr}
- mov r12, r0
- adds r3, r1, 0
- movs r4, 0
- ldr r0, _080B7728 @ =gMenuMessageBoxContentTileOffset
- ldrh r6, [r0]
-_080B76EC:
- movs r1, 0
- lsls r5, r4, 16
- asrs r4, r5, 11
-_080B76F2:
- lsls r0, r1, 16
- asrs r0, 16
- adds r1, r4, r0
- lsls r1, 1
- add r1, r12
- ldrh r7, [r3]
- adds r2, r6, r7
- strh r2, [r1]
- adds r0, 0x1
- lsls r0, 16
- adds r3, 0x2
- lsrs r1, r0, 16
- asrs r0, 16
- cmp r0, 0x1D
- ble _080B76F2
- adds r3, 0x4
- movs r1, 0x80
- lsls r1, 9
- adds r0, r5, r1
- lsrs r4, r0, 16
- asrs r0, 16
- cmp r0, 0x13
- ble _080B76EC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7728: .4byte gMenuMessageBoxContentTileOffset
- thumb_func_end sub_80B76E0
-
- thumb_func_start sub_80B772C
-sub_80B772C: @ 80B772C
- push {lr}
- ldr r1, _080B773C @ =0x02000000
- ldrb r0, [r1, 0xE]
- ldrb r1, [r1, 0xC]
- bl nullsub_20
- pop {r0}
- bx r0
- .align 2, 0
-_080B773C: .4byte 0x02000000
- thumb_func_end sub_80B772C
-
- thumb_func_start sub_80B7740
-sub_80B7740: @ 80B7740
- push {r4,lr}
- ldr r4, _080B7760 @ =0x02000000
- ldrb r0, [r4, 0xE]
- adds r0, 0x1
- movs r1, 0x3
- bl __modsi3
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r4, 0xD]
- bl nullsub_20
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B7760: .4byte 0x02000000
- thumb_func_end sub_80B7740
-
- thumb_func_start nullsub_20
-nullsub_20: @ 80B7764
- bx lr
- thumb_func_end nullsub_20
-
- thumb_func_start sub_80B7768
-sub_80B7768: @ 80B7768
- ldr r3, _080B778C @ =gUnknown_083CE3A8
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- lsls r2, r1, 2
- adds r2, r1
- lsls r2, 2
- adds r0, r2
- ldr r1, _080B7790 @ =0x02000000
- ldrb r2, [r1, 0xE]
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 4
- adds r0, r1
- adds r0, r3
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_080B778C: .4byte gUnknown_083CE3A8
-_080B7790: .4byte 0x02000000
- thumb_func_end sub_80B7768
-
- thumb_func_start sub_80B7794
-sub_80B7794: @ 80B7794
- push {r4-r6,lr}
- ldr r6, _080B77EC @ =gUnknown_083CE328
- ldr r4, _080B77F0 @ =0x02000000
- ldrb r0, [r4, 0xC]
- lsls r0, 2
- ldrb r1, [r4, 0xE]
- lsls r1, 4
- adds r0, r1
- adds r0, r6
- ldr r0, [r0]
- bl BasicInitMenuWindow
- ldr r5, _080B77F4 @ =gUnknown_083CE310
- ldrb r0, [r4, 0xE]
- lsls r0, 3
- adds r0, r5
- ldr r0, [r0]
- bl _call_via_r0
- ldrb r1, [r4, 0xD]
- lsls r1, 2
- ldrb r0, [r4, 0xE]
- lsls r0, 4
- adds r1, r0
- adds r6, 0x8
- adds r1, r6
- ldr r0, [r1]
- bl BasicInitMenuWindow
- ldrb r0, [r4, 0xE]
- lsls r0, 3
- adds r5, 0x4
- adds r0, r5
- ldr r0, [r0]
- bl _call_via_r0
- bl sub_80B772C
- bl sub_80B7740
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B77EC: .4byte gUnknown_083CE328
-_080B77F0: .4byte 0x02000000
-_080B77F4: .4byte gUnknown_083CE310
- thumb_func_end sub_80B7794
-
- thumb_func_start sub_80B77F8
-sub_80B77F8: @ 80B77F8
- push {r4,lr}
- ldr r2, _080B782C @ =gUnknown_083CE328
- ldr r4, _080B7830 @ =0x02000000
- ldrb r1, [r4, 0xD]
- lsls r1, 2
- ldrb r0, [r4, 0xE]
- lsls r0, 4
- adds r1, r0
- adds r2, 0x8
- adds r1, r2
- ldr r0, [r1]
- bl BasicInitMenuWindow
- ldr r1, _080B7834 @ =gUnknown_083CE310
- ldrb r0, [r4, 0xE]
- lsls r0, 3
- adds r1, 0x4
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- bl sub_80B7740
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B782C: .4byte gUnknown_083CE328
-_080B7830: .4byte 0x02000000
-_080B7834: .4byte gUnknown_083CE310
- thumb_func_end sub_80B77F8
-
- thumb_func_start sub_80B7838
-sub_80B7838: @ 80B7838
- push {lr}
- movs r0, 0x1
- bl sub_80B785C
- pop {r0}
- bx r0
- thumb_func_end sub_80B7838
-
- thumb_func_start sub_80B7844
-sub_80B7844: @ 80B7844
- push {lr}
- movs r0, 0
- bl sub_80B785C
- pop {r0}
- bx r0
- thumb_func_end sub_80B7844
-
- thumb_func_start sub_80B7850
-sub_80B7850: @ 80B7850
- push {lr}
- movs r0, 0x2
- bl sub_80B785C
- pop {r0}
- bx r0
- thumb_func_end sub_80B7850
-
- thumb_func_start sub_80B785C
-sub_80B785C: @ 80B785C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0
- movs r5, 0x9
- lsls r1, r0, 2
- adds r1, r0
- lsls r6, r1, 4
-_080B786C:
- lsls r4, r2, 16
- asrs r4, 16
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 2
- ldr r1, _080B78A4 @ =gUnknown_083CE3A8
- adds r0, r1
- adds r0, r6, r0
- lsls r2, r5, 24
- lsrs r2, 24
- movs r1, 0x3
- bl MenuPrint
- adds r4, 0x1
- lsls r4, 16
- lsls r0, r5, 16
- movs r1, 0x80
- lsls r1, 10
- adds r0, r1
- lsrs r5, r0, 16
- lsrs r2, r4, 16
- asrs r4, 16
- cmp r4, 0x3
- ble _080B786C
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B78A4: .4byte gUnknown_083CE3A8
- thumb_func_end sub_80B785C
-
- thumb_func_start sub_80B78A8
-sub_80B78A8: @ 80B78A8
- push {r4,lr}
- ldr r0, _080B78E4 @ =gWindowConfig_81E6F4C
- bl BasicInitMenuWindow
- ldr r1, _080B78E8 @ =gUnknown_083CE358
- ldr r4, _080B78EC @ =0x02000000
- ldrb r0, [r4, 0x1]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- ldr r1, _080B78F0 @ =gUnknown_083CE368
- ldr r0, [r4, 0x34]
- ldrb r0, [r0, 0x3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, [r4, 0x34]
- ldr r0, [r0, 0x8]
- movs r1, 0x9
- movs r2, 0x2
- bl MenuPrint
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B78E4: .4byte gWindowConfig_81E6F4C
-_080B78E8: .4byte gUnknown_083CE358
-_080B78EC: .4byte 0x02000000
-_080B78F0: .4byte gUnknown_083CE368
- thumb_func_end sub_80B78A8
-
- thumb_func_start nullsub_61
-nullsub_61: @ 80B78F4
- bx lr
- thumb_func_end nullsub_61
-
- thumb_func_start sub_80B78F8
-sub_80B78F8: @ 80B78F8
- push {lr}
- ldr r0, _080B7914 @ =gStringVar1
- ldr r1, _080B7918 @ =0x02000000
- movs r3, 0x3E
- ldrsh r2, [r1, r3]
- movs r1, 0xB
- muls r1, r2
- ldr r2, _080B791C @ =gSpeciesNames
- adds r1, r2
- bl StringCopy
- pop {r0}
- bx r0
- .align 2, 0
-_080B7914: .4byte gStringVar1
-_080B7918: .4byte 0x02000000
-_080B791C: .4byte gSpeciesNames
- thumb_func_end sub_80B78F8
-
- thumb_func_start nullsub_62
-nullsub_62: @ 80B7920
- bx lr
- thumb_func_end nullsub_62
-
- thumb_func_start sub_80B7924
-sub_80B7924: @ 80B7924
- push {lr}
- sub sp, 0x4
- ldr r1, _080B7958 @ =gUnknown_083CE370
- mov r0, sp
- movs r2, 0x2
- bl memcpy
- ldr r0, _080B795C @ =0x02000000
- adds r0, 0x40
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0xFF
- beq _080B7952
- cmp r0, 0xFE
- bne _080B7948
- mov r1, sp
- movs r0, 0xB6
- strb r0, [r1]
-_080B7948:
- mov r0, sp
- movs r1, 0x14
- movs r2, 0x4
- bl MenuPrint
-_080B7952:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080B7958: .4byte gUnknown_083CE370
-_080B795C: .4byte 0x02000000
- thumb_func_end sub_80B7924
-
- thumb_func_start sub_80B7960
-sub_80B7960: @ 80B7960
- push {r4,lr}
- ldr r0, _080B799C @ =gStringVar1
- movs r2, 0xFC
- strb r2, [r0]
- movs r1, 0x14
- strb r1, [r0, 0x1]
- movs r1, 0x8
- strb r1, [r0, 0x2]
- strb r2, [r0, 0x3]
- movs r1, 0x11
- strb r1, [r0, 0x4]
- movs r1, 0x1
- strb r1, [r0, 0x5]
- adds r0, 0x6
- ldr r4, _080B79A0 @ =0x02000011
- adds r1, r4, 0
- bl StringCopy
- ldr r0, _080B79A4 @ =gWindowConfig_81E6F4C
- bl BasicInitMenuWindow
- ldr r0, _080B799C @ =gStringVar1
- subs r4, 0x11
- ldrb r1, [r4, 0x2]
- movs r2, 0x4
- bl MenuPrint
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B799C: .4byte gStringVar1
-_080B79A0: .4byte 0x02000011
-_080B79A4: .4byte gWindowConfig_81E6F4C
- thumb_func_end sub_80B7960
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 0edec1623..f405d174a 100644
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -7430,8 +7430,8 @@ sub_806E7D0: @ 806E7D0
bx r0
thumb_func_end sub_806E7D0
- thumb_func_start sub_806E81C
-sub_806E81C: @ 806E81C
+ thumb_func_start PartyMenuGetPopupMenuFunc
+PartyMenuGetPopupMenuFunc: @ 806E81C
lsls r0, 24
lsls r3, 24
lsrs r3, 24
@@ -7444,7 +7444,7 @@ sub_806E81C: @ 806E81C
adds r0, r2
ldr r0, [r0, 0x4]
bx lr
- thumb_func_end sub_806E81C
+ thumb_func_end PartyMenuGetPopupMenuFunc
.section .text_806E884
@@ -9414,7 +9414,7 @@ _0806F8FC:
strh r3, [r0]
_0806F900:
adds r5, r0, 0
- ldr r1, _0806F940 @ =gUnknown_02024BEC
+ ldr r1, _0806F940 @ =gBattleMoveDamage
ldrh r0, [r5]
negs r0, r0
str r0, [r1]
@@ -9442,7 +9442,7 @@ _0806F900:
bl StringExpandPlaceholders
b _0806F964
.align 2, 0
-_0806F940: .4byte gUnknown_02024BEC
+_0806F940: .4byte gBattleMoveDamage
_0806F944: .4byte 0x0201c000
_0806F948: .4byte gStringVar1
_0806F94C: .4byte gStringVar2
@@ -10413,13 +10413,13 @@ _080702B0:
ldr r1, [r4, 0x10]
str r1, [r0]
_080702C6:
- ldr r1, _080702D4 @ =gUnknown_03005CE0
+ ldr r1, _080702D4 @ =gLastFieldPokeMenuOpened
movs r0, 0
strb r0, [r1]
b _080702DE
.align 2, 0
_080702D0: .4byte gTasks
-_080702D4: .4byte gUnknown_03005CE0
+_080702D4: .4byte gLastFieldPokeMenuOpened
_080702D8:
adds r0, r5, 0
bl sub_8070088
diff --git a/asm/pokeball.s b/asm/pokeball.s
index 57e4a5a21..9abeed00d 100644
--- a/asm/pokeball.s
+++ b/asm/pokeball.s
@@ -152,7 +152,7 @@ _080464D6:
beq _0804655C
cmp r2, 0xFF
bne _08046598
- ldr r0, _08046554 @ =gUnknown_02024C08
+ ldr r0, _08046554 @ =gEnemyMonIndex
strb r5, [r0]
movs r0, 0x18
strh r0, [r4, 0x20]
@@ -169,7 +169,7 @@ _08046544: .4byte gUnknown_02024A6A
_08046548: .4byte gPlayerParty
_0804654C: .4byte gSpriteTemplate_820AAB4
_08046550: .4byte gSprites
-_08046554: .4byte gUnknown_02024C08
+_08046554: .4byte gEnemyMonIndex
_08046558: .4byte sub_8047074
_0804655C:
adds r0, r5, 0
@@ -185,7 +185,7 @@ _0804655C:
lsrs r0, 24
adds r0, 0x18
strh r0, [r4, 0x22]
- ldr r0, _08046590 @ =gUnknown_02024C08
+ ldr r0, _08046590 @ =gEnemyMonIndex
strb r5, [r0]
movs r3, 0
strh r3, [r4, 0x2E]
@@ -196,12 +196,12 @@ _0804655C:
str r1, [r0]
b _080465A6
.align 2, 0
-_08046590: .4byte gUnknown_02024C08
+_08046590: .4byte gEnemyMonIndex
_08046594: .4byte sub_8047254
_08046598:
movs r0, 0x1
bl battle_get_side_with_given_state
- ldr r1, _080465C4 @ =gUnknown_02024C08
+ ldr r1, _080465C4 @ =gEnemyMonIndex
strb r0, [r1]
movs r0, 0x1
str r0, [sp]
@@ -211,7 +211,7 @@ _080465A6:
adds r1, r7
lsls r1, 2
adds r4, r1, r0
- ldr r5, _080465C4 @ =gUnknown_02024C08
+ ldr r5, _080465C4 @ =gEnemyMonIndex
ldrb r0, [r5]
strh r0, [r4, 0x3A]
ldr r2, [sp]
@@ -221,7 +221,7 @@ _080465A6:
bl DestroyTask
b _08046616
.align 2, 0
-_080465C4: .4byte gUnknown_02024C08
+_080465C4: .4byte gEnemyMonIndex
_080465C8: .4byte gSprites
_080465CC:
movs r0, 0x22
diff --git a/asm/pokemon_item_effect.s b/asm/pokemon_item_effect.s
index a8a0ce89d..3a97f8a04 100644
--- a/asm/pokemon_item_effect.s
+++ b/asm/pokemon_item_effect.s
@@ -1200,7 +1200,7 @@ _0803EB34: .4byte gBattleMons
_0803EB38: .4byte gUnknown_02024A60
_0803EB3C: .4byte gUnknown_030042E0
_0803EB40:
- ldr r1, _0803EB58 @ =gUnknown_02024BEC
+ ldr r1, _0803EB58 @ =gBattleMoveDamage
ldr r0, [sp]
negs r0, r0
str r0, [r1]
@@ -1214,7 +1214,7 @@ _0803EB4C:
mov r10, r2
b _0803EE0A
.align 2, 0
-_0803EB58: .4byte gUnknown_02024BEC
+_0803EB58: .4byte gBattleMoveDamage
_0803EB5C:
movs r7, 0x2
mov r0, r10
diff --git a/asm/pokemon_menu.s b/asm/pokemon_menu.s
index 6a3fbb170..2f1c16f8c 100644
--- a/asm/pokemon_menu.s
+++ b/asm/pokemon_menu.s
@@ -31,7 +31,7 @@ sub_8089A8C: @ 8089A8C
ldr r5, _08089AD0 @ =gUnknown_0202FFA9
movs r0, 0
strb r0, [r5]
- ldr r0, _08089AD4 @ =gUnknown_03005CE0
+ ldr r0, _08089AD4 @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -57,7 +57,7 @@ sub_8089A8C: @ 8089A8C
b _08089BC8
.align 2, 0
_08089AD0: .4byte gUnknown_0202FFA9
-_08089AD4: .4byte gUnknown_03005CE0
+_08089AD4: .4byte gLastFieldPokeMenuOpened
_08089AD8: .4byte gPlayerParty
_08089ADC: .4byte gUnknown_0202FFAA
_08089AE0:
@@ -73,7 +73,7 @@ _08089AE8:
beq _08089B48
ldr r5, _08089B24 @ =gUnknown_0839F554
_08089AF4:
- ldr r0, _08089B28 @ =gUnknown_03005CE0
+ ldr r0, _08089B28 @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -97,7 +97,7 @@ _08089AF4:
b _08089B48
.align 2, 0
_08089B24: .4byte gUnknown_0839F554
-_08089B28: .4byte gUnknown_03005CE0
+_08089B28: .4byte gLastFieldPokeMenuOpened
_08089B2C: .4byte gPlayerParty
_08089B30: .4byte gUnknown_0202FFAA
_08089B34: .4byte gUnknown_0202FFA9
@@ -132,7 +132,7 @@ _08089B48:
movs r2, 0x1
bl AppendToList
_08089B76:
- ldr r0, _08089BB0 @ =gUnknown_03005CE0
+ ldr r0, _08089BB0 @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -156,7 +156,7 @@ _08089B76:
_08089BA4: .4byte gUnknown_0202FFAA
_08089BA8: .4byte gUnknown_0202FFA9
_08089BAC: .4byte gPlayerParty + 1 * 0x64
-_08089BB0: .4byte gUnknown_03005CE0
+_08089BB0: .4byte gLastFieldPokeMenuOpened
_08089BB4:
adds r0, r4, 0
adds r1, r5, 0
@@ -336,7 +336,7 @@ _08089D04:
bl PlaySE
adds r0, r4, 0
bl sub_806CA38
- ldr r1, _08089D48 @ =gUnknown_03005CE0
+ ldr r1, _08089D48 @ =gLastFieldPokeMenuOpened
strb r0, [r1]
ldrb r1, [r1]
movs r0, 0x64
@@ -361,7 +361,7 @@ _08089D04:
bl sub_808B5B4
b _08089D84
.align 2, 0
-_08089D48: .4byte gUnknown_03005CE0
+_08089D48: .4byte gLastFieldPokeMenuOpened
_08089D4C: .4byte gPlayerParty
_08089D50: .4byte gStringVar1
_08089D54: .4byte gUnknown_0202FFA8
@@ -492,7 +492,7 @@ sub_8089E4C: @ 8089E4C
lsrs r1, r0, 24
cmp r1, 0
bne _08089E72
- ldr r0, _08089E7C @ =gUnknown_03005CE0
+ ldr r0, _08089E7C @ =gLastFieldPokeMenuOpened
strb r1, [r0]
ldr r0, _08089E80 @ =sub_805469C
bl SetMainCallback2
@@ -504,14 +504,14 @@ _08089E72:
bx r0
.align 2, 0
_08089E78: .4byte gPaletteFade
-_08089E7C: .4byte gUnknown_03005CE0
+_08089E7C: .4byte gLastFieldPokeMenuOpened
_08089E80: .4byte sub_805469C
thumb_func_end sub_8089E4C
thumb_func_start sub_8089E84
sub_8089E84: @ 8089E84
push {lr}
- ldr r0, _08089EAC @ =gUnknown_03005CE0
+ ldr r0, _08089EAC @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -528,7 +528,7 @@ sub_8089E84: @ 8089E84
pop {r0}
bx r0
.align 2, 0
-_08089EAC: .4byte gUnknown_03005CE0
+_08089EAC: .4byte gLastFieldPokeMenuOpened
_08089EB0: .4byte gPlayerParty
_08089EB4: .4byte gStringVar1
_08089EB8: .4byte gUnknown_0202FFA8
@@ -561,7 +561,7 @@ _08089ED8:
ldrb r0, [r4]
movs r1, 0
bl sub_806BF74
- ldr r1, _08089F0C @ =gUnknown_03005CE0
+ ldr r1, _08089F0C @ =gLastFieldPokeMenuOpened
ldrb r0, [r5]
strb r0, [r1]
bl sub_8089E84
@@ -572,7 +572,7 @@ _08089F04:
pop {r0}
bx r0
.align 2, 0
-_08089F0C: .4byte gUnknown_03005CE0
+_08089F0C: .4byte gLastFieldPokeMenuOpened
_08089F10: .4byte sub_806AEDC
thumb_func_end sub_8089EBC
@@ -784,7 +784,7 @@ _0808A0A4:
ldr r0, _0808A0D4 @ =gUnknown_0202FFA8
ldrb r3, [r0]
movs r0, 0
- bl sub_806E81C
+ bl PartyMenuGetPopupMenuFunc
adds r1, r0, 0
adds r0, r5, 0
bl _call_via_r1
@@ -1126,7 +1126,7 @@ _0808A370:
cmp r0, 0x1
bne _0808A364
ldrb r0, [r4]
- ldr r1, _0808A39C @ =gUnknown_03005CE0
+ ldr r1, _0808A39C @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
bl sub_806C994
ldrb r0, [r4]
@@ -1139,7 +1139,7 @@ _0808A394:
pop {r0}
bx r0
.align 2, 0
-_0808A39C: .4byte gUnknown_03005CE0
+_0808A39C: .4byte gLastFieldPokeMenuOpened
_0808A3A0: .4byte sub_806AEDC
thumb_func_end sub_808A358
@@ -1155,7 +1155,7 @@ _0808A3AA:
cmp r0, 0x1
bne _0808A3E4
ldrb r0, [r4]
- ldr r1, _0808A3DC @ =gUnknown_03005CE0
+ ldr r1, _0808A3DC @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
bl sub_806C994
ldrb r0, [r4]
@@ -1169,7 +1169,7 @@ _0808A3AA:
b _0808A3F0
.align 2, 0
_0808A3D8: .4byte 0x0201b260
-_0808A3DC: .4byte gUnknown_03005CE0
+_0808A3DC: .4byte gLastFieldPokeMenuOpened
_0808A3E0: .4byte sub_806AEDC
_0808A3E4:
bl sub_80F9344
@@ -1205,7 +1205,7 @@ sub_808A3F8: @ 808A3F8
adds r0, r4, 0
movs r1, 0
bl sub_806BD58
- ldr r0, _0808A46C @ =gUnknown_03005CE0
+ ldr r0, _0808A46C @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
adds r0, r4, 0
bl sub_806C994
@@ -1232,7 +1232,7 @@ sub_808A3F8: @ 808A3F8
_0808A460: .4byte gScriptItemId
_0808A464: .4byte sub_808A330
_0808A468: .4byte gPaletteFade
-_0808A46C: .4byte gUnknown_03005CE0
+_0808A46C: .4byte gLastFieldPokeMenuOpened
_0808A470: .4byte gPlayerParty
_0808A474: .4byte sub_808A34C
_0808A478:
@@ -1298,7 +1298,7 @@ _0808A4EC:
cmp r0, 0x1
bne _0808A4E0
ldrb r0, [r4]
- ldr r1, _0808A518 @ =gUnknown_03005CE0
+ ldr r1, _0808A518 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
bl sub_806C994
ldrb r0, [r4]
@@ -1311,7 +1311,7 @@ _0808A510:
pop {r0}
bx r0
.align 2, 0
-_0808A518: .4byte gUnknown_03005CE0
+_0808A518: .4byte gLastFieldPokeMenuOpened
_0808A51C: .4byte sub_806AEDC
thumb_func_end sub_808A4D4
@@ -1334,7 +1334,7 @@ sub_808A520: @ 808A520
movs r1, 0x1
bl RemoveBagItem
_0808A542:
- ldr r6, _0808A590 @ =gUnknown_03005CE0
+ ldr r6, _0808A590 @ =gLastFieldPokeMenuOpened
ldrb r0, [r6]
movs r5, 0x64
muls r0, r5
@@ -1366,7 +1366,7 @@ _0808A542:
_0808A584: .4byte gPaletteFade
_0808A588: .4byte gScriptResult
_0808A58C: .4byte gUnknown_0202E8F8
-_0808A590: .4byte gUnknown_03005CE0
+_0808A590: .4byte gLastFieldPokeMenuOpened
_0808A594: .4byte gPlayerParty
_0808A598: .4byte sub_8089CD4
_0808A59C:
@@ -1397,7 +1397,7 @@ sub_808A5BC: @ 808A5BC
ands r0, r1
cmp r0, 0
bne _0808A5EA
- ldr r0, _0808A5F4 @ =gUnknown_03005CE0
+ ldr r0, _0808A5F4 @ =gLastFieldPokeMenuOpened
ldrb r0, [r0]
ldr r1, _0808A5F8 @ =gScriptItemId
ldrh r1, [r1]
@@ -1416,7 +1416,7 @@ _0808A5EA:
bx r0
.align 2, 0
_0808A5F0: .4byte gPaletteFade
-_0808A5F4: .4byte gUnknown_03005CE0
+_0808A5F4: .4byte gLastFieldPokeMenuOpened
_0808A5F8: .4byte gScriptItemId
_0808A5FC: .4byte gTasks
_0808A600: .4byte sub_808A1E0
@@ -1648,7 +1648,7 @@ _0808A7B4:
ldr r0, _0808A7EC @ =gUnknown_0202FFA8
ldrb r3, [r0]
movs r0, 0
- bl sub_806E81C
+ bl PartyMenuGetPopupMenuFunc
adds r1, r0, 0
adds r0, r5, 0
bl _call_via_r1
@@ -1755,7 +1755,7 @@ _0808A8A4: .4byte sub_808A8A8
sub_808A8A8: @ 808A8A8
push {lr}
ldr r1, _0808A8C4 @ =gUnknown_020384F0
- ldr r0, _0808A8C8 @ =gUnknown_03005CE0
+ ldr r0, _0808A8C8 @ =gLastFieldPokeMenuOpened
ldrb r0, [r0]
strb r0, [r1]
ldr r0, _0808A8CC @ =0x0201b000
@@ -1768,7 +1768,7 @@ sub_808A8A8: @ 808A8A8
bx r0
.align 2, 0
_0808A8C4: .4byte gUnknown_020384F0
-_0808A8C8: .4byte gUnknown_03005CE0
+_0808A8C8: .4byte gLastFieldPokeMenuOpened
_0808A8CC: .4byte 0x0201b000
_0808A8D0: .4byte 0x00000262
thumb_func_end sub_808A8A8
@@ -2129,7 +2129,7 @@ sub_808ABA8: @ 808ABA8
lsrs r0, 24
cmp r0, 0x1
bne _0808ABDE
- ldr r0, _0808ABE4 @ =gUnknown_03005CE0
+ ldr r0, _0808ABE4 @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -2149,7 +2149,7 @@ _0808ABDE:
pop {r0}
bx r0
.align 2, 0
-_0808ABE4: .4byte gUnknown_03005CE0
+_0808ABE4: .4byte gLastFieldPokeMenuOpened
_0808ABE8: .4byte gPlayerParty
_0808ABEC: .4byte gUnknown_0202FF84
_0808ABF0: .4byte gUnknown_03005CE4
@@ -2190,7 +2190,7 @@ _0808AC28: .4byte gMain
sub_808AC2C: @ 808AC2C
push {lr}
ldr r0, _0808AC40 @ =gUnknown_0202FF84
- ldr r1, _0808AC44 @ =gUnknown_03005CE0
+ ldr r1, _0808AC44 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
str r1, [r0]
movs r0, 0x9
@@ -2199,7 +2199,7 @@ sub_808AC2C: @ 808AC2C
bx r0
.align 2, 0
_0808AC40: .4byte gUnknown_0202FF84
-_0808AC44: .4byte gUnknown_03005CE0
+_0808AC44: .4byte gLastFieldPokeMenuOpened
thumb_func_end sub_808AC2C
thumb_func_start SetUpFieldMove_Surf
@@ -2239,7 +2239,7 @@ _0808AC86:
sub_808AC8C: @ 808AC8C
push {lr}
ldr r0, _0808ACA0 @ =gUnknown_0202FF84
- ldr r1, _0808ACA4 @ =gUnknown_03005CE0
+ ldr r1, _0808ACA4 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
str r1, [r0]
movs r0, 0x1F
@@ -2248,7 +2248,7 @@ sub_808AC8C: @ 808AC8C
bx r0
.align 2, 0
_0808ACA0: .4byte gUnknown_0202FF84
-_0808ACA4: .4byte gUnknown_03005CE0
+_0808ACA4: .4byte gLastFieldPokeMenuOpened
thumb_func_end sub_808AC8C
thumb_func_start SetUpFieldMove_Fly
@@ -2320,7 +2320,7 @@ _0808AD24:
cmp r0, 0x1
bne _0808AD18
ldrb r0, [r4]
- ldr r1, _0808AD50 @ =gUnknown_03005CE0
+ ldr r1, _0808AD50 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
bl sub_806C994
ldrb r0, [r4]
@@ -2333,7 +2333,7 @@ _0808AD48:
pop {r0}
bx r0
.align 2, 0
-_0808AD50: .4byte gUnknown_03005CE0
+_0808AD50: .4byte gLastFieldPokeMenuOpened
_0808AD54: .4byte sub_806AEDC
thumb_func_end sub_808AD0C
@@ -2363,7 +2363,7 @@ _0808AD84: .4byte sub_808AD0C
thumb_func_start unref_sub_808AD88
unref_sub_808AD88: @ 808AD88
push {lr}
- ldr r0, _0808ADA4 @ =gUnknown_03005CE0
+ ldr r0, _0808ADA4 @ =gLastFieldPokeMenuOpened
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
@@ -2376,7 +2376,7 @@ unref_sub_808AD88: @ 808AD88
pop {r1}
bx r1
.align 2, 0
-_0808ADA4: .4byte gUnknown_03005CE0
+_0808ADA4: .4byte gLastFieldPokeMenuOpened
_0808ADA8: .4byte gPlayerParty
thumb_func_end unref_sub_808AD88
@@ -2384,7 +2384,7 @@ _0808ADA8: .4byte gPlayerParty
sub_808ADAC: @ 808ADAC
push {lr}
ldr r0, _0808ADC0 @ =gUnknown_0202FF84
- ldr r1, _0808ADC4 @ =gUnknown_03005CE0
+ ldr r1, _0808ADC4 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
str r1, [r0]
movs r0, 0x2C
@@ -2393,7 +2393,7 @@ sub_808ADAC: @ 808ADAC
bx r0
.align 2, 0
_0808ADC0: .4byte gUnknown_0202FF84
-_0808ADC4: .4byte gUnknown_03005CE0
+_0808ADC4: .4byte gLastFieldPokeMenuOpened
thumb_func_end sub_808ADAC
thumb_func_start SetUpFieldMove_Dive
@@ -2432,7 +2432,7 @@ _0808AE04: .4byte sub_808ADAC
sub_808AE08: @ 808AE08
push {lr}
ldr r0, _0808AE1C @ =gUnknown_0202FF84
- ldr r1, _0808AE20 @ =gUnknown_03005CE0
+ ldr r1, _0808AE20 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
str r1, [r0]
movs r0, 0x2B
@@ -2441,7 +2441,7 @@ sub_808AE08: @ 808AE08
bx r0
.align 2, 0
_0808AE1C: .4byte gUnknown_0202FF84
-_0808AE20: .4byte gUnknown_03005CE0
+_0808AE20: .4byte gLastFieldPokeMenuOpened
thumb_func_end sub_808AE08
thumb_func_start SetUpFieldMove_Waterfall
@@ -2648,7 +2648,7 @@ _0808AFBC:
_0808AFC2:
bl sub_808AF20
_0808AFC6:
- ldr r4, _0808B000 @ =gUnknown_03005CE0
+ ldr r4, _0808B000 @ =gLastFieldPokeMenuOpened
ldrb r0, [r4]
cmp r0, 0x5
bhi _0808AFE2
@@ -2666,7 +2666,7 @@ _0808AFE2:
strb r0, [r4]
_0808AFE6:
ldrb r0, [r5]
- ldr r1, _0808B000 @ =gUnknown_03005CE0
+ ldr r1, _0808B000 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
bl sub_806C994
ldrb r0, [r5]
@@ -2676,7 +2676,7 @@ _0808AFE6:
bl SetMainCallback2
b _0808B018
.align 2, 0
-_0808B000: .4byte gUnknown_03005CE0
+_0808B000: .4byte gLastFieldPokeMenuOpened
_0808B004: .4byte gPlayerParty
_0808B008: .4byte sub_806AEDC
_0808B00C:
@@ -2796,7 +2796,7 @@ _0808B0EC: .4byte gPaletteFade
_0808B0F0:
adds r0, r4, 0
bl sub_806CA38
- ldr r1, _0808B118 @ =gUnknown_03005CE0
+ ldr r1, _0808B118 @ =gLastFieldPokeMenuOpened
strb r0, [r1]
ldrb r1, [r1]
movs r0, 0x64
@@ -2811,7 +2811,7 @@ _0808B0F0:
bl PlaySE
b _0808B1CE
.align 2, 0
-_0808B118: .4byte gUnknown_03005CE0
+_0808B118: .4byte gLastFieldPokeMenuOpened
_0808B11C: .4byte gPlayerParty
_0808B120:
bl sub_806D5A4
@@ -2857,7 +2857,7 @@ _0808B180: .4byte sub_808B2B4
_0808B184:
adds r0, r4, 0
bl sub_806CA38
- ldr r1, _0808B1D8 @ =gUnknown_03005CE0
+ ldr r1, _0808B1D8 @ =gLastFieldPokeMenuOpened
strb r0, [r1]
movs r0, 0x5
bl PlaySE
@@ -2896,7 +2896,7 @@ _0808B1CE:
pop {r0}
bx r0
.align 2, 0
-_0808B1D8: .4byte gUnknown_03005CE0
+_0808B1D8: .4byte gLastFieldPokeMenuOpened
_0808B1DC: .4byte gUnknown_02038561
_0808B1E0: .4byte gTasks
_0808B1E4: .4byte sub_808B25C
@@ -3092,7 +3092,7 @@ sub_808B338: @ 808B338
bne _0808B384
adds r0, r5, 0
bl sub_806CA38
- ldr r1, _0808B390 @ =gUnknown_03005CE0
+ ldr r1, _0808B390 @ =gLastFieldPokeMenuOpened
strb r0, [r1]
ldrb r1, [r1]
movs r0, 0x64
@@ -3121,7 +3121,7 @@ _0808B384:
bx r0
.align 2, 0
_0808B38C: .4byte gPaletteFade
-_0808B390: .4byte gUnknown_03005CE0
+_0808B390: .4byte gLastFieldPokeMenuOpened
_0808B394: .4byte gPlayerParty
_0808B398: .4byte gSaveBlock1 + 0x2B4C
_0808B39C: .4byte sub_808B3EC
@@ -3147,7 +3147,7 @@ _0808B3B8:
cmp r0, 0x1
bne _0808B3AC
ldrb r0, [r4]
- ldr r1, _0808B3E4 @ =gUnknown_03005CE0
+ ldr r1, _0808B3E4 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
bl sub_806C994
ldrb r0, [r4]
@@ -3160,7 +3160,7 @@ _0808B3DC:
pop {r0}
bx r0
.align 2, 0
-_0808B3E4: .4byte gUnknown_03005CE0
+_0808B3E4: .4byte gLastFieldPokeMenuOpened
_0808B3E8: .4byte sub_806AEDC
thumb_func_end sub_808B3A0
@@ -3187,7 +3187,7 @@ sub_808B3EC: @ 808B3EC
movs r1, 0x1
bl RemoveBagItem
_0808B416:
- ldr r6, _0808B470 @ =gUnknown_03005CE0
+ ldr r6, _0808B470 @ =gLastFieldPokeMenuOpened
ldrb r0, [r6]
movs r5, 0x64
muls r0, r5
@@ -3224,7 +3224,7 @@ _0808B416:
_0808B464: .4byte gPaletteFade
_0808B468: .4byte gScriptResult
_0808B46C: .4byte gUnknown_0202E8F8
-_0808B470: .4byte gUnknown_03005CE0
+_0808B470: .4byte gLastFieldPokeMenuOpened
_0808B474: .4byte gPlayerParty
_0808B478: .4byte sub_808B25C
_0808B47C: .4byte sub_806AEDC
@@ -3258,7 +3258,7 @@ sub_808B4A4: @ 808B4A4
ands r0, r1
cmp r0, 0
bne _0808B4D2
- ldr r0, _0808B4DC @ =gUnknown_03005CE0
+ ldr r0, _0808B4DC @ =gLastFieldPokeMenuOpened
ldrb r0, [r0]
ldr r1, _0808B4E0 @ =gScriptItemId
ldrh r1, [r1]
@@ -3277,7 +3277,7 @@ _0808B4D2:
bx r0
.align 2, 0
_0808B4D8: .4byte gPaletteFade
-_0808B4DC: .4byte gUnknown_03005CE0
+_0808B4DC: .4byte gLastFieldPokeMenuOpened
_0808B4E0: .4byte gScriptItemId
_0808B4E4: .4byte gTasks
_0808B4E8: .4byte sub_808B4EC
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 801c941d1..bcf005f2f 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -7972,7 +7972,7 @@ _0809988A:
strb r0, [r2, 0x1]
ldr r0, [r4]
ldr r1, [r0]
- ldr r0, _080998D4 @ =gUnknown_083B6F5C
+ ldr r0, _080998D4 @ =gSpriteAffineAnimTable_83B6F5C
str r0, [r1, 0x10]
ldr r0, [r4]
ldr r0, [r0]
@@ -7986,7 +7986,7 @@ _080998C0:
_080998C8: .4byte gUnknown_083B6DB4
_080998CC: .4byte 0x000010cc
_080998D0: .4byte 0x00001034
-_080998D4: .4byte gUnknown_083B6F5C
+_080998D4: .4byte gSpriteAffineAnimTable_83B6F5C
thumb_func_end sub_809981C
thumb_func_start sub_80998D8
diff --git a/asm/reset_rtc_screen.s b/asm/reset_rtc_screen.s
index 1b58b417b..2fbc559c8 100644
--- a/asm/reset_rtc_screen.s
+++ b/asm/reset_rtc_screen.s
@@ -1238,7 +1238,7 @@ _0806AE54: .4byte 0x00004040
_0806AE58: .4byte gSystemText_ClockResetDataSave
_0806AE5C:
movs r0, 0
- bl sub_8125D44
+ bl TrySavingData
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/rom3.s b/asm/rom3.s
deleted file mode 100644
index 94862459b..000000000
--- a/asm/rom3.s
+++ /dev/null
@@ -1,3411 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_800B858
-sub_800B858: @ 800B858
- push {lr}
- ldr r0, _0800B87C @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0800B876
- bl OpenLink
- ldr r0, _0800B880 @ =sub_8083C50
- movs r1, 0
- bl CreateTask
- bl sub_800BF28
-_0800B876:
- pop {r0}
- bx r0
- .align 2, 0
-_0800B87C: .4byte gBattleTypeFlags
-_0800B880: .4byte sub_8083C50
- thumb_func_end sub_800B858
-
- thumb_func_start sub_800B884
-sub_800B884: @ 800B884
- push {r4-r7,lr}
- sub sp, 0x14
- ldr r0, _0800B920 @ =gUnknown_030042D4
- ldr r1, _0800B924 @ =nullsub_41
- str r1, [r0]
- movs r0, 0
- str r0, [sp, 0x10]
- movs r1, 0
- ldr r7, _0800B928 @ =gUnknown_03004330
- ldr r6, _0800B92C @ =gUnknown_02024E60
- movs r2, 0
- ldr r5, _0800B930 @ =gUnknown_02024E64
- ldr r4, _0800B934 @ =nullsub_91
- ldr r3, _0800B938 @ =gUnknown_02024A72
-_0800B8A0:
- lsls r0, r1, 2
- adds r0, r7
- str r4, [r0]
- adds r1, r3
- movs r0, 0xFF
- strb r0, [r1]
- ldr r0, [sp, 0x10]
- adds r0, r6
- strb r2, [r0]
- ldr r0, [sp, 0x10]
- adds r0, r5
- strb r2, [r0]
- ldr r0, [sp, 0x10]
- adds r0, 0x1
- str r0, [sp, 0x10]
- adds r1, r0, 0
- cmp r1, 0x3
- ble _0800B8A0
- bl sub_800B858
- ldr r0, _0800B93C @ =gUnknown_02024A64
- movs r5, 0
- str r5, [r0]
- bl sub_8075624
- bl sub_8040710
- bl BattleAI_HandleItemUseBeforeAISetup
- ldr r0, _0800B940 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0800B90E
- bl ZeroEnemyPartyMons
- ldr r4, _0800B944 @ =gEnemyParty
- movs r1, 0x8F
- lsls r1, 1
- str r5, [sp]
- str r5, [sp, 0x4]
- str r5, [sp, 0x8]
- str r5, [sp, 0xC]
- adds r0, r4, 0
- movs r2, 0x2
- movs r3, 0x20
- bl CreateMon
- str r5, [sp, 0x10]
- adds r0, r4, 0
- movs r1, 0xC
- add r2, sp, 0x10
- bl SetMonData
-_0800B90E:
- ldr r0, _0800B948 @ =gUnknown_020239FC
- str r5, [r0]
- ldr r0, _0800B94C @ =gUnknown_02024C78
- strb r5, [r0]
- add sp, 0x14
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800B920: .4byte gUnknown_030042D4
-_0800B924: .4byte nullsub_41
-_0800B928: .4byte gUnknown_03004330
-_0800B92C: .4byte gUnknown_02024E60
-_0800B930: .4byte gUnknown_02024E64
-_0800B934: .4byte nullsub_91
-_0800B938: .4byte gUnknown_02024A72
-_0800B93C: .4byte gUnknown_02024A64
-_0800B940: .4byte gBattleTypeFlags
-_0800B944: .4byte gEnemyParty
-_0800B948: .4byte gUnknown_020239FC
-_0800B94C: .4byte gUnknown_02024C78
- thumb_func_end sub_800B884
-
- thumb_func_start sub_800B950
-sub_800B950: @ 800B950
- push {r4,r5,lr}
- ldr r0, _0800B964 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0800B968
- bl sub_800BA78
- b _0800B96C
- .align 2, 0
-_0800B964: .4byte gBattleTypeFlags
-_0800B968:
- bl sub_800B9A8
-_0800B96C:
- bl sub_800BD54
- ldr r0, _0800B9A0 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- bne _0800B99A
- movs r4, 0
- ldr r0, _0800B9A4 @ =gUnknown_02024A68
- ldrb r1, [r0]
- cmp r4, r1
- bge _0800B99A
- adds r5, r0, 0
-_0800B988:
- lsls r0, r4, 24
- lsrs r0, 24
- movs r1, 0
- bl sub_8094978
- adds r4, 0x1
- ldrb r0, [r5]
- cmp r4, r0
- blt _0800B988
-_0800B99A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0800B9A0: .4byte gBattleTypeFlags
-_0800B9A4: .4byte gUnknown_02024A68
- thumb_func_end sub_800B950
-
- thumb_func_start sub_800B9A8
-sub_800B9A8: @ 800B9A8
- push {r4,lr}
- ldr r0, _0800B9CC @ =gBattleTypeFlags
- ldrh r2, [r0]
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- bne _0800BA28
- ldr r1, _0800B9D0 @ =gUnknown_030042D4
- ldr r0, _0800B9D4 @ =sub_8010800
- str r0, [r1]
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _0800B9E0
- ldr r1, _0800B9D8 @ =gUnknown_03004330
- ldr r0, _0800B9DC @ =sub_812B468
- b _0800B9FC
- .align 2, 0
-_0800B9CC: .4byte gBattleTypeFlags
-_0800B9D0: .4byte gUnknown_030042D4
-_0800B9D4: .4byte sub_8010800
-_0800B9D8: .4byte gUnknown_03004330
-_0800B9DC: .4byte sub_812B468
-_0800B9E0:
- movs r0, 0x80
- lsls r0, 2
- ands r0, r2
- cmp r0, 0
- beq _0800B9F8
- ldr r1, _0800B9F0 @ =gUnknown_03004330
- ldr r0, _0800B9F4 @ =sub_8137224
- b _0800B9FC
- .align 2, 0
-_0800B9F0: .4byte gUnknown_03004330
-_0800B9F4: .4byte sub_8137224
-_0800B9F8:
- ldr r1, _0800BA14 @ =gUnknown_03004330
- ldr r0, _0800BA18 @ =sub_802BF74
-_0800B9FC:
- str r0, [r1]
- adds r2, r1, 0
- ldr r1, _0800BA1C @ =gUnknown_02024A72
- movs r0, 0
- strb r0, [r1]
- ldr r0, _0800BA20 @ =sub_8032AE0
- str r0, [r2, 0x4]
- movs r0, 0x1
- strb r0, [r1, 0x1]
- ldr r1, _0800BA24 @ =gUnknown_02024A68
- movs r0, 0x2
- b _0800BA52
- .align 2, 0
-_0800BA14: .4byte gUnknown_03004330
-_0800BA18: .4byte sub_802BF74
-_0800BA1C: .4byte gUnknown_02024A72
-_0800BA20: .4byte sub_8032AE0
-_0800BA24: .4byte gUnknown_02024A68
-_0800BA28:
- ldr r1, _0800BA5C @ =gUnknown_030042D4
- ldr r0, _0800BA60 @ =sub_8010800
- str r0, [r1]
- ldr r2, _0800BA64 @ =gUnknown_03004330
- ldr r4, _0800BA68 @ =sub_802BF74
- str r4, [r2]
- ldr r1, _0800BA6C @ =gUnknown_02024A72
- movs r0, 0
- strb r0, [r1]
- ldr r3, _0800BA70 @ =sub_8032AE0
- str r3, [r2, 0x4]
- movs r0, 0x1
- strb r0, [r1, 0x1]
- str r4, [r2, 0x8]
- movs r0, 0x2
- strb r0, [r1, 0x2]
- str r3, [r2, 0xC]
- movs r0, 0x3
- strb r0, [r1, 0x3]
- ldr r1, _0800BA74 @ =gUnknown_02024A68
- movs r0, 0x4
-_0800BA52:
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800BA5C: .4byte gUnknown_030042D4
-_0800BA60: .4byte sub_8010800
-_0800BA64: .4byte gUnknown_03004330
-_0800BA68: .4byte sub_802BF74
-_0800BA6C: .4byte gUnknown_02024A72
-_0800BA70: .4byte sub_8032AE0
-_0800BA74: .4byte gUnknown_02024A68
- thumb_func_end sub_800B9A8
-
- thumb_func_start sub_800BA78
-sub_800BA78: @ 800BA78
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r6, _0800BAB8 @ =gBattleTypeFlags
- ldrh r1, [r6]
- movs r5, 0x1
- movs r4, 0x1
- ands r4, r1
- cmp r4, 0
- bne _0800BB04
- movs r0, 0x4
- ands r0, r1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- beq _0800BAD8
- ldr r1, _0800BABC @ =gUnknown_030042D4
- ldr r0, _0800BAC0 @ =sub_8010800
- str r0, [r1]
- ldr r2, _0800BAC4 @ =gUnknown_03004330
- ldr r0, _0800BAC8 @ =sub_802BF74
- str r0, [r2]
- ldr r1, _0800BACC @ =gUnknown_02024A72
- strb r4, [r1]
- ldr r0, _0800BAD0 @ =sub_8037510
- str r0, [r2, 0x4]
- strb r5, [r1, 0x1]
- ldr r1, _0800BAD4 @ =gUnknown_02024A68
- movs r0, 0x2
- b _0800BD3E
- .align 2, 0
-_0800BAB8: .4byte gBattleTypeFlags
-_0800BABC: .4byte gUnknown_030042D4
-_0800BAC0: .4byte sub_8010800
-_0800BAC4: .4byte gUnknown_03004330
-_0800BAC8: .4byte sub_802BF74
-_0800BACC: .4byte gUnknown_02024A72
-_0800BAD0: .4byte sub_8037510
-_0800BAD4: .4byte gUnknown_02024A68
-_0800BAD8:
- ldr r2, _0800BAF0 @ =gUnknown_03004330
- ldr r0, _0800BAF4 @ =sub_802BF74
- str r0, [r2, 0x4]
- ldr r1, _0800BAF8 @ =gUnknown_02024A72
- strb r3, [r1, 0x1]
- ldr r0, _0800BAFC @ =sub_8037510
- str r0, [r2]
- strb r5, [r1]
- ldr r1, _0800BB00 @ =gUnknown_02024A68
- movs r0, 0x2
- b _0800BD3E
- .align 2, 0
-_0800BAF0: .4byte gUnknown_03004330
-_0800BAF4: .4byte sub_802BF74
-_0800BAF8: .4byte gUnknown_02024A72
-_0800BAFC: .4byte sub_8037510
-_0800BB00: .4byte gUnknown_02024A68
-_0800BB04:
- movs r0, 0x41
- ands r0, r1
- cmp r0, 0x1
- bne _0800BB90
- movs r6, 0x4
- movs r0, 0x4
- ands r0, r1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- beq _0800BB58
- ldr r1, _0800BB40 @ =gUnknown_030042D4
- ldr r0, _0800BB44 @ =sub_8010800
- str r0, [r1]
- ldr r2, _0800BB48 @ =gUnknown_03004330
- ldr r4, _0800BB4C @ =sub_802BF74
- str r4, [r2]
- ldr r1, _0800BB50 @ =gUnknown_02024A72
- movs r0, 0
- strb r0, [r1]
- ldr r3, _0800BB54 @ =sub_8037510
- str r3, [r2, 0x4]
- strb r5, [r1, 0x1]
- str r4, [r2, 0x8]
- movs r0, 0x2
- strb r0, [r1, 0x2]
- str r3, [r2, 0xC]
- movs r0, 0x3
- strb r0, [r1, 0x3]
- b _0800BB74
- .align 2, 0
-_0800BB40: .4byte gUnknown_030042D4
-_0800BB44: .4byte sub_8010800
-_0800BB48: .4byte gUnknown_03004330
-_0800BB4C: .4byte sub_802BF74
-_0800BB50: .4byte gUnknown_02024A72
-_0800BB54: .4byte sub_8037510
-_0800BB58:
- ldr r2, _0800BB7C @ =gUnknown_03004330
- ldr r0, _0800BB80 @ =sub_802BF74
- str r0, [r2, 0x4]
- ldr r1, _0800BB84 @ =gUnknown_02024A72
- strb r3, [r1, 0x1]
- ldr r3, _0800BB88 @ =sub_8037510
- str r3, [r2]
- strb r5, [r1]
- str r0, [r2, 0xC]
- movs r0, 0x2
- strb r0, [r1, 0x3]
- str r3, [r2, 0x8]
- movs r0, 0x3
- strb r0, [r1, 0x2]
-_0800BB74:
- ldr r0, _0800BB8C @ =gUnknown_02024A68
- strb r6, [r0]
- b _0800BD40
- .align 2, 0
-_0800BB7C: .4byte gUnknown_03004330
-_0800BB80: .4byte sub_802BF74
-_0800BB84: .4byte gUnknown_02024A72
-_0800BB88: .4byte sub_8037510
-_0800BB8C: .4byte gUnknown_02024A68
-_0800BB90:
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r5, r0, 24
- ldrh r1, [r6]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0800BBA8
- ldr r1, _0800BBD0 @ =gUnknown_030042D4
- ldr r0, _0800BBD4 @ =sub_8010800
- str r0, [r1]
-_0800BBA8:
- movs r0, 0
- mov r10, r0
- ldr r1, _0800BBD8 @ =gLinkPlayers
- mov r12, r1
- ldr r7, _0800BBDC @ =gUnknown_02024A72
- mov r8, r0
- ldr r6, _0800BBE0 @ =gUnknown_02024A6A
- movs r4, 0
- movs r2, 0x3
- mov r9, r2
-_0800BBBC:
- mov r1, r12
- adds r0, r4, r1
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bgt _0800BBE4
- cmp r0, 0x1
- bge _0800BBFC
- cmp r0, 0
- beq _0800BBE8
- b _0800BC06
- .align 2, 0
-_0800BBD0: .4byte gUnknown_030042D4
-_0800BBD4: .4byte sub_8010800
-_0800BBD8: .4byte gLinkPlayers
-_0800BBDC: .4byte gUnknown_02024A72
-_0800BBE0: .4byte gUnknown_02024A6A
-_0800BBE4:
- cmp r0, 0x3
- bne _0800BC06
-_0800BBE8:
- ldr r0, _0800BBF8 @ =gLinkPlayers
- adds r0, r4, r0
- ldrb r0, [r0, 0x18]
- movs r1, 0
- bl sub_8094978
- b _0800BC06
- .align 2, 0
-_0800BBF8: .4byte gLinkPlayers
-_0800BBFC:
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x1
- bl sub_8094978
-_0800BC06:
- cmp r10, r5
- bne _0800BC56
- ldr r0, _0800BC2C @ =gLinkPlayers
- adds r3, r4, r0
- ldrh r1, [r3, 0x18]
- lsls r1, 2
- ldr r2, _0800BC30 @ =gUnknown_03004330
- adds r1, r2
- ldr r2, _0800BC34 @ =sub_802BF74
- str r2, [r1]
- ldrh r1, [r3, 0x18]
- mov r12, r0
- cmp r1, 0x2
- bgt _0800BC38
- cmp r1, 0x1
- bge _0800BC4C
- cmp r1, 0
- beq _0800BC3C
- b _0800BD2C
- .align 2, 0
-_0800BC2C: .4byte gLinkPlayers
-_0800BC30: .4byte gUnknown_03004330
-_0800BC34: .4byte sub_802BF74
-_0800BC38:
- cmp r1, 0x3
- bne _0800BD2C
-_0800BC3C:
- mov r1, r12
- adds r0, r4, r1
- ldrh r1, [r0, 0x18]
- adds r1, r7
- mov r2, r8
- strb r2, [r1]
- ldrh r0, [r0, 0x18]
- b _0800BD12
-_0800BC4C:
- adds r1, r7
- movs r0, 0x2
- strb r0, [r1]
- ldrh r0, [r3, 0x18]
- b _0800BD24
-_0800BC56:
- ldr r2, _0800BC7C @ =gLinkPlayers
- adds r0, r4, r2
- ldrh r1, [r0, 0x18]
- movs r3, 0x1
- adds r0, r3, 0
- ands r0, r1
- mov r12, r2
- cmp r0, 0
- bne _0800BC80
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- add r0, r12
- ldrh r1, [r0, 0x18]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _0800BC92
- b _0800BCD8
- .align 2, 0
-_0800BC7C: .4byte gLinkPlayers
-_0800BC80:
- lsls r0, r5, 3
- subs r0, r5
- lsls r0, 2
- add r0, r12
- ldrh r1, [r0, 0x18]
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _0800BCD8
-_0800BC92:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- lsls r0, 2
- ldr r1, _0800BCB4 @ =gUnknown_03004330
- adds r0, r1
- ldr r1, _0800BCB8 @ =sub_811DA78
- str r1, [r0]
- ldrh r1, [r2, 0x18]
- cmp r1, 0x2
- bgt _0800BCBC
- cmp r1, 0x1
- bge _0800BCD0
- cmp r1, 0
- beq _0800BCC0
- b _0800BD2C
- .align 2, 0
-_0800BCB4: .4byte gUnknown_03004330
-_0800BCB8: .4byte sub_811DA78
-_0800BCBC:
- cmp r1, 0x3
- bne _0800BD2C
-_0800BCC0:
- mov r2, r12
- adds r0, r4, r2
- ldrh r1, [r0, 0x18]
- adds r1, r7
- mov r2, r8
- strb r2, [r1]
- ldrh r0, [r0, 0x18]
- b _0800BD12
-_0800BCD0:
- adds r1, r7
- movs r0, 0x2
- strb r0, [r1]
- b _0800BD22
-_0800BCD8:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- lsls r0, 2
- ldr r1, _0800BCF8 @ =gUnknown_03004330
- adds r0, r1
- ldr r1, _0800BCFC @ =sub_8037510
- str r1, [r0]
- ldrh r0, [r2, 0x18]
- cmp r0, 0x2
- bgt _0800BD00
- cmp r0, 0x1
- bge _0800BD1C
- cmp r0, 0
- beq _0800BD04
- b _0800BD2C
- .align 2, 0
-_0800BCF8: .4byte gUnknown_03004330
-_0800BCFC: .4byte sub_8037510
-_0800BD00:
- cmp r0, 0x3
- bne _0800BD2C
-_0800BD04:
- mov r0, r12
- adds r2, r4, r0
- ldrh r0, [r2, 0x18]
- adds r0, r7
- movs r1, 0x1
- strb r1, [r0]
- ldrh r0, [r2, 0x18]
-_0800BD12:
- lsls r0, 1
- adds r0, r6
- mov r1, r8
- strh r1, [r0]
- b _0800BD2C
-_0800BD1C:
- adds r0, r7
- mov r1, r9
- strb r1, [r0]
-_0800BD22:
- ldrh r0, [r2, 0x18]
-_0800BD24:
- lsls r0, 1
- adds r0, r6
- mov r2, r9
- strh r2, [r0]
-_0800BD2C:
- adds r4, 0x1C
- movs r0, 0x1
- add r10, r0
- mov r1, r10
- cmp r1, 0x3
- bgt _0800BD3A
- b _0800BBBC
-_0800BD3A:
- ldr r1, _0800BD50 @ =gUnknown_02024A68
- movs r0, 0x4
-_0800BD3E:
- strb r0, [r1]
-_0800BD40:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800BD50: .4byte gUnknown_02024A68
- thumb_func_end sub_800BA78
-
- thumb_func_start sub_800BD54
-sub_800BD54: @ 800BD54
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, _0800BD74 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0800BD6C
- b _0800BE88
-_0800BD6C:
- movs r0, 0
- mov r8, r0
- b _0800BE7E
- .align 2, 0
-_0800BD74: .4byte gBattleTypeFlags
-_0800BD78:
- movs r5, 0
- movs r0, 0x1
- add r0, r8
- mov r10, r0
- ldr r0, _0800BDA4 @ =gUnknown_02024A72
- add r0, r8
- mov r9, r0
- mov r0, r8
- lsls r6, r0, 1
- movs r7, 0
-_0800BD8C:
- mov r0, r8
- cmp r0, 0x1
- bgt _0800BDF4
- mov r0, r9
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0800BDAC
- ldr r0, _0800BDA8 @ =gPlayerParty
- b _0800BDAE
- .align 2, 0
-_0800BDA4: .4byte gUnknown_02024A72
-_0800BDA8: .4byte gPlayerParty
-_0800BDAC:
- ldr r0, _0800BDEC @ =gEnemyParty
-_0800BDAE:
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0800BE74
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- cmp r0, 0
- beq _0800BE74
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _0800BE74
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0800BE74
- ldr r0, _0800BDF0 @ =gUnknown_02024A6A
- adds r0, r6, r0
- strh r5, [r0]
- b _0800BE7C
- .align 2, 0
-_0800BDEC: .4byte gEnemyParty
-_0800BDF0: .4byte gUnknown_02024A6A
-_0800BDF4:
- mov r0, r9
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0800BE1C
- ldr r0, _0800BE18 @ =gPlayerParty
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0800BE74
- adds r0, r4, 0
- movs r1, 0xB
- b _0800BE30
- .align 2, 0
-_0800BE18: .4byte gPlayerParty
-_0800BE1C:
- ldr r0, _0800BE6C @ =gEnemyParty
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _0800BE74
- adds r0, r4, 0
- movs r1, 0x41
-_0800BE30:
- bl GetMonData
- cmp r0, 0
- beq _0800BE74
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _0800BE74
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0800BE74
- ldr r1, _0800BE70 @ =gUnknown_02024A6A
- mov r0, r8
- subs r0, 0x2
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, r5
- beq _0800BE74
- adds r0, r6, r1
- strh r5, [r0]
- b _0800BE7C
- .align 2, 0
-_0800BE6C: .4byte gEnemyParty
-_0800BE70: .4byte gUnknown_02024A6A
-_0800BE74:
- adds r7, 0x64
- adds r5, 0x1
- cmp r5, 0x5
- ble _0800BD8C
-_0800BE7C:
- mov r8, r10
-_0800BE7E:
- ldr r0, _0800BE98 @ =gUnknown_02024A68
- ldrb r0, [r0]
- cmp r8, r0
- bge _0800BE88
- b _0800BD78
-_0800BE88:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800BE98: .4byte gUnknown_02024A68
- thumb_func_end sub_800BD54
-
- thumb_func_start dp01_prepare_buffer
-dp01_prepare_buffer: @ 800BE9C
- push {r4-r6,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r3, r0, 24
- adds r5, r3, 0
- lsls r2, 16
- lsrs r2, 16
- ldr r0, _0800BEC4 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0800BEC8
- adds r0, r3, 0
- adds r1, r2, 0
- adds r2, r4, 0
- bl dp01_prepare_buffer_wireless_probably
- b _0800BF1A
- .align 2, 0
-_0800BEC4: .4byte gBattleTypeFlags
-_0800BEC8:
- cmp r5, 0
- beq _0800BED2
- cmp r5, 0x1
- beq _0800BEFC
- b _0800BF1A
-_0800BED2:
- movs r3, 0
- cmp r3, r2
- bge _0800BF1A
- ldr r6, _0800BEF4 @ =gUnknown_02023A60
- ldr r5, _0800BEF8 @ =gUnknown_02024A60
-_0800BEDC:
- ldrb r0, [r5]
- lsls r0, 9
- adds r0, r3, r0
- adds r0, r6
- ldrb r1, [r4]
- strb r1, [r0]
- adds r4, 0x1
- adds r3, 0x1
- cmp r3, r2
- blt _0800BEDC
- b _0800BF1A
- .align 2, 0
-_0800BEF4: .4byte gUnknown_02023A60
-_0800BEF8: .4byte gUnknown_02024A60
-_0800BEFC:
- movs r3, 0
- cmp r3, r2
- bge _0800BF1A
- ldr r6, _0800BF20 @ =gUnknown_02024260
- ldr r5, _0800BF24 @ =gUnknown_02024A60
-_0800BF06:
- ldrb r0, [r5]
- lsls r0, 9
- adds r0, r3, r0
- adds r0, r6
- ldrb r1, [r4]
- strb r1, [r0]
- adds r4, 0x1
- adds r3, 0x1
- cmp r3, r2
- blt _0800BF06
-_0800BF1A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800BF20: .4byte gUnknown_02024260
-_0800BF24: .4byte gUnknown_02024A60
- thumb_func_end dp01_prepare_buffer
-
- thumb_func_start sub_800BF28
-sub_800BF28: @ 800BF28
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r0, _0800BFD0 @ =sub_800C1A8
- movs r1, 0
- bl CreateTask
- ldr r2, _0800BFD4 @ =gUnknown_020238C4
- strb r0, [r2]
- ldr r5, _0800BFD8 @ =gTasks
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r6, 0
- movs r4, 0
- strh r4, [r0, 0x1E]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r4, [r0, 0x20]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r4, [r0, 0x22]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r4, [r0, 0x24]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r4, [r0, 0x26]
- ldr r0, _0800BFDC @ =sub_800C47C
- movs r1, 0
- bl CreateTask
- ldr r2, _0800BFE0 @ =gUnknown_020238C5
- strb r0, [r2]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r4, [r0, 0x20]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r4, [r0, 0x22]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r4, [r0, 0x24]
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r4, [r0, 0x26]
- ldr r0, _0800BFE4 @ =gUnknown_020238C6
- strb r6, [r0]
- mov r0, sp
- strh r4, [r0]
- ldr r1, _0800BFE8 @ =0x02014000
- ldr r2, _0800BFEC @ =0x01001000
- bl CpuSet
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800BFD0: .4byte sub_800C1A8
-_0800BFD4: .4byte gUnknown_020238C4
-_0800BFD8: .4byte gTasks
-_0800BFDC: .4byte sub_800C47C
-_0800BFE0: .4byte gUnknown_020238C5
-_0800BFE4: .4byte gUnknown_020238C6
-_0800BFE8: .4byte 0x02014000
-_0800BFEC: .4byte 0x01001000
- thumb_func_end sub_800BF28
-
- thumb_func_start dp01_prepare_buffer_wireless_probably
-dp01_prepare_buffer_wireless_probably: @ 800BFF0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r10, r2
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- movs r1, 0x3
- mov r0, r8
- bics r0, r1
- adds r0, 0x4
- mov r9, r0
- ldr r2, _0800C168 @ =gTasks
- ldr r3, _0800C16C @ =gUnknown_020238C4
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r4, r0, r2
- movs r1, 0x24
- ldrsh r0, [r4, r1]
- add r0, r9
- adds r0, 0x9
- movs r1, 0x80
- lsls r1, 5
- adds r5, r2, 0
- cmp r0, r1
- ble _0800C042
- ldrh r0, [r4, 0x24]
- movs r2, 0
- strh r0, [r4, 0x20]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- strh r2, [r0, 0x24]
-_0800C042:
- ldr r4, _0800C170 @ =0x02000000
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r2, 0x24
- ldrsh r0, [r0, r2]
- movs r7, 0xA0
- lsls r7, 9
- adds r0, r7
- adds r0, r4
- strb r6, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r1, 0x24
- ldrsh r0, [r0, r1]
- ldr r2, _0800C174 @ =0x00014001
- adds r0, r2
- adds r0, r4
- ldr r1, _0800C178 @ =gUnknown_02024A60
- ldrb r1, [r1]
- strb r1, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r7, 0x24
- ldrsh r0, [r0, r7]
- ldr r1, _0800C17C @ =0x00014002
- adds r0, r1
- adds r0, r4
- ldr r1, _0800C180 @ =gUnknown_02024C07
- ldrb r1, [r1]
- strb r1, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r2, 0x24
- ldrsh r0, [r0, r2]
- ldr r7, _0800C184 @ =0x00014003
- adds r0, r7
- adds r0, r4
- ldr r1, _0800C188 @ =gUnknown_02024C08
- ldrb r1, [r1]
- strb r1, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r1, 0x24
- ldrsh r0, [r0, r1]
- ldr r2, _0800C18C @ =0x00014004
- adds r0, r2
- adds r0, r4
- mov r7, r9
- strb r7, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r2, 0x24
- ldrsh r1, [r0, r2]
- ldr r7, _0800C190 @ =0x00014005
- adds r1, r7
- adds r1, r4
- movs r0, 0xFF
- lsls r0, 8
- mov r2, r9
- ands r0, r2
- asrs r0, 8
- strb r0, [r1]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r7, 0x24
- ldrsh r0, [r0, r7]
- ldr r1, _0800C194 @ =0x00014006
- adds r0, r1
- adds r0, r4
- ldr r1, _0800C198 @ =gUnknown_02024C0C
- ldrb r1, [r1]
- strb r1, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r5
- movs r2, 0x24
- ldrsh r0, [r0, r2]
- ldr r7, _0800C19C @ =0x00014007
- adds r0, r7
- adds r0, r4
- ldr r1, _0800C1A0 @ =gUnknown_02024C0A
- ldrb r1, [r1]
- strb r1, [r0]
- movs r2, 0
- cmp r2, r8
- bge _0800C146
- mov r12, r4
- adds r6, r3, 0
- ldr r4, _0800C1A4 @ =0x00014008
-_0800C122:
- ldrb r1, [r6]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- ldr r1, _0800C168 @ =gTasks
- adds r0, r1
- movs r7, 0x24
- ldrsh r1, [r0, r7]
- adds r0, r2, r4
- adds r1, r0
- add r1, r12
- mov r7, r10
- adds r0, r7, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r2, 0x1
- cmp r2, r8
- blt _0800C122
-_0800C146:
- ldrb r0, [r3]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r5
- ldrh r0, [r1, 0x24]
- add r0, r9
- adds r0, 0x8
- strh r0, [r1, 0x24]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C168: .4byte gTasks
-_0800C16C: .4byte gUnknown_020238C4
-_0800C170: .4byte 0x02000000
-_0800C174: .4byte 0x00014001
-_0800C178: .4byte gUnknown_02024A60
-_0800C17C: .4byte 0x00014002
-_0800C180: .4byte gUnknown_02024C07
-_0800C184: .4byte 0x00014003
-_0800C188: .4byte gUnknown_02024C08
-_0800C18C: .4byte 0x00014004
-_0800C190: .4byte 0x00014005
-_0800C194: .4byte 0x00014006
-_0800C198: .4byte gUnknown_02024C0C
-_0800C19C: .4byte 0x00014007
-_0800C1A0: .4byte gUnknown_02024C0A
-_0800C1A4: .4byte 0x00014008
- thumb_func_end dp01_prepare_buffer_wireless_probably
-
- thumb_func_start sub_800C1A8
-sub_800C1A8: @ 800C1A8
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, _0800C1D0 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r2, 0x1E
- ldrsh r0, [r0, r2]
- adds r7, r1, 0
- cmp r0, 0x5
- bls _0800C1C4
- b _0800C354
-_0800C1C4:
- lsls r0, 2
- ldr r1, _0800C1D4 @ =_0800C1D8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0800C1D0: .4byte gTasks
-_0800C1D4: .4byte _0800C1D8
- .align 2, 0
-_0800C1D8:
- .4byte _0800C1F0
- .4byte _0800C204
- .4byte _0800C220
- .4byte _0800C25C
- .4byte _0800C2E6
- .4byte _0800C338
-_0800C1F0:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r7
- movs r1, 0x64
- strh r1, [r0, 0x1C]
- ldrh r1, [r0, 0x1E]
- adds r1, 0x1
- strh r1, [r0, 0x1E]
- b _0800C354
-_0800C204:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r1, r0, r7
- ldrh r0, [r1, 0x1C]
- subs r0, 0x1
- strh r0, [r1, 0x1C]
- lsls r0, 16
- cmp r0, 0
- beq _0800C21A
- b _0800C354
-_0800C21A:
- ldrh r0, [r1, 0x1E]
- adds r0, 0x1
- b _0800C352
-_0800C220:
- bl GetLinkPlayerCount_2
- bl IsLinkMaster
- lsls r0, 24
- cmp r0, 0
- beq _0800C248
- bl sub_8007F4C
- ldr r0, _0800C244 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x1E]
- adds r0, 0x1
- b _0800C352
- .align 2, 0
-_0800C244: .4byte gTasks
-_0800C248:
- ldr r0, _0800C258 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x1E]
- adds r0, 0x1
- b _0800C352
- .align 2, 0
-_0800C258: .4byte gTasks
-_0800C25C:
- lsls r1, r4, 2
- adds r0, r1, r4
- lsls r0, 3
- adds r2, r0, r7
- movs r5, 0x26
- ldrsh r3, [r2, r5]
- movs r0, 0x24
- ldrsh r6, [r2, r0]
- mov r12, r6
- cmp r3, r12
- beq _0800C354
- ldrh r0, [r2, 0x22]
- movs r6, 0x22
- ldrsh r5, [r2, r6]
- cmp r5, 0
- bne _0800C2E0
- cmp r3, r12
- ble _0800C28C
- movs r6, 0x20
- ldrsh r0, [r2, r6]
- cmp r3, r0
- bne _0800C28C
- strh r5, [r2, 0x20]
- strh r5, [r2, 0x26]
-_0800C28C:
- ldr r5, _0800C2D4 @ =0x02000000
- adds r4, r1, r4
- lsls r4, 3
- adds r4, r7
- movs r0, 0x26
- ldrsh r2, [r4, r0]
- ldr r1, _0800C2D8 @ =0x00014004
- adds r0, r2, r1
- adds r0, r5
- ldrb r1, [r0]
- ldr r6, _0800C2DC @ =0x00014005
- adds r2, r6
- adds r2, r5
- ldrb r0, [r2]
- lsls r0, 8
- orrs r1, r0
- adds r1, 0x8
- lsls r1, 16
- lsrs r6, r1, 16
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x26
- ldrsh r1, [r4, r2]
- movs r2, 0xA0
- lsls r2, 9
- adds r5, r2
- adds r1, r5
- adds r2, r6, 0
- bl SendBlock
- ldrh r0, [r4, 0x1E]
- adds r0, 0x1
- strh r0, [r4, 0x1E]
- b _0800C354
- .align 2, 0
-_0800C2D4: .4byte 0x02000000
-_0800C2D8: .4byte 0x00014004
-_0800C2DC: .4byte 0x00014005
-_0800C2E0:
- subs r0, 0x1
- strh r0, [r2, 0x22]
- b _0800C354
-_0800C2E6:
- bl sub_8007ECC
- lsls r0, 24
- cmp r0, 0
- beq _0800C354
- ldr r2, _0800C328 @ =0x02000000
- ldr r0, _0800C32C @ =gTasks
- lsls r3, r4, 2
- adds r3, r4
- lsls r3, 3
- adds r3, r0
- movs r4, 0x26
- ldrsh r1, [r3, r4]
- ldr r5, _0800C330 @ =0x00014004
- adds r0, r1, r5
- adds r0, r2
- ldrb r0, [r0]
- ldr r6, _0800C334 @ =0x00014005
- adds r1, r6
- adds r1, r2
- ldrb r1, [r1]
- lsls r1, 8
- movs r2, 0x1
- strh r2, [r3, 0x22]
- orrs r0, r1
- ldrh r1, [r3, 0x26]
- adds r0, r1
- adds r0, 0x8
- strh r0, [r3, 0x26]
- movs r0, 0x3
- strh r0, [r3, 0x1E]
- b _0800C354
- .align 2, 0
-_0800C328: .4byte 0x02000000
-_0800C32C: .4byte gTasks
-_0800C330: .4byte 0x00014004
-_0800C334: .4byte 0x00014005
-_0800C338:
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r1, r0, r7
- ldrh r0, [r1, 0x22]
- subs r0, 0x1
- strh r0, [r1, 0x22]
- lsls r0, 16
- cmp r0, 0
- bne _0800C354
- movs r0, 0x1
- strh r0, [r1, 0x22]
- movs r0, 0x3
-_0800C352:
- strh r0, [r1, 0x1E]
-_0800C354:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_800C1A8
-
- thumb_func_start sub_800C35C
-sub_800C35C: @ 800C35C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, _0800C38C @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _0800C458
- ldr r0, _0800C390 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0800C458
- ldr r0, _0800C394 @ =gLinkPlayers
- ldr r1, [r0, 0x14]
- ldr r0, _0800C398 @ =0x00002211
- cmp r1, r0
- bne _0800C458
- movs r4, 0
- ldr r0, _0800C39C @ =gBlockRecvBuffer
- mov r10, r0
- b _0800C44C
- .align 2, 0
-_0800C38C: .4byte gReceivedRemoteLinkPlayers
-_0800C390: .4byte gBattleTypeFlags
-_0800C394: .4byte gLinkPlayers
-_0800C398: .4byte 0x00002211
-_0800C39C: .4byte gBlockRecvBuffer
-_0800C3A0:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0800C468 @ =gBitTable
- lsls r1, r4, 2
- adds r1, r2
- ldr r1, [r1]
- ands r0, r1
- adds r1, r4, 0x1
- mov r9, r1
- cmp r0, 0
- beq _0800C446
- adds r0, r4, 0
- bl ResetBlockReceivedFlag
- lsls r0, r4, 8
- mov r2, r10
- adds r3, r0, r2
- ldr r1, _0800C46C @ =gBlockRecvBuffer + 0x4
- adds r0, r1
- ldrh r6, [r0]
- ldr r7, _0800C470 @ =gTasks
- ldr r2, _0800C474 @ =gUnknown_020238C5
- mov r12, r2
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, r0, r7
- movs r0, 0x24
- ldrsh r1, [r2, r0]
- adds r0, r6, 0
- adds r0, 0x9
- adds r1, r0
- movs r0, 0x80
- lsls r0, 5
- cmp r1, r0
- ble _0800C402
- ldrh r0, [r2, 0x24]
- strh r0, [r2, 0x20]
- mov r2, r12
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r7
- movs r1, 0
- strh r1, [r0, 0x24]
-_0800C402:
- mov r2, r12
- ldrb r1, [r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r7
- movs r2, 0x24
- ldrsh r1, [r0, r2]
- ldr r0, _0800C478 @ =0x02015000
- adds r5, r1, r0
- adds r4, r3, 0
- movs r2, 0
- adds r3, r6, 0
- adds r3, 0x8
- mov r8, r7
- mov r7, r12
- cmp r2, r3
- bge _0800C434
-_0800C426:
- adds r0, r5, r2
- adds r1, r4, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, r3
- blt _0800C426
-_0800C434:
- ldrb r0, [r7]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- add r1, r8
- ldrh r0, [r1, 0x24]
- adds r0, r6, r0
- adds r0, 0x8
- strh r0, [r1, 0x24]
-_0800C446:
- mov r1, r9
- lsls r0, r1, 24
- lsrs r4, r0, 24
-_0800C44C:
- bl GetLinkPlayerCount
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- bcc _0800C3A0
-_0800C458:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C468: .4byte gBitTable
-_0800C46C: .4byte gBlockRecvBuffer + 0x4
-_0800C470: .4byte gTasks
-_0800C474: .4byte gUnknown_020238C5
-_0800C478: .4byte 0x02015000
- thumb_func_end sub_800C35C
-
- thumb_func_start sub_800C47C
-sub_800C47C: @ 800C47C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r1, _0800C4FC @ =gTasks
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- adds r3, r0, r1
- movs r0, 0x26
- ldrsh r2, [r3, r0]
- movs r4, 0x24
- ldrsh r0, [r3, r4]
- adds r4, r1, 0
- cmp r2, r0
- bne _0800C4A4
- b _0800C5FA
-_0800C4A4:
- cmp r2, r0
- ble _0800C4B6
- movs r1, 0x20
- ldrsh r0, [r3, r1]
- cmp r2, r0
- bne _0800C4B6
- movs r0, 0
- strh r0, [r3, 0x20]
- strh r0, [r3, 0x26]
-_0800C4B6:
- ldr r5, _0800C500 @ =0x02000000
- mov r2, r8
- lsls r1, r2, 2
- adds r0, r1, r2
- lsls r0, 3
- adds r6, r0, r4
- movs r4, 0x26
- ldrsh r3, [r6, r4]
- ldr r2, _0800C504 @ =0x00015001
- adds r0, r3, r2
- adds r0, r5
- ldrb r4, [r0]
- adds r2, 0x3
- adds r0, r3, r2
- adds r0, r5
- ldrb r7, [r0]
- adds r2, 0x1
- adds r0, r3, r2
- adds r0, r5
- ldrb r0, [r0]
- lsls r0, 8
- orrs r7, r0
- subs r2, 0x5
- adds r0, r3, r2
- adds r0, r5
- ldrb r0, [r0]
- mov r9, r1
- cmp r0, 0x1
- beq _0800C5B0
- cmp r0, 0x1
- bgt _0800C508
- cmp r0, 0
- beq _0800C50E
- b _0800C5E8
- .align 2, 0
-_0800C4FC: .4byte gTasks
-_0800C500: .4byte 0x02000000
-_0800C504: .4byte 0x00015001
-_0800C508:
- cmp r0, 0x2
- beq _0800C5CC
- b _0800C5E8
-_0800C50E:
- ldr r2, _0800C588 @ =gUnknown_02024A64
- ldr r1, _0800C58C @ =gBitTable
- lsls r0, r4, 2
- adds r0, r1
- ldr r1, [r2]
- ldr r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _0800C5FA
- lsls r0, r4, 9
- ldr r1, _0800C590 @ =gUnknown_02023A60
- adds r0, r1
- ldr r2, _0800C594 @ =0x00015008
- adds r1, r5, r2
- adds r1, r3, r1
- adds r2, r7, 0
- bl memcpy
- adds r0, r4, 0
- bl sub_80155A4
- ldr r0, _0800C598 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _0800C5E8
- ldr r1, _0800C59C @ =gUnknown_02024C07
- movs r4, 0x26
- ldrsh r0, [r6, r4]
- ldr r2, _0800C5A0 @ =0x00015002
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r1, _0800C5A4 @ =gUnknown_02024C08
- movs r4, 0x26
- ldrsh r0, [r6, r4]
- adds r2, 0x1
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r1, _0800C5A8 @ =gUnknown_02024C0C
- movs r4, 0x26
- ldrsh r0, [r6, r4]
- adds r2, 0x3
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- ldr r1, _0800C5AC @ =gUnknown_02024C0A
- movs r4, 0x26
- ldrsh r0, [r6, r4]
- adds r2, 0x1
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- b _0800C5E8
- .align 2, 0
-_0800C588: .4byte gUnknown_02024A64
-_0800C58C: .4byte gBitTable
-_0800C590: .4byte gUnknown_02023A60
-_0800C594: .4byte 0x00015008
-_0800C598: .4byte gBattleTypeFlags
-_0800C59C: .4byte gUnknown_02024C07
-_0800C5A0: .4byte 0x00015002
-_0800C5A4: .4byte gUnknown_02024C08
-_0800C5A8: .4byte gUnknown_02024C0C
-_0800C5AC: .4byte gUnknown_02024C0A
-_0800C5B0:
- lsls r0, r4, 9
- ldr r1, _0800C5C4 @ =gUnknown_02024260
- adds r0, r1
- ldr r4, _0800C5C8 @ =0x00015008
- adds r1, r5, r4
- adds r1, r3, r1
- adds r2, r7, 0
- bl memcpy
- b _0800C5E8
- .align 2, 0
-_0800C5C4: .4byte gUnknown_02024260
-_0800C5C8: .4byte 0x00015008
-_0800C5CC:
- ldr r1, _0800C608 @ =0x00015008
- adds r0, r3, r1
- adds r0, r5
- ldrb r2, [r0]
- ldr r3, _0800C60C @ =gUnknown_02024A64
- ldr r1, _0800C610 @ =gBitTable
- lsls r0, r4, 2
- adds r0, r1
- lsls r2, 2
- ldr r1, [r0]
- lsls r1, r2
- ldr r0, [r3]
- bics r0, r1
- str r0, [r3]
-_0800C5E8:
- ldr r0, _0800C614 @ =gTasks
- mov r1, r9
- add r1, r8
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x26]
- adds r0, r7, r0
- adds r0, 0x8
- strh r0, [r1, 0x26]
-_0800C5FA:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C608: .4byte 0x00015008
-_0800C60C: .4byte gUnknown_02024A64
-_0800C610: .4byte gBitTable
-_0800C614: .4byte gTasks
- thumb_func_end sub_800C47C
-
- thumb_func_start dp01_build_cmdbuf_x00_a_b_0
-dp01_build_cmdbuf_x00_a_b_0: @ 800C618
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C638 @ =gUnknown_03004040
- movs r3, 0
- strb r3, [r1]
- strb r4, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r3, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C638: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x00_a_b_0
-
- thumb_func_start dp01_build_cmdbuf_x01_a_b_0
-dp01_build_cmdbuf_x01_a_b_0: @ 800C63C
- push {r4,r5,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C660 @ =gUnknown_03004040
- movs r4, 0
- movs r3, 0x1
- strb r3, [r1]
- strb r5, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r4, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C660: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x01_a_b_0
-
- thumb_func_start dp01_build_cmdbuf_x02_a_b_varargs
-dp01_build_cmdbuf_x02_a_b_varargs: @ 800C664
- push {r4-r6,lr}
- ldr r4, [sp, 0x10]
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r3, 24
- lsrs r5, r3, 24
- ldr r0, _0800C6A0 @ =gUnknown_03004040
- movs r3, 0x2
- strb r3, [r0]
- strb r1, [r0, 0x1]
- strb r2, [r0, 0x2]
- adds r1, r0, 0
- cmp r5, 0
- beq _0800C692
- adds r3, r1, 0x3
- adds r2, r5, 0
-_0800C684:
- ldrb r0, [r4]
- strb r0, [r3]
- adds r4, 0x1
- adds r3, 0x1
- subs r2, 0x1
- cmp r2, 0
- bne _0800C684
-_0800C692:
- adds r2, r5, 0x3
- adds r0, r6, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C6A0: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x02_a_b_varargs
-
- thumb_func_start unref_sub_800C6A4
-unref_sub_800C6A4: @ 800C6A4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r2, 24
- lsrs r4, r2, 24
- ldr r0, _0800C6E0 @ =gUnknown_03004040
- movs r2, 0x3
- strb r2, [r0]
- strb r1, [r0, 0x1]
- strb r4, [r0, 0x2]
- adds r5, r0, 0
- cmp r4, 0
- beq _0800C6D0
- adds r1, r5, 0x3
- adds r2, r4, 0
-_0800C6C2:
- ldrb r0, [r3]
- strb r0, [r1]
- adds r3, 0x1
- adds r1, 0x1
- subs r2, 0x1
- cmp r2, 0
- bne _0800C6C2
-_0800C6D0:
- adds r2, r4, 0x3
- adds r0, r6, 0
- adds r1, r5, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C6E0: .4byte gUnknown_03004040
- thumb_func_end unref_sub_800C6A4
-
- thumb_func_start dp01_build_cmdbuf_x04_4_4_4
-dp01_build_cmdbuf_x04_4_4_4: @ 800C6E4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C700 @ =gUnknown_03004040
- movs r2, 0x4
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C700: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x04_4_4_4
-
- thumb_func_start sub_800C704
-sub_800C704: @ 800C704
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C724 @ =gUnknown_03004040
- movs r3, 0x5
- strb r3, [r1]
- strb r4, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r3, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C724: .4byte gUnknown_03004040
- thumb_func_end sub_800C704
-
- thumb_func_start dp01_build_cmdbuf_x06_a
-dp01_build_cmdbuf_x06_a: @ 800C728
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C744 @ =gUnknown_03004040
- movs r2, 0x6
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C744: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x06_a
-
- thumb_func_start dp01_build_cmdbuf_x07_7_7_7
-dp01_build_cmdbuf_x07_7_7_7: @ 800C748
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C764 @ =gUnknown_03004040
- movs r2, 0x7
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C764: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x07_7_7_7
-
- thumb_func_start dp01_build_cmdbuf_x08_8_8_8
-dp01_build_cmdbuf_x08_8_8_8: @ 800C768
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C784 @ =gUnknown_03004040
- movs r2, 0x8
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C784: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x08_8_8_8
-
- thumb_func_start dp01_build_cmdbuf_x09_9_9_9
-dp01_build_cmdbuf_x09_9_9_9: @ 800C788
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C7A4 @ =gUnknown_03004040
- movs r2, 0x9
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C7A4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x09_9_9_9
-
- thumb_func_start dp01_build_cmdbuf_x0A_A_A_A
-dp01_build_cmdbuf_x0A_A_A_A: @ 800C7A8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C7C4 @ =gUnknown_03004040
- movs r2, 0xA
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C7C4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x0A_A_A_A
-
- thumb_func_start dp01_build_cmdbuf_x0B_B_B_B
-dp01_build_cmdbuf_x0B_B_B_B: @ 800C7C8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C7E4 @ =gUnknown_03004040
- movs r2, 0xB
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C7E4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x0B_B_B_B
-
- thumb_func_start dp01_build_cmdbuf_x0C_C_C_C
-dp01_build_cmdbuf_x0C_C_C_C: @ 800C7E8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C804 @ =gUnknown_03004040
- movs r2, 0xC
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C804: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x0C_C_C_C
-
- thumb_func_start dp01_build_cmdbuf_x0D_a
-dp01_build_cmdbuf_x0D_a: @ 800C808
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800C824 @ =gUnknown_03004040
- movs r2, 0xD
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800C824: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x0D_a
-
- thumb_func_start unref_sub_800C828
-unref_sub_800C828: @ 800C828
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- ldr r1, _0800C86C @ =gUnknown_03004040
- movs r0, 0xE
- strb r0, [r1]
- strb r4, [r1, 0x1]
- lsls r0, r4, 1
- adds r0, r4
- adds r5, r1, 0
- cmp r0, 0
- beq _0800C856
- adds r1, r5, 0x2
- adds r3, r0, 0
-_0800C848:
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _0800C848
-_0800C856:
- lsls r2, r4, 1
- adds r2, r4
- adds r2, 0x2
- adds r0, r6, 0
- adds r1, r5, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C86C: .4byte gUnknown_03004040
- thumb_func_end unref_sub_800C828
-
- thumb_func_start dp01_build_cmdbuf_x0F_aa_b_cc_dddd_e_mlc_weather_00_x1Cbytes
-dp01_build_cmdbuf_x0F_aa_b_cc_dddd_e_mlc_weather_00_x1Cbytes: @ 800C870
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- ldr r4, [sp, 0x1C]
- ldr r5, [sp, 0x20]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 16
- lsrs r1, 16
- lsls r3, 16
- lsrs r3, 16
- ldr r7, _0800C904 @ =gUnknown_03004040
- movs r0, 0
- mov r12, r0
- movs r0, 0xF
- strb r0, [r7]
- strb r1, [r7, 0x1]
- lsrs r1, 8
- strb r1, [r7, 0x2]
- strb r2, [r7, 0x3]
- strb r3, [r7, 0x4]
- movs r6, 0xFF
- lsls r6, 8
- lsrs r3, 8
- strb r3, [r7, 0x5]
- strb r4, [r7, 0x6]
- adds r0, r4, 0
- ands r0, r6
- asrs r0, 8
- strb r0, [r7, 0x7]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r4
- asrs r0, 16
- strb r0, [r7, 0x8]
- lsrs r4, 24
- strb r4, [r7, 0x9]
- strb r5, [r7, 0xA]
- ldr r0, _0800C908 @ =gUnknown_02024C0E
- ldrb r0, [r0]
- strb r0, [r7, 0xB]
- mov r0, r12
- str r0, [sp]
- movs r0, 0xE
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl sub_8018324
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _0800C910
- str r0, [sp]
- movs r0, 0xE
- movs r1, 0
- movs r2, 0x4D
- movs r3, 0
- bl sub_8018324
- lsls r0, 24
- cmp r0, 0
- bne _0800C910
- ldr r0, _0800C90C @ =gBattleWeather
- ldrh r0, [r0]
- strb r0, [r7, 0xC]
- ands r6, r0
- lsrs r0, r6, 8
- strb r0, [r7, 0xD]
- adds r4, r7, 0
- b _0800C91A
- .align 2, 0
-_0800C904: .4byte gUnknown_03004040
-_0800C908: .4byte gUnknown_02024C0E
-_0800C90C: .4byte gBattleWeather
-_0800C910:
- ldr r0, _0800C944 @ =gUnknown_03004040
- movs r1, 0
- strb r1, [r0, 0xC]
- strb r1, [r0, 0xD]
- adds r4, r0, 0
-_0800C91A:
- movs r0, 0
- strb r0, [r4, 0xE]
- strb r0, [r4, 0xF]
- adds r0, r4, 0
- adds r0, 0x10
- ldr r1, [sp, 0x24]
- movs r2, 0x1C
- bl memcpy
- mov r0, r8
- adds r1, r4, 0
- movs r2, 0x2C
- bl dp01_prepare_buffer
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800C944: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x0F_aa_b_cc_dddd_e_mlc_weather_00_x1Cbytes
-
- thumb_func_start dp01_build_cmdbuf_x10_TODO
-dp01_build_cmdbuf_x10_TODO: @ 800C948
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- lsls r1, 16
- lsrs r1, 16
- ldr r2, _0800CA2C @ =gUnknown_03004040
- movs r0, 0x10
- strb r0, [r2]
- ldr r0, _0800CA30 @ =gUnknown_02024D26
- ldrb r0, [r0]
- strb r0, [r2, 0x1]
- strb r1, [r2, 0x2]
- lsrs r1, 8
- strb r1, [r2, 0x3]
- adds r0, r2, 0x4
- mov r12, r0
- ldr r4, _0800CA34 @ =gUnknown_02024BE6
- ldrh r0, [r4]
- strh r0, [r2, 0x4]
- ldr r0, _0800CA38 @ =gUnknown_02024BE8
- ldrh r0, [r0]
- mov r1, r12
- strh r0, [r1, 0x2]
- ldr r0, _0800CA3C @ =gUnknown_02024C04
- ldrh r0, [r0]
- strh r0, [r1, 0x4]
- ldr r0, _0800CA40 @ =byte_2024C06
- ldrb r0, [r0]
- strb r0, [r1, 0x6]
- ldr r1, _0800CA44 @ =0x02000000
- ldr r3, _0800CA48 @ =0x00016003
- adds r0, r1, r3
- ldrb r0, [r0]
- mov r7, r12
- strb r0, [r7, 0x7]
- adds r3, 0x5B
- adds r0, r1, r3
- ldrb r0, [r0]
- strb r0, [r7, 0x8]
- ldr r7, _0800CA4C @ =0x000160c1
- adds r1, r7
- ldrb r0, [r1]
- mov r1, r12
- strb r0, [r1, 0x9]
- ldr r0, _0800CA50 @ =gUnknown_02024C0B
- ldrb r0, [r0]
- strb r0, [r1, 0xA]
- ldr r3, _0800CA54 @ =gBattleMoves
- ldrh r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x2]
- mov r3, r12
- strb r0, [r3, 0xB]
- movs r3, 0
- mov r9, r2
- ldr r7, _0800CA58 @ =gUnknown_030042B0
- mov r8, r7
- adds r2, 0x10
- ldr r0, _0800CA5C @ =gBattleMons
- adds r4, r0, 0
- adds r4, 0x20
-_0800C9D2:
- adds r1, r2, r3
- ldrb r0, [r4]
- strb r0, [r1]
- adds r4, 0x58
- adds r3, 0x1
- cmp r3, 0x3
- ble _0800C9D2
- movs r3, 0
- mov r5, r12
- adds r5, 0x10
- mov r4, r12
- adds r4, 0x20
- ldr r6, _0800CA60 @ =gUnknown_03004290
- mov r2, r12
- adds r2, 0x30
-_0800C9F0:
- adds r1, r5, r3
- ldr r7, _0800CA64 @ =gUnknown_030041C0
- adds r0, r3, r7
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r4, r3
- adds r0, r3, r6
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r2, r3
- mov r7, r8
- adds r0, r3, r7
- ldrb r0, [r0]
- strb r0, [r1]
- adds r3, 0x1
- cmp r3, 0xF
- ble _0800C9F0
- mov r0, r10
- mov r1, r9
- movs r2, 0x44
- bl dp01_prepare_buffer
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CA2C: .4byte gUnknown_03004040
-_0800CA30: .4byte gUnknown_02024D26
-_0800CA34: .4byte gUnknown_02024BE6
-_0800CA38: .4byte gUnknown_02024BE8
-_0800CA3C: .4byte gUnknown_02024C04
-_0800CA40: .4byte byte_2024C06
-_0800CA44: .4byte 0x02000000
-_0800CA48: .4byte 0x00016003
-_0800CA4C: .4byte 0x000160c1
-_0800CA50: .4byte gUnknown_02024C0B
-_0800CA54: .4byte gBattleMoves
-_0800CA58: .4byte gUnknown_030042B0
-_0800CA5C: .4byte gBattleMons
-_0800CA60: .4byte gUnknown_03004290
-_0800CA64: .4byte gUnknown_030041C0
- thumb_func_end dp01_build_cmdbuf_x10_TODO
-
- thumb_func_start dp01_build_cmdbuf_x11_TODO
-dp01_build_cmdbuf_x11_TODO: @ 800CA68
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- lsls r1, 16
- lsrs r1, 16
- ldr r2, _0800CB28 @ =gUnknown_03004040
- movs r0, 0x11
- strb r0, [r2]
- strb r0, [r2, 0x1]
- strb r1, [r2, 0x2]
- lsrs r1, 8
- strb r1, [r2, 0x3]
- adds r0, r2, 0x4
- mov r12, r0
- ldr r0, _0800CB2C @ =gUnknown_02024BE6
- ldrh r0, [r0]
- strh r0, [r2, 0x4]
- ldr r0, _0800CB30 @ =gUnknown_02024BE8
- ldrh r0, [r0]
- mov r1, r12
- strh r0, [r1, 0x2]
- ldr r0, _0800CB34 @ =gUnknown_02024C04
- ldrh r0, [r0]
- strh r0, [r1, 0x4]
- ldr r0, _0800CB38 @ =byte_2024C06
- ldrb r0, [r0]
- strb r0, [r1, 0x6]
- ldr r0, _0800CB3C @ =0x02000000
- ldr r3, _0800CB40 @ =0x00016003
- adds r1, r0, r3
- ldrb r1, [r1]
- mov r7, r12
- strb r1, [r7, 0x7]
- ldr r1, _0800CB44 @ =0x0001605e
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r7, 0x8]
- movs r3, 0
- mov r9, r2
- ldr r7, _0800CB48 @ =gUnknown_030042B0
- mov r8, r7
- mov r4, r9
- adds r4, 0x10
- ldr r0, _0800CB4C @ =gBattleMons
- adds r2, r0, 0
- adds r2, 0x20
-_0800CACE:
- adds r1, r4, r3
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x58
- adds r3, 0x1
- cmp r3, 0x3
- ble _0800CACE
- movs r3, 0
- mov r5, r12
- adds r5, 0x10
- mov r4, r12
- adds r4, 0x20
- ldr r6, _0800CB50 @ =gUnknown_03004290
- mov r2, r12
- adds r2, 0x30
-_0800CAEC:
- adds r1, r5, r3
- ldr r7, _0800CB54 @ =gUnknown_030041C0
- adds r0, r3, r7
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r4, r3
- adds r0, r3, r6
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r2, r3
- mov r7, r8
- adds r0, r3, r7
- ldrb r0, [r0]
- strb r0, [r1]
- adds r3, 0x1
- cmp r3, 0xF
- ble _0800CAEC
- mov r0, r10
- mov r1, r9
- movs r2, 0x44
- bl dp01_prepare_buffer
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CB28: .4byte gUnknown_03004040
-_0800CB2C: .4byte gUnknown_02024BE6
-_0800CB30: .4byte gUnknown_02024BE8
-_0800CB34: .4byte gUnknown_02024C04
-_0800CB38: .4byte byte_2024C06
-_0800CB3C: .4byte 0x02000000
-_0800CB40: .4byte 0x00016003
-_0800CB44: .4byte 0x0001605e
-_0800CB48: .4byte gUnknown_030042B0
-_0800CB4C: .4byte gBattleMons
-_0800CB50: .4byte gUnknown_03004290
-_0800CB54: .4byte gUnknown_030041C0
- thumb_func_end dp01_build_cmdbuf_x11_TODO
-
- thumb_func_start dp01_build_cmdbuf_x12_a_bb
-dp01_build_cmdbuf_x12_a_bb: @ 800CB58
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, _0800CB80 @ =gUnknown_03004040
- movs r3, 0x12
- strb r3, [r1]
- strb r4, [r1, 0x1]
- strb r2, [r1, 0x2]
- lsrs r2, 8
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CB80: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x12_a_bb
-
- thumb_func_start unref_sub_800CB84
-unref_sub_800CB84: @ 800CB84
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800CBA0 @ =gUnknown_03004040
- movs r2, 0x13
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800CBA0: .4byte gUnknown_03004040
- thumb_func_end unref_sub_800CB84
-
- thumb_func_start sub_800CBA4
-sub_800CBA4: @ 800CBA4
- push {r4-r6,lr}
- adds r5, r3, 0
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r3, _0800CBDC @ =gUnknown_03004040
- movs r4, 0
- movs r0, 0x14
- strb r0, [r3]
- strb r1, [r3, 0x1]
- strb r2, [r3, 0x2]
- strb r4, [r3, 0x3]
- movs r2, 0
- adds r1, r3, 0
- adds r4, r1, 0x4
-_0800CBC0:
- adds r0, r5, r2
- ldrb r0, [r0]
- strb r0, [r4]
- adds r4, 0x1
- adds r2, 0x1
- cmp r2, 0x13
- bls _0800CBC0
- adds r0, r6, 0
- movs r2, 0x18
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CBDC: .4byte gUnknown_03004040
- thumb_func_end sub_800CBA4
-
- thumb_func_start sub_800CBE0
-sub_800CBE0: @ 800CBE0
- push {r4,r5,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, _0800CC10 @ =gUnknown_03004040
- movs r0, 0x15
- strb r0, [r1]
- movs r2, 0
- adds r3, r1, 0x1
-_0800CBF2:
- adds r0, r4, r2
- ldrb r0, [r0]
- strb r0, [r3]
- adds r3, 0x1
- adds r2, 0x1
- cmp r2, 0x2
- ble _0800CBF2
- adds r0, r5, 0
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CC10: .4byte gUnknown_03004040
- thumb_func_end sub_800CBE0
-
- thumb_func_start dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
-dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f: @ 800CC14
- push {r4-r6,lr}
- ldr r6, [sp, 0x10]
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, _0800CC4C @ =gUnknown_03004040
- movs r0, 0x16
- strb r0, [r4]
- strb r1, [r4, 0x1]
- strb r2, [r4, 0x2]
- strb r3, [r4, 0x3]
- movs r2, 0
- adds r1, r4, 0
- adds r3, r1, 0x4
-_0800CC2E:
- adds r0, r6, r2
- ldrb r0, [r0]
- strb r0, [r3]
- adds r3, 0x1
- adds r2, 0x1
- cmp r2, 0x2
- ble _0800CC2E
- adds r0, r5, 0
- movs r2, 0x8
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CC4C: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
-
- thumb_func_start dp01_build_cmdbuf_x17_17_17_17
-dp01_build_cmdbuf_x17_17_17_17: @ 800CC50
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800CC6C @ =gUnknown_03004040
- movs r2, 0x17
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800CC6C: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x17_17_17_17
-
- thumb_func_start dp01_build_cmdbuf_x18_0_aa_health_bar_update
-dp01_build_cmdbuf_x18_0_aa_health_bar_update: @ 800CC70
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, _0800CCA4 @ =gUnknown_03004040
- movs r4, 0
- movs r2, 0x18
- strb r2, [r3]
- strb r4, [r3, 0x1]
- strb r1, [r3, 0x2]
- lsls r1, 16
- asrs r1, 16
- movs r2, 0xFF
- lsls r2, 8
- ands r1, r2
- asrs r1, 8
- strb r1, [r3, 0x3]
- adds r1, r3, 0
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CCA4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x18_0_aa_health_bar_update
-
- thumb_func_start dp01_build_cmdbuf_x19_a_bb
-dp01_build_cmdbuf_x19_a_bb: @ 800CCA8
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, _0800CCD8 @ =gUnknown_03004040
- movs r3, 0x19
- strb r3, [r1]
- strb r4, [r1, 0x1]
- strb r2, [r1, 0x2]
- lsls r2, 16
- asrs r2, 16
- movs r3, 0xFF
- lsls r3, 8
- ands r2, r3
- asrs r2, 8
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CCD8: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x19_a_bb
-
- thumb_func_start dp01_build_cmdbuf_x1A_aaaa_bbbb
-dp01_build_cmdbuf_x1A_aaaa_bbbb: @ 800CCDC
- push {r4-r6,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800CD2C @ =gUnknown_03004040
- movs r3, 0x1A
- strb r3, [r1]
- strb r4, [r1, 0x1]
- movs r6, 0xFF
- lsls r6, 8
- adds r3, r4, 0
- ands r3, r6
- lsrs r3, 8
- strb r3, [r1, 0x2]
- movs r5, 0xFF
- lsls r5, 16
- adds r3, r4, 0
- ands r3, r5
- lsrs r3, 16
- strb r3, [r1, 0x3]
- lsrs r4, 24
- strb r4, [r1, 0x4]
- strb r2, [r1, 0x5]
- adds r3, r2, 0
- ands r3, r6
- lsrs r3, 8
- strb r3, [r1, 0x6]
- adds r3, r2, 0
- ands r3, r5
- lsrs r3, 16
- strb r3, [r1, 0x7]
- lsrs r2, 24
- strb r2, [r1, 0x8]
- movs r2, 0x9
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CD2C: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x1A_aaaa_bbbb
-
- thumb_func_start dp01_build_cmdbuf_x1B_aaaa_b
-dp01_build_cmdbuf_x1B_aaaa_b: @ 800CD30
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800CD68 @ =gUnknown_03004040
- movs r3, 0x1B
- strb r3, [r1]
- strb r4, [r1, 0x1]
- strb r2, [r1, 0x2]
- movs r3, 0xFF
- lsls r3, 8
- ands r3, r2
- lsrs r3, 8
- strb r3, [r1, 0x3]
- movs r3, 0xFF
- lsls r3, 16
- ands r3, r2
- lsrs r3, 16
- strb r3, [r1, 0x4]
- lsrs r2, 24
- strb r2, [r1, 0x5]
- movs r2, 0x6
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CD68: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x1B_aaaa_b
-
- thumb_func_start dp01_build_cmdbuf_x1C_a
-dp01_build_cmdbuf_x1C_a: @ 800CD6C
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800CD88 @ =gUnknown_03004040
- movs r2, 0x1C
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800CD88: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x1C_a
-
- thumb_func_start dp01_build_cmdbuf_x1D_1D_numargs_varargs
-dp01_build_cmdbuf_x1D_1D_numargs_varargs: @ 800CD8C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- ldr r1, _0800CDD0 @ =gUnknown_03004040
- movs r0, 0x1D
- strb r0, [r1]
- strb r0, [r1, 0x1]
- strb r4, [r1, 0x2]
- lsrs r0, r4, 8
- strb r0, [r1, 0x3]
- adds r5, r1, 0
- cmp r4, 0
- beq _0800CDBC
- adds r1, r5, 0x4
- adds r3, r4, 0
-_0800CDAE:
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _0800CDAE
-_0800CDBC:
- adds r2, r4, 0x4
- lsls r2, 16
- lsrs r2, 16
- adds r0, r6, 0
- adds r1, r5, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CDD0: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x1D_1D_numargs_varargs
-
- thumb_func_start unref_sub_800CDD4
-unref_sub_800CDD4: @ 800CDD4
- push {r4-r6,lr}
- adds r4, r3, 0
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r2, 16
- lsrs r5, r2, 16
- ldr r2, _0800CE38 @ =gUnknown_03004040
- movs r0, 0x1E
- strb r0, [r2]
- strb r1, [r2, 0x1]
- movs r3, 0xFF
- lsls r3, 8
- adds r0, r1, 0
- ands r0, r3
- lsrs r0, 8
- strb r0, [r2, 0x2]
- movs r0, 0xFF
- lsls r0, 16
- ands r0, r1
- lsrs r0, 16
- strb r0, [r2, 0x3]
- lsrs r1, 24
- strb r1, [r2, 0x4]
- strb r5, [r2, 0x5]
- adds r0, r5, 0
- ands r0, r3
- lsrs r0, 8
- strb r0, [r2, 0x6]
- adds r1, r2, 0
- cmp r5, 0
- beq _0800CE24
- adds r3, r1, 0x7
- adds r2, r5, 0
-_0800CE16:
- ldrb r0, [r4]
- strb r0, [r3]
- adds r4, 0x1
- adds r3, 0x1
- subs r2, 0x1
- cmp r2, 0
- bne _0800CE16
-_0800CE24:
- adds r2, r5, 0x7
- lsls r2, 16
- lsrs r2, 16
- adds r0, r6, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CE38: .4byte gUnknown_03004040
- thumb_func_end unref_sub_800CDD4
-
- thumb_func_start unref_sub_800CE3C
-unref_sub_800CE3C: @ 800CE3C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- ldr r1, _0800CE80 @ =gUnknown_03004040
- movs r0, 0x1F
- strb r0, [r1]
- strb r4, [r1, 0x1]
- lsrs r0, r4, 8
- strb r0, [r1, 0x2]
- adds r5, r1, 0
- cmp r4, 0
- beq _0800CE6A
- adds r1, r5, 0x3
- adds r3, r4, 0
-_0800CE5C:
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _0800CE5C
-_0800CE6A:
- adds r2, r4, 0x3
- lsls r2, 16
- lsrs r2, 16
- adds r0, r6, 0
- adds r1, r5, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CE80: .4byte gUnknown_03004040
- thumb_func_end unref_sub_800CE3C
-
- thumb_func_start unref_sub_800CE84
-unref_sub_800CE84: @ 800CE84
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- ldr r1, _0800CEC8 @ =gUnknown_03004040
- movs r0, 0x20
- strb r0, [r1]
- strb r4, [r1, 0x1]
- lsrs r0, r4, 8
- strb r0, [r1, 0x2]
- adds r5, r1, 0
- cmp r4, 0
- beq _0800CEB2
- adds r1, r5, 0x3
- adds r3, r4, 0
-_0800CEA4:
- ldrb r0, [r2]
- strb r0, [r1]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bne _0800CEA4
-_0800CEB2:
- adds r2, r4, 0x3
- lsls r2, 16
- lsrs r2, 16
- adds r0, r6, 0
- adds r1, r5, 0
- bl dp01_prepare_buffer
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CEC8: .4byte gUnknown_03004040
- thumb_func_end unref_sub_800CE84
-
- thumb_func_start dp01_build_cmdbuf_x21_a_bb
-dp01_build_cmdbuf_x21_a_bb: @ 800CECC
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, _0800CEF4 @ =gUnknown_03004040
- movs r3, 0x21
- strb r3, [r1]
- strb r4, [r1, 0x1]
- strb r2, [r1, 0x2]
- lsrs r2, 8
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CEF4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x21_a_bb
-
- thumb_func_start dp01_build_cmdbuf_x22_a_three_bytes
-dp01_build_cmdbuf_x22_a_three_bytes: @ 800CEF8
- push {r4,r5,lr}
- adds r4, r2, 0
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r2, _0800CF2C @ =gUnknown_03004040
- movs r0, 0x22
- strb r0, [r2]
- strb r1, [r2, 0x1]
- movs r3, 0
- adds r1, r2, 0x2
-_0800CF0C:
- adds r0, r4, r3
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, 0x1
- adds r3, 0x1
- cmp r3, 0x2
- ble _0800CF0C
- adds r0, r5, 0
- adds r1, r2, 0
- movs r2, 0x5
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CF2C: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x22_a_three_bytes
-
- thumb_func_start dp01_build_cmdbuf_x23_aa_0
-dp01_build_cmdbuf_x23_aa_0: @ 800CF30
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, _0800CF58 @ =gUnknown_03004040
- movs r4, 0
- movs r2, 0x23
- strb r2, [r3]
- strb r1, [r3, 0x1]
- lsrs r1, 8
- strb r1, [r3, 0x2]
- strb r4, [r3, 0x3]
- adds r1, r3, 0
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CF58: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x23_aa_0
-
- thumb_func_start dp01_build_cmdbuf_x24_aa_0
-dp01_build_cmdbuf_x24_aa_0: @ 800CF5C
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, _0800CF84 @ =gUnknown_03004040
- movs r4, 0
- movs r2, 0x24
- strb r2, [r3]
- strb r1, [r3, 0x1]
- lsrs r1, 8
- strb r1, [r3, 0x2]
- strb r4, [r3, 0x3]
- adds r1, r3, 0
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800CF84: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x24_aa_0
-
- thumb_func_start dp01_build_cmdbuf_x25_25_25_25
-dp01_build_cmdbuf_x25_25_25_25: @ 800CF88
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800CFA4 @ =gUnknown_03004040
- movs r2, 0x25
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800CFA4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x25_25_25_25
-
- thumb_func_start dp01_build_cmdbuf_x26_a
-dp01_build_cmdbuf_x26_a: @ 800CFA8
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800CFC4 @ =gUnknown_03004040
- movs r2, 0x26
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800CFC4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x26_a
-
- thumb_func_start dp01_build_cmdbuf_x27_27_27_27
-dp01_build_cmdbuf_x27_27_27_27: @ 800CFC8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800CFE4 @ =gUnknown_03004040
- movs r2, 0x27
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800CFE4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x27_27_27_27
-
- thumb_func_start dp01_build_cmdbuf_x28_28_28_28
-dp01_build_cmdbuf_x28_28_28_28: @ 800CFE8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D004 @ =gUnknown_03004040
- movs r2, 0x28
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D004: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x28_28_28_28
-
- thumb_func_start dp01_build_cmdbuf_x29_29_29_29
-dp01_build_cmdbuf_x29_29_29_29: @ 800D008
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D024 @ =gUnknown_03004040
- movs r2, 0x29
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D024: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x29_29_29_29
-
- thumb_func_start dp01_build_cmdbuf_x2A_2A_2A_2A
-dp01_build_cmdbuf_x2A_2A_2A_2A: @ 800D028
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D044 @ =gUnknown_03004040
- movs r2, 0x2A
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D044: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x2A_2A_2A_2A
-
- thumb_func_start dp01_build_cmdbuf_x2B_aa_0
-dp01_build_cmdbuf_x2B_aa_0: @ 800D048
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, _0800D070 @ =gUnknown_03004040
- movs r4, 0
- movs r2, 0x2B
- strb r2, [r3]
- strb r1, [r3, 0x1]
- lsrs r1, 8
- strb r1, [r3, 0x2]
- strb r4, [r3, 0x3]
- adds r1, r3, 0
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800D070: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x2B_aa_0
-
- thumb_func_start sub_800D074
-sub_800D074: @ 800D074
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r3, _0800D09C @ =gUnknown_03004040
- movs r4, 0
- movs r2, 0x2C
- strb r2, [r3]
- strb r1, [r3, 0x1]
- lsrs r1, 8
- strb r1, [r3, 0x2]
- strb r4, [r3, 0x3]
- adds r1, r3, 0
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800D09C: .4byte gUnknown_03004040
- thumb_func_end sub_800D074
-
- thumb_func_start dp01_build_cmdbuf_x2D_2D_2D_2D
-dp01_build_cmdbuf_x2D_2D_2D_2D: @ 800D0A0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D0BC @ =gUnknown_03004040
- movs r2, 0x2D
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D0BC: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x2D_2D_2D_2D
-
- thumb_func_start dp01_build_cmdbuf_x2E_a
-dp01_build_cmdbuf_x2E_a: @ 800D0C0
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D0DC @ =gUnknown_03004040
- movs r2, 0x2E
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D0DC: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x2E_a
-
- thumb_func_start dp01_build_cmdbuf_x2F_2F_2F_2F
-dp01_build_cmdbuf_x2F_2F_2F_2F: @ 800D0E0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D0FC @ =gUnknown_03004040
- movs r2, 0x2F
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D0FC: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x2F_2F_2F_2F
-
- thumb_func_start dp01_build_cmdbuf_x30_TODO
-dp01_build_cmdbuf_x30_TODO: @ 800D100
- push {r4,r5,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r2, 24
- lsrs r2, 24
- ldr r1, _0800D144 @ =gUnknown_03004040
- movs r3, 0x30
- strb r3, [r1]
- movs r0, 0x7F
- ands r0, r2
- strb r0, [r1, 0x1]
- movs r0, 0x80
- ands r0, r2
- lsls r0, 24
- lsrs r0, 31
- strb r0, [r1, 0x2]
- strb r3, [r1, 0x3]
- movs r2, 0
- adds r3, r1, 0x4
-_0800D128:
- adds r0, r4, r2
- ldrb r0, [r0]
- strb r0, [r3]
- adds r3, 0x1
- adds r2, 0x1
- cmp r2, 0x2F
- ble _0800D128
- adds r0, r5, 0
- movs r2, 0x34
- bl dp01_prepare_buffer
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0800D144: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x30_TODO
-
- thumb_func_start dp01_build_cmdbuf_x31_31_31_31
-dp01_build_cmdbuf_x31_31_31_31: @ 800D148
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D164 @ =gUnknown_03004040
- movs r2, 0x31
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D164: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x31_31_31_31
-
- thumb_func_start dp01_build_cmdbuf_x32_32_32_32
-dp01_build_cmdbuf_x32_32_32_32: @ 800D168
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D184 @ =gUnknown_03004040
- movs r2, 0x32
- strb r2, [r1]
- strb r2, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D184: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x32_32_32_32
-
- thumb_func_start dp01_build_cmdbuf_x33_a_33_33
-dp01_build_cmdbuf_x33_a_33_33: @ 800D188
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D1A8 @ =gUnknown_03004040
- movs r2, 0x33
- strb r2, [r1]
- strb r3, [r1, 0x1]
- strb r2, [r1, 0x2]
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D1A8: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x33_a_33_33
-
- thumb_func_start dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
-dp01_build_cmdbuf_x34_a_bb_aka_battle_anim: @ 800D1AC
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 16
- lsrs r2, 16
- ldr r1, _0800D1D4 @ =gUnknown_03004040
- movs r3, 0x34
- strb r3, [r1]
- strb r4, [r1, 0x1]
- strb r2, [r1, 0x2]
- lsrs r2, 8
- strb r2, [r1, 0x3]
- movs r2, 0x4
- bl dp01_prepare_buffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0800D1D4: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x34_a_bb_aka_battle_anim
-
- thumb_func_start sub_800D1D8
-sub_800D1D8: @ 800D1D8
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D1F4 @ =gUnknown_03004040
- movs r2, 0x35
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D1F4: .4byte gUnknown_03004040
- thumb_func_end sub_800D1D8
-
- thumb_func_start dp01_build_cmdbuf_x38_a
-dp01_build_cmdbuf_x38_a: @ 800D1F8
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D214 @ =gUnknown_03004040
- movs r2, 0x36
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D214: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x38_a
-
- thumb_func_start dp01_build_cmdbuf_x37_a
-dp01_build_cmdbuf_x37_a: @ 800D218
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0800D234 @ =gUnknown_03004040
- movs r2, 0x37
- strb r2, [r1]
- strb r3, [r1, 0x1]
- movs r2, 0x2
- bl dp01_prepare_buffer
- pop {r0}
- bx r0
- .align 2, 0
-_0800D234: .4byte gUnknown_03004040
- thumb_func_end dp01_build_cmdbuf_x37_a
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/rom6.s b/asm/rom6.s
deleted file mode 100644
index 16899bf2e..000000000
--- a/asm/rom6.s
+++ /dev/null
@@ -1,474 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start npc_before_player_of_type
-npc_before_player_of_type: @ 810B2D4
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r4, _0810B314 @ =gUnknown_0203923C
- adds r1, r4, 0x2
- adds r0, r4, 0
- bl GetXYCoordsOneStepInFrontOfPlayer
- bl PlayerGetZCoord
- strb r0, [r4, 0x4]
- ldrh r0, [r4]
- ldrh r1, [r4, 0x2]
- ldrb r2, [r4, 0x4]
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0810B318 @ =gMapObjects
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- adds r2, r1, r2
- ldrb r0, [r2, 0x5]
- cmp r0, r5
- bne _0810B320
- ldr r1, _0810B31C @ =gScriptLastTalked
- ldrb r0, [r2, 0x8]
- strh r0, [r1]
- movs r0, 0x1
- b _0810B322
- .align 2, 0
-_0810B314: .4byte gUnknown_0203923C
-_0810B318: .4byte gMapObjects
-_0810B31C: .4byte gScriptLastTalked
-_0810B320:
- movs r0, 0
-_0810B322:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end npc_before_player_of_type
-
- thumb_func_start oei_task_add
-oei_task_add: @ 810B328
- push {lr}
- ldr r0, _0810B344 @ =gUnknown_0203923C
- adds r1, r0, 0x2
- bl GetXYCoordsOneStepInFrontOfPlayer
- ldr r0, _0810B348 @ =task08_080C9820
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_0810B344: .4byte gUnknown_0203923C
-_0810B348: .4byte task08_080C9820
- thumb_func_end oei_task_add
-
- thumb_func_start task08_080C9820
-task08_080C9820: @ 810B34C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- bl ScriptContext2_Enable
- ldr r1, _0810B3A0 @ =gPlayerAvatar
- movs r0, 0x1
- strb r0, [r1, 0x6]
- ldrb r1, [r1, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810B3A4 @ =gMapObjects
- adds r4, r0, r1
- adds r0, r4, 0
- bl FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive
- lsls r0, 24
- cmp r0, 0
- beq _0810B382
- adds r0, r4, 0
- bl FieldObjectClearAnimIfSpecialAnimFinished
- lsls r0, 24
- cmp r0, 0
- beq _0810B3CE
-_0810B382:
- ldr r0, _0810B3A8 @ =gMapHeader
- ldrb r0, [r0, 0x17]
- cmp r0, 0x5
- bne _0810B3B4
- movs r0, 0x3B
- bl FieldEffectStart
- ldr r0, _0810B3AC @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _0810B3B0 @ =sub_810B428
- b _0810B3CC
- .align 2, 0
-_0810B3A0: .4byte gPlayerAvatar
-_0810B3A4: .4byte gMapObjects
-_0810B3A8: .4byte gMapHeader
-_0810B3AC: .4byte gTasks
-_0810B3B0: .4byte sub_810B428
-_0810B3B4:
- bl sub_8059BF4
- adds r0, r4, 0
- movs r1, 0x39
- bl FieldObjectSetSpecialAnim
- ldr r0, _0810B3D4 @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, _0810B3D8 @ =sub_810B3DC
-_0810B3CC:
- str r0, [r1]
-_0810B3CE:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0810B3D4: .4byte gTasks
-_0810B3D8: .4byte sub_810B3DC
- thumb_func_end task08_080C9820
-
- thumb_func_start sub_810B3DC
-sub_810B3DC: @ 810B3DC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0810B418 @ =gPlayerAvatar
- ldrb r1, [r0, 0x5]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810B41C @ =gMapObjects
- adds r0, r1
- bl FieldObjectCheckIfSpecialAnimFinishedOrInactive
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810B410
- movs r0, 0x3B
- bl FieldEffectStart
- ldr r0, _0810B420 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _0810B424 @ =sub_810B428
- str r0, [r1]
-_0810B410:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810B418: .4byte gPlayerAvatar
-_0810B41C: .4byte gMapObjects
-_0810B420: .4byte gTasks
-_0810B424: .4byte sub_810B428
- thumb_func_end sub_810B3DC
-
- thumb_func_start sub_810B428
-sub_810B428: @ 810B428
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- movs r0, 0x6
- bl FieldEffectActiveListContains
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _0810B4AC
- bl player_get_direction_lower_nybble
- ldr r6, _0810B4B4 @ =gUnknown_0202FF84
- lsls r0, 24
- lsrs r0, 24
- str r0, [r6, 0x4]
- cmp r0, 0x1
- bne _0810B44E
- str r4, [r6, 0x8]
-_0810B44E:
- ldr r1, [r6, 0x4]
- cmp r1, 0x2
- bne _0810B458
- movs r0, 0x1
- str r0, [r6, 0x8]
-_0810B458:
- cmp r1, 0x3
- bne _0810B460
- movs r0, 0x2
- str r0, [r6, 0x8]
-_0810B460:
- cmp r1, 0x4
- bne _0810B468
- movs r0, 0x3
- str r0, [r6, 0x8]
-_0810B468:
- ldr r5, _0810B4B8 @ =gPlayerAvatar
- ldrb r0, [r5, 0x5]
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, _0810B4BC @ =gMapObjects
- adds r4, r0
- bl GetPlayerAvatarGraphicsIdByCurrentState
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_805B980
- ldrb r1, [r5, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810B4C0 @ =gSprites
- adds r0, r1
- ldrb r1, [r6, 0x8]
- bl StartSpriteAnim
- movs r0, 0x6
- bl FieldEffectActiveListRemove
- ldr r1, _0810B4C4 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _0810B4C8 @ =sub_810B4CC
- str r1, [r0]
-_0810B4AC:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810B4B4: .4byte gUnknown_0202FF84
-_0810B4B8: .4byte gPlayerAvatar
-_0810B4BC: .4byte gMapObjects
-_0810B4C0: .4byte gSprites
-_0810B4C4: .4byte gTasks
-_0810B4C8: .4byte sub_810B4CC
- thumb_func_end sub_810B428
-
- thumb_func_start sub_810B4CC
-sub_810B4CC: @ 810B4CC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, _0810B4FC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrh r1, [r0, 0x18]
- lsls r1, 16
- ldrh r0, [r0, 0x1A]
- orrs r1, r0
- bl _call_via_r1
- ldr r1, _0810B500 @ =gPlayerAvatar
- movs r0, 0
- strb r0, [r1, 0x6]
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810B4FC: .4byte gTasks
-_0810B500: .4byte gPlayerAvatar
- thumb_func_end sub_810B4CC
-
- thumb_func_start SetUpFieldMove_RockSmash
-SetUpFieldMove_RockSmash: @ 810B504
- push {lr}
- movs r0, 0x56
- bl npc_before_player_of_type
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810B518
- movs r0, 0
- b _0810B526
-_0810B518:
- ldr r1, _0810B52C @ =gUnknown_0300485C
- ldr r0, _0810B530 @ =sub_808AB90
- str r0, [r1]
- ldr r1, _0810B534 @ =gUnknown_03005CE4
- ldr r0, _0810B538 @ =sub_810B53C
- str r0, [r1]
- movs r0, 0x1
-_0810B526:
- pop {r1}
- bx r1
- .align 2, 0
-_0810B52C: .4byte gUnknown_0300485C
-_0810B530: .4byte sub_808AB90
-_0810B534: .4byte gUnknown_03005CE4
-_0810B538: .4byte sub_810B53C
- thumb_func_end SetUpFieldMove_RockSmash
-
- thumb_func_start sub_810B53C
-sub_810B53C: @ 810B53C
- push {lr}
- ldr r1, _0810B550 @ =gUnknown_0202FF84
- ldr r0, _0810B554 @ =gUnknown_03005CE0
- ldrb r0, [r0]
- str r0, [r1]
- ldr r0, _0810B558 @ =UseRockSmashScript
- bl ScriptContext1_SetupScript
- pop {r0}
- bx r0
- .align 2, 0
-_0810B550: .4byte gUnknown_0202FF84
-_0810B554: .4byte gUnknown_03005CE0
-_0810B558: .4byte UseRockSmashScript
- thumb_func_end sub_810B53C
-
- thumb_func_start FldEff_RockSmash
-FldEff_RockSmash: @ 810B55C
- push {lr}
- bl oei_task_add
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0810B584 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _0810B588 @ =sub_810B58C
- lsrs r0, r2, 16
- strh r0, [r1, 0x18]
- strh r2, [r1, 0x1A]
- movs r0, 0x13
- bl IncrementGameStat
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_0810B584: .4byte gTasks
-_0810B588: .4byte sub_810B58C
- thumb_func_end FldEff_RockSmash
-
- thumb_func_start sub_810B58C
-sub_810B58C: @ 810B58C
- push {lr}
- movs r0, 0x83
- bl PlaySE
- movs r0, 0x25
- bl FieldEffectActiveListRemove
- bl EnableBothScriptContexts
- pop {r0}
- bx r0
- thumb_func_end sub_810B58C
-
- thumb_func_start SetUpFieldMove_Dig
-SetUpFieldMove_Dig: @ 810B5A4
- push {lr}
- bl sub_80CA1C8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810B5B6
- movs r0, 0
- b _0810B5C4
-_0810B5B6:
- ldr r1, _0810B5C8 @ =gUnknown_0300485C
- ldr r0, _0810B5CC @ =sub_808AB90
- str r0, [r1]
- ldr r1, _0810B5D0 @ =gUnknown_03005CE4
- ldr r0, _0810B5D4 @ =sub_810B5D8
- str r0, [r1]
- movs r0, 0x1
-_0810B5C4:
- pop {r1}
- bx r1
- .align 2, 0
-_0810B5C8: .4byte gUnknown_0300485C
-_0810B5CC: .4byte sub_808AB90
-_0810B5D0: .4byte gUnknown_03005CE4
-_0810B5D4: .4byte sub_810B5D8
- thumb_func_end SetUpFieldMove_Dig
-
- thumb_func_start sub_810B5D8
-sub_810B5D8: @ 810B5D8
- push {lr}
- bl sub_8053014
- movs r0, 0x26
- bl FieldEffectStart
- ldr r0, _0810B5F0 @ =gUnknown_0202FF84
- ldr r1, _0810B5F4 @ =gUnknown_03005CE0
- ldrb r1, [r1]
- str r1, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_0810B5F0: .4byte gUnknown_0202FF84
-_0810B5F4: .4byte gUnknown_03005CE0
- thumb_func_end sub_810B5D8
-
- thumb_func_start FldEff_UseDig
-FldEff_UseDig: @ 810B5F8
- push {lr}
- bl oei_task_add
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0810B62C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _0810B630 @ =sub_810B634
- lsrs r0, r2, 16
- strh r0, [r1, 0x18]
- strh r2, [r1, 0x1A]
- bl ShouldDoBrailleDigEffect
- lsls r0, 24
- cmp r0, 0
- bne _0810B624
- movs r0, 0x1
- bl SetPlayerAvatarTransitionFlags
-_0810B624:
- movs r0, 0
- pop {r1}
- bx r1
- .align 2, 0
-_0810B62C: .4byte gTasks
-_0810B630: .4byte sub_810B634
- thumb_func_end FldEff_UseDig
-
- thumb_func_start sub_810B634
-sub_810B634: @ 810B634
- push {r4,lr}
- movs r0, 0x26
- bl FieldEffectActiveListRemove
- bl ShouldDoBrailleDigEffect
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0810B64E
- bl DoBrailleDigEffect
- b _0810B666
-_0810B64E:
- ldr r0, _0810B66C @ =task08_080A1C44
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0810B670 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
-_0810B666:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810B66C: .4byte task08_080A1C44
-_0810B670: .4byte gTasks
- thumb_func_end sub_810B634
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/rom_800D42C.s b/asm/rom_800D42C.s
index 57a727072..9ab29cd30 100644
--- a/asm/rom_800D42C.s
+++ b/asm/rom_800D42C.s
@@ -2271,7 +2271,7 @@ _0800E868:
strb r0, [r1]
ldr r0, _0800E96C @ =sub_800FCFC
bl SetVBlankCallback
- bl sub_800B884
+ bl setup_poochyena_battle
ldr r0, _0800E970 @ =gBattleTypeFlags
ldrh r1, [r0]
movs r0, 0x40
@@ -6330,9 +6330,9 @@ _08010906:
cmp r2, 0
bge _08010902
movs r1, 0
- ldr r2, _08010AFC @ =gUnknown_02024C07
+ ldr r2, _08010AFC @ =gPlayerMonIndex
strb r1, [r2]
- ldr r3, _08010B00 @ =gUnknown_02024C08
+ ldr r3, _08010B00 @ =gEnemyMonIndex
strb r1, [r3]
ldr r4, _08010B04 @ =gBattleWeather
strh r1, [r4]
@@ -6401,7 +6401,7 @@ _08010994:
ldr r0, _08010B3C @ =gUnknown_02024D18
strh r5, [r0]
movs r0, 0
- ldr r1, _08010B40 @ =gUnknown_02024BEC
+ ldr r1, _08010B40 @ =gBattleMoveDamage
str r0, [r1]
ldr r2, _08010B44 @ =gUnknown_02024DE8
strh r0, [r2]
@@ -6562,8 +6562,8 @@ _08010AEC: .4byte gUnknown_02024C5C
_08010AF0: .4byte 0x02017100
_08010AF4: .4byte gUnknown_02024C80
_08010AF8: .4byte gUnknown_02024C7A
-_08010AFC: .4byte gUnknown_02024C07
-_08010B00: .4byte gUnknown_02024C08
+_08010AFC: .4byte gPlayerMonIndex
+_08010B00: .4byte gEnemyMonIndex
_08010B04: .4byte gBattleWeather
_08010B08: .4byte gUnknown_02024DBC
_08010B0C: .4byte gUnknown_02024C6C
@@ -6579,7 +6579,7 @@ _08010B30: .4byte 0x00017130
_08010B34: .4byte 0x00017160
_08010B38: .4byte gUnknown_02024D1E
_08010B3C: .4byte gUnknown_02024D18
-_08010B40: .4byte gUnknown_02024BEC
+_08010B40: .4byte gBattleMoveDamage
_08010B44: .4byte gUnknown_02024DE8
_08010B48: .4byte 0x00016002
_08010B4C: .4byte 0x000160a1
@@ -8790,7 +8790,7 @@ _08011D06:
movs r5, 0
ldr r3, _08011D84 @ =gUnknown_02024A68
ldr r2, _08011D7C @ =0x02000000
- ldr r6, _08011DB0 @ =gUnknown_02024C68
+ ldr r6, _08011DB0 @ =gBattleMoveFlags
ldrb r0, [r3]
cmp r5, r0
bge _08011D36
@@ -8858,7 +8858,7 @@ _08011DA0: .4byte 0x000160a6
_08011DA4: .4byte gUnknown_030042D4
_08011DA8: .4byte sub_8012324
_08011DAC: .4byte gUnknown_02024D1E
-_08011DB0: .4byte gUnknown_02024C68
+_08011DB0: .4byte gBattleMoveFlags
_08011DB4: .4byte gBattleMons
_08011DB8: .4byte 0x00016001
_08011DBC: .4byte 0x00016110
@@ -8942,7 +8942,7 @@ _08011E32:
ldr r1, _08011E84 @ =0x0001600e
adds r0, r1
strb r2, [r0]
- ldr r0, _08011E88 @ =gUnknown_02024C68
+ ldr r0, _08011E88 @ =gBattleMoveFlags
strb r2, [r0]
_08011E5A:
pop {r4-r6}
@@ -8959,7 +8959,7 @@ _08011E78: .4byte 0x02000000
_08011E7C: .4byte 0x00016001
_08011E80: .4byte 0x00016110
_08011E84: .4byte 0x0001600e
-_08011E88: .4byte gUnknown_02024C68
+_08011E88: .4byte gBattleMoveFlags
thumb_func_end bc_8013B1C
thumb_func_start sub_8011E8C
@@ -9027,9 +9027,9 @@ _08011EE0:
ldr r2, _08011F64 @ =0x0001600c
adds r0, r5, r2
strb r4, [r0]
- ldr r0, _08011F68 @ =gUnknown_02024BEC
+ ldr r0, _08011F68 @ =gBattleMoveDamage
str r4, [r0]
- ldr r0, _08011F6C @ =gUnknown_02024C68
+ ldr r0, _08011F6C @ =gBattleMoveFlags
strb r4, [r0]
ldr r1, _08011F70 @ =gUnknown_02024D1E
movs r2, 0
@@ -9062,8 +9062,8 @@ _08011F58: .4byte 0xffefffff
_08011F5C: .4byte 0x00016002
_08011F60: .4byte 0x000160a1
_08011F64: .4byte 0x0001600c
-_08011F68: .4byte gUnknown_02024BEC
-_08011F6C: .4byte gUnknown_02024C68
+_08011F68: .4byte gBattleMoveDamage
+_08011F6C: .4byte gBattleMoveFlags
_08011F70: .4byte gUnknown_02024D1E
_08011F74: .4byte gUnknown_02024A7F
_08011F78: .4byte gUnknown_030042D4
@@ -10891,7 +10891,7 @@ _08012EC0: .4byte 0x00016060
_08012EC4: .4byte gUnknown_02024D1E
_08012EC8: .4byte 0x00016094
_08012ECC:
- ldr r0, _08012F20 @ =gUnknown_02024C07
+ ldr r0, _08012F20 @ =gPlayerMonIndex
strb r1, [r0]
ldr r7, _08012F24 @ =gUnknown_02024C10
ldr r6, _08012F28 @ =gUnknown_02024C1C
@@ -10933,7 +10933,7 @@ _08012F12:
str r1, [r0]
b _08012F66
.align 2, 0
-_08012F20: .4byte gUnknown_02024C07
+_08012F20: .4byte gPlayerMonIndex
_08012F24: .4byte gUnknown_02024C10
_08012F28: .4byte gUnknown_02024C1C
_08012F2C: .4byte gUnknown_02024A64
@@ -12067,7 +12067,7 @@ bc_80154A0: @ 80137CC
cmp r1, r0
bcs _08013884
ldr r6, _08013860 @ =gUnknown_02024A60
- ldr r5, _08013864 @ =gUnknown_02024C07
+ ldr r5, _08013864 @ =gPlayerMonIndex
adds r4, r2, 0
movs r1, 0x84
lsls r1, 1
@@ -12121,7 +12121,7 @@ _08013854: .4byte 0x02000000
_08013858: .4byte 0x0001601d
_0801385C: .4byte gUnknown_02024A68
_08013860: .4byte gUnknown_02024A60
-_08013864: .4byte gUnknown_02024C07
+_08013864: .4byte gPlayerMonIndex
_08013868: .4byte gUnknown_02024C60
_0801386C: .4byte gBattleMons
_08013870: .4byte gUnknown_02024CA8
@@ -12273,7 +12273,7 @@ sub_8013998: @ 8013998
strb r0, [r1]
movs r0, 0
bl battle_get_side_with_given_state
- ldr r1, _080139E0 @ =gUnknown_02024C07
+ ldr r1, _080139E0 @ =gPlayerMonIndex
strb r0, [r1]
ldr r1, _080139E4 @ =gUnknown_02024C10
ldr r0, _080139E8 @ =gUnknown_081D8E02
@@ -12288,7 +12288,7 @@ _080139D0: .4byte gUnknown_02024A7F
_080139D4: .4byte gBattleTypeFlags
_080139D8: .4byte gUnknown_030041C0
_080139DC: .4byte gUnknown_02024D26
-_080139E0: .4byte gUnknown_02024C07
+_080139E0: .4byte gPlayerMonIndex
_080139E4: .4byte gUnknown_02024C10
_080139E8: .4byte gUnknown_081D8E02
_080139EC:
@@ -12448,7 +12448,7 @@ sub_8013B64: @ 8013B64
strb r0, [r1]
movs r0, 0
bl battle_get_side_with_given_state
- ldr r1, _08013BAC @ =gUnknown_02024C07
+ ldr r1, _08013BAC @ =gPlayerMonIndex
strb r0, [r1]
ldr r1, _08013BB0 @ =gUnknown_02024C10
ldr r0, _08013BB4 @ =gUnknown_081D8E02
@@ -12463,7 +12463,7 @@ _08013B9C: .4byte gUnknown_02024A7F
_08013BA0: .4byte gBattleTypeFlags
_08013BA4: .4byte gUnknown_030041C0
_08013BA8: .4byte gUnknown_02024D26
-_08013BAC: .4byte gUnknown_02024C07
+_08013BAC: .4byte gPlayerMonIndex
_08013BB0: .4byte gUnknown_02024C10
_08013BB4: .4byte gUnknown_081D8E02
_08013BB8:
@@ -12491,7 +12491,7 @@ sub_8013BDC: @ 8013BDC
movs r0, 0
strb r0, [r1]
ldr r1, _08013C08 @ =gUnknown_02024D28
- ldr r0, _08013C0C @ =gUnknown_02024C07
+ ldr r0, _08013C0C @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -12508,7 +12508,7 @@ sub_8013BDC: @ 8013BDC
.align 2, 0
_08013C04: .4byte gUnknown_02024A7F
_08013C08: .4byte gUnknown_02024D28
-_08013C0C: .4byte gUnknown_02024C07
+_08013C0C: .4byte gPlayerMonIndex
_08013C10: .4byte gUnknown_02024C10
_08013C14: .4byte gUnknown_081D8E29
_08013C18:
@@ -12545,7 +12545,7 @@ sub_8013C48: @ 8013C48
strb r0, [r1]
movs r0, 0x7
strb r0, [r1, 0x1]
- ldr r2, _08013C84 @ =gUnknown_02024C07
+ ldr r2, _08013C84 @ =gPlayerMonIndex
ldrb r0, [r2]
strb r0, [r1, 0x2]
ldr r3, _08013C88 @ =gUnknown_02024A6A
@@ -12566,7 +12566,7 @@ sub_8013C48: @ 8013C48
.align 2, 0
_08013C7C: .4byte gUnknown_02024A7F
_08013C80: .4byte gUnknown_030041C0
-_08013C84: .4byte gUnknown_02024C07
+_08013C84: .4byte gPlayerMonIndex
_08013C88: .4byte gUnknown_02024A6A
_08013C8C: .4byte gUnknown_02024C10
_08013C90: .4byte gUnknown_081D8E30
@@ -12995,7 +12995,7 @@ sub_8013FE8: @ 8013FE8
sub sp, 0xC
movs r0, 0x4
str r0, [sp]
- ldr r7, _08014028 @ =gUnknown_02024C07
+ ldr r7, _08014028 @ =gPlayerMonIndex
ldr r1, _0801402C @ =gUnknown_02024A7A
ldr r0, _08014030 @ =gUnknown_02024A7E
ldrb r0, [r0]
@@ -13019,7 +13019,7 @@ sub_8013FE8: @ 8013FE8
movs r0, 0xC
b _080146CC
.align 2, 0
-_08014028: .4byte gUnknown_02024C07
+_08014028: .4byte gPlayerMonIndex
_0801402C: .4byte gUnknown_02024A7A
_08014030: .4byte gUnknown_02024A7E
_08014034: .4byte 0x02000000
@@ -13037,7 +13037,7 @@ _08014044:
ldr r0, _080140C0 @ =0x000160e7
add r0, r10
strb r2, [r0]
- ldr r0, _080140C4 @ =gUnknown_02024C68
+ ldr r0, _080140C4 @ =gBattleMoveFlags
strb r2, [r0]
ldr r0, _080140C8 @ =gUnknown_02024C0E
strb r2, [r0]
@@ -13088,7 +13088,7 @@ _08014044:
_080140B8: .4byte gCritMultiplier
_080140BC: .4byte 0x0001601f
_080140C0: .4byte 0x000160e7
-_080140C4: .4byte gUnknown_02024C68
+_080140C4: .4byte gBattleMoveFlags
_080140C8: .4byte gUnknown_02024C0E
_080140CC: .4byte gUnknown_02024D1E
_080140D0: .4byte gUnknown_02024BE4
@@ -13240,7 +13240,7 @@ _08014218:
mov r4, r8
ldrb r0, [r4]
lsls r0, 1
- ldr r4, _0801425C @ =gUnknown_02024C07
+ ldr r4, _0801425C @ =gPlayerMonIndex
ldrb r2, [r4]
movs r1, 0x58
muls r1, r2
@@ -13270,7 +13270,7 @@ _08014218:
strb r0, [r1]
b _08014280
.align 2, 0
-_0801425C: .4byte gUnknown_02024C07
+_0801425C: .4byte gPlayerMonIndex
_08014260: .4byte gBattleMons
_08014264: .4byte gUnknown_02024C60
_08014268: .4byte gUnknown_02024BE6
@@ -13283,7 +13283,7 @@ _08014278:
strh r3, [r0]
strh r3, [r1]
_08014280:
- ldr r0, _080142A0 @ =gUnknown_02024C07
+ ldr r0, _080142A0 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -13297,7 +13297,7 @@ _08014280:
.align 2, 0
_08014298: .4byte gUnknown_02024BE6
_0801429C: .4byte gUnknown_02024BE8
-_080142A0: .4byte gUnknown_02024C07
+_080142A0: .4byte gPlayerMonIndex
_080142A4: .4byte gUnknown_030042E0
_080142A8:
ldr r0, _08014314 @ =gUnknown_030042E0
@@ -13305,7 +13305,7 @@ _080142A8:
ldrh r1, [r1]
strh r1, [r0, 0x24]
_080142B0:
- ldr r4, _0801431C @ =gUnknown_02024C07
+ ldr r4, _0801431C @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
movs r1, 0x1
@@ -13348,23 +13348,23 @@ _080142B0:
ldrh r0, [r0, 0x28]
cmp r0, 0
beq _08014330
- ldr r0, _0801432C @ =gUnknown_02024C08
+ ldr r0, _0801432C @ =gEnemyMonIndex
strb r2, [r0]
b _080146AC
.align 2, 0
_08014314: .4byte gUnknown_030042E0
_08014318: .4byte gUnknown_02024BE6
-_0801431C: .4byte gUnknown_02024C07
+_0801431C: .4byte gPlayerMonIndex
_08014320: .4byte gUnknown_02024C80
_08014324: .4byte gBattleMoves
_08014328: .4byte gBattleMons
-_0801432C: .4byte gUnknown_02024C08
+_0801432C: .4byte gEnemyMonIndex
_08014330:
ldr r2, _08014454 @ =gBattleTypeFlags
ldrh r1, [r2]
movs r0, 0x1
ands r0, r1
- ldr r3, _08014458 @ =gUnknown_02024C07
+ ldr r3, _08014458 @ =gPlayerMonIndex
mov r9, r2
cmp r0, 0
bne _08014342
@@ -13398,7 +13398,7 @@ _08014370:
ldr r3, _08014468 @ =gBattleMons
ldr r0, _0801446C @ =0x02000000
mov r8, r0
- ldr r2, _08014458 @ =gUnknown_02024C07
+ ldr r2, _08014458 @ =gPlayerMonIndex
ldrb r5, [r2]
ldr r1, _08014470 @ =0x00016010
adds r0, r5, r1
@@ -13438,7 +13438,7 @@ _080143B6:
lsrs r0, 24
cmp r6, r0
beq _08014404
- ldr r0, _08014458 @ =gUnknown_02024C07
+ ldr r0, _08014458 @ =gPlayerMonIndex
ldrb r0, [r0]
ldr r2, _08014470 @ =0x00016010
adds r0, r2
@@ -13496,7 +13496,7 @@ _0801441E:
ands r3, r0
cmp r3, 0
beq _080144A4
- ldr r0, _08014458 @ =gUnknown_02024C07
+ ldr r0, _08014458 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -13511,7 +13511,7 @@ _0801441E:
b _08014496
.align 2, 0
_08014454: .4byte gBattleTypeFlags
-_08014458: .4byte gUnknown_02024C07
+_08014458: .4byte gPlayerMonIndex
_0801445C: .4byte gUnknown_02024C80
_08014460: .4byte gBattleMoves
_08014464: .4byte gUnknown_02024BE6
@@ -13536,15 +13536,15 @@ _08014494:
movs r0, 0x2
_08014496:
bl battle_get_side_with_given_state
- ldr r1, _080144A0 @ =gUnknown_02024C08
+ ldr r1, _080144A0 @ =gEnemyMonIndex
strb r0, [r1]
b _080144B6
.align 2, 0
-_080144A0: .4byte gUnknown_02024C08
+_080144A0: .4byte gEnemyMonIndex
_080144A4:
- ldr r2, _080144EC @ =gUnknown_02024C08
+ ldr r2, _080144EC @ =gEnemyMonIndex
ldr r1, _080144F0 @ =0x02000000
- ldr r0, _080144F4 @ =gUnknown_02024C07
+ ldr r0, _080144F4 @ =gPlayerMonIndex
ldrb r0, [r0]
ldr r4, _080144F8 @ =0x00016010
adds r0, r4
@@ -13556,7 +13556,7 @@ _080144B6:
ldrb r0, [r7]
ldr r1, _08014500 @ =gBitTable
mov r8, r1
- ldr r5, _080144EC @ =gUnknown_02024C08
+ ldr r5, _080144EC @ =gEnemyMonIndex
ldrb r1, [r5]
lsls r1, 2
add r1, r8
@@ -13566,7 +13566,7 @@ _080144B6:
bne _080144D0
b _080146AC
_080144D0:
- ldr r6, _080144F4 @ =gUnknown_02024C07
+ ldr r6, _080144F4 @ =gPlayerMonIndex
ldrb r0, [r6]
bl battle_side_get_owner
adds r4, r0, 0
@@ -13579,9 +13579,9 @@ _080144D0:
ldrb r0, [r5]
b _0801469A
.align 2, 0
-_080144EC: .4byte gUnknown_02024C08
+_080144EC: .4byte gEnemyMonIndex
_080144F0: .4byte 0x02000000
-_080144F4: .4byte gUnknown_02024C07
+_080144F4: .4byte gPlayerMonIndex
_080144F8: .4byte 0x00016010
_080144FC: .4byte gUnknown_02024C0C
_08014500: .4byte gBitTable
@@ -13624,7 +13624,7 @@ _08014522:
movs r2, 0x2
orrs r1, r2
strb r1, [r0]
- ldr r1, _0801456C @ =gUnknown_02024C08
+ ldr r1, _0801456C @ =gEnemyMonIndex
ldrb r0, [r4]
strb r0, [r1]
b _080146AC
@@ -13633,7 +13633,7 @@ _0801455C: .4byte gUnknown_02024A60
_08014560: .4byte gUnknown_02024A7A
_08014564: .4byte gBattleMons
_08014568: .4byte gUnknown_02024D68
-_0801456C: .4byte gUnknown_02024C08
+_0801456C: .4byte gEnemyMonIndex
_08014570:
mov r4, r9
ldrh r1, [r4]
@@ -13684,12 +13684,12 @@ _080145D0:
movs r0, 0x2
_080145D2:
bl battle_get_side_with_given_state
- ldr r1, _0801460C @ =gUnknown_02024C08
+ ldr r1, _0801460C @ =gEnemyMonIndex
strb r0, [r1]
ldr r0, _08014610 @ =gUnknown_02024C0C
ldrb r1, [r0]
ldr r2, _08014614 @ =gBitTable
- ldr r5, _0801460C @ =gUnknown_02024C08
+ ldr r5, _0801460C @ =gEnemyMonIndex
ldrb r0, [r5]
lsls r0, 2
adds r0, r2
@@ -13697,7 +13697,7 @@ _080145D2:
ands r1, r0
cmp r1, 0
beq _080146AC
- ldr r0, _08014618 @ =gUnknown_02024C07
+ ldr r0, _08014618 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
adds r4, r0, 0
@@ -13710,12 +13710,12 @@ _080145D2:
ldrb r0, [r5]
b _0801469A
.align 2, 0
-_0801460C: .4byte gUnknown_02024C08
+_0801460C: .4byte gEnemyMonIndex
_08014610: .4byte gUnknown_02024C0C
_08014614: .4byte gBitTable
-_08014618: .4byte gUnknown_02024C07
+_08014618: .4byte gPlayerMonIndex
_0801461C:
- ldr r5, _08014660 @ =gUnknown_02024C08
+ ldr r5, _08014660 @ =gEnemyMonIndex
ldr r1, _08014664 @ =0x02000000
adds r2, r3, 0
ldrb r0, [r2]
@@ -13748,7 +13748,7 @@ _0801461C:
ldrb r0, [r5]
b _0801469A
.align 2, 0
-_08014660: .4byte gUnknown_02024C08
+_08014660: .4byte gEnemyMonIndex
_08014664: .4byte 0x02000000
_08014668: .4byte 0x00016010
_0801466C: .4byte gUnknown_02024C0C
@@ -13818,7 +13818,7 @@ _080146F0: .4byte gUnknown_02024A7F
thumb_func_start sub_80146F4
sub_80146F4: @ 80146F4
push {r4,lr}
- ldr r3, _08014764 @ =gUnknown_02024C07
+ ldr r3, _08014764 @ =gPlayerMonIndex
ldr r1, _08014768 @ =gUnknown_02024A7A
ldr r0, _0801476C @ =gUnknown_02024A7E
ldrb r0, [r0]
@@ -13874,7 +13874,7 @@ _0801475C:
pop {r0}
bx r0
.align 2, 0
-_08014764: .4byte gUnknown_02024C07
+_08014764: .4byte gPlayerMonIndex
_08014768: .4byte gUnknown_02024A7A
_0801476C: .4byte gUnknown_02024A7E
_08014770: .4byte gUnknown_030042A4
@@ -13898,8 +13898,8 @@ sub_80147A0: @ 80147A0
mov r6, r9
mov r5, r8
push {r5-r7}
- ldr r4, _08014804 @ =gUnknown_02024C07
- ldr r2, _08014808 @ =gUnknown_02024C08
+ ldr r4, _08014804 @ =gPlayerMonIndex
+ ldr r2, _08014808 @ =gEnemyMonIndex
ldr r1, _0801480C @ =gUnknown_02024A7A
ldr r0, _08014810 @ =gUnknown_02024A7E
ldrb r0, [r0]
@@ -13943,8 +13943,8 @@ sub_80147A0: @ 80147A0
str r0, [r2]
b _08014A8C
.align 2, 0
-_08014804: .4byte gUnknown_02024C07
-_08014808: .4byte gUnknown_02024C08
+_08014804: .4byte gPlayerMonIndex
+_08014808: .4byte gEnemyMonIndex
_0801480C: .4byte gUnknown_02024A7A
_08014810: .4byte gUnknown_02024A7E
_08014814: .4byte gUnknown_030042A4
@@ -14028,7 +14028,7 @@ _080148CC:
ldr r2, _08014904 @ =gUnknown_02024D1E
movs r0, 0
strb r0, [r2, 0x5]
- ldr r1, _08014908 @ =gUnknown_02024C07
+ ldr r1, _08014908 @ =gPlayerMonIndex
ldrb r0, [r1]
lsrs r0, 1
ldr r6, _0801490C @ =0x000160da
@@ -14055,7 +14055,7 @@ _080148FC:
b _08014A74
.align 2, 0
_08014904: .4byte gUnknown_02024D1E
-_08014908: .4byte gUnknown_02024C07
+_08014908: .4byte gPlayerMonIndex
_0801490C: .4byte 0x000160da
_08014910: .4byte gUnknown_02024C10
_08014914: .4byte gUnknown_081D9E7C
@@ -14095,7 +14095,7 @@ _08014958:
ldr r3, _0801498C @ =gUnknown_02024D1E
movs r0, 0x4
strb r0, [r3, 0x5]
- ldr r2, _08014990 @ =gUnknown_02024C07
+ ldr r2, _08014990 @ =gPlayerMonIndex
ldrb r0, [r2]
lsrs r0, 1
ldr r1, _08014994 @ =0x000160da
@@ -14119,7 +14119,7 @@ _08014958:
b _08014A74
.align 2, 0
_0801498C: .4byte gUnknown_02024D1E
-_08014990: .4byte gUnknown_02024C07
+_08014990: .4byte gPlayerMonIndex
_08014994: .4byte 0x000160da
_08014998: .4byte gUnknown_02024C10
_0801499C: .4byte gUnknown_081D9E7C
@@ -14202,7 +14202,7 @@ _08014A30:
ldr r1, _08014A54 @ =gUnknown_02024D1E
movs r0, 0x2
strb r0, [r1, 0x5]
- ldr r0, _08014A58 @ =gUnknown_02024C07
+ ldr r0, _08014A58 @ =gPlayerMonIndex
mov r8, r0
ldr r1, _08014A5C @ =gUnknown_02024C10
mov r9, r1
@@ -14212,13 +14212,13 @@ _08014A30:
.align 2, 0
_08014A50: .4byte gBattleTypeFlags
_08014A54: .4byte gUnknown_02024D1E
-_08014A58: .4byte gUnknown_02024C07
+_08014A58: .4byte gPlayerMonIndex
_08014A5C: .4byte gUnknown_02024C10
_08014A60: .4byte gUnknown_081D9E7C
_08014A64:
ldr r0, _08014AA0 @ =gUnknown_02024D1E
strb r1, [r0, 0x5]
- ldr r3, _08014AA4 @ =gUnknown_02024C07
+ ldr r3, _08014AA4 @ =gPlayerMonIndex
mov r8, r3
ldr r0, _08014AA8 @ =gUnknown_02024C10
mov r9, r0
@@ -14250,7 +14250,7 @@ _08014A8C:
bx r0
.align 2, 0
_08014AA0: .4byte gUnknown_02024D1E
-_08014AA4: .4byte gUnknown_02024C07
+_08014AA4: .4byte gPlayerMonIndex
_08014AA8: .4byte gUnknown_02024C10
_08014AAC: .4byte gUnknown_081D9E7C
_08014AB0: .4byte 0x000160d8
@@ -14416,7 +14416,7 @@ _08014BF0: .4byte gUnknown_02024D26
thumb_func_start sub_8014BF4
sub_8014BF4: @ 8014BF4
push {r4-r6,lr}
- ldr r4, _08014C44 @ =gUnknown_02024C07
+ ldr r4, _08014C44 @ =gPlayerMonIndex
ldr r1, _08014C48 @ =gUnknown_02024A7A
ldr r5, _08014C4C @ =gUnknown_02024A7E
ldrb r0, [r5]
@@ -14456,7 +14456,7 @@ _08014C28:
movs r1, 0x2
b _08014C72
.align 2, 0
-_08014C44: .4byte gUnknown_02024C07
+_08014C44: .4byte gPlayerMonIndex
_08014C48: .4byte gUnknown_02024A7A
_08014C4C: .4byte gUnknown_02024A7E
_08014C50: .4byte gBattleTypeFlags
@@ -14579,7 +14579,7 @@ _08014D4C: .4byte gUnknown_02024D26
thumb_func_start sub_8014D50
sub_8014D50: @ 8014D50
- ldr r2, _08014D78 @ =gUnknown_02024C07
+ ldr r2, _08014D78 @ =gPlayerMonIndex
ldr r1, _08014D7C @ =gUnknown_02024A7A
ldr r0, _08014D80 @ =gUnknown_02024A7E
ldrb r0, [r0]
@@ -14600,7 +14600,7 @@ sub_8014D50: @ 8014D50
strb r0, [r1]
bx lr
.align 2, 0
-_08014D78: .4byte gUnknown_02024C07
+_08014D78: .4byte gPlayerMonIndex
_08014D7C: .4byte gUnknown_02024A7A
_08014D80: .4byte gUnknown_02024A7E
_08014D84: .4byte gUnknown_030042A4
@@ -14612,7 +14612,7 @@ _08014D94: .4byte gUnknown_02024A7F
thumb_func_start sub_8014D98
sub_8014D98: @ 8014D98
- ldr r2, _08014DD0 @ =gUnknown_02024C07
+ ldr r2, _08014DD0 @ =gPlayerMonIndex
ldr r1, _08014DD4 @ =gUnknown_02024A7A
ldr r0, _08014DD8 @ =gUnknown_02024A7E
ldrb r0, [r0]
@@ -14640,7 +14640,7 @@ sub_8014D98: @ 8014D98
strb r0, [r1]
bx lr
.align 2, 0
-_08014DD0: .4byte gUnknown_02024C07
+_08014DD0: .4byte gPlayerMonIndex
_08014DD4: .4byte gUnknown_02024A7A
_08014DD8: .4byte gUnknown_02024A7E
_08014DDC: .4byte gUnknown_030042A4
@@ -14655,7 +14655,7 @@ _08014DF4: .4byte gUnknown_02024A7F
thumb_func_start sub_8014DF8
sub_8014DF8: @ 8014DF8
push {r4-r6,lr}
- ldr r3, _08014E68 @ =gUnknown_02024C07
+ ldr r3, _08014E68 @ =gPlayerMonIndex
ldr r1, _08014E6C @ =gUnknown_02024A7A
ldr r0, _08014E70 @ =gUnknown_02024A7E
ldrb r0, [r0]
@@ -14711,7 +14711,7 @@ _08014E42:
movs r0, 0x1
b _08014E9A
.align 2, 0
-_08014E68: .4byte gUnknown_02024C07
+_08014E68: .4byte gPlayerMonIndex
_08014E6C: .4byte gUnknown_02024A7A
_08014E70: .4byte gUnknown_02024A7E
_08014E74: .4byte gUnknown_030042A4
@@ -14747,7 +14747,7 @@ _08014EB8: .4byte gUnknown_02024A7F
thumb_func_start sub_8014EBC
sub_8014EBC: @ 8014EBC
push {r4,r5,lr}
- ldr r2, _08014F28 @ =gUnknown_02024C07
+ ldr r2, _08014F28 @ =gPlayerMonIndex
ldr r1, _08014F2C @ =gUnknown_02024A7A
ldr r0, _08014F30 @ =gUnknown_02024A7E
ldrb r0, [r0]
@@ -14803,7 +14803,7 @@ _08014F18:
strb r5, [r0, 0x5]
b _08014F5A
.align 2, 0
-_08014F28: .4byte gUnknown_02024C07
+_08014F28: .4byte gPlayerMonIndex
_08014F2C: .4byte gUnknown_02024A7A
_08014F30: .4byte gUnknown_02024A7E
_08014F34: .4byte gUnknown_030042A4
@@ -14839,7 +14839,7 @@ _08014F7C: .4byte gUnknown_02024A7F
thumb_func_start bs8_exit_by_flight
bs8_exit_by_flight: @ 8014F80
push {r4,lr}
- ldr r2, _08014FA8 @ =gUnknown_02024C07
+ ldr r2, _08014FA8 @ =gPlayerMonIndex
ldr r1, _08014FAC @ =gUnknown_02024A7A
ldr r4, _08014FB0 @ =gUnknown_02024A7E
ldrb r0, [r4]
@@ -14858,7 +14858,7 @@ bs8_exit_by_flight: @ 8014F80
pop {r0}
bx r0
.align 2, 0
-_08014FA8: .4byte gUnknown_02024C07
+_08014FA8: .4byte gPlayerMonIndex
_08014FAC: .4byte gUnknown_02024A7A
_08014FB0: .4byte gUnknown_02024A7E
_08014FB4: .4byte gUnknown_02024A68
@@ -14867,7 +14867,7 @@ _08014FB8: .4byte gUnknown_02024D26
thumb_func_start sub_8014FBC
sub_8014FBC: @ 8014FBC
- ldr r3, _08015008 @ =gUnknown_02024C07
+ ldr r3, _08015008 @ =gPlayerMonIndex
ldr r1, _0801500C @ =gUnknown_02024A7A
ldr r0, _08015010 @ =gUnknown_02024A7E
ldrb r0, [r0]
@@ -14905,7 +14905,7 @@ sub_8014FBC: @ 8014FBC
strb r0, [r1, 0x1]
bx lr
.align 2, 0
-_08015008: .4byte gUnknown_02024C07
+_08015008: .4byte gPlayerMonIndex
_0801500C: .4byte gUnknown_02024A7A
_08015010: .4byte gUnknown_02024A7E
_08015014: .4byte gUnknown_030042A4
@@ -14987,7 +14987,7 @@ bsC_8016D70: @ 8015094
ldr r1, _0801511C @ =0xf1e892af
ands r0, r1
str r0, [r2]
- ldr r0, _08015120 @ =gUnknown_02024BEC
+ ldr r0, _08015120 @ =gBattleMoveDamage
movs r4, 0
str r4, [r0]
ldr r1, _08015124 @ =0x02000000
@@ -14998,7 +14998,7 @@ bsC_8016D70: @ 8015094
adds r0, r1, r3
strb r4, [r0]
ldr r2, _08015130 @ =gUnknown_02024C3C
- ldr r5, _08015134 @ =gUnknown_02024C07
+ ldr r5, _08015134 @ =gPlayerMonIndex
ldrb r0, [r5]
lsls r0, 1
adds r0, r2
@@ -15035,12 +15035,12 @@ _08015110: .4byte gUnknown_02024A7F
_08015114: .4byte gUnknown_02024A76
_08015118: .4byte gUnknown_02024C6C
_0801511C: .4byte 0xf1e892af
-_08015120: .4byte gUnknown_02024BEC
+_08015120: .4byte gBattleMoveDamage
_08015124: .4byte 0x02000000
_08015128: .4byte 0x00016002
_0801512C: .4byte 0x000160a1
_08015130: .4byte gUnknown_02024C3C
-_08015134: .4byte gUnknown_02024C07
+_08015134: .4byte gPlayerMonIndex
_08015138: .4byte gUnknown_02024C44
_0801513C: .4byte 0x0001601c
_08015140: .4byte gUnknown_02024DEC
@@ -15078,15 +15078,15 @@ _0801516C:
.4byte _080151C8
.4byte _080151B4
_08015198:
- ldr r0, _0801519C @ =gUnknown_02024C08
+ ldr r0, _0801519C @ =gEnemyMonIndex
b _080151C6
.align 2, 0
-_0801519C: .4byte gUnknown_02024C08
+_0801519C: .4byte gEnemyMonIndex
_080151A0:
- ldr r0, _080151A4 @ =gUnknown_02024C07
+ ldr r0, _080151A4 @ =gPlayerMonIndex
b _080151C6
.align 2, 0
-_080151A4: .4byte gUnknown_02024C07
+_080151A4: .4byte gPlayerMonIndex
_080151A8:
ldr r0, _080151AC @ =gUnknown_02024C0A
b _080151C6
@@ -16703,14 +16703,14 @@ sub_8015DFC: @ 8015DFC
push {r5-r7}
movs r0, 0
mov r9, r0
- ldr r1, _08015EA0 @ =gUnknown_02024C07
+ ldr r1, _08015EA0 @ =gPlayerMonIndex
mov r2, r9
strb r2, [r1]
ldr r0, _08015EA4 @ =gUnknown_02024A68
ldrb r4, [r0]
adds r6, r1, 0
mov r10, r0
- ldr r7, _08015EA8 @ =gUnknown_02024C08
+ ldr r7, _08015EA8 @ =gEnemyMonIndex
ldr r3, _08015EAC @ =0x02000000
mov r12, r3
cmp r9, r4
@@ -16784,9 +16784,9 @@ _08015E96:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08015EA0: .4byte gUnknown_02024C07
+_08015EA0: .4byte gPlayerMonIndex
_08015EA4: .4byte gUnknown_02024A68
-_08015EA8: .4byte gUnknown_02024C08
+_08015EA8: .4byte gEnemyMonIndex
_08015EAC: .4byte 0x02000000
_08015EB0: .4byte gUnknown_02024C0C
_08015EB4: .4byte gBitTable
@@ -16891,7 +16891,7 @@ _08015F80:
movs r7, 0
ldr r5, _0801601C @ =gUnknown_030041C0
_08015F8A:
- ldr r0, _08016020 @ =gUnknown_02024C07
+ ldr r0, _08016020 @ =gPlayerMonIndex
ldrb r4, [r6]
strb r4, [r0]
mov r0, r8
@@ -16961,7 +16961,7 @@ _08016010: .4byte 0x0001600e
_08016014: .4byte 0x000160fc
_08016018: .4byte gUnknown_02024A60
_0801601C: .4byte gUnknown_030041C0
-_08016020: .4byte gUnknown_02024C07
+_08016020: .4byte gPlayerMonIndex
_08016024: .4byte gUnknown_02024C7A
_08016028: .4byte gUnknown_02024C80
_0801602C: .4byte 0x0000fffe
@@ -16981,7 +16981,7 @@ _08016040:
mov r8, r0
ldr r5, _080160D0 @ =gUnknown_030041C0
_0801604C:
- ldr r0, _080160D4 @ =gUnknown_02024C07
+ ldr r0, _080160D4 @ =gPlayerMonIndex
ldrb r4, [r7]
strb r4, [r0]
ldr r1, _080160D8 @ =gUnknown_02024A60
@@ -17049,7 +17049,7 @@ _080160C2:
.align 2, 0
_080160CC: .4byte 0x000160fc
_080160D0: .4byte gUnknown_030041C0
-_080160D4: .4byte gUnknown_02024C07
+_080160D4: .4byte gPlayerMonIndex
_080160D8: .4byte gUnknown_02024A60
_080160DC: .4byte gUnknown_02024C7A
_080160E0: .4byte gUnknown_02024C80
@@ -17070,7 +17070,7 @@ _080160F4:
mov r8, r1
ldr r5, _080161A4 @ =gUnknown_030041C0
_0801610A:
- ldr r0, _080161A8 @ =gUnknown_02024C07
+ ldr r0, _080161A8 @ =gPlayerMonIndex
ldrb r4, [r7]
strb r4, [r0]
mov r2, r10
@@ -17150,7 +17150,7 @@ _0801618A:
_0801619C: .4byte 0x000160fc
_080161A0: .4byte gUnknown_02024A60
_080161A4: .4byte gUnknown_030041C0
-_080161A8: .4byte gUnknown_02024C07
+_080161A8: .4byte gPlayerMonIndex
_080161AC: .4byte gUnknown_02024C80
_080161B0: .4byte gUnknown_02024C7A
_080161B4: .4byte 0x0000feff
@@ -17166,7 +17166,7 @@ _080161C8:
bhi _08016236
ldr r7, _08016254 @ =gUnknown_02024A60
adds r5, r1, 0
- ldr r6, _08016258 @ =gUnknown_02024C07
+ ldr r6, _08016258 @ =gPlayerMonIndex
_080161D8:
ldrb r4, [r5]
strb r4, [r6]
@@ -17234,7 +17234,7 @@ _0801623E:
.align 2, 0
_08016250: .4byte 0x000160fc
_08016254: .4byte gUnknown_02024A60
-_08016258: .4byte gUnknown_02024C07
+_08016258: .4byte gPlayerMonIndex
_0801625C: .4byte gUnknown_02024C7A
_08016260: .4byte gUnknown_02024C80
_08016264: .4byte 0x0000ffdf
@@ -17276,7 +17276,7 @@ _08016288:
ldrh r0, [r0, 0x28]
cmp r0, 0
beq _080162CA
- ldr r0, _08016314 @ =gUnknown_02024C08
+ ldr r0, _08016314 @ =gEnemyMonIndex
strb r2, [r0]
ldr r0, _08016318 @ =gUnknown_081D939A
bl b_call_bc_move_exec
@@ -17321,7 +17321,7 @@ _08016304: .4byte gUnknown_02024A60
_08016308: .4byte gUnknown_02024DDC
_0801630C: .4byte gUnknown_02024A7A
_08016310: .4byte gBattleMons
-_08016314: .4byte gUnknown_02024C08
+_08016314: .4byte gEnemyMonIndex
_08016318: .4byte gUnknown_081D939A
_0801631C: .4byte 0x02000000
_08016320: .4byte 0x0001600e
@@ -17619,7 +17619,7 @@ _08016578: .4byte gUnknown_02024C6C
_0801657C: .4byte 0x01000020
_08016580:
ldr r3, _080165B4 @ =gUnknown_02024A60
- ldr r4, _080165B8 @ =gUnknown_02024C07
+ ldr r4, _080165B8 @ =gPlayerMonIndex
ldr r1, _080165BC @ =gUnknown_02024A7A
adds r5, r7, r2
ldrb r0, [r5]
@@ -17644,7 +17644,7 @@ _08016580:
bl _08017088
.align 2, 0
_080165B4: .4byte gUnknown_02024A60
-_080165B8: .4byte gUnknown_02024C07
+_080165B8: .4byte gPlayerMonIndex
_080165BC: .4byte gUnknown_02024A7A
_080165C0: .4byte gUnknown_02024C0C
_080165C4: .4byte gBitTable
@@ -17707,7 +17707,7 @@ _08016638:
beq _08016686
cmp r2, 0
beq _08016686
- ldr r1, _0801669C @ =gUnknown_02024BEC
+ ldr r1, _0801669C @ =gBattleMoveDamage
ldrh r0, [r0, 0x2C]
lsrs r0, 4
str r0, [r1]
@@ -17735,7 +17735,7 @@ _08016686:
.align 2, 0
_08016694: .4byte gUnknown_02024C98
_08016698: .4byte gBattleMons
-_0801669C: .4byte gUnknown_02024BEC
+_0801669C: .4byte gBattleMoveDamage
_080166A0: .4byte gUnknown_081D93D1
_080166A4: .4byte 0x02000000
_080166A8:
@@ -17830,9 +17830,9 @@ _08016730:
ldrh r0, [r0, 0x28]
cmp r0, 0
beq _0801679C
- ldr r0, _080167B0 @ =gUnknown_02024C08
+ ldr r0, _080167B0 @ =gEnemyMonIndex
strb r5, [r0]
- ldr r2, _080167B4 @ =gUnknown_02024BEC
+ ldr r2, _080167B4 @ =gBattleMoveDamage
ldrb r0, [r6]
muls r0, r1
adds r0, r3
@@ -17868,8 +17868,8 @@ _0801679C:
.align 2, 0
_080167A8: .4byte gUnknown_02024C98
_080167AC: .4byte gBattleMons
-_080167B0: .4byte gUnknown_02024C08
-_080167B4: .4byte gUnknown_02024BEC
+_080167B0: .4byte gEnemyMonIndex
+_080167B4: .4byte gBattleMoveDamage
_080167B8: .4byte 0x02000000
_080167BC: .4byte 0x000160a4
_080167C0: .4byte 0x000160a5
@@ -17892,7 +17892,7 @@ _080167C8:
ldrh r0, [r1, 0x28]
cmp r0, 0
beq _0801680A
- ldr r2, _0801681C @ =gUnknown_02024BEC
+ ldr r2, _0801681C @ =gBattleMoveDamage
ldrh r0, [r1, 0x2C]
lsrs r0, 3
str r0, [r2]
@@ -17916,7 +17916,7 @@ _0801680A:
bl _08017072
.align 2, 0
_08016818: .4byte gBattleMons
-_0801681C: .4byte gUnknown_02024BEC
+_0801681C: .4byte gBattleMoveDamage
_08016820: .4byte gUnknown_081D9518
_08016824: .4byte 0x02000000
_08016828:
@@ -17938,7 +17938,7 @@ _08016828:
ldrh r0, [r1, 0x28]
cmp r0, 0
beq _080168A2
- ldr r5, _080168B4 @ =gUnknown_02024BEC
+ ldr r5, _080168B4 @ =gBattleMoveDamage
ldrh r0, [r1, 0x2C]
lsrs r0, 4
str r0, [r5]
@@ -17990,7 +17990,7 @@ _080168A2:
bl _08017072
.align 2, 0
_080168B0: .4byte gBattleMons
-_080168B4: .4byte gUnknown_02024BEC
+_080168B4: .4byte gBattleMoveDamage
_080168B8: .4byte gUnknown_081D9518
_080168BC: .4byte 0x02000000
_080168C0:
@@ -18011,7 +18011,7 @@ _080168C0:
ldrh r0, [r1, 0x28]
cmp r0, 0
beq _08016902
- ldr r2, _08016910 @ =gUnknown_02024BEC
+ ldr r2, _08016910 @ =gBattleMoveDamage
ldrh r0, [r1, 0x2C]
lsrs r0, 3
str r0, [r2]
@@ -18035,7 +18035,7 @@ _08016902:
b _08017072
.align 2, 0
_0801690C: .4byte gBattleMons
-_08016910: .4byte gUnknown_02024BEC
+_08016910: .4byte gBattleMoveDamage
_08016914: .4byte gUnknown_081D953A
_08016918: .4byte 0x02000000
_0801691C:
@@ -18057,7 +18057,7 @@ _0801691C:
ldrh r0, [r1, 0x28]
cmp r0, 0
beq _08016960
- ldr r2, _08016970 @ =gUnknown_02024BEC
+ ldr r2, _08016970 @ =gBattleMoveDamage
ldrh r0, [r1, 0x2C]
lsrs r0, 2
str r0, [r2]
@@ -18081,7 +18081,7 @@ _08016960:
b _08017072
.align 2, 0
_0801696C: .4byte gBattleMons
-_08016970: .4byte gUnknown_02024BEC
+_08016970: .4byte gBattleMoveDamage
_08016974: .4byte gUnknown_081D9613
_08016978: .4byte 0x02000000
_0801697C:
@@ -18103,7 +18103,7 @@ _0801697C:
ldrh r0, [r1, 0x28]
cmp r0, 0
beq _080169C0
- ldr r2, _080169D0 @ =gUnknown_02024BEC
+ ldr r2, _080169D0 @ =gBattleMoveDamage
ldrh r0, [r1, 0x2C]
lsrs r0, 2
str r0, [r2]
@@ -18127,7 +18127,7 @@ _080169C0:
b _08017072
.align 2, 0
_080169CC: .4byte gBattleMons
-_080169D0: .4byte gUnknown_02024BEC
+_080169D0: .4byte gBattleMoveDamage
_080169D4: .4byte gUnknown_081D9624
_080169D8: .4byte 0x02000000
_080169DC:
@@ -18204,7 +18204,7 @@ _080169DC:
ldr r1, _08016AA8 @ =gUnknown_02024C10
ldr r0, _08016AAC @ =gUnknown_081D95E2
str r0, [r1]
- ldr r2, _08016AB0 @ =gUnknown_02024BEC
+ ldr r2, _08016AB0 @ =gBattleMoveDamage
ldrb r0, [r6]
mov r7, r10
muls r7, r0
@@ -18228,7 +18228,7 @@ _08016AA0: .4byte 0x000160a5
_08016AA4: .4byte gUnknown_030041C0
_08016AA8: .4byte gUnknown_02024C10
_08016AAC: .4byte gUnknown_081D95E2
-_08016AB0: .4byte gUnknown_02024BEC
+_08016AB0: .4byte gBattleMoveDamage
_08016AB4:
ldr r1, _08016B00 @ =gUnknown_030041C0
movs r0, 0xFD
@@ -18374,7 +18374,7 @@ _08016BD2:
cmp r0, r1
bcc _08016BB2
_08016BE0:
- ldr r2, _08016BF8 @ =gUnknown_02024C07
+ ldr r2, _08016BF8 @ =gPlayerMonIndex
ldr r1, _08016BFC @ =gUnknown_02024A68
ldrb r0, [r2]
ldrb r1, [r1]
@@ -18385,7 +18385,7 @@ _08016BE0:
b _0801707E
.align 2, 0
_08016BF4: .4byte gBattleMons
-_08016BF8: .4byte gUnknown_02024C07
+_08016BF8: .4byte gPlayerMonIndex
_08016BFC: .4byte gUnknown_02024A68
_08016C00:
ldr r5, _08016C38 @ =gUnknown_02024A60
@@ -19130,17 +19130,17 @@ _080171C6:
strb r0, [r6, 0x3]
movs r0, 0xFF
strb r0, [r6, 0x4]
- ldr r3, _08017224 @ =gUnknown_02024C08
+ ldr r3, _08017224 @ =gEnemyMonIndex
ldrb r0, [r4]
strb r0, [r3]
- ldr r1, _08017228 @ =gUnknown_02024C07
+ ldr r1, _08017228 @ =gPlayerMonIndex
mov r0, r12
adds r0, 0x4
ldrb r2, [r4]
adds r0, r2
ldrb r0, [r0]
strb r0, [r1]
- ldr r1, _0801722C @ =gUnknown_02024BEC
+ ldr r1, _0801722C @ =gBattleMoveDamage
ldrb r0, [r4]
lsls r0, 2
add r0, r10
@@ -19159,9 +19159,9 @@ _080171C6:
b _08017364
.align 2, 0
_08017220: .4byte gUnknown_02024D1E
-_08017224: .4byte gUnknown_02024C08
-_08017228: .4byte gUnknown_02024C07
-_0801722C: .4byte gUnknown_02024BEC
+_08017224: .4byte gEnemyMonIndex
+_08017228: .4byte gPlayerMonIndex
+_0801722C: .4byte gBattleMoveDamage
_08017230: .4byte gUnknown_02024D68
_08017234: .4byte 0x0000ffff
_08017238: .4byte gUnknown_081D92D7
@@ -19197,7 +19197,7 @@ _0801726A:
ldr r4, _080172AC @ =gUnknown_030041C0
ldr r7, _080172B0 @ =gUnknown_02024CA8
_08017272:
- ldr r2, _080172B4 @ =gUnknown_02024C07
+ ldr r2, _080172B4 @ =gPlayerMonIndex
ldr r1, _080172B8 @ =gUnknown_02024A7A
ldrb r0, [r3]
adds r0, r1
@@ -19225,7 +19225,7 @@ _080172A4: .4byte gUnknown_02024A68
_080172A8: .4byte gUnknown_02024A60
_080172AC: .4byte gUnknown_030041C0
_080172B0: .4byte gUnknown_02024CA8
-_080172B4: .4byte gUnknown_02024C07
+_080172B4: .4byte gPlayerMonIndex
_080172B8: .4byte gUnknown_02024A7A
_080172BC: .4byte gUnknown_02024C0C
_080172C0: .4byte gBitTable
@@ -19274,7 +19274,7 @@ _080172C4:
negs r1, r1
ands r0, r1
str r0, [r2]
- ldr r3, _08017338 @ =gUnknown_02024BEC
+ ldr r3, _08017338 @ =gBattleMoveDamage
ldr r2, _0801733C @ =gBattleMons
ldrb r1, [r5]
movs r0, 0x58
@@ -19287,7 +19287,7 @@ _080172C4:
b _08017360
.align 2, 0
_08017334: .4byte gUnknown_02024C98
-_08017338: .4byte gUnknown_02024BEC
+_08017338: .4byte gBattleMoveDamage
_0801733C: .4byte gBattleMons
_08017340: .4byte gUnknown_02024C10
_08017344: .4byte gUnknown_081D9202
@@ -19459,7 +19459,7 @@ _08017490:
mov r9, r1
ldr r0, _08017520 @ =gUnknown_02024C09
mov r12, r0
- ldr r1, _08017524 @ =gUnknown_02024C08
+ ldr r1, _08017524 @ =gEnemyMonIndex
mov r8, r1
mov r10, r9
ldr r5, _08017508 @ =0x0001605a
@@ -19524,7 +19524,7 @@ _08017514: .4byte gUnknown_02024C0C
_08017518: .4byte gBitTable
_0801751C: .4byte 0x02000000
_08017520: .4byte gUnknown_02024C09
-_08017524: .4byte gUnknown_02024C08
+_08017524: .4byte gEnemyMonIndex
_08017528: .4byte gBattleMons
_0801752C: .4byte 0x00016113
_08017530: .4byte gUnknown_02024A6A
@@ -19573,7 +19573,7 @@ _0801757C:
strb r0, [r1]
_0801758E:
ldr r7, _080175E0 @ =gUnknown_02024C09
- ldr r6, _080175E4 @ =gUnknown_02024C08
+ ldr r6, _080175E4 @ =gEnemyMonIndex
ldr r1, _080175E8 @ =0x02000000
mov r8, r1
ldr r3, _080175D8 @ =0x0001605a
@@ -19614,7 +19614,7 @@ _080175C4:
_080175D8: .4byte 0x0001605a
_080175DC: .4byte 0x00016059
_080175E0: .4byte gUnknown_02024C09
-_080175E4: .4byte gUnknown_02024C08
+_080175E4: .4byte gEnemyMonIndex
_080175E8: .4byte 0x02000000
_080175EC: .4byte gBattleMons
_080175F0: .4byte gBitTable
@@ -19829,7 +19829,7 @@ _08017768:
.4byte _08017F9E
_080177A4:
ldr r1, _080177D0 @ =gBattleMons
- ldr r3, _080177D4 @ =gUnknown_02024C07
+ ldr r3, _080177D4 @ =gPlayerMonIndex
ldrb r2, [r3]
movs r0, 0x58
muls r2, r0
@@ -19850,13 +19850,13 @@ _080177A4:
bl _08017F94
.align 2, 0
_080177D0: .4byte gBattleMons
-_080177D4: .4byte gUnknown_02024C07
+_080177D4: .4byte gPlayerMonIndex
_080177D8: .4byte 0xfdffffff
_080177DC: .4byte gUnknown_02024C98
_080177E0: .4byte 0xffffbfff
_080177E4:
ldr r7, _0801784C @ =gBattleMons
- ldr r4, _08017850 @ =gUnknown_02024C07
+ ldr r4, _08017850 @ =gPlayerMonIndex
ldrb r1, [r4]
movs r5, 0x58
adds r0, r1, 0
@@ -19908,7 +19908,7 @@ _08017804:
b _08017D90
.align 2, 0
_0801784C: .4byte gBattleMons
-_08017850: .4byte gUnknown_02024C07
+_08017850: .4byte gPlayerMonIndex
_08017854: .4byte 0xf7ffffff
_08017858: .4byte gUnknown_02024D1E
_0801785C: .4byte gUnknown_02024C10
@@ -19942,7 +19942,7 @@ _08017890:
str r0, [r2]
_08017894:
ldr r2, _080178D8 @ =gBattleMons
- ldr r0, _080178DC @ =gUnknown_02024C07
+ ldr r0, _080178DC @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r1, r0
@@ -19978,7 +19978,7 @@ _080178BE:
b _08017D90
.align 2, 0
_080178D8: .4byte gBattleMons
-_080178DC: .4byte gUnknown_02024C07
+_080178DC: .4byte gPlayerMonIndex
_080178E0: .4byte gUnknown_02024BE6
_080178E4: .4byte gUnknown_02024C10
_080178E8: .4byte gUnknown_081D94EE
@@ -20005,7 +20005,7 @@ _08017918: .4byte gUnknown_02024C10
_0801791C: .4byte gUnknown_081D94FB
_08017920:
ldr r1, _0801797C @ =gBattleMons
- ldr r7, _08017980 @ =gUnknown_02024C07
+ ldr r7, _08017980 @ =gPlayerMonIndex
ldrb r0, [r7]
movs r6, 0x58
muls r0, r6
@@ -20050,7 +20050,7 @@ _0801793C:
b _080179C8
.align 2, 0
_0801797C: .4byte gBattleMons
-_08017980: .4byte gUnknown_02024C07
+_08017980: .4byte gPlayerMonIndex
_08017984: .4byte gBattleMoves
_08017988: .4byte gUnknown_02024BE6
_0801798C: .4byte gUnknown_02024C10
@@ -20089,7 +20089,7 @@ _080179D0: .4byte gUnknown_081D9552
_080179D4: .4byte gUnknown_02024D1E
_080179D8:
ldr r1, _08017A30 @ =gBattleMons
- ldr r0, _08017A34 @ =gUnknown_02024C07
+ ldr r0, _08017A34 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -20125,7 +20125,7 @@ _08017A02:
ldr r1, _08017A44 @ =gUnknown_02024C10
ldr r0, _08017A48 @ =gUnknown_081D9977
str r0, [r1]
- ldr r2, _08017A4C @ =gUnknown_02024C68
+ ldr r2, _08017A4C @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -20135,16 +20135,16 @@ _08017A02:
b _08017D90
.align 2, 0
_08017A30: .4byte gBattleMons
-_08017A34: .4byte gUnknown_02024C07
+_08017A34: .4byte gPlayerMonIndex
_08017A38: .4byte gUnknown_02024CA8
_08017A3C: .4byte gUnknown_02024C6C
_08017A40: .4byte gUnknown_02024D1E
_08017A44: .4byte gUnknown_02024C10
_08017A48: .4byte gUnknown_081D9977
-_08017A4C: .4byte gUnknown_02024C68
+_08017A4C: .4byte gBattleMoveFlags
_08017A50:
ldr r1, _08017AA4 @ =gBattleMons
- ldr r3, _08017AA8 @ =gUnknown_02024C07
+ ldr r3, _08017AA8 @ =gPlayerMonIndex
ldrb r2, [r3]
movs r0, 0x58
muls r0, r2
@@ -20187,7 +20187,7 @@ _08017A9C:
b _08017D96
.align 2, 0
_08017AA4: .4byte gBattleMons
-_08017AA8: .4byte gUnknown_02024C07
+_08017AA8: .4byte gPlayerMonIndex
_08017AAC: .4byte 0xffbfffff
_08017AB0: .4byte gUnknown_02024CA8
_08017AB4: .4byte gUnknown_02024C10
@@ -20197,7 +20197,7 @@ _08017AC0: .4byte 0x02000000
_08017AC4: .4byte 0x000160e7
_08017AC8:
ldr r1, _08017B08 @ =gBattleMons
- ldr r3, _08017B0C @ =gUnknown_02024C07
+ ldr r3, _08017B0C @ =gPlayerMonIndex
ldrb r2, [r3]
movs r0, 0x58
muls r0, r2
@@ -20229,13 +20229,13 @@ _08017AE2:
b _08017D7E
.align 2, 0
_08017B08: .4byte gBattleMons
-_08017B0C: .4byte gUnknown_02024C07
+_08017B0C: .4byte gPlayerMonIndex
_08017B10: .4byte gUnknown_02024D28
_08017B14: .4byte gUnknown_02024C10
_08017B18: .4byte gUnknown_081D9573
_08017B1C:
ldr r0, _08017B74 @ =gUnknown_02024CA8
- ldr r3, _08017B78 @ =gUnknown_02024C07
+ ldr r3, _08017B78 @ =gPlayerMonIndex
ldrb r2, [r3]
lsls r1, r2, 3
subs r1, r2
@@ -20280,7 +20280,7 @@ _08017B3C:
b _08017D90
.align 2, 0
_08017B74: .4byte gUnknown_02024CA8
-_08017B78: .4byte gUnknown_02024C07
+_08017B78: .4byte gPlayerMonIndex
_08017B7C: .4byte gUnknown_02024BE6
_08017B80: .4byte gUnknown_02024D28
_08017B84: .4byte 0x02000000
@@ -20290,7 +20290,7 @@ _08017B90: .4byte gUnknown_081D9139
_08017B94: .4byte gUnknown_02024C6C
_08017B98:
ldr r0, _08017BF4 @ =gUnknown_02024CA8
- ldr r4, _08017BF8 @ =gUnknown_02024C07
+ ldr r4, _08017BF8 @ =gPlayerMonIndex
ldrb r3, [r4]
lsls r1, r3, 3
subs r1, r3
@@ -20337,7 +20337,7 @@ _08017BEC:
b _08017D96
.align 2, 0
_08017BF4: .4byte gUnknown_02024CA8
-_08017BF8: .4byte gUnknown_02024C07
+_08017BF8: .4byte gPlayerMonIndex
_08017BFC: .4byte gBattleMoves
_08017C00: .4byte gUnknown_02024BE6
_08017C04: .4byte gUnknown_02024D28
@@ -20347,7 +20347,7 @@ _08017C10: .4byte gUnknown_02024C6C
_08017C14: .4byte 0x02000000
_08017C18: .4byte 0x000160e7
_08017C1C:
- ldr r4, _08017C4C @ =gUnknown_02024C07
+ ldr r4, _08017C4C @ =gPlayerMonIndex
ldrb r0, [r4]
ldr r1, _08017C50 @ =gUnknown_02024BE6
ldrh r1, [r1]
@@ -20371,14 +20371,14 @@ _08017C30:
ldr r0, _08017C5C @ =gUnknown_081D9459
b _08017D7E
.align 2, 0
-_08017C4C: .4byte gUnknown_02024C07
+_08017C4C: .4byte gPlayerMonIndex
_08017C50: .4byte gUnknown_02024BE6
_08017C54: .4byte gUnknown_02024D28
_08017C58: .4byte gUnknown_02024C10
_08017C5C: .4byte gUnknown_081D9459
_08017C60:
ldr r7, _08017CAC @ =gBattleMons
- ldr r5, _08017CB0 @ =gUnknown_02024C07
+ ldr r5, _08017CB0 @ =gPlayerMonIndex
ldrb r0, [r5]
movs r6, 0x58
muls r0, r6
@@ -20415,13 +20415,13 @@ _08017C7E:
b _08017D02
.align 2, 0
_08017CAC: .4byte gBattleMons
-_08017CB0: .4byte gUnknown_02024C07
+_08017CB0: .4byte gPlayerMonIndex
_08017CB4: .4byte gUnknown_02024D1E
_08017CB8:
ldr r0, _08017D08 @ =gUnknown_02024D1E
movs r4, 0x1
strb r1, [r0, 0x5]
- ldr r1, _08017D0C @ =gUnknown_02024C08
+ ldr r1, _08017D0C @ =gEnemyMonIndex
ldrb r0, [r5]
strb r0, [r1]
ldrb r0, [r5]
@@ -20439,7 +20439,7 @@ _08017CB8:
movs r2, 0x1
movs r3, 0
bl CalculateBaseDamage
- ldr r1, _08017D10 @ =gUnknown_02024BEC
+ ldr r1, _08017D10 @ =gBattleMoveDamage
str r0, [r1]
ldr r0, _08017D14 @ =gUnknown_02024D28
ldrb r1, [r5]
@@ -20460,8 +20460,8 @@ _08017D02:
b _08017D2C
.align 2, 0
_08017D08: .4byte gUnknown_02024D1E
-_08017D0C: .4byte gUnknown_02024C08
-_08017D10: .4byte gUnknown_02024BEC
+_08017D0C: .4byte gEnemyMonIndex
+_08017D10: .4byte gBattleMoveDamage
_08017D14: .4byte gUnknown_02024D28
_08017D18: .4byte gUnknown_02024C6C
_08017D1C: .4byte gUnknown_02024C10
@@ -20479,7 +20479,7 @@ _08017D34: .4byte gUnknown_02024C10
_08017D38: .4byte gUnknown_081D95D4
_08017D3C:
ldr r1, _08017DA0 @ =gBattleMons
- ldr r4, _08017DA4 @ =gUnknown_02024C07
+ ldr r4, _08017DA4 @ =gPlayerMonIndex
ldrb r2, [r4]
movs r0, 0x58
muls r0, r2
@@ -20532,7 +20532,7 @@ _08017D96:
b _08017F9E
.align 2, 0
_08017DA0: .4byte gBattleMons
-_08017DA4: .4byte gUnknown_02024C07
+_08017DA4: .4byte gPlayerMonIndex
_08017DA8: .4byte gUnknown_02024D28
_08017DAC: .4byte gUnknown_02024C10
_08017DB0: .4byte gUnknown_081D9566
@@ -20541,7 +20541,7 @@ _08017DB8: .4byte 0x02000000
_08017DBC: .4byte 0x000160e7
_08017DC0:
ldr r1, _08017DFC @ =gBattleMons
- ldr r4, _08017E00 @ =gUnknown_02024C07
+ ldr r4, _08017E00 @ =gPlayerMonIndex
ldrb r2, [r4]
movs r0, 0x58
muls r0, r2
@@ -20570,7 +20570,7 @@ _08017DDC:
b _08017E34
.align 2, 0
_08017DFC: .4byte gBattleMons
-_08017E00: .4byte gUnknown_02024C07
+_08017E00: .4byte gPlayerMonIndex
_08017E04: .4byte 0x02000000
_08017E08: .4byte 0x00016003
_08017E0C:
@@ -20611,7 +20611,7 @@ _08017E54: .4byte gUnknown_081D95FB
_08017E58: .4byte 0x02000000
_08017E5C:
ldr r1, _08017E98 @ =gBattleMons
- ldr r6, _08017E9C @ =gUnknown_02024C07
+ ldr r6, _08017E9C @ =gPlayerMonIndex
ldrb r0, [r6]
movs r5, 0x58
muls r0, r5
@@ -20642,7 +20642,7 @@ _08017E7A:
b _08017F38
.align 2, 0
_08017E98: .4byte gBattleMons
-_08017E9C: .4byte gUnknown_02024C07
+_08017E9C: .4byte gPlayerMonIndex
_08017EA0: .4byte 0xffffff00
_08017EA4: .4byte gUnknown_02024C10
_08017EA8: .4byte gUnknown_081D90A7
@@ -20667,7 +20667,7 @@ _08017EAC:
lsls r0, 1
mov r1, r10
str r0, [r1]
- ldr r4, _08017F18 @ =gUnknown_02024C08
+ ldr r4, _08017F18 @ =gEnemyMonIndex
ldr r1, _08017F1C @ =gUnknown_02024C74
ldrb r0, [r6]
adds r0, r1
@@ -20698,7 +20698,7 @@ _08017EFE:
_08017F0C: .4byte 0xffffefff
_08017F10: .4byte gUnknown_02024BF4
_08017F14: .4byte gUnknown_02024BE6
-_08017F18: .4byte gUnknown_02024C08
+_08017F18: .4byte gEnemyMonIndex
_08017F1C: .4byte gUnknown_02024C74
_08017F20: .4byte gUnknown_02024C0C
_08017F24: .4byte gBitTable
@@ -20719,7 +20719,7 @@ _08017F40: .4byte gUnknown_02024C10
_08017F44: .4byte gUnknown_081D90F1
_08017F48:
ldr r1, _08017FEC @ =gBattleMons
- ldr r0, _08017FF0 @ =gUnknown_02024C07
+ ldr r0, _08017FF0 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -20775,7 +20775,7 @@ _08017FAC:
cmp r1, 0x2
bne _08017FD8
ldr r4, _08018010 @ =gUnknown_02024A60
- ldr r0, _08017FF0 @ =gUnknown_02024C07
+ ldr r0, _08017FF0 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r4]
ldrb r1, [r4]
@@ -20803,7 +20803,7 @@ _08017FD8:
bx r1
.align 2, 0
_08017FEC: .4byte gBattleMons
-_08017FF0: .4byte gUnknown_02024C07
+_08017FF0: .4byte gPlayerMonIndex
_08017FF4: .4byte gBattleMoves
_08017FF8: .4byte gUnknown_02024BE6
_08017FFC: .4byte gUnknown_02024C10
@@ -21235,7 +21235,7 @@ sub_8018324: @ 8018324
lsrs r4, 16
movs r0, 0
mov r9, r0
- ldr r5, _08018380 @ =gUnknown_02024C07
+ ldr r5, _08018380 @ =gPlayerMonIndex
ldr r1, _08018384 @ =gUnknown_02024A68
ldrb r0, [r5]
ldrb r1, [r1]
@@ -21259,7 +21259,7 @@ _08018360:
ldr r0, _0801838C @ =gPlayerParty
b _080183A0
.align 2, 0
-_08018380: .4byte gUnknown_02024C07
+_08018380: .4byte gPlayerMonIndex
_08018384: .4byte gUnknown_02024A68
_08018388: .4byte gUnknown_02024A6A
_0801838C: .4byte gPlayerParty
@@ -21274,7 +21274,7 @@ _08018390:
ldr r0, _080183D4 @ =gEnemyParty
_080183A0:
adds r7, r1, r0
- ldr r5, _080183D8 @ =gUnknown_02024C08
+ ldr r5, _080183D8 @ =gEnemyMonIndex
ldr r1, _080183DC @ =gUnknown_02024A68
ldrb r0, [r5]
ldrb r1, [r1]
@@ -21300,7 +21300,7 @@ _080183B2:
.align 2, 0
_080183D0: .4byte gUnknown_02024A6A
_080183D4: .4byte gEnemyParty
-_080183D8: .4byte gUnknown_02024C08
+_080183D8: .4byte gEnemyMonIndex
_080183DC: .4byte gUnknown_02024A68
_080183E0: .4byte gPlayerParty
_080183E4:
@@ -21436,7 +21436,7 @@ _080184C8:
.4byte _08019F44
.4byte _08019CD4
_08018518:
- ldr r2, _0801854C @ =gUnknown_02024C07
+ ldr r2, _0801854C @ =gPlayerMonIndex
ldr r0, _08018550 @ =gUnknown_02024A68
ldrb r1, [r2]
adds r5, r0, 0
@@ -21466,7 +21466,7 @@ _0801853E:
_08018548:
bl _08019F76
.align 2, 0
-_0801854C: .4byte gUnknown_02024C07
+_0801854C: .4byte gPlayerMonIndex
_08018550: .4byte gUnknown_02024A68
_08018554:
cmp r0, 0x16
@@ -21796,7 +21796,7 @@ _08018814:
bne _08018828
bl _08019F76
_08018828:
- ldr r0, _08018848 @ =gUnknown_02024C07
+ ldr r0, _08018848 @ =gPlayerMonIndex
mov r3, r10
strb r3, [r0]
mov r3, r8
@@ -21812,7 +21812,7 @@ _08018840:
bl _08019F76
.align 2, 0
_08018844: .4byte gBattleMons
-_08018848: .4byte gUnknown_02024C07
+_08018848: .4byte gPlayerMonIndex
_0801884C:
cmp r5, 0x36
bne _08018852
@@ -21864,7 +21864,7 @@ _080188AA:
strb r5, [r2]
ldr r0, _080188D4 @ =gUnknown_081D9730
bl b_push_move_exec
- ldr r1, _080188D8 @ =gUnknown_02024BEC
+ ldr r1, _080188D8 @ =gBattleMoveDamage
ldrh r0, [r4, 0x2C]
lsrs r0, 4
str r0, [r1]
@@ -21880,7 +21880,7 @@ _080188C4:
.align 2, 0
_080188D0: .4byte gBattleWeather
_080188D4: .4byte gUnknown_081D9730
-_080188D8: .4byte gUnknown_02024BEC
+_080188D8: .4byte gBattleMoveDamage
_080188DC:
adds r0, r2, 0
adds r0, 0x4C
@@ -22077,7 +22077,7 @@ _08018A76:
bl _08019F76
_08018A86:
ldr r1, _08018AC4 @ =gBattleMons
- ldr r0, _08018AC8 @ =gUnknown_02024C07
+ ldr r0, _08018AC8 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -22106,7 +22106,7 @@ _08018AAC:
_08018ABC: .4byte gUnknown_081FA724
_08018AC0: .4byte 0x0000ffff
_08018AC4: .4byte gBattleMons
-_08018AC8: .4byte gUnknown_02024C07
+_08018AC8: .4byte gPlayerMonIndex
_08018ACC: .4byte gUnknown_02024C6C
_08018AD0: .4byte gUnknown_02024C10
_08018AD4: .4byte gUnknown_081D98F3
@@ -22144,7 +22144,7 @@ _08018AFE:
b _08018C6A
_08018B10:
ldr r1, _08018B2C @ =gUnknown_02024D28
- ldr r0, _08018B30 @ =gUnknown_02024C07
+ ldr r0, _08018B30 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -22158,7 +22158,7 @@ _08018B10:
.align 2, 0
_08018B28: .4byte gBattleMoves
_08018B2C: .4byte gUnknown_02024D28
-_08018B30: .4byte gUnknown_02024C07
+_08018B30: .4byte gPlayerMonIndex
_08018B34: .4byte gUnknown_02024C10
_08018B38: .4byte gUnknown_081D9843
_08018B3C:
@@ -22187,7 +22187,7 @@ _08018B56:
b _08018C6A
_08018B68:
ldr r1, _08018B84 @ =gUnknown_02024D28
- ldr r0, _08018B88 @ =gUnknown_02024C07
+ ldr r0, _08018B88 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -22201,7 +22201,7 @@ _08018B68:
.align 2, 0
_08018B80: .4byte gBattleMoves
_08018B84: .4byte gUnknown_02024D28
-_08018B88: .4byte gUnknown_02024C07
+_08018B88: .4byte gPlayerMonIndex
_08018B8C: .4byte gUnknown_02024C10
_08018B90: .4byte gUnknown_081D9843
_08018B94:
@@ -22243,7 +22243,7 @@ _08018BA8:
ldr r0, _08018BFC @ =gUnknown_02024D1E
strb r3, [r0, 0x5]
ldr r1, _08018C00 @ =gUnknown_02024D28
- ldr r0, _08018C04 @ =gUnknown_02024C07
+ ldr r0, _08018C04 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -22259,7 +22259,7 @@ _08018BF4: .4byte gBattleMons
_08018BF8: .4byte 0x02017100
_08018BFC: .4byte gUnknown_02024D1E
_08018C00: .4byte gUnknown_02024D28
-_08018C04: .4byte gUnknown_02024C07
+_08018C04: .4byte gPlayerMonIndex
_08018C08: .4byte gUnknown_02024C10
_08018C0C: .4byte gUnknown_081D987C
_08018C10:
@@ -22282,7 +22282,7 @@ _08018C30:
ldr r0, _08018C4C @ =gUnknown_02024D1E
strb r4, [r0, 0x5]
ldr r1, _08018C50 @ =gUnknown_02024D28
- ldr r0, _08018C54 @ =gUnknown_02024C07
+ ldr r0, _08018C54 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -22296,7 +22296,7 @@ _08018C30:
.align 2, 0
_08018C4C: .4byte gUnknown_02024D1E
_08018C50: .4byte gUnknown_02024D28
-_08018C54: .4byte gUnknown_02024C07
+_08018C54: .4byte gPlayerMonIndex
_08018C58: .4byte gUnknown_02024C10
_08018C5C: .4byte gUnknown_081D987C
_08018C60:
@@ -22324,7 +22324,7 @@ _08018C74:
cmp r0, r2
bne _08018CD0
ldr r1, _08018CB0 @ =gUnknown_02024D28
- ldr r0, _08018CB4 @ =gUnknown_02024C07
+ ldr r0, _08018CB4 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -22341,7 +22341,7 @@ _08018CA4: .4byte gUnknown_02024C10
_08018CA8: .4byte gUnknown_081D987B
_08018CAC: .4byte gBattleMons
_08018CB0: .4byte gUnknown_02024D28
-_08018CB4: .4byte gUnknown_02024C07
+_08018CB4: .4byte gPlayerMonIndex
_08018CB8: .4byte gUnknown_081D9866
_08018CBC:
ldr r1, _08018CC8 @ =gUnknown_02024C10
@@ -22352,7 +22352,7 @@ _08018CBC:
_08018CC8: .4byte gUnknown_02024C10
_08018CCC: .4byte gUnknown_081D9865
_08018CD0:
- ldr r2, _08018CEC @ =gUnknown_02024BEC
+ ldr r2, _08018CEC @ =gBattleMoveDamage
ldrh r0, [r1, 0x2C]
lsrs r0, 2
str r0, [r2]
@@ -22366,7 +22366,7 @@ _08018CE0:
str r0, [r2]
bl _08019F76
.align 2, 0
-_08018CEC: .4byte gUnknown_02024BEC
+_08018CEC: .4byte gBattleMoveDamage
_08018CF0:
mov r5, r8
ldrb r0, [r5]
@@ -22433,7 +22433,7 @@ _08018D0C:
.4byte _08019F76
.4byte _080192E0
_08018DCC:
- ldr r0, _08018E74 @ =gUnknown_02024C68
+ ldr r0, _08018E74 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -22456,7 +22456,7 @@ _08018DE4:
bl _08019F76
_08018DF8:
ldr r2, _08018E7C @ =gUnknown_02024D68
- ldr r0, _08018E80 @ =gUnknown_02024C08
+ ldr r0, _08018E80 @ =gEnemyMonIndex
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -22516,16 +22516,16 @@ _08018E52:
str r0, [r1]
bl _08019F22
.align 2, 0
-_08018E74: .4byte gUnknown_02024C68
+_08018E74: .4byte gBattleMoveFlags
_08018E78: .4byte gBattleMoves
_08018E7C: .4byte gUnknown_02024D68
-_08018E80: .4byte gUnknown_02024C08
+_08018E80: .4byte gEnemyMonIndex
_08018E84: .4byte gBattleMons
_08018E88: .4byte gUnknown_030041C0
_08018E8C: .4byte gUnknown_02024C10
_08018E90: .4byte gUnknown_081D9921
_08018E94:
- ldr r0, _08018F2C @ =gUnknown_02024C68
+ ldr r0, _08018F2C @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -22534,7 +22534,7 @@ _08018E94:
bl _08019F76
_08018EA4:
ldr r1, _08018F30 @ =gBattleMons
- ldr r0, _08018F34 @ =gUnknown_02024C07
+ ldr r0, _08018F34 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -22554,7 +22554,7 @@ _08018EBA:
bl _08019F76
_08018ECC:
ldr r2, _08018F3C @ =gUnknown_02024D68
- ldr r0, _08018F40 @ =gUnknown_02024C08
+ ldr r0, _08018F40 @ =gEnemyMonIndex
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -22586,7 +22586,7 @@ _08018EF4:
bne _08018F0E
bl _08019F76
_08018F0E:
- ldr r1, _08018F48 @ =gUnknown_02024BEC
+ ldr r1, _08018F48 @ =gBattleMoveDamage
ldrh r0, [r4, 0x2C]
lsrs r0, 4
str r0, [r1]
@@ -22600,18 +22600,18 @@ _08018F1C:
str r0, [r1]
bl _08019F22
.align 2, 0
-_08018F2C: .4byte gUnknown_02024C68
+_08018F2C: .4byte gBattleMoveFlags
_08018F30: .4byte gBattleMons
-_08018F34: .4byte gUnknown_02024C07
+_08018F34: .4byte gPlayerMonIndex
_08018F38: .4byte gUnknown_02024D28
_08018F3C: .4byte gUnknown_02024D68
-_08018F40: .4byte gUnknown_02024C08
+_08018F40: .4byte gEnemyMonIndex
_08018F44: .4byte gBattleMoves
-_08018F48: .4byte gUnknown_02024BEC
+_08018F48: .4byte gBattleMoveDamage
_08018F4C: .4byte gUnknown_02024C10
_08018F50: .4byte gUnknown_081D9928
_08018F54:
- ldr r0, _08019020 @ =gUnknown_02024C68
+ ldr r0, _08019020 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -22620,7 +22620,7 @@ _08018F54:
bl _08019F76
_08018F64:
ldr r1, _08019024 @ =gBattleMons
- ldr r0, _08019028 @ =gUnknown_02024C07
+ ldr r0, _08019028 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -22640,7 +22640,7 @@ _08018F7A:
bl _08019F76
_08018F8C:
ldr r2, _08019030 @ =gUnknown_02024D68
- ldr r0, _08019034 @ =gUnknown_02024C08
+ ldr r0, _08019034 @ =gEnemyMonIndex
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -22711,19 +22711,19 @@ _08019000:
str r0, [r2]
bl _08019F22
.align 2, 0
-_08019020: .4byte gUnknown_02024C68
+_08019020: .4byte gBattleMoveFlags
_08019024: .4byte gBattleMons
-_08019028: .4byte gUnknown_02024C07
+_08019028: .4byte gPlayerMonIndex
_0801902C: .4byte gUnknown_02024D28
_08019030: .4byte gUnknown_02024D68
-_08019034: .4byte gUnknown_02024C08
+_08019034: .4byte gEnemyMonIndex
_08019038: .4byte gBattleMoves
_0801903C: .4byte gUnknown_02024D1E
_08019040: .4byte gUnknown_02024C10
_08019044: .4byte gUnknown_081D9950
_08019048: .4byte gUnknown_02024C6C
_0801904C:
- ldr r0, _080190FC @ =gUnknown_02024C68
+ ldr r0, _080190FC @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -22732,7 +22732,7 @@ _0801904C:
bl _08019F76
_0801905C:
ldr r1, _08019100 @ =gBattleMons
- ldr r0, _08019104 @ =gUnknown_02024C07
+ ldr r0, _08019104 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -22752,7 +22752,7 @@ _08019072:
bl _08019F76
_08019084:
ldr r2, _0801910C @ =gUnknown_02024D68
- ldr r0, _08019110 @ =gUnknown_02024C08
+ ldr r0, _08019110 @ =gEnemyMonIndex
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -22808,19 +22808,19 @@ _080190DC:
str r0, [r2]
bl _08019F22
.align 2, 0
-_080190FC: .4byte gUnknown_02024C68
+_080190FC: .4byte gBattleMoveFlags
_08019100: .4byte gBattleMons
-_08019104: .4byte gUnknown_02024C07
+_08019104: .4byte gPlayerMonIndex
_08019108: .4byte gUnknown_02024D28
_0801910C: .4byte gUnknown_02024D68
-_08019110: .4byte gUnknown_02024C08
+_08019110: .4byte gEnemyMonIndex
_08019114: .4byte gBattleMoves
_08019118: .4byte gUnknown_02024D1E
_0801911C: .4byte gUnknown_02024C10
_08019120: .4byte gUnknown_081D9950
_08019124: .4byte gUnknown_02024C6C
_08019128:
- ldr r0, _080191D8 @ =gUnknown_02024C68
+ ldr r0, _080191D8 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -22829,7 +22829,7 @@ _08019128:
bl _08019F76
_08019138:
ldr r1, _080191DC @ =gBattleMons
- ldr r0, _080191E0 @ =gUnknown_02024C07
+ ldr r0, _080191E0 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -22849,7 +22849,7 @@ _0801914E:
bl _08019F76
_08019160:
ldr r2, _080191E8 @ =gUnknown_02024D68
- ldr r0, _080191EC @ =gUnknown_02024C08
+ ldr r0, _080191EC @ =gEnemyMonIndex
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -22905,19 +22905,19 @@ _080191B8:
str r0, [r2]
bl _08019F22
.align 2, 0
-_080191D8: .4byte gUnknown_02024C68
+_080191D8: .4byte gBattleMoveFlags
_080191DC: .4byte gBattleMons
-_080191E0: .4byte gUnknown_02024C07
+_080191E0: .4byte gPlayerMonIndex
_080191E4: .4byte gUnknown_02024D28
_080191E8: .4byte gUnknown_02024D68
-_080191EC: .4byte gUnknown_02024C08
+_080191EC: .4byte gEnemyMonIndex
_080191F0: .4byte gBattleMoves
_080191F4: .4byte gUnknown_02024D1E
_080191F8: .4byte gUnknown_02024C10
_080191FC: .4byte gUnknown_081D9950
_08019200: .4byte gUnknown_02024C6C
_08019204:
- ldr r0, _080192B4 @ =gUnknown_02024C68
+ ldr r0, _080192B4 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -22926,7 +22926,7 @@ _08019204:
bl _08019F76
_08019214:
ldr r1, _080192B8 @ =gBattleMons
- ldr r0, _080192BC @ =gUnknown_02024C07
+ ldr r0, _080192BC @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -22958,7 +22958,7 @@ _0801923C:
bl _08019F76
_08019254:
ldr r2, _080192C8 @ =gUnknown_02024D68
- ldr r0, _080192CC @ =gUnknown_02024C08
+ ldr r0, _080192CC @ =gEnemyMonIndex
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -23002,19 +23002,19 @@ _08019294:
str r0, [r2]
bl _08019F22
.align 2, 0
-_080192B4: .4byte gUnknown_02024C68
+_080192B4: .4byte gBattleMoveFlags
_080192B8: .4byte gBattleMons
-_080192BC: .4byte gUnknown_02024C07
+_080192BC: .4byte gPlayerMonIndex
_080192C0: .4byte gUnknown_02024D28
_080192C4: .4byte gBattleMoves
_080192C8: .4byte gUnknown_02024D68
-_080192CC: .4byte gUnknown_02024C08
+_080192CC: .4byte gEnemyMonIndex
_080192D0: .4byte gUnknown_02024D1E
_080192D4: .4byte gUnknown_02024C10
_080192D8: .4byte gUnknown_081D9950
_080192DC: .4byte gUnknown_02024C6C
_080192E0:
- ldr r0, _08019420 @ =gUnknown_02024C68
+ ldr r0, _08019420 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -23023,7 +23023,7 @@ _080192E0:
bl _08019F76
_080192F0:
ldr r5, _08019424 @ =gBattleMons
- ldr r7, _08019428 @ =gUnknown_02024C07
+ ldr r7, _08019428 @ =gPlayerMonIndex
ldrb r1, [r7]
movs r6, 0x58
adds r0, r1, 0
@@ -23056,7 +23056,7 @@ _0801931A:
bl _08019F76
_08019332:
ldr r3, _08019434 @ =gUnknown_02024D68
- ldr r0, _08019438 @ =gUnknown_02024C08
+ ldr r0, _08019438 @ =gEnemyMonIndex
mov r8, r0
ldrb r1, [r0]
lsls r0, r1, 2
@@ -23167,13 +23167,13 @@ _080193F6:
str r0, [r1]
bl _08019F22
.align 2, 0
-_08019420: .4byte gUnknown_02024C68
+_08019420: .4byte gBattleMoveFlags
_08019424: .4byte gBattleMons
-_08019428: .4byte gUnknown_02024C07
+_08019428: .4byte gPlayerMonIndex
_0801942C: .4byte gUnknown_02024D28
_08019430: .4byte gBattleMoves
_08019434: .4byte gUnknown_02024D68
-_08019438: .4byte gUnknown_02024C08
+_08019438: .4byte gEnemyMonIndex
_0801943C: .4byte gBitTable
_08019440: .4byte gUnknown_02024C10
_08019444: .4byte gUnknown_081D9943
@@ -23618,7 +23618,7 @@ _08019838:
ldrb r0, [r2]
adds r0, 0x40
strb r0, [r1, 0x3]
- ldr r0, _08019870 @ =gUnknown_02024C08
+ ldr r0, _08019870 @ =gEnemyMonIndex
ldrb r1, [r0]
ldr r5, _08019874 @ =0x00016003
adds r0, r7, r5
@@ -23638,7 +23638,7 @@ _08019860: .4byte gUnknown_02024C6C
_08019864: .4byte 0xffffbfff
_08019868: .4byte 0x000160ca
_0801986C: .4byte gUnknown_02024D1E
-_08019870: .4byte gUnknown_02024C08
+_08019870: .4byte gEnemyMonIndex
_08019874: .4byte 0x00016003
_08019878: .4byte gUnknown_02024C10
_0801987C: .4byte gUnknown_081D9953
@@ -23675,7 +23675,7 @@ _080198B4:
ldr r1, _080198E8 @ =gUnknown_02024D1E
ldrb r0, [r2]
strb r0, [r1, 0x3]
- ldr r0, _080198EC @ =gUnknown_02024C07
+ ldr r0, _080198EC @ =gPlayerMonIndex
ldrb r1, [r0]
ldr r5, _080198F0 @ =0x00016003
adds r0, r7, r5
@@ -23695,7 +23695,7 @@ _080198DC: .4byte gUnknown_02024C6C
_080198E0: .4byte 0xffffbfff
_080198E4: .4byte 0x000160ca
_080198E8: .4byte gUnknown_02024D1E
-_080198EC: .4byte gUnknown_02024C07
+_080198EC: .4byte gPlayerMonIndex
_080198F0: .4byte 0x00016003
_080198F4: .4byte gUnknown_02024C10
_080198F8: .4byte gUnknown_081D9953
@@ -24671,7 +24671,7 @@ _0801A084:
_0801A098:
mov r9, r0
ldr r1, _0801A0C0 @ =gBattleMons
- ldr r0, _0801A0C4 @ =gUnknown_02024C07
+ ldr r0, _0801A0C4 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -24691,7 +24691,7 @@ _0801A098:
b _0801A0E2
.align 2, 0
_0801A0C0: .4byte gBattleMons
-_0801A0C4: .4byte gUnknown_02024C07
+_0801A0C4: .4byte gPlayerMonIndex
_0801A0C8: .4byte gEnigmaBerries
_0801A0CC:
ldr r0, [sp, 0x14]
@@ -24706,7 +24706,7 @@ _0801A0CC:
_0801A0E2:
str r0, [sp, 0x10]
ldr r2, _0801A118 @ =gBattleMons
- ldr r0, _0801A11C @ =gUnknown_02024C08
+ ldr r0, _0801A11C @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -24731,7 +24731,7 @@ _0801A10C:
mov pc, r0
.align 2, 0
_0801A118: .4byte gBattleMons
-_0801A11C: .4byte gUnknown_02024C08
+_0801A11C: .4byte gEnemyMonIndex
_0801A120: .4byte _0801A124
.align 2, 0
_0801A124:
@@ -24796,7 +24796,7 @@ _0801A198:
ldr r0, _0801A1C4 @ =gUnknown_02024C0B
strb r7, [r0]
ldr r1, _0801A1C8 @ =gUnknown_02024A60
- ldr r0, _0801A1CC @ =gUnknown_02024C07
+ ldr r0, _0801A1CC @ =gPlayerMonIndex
strb r7, [r0]
strb r7, [r1]
ldr r0, _0801A1D0 @ =gUnknown_081D9A5E
@@ -24808,7 +24808,7 @@ _0801A1BC: .4byte 0x02000000
_0801A1C0: .4byte 0x00016003
_0801A1C4: .4byte gUnknown_02024C0B
_0801A1C8: .4byte gUnknown_02024A60
-_0801A1CC: .4byte gUnknown_02024C07
+_0801A1CC: .4byte gPlayerMonIndex
_0801A1D0: .4byte gUnknown_081D9A5E
_0801A1D4:
ldr r1, _0801A1FC @ =gBattleMons
@@ -24895,7 +24895,7 @@ _0801A2C6:
beq _0801A2CE
bl _0801AD5A
_0801A2CE:
- ldr r4, _0801A2F0 @ =gUnknown_02024BEC
+ ldr r4, _0801A2F0 @ =gBattleMoveDamage
mov r5, r9
str r5, [r4]
ldrh r3, [r2, 0x28]
@@ -24913,7 +24913,7 @@ _0801A2E2:
bl b_call_bc_move_exec
b _0801A752
.align 2, 0
-_0801A2F0: .4byte gUnknown_02024BEC
+_0801A2F0: .4byte gBattleMoveDamage
_0801A2F4: .4byte gUnknown_081D9A74
_0801A2F8:
cmp r6, 0
@@ -25076,7 +25076,7 @@ _0801A432:
ldr r0, _0801A45C @ =gUnknown_02024C0B
strb r7, [r0]
ldr r1, _0801A460 @ =gUnknown_02024A60
- ldr r0, _0801A464 @ =gUnknown_02024C07
+ ldr r0, _0801A464 @ =gPlayerMonIndex
strb r7, [r0]
strb r7, [r1]
ldr r0, _0801A468 @ =gUnknown_081D9A5E
@@ -25088,7 +25088,7 @@ _0801A454: .4byte 0x02000000
_0801A458: .4byte 0x00016003
_0801A45C: .4byte gUnknown_02024C0B
_0801A460: .4byte gUnknown_02024A60
-_0801A464: .4byte gUnknown_02024C07
+_0801A464: .4byte gPlayerMonIndex
_0801A468: .4byte gUnknown_081D9A5E
_0801A46C:
movs r0, 0x58
@@ -25105,7 +25105,7 @@ _0801A480:
beq _0801A488
bl _0801AD5A
_0801A488:
- ldr r3, _0801A4C4 @ =gUnknown_02024BEC
+ ldr r3, _0801A4C4 @ =gBattleMoveDamage
ldrh r0, [r1, 0x2C]
lsrs r0, 4
str r0, [r3]
@@ -25135,7 +25135,7 @@ _0801A4A8:
bl sub_81074F8
bl _0801AD5A
.align 2, 0
-_0801A4C4: .4byte gUnknown_02024BEC
+_0801A4C4: .4byte gBattleMoveDamage
_0801A4C8: .4byte gUnknown_081D9AA1
_0801A4CC:
movs r0, 0x58
@@ -25162,7 +25162,7 @@ _0801A4EC:
strb r6, [r1, 0x2]
movs r0, 0xFF
strb r0, [r1, 0x3]
- ldr r5, _0801A544 @ =gUnknown_02024BEC
+ ldr r5, _0801A544 @ =gBattleMoveDamage
ldrh r0, [r4, 0x2C]
mov r1, r9
bl __divsi3
@@ -25200,7 +25200,7 @@ _0801A53E:
b _0801A74C
.align 2, 0
_0801A540: .4byte gUnknown_030041C0
-_0801A544: .4byte gUnknown_02024BEC
+_0801A544: .4byte gBattleMoveDamage
_0801A548:
movs r0, 0x58
adds r1, r7, 0
@@ -25228,7 +25228,7 @@ _0801A56A:
strb r6, [r1, 0x2]
movs r0, 0xFF
strb r0, [r1, 0x3]
- ldr r4, _0801A5C0 @ =gUnknown_02024BEC
+ ldr r4, _0801A5C0 @ =gBattleMoveDamage
ldrh r0, [r5, 0x2C]
mov r1, r9
bl __divsi3
@@ -25262,7 +25262,7 @@ _0801A59E:
b _0801A6B8
.align 2, 0
_0801A5BC: .4byte gUnknown_030041C0
-_0801A5C0: .4byte gUnknown_02024BEC
+_0801A5C0: .4byte gBattleMoveDamage
_0801A5C4:
movs r0, 0x58
adds r4, r7, 0
@@ -25290,7 +25290,7 @@ _0801A5E2:
strb r0, [r1, 0x2]
movs r0, 0xFF
strb r0, [r1, 0x3]
- ldr r4, _0801A630 @ =gUnknown_02024BEC
+ ldr r4, _0801A630 @ =gBattleMoveDamage
ldrh r0, [r5, 0x2C]
mov r1, r9
bl __divsi3
@@ -25321,7 +25321,7 @@ _0801A618:
b _0801A532
.align 2, 0
_0801A62C: .4byte gUnknown_030041C0
-_0801A630: .4byte gUnknown_02024BEC
+_0801A630: .4byte gBattleMoveDamage
_0801A634:
movs r0, 0x58
adds r1, r7, 0
@@ -25349,7 +25349,7 @@ _0801A652:
strb r0, [r1, 0x2]
movs r0, 0xFF
strb r0, [r1, 0x3]
- ldr r4, _0801A6B0 @ =gUnknown_02024BEC
+ ldr r4, _0801A6B0 @ =gBattleMoveDamage
ldrh r0, [r5, 0x2C]
mov r1, r9
bl __divsi3
@@ -25387,7 +25387,7 @@ _0801A6A4:
b _0801A6BE
.align 2, 0
_0801A6AC: .4byte gUnknown_030041C0
-_0801A6B0: .4byte gUnknown_02024BEC
+_0801A6B0: .4byte gBattleMoveDamage
_0801A6B4: .4byte gUnknown_081D9AD4
_0801A6B8:
ldr r0, _0801A6C4 @ =gUnknown_081D9A74
@@ -25425,7 +25425,7 @@ _0801A6E6:
strb r0, [r1, 0x2]
movs r0, 0xFF
strb r0, [r1, 0x3]
- ldr r4, _0801A744 @ =gUnknown_02024BEC
+ ldr r4, _0801A744 @ =gBattleMoveDamage
ldrh r0, [r5, 0x2C]
mov r1, r9
bl __divsi3
@@ -25463,7 +25463,7 @@ _0801A738:
b _0801A752
.align 2, 0
_0801A740: .4byte gUnknown_030041C0
-_0801A744: .4byte gUnknown_02024BEC
+_0801A744: .4byte gBattleMoveDamage
_0801A748: .4byte gUnknown_081D9AD4
_0801A74C:
ldr r0, _0801A758 @ =gUnknown_081D9A74
@@ -26236,7 +26236,7 @@ _0801AD62:
ldr r0, _0801ADA0 @ =gUnknown_02024C0B
strb r7, [r0]
ldr r4, _0801ADA4 @ =gUnknown_02024A60
- ldr r0, _0801ADA8 @ =gUnknown_02024C07
+ ldr r0, _0801ADA8 @ =gPlayerMonIndex
strb r7, [r0]
strb r7, [r4]
ldr r3, [sp, 0xC]
@@ -26255,7 +26255,7 @@ _0801AD98: .4byte 0x02000000
_0801AD9C: .4byte 0x00016003
_0801ADA0: .4byte gUnknown_02024C0B
_0801ADA4: .4byte gUnknown_02024A60
-_0801ADA8: .4byte gUnknown_02024C07
+_0801ADA8: .4byte gPlayerMonIndex
_0801ADAC:
movs r0, 0x58
muls r0, r7
@@ -26807,7 +26807,7 @@ _0801B264:
.align 2, 0
_0801B268: .4byte gUnknown_02024A68
_0801B26C:
- ldr r7, _0801B284 @ =gUnknown_02024BEC
+ ldr r7, _0801B284 @ =gBattleMoveDamage
ldr r0, [r7]
cmp r0, 0
bne _0801B276
@@ -26820,9 +26820,9 @@ _0801B276:
beq _0801B330
b _0801B3CA
.align 2, 0
-_0801B284: .4byte gUnknown_02024BEC
+_0801B284: .4byte gBattleMoveDamage
_0801B288:
- ldr r0, _0801B314 @ =gUnknown_02024C68
+ ldr r0, _0801B314 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -26831,7 +26831,7 @@ _0801B288:
b _0801B3CA
_0801B296:
ldr r2, _0801B318 @ =gUnknown_02024D68
- ldr r4, _0801B31C @ =gUnknown_02024C08
+ ldr r4, _0801B31C @ =gEnemyMonIndex
ldrb r1, [r4]
lsls r0, r1, 2
adds r0, r1
@@ -26889,22 +26889,22 @@ _0801B2BC:
bl b_movescr_stack_pop_cursor
b _0801B3CA
.align 2, 0
-_0801B314: .4byte gUnknown_02024C68
+_0801B314: .4byte gBattleMoveFlags
_0801B318: .4byte gUnknown_02024D68
-_0801B31C: .4byte gUnknown_02024C08
+_0801B31C: .4byte gEnemyMonIndex
_0801B320: .4byte gBattleMoves
_0801B324: .4byte gUnknown_02024BE6
_0801B328: .4byte gBattleMons
_0801B32C: .4byte gUnknown_02024D1E
_0801B330:
- ldr r0, _0801B3DC @ =gUnknown_02024C68
+ ldr r0, _0801B3DC @ =gBattleMoveFlags
ldrb r0, [r0]
movs r4, 0x29
ands r4, r0
cmp r4, 0
bne _0801B3CA
ldr r1, _0801B3E0 @ =gUnknown_02024D68
- ldr r5, _0801B3E4 @ =gUnknown_02024C08
+ ldr r5, _0801B3E4 @ =gEnemyMonIndex
ldrb r2, [r5]
lsls r0, r2, 2
adds r0, r2
@@ -26917,7 +26917,7 @@ _0801B330:
ldr r0, _0801B3E8 @ =0x0000ffff
cmp r1, r0
beq _0801B3CA
- ldr r0, _0801B3EC @ =gUnknown_02024C07
+ ldr r0, _0801B3EC @ =gPlayerMonIndex
ldrb r3, [r0]
cmp r3, r2
beq _0801B3CA
@@ -26984,11 +26984,11 @@ _0801B3CA:
pop {r1}
bx r1
.align 2, 0
-_0801B3DC: .4byte gUnknown_02024C68
+_0801B3DC: .4byte gBattleMoveFlags
_0801B3E0: .4byte gUnknown_02024D68
-_0801B3E4: .4byte gUnknown_02024C08
+_0801B3E4: .4byte gEnemyMonIndex
_0801B3E8: .4byte 0x0000ffff
-_0801B3EC: .4byte gUnknown_02024C07
+_0801B3EC: .4byte gPlayerMonIndex
_0801B3F0: .4byte gBattleMons
_0801B3F4: .4byte gUnknown_02024C04
_0801B3F8: .4byte gUnknown_02024C0B
@@ -27322,7 +27322,7 @@ _0801B604:
.4byte _0801B900
.4byte _0801B808
_0801B708:
- ldr r0, _0801B7E8 @ =gUnknown_02024C07
+ ldr r0, _0801B7E8 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
movs r1, 0x1
@@ -27347,7 +27347,7 @@ _0801B708:
beq _0801B73A
b _0801B850
_0801B73A:
- ldr r0, _0801B7E8 @ =gUnknown_02024C07
+ ldr r0, _0801B7E8 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -27363,7 +27363,7 @@ _0801B74A:
bl __modsi3
lsls r0, 24
lsrs r5, r0, 24
- ldr r6, _0801B7E8 @ =gUnknown_02024C07
+ ldr r6, _0801B7E8 @ =gPlayerMonIndex
ldrb r2, [r6]
cmp r5, r2
beq _0801B74A
@@ -27433,7 +27433,7 @@ _0801B7C2:
strb r1, [r0]
b _0801B900
.align 2, 0
-_0801B7E8: .4byte gUnknown_02024C07
+_0801B7E8: .4byte gPlayerMonIndex
_0801B7EC: .4byte gUnknown_02024C80
_0801B7F0: .4byte gBattleMons
_0801B7F4: .4byte gUnknown_02024A68
@@ -27442,7 +27442,7 @@ _0801B7FC: .4byte gBitTable
_0801B800: .4byte gBattleMoves
_0801B804: .4byte gUnknown_02024D68
_0801B808:
- ldr r0, _0801B81C @ =gUnknown_02024C07
+ ldr r0, _0801B81C @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_get_per_side_status
adds r1, r0, 0
@@ -27452,9 +27452,9 @@ _0801B808:
eors r0, r2
b _0801B8B2
.align 2, 0
-_0801B81C: .4byte gUnknown_02024C07
+_0801B81C: .4byte gPlayerMonIndex
_0801B820:
- ldr r0, _0801B854 @ =gUnknown_02024C07
+ ldr r0, _0801B854 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
movs r1, 0x1
@@ -27481,7 +27481,7 @@ _0801B850:
adds r5, r4, 0
b _0801B900
.align 2, 0
-_0801B854: .4byte gUnknown_02024C07
+_0801B854: .4byte gPlayerMonIndex
_0801B858: .4byte gUnknown_02024C80
_0801B85C: .4byte gBattleMons
_0801B860:
@@ -27496,7 +27496,7 @@ _0801B860:
ands r6, r0
cmp r6, 0
beq _0801B8DC
- ldr r0, _0801B898 @ =gUnknown_02024C07
+ ldr r0, _0801B898 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -27511,7 +27511,7 @@ _0801B860:
b _0801B8B2
.align 2, 0
_0801B894: .4byte gBattleTypeFlags
-_0801B898: .4byte gUnknown_02024C07
+_0801B898: .4byte gPlayerMonIndex
_0801B89C:
movs r0, 0x3
b _0801B8B2
@@ -27545,7 +27545,7 @@ _0801B8B2:
_0801B8D4: .4byte gUnknown_02024C0C
_0801B8D8: .4byte gBitTable
_0801B8DC:
- ldr r0, _0801B8F8 @ =gUnknown_02024C07
+ ldr r0, _0801B8F8 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_get_per_side_status
adds r1, r0, 0
@@ -27558,13 +27558,13 @@ _0801B8DC:
lsrs r5, r0, 24
b _0801B900
.align 2, 0
-_0801B8F8: .4byte gUnknown_02024C07
+_0801B8F8: .4byte gPlayerMonIndex
_0801B8FC:
- ldr r0, _0801B91C @ =gUnknown_02024C07
+ ldr r0, _0801B91C @ =gPlayerMonIndex
ldrb r5, [r0]
_0801B900:
ldr r1, _0801B920 @ =0x02000000
- ldr r0, _0801B91C @ =gUnknown_02024C07
+ ldr r0, _0801B91C @ =gPlayerMonIndex
ldrb r0, [r0]
ldr r2, _0801B924 @ =0x00016010
adds r0, r2
@@ -27578,7 +27578,7 @@ _0801B900:
pop {r1}
bx r1
.align 2, 0
-_0801B91C: .4byte gUnknown_02024C07
+_0801B91C: .4byte gPlayerMonIndex
_0801B920: .4byte 0x02000000
_0801B924: .4byte 0x00016010
thumb_func_end sub_801B5C0
@@ -27596,7 +27596,7 @@ sub_801B928: @ 801B928
ands r0, r1
cmp r0, 0
bne _0801B9DA
- ldr r7, _0801B9E4 @ =gUnknown_02024C07
+ ldr r7, _0801B9E4 @ =gPlayerMonIndex
ldrb r0, [r7]
bl battle_side_get_owner
lsls r0, 24
@@ -27675,7 +27675,7 @@ _0801B9DA:
b _0801BC24
.align 2, 0
_0801B9E0: .4byte gBattleTypeFlags
-_0801B9E4: .4byte gUnknown_02024C07
+_0801B9E4: .4byte gPlayerMonIndex
_0801B9E8: .4byte gBattleMons
_0801B9EC: .4byte 0x0000080e
_0801B9F0: .4byte 0x00000808
@@ -27726,7 +27726,7 @@ _0801BA4C:
adds r1, r5, 0
ands r1, r0
ldr r7, _0801BB04 @ =gBattleMons
- ldr r2, _0801BB08 @ =gUnknown_02024C07
+ ldr r2, _0801BB08 @ =gPlayerMonIndex
mov r9, r2
ldrb r3, [r2]
movs r0, 0x58
@@ -27780,7 +27780,7 @@ _0801BA9E:
ldr r0, _0801BB10 @ =gUnknown_02024BE4
ldrb r0, [r0]
lsls r0, 1
- ldr r1, _0801BB08 @ =gUnknown_02024C07
+ ldr r1, _0801BB08 @ =gPlayerMonIndex
ldrb r2, [r1]
movs r1, 0x58
muls r1, r2
@@ -27804,7 +27804,7 @@ _0801BA9E:
ldrh r0, [r4]
movs r1, 0
bl sub_801B5C0
- ldr r1, _0801BB34 @ =gUnknown_02024C08
+ ldr r1, _0801BB34 @ =gEnemyMonIndex
strb r0, [r1]
ldr r2, _0801BB38 @ =gUnknown_02024C6C
ldr r0, [r2]
@@ -27813,7 +27813,7 @@ _0801BA9E:
b _0801BC1E
.align 2, 0
_0801BB04: .4byte gBattleMons
-_0801BB08: .4byte gUnknown_02024C07
+_0801BB08: .4byte gPlayerMonIndex
_0801BB0C: .4byte gBitTable
_0801BB10: .4byte gUnknown_02024BE4
_0801BB14: .4byte gUnknown_02024BE5
@@ -27824,7 +27824,7 @@ _0801BB24: .4byte 0x02000000
_0801BB28: .4byte 0x0001601c
_0801BB2C: .4byte gUnknown_02024C10
_0801BB30: .4byte gUnknown_081D996F
-_0801BB34: .4byte gUnknown_02024C08
+_0801BB34: .4byte gEnemyMonIndex
_0801BB38: .4byte gUnknown_02024C6C
_0801BB3C:
subs r0, r2, r6
@@ -27909,7 +27909,7 @@ _0801BBD4: .4byte gUnknown_02024D1E
_0801BBD8: .4byte gUnknown_02024C10
_0801BBDC: .4byte gUnknown_081D9977
_0801BBE0:
- ldr r4, _0801BC34 @ =gUnknown_02024C07
+ ldr r4, _0801BC34 @ =gPlayerMonIndex
ldrb r1, [r4]
movs r0, 0x58
muls r1, r0
@@ -27927,9 +27927,9 @@ _0801BBE0:
movs r2, 0x1
movs r3, 0
bl CalculateBaseDamage
- ldr r1, _0801BC3C @ =gUnknown_02024BEC
+ ldr r1, _0801BC3C @ =gBattleMoveDamage
str r0, [r1]
- ldr r1, _0801BC40 @ =gUnknown_02024C08
+ ldr r1, _0801BC40 @ =gEnemyMonIndex
ldrb r0, [r4]
strb r0, [r1]
ldr r1, _0801BC44 @ =gUnknown_02024C10
@@ -27952,10 +27952,10 @@ _0801BC24:
pop {r1}
bx r1
.align 2, 0
-_0801BC34: .4byte gUnknown_02024C07
+_0801BC34: .4byte gPlayerMonIndex
_0801BC38: .4byte gBattleMons
-_0801BC3C: .4byte gUnknown_02024BEC
-_0801BC40: .4byte gUnknown_02024C08
+_0801BC3C: .4byte gBattleMoveDamage
+_0801BC40: .4byte gEnemyMonIndex
_0801BC44: .4byte gUnknown_02024C10
_0801BC48: .4byte gUnknown_081D99A0
_0801BC4C: .4byte gUnknown_02024C6C
@@ -27981,7 +27981,7 @@ _0801BC6C: .4byte gUnknown_02024D26
_0801BC70: .4byte gUnknown_02024A7F
_0801BC74:
ldr r2, _0801BCA4 @ =gBattleMons
- ldr r0, _0801BCA8 @ =gUnknown_02024C07
+ ldr r0, _0801BCA8 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -28005,7 +28005,7 @@ _0801BC74:
b _0801BFF2
.align 2, 0
_0801BCA4: .4byte gBattleMons
-_0801BCA8: .4byte gUnknown_02024C07
+_0801BCA8: .4byte gPlayerMonIndex
_0801BCAC: .4byte gUnknown_02024C6C
_0801BCB0: .4byte gUnknown_02024C10
_0801BCB4: .4byte BattleScript_1D6F62
@@ -28017,7 +28017,7 @@ _0801BCB8:
beq _0801BCC6
b _0801BFF4
_0801BCC6:
- ldr r0, _0801BD34 @ =gUnknown_02024C08
+ ldr r0, _0801BD34 @ =gEnemyMonIndex
ldrb r1, [r0]
str r2, [sp]
movs r0, 0x2
@@ -28032,7 +28032,7 @@ _0801BCDE:
ldr r4, _0801BD38 @ =gBattleMons
ldr r0, _0801BD3C @ =gUnknown_02024BE4
ldrb r1, [r0]
- ldr r3, _0801BD40 @ =gUnknown_02024C07
+ ldr r3, _0801BD40 @ =gPlayerMonIndex
ldrb r2, [r3]
movs r0, 0x58
muls r2, r0
@@ -28065,23 +28065,23 @@ _0801BCDE:
ldr r1, _0801BD50 @ =gUnknown_02024C10
ldr r0, _0801BD54 @ =gUnknown_081D936D
str r0, [r1]
- ldr r2, _0801BD58 @ =gUnknown_02024C68
+ ldr r2, _0801BD58 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
strb r0, [r2]
b _0801BFF4
.align 2, 0
-_0801BD34: .4byte gUnknown_02024C08
+_0801BD34: .4byte gEnemyMonIndex
_0801BD38: .4byte gBattleMons
_0801BD3C: .4byte gUnknown_02024BE4
-_0801BD40: .4byte gUnknown_02024C07
+_0801BD40: .4byte gPlayerMonIndex
_0801BD44: .4byte gUnknown_02024C6C
_0801BD48: .4byte gUnknown_02024BE6
_0801BD4C: .4byte 0x00800200
_0801BD50: .4byte gUnknown_02024C10
_0801BD54: .4byte gUnknown_081D936D
-_0801BD58: .4byte gUnknown_02024C68
+_0801BD58: .4byte gBattleMoveFlags
_0801BD5C:
ldr r0, [r5]
ldr r1, _0801BDA0 @ =0xff7fffff
@@ -28118,14 +28118,14 @@ _0801BD5C:
.align 2, 0
_0801BDA0: .4byte 0xff7fffff
_0801BDA4:
- ldr r0, _0801BDB0 @ =gUnknown_02024C68
+ ldr r0, _0801BDB0 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r2, 0x1
orrs r1, r2
strb r1, [r0]
b _0801BFF4
.align 2, 0
-_0801BDB0: .4byte gUnknown_02024C68
+_0801BDB0: .4byte gBattleMoveFlags
_0801BDB4:
ldr r2, _0801BE18 @ =gUnknown_02024C6C
ldr r0, [r2]
@@ -28134,7 +28134,7 @@ _0801BDB4:
orrs r0, r1
str r0, [r2]
ldr r2, _0801BE1C @ =gUnknown_02024D28
- ldr r1, _0801BE20 @ =gUnknown_02024C08
+ ldr r1, _0801BE20 @ =gEnemyMonIndex
ldrb r3, [r1]
lsls r0, r3, 4
adds r0, r2
@@ -28156,7 +28156,7 @@ _0801BDB4:
ands r0, r1
cmp r0, 0
beq _0801BE3C
- ldr r0, _0801BE2C @ =gUnknown_02024C07
+ ldr r0, _0801BE2C @ =gPlayerMonIndex
ldrb r0, [r0]
ldr r2, _0801BE30 @ =0x00000115
adds r1, r3, 0
@@ -28177,10 +28177,10 @@ _0801BDB4:
.align 2, 0
_0801BE18: .4byte gUnknown_02024C6C
_0801BE1C: .4byte gUnknown_02024D28
-_0801BE20: .4byte gUnknown_02024C08
+_0801BE20: .4byte gEnemyMonIndex
_0801BE24: .4byte gBattleMoves
_0801BE28: .4byte gUnknown_02024BE6
-_0801BE2C: .4byte gUnknown_02024C07
+_0801BE2C: .4byte gPlayerMonIndex
_0801BE30: .4byte 0x00000115
_0801BE34: .4byte gUnknown_02024C10
_0801BE38: .4byte gUnknown_081D946F
@@ -28283,7 +28283,7 @@ _0801BEEA:
cmp r3, 0xAE
bne _0801BF28
ldr r2, _0801BF88 @ =gBattleMons
- ldr r0, _0801BF8C @ =gUnknown_02024C07
+ ldr r0, _0801BF8C @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -28305,7 +28305,7 @@ _0801BF28:
cmp r0, 0
beq _0801BF4E
ldr r1, _0801BF88 @ =gBattleMons
- ldr r0, _0801BF8C @ =gUnknown_02024C07
+ ldr r0, _0801BF8C @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -28318,16 +28318,16 @@ _0801BF28:
cmp r0, 0
beq _0801BFEC
_0801BF4E:
- ldr r0, _0801BF8C @ =gUnknown_02024C07
+ ldr r0, _0801BF8C @ =gPlayerMonIndex
ldrb r0, [r0]
bl b_cancel_multi_turn_move_maybe
- ldr r2, _0801BF90 @ =gUnknown_02024C68
+ ldr r2, _0801BF90 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
strb r0, [r2]
ldr r1, _0801BF94 @ =gUnknown_02024C3C
- ldr r3, _0801BF98 @ =gUnknown_02024C08
+ ldr r3, _0801BF98 @ =gEnemyMonIndex
ldrb r0, [r3]
lsls r0, 1
adds r0, r1
@@ -28346,14 +28346,14 @@ _0801BF4E:
_0801BF80: .4byte gBattleMoves
_0801BF84: .4byte gUnknown_02024BE6
_0801BF88: .4byte gBattleMons
-_0801BF8C: .4byte gUnknown_02024C07
-_0801BF90: .4byte gUnknown_02024C68
+_0801BF8C: .4byte gPlayerMonIndex
+_0801BF90: .4byte gBattleMoveFlags
_0801BF94: .4byte gUnknown_02024C3C
-_0801BF98: .4byte gUnknown_02024C08
+_0801BF98: .4byte gEnemyMonIndex
_0801BF9C: .4byte gUnknown_02024C44
_0801BFA0: .4byte gUnknown_02024D1E
_0801BFA4:
- ldr r0, _0801BFD4 @ =gUnknown_02024C07
+ ldr r0, _0801BFD4 @ =gPlayerMonIndex
ldrb r0, [r0]
ldr r2, _0801BFD8 @ =0x00000121
adds r1, r3, 0
@@ -28376,7 +28376,7 @@ _0801BFA4:
ldr r0, _0801BFE8 @ =gUnknown_081D9487
b _0801BFF2
.align 2, 0
-_0801BFD4: .4byte gUnknown_02024C07
+_0801BFD4: .4byte gPlayerMonIndex
_0801BFD8: .4byte 0x00000121
_0801BFDC: .4byte 0x02000000
_0801BFE0: .4byte 0x00016003
@@ -28411,14 +28411,14 @@ mcmd_jump_if_move_not_executed: @ 801C008
ldr r1, _0801C054 @ =gUnknown_02024C10
ldr r5, [r1]
adds r4, r5, r0
- ldr r0, _0801C058 @ =gUnknown_02024C68
+ ldr r0, _0801C058 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
cmp r0, 0
beq _0801C068
ldr r1, _0801C05C @ =gUnknown_02024C3C
- ldr r3, _0801C060 @ =gUnknown_02024C08
+ ldr r3, _0801C060 @ =gEnemyMonIndex
ldrb r0, [r3]
lsls r0, 1
adds r0, r1
@@ -28442,13 +28442,13 @@ mcmd_jump_if_move_not_executed: @ 801C008
b _0801C082
.align 2, 0
_0801C054: .4byte gUnknown_02024C10
-_0801C058: .4byte gUnknown_02024C68
+_0801C058: .4byte gBattleMoveFlags
_0801C05C: .4byte gUnknown_02024C3C
-_0801C060: .4byte gUnknown_02024C08
+_0801C060: .4byte gEnemyMonIndex
_0801C064: .4byte gUnknown_02024C44
_0801C068:
bl b_feature_update_destiny_bond
- ldr r0, _0801C090 @ =gUnknown_02024C08
+ ldr r0, _0801C090 @ =gEnemyMonIndex
ldrb r1, [r0]
str r6, [sp]
movs r0, 0x3
@@ -28467,7 +28467,7 @@ _0801C086:
pop {r0}
bx r0
.align 2, 0
-_0801C090: .4byte gUnknown_02024C08
+_0801C090: .4byte gEnemyMonIndex
_0801C094: .4byte gUnknown_02024C10
thumb_func_end mcmd_jump_if_move_not_executed
@@ -28475,7 +28475,7 @@ _0801C094: .4byte gUnknown_02024C10
atk40_801DBA0: @ 801C098
push {lr}
ldr r1, _0801C0E0 @ =gUnknown_02024D28
- ldr r0, _0801C0E4 @ =gUnknown_02024C08
+ ldr r0, _0801C0E4 @ =gEnemyMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -28495,7 +28495,7 @@ atk40_801DBA0: @ 801C098
ands r0, r1
cmp r0, 0
beq _0801C0F8
- ldr r2, _0801C0F0 @ =gUnknown_02024C68
+ ldr r2, _0801C0F0 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -28509,10 +28509,10 @@ atk40_801DBA0: @ 801C098
b _0801C100
.align 2, 0
_0801C0E0: .4byte gUnknown_02024D28
-_0801C0E4: .4byte gUnknown_02024C08
+_0801C0E4: .4byte gEnemyMonIndex
_0801C0E8: .4byte gBattleMoves
_0801C0EC: .4byte gUnknown_02024BE6
-_0801C0F0: .4byte gUnknown_02024C68
+_0801C0F0: .4byte gBattleMoveFlags
_0801C0F4: .4byte gUnknown_02024D1E
_0801C0F8:
ldr r1, _0801C104 @ =gUnknown_02024C10
@@ -28533,7 +28533,7 @@ sub_801C108: @ 801C108
lsrs r3, r0, 16
movs r4, 0
ldr r1, _0801C15C @ =gUnknown_02024D28
- ldr r0, _0801C160 @ =gUnknown_02024C08
+ ldr r0, _0801C160 @ =gEnemyMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -28553,7 +28553,7 @@ sub_801C108: @ 801C108
ands r0, r1
cmp r0, 0
beq _0801C154
- ldr r2, _0801C16C @ =gUnknown_02024C68
+ ldr r2, _0801C16C @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -28572,10 +28572,10 @@ _0801C154:
bx r1
.align 2, 0
_0801C15C: .4byte gUnknown_02024D28
-_0801C160: .4byte gUnknown_02024C08
+_0801C160: .4byte gEnemyMonIndex
_0801C164: .4byte gBattleMoves
_0801C168: .4byte gUnknown_02024BE6
-_0801C16C: .4byte gUnknown_02024C68
+_0801C16C: .4byte gBattleMoveFlags
_0801C170: .4byte gUnknown_02024D1E
thumb_func_end sub_801C108
@@ -28586,7 +28586,7 @@ sub_801C174: @ 801C174
lsls r0, 16
lsrs r5, r0, 16
ldr r2, _0801C1D4 @ =gUnknown_02024C98
- ldr r3, _0801C1D8 @ =gUnknown_02024C08
+ ldr r3, _0801C1D8 @ =gEnemyMonIndex
ldrb r4, [r3]
lsls r0, r4, 2
adds r0, r2
@@ -28601,7 +28601,7 @@ sub_801C174: @ 801C174
subs r0, r4
lsls r0, 2
adds r0, r1
- ldr r1, _0801C1E0 @ =gUnknown_02024C07
+ ldr r1, _0801C1E0 @ =gPlayerMonIndex
ldrb r0, [r0, 0x15]
ldrb r1, [r1]
cmp r0, r1
@@ -28624,7 +28624,7 @@ _0801C1A6:
cmp r0, 0
beq _0801C1EC
_0801C1C6:
- ldr r0, _0801C1E8 @ =gUnknown_02024C68
+ ldr r0, _0801C1E8 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r2, 0x1
orrs r1, r2
@@ -28632,11 +28632,11 @@ _0801C1C6:
b _0801C290
.align 2, 0
_0801C1D4: .4byte gUnknown_02024C98
-_0801C1D8: .4byte gUnknown_02024C08
+_0801C1D8: .4byte gEnemyMonIndex
_0801C1DC: .4byte gUnknown_02024CA8
-_0801C1E0: .4byte gUnknown_02024C07
+_0801C1E0: .4byte gPlayerMonIndex
_0801C1E4: .4byte gUnknown_02024C6C
-_0801C1E8: .4byte gUnknown_02024C68
+_0801C1E8: .4byte gBattleMoveFlags
_0801C1EC:
ldr r0, [r2]
ldr r1, _0801C29C @ =0xfffeffff
@@ -28763,7 +28763,7 @@ atk01_accuracycheck: @ 801C2BC
cmp r1, 0x1
bhi _0801C378
ldr r2, _0801C318 @ =gUnknown_02024C98
- ldr r3, _0801C31C @ =gUnknown_02024C08
+ ldr r3, _0801C31C @ =gEnemyMonIndex
ldrb r4, [r3]
lsls r0, r4, 2
adds r0, r2
@@ -28780,7 +28780,7 @@ atk01_accuracycheck: @ 801C2BC
subs r0, r4
lsls r0, 2
adds r0, r1
- ldr r1, _0801C328 @ =gUnknown_02024C07
+ ldr r1, _0801C328 @ =gPlayerMonIndex
ldrb r0, [r0, 0x15]
ldrb r1, [r1]
cmp r0, r1
@@ -28791,10 +28791,10 @@ atk01_accuracycheck: @ 801C2BC
.align 2, 0
_0801C314: .4byte gUnknown_02024C10
_0801C318: .4byte gUnknown_02024C98
-_0801C31C: .4byte gUnknown_02024C08
+_0801C31C: .4byte gEnemyMonIndex
_0801C320: .4byte 0x0000ffff
_0801C324: .4byte gUnknown_02024CA8
-_0801C328: .4byte gUnknown_02024C07
+_0801C328: .4byte gPlayerMonIndex
_0801C32C:
ldrb r0, [r3]
lsls r0, 2
@@ -28880,7 +28880,7 @@ _0801C3C0:
b _0801C632
_0801C3CE:
ldr r3, _0801C3FC @ =gBattleMons
- ldr r0, _0801C400 @ =gUnknown_02024C08
+ ldr r0, _0801C400 @ =gEnemyMonIndex
ldrb r0, [r0]
movs r2, 0x58
adds r4, r0, 0
@@ -28894,7 +28894,7 @@ _0801C3CE:
ands r0, r1
cmp r0, 0
beq _0801C408
- ldr r0, _0801C404 @ =gUnknown_02024C07
+ ldr r0, _0801C404 @ =gPlayerMonIndex
ldrb r0, [r0]
muls r0, r2
adds r0, r3
@@ -28903,10 +28903,10 @@ _0801C3CE:
.align 2, 0
_0801C3F8: .4byte gBattleMoves
_0801C3FC: .4byte gBattleMons
-_0801C400: .4byte gUnknown_02024C08
-_0801C404: .4byte gUnknown_02024C07
+_0801C400: .4byte gEnemyMonIndex
+_0801C404: .4byte gPlayerMonIndex
_0801C408:
- ldr r0, _0801C56C @ =gUnknown_02024C07
+ ldr r0, _0801C56C @ =gPlayerMonIndex
ldrb r0, [r0]
muls r0, r2
adds r0, r3
@@ -28982,7 +28982,7 @@ _0801C482:
lsls r0, 16
lsrs r4, r0, 16
ldr r7, _0801C57C @ =gBattleMons
- ldr r0, _0801C56C @ =gUnknown_02024C07
+ ldr r0, _0801C56C @ =gPlayerMonIndex
ldrb r0, [r0]
movs r5, 0x58
muls r0, r5
@@ -29019,7 +29019,7 @@ _0801C4C0:
lsls r0, 24
cmp r0, 0
bne _0801C518
- ldr r0, _0801C580 @ =gUnknown_02024C08
+ ldr r0, _0801C580 @ =gEnemyMonIndex
ldrb r0, [r0]
muls r0, r5
adds r0, r7
@@ -29042,7 +29042,7 @@ _0801C4C0:
lsrs r4, r0, 16
_0801C518:
ldr r2, _0801C57C @ =gBattleMons
- ldr r0, _0801C56C @ =gUnknown_02024C07
+ ldr r0, _0801C56C @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -29063,7 +29063,7 @@ _0801C518:
lsls r0, 16
lsrs r4, r0, 16
_0801C544:
- ldr r3, _0801C580 @ =gUnknown_02024C08
+ ldr r3, _0801C580 @ =gEnemyMonIndex
mov r8, r3
ldrb r2, [r3]
movs r7, 0x58
@@ -29083,12 +29083,12 @@ _0801C544:
ldrb r2, [r0, 0x1A]
b _0801C5A4
.align 2, 0
-_0801C56C: .4byte gUnknown_02024C07
+_0801C56C: .4byte gPlayerMonIndex
_0801C570: .4byte gBattleMoves
_0801C574: .4byte gBattleWeather
_0801C578: .4byte gAccuracyStageRatios
_0801C57C: .4byte gBattleMons
-_0801C580: .4byte gUnknown_02024C08
+_0801C580: .4byte gEnemyMonIndex
_0801C584: .4byte gEnigmaBerries
_0801C588:
ldrh r0, [r1, 0x2E]
@@ -29105,7 +29105,7 @@ _0801C588:
lsrs r2, r0, 24
_0801C5A4:
ldr r0, _0801C608 @ =gUnknown_02024C0B
- ldr r1, _0801C60C @ =gUnknown_02024C08
+ ldr r1, _0801C60C @ =gEnemyMonIndex
ldrb r1, [r1]
strb r1, [r0]
cmp r5, 0x16
@@ -29128,7 +29128,7 @@ _0801C5C0:
adds r0, 0x1
cmp r0, r4
ble _0801C62A
- ldr r2, _0801C610 @ =gUnknown_02024C68
+ ldr r2, _0801C610 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -29155,8 +29155,8 @@ _0801C602:
b _0801C624
.align 2, 0
_0801C608: .4byte gUnknown_02024C0B
-_0801C60C: .4byte gUnknown_02024C08
-_0801C610: .4byte gUnknown_02024C68
+_0801C60C: .4byte gEnemyMonIndex
+_0801C610: .4byte gBattleMoveFlags
_0801C614: .4byte gBattleTypeFlags
_0801C618: .4byte gBattleMoves
_0801C61C: .4byte gUnknown_02024D1E
@@ -29197,7 +29197,7 @@ atk02_attackstring: @ 801C648
ands r0, r1
cmp r0, 0
bne _0801C674
- ldr r0, _0801C690 @ =gUnknown_02024C07
+ ldr r0, _0801C690 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x4
bl b_std_message
@@ -29220,7 +29220,7 @@ _0801C680:
.align 2, 0
_0801C688: .4byte gUnknown_02024A64
_0801C68C: .4byte gUnknown_02024C6C
-_0801C690: .4byte gUnknown_02024C07
+_0801C690: .4byte gPlayerMonIndex
_0801C694: .4byte gUnknown_02024C10
_0801C698: .4byte gUnknown_02024D1E
thumb_func_end atk02_attackstring
@@ -29241,7 +29241,7 @@ atk03_ppreduce: @ 801C69C
b _0801C84E
_0801C6B4:
ldr r1, _0801C6F0 @ =gUnknown_02024D68
- ldr r2, _0801C6F4 @ =gUnknown_02024C07
+ ldr r2, _0801C6F4 @ =gPlayerMonIndex
ldrb r3, [r2]
lsls r0, r3, 2
adds r0, r3
@@ -29271,7 +29271,7 @@ _0801C6B4:
.align 2, 0
_0801C6EC: .4byte gUnknown_02024A64
_0801C6F0: .4byte gUnknown_02024D68
-_0801C6F4: .4byte gUnknown_02024C07
+_0801C6F4: .4byte gPlayerMonIndex
_0801C6F8: .4byte gBattleMoves
_0801C6FC: .4byte gUnknown_02024BE6
_0801C700:
@@ -29303,7 +29303,7 @@ _0801C71C:
adds r6, r0
b _0801C756
_0801C736:
- ldr r1, _0801C7B8 @ =gUnknown_02024C08
+ ldr r1, _0801C7B8 @ =gEnemyMonIndex
mov r2, r9
ldrb r0, [r2]
ldrb r7, [r1]
@@ -29329,7 +29329,7 @@ _0801C756:
bne _0801C83C
ldr r2, _0801C7BC @ =gBattleMons
ldr r3, _0801C7C4 @ =gUnknown_02024BE4
- ldr r1, _0801C7C8 @ =gUnknown_02024C07
+ ldr r1, _0801C7C8 @ =gPlayerMonIndex
ldrb r5, [r1]
movs r0, 0x58
mov r8, r0
@@ -29370,11 +29370,11 @@ _0801C756:
strb r0, [r2]
b _0801C7D2
.align 2, 0
-_0801C7B8: .4byte gUnknown_02024C08
+_0801C7B8: .4byte gEnemyMonIndex
_0801C7BC: .4byte gBattleMons
_0801C7C0: .4byte gUnknown_02024C6C
_0801C7C4: .4byte gUnknown_02024BE4
-_0801C7C8: .4byte gUnknown_02024C07
+_0801C7C8: .4byte gPlayerMonIndex
_0801C7CC: .4byte gUnknown_02024D28
_0801C7D0:
strb r4, [r2]
@@ -29462,7 +29462,7 @@ _0801C874: .4byte gUnknown_02024C10
atk04_critcalc: @ 801C878
push {r4-r7,lr}
ldr r1, _0801C89C @ =gBattleMons
- ldr r0, _0801C8A0 @ =gUnknown_02024C07
+ ldr r0, _0801C8A0 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -29479,7 +29479,7 @@ atk04_critcalc: @ 801C878
b _0801C8B0
.align 2, 0
_0801C89C: .4byte gBattleMons
-_0801C8A0: .4byte gUnknown_02024C07
+_0801C8A0: .4byte gPlayerMonIndex
_0801C8A4: .4byte gEnigmaBerries
_0801C8A8:
bl ItemId_GetHoldEffect
@@ -29487,7 +29487,7 @@ _0801C8A8:
lsrs r6, r0, 24
_0801C8B0:
ldr r1, _0801C93C @ =gUnknown_02024C0B
- ldr r3, _0801C940 @ =gUnknown_02024C07
+ ldr r3, _0801C940 @ =gPlayerMonIndex
ldrb r0, [r3]
strb r0, [r1]
ldr r4, _0801C944 @ =gBattleMons
@@ -29564,7 +29564,7 @@ _0801C930:
b _0801C952
.align 2, 0
_0801C93C: .4byte gUnknown_02024C0B
-_0801C940: .4byte gUnknown_02024C07
+_0801C940: .4byte gPlayerMonIndex
_0801C944: .4byte gBattleMons
_0801C948: .4byte gBattleMoves
_0801C94C: .4byte gUnknown_02024BE6
@@ -29579,7 +29579,7 @@ _0801C952:
bls _0801C960
movs r5, 0x4
_0801C960:
- ldr r0, _0801C9BC @ =gUnknown_02024C08
+ ldr r0, _0801C9BC @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -29623,7 +29623,7 @@ _0801C960:
movs r0, 0x2
b _0801C9D4
.align 2, 0
-_0801C9BC: .4byte gUnknown_02024C08
+_0801C9BC: .4byte gEnemyMonIndex
_0801C9C0: .4byte gUnknown_02024C98
_0801C9C4: .4byte gBattleTypeFlags
_0801C9C8: .4byte gCriticalHitChance
@@ -29653,7 +29653,7 @@ atk05_damagecalc1: @ 801C9EC
push {r6,r7}
sub sp, 0x10
ldr r4, _0801CABC @ =gUnknown_02024C7A
- ldr r6, _0801CAC0 @ =gUnknown_02024C08
+ ldr r6, _0801CAC0 @ =gEnemyMonIndex
ldrb r0, [r6]
bl battle_get_per_side_status
movs r1, 0x1
@@ -29661,7 +29661,7 @@ atk05_damagecalc1: @ 801C9EC
lsls r1, 1
adds r1, r4
ldrh r3, [r1]
- ldr r0, _0801CAC4 @ =gUnknown_02024C07
+ ldr r0, _0801CAC4 @ =gPlayerMonIndex
mov r8, r0
ldrb r0, [r0]
movs r4, 0x58
@@ -29688,7 +29688,7 @@ atk05_damagecalc1: @ 801C9EC
ldrb r4, [r6]
str r4, [sp, 0xC]
bl CalculateBaseDamage
- ldr r4, _0801CADC @ =gUnknown_02024BEC
+ ldr r4, _0801CADC @ =gBattleMoveDamage
ldr r1, _0801CAE0 @ =gCritMultiplier
ldrb r1, [r1]
muls r1, r0
@@ -29722,7 +29722,7 @@ atk05_damagecalc1: @ 801C9EC
str r0, [r4]
_0801CA82:
ldr r1, _0801CAF0 @ =gUnknown_02024D28
- ldr r0, _0801CAC4 @ =gUnknown_02024C07
+ ldr r0, _0801CAC4 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -29730,7 +29730,7 @@ _0801CA82:
lsls r0, 28
cmp r0, 0
bge _0801CAA4
- ldr r4, _0801CADC @ =gUnknown_02024BEC
+ ldr r4, _0801CADC @ =gBattleMoveDamage
ldr r1, [r4]
lsls r0, r1, 4
subs r0, r1
@@ -29751,14 +29751,14 @@ _0801CAA4:
bx r0
.align 2, 0
_0801CABC: .4byte gUnknown_02024C7A
-_0801CAC0: .4byte gUnknown_02024C08
-_0801CAC4: .4byte gUnknown_02024C07
+_0801CAC0: .4byte gEnemyMonIndex
+_0801CAC4: .4byte gPlayerMonIndex
_0801CAC8: .4byte gBattleMons
_0801CACC: .4byte gUnknown_02024BE6
_0801CAD0: .4byte gUnknown_02024DEC
_0801CAD4: .4byte 0x02000000
_0801CAD8: .4byte 0x0001601c
-_0801CADC: .4byte gUnknown_02024BEC
+_0801CADC: .4byte gBattleMoveDamage
_0801CAE0: .4byte gCritMultiplier
_0801CAE4: .4byte 0x0001601f
_0801CAE8: .4byte gUnknown_02024C98
@@ -29808,7 +29808,7 @@ sub_801CAF8: @ 801CAF8
str r7, [sp, 0x8]
str r5, [sp, 0xC]
bl CalculateBaseDamage
- ldr r4, _0801CBD4 @ =gUnknown_02024BEC
+ ldr r4, _0801CBD4 @ =gBattleMoveDamage
movs r1, 0
mov r2, r8
strh r1, [r2]
@@ -29850,7 +29850,7 @@ _0801CB8E:
lsls r0, 28
cmp r0, 0
bge _0801CBAC
- ldr r4, _0801CBD4 @ =gUnknown_02024BEC
+ ldr r4, _0801CBD4 @ =gBattleMoveDamage
ldr r1, [r4]
lsls r0, r1, 4
subs r0, r1
@@ -29872,7 +29872,7 @@ _0801CBC4: .4byte gUnknown_02024BE6
_0801CBC8: .4byte gUnknown_02024DEC
_0801CBCC: .4byte 0x02000000
_0801CBD0: .4byte 0x0001601c
-_0801CBD4: .4byte gUnknown_02024BEC
+_0801CBD4: .4byte gBattleMoveDamage
_0801CBD8: .4byte gCritMultiplier
_0801CBDC: .4byte 0x0001601f
_0801CBE0: .4byte gUnknown_02024C98
@@ -29885,7 +29885,7 @@ battle_attack_damage_modulate_by_effectivity: @ 801CBEC
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
- ldr r5, _0801CC1C @ =gUnknown_02024BEC
+ ldr r5, _0801CC1C @ =gBattleMoveDamage
ldr r0, [r5]
muls r0, r4
movs r1, 0xA
@@ -29906,13 +29906,13 @@ _0801CC0C:
beq _0801CC26
b _0801CCBE
.align 2, 0
-_0801CC1C: .4byte gUnknown_02024BEC
+_0801CC1C: .4byte gBattleMoveDamage
_0801CC20:
cmp r4, 0x14
beq _0801CC7C
b _0801CCBE
_0801CC26:
- ldr r2, _0801CC38 @ =gUnknown_02024C68
+ ldr r2, _0801CC38 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x8
orrs r0, r1
@@ -29922,7 +29922,7 @@ _0801CC26:
ands r0, r1
b _0801CCBC
.align 2, 0
-_0801CC38: .4byte gUnknown_02024C68
+_0801CC38: .4byte gBattleMoveFlags
_0801CC3C:
ldr r2, _0801CC6C @ =gBattleMoves
ldr r0, _0801CC70 @ =gUnknown_02024BE6
@@ -29934,7 +29934,7 @@ _0801CC3C:
ldrb r0, [r0, 0x1]
cmp r0, 0
beq _0801CCBE
- ldr r2, _0801CC74 @ =gUnknown_02024C68
+ ldr r2, _0801CC74 @ =gBattleMoveFlags
ldrb r1, [r2]
movs r0, 0x29
ands r0, r1
@@ -29950,7 +29950,7 @@ _0801CC3C:
.align 2, 0
_0801CC6C: .4byte gBattleMoves
_0801CC70: .4byte gUnknown_02024BE6
-_0801CC74: .4byte gUnknown_02024C68
+_0801CC74: .4byte gBattleMoveFlags
_0801CC78:
movs r0, 0x4
b _0801CCBA
@@ -29965,7 +29965,7 @@ _0801CC7C:
ldrb r0, [r0, 0x1]
cmp r0, 0
beq _0801CCBE
- ldr r2, _0801CCB4 @ =gUnknown_02024C68
+ ldr r2, _0801CCB4 @ =gBattleMoveFlags
ldrb r1, [r2]
movs r0, 0x29
ands r0, r1
@@ -29981,7 +29981,7 @@ _0801CC7C:
.align 2, 0
_0801CCAC: .4byte gBattleMoves
_0801CCB0: .4byte gUnknown_02024BE6
-_0801CCB4: .4byte gUnknown_02024C68
+_0801CCB4: .4byte gBattleMoveFlags
_0801CCB8:
movs r0, 0x2
_0801CCBA:
@@ -30034,7 +30034,7 @@ _0801CCFC:
mov r8, r0
_0801CD0C:
ldr r2, _0801CD98 @ =gBattleMons
- ldr r0, _0801CD9C @ =gUnknown_02024C07
+ ldr r0, _0801CD9C @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -30051,7 +30051,7 @@ _0801CD0C:
cmp r0, r8
bne _0801CD44
_0801CD2E:
- ldr r4, _0801CDA0 @ =gUnknown_02024BEC
+ ldr r4, _0801CDA0 @ =gBattleMoveDamage
ldr r1, [r4]
lsls r0, r1, 4
subs r0, r1
@@ -30062,7 +30062,7 @@ _0801CD2E:
str r0, [r4]
ldr r3, [sp, 0x4]
_0801CD44:
- ldr r2, _0801CDA4 @ =gUnknown_02024C08
+ ldr r2, _0801CDA4 @ =gEnemyMonIndex
ldrb r1, [r2]
movs r0, 0x58
muls r0, r1
@@ -30077,7 +30077,7 @@ _0801CD44:
bne _0801CDBC
ldr r3, _0801CDA8 @ =byte_2024C06
strb r0, [r3]
- ldr r2, _0801CDAC @ =gUnknown_02024C68
+ ldr r2, _0801CDAC @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x9
orrs r0, r1
@@ -30103,11 +30103,11 @@ _0801CD44:
.align 2, 0
_0801CD94: .4byte gBattleMoves
_0801CD98: .4byte gBattleMons
-_0801CD9C: .4byte gUnknown_02024C07
-_0801CDA0: .4byte gUnknown_02024BEC
-_0801CDA4: .4byte gUnknown_02024C08
+_0801CD9C: .4byte gPlayerMonIndex
+_0801CDA0: .4byte gBattleMoveDamage
+_0801CDA4: .4byte gEnemyMonIndex
_0801CDA8: .4byte byte_2024C06
-_0801CDAC: .4byte gUnknown_02024C68
+_0801CDAC: .4byte gBattleMoveFlags
_0801CDB0: .4byte gUnknown_02024C3C
_0801CDB4: .4byte gUnknown_02024C44
_0801CDB8: .4byte gUnknown_02024D1E
@@ -30131,7 +30131,7 @@ _0801CDD0:
adds r1, r3, 0x1
adds r1, r5
ldr r2, _0801CF0C @ =gBattleMons
- ldr r7, _0801CF10 @ =gUnknown_02024C08
+ ldr r7, _0801CF10 @ =gEnemyMonIndex
ldrb r0, [r7]
movs r6, 0x58
muls r0, r6
@@ -30171,7 +30171,7 @@ _0801CE06:
_0801CE2C:
adds r3, 0x3
ldr r5, _0801CF0C @ =gBattleMons
- ldr r4, _0801CF10 @ =gUnknown_02024C08
+ ldr r4, _0801CF10 @ =gEnemyMonIndex
ldr r2, _0801CF08 @ =gTypeEffectiveness
_0801CE34:
adds r0, r3, r2
@@ -30195,7 +30195,7 @@ _0801CE38:
beq _0801CDCC
_0801CE58:
ldr r2, _0801CF0C @ =gBattleMons
- ldr r5, _0801CF10 @ =gUnknown_02024C08
+ ldr r5, _0801CF10 @ =gEnemyMonIndex
ldrb r1, [r5]
movs r0, 0x58
muls r0, r1
@@ -30204,7 +30204,7 @@ _0801CE58:
ldrb r6, [r0]
cmp r6, 0x19
bne _0801CED6
- ldr r0, _0801CF14 @ =gUnknown_02024C07
+ ldr r0, _0801CF14 @ =gPlayerMonIndex
ldrb r0, [r0]
ldr r7, _0801CF18 @ =gUnknown_02024BE6
ldrh r1, [r7]
@@ -30213,7 +30213,7 @@ _0801CE58:
lsrs r0, 24
cmp r0, 0x2
bne _0801CED6
- ldr r1, _0801CF1C @ =gUnknown_02024C68
+ ldr r1, _0801CF1C @ =gBattleMoveFlags
mov r8, r1
ldrb r4, [r1]
ands r0, r4
@@ -30257,14 +30257,14 @@ _0801CE94:
ldrb r1, [r3]
bl sub_81074C4
_0801CED6:
- ldr r0, _0801CF1C @ =gUnknown_02024C68
+ ldr r0, _0801CF1C @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x8
ands r0, r1
cmp r0, 0
beq _0801CEF4
ldr r2, _0801CF34 @ =gUnknown_02024D28
- ldr r0, _0801CF14 @ =gUnknown_02024C07
+ ldr r0, _0801CF14 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 4
adds r1, r2
@@ -30286,10 +30286,10 @@ _0801CEF4:
.align 2, 0
_0801CF08: .4byte gTypeEffectiveness
_0801CF0C: .4byte gBattleMons
-_0801CF10: .4byte gUnknown_02024C08
-_0801CF14: .4byte gUnknown_02024C07
+_0801CF10: .4byte gEnemyMonIndex
+_0801CF14: .4byte gPlayerMonIndex
_0801CF18: .4byte gUnknown_02024BE6
-_0801CF1C: .4byte gUnknown_02024C68
+_0801CF1C: .4byte gBattleMoveFlags
_0801CF20: .4byte gBattleMoves
_0801CF24: .4byte byte_2024C06
_0801CF28: .4byte gUnknown_02024C3C
@@ -30346,7 +30346,7 @@ _0801CF90:
mov r12, r1
_0801CF94:
ldr r2, _0801CFC8 @ =gBattleMons
- ldr r3, _0801CFCC @ =gUnknown_02024C08
+ ldr r3, _0801CFCC @ =gEnemyMonIndex
ldrb r1, [r3]
movs r0, 0x58
muls r0, r1
@@ -30371,7 +30371,7 @@ _0801CF94:
b _0801D1A4
.align 2, 0
_0801CFC8: .4byte gBattleMons
-_0801CFCC: .4byte gUnknown_02024C08
+_0801CFCC: .4byte gEnemyMonIndex
_0801CFD0: .4byte byte_2024C06
_0801CFD4: .4byte gUnknown_02024D1E
_0801CFD8:
@@ -30407,13 +30407,13 @@ _0801CFF2:
ldrb r0, [r0]
cmp r0, 0
bne _0801D032
- ldr r2, _0801D1B0 @ =gUnknown_02024C68
+ ldr r2, _0801D1B0 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x8
orrs r0, r1
strb r0, [r2]
ldr r1, _0801D1B4 @ =gUnknown_02024D28
- ldr r0, _0801D1B8 @ =gUnknown_02024C07
+ ldr r0, _0801D1B8 @ =gPlayerMonIndex
ldrb r2, [r0]
lsls r2, 4
adds r2, r1
@@ -30443,13 +30443,13 @@ _0801D032:
ldrb r0, [r0]
cmp r0, 0
bne _0801D078
- ldr r2, _0801D1B0 @ =gUnknown_02024C68
+ ldr r2, _0801D1B0 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x8
orrs r0, r1
strb r0, [r2]
ldr r1, _0801D1B4 @ =gUnknown_02024D28
- ldr r0, _0801D1B8 @ =gUnknown_02024C07
+ ldr r0, _0801D1B8 @ =gPlayerMonIndex
ldrb r2, [r0]
lsls r2, 4
adds r2, r1
@@ -30581,7 +30581,7 @@ _0801D14E:
ldrb r4, [r0]
cmp r4, 0x19
bne _0801D1A4
- ldr r0, _0801D1B8 @ =gUnknown_02024C07
+ ldr r0, _0801D1B8 @ =gPlayerMonIndex
ldrb r0, [r0]
mov r2, r9
ldrh r1, [r2]
@@ -30621,9 +30621,9 @@ _0801D1A4:
pop {r0}
bx r0
.align 2, 0
-_0801D1B0: .4byte gUnknown_02024C68
+_0801D1B0: .4byte gBattleMoveFlags
_0801D1B4: .4byte gUnknown_02024D28
-_0801D1B8: .4byte gUnknown_02024C07
+_0801D1B8: .4byte gPlayerMonIndex
_0801D1BC: .4byte gBattleMoves
_0801D1C0: .4byte byte_2024C06
_0801D1C4: .4byte gUnknown_02024D1E
@@ -30637,7 +30637,7 @@ b_attack_effectivity_adapt: @ 801D1C8
lsrs r4, r0, 24
lsls r1, 16
lsrs r5, r1, 16
- ldr r7, _0801D1FC @ =gUnknown_02024BEC
+ ldr r7, _0801D1FC @ =gBattleMoveDamage
ldr r0, [r7]
muls r0, r4
movs r1, 0xA
@@ -30658,7 +30658,7 @@ _0801D1EE:
beq _0801D206
b _0801D27A
.align 2, 0
-_0801D1FC: .4byte gUnknown_02024BEC
+_0801D1FC: .4byte gBattleMoveDamage
_0801D200:
cmp r4, 0x14
beq _0801D248
@@ -30786,7 +30786,7 @@ _0801D2AE:
cmp r0, r1
bne _0801D2F4
_0801D2E2:
- ldr r4, _0801D324 @ =gUnknown_02024BEC
+ ldr r4, _0801D324 @ =gBattleMoveDamage
ldr r1, [r4]
lsls r0, r1, 4
subs r0, r1
@@ -30817,7 +30817,7 @@ _0801D2F4:
.align 2, 0
_0801D31C: .4byte gBattleMoves
_0801D320: .4byte gBattleMons
-_0801D324: .4byte gUnknown_02024BEC
+_0801D324: .4byte gBattleMoveDamage
_0801D328:
ldr r1, _0801D344 @ =gTypeEffectiveness
adds r0, r7, r1
@@ -30873,7 +30873,7 @@ _0801D388:
ldrb r0, [r0]
cmp r4, r0
bne _0801D3B0
- ldr r0, _0801D454 @ =gUnknown_02024C08
+ ldr r0, _0801D454 @ =gEnemyMonIndex
ldrb r0, [r0]
muls r0, r3
add r0, r8
@@ -30973,7 +30973,7 @@ _0801D43A:
.align 2, 0
_0801D44C: .4byte gTypeEffectiveness
_0801D450: .4byte gBattleMons
-_0801D454: .4byte gUnknown_02024C08
+_0801D454: .4byte gEnemyMonIndex
_0801D458: .4byte gBattleMoves
thumb_func_end move_effectiveness_something
@@ -31055,7 +31055,7 @@ _0801D4D2:
_0801D4EE:
cmp r5, r8
bne _0801D510
- ldr r0, _0801D568 @ =gUnknown_02024C08
+ ldr r0, _0801D568 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -31118,7 +31118,7 @@ _0801D554:
bx r1
.align 2, 0
_0801D564: .4byte gTypeEffectiveness
-_0801D568: .4byte gUnknown_02024C08
+_0801D568: .4byte gEnemyMonIndex
_0801D56C: .4byte gBattleMons
_0801D570: .4byte gBattleMoves
thumb_func_end ai_rate_move
@@ -31135,7 +31135,7 @@ unref_sub_801D574: @ 801D574
subs r1, r0
lsls r1, 16
lsrs r1, 16
- ldr r4, _0801D5AC @ =gUnknown_02024BEC
+ ldr r4, _0801D5AC @ =gBattleMoveDamage
ldr r0, [r4]
cmp r0, 0
beq _0801D5A6
@@ -31153,7 +31153,7 @@ _0801D5A6:
pop {r0}
bx r0
.align 2, 0
-_0801D5AC: .4byte gUnknown_02024BEC
+_0801D5AC: .4byte gBattleMoveDamage
thumb_func_end unref_sub_801D574
thumb_func_start atk07_damagecalc3
@@ -31168,7 +31168,7 @@ atk07_damagecalc3: @ 801D5B0
subs r1, r0
lsls r1, 16
lsrs r1, 16
- ldr r4, _0801D608 @ =gUnknown_02024BEC
+ ldr r4, _0801D608 @ =gBattleMoveDamage
ldr r0, [r4]
cmp r0, 0
beq _0801D5E2
@@ -31183,7 +31183,7 @@ atk07_damagecalc3: @ 801D5B0
str r0, [r4]
_0801D5E2:
ldr r7, _0801D60C @ =gBattleMons
- ldr r6, _0801D610 @ =gUnknown_02024C08
+ ldr r6, _0801D610 @ =gEnemyMonIndex
ldrb r2, [r6]
movs r5, 0x58
adds r0, r2, 0
@@ -31201,9 +31201,9 @@ _0801D5E2:
ldrb r6, [r0, 0x1A]
b _0801D632
.align 2, 0
-_0801D608: .4byte gUnknown_02024BEC
+_0801D608: .4byte gBattleMoveDamage
_0801D60C: .4byte gBattleMons
-_0801D610: .4byte gUnknown_02024C08
+_0801D610: .4byte gEnemyMonIndex
_0801D614: .4byte gEnigmaBerries
_0801D618:
ldrh r0, [r1, 0x2E]
@@ -31219,7 +31219,7 @@ _0801D618:
lsrs r6, r0, 24
_0801D632:
ldr r1, _0801D6F4 @ =gUnknown_02024C0B
- ldr r5, _0801D6F8 @ =gUnknown_02024C08
+ ldr r5, _0801D6F8 @ =gEnemyMonIndex
ldrb r0, [r5]
strb r0, [r1]
cmp r4, 0x27
@@ -31248,7 +31248,7 @@ _0801D632:
strb r1, [r0]
_0801D670:
ldr r2, _0801D700 @ =gBattleMons
- ldr r3, _0801D6F8 @ =gUnknown_02024C08
+ ldr r3, _0801D6F8 @ =gEnemyMonIndex
ldrb r4, [r3]
movs r0, 0x58
muls r0, r4
@@ -31294,7 +31294,7 @@ _0801D6C2:
muls r0, r4
adds r0, r5
ldrh r1, [r0, 0x28]
- ldr r2, _0801D710 @ =gUnknown_02024BEC
+ ldr r2, _0801D710 @ =gBattleMoveDamage
ldr r0, [r2]
cmp r1, r0
bgt _0801D740
@@ -31308,7 +31308,7 @@ _0801D6C2:
lsls r0, 30
cmp r0, 0
bge _0801D718
- ldr r0, _0801D714 @ =gUnknown_02024C68
+ ldr r0, _0801D714 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r2, 0x40
orrs r1, r2
@@ -31316,14 +31316,14 @@ _0801D6C2:
b _0801D740
.align 2, 0
_0801D6F4: .4byte gUnknown_02024C0B
-_0801D6F8: .4byte gUnknown_02024C08
+_0801D6F8: .4byte gEnemyMonIndex
_0801D6FC: .4byte gUnknown_02024D68
_0801D700: .4byte gBattleMons
_0801D704: .4byte gBattleMoves
_0801D708: .4byte gUnknown_02024BE6
_0801D70C: .4byte gUnknown_02024D28
-_0801D710: .4byte gUnknown_02024BEC
-_0801D714: .4byte gUnknown_02024C68
+_0801D710: .4byte gBattleMoveDamage
+_0801D714: .4byte gBattleMoveFlags
_0801D718:
ldr r0, _0801D750 @ =gUnknown_02024D68
lsls r1, r3, 2
@@ -31334,7 +31334,7 @@ _0801D718:
lsrs r0, 7
cmp r0, 0
beq _0801D740
- ldr r2, _0801D754 @ =gUnknown_02024C68
+ ldr r2, _0801D754 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x80
orrs r0, r1
@@ -31355,7 +31355,7 @@ _0801D740:
bx r0
.align 2, 0
_0801D750: .4byte gUnknown_02024D68
-_0801D754: .4byte gUnknown_02024C68
+_0801D754: .4byte gBattleMoveFlags
_0801D758: .4byte gUnknown_02024C04
_0801D75C: .4byte gUnknown_02024C10
thumb_func_end atk07_damagecalc3
@@ -31372,7 +31372,7 @@ atk08_cmd8: @ 801D760
subs r1, r0
lsls r1, 16
lsrs r1, 16
- ldr r4, _0801D7B8 @ =gUnknown_02024BEC
+ ldr r4, _0801D7B8 @ =gBattleMoveDamage
ldr r0, [r4]
cmp r0, 0
beq _0801D792
@@ -31387,7 +31387,7 @@ atk08_cmd8: @ 801D760
str r0, [r4]
_0801D792:
ldr r7, _0801D7BC @ =gBattleMons
- ldr r6, _0801D7C0 @ =gUnknown_02024C08
+ ldr r6, _0801D7C0 @ =gEnemyMonIndex
ldrb r2, [r6]
movs r5, 0x58
adds r0, r2, 0
@@ -31405,9 +31405,9 @@ _0801D792:
ldrb r6, [r0, 0x1A]
b _0801D7E2
.align 2, 0
-_0801D7B8: .4byte gUnknown_02024BEC
+_0801D7B8: .4byte gBattleMoveDamage
_0801D7BC: .4byte gBattleMons
-_0801D7C0: .4byte gUnknown_02024C08
+_0801D7C0: .4byte gEnemyMonIndex
_0801D7C4: .4byte gEnigmaBerries
_0801D7C8:
ldrh r0, [r1, 0x2E]
@@ -31423,7 +31423,7 @@ _0801D7C8:
lsrs r6, r0, 24
_0801D7E2:
ldr r1, _0801D888 @ =gUnknown_02024C0B
- ldr r5, _0801D88C @ =gUnknown_02024C08
+ ldr r5, _0801D88C @ =gEnemyMonIndex
ldrb r0, [r5]
strb r0, [r1]
cmp r4, 0x27
@@ -31452,7 +31452,7 @@ _0801D7E2:
strb r1, [r0]
_0801D820:
ldr r4, _0801D894 @ =gBattleMons
- ldr r6, _0801D88C @ =gUnknown_02024C08
+ ldr r6, _0801D88C @ =gEnemyMonIndex
ldrb r2, [r6]
movs r7, 0x58
adds r3, r2, 0
@@ -31485,7 +31485,7 @@ _0801D820:
_0801D85E:
adds r0, r3, r4
ldrh r1, [r0, 0x28]
- ldr r2, _0801D89C @ =gUnknown_02024BEC
+ ldr r2, _0801D89C @ =gBattleMoveDamage
ldr r0, [r2]
cmp r1, r0
bgt _0801D8CC
@@ -31498,7 +31498,7 @@ _0801D85E:
lsls r0, 30
cmp r0, 0
bge _0801D8A4
- ldr r0, _0801D8A0 @ =gUnknown_02024C68
+ ldr r0, _0801D8A0 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r2, 0x40
orrs r1, r2
@@ -31506,12 +31506,12 @@ _0801D85E:
b _0801D8CC
.align 2, 0
_0801D888: .4byte gUnknown_02024C0B
-_0801D88C: .4byte gUnknown_02024C08
+_0801D88C: .4byte gEnemyMonIndex
_0801D890: .4byte gUnknown_02024D68
_0801D894: .4byte gBattleMons
_0801D898: .4byte gUnknown_02024D28
-_0801D89C: .4byte gUnknown_02024BEC
-_0801D8A0: .4byte gUnknown_02024C68
+_0801D89C: .4byte gBattleMoveDamage
+_0801D8A0: .4byte gBattleMoveFlags
_0801D8A4:
ldr r0, _0801D8DC @ =gUnknown_02024D68
lsls r1, r3, 2
@@ -31522,7 +31522,7 @@ _0801D8A4:
lsrs r0, 7
cmp r0, 0
beq _0801D8CC
- ldr r2, _0801D8E0 @ =gUnknown_02024C68
+ ldr r2, _0801D8E0 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x80
orrs r0, r1
@@ -31543,7 +31543,7 @@ _0801D8CC:
bx r0
.align 2, 0
_0801D8DC: .4byte gUnknown_02024D68
-_0801D8E0: .4byte gUnknown_02024C68
+_0801D8E0: .4byte gBattleMoveFlags
_0801D8E4: .4byte gUnknown_02024C04
_0801D8E8: .4byte gUnknown_02024C10
thumb_func_end atk08_cmd8
@@ -31628,14 +31628,14 @@ _0801D986:
cmp r0, 0
bne _0801DA00
_0801D992:
- ldr r0, _0801DA18 @ =gUnknown_02024C68
+ ldr r0, _0801DA18 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
cmp r0, 0
bne _0801DA3C
ldr r1, _0801DA1C @ =gUnknown_02024A60
- ldr r2, _0801DA20 @ =gUnknown_02024C07
+ ldr r2, _0801DA20 @ =gPlayerMonIndex
mov r9, r2
ldrb r0, [r2]
strb r0, [r1]
@@ -31647,7 +31647,7 @@ _0801D992:
ldrb r2, [r0]
ldr r0, _0801DA28 @ =gBattleMovePower
ldrh r3, [r0]
- ldr r0, _0801DA2C @ =gUnknown_02024BEC
+ ldr r0, _0801DA2C @ =gBattleMoveDamage
ldr r0, [r0]
str r0, [sp]
ldr r5, _0801DA30 @ =gBattleMons
@@ -31691,12 +31691,12 @@ _0801DA00:
_0801DA0C: .4byte gBattleMoves
_0801DA10: .4byte 0x02000000
_0801DA14: .4byte 0x000160a1
-_0801DA18: .4byte gUnknown_02024C68
+_0801DA18: .4byte gBattleMoveFlags
_0801DA1C: .4byte gUnknown_02024A60
-_0801DA20: .4byte gUnknown_02024C07
+_0801DA20: .4byte gPlayerMonIndex
_0801DA24: .4byte 0x00016002
_0801DA28: .4byte gBattleMovePower
-_0801DA2C: .4byte gUnknown_02024BEC
+_0801DA2C: .4byte gBattleMoveDamage
_0801DA30: .4byte gBattleMons
_0801DA34: .4byte gUnknown_02024CA8
_0801DA38: .4byte gUnknown_02024C10
@@ -31746,7 +31746,7 @@ sub_801DA80: @ 801DA80
ldr r0, [r0]
cmp r0, 0
bne _0801DB36
- ldr r0, _0801DAE8 @ =gUnknown_02024C68
+ ldr r0, _0801DAE8 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -31791,14 +31791,14 @@ sub_801DA80: @ 801DA80
b _0801DB2E
.align 2, 0
_0801DAE4: .4byte gUnknown_02024A64
-_0801DAE8: .4byte gUnknown_02024C68
+_0801DAE8: .4byte gBattleMoveFlags
_0801DAEC: .4byte gUnknown_02024C10
_0801DAF0: .4byte gUnknown_02024A60
_0801DAF4: .4byte gBattleMons
_0801DAF8: .4byte gUnknown_02024CA8
_0801DAFC: .4byte gUnknown_02024C6C
_0801DB00:
- ldr r5, _0801DB3C @ =gUnknown_02024BEC
+ ldr r5, _0801DB3C @ =gBattleMoveDamage
ldrh r1, [r5]
movs r0, 0
bl dp01_build_cmdbuf_x18_0_aa_health_bar_update
@@ -31828,7 +31828,7 @@ _0801DB36:
pop {r0}
bx r0
.align 2, 0
-_0801DB3C: .4byte gUnknown_02024BEC
+_0801DB3C: .4byte gBattleMoveDamage
_0801DB40: .4byte gUnknown_02024A60
_0801DB44: .4byte gUnknown_030042E0
_0801DB48: .4byte gUnknown_02024C10
@@ -31871,7 +31871,7 @@ _0801DB80:
adds r0, r2
ldrb r6, [r0, 0x2]
_0801DB90:
- ldr r0, _0801DC24 @ =gUnknown_02024C68
+ ldr r0, _0801DC24 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -31914,7 +31914,7 @@ _0801DB9E:
cmp r3, 0
bne _0801DCB4
adds r5, r1, 0
- ldr r6, _0801DC3C @ =gUnknown_02024BEC
+ ldr r6, _0801DC3C @ =gBattleMoveDamage
ldr r4, [r6]
cmp r5, r4
blt _0801DC48
@@ -31945,13 +31945,13 @@ _0801DC02:
.align 2, 0
_0801DC1C: .4byte gBattleMoves
_0801DC20: .4byte gUnknown_02024BE6
-_0801DC24: .4byte gUnknown_02024C68
+_0801DC24: .4byte gBattleMoveFlags
_0801DC28: .4byte gUnknown_02024C10
_0801DC2C: .4byte gUnknown_02024A60
_0801DC30: .4byte gBattleMons
_0801DC34: .4byte gUnknown_02024CA8
_0801DC38: .4byte gUnknown_02024C6C
-_0801DC3C: .4byte gUnknown_02024BEC
+_0801DC3C: .4byte gBattleMoveDamage
_0801DC40: .4byte gUnknown_02024D68
_0801DC44: .4byte gUnknown_02024BF0
_0801DC48:
@@ -32012,7 +32012,7 @@ _0801DCB4:
ldr r1, _0801DCF8 @ =0xfffffeff
ands r2, r1
str r2, [r0]
- ldr r1, _0801DCFC @ =gUnknown_02024BEC
+ ldr r1, _0801DCFC @ =gBattleMoveDamage
ldr r5, [r1]
mov r12, r0
adds r7, r1, 0
@@ -32043,7 +32043,7 @@ _0801DCF0:
.align 2, 0
_0801DCF4: .4byte gUnknown_02024C6C
_0801DCF8: .4byte 0xfffffeff
-_0801DCFC: .4byte gUnknown_02024BEC
+_0801DCFC: .4byte gBattleMoveDamage
_0801DD00: .4byte gBattleMons
_0801DD04: .4byte gUnknown_02024A60
_0801DD08:
@@ -32078,19 +32078,19 @@ _0801DD24:
ldr r1, _0801DD58 @ =gUnknown_02024C74
ldrb r0, [r5]
adds r0, r1
- ldr r1, _0801DD5C @ =gUnknown_02024C07
+ ldr r1, _0801DD5C @ =gPlayerMonIndex
b _0801DD68
.align 2, 0
_0801DD4C: .4byte gUnknown_02024BF4
_0801DD50: .4byte gUnknown_02024A60
_0801DD54: .4byte gUnknown_02024C10
_0801DD58: .4byte gUnknown_02024C74
-_0801DD5C: .4byte gUnknown_02024C07
+_0801DD5C: .4byte gPlayerMonIndex
_0801DD60:
ldr r1, _0801DD8C @ =gUnknown_02024C74
ldrb r0, [r5]
adds r0, r1
- ldr r1, _0801DD90 @ =gUnknown_02024C08
+ ldr r1, _0801DD90 @ =gEnemyMonIndex
_0801DD68:
ldrb r1, [r1]
strb r1, [r0]
@@ -32112,7 +32112,7 @@ _0801DD6C:
b _0801DDAC
.align 2, 0
_0801DD8C: .4byte gUnknown_02024C74
-_0801DD90: .4byte gUnknown_02024C08
+_0801DD90: .4byte gEnemyMonIndex
_0801DD94: .4byte gBattleMons
_0801DD98: .4byte gUnknown_02024BF0
_0801DD9C:
@@ -32182,7 +32182,7 @@ _0801DDD4:
ldrb r0, [r5]
lsls r0, 4
adds r0, r3
- ldr r2, _0801DE34 @ =gUnknown_02024C07
+ ldr r2, _0801DE34 @ =gPlayerMonIndex
b _0801DE40
.align 2, 0
_0801DE20: .4byte gUnknown_02024BF0
@@ -32190,12 +32190,12 @@ _0801DE24: .4byte gUnknown_02024D68
_0801DE28: .4byte gUnknown_02024BE6
_0801DE2C: .4byte gUnknown_02024D28
_0801DE30: .4byte gUnknown_02024C10
-_0801DE34: .4byte gUnknown_02024C07
+_0801DE34: .4byte gPlayerMonIndex
_0801DE38:
ldrb r0, [r5]
lsls r0, 4
adds r0, r3
- ldr r2, _0801DE54 @ =gUnknown_02024C08
+ ldr r2, _0801DE54 @ =gEnemyMonIndex
_0801DE40:
ldrb r1, [r2]
strb r1, [r0, 0xC]
@@ -32208,7 +32208,7 @@ _0801DE40:
strb r1, [r0, 0x10]
b _0801DEC6
.align 2, 0
-_0801DE54: .4byte gUnknown_02024C08
+_0801DE54: .4byte gEnemyMonIndex
_0801DE58:
cmp r6, 0x8
bls _0801DEC6
@@ -32244,17 +32244,17 @@ _0801DE5C:
ldrb r0, [r5]
lsls r0, 4
adds r0, r3
- ldr r2, _0801DEA8 @ =gUnknown_02024C07
+ ldr r2, _0801DEA8 @ =gPlayerMonIndex
b _0801DEB4
.align 2, 0
_0801DEA0: .4byte gUnknown_02024D28
_0801DEA4: .4byte gUnknown_02024C10
-_0801DEA8: .4byte gUnknown_02024C07
+_0801DEA8: .4byte gPlayerMonIndex
_0801DEAC:
ldrb r0, [r5]
lsls r0, 4
adds r0, r3
- ldr r2, _0801DEF4 @ =gUnknown_02024C08
+ ldr r2, _0801DEF4 @ =gEnemyMonIndex
_0801DEB4:
ldrb r1, [r2]
strb r1, [r0, 0xD]
@@ -32287,7 +32287,7 @@ _0801DEC6:
bl dp01_battle_side_mark_buffer_for_execution
b _0801DF26
.align 2, 0
-_0801DEF4: .4byte gUnknown_02024C08
+_0801DEF4: .4byte gEnemyMonIndex
_0801DEF8: .4byte 0xffefffff
_0801DEFC: .4byte gUnknown_02024AA8
_0801DF00:
@@ -32337,13 +32337,13 @@ atk0D_critmessage: @ 801DF48
ldrb r0, [r0]
cmp r0, 0x2
bne _0801DF76
- ldr r0, _0801DF8C @ =gUnknown_02024C68
+ ldr r0, _0801DF8C @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
cmp r0, 0
bne _0801DF76
- ldr r0, _0801DF90 @ =gUnknown_02024C07
+ ldr r0, _0801DF90 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0xD9
bl b_std_message
@@ -32361,8 +32361,8 @@ _0801DF7E:
.align 2, 0
_0801DF84: .4byte gUnknown_02024A64
_0801DF88: .4byte gCritMultiplier
-_0801DF8C: .4byte gUnknown_02024C68
-_0801DF90: .4byte gUnknown_02024C07
+_0801DF8C: .4byte gBattleMoveFlags
+_0801DF90: .4byte gPlayerMonIndex
_0801DF94: .4byte gUnknown_02024D1E
_0801DF98: .4byte gUnknown_02024C10
thumb_func_end atk0D_critmessage
@@ -32375,10 +32375,10 @@ atk0E_missmessage: @ 801DF9C
cmp r0, 0
bne _0801E05C
ldr r4, _0801DFD8 @ =gUnknown_02024A60
- ldr r0, _0801DFDC @ =gUnknown_02024C08
+ ldr r0, _0801DFDC @ =gEnemyMonIndex
ldrb r0, [r0]
strb r0, [r4]
- ldr r1, _0801DFE0 @ =gUnknown_02024C68
+ ldr r1, _0801DFE0 @ =gBattleMoveFlags
ldrb r2, [r1]
movs r0, 0x1
ands r0, r2
@@ -32400,8 +32400,8 @@ atk0E_missmessage: @ 801DF9C
.align 2, 0
_0801DFD4: .4byte gUnknown_02024A64
_0801DFD8: .4byte gUnknown_02024A60
-_0801DFDC: .4byte gUnknown_02024C08
-_0801DFE0: .4byte gUnknown_02024C68
+_0801DFDC: .4byte gEnemyMonIndex
+_0801DFE0: .4byte gBattleMoveFlags
_0801DFE4:
cmp r0, 0x8
beq _0801E054
@@ -32485,7 +32485,7 @@ atk0F_resultmessage: @ 801E06C
beq _0801E07A
b _0801E20C
_0801E07A:
- ldr r1, _0801E0AC @ =gUnknown_02024C68
+ ldr r1, _0801E0AC @ =gBattleMoveFlags
ldrb r2, [r1]
movs r4, 0x1
adds r0, r4, 0
@@ -32511,7 +32511,7 @@ _0801E09A:
b _0801E1F6
.align 2, 0
_0801E0A8: .4byte gUnknown_02024A64
-_0801E0AC: .4byte gUnknown_02024C68
+_0801E0AC: .4byte gBattleMoveFlags
_0801E0B0: .4byte gUnknown_02024D1E
_0801E0B4: .4byte gUnknown_08401508
_0801E0B8:
@@ -32564,7 +32564,7 @@ _0801E100:
_0801E104:
ldr r4, _0801E12C @ =gUnknown_02024C04
ldr r2, _0801E130 @ =gBattleMons
- ldr r3, _0801E134 @ =gUnknown_02024C08
+ ldr r3, _0801E134 @ =gEnemyMonIndex
ldrb r1, [r3]
movs r0, 0x58
muls r0, r1
@@ -32584,7 +32584,7 @@ _0801E104:
.align 2, 0
_0801E12C: .4byte gUnknown_02024C04
_0801E130: .4byte gBattleMons
-_0801E134: .4byte gUnknown_02024C08
+_0801E134: .4byte gEnemyMonIndex
_0801E138: .4byte gUnknown_02024C0B
_0801E13C: .4byte gUnknown_02024C10
_0801E140: .4byte gUnknown_081D9AC6
@@ -32639,7 +32639,7 @@ _0801E19C:
beq _0801E1E4
ldr r4, _0801E1CC @ =gUnknown_02024C04
ldr r2, _0801E1D0 @ =gBattleMons
- ldr r3, _0801E1D4 @ =gUnknown_02024C08
+ ldr r3, _0801E1D4 @ =gEnemyMonIndex
ldrb r1, [r3]
movs r0, 0x58
muls r0, r1
@@ -32659,7 +32659,7 @@ _0801E19C:
.align 2, 0
_0801E1CC: .4byte gUnknown_02024C04
_0801E1D0: .4byte gBattleMons
-_0801E1D4: .4byte gUnknown_02024C08
+_0801E1D4: .4byte gEnemyMonIndex
_0801E1D8: .4byte gUnknown_02024C0B
_0801E1DC: .4byte gUnknown_02024C10
_0801E1E0: .4byte gUnknown_081D9AC6
@@ -32680,7 +32680,7 @@ _0801E1F6:
beq _0801E204
_0801E1FA:
adds r0, r3, 0
- ldr r1, _0801E214 @ =gUnknown_02024C07
+ ldr r1, _0801E214 @ =gPlayerMonIndex
ldrb r1, [r1]
bl b_std_message
_0801E204:
@@ -32694,7 +32694,7 @@ _0801E20C:
pop {r0}
bx r0
.align 2, 0
-_0801E214: .4byte gUnknown_02024C07
+_0801E214: .4byte gPlayerMonIndex
_0801E218: .4byte gUnknown_02024C10
thumb_func_end atk0F_resultmessage
@@ -32711,7 +32711,7 @@ atk10_printstring: @ 801E21C
ldrb r1, [r1, 0x2]
lsls r1, 8
orrs r0, r1
- ldr r1, _0801E254 @ =gUnknown_02024C07
+ ldr r1, _0801E254 @ =gPlayerMonIndex
ldrb r1, [r1]
bl b_std_message
ldr r0, [r4]
@@ -32727,7 +32727,7 @@ _0801E246:
.align 2, 0
_0801E24C: .4byte gUnknown_02024A64
_0801E250: .4byte gUnknown_02024C10
-_0801E254: .4byte gUnknown_02024C07
+_0801E254: .4byte gPlayerMonIndex
_0801E258: .4byte gUnknown_02024D1E
thumb_func_end atk10_printstring
@@ -32735,7 +32735,7 @@ _0801E258: .4byte gUnknown_02024D1E
atk11_printstring2: @ 801E25C
push {r4,r5,lr}
ldr r5, _0801E290 @ =gUnknown_02024A60
- ldr r0, _0801E294 @ =gUnknown_02024C07
+ ldr r0, _0801E294 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r5]
ldr r4, _0801E298 @ =gUnknown_02024C10
@@ -32759,7 +32759,7 @@ atk11_printstring2: @ 801E25C
bx r0
.align 2, 0
_0801E290: .4byte gUnknown_02024A60
-_0801E294: .4byte gUnknown_02024C07
+_0801E294: .4byte gPlayerMonIndex
_0801E298: .4byte gUnknown_02024C10
_0801E29C: .4byte gUnknown_02024D1E
thumb_func_end atk11_printstring2
@@ -32837,7 +32837,7 @@ atk13_printfromtable: @ 801E2FC
lsls r0, 1
adds r1, r0
ldrh r0, [r1]
- ldr r1, _0801E34C @ =gUnknown_02024C07
+ ldr r1, _0801E34C @ =gPlayerMonIndex
ldrb r1, [r1]
bl b_std_message
ldr r0, [r4]
@@ -32853,7 +32853,7 @@ _0801E33A:
_0801E340: .4byte gUnknown_02024A64
_0801E344: .4byte gUnknown_02024C10
_0801E348: .4byte gUnknown_02024D1E
-_0801E34C: .4byte gUnknown_02024C07
+_0801E34C: .4byte gPlayerMonIndex
thumb_func_end atk13_printfromtable
thumb_func_start atk14_printfromtable2
@@ -32880,7 +32880,7 @@ atk14_printfromtable2: @ 801E350
lsls r0, 1
adds r1, r0
ldr r4, _0801E3AC @ =gUnknown_02024A60
- ldr r0, _0801E3B0 @ =gUnknown_02024C07
+ ldr r0, _0801E3B0 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r4]
ldrh r1, [r1]
@@ -32902,7 +32902,7 @@ _0801E3A0: .4byte gUnknown_02024A64
_0801E3A4: .4byte gUnknown_02024C10
_0801E3A8: .4byte gUnknown_02024D1E
_0801E3AC: .4byte gUnknown_02024A60
-_0801E3B0: .4byte gUnknown_02024C07
+_0801E3B0: .4byte gPlayerMonIndex
thumb_func_end atk14_printfromtable2
thumb_func_start sub_801E3B4
@@ -32963,7 +32963,7 @@ sub_801E3EC: @ 801E3EC
cmp r0, 0
beq _0801E444
ldr r2, _0801E434 @ =gUnknown_02024C0A
- ldr r0, _0801E438 @ =gUnknown_02024C07
+ ldr r0, _0801E438 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r2]
movs r0, 0xBF
@@ -32971,21 +32971,21 @@ sub_801E3EC: @ 801E3EC
strb r0, [r7, 0x3]
movs r6, 0x40
ldr r0, _0801E43C @ =0x02000000
- ldr r1, _0801E440 @ =gUnknown_02024C08
+ ldr r1, _0801E440 @ =gEnemyMonIndex
b _0801E450
.align 2, 0
_0801E430: .4byte gUnknown_02024D1E
_0801E434: .4byte gUnknown_02024C0A
-_0801E438: .4byte gUnknown_02024C07
+_0801E438: .4byte gPlayerMonIndex
_0801E43C: .4byte 0x02000000
-_0801E440: .4byte gUnknown_02024C08
+_0801E440: .4byte gEnemyMonIndex
_0801E444:
ldr r2, _0801E538 @ =gUnknown_02024C0A
- ldr r0, _0801E53C @ =gUnknown_02024C08
+ ldr r0, _0801E53C @ =gEnemyMonIndex
ldrb r0, [r0]
strb r0, [r2]
ldr r0, _0801E540 @ =0x02000000
- ldr r1, _0801E544 @ =gUnknown_02024C07
+ ldr r1, _0801E544 @ =gPlayerMonIndex
_0801E450:
ldrb r1, [r1]
ldr r3, _0801E548 @ =0x00016003
@@ -33107,9 +33107,9 @@ _0801E536:
b _0801EA14
.align 2, 0
_0801E538: .4byte gUnknown_02024C0A
-_0801E53C: .4byte gUnknown_02024C08
+_0801E53C: .4byte gEnemyMonIndex
_0801E540: .4byte 0x02000000
-_0801E544: .4byte gUnknown_02024C07
+_0801E544: .4byte gPlayerMonIndex
_0801E548: .4byte 0x00016003
_0801E54C: .4byte gBattleMons
_0801E550: .4byte gUnknown_02024C6C
@@ -33730,7 +33730,7 @@ _0801EA04:
mov r10, r0
b _0801EA14
_0801EA0A:
- ldr r0, _0801EA58 @ =gUnknown_02024C68
+ ldr r0, _0801EA58 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r2, 0x8
orrs r1, r2
@@ -33769,7 +33769,7 @@ _0801EA1C:
str r0, [r3]
b _0801EA84
.align 2, 0
-_0801EA58: .4byte gUnknown_02024C68
+_0801EA58: .4byte gBattleMoveFlags
_0801EA5C: .4byte gUnknown_02024C10
_0801EA60: .4byte gUnknown_081FAB5C
_0801EA64: .4byte gUnknown_02024D1E
@@ -34134,7 +34134,7 @@ _0801EDD0: .4byte gUnknown_02024C10
_0801EDD4: .4byte gUnknown_081FAC4C
_0801EDD8: .4byte gUnknown_02024D1E
_0801EDDC:
- ldr r5, _0801EE30 @ =gUnknown_02024C07
+ ldr r5, _0801EE30 @ =gPlayerMonIndex
ldrb r0, [r5]
bl battle_get_per_side_status
movs r1, 0x1
@@ -34174,7 +34174,7 @@ _0801EE14:
ldr r0, [r0]
bl _0801F5F8
.align 2, 0
-_0801EE30: .4byte gUnknown_02024C07
+_0801EE30: .4byte gPlayerMonIndex
_0801EE34: .4byte gUnknown_02024D1A
_0801EE38: .4byte gBattleMons
_0801EE3C: .4byte 0x0000ffff
@@ -34294,7 +34294,7 @@ _0801EEE8:
ldr r3, _0801EF90 @ =0x00016020
adds r0, r3
adds r0, r2
- ldr r1, _0801EF94 @ =gUnknown_02024C07
+ ldr r1, _0801EF94 @ =gPlayerMonIndex
ldrb r1, [r1]
strb r1, [r0]
ldr r4, _0801EF98 @ =gUnknown_02024C10
@@ -34342,13 +34342,13 @@ _0801EF84: .4byte 0x00016004
_0801EF88: .4byte gUnknown_02024BE6
_0801EF8C: .4byte 0x00016005
_0801EF90: .4byte 0x00016020
-_0801EF94: .4byte gUnknown_02024C07
+_0801EF94: .4byte gPlayerMonIndex
_0801EF98: .4byte gUnknown_02024C10
_0801EF9C: .4byte gUnknown_081FAC4C
_0801EFA0: .4byte gUnknown_02024D1E
_0801EFA4: .4byte gUnknown_0840164C
_0801EFA8:
- ldr r1, _0801EFD8 @ =gUnknown_02024BEC
+ ldr r1, _0801EFD8 @ =gBattleMoveDamage
ldr r0, _0801EFDC @ =gUnknown_02024BF0
ldr r0, [r0]
cmp r0, 0
@@ -34374,7 +34374,7 @@ _0801EFC0:
ldr r0, [r0]
b _0801F5F8
.align 2, 0
-_0801EFD8: .4byte gUnknown_02024BEC
+_0801EFD8: .4byte gBattleMoveDamage
_0801EFDC: .4byte gUnknown_02024BF0
_0801EFE0: .4byte gUnknown_02024C10
_0801EFE4: .4byte gUnknown_081FAC4C
@@ -34565,7 +34565,7 @@ _0801F178: .4byte gUnknown_02024CA8
_0801F17C: .4byte gUnknown_02024C54
_0801F180: .4byte gUnknown_02024BE6
_0801F184:
- ldr r0, _0801F1A0 @ =gUnknown_02024C07
+ ldr r0, _0801F1A0 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
adds r2, r1, 0
@@ -34581,9 +34581,9 @@ _0801F19A:
str r0, [r2]
b _0801F5DC
.align 2, 0
-_0801F1A0: .4byte gUnknown_02024C07
+_0801F1A0: .4byte gPlayerMonIndex
_0801F1A4:
- ldr r4, _0801F254 @ =gUnknown_02024C07
+ ldr r4, _0801F254 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -34626,7 +34626,7 @@ _0801F1D8:
ldrb r1, [r0]
ldr r3, _0801F268 @ =gBitTable
ldr r2, _0801F26C @ =gUnknown_02024A6A
- ldr r0, _0801F254 @ =gUnknown_02024C07
+ ldr r0, _0801F254 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 1
adds r0, r2
@@ -34640,7 +34640,7 @@ _0801F1D8:
b _0801F5DC
_0801F214:
ldr r2, _0801F270 @ =gBattleMons
- ldr r1, _0801F274 @ =gUnknown_02024C08
+ ldr r1, _0801F274 @ =gEnemyMonIndex
ldrb r0, [r1]
movs r3, 0x58
muls r0, r3
@@ -34670,7 +34670,7 @@ _0801F214:
bl sub_81074C4
b _0801F5FA
.align 2, 0
-_0801F254: .4byte gUnknown_02024C07
+_0801F254: .4byte gPlayerMonIndex
_0801F258: .4byte gBattleTypeFlags
_0801F25C: .4byte 0x00000902
_0801F260: .4byte gTrainerBattleOpponent
@@ -34678,12 +34678,12 @@ _0801F264: .4byte gUnknown_02024DBC
_0801F268: .4byte gBitTable
_0801F26C: .4byte gUnknown_02024A6A
_0801F270: .4byte gBattleMons
-_0801F274: .4byte gUnknown_02024C08
+_0801F274: .4byte gEnemyMonIndex
_0801F278: .4byte gUnknown_02024C10
_0801F27C: .4byte gUnknown_081D9913
_0801F280: .4byte byte_2024C06
_0801F284:
- ldr r4, _0801F340 @ =gUnknown_02024C07
+ ldr r4, _0801F340 @ =gPlayerMonIndex
mov r10, r4
ldrb r1, [r4]
movs r0, 0x58
@@ -34776,7 +34776,7 @@ _0801F2B6:
strb r6, [r0]
b _0801F5FA
.align 2, 0
-_0801F340: .4byte gUnknown_02024C07
+_0801F340: .4byte gPlayerMonIndex
_0801F344: .4byte 0x020160f0
_0801F348: .4byte gUnknown_02024C04
_0801F34C: .4byte gUnknown_02024A60
@@ -34786,7 +34786,7 @@ _0801F358: .4byte 0xfffe9f10
_0801F35C: .4byte 0x000160e8
_0801F360: .4byte 0x000160e9
_0801F364:
- ldr r3, _0801F394 @ =gUnknown_02024C08
+ ldr r3, _0801F394 @ =gEnemyMonIndex
ldrb r1, [r3]
movs r0, 0x58
adds r2, r1, 0
@@ -34805,16 +34805,16 @@ _0801F364:
subs r0, r1
lsls r0, 2
adds r0, r2
- ldr r1, _0801F39C @ =gUnknown_02024C07
+ ldr r1, _0801F39C @ =gPlayerMonIndex
ldrb r1, [r1]
strb r1, [r0, 0x14]
b _0801F5DC
.align 2, 0
-_0801F394: .4byte gUnknown_02024C08
+_0801F394: .4byte gEnemyMonIndex
_0801F398: .4byte gUnknown_02024CA8
-_0801F39C: .4byte gUnknown_02024C07
+_0801F39C: .4byte gPlayerMonIndex
_0801F3A0:
- ldr r0, _0801F3B8 @ =gUnknown_02024C08
+ ldr r0, _0801F3B8 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
adds r2, r1, 0
@@ -34827,7 +34827,7 @@ _0801F3A0:
lsls r1, 20
b _0801F19A
.align 2, 0
-_0801F3B8: .4byte gUnknown_02024C08
+_0801F3B8: .4byte gEnemyMonIndex
_0801F3BC:
ldr r4, _0801F3CC @ =gUnknown_02024C10
ldr r0, [r4]
@@ -34849,7 +34849,7 @@ _0801F3D4:
_0801F3E4: .4byte gUnknown_02024C10
_0801F3E8: .4byte gUnknown_081D92C0
_0801F3EC:
- ldr r6, _0801F43C @ =gUnknown_02024C08
+ ldr r6, _0801F43C @ =gEnemyMonIndex
ldrb r0, [r6]
movs r2, 0x58
muls r0, r2
@@ -34888,7 +34888,7 @@ _0801F406:
ldr r0, _0801F448 @ =gUnknown_081D9635
b _0801F5F8
.align 2, 0
-_0801F43C: .4byte gUnknown_02024C08
+_0801F43C: .4byte gEnemyMonIndex
_0801F440: .4byte gUnknown_02024A60
_0801F444: .4byte gUnknown_02024C10
_0801F448: .4byte gUnknown_081D9635
@@ -34903,7 +34903,7 @@ _0801F44C:
_0801F45C: .4byte gUnknown_02024C10
_0801F460: .4byte gUnknown_081D93FA
_0801F464:
- ldr r4, _0801F494 @ =gUnknown_02024BEC
+ ldr r4, _0801F494 @ =gBattleMoveDamage
ldr r0, _0801F498 @ =gUnknown_02024BF0
ldr r0, [r0]
movs r1, 0x3
@@ -34926,7 +34926,7 @@ _0801F47A:
ldr r0, [r0]
b _0801F5F8
.align 2, 0
-_0801F494: .4byte gUnknown_02024BEC
+_0801F494: .4byte gBattleMoveDamage
_0801F498: .4byte gUnknown_02024BF0
_0801F49C: .4byte gUnknown_02024C10
_0801F4A0: .4byte gUnknown_081FAC4C
@@ -35107,7 +35107,7 @@ _0801F610: .4byte gUnknown_081D94B0
atk15_seteffectwithchancetarget: @ 801F614
push {r4,lr}
ldr r2, _0801F640 @ =gBattleMons
- ldr r0, _0801F644 @ =gUnknown_02024C07
+ ldr r0, _0801F644 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -35128,7 +35128,7 @@ atk15_seteffectwithchancetarget: @ 801F614
b _0801F660
.align 2, 0
_0801F640: .4byte gBattleMons
-_0801F644: .4byte gUnknown_02024C07
+_0801F644: .4byte gPlayerMonIndex
_0801F648: .4byte gBattleMoves
_0801F64C: .4byte gUnknown_02024BE6
_0801F650:
@@ -35147,7 +35147,7 @@ _0801F660:
ands r0, r2
cmp r0, 0
beq _0801F690
- ldr r0, _0801F68C @ =gUnknown_02024C68
+ ldr r0, _0801F68C @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -35161,7 +35161,7 @@ _0801F660:
_0801F680: .4byte gBattleMoves
_0801F684: .4byte gUnknown_02024BE6
_0801F688: .4byte gUnknown_02024D1E
-_0801F68C: .4byte gUnknown_02024C68
+_0801F68C: .4byte gBattleMoveFlags
_0801F690:
bl Random
lsls r0, 16
@@ -35176,7 +35176,7 @@ _0801F690:
ldrb r0, [r0, 0x3]
cmp r0, 0
beq _0801F6DA
- ldr r0, _0801F6CC @ =gUnknown_02024C68
+ ldr r0, _0801F6CC @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -35191,7 +35191,7 @@ _0801F6BE:
b _0801F6E2
.align 2, 0
_0801F6C8: .4byte gUnknown_02024D1E
-_0801F6CC: .4byte gUnknown_02024C68
+_0801F6CC: .4byte gBattleMoveFlags
_0801F6D0:
movs r0, 0
movs r1, 0
@@ -35369,24 +35369,24 @@ _0801F834:
cmp r0, 0x1
bne _0801F85C
ldr r1, _0801F84C @ =gUnknown_02024A60
- ldr r0, _0801F850 @ =gUnknown_02024C07
+ ldr r0, _0801F850 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r1]
- ldr r0, _0801F854 @ =gUnknown_02024C08
+ ldr r0, _0801F854 @ =gEnemyMonIndex
ldrb r7, [r0]
ldr r4, _0801F858 @ =gUnknown_081D8C58
b _0801F86A
.align 2, 0
_0801F84C: .4byte gUnknown_02024A60
-_0801F850: .4byte gUnknown_02024C07
-_0801F854: .4byte gUnknown_02024C08
+_0801F850: .4byte gPlayerMonIndex
+_0801F854: .4byte gEnemyMonIndex
_0801F858: .4byte gUnknown_081D8C58
_0801F85C:
ldr r1, _0801F954 @ =gUnknown_02024A60
- ldr r0, _0801F958 @ =gUnknown_02024C08
+ ldr r0, _0801F958 @ =gEnemyMonIndex
ldrb r0, [r0]
strb r0, [r1]
- ldr r0, _0801F95C @ =gUnknown_02024C07
+ ldr r0, _0801F95C @ =gPlayerMonIndex
ldrb r7, [r0]
ldr r4, _0801F960 @ =gUnknown_081D8C65
_0801F86A:
@@ -35509,8 +35509,8 @@ _0801F914:
b _0801F9CC
.align 2, 0
_0801F954: .4byte gUnknown_02024A60
-_0801F958: .4byte gUnknown_02024C08
-_0801F95C: .4byte gUnknown_02024C07
+_0801F958: .4byte gEnemyMonIndex
+_0801F95C: .4byte gPlayerMonIndex
_0801F960: .4byte gUnknown_081D8C65
_0801F964: .4byte gUnknown_02024C0C
_0801F968: .4byte gBitTable
@@ -35562,7 +35562,7 @@ _0801F9CC:
cmp r0, 0
beq _0801FA02
ldr r6, _0801FAEC @ =gBattleMons
- ldr r0, _0801FAF0 @ =gUnknown_02024C07
+ ldr r0, _0801FAF0 @ =gPlayerMonIndex
ldrb r0, [r0]
movs r5, 0x58
muls r0, r5
@@ -35573,7 +35573,7 @@ _0801F9CC:
ldr r4, _0801FAF4 @ =gUnknown_02024C10
ldr r0, [r4]
bl b_movescr_stack_push
- ldr r1, _0801FAF8 @ =gUnknown_02024BEC
+ ldr r1, _0801FAF8 @ =gBattleMoveDamage
adds r0, r7, 0
muls r0, r5
adds r0, r6
@@ -35583,7 +35583,7 @@ _0801F9CC:
str r0, [r4]
_0801FA02:
ldr r1, _0801FB00 @ =gUnknown_02024C98
- ldr r6, _0801FB04 @ =gUnknown_02024C08
+ ldr r6, _0801FB04 @ =gEnemyMonIndex
ldrb r0, [r6]
lsls r0, 2
adds r0, r1
@@ -35602,7 +35602,7 @@ _0801FA1A:
ands r5, r0
cmp r5, 0
bne _0801FB22
- ldr r4, _0801FAF0 @ =gUnknown_02024C07
+ ldr r4, _0801FAF0 @ =gPlayerMonIndex
mov r8, r4
ldrb r0, [r4]
bl battle_side_get_owner
@@ -35693,12 +35693,12 @@ _0801FAE0: .4byte gUnknown_030042E0
_0801FAE4: .4byte gUnknown_02024A60
_0801FAE8: .4byte gUnknown_02024C6C
_0801FAEC: .4byte gBattleMons
-_0801FAF0: .4byte gUnknown_02024C07
+_0801FAF0: .4byte gPlayerMonIndex
_0801FAF4: .4byte gUnknown_02024C10
-_0801FAF8: .4byte gUnknown_02024BEC
+_0801FAF8: .4byte gBattleMoveDamage
_0801FAFC: .4byte gUnknown_081D9156
_0801FB00: .4byte gUnknown_02024C98
-_0801FB04: .4byte gUnknown_02024C08
+_0801FB04: .4byte gEnemyMonIndex
_0801FB08: .4byte gUnknown_02024BE6
_0801FB0C: .4byte 0x02000000
_0801FB10: .4byte 0x0001608c
@@ -35944,7 +35944,7 @@ atk1E_jumpifability: @ 801FCC4
ldrb r0, [r2, 0x1]
cmp r0, 0x8
bne _0801FD24
- ldr r0, _0801FD1C @ =gUnknown_02024C07
+ ldr r0, _0801FD1C @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0
str r0, [sp]
@@ -35966,12 +35966,12 @@ atk1E_jumpifability: @ 801FCC4
b _0801FD80
.align 2, 0
_0801FD18: .4byte gUnknown_02024C10
-_0801FD1C: .4byte gUnknown_02024C07
+_0801FD1C: .4byte gPlayerMonIndex
_0801FD20: .4byte byte_2024C06
_0801FD24:
cmp r0, 0x9
bne _0801FD5C
- ldr r0, _0801FD54 @ =gUnknown_02024C07
+ ldr r0, _0801FD54 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0
str r0, [sp]
@@ -35992,7 +35992,7 @@ _0801FD24:
ldrb r1, [r1]
b _0801FD80
.align 2, 0
-_0801FD54: .4byte gUnknown_02024C07
+_0801FD54: .4byte gPlayerMonIndex
_0801FD58: .4byte byte_2024C06
_0801FD5C:
ldrb r0, [r2, 0x1]
@@ -36045,15 +36045,15 @@ sub_801FDB4: @ 801FDB4
ldrb r4, [r0, 0x1]
cmp r4, 0x1
bne _0801FDD4
- ldr r0, _0801FDD0 @ =gUnknown_02024C07
+ ldr r0, _0801FDD0 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_get_per_side_status
b _0801FDDE
.align 2, 0
_0801FDCC: .4byte gUnknown_02024C10
-_0801FDD0: .4byte gUnknown_02024C07
+_0801FDD0: .4byte gPlayerMonIndex
_0801FDD4:
- ldr r0, _0801FE14 @ =gUnknown_02024C08
+ ldr r0, _0801FE14 @ =gEnemyMonIndex
ldrb r0, [r0]
bl battle_get_per_side_status
movs r4, 0x1
@@ -36085,7 +36085,7 @@ _0801FDDE:
str r5, [r6]
b _0801FE26
.align 2, 0
-_0801FE14: .4byte gUnknown_02024C08
+_0801FE14: .4byte gEnemyMonIndex
_0801FE18: .4byte gUnknown_02024C10
_0801FE1C: .4byte gUnknown_02024C7A
_0801FE20:
@@ -36671,7 +36671,7 @@ _080202A0:
_080202C8:
movs r0, 0x5
strb r0, [r1]
- ldr r0, _080202E4 @ =gUnknown_02024BEC
+ ldr r0, _080202E4 @ =gBattleMoveDamage
str r2, [r0]
b _08020996
.align 2, 0
@@ -36679,7 +36679,7 @@ _080202D4: .4byte 0x00016018
_080202D8: .4byte gPlayerParty
_080202DC: .4byte 0x0001605f
_080202E0: .4byte 0x0001600f
-_080202E4: .4byte gUnknown_02024BEC
+_080202E4: .4byte gBattleMoveDamage
_080202E8:
ldr r0, _0802034C @ =gBattleTypeFlags
ldrh r1, [r0]
@@ -36724,7 +36724,7 @@ _08020332:
ands r3, r0
cmp r3, 0
beq _08020370
- ldr r1, _0802036C @ =gUnknown_02024BEC
+ ldr r1, _0802036C @ =gBattleMoveDamage
mov r3, r10
ldrh r0, [r3]
str r0, [r1]
@@ -36739,9 +36739,9 @@ _0802035C: .4byte 0x02000000
_08020360: .4byte 0x00016018
_08020364: .4byte gPlayerParty
_08020368: .4byte 0x0001605f
-_0802036C: .4byte gUnknown_02024BEC
+_0802036C: .4byte gBattleMoveDamage
_08020370:
- ldr r0, _080203EC @ =gUnknown_02024BEC
+ ldr r0, _080203EC @ =gBattleMoveDamage
str r3, [r0]
mov r8, r0
_08020376:
@@ -36771,7 +36771,7 @@ _0802039C:
ands r0, r1
cmp r0, 0
beq _080203B8
- ldr r4, _080203EC @ =gUnknown_02024BEC
+ ldr r4, _080203EC @ =gBattleMoveDamage
ldr r1, [r4]
movs r0, 0x96
muls r0, r1
@@ -36791,7 +36791,7 @@ _080203B8:
lsls r0, 24
cmp r0, 0
beq _08020404
- ldr r4, _080203EC @ =gUnknown_02024BEC
+ ldr r4, _080203EC @ =gBattleMoveDamage
ldr r1, [r4]
movs r0, 0x96
muls r0, r1
@@ -36803,7 +36803,7 @@ _080203B8:
mov r8, r4
b _0802040A
.align 2, 0
-_080203EC: .4byte gUnknown_02024BEC
+_080203EC: .4byte gBattleMoveDamage
_080203F0: .4byte gUnknown_02024DEE
_080203F4: .4byte gBattleTypeFlags
_080203F8: .4byte 0x02000000
@@ -36811,7 +36811,7 @@ _080203FC: .4byte 0x00016018
_08020400: .4byte gPlayerParty
_08020404:
ldr r7, _0802043C @ =0x00000149
- ldr r3, _08020440 @ =gUnknown_02024BEC
+ ldr r3, _08020440 @ =gBattleMoveDamage
mov r8, r3
_0802040A:
ldr r0, _08020444 @ =gBattleTypeFlags
@@ -36841,7 +36841,7 @@ _0802040A:
b _0802047C
.align 2, 0
_0802043C: .4byte 0x00000149
-_08020440: .4byte gUnknown_02024BEC
+_08020440: .4byte gBattleMoveDamage
_08020444: .4byte gBattleTypeFlags
_08020448: .4byte gUnknown_02024A6A
_0802044C: .4byte 0x02000000
@@ -37044,7 +37044,7 @@ _08020566:
ldrb r0, [r2]
strb r0, [r4]
ldrb r1, [r7]
- ldr r0, _08020640 @ =gUnknown_02024BEC
+ ldr r0, _08020640 @ =gBattleMoveDamage
ldrh r2, [r0]
movs r0, 0
bl dp01_build_cmdbuf_x19_a_bb
@@ -37068,7 +37068,7 @@ _08020630: .4byte 0x00016018
_08020634: .4byte gPlayerParty
_08020638: .4byte 0x00017180
_0802063C: .4byte gUnknown_02024A60
-_08020640: .4byte gUnknown_02024BEC
+_08020640: .4byte gBattleMoveDamage
_08020644: .4byte 0x0001600f
_08020648:
ldr r0, _080208AC @ =gUnknown_02024A64
@@ -37171,7 +37171,7 @@ _080206A8:
ldr r1, _080208E0 @ =gUnknown_02024C10
ldr r0, _080208E4 @ =gUnknown_081D8EF3
str r0, [r1]
- ldr r4, _080208E8 @ =gUnknown_02024BEC
+ ldr r4, _080208E8 @ =gBattleMoveDamage
ldr r2, _080208BC @ =gUnknown_02024260
ldrb r1, [r5]
lsls r1, 9
@@ -37376,10 +37376,10 @@ _080208D8: .4byte gUnknown_03004324
_080208DC: .4byte gBitTable
_080208E0: .4byte gUnknown_02024C10
_080208E4: .4byte gUnknown_081D8EF3
-_080208E8: .4byte gUnknown_02024BEC
+_080208E8: .4byte gBattleMoveDamage
_080208EC: .4byte gBattleMons
_080208F0:
- ldr r1, _08020904 @ =gUnknown_02024BEC
+ ldr r1, _08020904 @ =gBattleMoveDamage
movs r0, 0
str r0, [r1]
_080208F6:
@@ -37390,11 +37390,11 @@ _080208F6:
strb r1, [r0]
b _08020996
.align 2, 0
-_08020904: .4byte gUnknown_02024BEC
+_08020904: .4byte gBattleMoveDamage
_08020908: .4byte 0x02000000
_0802090C: .4byte 0x0001600f
_08020910:
- ldr r0, _08020924 @ =gUnknown_02024BEC
+ ldr r0, _08020924 @ =gBattleMoveDamage
ldr r0, [r0]
cmp r0, 0
beq _08020930
@@ -37405,7 +37405,7 @@ _08020910:
strb r1, [r0]
b _08020996
.align 2, 0
-_08020924: .4byte gUnknown_02024BEC
+_08020924: .4byte gBattleMoveDamage
_08020928: .4byte 0x02000000
_0802092C: .4byte 0x0001600f
_08020930:
@@ -37690,7 +37690,7 @@ _08020B50: .4byte gUnknown_02024C10
thumb_func_start sub_8020B54
sub_8020B54: @ 8020B54
- ldr r1, _08020B80 @ =gUnknown_02024C68
+ ldr r1, _08020B80 @ =gBattleMoveFlags
movs r0, 0
strb r0, [r1]
ldr r0, _08020B84 @ =0x02000000
@@ -37713,7 +37713,7 @@ sub_8020B54: @ 8020B54
str r0, [r2]
bx lr
.align 2, 0
-_08020B80: .4byte gUnknown_02024C68
+_08020B80: .4byte gBattleMoveFlags
_08020B84: .4byte 0x02000000
_08020B88: .4byte 0x0001601f
_08020B8C: .4byte gCritMultiplier
@@ -38667,19 +38667,19 @@ atk3B_8022C68: @ 802122C
cmp r0, 0
bne _0802124C
ldr r0, _08021244 @ =gUnknown_02024A60
- ldr r1, _08021248 @ =gUnknown_02024C08
+ ldr r1, _08021248 @ =gEnemyMonIndex
b _08021250
.align 2, 0
_08021240: .4byte gUnknown_02024C10
_08021244: .4byte gUnknown_02024A60
-_08021248: .4byte gUnknown_02024C08
+_08021248: .4byte gEnemyMonIndex
_0802124C:
ldr r0, _08021274 @ =gUnknown_02024A60
- ldr r1, _08021278 @ =gUnknown_02024C07
+ ldr r1, _08021278 @ =gPlayerMonIndex
_08021250:
ldrb r1, [r1]
strb r1, [r0]
- ldr r0, _0802127C @ =gUnknown_02024BEC
+ ldr r0, _0802127C @ =gBattleMoveDamage
ldrh r1, [r0]
movs r0, 0
bl dp01_build_cmdbuf_x18_0_aa_health_bar_update
@@ -38694,8 +38694,8 @@ _08021250:
bx r0
.align 2, 0
_08021274: .4byte gUnknown_02024A60
-_08021278: .4byte gUnknown_02024C07
-_0802127C: .4byte gUnknown_02024BEC
+_08021278: .4byte gPlayerMonIndex
+_0802127C: .4byte gBattleMoveDamage
_08021280: .4byte gUnknown_02024C10
thumb_func_end atk3B_8022C68
@@ -38709,7 +38709,7 @@ atk3C_return: @ 8021284
thumb_func_start sub_8021290
sub_8021290: @ 8021290
- ldr r0, _080212A4 @ =gUnknown_02024C68
+ ldr r0, _080212A4 @ =gBattleMoveFlags
movs r1, 0
strb r1, [r0]
ldr r0, _080212A8 @ =gUnknown_02024A60
@@ -38719,7 +38719,7 @@ sub_8021290: @ 8021290
strb r0, [r1]
bx lr
.align 2, 0
-_080212A4: .4byte gUnknown_02024C68
+_080212A4: .4byte gBattleMoveFlags
_080212A8: .4byte gUnknown_02024A60
_080212AC: .4byte gUnknown_02024A7F
thumb_func_end sub_8021290
@@ -38884,7 +38884,7 @@ _080213C6:
thumb_func_start sub_80213D0
sub_80213D0: @ 80213D0
ldr r1, _080213E4 @ =0x02000000
- ldr r0, _080213E8 @ =gUnknown_02024C07
+ ldr r0, _080213E8 @ =gPlayerMonIndex
ldrb r0, [r0]
ldr r2, _080213EC @ =0x00016060
adds r0, r2
@@ -38894,7 +38894,7 @@ sub_80213D0: @ 80213D0
bx lr
.align 2, 0
_080213E4: .4byte 0x02000000
-_080213E8: .4byte gUnknown_02024C07
+_080213E8: .4byte gPlayerMonIndex
_080213EC: .4byte 0x00016060
thumb_func_end sub_80213D0
@@ -39446,7 +39446,7 @@ sub_80217F8: @ 80217F8
ldrb r0, [r0, 0x2]
str r0, [sp, 0x14]
ldr r1, _08021838 @ =gBattleMons
- ldr r0, _0802183C @ =gUnknown_02024C07
+ ldr r0, _0802183C @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -39464,7 +39464,7 @@ sub_80217F8: @ 80217F8
.align 2, 0
_08021834: .4byte gUnknown_02024C10
_08021838: .4byte gBattleMons
-_0802183C: .4byte gUnknown_02024C07
+_0802183C: .4byte gPlayerMonIndex
_08021840: .4byte gEnigmaBerries
_08021844:
ldrh r0, [r1, 0x2E]
@@ -39473,7 +39473,7 @@ _08021844:
lsrs r0, 24
_0802184E:
str r0, [sp, 0x8]
- ldr r0, _0802186C @ =gUnknown_02024C07
+ ldr r0, _0802186C @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 1
ldr r0, _08021870 @ =0x020160e8
@@ -39488,7 +39488,7 @@ _0802184E:
str r2, [sp, 0x4]
b _080218D2
.align 2, 0
-_0802186C: .4byte gUnknown_02024C07
+_0802186C: .4byte gPlayerMonIndex
_08021870: .4byte 0x020160e8
_08021874:
strb r2, [r7]
@@ -39582,7 +39582,7 @@ _08021910:
.4byte _0802224E
_08021958:
ldr r5, _08021A08 @ =gBattleMons
- ldr r2, _08021A0C @ =gUnknown_02024C08
+ ldr r2, _08021A0C @ =gEnemyMonIndex
ldrb r4, [r2]
movs r6, 0x58
adds r3, r4, 0
@@ -39600,28 +39600,28 @@ _08021958:
ldrh r0, [r0, 0x28]
cmp r0, 0
beq _080219FE
- ldr r0, _08021A10 @ =gUnknown_02024C07
+ ldr r0, _08021A10 @ =gPlayerMonIndex
ldrb r1, [r0]
cmp r1, r4
beq _080219FE
adds r0, r1, 0
bl battle_side_get_owner
adds r4, r0, 0
- ldr r1, _08021A0C @ =gUnknown_02024C08
+ ldr r1, _08021A0C @ =gEnemyMonIndex
ldrb r0, [r1]
bl battle_side_get_owner
lsls r4, 24
lsls r0, 24
cmp r4, r0
beq _080219FE
- ldr r0, _08021A14 @ =gUnknown_02024C68
+ ldr r0, _08021A14 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
cmp r0, 0
bne _080219FE
ldr r2, _08021A18 @ =gUnknown_02024D28
- ldr r4, _08021A0C @ =gUnknown_02024C08
+ ldr r4, _08021A0C @ =gEnemyMonIndex
ldrb r3, [r4]
lsls r1, r3, 4
adds r0, r2, 0x4
@@ -39669,9 +39669,9 @@ _080219FE:
b _08021E00
.align 2, 0
_08021A08: .4byte gBattleMons
-_08021A0C: .4byte gUnknown_02024C08
-_08021A10: .4byte gUnknown_02024C07
-_08021A14: .4byte gUnknown_02024C68
+_08021A0C: .4byte gEnemyMonIndex
+_08021A10: .4byte gPlayerMonIndex
+_08021A14: .4byte gBattleMoveFlags
_08021A18: .4byte gUnknown_02024D28
_08021A1C: .4byte gBattleMoves
_08021A20: .4byte gUnknown_02024BE6
@@ -39681,7 +39681,7 @@ _08021A2C: .4byte 0x02000000
_08021A30: .4byte 0x0001600c
_08021A34:
ldr r2, _08021AD0 @ =gBattleMons
- ldr r1, _08021AD4 @ =gUnknown_02024C08
+ ldr r1, _08021AD4 @ =gEnemyMonIndex
ldrb r4, [r1]
movs r3, 0x58
mov r12, r3
@@ -39703,7 +39703,7 @@ _08021A54:
bne _08021A5E
b _08021DFA
_08021A5E:
- ldr r0, _08021AD8 @ =gUnknown_02024C07
+ ldr r0, _08021AD8 @ =gPlayerMonIndex
ldrb r0, [r0]
cmp r0, r4
bne _08021A68
@@ -39720,7 +39720,7 @@ _08021A68:
bne _08021A7C
b _08021DFA
_08021A7C:
- ldr r0, _08021AE0 @ =gUnknown_02024C68
+ ldr r0, _08021AE0 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -39738,7 +39738,7 @@ _08021A92:
ands r5, r0
str r5, [r6]
ldr r4, _08021AE4 @ =gUnknown_02024A60
- ldr r5, _08021AD4 @ =gUnknown_02024C08
+ ldr r5, _08021AD4 @ =gEnemyMonIndex
ldrb r0, [r5]
strb r0, [r4]
ldrb r0, [r5]
@@ -39763,15 +39763,15 @@ _08021A92:
b _08021DFA
.align 2, 0
_08021AD0: .4byte gBattleMons
-_08021AD4: .4byte gUnknown_02024C08
-_08021AD8: .4byte gUnknown_02024C07
+_08021AD4: .4byte gEnemyMonIndex
+_08021AD8: .4byte gPlayerMonIndex
_08021ADC: .4byte gUnknown_02024D68
-_08021AE0: .4byte gUnknown_02024C68
+_08021AE0: .4byte gBattleMoveFlags
_08021AE4: .4byte gUnknown_02024A60
_08021AE8: .4byte gUnknown_02024C10
_08021AEC: .4byte gUnknown_081D955D
_08021AF0:
- ldr r0, _08021B14 @ =gUnknown_02024C08
+ ldr r0, _08021B14 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0
str r0, [sp]
@@ -39790,11 +39790,11 @@ _08021B0C:
adds r1, r2, r5
b _08021E00
.align 2, 0
-_08021B14: .4byte gUnknown_02024C08
+_08021B14: .4byte gEnemyMonIndex
_08021B18: .4byte 0x02000000
_08021B1C: .4byte 0x0001600c
_08021B20:
- ldr r0, _08021B40 @ =gUnknown_02024C08
+ ldr r0, _08021B40 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0
str r0, [sp]
@@ -39811,7 +39811,7 @@ _08021B3A:
mov r10, r0
b _08021DFA
.align 2, 0
-_08021B40: .4byte gUnknown_02024C08
+_08021B40: .4byte gEnemyMonIndex
_08021B44:
movs r0, 0
str r0, [sp]
@@ -39839,7 +39839,7 @@ _08021B68:
_08021B70: .4byte 0x02000000
_08021B74: .4byte 0x0001600c
_08021B78:
- ldr r0, _08021B98 @ =gUnknown_02024C07
+ ldr r0, _08021B98 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0
str r0, [sp]
@@ -39856,7 +39856,7 @@ _08021B92:
mov r10, r1
b _08021DFA
.align 2, 0
-_08021B98: .4byte gUnknown_02024C07
+_08021B98: .4byte gPlayerMonIndex
_08021B9C:
ldr r0, _08021C28 @ =gUnknown_02024C6C
ldr r0, [r0]
@@ -39883,7 +39883,7 @@ _08021B9C:
_08021BC8:
cmp r2, 0xE2
bne _08021BDA
- ldr r0, _08021C34 @ =gUnknown_02024C68
+ ldr r0, _08021C34 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x20
ands r0, r1
@@ -39897,7 +39897,7 @@ _08021BDA:
_08021BE0:
movs r4, 0
ldr r2, _08021C38 @ =gBattleMons
- ldr r3, _08021C3C @ =gUnknown_02024C07
+ ldr r3, _08021C3C @ =gPlayerMonIndex
ldrb r1, [r3]
movs r0, 0x58
muls r0, r1
@@ -39938,9 +39938,9 @@ _08021C22:
_08021C28: .4byte gUnknown_02024C6C
_08021C2C: .4byte gUnknown_02024BE8
_08021C30: .4byte 0x0000ffff
-_08021C34: .4byte gUnknown_02024C68
+_08021C34: .4byte gBattleMoveFlags
_08021C38: .4byte gBattleMons
-_08021C3C: .4byte gUnknown_02024C07
+_08021C3C: .4byte gPlayerMonIndex
_08021C40:
movs r4, 0
ldr r0, _08021C6C @ =gUnknown_02024A68
@@ -40013,7 +40013,7 @@ _08021CC4: .4byte 0x02000000
_08021CC8: .4byte 0x0001600c
_08021CCC:
ldr r1, _08021D04 @ =gUnknown_02024C98
- ldr r0, _08021D08 @ =gUnknown_02024C07
+ ldr r0, _08021D08 @ =gPlayerMonIndex
ldrb r2, [r0]
lsls r0, r2, 2
adds r0, r1
@@ -40042,19 +40042,19 @@ _08021CF0:
b _08021DFA
.align 2, 0
_08021D04: .4byte gUnknown_02024C98
-_08021D08: .4byte gUnknown_02024C07
+_08021D08: .4byte gPlayerMonIndex
_08021D0C: .4byte 0x000400c0
_08021D10: .4byte gUnknown_02024C6C
_08021D14: .4byte gUnknown_02024A60
_08021D18:
- ldr r0, _08021D88 @ =gUnknown_02024C68
+ ldr r0, _08021D88 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
cmp r0, 0
bne _08021D44
ldr r1, _08021D8C @ =gUnknown_02024C98
- ldr r0, _08021D90 @ =gUnknown_02024C07
+ ldr r0, _08021D90 @ =gPlayerMonIndex
ldrb r2, [r0]
lsls r0, r2, 2
adds r0, r1
@@ -40070,7 +40070,7 @@ _08021D18:
beq _08021D7E
_08021D44:
ldr r4, _08021D98 @ =gUnknown_02024A60
- ldr r5, _08021D90 @ =gUnknown_02024C07
+ ldr r5, _08021D90 @ =gPlayerMonIndex
ldrb r0, [r5]
strb r0, [r4]
movs r0, 0
@@ -40102,9 +40102,9 @@ _08021D7E:
adds r1, r2, r4
b _08021E00
.align 2, 0
-_08021D88: .4byte gUnknown_02024C68
+_08021D88: .4byte gBattleMoveFlags
_08021D8C: .4byte gUnknown_02024C98
-_08021D90: .4byte gUnknown_02024C07
+_08021D90: .4byte gPlayerMonIndex
_08021D94: .4byte 0x000400c0
_08021D98: .4byte gUnknown_02024A60
_08021D9C: .4byte 0xfffbff3f
@@ -40113,7 +40113,7 @@ _08021DA4: .4byte 0x02000000
_08021DA8: .4byte 0x0001600c
_08021DAC:
ldr r2, _08021E0C @ =gUnknown_02024D68
- ldr r1, _08021E10 @ =gUnknown_02024C08
+ ldr r1, _08021E10 @ =gEnemyMonIndex
ldrb r3, [r1]
lsls r4, r3, 2
adds r0, r4, r3
@@ -40141,7 +40141,7 @@ _08021DAC:
bl dp01_build_cmdbuf_x33_a_33_33
ldrb r0, [r4]
bl dp01_battle_side_mark_buffer_for_execution
- ldr r0, _08021E10 @ =gUnknown_02024C08
+ ldr r0, _08021E10 @ =gEnemyMonIndex
ldrb r2, [r0]
lsls r2, 2
adds r2, r5
@@ -40161,7 +40161,7 @@ _08021E00:
b _0802224E
.align 2, 0
_08021E0C: .4byte gUnknown_02024D68
-_08021E10: .4byte gUnknown_02024C08
+_08021E10: .4byte gEnemyMonIndex
_08021E14: .4byte gUnknown_02024A68
_08021E18: .4byte gUnknown_02024C98
_08021E1C: .4byte 0x000400c0
@@ -40207,7 +40207,7 @@ _08021E70:
movs r0, 0x80
lsls r0, 5
ands r0, r3
- ldr r2, _08021F30 @ =gUnknown_02024C07
+ ldr r2, _08021F30 @ =gPlayerMonIndex
mov r9, r2
adds r5, r1, 0
cmp r0, 0
@@ -40215,7 +40215,7 @@ _08021E70:
ldr r0, _08021F34 @ =gUnknown_02024A60
ldrb r2, [r2]
strb r2, [r0]
- ldr r1, _08021F38 @ =gUnknown_02024C08
+ ldr r1, _08021F38 @ =gEnemyMonIndex
ldrb r0, [r1]
mov r4, r9
strb r0, [r4]
@@ -40236,7 +40236,7 @@ _08021E9A:
adds r7, r2, 0
cmp r0, 0x7F
bne _08021EBE
- ldr r0, _08021F48 @ =gUnknown_02024C68
+ ldr r0, _08021F48 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -40303,13 +40303,13 @@ _08021F04:
b _08021F82
.align 2, 0
_08021F2C: .4byte gUnknown_02024C6C
-_08021F30: .4byte gUnknown_02024C07
+_08021F30: .4byte gPlayerMonIndex
_08021F34: .4byte gUnknown_02024A60
-_08021F38: .4byte gUnknown_02024C08
+_08021F38: .4byte gEnemyMonIndex
_08021F3C: .4byte 0xffffefff
_08021F40: .4byte gBattleMoves
_08021F44: .4byte gUnknown_02024BE8
-_08021F48: .4byte gUnknown_02024C68
+_08021F48: .4byte gBattleMoveFlags
_08021F4C: .4byte gUnknown_02024C2C
_08021F50: .4byte gUnknown_02024C0C
_08021F54: .4byte gBitTable
@@ -40332,7 +40332,7 @@ _08021F68:
negs r1, r1
strh r1, [r0]
_08021F82:
- ldr r2, _08021FDC @ =gUnknown_02024C08
+ ldr r2, _08021FDC @ =gEnemyMonIndex
ldrb r3, [r2]
lsls r0, r3, 2
adds r0, r6
@@ -40354,7 +40354,7 @@ _08021FA0:
ands r0, r1
cmp r0, 0
beq _0802204C
- ldr r0, _08021FE4 @ =gUnknown_02024C68
+ ldr r0, _08021FE4 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -40365,7 +40365,7 @@ _08021FA0:
cmp r2, r0
bne _08021FEC
ldr r1, _08021FE8 @ =gUnknown_02024C3C
- ldr r4, _08021FDC @ =gUnknown_02024C08
+ ldr r4, _08021FDC @ =gEnemyMonIndex
ldrb r0, [r4]
lsls r0, 1
adds r0, r1
@@ -40375,13 +40375,13 @@ _08021FA0:
_08021FD0: .4byte gUnknown_02024C34
_08021FD4: .4byte 0x0000ffff
_08021FD8: .4byte gUnknown_02024C4C
-_08021FDC: .4byte gUnknown_02024C08
+_08021FDC: .4byte gEnemyMonIndex
_08021FE0: .4byte gUnknown_02024C5C
-_08021FE4: .4byte gUnknown_02024C68
+_08021FE4: .4byte gBattleMoveFlags
_08021FE8: .4byte gUnknown_02024C3C
_08021FEC:
ldr r0, _08022014 @ =gUnknown_02024C3C
- ldr r5, _08022018 @ =gUnknown_02024C08
+ ldr r5, _08022018 @ =gEnemyMonIndex
ldrb r1, [r5]
lsls r1, 1
adds r1, r0
@@ -40402,13 +40402,13 @@ _08021FEC:
b _08021C22
.align 2, 0
_08022014: .4byte gUnknown_02024C3C
-_08022018: .4byte gUnknown_02024C08
+_08022018: .4byte gEnemyMonIndex
_0802201C: .4byte gUnknown_02024BE6
_08022020: .4byte 0x0001601c
_08022024: .4byte gUnknown_02024C44
_08022028:
ldr r0, _08022044 @ =gUnknown_02024C44
- ldr r1, _08022048 @ =gUnknown_02024C08
+ ldr r1, _08022048 @ =gEnemyMonIndex
ldrb r2, [r1]
lsls r2, 1
adds r2, r0
@@ -40422,10 +40422,10 @@ _08022028:
b _08022244
.align 2, 0
_08022044: .4byte gUnknown_02024C44
-_08022048: .4byte gUnknown_02024C08
+_08022048: .4byte gEnemyMonIndex
_0802204C:
ldr r0, _0802205C @ =gUnknown_02024C3C
- ldr r2, _08022060 @ =gUnknown_02024C08
+ ldr r2, _08022060 @ =gEnemyMonIndex
ldrb r1, [r2]
lsls r1, 1
adds r1, r0
@@ -40433,13 +40433,13 @@ _0802204C:
b _08021C22
.align 2, 0
_0802205C: .4byte gUnknown_02024C3C
-_08022060: .4byte gUnknown_02024C08
+_08022060: .4byte gEnemyMonIndex
_08022064: .4byte 0x0000ffff
_08022068:
ldr r0, _0802212C @ =gUnknown_02024C0C
ldrb r1, [r0]
ldr r6, _08022130 @ =gBitTable
- ldr r2, _08022134 @ =gUnknown_02024C07
+ ldr r2, _08022134 @ =gPlayerMonIndex
ldrb r5, [r2]
lsls r0, r5, 2
adds r0, r6
@@ -40477,7 +40477,7 @@ _08022090:
ands r0, r1
cmp r0, 0
beq _0802215C
- ldr r2, _08022148 @ =gUnknown_02024C08
+ ldr r2, _08022148 @ =gEnemyMonIndex
ldrb r0, [r2]
cmp r5, r0
bne _080220C0
@@ -40491,7 +40491,7 @@ _080220C0:
ands r1, r0
cmp r1, 0
bne _0802215C
- ldr r0, _0802214C @ =gUnknown_02024C68
+ ldr r0, _0802214C @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -40502,7 +40502,7 @@ _080220C0:
adds r0, r5
add r0, r12
strb r3, [r0]
- ldr r0, _08022148 @ =gUnknown_02024C08
+ ldr r0, _08022148 @ =gEnemyMonIndex
ldrb r1, [r0]
lsls r1, 1
ldr r2, _08022154 @ =0x000160ad
@@ -40511,7 +40511,7 @@ _080220C0:
ldrh r0, [r4]
lsrs r0, 8
strb r0, [r1]
- ldr r3, _08022148 @ =gUnknown_02024C08
+ ldr r3, _08022148 @ =gEnemyMonIndex
ldrb r2, [r3]
lsls r2, 2
mov r5, r9
@@ -40540,24 +40540,24 @@ _080220C0:
.align 2, 0
_0802212C: .4byte gUnknown_02024C0C
_08022130: .4byte gBitTable
-_08022134: .4byte gUnknown_02024C07
+_08022134: .4byte gPlayerMonIndex
_08022138: .4byte 0x000160a6
_0802213C: .4byte gBattleMoves
_08022140: .4byte gUnknown_02024BE8
_08022144: .4byte gUnknown_02024C6C
-_08022148: .4byte gUnknown_02024C08
-_0802214C: .4byte gUnknown_02024C68
+_08022148: .4byte gEnemyMonIndex
+_0802214C: .4byte gBattleMoveFlags
_08022150: .4byte 0x000160ac
_08022154: .4byte 0x000160ad
_08022158: .4byte 0x00016100
_0802215C:
mov r1, r9
ldrb r0, [r1]
- ldr r2, _080221B4 @ =gUnknown_02024C08
+ ldr r2, _080221B4 @ =gEnemyMonIndex
ldrb r2, [r2]
cmp r0, r2
beq _08022244
- ldr r3, _080221B4 @ =gUnknown_02024C08
+ ldr r3, _080221B4 @ =gEnemyMonIndex
ldrb r0, [r3]
lsls r0, 1
ldr r4, _080221B8 @ =0x000160ac
@@ -40565,7 +40565,7 @@ _0802215C:
add r0, r12
movs r3, 0
strb r3, [r0]
- ldr r5, _080221B4 @ =gUnknown_02024C08
+ ldr r5, _080221B4 @ =gEnemyMonIndex
ldrb r0, [r5]
lsls r0, 1
ldr r1, _080221BC @ =0x000160ad
@@ -40595,7 +40595,7 @@ _0802215C:
strb r3, [r2]
b _08022244
.align 2, 0
-_080221B4: .4byte gUnknown_02024C08
+_080221B4: .4byte gEnemyMonIndex
_080221B8: .4byte 0x000160ac
_080221BC: .4byte 0x000160ad
_080221C0:
@@ -40613,7 +40613,7 @@ _080221C0:
cmp r0, 0
beq _08022244
ldr r1, _080222B8 @ =gUnknown_02024D28
- ldr r0, _080222BC @ =gUnknown_02024C07
+ ldr r0, _080222BC @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -40639,7 +40639,7 @@ _080221C0:
ands r4, r2
cmp r4, 0
bne _08022244
- ldr r7, _080222C8 @ =gUnknown_02024C08
+ ldr r7, _080222C8 @ =gEnemyMonIndex
ldrb r0, [r7]
bl battle_get_per_side_status
movs r1, 0x2
@@ -40726,10 +40726,10 @@ _0802229E:
_080222B0: .4byte gUnknown_02024C6C
_080222B4: .4byte gBattleTypeFlags
_080222B8: .4byte gUnknown_02024D28
-_080222BC: .4byte gUnknown_02024C07
+_080222BC: .4byte gPlayerMonIndex
_080222C0: .4byte gBattleMoves
_080222C4: .4byte gUnknown_02024BE6
-_080222C8: .4byte gUnknown_02024C08
+_080222C8: .4byte gEnemyMonIndex
_080222CC: .4byte gBattleMons
_080222D0: .4byte 0x02000000
_080222D4: .4byte 0x0001600c
@@ -40753,7 +40753,7 @@ atk4A_damageflags: @ 80222DC
ldrb r0, [r0, 0x2]
mov r8, r0
ldr r2, _08022348 @ =gBattleMons
- ldr r3, _0802234C @ =gUnknown_02024C08
+ ldr r3, _0802234C @ =gEnemyMonIndex
ldrb r1, [r3]
movs r0, 0x58
muls r0, r1
@@ -40769,7 +40769,7 @@ atk4A_damageflags: @ 80222DC
bne _08022370
ldr r3, _08022350 @ =byte_2024C06
strb r0, [r3]
- ldr r2, _08022354 @ =gUnknown_02024C68
+ ldr r2, _08022354 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x9
orrs r0, r1
@@ -40790,20 +40790,20 @@ atk4A_damageflags: @ 80222DC
_08022340: .4byte gBattleMoves
_08022344: .4byte gUnknown_02024BE6
_08022348: .4byte gBattleMons
-_0802234C: .4byte gUnknown_02024C08
+_0802234C: .4byte gEnemyMonIndex
_08022350: .4byte byte_2024C06
-_08022354: .4byte gUnknown_02024C68
+_08022354: .4byte gBattleMoveFlags
_08022358: .4byte gUnknown_02024C3C
_0802235C: .4byte gUnknown_02024D1E
_08022360:
- ldr r0, _0802236C @ =gUnknown_02024C68
+ ldr r0, _0802236C @ =gBattleMoveFlags
ldrb r1, [r0]
movs r2, 0x8
orrs r1, r2
strb r1, [r0]
b _08022452
.align 2, 0
-_0802236C: .4byte gUnknown_02024C68
+_0802236C: .4byte gBattleMoveFlags
_08022370:
ldr r1, _0802237C @ =gTypeEffectiveness
adds r0, r5, r1
@@ -40926,7 +40926,7 @@ _08022432:
beq _0802242C
_08022452:
ldr r2, _08022500 @ =gBattleMons
- ldr r0, _08022504 @ =gUnknown_02024C08
+ ldr r0, _08022504 @ =gEnemyMonIndex
mov r8, r0
ldrb r1, [r0]
movs r0, 0x58
@@ -40940,7 +40940,7 @@ _08022452:
ands r5, r4
cmp r5, 0
bne _080224CE
- ldr r0, _08022508 @ =gUnknown_02024C07
+ ldr r0, _08022508 @ =gPlayerMonIndex
ldrb r0, [r0]
ldr r7, _0802250C @ =gUnknown_02024BE6
ldrh r1, [r7]
@@ -40969,7 +40969,7 @@ _08022494:
beq _080224CE
ldr r3, _08022514 @ =byte_2024C06
strb r6, [r3]
- ldr r2, _08022518 @ =gUnknown_02024C68
+ ldr r2, _08022518 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -40987,14 +40987,14 @@ _08022494:
ldrb r1, [r3]
bl sub_81074C4
_080224CE:
- ldr r0, _08022518 @ =gUnknown_02024C68
+ ldr r0, _08022518 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x8
ands r0, r1
cmp r0, 0
beq _080224EC
ldr r2, _08022524 @ =gUnknown_02024D28
- ldr r0, _08022508 @ =gUnknown_02024C07
+ ldr r0, _08022508 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 4
adds r1, r2
@@ -41014,12 +41014,12 @@ _080224EC:
bx r0
.align 2, 0
_08022500: .4byte gBattleMons
-_08022504: .4byte gUnknown_02024C08
-_08022508: .4byte gUnknown_02024C07
+_08022504: .4byte gEnemyMonIndex
+_08022508: .4byte gPlayerMonIndex
_0802250C: .4byte gUnknown_02024BE6
_08022510: .4byte gBattleMoves
_08022514: .4byte byte_2024C06
-_08022518: .4byte gUnknown_02024C68
+_08022518: .4byte gBattleMoveFlags
_0802251C: .4byte gUnknown_02024C3C
_08022520: .4byte gUnknown_02024D1E
_08022524: .4byte gUnknown_02024D28
@@ -41030,7 +41030,7 @@ _08022528: .4byte gUnknown_02024C10
atk4B_cmd4b: @ 802252C
push {r4,lr}
ldr r4, _08022568 @ =gUnknown_02024A60
- ldr r0, _0802256C @ =gUnknown_02024C07
+ ldr r0, _0802256C @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r4]
ldr r2, _08022570 @ =gUnknown_02024C6C
@@ -41059,7 +41059,7 @@ _0802255A:
bx r0
.align 2, 0
_08022568: .4byte gUnknown_02024A60
-_0802256C: .4byte gUnknown_02024C07
+_0802256C: .4byte gPlayerMonIndex
_08022570: .4byte gUnknown_02024C6C
_08022574: .4byte gBitTable
_08022578: .4byte gUnknown_02024C10
@@ -42909,7 +42909,7 @@ _080234AA:
movs r0, 0x6
strb r0, [r1, 0x1]
ldr r4, _0802350C @ =gBattleMons
- ldr r3, _08023510 @ =gUnknown_02024C07
+ ldr r3, _08023510 @ =gPlayerMonIndex
ldrb r0, [r3]
movs r2, 0x58
muls r0, r2
@@ -42955,7 +42955,7 @@ _080234FE:
.align 2, 0
_08023508: .4byte gUnknown_030041C0
_0802350C: .4byte gBattleMons
-_08023510: .4byte gUnknown_02024C07
+_08023510: .4byte gPlayerMonIndex
_08023514: .4byte gUnknown_03004290
_08023518: .4byte gUnknown_02024A60
_0802351C: .4byte gUnknown_02024260
@@ -43066,7 +43066,7 @@ sub_8023524: @ 8023524
subs r1, r0
lsls r1, 25
lsrs r1, 24
- ldr r5, _08023650 @ =gUnknown_02024BEC
+ ldr r5, _08023650 @ =gBattleMoveDamage
ldrb r0, [r4]
muls r0, r7
add r0, r9
@@ -43100,7 +43100,7 @@ _08023640: .4byte gUnknown_02024D68
_08023644: .4byte gUnknown_02024C7A
_08023648: .4byte gBattleMons
_0802364C: .4byte gUnknown_02024C80
-_08023650: .4byte gUnknown_02024BEC
+_08023650: .4byte gBattleMoveDamage
_08023654: .4byte 0x02000000
_08023658: .4byte 0x00016003
_0802365C: .4byte gUnknown_081D919F
@@ -43321,7 +43321,7 @@ _08023808: .4byte gUnknown_02024C10
atk54_802511C: @ 802380C
push {r4,r5,lr}
ldr r5, _0802383C @ =gUnknown_02024A60
- ldr r0, _08023840 @ =gUnknown_02024C07
+ ldr r0, _08023840 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r5]
ldr r4, _08023844 @ =gUnknown_02024C10
@@ -43342,7 +43342,7 @@ atk54_802511C: @ 802380C
bx r0
.align 2, 0
_0802383C: .4byte gUnknown_02024A60
-_08023840: .4byte gUnknown_02024C07
+_08023840: .4byte gPlayerMonIndex
_08023844: .4byte gUnknown_02024C10
thumb_func_end atk54_802511C
@@ -43350,7 +43350,7 @@ _08023844: .4byte gUnknown_02024C10
sub_8023848: @ 8023848
push {r4,r5,lr}
ldr r5, _08023878 @ =gUnknown_02024A60
- ldr r0, _0802387C @ =gUnknown_02024C07
+ ldr r0, _0802387C @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r5]
ldr r4, _08023880 @ =gUnknown_02024C10
@@ -43371,7 +43371,7 @@ sub_8023848: @ 8023848
bx r0
.align 2, 0
_08023878: .4byte gUnknown_02024A60
-_0802387C: .4byte gUnknown_02024C07
+_0802387C: .4byte gPlayerMonIndex
_08023880: .4byte gUnknown_02024C10
thumb_func_end sub_8023848
@@ -44218,7 +44218,7 @@ atk5C_cmd5c: @ 8023F84
bl sub_8015150
ldr r2, _08023FF4 @ =gUnknown_02024A60
strb r0, [r2]
- ldr r0, _08023FF8 @ =gUnknown_02024C68
+ ldr r0, _08023FF8 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -44265,7 +44265,7 @@ _08023FD6:
.align 2, 0
_08023FF0: .4byte gUnknown_02024C10
_08023FF4: .4byte gUnknown_02024A60
-_08023FF8: .4byte gUnknown_02024C68
+_08023FF8: .4byte gBattleMoveFlags
_08023FFC: .4byte gUnknown_02024C6C
_08024000: .4byte gBattleMons
_08024004: .4byte gUnknown_02024CA8
@@ -44568,10 +44568,10 @@ _08024244: .4byte gUnknown_02024AA4
atk5F_8025B24: @ 8024248
push {lr}
ldr r0, _08024270 @ =gUnknown_02024A60
- ldr r2, _08024274 @ =gUnknown_02024C07
+ ldr r2, _08024274 @ =gPlayerMonIndex
ldrb r3, [r2]
strb r3, [r0]
- ldr r1, _08024278 @ =gUnknown_02024C08
+ ldr r1, _08024278 @ =gEnemyMonIndex
ldrb r0, [r1]
strb r0, [r2]
strb r3, [r1]
@@ -44588,8 +44588,8 @@ atk5F_8025B24: @ 8024248
b _08024286
.align 2, 0
_08024270: .4byte gUnknown_02024A60
-_08024274: .4byte gUnknown_02024C07
-_08024278: .4byte gUnknown_02024C08
+_08024274: .4byte gPlayerMonIndex
+_08024278: .4byte gEnemyMonIndex
_0802427C: .4byte gUnknown_02024C6C
_08024280: .4byte 0xffffefff
_08024284:
@@ -44609,7 +44609,7 @@ _08024294: .4byte gUnknown_02024C10
thumb_func_start atk60_cmd60
atk60_cmd60: @ 8024298
push {lr}
- ldr r0, _080242C0 @ =gUnknown_02024C07
+ ldr r0, _080242C0 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -44627,7 +44627,7 @@ _080242B2:
pop {r0}
bx r0
.align 2, 0
-_080242C0: .4byte gUnknown_02024C07
+_080242C0: .4byte gPlayerMonIndex
_080242C4: .4byte gUnknown_02024C10
thumb_func_end atk60_cmd60
@@ -45141,7 +45141,7 @@ _080246D4: .4byte gUnknown_02024A76
atk69_8025FE0: @ 80246D8
push {r4-r7,lr}
ldr r7, _08024700 @ =gBattleMons
- ldr r6, _08024704 @ =gUnknown_02024C08
+ ldr r6, _08024704 @ =gEnemyMonIndex
ldrb r2, [r6]
movs r5, 0x58
adds r0, r2, 0
@@ -45160,7 +45160,7 @@ atk69_8025FE0: @ 80246D8
b _08024726
.align 2, 0
_08024700: .4byte gBattleMons
-_08024704: .4byte gUnknown_02024C08
+_08024704: .4byte gEnemyMonIndex
_08024708: .4byte gEnigmaBerries
_0802470C:
ldrh r0, [r1, 0x2E]
@@ -45176,7 +45176,7 @@ _0802470C:
lsrs r6, r0, 24
_08024726:
ldr r1, _080247E8 @ =gUnknown_02024C0B
- ldr r5, _080247EC @ =gUnknown_02024C08
+ ldr r5, _080247EC @ =gEnemyMonIndex
ldrb r0, [r5]
strb r0, [r1]
cmp r4, 0x27
@@ -45205,7 +45205,7 @@ _08024726:
strb r1, [r0]
_08024764:
ldr r2, _080247F4 @ =gBattleMons
- ldr r3, _080247EC @ =gUnknown_02024C08
+ ldr r3, _080247EC @ =gEnemyMonIndex
ldrb r4, [r3]
movs r0, 0x58
muls r0, r4
@@ -45251,7 +45251,7 @@ _080247B6:
muls r0, r4
adds r0, r5
ldrh r1, [r0, 0x28]
- ldr r2, _08024804 @ =gUnknown_02024BEC
+ ldr r2, _08024804 @ =gBattleMoveDamage
ldr r0, [r2]
cmp r1, r0
bgt _08024834
@@ -45265,7 +45265,7 @@ _080247B6:
lsls r0, 30
cmp r0, 0
bge _0802480C
- ldr r0, _08024808 @ =gUnknown_02024C68
+ ldr r0, _08024808 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r2, 0x40
orrs r1, r2
@@ -45273,14 +45273,14 @@ _080247B6:
b _08024834
.align 2, 0
_080247E8: .4byte gUnknown_02024C0B
-_080247EC: .4byte gUnknown_02024C08
+_080247EC: .4byte gEnemyMonIndex
_080247F0: .4byte gUnknown_02024D68
_080247F4: .4byte gBattleMons
_080247F8: .4byte gBattleMoves
_080247FC: .4byte gUnknown_02024BE6
_08024800: .4byte gUnknown_02024D28
-_08024804: .4byte gUnknown_02024BEC
-_08024808: .4byte gUnknown_02024C68
+_08024804: .4byte gBattleMoveDamage
+_08024808: .4byte gBattleMoveFlags
_0802480C:
ldr r0, _08024844 @ =gUnknown_02024D68
lsls r1, r3, 2
@@ -45291,7 +45291,7 @@ _0802480C:
lsrs r0, 7
cmp r0, 0
beq _08024834
- ldr r2, _08024848 @ =gUnknown_02024C68
+ ldr r2, _08024848 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x80
orrs r0, r1
@@ -45312,7 +45312,7 @@ _08024834:
bx r0
.align 2, 0
_08024844: .4byte gUnknown_02024D68
-_08024848: .4byte gUnknown_02024C68
+_08024848: .4byte gBattleMoveFlags
_0802484C: .4byte gUnknown_02024C04
_08024850: .4byte gUnknown_02024C10
thumb_func_end atk69_8025FE0
@@ -45376,7 +45376,7 @@ sub_80248C0: @ 80248C0
strb r0, [r1]
movs r0, 0x7
strb r0, [r1, 0x1]
- ldr r2, _080248F0 @ =gUnknown_02024C07
+ ldr r2, _080248F0 @ =gPlayerMonIndex
ldrb r0, [r2]
strb r0, [r1, 0x2]
ldr r3, _080248F4 @ =gUnknown_02024A6A
@@ -45394,7 +45394,7 @@ sub_80248C0: @ 80248C0
bx lr
.align 2, 0
_080248EC: .4byte gUnknown_030041C0
-_080248F0: .4byte gUnknown_02024C07
+_080248F0: .4byte gPlayerMonIndex
_080248F4: .4byte gUnknown_02024A6A
_080248F8: .4byte gUnknown_02024C10
thumb_func_end sub_80248C0
@@ -45824,7 +45824,7 @@ atk6E_state0_side_becomes_attacker: @ 8024C64
push {lr}
movs r0, 0
bl battle_get_side_with_given_state
- ldr r1, _08024C7C @ =gUnknown_02024C07
+ ldr r1, _08024C7C @ =gPlayerMonIndex
strb r0, [r1]
ldr r1, _08024C80 @ =gUnknown_02024C10
ldr r0, [r1]
@@ -45833,7 +45833,7 @@ atk6E_state0_side_becomes_attacker: @ 8024C64
pop {r0}
bx r0
.align 2, 0
-_08024C7C: .4byte gUnknown_02024C07
+_08024C7C: .4byte gPlayerMonIndex
_08024C80: .4byte gUnknown_02024C10
thumb_func_end atk6E_state0_side_becomes_attacker
@@ -46150,7 +46150,7 @@ atk75_8026A58: @ 8024EE8
push {lr}
sub sp, 0x4
ldr r2, _08024F28 @ =gUnknown_02024E6C
- ldr r1, _08024F2C @ =gUnknown_02024C07
+ ldr r1, _08024F2C @ =gPlayerMonIndex
ldrb r0, [r1]
strb r0, [r2]
ldr r2, _08024F30 @ =gUnknown_02024A6A
@@ -46179,7 +46179,7 @@ atk75_8026A58: @ 8024EE8
bx r0
.align 2, 0
_08024F28: .4byte gUnknown_02024E6C
-_08024F2C: .4byte gUnknown_02024C07
+_08024F2C: .4byte gPlayerMonIndex
_08024F30: .4byte gUnknown_02024A6A
_08024F34: .4byte gEnemyParty
_08024F38: .4byte gUnknown_02024C04
@@ -46227,8 +46227,8 @@ _08024F8C:
.align 2, 0
_08024F98: .4byte gUnknown_02024A60
_08024F9C:
- ldr r1, _08024FD8 @ =gUnknown_02024C07
- ldr r4, _08024FDC @ =gUnknown_02024C08
+ ldr r1, _08024FD8 @ =gPlayerMonIndex
+ ldr r4, _08024FDC @ =gEnemyMonIndex
ldrb r0, [r4]
strb r0, [r1]
ldrb r0, [r1]
@@ -46256,18 +46256,18 @@ _08024F9C:
strb r2, [r4]
b _08025112
.align 2, 0
-_08024FD8: .4byte gUnknown_02024C07
-_08024FDC: .4byte gUnknown_02024C08
+_08024FD8: .4byte gPlayerMonIndex
+_08024FDC: .4byte gEnemyMonIndex
_08024FE0: .4byte gUnknown_02024C80
_08024FE4: .4byte gBattleMons
_08024FE8:
- ldr r0, _08024FF4 @ =gUnknown_02024C08
+ ldr r0, _08024FF4 @ =gEnemyMonIndex
ldr r1, _08024FF8 @ =gUnknown_02024A60
ldrb r1, [r1]
strb r1, [r0]
b _08025112
.align 2, 0
-_08024FF4: .4byte gUnknown_02024C08
+_08024FF4: .4byte gEnemyMonIndex
_08024FF8: .4byte gUnknown_02024A60
_08024FFC:
bl sub_8012028
@@ -46281,12 +46281,12 @@ _0802500C:
ldrh r0, [r0]
movs r1, 0
bl sub_801B5C0
- ldr r1, _08025020 @ =gUnknown_02024C08
+ ldr r1, _08025020 @ =gEnemyMonIndex
strb r0, [r1]
b _08025112
.align 2, 0
_0802501C: .4byte gUnknown_02024BE6
-_08025020: .4byte gUnknown_02024C08
+_08025020: .4byte gEnemyMonIndex
_08025024:
ldr r2, _08025044 @ =gUnknown_02024C6C
ldr r1, _08025048 @ =gBitTable
@@ -46428,7 +46428,7 @@ atk77_setprotect: @ 8025130
push {r7}
movs r6, 0x1
ldr r2, _080251FC @ =gUnknown_02024C4C
- ldr r1, _08025200 @ =gUnknown_02024C07
+ ldr r1, _08025200 @ =gPlayerMonIndex
ldrb r3, [r1]
lsls r0, r3, 1
adds r0, r2
@@ -46529,7 +46529,7 @@ _080251E6:
b _08025246
.align 2, 0
_080251FC: .4byte gUnknown_02024C4C
-_08025200: .4byte gUnknown_02024C07
+_08025200: .4byte gPlayerMonIndex
_08025204: .4byte gUnknown_02024CA8
_08025208: .4byte gUnknown_02024A7E
_0802520C: .4byte gUnknown_02024A68
@@ -46540,7 +46540,7 @@ _0802521C: .4byte gUnknown_02024D28
_08025220: .4byte gUnknown_02024D1E
_08025224:
ldr r2, _08025258 @ =gUnknown_02024CA8
- ldr r0, _0802525C @ =gUnknown_02024C07
+ ldr r0, _0802525C @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r0, r1, 3
subs r0, r1
@@ -46551,7 +46551,7 @@ _08025224:
ldr r1, _08025260 @ =gUnknown_02024D1E
movs r0, 0x2
strb r0, [r1, 0x5]
- ldr r2, _08025264 @ =gUnknown_02024C68
+ ldr r2, _08025264 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -46568,9 +46568,9 @@ _08025246:
bx r0
.align 2, 0
_08025258: .4byte gUnknown_02024CA8
-_0802525C: .4byte gUnknown_02024C07
+_0802525C: .4byte gPlayerMonIndex
_08025260: .4byte gUnknown_02024D1E
-_08025264: .4byte gUnknown_02024C68
+_08025264: .4byte gBattleMoveFlags
_08025268: .4byte gUnknown_02024C10
thumb_func_end atk77_setprotect
@@ -46583,7 +46583,7 @@ atk78_faintifabilitynotdamp: @ 802526C
ldr r2, [r0]
cmp r2, 0
bne _08025370
- ldr r1, _0802532C @ =gUnknown_02024C08
+ ldr r1, _0802532C @ =gEnemyMonIndex
strb r2, [r1]
ldr r0, _08025330 @ =gUnknown_02024A68
ldrb r3, [r0]
@@ -46622,10 +46622,10 @@ _080252B8:
cmp r0, r1
bne _08025354
ldr r4, _08025338 @ =gUnknown_02024A60
- ldr r7, _0802533C @ =gUnknown_02024C07
+ ldr r7, _0802533C @ =gPlayerMonIndex
ldrb r0, [r7]
strb r0, [r4]
- ldr r2, _08025340 @ =gUnknown_02024BEC
+ ldr r2, _08025340 @ =gBattleMoveDamage
ldrb r1, [r4]
movs r0, 0x58
muls r0, r1
@@ -46674,12 +46674,12 @@ _0802531A:
b _08025370
.align 2, 0
_08025328: .4byte gUnknown_02024A64
-_0802532C: .4byte gUnknown_02024C08
+_0802532C: .4byte gEnemyMonIndex
_08025330: .4byte gUnknown_02024A68
_08025334: .4byte gBattleMons
_08025338: .4byte gUnknown_02024A60
-_0802533C: .4byte gUnknown_02024C07
-_08025340: .4byte gUnknown_02024BEC
+_0802533C: .4byte gPlayerMonIndex
+_08025340: .4byte gBattleMoveDamage
_08025344: .4byte 0x00007fff
_08025348: .4byte gUnknown_02024C10
_0802534C: .4byte gBitTable
@@ -46719,7 +46719,7 @@ atk79_setuserhptozero: @ 8025388
cmp r3, 0
bne _080253CC
ldr r4, _080253D8 @ =gUnknown_02024A60
- ldr r0, _080253DC @ =gUnknown_02024C07
+ ldr r0, _080253DC @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r4]
ldr r1, _080253E0 @ =gBattleMons
@@ -46752,7 +46752,7 @@ _080253CC:
.align 2, 0
_080253D4: .4byte gUnknown_02024A64
_080253D8: .4byte gUnknown_02024A60
-_080253DC: .4byte gUnknown_02024C07
+_080253DC: .4byte gPlayerMonIndex
_080253E0: .4byte gBattleMons
_080253E4: .4byte gUnknown_02024C10
thumb_func_end atk79_setuserhptozero
@@ -46779,11 +46779,11 @@ sub_80253E8: @ 80253E8
adds r7, r3, 0
cmp r0, 0
beq _08025480
- ldr r0, _08025468 @ =gUnknown_02024C08
+ ldr r0, _08025468 @ =gEnemyMonIndex
ldrb r1, [r0]
adds r1, 0x1
strb r1, [r0]
- ldr r2, _0802546C @ =gUnknown_02024C07
+ ldr r2, _0802546C @ =gPlayerMonIndex
lsls r1, 24
lsrs r1, 24
adds r3, r0, 0
@@ -46824,8 +46824,8 @@ _0802543E:
.align 2, 0
_08025460: .4byte gUnknown_02024C10
_08025464: .4byte gBattleTypeFlags
-_08025468: .4byte gUnknown_02024C08
-_0802546C: .4byte gUnknown_02024C07
+_08025468: .4byte gEnemyMonIndex
+_0802546C: .4byte gPlayerMonIndex
_08025470: .4byte gUnknown_02024C0C
_08025474: .4byte gBitTable
_08025478: .4byte gUnknown_02024A68
@@ -46857,14 +46857,14 @@ sub_802548C: @ 802548C
lsls r0, 24
orrs r2, r0
ldrb r0, [r1, 0x5]
- ldr r3, _080254EC @ =gUnknown_02024C08
+ ldr r3, _080254EC @ =gEnemyMonIndex
cmp r0, 0x1
bne _080254B4
- ldr r0, _080254F0 @ =gUnknown_02024C07
+ ldr r0, _080254F0 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r3]
_080254B4:
- ldr r1, _080254F4 @ =gUnknown_02024BEC
+ ldr r1, _080254F4 @ =gBattleMoveDamage
ldr r6, _080254F8 @ =gBattleMons
ldrb r0, [r3]
movs r5, 0x58
@@ -46892,9 +46892,9 @@ _080254CE:
b _08025502
.align 2, 0
_080254E8: .4byte gUnknown_02024C10
-_080254EC: .4byte gUnknown_02024C08
-_080254F0: .4byte gUnknown_02024C07
-_080254F4: .4byte gUnknown_02024BEC
+_080254EC: .4byte gEnemyMonIndex
+_080254F0: .4byte gPlayerMonIndex
+_080254F4: .4byte gBattleMoveDamage
_080254F8: .4byte gBattleMons
_080254FC:
ldr r0, [r4]
@@ -46910,7 +46910,7 @@ _08025502:
sub_8025508: @ 8025508
push {r4-r7,lr}
ldr r3, _0802556C @ =0x02000000
- ldr r4, _08025570 @ =gUnknown_02024C07
+ ldr r4, _08025570 @ =gPlayerMonIndex
ldrb r2, [r4]
lsls r1, r2, 1
ldr r5, _08025574 @ =0x000160ac
@@ -46959,7 +46959,7 @@ sub_8025508: @ 8025508
b _0802565C
.align 2, 0
_0802556C: .4byte 0x02000000
-_08025570: .4byte gUnknown_02024C07
+_08025570: .4byte gPlayerMonIndex
_08025574: .4byte 0x000160ac
_08025578: .4byte 0x000160ad
_0802557C: .4byte 0x00016100
@@ -47004,7 +47004,7 @@ _080255D8:
ldrh r0, [r5]
movs r1, 0
bl sub_801B5C0
- ldr r1, _08025608 @ =gUnknown_02024C08
+ ldr r1, _08025608 @ =gEnemyMonIndex
strb r0, [r1]
ldr r4, _0802560C @ =gUnknown_02024C10
ldr r3, _08025610 @ =gUnknown_081D6BBC
@@ -47022,7 +47022,7 @@ _080255D8:
b _080256C0
.align 2, 0
_08025604: .4byte gUnknown_02024BE6
-_08025608: .4byte gUnknown_02024C08
+_08025608: .4byte gEnemyMonIndex
_0802560C: .4byte gUnknown_02024C10
_08025610: .4byte gUnknown_081D6BBC
_08025614: .4byte gBattleMoves
@@ -47062,7 +47062,7 @@ _0802565C:
ldrh r0, [r4]
movs r1, 0
bl sub_801B5C0
- ldr r1, _08025694 @ =gUnknown_02024C08
+ ldr r1, _08025694 @ =gEnemyMonIndex
strb r0, [r1]
ldr r5, _08025698 @ =gUnknown_02024C10
ldr r3, _0802569C @ =gUnknown_081D6BBC
@@ -47083,7 +47083,7 @@ _08025684: .4byte 0x0000ffff
_08025688: .4byte gUnknown_02024C6C
_0802568C: .4byte 0xfffffbff
_08025690: .4byte gUnknown_02024BE6
-_08025694: .4byte gUnknown_02024C08
+_08025694: .4byte gEnemyMonIndex
_08025698: .4byte gUnknown_02024C10
_0802569C: .4byte gUnknown_081D6BBC
_080256A0: .4byte gBattleMoves
@@ -47120,7 +47120,7 @@ sub_80256D0: @ 80256D0
ands r1, r0
cmp r1, 0
beq _080256FC
- ldr r2, _080256F4 @ =gUnknown_02024C68
+ ldr r2, _080256F4 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -47131,7 +47131,7 @@ sub_80256D0: @ 80256D0
b _0802570C
.align 2, 0
_080256F0: .4byte gBattleWeather
-_080256F4: .4byte gUnknown_02024C68
+_080256F4: .4byte gBattleMoveFlags
_080256F8: .4byte gUnknown_02024D1E
_080256FC:
movs r0, 0x1
@@ -47158,7 +47158,7 @@ _08025720: .4byte gUnknown_02024C10
thumb_func_start atk7E_setreflect
atk7E_setreflect: @ 8025724
push {r4-r6,lr}
- ldr r5, _08025754 @ =gUnknown_02024C07
+ ldr r5, _08025754 @ =gPlayerMonIndex
ldrb r0, [r5]
bl battle_get_per_side_status
ldr r6, _08025758 @ =gUnknown_02024C7A
@@ -47172,7 +47172,7 @@ atk7E_setreflect: @ 8025724
ands r0, r1
cmp r0, 0
beq _08025764
- ldr r2, _0802575C @ =gUnknown_02024C68
+ ldr r2, _0802575C @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -47181,9 +47181,9 @@ atk7E_setreflect: @ 8025724
movs r0, 0
b _080257C4
.align 2, 0
-_08025754: .4byte gUnknown_02024C07
+_08025754: .4byte gPlayerMonIndex
_08025758: .4byte gUnknown_02024C7A
-_0802575C: .4byte gUnknown_02024C68
+_0802575C: .4byte gBattleMoveFlags
_08025760: .4byte gUnknown_02024D1E
_08025764:
ldrb r0, [r5]
@@ -47250,7 +47250,7 @@ sub_80257DC: @ 80257DC
mov r7, r9
mov r6, r8
push {r6,r7}
- ldr r7, _0802581C @ =gUnknown_02024C68
+ ldr r7, _0802581C @ =gBattleMoveFlags
ldrb r5, [r7]
movs r0, 0x29
ands r0, r5
@@ -47258,7 +47258,7 @@ sub_80257DC: @ 80257DC
bne _0802580E
ldr r0, _08025820 @ =gUnknown_02024C98
mov r9, r0
- ldr r1, _08025824 @ =gUnknown_02024C08
+ ldr r1, _08025824 @ =gEnemyMonIndex
mov r8, r1
ldrb r4, [r1]
lsls r0, r4, 2
@@ -47280,9 +47280,9 @@ _0802580E:
strb r0, [r1, 0x5]
b _0802587C
.align 2, 0
-_0802581C: .4byte gUnknown_02024C68
+_0802581C: .4byte gBattleMoveFlags
_08025820: .4byte gUnknown_02024C98
-_08025824: .4byte gUnknown_02024C08
+_08025824: .4byte gEnemyMonIndex
_08025828: .4byte gUnknown_02024D1E
_0802582C:
ldr r1, _08025858 @ =gBattleMons
@@ -47311,7 +47311,7 @@ _08025848:
_08025858: .4byte gBattleMons
_0802585C: .4byte gUnknown_02024D1E
_08025860:
- ldr r0, _08025890 @ =gUnknown_02024C07
+ ldr r0, _08025890 @ =gPlayerMonIndex
ldrb r0, [r0]
orrs r2, r0
str r2, [r6]
@@ -47337,7 +47337,7 @@ _0802587C:
pop {r0}
bx r0
.align 2, 0
-_08025890: .4byte gUnknown_02024C07
+_08025890: .4byte gPlayerMonIndex
_08025894: .4byte gUnknown_02024D1E
_08025898: .4byte gUnknown_02024C10
thumb_func_end sub_80257DC
@@ -47363,14 +47363,14 @@ _080258B8:
beq _08025904
b _0802590C
_080258BE:
- ldr r1, _080258C8 @ =gUnknown_02024BEC
+ ldr r1, _080258C8 @ =gBattleMoveDamage
ldr r0, [r1]
negs r0, r0
b _0802590A
.align 2, 0
-_080258C8: .4byte gUnknown_02024BEC
+_080258C8: .4byte gBattleMoveDamage
_080258CC:
- ldr r3, _080258F8 @ =gUnknown_02024BEC
+ ldr r3, _080258F8 @ =gBattleMoveDamage
ldr r0, [r3]
lsrs r1, r0, 31
adds r0, r1
@@ -47381,7 +47381,7 @@ _080258CC:
str r2, [r3]
_080258DE:
ldr r2, _080258FC @ =gBattleMons
- ldr r0, _08025900 @ =gUnknown_02024C08
+ ldr r0, _08025900 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -47394,11 +47394,11 @@ _080258DE:
str r1, [r3]
b _0802590C
.align 2, 0
-_080258F8: .4byte gUnknown_02024BEC
+_080258F8: .4byte gBattleMoveDamage
_080258FC: .4byte gBattleMons
-_08025900: .4byte gUnknown_02024C08
+_08025900: .4byte gEnemyMonIndex
_08025904:
- ldr r1, _08025918 @ =gUnknown_02024BEC
+ ldr r1, _08025918 @ =gBattleMoveDamage
ldr r0, [r1]
lsls r0, 1
_0802590A:
@@ -47411,7 +47411,7 @@ _0802590C:
pop {r0}
bx r0
.align 2, 0
-_08025918: .4byte gUnknown_02024BEC
+_08025918: .4byte gBattleMoveDamage
thumb_func_end atk80_manipulatedamage
thumb_func_start atk81_setrest
@@ -47432,12 +47432,12 @@ atk81_setrest: @ 802591C
lsls r0, 24
orrs r6, r0
ldr r5, _08025978 @ =gUnknown_02024A60
- ldr r2, _0802597C @ =gUnknown_02024C08
- ldr r0, _08025980 @ =gUnknown_02024C07
+ ldr r2, _0802597C @ =gEnemyMonIndex
+ ldr r0, _08025980 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r2]
strb r0, [r5]
- ldr r4, _08025984 @ =gUnknown_02024BEC
+ ldr r4, _08025984 @ =gBattleMoveDamage
ldr r1, _08025988 @ =gBattleMons
ldrb r0, [r2]
movs r3, 0x58
@@ -47463,9 +47463,9 @@ atk81_setrest: @ 802591C
.align 2, 0
_08025974: .4byte gUnknown_02024C10
_08025978: .4byte gUnknown_02024A60
-_0802597C: .4byte gUnknown_02024C08
-_08025980: .4byte gUnknown_02024C07
-_08025984: .4byte gUnknown_02024BEC
+_0802597C: .4byte gEnemyMonIndex
+_08025980: .4byte gPlayerMonIndex
+_08025984: .4byte gBattleMoveDamage
_08025988: .4byte gBattleMons
_0802598C:
adds r0, r2, 0
@@ -47534,7 +47534,7 @@ atk82_jumpifnotfirstturn: @ 80259EC
lsls r0, 24
orrs r3, r0
ldr r2, _08025A24 @ =gUnknown_02024CA8
- ldr r0, _08025A28 @ =gUnknown_02024C07
+ ldr r0, _08025A28 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r0, r1, 3
subs r0, r1
@@ -47549,7 +47549,7 @@ atk82_jumpifnotfirstturn: @ 80259EC
.align 2, 0
_08025A20: .4byte gUnknown_02024C10
_08025A24: .4byte gUnknown_02024CA8
-_08025A28: .4byte gUnknown_02024C07
+_08025A28: .4byte gPlayerMonIndex
_08025A2C:
str r3, [r5]
_08025A2E:
@@ -47607,7 +47607,7 @@ _08025A70:
beq _08025AB0
movs r3, 0
strb r2, [r6]
- ldr r1, _08025AAC @ =gUnknown_02024C08
+ ldr r1, _08025AAC @ =gEnemyMonIndex
ldrb r0, [r1]
cmp r0, 0xFF
beq _08025AD0
@@ -47621,7 +47621,7 @@ _08025A9C: .4byte gUnknown_02024A68
_08025AA0: .4byte gBattleMons
_08025AA4: .4byte 0x02016003
_08025AA8: .4byte gUnknown_02024D1E
-_08025AAC: .4byte gUnknown_02024C08
+_08025AAC: .4byte gEnemyMonIndex
_08025AB0:
adds r3, 0x58
adds r2, 0x1
@@ -47668,7 +47668,7 @@ sub_8025AE0: @ 8025AE0
ldrb r0, [r1, 0x4]
lsls r0, 24
orrs r4, r0
- ldr r6, _08025B10 @ =gUnknown_02024C08
+ ldr r6, _08025B10 @ =gEnemyMonIndex
ldrb r0, [r6]
bl sub_8025A44
lsls r0, 24
@@ -47678,7 +47678,7 @@ sub_8025AE0: @ 8025AE0
b _08025B56
.align 2, 0
_08025B0C: .4byte gUnknown_02024C10
-_08025B10: .4byte gUnknown_02024C08
+_08025B10: .4byte gEnemyMonIndex
_08025B14:
ldr r1, _08025B44 @ =gBattleMons
ldrb r3, [r6]
@@ -47721,7 +47721,7 @@ _08025B56:
sub_8025B5C: @ 8025B5C
push {r4,r5,lr}
ldr r5, _08025B84 @ =gUnknown_02024CA8
- ldr r4, _08025B88 @ =gUnknown_02024C07
+ ldr r4, _08025B88 @ =gPlayerMonIndex
ldrb r1, [r4]
lsls r0, r1, 3
subs r0, r1
@@ -47730,7 +47730,7 @@ sub_8025B5C: @ 8025B5C
ldrb r0, [r1, 0x9]
cmp r0, 0x3
bne _08025B94
- ldr r2, _08025B8C @ =gUnknown_02024C68
+ ldr r2, _08025B8C @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -47741,8 +47741,8 @@ sub_8025B5C: @ 8025B5C
b _08025BBE
.align 2, 0
_08025B84: .4byte gUnknown_02024CA8
-_08025B88: .4byte gUnknown_02024C07
-_08025B8C: .4byte gUnknown_02024C68
+_08025B88: .4byte gPlayerMonIndex
+_08025B8C: .4byte gBattleMoveFlags
_08025B90: .4byte gUnknown_02024D1E
_08025B94:
adds r0, 0x1
@@ -47799,7 +47799,7 @@ atk86_stockpiletobasedamage: @ 8025BD8
lsls r0, 24
orrs r2, r0
ldr r7, _08025C14 @ =gUnknown_02024CA8
- ldr r6, _08025C18 @ =gUnknown_02024C07
+ ldr r6, _08025C18 @ =gPlayerMonIndex
ldrb r1, [r6]
lsls r0, r1, 3
subs r0, r1
@@ -47813,16 +47813,16 @@ atk86_stockpiletobasedamage: @ 8025BD8
.align 2, 0
_08025C10: .4byte gUnknown_02024C10
_08025C14: .4byte gUnknown_02024CA8
-_08025C18: .4byte gUnknown_02024C07
+_08025C18: .4byte gPlayerMonIndex
_08025C1C:
ldr r0, _08025CD0 @ =gUnknown_02024D1E
ldrb r0, [r0, 0x6]
cmp r0, 0x1
beq _08025CA8
- ldr r0, _08025CD4 @ =gUnknown_02024BEC
+ ldr r0, _08025CD4 @ =gBattleMoveDamage
mov r8, r0
ldr r4, _08025CD8 @ =gUnknown_02024C7A
- ldr r5, _08025CDC @ =gUnknown_02024C08
+ ldr r5, _08025CDC @ =gEnemyMonIndex
ldrb r0, [r5]
bl battle_get_per_side_status
movs r1, 0x1
@@ -47884,7 +47884,7 @@ _08025C1C:
str r0, [r1]
_08025CA8:
ldr r2, _08025CF4 @ =gUnknown_02024CA8
- ldr r0, _08025CF8 @ =gUnknown_02024C07
+ ldr r0, _08025CF8 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r0, r1, 3
subs r0, r1
@@ -47905,16 +47905,16 @@ _08025CC2:
bx r0
.align 2, 0
_08025CD0: .4byte gUnknown_02024D1E
-_08025CD4: .4byte gUnknown_02024BEC
+_08025CD4: .4byte gBattleMoveDamage
_08025CD8: .4byte gUnknown_02024C7A
-_08025CDC: .4byte gUnknown_02024C08
+_08025CDC: .4byte gEnemyMonIndex
_08025CE0: .4byte gBattleMons
_08025CE4: .4byte gUnknown_02024BE6
_08025CE8: .4byte 0x02000000
_08025CEC: .4byte 0x00016002
_08025CF0: .4byte gUnknown_02024D28
_08025CF4: .4byte gUnknown_02024CA8
-_08025CF8: .4byte gUnknown_02024C07
+_08025CF8: .4byte gPlayerMonIndex
_08025CFC: .4byte gUnknown_02024C10
thumb_func_end atk86_stockpiletobasedamage
@@ -47937,7 +47937,7 @@ sub_8025D00: @ 8025D00
orrs r2, r0
ldr r0, _08025D44 @ =gUnknown_02024CA8
mov r8, r0
- ldr r6, _08025D48 @ =gUnknown_02024C07
+ ldr r6, _08025D48 @ =gPlayerMonIndex
ldrb r3, [r6]
lsls r0, r3, 3
subs r0, r3
@@ -47954,7 +47954,7 @@ sub_8025D00: @ 8025D00
.align 2, 0
_08025D40: .4byte gUnknown_02024C10
_08025D44: .4byte gUnknown_02024CA8
-_08025D48: .4byte gUnknown_02024C07
+_08025D48: .4byte gPlayerMonIndex
_08025D4C: .4byte gUnknown_02024D1E
_08025D50:
ldr r1, _08025D74 @ =gBattleMons
@@ -47968,7 +47968,7 @@ _08025D50:
movs r0, 0
strb r0, [r4, 0x9]
str r2, [r7]
- ldr r1, _08025D78 @ =gUnknown_02024C08
+ ldr r1, _08025D78 @ =gEnemyMonIndex
ldrb r0, [r6]
strb r0, [r1]
ldr r1, _08025D7C @ =gUnknown_02024D1E
@@ -47977,10 +47977,10 @@ _08025D50:
b _08025DD0
.align 2, 0
_08025D74: .4byte gBattleMons
-_08025D78: .4byte gUnknown_02024C08
+_08025D78: .4byte gEnemyMonIndex
_08025D7C: .4byte gUnknown_02024D1E
_08025D80:
- ldr r5, _08025DDC @ =gUnknown_02024BEC
+ ldr r5, _08025DDC @ =gBattleMoveDamage
ldrh r0, [r1, 0x2C]
ldrb r1, [r4, 0x9]
movs r2, 0x3
@@ -48017,7 +48017,7 @@ _08025D9C:
ldr r0, [r7]
adds r0, 0x5
str r0, [r7]
- ldr r1, _08025DE8 @ =gUnknown_02024C08
+ ldr r1, _08025DE8 @ =gEnemyMonIndex
ldrb r0, [r6]
strb r0, [r1]
_08025DD0:
@@ -48027,16 +48027,16 @@ _08025DD0:
pop {r0}
bx r0
.align 2, 0
-_08025DDC: .4byte gUnknown_02024BEC
+_08025DDC: .4byte gBattleMoveDamage
_08025DE0: .4byte 0x02000000
_08025DE4: .4byte 0x00016002
-_08025DE8: .4byte gUnknown_02024C08
+_08025DE8: .4byte gEnemyMonIndex
thumb_func_end sub_8025D00
thumb_func_start atk88_negativedamage
atk88_negativedamage: @ 8025DEC
push {lr}
- ldr r2, _08025E14 @ =gUnknown_02024BEC
+ ldr r2, _08025E14 @ =gBattleMoveDamage
ldr r0, _08025E18 @ =gUnknown_02024BF0
ldr r0, [r0]
lsrs r1, r0, 31
@@ -48057,7 +48057,7 @@ _08025E08:
pop {r0}
bx r0
.align 2, 0
-_08025E14: .4byte gUnknown_02024BEC
+_08025E14: .4byte gBattleMoveDamage
_08025E18: .4byte gUnknown_02024BF0
_08025E1C: .4byte gUnknown_02024C10
thumb_func_end atk88_negativedamage
@@ -48084,14 +48084,14 @@ sub_8025E20: @ 8025E20
cmp r0, 0
beq _08025E54
ldr r0, _08025E4C @ =gUnknown_02024A60
- ldr r1, _08025E50 @ =gUnknown_02024C07
+ ldr r1, _08025E50 @ =gPlayerMonIndex
b _08025E58
.align 2, 0
_08025E4C: .4byte gUnknown_02024A60
-_08025E50: .4byte gUnknown_02024C07
+_08025E50: .4byte gPlayerMonIndex
_08025E54:
ldr r0, _08025EF8 @ =gUnknown_02024A60
- ldr r1, _08025EFC @ =gUnknown_02024C08
+ ldr r1, _08025EFC @ =gEnemyMonIndex
_08025E58:
ldrb r1, [r1]
strb r1, [r0]
@@ -48177,7 +48177,7 @@ _08025EAC:
b _08025F74
.align 2, 0
_08025EF8: .4byte gUnknown_02024A60
-_08025EFC: .4byte gUnknown_02024C08
+_08025EFC: .4byte gEnemyMonIndex
_08025F00: .4byte gUnknown_030041C0
_08025F04: .4byte gUnknown_02024C80
_08025F08: .4byte gUnknown_02024BE6
@@ -48476,7 +48476,7 @@ _08026156:
cmp r0, 0
beq _08026206
movs r1, 0
- ldr r0, _080261A8 @ =gUnknown_02024C08
+ ldr r0, _080261A8 @ =gEnemyMonIndex
ldrb r0, [r0]
ldr r3, _080261AC @ =gUnknown_02024D1E
mov r8, r3
@@ -48490,7 +48490,7 @@ _0802619A:
.align 2, 0
_080261A0: .4byte gUnknown_02024A60
_080261A4: .4byte gUnknown_03004290
-_080261A8: .4byte gUnknown_02024C08
+_080261A8: .4byte gEnemyMonIndex
_080261AC: .4byte gUnknown_02024D1E
_080261B0:
asrs r6, r0, 28
@@ -48550,7 +48550,7 @@ _08026218: .4byte gUnknown_02024A60
_0802621C: .4byte gUnknown_02024D1E
_08026220:
movs r1, 0
- ldr r0, _080262B4 @ =gUnknown_02024C08
+ ldr r0, _080262B4 @ =gEnemyMonIndex
ldrb r0, [r0]
ldr r2, _080262B8 @ =gUnknown_02024D1E
mov r8, r2
@@ -48606,7 +48606,7 @@ _0802627A:
ands r3, r5
cmp r3, 0
beq _08026294
- ldr r0, _080262C0 @ =gUnknown_02024C68
+ ldr r0, _080262C0 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r2, 0x1
orrs r1, r2
@@ -48630,10 +48630,10 @@ _080262A4:
pop {r1}
bx r1
.align 2, 0
-_080262B4: .4byte gUnknown_02024C08
+_080262B4: .4byte gEnemyMonIndex
_080262B8: .4byte gUnknown_02024D1E
_080262BC: .4byte gUnknown_02024A60
-_080262C0: .4byte gUnknown_02024C68
+_080262C0: .4byte gBattleMoveFlags
thumb_func_end sub_8025E20
thumb_func_start atk89_statbuffchange
@@ -48729,7 +48729,7 @@ _08026368: .4byte gBattleMons
atk8B_setbide: @ 802636C
push {r4,r5,lr}
ldr r4, _080263C4 @ =gBattleMons
- ldr r3, _080263C8 @ =gUnknown_02024C07
+ ldr r3, _080263C8 @ =gPlayerMonIndex
ldrb r0, [r3]
movs r5, 0x58
adds r2, r0, 0
@@ -48772,7 +48772,7 @@ atk8B_setbide: @ 802636C
bx r0
.align 2, 0
_080263C4: .4byte gBattleMons
-_080263C8: .4byte gUnknown_02024C07
+_080263C8: .4byte gPlayerMonIndex
_080263CC: .4byte gUnknown_02024C54
_080263D0: .4byte gUnknown_02024BE6
_080263D4: .4byte gUnknown_02024BF4
@@ -48783,7 +48783,7 @@ _080263D8: .4byte gUnknown_02024C10
atk8C_confuseifrepeatingattackends: @ 80263DC
push {lr}
ldr r1, _0802640C @ =gBattleMons
- ldr r0, _08026410 @ =gUnknown_02024C07
+ ldr r0, _08026410 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -48807,7 +48807,7 @@ _080263FE:
bx r0
.align 2, 0
_0802640C: .4byte gBattleMons
-_08026410: .4byte gUnknown_02024C07
+_08026410: .4byte gPlayerMonIndex
_08026414: .4byte gUnknown_02024D1E
_08026418: .4byte gUnknown_02024C10
thumb_func_end atk8C_confuseifrepeatingattackends
@@ -48898,14 +48898,14 @@ _080264BC: .4byte gUnknown_02024C10
sub_80264C0: @ 80264C0
push {r4-r7,lr}
ldr r6, _080264F4 @ =gBattleMons
- ldr r7, _080264F8 @ =gUnknown_02024C07
+ ldr r7, _080264F8 @ =gPlayerMonIndex
ldrb r0, [r7]
movs r5, 0x58
adds r1, r0, 0
muls r1, r5
adds r1, r6
adds r1, 0x2A
- ldr r4, _080264FC @ =gUnknown_02024C08
+ ldr r4, _080264FC @ =gEnemyMonIndex
ldrb r3, [r4]
adds r0, r3, 0
muls r0, r5
@@ -48924,8 +48924,8 @@ sub_80264C0: @ 80264C0
b _08026568
.align 2, 0
_080264F4: .4byte gBattleMons
-_080264F8: .4byte gUnknown_02024C07
-_080264FC: .4byte gUnknown_02024C08
+_080264F8: .4byte gPlayerMonIndex
+_080264FC: .4byte gEnemyMonIndex
_08026500: .4byte 0x02000000
_08026504: .4byte 0x00016064
_08026508: .4byte gUnknown_02024A6A
@@ -49009,7 +49009,7 @@ sub_8026590: @ 8026590
bne _080265A4
b _0802687C
_080265A4:
- ldr r5, _0802662C @ =gUnknown_02024C08
+ ldr r5, _0802662C @ =gEnemyMonIndex
ldrb r0, [r5]
bl battle_side_get_owner
lsls r0, 24
@@ -49075,7 +49075,7 @@ _0802661A:
b _08026678
.align 2, 0
_08026628: .4byte gBattleTypeFlags
-_0802662C: .4byte gUnknown_02024C08
+_0802662C: .4byte gEnemyMonIndex
_08026630: .4byte gEnemyParty
_08026634: .4byte gPlayerParty
_08026638:
@@ -49171,7 +49171,7 @@ _080266DC:
bl __umodsi3
lsls r0, 24
lsrs r6, r0, 24
- ldr r0, _08026714 @ =gUnknown_02024C08
+ ldr r0, _08026714 @ =gEnemyMonIndex
ldrb r0, [r0]
bl sub_803FC34
lsls r0, 24
@@ -49187,12 +49187,12 @@ _080266DC:
b _0802671A
.align 2, 0
_08026710: .4byte gBattleTypeFlags
-_08026714: .4byte gUnknown_02024C08
+_08026714: .4byte gEnemyMonIndex
_08026718:
adds r5, r6, 0
_0802671A:
ldr r4, _0802676C @ =gUnknown_02024A6A
- ldr r0, _08026770 @ =gUnknown_02024C08
+ ldr r0, _08026770 @ =gEnemyMonIndex
ldrb r2, [r0]
lsls r1, r2, 1
adds r1, r4
@@ -49230,7 +49230,7 @@ _0802671A:
b _08026832
.align 2, 0
_0802676C: .4byte gUnknown_02024A6A
-_08026770: .4byte gUnknown_02024C08
+_08026770: .4byte gEnemyMonIndex
_08026774:
movs r0, 0x1
ands r0, r1
@@ -49245,7 +49245,7 @@ _0802677E:
bl __umodsi3
lsls r0, 24
lsrs r5, r0, 24
- ldr r0, _080267E0 @ =gUnknown_02024C08
+ ldr r0, _080267E0 @ =gEnemyMonIndex
ldrb r1, [r0]
lsls r0, r1, 1
adds r0, r6
@@ -49282,7 +49282,7 @@ _0802677E:
b _08026832
.align 2, 0
_080267DC: .4byte gUnknown_02024A6A
-_080267E0: .4byte gUnknown_02024C08
+_080267E0: .4byte gEnemyMonIndex
_080267E4:
ldr r6, _0802686C @ =gUnknown_02024A6A
_080267E6:
@@ -49293,7 +49293,7 @@ _080267E6:
bl __umodsi3
lsls r0, 24
lsrs r5, r0, 24
- ldr r0, _08026870 @ =gUnknown_02024C08
+ ldr r0, _08026870 @ =gEnemyMonIndex
ldrb r0, [r0]
lsls r0, 1
adds r0, r6
@@ -49321,7 +49321,7 @@ _080267E6:
beq _080267E6
_08026832:
ldr r0, _08026874 @ =0x02000000
- ldr r4, _08026870 @ =gUnknown_02024C08
+ ldr r4, _08026870 @ =gEnemyMonIndex
ldrb r1, [r4]
ldr r2, _08026878 @ =0x00016068
adds r1, r2
@@ -49347,7 +49347,7 @@ _08026850:
b _08026880
.align 2, 0
_0802686C: .4byte gUnknown_02024A6A
-_08026870: .4byte gUnknown_02024C08
+_08026870: .4byte gEnemyMonIndex
_08026874: .4byte 0x02000000
_08026878: .4byte 0x00016068
_0802687C:
@@ -49369,7 +49369,7 @@ sub_802688C: @ 802688C
push {r5-r7}
movs r6, 0
ldr r2, _08026920 @ =gBattleMons
- ldr r3, _08026924 @ =gUnknown_02024C07
+ ldr r3, _08026924 @ =gPlayerMonIndex
ldrb r1, [r3]
movs r0, 0x58
muls r0, r1
@@ -49404,7 +49404,7 @@ _080268CE:
mov r10, r0
ldr r5, _08026920 @ =gBattleMons
mov r12, r5
- ldr r7, _08026924 @ =gUnknown_02024C07
+ ldr r7, _08026924 @ =gPlayerMonIndex
ldrb r0, [r7]
movs r4, 0x58
adds r5, r0, 0
@@ -49441,7 +49441,7 @@ _0802691A:
b _0802692E
.align 2, 0
_08026920: .4byte gBattleMons
-_08026924: .4byte gUnknown_02024C07
+_08026924: .4byte gPlayerMonIndex
_08026928: .4byte gBattleMoves
_0802692C:
movs r2, 0
@@ -49495,7 +49495,7 @@ _0802697A:
bcs _0802697A
ldr r4, _080269D0 @ =gBattleMons
lsls r1, r3, 1
- ldr r3, _080269D4 @ =gUnknown_02024C07
+ ldr r3, _080269D4 @ =gPlayerMonIndex
ldrb r2, [r3]
movs r0, 0x58
adds r5, r2, 0
@@ -49532,7 +49532,7 @@ _080269C8:
.align 2, 0
_080269CC: .4byte gBattleMoves
_080269D0: .4byte gBattleMons
-_080269D4: .4byte gUnknown_02024C07
+_080269D4: .4byte gPlayerMonIndex
_080269D8:
movs r2, 0
_080269DA:
@@ -49651,7 +49651,7 @@ _08026ABC: .4byte gUnknown_02024C10
thumb_func_start atk92_setlightscreen
atk92_setlightscreen: @ 8026AC0
push {r4-r6,lr}
- ldr r4, _08026AF0 @ =gUnknown_02024C07
+ ldr r4, _08026AF0 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_get_per_side_status
ldr r6, _08026AF4 @ =gUnknown_02024C7A
@@ -49665,7 +49665,7 @@ atk92_setlightscreen: @ 8026AC0
ands r0, r1
cmp r0, 0
beq _08026B00
- ldr r2, _08026AF8 @ =gUnknown_02024C68
+ ldr r2, _08026AF8 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -49674,9 +49674,9 @@ atk92_setlightscreen: @ 8026AC0
movs r0, 0
b _08026B60
.align 2, 0
-_08026AF0: .4byte gUnknown_02024C07
+_08026AF0: .4byte gPlayerMonIndex
_08026AF4: .4byte gUnknown_02024C7A
-_08026AF8: .4byte gUnknown_02024C68
+_08026AF8: .4byte gBattleMoveFlags
_08026AFC: .4byte gUnknown_02024D1E
_08026B00:
ldrb r0, [r4]
@@ -49744,7 +49744,7 @@ sub_8026B78: @ 8026B78
mov r5, r8
push {r5-r7}
ldr r7, _08026BA8 @ =gBattleMons
- ldr r6, _08026BAC @ =gUnknown_02024C08
+ ldr r6, _08026BAC @ =gEnemyMonIndex
ldrb r2, [r6]
movs r5, 0x58
adds r0, r2, 0
@@ -49763,7 +49763,7 @@ sub_8026B78: @ 8026B78
b _08026BCE
.align 2, 0
_08026BA8: .4byte gBattleMons
-_08026BAC: .4byte gUnknown_02024C08
+_08026BAC: .4byte gEnemyMonIndex
_08026BB0: .4byte gEnigmaBerries
_08026BB4:
ldrh r0, [r1, 0x2E]
@@ -49779,7 +49779,7 @@ _08026BB4:
lsrs r6, r0, 24
_08026BCE:
ldr r1, _08026C4C @ =gUnknown_02024C0B
- ldr r5, _08026C50 @ =gUnknown_02024C08
+ ldr r5, _08026C50 @ =gEnemyMonIndex
ldrb r0, [r5]
strb r0, [r1]
cmp r4, 0x27
@@ -49809,7 +49809,7 @@ _08026BCE:
_08026C0C:
ldr r0, _08026C58 @ =gBattleMons
mov r8, r0
- ldr r1, _08026C50 @ =gUnknown_02024C08
+ ldr r1, _08026C50 @ =gEnemyMonIndex
ldrb r2, [r1]
movs r6, 0x58
adds r0, r2, 0
@@ -49822,7 +49822,7 @@ _08026C0C:
mov r10, r8
cmp r3, 0x5
bne _08026C6C
- ldr r2, _08026C5C @ =gUnknown_02024C68
+ ldr r2, _08026C5C @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -49832,17 +49832,17 @@ _08026C0C:
ldr r1, _08026C64 @ =gUnknown_02024C10
ldr r0, _08026C68 @ =gUnknown_081D9826
str r0, [r1]
- ldr r1, _08026C50 @ =gUnknown_02024C08
+ ldr r1, _08026C50 @ =gEnemyMonIndex
ldrb r0, [r1]
movs r1, 0x5
bl sub_81074C4
b _08026E40
.align 2, 0
_08026C4C: .4byte gUnknown_02024C0B
-_08026C50: .4byte gUnknown_02024C08
+_08026C50: .4byte gEnemyMonIndex
_08026C54: .4byte gUnknown_02024D68
_08026C58: .4byte gBattleMons
-_08026C5C: .4byte gUnknown_02024C68
+_08026C5C: .4byte gBattleMoveFlags
_08026C60: .4byte byte_2024C06
_08026C64: .4byte gUnknown_02024C10
_08026C68: .4byte gUnknown_081D9826
@@ -49862,7 +49862,7 @@ _08026C6C:
adds r2, r0
lsls r2, 2
adds r2, r1
- ldr r7, _08026CEC @ =gUnknown_02024C07
+ ldr r7, _08026CEC @ =gPlayerMonIndex
ldrb r0, [r7]
muls r0, r6
add r0, r10
@@ -49891,7 +49891,7 @@ _08026C6C:
muls r1, r6
add r1, r10
adds r1, 0x2A
- ldr r2, _08026CF0 @ =gUnknown_02024C08
+ ldr r2, _08026CF0 @ =gEnemyMonIndex
ldrb r0, [r2]
muls r0, r6
add r0, r10
@@ -49908,15 +49908,15 @@ _08026CDC:
_08026CE0: .4byte gUnknown_02024C98
_08026CE4: .4byte gBattleMoves
_08026CE8: .4byte gUnknown_02024BE6
-_08026CEC: .4byte gUnknown_02024C07
-_08026CF0: .4byte gUnknown_02024C08
+_08026CEC: .4byte gPlayerMonIndex
+_08026CF0: .4byte gEnemyMonIndex
_08026CF4:
ldr r0, _08026D4C @ =gUnknown_02024CA8
lsls r1, r2, 3
subs r1, r2
lsls r1, 2
adds r1, r0
- ldr r2, _08026D50 @ =gUnknown_02024C07
+ ldr r2, _08026D50 @ =gPlayerMonIndex
ldrb r0, [r1, 0x15]
movs r4, 0
ldrb r3, [r2]
@@ -49937,7 +49937,7 @@ _08026D20:
cmp r4, 0
beq _08026DE0
ldr r0, _08026D54 @ =gUnknown_02024D28
- ldr r1, _08026D58 @ =gUnknown_02024C08
+ ldr r1, _08026D58 @ =gEnemyMonIndex
ldrb r2, [r1]
lsls r1, r2, 4
adds r1, r0
@@ -49945,24 +49945,24 @@ _08026D20:
lsls r0, 30
cmp r0, 0
bge _08026D64
- ldr r1, _08026D5C @ =gUnknown_02024BEC
+ ldr r1, _08026D5C @ =gBattleMoveDamage
movs r0, 0x58
muls r0, r2
add r0, r10
ldrh r0, [r0, 0x28]
subs r0, 0x1
str r0, [r1]
- ldr r2, _08026D60 @ =gUnknown_02024C68
+ ldr r2, _08026D60 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x40
b _08026DC6
.align 2, 0
_08026D4C: .4byte gUnknown_02024CA8
-_08026D50: .4byte gUnknown_02024C07
+_08026D50: .4byte gPlayerMonIndex
_08026D54: .4byte gUnknown_02024D28
-_08026D58: .4byte gUnknown_02024C08
-_08026D5C: .4byte gUnknown_02024BEC
-_08026D60: .4byte gUnknown_02024C68
+_08026D58: .4byte gEnemyMonIndex
+_08026D5C: .4byte gBattleMoveDamage
+_08026D60: .4byte gBattleMoveFlags
_08026D64:
ldr r0, _08026DA0 @ =gUnknown_02024D68
lsls r1, r2, 2
@@ -49973,7 +49973,7 @@ _08026D64:
lsrs r0, 7
cmp r0, 0
beq _08026DB4
- ldr r1, _08026DA4 @ =gUnknown_02024BEC
+ ldr r1, _08026DA4 @ =gBattleMoveDamage
movs r3, 0x58
adds r0, r2, 0
muls r0, r3
@@ -49981,13 +49981,13 @@ _08026D64:
ldrh r0, [r0, 0x28]
subs r0, 0x1
str r0, [r1]
- ldr r2, _08026DA8 @ =gUnknown_02024C68
+ ldr r2, _08026DA8 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x80
orrs r0, r1
strb r0, [r2]
ldr r1, _08026DAC @ =gUnknown_02024C04
- ldr r2, _08026DB0 @ =gUnknown_02024C08
+ ldr r2, _08026DB0 @ =gEnemyMonIndex
ldrb r0, [r2]
muls r0, r3
add r0, r10
@@ -49996,18 +49996,18 @@ _08026D64:
b _08026DCA
.align 2, 0
_08026DA0: .4byte gUnknown_02024D68
-_08026DA4: .4byte gUnknown_02024BEC
-_08026DA8: .4byte gUnknown_02024C68
+_08026DA4: .4byte gBattleMoveDamage
+_08026DA8: .4byte gBattleMoveFlags
_08026DAC: .4byte gUnknown_02024C04
-_08026DB0: .4byte gUnknown_02024C08
+_08026DB0: .4byte gEnemyMonIndex
_08026DB4:
- ldr r1, _08026DD4 @ =gUnknown_02024BEC
+ ldr r1, _08026DD4 @ =gBattleMoveDamage
movs r0, 0x58
muls r0, r2
add r0, r10
ldrh r0, [r0, 0x28]
str r0, [r1]
- ldr r2, _08026DD8 @ =gUnknown_02024C68
+ ldr r2, _08026DD8 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x10
_08026DC6:
@@ -50020,23 +50020,23 @@ _08026DCA:
str r0, [r1]
b _08026E40
.align 2, 0
-_08026DD4: .4byte gUnknown_02024BEC
-_08026DD8: .4byte gUnknown_02024C68
+_08026DD4: .4byte gBattleMoveDamage
+_08026DD8: .4byte gBattleMoveFlags
_08026DDC: .4byte gUnknown_02024C10
_08026DE0:
- ldr r2, _08026E10 @ =gUnknown_02024C68
+ ldr r2, _08026E10 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
strb r0, [r2]
- ldr r0, _08026E14 @ =gUnknown_02024C07
+ ldr r0, _08026E14 @ =gPlayerMonIndex
ldrb r0, [r0]
movs r2, 0x58
adds r1, r0, 0
muls r1, r2
add r1, r10
adds r1, 0x2A
- ldr r3, _08026E18 @ =gUnknown_02024C08
+ ldr r3, _08026E18 @ =gEnemyMonIndex
ldrb r0, [r3]
muls r0, r2
add r0, r10
@@ -50049,9 +50049,9 @@ _08026DE0:
movs r0, 0
b _08026E24
.align 2, 0
-_08026E10: .4byte gUnknown_02024C68
-_08026E14: .4byte gUnknown_02024C07
-_08026E18: .4byte gUnknown_02024C08
+_08026E10: .4byte gBattleMoveFlags
+_08026E14: .4byte gPlayerMonIndex
+_08026E18: .4byte gEnemyMonIndex
_08026E1C: .4byte gUnknown_02024D1E
_08026E20:
ldr r1, _08026E50 @ =gUnknown_02024D1E
@@ -50087,9 +50087,9 @@ _08026E54: .4byte gUnknown_02024C10
thumb_func_start atk94_gethalfcurrentenemyhp
atk94_gethalfcurrentenemyhp: @ 8026E58
push {lr}
- ldr r3, _08026E84 @ =gUnknown_02024BEC
+ ldr r3, _08026E84 @ =gBattleMoveDamage
ldr r2, _08026E88 @ =gBattleMons
- ldr r0, _08026E8C @ =gUnknown_02024C08
+ ldr r0, _08026E8C @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -50109,9 +50109,9 @@ _08026E76:
pop {r0}
bx r0
.align 2, 0
-_08026E84: .4byte gUnknown_02024BEC
+_08026E84: .4byte gBattleMoveDamage
_08026E88: .4byte gBattleMons
-_08026E8C: .4byte gUnknown_02024C08
+_08026E8C: .4byte gEnemyMonIndex
_08026E90: .4byte gUnknown_02024C10
thumb_func_end atk94_gethalfcurrentenemyhp
@@ -50124,7 +50124,7 @@ sub_8026E94: @ 8026E94
ands r0, r1
cmp r0, 0
beq _08026EC0
- ldr r2, _08026EB8 @ =gUnknown_02024C68
+ ldr r2, _08026EB8 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -50135,7 +50135,7 @@ sub_8026E94: @ 8026E94
b _08026ED2
.align 2, 0
_08026EB4: .4byte gBattleWeather
-_08026EB8: .4byte gUnknown_02024C68
+_08026EB8: .4byte gBattleMoveFlags
_08026EBC: .4byte gUnknown_02024D1E
_08026EC0:
movs r0, 0x8
@@ -50193,7 +50193,7 @@ _08026F20:
movs r0, 0x18
ands r0, r1
adds r4, r2, 0
- ldr r5, _08026F98 @ =gUnknown_02024C07
+ ldr r5, _08026F98 @ =gPlayerMonIndex
cmp r0, 0
beq _08026FAE
ldr r0, _08026F9C @ =gBattleMons
@@ -50237,7 +50237,7 @@ _08026F20:
ands r1, r0
cmp r1, 0
bne _08026FA8
- ldr r1, _08026FA4 @ =gUnknown_02024BEC
+ ldr r1, _08026FA4 @ =gBattleMoveDamage
ldrh r0, [r3, 0x2C]
lsrs r0, 4
str r0, [r1]
@@ -50247,12 +50247,12 @@ _08026F20:
b _08026FAC
.align 2, 0
_08026F94: .4byte gBattleWeather
-_08026F98: .4byte gUnknown_02024C07
+_08026F98: .4byte gPlayerMonIndex
_08026F9C: .4byte gBattleMons
_08026FA0: .4byte gUnknown_02024C98
-_08026FA4: .4byte gUnknown_02024BEC
+_08026FA4: .4byte gBattleMoveDamage
_08026FA8:
- ldr r1, _08027004 @ =gUnknown_02024BEC
+ ldr r1, _08027004 @ =gBattleMoveDamage
movs r0, 0
_08026FAC:
str r0, [r1]
@@ -50291,7 +50291,7 @@ _08026FAE:
ands r1, r0
cmp r1, 0
bne _08027010
- ldr r1, _08027004 @ =gUnknown_02024BEC
+ ldr r1, _08027004 @ =gBattleMoveDamage
ldrh r0, [r2, 0x2C]
lsrs r0, 4
str r0, [r1]
@@ -50301,21 +50301,21 @@ _08026FAE:
str r0, [r1]
b _08027024
.align 2, 0
-_08027004: .4byte gUnknown_02024BEC
+_08027004: .4byte gBattleMoveDamage
_08027008: .4byte gBattleMons
_0802700C: .4byte gUnknown_02024C98
_08027010:
- ldr r1, _08027018 @ =gUnknown_02024BEC
+ ldr r1, _08027018 @ =gBattleMoveDamage
movs r0, 0
str r0, [r1]
b _08027024
.align 2, 0
-_08027018: .4byte gUnknown_02024BEC
+_08027018: .4byte gBattleMoveDamage
_0802701C:
- ldr r1, _08027050 @ =gUnknown_02024BEC
+ ldr r1, _08027050 @ =gBattleMoveDamage
movs r0, 0
str r0, [r1]
- ldr r5, _08027054 @ =gUnknown_02024C07
+ ldr r5, _08027054 @ =gPlayerMonIndex
_08027024:
ldr r0, _08027058 @ =gUnknown_02024C0C
ldrb r1, [r0]
@@ -50327,7 +50327,7 @@ _08027024:
ands r1, r0
cmp r1, 0
beq _0802703E
- ldr r1, _08027050 @ =gUnknown_02024BEC
+ ldr r1, _08027050 @ =gBattleMoveDamage
movs r0, 0
str r0, [r1]
_0802703E:
@@ -50340,8 +50340,8 @@ _0802703E:
pop {r0}
bx r0
.align 2, 0
-_08027050: .4byte gUnknown_02024BEC
-_08027054: .4byte gUnknown_02024C07
+_08027050: .4byte gBattleMoveDamage
+_08027054: .4byte gPlayerMonIndex
_08027058: .4byte gUnknown_02024C0C
_0802705C: .4byte gBitTable
_08027060: .4byte gUnknown_02024C10
@@ -50354,7 +50354,7 @@ sub_8027064: @ 8027064
mov r6, r9
mov r5, r8
push {r5-r7}
- ldr r4, _08027090 @ =gUnknown_02024C07
+ ldr r4, _08027090 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -50370,7 +50370,7 @@ sub_8027064: @ 8027064
ldr r0, _08027098 @ =gPlayerParty
b _080270AC
.align 2, 0
-_08027090: .4byte gUnknown_02024C07
+_08027090: .4byte gPlayerMonIndex
_08027094: .4byte gUnknown_02024A6A
_08027098: .4byte gPlayerParty
_0802709C:
@@ -50384,7 +50384,7 @@ _0802709C:
ldr r0, _080270D4 @ =gEnemyParty
_080270AC:
adds r5, r1, r0
- ldr r4, _080270D8 @ =gUnknown_02024C08
+ ldr r4, _080270D8 @ =gEnemyMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -50402,7 +50402,7 @@ _080270AC:
.align 2, 0
_080270D0: .4byte gUnknown_02024A6A
_080270D4: .4byte gEnemyParty
-_080270D8: .4byte gUnknown_02024C08
+_080270D8: .4byte gEnemyMonIndex
_080270DC: .4byte gPlayerParty
_080270E0:
ldr r1, _0802714C @ =gUnknown_02024A6A
@@ -50435,7 +50435,7 @@ _080270F0:
movs r1, 0
bl GetMonData
adds r7, r0, 0
- ldr r5, _08027154 @ =gUnknown_02024C08
+ ldr r5, _08027154 @ =gEnemyMonIndex
ldrb r0, [r5]
movs r6, 0x58
muls r0, r6
@@ -50457,7 +50457,7 @@ _080270F0:
.align 2, 0
_0802714C: .4byte gUnknown_02024A6A
_08027150: .4byte gEnemyParty
-_08027154: .4byte gUnknown_02024C08
+_08027154: .4byte gEnemyMonIndex
_08027158: .4byte gBattleMons
_0802715C: .4byte gUnknown_02024C10
_08027160: .4byte gUnknown_081D98C9
@@ -50534,7 +50534,7 @@ _080271F8:
muls r2, r6
adds r2, r4
ldr r1, _0802722C @ =gBitTable
- ldr r0, _08027230 @ =gUnknown_02024C07
+ ldr r0, _08027230 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 2
adds r0, r1
@@ -50557,7 +50557,7 @@ _0802721C:
bx r0
.align 2, 0
_0802722C: .4byte gBitTable
-_08027230: .4byte gUnknown_02024C07
+_08027230: .4byte gPlayerMonIndex
_08027234: .4byte gUnknown_02024C10
thumb_func_end sub_8027064
@@ -50603,7 +50603,7 @@ _08027288: .4byte gUnknown_02024A60
_0802728C: .4byte gBattleMons
_08027290:
ldr r4, _0802732C @ =gUnknown_02024A60
- ldr r5, _08027330 @ =gUnknown_02024C07
+ ldr r5, _08027330 @ =gPlayerMonIndex
ldrb r0, [r5]
strb r0, [r4]
ldr r6, _08027334 @ =gUnknown_02024C0C
@@ -50678,7 +50678,7 @@ _08027324:
bx r0
.align 2, 0
_0802732C: .4byte gUnknown_02024A60
-_08027330: .4byte gUnknown_02024C07
+_08027330: .4byte gPlayerMonIndex
_08027334: .4byte gUnknown_02024C0C
_08027338: .4byte gBitTable
_0802733C: .4byte gBattleMons
@@ -50690,7 +50690,7 @@ _08027344: .4byte gUnknown_02024C10
sub_8027348: @ 8027348
push {r4-r6,lr}
ldr r6, _08027378 @ =gUnknown_02024C80
- ldr r4, _0802737C @ =gUnknown_02024C07
+ ldr r4, _0802737C @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_get_per_side_status
movs r5, 0x1
@@ -50703,7 +50703,7 @@ sub_8027348: @ 8027348
ldrb r0, [r0, 0x2]
cmp r0, 0
beq _08027388
- ldr r2, _08027380 @ =gUnknown_02024C68
+ ldr r2, _08027380 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x20
orrs r0, r1
@@ -50713,8 +50713,8 @@ sub_8027348: @ 8027348
b _080273C0
.align 2, 0
_08027378: .4byte gUnknown_02024C80
-_0802737C: .4byte gUnknown_02024C07
-_08027380: .4byte gUnknown_02024C68
+_0802737C: .4byte gPlayerMonIndex
+_08027380: .4byte gBattleMoveFlags
_08027384: .4byte gUnknown_02024D1E
_08027388:
ldrb r0, [r4]
@@ -50761,7 +50761,7 @@ _080273D8: .4byte gUnknown_02024C10
atk9A_setincreasedcriticalchance: @ 80273DC
push {lr}
ldr r1, _0802740C @ =gBattleMons
- ldr r0, _08027410 @ =gUnknown_02024C07
+ ldr r0, _08027410 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -50774,7 +50774,7 @@ atk9A_setincreasedcriticalchance: @ 80273DC
ands r2, r3
cmp r2, 0
beq _0802741C
- ldr r2, _08027414 @ =gUnknown_02024C68
+ ldr r2, _08027414 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x20
orrs r0, r1
@@ -50785,8 +50785,8 @@ atk9A_setincreasedcriticalchance: @ 80273DC
b _08027424
.align 2, 0
_0802740C: .4byte gBattleMons
-_08027410: .4byte gUnknown_02024C07
-_08027414: .4byte gUnknown_02024C68
+_08027410: .4byte gPlayerMonIndex
+_08027414: .4byte gBattleMoveFlags
_08027418: .4byte gUnknown_02024D1E
_0802741C:
orrs r1, r3
@@ -50819,7 +50819,7 @@ atk9B_transformdataexecution: @ 8027438
adds r0, 0x1
str r0, [r1]
ldr r7, _0802749C @ =gBattleMons
- ldr r0, _080274A0 @ =gUnknown_02024C08
+ ldr r0, _080274A0 @ =gEnemyMonIndex
mov r12, r0
ldrb r1, [r0]
movs r6, 0x58
@@ -50843,7 +50843,7 @@ atk9B_transformdataexecution: @ 8027438
cmp r2, 0
beq _080274B4
_0802747E:
- ldr r2, _080274AC @ =gUnknown_02024C68
+ ldr r2, _080274AC @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x20
orrs r0, r1
@@ -50856,13 +50856,13 @@ _08027490: .4byte gUnknown_02024BE8
_08027494: .4byte 0x0000ffff
_08027498: .4byte gUnknown_02024C10
_0802749C: .4byte gBattleMons
-_080274A0: .4byte gUnknown_02024C08
+_080274A0: .4byte gEnemyMonIndex
_080274A4: .4byte gUnknown_02024C98
_080274A8: .4byte 0x000400c0
-_080274AC: .4byte gUnknown_02024C68
+_080274AC: .4byte gBattleMoveFlags
_080274B0: .4byte gUnknown_02024D1E
_080274B4:
- ldr r3, _08027588 @ =gUnknown_02024C07
+ ldr r3, _08027588 @ =gPlayerMonIndex
ldrb r0, [r3]
adds r1, r0, 0
muls r1, r6
@@ -50970,7 +50970,7 @@ _08027564:
adds r0, r5
b _080275A6
.align 2, 0
-_08027588: .4byte gUnknown_02024C07
+_08027588: .4byte gPlayerMonIndex
_0802758C: .4byte gUnknown_02024CA8
_08027590: .4byte gUnknown_030041C0
_08027594: .4byte gUnknown_02024A60
@@ -51011,7 +51011,7 @@ _080275D4: .4byte gUnknown_02024D1E
sub_80275D8: @ 80275D8
push {r4-r7,lr}
ldr r7, _08027608 @ =gBattleMons
- ldr r6, _0802760C @ =gUnknown_02024C07
+ ldr r6, _0802760C @ =gPlayerMonIndex
ldrb r0, [r6]
movs r5, 0x58
muls r0, r5
@@ -51026,7 +51026,7 @@ _080275F2:
ldrh r0, [r3, 0x28]
cmp r0, r2
bhi _08027618
- ldr r1, _08027610 @ =gUnknown_02024BEC
+ ldr r1, _08027610 @ =gBattleMoveDamage
movs r0, 0
str r0, [r1]
ldr r1, _08027614 @ =gUnknown_02024D1E
@@ -51035,11 +51035,11 @@ _080275F2:
b _0802766C
.align 2, 0
_08027608: .4byte gBattleMons
-_0802760C: .4byte gUnknown_02024C07
-_08027610: .4byte gUnknown_02024BEC
+_0802760C: .4byte gPlayerMonIndex
+_08027610: .4byte gBattleMoveDamage
_08027614: .4byte gUnknown_02024D1E
_08027618:
- ldr r4, _0802767C @ =gUnknown_02024BEC
+ ldr r4, _0802767C @ =gBattleMoveDamage
str r1, [r4]
cmp r1, 0
bne _08027624
@@ -51091,7 +51091,7 @@ _0802766C:
pop {r0}
bx r0
.align 2, 0
-_0802767C: .4byte gUnknown_02024BEC
+_0802767C: .4byte gBattleMoveDamage
_08027680: .4byte 0xffff1fff
_08027684: .4byte gUnknown_02024CA8
_08027688: .4byte gUnknown_02024D1E
@@ -51151,7 +51151,7 @@ atk9D_copyattack: @ 80276DC
adds r7, r1, 0
strh r7, [r0]
ldr r5, _0802775C @ =gUnknown_02024C34
- ldr r6, _08027760 @ =gUnknown_02024C08
+ ldr r6, _08027760 @ =gEnemyMonIndex
ldrb r0, [r6]
lsls r0, 1
adds r0, r5
@@ -51161,7 +51161,7 @@ atk9D_copyattack: @ 80276DC
cmp r0, 0
bne _08027736
ldr r3, _08027764 @ =gBattleMons
- ldr r2, _08027768 @ =gUnknown_02024C07
+ ldr r2, _08027768 @ =gPlayerMonIndex
ldrb r1, [r2]
movs r0, 0x58
adds r4, r1, 0
@@ -51204,9 +51204,9 @@ _08027736:
_08027754: .4byte gUnknown_02024BE8
_08027758: .4byte 0x0000ffff
_0802775C: .4byte gUnknown_02024C34
-_08027760: .4byte gUnknown_02024C08
+_08027760: .4byte gEnemyMonIndex
_08027764: .4byte gBattleMons
-_08027768: .4byte gUnknown_02024C07
+_08027768: .4byte gPlayerMonIndex
_0802776C: .4byte gUnknown_02024C10
_08027770:
movs r2, 0
@@ -51254,7 +51254,7 @@ _080277AA:
adds r0, 0xC
adds r1, r0
ldr r2, _08027808 @ =gUnknown_02024C34
- ldr r3, _0802780C @ =gUnknown_02024C08
+ ldr r3, _0802780C @ =gEnemyMonIndex
ldrb r0, [r3]
lsls r0, 1
adds r0, r2
@@ -51286,7 +51286,7 @@ _080277AA:
_08027800: .4byte gUnknown_02024C10
_08027804: .4byte gUnknown_02024BE4
_08027808: .4byte gUnknown_02024C34
-_0802780C: .4byte gUnknown_02024C08
+_0802780C: .4byte gEnemyMonIndex
_08027810: .4byte gBattleMoves
_08027814:
mov r4, r9
@@ -51433,7 +51433,7 @@ _080278F8:
ldrh r0, [r4]
movs r1, 0
bl sub_801B5C0
- ldr r1, _0802795C @ =gUnknown_02024C08
+ ldr r1, _0802795C @ =gEnemyMonIndex
strb r0, [r1]
pop {r3}
mov r8, r3
@@ -51450,14 +51450,14 @@ _0802794C: .4byte gUnknown_02024C6C
_08027950: .4byte 0xfffffbff
_08027954: .4byte gUnknown_081D6BBC
_08027958: .4byte gBattleMoves
-_0802795C: .4byte gUnknown_02024C08
+_0802795C: .4byte gEnemyMonIndex
thumb_func_end sub_80278B8
thumb_func_start sub_8027960
sub_8027960: @ 8027960
- ldr r3, _08027980 @ =gUnknown_02024BEC
+ ldr r3, _08027980 @ =gBattleMoveDamage
ldr r2, _08027984 @ =gBattleMons
- ldr r0, _08027988 @ =gUnknown_02024C07
+ ldr r0, _08027988 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -51471,9 +51471,9 @@ sub_8027960: @ 8027960
str r0, [r1]
bx lr
.align 2, 0
-_08027980: .4byte gUnknown_02024BEC
+_08027980: .4byte gBattleMoveDamage
_08027984: .4byte gBattleMons
-_08027988: .4byte gUnknown_02024C07
+_08027988: .4byte gPlayerMonIndex
_0802798C: .4byte gUnknown_02024C10
thumb_func_end sub_8027960
@@ -51490,9 +51490,9 @@ _08027994:
lsls r0, r3, 2
adds r0, r3
lsls r3, r0, 1
- ldr r4, _080279D4 @ =gUnknown_02024BEC
+ ldr r4, _080279D4 @ =gBattleMoveDamage
ldr r2, _080279D8 @ =gBattleMons
- ldr r0, _080279DC @ =gUnknown_02024C07
+ ldr r0, _080279DC @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -51513,16 +51513,16 @@ _08027994:
pop {r0}
bx r0
.align 2, 0
-_080279D4: .4byte gUnknown_02024BEC
+_080279D4: .4byte gBattleMoveDamage
_080279D8: .4byte gBattleMons
-_080279DC: .4byte gUnknown_02024C07
+_080279DC: .4byte gPlayerMonIndex
_080279E0: .4byte gUnknown_02024C10
thumb_func_end atkA0_psywavedamageeffect
thumb_func_start atkA1_counterdamagecalculator
atkA1_counterdamagecalculator: @ 80279E4
push {r4-r6,lr}
- ldr r4, _08027A54 @ =gUnknown_02024C07
+ ldr r4, _08027A54 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -51553,7 +51553,7 @@ atkA1_counterdamagecalculator: @ 80279E4
ldrh r0, [r0, 0x28]
cmp r0, 0
beq _08027A98
- ldr r1, _08027A60 @ =gUnknown_02024BEC
+ ldr r1, _08027A60 @ =gBattleMoveDamage
lsls r0, r3, 1
str r0, [r1]
ldr r1, _08027A64 @ =gUnknown_02024C80
@@ -51571,20 +51571,20 @@ atkA1_counterdamagecalculator: @ 80279E4
ldrh r0, [r0, 0x28]
cmp r0, 0
beq _08027A6C
- ldr r0, _08027A68 @ =gUnknown_02024C08
+ ldr r0, _08027A68 @ =gEnemyMonIndex
strb r1, [r0]
b _08027A7C
.align 2, 0
-_08027A54: .4byte gUnknown_02024C07
+_08027A54: .4byte gPlayerMonIndex
_08027A58: .4byte gUnknown_02024D28
_08027A5C: .4byte gBattleMons
-_08027A60: .4byte gUnknown_02024BEC
+_08027A60: .4byte gBattleMoveDamage
_08027A64: .4byte gUnknown_02024C80
-_08027A68: .4byte gUnknown_02024C08
+_08027A68: .4byte gEnemyMonIndex
_08027A6C:
- ldr r2, _08027A88 @ =gUnknown_02024C08
+ ldr r2, _08027A88 @ =gEnemyMonIndex
ldr r1, _08027A8C @ =gUnknown_02024D28
- ldr r0, _08027A90 @ =gUnknown_02024C07
+ ldr r0, _08027A90 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -51597,13 +51597,13 @@ _08027A7C:
str r0, [r1]
b _08027AC8
.align 2, 0
-_08027A88: .4byte gUnknown_02024C08
+_08027A88: .4byte gEnemyMonIndex
_08027A8C: .4byte gUnknown_02024D28
-_08027A90: .4byte gUnknown_02024C07
+_08027A90: .4byte gPlayerMonIndex
_08027A94: .4byte gUnknown_02024C10
_08027A98:
ldr r2, _08027AD0 @ =gUnknown_02024D68
- ldr r0, _08027AD4 @ =gUnknown_02024C07
+ ldr r0, _08027AD4 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -51632,14 +51632,14 @@ _08027AC8:
bx r0
.align 2, 0
_08027AD0: .4byte gUnknown_02024D68
-_08027AD4: .4byte gUnknown_02024C07
+_08027AD4: .4byte gPlayerMonIndex
_08027AD8: .4byte gUnknown_02024C10
thumb_func_end atkA1_counterdamagecalculator
thumb_func_start atkA2_mirrorcoatdamagecalculator
atkA2_mirrorcoatdamagecalculator: @ 8027ADC
push {r4-r6,lr}
- ldr r4, _08027B4C @ =gUnknown_02024C07
+ ldr r4, _08027B4C @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -51671,7 +51671,7 @@ atkA2_mirrorcoatdamagecalculator: @ 8027ADC
ldrh r0, [r0, 0x28]
cmp r0, 0
beq _08027B90
- ldr r1, _08027B58 @ =gUnknown_02024BEC
+ ldr r1, _08027B58 @ =gBattleMoveDamage
lsls r0, r3, 1
str r0, [r1]
ldr r1, _08027B5C @ =gUnknown_02024C80
@@ -51689,20 +51689,20 @@ atkA2_mirrorcoatdamagecalculator: @ 8027ADC
ldrh r0, [r0, 0x28]
cmp r0, 0
beq _08027B64
- ldr r0, _08027B60 @ =gUnknown_02024C08
+ ldr r0, _08027B60 @ =gEnemyMonIndex
strb r1, [r0]
b _08027B74
.align 2, 0
-_08027B4C: .4byte gUnknown_02024C07
+_08027B4C: .4byte gPlayerMonIndex
_08027B50: .4byte gUnknown_02024D28
_08027B54: .4byte gBattleMons
-_08027B58: .4byte gUnknown_02024BEC
+_08027B58: .4byte gBattleMoveDamage
_08027B5C: .4byte gUnknown_02024C80
-_08027B60: .4byte gUnknown_02024C08
+_08027B60: .4byte gEnemyMonIndex
_08027B64:
- ldr r2, _08027B80 @ =gUnknown_02024C08
+ ldr r2, _08027B80 @ =gEnemyMonIndex
ldr r1, _08027B84 @ =gUnknown_02024D28
- ldr r0, _08027B88 @ =gUnknown_02024C07
+ ldr r0, _08027B88 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 4
adds r0, r1
@@ -51715,13 +51715,13 @@ _08027B74:
str r0, [r1]
b _08027BC0
.align 2, 0
-_08027B80: .4byte gUnknown_02024C08
+_08027B80: .4byte gEnemyMonIndex
_08027B84: .4byte gUnknown_02024D28
-_08027B88: .4byte gUnknown_02024C07
+_08027B88: .4byte gPlayerMonIndex
_08027B8C: .4byte gUnknown_02024C10
_08027B90:
ldr r2, _08027BC8 @ =gUnknown_02024D68
- ldr r0, _08027BCC @ =gUnknown_02024C07
+ ldr r0, _08027BCC @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r0, r1, 2
adds r0, r1
@@ -51750,7 +51750,7 @@ _08027BC0:
bx r0
.align 2, 0
_08027BC8: .4byte gUnknown_02024D68
-_08027BCC: .4byte gUnknown_02024C07
+_08027BCC: .4byte gPlayerMonIndex
_08027BD0: .4byte gUnknown_02024C10
thumb_func_end atkA2_mirrorcoatdamagecalculator
@@ -51762,7 +51762,7 @@ atkA3_disablelastusedattack: @ 8027BD4
push {r6,r7}
movs r4, 0
ldr r2, _08027CD4 @ =gBattleMons
- ldr r3, _08027CD8 @ =gUnknown_02024C08
+ ldr r3, _08027CD8 @ =gEnemyMonIndex
ldrb r1, [r3]
movs r0, 0x58
muls r0, r1
@@ -51887,7 +51887,7 @@ _08027C28:
b _08027D06
.align 2, 0
_08027CD4: .4byte gBattleMons
-_08027CD8: .4byte gUnknown_02024C08
+_08027CD8: .4byte gEnemyMonIndex
_08027CDC: .4byte gUnknown_02024C34
_08027CE0: .4byte gUnknown_02024CA8
_08027CE4: .4byte gUnknown_030041C0
@@ -51926,7 +51926,7 @@ atkA4_setencore: @ 8027D18
push {r5-r7}
movs r5, 0
ldr r3, _08027E0C @ =gBattleMons
- ldr r4, _08027E10 @ =gUnknown_02024C08
+ ldr r4, _08027E10 @ =gEnemyMonIndex
ldrb r1, [r4]
movs r0, 0x58
muls r0, r1
@@ -52046,7 +52046,7 @@ _08027D88:
b _08027E3A
.align 2, 0
_08027E0C: .4byte gBattleMons
-_08027E10: .4byte gUnknown_02024C08
+_08027E10: .4byte gEnemyMonIndex
_08027E14: .4byte gUnknown_02024C34
_08027E18: .4byte gUnknown_02024CA8
_08027E1C: .4byte gUnknown_02024C10
@@ -52083,7 +52083,7 @@ sub_8027E4C: @ 8027E4C
mov r6, r8
push {r6,r7}
ldr r7, _08027EEC @ =gBattleMons
- ldr r0, _08027EF0 @ =gUnknown_02024C08
+ ldr r0, _08027EF0 @ =gEnemyMonIndex
mov r8, r0
ldrb r0, [r0]
movs r6, 0x58
@@ -52098,7 +52098,7 @@ sub_8027E4C: @ 8027E4C
ands r0, r1
cmp r0, 0
bne _08027F18
- ldr r1, _08027EF4 @ =gUnknown_02024C07
+ ldr r1, _08027EF4 @ =gPlayerMonIndex
mov r12, r1
ldrb r0, [r1]
muls r0, r6
@@ -52108,7 +52108,7 @@ sub_8027E4C: @ 8027E4C
ldrh r2, [r0, 0x28]
adds r4, r2
asrs r4, 1
- ldr r5, _08027EF8 @ =gUnknown_02024BEC
+ ldr r5, _08027EF8 @ =gBattleMoveDamage
mov r9, r5
subs r2, r4
str r2, [r5]
@@ -52159,9 +52159,9 @@ sub_8027E4C: @ 8027E4C
b _08027F32
.align 2, 0
_08027EEC: .4byte gBattleMons
-_08027EF0: .4byte gUnknown_02024C08
-_08027EF4: .4byte gUnknown_02024C07
-_08027EF8: .4byte gUnknown_02024BEC
+_08027EF0: .4byte gEnemyMonIndex
+_08027EF4: .4byte gPlayerMonIndex
+_08027EF8: .4byte gBattleMoveDamage
_08027EFC: .4byte 0x02000000
_08027F00: .4byte 0x00016014
_08027F04: .4byte 0x00016015
@@ -52202,7 +52202,7 @@ sub_8027F44: @ 8027F44
mov r5, r8
push {r5-r7}
ldr r1, _08027FA8 @ =gUnknown_02024C3C
- ldr r4, _08027FAC @ =gUnknown_02024C07
+ ldr r4, _08027FAC @ =gPlayerMonIndex
ldrb r0, [r4]
lsls r0, 1
adds r2, r0, r1
@@ -52248,7 +52248,7 @@ _08027F8C:
b _08028110
.align 2, 0
_08027FA8: .4byte gUnknown_02024C3C
-_08027FAC: .4byte gUnknown_02024C07
+_08027FAC: .4byte gPlayerMonIndex
_08027FB0: .4byte 0x0000ffff
_08027FB4: .4byte gUnknown_02024D28
_08027FB8: .4byte gUnknown_02024C10
@@ -52320,7 +52320,7 @@ _0802802C:
ldr r6, _08028120 @ =gTypeEffectiveness
adds r3, r4, r6
ldr r1, _08028124 @ =gUnknown_02024C44
- ldr r2, _08028128 @ =gUnknown_02024C07
+ ldr r2, _08028128 @ =gPlayerMonIndex
ldrb r5, [r2]
lsls r0, r5, 1
adds r0, r1
@@ -52438,7 +52438,7 @@ _08028110:
.align 2, 0
_08028120: .4byte gTypeEffectiveness
_08028124: .4byte gUnknown_02024C44
-_08028128: .4byte gUnknown_02024C07
+_08028128: .4byte gPlayerMonIndex
_0802812C: .4byte gBattleMons
_08028130: .4byte 0x000003e7
_08028134: .4byte gUnknown_02024C10
@@ -52449,7 +52449,7 @@ _08028138: .4byte 0x0000014f
atkA7_setalwayshitflag: @ 802813C
push {r4,lr}
ldr r4, _08028180 @ =gUnknown_02024C98
- ldr r3, _08028184 @ =gUnknown_02024C08
+ ldr r3, _08028184 @ =gEnemyMonIndex
ldrb r1, [r3]
lsls r1, 2
adds r1, r4
@@ -52471,7 +52471,7 @@ atkA7_setalwayshitflag: @ 802813C
subs r0, r1
lsls r0, 2
adds r0, r2
- ldr r1, _0802818C @ =gUnknown_02024C07
+ ldr r1, _0802818C @ =gPlayerMonIndex
ldrb r1, [r1]
strb r1, [r0, 0x15]
ldr r1, _08028190 @ =gUnknown_02024C10
@@ -52483,9 +52483,9 @@ atkA7_setalwayshitflag: @ 802813C
bx r0
.align 2, 0
_08028180: .4byte gUnknown_02024C98
-_08028184: .4byte gUnknown_02024C08
+_08028184: .4byte gEnemyMonIndex
_08028188: .4byte gUnknown_02024CA8
-_0802818C: .4byte gUnknown_02024C07
+_0802818C: .4byte gPlayerMonIndex
_08028190: .4byte gUnknown_02024C10
thumb_func_end atkA7_setalwayshitflag
@@ -52502,7 +52502,7 @@ atkA8_copymovepermanently: @ 8028194
adds r5, r1, 0
strh r5, [r0]
ldr r3, _080282FC @ =gBattleMons
- ldr r2, _08028300 @ =gUnknown_02024C07
+ ldr r2, _08028300 @ =gPlayerMonIndex
ldrb r1, [r2]
movs r0, 0x58
adds r4, r1, 0
@@ -52521,7 +52521,7 @@ atkA8_copymovepermanently: @ 8028194
b _08028320
_080281CC:
ldr r0, _08028304 @ =gUnknown_02024C2C
- ldr r2, _08028308 @ =gUnknown_02024C08
+ ldr r2, _08028308 @ =gEnemyMonIndex
ldrb r1, [r2]
lsls r1, 1
adds r1, r0
@@ -52656,7 +52656,7 @@ _08028282:
movs r0, 0x2
strb r0, [r1, 0x1]
ldr r3, _08028304 @ =gUnknown_02024C2C
- ldr r2, _08028308 @ =gUnknown_02024C08
+ ldr r2, _08028308 @ =gEnemyMonIndex
ldrb r0, [r2]
lsls r0, 1
adds r0, r3
@@ -52679,9 +52679,9 @@ _08028282:
_080282F4: .4byte gUnknown_02024BE8
_080282F8: .4byte 0x0000ffff
_080282FC: .4byte gBattleMons
-_08028300: .4byte gUnknown_02024C07
+_08028300: .4byte gPlayerMonIndex
_08028304: .4byte gUnknown_02024C2C
-_08028308: .4byte gUnknown_02024C08
+_08028308: .4byte gEnemyMonIndex
_0802830C: .4byte gUnknown_02024BE4
_08028310: .4byte gBattleMoves
_08028314: .4byte gUnknown_02024A60
@@ -52844,7 +52844,7 @@ sub_8028420: @ 8028420
push {r5-r7}
movs r6, 0
movs r5, 0
- ldr r0, _080284B0 @ =gUnknown_02024C07
+ ldr r0, _080284B0 @ =gPlayerMonIndex
mov r9, r0
movs r1, 0x58
mov r8, r1
@@ -52895,7 +52895,7 @@ _0802848C:
adds r5, 0x1
cmp r5, 0x3
ble _0802843E
- ldr r0, _080284B0 @ =gUnknown_02024C07
+ ldr r0, _080284B0 @ =gPlayerMonIndex
ldrb r0, [r0]
adds r1, r6, 0
movs r2, 0xFD
@@ -52910,7 +52910,7 @@ _0802848C:
str r0, [r1]
b _08028524
.align 2, 0
-_080284B0: .4byte gUnknown_02024C07
+_080284B0: .4byte gPlayerMonIndex
_080284B4: .4byte gUnknown_02024A8C
_080284B8: .4byte gBitTable
_080284BC: .4byte gUnknown_02024C10
@@ -52930,7 +52930,7 @@ _080284C4:
ldr r4, _08028538 @ =gUnknown_02024BEA
ldr r2, _0802853C @ =gBattleMons
lsls r1, r5, 1
- ldr r0, _08028540 @ =gUnknown_02024C07
+ ldr r0, _08028540 @ =gPlayerMonIndex
ldrb r3, [r0]
movs r0, 0x58
muls r0, r3
@@ -52949,7 +52949,7 @@ _080284C4:
ldrh r0, [r4]
movs r1, 0
bl sub_801B5C0
- ldr r1, _08028550 @ =gUnknown_02024C08
+ ldr r1, _08028550 @ =gEnemyMonIndex
strb r0, [r1]
ldr r3, _08028554 @ =gUnknown_02024C10
ldr r2, [r3]
@@ -52976,18 +52976,18 @@ _08028524:
_08028534: .4byte gBitTable
_08028538: .4byte gUnknown_02024BEA
_0802853C: .4byte gBattleMons
-_08028540: .4byte gUnknown_02024C07
+_08028540: .4byte gPlayerMonIndex
_08028544: .4byte gUnknown_02024BE4
_08028548: .4byte gUnknown_02024C6C
_0802854C: .4byte 0xfffffbff
-_08028550: .4byte gUnknown_02024C08
+_08028550: .4byte gEnemyMonIndex
_08028554: .4byte gUnknown_02024C10
thumb_func_end sub_8028420
thumb_func_start sub_8028558
sub_8028558: @ 8028558
ldr r1, _0802857C @ =gBattleMons
- ldr r0, _08028580 @ =gUnknown_02024C07
+ ldr r0, _08028580 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r2, r0
@@ -53005,19 +53005,19 @@ sub_8028558: @ 8028558
bx lr
.align 2, 0
_0802857C: .4byte gBattleMons
-_08028580: .4byte gUnknown_02024C07
+_08028580: .4byte gPlayerMonIndex
_08028584: .4byte gUnknown_02024C10
thumb_func_end sub_8028558
thumb_func_start b_feature_update_destiny_bond
b_feature_update_destiny_bond: @ 8028588
push {r4,r5,lr}
- ldr r0, _080285D8 @ =gUnknown_02024C07
+ ldr r0, _080285D8 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
lsrs r5, r0, 24
- ldr r4, _080285DC @ =gUnknown_02024C08
+ ldr r4, _080285DC @ =gEnemyMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -53051,8 +53051,8 @@ _080285D2:
pop {r0}
bx r0
.align 2, 0
-_080285D8: .4byte gUnknown_02024C07
-_080285DC: .4byte gUnknown_02024C08
+_080285D8: .4byte gPlayerMonIndex
+_080285DC: .4byte gEnemyMonIndex
_080285E0: .4byte gBattleMons
_080285E4: .4byte gUnknown_02024C6C
thumb_func_end b_feature_update_destiny_bond
@@ -53075,7 +53075,7 @@ _080285FC: .4byte gUnknown_02024C10
atkAC_remaininghptopower: @ 8028600
push {lr}
ldr r2, _08028654 @ =gBattleMons
- ldr r0, _08028658 @ =gUnknown_02024C07
+ ldr r0, _08028658 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r1, r0
@@ -53117,7 +53117,7 @@ _0802863A:
bx r0
.align 2, 0
_08028654: .4byte gBattleMons
-_08028658: .4byte gUnknown_02024C07
+_08028658: .4byte gPlayerMonIndex
_0802865C: .4byte gUnknown_081FAD26
_08028660: .4byte gUnknown_02024DEC
_08028664: .4byte gUnknown_02024C10
@@ -53132,7 +53132,7 @@ sub_8028668: @ 8028668
push {r5-r7}
sub sp, 0x4
ldr r4, _080287F8 @ =gUnknown_02024C34
- ldr r1, _080287FC @ =gUnknown_02024C08
+ ldr r1, _080287FC @ =gEnemyMonIndex
ldrb r2, [r1]
lsls r0, r2, 1
adds r0, r4
@@ -53316,7 +53316,7 @@ _080287D2:
adds r0, 0x5
str r0, [r1]
ldr r1, _0802880C @ =gBattleMons
- ldr r0, _080287FC @ =gUnknown_02024C08
+ ldr r0, _080287FC @ =gEnemyMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -53331,7 +53331,7 @@ _080287D2:
b _08028842
.align 2, 0
_080287F8: .4byte gUnknown_02024C34
-_080287FC: .4byte gUnknown_02024C08
+_080287FC: .4byte gEnemyMonIndex
_08028800: .4byte 0x0000ffff
_08028804: .4byte gUnknown_02024C98
_08028808: .4byte 0x000400c0
@@ -53387,7 +53387,7 @@ sub_8028858: @ 8028858
_08028872:
ldr r5, _080288B0 @ =gUnknown_02024D1E
strb r7, [r5, 0x5]
- ldr r6, _080288B4 @ =gUnknown_02024C07
+ ldr r6, _080288B4 @ =gPlayerMonIndex
ldrb r0, [r6]
bl battle_side_get_owner
lsls r0, 24
@@ -53417,7 +53417,7 @@ _0802888C:
.align 2, 0
_080288AC: .4byte gUnknown_02024BE6
_080288B0: .4byte gUnknown_02024D1E
-_080288B4: .4byte gUnknown_02024C07
+_080288B4: .4byte gPlayerMonIndex
_080288B8: .4byte gEnemyParty
_080288BC: .4byte gPlayerParty
_080288C0: .4byte gBattleMons
@@ -53431,7 +53431,7 @@ _080288C4:
strb r0, [r5, 0x5]
_080288D4:
ldr r4, _08028934 @ =gUnknown_02024A60
- ldr r0, _08028938 @ =gUnknown_02024C07
+ ldr r0, _08028938 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_get_per_side_status
movs r6, 0x2
@@ -53477,7 +53477,7 @@ _080288D4:
b _08028964
.align 2, 0
_08028934: .4byte gUnknown_02024A60
-_08028938: .4byte gUnknown_02024C07
+_08028938: .4byte gPlayerMonIndex
_0802893C: .4byte 0x02000000
_08028940: .4byte 0x00016003
_08028944: .4byte gBattleTypeFlags
@@ -53518,7 +53518,7 @@ _0802896A:
cmp r5, r0
beq _08028A1E
ldr r2, _080289B4 @ =gUnknown_02024A6A
- ldr r0, _080289B8 @ =gUnknown_02024C07
+ ldr r0, _080289B8 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r0, r1, 1
adds r0, r2
@@ -53532,7 +53532,7 @@ _0802896A:
_080289AC: .4byte gUnknown_02024D1E
_080289B0: .4byte gBattleMons
_080289B4: .4byte gUnknown_02024A6A
-_080289B8: .4byte gUnknown_02024C07
+_080289B8: .4byte gPlayerMonIndex
_080289BC:
ldr r0, _080289F4 @ =gBattleTypeFlags
ldrh r1, [r0]
@@ -53593,7 +53593,7 @@ _08028A26:
strb r0, [r1, 0x5]
movs r7, 0x3F
ldr r2, _08028AB8 @ =gBattleMons
- ldr r1, _08028ABC @ =gUnknown_02024C07
+ ldr r1, _08028ABC @ =gPlayerMonIndex
ldrb r0, [r1]
movs r6, 0x58
muls r0, r6
@@ -53632,7 +53632,7 @@ _08028A26:
str r2, [r0]
_08028A7E:
ldr r4, _08028AC0 @ =gUnknown_02024A60
- ldr r0, _08028ABC @ =gUnknown_02024C07
+ ldr r0, _08028ABC @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r4]
add r1, sp, 0x4
@@ -53658,7 +53658,7 @@ _08028A7E:
.align 2, 0
_08028AB4: .4byte gUnknown_02024D1E
_08028AB8: .4byte gBattleMons
-_08028ABC: .4byte gUnknown_02024C07
+_08028ABC: .4byte gPlayerMonIndex
_08028AC0: .4byte gUnknown_02024A60
_08028AC4: .4byte gBattleTypeFlags
_08028AC8: .4byte gUnknown_02024C0C
@@ -53670,7 +53670,7 @@ _08028AD0: .4byte gUnknown_02024C10
sub_8028AD4: @ 8028AD4
push {r4-r7,lr}
ldr r7, _08028B24 @ =gBattleMons
- ldr r0, _08028B28 @ =gUnknown_02024C08
+ ldr r0, _08028B28 @ =gEnemyMonIndex
ldrb r3, [r0]
movs r6, 0x58
adds r1, r3, 0
@@ -53710,15 +53710,15 @@ _08028B06:
b _08028B5C
.align 2, 0
_08028B24: .4byte gBattleMons
-_08028B28: .4byte gUnknown_02024C08
+_08028B28: .4byte gEnemyMonIndex
_08028B2C: .4byte gUnknown_02024C98
_08028B30: .4byte 0x000400c0
_08028B34: .4byte gUnknown_02024C10
_08028B38:
orrs r2, r5
str r2, [r4]
- ldr r1, _08028B64 @ =gUnknown_02024BEC
- ldr r0, _08028B68 @ =gUnknown_02024C07
+ ldr r1, _08028B64 @ =gBattleMoveDamage
+ ldr r0, _08028B68 @ =gPlayerMonIndex
ldrb r0, [r0]
muls r0, r6
adds r0, r7
@@ -53739,15 +53739,15 @@ _08028B5C:
pop {r0}
bx r0
.align 2, 0
-_08028B64: .4byte gUnknown_02024BEC
-_08028B68: .4byte gUnknown_02024C07
+_08028B64: .4byte gBattleMoveDamage
+_08028B68: .4byte gPlayerMonIndex
_08028B6C: .4byte gUnknown_02024C10
thumb_func_end sub_8028AD4
thumb_func_start sub_8028B70
sub_8028B70: @ 8028B70
push {r4,lr}
- ldr r4, _08028BC4 @ =gUnknown_02024C07
+ ldr r4, _08028BC4 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
movs r1, 0x1
@@ -53787,7 +53787,7 @@ sub_8028B70: @ 8028B70
str r1, [r3]
b _08028BEE
.align 2, 0
-_08028BC4: .4byte gUnknown_02024C07
+_08028BC4: .4byte gPlayerMonIndex
_08028BC8: .4byte gUnknown_02024C80
_08028BCC: .4byte gUnknown_02024D68
_08028BD0: .4byte gUnknown_02024C10
@@ -53817,7 +53817,7 @@ _08028BF8: .4byte gUnknown_02024C10
thumb_func_start sub_8028BFC
sub_8028BFC: @ 8028BFC
ldr r1, _08028C20 @ =gBattleMons
- ldr r0, _08028C24 @ =gUnknown_02024C08
+ ldr r0, _08028C24 @ =gEnemyMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r2, r0
@@ -53835,7 +53835,7 @@ sub_8028BFC: @ 8028BFC
bx lr
.align 2, 0
_08028C20: .4byte gBattleMons
-_08028C24: .4byte gUnknown_02024C08
+_08028C24: .4byte gEnemyMonIndex
_08028C28: .4byte gUnknown_02024C10
thumb_func_end sub_8028BFC
@@ -53849,7 +53849,7 @@ atkB2_setperishsong: @ 8028C2C
movs r3, 0
ldr r0, _08028C70 @ =gUnknown_02024A68
adds r7, r0, 0
- ldr r0, _08028C74 @ =gUnknown_02024C07
+ ldr r0, _08028C74 @ =gPlayerMonIndex
mov r8, r0
ldrb r1, [r7]
cmp r6, r1
@@ -53879,7 +53879,7 @@ _08028C6C:
b _08028C8C
.align 2, 0
_08028C70: .4byte gUnknown_02024A68
-_08028C74: .4byte gUnknown_02024C07
+_08028C74: .4byte gPlayerMonIndex
_08028C78: .4byte gBattleMons
_08028C7C: .4byte gUnknown_02024CA8
_08028C80: .4byte gUnknown_02024C98
@@ -53942,13 +53942,13 @@ atkB3_rolloutdamagecalculation: @ 8028CE4
mov r7, r9
mov r6, r8
push {r6,r7}
- ldr r0, _08028D08 @ =gUnknown_02024C68
+ ldr r0, _08028D08 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
cmp r0, 0
beq _08028D18
- ldr r0, _08028D0C @ =gUnknown_02024C07
+ ldr r0, _08028D0C @ =gPlayerMonIndex
ldrb r0, [r0]
bl b_cancel_multi_turn_move_maybe
ldr r1, _08028D10 @ =gUnknown_02024C10
@@ -53956,13 +53956,13 @@ atkB3_rolloutdamagecalculation: @ 8028CE4
str r0, [r1]
b _08028E30
.align 2, 0
-_08028D08: .4byte gUnknown_02024C68
-_08028D0C: .4byte gUnknown_02024C07
+_08028D08: .4byte gBattleMoveFlags
+_08028D0C: .4byte gPlayerMonIndex
_08028D10: .4byte gUnknown_02024C10
_08028D14: .4byte BattleScript_1D6F74
_08028D18:
ldr r2, _08028E3C @ =gBattleMons
- ldr r1, _08028E40 @ =gUnknown_02024C07
+ ldr r1, _08028E40 @ =gPlayerMonIndex
ldrb r3, [r1]
movs r5, 0x58
adds r0, r3, 0
@@ -54115,7 +54115,7 @@ _08028E30:
bx r0
.align 2, 0
_08028E3C: .4byte gBattleMons
-_08028E40: .4byte gUnknown_02024C07
+_08028E40: .4byte gPlayerMonIndex
_08028E44: .4byte gUnknown_02024CA8
_08028E48: .4byte gUnknown_02024BE6
_08028E4C: .4byte gUnknown_02024C54
@@ -54129,7 +54129,7 @@ _08028E5C: .4byte gUnknown_02024C10
atkB4_jumpifconfusedandattackmaxed: @ 8028E60
push {r4,r5,lr}
ldr r5, _08028EB0 @ =gBattleMons
- ldr r0, _08028EB4 @ =gUnknown_02024C08
+ ldr r0, _08028EB4 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
adds r3, r1, 0
@@ -54168,7 +54168,7 @@ atkB4_jumpifconfusedandattackmaxed: @ 8028E60
b _08028EC2
.align 2, 0
_08028EB0: .4byte gBattleMons
-_08028EB4: .4byte gUnknown_02024C08
+_08028EB4: .4byte gEnemyMonIndex
_08028EB8: .4byte gUnknown_02024C10
_08028EBC:
ldr r0, [r4]
@@ -54183,14 +54183,14 @@ _08028EC2:
thumb_func_start sub_8028EC8
sub_8028EC8: @ 8028EC8
push {r4,r5,lr}
- ldr r0, _08028EF0 @ =gUnknown_02024C68
+ ldr r0, _08028EF0 @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
cmp r0, 0
beq _08028F04
ldr r2, _08028EF4 @ =gUnknown_02024CA8
- ldr r0, _08028EF8 @ =gUnknown_02024C07
+ ldr r0, _08028EF8 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r0, r1, 3
subs r0, r1
@@ -54203,14 +54203,14 @@ sub_8028EC8: @ 8028EC8
str r0, [r1]
b _08028F5C
.align 2, 0
-_08028EF0: .4byte gUnknown_02024C68
+_08028EF0: .4byte gBattleMoveFlags
_08028EF4: .4byte gUnknown_02024CA8
-_08028EF8: .4byte gUnknown_02024C07
+_08028EF8: .4byte gPlayerMonIndex
_08028EFC: .4byte gUnknown_02024C10
_08028F00: .4byte BattleScript_1D6F74
_08028F04:
ldr r5, _08028F64 @ =gUnknown_02024CA8
- ldr r4, _08028F68 @ =gUnknown_02024C07
+ ldr r4, _08028F68 @ =gPlayerMonIndex
ldrb r1, [r4]
lsls r0, r1, 3
subs r0, r1
@@ -54262,7 +54262,7 @@ _08028F5C:
bx r0
.align 2, 0
_08028F64: .4byte gUnknown_02024CA8
-_08028F68: .4byte gUnknown_02024C07
+_08028F68: .4byte gPlayerMonIndex
_08028F6C: .4byte gUnknown_02024DEC
_08028F70: .4byte gBattleMoves
_08028F74: .4byte gUnknown_02024BE6
@@ -54284,7 +54284,7 @@ atkB6_happinesstodamagecalculation: @ 8028F7C
bne _08028FBC
ldr r4, _08028FB0 @ =gUnknown_02024DEC
ldr r2, _08028FB4 @ =gBattleMons
- ldr r0, _08028FB8 @ =gUnknown_02024C07
+ ldr r0, _08028FB8 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -54297,11 +54297,11 @@ _08028FA8: .4byte gBattleMoves
_08028FAC: .4byte gUnknown_02024BE6
_08028FB0: .4byte gUnknown_02024DEC
_08028FB4: .4byte gBattleMons
-_08028FB8: .4byte gUnknown_02024C07
+_08028FB8: .4byte gPlayerMonIndex
_08028FBC:
ldr r4, _08028FF0 @ =gUnknown_02024DEC
ldr r2, _08028FF4 @ =gBattleMons
- ldr r0, _08028FF8 @ =gUnknown_02024C07
+ ldr r0, _08028FF8 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -54327,7 +54327,7 @@ _08028FD2:
.align 2, 0
_08028FF0: .4byte gUnknown_02024DEC
_08028FF4: .4byte gBattleMons
-_08028FF8: .4byte gUnknown_02024C07
+_08028FF8: .4byte gPlayerMonIndex
_08028FFC: .4byte gUnknown_02024C10
thumb_func_end atkB6_happinesstodamagecalculation
@@ -54364,9 +54364,9 @@ _0802902C:
.align 2, 0
_08029038: .4byte gUnknown_02024DEC
_0802903C:
- ldr r3, _08029068 @ =gUnknown_02024BEC
+ ldr r3, _08029068 @ =gBattleMoveDamage
ldr r2, _0802906C @ =gBattleMons
- ldr r0, _08029070 @ =gUnknown_02024C08
+ ldr r0, _08029070 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -54389,14 +54389,14 @@ _0802905E:
ldr r0, _08029078 @ =BattleScript_1D6F44
b _080290AC
.align 2, 0
-_08029068: .4byte gUnknown_02024BEC
+_08029068: .4byte gBattleMoveDamage
_0802906C: .4byte gBattleMons
-_08029070: .4byte gUnknown_02024C08
+_08029070: .4byte gEnemyMonIndex
_08029074: .4byte gUnknown_02024C10
_08029078: .4byte BattleScript_1D6F44
_0802907C:
ldr r2, _08029098 @ =gBattleMons
- ldr r0, _0802909C @ =gUnknown_02024C08
+ ldr r0, _0802909C @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -54410,7 +54410,7 @@ _0802907C:
b _080290AC
.align 2, 0
_08029098: .4byte gBattleMons
-_0802909C: .4byte gUnknown_02024C08
+_0802909C: .4byte gEnemyMonIndex
_080290A0: .4byte gUnknown_02024C10
_080290A4: .4byte BattleScript_1D83B5
_080290A8:
@@ -54429,7 +54429,7 @@ _080290B8: .4byte BattleScript_1D839B
thumb_func_start sub_80290BC
sub_80290BC: @ 80290BC
push {r4-r6,lr}
- ldr r4, _080290F0 @ =gUnknown_02024C07
+ ldr r4, _080290F0 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_get_per_side_status
ldr r6, _080290F4 @ =gUnknown_02024C7A
@@ -54443,7 +54443,7 @@ sub_80290BC: @ 80290BC
ands r0, r1
cmp r0, 0
beq _08029100
- ldr r2, _080290F8 @ =gUnknown_02024C68
+ ldr r2, _080290F8 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -54453,9 +54453,9 @@ sub_80290BC: @ 80290BC
strb r0, [r1, 0x5]
b _08029132
.align 2, 0
-_080290F0: .4byte gUnknown_02024C07
+_080290F0: .4byte gPlayerMonIndex
_080290F4: .4byte gUnknown_02024C7A
-_080290F8: .4byte gUnknown_02024C68
+_080290F8: .4byte gBattleMoveFlags
_080290FC: .4byte gUnknown_02024D1E
_08029100:
ldrb r0, [r4]
@@ -54584,7 +54584,7 @@ _080291E4:
strb r3, [r1, 0x4]
movs r0, 0xFF
strb r0, [r1, 0x5]
- ldr r1, _08029258 @ =gUnknown_02024C08
+ ldr r1, _08029258 @ =gEnemyMonIndex
strb r2, [r1]
ldr r0, _0802925C @ =gUnknown_02024A68
ldrb r3, [r0]
@@ -54594,7 +54594,7 @@ _080291E4:
cmp r2, r3
bcs _0802923C
adds r4, r6, 0
- ldr r0, _08029264 @ =gUnknown_02024C07
+ ldr r0, _08029264 @ =gPlayerMonIndex
ldrb r5, [r0]
ldr r1, _08029268 @ =gBitTable
mov r12, r1
@@ -54631,10 +54631,10 @@ _0802923C:
.align 2, 0
_08029250: .4byte gUnknown_02024DEC
_08029254: .4byte gUnknown_030041C0
-_08029258: .4byte gUnknown_02024C08
+_08029258: .4byte gEnemyMonIndex
_0802925C: .4byte gUnknown_02024A68
_08029260: .4byte gUnknown_02024C10
-_08029264: .4byte gUnknown_02024C07
+_08029264: .4byte gPlayerMonIndex
_08029268: .4byte gBitTable
_0802926C: .4byte gUnknown_02024C0C
thumb_func_end atkB9_magnitudedamagecalculation
@@ -54650,7 +54650,7 @@ sub_8029270: @ 8029270
ldrb r0, [r0]
cmp r0, 0x1
bne _080292A0
- ldr r0, _08029298 @ =gUnknown_02024C07
+ ldr r0, _08029298 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -54660,12 +54660,12 @@ sub_8029270: @ 8029270
b _080292BA
.align 2, 0
_08029294: .4byte gUnknown_02024C0E
-_08029298: .4byte gUnknown_02024C07
+_08029298: .4byte gPlayerMonIndex
_0802929C:
movs r0, 0
b _080292BA
_080292A0:
- ldr r0, _080292B4 @ =gUnknown_02024C07
+ ldr r0, _080292B4 @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -54674,22 +54674,22 @@ _080292A0:
movs r0, 0x3
b _080292BA
.align 2, 0
-_080292B4: .4byte gUnknown_02024C07
+_080292B4: .4byte gPlayerMonIndex
_080292B8:
movs r0, 0x2
_080292BA:
bl battle_get_side_with_given_state
- ldr r1, _0802937C @ =gUnknown_02024C08
+ ldr r1, _0802937C @ =gEnemyMonIndex
strb r0, [r1]
ldr r0, _08029380 @ =gUnknown_02024C18
- ldr r1, _0802937C @ =gUnknown_02024C08
+ ldr r1, _0802937C @ =gEnemyMonIndex
mov r9, r1
ldrb r3, [r1]
adds r0, r3, r0
ldrb r0, [r0]
cmp r0, 0
bne _080293BC
- ldr r5, _08029384 @ =gUnknown_02024C07
+ ldr r5, _08029384 @ =gPlayerMonIndex
ldr r0, _08029388 @ =0x02000000
ldr r2, _0802938C @ =0x00016010
adds r1, r3, r2
@@ -54778,9 +54778,9 @@ _0802935A:
str r0, [r7]
b _080293D6
.align 2, 0
-_0802937C: .4byte gUnknown_02024C08
+_0802937C: .4byte gEnemyMonIndex
_08029380: .4byte gUnknown_02024C18
-_08029384: .4byte gUnknown_02024C07
+_08029384: .4byte gPlayerMonIndex
_08029388: .4byte 0x02000000
_0802938C: .4byte 0x00016010
_08029390: .4byte gBattleMons
@@ -54829,7 +54829,7 @@ sub_80293E8: @ 80293E8
ands r0, r1
cmp r0, 0
beq _08029414
- ldr r2, _0802940C @ =gUnknown_02024C68
+ ldr r2, _0802940C @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -54840,7 +54840,7 @@ sub_80293E8: @ 80293E8
b _08029426
.align 2, 0
_08029408: .4byte gBattleWeather
-_0802940C: .4byte gUnknown_02024C68
+_0802940C: .4byte gBattleMoveFlags
_08029410: .4byte gUnknown_02024D1E
_08029414:
movs r0, 0x20
@@ -54869,7 +54869,7 @@ _0802943C: .4byte gUnknown_02024C10
atkBC_maxattackhalvehp: @ 8029440
push {r4,r5,lr}
ldr r5, _0802948C @ =gBattleMons
- ldr r4, _08029490 @ =gUnknown_02024C07
+ ldr r4, _08029490 @ =gPlayerMonIndex
ldrb r0, [r4]
movs r3, 0x58
muls r0, r3
@@ -54889,7 +54889,7 @@ _08029458:
bls _0802949C
movs r0, 0xC
strb r0, [r2, 0x19]
- ldr r1, _08029494 @ =gUnknown_02024BEC
+ ldr r1, _08029494 @ =gBattleMoveDamage
ldrb r0, [r4]
muls r0, r3
adds r0, r5
@@ -54908,8 +54908,8 @@ _08029480:
b _080294B6
.align 2, 0
_0802948C: .4byte gBattleMons
-_08029490: .4byte gUnknown_02024C07
-_08029494: .4byte gUnknown_02024BEC
+_08029490: .4byte gPlayerMonIndex
+_08029494: .4byte gBattleMoveDamage
_08029498: .4byte gUnknown_02024C10
_0802949C:
ldr r3, _080294BC @ =gUnknown_02024C10
@@ -54938,10 +54938,10 @@ atkBD_copyfoestats: @ 80294C0
push {r4-r7,lr}
movs r2, 0
ldr r7, _080294F8 @ =gUnknown_02024C10
- ldr r6, _080294FC @ =gUnknown_02024C07
+ ldr r6, _080294FC @ =gPlayerMonIndex
movs r4, 0x58
ldr r3, _08029500 @ =gUnknown_02024A98
- ldr r5, _08029504 @ =gUnknown_02024C08
+ ldr r5, _08029504 @ =gEnemyMonIndex
_080294CE:
ldrb r0, [r6]
adds r1, r0, 0
@@ -54965,16 +54965,16 @@ _080294CE:
bx r0
.align 2, 0
_080294F8: .4byte gUnknown_02024C10
-_080294FC: .4byte gUnknown_02024C07
+_080294FC: .4byte gPlayerMonIndex
_08029500: .4byte gUnknown_02024A98
-_08029504: .4byte gUnknown_02024C08
+_08029504: .4byte gEnemyMonIndex
thumb_func_end atkBD_copyfoestats
thumb_func_start atkBE_breakfree
atkBE_breakfree: @ 8029508
push {r4,r5,lr}
ldr r1, _08029570 @ =gBattleMons
- ldr r5, _08029574 @ =gUnknown_02024C07
+ ldr r5, _08029574 @ =gPlayerMonIndex
ldrb r2, [r5]
movs r0, 0x58
muls r0, r2
@@ -54989,7 +54989,7 @@ atkBE_breakfree: @ 8029508
ldr r0, _08029578 @ =0xffff1fff
ands r1, r0
str r1, [r3]
- ldr r1, _0802957C @ =gUnknown_02024C08
+ ldr r1, _0802957C @ =gEnemyMonIndex
ldr r2, _08029580 @ =0x02000000
ldrb r0, [r5]
ldr r3, _08029584 @ =0x00016020
@@ -55024,9 +55024,9 @@ atkBE_breakfree: @ 8029508
b _0802963E
.align 2, 0
_08029570: .4byte gBattleMons
-_08029574: .4byte gUnknown_02024C07
+_08029574: .4byte gPlayerMonIndex
_08029578: .4byte 0xffff1fff
-_0802957C: .4byte gUnknown_02024C08
+_0802957C: .4byte gEnemyMonIndex
_08029580: .4byte 0x02000000
_08029584: .4byte 0x00016020
_08029588: .4byte gUnknown_030041C0
@@ -55119,7 +55119,7 @@ _08029648: .4byte gUnknown_02024C10
thumb_func_start sub_802964C
sub_802964C: @ 802964C
ldr r1, _08029670 @ =gBattleMons
- ldr r0, _08029674 @ =gUnknown_02024C07
+ ldr r0, _08029674 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r2, r0
@@ -55137,7 +55137,7 @@ sub_802964C: @ 802964C
bx lr
.align 2, 0
_08029670: .4byte gBattleMons
-_08029674: .4byte gUnknown_02024C07
+_08029674: .4byte gPlayerMonIndex
_08029678: .4byte gUnknown_02024C10
thumb_func_end sub_802964C
@@ -55145,8 +55145,8 @@ _08029678: .4byte gUnknown_02024C10
atkC0_recoverbasedonsunlight: @ 802967C
push {r4-r7,lr}
sub sp, 0x4
- ldr r1, _080296E8 @ =gUnknown_02024C08
- ldr r5, _080296EC @ =gUnknown_02024C07
+ ldr r1, _080296E8 @ =gEnemyMonIndex
+ ldr r5, _080296EC @ =gPlayerMonIndex
ldrb r0, [r5]
strb r0, [r1]
ldr r7, _080296F0 @ =gBattleMons
@@ -55183,9 +55183,9 @@ atkC0_recoverbasedonsunlight: @ 802967C
cmp r0, 0
beq _080296FC
_080296CE:
- ldr r3, _080296F8 @ =gUnknown_02024BEC
+ ldr r3, _080296F8 @ =gBattleMoveDamage
ldr r2, _080296F0 @ =gBattleMons
- ldr r0, _080296EC @ =gUnknown_02024C07
+ ldr r0, _080296EC @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -55196,18 +55196,18 @@ _080296CE:
adds r1, r3, 0
b _08029736
.align 2, 0
-_080296E8: .4byte gUnknown_02024C08
-_080296EC: .4byte gUnknown_02024C07
+_080296E8: .4byte gEnemyMonIndex
+_080296EC: .4byte gPlayerMonIndex
_080296F0: .4byte gBattleMons
_080296F4: .4byte gBattleWeather
-_080296F8: .4byte gUnknown_02024BEC
+_080296F8: .4byte gBattleMoveDamage
_080296FC:
ldrh r1, [r4]
movs r0, 0x60
ands r0, r1
cmp r0, 0
beq _08029728
- ldr r4, _08029724 @ =gUnknown_02024BEC
+ ldr r4, _08029724 @ =gBattleMoveDamage
ldrb r0, [r5]
muls r0, r6
adds r0, r7
@@ -55221,9 +55221,9 @@ _080296FC:
adds r1, r4, 0
b _08029736
.align 2, 0
-_08029724: .4byte gUnknown_02024BEC
+_08029724: .4byte gBattleMoveDamage
_08029728:
- ldr r1, _08029754 @ =gUnknown_02024BEC
+ ldr r1, _08029754 @ =gBattleMoveDamage
ldrb r0, [r5]
muls r0, r6
adds r0, r7
@@ -55247,7 +55247,7 @@ _08029742:
str r0, [r1]
b _08029776
.align 2, 0
-_08029754: .4byte gUnknown_02024BEC
+_08029754: .4byte gBattleMoveDamage
_08029758: .4byte gUnknown_02024C10
_0802975C:
ldr r3, _08029780 @ =gUnknown_02024C10
@@ -55280,7 +55280,7 @@ sub_8029784: @ 8029784
mov r5, r8
push {r5-r7}
ldr r2, _08029894 @ =gBattleMons
- ldr r0, _08029898 @ =gUnknown_02024C07
+ ldr r0, _08029898 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
adds r4, r1, 0
@@ -55411,7 +55411,7 @@ _08029876:
bx r0
.align 2, 0
_08029894: .4byte gBattleMons
-_08029898: .4byte gUnknown_02024C07
+_08029898: .4byte gPlayerMonIndex
_0802989C: .4byte gUnknown_02024DEC
_080298A0: .4byte 0x02000000
_080298A4: .4byte 0x0001601c
@@ -55423,7 +55423,7 @@ atkC2_selectnexttarget: @ 80298AC
push {r4-r7,lr}
mov r7, r8
push {r7}
- ldr r0, _08029908 @ =gUnknown_02024C08
+ ldr r0, _08029908 @ =gEnemyMonIndex
movs r1, 0
strb r1, [r0]
ldr r1, _0802990C @ =gUnknown_02024A68
@@ -55434,7 +55434,7 @@ atkC2_selectnexttarget: @ 80298AC
cmp r1, 0
beq _080298F6
adds r3, r6, 0
- ldr r0, _08029914 @ =gUnknown_02024C07
+ ldr r0, _08029914 @ =gPlayerMonIndex
ldrb r5, [r0]
ldr r0, _08029918 @ =gBitTable
mov r12, r0
@@ -55470,10 +55470,10 @@ _080298F6:
pop {r0}
bx r0
.align 2, 0
-_08029908: .4byte gUnknown_02024C08
+_08029908: .4byte gEnemyMonIndex
_0802990C: .4byte gUnknown_02024A68
_08029910: .4byte gUnknown_02024C10
-_08029914: .4byte gUnknown_02024C07
+_08029914: .4byte gPlayerMonIndex
_08029918: .4byte gBitTable
_0802991C: .4byte gUnknown_02024C0C
thumb_func_end atkC2_selectnexttarget
@@ -55488,7 +55488,7 @@ atkC3_setfutureattack: @ 8029920
sub sp, 0x10
ldr r0, _08029958 @ =gUnknown_02024DBC
mov r8, r0
- ldr r7, _0802995C @ =gUnknown_02024C08
+ ldr r7, _0802995C @ =gEnemyMonIndex
ldrb r1, [r7]
adds r0, r1, r0
ldrb r6, [r0]
@@ -55510,7 +55510,7 @@ atkC3_setfutureattack: @ 8029920
b _08029A2E
.align 2, 0
_08029958: .4byte gUnknown_02024DBC
-_0802995C: .4byte gUnknown_02024C08
+_0802995C: .4byte gEnemyMonIndex
_08029960: .4byte gUnknown_02024C10
_08029964:
lsls r1, 1
@@ -55525,7 +55525,7 @@ _08029964:
adds r0, 0x4
ldrb r4, [r7]
adds r0, r4
- ldr r5, _08029A08 @ =gUnknown_02024C07
+ ldr r5, _08029A08 @ =gPlayerMonIndex
ldrb r1, [r5]
strb r1, [r0]
ldrb r0, [r7]
@@ -55593,7 +55593,7 @@ _080299F2:
b _08029A26
.align 2, 0
_08029A04: .4byte gUnknown_02024BE6
-_08029A08: .4byte gUnknown_02024C07
+_08029A08: .4byte gPlayerMonIndex
_08029A0C: .4byte gUnknown_02024C7A
_08029A10: .4byte gBattleMons
_08029A14: .4byte gUnknown_02024D28
@@ -55628,7 +55628,7 @@ atkC4_802B910: @ 8029A48
mov r7, r9
mov r6, r8
push {r6,r7}
- ldr r0, _08029A8C @ =gUnknown_02024C07
+ ldr r0, _08029A8C @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -55638,7 +55638,7 @@ atkC4_802B910: @ 8029A48
ldr r7, _08029A94 @ =gPlayerParty
_08029A62:
ldr r2, _08029A98 @ =gBattleMons
- ldr r0, _08029A9C @ =gUnknown_02024C08
+ ldr r0, _08029A9C @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -55658,11 +55658,11 @@ _08029A62:
ldrb r0, [r2, 0x4]
b _08029C40
.align 2, 0
-_08029A8C: .4byte gUnknown_02024C07
+_08029A8C: .4byte gPlayerMonIndex
_08029A90: .4byte gEnemyParty
_08029A94: .4byte gPlayerParty
_08029A98: .4byte gBattleMons
-_08029A9C: .4byte gUnknown_02024C08
+_08029A9C: .4byte gEnemyMonIndex
_08029AA0: .4byte gUnknown_02024C10
_08029AA4:
ldr r6, _08029BE0 @ =gUnknown_02024D1E
@@ -55725,7 +55725,7 @@ _08029B08:
strb r0, [r1]
movs r0, 0x4
strb r0, [r1, 0x1]
- ldr r6, _08029BE8 @ =gUnknown_02024C07
+ ldr r6, _08029BE8 @ =gPlayerMonIndex
ldrb r0, [r6]
strb r0, [r1, 0x2]
strb r2, [r1, 0x3]
@@ -55735,7 +55735,7 @@ _08029B08:
ldr r0, [r1]
adds r0, 0x9
str r0, [r1]
- ldr r2, _08029BF0 @ =gUnknown_02024BEC
+ ldr r2, _08029BF0 @ =gBattleMoveDamage
mov r8, r2
ldr r5, _08029BF4 @ =gBaseStats
mov r1, r9
@@ -55778,7 +55778,7 @@ _08029B08:
muls r0, r1
str r0, [r2]
ldr r3, _08029C00 @ =gBattleMons
- ldr r1, _08029C04 @ =gUnknown_02024C08
+ ldr r1, _08029C04 @ =gEnemyMonIndex
ldrb r2, [r1]
movs r1, 0x58
muls r1, r2
@@ -55820,14 +55820,14 @@ _08029BD4:
.align 2, 0
_08029BE0: .4byte gUnknown_02024D1E
_08029BE4: .4byte gUnknown_030041C0
-_08029BE8: .4byte gUnknown_02024C07
+_08029BE8: .4byte gPlayerMonIndex
_08029BEC: .4byte gUnknown_02024C10
-_08029BF0: .4byte gUnknown_02024BEC
+_08029BF0: .4byte gBattleMoveDamage
_08029BF4: .4byte gBaseStats
_08029BF8: .4byte gBattleMoves
_08029BFC: .4byte gUnknown_02024BE6
_08029C00: .4byte gBattleMons
-_08029C04: .4byte gUnknown_02024C08
+_08029C04: .4byte gEnemyMonIndex
_08029C08: .4byte gUnknown_02024D28
_08029C0C:
mov r0, r8
@@ -55895,7 +55895,7 @@ _08029C70:
bne _08029CC4
_08029C7C:
ldr r2, _08029C90 @ =gUnknown_02024C98
- ldr r0, _08029C94 @ =gUnknown_02024C07
+ ldr r0, _08029C94 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 2
adds r1, r2
@@ -55905,10 +55905,10 @@ _08029C7C:
.align 2, 0
_08029C8C: .4byte 0x00000123
_08029C90: .4byte gUnknown_02024C98
-_08029C94: .4byte gUnknown_02024C07
+_08029C94: .4byte gPlayerMonIndex
_08029C98:
ldr r2, _08029CA8 @ =gUnknown_02024C98
- ldr r0, _08029CAC @ =gUnknown_02024C07
+ ldr r0, _08029CAC @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 2
adds r1, r2
@@ -55917,10 +55917,10 @@ _08029C98:
b _08029CC0
.align 2, 0
_08029CA8: .4byte gUnknown_02024C98
-_08029CAC: .4byte gUnknown_02024C07
+_08029CAC: .4byte gPlayerMonIndex
_08029CB0:
ldr r2, _08029CD0 @ =gUnknown_02024C98
- ldr r0, _08029CD4 @ =gUnknown_02024C07
+ ldr r0, _08029CD4 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 2
adds r1, r2
@@ -55939,7 +55939,7 @@ _08029CC4:
bx r0
.align 2, 0
_08029CD0: .4byte gUnknown_02024C98
-_08029CD4: .4byte gUnknown_02024C07
+_08029CD4: .4byte gPlayerMonIndex
_08029CD8: .4byte gUnknown_02024C10
thumb_func_end atkC5_hidepreattack
@@ -55966,7 +55966,7 @@ _08029CF4:
bne _08029D4E
_08029D00:
ldr r2, _08029D18 @ =gUnknown_02024C98
- ldr r0, _08029D1C @ =gUnknown_02024C07
+ ldr r0, _08029D1C @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 2
adds r1, r2
@@ -55977,10 +55977,10 @@ _08029D00:
.align 2, 0
_08029D14: .4byte 0x00000123
_08029D18: .4byte gUnknown_02024C98
-_08029D1C: .4byte gUnknown_02024C07
+_08029D1C: .4byte gPlayerMonIndex
_08029D20:
ldr r2, _08029D34 @ =gUnknown_02024C98
- ldr r0, _08029D38 @ =gUnknown_02024C07
+ ldr r0, _08029D38 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 2
adds r1, r2
@@ -55990,10 +55990,10 @@ _08029D20:
b _08029D4A
.align 2, 0
_08029D34: .4byte gUnknown_02024C98
-_08029D38: .4byte gUnknown_02024C07
+_08029D38: .4byte gPlayerMonIndex
_08029D3C:
ldr r2, _08029D5C @ =gUnknown_02024C98
- ldr r0, _08029D60 @ =gUnknown_02024C07
+ ldr r0, _08029D60 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 2
adds r1, r2
@@ -56011,7 +56011,7 @@ _08029D4E:
bx r0
.align 2, 0
_08029D5C: .4byte gUnknown_02024C98
-_08029D60: .4byte gUnknown_02024C07
+_08029D60: .4byte gPlayerMonIndex
_08029D64: .4byte 0xfffbffff
_08029D68: .4byte gUnknown_02024C10
thumb_func_end atkC6_unhidepostattack
@@ -56027,7 +56027,7 @@ atkC7_setminimize: @ 8029D6C
cmp r0, 0
beq _08029D90
ldr r2, _08029DA0 @ =gUnknown_02024C98
- ldr r0, _08029DA4 @ =gUnknown_02024C07
+ ldr r0, _08029DA4 @ =gPlayerMonIndex
ldrb r1, [r0]
lsls r1, 2
adds r1, r2
@@ -56046,7 +56046,7 @@ _08029D90:
.align 2, 0
_08029D9C: .4byte gUnknown_02024C6C
_08029DA0: .4byte gUnknown_02024C98
-_08029DA4: .4byte gUnknown_02024C07
+_08029DA4: .4byte gPlayerMonIndex
_08029DA8: .4byte gUnknown_02024C10
thumb_func_end atkC7_setminimize
@@ -56060,7 +56060,7 @@ sub_8029DAC: @ 8029DAC
ands r0, r1
cmp r0, 0
beq _08029DDC
- ldr r2, _08029DD4 @ =gUnknown_02024C68
+ ldr r2, _08029DD4 @ =gBattleMoveFlags
ldrb r0, [r2]
movs r1, 0x1
orrs r0, r1
@@ -56071,7 +56071,7 @@ sub_8029DAC: @ 8029DAC
b _08029DEA
.align 2, 0
_08029DD0: .4byte gBattleWeather
-_08029DD4: .4byte gUnknown_02024C68
+_08029DD4: .4byte gBattleMoveFlags
_08029DD8: .4byte gUnknown_02024D1E
_08029DDC:
strh r2, [r3]
@@ -56098,7 +56098,7 @@ _08029E00: .4byte gUnknown_02024C10
atkC9_jumpifattackandspecialattackcannotfall: @ 8029E04
push {r4,lr}
ldr r2, _08029E48 @ =gBattleMons
- ldr r0, _08029E4C @ =gUnknown_02024C08
+ ldr r0, _08029E4C @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -56132,15 +56132,15 @@ atkC9_jumpifattackandspecialattackcannotfall: @ 8029E04
b _08029E84
.align 2, 0
_08029E48: .4byte gBattleMons
-_08029E4C: .4byte gUnknown_02024C08
+_08029E4C: .4byte gEnemyMonIndex
_08029E50: .4byte gUnknown_02024D1E
_08029E54: .4byte gUnknown_02024C10
_08029E58:
ldr r4, _08029E8C @ =gUnknown_02024A60
- ldr r0, _08029E90 @ =gUnknown_02024C07
+ ldr r0, _08029E90 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r4]
- ldr r2, _08029E94 @ =gUnknown_02024BEC
+ ldr r2, _08029E94 @ =gBattleMoveDamage
ldrb r1, [r4]
movs r0, 0x58
muls r0, r1
@@ -56162,8 +56162,8 @@ _08029E84:
bx r0
.align 2, 0
_08029E8C: .4byte gUnknown_02024A60
-_08029E90: .4byte gUnknown_02024C07
-_08029E94: .4byte gUnknown_02024BEC
+_08029E90: .4byte gPlayerMonIndex
+_08029E94: .4byte gBattleMoveDamage
_08029E98: .4byte 0x00007fff
_08029E9C: .4byte gUnknown_02024C10
thumb_func_end atkC9_jumpifattackandspecialattackcannotfall
@@ -56171,7 +56171,7 @@ _08029E9C: .4byte gUnknown_02024C10
thumb_func_start atkCA_setforcedtarget
atkCA_setforcedtarget: @ 8029EA0
push {r4,r5,lr}
- ldr r4, _08029EE0 @ =gUnknown_02024C07
+ ldr r4, _08029EE0 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
ldr r5, _08029EE4 @ =gUnknown_02024C80
@@ -56201,7 +56201,7 @@ atkCA_setforcedtarget: @ 8029EA0
pop {r0}
bx r0
.align 2, 0
-_08029EE0: .4byte gUnknown_02024C07
+_08029EE0: .4byte gPlayerMonIndex
_08029EE4: .4byte gUnknown_02024C80
_08029EE8: .4byte gUnknown_02024C10
thumb_func_end atkCA_setforcedtarget
@@ -56210,7 +56210,7 @@ _08029EE8: .4byte gUnknown_02024C10
atkCB_setcharge: @ 8029EEC
push {r4,lr}
ldr r0, _08029F40 @ =gUnknown_02024C98
- ldr r3, _08029F44 @ =gUnknown_02024C07
+ ldr r3, _08029F44 @ =gPlayerMonIndex
ldrb r1, [r3]
lsls r1, 2
adds r1, r0
@@ -56252,7 +56252,7 @@ atkCB_setcharge: @ 8029EEC
bx r0
.align 2, 0
_08029F40: .4byte gUnknown_02024C98
-_08029F44: .4byte gUnknown_02024C07
+_08029F44: .4byte gPlayerMonIndex
_08029F48: .4byte gUnknown_02024CA8
_08029F4C: .4byte gUnknown_02024C10
thumb_func_end atkCB_setcharge
@@ -56276,7 +56276,7 @@ atkCC_callterrainattack: @ 8029F50
ldrh r0, [r4]
movs r1, 0
bl sub_801B5C0
- ldr r1, _08029FB4 @ =gUnknown_02024C08
+ ldr r1, _08029FB4 @ =gEnemyMonIndex
strb r0, [r1]
ldr r3, _08029FB8 @ =gUnknown_081D6BBC
ldr r2, _08029FBC @ =gBattleMoves
@@ -56303,7 +56303,7 @@ _08029FA4: .4byte 0xfffffbff
_08029FA8: .4byte gUnknown_02024BE6
_08029FAC: .4byte gNaturePowerMoves
_08029FB0: .4byte gBattleTerrain
-_08029FB4: .4byte gUnknown_02024C08
+_08029FB4: .4byte gEnemyMonIndex
_08029FB8: .4byte gUnknown_081D6BBC
_08029FBC: .4byte gBattleMoves
_08029FC0: .4byte gUnknown_02024C10
@@ -56314,7 +56314,7 @@ atkCD_cureifburnedparalysedorpoisoned: @ 8029FC4
push {r4-r6,lr}
sub sp, 0x4
ldr r1, _0802A010 @ =gBattleMons
- ldr r3, _0802A014 @ =gUnknown_02024C07
+ ldr r3, _0802A014 @ =gPlayerMonIndex
ldrb r0, [r3]
movs r6, 0x58
muls r0, r6
@@ -56349,7 +56349,7 @@ atkCD_cureifburnedparalysedorpoisoned: @ 8029FC4
b _0802A03A
.align 2, 0
_0802A010: .4byte gBattleMons
-_0802A014: .4byte gUnknown_02024C07
+_0802A014: .4byte gPlayerMonIndex
_0802A018: .4byte gUnknown_02024C10
_0802A01C: .4byte gUnknown_02024A60
_0802A020:
@@ -56379,7 +56379,7 @@ _0802A044: .4byte gUnknown_02024C10
atkCE_settorment: @ 802A048
push {lr}
ldr r1, _0802A080 @ =gBattleMons
- ldr r0, _0802A084 @ =gUnknown_02024C08
+ ldr r0, _0802A084 @ =gEnemyMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -56406,7 +56406,7 @@ atkCE_settorment: @ 802A048
b _0802A098
.align 2, 0
_0802A080: .4byte gBattleMons
-_0802A084: .4byte gUnknown_02024C08
+_0802A084: .4byte gEnemyMonIndex
_0802A088: .4byte gUnknown_02024C10
_0802A08C:
orrs r1, r2
@@ -56426,7 +56426,7 @@ _0802A09C: .4byte gUnknown_02024C10
atkCF_jumpifnodamage: @ 802A0A0
push {lr}
ldr r2, _0802A0CC @ =gUnknown_02024D28
- ldr r0, _0802A0D0 @ =gUnknown_02024C07
+ ldr r0, _0802A0D0 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r1, r0, 4
adds r0, r2, 0x4
@@ -56448,7 +56448,7 @@ _0802A0C0:
b _0802A0F2
.align 2, 0
_0802A0CC: .4byte gUnknown_02024D28
-_0802A0D0: .4byte gUnknown_02024C07
+_0802A0D0: .4byte gPlayerMonIndex
_0802A0D4: .4byte gUnknown_02024C10
_0802A0D8:
ldr r3, _0802A0F8 @ =gUnknown_02024C10
@@ -56475,7 +56475,7 @@ _0802A0F8: .4byte gUnknown_02024C10
atkD0_settaunt: @ 802A0FC
push {r4,lr}
ldr r4, _0802A140 @ =gUnknown_02024CA8
- ldr r3, _0802A144 @ =gUnknown_02024C08
+ ldr r3, _0802A144 @ =gEnemyMonIndex
ldrb r0, [r3]
lsls r1, r0, 3
subs r1, r0
@@ -56509,7 +56509,7 @@ atkD0_settaunt: @ 802A0FC
b _0802A166
.align 2, 0
_0802A140: .4byte gUnknown_02024CA8
-_0802A144: .4byte gUnknown_02024C08
+_0802A144: .4byte gEnemyMonIndex
_0802A148: .4byte gUnknown_02024C10
_0802A14C:
ldr r3, _0802A16C @ =gUnknown_02024C10
@@ -56536,7 +56536,7 @@ _0802A16C: .4byte gUnknown_02024C10
thumb_func_start sub_802A170
sub_802A170: @ 802A170
push {r4,lr}
- ldr r4, _0802A1D8 @ =gUnknown_02024C07
+ ldr r4, _0802A1D8 @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_get_per_side_status
movs r1, 0x2
@@ -56544,7 +56544,7 @@ sub_802A170: @ 802A170
lsls r0, 24
lsrs r0, 24
bl battle_get_side_with_given_state
- ldr r3, _0802A1DC @ =gUnknown_02024C08
+ ldr r3, _0802A1DC @ =gEnemyMonIndex
strb r0, [r3]
ldr r0, _0802A1E0 @ =gBattleTypeFlags
ldrh r1, [r0]
@@ -56585,8 +56585,8 @@ sub_802A170: @ 802A170
str r0, [r1]
b _0802A20E
.align 2, 0
-_0802A1D8: .4byte gUnknown_02024C07
-_0802A1DC: .4byte gUnknown_02024C08
+_0802A1D8: .4byte gPlayerMonIndex
+_0802A1DC: .4byte gEnemyMonIndex
_0802A1E0: .4byte gBattleTypeFlags
_0802A1E4: .4byte gUnknown_02024C0C
_0802A1E8: .4byte gBitTable
@@ -56622,7 +56622,7 @@ sub_802A218: @ 802A218
mov r5, r8
push {r5-r7}
sub sp, 0x4
- ldr r0, _0802A30C @ =gUnknown_02024C07
+ ldr r0, _0802A30C @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
lsls r0, 24
@@ -56642,7 +56642,7 @@ sub_802A218: @ 802A218
cmp r1, r0
bne _0802A2EE
_0802A24C:
- ldr r4, _0802A30C @ =gUnknown_02024C07
+ ldr r4, _0802A30C @ =gPlayerMonIndex
ldrb r0, [r4]
bl battle_side_get_owner
lsls r0, 24
@@ -56678,7 +56678,7 @@ _0802A24C:
_0802A290:
ldr r0, _0802A328 @ =gBattleMons
mov r9, r0
- ldr r1, _0802A30C @ =gUnknown_02024C07
+ ldr r1, _0802A30C @ =gPlayerMonIndex
ldrb r4, [r1]
movs r2, 0x58
mov r8, r2
@@ -56690,7 +56690,7 @@ _0802A290:
adds r1, r3, 0
cmp r1, 0
bne _0802A2BE
- ldr r0, _0802A32C @ =gUnknown_02024C08
+ ldr r0, _0802A32C @ =gEnemyMonIndex
ldrb r0, [r0]
mov r2, r8
muls r2, r0
@@ -56702,7 +56702,7 @@ _0802A290:
_0802A2BE:
cmp r1, 0xAF
beq _0802A2EE
- ldr r7, _0802A32C @ =gUnknown_02024C08
+ ldr r7, _0802A32C @ =gEnemyMonIndex
ldrb r0, [r7]
mov r1, r8
muls r1, r0
@@ -56740,7 +56740,7 @@ _0802A2EE:
str r1, [r3]
b _0802A49A
.align 2, 0
-_0802A30C: .4byte gUnknown_02024C07
+_0802A30C: .4byte gPlayerMonIndex
_0802A310: .4byte gBattleTypeFlags
_0802A314: .4byte 0x00000902
_0802A318: .4byte gTrainerBattleOpponent
@@ -56748,7 +56748,7 @@ _0802A31C: .4byte gUnknown_02024DBC
_0802A320: .4byte gBitTable
_0802A324: .4byte gUnknown_02024A6A
_0802A328: .4byte gBattleMons
-_0802A32C: .4byte gUnknown_02024C08
+_0802A32C: .4byte gEnemyMonIndex
_0802A330: .4byte gUnknown_02024C10
_0802A334:
adds r0, r2, 0
@@ -56783,7 +56783,7 @@ _0802A36C:
ldrh r5, [r5, 0x2E]
mov r10, r5
strh r1, [r6]
- ldr r3, _0802A45C @ =gUnknown_02024C07
+ ldr r3, _0802A45C @ =gPlayerMonIndex
ldrb r0, [r3]
mov r1, r8
muls r1, r0
@@ -56799,7 +56799,7 @@ _0802A36C:
mov r3, r10
strh r3, [r0, 0x2E]
ldr r5, _0802A460 @ =gUnknown_02024A60
- ldr r1, _0802A45C @ =gUnknown_02024C07
+ ldr r1, _0802A45C @ =gPlayerMonIndex
ldrb r0, [r1]
strb r0, [r5]
str r6, [sp]
@@ -56808,7 +56808,7 @@ _0802A36C:
movs r2, 0
movs r3, 0x2
bl dp01_build_cmdbuf_x02_a_b_varargs
- ldr r2, _0802A45C @ =gUnknown_02024C07
+ ldr r2, _0802A45C @ =gPlayerMonIndex
ldrb r0, [r2]
bl dp01_battle_side_mark_buffer_for_execution
ldrb r0, [r7]
@@ -56844,7 +56844,7 @@ _0802A36C:
adds r0, r4
movs r3, 0
strb r3, [r0]
- ldr r3, _0802A45C @ =gUnknown_02024C07
+ ldr r3, _0802A45C @ =gPlayerMonIndex
ldrb r0, [r3]
lsls r0, 1
adds r0, r2
@@ -56893,7 +56893,7 @@ _0802A36C:
b _0802A498
.align 2, 0
_0802A458: .4byte 0x020160f0
-_0802A45C: .4byte gUnknown_02024C07
+_0802A45C: .4byte gPlayerMonIndex
_0802A460: .4byte gUnknown_02024A60
_0802A464: .4byte 0xfffe9f10
_0802A468: .4byte 0x000160e8
@@ -56934,7 +56934,7 @@ _0802A4AC: .4byte gUnknown_02024D1E
sub_802A4B0: @ 802A4B0
push {r4,lr}
ldr r3, _0802A4F0 @ =gBattleMons
- ldr r4, _0802A4F4 @ =gUnknown_02024C08
+ ldr r4, _0802A4F4 @ =gEnemyMonIndex
ldrb r0, [r4]
movs r2, 0x58
muls r0, r2
@@ -56946,7 +56946,7 @@ sub_802A4B0: @ 802A4B0
beq _0802A504
cmp r0, 0x19
beq _0802A504
- ldr r0, _0802A4F8 @ =gUnknown_02024C07
+ ldr r0, _0802A4F8 @ =gPlayerMonIndex
ldrb r0, [r0]
muls r0, r2
adds r0, r3
@@ -56966,8 +56966,8 @@ sub_802A4B0: @ 802A4B0
b _0802A51E
.align 2, 0
_0802A4F0: .4byte gBattleMons
-_0802A4F4: .4byte gUnknown_02024C08
-_0802A4F8: .4byte gUnknown_02024C07
+_0802A4F4: .4byte gEnemyMonIndex
+_0802A4F8: .4byte gPlayerMonIndex
_0802A4FC: .4byte byte_2024C06
_0802A500: .4byte gUnknown_02024C10
_0802A504:
@@ -57007,7 +57007,7 @@ atkD4_802C408: @ 802A528
_0802A53C: .4byte gUnknown_02024C10
_0802A540:
ldr r1, _0802A56C @ =gUnknown_02024DBC
- ldr r4, _0802A570 @ =gUnknown_02024C07
+ ldr r4, _0802A570 @ =gPlayerMonIndex
adds r0, r1, 0
adds r0, 0x20
ldrb r5, [r4]
@@ -57030,7 +57030,7 @@ _0802A540:
b _0802A5F2
.align 2, 0
_0802A56C: .4byte gUnknown_02024DBC
-_0802A570: .4byte gUnknown_02024C07
+_0802A570: .4byte gPlayerMonIndex
_0802A574: .4byte gUnknown_02024A6A
_0802A578:
ldr r1, _0802A5DC @ =gUnknown_030041C0
@@ -57038,7 +57038,7 @@ _0802A578:
strb r0, [r1]
movs r0, 0x4
strb r0, [r1, 0x1]
- ldr r4, _0802A5E0 @ =gUnknown_02024C08
+ ldr r4, _0802A5E0 @ =gEnemyMonIndex
ldrb r0, [r4]
strb r0, [r1, 0x2]
ldr r0, _0802A5E4 @ =gUnknown_02024DBC
@@ -57049,7 +57049,7 @@ _0802A578:
strb r0, [r1, 0x3]
movs r0, 0xFF
strb r0, [r1, 0x4]
- ldr r1, _0802A5E8 @ =gUnknown_02024BEC
+ ldr r1, _0802A5E8 @ =gBattleMoveDamage
ldr r6, _0802A5EC @ =gBattleMons
ldrb r0, [r4]
movs r5, 0x58
@@ -57087,9 +57087,9 @@ _0802A5C4:
b _0802A5F4
.align 2, 0
_0802A5DC: .4byte gUnknown_030041C0
-_0802A5E0: .4byte gUnknown_02024C08
+_0802A5E0: .4byte gEnemyMonIndex
_0802A5E4: .4byte gUnknown_02024DBC
-_0802A5E8: .4byte gUnknown_02024BEC
+_0802A5E8: .4byte gBattleMoveDamage
_0802A5EC: .4byte gBattleMons
_0802A5F0:
adds r0, r2, 0x6
@@ -57105,7 +57105,7 @@ _0802A5F4:
sub_802A5FC: @ 802A5FC
push {lr}
ldr r1, _0802A634 @ =gUnknown_02024C98
- ldr r0, _0802A638 @ =gUnknown_02024C07
+ ldr r0, _0802A638 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 2
adds r2, r0, r1
@@ -57132,7 +57132,7 @@ sub_802A5FC: @ 802A5FC
b _0802A64C
.align 2, 0
_0802A634: .4byte gUnknown_02024C98
-_0802A638: .4byte gUnknown_02024C07
+_0802A638: .4byte gPlayerMonIndex
_0802A63C: .4byte gUnknown_02024C10
_0802A640:
orrs r1, r3
@@ -57152,7 +57152,7 @@ _0802A650: .4byte gUnknown_02024C10
atkD6_doubledamagedealtifdamaged: @ 802A654
push {lr}
ldr r3, _0802A6A4 @ =gUnknown_02024D28
- ldr r0, _0802A6A8 @ =gUnknown_02024C07
+ ldr r0, _0802A6A8 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r2, r0, 4
adds r0, r3, 0x4
@@ -57161,7 +57161,7 @@ atkD6_doubledamagedealtifdamaged: @ 802A654
cmp r0, 0
beq _0802A674
adds r0, r2, r3
- ldr r1, _0802A6AC @ =gUnknown_02024C08
+ ldr r1, _0802A6AC @ =gEnemyMonIndex
ldrb r0, [r0, 0xC]
ldrb r1, [r1]
cmp r0, r1
@@ -57174,7 +57174,7 @@ _0802A674:
cmp r0, 0
beq _0802A696
adds r0, r2, r3
- ldr r1, _0802A6AC @ =gUnknown_02024C08
+ ldr r1, _0802A6AC @ =gEnemyMonIndex
ldrb r0, [r0, 0xD]
ldrb r1, [r1]
cmp r0, r1
@@ -57194,8 +57194,8 @@ _0802A696:
bx r0
.align 2, 0
_0802A6A4: .4byte gUnknown_02024D28
-_0802A6A8: .4byte gUnknown_02024C07
-_0802A6AC: .4byte gUnknown_02024C08
+_0802A6A8: .4byte gPlayerMonIndex
+_0802A6AC: .4byte gEnemyMonIndex
_0802A6B0: .4byte 0x02000000
_0802A6B4: .4byte 0x0001601f
_0802A6B8: .4byte gUnknown_02024C10
@@ -57205,7 +57205,7 @@ _0802A6B8: .4byte gUnknown_02024C10
sub_802A6BC: @ 802A6BC
push {r4,lr}
ldr r1, _0802A700 @ =gUnknown_02024C98
- ldr r0, _0802A704 @ =gUnknown_02024C08
+ ldr r0, _0802A704 @ =gEnemyMonIndex
ldrb r3, [r0]
lsls r0, r3, 2
adds r4, r0, r1
@@ -57240,7 +57240,7 @@ _0802A6E4:
b _0802A720
.align 2, 0
_0802A700: .4byte gUnknown_02024C98
-_0802A704: .4byte gUnknown_02024C08
+_0802A704: .4byte gEnemyMonIndex
_0802A708: .4byte gBattleMons
_0802A70C: .4byte gUnknown_02024C10
_0802A710:
@@ -57264,12 +57264,12 @@ _0802A728: .4byte gUnknown_02024C10
atkD8_setdamagetohealthdifference: @ 802A72C
push {lr}
ldr r2, _0802A768 @ =gBattleMons
- ldr r0, _0802A76C @ =gUnknown_02024C08
+ ldr r0, _0802A76C @ =gEnemyMonIndex
ldrb r0, [r0]
movs r1, 0x58
muls r0, r1
adds r3, r0, r2
- ldr r0, _0802A770 @ =gUnknown_02024C07
+ ldr r0, _0802A770 @ =gPlayerMonIndex
ldrb r0, [r0]
muls r0, r1
adds r1, r0, r2
@@ -57293,11 +57293,11 @@ atkD8_setdamagetohealthdifference: @ 802A72C
b _0802A78A
.align 2, 0
_0802A768: .4byte gBattleMons
-_0802A76C: .4byte gUnknown_02024C08
-_0802A770: .4byte gUnknown_02024C07
+_0802A76C: .4byte gEnemyMonIndex
+_0802A770: .4byte gPlayerMonIndex
_0802A774: .4byte gUnknown_02024C10
_0802A778:
- ldr r2, _0802A790 @ =gUnknown_02024BEC
+ ldr r2, _0802A790 @ =gBattleMoveDamage
ldrh r0, [r3, 0x28]
ldrh r1, [r1, 0x28]
subs r0, r1
@@ -57310,7 +57310,7 @@ _0802A78A:
pop {r0}
bx r0
.align 2, 0
-_0802A790: .4byte gUnknown_02024BEC
+_0802A790: .4byte gBattleMoveDamage
_0802A794: .4byte gUnknown_02024C10
thumb_func_end atkD8_setdamagetohealthdifference
@@ -57330,7 +57330,7 @@ atkD9_scaledamagebyhealthratio: @ 802A798
adds r0, r2
ldrb r3, [r0, 0x1]
ldr r2, _0802A7F0 @ =gBattleMons
- ldr r0, _0802A7F4 @ =gUnknown_02024C07
+ ldr r0, _0802A7F4 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r1, r0
@@ -57358,7 +57358,7 @@ _0802A7E4: .4byte gUnknown_02024DEC
_0802A7E8: .4byte gBattleMoves
_0802A7EC: .4byte gUnknown_02024BE6
_0802A7F0: .4byte gBattleMons
-_0802A7F4: .4byte gUnknown_02024C07
+_0802A7F4: .4byte gPlayerMonIndex
_0802A7F8: .4byte gUnknown_02024C10
thumb_func_end atkD9_scaledamagebyhealthratio
@@ -57366,7 +57366,7 @@ _0802A7F8: .4byte gUnknown_02024C10
atkDA_abilityswap: @ 802A7FC
push {r4-r6,lr}
ldr r5, _0802A860 @ =gBattleMons
- ldr r0, _0802A864 @ =gUnknown_02024C07
+ ldr r0, _0802A864 @ =gPlayerMonIndex
ldrb r0, [r0]
movs r4, 0x58
muls r0, r4
@@ -57376,7 +57376,7 @@ atkDA_abilityswap: @ 802A7FC
ldrb r1, [r2]
cmp r1, 0
bne _0802A824
- ldr r0, _0802A868 @ =gUnknown_02024C08
+ ldr r0, _0802A868 @ =gEnemyMonIndex
ldrb r0, [r0]
muls r0, r4
adds r0, r5
@@ -57387,7 +57387,7 @@ atkDA_abilityswap: @ 802A7FC
_0802A824:
cmp r1, 0x19
beq _0802A844
- ldr r6, _0802A868 @ =gUnknown_02024C08
+ ldr r6, _0802A868 @ =gEnemyMonIndex
ldrb r0, [r6]
muls r0, r4
adds r0, r5
@@ -57395,7 +57395,7 @@ _0802A824:
ldrb r3, [r0]
cmp r3, 0x19
beq _0802A844
- ldr r0, _0802A86C @ =gUnknown_02024C68
+ ldr r0, _0802A86C @ =gBattleMoveFlags
ldrb r1, [r0]
movs r0, 0x29
ands r0, r1
@@ -57418,9 +57418,9 @@ _0802A844:
b _0802A88A
.align 2, 0
_0802A860: .4byte gBattleMons
-_0802A864: .4byte gUnknown_02024C07
-_0802A868: .4byte gUnknown_02024C08
-_0802A86C: .4byte gUnknown_02024C68
+_0802A864: .4byte gPlayerMonIndex
+_0802A868: .4byte gEnemyMonIndex
+_0802A86C: .4byte gBattleMoveFlags
_0802A870: .4byte gUnknown_02024C10
_0802A874:
ldrb r1, [r2]
@@ -57451,7 +57451,7 @@ atkDB_imprisoneffect: @ 802A894
movs r0, 0
mov r8, r0
ldr r1, _0802A8B8 @ =gUnknown_02024C98
- ldr r0, _0802A8BC @ =gUnknown_02024C07
+ ldr r0, _0802A8BC @ =gPlayerMonIndex
ldrb r2, [r0]
lsls r0, r2, 2
adds r0, r1
@@ -57464,7 +57464,7 @@ atkDB_imprisoneffect: @ 802A894
b _0802A95E
.align 2, 0
_0802A8B8: .4byte gUnknown_02024C98
-_0802A8BC: .4byte gUnknown_02024C07
+_0802A8BC: .4byte gPlayerMonIndex
_0802A8C0:
ldr r0, _0802A8E0 @ =gUnknown_02024C98
mov r2, r9
@@ -57497,7 +57497,7 @@ _0802A8F2:
cmp r8, r0
beq _0802A948
movs r4, 0
- ldr r7, _0802A984 @ =gUnknown_02024C07
+ ldr r7, _0802A984 @ =gPlayerMonIndex
mov r9, r7
ldr r0, _0802A988 @ =gBattleMons
mov r12, r0
@@ -57573,7 +57573,7 @@ _0802A978:
pop {r0}
bx r0
.align 2, 0
-_0802A984: .4byte gUnknown_02024C07
+_0802A984: .4byte gPlayerMonIndex
_0802A988: .4byte gBattleMons
_0802A98C: .4byte gUnknown_02024A68
_0802A990: .4byte gUnknown_02024C10
@@ -57583,7 +57583,7 @@ _0802A990: .4byte gUnknown_02024C10
atkDC_setgrudge: @ 802A994
push {lr}
ldr r1, _0802A9CC @ =gUnknown_02024C98
- ldr r0, _0802A9D0 @ =gUnknown_02024C07
+ ldr r0, _0802A9D0 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 2
adds r2, r0, r1
@@ -57610,7 +57610,7 @@ atkDC_setgrudge: @ 802A994
b _0802A9E4
.align 2, 0
_0802A9CC: .4byte gUnknown_02024C98
-_0802A9D0: .4byte gUnknown_02024C07
+_0802A9D0: .4byte gPlayerMonIndex
_0802A9D4: .4byte gUnknown_02024C10
_0802A9D8:
orrs r1, r3
@@ -57643,7 +57643,7 @@ atkDD_weightdamagecalculation: @ 802A9EC
adds r7, r1, 0
adds r4, r6, 0
_0802AA08:
- ldr r0, _0802AA5C @ =gUnknown_02024C08
+ ldr r0, _0802AA5C @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -57682,7 +57682,7 @@ _0802AA36:
_0802AA50: .4byte gWeightDamage
_0802AA54: .4byte 0x0000ffff
_0802AA58: .4byte gBattleMons
-_0802AA5C: .4byte gUnknown_02024C08
+_0802AA5C: .4byte gEnemyMonIndex
_0802AA60: .4byte gUnknown_02024DEC
_0802AA64:
ldr r1, _0802AA7C @ =gUnknown_02024DEC
@@ -57713,7 +57713,7 @@ atkDE_asistattackselect: @ 802AA84
sub sp, 0x8
movs r0, 0
mov r10, r0
- ldr r0, _0802AB9C @ =gUnknown_02024C07
+ ldr r0, _0802AB9C @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_get_per_side_status
movs r1, 0x1
@@ -57728,7 +57728,7 @@ _0802AAAC:
movs r2, 0
_0802AAAE:
ldr r1, _0802ABA8 @ =gUnknown_02024A6A
- ldr r0, _0802AB9C @ =gUnknown_02024C07
+ ldr r0, _0802AB9C @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 1
adds r0, r1
@@ -57838,7 +57838,7 @@ _0802AB54:
ldrh r0, [r4]
movs r1, 0
bl sub_801B5C0
- ldr r1, _0802ABC4 @ =gUnknown_02024C08
+ ldr r1, _0802ABC4 @ =gEnemyMonIndex
strb r0, [r1]
ldr r1, _0802ABC8 @ =gUnknown_02024C10
ldr r0, [r1]
@@ -57846,7 +57846,7 @@ _0802AB54:
str r0, [r1]
b _0802ABE6
.align 2, 0
-_0802AB9C: .4byte gUnknown_02024C07
+_0802AB9C: .4byte gPlayerMonIndex
_0802ABA0: .4byte gPlayerParty
_0802ABA4: .4byte gEnemyParty
_0802ABA8: .4byte gUnknown_02024A6A
@@ -57856,7 +57856,7 @@ _0802ABB4: .4byte gUnknown_081FACFE
_0802ABB8: .4byte gUnknown_02024C6C
_0802ABBC: .4byte 0xfffffbff
_0802ABC0: .4byte gUnknown_02024BEA
-_0802ABC4: .4byte gUnknown_02024C08
+_0802ABC4: .4byte gEnemyMonIndex
_0802ABC8: .4byte gUnknown_02024C10
_0802ABCC:
ldr r3, _0802ABF8 @ =gUnknown_02024C10
@@ -57888,8 +57888,8 @@ _0802ABF8: .4byte gUnknown_02024C10
thumb_func_start atkDF_setmagiccoat
atkDF_setmagiccoat: @ 802ABFC
push {lr}
- ldr r1, _0802AC44 @ =gUnknown_02024C08
- ldr r3, _0802AC48 @ =gUnknown_02024C07
+ ldr r1, _0802AC44 @ =gEnemyMonIndex
+ ldr r3, _0802AC48 @ =gPlayerMonIndex
ldrb r0, [r3]
strb r0, [r1]
ldr r2, _0802AC4C @ =gUnknown_02024D68
@@ -57924,8 +57924,8 @@ atkDF_setmagiccoat: @ 802ABFC
str r1, [r3]
b _0802AC74
.align 2, 0
-_0802AC44: .4byte gUnknown_02024C08
-_0802AC48: .4byte gUnknown_02024C07
+_0802AC44: .4byte gEnemyMonIndex
+_0802AC48: .4byte gPlayerMonIndex
_0802AC4C: .4byte gUnknown_02024D68
_0802AC50: .4byte gUnknown_02024A7E
_0802AC54: .4byte gUnknown_02024A68
@@ -57955,7 +57955,7 @@ _0802AC7C: .4byte gUnknown_02024C10
atkE0_setstealstatchange: @ 802AC80
push {lr}
ldr r2, _0802ACC4 @ =gUnknown_02024D68
- ldr r3, _0802ACC8 @ =gUnknown_02024C07
+ ldr r3, _0802ACC8 @ =gPlayerMonIndex
ldrb r1, [r3]
lsls r0, r1, 2
adds r0, r1
@@ -57988,7 +57988,7 @@ atkE0_setstealstatchange: @ 802AC80
b _0802ACEE
.align 2, 0
_0802ACC4: .4byte gUnknown_02024D68
-_0802ACC8: .4byte gUnknown_02024C07
+_0802ACC8: .4byte gPlayerMonIndex
_0802ACCC: .4byte gUnknown_02024A7E
_0802ACD0: .4byte gUnknown_02024A68
_0802ACD4: .4byte gUnknown_02024C10
@@ -58041,7 +58041,7 @@ atkE1_802CBE4: @ 802ACFC
strb r0, [r2, 0x2]
movs r0, 0xFF
strb r0, [r2, 0x3]
- ldr r2, _0802ADB0 @ =gUnknown_02024C08
+ ldr r2, _0802ADB0 @ =gEnemyMonIndex
ldr r1, _0802ADB4 @ =gUnknown_02024A68
ldrb r0, [r2]
ldrb r1, [r1]
@@ -58078,7 +58078,7 @@ _0802AD66:
cmp r0, r1
bcc _0802AD44
_0802AD7A:
- ldr r0, _0802ADB0 @ =gUnknown_02024C08
+ ldr r0, _0802ADB0 @ =gEnemyMonIndex
ldrb r0, [r0]
ldrb r2, [r2]
cmp r0, r2
@@ -58103,7 +58103,7 @@ _0802ADA0: .4byte 0x02000000
_0802ADA4: .4byte 0x000160dd
_0802ADA8: .4byte gUnknown_030041C0
_0802ADAC: .4byte gBattleMons
-_0802ADB0: .4byte gUnknown_02024C08
+_0802ADB0: .4byte gEnemyMonIndex
_0802ADB4: .4byte gUnknown_02024A68
_0802ADB8: .4byte gBitTable
_0802ADBC: .4byte gUnknown_02024C0C
@@ -58534,7 +58534,7 @@ atkE8_settypebasedhalvers: @ 802B108
cmp r0, 0xC9
bne _0802B158
ldr r1, _0802B14C @ =gUnknown_02024C98
- ldr r0, _0802B150 @ =gUnknown_02024C07
+ ldr r0, _0802B150 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 2
adds r2, r0, r1
@@ -58554,11 +58554,11 @@ atkE8_settypebasedhalvers: @ 802B108
_0802B144: .4byte gBattleMoves
_0802B148: .4byte gUnknown_02024BE6
_0802B14C: .4byte gUnknown_02024C98
-_0802B150: .4byte gUnknown_02024C07
+_0802B150: .4byte gPlayerMonIndex
_0802B154: .4byte gUnknown_02024D1E
_0802B158:
ldr r1, _0802B18C @ =gUnknown_02024C98
- ldr r0, _0802B190 @ =gUnknown_02024C07
+ ldr r0, _0802B190 @ =gPlayerMonIndex
ldrb r0, [r0]
lsls r0, 2
adds r2, r0, r1
@@ -58586,7 +58586,7 @@ _0802B180:
b _0802B1B6
.align 2, 0
_0802B18C: .4byte gUnknown_02024C98
-_0802B190: .4byte gUnknown_02024C07
+_0802B190: .4byte gPlayerMonIndex
_0802B194: .4byte gUnknown_02024D1E
_0802B198: .4byte gUnknown_02024C10
_0802B19C:
@@ -58719,7 +58719,7 @@ atkEA_recycleitem: @ 802B28C
push {r4-r7,lr}
sub sp, 0x4
ldr r7, _0802B2F0 @ =gUnknown_02024A60
- ldr r0, _0802B2F4 @ =gUnknown_02024C07
+ ldr r0, _0802B2F4 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r7]
ldrb r2, [r7]
@@ -58765,7 +58765,7 @@ atkEA_recycleitem: @ 802B28C
b _0802B322
.align 2, 0
_0802B2F0: .4byte gUnknown_02024A60
-_0802B2F4: .4byte gUnknown_02024C07
+_0802B2F4: .4byte gPlayerMonIndex
_0802B2F8: .4byte 0x020160cc
_0802B2FC: .4byte gBattleMons
_0802B300: .4byte gUnknown_02024C04
@@ -58800,7 +58800,7 @@ atkEB_settypetoterrain: @ 802B330
push {r7}
ldr r0, _0802B3A0 @ =gBattleMons
mov r8, r0
- ldr r7, _0802B3A4 @ =gUnknown_02024C07
+ ldr r7, _0802B3A4 @ =gPlayerMonIndex
ldrb r0, [r7]
movs r6, 0x58
muls r0, r6
@@ -58853,7 +58853,7 @@ atkEB_settypetoterrain: @ 802B330
b _0802B3D2
.align 2, 0
_0802B3A0: .4byte gBattleMons
-_0802B3A4: .4byte gUnknown_02024C07
+_0802B3A4: .4byte gPlayerMonIndex
_0802B3A8: .4byte gTerrainToType
_0802B3AC: .4byte gBattleTerrain
_0802B3B0: .4byte gUnknown_030041C0
@@ -58885,7 +58885,7 @@ _0802B3DC: .4byte gUnknown_02024C10
thumb_func_start sub_802B3E0
sub_802B3E0: @ 802B3E0
push {r4,r5,lr}
- ldr r5, _0802B45C @ =gUnknown_02024C07
+ ldr r5, _0802B45C @ =gPlayerMonIndex
ldrb r0, [r5]
bl battle_get_per_side_status
movs r1, 0x2
@@ -58945,7 +58945,7 @@ sub_802B3E0: @ 802B3E0
strb r0, [r5]
b _0802B4AA
.align 2, 0
-_0802B45C: .4byte gUnknown_02024C07
+_0802B45C: .4byte gPlayerMonIndex
_0802B460: .4byte gUnknown_02024A60
_0802B464: .4byte gBattleTypeFlags
_0802B468: .4byte gUnknown_02024C0C
@@ -58984,10 +58984,10 @@ _0802B4B0: .4byte gUnknown_02024C10
sub_802B4B4: @ 802B4B4
push {r4,r5,lr}
ldr r1, _0802B4DC @ =gUnknown_02024C0A
- ldr r3, _0802B4E0 @ =gUnknown_02024C07
+ ldr r3, _0802B4E0 @ =gPlayerMonIndex
ldrb r0, [r3]
strb r0, [r1]
- ldr r2, _0802B4E4 @ =gUnknown_02024C08
+ ldr r2, _0802B4E4 @ =gEnemyMonIndex
lsls r0, 24
lsrs r0, 24
adds r4, r1, 0
@@ -59003,8 +59003,8 @@ sub_802B4B4: @ 802B4B4
b _0802B4FA
.align 2, 0
_0802B4DC: .4byte gUnknown_02024C0A
-_0802B4E0: .4byte gUnknown_02024C07
-_0802B4E4: .4byte gUnknown_02024C08
+_0802B4E0: .4byte gPlayerMonIndex
+_0802B4E4: .4byte gEnemyMonIndex
_0802B4E8: .4byte 0x02000000
_0802B4EC: .4byte 0x00016003
_0802B4F0:
@@ -59034,7 +59034,7 @@ _0802B518: .4byte gUnknown_02024C10
thumb_func_start sub_802B51C
sub_802B51C: @ 802B51C
push {r4,lr}
- ldr r0, _0802B56C @ =gUnknown_02024C07
+ ldr r0, _0802B56C @ =gPlayerMonIndex
ldrb r0, [r0]
bl battle_side_get_owner
movs r1, 0x1
@@ -59073,7 +59073,7 @@ _0802B544:
adds r0, r3
b _0802B598
.align 2, 0
-_0802B56C: .4byte gUnknown_02024C07
+_0802B56C: .4byte gPlayerMonIndex
_0802B570: .4byte gUnknown_02024C80
_0802B574: .4byte gUnknown_02024C7A
_0802B578: .4byte 0x0000fffe
@@ -59115,10 +59115,10 @@ sub_802B5B8: @ 802B5B8
b _0802B94E
_0802B5C6:
ldr r5, _0802B5FC @ =gUnknown_02024A60
- ldr r0, _0802B600 @ =gUnknown_02024C07
+ ldr r0, _0802B600 @ =gPlayerMonIndex
ldrb r0, [r0]
strb r0, [r5]
- ldr r6, _0802B604 @ =gUnknown_02024C08
+ ldr r6, _0802B604 @ =gEnemyMonIndex
movs r1, 0x1
eors r0, r1
strb r0, [r6]
@@ -59139,8 +59139,8 @@ _0802B5C6:
.align 2, 0
_0802B5F8: .4byte gUnknown_02024A64
_0802B5FC: .4byte gUnknown_02024A60
-_0802B600: .4byte gUnknown_02024C07
-_0802B604: .4byte gUnknown_02024C08
+_0802B600: .4byte gPlayerMonIndex
+_0802B604: .4byte gEnemyMonIndex
_0802B608: .4byte gBattleTypeFlags
_0802B60C: .4byte gUnknown_02024C10
_0802B610: .4byte gUnknown_081D9F35
@@ -59229,7 +59229,7 @@ _0802B6B0:
.4byte _0802B72E
_0802B6CC:
ldr r2, _0802B6F4 @ =gBattleMons
- ldr r0, _0802B6F8 @ =gUnknown_02024C08
+ ldr r0, _0802B6F8 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -59250,7 +59250,7 @@ _0802B6CC:
b _0802B72E
.align 2, 0
_0802B6F4: .4byte gBattleMons
-_0802B6F8: .4byte gUnknown_02024C08
+_0802B6F8: .4byte gEnemyMonIndex
_0802B6FC:
bl sav1_map_get_light_level
lsls r0, 24
@@ -59262,7 +59262,7 @@ _0802B6FC:
b _0802B78E
_0802B70E:
ldr r2, _0802B734 @ =gBattleMons
- ldr r0, _0802B738 @ =gUnknown_02024C08
+ ldr r0, _0802B738 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -59282,10 +59282,10 @@ _0802B72E:
b _0802B78E
.align 2, 0
_0802B734: .4byte gBattleMons
-_0802B738: .4byte gUnknown_02024C08
+_0802B738: .4byte gEnemyMonIndex
_0802B73C:
ldr r2, _0802B764 @ =gBattleMons
- ldr r0, _0802B768 @ =gUnknown_02024C08
+ ldr r0, _0802B768 @ =gEnemyMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r0, r1
@@ -59305,7 +59305,7 @@ _0802B760:
b _0802B78E
.align 2, 0
_0802B764: .4byte gBattleMons
-_0802B768: .4byte gUnknown_02024C08
+_0802B768: .4byte gEnemyMonIndex
_0802B76C:
ldr r0, _0802B780 @ =gUnknown_030042E0
ldrb r0, [r0, 0x13]
@@ -59330,7 +59330,7 @@ _0802B78E:
movs r1, 0xA
bl __divsi3
ldr r5, _0802B7F8 @ =gBattleMons
- ldr r1, _0802B7FC @ =gUnknown_02024C08
+ ldr r1, _0802B7FC @ =gEnemyMonIndex
ldrb r1, [r1]
movs r7, 0x58
adds r4, r1, 0
@@ -59378,7 +59378,7 @@ _0802B7DC:
.align 2, 0
_0802B7F4: .4byte gBallCatchBonuses
_0802B7F8: .4byte gBattleMons
-_0802B7FC: .4byte gUnknown_02024C08
+_0802B7FC: .4byte gEnemyMonIndex
_0802B800: .4byte gUnknown_02024C04
_0802B804: .4byte gUnknown_030042E0
_0802B808:
@@ -59405,7 +59405,7 @@ _0802B81C:
ldr r0, _0802B86C @ =gUnknown_081D9EC2
str r0, [r1]
ldr r1, _0802B870 @ =gUnknown_02024A6A
- ldr r0, _0802B874 @ =gUnknown_02024C08
+ ldr r0, _0802B874 @ =gEnemyMonIndex
ldrb r0, [r0]
lsls r0, 1
adds r0, r1
@@ -59429,7 +59429,7 @@ _0802B864: .4byte gUnknown_02024A60
_0802B868: .4byte gUnknown_02024C10
_0802B86C: .4byte gUnknown_081D9EC2
_0802B870: .4byte gUnknown_02024A6A
-_0802B874: .4byte gUnknown_02024C08
+_0802B874: .4byte gEnemyMonIndex
_0802B878: .4byte gEnemyParty
_0802B87C: .4byte gUnknown_02024C04
_0802B880:
@@ -59482,7 +59482,7 @@ _0802B8CC:
ldr r0, _0802B924 @ =gUnknown_081D9EC2
str r0, [r1]
ldr r1, _0802B928 @ =gUnknown_02024A6A
- ldr r0, _0802B92C @ =gUnknown_02024C08
+ ldr r0, _0802B92C @ =gEnemyMonIndex
ldrb r0, [r0]
lsls r0, 1
adds r0, r1
@@ -59510,7 +59510,7 @@ _0802B91C: .4byte gUnknown_02024A60
_0802B920: .4byte gUnknown_02024C10
_0802B924: .4byte gUnknown_081D9EC2
_0802B928: .4byte gUnknown_02024A6A
-_0802B92C: .4byte gUnknown_02024C08
+_0802B92C: .4byte gEnemyMonIndex
_0802B930: .4byte gEnemyParty
_0802B934: .4byte gUnknown_02024D1E
_0802B938:
@@ -59545,7 +59545,7 @@ sub_802B960: @ 802B960
push {r5,r6}
ldr r0, _0802B9C8 @ =gUnknown_02024A6A
mov r9, r0
- ldr r5, _0802B9CC @ =gUnknown_02024C07
+ ldr r5, _0802B9CC @ =gPlayerMonIndex
ldrb r0, [r5]
movs r4, 0x1
eors r0, r4
@@ -59591,7 +59591,7 @@ sub_802B960: @ 802B960
bx r0
.align 2, 0
_0802B9C8: .4byte gUnknown_02024A6A
-_0802B9CC: .4byte gUnknown_02024C07
+_0802B9CC: .4byte gPlayerMonIndex
_0802B9D0: .4byte gEnemyParty
_0802B9D4: .4byte gUnknown_030042E0
_0802B9D8: .4byte gBattleMons
@@ -59602,7 +59602,7 @@ _0802B9DC: .4byte gUnknown_02024C10
sub_802B9E0: @ 802B9E0
push {r4-r6,lr}
ldr r4, _0802BA20 @ =gBattleMons
- ldr r6, _0802BA24 @ =gUnknown_02024C08
+ ldr r6, _0802BA24 @ =gEnemyMonIndex
ldrb r0, [r6]
movs r5, 0x58
muls r0, r5
@@ -59632,7 +59632,7 @@ sub_802B9E0: @ 802B9E0
b _0802BA82
.align 2, 0
_0802BA20: .4byte gBattleMons
-_0802BA24: .4byte gUnknown_02024C08
+_0802BA24: .4byte gEnemyMonIndex
_0802BA28: .4byte gUnknown_02024C10
_0802BA2C:
ldrb r0, [r6]
@@ -59726,7 +59726,7 @@ _0802BAC6:
cmp r0, 0
bne _0802BBC4
ldr r4, _0802BB08 @ =gBattleMons
- ldr r6, _0802BB0C @ =gUnknown_02024C08
+ ldr r6, _0802BB0C @ =gEnemyMonIndex
ldrb r0, [r6]
movs r5, 0x58
muls r0, r5
@@ -59751,7 +59751,7 @@ _0802BAC6:
.align 2, 0
_0802BB04: .4byte gPaletteFade
_0802BB08: .4byte gBattleMons
-_0802BB0C: .4byte gUnknown_02024C08
+_0802BB0C: .4byte gEnemyMonIndex
_0802BB10:
ldr r0, _0802BB7C @ =gPaletteFade
ldrb r1, [r0, 0x7]
@@ -60072,7 +60072,7 @@ _0802BD84:
b _0802BEDA
_0802BD92:
ldr r7, _0802BE38 @ =gUnknown_02024A6A
- ldr r0, _0802BE3C @ =gUnknown_02024C07
+ ldr r0, _0802BE3C @ =gPlayerMonIndex
mov r10, r0
ldrb r0, [r0]
movs r4, 0x1
@@ -60149,7 +60149,7 @@ _0802BD92:
.align 2, 0
_0802BE34: .4byte gPaletteFade
_0802BE38: .4byte gUnknown_02024A6A
-_0802BE3C: .4byte gUnknown_02024C07
+_0802BE3C: .4byte gPlayerMonIndex
_0802BE40: .4byte gEnemyParty
_0802BE44: .4byte 0x02016079
_0802BE48: .4byte sub_800F808
@@ -60167,7 +60167,7 @@ _0802BE50:
cmp r0, 0
bne _0802BEDA
ldr r2, _0802BE94 @ =gUnknown_02024A6A
- ldr r0, _0802BE98 @ =gUnknown_02024C07
+ ldr r0, _0802BE98 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x1
eors r0, r1
@@ -60187,7 +60187,7 @@ _0802BE88: .4byte gMain
_0802BE8C: .4byte sub_800F808
_0802BE90: .4byte gPaletteFade
_0802BE94: .4byte gUnknown_02024A6A
-_0802BE98: .4byte gUnknown_02024C07
+_0802BE98: .4byte gPlayerMonIndex
_0802BE9C: .4byte gEnemyParty
_0802BEA0: .4byte 0x02016079
_0802BEA4:
@@ -60233,12 +60233,12 @@ _0802BEEC: .4byte gUnknown_02024C10
thumb_func_start sub_802BEF0
sub_802BEF0: @ 802BEF0
ldr r2, _0802BF10 @ =gBattleMons
- ldr r0, _0802BF14 @ =gUnknown_02024C07
+ ldr r0, _0802BF14 @ =gPlayerMonIndex
ldrb r1, [r0]
movs r0, 0x58
muls r1, r0
adds r1, r2
- ldr r0, _0802BF18 @ =gUnknown_02024BEC
+ ldr r0, _0802BF18 @ =gBattleMoveDamage
ldr r2, [r0]
ldrh r0, [r1, 0x28]
subs r0, r2
@@ -60250,15 +60250,15 @@ sub_802BEF0: @ 802BEF0
bx lr
.align 2, 0
_0802BF10: .4byte gBattleMons
-_0802BF14: .4byte gUnknown_02024C07
-_0802BF18: .4byte gUnknown_02024BEC
+_0802BF14: .4byte gPlayerMonIndex
+_0802BF18: .4byte gBattleMoveDamage
_0802BF1C: .4byte gUnknown_02024C10
thumb_func_end sub_802BEF0
thumb_func_start sub_802BF20
sub_802BF20: @ 802BF20
ldr r1, _0802BF3C @ =gBattleMons
- ldr r0, _0802BF40 @ =gUnknown_02024C07
+ ldr r0, _0802BF40 @ =gPlayerMonIndex
ldrb r2, [r0]
movs r0, 0x58
muls r0, r2
@@ -60273,7 +60273,7 @@ sub_802BF20: @ 802BF20
bx lr
.align 2, 0
_0802BF3C: .4byte gBattleMons
-_0802BF40: .4byte gUnknown_02024C07
+_0802BF40: .4byte gPlayerMonIndex
_0802BF44: .4byte gUnknown_02024C10
thumb_func_end sub_802BF20
@@ -78510,7 +78510,7 @@ _08035474:
ands r0, r1
cmp r0, 0
beq _08035494
- ldr r1, _080354EC @ =gUnknown_02024C08
+ ldr r1, _080354EC @ =gEnemyMonIndex
ldrb r0, [r6]
strb r0, [r1]
_08035494:
@@ -78526,7 +78526,7 @@ _08035494:
beq _080354CE
movs r0, 0
bl battle_get_side_with_given_state
- ldr r5, _080354EC @ =gUnknown_02024C08
+ ldr r5, _080354EC @ =gEnemyMonIndex
strb r0, [r5]
ldr r0, _080354F0 @ =gUnknown_02024C0C
ldrb r1, [r0]
@@ -78542,7 +78542,7 @@ _08035494:
bl battle_get_side_with_given_state
strb r0, [r5]
_080354CE:
- ldr r0, _080354EC @ =gUnknown_02024C08
+ ldr r0, _080354EC @ =gEnemyMonIndex
ldrb r0, [r0]
lsls r0, 8
orrs r4, r0
@@ -78555,7 +78555,7 @@ _080354E0:
b _0803558A
.align 2, 0
_080354E8: .4byte gBattleMoves
-_080354EC: .4byte gUnknown_02024C08
+_080354EC: .4byte gEnemyMonIndex
_080354F0: .4byte gUnknown_02024C0C
_080354F4: .4byte gBitTable
_080354F8:
@@ -81840,7 +81840,7 @@ _08036F04:
adds r0, r4
movs r1, 0x1
strb r1, [r0]
- ldr r0, _08037010 @ =gUnknown_02024C68
+ ldr r0, _08037010 @ =gBattleMoveFlags
strb r2, [r0]
ldr r0, _08037014 @ =gCritMultiplier
strb r1, [r0]
@@ -81895,7 +81895,7 @@ _08036F2C:
beq _08036FE8
movs r5, 0
mov r9, r6
- ldr r4, _08037024 @ =gUnknown_02024BEC
+ ldr r4, _08037024 @ =gBattleMoveDamage
mov r8, r4
ldr r6, _08037028 @ =gUnknown_02024A60
_08036F90:
@@ -81961,12 +81961,12 @@ _08037000: .4byte gUnknown_02024DEC
_08037004: .4byte 0x02000000
_08037008: .4byte 0x0001601c
_0803700C: .4byte 0x0001601f
-_08037010: .4byte gUnknown_02024C68
+_08037010: .4byte gBattleMoveFlags
_08037014: .4byte gCritMultiplier
_08037018: .4byte gEnemyParty
_0803701C: .4byte gUnknown_02024A6A
_08037020: .4byte 0x00016068
-_08037024: .4byte gUnknown_02024BEC
+_08037024: .4byte gBattleMoveDamage
_08037028: .4byte gUnknown_02024A60
_0803702C: .4byte gBattleMoves
thumb_func_end sub_8036CD4
diff --git a/asm/rom_8080874.s b/asm/rom_8080874.s
index 77dad9f9e..28ea3a69f 100644
--- a/asm/rom_8080874.s
+++ b/asm/rom_8080874.s
@@ -6,185 +6,6 @@
.text
- thumb_func_start palette_bg_fill_white
-palette_bg_fill_white: @ 8080874
- push {lr}
- sub sp, 0x4
- ldr r0, _0808088C @ =0x7fff7fff
- str r0, [sp]
- ldr r1, _08080890 @ =gPlttBufferFaded
- ldr r2, _08080894 @ =0x01000100
- mov r0, sp
- bl CpuFastSet
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0808088C: .4byte 0x7fff7fff
-_08080890: .4byte gPlttBufferFaded
-_08080894: .4byte 0x01000100
- thumb_func_end palette_bg_fill_white
-
- thumb_func_start palette_bg_fill_black
-palette_bg_fill_black: @ 8080898
- push {lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- ldr r1, _080808B0 @ =gPlttBufferFaded
- ldr r2, _080808B4 @ =0x01000100
- mov r0, sp
- bl CpuFastSet
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080808B0: .4byte gPlttBufferFaded
-_080808B4: .4byte 0x01000100
- thumb_func_end palette_bg_fill_black
-
- thumb_func_start pal_fill_for_map_transition
-pal_fill_for_map_transition: @ 80808B8
- push {r4,lr}
- bl get_map_light_from_warp0
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sav1_map_get_light_level
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl fade_type_for_given_maplight_pair
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080808E2
- cmp r0, 0x1
- beq _080808F0
- b _080808FC
-_080808E2:
- movs r0, 0
- movs r1, 0
- bl fade_screen
- bl palette_bg_fill_black
- b _080808FC
-_080808F0:
- movs r0, 0x2
- movs r1, 0
- bl fade_screen
- bl palette_bg_fill_white
-_080808FC:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pal_fill_for_map_transition
-
- thumb_func_start pal_fill_black
-pal_fill_black: @ 8080904
- push {lr}
- movs r0, 0
- movs r1, 0
- bl fade_screen
- bl palette_bg_fill_black
- pop {r0}
- bx r0
- thumb_func_end pal_fill_black
-
- thumb_func_start fade_8080918
-fade_8080918: @ 8080918
- push {r4,lr}
- bl sav1_map_get_light_level
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl warp1_get_mapheader
- ldrb r1, [r0, 0x17]
- adds r0, r4, 0
- bl sub_810CDB8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _0808093E
- cmp r0, 0x1
- beq _08080948
- b _08080950
-_0808093E:
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- b _08080950
-_08080948:
- movs r0, 0x3
- movs r1, 0
- bl fade_screen
-_08080950:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end fade_8080918
-
- thumb_func_start sub_8080958
-sub_8080958: @ 8080958
- push {lr}
- lsls r0, 24
- movs r1, 0
- cmp r0, 0
- bne _08080964
- movs r1, 0x1
-_08080964:
- adds r0, r1, 0
- bl sub_8059B88
- pop {r0}
- bx r0
- thumb_func_end sub_8080958
-
- thumb_func_start task0A_asap_script_env_2_enable_and_set_ctx_running
-task0A_asap_script_env_2_enable_and_set_ctx_running: @ 8080970
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8080E70
- cmp r0, 0x1
- bne _08080988
- adds r0, r4, 0
- bl DestroyTask
- bl EnableBothScriptContexts
-_08080988:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task0A_asap_script_env_2_enable_and_set_ctx_running
-
- thumb_func_start sub_8080990
-sub_8080990: @ 8080990
- push {lr}
- bl ScriptContext2_Enable
- bl sub_8053E90
- bl pal_fill_black
- ldr r0, _080809AC @ =task0A_asap_script_env_2_enable_and_set_ctx_running
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080809AC: .4byte task0A_asap_script_env_2_enable_and_set_ctx_running
- thumb_func_end sub_8080990
-
- thumb_func_start sub_80809B0
-sub_80809B0: @ 80809B0
- push {lr}
- bl ScriptContext2_Enable
- bl pal_fill_black
- ldr r0, _080809C8 @ =task0A_asap_script_env_2_enable_and_set_ctx_running
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080809C8: .4byte task0A_asap_script_env_2_enable_and_set_ctx_running
- thumb_func_end sub_80809B0
-
thumb_func_start task_mpl_807DD60
task_mpl_807DD60: @ 80809CC
push {r4,r5,lr}
diff --git a/asm/rom_8094928.s b/asm/rom_8094928.s
index d272b277a..a9d0e3dcc 100644
--- a/asm/rom_8094928.s
+++ b/asm/rom_8094928.s
@@ -6,320 +6,6 @@
.text
- thumb_func_start unref_sub_8094928
-unref_sub_8094928: @ 8094928
- push {lr}
- ldr r1, _08094938 @ =gPokemonStorage
- ldr r2, _0809493C @ =0x000083d0
- bl memcpy
- pop {r0}
- bx r0
- .align 2, 0
-_08094938: .4byte gPokemonStorage
-_0809493C: .4byte 0x000083d0
- thumb_func_end unref_sub_8094928
-
- thumb_func_start unref_sub_8094940
-unref_sub_8094940: @ 8094940
- push {lr}
- adds r1, r0, 0
- ldr r0, _08094950 @ =gPokemonStorage
- ldr r2, _08094954 @ =0x000083d0
- bl memcpy
- pop {r0}
- bx r0
- .align 2, 0
-_08094950: .4byte gPokemonStorage
-_08094954: .4byte 0x000083d0
- thumb_func_end unref_sub_8094940
-
- thumb_func_start sub_8094958
-sub_8094958: @ 8094958
- push {r4,lr}
- ldr r4, _08094974 @ =gUnknown_02038470
- bl sub_803FBBC
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_8094998
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08094974: .4byte gUnknown_02038470
- thumb_func_end sub_8094958
-
- thumb_func_start sub_8094978
-sub_8094978: @ 8094978
- push {lr}
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r2, 1
- adds r0, r2
- ldr r3, _08094994 @ =0x0201606c
- adds r0, r3
- bl sub_8094A74
- pop {r0}
- bx r0
- .align 2, 0
-_08094994: .4byte 0x0201606c
- thumb_func_end sub_8094978
-
- thumb_func_start sub_8094998
-sub_8094998: @ 8094998
- push {r4-r6,lr}
- sub sp, 0x8
- adds r6, r0, 0
- lsls r1, 24
- lsrs r4, r1, 24
- bl IsLinkDoubleBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080949CE
- cmp r4, 0
- beq _080949C0
- movs r0, 0x30
- strb r0, [r6]
- movs r0, 0x45
- strb r0, [r6, 0x1]
- movs r0, 0x12
- strb r0, [r6, 0x2]
- b _08094A68
-_080949C0:
- movs r0, 0x3
- strb r0, [r6]
- movs r0, 0x12
- strb r0, [r6, 0x1]
- movs r0, 0x45
- strb r0, [r6, 0x2]
- b _08094A68
-_080949CE:
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- bne _08094A0C
- movs r5, 0x1
- movs r0, 0
- bl battle_get_side_with_given_state
- mov r2, sp
- ldr r1, _08094A08 @ =gUnknown_02024A6A
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r0, [r0]
- strb r0, [r2]
- movs r4, 0
- mov r1, sp
-_080949F2:
- ldrb r0, [r1]
- cmp r4, r0
- beq _08094A00
- mov r2, sp
- adds r0, r2, r5
- strb r4, [r0]
- adds r5, 0x1
-_08094A00:
- adds r4, 0x1
- cmp r4, 0x5
- ble _080949F2
- b _08094A50
- .align 2, 0
-_08094A08: .4byte gUnknown_02024A6A
-_08094A0C:
- movs r5, 0x2
- movs r0, 0
- bl battle_get_side_with_given_state
- mov r1, sp
- ldr r4, _08094A70 @ =gUnknown_02024A6A
- lsls r0, 24
- lsrs r0, 23
- adds r0, r4
- ldrh r0, [r0]
- strb r0, [r1]
- movs r0, 0x2
- bl battle_get_side_with_given_state
- mov r1, sp
- lsls r0, 24
- lsrs r0, 23
- adds r0, r4
- ldrh r0, [r0]
- strb r0, [r1, 0x1]
- movs r4, 0
-_08094A36:
- ldrb r0, [r1]
- cmp r4, r0
- beq _08094A4A
- ldrb r0, [r1, 0x1]
- cmp r4, r0
- beq _08094A4A
- mov r2, sp
- adds r0, r2, r5
- strb r4, [r0]
- adds r5, 0x1
-_08094A4A:
- adds r4, 0x1
- cmp r4, 0x5
- ble _08094A36
-_08094A50:
- movs r4, 0
- mov r3, sp
-_08094A54:
- adds r0, r6, r4
- ldrb r1, [r3]
- lsls r1, 4
- ldrb r2, [r3, 0x1]
- orrs r1, r2
- strb r1, [r0]
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x2
- ble _08094A54
-_08094A68:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08094A70: .4byte gUnknown_02024A6A
- thumb_func_end sub_8094998
-
- thumb_func_start sub_8094A74
-sub_8094A74: @ 8094A74
- push {r4-r7,lr}
- sub sp, 0x8
- adds r5, r0, 0
- adds r0, r2, 0
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r0, 24
- lsrs r0, 24
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- bne _08094A9C
- movs r0, 0
- bl battle_get_side_with_given_state
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x2
- b _08094AA8
-_08094A9C:
- movs r0, 0x1
- bl battle_get_side_with_given_state
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x3
-_08094AA8:
- bl battle_get_side_with_given_state
- lsls r0, 24
- lsrs r6, r0, 24
- bl IsLinkDoubleBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08094ADC
- cmp r7, 0
- beq _08094ACE
- movs r0, 0x30
- strb r0, [r5]
- movs r0, 0x45
- strb r0, [r5, 0x1]
- movs r0, 0x12
- strb r0, [r5, 0x2]
- b _08094B5E
-_08094ACE:
- movs r0, 0x3
- strb r0, [r5]
- movs r0, 0x12
- strb r0, [r5, 0x1]
- movs r0, 0x45
- strb r0, [r5, 0x2]
- b _08094B5E
-_08094ADC:
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- bne _08094B14
- movs r3, 0x1
- mov r2, sp
- ldr r1, _08094B10 @ =gUnknown_02024A6A
- lsls r0, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- strb r0, [r2]
- movs r4, 0
- mov r1, sp
-_08094AF8:
- ldrb r0, [r1]
- cmp r4, r0
- beq _08094B06
- mov r2, sp
- adds r0, r2, r3
- strb r4, [r0]
- adds r3, 0x1
-_08094B06:
- adds r4, 0x1
- cmp r4, 0x5
- ble _08094AF8
- b _08094B46
- .align 2, 0
-_08094B10: .4byte gUnknown_02024A6A
-_08094B14:
- movs r3, 0x2
- mov r1, sp
- ldr r2, _08094B68 @ =gUnknown_02024A6A
- lsls r0, r4, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1]
- lsls r0, r6, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1, 0x1]
- movs r4, 0
-_08094B2C:
- ldrb r0, [r1]
- cmp r4, r0
- beq _08094B40
- ldrb r0, [r1, 0x1]
- cmp r4, r0
- beq _08094B40
- mov r2, sp
- adds r0, r2, r3
- strb r4, [r0]
- adds r3, 0x1
-_08094B40:
- adds r4, 0x1
- cmp r4, 0x5
- ble _08094B2C
-_08094B46:
- movs r4, 0
- mov r3, sp
-_08094B4A:
- adds r0, r5, r4
- ldrb r1, [r3]
- lsls r1, 4
- ldrb r2, [r3, 0x1]
- orrs r1, r2
- strb r1, [r0]
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x2
- ble _08094B4A
-_08094B5E:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08094B68: .4byte gUnknown_02024A6A
- thumb_func_end sub_8094A74
-
thumb_func_start sub_8094B6C
sub_8094B6C: @ 8094B6C
push {r4-r7,lr}
diff --git a/asm/rom_810CBB4.s b/asm/rom_810CBB4.s
index 78fb7e6ac..b4223f094 100644
--- a/asm/rom_810CBB4.s
+++ b/asm/rom_810CBB4.s
@@ -47,7 +47,7 @@ sub_810CBFC: @ 810CBFC
lsls r0, 24
lsrs r0, 24
ldr r2, _0810CC24 @ =gUnknown_0202FF84
- ldr r1, _0810CC28 @ =gUnknown_03005CE0
+ ldr r1, _0810CC28 @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
str r1, [r2]
ldr r2, _0810CC2C @ =gTasks
@@ -63,7 +63,7 @@ sub_810CBFC: @ 810CBFC
bx r0
.align 2, 0
_0810CC24: .4byte gUnknown_0202FF84
-_0810CC28: .4byte gUnknown_03005CE0
+_0810CC28: .4byte gLastFieldPokeMenuOpened
_0810CC2C: .4byte gTasks
_0810CC30: .4byte sub_810CC34
thumb_func_end sub_810CBFC
@@ -1003,8 +1003,8 @@ _0810D370:
bx r1
thumb_func_end sub_810D32C
- thumb_func_start sub_810D378
-sub_810D378: @ 810D378
+ thumb_func_start UpdateShoalTideFlag
+UpdateShoalTideFlag: @ 810D378
push {lr}
bl get_map_light_from_warp0
lsls r0, 24
@@ -1038,7 +1038,7 @@ _0810D3BE:
bx r0
.align 2, 0
_0810D3C4: .4byte 0x0000083a
- thumb_func_end sub_810D378
+ thumb_func_end UpdateShoalTideFlag
thumb_func_start sub_810D3C8
sub_810D3C8: @ 810D3C8
@@ -2131,7 +2131,7 @@ _0810DBDC:
adds r0, r1
ldrb r1, [r0, 0x13]
movs r0, 0
- bl sub_805983C
+ bl GetRivalAvatarGraphicsIdByStateIdAndGender
lsls r0, 24
lsrs r0, 24
mov r1, sp
diff --git a/asm/rom_81258BC.s b/asm/rom_81258BC.s
index a169258ae..aadab16fd 100644
--- a/asm/rom_81258BC.s
+++ b/asm/rom_81258BC.s
@@ -2244,14 +2244,14 @@ sub_812BFD4: @ 812BFD4
movs r0, 0x33
bl FieldEffectStart
ldr r0, _0812BFE8 @ =gUnknown_0202FF84
- ldr r1, _0812BFEC @ =gUnknown_03005CE0
+ ldr r1, _0812BFEC @ =gLastFieldPokeMenuOpened
ldrb r1, [r1]
str r1, [r0]
pop {r0}
bx r0
.align 2, 0
_0812BFE8: .4byte gUnknown_0202FF84
-_0812BFEC: .4byte gUnknown_03005CE0
+_0812BFEC: .4byte gLastFieldPokeMenuOpened
thumb_func_end sub_812BFD4
thumb_func_start FldEff_SweetScent
@@ -18242,7 +18242,7 @@ SetUpFieldMove_SoftBoiled: @ 8133CCC
push {r4-r6,lr}
mov r6, r8
push {r6}
- ldr r0, _08133D14 @ =gUnknown_03005CE0
+ ldr r0, _08133D14 @ =gLastFieldPokeMenuOpened
mov r8, r0
ldrb r0, [r0]
movs r6, 0x64
@@ -18273,7 +18273,7 @@ SetUpFieldMove_SoftBoiled: @ 8133CCC
movs r0, 0
b _08133D1E
.align 2, 0
-_08133D14: .4byte gUnknown_03005CE0
+_08133D14: .4byte gLastFieldPokeMenuOpened
_08133D18: .4byte gPlayerParty
_08133D1C:
movs r0, 0x1
@@ -21701,7 +21701,7 @@ _08135750: .4byte 0x00000564
_08135754:
movs r2, 0
ldr r4, _0813576C @ =gSaveBlock2 + 0x565
- ldr r3, _08135770 @ =gUnknown_02039270
+ ldr r3, _08135770 @ =gSelectedOrderFromParty
_0813575A:
adds r0, r2, r4
adds r1, r2, r3
@@ -21713,7 +21713,7 @@ _0813575A:
b _0813589A
.align 2, 0
_0813576C: .4byte gSaveBlock2 + 0x565
-_08135770: .4byte gUnknown_02039270
+_08135770: .4byte gSelectedOrderFromParty
_08135774:
ldr r3, _081357C0 @ =0x00000564
adds r0, r5, r3
@@ -22042,7 +22042,7 @@ _08135A10: .4byte 0x00000554
sub_8135A14: @ 8135A14
push {r4,lr}
movs r2, 0
- ldr r4, _08135A34 @ =gUnknown_02039270
+ ldr r4, _08135A34 @ =gSelectedOrderFromParty
ldr r3, _08135A38 @ =gSaveBlock2 + 0x565
_08135A1C:
adds r0, r2, r4
@@ -22057,7 +22057,7 @@ _08135A1C:
pop {r0}
bx r0
.align 2, 0
-_08135A34: .4byte gUnknown_02039270
+_08135A34: .4byte gSelectedOrderFromParty
_08135A38: .4byte gSaveBlock2 + 0x565
thumb_func_end sub_8135A14
@@ -22293,7 +22293,7 @@ _08135BF8:
orrs r0, r1
strb r0, [r2]
movs r0, 0x2
- bl sub_8125D44
+ bl TrySavingData
pop {r4,r5}
pop {r0}
bx r0
diff --git a/asm/rotating_gate.s b/asm/rotating_gate.s
index 9c7b3847b..a553802e8 100644
--- a/asm/rotating_gate.s
+++ b/asm/rotating_gate.s
@@ -428,7 +428,7 @@ sub_80C7C94: @ 80C7C94
adds r0, r4, 0x4
lsls r0, 24
lsrs r4, r0, 24
- bl sub_80E6034
+ bl GetPlayerSpeed
lsls r0, 16
asrs r0, 16
cmp r0, 0x1
@@ -451,7 +451,7 @@ _080C7CDA:
adds r0, 0x8
lsls r0, 24
lsrs r4, r0, 24
- bl sub_80E6034
+ bl GetPlayerSpeed
lsls r0, 16
asrs r0, 16
cmp r0, 0x1
diff --git a/asm/script_movement.s b/asm/script_movement.s
deleted file mode 100644
index 72523c639..000000000
--- a/asm/script_movement.s
+++ /dev/null
@@ -1,596 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start exec_movement
-exec_movement: @ 80A20D4
- push {r4,lr}
- sub sp, 0x4
- adds r4, r3, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- beq _080A20F6
- movs r0, 0x1
- b _080A211E
-_080A20F6:
- ldr r0, _080A2128 @ =sub_80A244C
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _080A2108
- movs r0, 0x32
- bl sub_80A2198
-_080A2108:
- bl sub_80A21E0
- lsls r0, 24
- lsrs r0, 24
- mov r1, sp
- ldrb r1, [r1]
- adds r2, r4, 0
- bl sub_80A21F4
- lsls r0, 24
- lsrs r0, 24
-_080A211E:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080A2128: .4byte sub_80A244C
- thumb_func_end exec_movement
-
- thumb_func_start sub_80A212C
-sub_80A212C: @ 80A212C
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _080A216E
- bl sub_80A21E0
- lsls r0, 24
- lsrs r4, r0, 24
- mov r0, sp
- ldrb r1, [r0]
- adds r0, r4, 0
- bl sub_80A2260
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x10
- beq _080A216E
- adds r0, r4, 0
- bl sub_80A2370
- lsls r0, 24
- lsrs r0, 24
- b _080A2170
-_080A216E:
- movs r0, 0x1
-_080A2170:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80A212C
-
- thumb_func_start sub_80A2178
-sub_80A2178: @ 80A2178
- push {r4,lr}
- bl sub_80A21E0
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xFF
- beq _080A2192
- adds r0, r4, 0
- bl sub_80A2408
- adds r0, r4, 0
- bl DestroyTask
-_080A2192:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A2178
-
- thumb_func_start sub_80A2198
-sub_80A2198: @ 80A2198
- push {r4,r5,lr}
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _080A21D4 @ =sub_80A244C
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x1
- lsls r1, r0, 2
- adds r1, r0
- lsls r3, r1, 3
- ldr r5, _080A21D8 @ =gTasks + 0x8
- ldr r0, _080A21DC @ =0x0000ffff
- adds r4, r0, 0
-_080A21B8:
- lsls r0, r2, 1
- adds r0, r3
- adds r0, r5
- ldrh r1, [r0]
- orrs r1, r4
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _080A21B8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080A21D4: .4byte sub_80A244C
-_080A21D8: .4byte gTasks + 0x8
-_080A21DC: .4byte 0x0000ffff
- thumb_func_end sub_80A2198
-
- thumb_func_start sub_80A21E0
-sub_80A21E0: @ 80A21E0
- push {lr}
- ldr r0, _080A21F0 @ =sub_80A244C
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_080A21F0: .4byte sub_80A244C
- thumb_func_end sub_80A21E0
-
- thumb_func_start sub_80A21F4
-sub_80A21F4: @ 80A21F4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r9, r2
- lsls r0, 24
- lsrs r5, r0, 24
- adds r7, r5, 0
- lsls r1, 24
- lsrs r6, r1, 24
- mov r8, r6
- adds r0, r5, 0
- adds r1, r6, 0
- bl sub_80A2260
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x10
- beq _080A2230
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80A2370
- lsls r0, 24
- cmp r0, 0
- beq _080A2250
- adds r0, r5, 0
- adds r1, r4, 0
- adds r2, r6, 0
- b _080A2246
-_080A2230:
- adds r0, r7, 0
- movs r1, 0xFF
- bl sub_80A2260
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x10
- beq _080A2250
- adds r0, r7, 0
- adds r1, r4, 0
- mov r2, r8
-_080A2246:
- mov r3, r9
- bl sub_80A23C8
- movs r0, 0
- b _080A2252
-_080A2250:
- movs r0, 0x1
-_080A2252:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80A21F4
-
- thumb_func_start sub_80A2260
-sub_80A2260: @ 80A2260
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080A2284 @ =gTasks + 0x8
- adds r1, r0
- adds r1, 0x2
- movs r2, 0
-_080A2278:
- ldrb r0, [r1]
- cmp r0, r3
- bne _080A2288
- adds r0, r2, 0
- b _080A2296
- .align 2, 0
-_080A2284: .4byte gTasks + 0x8
-_080A2288:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- adds r1, 0x1
- cmp r2, 0xF
- bls _080A2278
- movs r0, 0x10
-_080A2296:
- pop {r1}
- bx r1
- thumb_func_end sub_80A2260
-
- thumb_func_start sub_80A229C
-sub_80A229C: @ 80A229C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080A22CC @ =gTasks + 0x8
- adds r1, r0
- adds r1, 0x2
- str r1, [r2]
- movs r0, 0
- cmp r0, r3
- bcs _080A22C8
-_080A22BA:
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- adds r1, 0x1
- cmp r0, r3
- bcc _080A22BA
- str r1, [r2]
-_080A22C8:
- pop {r0}
- bx r0
- .align 2, 0
-_080A22CC: .4byte gTasks + 0x8
- thumb_func_end sub_80A229C
-
- thumb_func_start sub_80A22D0
-sub_80A22D0: @ 80A22D0
- push {r4,lr}
- sub sp, 0x4
- adds r4, r2, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r4, 24
- lsrs r4, 24
- mov r2, sp
- bl sub_80A229C
- ldr r0, [sp]
- strb r4, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A22D0
-
- thumb_func_start sub_80A22F4
-sub_80A22F4: @ 80A22F4
- push {r4,lr}
- sub sp, 0x4
- adds r4, r2, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r2, sp
- bl sub_80A229C
- ldr r0, [sp]
- ldrb r0, [r0]
- strb r0, [r4]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A22F4
-
- thumb_func_start sub_80A2318
-sub_80A2318: @ 80A2318
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- ldr r2, _080A2340 @ =gBitTable
- lsrs r1, 22
- adds r1, r2
- ldr r2, [r1]
- mvns r2, r2
- lsls r2, 16
- lsrs r2, 16
- ldr r3, _080A2344 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r3
- ldrh r0, [r1, 0x8]
- ands r2, r0
- strh r2, [r1, 0x8]
- bx lr
- .align 2, 0
-_080A2340: .4byte gBitTable
-_080A2344: .4byte gTasks
- thumb_func_end sub_80A2318
-
- thumb_func_start sub_80A2348
-sub_80A2348: @ 80A2348
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- ldr r3, _080A2368 @ =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r2, r3
- ldr r0, _080A236C @ =gBitTable
- lsrs r1, 22
- adds r1, r0
- ldr r0, [r1]
- ldrh r1, [r2, 0x8]
- orrs r0, r1
- strh r0, [r2, 0x8]
- bx lr
- .align 2, 0
-_080A2368: .4byte gTasks
-_080A236C: .4byte gBitTable
- thumb_func_end sub_80A2348
-
- thumb_func_start sub_80A2370
-sub_80A2370: @ 80A2370
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- ldr r3, _080A2398 @ =gTasks
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- adds r2, r3
- ldr r0, _080A239C @ =gBitTable
- lsrs r1, 22
- adds r1, r0
- ldr r0, [r1]
- ldrh r1, [r2, 0x8]
- ands r0, r1
- cmp r0, 0
- bne _080A23A0
- movs r0, 0
- b _080A23A2
- .align 2, 0
-_080A2398: .4byte gTasks
-_080A239C: .4byte gBitTable
-_080A23A0:
- movs r0, 0x1
-_080A23A2:
- pop {r1}
- bx r1
- thumb_func_end sub_80A2370
-
- thumb_func_start npc_obj_offscreen_culling_and_flag_update
-npc_obj_offscreen_culling_and_flag_update: @ 80A23A8
- lsls r0, 24
- ldr r2, _080A23B4 @ =gUnknown_020384F8
- lsrs r0, 22
- adds r0, r2
- str r1, [r0]
- bx lr
- .align 2, 0
-_080A23B4: .4byte gUnknown_020384F8
- thumb_func_end npc_obj_offscreen_culling_and_flag_update
-
- thumb_func_start sub_80A23B8
-sub_80A23B8: @ 80A23B8
- lsls r0, 24
- ldr r1, _080A23C4 @ =gUnknown_020384F8
- lsrs r0, 22
- adds r0, r1
- ldr r0, [r0]
- bx lr
- .align 2, 0
-_080A23C4: .4byte gUnknown_020384F8
- thumb_func_end sub_80A23B8
-
- thumb_func_start sub_80A23C8
-sub_80A23C8: @ 80A23C8
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r5, r0, 0
- adds r4, r1, 0
- adds r6, r2, 0
- mov r8, r3
- lsls r5, 24
- lsrs r5, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r6, 24
- lsrs r6, 24
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80A2318
- adds r0, r4, 0
- mov r1, r8
- bl npc_obj_offscreen_culling_and_flag_update
- adds r0, r5, 0
- adds r1, r4, 0
- adds r2, r6, 0
- bl sub_80A22D0
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80A23C8
-
- thumb_func_start sub_80A2408
-sub_80A2408: @ 80A2408
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _080A2444 @ =gTasks + 0x8
- adds r1, r0
- adds r4, r1, 0x2
- movs r5, 0
-_080A241C:
- ldrb r0, [r4]
- cmp r0, 0xFF
- beq _080A2432
- adds r1, r0, 0
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _080A2448 @ =gMapObjects
- adds r0, r1
- bl UnfreezeMapObject
-_080A2432:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- adds r4, 0x1
- cmp r5, 0xF
- bls _080A241C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080A2444: .4byte gTasks + 0x8
-_080A2448: .4byte gMapObjects
- thumb_func_end sub_80A2408
-
- thumb_func_start sub_80A244C
-sub_80A244C: @ 80A244C
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r7, r0, 24
- movs r5, 0
- mov r6, sp
-_080A2458:
- adds r0, r7, 0
- adds r1, r5, 0
- mov r2, sp
- bl sub_80A22F4
- ldrb r0, [r6]
- cmp r0, 0xFF
- beq _080A247C
- adds r4, r0, 0
- adds r0, r5, 0
- bl sub_80A23B8
- adds r3, r0, 0
- adds r0, r7, 0
- adds r1, r5, 0
- adds r2, r4, 0
- bl sub_80A2490
-_080A247C:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0xF
- bls _080A2458
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80A244C
-
- thumb_func_start sub_80A2490
-sub_80A2490: @ 80A2490
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r5, r3, 0
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- mov r8, r6
- lsls r2, 24
- lsrs r2, 24
- lsls r0, r2, 3
- adds r0, r2
- lsls r0, 2
- ldr r1, _080A24E0 @ =gMapObjects
- adds r4, r0, r1
- adds r0, r4, 0
- bl FieldObjectIsSpecialAnimActive
- lsls r0, 24
- cmp r0, 0
- beq _080A24C8
- adds r0, r4, 0
- bl FieldObjectClearAnimIfSpecialAnimFinished
- lsls r0, 24
- cmp r0, 0
- beq _080A24FA
-_080A24C8:
- ldrb r1, [r5]
- cmp r1, 0xFE
- bne _080A24E4
- adds r0, r7, 0
- adds r1, r6, 0
- bl sub_80A2348
- adds r0, r4, 0
- bl FreezeMapObject
- b _080A24FA
- .align 2, 0
-_080A24E0: .4byte gMapObjects
-_080A24E4:
- adds r0, r4, 0
- bl FieldObjectSetSpecialAnim
- lsls r0, 24
- cmp r0, 0
- bne _080A24FA
- adds r5, 0x1
- mov r0, r8
- adds r1, r5, 0
- bl npc_obj_offscreen_culling_and_flag_update
-_080A24FA:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80A2490
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/script_pokemon_util_80C4BF0.s b/asm/script_pokemon_util_80C4BF0.s
deleted file mode 100644
index 6777ca135..000000000
--- a/asm/script_pokemon_util_80C4BF0.s
+++ /dev/null
@@ -1,1399 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80C4BF0
-sub_80C4BF0: @ 80C4BF0
- push {r4,lr}
- ldr r2, _080C4C1C @ =gSaveBlock1
- ldr r1, _080C4C20 @ =gContestMons
- ldrb r3, [r1, 0x15]
- movs r4, 0x9B
- lsls r4, 5
- adds r0, r2, r4
- strh r3, [r0]
- adds r0, r1, 0
- adds r0, 0x55
- ldrb r3, [r0]
- adds r4, 0x2
- adds r0, r2, r4
- strh r3, [r0]
- adds r1, 0x95
- ldrb r0, [r1]
- ldr r1, _080C4C24 @ =0x00001364
- adds r2, r1
- strh r0, [r2]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080C4C1C: .4byte gSaveBlock1
-_080C4C20: .4byte gContestMons
-_080C4C24: .4byte 0x00001364
- thumb_func_end sub_80C4BF0
-
- thumb_func_start sub_80C4C28
-sub_80C4C28: @ 80C4C28
- push {lr}
- ldr r0, _080C4C40 @ =gSpecialVar_0x8005
- ldrb r0, [r0]
- adds r1, r0, 0
- cmp r0, 0x1
- beq _080C4C4E
- cmp r0, 0x1
- bgt _080C4C44
- cmp r0, 0
- beq _080C4C4A
- b _080C4C56
- .align 2, 0
-_080C4C40: .4byte gSpecialVar_0x8005
-_080C4C44:
- cmp r1, 0x2
- beq _080C4C52
- b _080C4C56
-_080C4C4A:
- movs r1, 0x3
- b _080C4C58
-_080C4C4E:
- movs r1, 0x4
- b _080C4C58
-_080C4C52:
- movs r1, 0x5
- b _080C4C58
-_080C4C56:
- movs r1, 0x64
-_080C4C58:
- ldr r0, _080C4C60 @ =gSpecialVar_0x8004
- strh r1, [r0]
- pop {r0}
- bx r0
- .align 2, 0
-_080C4C60: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80C4C28
-
- thumb_func_start sub_80C4C64
-sub_80C4C64: @ 80C4C64
- push {lr}
- bl sub_80C46EC
- bl sub_80C4740
- bl sub_80C48F4
- pop {r0}
- bx r0
- thumb_func_end sub_80C4C64
-
- thumb_func_start sub_80C4C78
-sub_80C4C78: @ 80C4C78
- push {lr}
- ldr r0, _080C4C8C @ =gScriptContestCategory
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _080C4CB8
- lsls r0, 2
- ldr r1, _080C4C90 @ =_080C4C94
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080C4C8C: .4byte gScriptContestCategory
-_080C4C90: .4byte _080C4C94
- .align 2, 0
-_080C4C94:
- .4byte _080C4CA8
- .4byte _080C4CAC
- .4byte _080C4CB0
- .4byte _080C4CB4
- .4byte _080C4CB8
-_080C4CA8:
- movs r0, 0x8
- b _080C4CBA
-_080C4CAC:
- movs r0, 0x9
- b _080C4CBA
-_080C4CB0:
- movs r0, 0xA
- b _080C4CBA
-_080C4CB4:
- movs r0, 0xB
- b _080C4CBA
-_080C4CB8:
- movs r0, 0xC
-_080C4CBA:
- ldr r1, _080C4CD0 @ =gSaveBlock1
- lsls r0, 5
- adds r0, r1
- ldr r1, _080C4CD4 @ =0x00002e04
- adds r0, r1
- ldrh r1, [r0]
- cmp r1, 0
- bne _080C4CDC
- ldr r0, _080C4CD8 @ =gSpecialVar_0x8004
- strh r1, [r0]
- b _080C4CE2
- .align 2, 0
-_080C4CD0: .4byte gSaveBlock1
-_080C4CD4: .4byte 0x00002e04
-_080C4CD8: .4byte gSpecialVar_0x8004
-_080C4CDC:
- ldr r1, _080C4CE8 @ =gSpecialVar_0x8004
- movs r0, 0x1
- strh r0, [r1]
-_080C4CE2:
- pop {r0}
- bx r0
- .align 2, 0
-_080C4CE8: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80C4C78
-
- thumb_func_start sub_80C4CEC
-sub_80C4CEC: @ 80C4CEC
- push {lr}
- movs r0, 0xFF
- bl sub_80B2A7C
- pop {r0}
- bx r0
- thumb_func_end sub_80C4CEC
-
- thumb_func_start sub_80C4CF8
-sub_80C4CF8: @ 80C4CF8
- push {lr}
- ldr r0, _080C4D28 @ =gUnknown_02038690
- ldr r1, _080C4D2C @ =gContestPlayerMonIndex
- ldrb r2, [r1]
- adds r0, r2, r0
- ldrb r0, [r0]
- cmp r0, 0
- bne _080C4D40
- ldr r0, _080C4D30 @ =gScriptContestRank
- ldrh r0, [r0]
- cmp r0, 0x3
- bne _080C4D40
- ldr r1, _080C4D34 @ =gUnknown_02038678
- lsls r0, r2, 1
- adds r0, r1
- movs r2, 0
- ldrsh r1, [r0, r2]
- ldr r0, _080C4D38 @ =0x0000031f
- cmp r1, r0
- ble _080C4D40
- ldr r1, _080C4D3C @ =gSpecialVar_0x8004
- movs r0, 0x1
- b _080C4D44
- .align 2, 0
-_080C4D28: .4byte gUnknown_02038690
-_080C4D2C: .4byte gContestPlayerMonIndex
-_080C4D30: .4byte gScriptContestRank
-_080C4D34: .4byte gUnknown_02038678
-_080C4D38: .4byte 0x0000031f
-_080C4D3C: .4byte gSpecialVar_0x8004
-_080C4D40:
- ldr r1, _080C4D4C @ =gSpecialVar_0x8004
- movs r0, 0
-_080C4D44:
- strh r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_080C4D4C: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80C4CF8
-
- thumb_func_start sub_80C4D50
-sub_80C4D50: @ 80C4D50
- push {lr}
- movs r3, 0
- ldr r0, _080C4D78 @ =gSaveBlock1
- ldr r1, _080C4D7C @ =0x00002f04
- adds r2, r0, r1
- movs r1, 0x4
-_080C4D5C:
- ldrh r0, [r2]
- cmp r0, 0
- beq _080C4D68
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
-_080C4D68:
- adds r2, 0x20
- subs r1, 0x1
- cmp r1, 0
- bge _080C4D5C
- adds r0, r3, 0
- pop {r1}
- bx r1
- .align 2, 0
-_080C4D78: .4byte gSaveBlock1
-_080C4D7C: .4byte 0x00002f04
- thumb_func_end sub_80C4D50
-
- thumb_func_start sub_80C4D80
-sub_80C4D80: @ 80C4D80
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- ldr r0, _080C4EA0 @ =gUnknown_02038670
- mov r12, r0
- ldr r1, _080C4EA4 @ =gSpecialVar_0x8006
- mov r8, r1
- ldr r2, _080C4EA8 @ =gStringVar1
- mov r9, r2
- mov r2, r12
- mov r1, sp
- movs r6, 0x3
-_080C4D9E:
- ldrh r0, [r2]
- strh r0, [r1]
- adds r2, 0x2
- adds r1, 0x2
- subs r6, 0x1
- cmp r6, 0
- bge _080C4D9E
- movs r6, 0
-_080C4DAE:
- movs r1, 0x3
- cmp r1, r6
- ble _080C4DD8
-_080C4DB4:
- subs r4, r1, 0x1
- lsls r0, r4, 1
- mov r5, sp
- adds r3, r5, r0
- lsls r0, r1, 1
- adds r2, r5, r0
- ldrh r5, [r3]
- movs r7, 0
- ldrsh r1, [r3, r7]
- movs r7, 0
- ldrsh r0, [r2, r7]
- cmp r1, r0
- bge _080C4DD2
- strh r5, [r2]
- strh r0, [r3]
-_080C4DD2:
- adds r1, r4, 0
- cmp r1, r6
- bgt _080C4DB4
-_080C4DD8:
- adds r6, 0x1
- cmp r6, 0x2
- ble _080C4DAE
- mov r2, r8
- ldrh r0, [r2]
- lsls r0, 1
- add r0, sp
- ldrh r0, [r0]
- movs r2, 0
- movs r7, 0
- movs r6, 0
- lsls r0, 16
- asrs r4, r0, 16
- adds r3, r0, 0
- mov r1, sp
-_080C4DF6:
- movs r5, 0
- ldrsh r0, [r1, r5]
- cmp r0, r4
- bne _080C4E12
- lsls r0, r2, 24
- movs r2, 0x80
- lsls r2, 17
- adds r0, r2
- lsrs r2, r0, 24
- mov r5, r8
- ldrh r5, [r5]
- cmp r6, r5
- bne _080C4E12
- adds r7, r2, 0
-_080C4E12:
- adds r1, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- ble _080C4DF6
- movs r6, 0
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- asrs r1, r3, 16
- lsls r2, 24
- mov r10, r2
- cmp r0, r1
- beq _080C4E40
- adds r2, r1, 0
- mov r1, sp
-_080C4E30:
- adds r1, 0x2
- adds r6, 0x1
- cmp r6, 0x3
- bgt _080C4E40
- movs r4, 0
- ldrsh r0, [r1, r4]
- cmp r0, r2
- bne _080C4E30
-_080C4E40:
- lsls r0, r6, 24
- lsrs r4, r0, 24
- adds r2, r7, 0
- movs r6, 0
- asrs r5, r3, 16
- mov r8, r5
- mov r1, r12
- movs r5, 0
- ldrsh r0, [r1, r5]
- cmp r8, r0
- bne _080C4E60
- cmp r7, 0x1
- beq _080C4E78
-_080C4E5A:
- subs r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
-_080C4E60:
- adds r6, 0x1
- cmp r6, 0x3
- bgt _080C4E78
- lsls r0, r6, 1
- add r0, r12
- asrs r1, r3, 16
- movs r5, 0
- ldrsh r0, [r0, r5]
- cmp r1, r0
- bne _080C4E60
- cmp r2, 0x1
- bne _080C4E5A
-_080C4E78:
- lsls r1, r6, 24
- lsrs r1, 24
- mov r0, r9
- bl sub_80C4698
- ldr r0, _080C4EAC @ =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080C4EB8
- ldr r0, _080C4EB0 @ =gStringVar2
- lsls r1, r6, 3
- subs r1, r6
- lsls r1, 2
- ldr r2, _080C4EB4 @ =gLinkPlayers + 0x8
- adds r1, r2
- bl sub_80C4674
- b _080C4EC4
- .align 2, 0
-_080C4EA0: .4byte gUnknown_02038670
-_080C4EA4: .4byte gSpecialVar_0x8006
-_080C4EA8: .4byte gStringVar1
-_080C4EAC: .4byte gIsLinkContest
-_080C4EB0: .4byte gStringVar2
-_080C4EB4: .4byte gLinkPlayers + 0x8
-_080C4EB8:
- ldr r0, _080C4ED8 @ =gStringVar2
- lsls r1, r6, 6
- ldr r2, _080C4EDC @ =gUnknown_0203857D
- adds r1, r2
- bl sub_80C4674
-_080C4EC4:
- mov r1, r10
- asrs r0, r1, 24
- cmp r0, 0x1
- beq _080C4ED0
- cmp r7, r0
- bne _080C4EE4
-_080C4ED0:
- ldr r0, _080C4EE0 @ =gSpecialVar_0x8006
- strh r4, [r0]
- b _080C4EEA
- .align 2, 0
-_080C4ED8: .4byte gStringVar2
-_080C4EDC: .4byte gUnknown_0203857D
-_080C4EE0: .4byte gSpecialVar_0x8006
-_080C4EE4:
- ldr r1, _080C4EFC @ =gSpecialVar_0x8006
- adds r0, r4, 0x4
- strh r0, [r1]
-_080C4EEA:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080C4EFC: .4byte gSpecialVar_0x8006
- thumb_func_end sub_80C4D80
-
- thumb_func_start ShowContestWinnerCleanup
-ShowContestWinnerCleanup: @ 80C4F00
- push {lr}
- ldr r0, _080C4F0C @ =c2_exit_to_overworld_1_continue_scripts_restart_music
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_080C4F0C: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music
- thumb_func_end ShowContestWinnerCleanup
-
- thumb_func_start ShowContestWinner
-ShowContestWinner: @ 80C4F10
- push {r4-r6,lr}
- ldr r6, _080C4F54 @ =gUnknown_0203856C
- ldrb r0, [r6]
- cmp r0, 0
- beq _080C4F40
- bl sub_80AAF30
- ldr r4, _080C4F58 @ =0x02000000
- ldr r0, _080C4F5C @ =0x00015ddf
- adds r1, r4, r0
- movs r5, 0
- movs r0, 0x1
- strb r0, [r1]
- movs r0, 0xFE
- movs r1, 0
- bl sub_80B2C4C
- ldr r1, _080C4F60 @ =0x00015dde
- adds r4, r1
- strb r0, [r4]
- movs r0, 0x3
- bl sub_80B2A7C
- strb r5, [r6]
-_080C4F40:
- ldr r0, _080C4F64 @ =CB2_ContestPainting
- bl SetMainCallback2
- ldr r1, _080C4F68 @ =gMain
- ldr r0, _080C4F6C @ =ShowContestWinnerCleanup
- str r0, [r1, 0x8]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080C4F54: .4byte gUnknown_0203856C
-_080C4F58: .4byte 0x02000000
-_080C4F5C: .4byte 0x00015ddf
-_080C4F60: .4byte 0x00015dde
-_080C4F64: .4byte CB2_ContestPainting
-_080C4F68: .4byte gMain
-_080C4F6C: .4byte ShowContestWinnerCleanup
- thumb_func_end ShowContestWinner
-
- thumb_func_start sub_80C4F70
-sub_80C4F70: @ 80C4F70
- push {r4,lr}
- ldr r0, _080C4FA8 @ =0x00004010
- ldr r4, _080C4FAC @ =gContestMons
- ldrb r1, [r4, 0x15]
- bl VarSet
- ldr r0, _080C4FB0 @ =0x00004011
- adds r1, r4, 0
- adds r1, 0x55
- ldrb r1, [r1]
- bl VarSet
- ldr r0, _080C4FB4 @ =0x00004012
- adds r1, r4, 0
- adds r1, 0x95
- ldrb r1, [r1]
- bl VarSet
- ldr r0, _080C4FB8 @ =0x00004013
- adds r1, r4, 0
- adds r1, 0xD5
- ldrb r1, [r1]
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080C4FA8: .4byte 0x00004010
-_080C4FAC: .4byte gContestMons
-_080C4FB0: .4byte 0x00004011
-_080C4FB4: .4byte 0x00004012
-_080C4FB8: .4byte 0x00004013
- thumb_func_end sub_80C4F70
-
- thumb_func_start GiveMonArtistRibbon
-GiveMonArtistRibbon: @ 80C4FBC
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r6, _080C501C @ =gUnknown_02038694
- ldrb r0, [r6]
- movs r5, 0x64
- muls r0, r5
- ldr r4, _080C5020 @ =gPlayerParty
- adds r0, r4
- movs r1, 0x46
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- mov r1, sp
- strb r0, [r1]
- cmp r0, 0
- bne _080C5038
- ldr r0, _080C5024 @ =gUnknown_02038690
- ldr r1, _080C5028 @ =gContestPlayerMonIndex
- ldrb r2, [r1]
- adds r0, r2, r0
- ldrb r0, [r0]
- cmp r0, 0
- bne _080C5038
- ldr r0, _080C502C @ =gScriptContestRank
- ldrh r0, [r0]
- cmp r0, 0x3
- bne _080C5038
- ldr r1, _080C5030 @ =gUnknown_02038678
- lsls r0, r2, 1
- adds r0, r1
- movs r2, 0
- ldrsh r1, [r0, r2]
- ldr r0, _080C5034 @ =0x0000031f
- cmp r1, r0
- ble _080C5038
- movs r1, 0x1
- mov r0, sp
- strb r1, [r0]
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r4
- movs r1, 0x46
- mov r2, sp
- bl SetMonData
- movs r0, 0x1
- b _080C503A
- .align 2, 0
-_080C501C: .4byte gUnknown_02038694
-_080C5020: .4byte gPlayerParty
-_080C5024: .4byte gUnknown_02038690
-_080C5028: .4byte gContestPlayerMonIndex
-_080C502C: .4byte gScriptContestRank
-_080C5030: .4byte gUnknown_02038678
-_080C5034: .4byte 0x0000031f
-_080C5038:
- movs r0, 0
-_080C503A:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GiveMonArtistRibbon
-
- thumb_func_start sub_80C5044
-sub_80C5044: @ 80C5044
- ldr r0, _080C504C @ =gUnknown_0203856C
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_080C504C: .4byte gUnknown_0203856C
- thumb_func_end sub_80C5044
-
- thumb_func_start ShowContestEntryMonPic
-ShowContestEntryMonPic: @ 80C5050
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- ldr r4, _080C513C @ =sub_80C5190
- adds r0, r4, 0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _080C512A
- movs r0, 0xA
- mov r10, r0
- movs r7, 0x3
- movs r1, 0x3
- movs r2, 0x13
- movs r3, 0xD
- bl MenuDrawTextWindow
- ldr r2, _080C5140 @ =gContestMons
- ldr r0, _080C5144 @ =gSpecialVar_0x8006
- ldrh r1, [r0]
- lsls r1, 6
- adds r0, r1, r2
- ldrh r6, [r0]
- adds r0, r2, 0
- adds r0, 0x38
- adds r0, r1, r0
- ldr r0, [r0]
- mov r8, r0
- adds r2, 0x3C
- adds r1, r2
- ldr r1, [r1]
- mov r9, r1
- adds r0, r4, 0
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080C5148 @ =gTasks
- lsls r5, r0, 2
- adds r5, r0
- lsls r5, 3
- adds r5, r1
- movs r0, 0
- strh r0, [r5, 0x8]
- strh r6, [r5, 0xA]
- lsls r0, r6, 3
- ldr r1, _080C514C @ =gMonFrontPicTable
- adds r0, r1
- ldr r1, _080C5150 @ =gMonFrontPicCoords
- lsls r2, r6, 2
- adds r2, r1
- ldrb r1, [r2]
- ldrb r2, [r2, 0x1]
- ldr r4, _080C5154 @ =gUnknown_081FAF4C
- ldr r3, [r4]
- ldr r4, [r4, 0x4]
- str r4, [sp]
- str r6, [sp, 0x4]
- mov r4, r8
- str r4, [sp, 0x8]
- bl HandleLoadSpecialPokePic
- adds r0, r6, 0
- mov r1, r9
- mov r2, r8
- bl sub_80409C8
- adds r4, r0, 0
- bl LoadCompressedObjectPalette
- adds r0, r6, 0
- movs r1, 0x1
- bl GetMonSpriteTemplate_803C56C
- ldr r0, _080C5158 @ =gUnknown_02024E8C
- ldrh r1, [r4, 0x4]
- strh r1, [r0, 0x2]
- movs r1, 0x78
- movs r2, 0x40
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0xC]
- mov r1, r10
- strh r1, [r5, 0xE]
- strh r7, [r5, 0x10]
- ldr r3, _080C515C @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r0, r3, 0
- adds r0, 0x1C
- adds r0, r1, r0
- ldr r2, _080C5160 @ =SpriteCallbackDummy
- str r2, [r0]
- adds r1, r3
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
-_080C512A:
- 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
-_080C513C: .4byte sub_80C5190
-_080C5140: .4byte gContestMons
-_080C5144: .4byte gSpecialVar_0x8006
-_080C5148: .4byte gTasks
-_080C514C: .4byte gMonFrontPicTable
-_080C5150: .4byte gMonFrontPicCoords
-_080C5154: .4byte gUnknown_081FAF4C
-_080C5158: .4byte gUnknown_02024E8C
-_080C515C: .4byte gSprites
-_080C5160: .4byte SpriteCallbackDummy
- thumb_func_end ShowContestEntryMonPic
-
- thumb_func_start sub_80C5164
-sub_80C5164: @ 80C5164
- push {lr}
- ldr r0, _080C5188 @ =sub_80C5190
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xFF
- beq _080C5184
- ldr r0, _080C518C @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_080C5184:
- pop {r0}
- bx r0
- .align 2, 0
-_080C5188: .4byte sub_80C5190
-_080C518C: .4byte gTasks
- thumb_func_end sub_80C5164
-
- thumb_func_start sub_80C5190
-sub_80C5190: @ 80C5190
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080C51B4 @ =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080C5222
- cmp r0, 0x1
- bgt _080C51B8
- cmp r0, 0
- beq _080C51F8
- b _080C5222
- .align 2, 0
-_080C51B4: .4byte gTasks
-_080C51B8:
- cmp r0, 0x2
- beq _080C51C2
- cmp r0, 0x3
- beq _080C5204
- b _080C5222
-_080C51C2:
- movs r0, 0xC
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _080C5200 @ =gSprites
- adds r5, r0, r1
- ldrb r0, [r5, 0x5]
- lsrs r0, 4
- bl GetSpritePaletteTagByPaletteNum
- lsls r0, 16
- lsrs r0, 16
- bl FreeSpritePaletteByTag
- ldrb r0, [r5, 0x1]
- lsls r0, 30
- cmp r0, 0
- beq _080C51F2
- ldrb r0, [r5, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
-_080C51F2:
- adds r0, r5, 0
- bl DestroySprite
-_080C51F8:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080C5222
- .align 2, 0
-_080C5200: .4byte gSprites
-_080C5204:
- ldrb r2, [r4, 0xE]
- adds r0, r2, 0
- ldrb r3, [r4, 0x10]
- adds r1, r3, 0
- adds r2, 0x9
- lsls r2, 24
- lsrs r2, 24
- adds r3, 0xA
- lsls r3, 24
- lsrs r3, 24
- bl MenuZeroFillWindowRect
- adds r0, r5, 0
- bl DestroyTask
-_080C5222:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80C5190
-
- thumb_func_start ScriptGetMultiplayerId
-ScriptGetMultiplayerId: @ 80C5228
- push {r4,lr}
- ldr r0, _080C5244 @ =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080C524C
- ldr r4, _080C5248 @ =gScriptResult
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- b _080C5252
- .align 2, 0
-_080C5244: .4byte gIsLinkContest
-_080C5248: .4byte gScriptResult
-_080C524C:
- ldr r1, _080C5258 @ =gScriptResult
- movs r0, 0x4
- strh r0, [r1]
-_080C5252:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080C5258: .4byte gScriptResult
- thumb_func_end ScriptGetMultiplayerId
-
- thumb_func_start ScriptRandom
-ScriptRandom: @ 80C525C
- push {r4,lr}
- ldr r0, _080C5280 @ =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080C5294
- ldr r2, _080C5284 @ =gUnknown_03005D28
- ldr r1, [r2]
- ldr r0, _080C5288 @ =0x41c64e6d
- muls r0, r1
- ldr r1, _080C528C @ =0x00006073
- adds r0, r1
- str r0, [r2]
- lsrs r0, 16
- ldr r4, _080C5290 @ =gScriptResult
- b _080C529E
- .align 2, 0
-_080C5280: .4byte gIsLinkContest
-_080C5284: .4byte gUnknown_03005D28
-_080C5288: .4byte 0x41c64e6d
-_080C528C: .4byte 0x00006073
-_080C5290: .4byte gScriptResult
-_080C5294:
- ldr r4, _080C52AC @ =gScriptResult
- bl Random
- lsls r0, 16
- lsrs r0, 16
-_080C529E:
- ldrh r1, [r4]
- bl __umodsi3
- strh r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080C52AC: .4byte gScriptResult
- thumb_func_end ScriptRandom
-
- thumb_func_start HealPlayerParty
-HealPlayerParty: @ 80C52B0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r0, 0
- mov r8, r0
- ldr r0, _080C536C @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r8, r0
- bcs _080C535C
- ldr r1, _080C5370 @ =gPlayerParty
- mov r10, r1
- mov r6, sp
-_080C52CE:
- movs r0, 0x64
- mov r4, r8
- muls r4, r0
- add r4, r10
- adds r0, r4, 0
- movs r1, 0x3A
- bl GetMonData
- lsls r1, r0, 16
- strb r0, [r6]
- lsrs r1, 24
- strb r1, [r6, 0x1]
- adds r0, r4, 0
- movs r1, 0x39
- mov r2, sp
- bl SetMonData
- adds r0, r4, 0
- movs r1, 0x15
- bl GetMonData
- lsls r0, 24
- lsrs r7, r0, 24
- movs r5, 0
- movs r1, 0x1
- add r1, r8
- mov r9, r1
-_080C5304:
- adds r1, r5, 0
- adds r1, 0xD
- adds r0, r4, 0
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- adds r1, r7, 0
- adds r2, r5, 0
- bl CalculatePPWithBonus
- strb r0, [r6]
- adds r1, r5, 0
- adds r1, 0x11
- adds r0, r4, 0
- mov r2, sp
- bl SetMonData
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x3
- bls _080C5304
- movs r0, 0
- strb r0, [r6]
- strb r0, [r6, 0x1]
- strb r0, [r6, 0x2]
- strb r0, [r6, 0x3]
- movs r1, 0x64
- mov r0, r8
- muls r0, r1
- add r0, r10
- movs r1, 0x37
- mov r2, sp
- bl SetMonData
- mov r1, r9
- lsls r0, r1, 24
- lsrs r0, 24
- mov r8, r0
- ldr r0, _080C536C @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r8, r0
- bcc _080C52CE
-_080C535C:
- 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
-_080C536C: .4byte gPlayerPartyCount
-_080C5370: .4byte gPlayerParty
- thumb_func_end HealPlayerParty
-
- thumb_func_start ScriptGiveMon
-ScriptGiveMon: @ 80C5374
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x78
- adds r5, r0, 0
- adds r3, r1, 0
- adds r4, r2, 0
- lsls r5, 16
- lsrs r5, 16
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 16
- lsrs r0, r4, 16
- mov r8, r0
- add r6, sp, 0x14
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- str r0, [sp, 0xC]
- adds r0, r6, 0
- adds r1, r5, 0
- adds r2, r3, 0
- movs r3, 0x20
- bl CreateMon
- add r0, sp, 0x10
- mov r1, r8
- strb r1, [r0]
- lsrs r4, 24
- strb r4, [r0, 0x1]
- adds r0, r6, 0
- movs r1, 0xC
- add r2, sp, 0x10
- bl SetMonData
- adds r0, r6, 0
- bl GiveMonToPlayer
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r5, 0
- bl SpeciesToNationalPokedexNum
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r4, 0x1
- bgt _080C53E8
- cmp r4, 0
- blt _080C53E8
- adds r0, r5, 0
- movs r1, 0x2
- bl sub_8090D90
- adds r0, r5, 0
- movs r1, 0x3
- bl sub_8090D90
-_080C53E8:
- adds r0, r4, 0
- add sp, 0x78
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end ScriptGiveMon
-
- thumb_func_start ScriptGiveEgg
-ScriptGiveEgg: @ 80C53F8
- push {lr}
- sub sp, 0x68
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- mov r0, sp
- movs r2, 0x1
- bl sub_8042044
- add r2, sp, 0x64
- movs r0, 0x1
- strb r0, [r2]
- mov r0, sp
- movs r1, 0x2D
- bl SetMonData
- mov r0, sp
- bl GiveMonToPlayer
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x68
- pop {r1}
- bx r1
- thumb_func_end ScriptGiveEgg
-
- thumb_func_start CheckForAlivePartyMons
-CheckForAlivePartyMons: @ 80C5428
- push {lr}
- bl sub_803DAA0
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x1
- beq _080C5444
- cmp r1, 0x1
- bgt _080C5440
- cmp r1, 0
- beq _080C5444
- b _080C5448
-_080C5440:
- cmp r1, 0x2
- bne _080C5448
-_080C5444:
- ldr r0, _080C544C @ =gScriptResult
- strh r1, [r0]
-_080C5448:
- pop {r0}
- bx r0
- .align 2, 0
-_080C544C: .4byte gScriptResult
- thumb_func_end CheckForAlivePartyMons
-
- thumb_func_start CheckPartyMonHasHeldItem
-CheckPartyMonHasHeldItem: @ 80C5450
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- movs r5, 0
- movs r7, 0xCE
- lsls r7, 1
-_080C545C:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _080C548C @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- beq _080C5490
- cmp r0, r7
- beq _080C5490
- adds r0, r4, 0
- movs r1, 0xC
- bl GetMonData
- cmp r0, r6
- bne _080C5490
- movs r0, 0x1
- b _080C5498
- .align 2, 0
-_080C548C: .4byte gPlayerParty
-_080C5490:
- adds r5, 0x1
- cmp r5, 0x5
- ble _080C545C
- movs r0, 0
-_080C5498:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end CheckPartyMonHasHeldItem
-
- thumb_func_start GetNameOfEnigmaBerryInPlayerParty
-GetNameOfEnigmaBerryInPlayerParty: @ 80C54A0
- push {r4,lr}
- movs r0, 0xAF
- bl CheckPartyMonHasHeldItem
- lsls r0, 24
- lsrs r0, 24
- adds r4, r0, 0
- cmp r4, 0x1
- bne _080C54C2
- movs r0, 0xAF
- bl ItemIdToBerryType
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _080C54CC @ =gStringVar1
- bl GetBerryNameByBerryType
-_080C54C2:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080C54CC: .4byte gStringVar1
- thumb_func_end GetNameOfEnigmaBerryInPlayerParty
-
- thumb_func_start ScriptWildBattle
-ScriptWildBattle: @ 80C54D0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x14
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 24
- lsrs r5, 24
- lsls r7, r2, 16
- lsrs r6, r7, 16
- bl ZeroEnemyPartyMons
- ldr r0, _080C552C @ =gEnemyParty
- mov r8, r0
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- str r0, [sp, 0xC]
- mov r0, r8
- adds r1, r4, 0
- adds r2, r5, 0
- movs r3, 0x20
- bl CreateMon
- cmp r6, 0
- beq _080C551E
- add r0, sp, 0x10
- strb r6, [r0]
- adds r1, r0, 0
- lsrs r0, r7, 24
- strb r0, [r1, 0x1]
- mov r0, r8
- movs r1, 0xC
- add r2, sp, 0x10
- bl SetMonData
-_080C551E:
- add sp, 0x14
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080C552C: .4byte gEnemyParty
- thumb_func_end ScriptWildBattle
-
- thumb_func_start ScriptSetMonMoveSlot
-ScriptSetMonMoveSlot: @ 80C5530
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 24
- lsrs r2, 24
- cmp r3, 0x6
- bls _080C554C
- ldr r0, _080C5560 @ =gPlayerPartyCount
- ldrb r0, [r0]
- subs r0, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
-_080C554C:
- movs r0, 0x64
- muls r0, r3
- ldr r1, _080C5564 @ =gPlayerParty
- adds r0, r1
- adds r1, r4, 0
- bl SetMonMoveSlot
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080C5560: .4byte gPlayerPartyCount
-_080C5564: .4byte gPlayerParty
- thumb_func_end ScriptSetMonMoveSlot
-
- thumb_func_start sub_80C5568
-sub_80C5568: @ 80C5568
- push {lr}
- ldr r1, _080C5578 @ =gMain
- ldr r0, _080C557C @ =sub_80C5580
- str r0, [r1, 0x8]
- bl sub_8121E10
- pop {r0}
- bx r0
- .align 2, 0
-_080C5578: .4byte gMain
-_080C557C: .4byte sub_80C5580
- thumb_func_end sub_80C5568
-
- thumb_func_start sub_80C5580
-sub_80C5580: @ 80C5580
- push {lr}
- ldr r0, _080C5590 @ =gUnknown_02039270
- ldrb r1, [r0]
- cmp r1, 0
- bne _080C5598
- ldr r0, _080C5594 @ =gScriptResult
- strh r1, [r0]
- b _080C559E
- .align 2, 0
-_080C5590: .4byte gUnknown_02039270
-_080C5594: .4byte gScriptResult
-_080C5598:
- ldr r1, _080C55A8 @ =gScriptResult
- movs r0, 0x1
- strh r0, [r1]
-_080C559E:
- ldr r0, _080C55AC @ =c2_exit_to_overworld_1_continue_scripts_restart_music
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_080C55A8: .4byte gScriptResult
-_080C55AC: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music
- thumb_func_end sub_80C5580
-
- thumb_func_start ChooseBattleTowerPlayerParty
-ChooseBattleTowerPlayerParty: @ 80C55B0
- push {lr}
- ldr r1, _080C55C0 @ =gMain
- ldr r0, _080C55C4 @ =SetBattleTowerPlayerParty
- str r0, [r1, 0x8]
- bl sub_8121E34
- pop {r0}
- bx r0
- .align 2, 0
-_080C55C0: .4byte gMain
-_080C55C4: .4byte SetBattleTowerPlayerParty
- thumb_func_end ChooseBattleTowerPlayerParty
-
- thumb_func_start SetBattleTowerPlayerParty
-SetBattleTowerPlayerParty: @ 80C55C8
- push {r4,lr}
- ldr r0, _080C55DC @ =gUnknown_02039270
- ldrb r4, [r0]
- cmp r4, 0
- bne _080C55E4
- bl LoadPlayerParty
- ldr r0, _080C55E0 @ =gScriptResult
- strh r4, [r0]
- b _080C55EE
- .align 2, 0
-_080C55DC: .4byte gUnknown_02039270
-_080C55E0: .4byte gScriptResult
-_080C55E4:
- bl ReducePlayerPartyToThree
- ldr r1, _080C55FC @ =gScriptResult
- movs r0, 0x1
- strh r0, [r1]
-_080C55EE:
- ldr r0, _080C5600 @ =c2_exit_to_overworld_1_continue_scripts_restart_music
- bl SetMainCallback2
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080C55FC: .4byte gScriptResult
-_080C5600: .4byte c2_exit_to_overworld_1_continue_scripts_restart_music
- thumb_func_end SetBattleTowerPlayerParty
-
- thumb_func_start ReducePlayerPartyToThree
-ReducePlayerPartyToThree: @ 80C5604
- push {r4-r7,lr}
- sub sp, 0x134
- add r0, sp, 0x12C
- movs r1, 0
- str r1, [r0]
- ldr r2, _080C5674 @ =0x0500004b
- mov r1, sp
- bl CpuSet
- movs r5, 0
- movs r7, 0x64
- ldr r6, _080C5678 @ =gPlayerParty
- mov r4, sp
-_080C561E:
- ldr r0, _080C567C @ =gUnknown_02039270
- adds r1, r5, r0
- ldrb r0, [r1]
- cmp r0, 0
- beq _080C5638
- subs r0, 0x1
- adds r1, r0, 0
- muls r1, r7
- adds r1, r6
- adds r0, r4, 0
- movs r2, 0x64
- bl memcpy
-_080C5638:
- adds r4, 0x64
- adds r5, 0x1
- cmp r5, 0x2
- ble _080C561E
- add r0, sp, 0x130
- movs r1, 0
- str r1, [r0]
- ldr r4, _080C5678 @ =gPlayerParty
- ldr r2, _080C5680 @ =0x05000096
- adds r1, r4, 0
- bl CpuSet
- mov r5, sp
- add r6, sp, 0xC8
-_080C5654:
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x64
- bl memcpy
- adds r5, 0x64
- adds r4, 0x64
- cmp r5, r6
- ble _080C5654
- bl CalculatePlayerPartyCount
- add sp, 0x134
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080C5674: .4byte 0x0500004b
-_080C5678: .4byte gPlayerParty
-_080C567C: .4byte gUnknown_02039270
-_080C5680: .4byte 0x05000096
- thumb_func_end ReducePlayerPartyToThree
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/script_pokemon_util_80F99CC.s b/asm/script_pokemon_util_80F99CC.s
deleted file mode 100644
index d107902ae..000000000
--- a/asm/script_pokemon_util_80F99CC.s
+++ /dev/null
@@ -1,978 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80F99CC
-sub_80F99CC: @ 80F99CC
- push {lr}
- sub sp, 0x4
- bl ScriptContext2_Enable
- ldr r0, _080F9A04 @ =sub_80F9A8C
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080F9A08 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0
- movs r0, 0x2
- strh r0, [r1, 0x8]
- subs r0, 0x3
- str r2, [sp]
- movs r1, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080F9A04: .4byte sub_80F9A8C
-_080F9A08: .4byte gTasks
- thumb_func_end sub_80F99CC
-
- thumb_func_start sub_80F9A0C
-sub_80F9A0C: @ 80F9A0C
- push {lr}
- sub sp, 0x4
- bl ScriptContext2_Enable
- ldr r0, _080F9A44 @ =sub_80F9A8C
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080F9A48 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0
- movs r0, 0x3
- strh r0, [r1, 0x8]
- subs r0, 0x4
- str r2, [sp]
- movs r1, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080F9A44: .4byte sub_80F9A8C
-_080F9A48: .4byte gTasks
- thumb_func_end sub_80F9A0C
-
- thumb_func_start sub_80F9A4C
-sub_80F9A4C: @ 80F9A4C
- push {lr}
- sub sp, 0x4
- bl ScriptContext2_Enable
- ldr r0, _080F9A84 @ =sub_80F9A8C
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080F9A88 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0
- movs r0, 0x7
- strh r0, [r1, 0x8]
- subs r0, 0x8
- str r2, [sp]
- movs r1, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080F9A84: .4byte sub_80F9A8C
-_080F9A88: .4byte gTasks
- thumb_func_end sub_80F9A4C
-
- thumb_func_start sub_80F9A8C
-sub_80F9A8C: @ 80F9A8C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r2, _080F9AC4 @ =gPaletteFade
- ldrb r1, [r2, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080F9ABE
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- ldr r1, _080F9AC8 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrb r0, [r0, 0x8]
- movs r1, 0
- bl OpenPartyMenu
- adds r0, r4, 0
- bl DestroyTask
-_080F9ABE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080F9AC4: .4byte gPaletteFade
-_080F9AC8: .4byte gTasks
- thumb_func_end sub_80F9A8C
-
- thumb_func_start sub_80F9ACC
-sub_80F9ACC: @ 80F9ACC
- push {r4,r5,lr}
- ldr r1, _080F9AEC @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r0, r1, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0x7
- bls _080F9AE2
- b _080F9BF6
-_080F9AE2:
- lsls r0, 2
- ldr r1, _080F9AF0 @ =_080F9AF4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080F9AEC: .4byte 0x0201b000
-_080F9AF0: .4byte _080F9AF4
- .align 2, 0
-_080F9AF4:
- .4byte _080F9B14
- .4byte _080F9B54
- .4byte _080F9B5A
- .4byte _080F9B6E
- .4byte _080F9B98
- .4byte _080F9B9E
- .4byte _080F9BB0
- .4byte _080F9BC8
-_080F9B14:
- ldr r0, _080F9B3C @ =0x00000266
- adds r5, r4, r0
- movs r1, 0
- ldrsh r3, [r5, r1]
- ldr r0, _080F9B40 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r3, r0
- bge _080F9B48
- movs r2, 0x98
- lsls r2, 2
- adds r0, r4, r2
- ldrb r0, [r0]
- ldrb r1, [r5]
- movs r2, 0x64
- muls r2, r3
- ldr r3, _080F9B44 @ =gPlayerParty
- adds r2, r3
- bl TryCreatePartyMenuMonIcon
- b _080F9BF0
- .align 2, 0
-_080F9B3C: .4byte 0x00000266
-_080F9B40: .4byte gPlayerPartyCount
-_080F9B44: .4byte gPlayerParty
-_080F9B48:
- movs r0, 0
- strh r0, [r5]
- movs r0, 0x99
- lsls r0, 2
- adds r1, r4, r0
- b _080F9BBC
-_080F9B54:
- bl LoadHeldItemIconGraphics
- b _080F9BB4
-_080F9B5A:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- bl CreateHeldItemIcons_806DC34
- movs r2, 0x99
- lsls r2, 2
- adds r1, r4, r2
- b _080F9BBC
-_080F9B6E:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- ldr r2, _080F9B94 @ =0x00000266
- adds r5, r4, r2
- ldrb r1, [r5]
- bl sub_806BD58
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080F9BF0
- movs r0, 0
- strh r0, [r5]
- movs r0, 0x99
- lsls r0, 2
- adds r1, r4, r0
- b _080F9BBC
- .align 2, 0
-_080F9B94: .4byte 0x00000266
-_080F9B98:
- bl PartyMenuPrintMonsLevelOrStatus
- b _080F9BB4
-_080F9B9E:
- bl PrintPartyMenuMonNicknames
- ldr r1, _080F9BAC @ =0x0201b000
- movs r0, 0x99
- lsls r0, 2
- adds r1, r0
- b _080F9BBC
- .align 2, 0
-_080F9BAC: .4byte 0x0201b000
-_080F9BB0:
- bl sub_80F9C00
-_080F9BB4:
- ldr r1, _080F9BC4 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r1, r2
-_080F9BBC:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _080F9BF6
- .align 2, 0
-_080F9BC4: .4byte 0x0201b000
-_080F9BC8:
- ldr r0, _080F9BEC @ =0x00000266
- adds r5, r4, r0
- ldrb r0, [r5]
- bl sub_806B58C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080F9BF0
- movs r1, 0
- strh r1, [r5]
- movs r2, 0x99
- lsls r2, 2
- adds r0, r4, r2
- strh r1, [r0]
- movs r0, 0x1
- b _080F9BF8
- .align 2, 0
-_080F9BEC: .4byte 0x00000266
-_080F9BF0:
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_080F9BF6:
- movs r0, 0
-_080F9BF8:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80F9ACC
-
- thumb_func_start sub_80F9C00
-sub_80F9C00: @ 80F9C00
- push {r4,lr}
- movs r4, 0
- b _080F9C58
-_080F9C06:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _080F9C24 @ =gPlayerParty
- adds r0, r1
- bl sub_80AE47C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080F9C52
- lsls r0, 2
- ldr r1, _080F9C28 @ =_080F9C2C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080F9C24: .4byte gPlayerParty
-_080F9C28: .4byte _080F9C2C
- .align 2, 0
-_080F9C2C:
- .4byte _080F9C40
- .4byte _080F9C4A
- .4byte _080F9C4A
- .4byte _080F9C40
- .4byte _080F9C40
-_080F9C40:
- adds r0, r4, 0
- movs r1, 0x7E
- bl sub_806BC3C
- b _080F9C52
-_080F9C4A:
- adds r0, r4, 0
- movs r1, 0x70
- bl sub_806BC3C
-_080F9C52:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080F9C58:
- ldr r0, _080F9C68 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r4, r0
- bcc _080F9C06
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080F9C68: .4byte gPlayerPartyCount
- thumb_func_end sub_80F9C00
-
- thumb_func_start sub_80F9C6C
-sub_80F9C6C: @ 80F9C6C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080F9C94 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080F9CD8
- adds r0, r4, 0
- bl sub_806BD80
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _080F9C98
- cmp r0, 0x2
- beq _080F9CC0
- b _080F9CD8
- .align 2, 0
-_080F9C94: .4byte gPaletteFade
-_080F9C98:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_806CA38
- ldr r1, _080F9CB8 @ =gUnknown_02038694
- strb r0, [r1]
- ldr r2, _080F9CBC @ =gSpecialVar_0x8004
- ldrb r0, [r1]
- strh r0, [r2]
- adds r0, r4, 0
- bl sub_8123138
- b _080F9CD8
- .align 2, 0
-_080F9CB8: .4byte gUnknown_02038694
-_080F9CBC: .4byte gSpecialVar_0x8004
-_080F9CC0:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080F9CE0 @ =gUnknown_02038694
- movs r0, 0xFF
- strb r0, [r1]
- ldr r1, _080F9CE4 @ =gSpecialVar_0x8004
- movs r0, 0xFF
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_8123138
-_080F9CD8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080F9CE0: .4byte gUnknown_02038694
-_080F9CE4: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80F9C6C
-
- thumb_func_start sub_80F9CE8
-sub_80F9CE8: @ 80F9CE8
- push {r4,r5,lr}
- ldr r1, _080F9D08 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r0, r1, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- adds r4, r1, 0
- cmp r0, 0x7
- bls _080F9CFE
- b _080F9E12
-_080F9CFE:
- lsls r0, 2
- ldr r1, _080F9D0C @ =_080F9D10
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080F9D08: .4byte 0x0201b000
-_080F9D0C: .4byte _080F9D10
- .align 2, 0
-_080F9D10:
- .4byte _080F9D30
- .4byte _080F9D70
- .4byte _080F9D76
- .4byte _080F9D8A
- .4byte _080F9DB4
- .4byte _080F9DBA
- .4byte _080F9DCC
- .4byte _080F9DE4
-_080F9D30:
- ldr r0, _080F9D58 @ =0x00000266
- adds r5, r4, r0
- movs r1, 0
- ldrsh r3, [r5, r1]
- ldr r0, _080F9D5C @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r3, r0
- bge _080F9D64
- movs r2, 0x98
- lsls r2, 2
- adds r0, r4, r2
- ldrb r0, [r0]
- ldrb r1, [r5]
- movs r2, 0x64
- muls r2, r3
- ldr r3, _080F9D60 @ =gPlayerParty
- adds r2, r3
- bl TryCreatePartyMenuMonIcon
- b _080F9E0C
- .align 2, 0
-_080F9D58: .4byte 0x00000266
-_080F9D5C: .4byte gPlayerPartyCount
-_080F9D60: .4byte gPlayerParty
-_080F9D64:
- movs r0, 0
- strh r0, [r5]
- movs r0, 0x99
- lsls r0, 2
- adds r1, r4, r0
- b _080F9DD8
-_080F9D70:
- bl LoadHeldItemIconGraphics
- b _080F9DD0
-_080F9D76:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- bl CreateHeldItemIcons_806DC34
- movs r2, 0x99
- lsls r2, 2
- adds r1, r4, r2
- b _080F9DD8
-_080F9D8A:
- movs r1, 0x98
- lsls r1, 2
- adds r0, r4, r1
- ldrb r0, [r0]
- ldr r2, _080F9DB0 @ =0x00000266
- adds r5, r4, r2
- ldrb r1, [r5]
- bl sub_806BD58
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080F9E0C
- movs r0, 0
- strh r0, [r5]
- movs r0, 0x99
- lsls r0, 2
- adds r1, r4, r0
- b _080F9DD8
- .align 2, 0
-_080F9DB0: .4byte 0x00000266
-_080F9DB4:
- bl PartyMenuPrintMonsLevelOrStatus
- b _080F9DD0
-_080F9DBA:
- bl PrintPartyMenuMonNicknames
- ldr r1, _080F9DC8 @ =0x0201b000
- movs r0, 0x99
- lsls r0, 2
- adds r1, r0
- b _080F9DD8
- .align 2, 0
-_080F9DC8: .4byte 0x0201b000
-_080F9DCC:
- bl sub_80F9E1C
-_080F9DD0:
- ldr r1, _080F9DE0 @ =0x0201b000
- movs r2, 0x99
- lsls r2, 2
- adds r1, r2
-_080F9DD8:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _080F9E12
- .align 2, 0
-_080F9DE0: .4byte 0x0201b000
-_080F9DE4:
- ldr r0, _080F9E08 @ =0x00000266
- adds r5, r4, r0
- ldrb r0, [r5]
- bl sub_806B58C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080F9E0C
- movs r1, 0
- strh r1, [r5]
- movs r2, 0x99
- lsls r2, 2
- adds r0, r4, r2
- strh r1, [r0]
- movs r0, 0x1
- b _080F9E14
- .align 2, 0
-_080F9E08: .4byte 0x00000266
-_080F9E0C:
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_080F9E12:
- movs r0, 0
-_080F9E14:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80F9CE8
-
- thumb_func_start sub_80F9E1C
-sub_80F9E1C: @ 80F9E1C
- push {r4,lr}
- movs r4, 0
- b _080F9E52
-_080F9E22:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _080F9E40 @ =gPlayerParty
- adds r0, r1
- bl sub_8040574
- lsls r0, 24
- cmp r0, 0
- bne _080F9E44
- adds r0, r4, 0
- movs r1, 0x9A
- bl sub_806BC3C
- b _080F9E4C
- .align 2, 0
-_080F9E40: .4byte gPlayerParty
-_080F9E44:
- adds r0, r4, 0
- movs r1, 0x8C
- bl sub_806BC3C
-_080F9E4C:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080F9E52:
- ldr r0, _080F9E60 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r4, r0
- bcc _080F9E22
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080F9E60: .4byte gPlayerPartyCount
- thumb_func_end sub_80F9E1C
-
- thumb_func_start sub_80F9E64
-sub_80F9E64: @ 80F9E64
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, _080F9E8C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080F9EE2
- adds r0, r6, 0
- bl sub_806BD80
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _080F9E90
- cmp r0, 0x2
- beq _080F9ED0
- b _080F9EE2
- .align 2, 0
-_080F9E8C: .4byte gPaletteFade
-_080F9E90:
- movs r0, 0x5
- bl PlaySE
- ldr r4, _080F9EC4 @ =gSpecialVar_0x8004
- adds r0, r6, 0
- bl sub_806CA38
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- ldr r5, _080F9EC8 @ =gSpecialVar_0x8005
- ldrh r1, [r4]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080F9ECC @ =gPlayerParty
- adds r0, r1
- bl sub_8040574
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- adds r0, r6, 0
- bl sub_8123138
- b _080F9EE2
- .align 2, 0
-_080F9EC4: .4byte gSpecialVar_0x8004
-_080F9EC8: .4byte gSpecialVar_0x8005
-_080F9ECC: .4byte gPlayerParty
-_080F9ED0:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _080F9EE8 @ =gSpecialVar_0x8004
- movs r0, 0xFF
- strh r0, [r1]
- adds r0, r6, 0
- bl sub_8123138
-_080F9EE2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080F9EE8: .4byte gSpecialVar_0x8004
- thumb_func_end sub_80F9E64
-
- thumb_func_start sub_80F9EEC
-sub_80F9EEC: @ 80F9EEC
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _080F9F20 @ =gPlayerParty
- ldr r1, _080F9F24 @ =gSpecialVar_0x8004
- ldrb r1, [r1]
- ldr r2, _080F9F28 @ =gPlayerPartyCount
- ldrb r2, [r2]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _080F9F2C @ =c2_exit_to_overworld_2_switch
- movs r4, 0
- str r4, [sp]
- bl sub_809D9F0
- ldr r1, _080F9F30 @ =0x02018000
- movs r0, 0x3
- strb r0, [r1, 0x8]
- ldr r1, _080F9F34 @ =gUnknown_0300485C
- ldr r0, _080F9F38 @ =sub_8080990
- str r0, [r1]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080F9F20: .4byte gPlayerParty
-_080F9F24: .4byte gSpecialVar_0x8004
-_080F9F28: .4byte gPlayerPartyCount
-_080F9F2C: .4byte c2_exit_to_overworld_2_switch
-_080F9F30: .4byte 0x02018000
-_080F9F34: .4byte gUnknown_0300485C
-_080F9F38: .4byte sub_8080990
- thumb_func_end sub_80F9EEC
-
- thumb_func_start sub_80F9F3C
-sub_80F9F3C: @ 80F9F3C
- push {r4,r5,lr}
- ldr r1, _080F9F78 @ =gScriptResult
- movs r0, 0
- strh r0, [r1]
- movs r4, 0
- adds r5, r1, 0
-_080F9F48:
- ldr r0, _080F9F7C @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080F9F80 @ =gPlayerParty
- adds r0, r1
- adds r1, r4, 0
- adds r1, 0xD
- bl GetMonData
- cmp r0, 0
- beq _080F9F66
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_080F9F66:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3
- bls _080F9F48
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080F9F78: .4byte gScriptResult
-_080F9F7C: .4byte gSpecialVar_0x8004
-_080F9F80: .4byte gPlayerParty
- thumb_func_end sub_80F9F3C
-
- thumb_func_start sub_80F9F84
-sub_80F9F84: @ 80F9F84
- push {r4,r5,lr}
- ldr r0, _080F9FC4 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- adds r5, r1, 0
- muls r5, r0
- ldr r0, _080F9FC8 @ =gPlayerParty
- adds r5, r0
- ldr r0, _080F9FCC @ =gSpecialVar_0x8005
- ldrh r1, [r0]
- adds r1, 0xD
- adds r0, r5, 0
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r1, _080F9FD0 @ =gStringVar1
- adds r0, r5, 0
- bl GetMonNickname
- ldr r0, _080F9FD4 @ =gStringVar2
- movs r1, 0xD
- muls r1, r4
- ldr r2, _080F9FD8 @ =gMoveNames
- adds r1, r2
- bl StringCopy
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080F9FC4: .4byte gSpecialVar_0x8004
-_080F9FC8: .4byte gPlayerParty
-_080F9FCC: .4byte gSpecialVar_0x8005
-_080F9FD0: .4byte gStringVar1
-_080F9FD4: .4byte gStringVar2
-_080F9FD8: .4byte gMoveNames
- thumb_func_end sub_80F9F84
-
- thumb_func_start sub_80F9FDC
-sub_80F9FDC: @ 80F9FDC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- mov r8, r0
- adds r5, r1, 0
- adds r4, r2, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- adds r0, 0xD
- str r0, [sp, 0x8]
- mov r0, r8
- ldr r1, [sp, 0x8]
- bl GetMonData
- mov r1, sp
- adds r1, 0x2
- str r1, [sp, 0x14]
- strh r0, [r1]
- adds r3, r4, 0
- adds r3, 0xD
- str r3, [sp, 0xC]
- mov r0, r8
- adds r1, r3, 0
- bl GetMonData
- mov r1, sp
- strh r0, [r1]
- adds r7, r5, 0
- adds r7, 0x11
- str r7, [sp, 0x10]
- mov r0, r8
- adds r1, r7, 0
- bl GetMonData
- mov r1, sp
- adds r1, 0x5
- str r1, [sp, 0x18]
- strb r0, [r1]
- adds r3, r4, 0
- adds r3, 0x11
- str r3, [sp, 0x1C]
- mov r0, r8
- adds r1, r3, 0
- bl GetMonData
- add r7, sp, 0x4
- mov r10, r7
- strb r0, [r7]
- mov r0, r8
- movs r1, 0x15
- bl GetMonData
- mov r6, sp
- adds r6, 0x6
- strb r0, [r6]
- ldr r1, _080FA0D8 @ =gUnknown_08208238
- adds r0, r5, r1
- ldrb r0, [r0]
- mov r9, r0
- ldrb r0, [r6]
- adds r2, r0, 0
- mov r3, r9
- ands r2, r3
- lsls r5, 1
- asrs r2, r5
- lsls r2, 24
- lsrs r2, 24
- adds r1, r4, r1
- ldrb r3, [r1]
- adds r1, r0, 0
- ands r1, r3
- lsls r4, 1
- asrs r1, r4
- lsls r1, 24
- lsrs r1, 24
- mov r7, r9
- bics r0, r7
- strb r0, [r6]
- ldrb r0, [r6]
- bics r0, r3
- strb r0, [r6]
- lsls r2, r4
- lsls r1, r5
- adds r2, r1
- ldrb r0, [r6]
- orrs r0, r2
- strb r0, [r6]
- mov r0, r8
- ldr r1, [sp, 0x8]
- mov r2, sp
- bl SetMonData
- mov r0, r8
- ldr r1, [sp, 0xC]
- ldr r2, [sp, 0x14]
- bl SetMonData
- mov r0, r8
- ldr r1, [sp, 0x10]
- mov r2, r10
- bl SetMonData
- mov r0, r8
- ldr r1, [sp, 0x1C]
- ldr r2, [sp, 0x18]
- bl SetMonData
- mov r0, r8
- movs r1, 0x15
- adds r2, r6, 0
- bl SetMonData
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080FA0D8: .4byte gUnknown_08208238
- thumb_func_end sub_80F9FDC
-
- thumb_func_start sub_80FA0DC
-sub_80FA0DC: @ 80FA0DC
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- ldr r0, _080FA13C @ =gSpecialVar_0x8004
- mov r8, r0
- ldrh r0, [r0]
- movs r6, 0x64
- muls r0, r6
- ldr r5, _080FA140 @ =gPlayerParty
- adds r0, r5
- ldr r4, _080FA144 @ =gSpecialVar_0x8005
- ldrb r2, [r4]
- movs r1, 0
- bl SetMonMoveSlot
- mov r1, r8
- ldrh r0, [r1]
- muls r0, r6
- adds r0, r5
- ldrb r1, [r4]
- bl RemoveMonPPBonus
- ldrh r4, [r4]
- cmp r4, 0x2
- bhi _080FA130
-_080FA10E:
- ldr r0, _080FA13C @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080FA140 @ =gPlayerParty
- adds r0, r1
- lsls r1, r4, 24
- lsrs r1, 24
- adds r4, 0x1
- lsls r2, r4, 24
- lsrs r2, 24
- bl sub_80F9FDC
- lsls r4, 16
- lsrs r4, 16
- cmp r4, 0x2
- bls _080FA10E
-_080FA130:
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080FA13C: .4byte gSpecialVar_0x8004
-_080FA140: .4byte gPlayerParty
-_080FA144: .4byte gSpecialVar_0x8005
- thumb_func_end sub_80FA0DC
-
- thumb_func_start sub_80FA148
-sub_80FA148: @ 80FA148
- push {r4,lr}
- ldr r0, _080FA170 @ =gSpecialVar_0x8004
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080FA174 @ =gPlayerParty
- adds r0, r1
- ldr r4, _080FA178 @ =gScriptResult
- movs r1, 0
- strh r1, [r4]
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- beq _080FA16A
- movs r0, 0x1
- strh r0, [r4]
-_080FA16A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080FA170: .4byte gSpecialVar_0x8004
-_080FA174: .4byte gPlayerParty
-_080FA178: .4byte gScriptResult
- thumb_func_end sub_80FA148
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/secret_base.s b/asm/secret_base.s
index 139375998..bfa0e573d 100644
--- a/asm/secret_base.s
+++ b/asm/secret_base.s
@@ -943,7 +943,7 @@ sub_80BBB90: @ 80BBB90
push {r4,lr}
sub sp, 0x4
bl ScriptContext2_Enable
- bl HideMapNamePopUpWindow
+ bl HideMapNamePopup
mov r4, sp
adds r4, 0x2
movs r2, 0x88
diff --git a/asm/shop.s b/asm/shop.s
index d59f9584e..1d0863469 100644
--- a/asm/shop.s
+++ b/asm/shop.s
@@ -6,818 +6,6 @@
.text
- thumb_func_start CreateShopMenu
-CreateShopMenu: @ 80B2D54
- push {r4,lr}
- sub sp, 0x8
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ScriptContext2_Enable
- ldr r1, _080B2D90 @ =gUnknown_03000708
- movs r0, 0
- strb r4, [r1, 0xC]
- strb r0, [r1, 0x9]
- cmp r4, 0
- bne _080B2D9C
- movs r0, 0x2
- strb r0, [r1, 0xA]
- movs r0, 0
- movs r1, 0
- movs r2, 0xA
- movs r3, 0x7
- bl MenuDrawTextWindow
- ldr r3, _080B2D94 @ =gUnknown_083CC6D0
- ldr r0, _080B2D98 @ =gUnknown_083CC6E8
- str r0, [sp]
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0x3
- bl PrintMenuItemsReordered
- b _080B2DBC
- .align 2, 0
-_080B2D90: .4byte gUnknown_03000708
-_080B2D94: .4byte gUnknown_083CC6D0
-_080B2D98: .4byte gUnknown_083CC6E8
-_080B2D9C:
- movs r0, 0x1
- strb r0, [r1, 0xA]
- movs r0, 0
- movs r1, 0
- movs r2, 0xA
- movs r3, 0x5
- bl MenuDrawTextWindow
- ldr r3, _080B2DEC @ =gUnknown_083CC6D0
- ldr r0, _080B2DF0 @ =gUnknown_083CC6EB
- str r0, [sp]
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0x2
- bl PrintMenuItemsReordered
-_080B2DBC:
- ldr r0, _080B2DF4 @ =gUnknown_03000708
- ldrb r3, [r0, 0xA]
- adds r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0
- str r0, [sp]
- movs r0, 0x9
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl InitMenu
- ldr r0, _080B2DF8 @ =sub_80B2E38
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080B2DEC: .4byte gUnknown_083CC6D0
-_080B2DF0: .4byte gUnknown_083CC6EB
-_080B2DF4: .4byte gUnknown_03000708
-_080B2DF8: .4byte sub_80B2E38
- thumb_func_end CreateShopMenu
-
- thumb_func_start SetShopMenuCallback
-SetShopMenuCallback: @ 80B2DFC
- ldr r1, _080B2E04 @ =gUnknown_03000708
- str r0, [r1]
- bx lr
- .align 2, 0
-_080B2E04: .4byte gUnknown_03000708
- thumb_func_end SetShopMenuCallback
-
- thumb_func_start SetShopItemsForSale
-SetShopItemsForSale: @ 80B2E08
- push {lr}
- adds r1, r0, 0
- movs r2, 0
- ldr r3, _080B2E34 @ =gUnknown_03000708
- str r1, [r3, 0x4]
- strb r2, [r3, 0x8]
- ldrh r0, [r1]
- cmp r0, 0
- beq _080B2E30
-_080B2E1A:
- ldrb r0, [r3, 0x8]
- adds r0, 0x1
- strb r0, [r3, 0x8]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- lsls r0, r2, 1
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- bne _080B2E1A
-_080B2E30:
- pop {r0}
- bx r0
- .align 2, 0
-_080B2E34: .4byte gUnknown_03000708
- thumb_func_end SetShopItemsForSale
-
- thumb_func_start sub_80B2E38
-sub_80B2E38: @ 80B2E38
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r2, _080B2E60 @ =gMain
- ldrh r1, [r2, 0x30]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080B2E68
- ldr r4, _080B2E64 @ =gUnknown_03000708
- ldrb r0, [r4, 0x9]
- cmp r0, 0
- beq _080B2EF4
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- negs r0, r0
- b _080B2E82
- .align 2, 0
-_080B2E60: .4byte gMain
-_080B2E64: .4byte gUnknown_03000708
-_080B2E68:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080B2E90
- ldr r4, _080B2E8C @ =gUnknown_03000708
- ldrb r0, [r4, 0x9]
- ldrb r1, [r4, 0xA]
- cmp r0, r1
- beq _080B2EF4
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
-_080B2E82:
- bl MoveMenuCursor
- strb r0, [r4, 0x9]
- b _080B2EF4
- .align 2, 0
-_080B2E8C: .4byte gUnknown_03000708
-_080B2E90:
- ldrh r1, [r2, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080B2EE0
- movs r0, 0x5
- bl PlaySE
- ldr r3, _080B2EB0 @ =gUnknown_03000708
- ldrb r0, [r3, 0xC]
- cmp r0, 0
- bne _080B2EBC
- ldr r1, _080B2EB4 @ =gUnknown_083CC6D0
- ldr r2, _080B2EB8 @ =gUnknown_083CC6E8
- b _080B2EC0
- .align 2, 0
-_080B2EB0: .4byte gUnknown_03000708
-_080B2EB4: .4byte gUnknown_083CC6D0
-_080B2EB8: .4byte gUnknown_083CC6E8
-_080B2EBC:
- ldr r1, _080B2ED8 @ =gUnknown_083CC6D0
- ldr r2, _080B2EDC @ =gUnknown_083CC6EB
-_080B2EC0:
- ldrb r0, [r3, 0x9]
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 3
- adds r1, 0x4
- adds r0, r1
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- b _080B2EF4
- .align 2, 0
-_080B2ED8: .4byte gUnknown_083CC6D0
-_080B2EDC: .4byte gUnknown_083CC6EB
-_080B2EE0:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080B2EF4
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl HandleShopMenuQuit
-_080B2EF4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80B2E38
-
- thumb_func_start sub_80B2EFC
-sub_80B2EFC: @ 80B2EFC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B2F24 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _080B2F28 @ =BuyMenuDrawGraphics
- lsrs r0, r2, 16
- strh r0, [r1, 0x18]
- strh r2, [r1, 0x1A]
- ldr r0, _080B2F2C @ =sub_80B2FA0
- str r0, [r1]
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- pop {r0}
- bx r0
- .align 2, 0
-_080B2F24: .4byte gTasks
-_080B2F28: .4byte BuyMenuDrawGraphics
-_080B2F2C: .4byte sub_80B2FA0
- thumb_func_end sub_80B2EFC
-
- thumb_func_start sub_80B2F30
-sub_80B2F30: @ 80B2F30
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B2F58 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r2, _080B2F5C @ =sub_80A6300
- lsrs r0, r2, 16
- strh r0, [r1, 0x18]
- strh r2, [r1, 0x1A]
- ldr r0, _080B2F60 @ =sub_80B2FA0
- str r0, [r1]
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- pop {r0}
- bx r0
- .align 2, 0
-_080B2F58: .4byte gTasks
-_080B2F5C: .4byte sub_80A6300
-_080B2F60: .4byte sub_80B2FA0
- thumb_func_end sub_80B2F30
-
- thumb_func_start HandleShopMenuQuit
-HandleShopMenuQuit: @ 80B2F64
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8072DEC
- movs r0, 0
- movs r1, 0
- movs r2, 0xB
- movs r3, 0x8
- bl MenuZeroFillWindowRect
- bl sub_80BE3BC
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
- ldr r0, _080B2F9C @ =gUnknown_03000708
- ldr r0, [r0]
- cmp r0, 0
- beq _080B2F96
- bl _call_via_r0
-_080B2F96:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B2F9C: .4byte gUnknown_03000708
- thumb_func_end HandleShopMenuQuit
-
- thumb_func_start sub_80B2FA0
-sub_80B2FA0: @ 80B2FA0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _080B2FD4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080B2FCE
- ldr r0, _080B2FD8 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x18]
- lsls r0, 16
- ldrh r1, [r1, 0x1A]
- orrs r0, r1
- bl SetMainCallback2
- adds r0, r4, 0
- bl DestroyTask
-_080B2FCE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B2FD4: .4byte gPaletteFade
-_080B2FD8: .4byte gTasks
- thumb_func_end sub_80B2FA0
-
- thumb_func_start ReturnToShopMenuAfterExitingSellMenu
-ReturnToShopMenuAfterExitingSellMenu: @ 80B2FDC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _080B2FF8 @ =gUnknown_03000708
- ldrb r0, [r0, 0xC]
- bl CreateShopMenu
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B2FF8: .4byte gUnknown_03000708
- thumb_func_end ReturnToShopMenuAfterExitingSellMenu
-
- thumb_func_start Task_ExitSellMenu
-Task_ExitSellMenu: @ 80B2FFC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl sub_807D770
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080B3040
- ldr r0, _080B3028 @ =gUnknown_03000708
- ldrb r0, [r0, 0xC]
- cmp r0, 0x2
- bne _080B3034
- ldr r1, _080B302C @ =gOtherText_CanIHelpYou
- ldr r2, _080B3030 @ =ReturnToShopMenuAfterExitingSellMenu
- adds r0, r4, 0
- movs r3, 0
- bl DisplayItemMessageOnField
- b _080B3040
- .align 2, 0
-_080B3028: .4byte gUnknown_03000708
-_080B302C: .4byte gOtherText_CanIHelpYou
-_080B3030: .4byte ReturnToShopMenuAfterExitingSellMenu
-_080B3034:
- ldr r1, _080B3048 @ =gOtherText_AnythingElse
- ldr r2, _080B304C @ =ReturnToShopMenuAfterExitingSellMenu
- adds r0, r5, 0
- movs r3, 0
- bl DisplayItemMessageOnField
-_080B3040:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080B3048: .4byte gOtherText_AnythingElse
-_080B304C: .4byte ReturnToShopMenuAfterExitingSellMenu
- thumb_func_end Task_ExitSellMenu
-
- thumb_func_start sub_80B3050
-sub_80B3050: @ 80B3050
- push {lr}
- bl pal_fill_black
- ldr r0, _080B3064 @ =Task_ExitSellMenu
- movs r1, 0x8
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_080B3064: .4byte Task_ExitSellMenu
- thumb_func_end sub_80B3050
-
- thumb_func_start sub_80B3068
-sub_80B3068: @ 80B3068
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl Task_ExitSellMenu
- pop {r0}
- bx r0
- thumb_func_end sub_80B3068
-
- thumb_func_start unref_sub_80B3078
-unref_sub_80B3078: @ 80B3078
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080B308C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, _080B3090 @ =Task_ExitSellMenu
- str r0, [r1]
- bx lr
- .align 2, 0
-_080B308C: .4byte gTasks
-_080B3090: .4byte Task_ExitSellMenu
- thumb_func_end unref_sub_80B3078
-
- thumb_func_start sub_80B3094
-sub_80B3094: @ 80B3094
- push {lr}
- bl AnimateSprites
- bl BuildOamBuffer
- bl RunTasks
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_80B3094
-
- thumb_func_start sub_80B30AC
-sub_80B30AC: @ 80B30AC
- push {r4,lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- ldr r3, _080B30F0 @ =gBGTilemapBuffers + 0x800
- ldr r1, _080B30F4 @ =0x0600e800
- ldr r0, _080B30F8 @ =0x040000d4
- str r3, [r0]
- str r1, [r0, 0x4]
- ldr r4, _080B30FC @ =0x80000400
- str r4, [r0, 0x8]
- ldr r1, [r0, 0x8]
- movs r2, 0x80
- lsls r2, 4
- adds r1, r3, r2
- ldr r2, _080B3100 @ =0x0600e000
- str r1, [r0]
- str r2, [r0, 0x4]
- str r4, [r0, 0x8]
- ldr r1, [r0, 0x8]
- movs r1, 0x80
- lsls r1, 5
- adds r3, r1
- ldr r1, _080B3104 @ =0x0600f000
- str r3, [r0]
- str r1, [r0, 0x4]
- str r4, [r0, 0x8]
- ldr r0, [r0, 0x8]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080B30F0: .4byte gBGTilemapBuffers + 0x800
-_080B30F4: .4byte 0x0600e800
-_080B30F8: .4byte 0x040000d4
-_080B30FC: .4byte 0x80000400
-_080B3100: .4byte 0x0600e000
-_080B3104: .4byte 0x0600f000
- thumb_func_end sub_80B30AC
-
- thumb_func_start BuyMenuDrawGraphics
-BuyMenuDrawGraphics: @ 80B3108
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- bl sub_80F9438
- bl remove_some_task
- ldr r0, _080B3204 @ =REG_BG1HOFS
- movs r5, 0
- strh r5, [r0]
- adds r0, 0x2
- strh r5, [r0]
- adds r0, 0x2
- strh r5, [r0]
- adds r0, 0x2
- strh r5, [r0]
- adds r0, 0x2
- strh r5, [r0]
- adds r0, 0x2
- strh r5, [r0]
- ldr r0, _080B3208 @ =gPaletteFade
- mov r8, r0
- ldrb r0, [r0, 0x8]
- movs r1, 0x80
- orrs r0, r1
- mov r1, r8
- strb r0, [r1, 0x8]
- movs r1, 0xE0
- lsls r1, 19
- movs r6, 0
- str r6, [sp, 0x4]
- ldr r0, _080B320C @ =0x040000d4
- add r2, sp, 0x4
- str r2, [r0]
- str r1, [r0, 0x4]
- ldr r1, _080B3210 @ =0x85000100
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- ldr r0, _080B3214 @ =gBuyMenuFrame_Gfx
- ldr r1, _080B3218 @ =0x06007c00
- bl LZDecompressVram
- ldr r0, _080B321C @ =gBuyMenuFrame_Tilemap
- ldr r1, _080B3220 @ =0x02018000
- bl sub_800D238
- ldr r0, _080B3224 @ =gMenuMoneyPal
- movs r1, 0xC0
- movs r2, 0x20
- bl LoadCompressedPalette
- bl FreeAllSpritePalettes
- bl ResetPaletteFade
- bl ResetSpriteData
- bl ResetTasks
- ldr r4, _080B3228 @ =gWindowConfig_81E6DFC
- adds r0, r4, 0
- bl SetUpWindowConfig
- adds r0, r4, 0
- bl InitMenuWindow
- bl BuyMenuDrawMapGraphics
- ldr r0, _080B322C @ =gUnknown_03000708
- strb r6, [r0, 0x9]
- strb r5, [r0, 0xB]
- movs r0, 0
- movs r1, 0
- movs r2, 0x20
- movs r3, 0x20
- bl MenuZeroFillWindowRect
- ldr r0, _080B3230 @ =gSaveBlock1
- movs r1, 0x92
- lsls r1, 3
- adds r0, r1
- ldr r0, [r0]
- movs r1, 0
- movs r2, 0
- bl sub_80B7C14
- movs r0, 0
- movs r1, 0x7
- bl sub_80B3764
- bl sub_80B37EC
- bl sub_80B3270
- ldr r0, _080B3234 @ =sub_80B40E8
- movs r1, 0x8
- bl CreateTask
- bl sub_80B3240
- movs r0, 0x1
- negs r0, r0
- str r6, [sp]
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- mov r2, r8
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x8]
- ldr r0, _080B3238 @ =sub_80B30AC
- bl SetVBlankCallback
- ldr r0, _080B323C @ =sub_80B3094
- bl SetMainCallback2
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080B3204: .4byte REG_BG1HOFS
-_080B3208: .4byte gPaletteFade
-_080B320C: .4byte 0x040000d4
-_080B3210: .4byte 0x85000100
-_080B3214: .4byte gBuyMenuFrame_Gfx
-_080B3218: .4byte 0x06007c00
-_080B321C: .4byte gBuyMenuFrame_Tilemap
-_080B3220: .4byte 0x02018000
-_080B3224: .4byte gMenuMoneyPal
-_080B3228: .4byte gWindowConfig_81E6DFC
-_080B322C: .4byte gUnknown_03000708
-_080B3230: .4byte gSaveBlock1
-_080B3234: .4byte sub_80B40E8
-_080B3238: .4byte sub_80B30AC
-_080B323C: .4byte sub_80B3094
- thumb_func_end BuyMenuDrawGraphics
-
- thumb_func_start sub_80B3240
-sub_80B3240: @ 80B3240
- push {lr}
- sub sp, 0x4
- ldr r1, _080B326C @ =gUnknown_083CC710
- mov r0, sp
- movs r2, 0x4
- bl memcpy
- mov r0, sp
- adds r0, 0x2
- movs r1, 0xD1
- movs r2, 0x2
- bl LoadPalette
- mov r0, sp
- movs r1, 0xD8
- movs r2, 0x2
- bl LoadPalette
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080B326C: .4byte gUnknown_083CC710
- thumb_func_end sub_80B3240
-
- thumb_func_start sub_80B3270
-sub_80B3270: @ 80B3270
- push {lr}
- bl sub_80F944C
- ldr r0, _080B32A0 @ =gUnknown_03000708
- ldrb r0, [r0, 0x8]
- cmp r0, 0x7
- bls _080B329A
- movs r0, 0
- movs r1, 0xAC
- movs r2, 0xC
- bl CreateVerticalScrollIndicators
- movs r0, 0x1
- movs r1, 0xAC
- movs r2, 0x94
- bl CreateVerticalScrollIndicators
- movs r0, 0
- movs r1, 0x1
- bl sub_80F979C
-_080B329A:
- pop {r0}
- bx r0
- .align 2, 0
-_080B32A0: .4byte gUnknown_03000708
- thumb_func_end sub_80B3270
-
- thumb_func_start sub_80B32A4
-sub_80B32A4: @ 80B32A4
- push {lr}
- ldr r0, _080B32B8 @ =gUnknown_03000708
- ldrb r0, [r0, 0xB]
- cmp r0, 0
- bne _080B32BC
- movs r0, 0
- movs r1, 0x1
- bl sub_80F979C
- b _080B32C4
- .align 2, 0
-_080B32B8: .4byte gUnknown_03000708
-_080B32BC:
- movs r0, 0
- movs r1, 0
- bl sub_80F979C
-_080B32C4:
- ldr r1, _080B32DC @ =gUnknown_03000708
- ldrb r0, [r1, 0xB]
- adds r0, 0x7
- ldrb r1, [r1, 0x8]
- cmp r0, r1
- blt _080B32E0
- movs r0, 0x1
- movs r1, 0x1
- bl sub_80F979C
- b _080B32E8
- .align 2, 0
-_080B32DC: .4byte gUnknown_03000708
-_080B32E0:
- movs r0, 0x1
- movs r1, 0
- bl sub_80F979C
-_080B32E8:
- pop {r0}
- bx r0
- thumb_func_end sub_80B32A4
-
- thumb_func_start sub_80B32EC
-sub_80B32EC: @ 80B32EC
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- adds r1, r2
- lsls r1, 1
- adds r1, r0
- ldr r2, _080B3304 @ =0x0000c3e1
- adds r0, r2, 0
- strh r0, [r1]
- strh r0, [r1, 0x2]
- bx lr
- .align 2, 0
-_080B3304: .4byte 0x0000c3e1
- thumb_func_end sub_80B32EC
-
- thumb_func_start BuyMenuDrawMapMetatileLayer
-BuyMenuDrawMapMetatileLayer: @ 80B3308
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- adds r1, r2
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r3]
- strh r0, [r1]
- ldrh r0, [r3, 0x2]
- strh r0, [r1, 0x2]
- adds r2, r1, 0
- adds r2, 0x40
- ldrh r0, [r3, 0x4]
- strh r0, [r2]
- adds r1, 0x42
- ldrh r0, [r3, 0x6]
- strh r0, [r1]
- bx lr
- thumb_func_end BuyMenuDrawMapMetatileLayer
-
- thumb_func_start BuyMenuDrawMapMetatile
-BuyMenuDrawMapMetatile: @ 80B3330
- push {r4-r7,lr}
- adds r7, r2, 0
- lsls r3, 24
- lsrs r3, 24
- adds r2, r3, 0
- lsls r0, 17
- lsrs r0, 16
- lsls r1, 22
- movs r4, 0x80
- lsls r4, 15
- adds r1, r4
- lsrs r1, 16
- cmp r3, 0x1
- beq _080B3364
- cmp r3, 0x1
- bgt _080B3356
- cmp r3, 0
- beq _080B335C
- b _080B33C0
-_080B3356:
- cmp r2, 0x2
- beq _080B3398
- b _080B33C0
-_080B335C:
- ldr r5, _080B3360 @ =gBGTilemapBuffers + 0x1000
- b _080B3366
- .align 2, 0
-_080B3360: .4byte gBGTilemapBuffers + 0x1000
-_080B3364:
- ldr r5, _080B3390 @ =gBGTilemapBuffers + 0x1800
-_080B3366:
- lsls r6, r0, 16
- asrs r6, 16
- lsls r4, r1, 16
- asrs r4, 16
- adds r0, r5, 0
- adds r1, r6, 0
- adds r2, r4, 0
- adds r3, r7, 0
- bl BuyMenuDrawMapMetatileLayer
- ldr r0, _080B3394 @ =0xfffff800
- adds r5, r0
- adds r3, r7, 0
- adds r3, 0x8
- adds r0, r5, 0
- adds r1, r6, 0
- adds r2, r4, 0
- bl BuyMenuDrawMapMetatileLayer
- b _080B33C0
- .align 2, 0
-_080B3390: .4byte gBGTilemapBuffers + 0x1800
-_080B3394: .4byte 0xfffff800
-_080B3398:
- ldr r5, _080B33C8 @ =gBGTilemapBuffers + 0x1800
- lsls r6, r0, 16
- asrs r6, 16
- lsls r4, r1, 16
- asrs r4, 16
- adds r0, r5, 0
- adds r1, r6, 0
- adds r2, r4, 0
- adds r3, r7, 0
- bl BuyMenuDrawMapMetatileLayer
- ldr r0, _080B33CC @ =0xfffff000
- adds r5, r0
- adds r3, r7, 0
- adds r3, 0x8
- adds r0, r5, 0
- adds r1, r6, 0
- adds r2, r4, 0
- bl BuyMenuDrawMapMetatileLayer
-_080B33C0:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080B33C8: .4byte gBGTilemapBuffers + 0x1800
-_080B33CC: .4byte 0xfffff000
- thumb_func_end BuyMenuDrawMapMetatile
-
thumb_func_start sub_80B33D0
sub_80B33D0: @ 80B33D0
push {r4-r6,lr}
diff --git a/asm/unknown_debug_menu.s b/asm/unknown_debug_menu.s
deleted file mode 100644
index 138fdb876..000000000
--- a/asm/unknown_debug_menu.s
+++ /dev/null
@@ -1,133 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "constants/species_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start unref_sub_814A414
-unref_sub_814A414: @ 814A414
- push {lr}
- sub sp, 0x8
- bl MenuZeroFillScreen
- movs r0, 0
- movs r1, 0
- movs r2, 0x10
- movs r3, 0x12
- bl MenuDrawTextWindow
- ldr r3, _0814A458 @ =gUnknown_0842C29C
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0x8
- bl PrintMenuItems
- movs r0, 0
- str r0, [sp]
- movs r0, 0xF
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- movs r3, 0x8
- bl InitMenu
- ldr r1, _0814A45C @ =gCallback_03004AE8
- ldr r0, _0814A460 @ =sub_814A464
- str r0, [r1]
- movs r0, 0
- add sp, 0x8
- pop {r1}
- bx r1
- .align 2, 0
-_0814A458: .4byte gUnknown_0842C29C
-_0814A45C: .4byte gCallback_03004AE8
-_0814A460: .4byte sub_814A464
- thumb_func_end unref_sub_814A414
-
- thumb_func_start sub_814A464
-sub_814A464: @ 814A464
- push {lr}
- bl ProcessMenuInput
- lsls r0, 24
- lsrs r0, 24
- adds r2, r0, 0
- lsls r0, r2, 24
- asrs r1, r0, 24
- movs r0, 0x2
- negs r0, r0
- cmp r1, r0
- bne _0814A480
- movs r0, 0
- b _0814A4B2
-_0814A480:
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0814A4AC
- ldr r0, _0814A4A0 @ =gUnknown_02024D1E
- strb r2, [r0]
- ldr r2, _0814A4A4 @ =gCallback_03004AE8
- ldr r0, _0814A4A8 @ =gUnknown_0842C29C
- lsls r1, 3
- adds r0, 0x4
- adds r1, r0
- ldr r0, [r1]
- str r0, [r2]
- movs r0, 0
- b _0814A4B2
- .align 2, 0
-_0814A4A0: .4byte gUnknown_02024D1E
-_0814A4A4: .4byte gCallback_03004AE8
-_0814A4A8: .4byte gUnknown_0842C29C
-_0814A4AC:
- bl CloseMenu
- movs r0, 0x1
-_0814A4B2:
- pop {r1}
- bx r1
- thumb_func_end sub_814A464
-
- thumb_func_start sub_814A4B8
-sub_814A4B8: @ 814A4B8
- push {r4,lr}
- ldr r2, _0814A4FC @ =gSaveBlock2
- ldr r1, _0814A500 @ =0x00000556
- adds r0, r2, r1
- movs r1, 0x3
- strb r1, [r0]
- ldr r3, _0814A504 @ =0x00000557
- adds r0, r2, r3
- strb r1, [r0]
- ldr r3, _0814A508 @ =gUnknown_02024D1E
- ldrb r0, [r3]
- adds r0, 0x1
- ldr r4, _0814A50C @ =0x0000055c
- adds r1, r2, r4
- strh r0, [r1]
- ldrb r0, [r3]
- adds r0, 0x1
- ldr r3, _0814A510 @ =0x0000055e
- adds r1, r2, r3
- strh r0, [r1]
- subs r4, 0x4
- adds r0, r2, r4
- movs r1, 0x1
- strh r1, [r0]
- ldr r0, _0814A514 @ =0x0000055a
- adds r2, r0
- strh r1, [r2]
- bl CloseMenu
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0814A4FC: .4byte gSaveBlock2
-_0814A500: .4byte 0x00000556
-_0814A504: .4byte 0x00000557
-_0814A508: .4byte gUnknown_02024D1E
-_0814A50C: .4byte 0x0000055c
-_0814A510: .4byte 0x0000055e
-_0814A514: .4byte 0x0000055a
- thumb_func_end sub_814A4B8
-
- .align 2, 0 @ Don't pad with nop.